Final Report MARE Windshield Wiper System ECE4007 Senior Design Project Section L02, Group 4 Michael Whitfield Eric Williams Anthony Harris Renaud Moussounda Submitted December 11, 2007 TABLE OF CONTENTS Executive Summary ...................................................................................................................... ii 1. Introduction ............................................................................................................................. 1 1.1. Objective ............................................................................................................................ 1 1.2. Motivation.......................................................................................................................... 1 1.3. Background ........................................................................................................................ 2 2. Product Description and Goals .............................................................................................. 3 3. Technical Specifications ......................................................................................................... 4 4. Design Approach and Details ................................................................................................. 4 4.1. Design Approach ............................................................................................................... 4 4.2. Codes and Standards ........................................................................................................ 13 4.3. Constraints, Alternatives, Tradeoffs ................................................................................ 14 5. Schedule, Tasks, and Milestones.......................................................................................... 14 6. Project Demonstration.......................................................................................................... 18 7. Marketing and Cost Analysis ............................................................................................... 18 7.1. Marketing Analysis .......................................................................................................... 18 7.2. Cost Analysis ................................................................................................................... 21 8. Summary ................................................................................................................................ 23 9. References .............................................................................................................................. 24 MARE Windshield Wiper System ECE4007L02: Group 4 i EXECUTIVE SUMMARY The Michael, Anthony, Renaud, and Eric (MARE) automated windshield wiper system is used to detect rainfall and activate an automobile windshield wipers without driver interaction. The system was developed to mitigate driving distractions and allow drivers to focus on their primary task of driving. The distraction eliminated with the development of this product is the manual adjustment of windshield wipers when driving in precipitation. The few seconds that a driver takes their attention off the road to adjust a knob while driving in poor weather conditions could potentially lead to car accidents. The system uses a combination of impedance and infrared sensors to detect rain and its intensity. The system contains a microcontroller that takes in the input signals from the sensors and controls the operation of the windshield wipers based on those input signals. The prototype demonstration shows the basic operation of the system in standard conditions. The system responded successfully to rain simulations within the specified amount of time. The IR sensor was not sensitive enough to control speed reliably, however, the impedance sensors were able to compensate. Additional work worth consideration is a voice activation feature, a more sensitive IR sensor, and a stable power supply circuitry. The prototype cost to develop the system including labor and materials is $29,070. The manufacturing cost of the system is $222 to produce per unit and would retail at $292, netting a profit of 22.9 percent. MARE Windshield Wiper System ECE4007L02: Group 4 ii MARE Windshield Wiper System 1. INTRODUCTION The team developed an autonomous windshield wiper system for automobiles using IR and impedance sensors, a microcontroller, and signal conditioning circuitry. The sensors send an input signal to the microcontroller that controls the wiper motor through interfacing with the automobile wiper control circuitry. The motivation of the project centered on developing a reliable automatic windshield wiper system that is commercially available to a large market of automobile owners. Research was done on similar products in the market and articles from academic sources for the foundation of our design approach. 1.1. Objective The project aims to develop an automatic windshield wiper system that automates the process of the driver’s manual response to rain on the windshield. Car manufacturers will be the primary customers for system integration into their future automobile lines, and the secondary customers will be individual automobile owners, using the system as an after-market product. Motivation The National Highway and Transportation Safety Association reports that twenty-six percent of all car accidents are caused by distractions due to talking on cell phones, eating while driving, and other similar distractions that take a driver’s focus off the road [1]. The distraction considered in this project is the adjustment of wiper speed based on the intensity of precipitation falling. By eliminating the need for drivers to adjust wiper speed while driving, the number of accidents caused by distraction can be slightly reduced. MARE Windshield Wiper System ECE4007L02: Group 4 1 Similar systems are currently installed in some luxury vehicles [1], but such systems have not reached the massive economy vehicle market. The low-cost solution proposed by the design will most importantly satisfy the safety and performance requirements needed for the driver at a more reasonable price. The windshield wiper system will manage to do this by combining the performance of an inexpensive infrared sensor and impedance sensors. The project demonstration will determine how our system performs against existing systems, and the cost analysis will compare against the cost of existing products. 1.2. Background There are products similar to the MARE system that are currently on the market. Existing comparable products on the market include the Rain Tracker system by Opto-Electronic Design, Inc. [2] and the TRW rain sensor [3]. Both the TRW rain sensor and the Rain Tracker detect rain through IR sensors that are located behind the rear view mirror and interpret changes in light patterns that are caused by the precipitation on the windshield [2]. The improvement of existing windshield wiper systems is still an area of interest for researchers. In 2001, researchers presented a report at an IEEE conference that concentrated on the design and implementation of a rain sensing system [4]. In 2005, they proposed a windshield wiper system that used small cameras installed in cars’ windshield to detect rain [5]. MARE Windshield Wiper System ECE4007L02: Group 4 2 2. PRODUCT DESCRIPTION AND GOALS The product goals are given by the following criteria: Detect rainfall on windshield Detect intensity of rainfall Activate windshield wipers automatically once rainfall is detected Avoid adverse effects of extraneous and environmental factors Meet or exceed the response time of the driver Make adaptable to all vehicles Develop high reliability (less than five percent intensity detection errors) Create with ease of installation The primary goal of MARE is to automatically detect rainfall and activate the windshield wipers without driver interaction. This system should respond to rainfall in a similar manner as if the driver were manually controlling his or her windshield wipers. In the project proposal, the team included a voice-activation feature as a project goal. During prototype development it became evident to the team that the inclusion of the speech recognition feature would require more development hours than available, thus adversely affecting the project deadline; therefore, this feature was not included in the prototype. The automated windshield wiper system consists of the following: sensors that detect rain and its intensity a microcontroller that outputs a control signal to the motor control circuitry signal-conditioning circuitry to interface with all the components in system MARE Windshield Wiper System ECE4007L02: Group 4 3 3. TECHNICAL SPECIFICATIONS The project focused on building a working prototype. As a result, the technical specifications were derived from the need to have a reliable and adaptable system. Table 1 below summarizes the most important specifications met. While power and weight specifications are important, they were not crucial to the design of the prototype. Table 1 Technical Design Specifications Objectives Reliability Adaptability Characteristics Desired Specifications Actual Specifications System Failure Rate 0- 5 % 1% System Response Time 0- 500 ms 250 ms Operational Temperature -40 to 84 °C 0- 30 °C Voltage Range 0-12 V 0-12 V The prototype successfully exceeds the detection failure rate. The actual low failure rate was implemented in software by rejecting small disturbances in sensor output voltages. The system response time criterion was met mainly by running the microcontroller at higher frequencies (816 MHz). Unfortunately, the system was only tested at room temperature (25°C); therefore, there is no data on how the system performs in freezing or extremely hot conditions. 4. DESIGN APPROACH AND DETAILS 4.1. Design Approach 4.1.1. High-level Functional Blocks The design of the system consists of producing a high level functional diagram as shown in MARE Windshield Wiper System ECE4007L02: Group 4 4 Figure 1. The system is able to detect the presence of rain droplets, process that data coming from the sensors, and enable and control the motor. Data Processing Rain Detection Motor Control Figure 1 High-level Functional Block Diagram The rain detection box contains a series of rain sensors. The data processing unit encloses the microcontroller, and the motor control module is composed of the wiper motor and its control circuit. After establishing the functional diagram, a high level system block diagram was drawn. The second diagram represents a more detailed version of the functional diagram. Figure 2 depicts the contents of each unit. Rain Detection Impedance Sensor Input Signal Module Data Processing Microcontroller Output Signal Module IR Sensor User Interface Motor Motor Controller Motor Control Figure 2 High-level System Block Diagram The rain detection unit uses two types of sensors whose outputs are normalized by an input MARE Windshield Wiper System ECE4007L02: Group 4 5 signal module. The data processing is performed by a microcontroller, and its results are fed into an output signal module which is the input to the motor control box. The two signal modules were needed for interfacing between all the units. 4.1.2. Rain Detection Unit 4.1.2.1. Impedance Sensors The system detects rain by using two sorts of sensors. One of them is the impedance grid sensor shown in Error! Reference source not found.. The grid is made of two comb-like copper plates separated by a minimum distance of 1 8 in. The sensor is glued to the windshield glass with the help of a strong adhesive material. The thin configuration of the plates allows the wiper to slide over without peeling them off. When the plates are dry, the resistance between the two plates is very high, but when water is between the plates, current can flow between the plates, thus decreasing the resistance. This operation allows this design to be used as a rain sensor. The sensor becomes MARE Windshield Wiper System ECE4007L02: Group 4 6 Figure 3 Impedance Grid Sensor with Water Varying Electrical Conduction operational when one plate is connected to a power source, and the other plate is taken as the sensor output. A common design challenge consists of finding the sensitivity that minimizes the detection failure rate. In other words, the separation between the plates is strongly related to the sensors’ sensitivity and its detection rate [4]. Increasing the distance between the plates decreases the failure rate but it also decreases the sensitivity of the sensor which is inversely related to the system response time. Another design issue with the impedance grid sensor is the fact that it can act as an antenna and produce a floating voltage which can trigger a false detection. A solution to the problem consists of reducing the sensor’s size and grounding the output signal appropriately. Two other issues of concern are copper oxidation (rust) and physical deformation caused by the frictional motion of the wipers over the grid sensor. The grid sensor in figure 3 is effective at detecting rain, but it does a poor job relaying how much water is on the windshield glass at any point in time. Since the system should be fully automatic, there is a need to develop a way to measure the average distribution of water falling on the glass in order to control the MARE Windshield Wiper System ECE4007L02: Group 4 7 wiper’s speed. A modified version of the impedance sensor was designed to provide better intensity measurements. The new design consists of spacing isolated vertical plates from a single power plate as shown in Figure 4. Measuring the voltage at these different plates provides a more accurate way of determining the rate of rainfall. The sensing device can be mounted anywhere on the windshield where there is no contact with the wipers. This upgraded version of rain sensor suffers from the same issues as its predecessor, but it provides more functionality. Figure 4 Three-channel Rain Sensor for Speed Control 4.1.2.2. Optical Sensors The optical sensors are used to bounce beams of light through the windshield, and look for disturbances in the beams caused by raindrops at the outside surface of the windshield. The rain sensor has an emitter that emits pulses of light, coupled into the windshield with a lens. These beams travel through the windshield at about 45 degrees [2]. Through research it was anticipated that the infra-red beams were to be totally reflected by the outside surface of the windshield into the receiver [2]. However, when testing the analog IR sensor supplied by Optek Inc., it was determined that the infra-red beams were not totally reflected by the windshield, but that the MARE Windshield Wiper System ECE4007L02: Group 4 8 infra-red beams were approximately 30% reflected by the outside surface of the windshield. Troubleshooting this issue included using different types of glass to reflect the IR beams and comparing that output with the results of reflecting the IR beams off a white sheet of paper. In conclusion, it was determined that the light beams from the IR sensors were not totally reflected by any type of glass and therefore the design approach was modified. Although the glass did not reflect 100 percent of the light emitted, there was enough light reflected by the glass to detect the change in reflectivity due to a raindrop. The downfall is that the rain threshold for the sensor was lowered and it was not as easy to determine when moisture was present. If rain drops are present on the outside surface of the windshield, some of the beams escape and this reduces the intensity of the beams. The detector will measure this reduction in intensity and communicate that to the rest of the system that actuates the windshield wipers. Figure 5 on page 10 shows a diagram of the operation. MARE Windshield Wiper System ECE4007L02: Group 4 9 Figure 5 Diagrams of IR Sensor 4.1.2.3. Input Signal Module The input signal module’s first function is to normalize all sensor signals so that the microcontroller can safely interface with the rain detection unit by limiting the amount of incoming current. Figure 6 depicts the circuit implementing the module. In addition, it hosts the user-controlled sensitivity circuits. Each sensor is dedicated a separate part within the input MARE Windshield Wiper System ECE4007L02: Group 4 10 signal module. Figure 6 shows the internal circuit corresponding to the impedance grid sensor. All other sensors have a similar input circuit. Figure 6 Input Circuit for Impedance Grid Sensor The sensitivity is controlled by a potentiometer that can be manually tuned by a user. The protective resistor below the potentiometer makes sure that the overall system remains stable and functional regardless of users’ settings. The capacitor introduces a low-pass filter that helps stabilize the sensor output so that the microcontroller makes more accurate readings. The input circuit also solves the floating voltage problem discussed earlier by providing a ground between the sensor and the microcontroller. 4.1.3. Data Processing Unit 4.1.3.1. Microcontroller and Control Logic The data processing unit is composed of a microcontroller and an output signal module. The AVR Atmega8 microcontroller was finally selected over the initial TI MSP430 because of its higher output power and number of analog-to-digital channels. The communication between MARE Windshield Wiper System ECE4007L02: Group 4 11 the computer programmer and the microcontroller is done via serial peripheral interface bus (SPI). The program executed by the microcontroller is shown in Figure 7. Figure 7 Summary of System Control Logic Once the system is enabled, the system initialization block checks if the sensors are operational, sets the corresponding input and output pins, and determines if the power is high enough to keep the microcontroller running. After performing all the necessary checks, the program reads voltages from the impedance grid sensor and IR sensor in a sequential order. If water is detected, the microcontroller sends a signal to a power relay so that the wiper motor is activated at its lowest speed. Afterward, the microcontroller reads the speed control sensor and determines the appropriate motor speed by powering other relays. The additional relays affects change the amount of power going to the motor. The loop continues as long as all the sensors detect water on the windshield. The C code implementing the control logiv discussed above is in Appendix A. 4.1.3.2. Output Signal Module MARE Windshield Wiper System ECE4007L02: Group 4 12 The output signal module is the bridge between the design system and the existing automobile windshield wiper system. Figure 8 depicts how the microcontroller is connected to the relays driving the motor control board. Figure 8 Relays and Microcontroller Connections The control process for the project stops after the output signal module because the motor control unit is foreign to the system. However, for installation purposes, the user should be able to integrate the design product to an existing automobile. Therefore, only general interfacing information is required to be provided to the user. However, in order to demonstrate the overall project, a motor and a control module circuit were acquired and tested. 4.2. Codes and Standards MARE Windshield Wiper System ECE4007L02: Group 4 13 The team adhered to the codes and standards focused on interfacing the system with the automobile controls. The sensor and the microcontroller are governed by universal standards such as the NEC, the National Electric Code [7]. The microcontroller will also abide by the SPI protocol in order to load in a program from the PC. In automobiles, information from one sensor and/or data from one system can be communicated with other systems using multiplex wiring to reduce the number of sensors and the amount of wire used in a vehicle [7]. Two predominant protocols have emerged as standards, but several other protocols exist that are specific to manufacturers' applications. The Society of Automotive Engineers (SAE) has established SAE J1850 as the standard for multiplexing and data communications in U.S. automobiles [8]. However, data communications for trucks and On-Board Diagnostics II (OBDII) are based on the Controller Area Network (CAN) protocol developed by Robert Bosch GmbH [9]. The SAE Vehicle Network for Multiplexing and Data Communications (Multiplex) Committee has defined three classes of vehicle networks: Classes A, B and C [8]. Class A is for low-speed applications such as body lighting [8]. Class B is for data transfer between nodes to eliminate redundant sensors and other system elements [8]. Class C is for high-speed communications and data rates typically associated with real-time control systems [8]. The project will be considered as a class C application. 4.3. Constraints, Alternatives, Tradeoffs The design was constrained by patent infringement of similar products on the market such as the Rain Tracker system which uses a similar optical approach to detect rain. However, time and funds were the primary constraints that limited the scope and quality of the overall project. MARE Windshield Wiper System ECE4007L02: Group 4 14 One alternative design for rain detection was to replace the entire rain detection unit by a video camera. The stream of images could have been processed and analyzed to determine the state of the windshield. However, the approach was discarded from the beginning because of financial reasons and limited expertise on image processing algorithms. Moreover, having a camera behind a windshield glass for rain detection might not be an attractive feature for many customers. There is a design tradeoff between the amount of windshield surface covered by the rain sensors and the ability of the system to detect actual raindrops [4]. If the sensors were able to monitor the entire windshield surface, the system would be more reliable, but the windshield would be cluttered and it would be hard to see through the glass. In order to maximize the detection rate and maintain visibility, the sensors were placed near the driver's side. 5. SCHEDULE, TASKS, AND MILESTONES The Gantt chart in Figure 9 shows the building blocks and milestones of the project and the completion dates that actually occurred. A full-size version of the Gantt chart is provided in MARE Windshield Wiper System ECE4007L02: Group 4 15 Figure 9 Project Gantt Chart Appendix B . Tasks were added and subtracted to the Gantt chart throughout the project development. The team made adjustments to the schedule at the very outset of the project. The degree of difficulty of the tasks is proportional to the task length in the chart. Much time and resources were focused on assembling the components of each of the sub-systems, developing and debugging the microcontroller code, building the system apparatus and integrating the subsystems. At the onset of the project, the team met to discuss the responsibility of each team member. Renaud Moussounda handled all the software applications of the project (principally programming the microcontroller) as well as designed the impedance sensors. He also designed and maintained the project website. Eric Williams worked on the infrared sensor, and investigated a comparable product on the market. Michael Whitfield handled administrative responsibilities including weekly status reports to project advisors and preliminary technical MARE Windshield Wiper System ECE4007L02: Group 4 16 writing of the proposal. Michael was also responsible for determining whether the voiceactivation feature was feasible. Anthony Harris developed the prototype apparatus, and researched how the system interfaces with the existing windshield wiper controls. The Gantt chart reflects the duration and completion dates of these aspects of the project. 6. PROJECT DEMONSTRATION The project demonstration for the MARE windshield wiper system prototype tests for the successful detection of rain, tests for the intensity of that rain, and activates one of four speeds of the windshield wiper. The system activates within 500 milliseconds as originally specified under the voltage requirements. The prototype achieves all the product goals and specifications set out by the proposal, however, the temperature range specification was not able to be tested. The prototype was tested in a room temperature environment so additional testing need be performed to determine whether the system has the same functionality at the extreme temperatures of the technical specifications. Figure 10 shows a photograph of the actual prototype of the project. As can be seen from the figure roughly 3 ft of plexiglass, mounted in a wooden frame, serves as the automobile windshield. The plexiglass is angled at about 37 degrees to mimic automobile windshields. Mounted below the plexiglass are the wiper linkage kit as well as the wiper pulse motor controls and wiper motor. The IR sensors are located at position ‘A’ on the figure and the impedance sensors are located at position ‘B.’ The system controls are housed behind the plexiglass including the microcontroller and all input/output signal modules. To start the system, the user would first connect the power leads to the breadboard with a DC power supply. System should be supplied with a voltage greater than 5 volts. User should be sure to connect the positive terminal of the voltage source to the red post of the breadboard #1 and the negative MARE Windshield Wiper System ECE4007L02: Group 4 17 terminal to the black post. Once the system is powered up, the user will also need to connect 12 V and GND to breadboard #2 which is connected to the relays that control the wiper motor housed below the plexiglass. After these connections are made, the user will turn on the system by switching on the power switch on breadboard #1. Rain will be simulated using a spray bottle; the user will spray water on the glass near any one of the sensors and the system will react within 500 milliseconds. The speeds of the windshield wiper will vary depending on the amount of water sprayed onto the plexiglass. Breadboard #2 Breadboard #1 Figure 10.a Microncontroller and Relays MARE Windshield Wiper System ECE4007L02: Group 4 18 B A B Figure 10.b Project Prototype 7. MARKETING AND COST ANALYSIS 7.1. Marketing Analysis The MARE windshield wiper system unique blend of dual sensor technologies enables redundancy in moisture detection. The impedance sensors and IR sensor work in conjunction to provide optimal wiper actuation. Competitor wiper systems, such as the TRW Rain tracker, implement a single sensor topology for rain detection. While this topology lowers the product MARE Windshield Wiper System ECE4007L02: Group 4 19 price, the system is bound by single point failure. If the IR sensor malfunctions, the tracker system is inoperable. The dual sensor topology of MARE allows the system to maintain operability in the event that either sensor, IR or Impedance, malfunction. Herein lays the competitive advantage of the MARE system. The team believes that this competitive advantage justifies the slightly higher price of the MARE system over its competitors. The marketing strategy for MARE focuses on its appeal to two primary clientele: luxury automobile owners and elderly drivers. Luxury automobile owners would enjoy the accentuation of their driving experience; elderly drivers the ease of use of the system. The team will make use of product demonstrations at AARP (American Association of Retired Persons) Conventions and Automobile shows to market to the primary target consumers. This approach mitigates the costly advertising scheme and passes on those savings to the consumer in the form of a lower product price. 7.2. Cost Analysis Prototype Cost Analysis The prototype analysis demonstrates the costs associated with constructing the MARE system. The analysis considers the labor costs, parts & materials cost, and production cost of the complete system. The labor costs were broken down into three separate categories: Administrative (Project Meetings, Design Presentations, Status Reports, Progress Reports, and Written Proposals); Design (Sensor Design, Apparatus Construction, C-Code, and Project Testing); and Research (Wiper Motor Investigation; Wiper linkage acquisition; Sensor investigation; etc). The team created an excel spread sheet that tracks each of these headings for MARE Windshield Wiper System ECE4007L02: Group 4 20 each group member. Figure 1 displays an example spreadsheet of project hour figures. The complete excel sheet with accurate labor figures can be found in Appendix C. Figure 11 Project Hours Chart The team spent a total of 490 hours on constructing the project prototype. At an hourly rate of $30.00/hr the pure labor cost amounts to $14,700. With the addition of employee fringe benefits and medical the accrued labor cost totals $18,375. A complete account of these figures can be seen in Appendix C. The materials associated with the design of the MARE system consist of materials purchased that were used in the prototype and materials purchased that were not implemented in the design. Both costs are provided to show the cost of materials for the prototype and the complete cost of MARE Windshield Wiper System ECE4007L02: Group 4 21 materials purchased. The complete cost of materials used in the prototype design totaled $334.13. The complete cost of materials purchased for the prototype design totaled $379.75. The latter figure was used in conjunction with the prototype labor cost to determine the complete prototype cost. With material and labor overhead accounted for the complete prototype cost totals $29,070. The complete figures can be seen in Appendix C. Product Analysis The mass production cost of the MARE will be significantly lower than the prototype cost. Primarily because materials used to construct the prototype (i.e. wiper motor, wood frame, wiper linkage kit, and plexi-glass windshield) would be provided in the car assembly; the team need only implement the sensors and electronics that function the MARE system. Consequently, the team believes that the mass production material cost of each system to be roughly $60.00/unit. Each unit will require no more than an hour for assembly and testing. Based on 10,000 units sold per year at a price of $292/unit the team expects a 23.9% profit margin. Table 2displays the overall figures and expected profit. The team expects to make $70.00 per unit sold. As better methods of production are realized the team expects the cost of production to steadily decrease consequently reducing the product price. MARE Windshield Wiper System ECE4007L02: Group 4 22 Table 2 MARE Windshield Wiper System Expected Profit Expectations Labor cost and Price Expectation Based on: 10,000 Parts Cost 60 Assembly Labor 10 Testing Labor 10 Total Labor 20 Fringe Benefits, % of Labor 8 Subtotal 85 Overhead, % of Material, Labor & Fringe 47 Subtotal, Input Costs 132 Sales & Marketing Expense 73 Warranty & Support Expense 15 Amortized Development Costs 3 Subtotal, All Costs 222 Profit 70 Selling Price $292 Total Revenue $300,000 Total Profit $48,093 MARE Windshield Wiper System ECE4007L02: Group 4 Units 23.9% 23 8. SUMMARY AND CONCLUSIONS In conclusion, the automated windshield wiper system was designed, developed, and demonstrated to detect rain and actuate the automobile windshield wipers based on the intensity of that rain. The demonstration is able to simulate the operation of the system as if installed in an automobile. The team was able to successfully complete the project and satisfactorily meet the proposal goal of automating the driver’s response to rain within the specified amount of time of 500 milliseconds. Though the MARE system functioned as desired, in retrospect the team would have selected different design approaches. After noticing that more accuracy was required from the IR sensor to adequately detect the intensity of rain the team would have selected a more applicable IR sensor. In addition, the team would schedule project milestones differently taking into consideration parts of the project that were most significant and consequently required the most effort to complete. The initial goals and objectives were to expand upon existing automatic windshield wiper technologies to make a more reliable yet economically priced system. As shown by the project demonstration and the cost analysis, these goals and objectives were met. Recommendations for future versions of the product include using more sophisticated IR sensors, including a voice recognition feature, and raising all the power windows in the vehicle when rain is detected. Although the project met our goals, another production cycle should be initiated to improve the reliability of the system and include the features mentioned in the future versions. MARE Windshield Wiper System ECE4007L02: Group 4 24 REFERENCES [1] NHTSA Data Sheet, 2001, Available HTTP: http://www-nrd.nhtsa.dot.gov/departments/nrd12/809-716/pages/longdesc.htm [2] “The Rain Tracker Makes Driving More Enjoyable,” [Online Document], Available HTTP: http://www.raintracker.com/ProductInfo.htm [3] “TRW Automotive Electronics: Rain Sensor,” 2007, [Online Document], Available HTTP: http://www.trw.com/images/rain_sensor.pdf [4] M. Ucar, H. Ertunc, and O. Turkoglu, “The Design and Implementation of Rain Sensitive Triggering System for Windshield Wiper Motor,” In IEEE IEMDC, 2001, pp. 329-336. [5] H. Kurihata, T. Takahashi, I. Ide, Y. Mekada, H. Murase, Y. Tamatsu, and T. Miyahara, “Rainy Weather Recognition from in-Vehicle Camera Images for Driver Assistance ,” In IEEE Intelligent Vehicles Symposium, 2005, pp. 205-210 [6] HM Data Sheet, 2007, Available HTTP: http://www.tranzistoare.ro/datasheets/2300/499674_DS.pdf [7] National Fire Protection Association, 2007, [Online Document], Available HTTP: http://www.nfpa.org/ [8] “SAE Standards Development,” Sep 2007, [Online Document], Available HTTP: http://www.sae.org/standardsdev/ [9] “CAN Specification”, 1991, [Online Document], Available HTTP: http://esd.cs.ucr.edu/webres/can20.pdf [10] G. Muller, “Windshield Wiper System with Rain Detector,” U.S. patent no. 5015931, issued June 11, 1991 MARE Windshield Wiper System ECE4007L02: Group 4 25 Appendix A—Microcontroller Code /* Georgia Institute of Technology ECE 4884/4007 Group: 4 Project: Automatic Windshield Wiper System File: code.c Version: 2.0 Date: 12/07/07 */ #include <avr/io.h> #include <util/delay.h> // define A/D channels #define #define #define #define #define IMP_SENSOR 0 HIGH_SENSOR 1 MED_SENSOR 2 LOW_SENSOR 3 IR_SENSOR 4 //define common threshold #define THRESHOLD 127 #define IR_THRESHOLD 70 //define functions void ioinit(void); uint8_t read_adc(uint8_t channel); void park_enable(void); void intermittent_enable(void); void low_enable(void); void medium_enable(void); void high_enable(void); void delay_ms(uint16_t ms); int main(void) { ioinit(); int temp = 0; int zero_rotation = 4; int low_rotation = 3; int speed_loop; park_enable(); while (1) { if (read_adc(IMP_SENSOR) >= THRESHOLD || read_adc(IR_SENSOR) < IR_THRESHOLD) { if (!temp) { intermittent_enable(); } if(read_adc(IMP_SENSOR) >= THRESHOLD || read_adc(IR_SENSOR) < MARE Windshield Wiper System ECE4007L02: Group 4 26 IR_THRESHOLD) { speed_loop = 1; while (speed_loop) { if(read_adc(HIGH_SENSOR) >= THRESHOLD) { high_enable(); low_rotation = 4; zero_rotation = 3; temp = 0; } else { if(read_adc(MED_SENSOR) >= THRESHOLD) { medium_enable(); low_rotation = 3; zero_rotation = 2; temp = 0; } else { if (read_adc(LOW_SENSOR) >= THRESHOLD) { if (temp) { speed_loop = 0; park_enable(); } else { low_enable(); if (low_rotation < 0) { intermittent_enable(); if (zero_rotation < 0) { temp = 1; } zero_rotation--; } low_rotation--; } } else { if (temp) { park_enable(); speed_loop = 0; } else { intermittent_enable(); if (zero_rotation < 0) { MARE Windshield Wiper System ECE4007L02: Group 4 27 temp = 1; } zero_rotation--; } } } } } } else { speed_loop = 0; } } else { park_enable(); } } } void ioinit (void) { DDRD = 0 | _BV(PD7) | _BV(PD6) | _BV(PD5); ADMUX = 0 | _BV(ADLAR); ADCSRA = _BV(ADEN); //ENABLE ADC } uint8_t read_adc(uint8_t channel) { uint8_t value; switch (channel) { case 0 : ADMUX = 0 | _BV(ADLAR); break; //ADC0 impedance sensor line case 1 : ADMUX = _BV(MUX0) | _BV(ADLAR); break; //ADC1 high case 2 : ADMUX = _BV(MUX1) | _BV(ADLAR); break; //ADC2 med case 3 : ADMUX = _BV(MUX1) | _BV(MUX0) | _BV(ADLAR); break; //ADC3 low case 4 : ADMUX = _BV(MUX2) | _BV(ADLAR); break; //ADC4 IR sensor default : ADMUX = 0 | _BV(ADLAR); /* in case where this fails, try ADMUX=(1 << ADLAR)|(0 << MUX3)|(0 << MUX2)|(0 << MUX1)|(0 << MUX0); */ } ADCSRA |= _BV(ADSC); //START CONVERSION while(!(ADCSRA & _BV(ADIF))); value = ADCH; ADCSRA |= _BV(ADIF); return value; } void delay_ms(uint16_t ms) { while(ms) { _delay_ms(1); ms--; } } void park_enable(void) MARE Windshield Wiper System ECE4007L02: Group 4 28 { PORTD = 0x00; delay_ms(200); } void intermittent_enable(void) { PORTD = 0 | _BV(PD6)| _BV(PD7); delay_ms(500); PORTD = 0 | _BV(PD6); uint8_t count = 10; while(count > 0) { if (read_adc(MED_SENSOR) >= THRESHOLD) { medium_enable(); break; } else { count--; delay_ms(500); } } } void low_enable(void) { PORTD = 0 | _BV(PD6)| _BV(PD7); delay_ms(2000); } void medium_enable(void) { PORTD = _BV(PD5)| _BV(PD6)| _BV(PD7); delay_ms(2000); } void high_enable(void) { PORTD = 0 | _BV(PD7); delay_ms(2000); } MARE Windshield Wiper System ECE4007L02: Group 4 29 Appendix B—Project Gantt Chart MARE Windshield Wiper System ECE4007L02: Group 4 30 Appendix C - Project Hourly Summary; Project Cost Figures MARE Windshield Wiper System ECE4007L02: Group 4 31 Example of Cost and Price Calculations Fringe Benefits 25% of labor Overhead 55% of materials, labor & fringe Sales & Marketing Expense 25% of selling price 5% of selling price Warranty & Support Expense Development Cost (Non-recurring Cost) What it costs the company to develop the product Parts $379.75 Labor $14,700 Fringe Benefits, % of Labor 3,675 Subtotal 18,755 Overhead, % of Matl, Labor & Fringe 10,315 Total MARE Windshield Wiper System ECE4007L02: Group 4 $29,070 32 Determination of Selling Price What the customer pays the company for the finished product Based on: 10,000 Parts Cost 60 Assembly Labor 10 Testing Labor 10 Total Labor 20 Fringe Benefits, % of Labor 5 Subtotal 85 Overhead, % of Matl, Labor & Fringe 47 Subtotal, Input Costs 132 Sales & Marketing Expense 73 Warranty & Support Expense 15 Amortized Development Costs 3 Subtotal, All Costs Profit Selling Price Total Revenue Total Profit MARE Windshield Wiper System ECE4007L02: Group 4 units 222 70 23.9% $292 $2,920,000 $697,430 33