Applications for the PDA
Project Final Report
Dec 02-06
December 18, 2002
Client:
National Instruments
Faculty Advisor:
Dr. Steve Russell
Team Members:
Rick Cordaro
Romeo Denghel
Shawn Rouse
Holly Denghel
27
TABLE OF CONTENTS
LIST OF FIGURES ii
LIST OF TABLES iii
EXECUTIVE SUMMARY 1
ACKNOWLEDGEMENT 2
DEFINITION OF TERMS 3
INTRODUCTION 4
General Background 4
Technical Problem 4
Operating Environment 5
Intended User(s) and Use(s) 5
Assumptions 5
Limitations 6
DESIGN REQUIREMENTS 7
Design Objectives 7
Functional Requirements 7
Design Constraints 8
Measurable Milestones 8
END PRODUCT DESCRIPTION 10
APPROACH AND DESIGN 11
Technical Approach 11
Technical Design 11
Testing Approach 20
Risks 22
Recommendation for Follow-On Work 24
PERSONAL EFFORT BUDGET 26
PROJECT SCHEDULE 27
EVALUATION OF PROJECT SUCCESS 29
COMMERCIALIZATION 31
RECOMMENDATIONS FOR ADDITIONAL WORK 32
LESSONS LEARNED 33
PROJECT TEAM INFORMATION 34
Client 34
Faculty Advisor 34
Team Members 34
SUMMARY 35
REFERENCES 36
APPENDICES 37
Appendix 2: Module Testing Form 37
Appendix 3: Application Testing Form 38
LIST OF FIGURES
Figure 1: Voltmeter User Interface 11
Figure 2: Voltmeter Code 12
Figure 3: Continuous Read Voltmeter Code 13
Figure 4: PDA-to-PDA Chat User Interface 14
Figure 5: PDA-to-PDA Chat - Send Message Code 14
Figure 6: PDA-to-PDA Chat - Receive Message Code 15
Figure 7: Automobile Diagnostic Main User Interface 16
Figure 8: Automobile Diagnostic Connector Diagram 16
Figure 9: Finished automobile diagnostic connector 17
Figure 10: ALDL Communications Data Format 18
Figure 11: Sample Data Stream 18
Figure 12: Automobile Diagnostic Decision Tree User Interface 19
Figure 13: Automobile Diagnostic Interface - Decision Tree Code 20
Figure 14: Original/Revised/Final Gantt chart for EE 491 (First Semester) 27
Figure 15: Original Gantt chart for EE 492 (Second Semester) 28
Figure 16: Final Gantt chart for EE 492 (Second Semester) 28
LIST OF TABLES
Table 1 – Testing Summary 22
Table 2 – Estimated Financial Budget for the Project 25
Table 3 – Original Estimated Personnel Effort Budget for the Project 26
Table 4 – Revised Personnel Effort Budget for the Project 26
Table 5 – Summary of Estimated and Actual Personnel Effort for the Project 26
27
EXECUTIVE SUMMARY
National Instruments is in the process of developing a programming language that runs on PDAs (personal digital assistant) running the PalmOS operating system. As with any new product, the hardware and software requires testing by both the development team and beta users. The development team often catches many bugs in the software and hardware but cannot find all of them. Some bugs show up on some systems and not others. Some bugs appear when using certain operating systems, or when putting modules together in a certain way, or many other possibilities. That is why beta user testing is so important. It simulates how the product will be used in real life and can assist in catching bugs before the product is released to the public. National Instruments has asked this senior design team to be a beta test group. The objective of this team is to design applications using this software that run on a PDA. These applications will fulfill two purposes. One, the design and implementation of these applications will assist in flushing out any bugs that may remain in the software or hardware. Two, these applications will belong to National Instruments upon completion and may potentially be used as product demonstrations.
The project consists of three applications. The first application is a basic voltmeter. It takes measurements in the range of ±10 Volts. The second application is a two-PDA chat program. It allows two users each with their own PDA and a copy of the application to communicate with each other by writing messages and transmitting them over a short distance. The third application is an automobile diagnostic computer interface. Using a connector built by the team, a person could connect to an automobile’s diagnostic computer, download the available data, and determine what system(s) on the automobile have a problem, and follow a flowchart to better pinpoint the problem.
The project is currently in a partially finished state. The team has been successful in their first objective, finding software or hardware bugs. All three projects are currently being examined to better determine the source of the errors that are occurring. Due to the problems currently being explored, the team has not been successful in their second objective, creating applications that National Instruments could use as demos. However, the team anticipates that these bugs will be fixed and the projects completed by the date of the industrial review panel presentation.
ACKNOWLEDGEMENT
The team would like to thank National Instruments for providing the equipment and software used in the development of this project.
The team is also grateful for the help of David Gardner, Andrew Dove, Stephanie Rowland, and Marius Ghercioiu, the company representatives and engineers who have provided helpful information and technical assistance.
Finally, the team would like to thank Dr. Lamont for his help in getting an additional computer added to the senior design lab for use in testing our projects.
DEFINITION OF TERMS
ALDL – Assembly line diagnostic link
DAQ – Data acquisition
DMM – Digital multimeter
GM – General Motors
GUI – Graphical user interface; the part of the program that the user interfaces with.
IR – Infrared
IrDA – Infrared data acquisition
Palm – A handheld computer developed by the Palm Company (http://www.palm.com/)
PalmOS – The operating system that runs on the Palm handheld computer
PDA – Personal digital assistant, a handheld computer
Software – The programming language being used to develop the applications is still under development and is considered confidential. For this reason, we cannot disclose the name of the software in public documents and will instead simply refer to it as software.
TV – Television
INTRODUCTION
General Background
The purpose of the Applications for the PDA project is to design and develop useful applications for a handheld computer (the PDA). National Instruments is in the process of developing a programming language that operates on a PDA running the PalmOS. The development team has asked this project team to create some applications that will help beta test their new software. Three applications will be developed to meet this need.
1. Voltmeter (previously multimeter) – The task is to produce a fully functional voltmeter with the appropriate display. Producing the voltmeter requires only software implementation, as the hardware already exists.
2. PDA-to-PDA chat – The task is to create an application that allows two PDAs to communicate via the wireless (infrared) port. Text from one PDA appears on the screen of the second PDA and vice versa.
3. Automobile diagnostic computer interface – The task is to design a connector and software to communicate with GM vehicles and their onboard computers. Modern cars have complex diagnostic systems that are helpful for skilled mechanics but prohibit the weekend warrior from tinkering with many of the advanced systems. This product allows anyone the chance to interface with his or her car and read the available diagnostic information in the same way a mechanic would.
4. Television remote control (obsolete) – Our original project plan included plans for creating a television remote control that used of the infrared interface. Due to infrared interface specifications, this project has been cancelled and replaced with the chat program specified above. The reasons for discontinuing this application are explained in more detail in the encountered risks section.
Technical Problem
The preliminary technical approaches are as follows:
- Voltmeter – A data acquisition (DAQ) card that can connect to the PDA will be the hardware portion of the application. Two electrical probes attached to the card serve as the probes for the meter. Finally, software has been written to read from the DAQ card and display the measurement.
- PDA-to-PDA chat – The PDA is equipped with an infrared interface that is utilized by this application. Software has been written to enable the users to send and receive instant messages by writing to and reading from the PDA’s infrared interface.
- Automobile diagnostic computer interface – The team designed a cable that connects the automobile’s onboard diagnostic computer to a DAQ card. Development for this project was twofold. First, a connector was designed to allow the data to be read from the automobile. Second, software has been written to interpret the diagnostic data and display it to the user.
Operating Environment
The operating environments for these products are varied. For instance, a voltmeter is often used in a laboratory setting but is also commonly found wherever there is an electrical measurement to be made. A chat program may be used almost anywhere. The automotive diagnostic tool could be found in hazardous and dirty conditions. According to the Palm Users Guide, the handheld computer should not be exposed to rain or moisture, strong impacts, or extreme temperatures (outside of 32° – 100° F). The environment in which any of these tools may be used is varied, and the tools will be designed so that the constraints of the PDA are the limiting factors.
Intended User(s) and Use(s)
The intended user(s) and use(s) follow:
- Voltmeter – Electronics workers and engineers measuring small voltages within the ±10 Volts range.
- PDA-to-PDA chat – People who want to send instant messages at close distance without using the Internet.
- Automobile diagnostic computer interface – The home-based mechanic who needs to quickly and accurately diagnose his or her vehicle.
Assumptions
The following assumptions were made about the user.
§ The user is assumed to know how to turn on a Palm PDA and operate a touch screen interface.
§ The user is assumed to be familiar with their particular application (for instance, a typical voltmeter user is an electrical engineer and the auto diagnostic tool is used by a trained mechanic).
§ Users wishing to use the chat program have the software installed on both PDAs that will be used to chat.
Limitations
The following limitations were made when developing the applications.
§ The auto diagnostic tool may only be used for GM vehicles using the same connector cable and data specifications as the 1988 Pontiac Grand Prix. This is due to the fact that cable and data specifications vary widely between models and years.
§ Design implementation was limited to total cost of all chosen parts.
§ Any parts selection will be limited to availability.
§ Design complexity will be limited to a two-semester turn-around time.
§ All external devices are constrained by the input and output ports of the DAQ card and voltage requirements of the PDA, which is why the change from multimeter to voltmeter was made.
§ The size and weight of external devices should be no larger than the PDA and DAQ card.
§ Power consumption while the applications are in use is limited to what the PDA can provide.
§ Infrared transmissions are valid for distances of less than five feet.
§ Infrared transmissions are limited to line-of-sight.
§ All other physical requirements are limited to the PDA or DAQ card’s specifications.
§ Cost may not exceed a budget of $150, which is provided by the team members.
§ Voltmeter accuracy is limited to the accuracy of the DAQ card, which is approximately 1 millivolt.
DESIGN REQUIREMENTS
Design Objectives
Each application has its own design objectives.
- Voltmeter – This design objective has changed since the writing of the Project Plan document. Due to the electrical constraints of the chosen DAQ card, only a digital voltmeter will be designed and implemented. The small range and limited accuracy of the DAQ card make creating an entire multimeter impractical and possibly hazardous to the DAQ card. The voltmeter will use the PDA for displaying output and the DAQ card as input source.
- PDA-to-PDA chat – The objective is to design and implement a tool for the PDA that will be used to send and receive instant messages using the PDA’s infrared capabilities
- Automobile diagnostic computer interface – The objective is to design and implement a diagnostic tool for the PDA that will interface with the on-board computer on a 1988 Pontiac Grand Prix and vehicles with similar systems through the DAQ card.
Functional Requirements
- Voltmeter
§ Measure and display voltage from the DAQ card
§ Provide both an analog as well as a digital display of the measured voltage
2. Chat program
§ Send instant messages
§ Receive instant messages
3. Automobile diagnostic computer interface
§ Adaptable to all GM cars that use the same physical connector and data specifications as the 1988 Pontiac Grand Prix.
§ Display an error code being signaled by the automobile’s on-board computer
§ Interpret the error code and display the affected system to the user
§ Provide an interactive decision tree (yes/no questions) for pinpointing the faulty component in the system producing the error
§ Assist the user in finding additional information in the appropriate reference manual
Design Constraints
1. Voltmeter
§ Input levels and accuracy limited to the DAQ card’s capabilities. The DAQ card can handle ±10 Volts and has an accuracy of 1 millivolt.
§ Operation under interference limited to PDA capabilities
2. Chat program
§ PDAs must be within five feet of each other due to infrared limitations
§ PDA infrared ports must be within the line-of-sight of each other due to infrared limitations
3. Automobile diagnostic computer interface
§ Diagnostic capabilities and accuracy limited to on-board computer capabilities
§ Access to on-board computer
§ Interpretation of data is limited to what General Motors or other suppliers have made publicly available
4. The following design constraints are applicable to all three applications
§ User-friendly
§ Power consumption limited to PDA capabilities
§ Operating environment limited to PDA capabilities
§ Display capabilities limited to PDA capabilities
Measurable Milestones
The following eight items are the major milestones accompanied with bulleted lists of items that constitute the tasks that must be accomplished to successfully complete the milestone. A milestone is considered successful if all of the accompanying tasks are finished. The percentage in parentheses is what weight each milestone has relative to the entire project.