Table of Contents Executive Summary ........................................................................................................................ 2 1. Introduction ................................................................................................................................. 3 1.1 Objective ............................................................................................................................... 3 1.2 Motivation ............................................................................................................................. 3 1.3 Background ........................................................................................................................... 3 2. Project Description and Goals .................................................................................................... 5 2.1 Design.................................................................................................................................... 5 2.2 Display .................................................................................................................................. 5 2.3 User Input .............................................................................................................................. 6 3. Technical Specifications ............................................................................................................. 6 3.1 Single Board Computer ......................................................................................................... 5 3.2 Display .................................................................................................................................. 8 3.3 Software ................................................................................................................................ 9 4. Design Approach and Details ..................................................................................................... 9 4.1 Design Approach ................................................................................................................... 8 4.2 Codes and Standards ........................................................................................................... 12 4.3 Constraints, Alternative, and Tradeoffs .............................................................................. 13 5. Schedule, Tasks, and Milestones .............................................................................................. 14 7. Marketing and Cost Analysis .................................................................................................... 15 8. Summary ................................................................................................................................... 16 9. References ................................................................................................................................. 17 Appendix A ................................................................................................................................... 19 HMI Solar Jackets (ECE4007 L01) i Executive Summary The Solar Jackets Club at Georgia Tech will be competing in the 2011 World Solar Challenge and 2012 American Solar Challenge, and is requesting the development of an HMI system for the cockpit of their solar car. In order for the system to be suitable for use in the solar car, the design will focus on compactness, power efficiency, user friendliness, and safety. It will include two panels of LCDs with pushbuttons and switches, interfacing with the car’s singleboard computers to display vital vehicle information. The displayed information will include speed, battery gauge, power consumption, clock, cruise control status, temperature, turn signals, parking break status, and error notifications. The single board computer (SBC) will be restrained to the TS-7250 since it was previously implemented and used by the Telemetry and Motor Control groups of the former semester. The pushbuttons and switches will give the driver the ability to control the cruise control, headlights, and turn signal functions of the car. Even though this product is designed solely for the Solar Jackets, other universities will be able to use the code from this project to jump start similar projects in their respective clubs. The total expected costs of this project is estimated to be about $245 to purchase all parts. HMI Solar Jackets (ECE4007 L01) 1. Introduction The HMI and Cockpit team is requesting $245 to design a human-machine interface (HMI) system for the Georgia Tech Solar Jackets’ solar race car. The Solar Jackets will be competing in the 2011 World Solar Challenge racing event[1] and they are in need of a compact and power efficient HMI system. 1.1 Objective The HMI system will receive data from the car’s telemetry and motor control singleboard computers (SBC.) The telemetry and motor control SBCs store the car’s vital and motor information, respectively. Power efficient display devices will be used to display information from both SBCs to the driver. The HMI system will also include pushbuttons and switches. The status of each pushbutton and switch will be recorded, stored, and used by other processes on the telemetry and motor control SBCs to determine the required action. 1.2 Motivation The HMI system will display vital information needed for efficient operation of the solar race car to its driver. Pushbuttons and switches will allow the driver to interact with the car. The HMI system will be compact and power efficient, ideal for the Solar Jackets’ solar race car. 1.3 Background The HMI subsystem will be a part of the solar car’s overall computer system, which includes the telemetry, motor control, solar cell, and battery management subsystems. The HMI HMI Solar Jackets (ECE4007 L01) system will communicate with and receive data from the telemetry and motor control SBCs. The telemetry, motor control, and solar cell subsystems are ongoing projects, and the battery management subsystem is currently being designed. 1.3.1 Telemetry The telemetry subsystem collects all vital information of the solar race car through lowpowered sensors and controllers, and stores it in an SBC. The Solar Jackets team use this information to make proper decisions for the car’s operation. The collected information includes the battery voltage and current, the motor controller voltages and currents, the ambient temperatures inside and outside of the car, and the vehicle speed[2]. 1.3.2 Power Management (Solar Cell) The power management subsystem monitors the car’s solar cell arrays in order to extract maximum power to charge the car’s batteries. A power switching circuit controlled by a microcontroller provides the optimal impedance across the solar array to extract maximum power. The microcontroller stores the solar cell array’s input and output voltages, current, and power[3]. 1.3.3 Motor Control The motor control subsystem controls the solar race car’s motor. Functions of the motor control subsystem are regenerative braking, cruise control, and power management of the motor. A motor controller unit obtains real-time data about the motor, which is stored on an SBC. Data stored on the SBC include motor temperature and power, speed, cruise control, and braking[4]. The SBC sends motor control commands to the controller unit of the motor. HMI Solar Jackets (ECE4007 L01) 2. Project Description and Goals Information from the telemetry and motor control SBCs will be displayed in the cockpit. Pushbutton and switch statuses will be recorded on each SBC, and used by programs to determine the required action. The HMI system will be composed of the following components: Display devices Single board computer Pushbuttons Switches 2.1 Design The Cockpit and HMI team aims to create an HMI system suitable for a solar race car. Design of the HMI system will focus on the following: Compactness Power efficiency User friendliness Safety 2.2 Display The display devices will show important and vital information to the driver of the solar race car. The display devices will include the following items: Speed HMI Solar Jackets (ECE4007 L01) Battery gauge Power consumption Clock Cruise control status Temperature Turn signal indicator Parking brake indicator Error notification 2.3 User Input The user will interact with the car through pushbuttons and switches. The pushbuttons and switches will allow the driver to make the following actions: Cruise control Headlights on/off Turn signal on/off 3. Technical Specifications 3.1 Single Board Computer Since the Telemetry and Motor Control groups have already done considerable work on the TS7250 SBC, we will use the same one in our design. The specifications of the TS-7250 are below. HMI Solar Jackets (ECE4007 L01) Table 1 - Technologic TS-7250 Linux SBC specifications Features Specifications Processor 200MHz ARM9 CPU Flash Memory 32MB NAND Flash Random Access Memory 32MB SDRAM USB USB 2.0 (12 Mbit/s Max) Ethernet 10/100 Ethernet interface Interfaces 20x DIO lines, USB 2.0, SPI, Dimensions 3.8” x 4.5” Power 5V DC @ 400mA Operating Temperature -40° to +70° OS Linux HMI Solar Jackets (ECE4007 L01) 3.2 Display Table 2 - Desired LCD Specifications. Features Specifications Resolution 100x50 pixels - 150x75 pixels Interface SPI Supply Voltages 3.0V to 3.3V Power Consumption .3 mW - 1 mW Operating Temperature -20°C to +70°C Dimensions 50x40mm - 100x80mm HMI Solar Jackets (ECE4007 L01) 3.3 Software Table 3 - Desired Software Specifications. Features Specifications Saved data format CSV Programing Language C CPU load 10% to 25% Poll Times Pushbuttons 5-10 per sec Switches 2-5 per sec Temperatures 1 per sec Speed 5-10 per sec Battery Power 2-3 per sec 4. Design Approach and Details 4.1 Design Approach A top down explanation of the design approach is presented below. 4.1.1 Overall Architecture The human interface of the solar car will contain two printed circuit boards (PCBs), each with two LCDs and four pushbuttons. The two PCBs will separately show telemetry and motor HMI Solar Jackets (ECE4007 L01) control data. This data comes from two separate SBCs programmed by the Solar Jackets Telemetry and Motor Control groups. Programs written in C will reside on both SBCs and control the data displayed onto the LCDs. The LCDs and pushbuttons will be connected to the SBCs via a serial interface. This will allow for scalability and future additional buttons without extensive rewiring. A serial interface will result in data being transferred over one cable from the SBC to the PCB. The pins on the PCB will distribute the data to its intended recipient, such as the LCDs and the pushbuttons. Figure 1 shows this architecture. Figure 1. Overall architecture of design. HMI Solar Jackets (ECE4007 L01) 4.1.2 PCB Displays The two PCBs will be identical except for the source of data. Therefore, the rest of the document will refer to just one PCB. The DOGM128 LCDs will be mounted onto the PCBs. These displays are 55 x 46mm in dimension and consume 0.496 mW of power when there is no backlight [7]. Figure 2. A photograph of the DOGM128 LCD. Below are possible set-ups of displaying information on the LCDs. HMI Solar Jackets (ECE4007 L01) Figure 3. PCB design example with four pushbuttons and two LCDs. The pushbuttons will be used to set the cruise control, turn signals, headlights, and scroll through error messages. 4.1.3 Serial Interface The LCDs will be connected to the TS-7250 SBCs via a serial interface [9]. The TS-7250 has two serial ports, COM1 and COM2. The TS-7250 will gather information from sensors attached to its 20 digital input/output ports. This information will be stored on the 32MB on-board flash memory. Software will be written to transmit this information from the TS-7250 to the LCDs over serial ports using the RS-232 communication standard. The TS-7250 supports baud rates up to 230.4Kbaud [5]. Baud rate is “the measurement of the number of times per second a signal in a communications channel changes”[6]. For the types of data we wish to show, a buad rate of 230.4Kbaud is sufficient. 4.1.4 Software Several programs written in C will control the LCDs. The programs will be self-executable so that they run as soon as the SBC is turned on. This feature will save the driver time if the electrical systems need to be restarted. An application programming interface (API) will be created for future developers to add new features to the car. The API will create a format for storing telemetry and motor control data. This format will allow programs to parse through large amounts of information and display the required data. This standard format will also allow multiple programs with different functionalities to pull data from the same source file. Along with displaying already gathered data, programs will poll incoming data from the serial interface to detect whether any of the pushbuttons have been used. The functionality of HMI Solar Jackets (ECE4007 L01) each pushbutton does not need to be specified. As long as the program can record a change in status in the pushbutton, future programs can be written to add functionalities that the Solar Jackets require. 4.2 Codes and Standards The regulations set forth by the World Solar Challenge and the American Solar Challenge that affect embedded systems in the car are as follows [8]: 1. The drive must have vision in all directions to the satisfaction of the Chief Scrutineer. 2. All equipment must be powered by solar panels. 3. If cruise control is allowed, then engaging the breaks must automatically turn off the cruise control. 4.3 Constraints, Alternative, and Tradeoffs Display A major design constraint for this project is limited space in the Solar Jacket’s car. The PCBs must be less than 1 foot (=0.3 meter) in width and even less in height. This constraint rules out the use of larger LCDs that would allow for a better user interface. Since the car is operated solely on solar power, the racing team would benefit if the least power is consumed by electronics and most of the power is used for driving the motor. This constraint rules out the usage of backlight LCDs due to their higher power consumption than non-backlight LCDs as the DOGM128 series. An alternative to multiple LCDs is the use of LEDs and a single small LCD. Since the LEDs are relatively smaller than the second LCD, the advantage would be smaller size. HMI Solar Jackets (ECE4007 L01) However, due to reasons of scalability and future additional features, the PCBs will host dual LCDs. Another constraint placed on the LCDs is that they must be daylight readable. Since the solar car will be operated during the daytime and the canopy of the car allows sunlight into the cockpit, the LCDs will most likely be under direct sunlight during most of the race. The DOGM128 series LCDs are daylight readable. There are alternative LCDs that fit these constraints; however, the Motor Control group already used the DOGM128 series LCD to interface with their SBC last semester. Since this product has been shown to work well with TS7250, it will be used in this design. Embedded Computing The Telemetry and Data Control groups use the TS-7250 by Technologic Systems for their embedded computing. Since there is limited space in the solar car, this design will use the same TS-7250 so that hardware can be minimized. 5. Schedule, Tasks, and Milestones Refer to Appendix A for the Gantt chart of project schedule. 6. Project Demonstration The final project will be demonstrated in the senior design laboratory of the Georgia Tech campus by members of the Solar Jackets HMI and Cockpit group. The testing procedure will include parsing through the test data on the SBC. This information will be shown on the LCD connected to the SBC. This will confirm the connectivity and interfacing ability of the LCD to HMI Solar Jackets (ECE4007 L01) communicate with the computer. The pushbuttons on the panel will be used to toggle the information displayed on the screens to show their capability to execute commands in the computer. When a pushbutton state change is recorded, the SBC will perform a specific predetermined function. This will demonstrate the functionality of the pushbuttons. These predetermined functions will include showing text on the LCD screen which confirm that a specific pushbutton was pressed. 7. Marketing and Cost Analysis 7.1 Marketing Analysis When considering the importance of driver communication and control of a vehicle, the HMI system in solar cars becomes a highly marketable component. The HMI system being designed for the Solar Jackets vehicle is for the sole purpose of the Solar Jacket’s participation in the World Solar Challenge and American Solar Challenge competitions. The final design of the HMI system implemented in the Solar Jackets car can be marketed as a basic design interface for other university students working on similar projects. This would not be a priced product. Students from other universities will be able to use the API created to help jump-start their projects. 7.2 Cost Analysis The development of the HMI system is estimated to have a total cost of $245 for the purchase of all parts. An overview of these parts and pricing is shown in the table below. HMI Solar Jackets (ECE4007 L01) Table 4 - Cost Analysis Table 8. Summary Three DOGM 128 series LCDs have been bought and are available for use. A TS-7250 SBC will be ordered immediately so that we can begin testing the code from the Motor Control group. The group will also attend PCB layout classes as soon as they are resumed. While the parts are being ordered, the Motor Control group's code for displaying data on the DOGM 128 LCDs will be examined and a format for the source data files will be created after cooperation with other Solar Jacket teams. HMI Solar Jackets (ECE4007 L01) 9. References [1] Georgia Tech Solar Jackets, “Solar Jackets”. [Online]. Available: http://solarjackets.gatech.edu/projects/racer. [Accessed: Feb. 20, 2011]. [2] W. Mann, F. Farooqui, H. Chang, "Solar Jackets Telemetry Project," 2010. [Online]. Available: http://www.ece.gatech.edu/academic/courses/ece4007/10fall/ECE4007L01/ws1/files/sjt_summar y.pdf. [Accessed: Feb. 20, 2011]. [3] N. Joshi, A.Haile, G.Colon, M. Calotes, M. Lu, "Solar Power Array Managementt," 2010. [Online]. Available: http://www.ece.gatech.edu/academic/courses/ece4007/10fall/ECE4007L01/ws2/spam_project_su mmary/projectsummary_final.pdf. [Accessed: Feb. 20, 2011]. [4] A. Jenkins, J. Oatts, D. Thompson, E. Kfir, P. Rybakov "Motor Controller," 2010. [Online]. Available: http://www.ece.gatech.edu/academic/courses/ece4007/10fall/ECE4007L01/ws3/final_project_su mmary.pdf. [Accessed: Feb. 20, 2011]. [5] Technologic Systems. (2010, January). TS-7250 Hardware Manual (2.6 Ed.) [Online]. Available: http://www.embeddedarm.com/documentation/ts-7250-manual.pdf [Accessed: Feb. 20, 2011]. HMI Solar Jackets (ECE4007 L01) [6] “Difference Between Bit Rate and Baud Rate,” Top Bits, Jul. 2010. [Online]. Available: http://www.tech-faq.com/difference-between-bit-rate-and-baud-rate.html [Accessed: Feb. 20, 2011]. [7] DOGM. (2008, October). DOGM Graphic Series Datasheet. [Online]. Available: http://www.lcd-module.com/eng/pdf/grafik/dogm128e.pdf [Accessed: Feb. 20, 2011]. [8] World Solar Challenge. (2010, August). Technical Regulations for 2011 World Solar Challenge Event. [Online]. Available: http://www.worldsolarchallenge.org/participants/regulations [Accessed: Feb. 20, 2011]. [9] Technologic Systems. (2009, June). TS-7250 Datasheet. [Online]. Available: http://www.embeddedarm.com/documentation/ts-7250-datasheet.pdf [Accessed: Feb. 20, 2011]. HMI Solar Jackets (ECE4007 L01) Appendix A Table A1 – Gantt Chart Details HMI Solar Jackets (ECE4007 L01) HMI Solar Jackets (ECE4007 L01) HMI Solar Jackets (ECE4007 L01)