Home

The Dream Green Final Report - Senior Design

image

Contents

1. Figure 6 Side Lift Schematic Page 9 11 2 2 End Lift Assembly After fully re evaluating the approach to the end lift the team decided to go back to a two motor approach that was very similar to the design of previous teams The main difference is that the design ran each motor independent of the other at least in how it was wired By connecting each motor separately to the power supply each motor was able to draw maximum current allowing each to operate at close to maximum speed The team just configured the controls such that each motor would always be going to the same wedge position which allowed the load to be split Rather than get creative with hardware the team felt it would be easier and more cost effective to get creative on the software side to achieve the proper end result of a functional end lift This method did prove to be effective the team are confident that the client will be able to replicate it much easier than with the more complex crossbar design Figure 8 Detail of Wedge Positionin
2. Hours per Job Technology End Product End Product Prototype End Product End Product End Product Project Total per Individual Evaluation Design Implementation Testing Documentation Demonstration Reporting Ryan E 30 20 70 20 20 5 15 180 David G 30 20 70 20 20 5 15 180 David M 30 20 70 20 20 5 15 180 Mevan V 30 20 70 20 20 5 15 180 Brian W 30 20 70 20 20 5 15 180 Total 150 100 350 100 100 25 5 900 Table 2 Revised Estimated Personnel Effort Requirements Hours per Job Technology End Product End Product Prototype End Product End Product End Product Project Total per Individual Evaluation Design Implementation Testing Documentation Demonstration Reporting Ryan E 30 30 70 20 30 5 15 200 David G 15 25 35 20 30 5 15 145 David 15 15 35 40 30 5 15 155 Mevan 30 30 70 20 30 5 10 195 Brian W 15 25 35 40 30 5 30 180 Total 105 115 245 140 150 25 85 865 Table 3 Final Personnel Effort Requirements Hours per Job Technology End Product End Product Prototype End Product End Product End Product Project Total per Individual Evaluation Design Implementation Testing Documentation Demonstration Reporting Ryan E 30 30 80 20 30 4 15 209 David G 28 26 75 20 30 5 15 199 David M 27 26 75 20 30 5 15 198 Mevan 25 28 74 20 30 4 10 191 Brian W 20 20 35 20 30 4 50 179 Total 130 130 339 100 150 22 105 976 Page 19
3. while temp temp KeypadGetChar Page 9 if temp gt 2 amp amp temp lt 8 amp amp count tempscore temp 0 XLCDPut temp count if temp amp amp count 1 tempscore 0 XLCDCursorMoveLeft Count scores i tempscore KeypadClose return GAME 1 unsigned char gamel void unsigned char i 0 KeypadClose XLCDReturnHome XLCDClear for i 0 i lt crsnamelen 1 XLCDPut coursename i for i 0 i lt 20 crsnamelen i XLCDPutRomString rom char XLCDPutRomString rom char P 1 XLCDPut scores 0 100 0 XLCDPut scores 0 10 10 0 XI LCDPut scores 0 10 0 if num_players gt 2 XLCDPutRomString rom char P 2 XLCDPut scores 1 100 0 XLCDPut scores 1 10 10 0 XLCDPut scores 1 10 O XLCDPutRomString rom char else XLCDPutRomString rom char LCDPut hole 10 0 LCDPut hole 10 0 LCDPutRomString rom char my if num players 3 PutRomString rom char P 3 Put scores 3 100 0 X D XLCD 0 XLCDPut scores 3 10 10 0 X D if n Put scores 3 10 O um players 4 XLCDPutRomString rom char P 4 XLCDPut
4. Manual Operation 1 Dream Green Unit 1 Motorized Operation of Wedge Adjustment System 2 Wedge Detail 2 Previously Considered End Lift 9 Side Lift Schematic 9 End Lift Schematic 10 Detail of Wedge Positioning Apparatus 10 Original Project Gantt Chart 24 Adjusted Project Gantt Chart 25 Final Project Gantt Chart 26 Project Deliverables Gantt Chart Unchanged throughout Project 27 Motor Controller Circuit Board B 1 Motor Controller Circuit B 1 H Bridge amp Rotary Encoder B 2 I O Connection amp Voltage Regulator B 2 User Interface Circuit Card B 3 User Interface Circuit B 3 Page IV Table of Tables Table 1 Initial Estimated Personnel Effort Requirements Table 2 Revised Estimated Personnel Effort Requirements Table 3 Final Personnel Effort Requirements Table 4 Initial Estimated Resource Requirements Table 5 Adjusted Resource Requirements Table 6 Final Resource Requirements Table 7 Motor Controller Board Parts List Table 8 User Interface Board Parts List Table 9 Initial Estimated Financial Budget Table 10 Revised Financial Budget Table 11 Final Financial Budget Table 12 Evaluation Scores for Milestone Completion Table 13 Torque Calculations Page V Definitions SPI serial peripheral interface A serial connection between electron devices usually a processor and peripheral Some manufactures refer to it as Microwire
5. OpenRBlINT PORTB CHANGE INT amp RISING EDGE INT amp PORTB PULLUPS OFF INTCON3bits INT1IP 0 Low priority device id ID BIT 3 8 ID BIT 2 4 BIT 1 2 ID BIT 0 1 device id unsigned long device id 5 Send ID CAN packet TX Message Address unsigned long MASTER ID ACK TX Message Data 0 device id TX Message NoOfBytes 1 TX Message Ext 0 TX Message Remote 0 TX Message Priority 2 CANPut TX Message Home Wedge 0 DIRECTION 0 1 TurnOn Motor0 wedge0 target 48 while WEDGEO HOME Nop Home Wedge 1 DIRECTION_1 1 TurnOn_Motor1 while WEDGE1_HOME Nop Main Program Loop 1 1 Check Position ETE ALLEL AA if motorO on Overshoot protection shouldn t be necessary DIRECTION 0 0 pos gt 0 target 1 0 Are we there yet if wedgeO0 pos lt wedge0 target TOLERANCE amp amp 0 pos gt wedge0 target TOLERANCE if wedgeO pos gt 50 ProcessTarget0 if motorl on Overshoot protection shouldn t be necessary DIRECTION 1 wedgel pos wedgel target 1 0 Are we there yet if wedgel pos wedgel target TOLERANCE amp amp wedgel pos wedgel target TOLERANCE ProcessTargetl Check for errors VAALIA TAIATA TATLI Current
6. saveflag 0 return GAME 0 unsigned char rnd_crs void KeypadClose XLCDReturnHome XLCDClear XLCDPutRomString rom char XLCDPutRomString rom char XLCDPutRomString rom char XLCDPutRomString rom char XLCDCursorOnBlinkOff Random Course Randomizing Please Wait need course randomizing stuff KeypadOpen while KeypadGetChar KeypadClose saveflag 2 return GAME OPT 0 unsigned char snew_crs0 void KeypadClose XLCDReturnHome XLCDClear XLCDPutRomString rom char XLCDPutRomString rom char XLCDPutRomString rom char XLCDPutRomString rom char XLCDCursorOnBlinkOff KeypadOpen while KeypadGetChar KeypadClose return SNEW CRS 1 unsigned char snew 1 void KeypadClose XLCDReturnHome XLCDClear XLCDPutRomString rom char XLCDPutRomString rom char XLCDPutRomString rom char XLCDPutRomString rom char XLCDCursorOnBlinkOff KeypadOpen while KeypadGetChar KeypadClose return SNEW CRS 2 unsigned char snew crs2 void unsigned char temp 0 unsigned char chars 0 Set New Course B is to Lower A is to Raise Set New Course D changes Hole C changes Position Finish Page A 15 unsigned char i 0 KeypadClose LCDReturnHome LCDClear LCDPutRomStrin
7. TurnOff Motorl break Move Wedge case MOVE WEDGE if RX Message Data 0 0 switch RX_Message Data 1 case 0 0 target WEDGE 0 break case 0 target WEDGE A break case B 0 target WEDGE B break case C 0 target WEDGE C break case D 0 target WEDGE D break DIRECTION 0 0 pos gt wedge0 target 1 0 TurnOn Motor0 else if RX Message Data 0 1 switch RX_Message Data 1 case 0 wedgel target WEDGE 0 break case A wedgel target WEDGE A break Page A 25 B wedgel target WEDGE B break case C wedgel target WEDGE C break case D wedgel target WEDGE D break DIRECTION 1 wedgel pos gt wedgel target 1 0 TurnOn Motorl break return Interrupt Service Routine void ISR void Timmer 0 if INTCONbits TMROIE amp amp INTCONbits TMROIF INTCONbits TMROIE 0 INTCONbits TMROIF 0 motor0 time motor0 on motorl time motorl on if motor0 time gt MAX TIME ProcessTimeError0 motor0 time if motorl time gt MAX TIME ProcessTimeErrorl motorl time WriteTimer0O 0 INTCONbits TMROIF 0 INTCONbits TMROIE I5 Encoder 0 if INTCONbits INTOIE amp amp INTCONbits INTOIF INTCONbits INTOIE 0 IN
8. XLCDClear XLCDPutRomString rom char XLCDPut mode1 0 XLCDPut model 1 XLCDPutRomString rom char XLCDPutRomString rom char XLCDPutRomString rom char XLCDCursorOnBlinkOff need connectivity stuff KeypadOpen while temp l amp amp temp temp KeypadGetChar KeypadClose LE if temp temp return MAIN MENU unsigned char new_crs2 void KeypadClose XLCDReturnHome XLCDClear XLCDPutRomString rom char XLCDPut mode1 0 XLCDPut model 1 XLCDPutRomString rom char XLCDPutRomString rom char XLCDPutRomString rom char XLCDCursorOnBlinkOff need connectivity stuff KeypadOpen while KeypadGetChar KeypadClose return NEW CRS 3 unsigned char new_crs3 void KeypadClose XLCDReturnHome XLCDClear XLCDPutRomString rom char XLCDPut mode1 0 XLCDPut model 1 XLCDPutRomString rom char XLCDPutRomString rom char XLCDPutRomString rom char XLCDCursorOnBlinkOff need connectivity stuff KeypadOpen while KeypadGetChar 4 New Course dg Connect RS232 device and Press Veit return NEW CRS 2 return NEW CRS 0 New Course dg Waiting for PC is Confirmation New Course Loading ys Please Wait Page A 14 1
9. unsigned int result float voltage Configure A D convertor OpenADC ADC FOSC 32 amp ADC RIGHT JUST amp 12 TAD ADC_CHO amp ADC_INT_OFF 15 DelaylOTCYx 5 Delay for 50 ConvertADC Start conversion while BusyADC Wait for completion result ReadADC Read result CloseADC Disable A D converter Convert to current voltage float result 1023 0 V_REF return float voltage SHUNT VALUE 5 I V R Get Motor 1 Current MIMMMMMMIMMMPMBPMM MllMlMlPlllliellllllillllillililllllllilllllllllllllldldMldMdMlMdMlMdMHll float GetMotorlCurrent void unsigned int result float voltage Configure A D convertor OpenADC ADC FOSC 32 amp Page A 27 ADC RIGHT JUST amp 12 TAD ADC_CHO amp ADC INT OFF 15 DelaylOTCYx 5 Delay for 50TCY ConvertADC Start conversion while BusyADC Wait for completion result ReadADC Read result CloseADC Disable A D converter Convert to current voltage float result 1023 0 V REF return float voltage SHUNT VALUE CS COFF I V R Process Target 0 LIAS SAT ALITA IATA TAA TALL AT AA FEE REEL EE EF EFE AAA AAT ATA TSA TA AA ALAA ASA ATS void ProcessTarget0 void TurnOff Motor0 Send confirmation CAN packet TX Message Address MASTER ID MOVE COMPLETE TX Message NoOfBytes 3 TX Message
10. Please Wait Instructions is Forward Enter At any time is Back Delete 20 dgslave c MMMMMMlMIMIMMMPMPMPMP WMBP WMBWMl ITITPBGMlM MM P M TAT TTA TT TTA TTT TATA TAT TTT Filename dgslave c 7777777777777777777777777777777777777777777777777777777777777777777777777777 Author Ryan Emerson Company Senior Design Iowa State University Revision 1 0 Date 9 14 05 VAA AAAA AAAA LANAA AAAA AAAA AAAA AAAA AAAA AAA AAAA AAAA AALA AAAA AAAA AAA AAAA AAAA LAA include lt p18f248 h gt include lt stdlib h gt include lt adc h gt include lt delays h gt include lt portb h gt include lt reset h gt include lt timers h gt include can h include UARTIntC h include dgcan h 7777777777777777777777 Configuration Data pragma config OSC HSPLL pragma config PWRT ON pragma config BOR ON pragma config BORV 27 pragma config WDT OFF pragma config WDTPS 128 pragma config STVR ON pragma config LVP OFF pragma config DEBUG OFF pragma config CPO OFF pragma config 1 OFF pragma config WRTB OFF pragma config WRTC OFF pragma config WRTD OFF pragma config EBTRO OFF pragma config OFF pragma config EBTRB OFF 1 0 Mapping define CURRENT SENSE 0 PORTAbits RAO define CURRENT SENSE 1
11. initialize the LCD module state MAIN MENU UARTIntPutChar while 1 Update LCD Display if state last_state switch state Page A 4 case MAIN MENU state main_menu break case GAME OPT 0 state game_opt0 break case GAME 1 state game optl break case GAME 2 state game opt2 break case GAME 3 state game opt3 break case GAME 0 state state game0 break case GAME 1 state gamel break case GAME 2 state game2 break case GAME 3 state game3 break case MAINT MENU state maint_menu break case NEW CRS 0 state new _crs0 break case NEW CRS 1 state new _crsl break case NEW CRS 2 state new crs2 break case NEW CRS 3 state new crs3 break case RND CRS state rnd crs break case SNEW CRS 0 state snew crs0 break case SNEW CRS 1 state snew crs1 break case SNEW CRS 2 state snew crs2 break case SNEW CRS 3 state snew crs3 break case MDL MENU 0 state mdl menu0 break case MDL MENU 1 state mdl menul break case SAVE 0 state save 0 break case SAVE 1 state save 1 break case SAVE 2 state save 2 break case SAVE 3 state save 3 break case INST 0 state inst 0 break Check for CAN if CANRXMessageIsPending New CAN take it RX Message
12. Wed 9 14 05 Mon 9 26 05 Mon 9 26 05 Wed 10 5 05 Mon 9 26 05 Tue 10 18 05 Tue 10 18 05 Tue 11 1 05 Mon 4 3 06 Mon 4 3 06 Mon 4 3 06 Mon 4 10 06 Tue 4 11 06 Mon 4 10 06 Mon 4 10 06 Mon 4 10 06 Mon 4 10 06 Mon 4 10 06 Mon 4 3 06 Mon 4 3 06 Tue 8 30 05 Tue 8 30 05 Mon 9 26 05 Mon 1 9 06 Mon 1 9 06 Tue 8 30 05 an 06 Project May06 03 Date Sat 4 29 06 Task Split Progress Milestone Summary QJ External Tasks e Project Summary gt External Milestone Deadline Jb Figure 11 Final Project Gantt Chart Page 26 ID Task Name Duration Start Finish Predecessors Oct 05 Nov 05 Dec 05 Jan 06 Feb 06 Mar 06 Apr 06 06 o 30 1 Project Plan Due 1 day Fri 9 23 05 Fri 9 23 05 e 9 23 2 Bound Project Plan Due 1day Tue 10 11 05 Tue 10 11 05 10 11 3 End Product Design Report Du 1 day Fri 11 11 05 Fri 11 11 05 11 11 4 Bound End Product Design 1 day Wed 12 14 05 Wed 12 14 05 e 12 14 5 29 Project Poster Due 1 day Tue 2 28 06 Tue 2 28 06 2 28 6 Project Final Report Due 1 day Fri 3 31 06 Fri 3 31 06 3 31 7 Faculty Advisor s Demonstratic 4 days Tue 4 11 06 Fri 4 14 06 4 11 8 EJ Client Demonstration 1 d
13. 0 unsigned char newcrsdone 1 unsigned char model 2 2 0 unsigned char motor count 18 unsigned char coursename 19 L I T T L E DNUS GN PEE ES USt Eque SEN CE NOM HENCE ENOT li unsigned char crsnamelen 14 unsigned char saveflag 0 0 loaded saved 1 usr 2 rnd unsigned char course NUM OF HOLES MAX MOTORS 0 0 0 0 0 0 4 0 0 0 0 0 0 0 4 0 0 0 0 4 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 4 0 0 0 0 0 0 4 0 Ty 0 0 2 0 0 2 0 0 4 05 0 0 0 0 0 3 0 0 0 2 0 3 03 0 0 0 0 0 0 0 0 2 0 1 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 I 0 ly 4 0 0 2 0 3 0 0 0 0 0 0 4 0 0 0 0 0 4 0 0 2 0 3 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 2 0 0 0 0 0 0 3 0 0 0 4 0 0 0 0 3 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 3 0 2 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 3 0 2 0 0 3 0 0 0 3 3 0 0 0 0 0 0 0 3 0 0 0 0 3 0 0 0 0 3 0 0 0 0 0 0 3 3 0 0 0 0 3 0 0 4 0 35 0 0 0 0 05 3 3 0 0 0 0 33 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ATTA ATTA TT ROM Declarations rom unsi
14. 15 2 Other Resource Requirements Listed below is a table of outside resources that the team will use Some resources reoccurring from last year are for additional materials needed to complete the entire prototype Table 4 Initial Estimated Resource Requirements Resource Reason Senior Design Lab Space and equipment will be needed for constructing the Dream Green Prototype Dream Green Will be used to implement design and used for testing Parts Additional parts will be needed to replace burnt out parts from previous teams and new parts will be needed for motor protection motor control user interface power interface and circuit board creation Machine Shop Used to make additional parts for the prototype Table 5 Adjusted Resource Requirements Resource Reason Costs Related Senior Design Lab Space and equipment will be needed for constructing the Dream Green Prototype Part of the Class Dream Green Will be used to implement design and used for testing Donated Parts Additional parts will be needed to replace burnt out parts from previous teams and new parts will be needed for motor protection See Section 14 Other Resource motor control user interface power interface and circuit board creation Requirements Dream Green Structural components of the Dream Green needed to be replaced due to past team s design idea t
15. 18 f3 19 9 20 9 21 9 22 23 24 725 26 27 28 28 30 31 32 EJ Task Name Problem Definition Problem Definition Completion Confirmation of End User s and End Use Review and Identification of Project Constr Technology Considerations and Selection Review and Modification of Technologies Technology Selection End Project Design Review of Design Requirements Design Process Documentation of Design End Product Prototype Implementation Identification of Prototype Limitations Implementation of Prototype End Product End Product Testing Test Planning Test Development Test Execution Client Testing Test Evaluation Documentation of Testing End Product Documentation Development of End User Documentation Development of Maintenance and Support End Product Demonstration Demonstration Planning Project Reporting Project Plan Development End Product Design Report Development Project Poster Devlopment Project Final Report Development Weekly Email Reporting Duration 17 days 14 days 7 days 7 days 10 days 10 days 10 days 23 days 13 days 16 days 23 days 124 days 11 days 94 days 25 days 5 days 5 days 2 days 11 days 20 days 20 days 20 days 20 days 20 days 6 5 days 6 5 days 179 days 19 days 35 days 37 days 55 days 154 days Tue 8 30 05 Tue 8 30 05 Tue 9 13 05 Tue 9 13 05 Wed 9 14 05 Wed 9 14 05
16. 23 Development of End User Documentation 11 days Tue 3 7 06 Tue 3 28 06 24 Delopment of Maintenance and Support Documentation 6 days Tue 3 28 06 Tue 4 4 06 25 End Product Demonstration 19 days Tue 4 4 06 Fri 4 28 06 26 EL Demonstration Planning 6 days Tue 4 4 06 Tue 4 11 06 27 Faculty Advisor s Demonstration 4 days Tue 4 11 06 Fri 4 14 06 28 EL Client Demonstration 1 day Fri 4 21 06 Fri 4 21 06 29 Industrial Review Panel Demonstration 1 day Fri 4 28 06 Fri 4 28 06 30 Project Reporting 179 days Tue 8 30 05 Fri 5 5 06 31 Project Plan Development 19 days Tue 8 30 05 Fri 9 23 05 32 Project Plan Due 1 day Fri 9 23 05 Fri 9 23 05 33 Bound Project Plan Due 1 day Tue 10 11 05 Tue 10 11 05 34 End Product Design Report Development 35 days Mon 9 26 05 Fri 11 11 05 35 End Product Design Report Due 1 day Fri 11 11 05 Fri 11 11 05 11 11 36 Bound End Product Design Report Due 1 day Wed 12 14 05 Wed 12 14 05 12 14 37 EL Project Poster Devlopment 37 days Mon 1 9 06 Tue 2 28 06 38 Project Poster Due 1 day Tue 2 28 06 Tue 2 28 06 39 Project Final Report Development 75 days Mon 11 14 05 Fri 3 31 06 40 Project Final Report Due 1 day Fri 3 31 06 Fri 3 31 06 41 Bound Project Final Report Due 1 day Wed 5 3 06 Wed 5 3 06 42 Weekly Email Reporting 154 days Tue 8 30 05 Fri 5 5 06 Project May06 03 Task Progress Summary External Tasks Deadline iL Dat
17. CAN controller area network A serial communication protocol originally developed by Bosch GmbH for use in vehicle networks LCD liquid crystal display USART Universal Synchronous Asynchronous Receiver Transmitter PIC Programmable Integrated Circuit Page VI 1 Executive Summary The purpose of this project was to finalize the automation of the Dream Green modifiable putting surface The original Dream Green the version currently for sale is operated by manually sliding these wedges to raise lower the surface The break of the putting surface is changed by pushing and pulling wedges by motors implemented by last year s senior design team These motors move the wedges under a number of bars that support the surface See Figure 1 for basic operating procedures on how to manually raise the surface of the original Dream Green system Figure 1 Manual Operation Photo courtesy www dreamgreen com The ends of the surface may also be raised and lowered by the same wedge system to add an additional putting challenge The goal of this project was to complete the current control systems necessary to automate these adjustments Figure 2 shows a complete view of the Dream Green apparatus Figure 2 Dream Green Unit Photo courtesy www dreamgreen com The design process for this team consisted of making minor modifications to the work of previous teams as well as adding necessary components Such modifications included switching t
18. PROBLEM STATEMENT Go Ie OPERATING ENVIRONMENT INTENDED USERS I 6 INTENDED USES 7 ASSUMPTIONS 8 LIMITATIONS 9 EXPECTED END PRODUCT AND OTHER DELIVERABLES 10 PROJECT APPROACH 10 1 END PRODUCT FUNCTIONAL REQUIREMENTS 10 2 DESIGN CONSTRAINTS 10 3 TECHNICAL APPROACH CONSIDERATIONS AND RESULTS 10 4 TESTING APPROACH CONSIDERATIONS 1 DETAILED DESIGN 11 1 PREVIOUS DESIGNS 11 1 1 SIDE LIFT ASSEMBLY IV VI ANAA 11 1 2 END LIFT ASSEMBLY 11 2 FINAL DESIGNS 11 2 1 SIDE LIFT ASSEMBLY 11 22 END LIFT ASSEMBLY PageI 11 3 KEY COMPONENTS 11 3 1 MOTOR 11 3 0 WEDGE 11 3 3 THREADED SHAFT 11 3 4 THREADED INSERT 11 3 5 GEARS 11 4 MOTOR CONTROLLER CIRCUIT 11 4 1 MICROCONTROLLER 11 4 2 H BRIDGE 11 4 3 ROTARY ENCODER 11 5 USER INTERFACE CIRCUIT 11 5 1 MICROCONTROLLER 11 5 2 DISPLAY 11 5 3 INPUT 11 5 4 EXTERNAL 11 5 5 COMMUNICATIONS 12 IMPLEMENTATION PROCESS 12 1 MECHANICAL IMPLEMENTATION 12 22 ELECTRICAL IMPLEMENTATION 12 3 SUGGESTIONS FOR IMPROVEMENT 13 END PRODUCT TESTING 13 1 STRESS TESTING 13 2 GAME PLAY 14 PROJECT END RESULTS 14 1 ASSEMBLY INSTRUCTIONS 14 2 END USER INSTRUCTIONS 15 RESOURCE REQUIREMENTS 15 1 PERSONNEL EFFORT REQUIREMENTS 15 2 OTHER RESOURCE REQUIREMENTS 15 3 FINANCIAL REQUIREMENTS 16 PROJECT GANTT CHARTS 17 PROJECT EVALUATION 17 1 PROJECT DEFINITION 17 2 TECHNO
19. if ROW 1 Keypad eypadSetCols if ROW_2 eypadClearCols COL 0 1 Delayl100TCYx 1 if ROW 2 Keypad eypadClearCols COL 1 1 Delayl100TCYx 1 if ROW 2 Keypad eypadClearCols COL 2 1 Delayl100TCYx 1 if ROW 2 Keypad eypadClearCols COL 3 1 Delayl100TCYx 1 if ROW 2 Keypad eypadSetCols if ROW_3 eypadClearCols 0 1 Delayl100TCYx 1 if ROW 3 Keypad eypadClearCols COL 1 1 Delayl00TCYx 1 if ROW 3 Keypad eypadClearCols COL 2 1 Delayl100TCYx 1 if ROW 3 Keypad eypadClearCols COL 3 1 Delayl100TCYx 1 if ROW 3 Keypad eypadSetCols INTCONbits RBIF 0 INTCONbits RBIE i temp PORTB return eypad eypad eypad eypad eypad eypad eypad eypad eypad eypad eypad eypad Table 01 Table 11 1 21 Table 31 Table 2 0 Table 2 2 Table 3 0 Table 3 3 Page A 34 Appendix Schematics an an 2 On om om 55252252 NAM uh on oy 122222427 e C E gt S z e z e lemeeeece iy SF NF NF o y o 9 IIII 8 e a e e c amp c2 ad 913006000 e 2 e 99999999 Y 3900 00 m1 gt Figure 13 Motor Controller Circuit Board
20. previous design team and it had to do with a manufacturing error in the wedges In order for the motor to drive the wedge the back of the wedge had to be drilled out so a threaded insert could be pressed into the plastic Ideally the screw driving the wedge would be parallel with the ends of the wedge itself However this was not the case as several of the wedges ran pigeon toed meaning that the edges of the wedge were not in alignment with the screw This made it very difficult to effectively guide the wedges using the aluminum guide rails The team could have solved this problem in two ways one solution would be to mill the sides of the wedge to run parallel with the screw and the other would be to mount the aluminum guide rails parallel to the screw anyway but leaving space so the motion of the wedge would not be hindered but might twist slightly The team went with this option while not ideal it was felt that leaving some space would not be overly detrimental to performance and may even allow some room for error A second major problem that the team ran into was in mounting the gears to the screws and encoder devices The team was left with plastic gears some of which were warped and had a very shallow catching area in the teeth of the gear In testing of automation these gears slipped and as a result the encoders did not get an accurate count This caused the controllers to think the wedge was in a position that it was not T
21. 0 Low priority void KeypadClose void INTCONbits RBIE KeypadClearCols keypadBuffer NULL 0 void KeypadClearCols void COL 0 0 COL 1 COL 2 COL 3 0 1 100 2 uoo void KeypadSetCols void COL 0 1 COR 1 1 COL 15 COL 3 1 DelaylOOTCYx 2 void KeypadPush unsigned char chData keypadBuffer chData unsigned char KeypadGetChar void int i unsigned char result keypadBuffer keypadBuffer NULL return result void KeypadISR void char temp if INTCONbits RBIE amp amp INTCONbits RBIF INTCONbits RBIE 0 INTCONbits RBIF 0 if ROW_0 eypadClearCols COL 0 1 DelaylOOTCYx 1 if ROW 0 KeypadPush KeypadTable 0 0 eypadClearCols COM sd DelaylOOTCYx 1 if ROW 0 KeypadPush KeypadTable 0 1 eypadClearCols COL 2 1 DelaylOOTCYx 1 if ROW 0 KeypadPush KeypadTable 0 2 eypadClearCols COE 3 117 DelaylOOTCYx 1 if ROW 0 KeypadPush KeypadTable 0 3 Page A 33 eypadSetCols if ROW 1 eypadClearCols coL_0 1 1 100 1 if ROW 1 Keypad eypadClearCols COL 1 1 Delayl100TCYx 1 if ROW 1 Keypad eypadClearCols COL 2 1 Delayl00TCYx 1 if ROW 1 Keypad eypadClearCols COL 3 1 Delayl100TCYx 1
22. 4 Testing Approach Considerations The first process was unit testing on the subsystems of the Dream Green The end lift communications protocol and positioning system will need to be tested individually The second process was to integrate the subsystems to test the system as a whole With all the system together a working prototype was built and tested Page 7 11 Detailed Design The flowing is a description of the mechanical and electrical components of the automated Dream Green 11 1 Previous Designs This section describes the previous designs considered and or tested in the project 11 1 1 Side Lift Assembly The side lift assembly originally consisted of a wedge threaded shaft coupler threaded insert and motor The driveshaft of the motor was coupled with the threaded shaft The threaded shaft is then driven through the wedge via a threaded insert The rotational forces were converted to linear motion This assembly was designed in its entirety by previous design teams Problems that the team encountered with this setup were numerous First and foremost the motors used in this design were underpowered The wedge was driven directly into the wooden crossbeam resulting in major friction losses In addition the wedge was driven unguided into the crossbeam which resulted in lateral forces on the drive shaft and motor It should also be noted that there were no controls in place to control the position of the wedges The mechani
23. 77777777 if GetMotor0Current gt CURRENT if GetMotor0Current gt MAX CURRENT ProcessCurrentError0 unsigned char GetMotor0Current if GetMotorlCurrent gt MAX CURRENT if GetMotorlCurrent MAX CURRENT Page A 24 ProcessCurrentErrorl unsigned char GetMotorlCurrent Temp LILII LI if THERMAL FLAG 0 ProcessTempError0 if THERMAL FLAG 1 ProcessTempErrorl Check for CAN messages 7 if CANRXMessageIsPending New CAN take it RX Message CANGet Get the message Is it from the master and is it for me if RX Message Address amp 0b1111100000 device id What kind of message is it switch RX Message Address amp 050000011111 Ping 77777 case PING Send confirmation CAN packet TX_Message Address MASTER_ID ACK TX Message Data 0 RX Message Data 0 TX Message Data 1 RX Message Data 1 TX Message Data 2 RX Message Data 2 TX Message Data 3 RX Message Data 3 TX Message Data 4 RX Message Data 4 TX Message Data 5 RX Message Data 5 TX Message Data 6 RX Message Data 6 TX Message Data 7 RX Message Data 7 TX Message NoOfBytes RX Message NoOfBytes TX Message Ext 0 TX Message Remote 0 TX Message Priority 2 CANPut TX Message DelaylKTCYx 100 break Stop Wedges case STOP WEDGES TurnOff Motor0
24. Address MASTER ID TIME ERROR TX Message NoOfBytes 2 TX Message Ext 0 TX Message Remote 0 TX Message Data 0 TX_Message Data 1 TX_Message Priority CANPut TX Message return 1 deciSec 2 Turn On Motor 0 void TurnOn Motor0 void BRAKE 0 0 Disable brake DelaylOTCYx 100 motorO0 1 ENABLE 0 1 Turn motor on return Turn Off Motor 0 void TurnOff Motor0 void ENABLE 0 0 Turn motor off motor0 time 0 Reset timmer motor0 on 0 Clear flag DelaylKTCYx 1 Wait for spin down BRAKE 0 1 Enable breake DelaylKTCYx 100 return Turn On Motor 1 void TurnOn Motorl void BRAKE_1 0 Disable brake DelaylOTCYx 100 motorl on 1 Page A 30 ENABLE 1 1 Turn motor on return Turn Off Motor 1 void TurnOff Motorl void ENABLE_1 0 motor off motorl time 0 Reset timmer motorl on 0 Clear flag DelaylKTCYx 1 Wait for spin down BRAKE 1 1 Enable breake DelaylKTCYx 100 dgcan h 77777777777777777777777777777777777777777777777777777777777777777777
25. I 0 needed The last major change made was to replace the LED photo diode positioning system created by the previous team Since the circuit didn t react well to changing light conditions it was decided to replace it Many other applications have used rotary encoders and it was decided that they would work well with this application The encoders worked well they have been more accurate and reduced the component count 12 3 Suggestions for Improvement The biggest thing that would have helped the implementation process would be to have fabricated the parts specific to the design However the nature of the project was to complete the work of previous teams When the team used parts that were given by other teams the team may or may not have been using them as intended when they were fabricated One example is with the wedges and the fact that the insert was not aligned parallel to the edge of the wedges The previous team was not using rails to guide the wedge and as a result did not have this in mind when drilling out the wedge They probably wanted to be straight but may not have put the same attention as the team would have knowing that guide rails would be used Overall if the team would have been able to see the project through from inception the team certainly would have had implementation issues but likely not the same ones that were encountered Page 16 13 End Product Testing In implementing the final design several test
26. Previous teams had built their own circuit with relays However to reduce space complexity and cost it has been replaced with an integrated H bridge controller from National Semiconductor the LMD18200 The LMD18200 is a 3A H bridge circuit and includes short circuit protection thermal flag thermal shutdown short circuit protection and current sensor The LMD18201 is a similar part that is pin compatible to the LMD 18200 but doesn t have the current sensor Page 12 11 4 3 Rotary Encoder The position of the motor is monitored with the PIC using the pulses from a rotary encoder mounted on the output shaft of the motor The rotary encoder pulses a given number of time of each revolution of the motor Each pulse is counted using the external interrupt of the PIC The number of revolutions to each position is known and hard coded into the PIC so it can determine where the wedge is at any given time There is some uncertainty in using the rotary encoder because missed pluses add up over time However the motion of the wedge doesn t have to be extremely precise because each stop is approximately an inch One inch is translates into many revolutions of the motor The position of the motor is also zeroed each time the device starts up to avoid long term errors Then encoder selected is a Panasonic ECG series encoder EVE GEIF2012B with 12 pulses per revolution and a 12mm shaft with detent This model was selected mainly because of its low cost
27. The model chosen is a standard 20x4 character LCD and models from other manufactures should be compatible Page 13 11 5 3 Input The user has a 16 key keypad Grayhill 96BB2 006 F is what is user uses to respond to the messages displayed on the LCD The keypad only has keys labeled 0 9 and A D so care has been taken simplifies all inputs Since the pin outs for keypads like this aren t standardized changing models may require changes to software 11 5 4 External To be able to update the predefined holes from a personal computer and external connection is necessary Since the PIC includes a USART controller adding an RS 232 was simple and cost effective The RS 232 single is regulated with a Maxim MAX233A transceiver 11 5 5 Communications To enable commutations between the user inter face circuit and the motor controller circuits a CAN Controller Area Network bus has been implemented CAN was selected because of its addressing fault tolerance and error detection Each CAN packet begins with a 10 bit address allowing 1024 unique devices on the bus Since this the maximum number of devices need for the largest Dream Green is 32 the address segment also includes the packet type for this implementation Use Device Identifier Packet Identifier Device Identifier Master 32 Slave 0 31 Packet Identifier Description Reserved Sent on startup ACK Acknowledgement a packet is received PING Sends packet back to
28. char Maintanence Menu XLCDPutRomString rom char 2 Change Model XLCDPutRomString rom char 1 New Course XLCDPutRomString rom char XLCDCursorOnBlinkOff KeypadOpen while temp 1 amp amp temp 2 amp amp temp temp KeypadGetChar KeypadClose if temp 1 if saveflag 0 return NEW CRS 0 if temp if temp else if saveflag VDE CAT return return return MAIN MENU 1 saveflag 2 return SAV MDL MENU 0 unsigned char new_crs0 void unsigned char temp Key LC LC LC LC LC LC LC MMMM MM XM Key while Key if AET if if 0 padClose DReturnHome DClear DPutRomString DPutRomString rom DPutRomString rom DPutRomString rom DCursorOnBlinkOff rom padOpen temp 1 padClose temp 1 tem tem tem return return return return 15 2 35 O O O return MAIN MENU char char char char amp amp temp N ENU 2 TE I 2 amp amp temp temp KeypadGetChar NEW CRS 1 SNI R EW CRS 0 D CRS MAIN MENU New Course Menu Set Your Own n Load New Course Random Course 13 amp amp Page A 13 Fl unsigned char new crsl void unsigned char temp 0 KeypadClose XLCDReturnHome
29. char deciA void ProcessCurrentErrorl unsigned char deciA void ProcessTempError0 void void ProcessTempErrorl void void ProcessTimeError0 unsigned char deciSec void ProcessTimeErrorl unsigned char deciSec void TurnOn Motor0 void void TurnOff Motor0 void void TurnOn Motorl void void TurnOff Motorl void Variable Declarations unsigned long device id unsigned char portB unsigned char motor0_ on unsigned char motorl on unsigned int wedge0 pos unsigned int wedge0 target unsigned int wedgel pos unsigned int wedgel target unsigned int motorO0 time unsigned int motorl time struct CANMessage TX Message struct CANMessage RX Message 777777777777777777777777777777 Interrupt Service Routine void low_isr void serial interrupt taken as low priority interrupt pragma code uart int service 0x18 void uart int service void asm goto low isr _endasm pragma code pragma interruptlow low_isr void low_isr void ISR pragma interrupt HighISR void HighISR void Page A 22 CANISR pragma code highVector 0x08 void HighVector void asm goto HighISR _endasm pragma code return to def ault code section TurnOff Motor0 77777777 Main void main 7777777777 Initaliz
30. final design Overall importance 15 Milestone score Met 100 17 2 Technology Considerations and Selection Description The project team members initially reviewed the designs of prior teams The design was modified to improve manufacturability and to better meet the needs of the client Technologies were researched and evaluated based on their suitability Evaluation criteria The technologies considered and selected are applicable to the intent and goals of the project Overall importance 10 Milestone score Met 100 17 3 End product Design Description Initially the design requirements were reviewed The end product design included the overall design process and component selection for the final product The design changes were documented for future review and implementation Evaluation criteria The end product design process and design met the functional financial and manufacturing requirements of the project Overall importance 20 Milestone score Met 100 Page 28 17 4 End product Implementation Description The end product implementation is the construction of the end product design identification of the prototype limitations and substitutions of components The end product design was revised based on lessons learned during implementation Evaluation criteria Prototype was constructed and conforms to the functional requirements and intended design Overall importance 12 Milestone score Almost Met
31. have the Dream Green re zero itself at startup That way if the encoder gets off by small amounts during extended use the positioning of the wedge would not get progressively worse This is a prime example of bugs that can only be found when actually using the Dream Green End product testing is truly an ongoing process The team is available to the client following final completion of the project for consultation purposes Page 17 14 Project End Results Much time and effort went in to discovering what ideas worked and what ideas did not work for the automated Dream Green The biggest discovery was that a single motor end lift cannot be implemented with the given resources The single motor end lift was not cost effective and produced many additional problems The final decision for a dual motor end lift was made when the single motor end lift could not be reproduced With the implementation of a two motor end lift all sections of the Dream Green are basically the same Since all sections are very similar the automated Dream Green will be easier to reproduce The two motor end lifts will be much more cost effective and easier to assemble then its one motor counterpart Along with the completed fully functional Dream Green there are several other documents and instructions included These documents and additional items are as described below 14 1 Assembly Instructions Detailed assembly instructions accompany the Dream Green These a
32. motors were chosen because of their simplicity A motor was chosen that met the size torque and rotational speed requirements that contained internal gearing As such external gears are no longer necessary for meeting torque requirements However in order to use rotary encoders to measure wedge position gears were mounted to the threaded shaft This gear was meshed with a gear mounted to a rotary encoder 11 4 Motor Controller Circuit Additional circuitry is required to correctly position the wedge using the motor This is implemented by using a microcontroller H bridge circuit rotary encoder and micro switch The schematic for this circuit is shown in Appendix B Figure 13 To reduce manufacturing costs two motor control circuits are implemented on one printed circuit board 11 4 1 Microcontroller The microcontroller selected is the Microchip PIC18F248 because of it ease of use built in CAN controller ADCs timers and digital outputs To avoid extra costs this model is most basic that meats all of the team s design criteria The PIC18F248 has been used for the testing and implantation of The Dream Green but since selection has been replaced with a new model PIC18F280 The PIC18F2480 is pin compatible and has all the features of the PIC18F248 However to use the PIC18F2480 the code must be recompiled in PIC C18 to work correctly 11 4 2 H Bridge The PIC will be able to enable and change directions through the H bridge circuit
33. v fs oL av 4 Sheet C and SettingsDocuments SCHDOC 7 2 nc RANANOCVREF 4 RALAN RELNT ba z RANANNVREF T Sp RAANVRER RBiCANRX RASANASSTVDIN ERU Cop x rl j OSCICIKORAS ja t RET La RCOTIOSOTICH RCL TOS ACiCCP RESSEKSCL RCASDUSDA Ev a RCETUCE 72501 a Tu vss 1 l Mgr ur I D Page B 1 2 T Figure 15 H Bridge amp Rotary Encoder 1 2 3 4 Figure 16 I O Connection amp Voltage Regulator Page B 2 E I 2101010101010101 9 m HMIILIN ee PAm L AIT o CGocQ000 65290 Ga s 6 Jo ORIOLO voc P H m N N o I or a v D D S N em QJ JD Ne 6 AN ME 00 mil _ Figure 17 User Interface Circuit Card Main Connector Vn 1 11 ovr 3 Cv AB aD 05 A z 1 9 5 52 m 1 CANO B BUZZ Sumer D 2 Figure 18 User Interface Circuit Page B 3 Appendix Calculations Table 13 Torque Calculations L1 mu1 35 0 35 36 0 15 2 35 3 0 375 0 0833 0 5 35 0 4 36 0 2 1 5 31 8 0 375 0 0833 35 0 4 36 0 4 2 56 8 0 06
34. 15 End Product Testing 60 days Mon 1 9 06 Fri 3 31 06 16 ier Test Planning 5 days Mon 1 9 06 Fri 1 13 06 17 EJ Test Development 5 days Mon 1 9 06 Fri 1 13 06 18 Test Execution 5 days Mon 1 9 06 Fri 1 13 06 19 Client Testing 53 days Mon 1 16 06 Wed 3 29 06 20 EJ Test Evaluation 55 days Mon 1 9 06 Fri 3 31 06 21 EJ Documentation of Testing 55 days Mon 1 9 06 Fri 3 31 06 22 End Product Documentation 21 days Tue 3 7 06 Tue 4 4106 23 EJ Development of End User Documentation 11 days Tue 3 7 06 Tue 3 28 06 24 Delopment of Maintenance and Support Documentation 6 days Tue 3 28 06 Tue 4 4 06 25 End Product Demonstration 6 days Tue 4 4 06 Tue 4 11 06 26 Demonstration Planning 6 days Tue 4 4 06 Tue 4 11 06 27 Project Reporting 179 days Tue 8 30 05 Fri 5 5 06 28 v Project Plan Development 19 days Tue 8 30 05 Fri 9 23 05 29 v End Product Design Report Development 35 days Mon 9 26 05 Fri 11 11 05 30 Project Poster Deviopment 37 days Mon 1 9 06 Tue 2 28 06 31 Project Final Report Development 55 days Mon 1 9 06 Fri 3 31 06 32 EJ Weekly Email Reporting 154 days Tue 8 30 05 Fri 5 5 06 Project May06 03 Progress es Summary g External Tasks Deadline Jb Dates Sat 4 29 06 Split 222 555 Milestone Project Summary CS External Milestone Figure 10 Adjusted Project Gantt Chart Page 25 ID o 1 v 2 n d 3 d 4 qv 5 v 6 v T a 9 i 10 v 12 EE E 1 9 15 16 9 17 9
35. 2 Project Team Information Listed below is the contact information for the student team members faculty advisors and client Team Members Ryan Emerson Computer Engineering 2612 Aspen Rd 3 Ames IA 50010 515 290 4277 remerson iastate edu David Moline Electrical Engineering 3411 Polaris Dr Ames IA 50010 515 231 9113 dmoline iastate edu Brian Wicks Computer Engineering 3427 Polaris Dr 2 Ames IA 50010 515 231 2348 bwicks13 iastate edu Faculty Advisors Professor John Lamont Office Phone 515 294 3600 Home Phone 515 292 5541 Fax 515 294 6760 jwlamont iastate edu Client Charles Juel Rt 2 Stout 50673 319 346 1608 David Goldberg Electrical Engineering 4113 Frederiksen Ct Ames IA 50010 319 431 1593 goldberg iastate edu Mevan Vijithakumara Mechanical Engineering 221 Sheldon 10 Ames IA 50014 515 230 7724 mkumara iastate edu Professor Ralph Patterson Office Phone 515 294 2428 Home Phone 515 232 9933 Fax 515 294 6760 repili iastate edu Page 34 23 Closing Summary This team reevaluated the adjustment process and improved upon the internal components created from past teams The team also created all modifications in as close to a ready to manufacture state as possible The team finalized the automation of the Dream Green modifiable putting surface The team completed the current control systems necessary to automate these adjustments The team made
36. 25 0 74 35 0 4 36 0 3 2 49 6 0 0714 35 0 4 36 0 08 2 33 76 0 375 0 0833 L1 Weight Applied Weight Applied and L2 Wedge Weight mu1 Wood Wedge mu2 Wedge Guides Screw Threaded mu3 Insert Thread in Length Time 20 7 500 0 7500 20 7 000 0 5700 16 7 000 0 5000 1
37. 4W 5 CARBON FILM CONN HEADER 4POS 7 5MM R A TIN CONN HEADER 5POS 7 5MM R A TIN SWITCH 3 POS DIP RT ANG SLIDE BUZZER PIEZO ELEMENT 4 4KHZ 27MM CUSTOM PRINTED CIRCUIT BOARD Manufacturer National Semiconductor Microchip Technology Microchip Technology National Semiconductor Citizen America Corporation Kemet Kemet Yageo America Yageo America Yageo America Molex Molex E Switch CUI Inc Advanced Circuits Part Number Distributor LM9071T Digi Key PIC18F248 I P Digi Key 2551 Digi Key LMD18200 Digi Key HC49US10 000MABJ Digi Key C315C104M5U5CA Digi Key C1206C180J5GACTU Digi Key CFR 25JB 1MO Digi Key CFR 25JB 120R Digi Key CFR 25JB 10R Digi Key 43160 1104 Digi Key 43160 1105 Digi Key KAS2103ET Digi Key CEB 27D44 Digi Key N A Advanced Circuits 1 2 2 4 1 3 6 8 1 1 1 4 1 1 1 1 Total Cost 2 48 2 48 5 99 11 98 1 48 2 96 11 69 46 76 0 70 0 70 0 16 0 48 0 17 1 03 0 28 2 24 0 28 0 28 0 28 0 28 3 14 3 14 3 62 14 48 0 94 0 94 1 10 1 10 33 00 33 00 ASSEMBLY Screaming Circuits N A Screaming Circuits 40 00 40 00 Total 161 85 Table 8 User Interface Board Parts List User Interface Board Parts List Description IC LDO V REG W DELAY TO 220 5 IC PIC MCU FLASH 16KX16 40DIP IC TRANSCEIVER CAN HI SPD 8 DIP MAX233ACPP CRYSTAL 12 000 MHZ HC49 US CAP 1UF 50V 20 CER RADIAL CAP CERAMIC 18PF 50V NPO 1206 RES 1 0M OHM 1 4W 5 CARBON FILM RES 120 OHM 1 4
38. 75 17 5 End product Testing Description The end product testing was performed to identify and correct problems in the implementation of the design The end product testing consists of test planning test development test execution and client testing Once the testing was completed it was analyzed and documented Evaluation criteria Prototype is mechanically functional software has debugged and user interface has been improved Overall importance 15 Milestone score Partially Met 50 17 6 End product Documentation Description The end product documentation includes the development of a user manual for the hardware and software drawings and bill of materials for manufacture and the development of maintenance and support documents Evaluation criteria End product documentation includes information necessary for the construction operation and maintenance of the Dream Green Overall importance 896 Milestone score Partially Met 50 17 7 End product Demonstration Description The final prototype is presented to the client Client input was used to finalize the design and to further evaluate the success of the project Evaluation criteria End product demonstration was useful and met the client s intended purpose of the project Overall importance 896 Milestone score Met 100 Page 29 17 8 Project Reporting Description The team developed several documents during the duration of this project These document
39. 7777777 Filename dgcan h Author Ryan Emerson Company Senior Design Iowa State University Revision 1 0 Date 9 14 05 7777777777777777777777777777777777777777777777777777777777777777777777777777 Byte 9 8 7 6 5 4 3 2 1 0 Destination Packet Type Q efine MASTER ID unsigned long unsigned long 05010000 lt lt 5 define ACK 1 Acknowledge a successfully received packet define PING 2 Ping Send amp Receive define MOVE WEDGE 3 Command to move a wedge to a new positon define STOP WEDGES 4 Stop all wedges define MOVE COMPLETE 5 Can t find position error define POSITION ERROR 6 Request Reply for current wedge position define CURRENT ERROR 7 Over current error define TEMP ERROR 8 Over temperature error define TIME ERROR 9 Over time error Page A 31 keyboard h TILTTTTTTTTTTAA AAA AAA ATA AAA ATA AAA AT AAA ATTA AAA AAA AAA AAA AAA AAA AAA AT Filename keypad h 7777777777777777777777777777777777777777777777777777777777777777777777777777 Author Ryan Emerson Company Senior Design Iowa State University Revision 1 0 Date 9 14 05 ifndef _ KEYPAD H _ define _ KEYPAD H _ efine COL_0 LATCbits LATCO efine COL 1 LATCbits LATCl efine COL 2 LATCbits LATC2 efine COL 3 LATCbits LATC3
40. Any comparable rotary encoder vertical or shaft mount could be used However replacing it with an encoder that doesn t have 12 pulses per revolution will require a change to the software Using an encoder with a higher resolution more than 64 pulses per revolution may be more than the PIC microcontroller can handle 11 5 User Interface Circuit The automation of the Dream Green allows the user to easily control the features of the Dream Green It has an LCD display keypad for input and is controlled by a microcontroller The user uses this to send commands like moving a motor or sending the break one of pre defined positions to the Dream Green The menus are designed to be user friendly and hide much of the technical implementation from the user The schematic for this circuit is shown in Appendix B Figure 15 11 5 1 Microcontroller Because of the additional I O requirements of the keypad and LCD the 8 248 is not capable of running the user interface The PIC18F480 was chosen because it is a member of the same family as the PICISF248 but has additional digital 1 0 to accommodate the keypad and LCD The PIC18F448 also has an integrated USART controller that can but used to interface with a computer via RS 232 11 5 2 Display The information the user sees is presented on a 20x4 character LCD made by Lumex LCM S02004DSF The LCD is used to prompt the user for input if they want to play a game one hole random break etc
41. CANGet Get the messag Is it from the master and is it for me if RX Message Address OxFF Write to RS232 for fun UARTIntPutChar UARTIntPutChar TX Message Address UARTIntPutChar for i 0 i lt TX Message NoOfBytes i UARTIntPutChar TX Message Data i UARTIn UARTIn UARTIn PutChar PutChar n PutChar r Gr oct ch ce et What kind of message is it switch RX Message Data 1 case OVER_CURRENT case OVER_TEMP case OVER TIME error RX Message Data 0 RX Message Data 1 break while vUARTIntStatus UARTIntRxBufferEmpty UARTIntGetChar amp chData UARTIntPutChar chData echo if chData r chData n Page A 5 for i 0 i lt TX Message NoOfBytes TX Ssage Address OxFF TX Message NoOfBytes 4 TX Message Ext 0 TX ssage Remote 0 TX Message Priority 2 CANPut Message TX Message NoOfBytes 0 else UARTIntPutChar chData s TX Message NoOfBytes return unsigned char main menu void unsigned char temp 0 KeypadClose LCDPutRomString rom char LCDCursorOnBlinkOff KeypadOpen while temp 11 46 temp 2 66 temp temp KeypadGetChar KeypadClose if temp 1 return GAME 0 if temp 2 return MAINT
42. DPut mode1 0 return SAV Your current 1 Save has not been 2 Ignore 2 amp amp temp ECL CRS 0 return MAIN MENU Save Course Connect RS232 and Press l Fl ON IN SM Save Course course saved 3 amp amp temp dg device dg Page A 19 LC LC LC LC LC DPut model 1 DPutRomString rom char DPutRomString rom char DPutRomString rom char DCursorOnBlinkOff MS MM PX need connectivity stuff KeypadOpen while KeypadGetChar KeypadClose return SAVE 3 unsigned char save_3 void KeypadClose XLCDReturnHome XLCDClear XLCDPutRomString rom char XLCDPut model 0 XLCDPut model 1 XLCDPutRomString rom char XLCDPutRomString rom char XLCDPutRomString rom char XLCDCursorOnBlinkOff need connectivity stuff KeypadOpen while KeypadGetChar 4 KeypadClose saveflag 0 return NEW CRS 0 unsigned char inst_0 void KeypadClose XLCDReturnHome XLCDClear XLCDPutRomString rom char XLCDPutRomString rom char XLCDPutRomString rom char XLCDPutRomString rom char XLCDCursorOnBlinkOff KeypadOpen while KeypadGetChar KeypadClose return MAIN MENU Waiting for PC Confirmation Save Course dg Saving
43. DREAM GREEN TOU cO C Arg NO PUTTING GREENS The Dream Green Final Report Project Number May06 03 Charles Juel Faculty Advisors Lamont and Patterson Team Members Ryan Emerson CPRE David Goldberg EE David Moline EE Mevan Vijthakumara ME Brian Wicks CPRE DISCLAIMER This document was developed as a part of the requirements of an Electrical and Computer Engineering course at Iowa State University Ames Iowa This document does not constitute a professional engineering design or a professional land surveying document Although the information is intended to be accurate the associated students faculty and Iowa State University make no claims promises or guarantees about the accuracy completeness quality or adequacy of the information The user of this document shall ensure that any such use does not violate any laws with regard to professional licensing and certification requirements This use includes any work resulting from this student prepared document that is required to be under the responsible charge of a licensed engineer or surveyor This document is copyrighted by the students who produced this document and the associated faculty advisors No part may be reproduced without the written permission of the senior design course coordinator Date Submitted 3 31 2006 Table of Contents TABLE OF FIGURES TABLE OF TABLES DEFINITIONS m EXECUTIVE SUMMARY IN ACKNOWLEDGEMENT
44. Data BS else if wedgel pos gt WEDGE C TOLERANCE amp amp wedgel pos lt WEDGE TOLERANCE TX_Message Data C Page A 28 else if wedgel pos gt WEDGE D TOLERANCE amp amp wedgel pos lt WEDGE D TOLERANCE TX Message Data 1 D else if wedgel pos gt WEDGE D TX Message Data 1 E TX Message Data 1 wedgel pos gt gt 8 TX Message Data 2 unsigned char wedgel pos amp amp OxFF TX Message Priority 2 CANPut TX Message Delayl00OTCYx 0 return Process Current Error 0 void ProcessCurrentError0 unsigned char deciA TurnOff Motor0 Send CAN Error Packet TX Message Address MASTER ID CURRENT ERROR TX Message NoOfBytes 3 TX Message Ext 0 TX Message Remote 0 TX Message Data 0 0 TX Message Data 1 deciA TX Message Priority 2 CANPut TX Message return Process Current Error 1 void ProcessCurrentErrorl unsigned char deciA TurnOff Motorl Send CAN Error Packet TX Message Address MASTER ID CURRENT ERROR TX Message NoOfBytes 3 TX Message Ext 0 TX Message Remote 0 TX Message Data 0 1 TX Message Data 1 deciA TX Message Priority 2 CANPut TX Message return i Process Temperatur
45. Detail The client requested an automated hands free system to enhance the user experience and increase sells This group s task was to complete this system Page 2 3 1 General Problem Statement The goal of this project was to finalize the Dream Green putting surface building on the work of previous senior design teams The original Dream Green required the user to manually adjust a sliding wedge system patented by client Chuck Juel to change the undulation of the surface see Figure 1 The height of the ends of the green may also be adjusted to add additional variables to the apparatus The May05 03 senior design team faced the problem of automating these adjustments making the Dream Green easier to use implementing the system as shown in Figure 2 This group designed a microcontroller based system using DC motors making sure to keep the wedge system intact as required by the client The problem presented to this group was to finish the Dream Green project and add additional features that were requested by the client The main priority was to complete the basic automated functions of the Dream Green The end product must have sturdy construction suitable for heavy use be safe for use by the general public and fit within the space limitations of the current Dream Green The goal was to produce a final product that is easily replicated allowing Mr Juel to begin marketing the automated Dream Green immediately 3 2 General Soluti
46. Ext 0 TX Message Remote 0 TX Message Data 0 0 if wedgeO0 pos gt 0 amp amp wedgeO0 pos lt WEDGE A TOLERANCE TX Message Data 0 else if wedge0 pos gt WEDGE A TOLERANCE amp amp 0 pos lt WEDGE TOLERANCE TX Message Data A else if wedge0 pos gt WEDGE B TOLERANCE amp amp 0 pos lt WEDGE TOLERANCE TX Message Data UBS else if wedge0 pos gt WEDGE C TOLERANCE amp amp wedge0_pos lt WEDGE TOLERANCE Cr Q Q X Q TX_Message Data else if wedge0_pos gt WEDGE D TOLERANCE amp amp wedg ERANCE 0 pos lt WEDGE_D TOL TX Message Data D else if wedge0 pos gt WEDGE D TX Message Data IEY TX Message Priority 2 CANPut TX Message DelaylKTCYx 0 return Process Target 1 TITTTTTLSTTTIATL TT TATT TTT TAT T ATTA TTA TTT TAA TTA TTA TTA TTA TT void ProcessTargetl void TurnOff Motorl Send confirmation CAN packet TX Message Address MASTER ID MOVE COMPLETE TX Message NoOfBytes 3 TX Message Ext 0 TX Message Remote 0 TX Message Data 0 1 if wedgel pos 0 amp amp wedgel pos WEDGE A TOLERANCE TX Message Data 0 else if wedgel pos gt WEDGE A TOLERANCE amp amp wedgel pos lt WEDGE A TOLERANCE TX Message Data A else if wedgel pos gt WEDGE B TOLERANCE amp amp wedgel pos lt WEDGE TOLERANCE TX_Message
47. LOGY CONSIDERATIONS AND SELECTION 17 3 END PRODUCT DESIGN Page II 15 16 17 17 17 18 18 18 19 21 24 28 28 28 28 17 4 END PRODUCT IMPLEMENTATION 17 5 END PRODUCT TESTING 17 6 END PRODUCT DOCUMENTATION 17 7 END PRODUCT DEMONSTRATION 17 8 PROJECT REPORTING 17 9 FINAL PROJECT SCORE 18 COMMERCIALIZATION 19 RECOMMENDATIONS FOR ADDITIONAL WORK 20 LESSONS LEARNED 20 1 WHAT WENT WELL 20 2 WHAT DID NOT GO WELL 20 3 WHAT TECHNICAL KNOWLEDGE WAS GAINED 20 4 WHAT NON TECHNICAL KNOWLEDGE WAS GAINED 20 5 WHAT WOULD YOU DO DIFFERENTLY 21 RISK amp RISK MANAGEMENT 21 1 ANTICIPATED POTENTIAL RISKS AND PLANNED MANAGEMENT 21 2 ANTICIPATED RISKS ENCOUNTERED AND SUCCESS IN MANAGEMENT 21 3 UNANTICIPATED RISKS ENCOUNTERED ATTEMPTS TO MANAGE AND SUCCESS 21 4 RESULTANT CHANGES IN RISK MANAGEMENT MADE BECAUSE OF ENCOUNTERED UNANTICIPATED RISKS 22 PROJECT TEAM INFORMATION 23 CLOSING SUMMARY APPENDIX A CODE DGMASTER C DGSLAVE C DGCAN H KEYBOARD H KEYBOARD C APPENDIX B SCHEMATICS APPENDIX C CALCULATIONS Page III 30 31 31 31 31 31 32 32 32 33 33 34 35 1 1 21 31 A 32 A 32 B 1 Table of Figures Figure 1 Figure 2 Figure 3 Figure 4 Figure 5 Figure 6 Figure 7 Figure 8 Figure 9 Figure 10 Figure 11 Figure 12 Figure 13 Figure 14 Figure 15 Figure 16 Figure 17 Figure 18
48. MENU if temp 3 return INST 0 return MAIN MENU unsigned char game optO0 void unsigned char temp 0 unsigned char i 0 KeypadClose XLCDReturnHome XLCDClear XLCDPutRomString rom char Game Options XLCDPutRomString rom char for i 0 i lt crsnamelen i XLCDPut coursename i for i 0 1 lt 19 crsnamelen i 3 Instructions XLCDReturnHome XLCDClear XLCDPutRomString rom char Main menu XLCDPutRomString rom char 2 Maintanence XLCDPutRomString rom char 1 Play Game X X itt UARTIntPutChar TX Message Data i Message Data TX Message NoOfBytes chData 3 4 6 XLCDPutRomString rom char XLCDPutRomString rom char 1 Current Course XLCDPutRomString rom char 2 New Course XLCDCursorOnBlinkOff KeypadOpen while temp 1 amp amp temp 2 amp amp temp temp KeypadGetChar KeypadClose if temp 1 return GAME OPT 1 if temp 2 if saveflag 0 return NEW CRS 0 else if saveflag 1 saveflag 2 return SAVE 1 if temp return MAIN MENU return MAIN MENU unsigned char game optl void unsigned char temp 0 KeypadClose XLCDReturnHome XLCDClear XLCDPutRomString rom char Game Options XLCDPutRomString rom char 2
49. PORTAbits RA1 define ID BIT 0 PORTAbits RA2 define 1 PORTAbits RA3 define ID_BIT 2 PORTAbits RA4 define ID BIT 3 PORTAbits RA5 define WEDGEO ENCODER PORTBbits RBO define WEDGE1 ENCODER PORTBbits RB1 define WEDGEO HOME PORTBbits RB4 define WEDGE HOME PORTBbits RB5 define WEDGEO END PORTBbits RB6 define WEDGE1 END PORTBbits RB7 define ENABLE 0 LATCbits LATCO define ENABLE 1 LATCbits LATC1 define DIRECTION 0 LATCbits LATC2 define DIRECTION 1 LATCbits LATC3 define THERMAL FLAG 0 PORTCbits RC4 define THERMAL FLAG 1 PORTCbits RC5 define BRAKE 0 LATCbits LATC6 define BRAKE 1 LATCbits LATC7 7 77777777777777777777777 Constant Definitions define WEDGE_0 0 define WEDGE A 480 define WEDGE B 780 Page A 21 define WEDGE C 1080 define WEDGE D 1380 define WEDGE_END 1680 define TOLERANCE 24 define MAX CURRENT 20 ma define SHUNT_VALUE 2200 0 Ohms define CS_COFF 377 0 define V_REF 50 Nolts define MAX TIME 26 Seconds VSAATATAAT ASAT SAS AAS AAT Macro Definitions Function Prototypes MIMMBMlTHELB Mdb tll l lk P4 void ISR void float GetMotorOCurrent void float GetMotorlCurrent void void ProcessTarget0 void void ProcessTargetl void void ProcessHome0 void void ProcessHomel void void ProcessEnd0 void void ProcessEndl void void ProcessCurrentError0 unsigned
50. Play a Hole XLCDPutRomString rom char 1 Play Course XLCDPutRomString rom char XLCDCursorOnBlinkOff KeypadOpen while temp 1 amp amp temp 2 amp amp temp temp KeypadGetChar KeypadClose if temp 1 isHole 0 return GAME OPT 3 if temp 2 isHole 1 return GAME OPT 2 if temp return GAME OPT 0 return MAIN MENU unsigned char game_opt2 void unsigned char temp 0 unsigned char count 0 KeypadClose XLCDReturnHome XLCDClear XLCDPutRomString rom char Game Options XLCDPutRomString rom char XLCDPutRomString rom char XLCDPutRomString rom char Select Hole XLCDCursorOnBlinkOn hole 0 KeypadOpen while temp temp KeypadGetChar if temp gt 0 amp amp temp lt 9 amp amp count lt 2 XLCDPut temp if count 1 hole hole 10 hole temp 0 count if temp amp amp count gt 0 XLCDCursorMoveLeft hole hole 10 goumbr 7 if temp amp amp count 0 break KeypadClose if temp return GAME OPT 1 else return GAME OPT 3 return MAIN MENU unsigned char game_opt3 void unsigned char temp 0 unsigned char count 0 num players 1 if isHole hole 1 KeypadClose XLCDRetur
51. TCONbits INTOIF 0 TX_Message Address MASTER_ID 68 CANPut TX Message if ENABLE 0 1 if DIRECTION 0 1 amp amp wedgeO pos gt 0 0 else if DIRECTION 0 0 amp amp 0 lt 65536 0 0 pos 1 INTCONbits INTOIF 0 INTCONbits INTOIE 1 Encoder 1 if INTCON3bits INTIIE amp amp INTCON3bits INTIIF INTCON3bits INTlIE 0 INTCON3bits INTlIF 0 TX Message Address MASTER ID 69 CANPut TX Message if ENABLE 1 1 if DIRECTION 1 1 amp amp wedgel pos gt 0 wedgel pos else if DIRECTION 1 0 amp amp wedgel pos 65536 wedgel Page A 26 INTCON3bits INT1IF INTCON3bits INT1IE PORTB if INTCONbits RBIE amp amp INTCONbits RBIF NTCONbits RBIF 0 Wedge 0 Home if portB PORTB amp 0000010000 pin RB4 changed TurnOff Motor0 0 pos 0 Wedge 1 Home if portB PORTB amp 0000100000 pin RB5 changed TurnOff Motorl wedgel pos 0 Wedge 0 End if portB PORTB amp 0001000000 TurnOff Motor0 0 pos WEDGE END Wedge 0 Home if portB PORTB amp 0b10000000 TurnOff Motorl wedgel pos WEDGE END portB PORTB return Get Motor 0 Current LIA TIATATAL LATA ATA TLAAHA ALT SAT AT ALT ATA TATA TATA TL AAA AAT AT ASA TAA AAAS AAS AT AAA AAT AAA float GetMotorO0Current void
52. W 5 CARBON FILM RES 10 OHM 1 4W 5 CARBON FILM CONN HEADER 4POS 7 5MM R A TIN CONN USB RT ANG RECPT TYPE B WHT LCD MOLULE 20X4 CHARACTER W LED KEYPAD 16 KEY FRONT PANEL MNT CUSTOM PRINTED CIRCUIT BOARD Assembly Manufacturer National Semiconductor Microchip Technology Microchip Technology Maxim Integrated Products Citizen America Corporation Kemet Kemet Yageo America Yageo America Yageo America Molex Waldom Electronics Corp Molex Waldom Electronics Corp Lumex Opto Components Inc Grayhill Inc Advanced Circuits Screaming Circuits Page 21 Part Number Distributor LM9071T Digi Key PIC18F485 I P Digi Key 2551 Digi Key MAX233ACPP Digi Key HC49US12 000MABJ Digi Key C315C104M5U5CA Digi Key C1206C180J5GACTU Digi Key CFR 25JB 1MO Digi Key CFR 25JB 120R Digi Key CFR 25JB 10R Digi Key 43160 1104 Digi Key 67068 9000 Digi Key LCM S02004DSF Digi Key 96BB2 006 F Digi Key N A Advanced Circuits N A Screaming Circuits 1 1 1 EE 4 ES BE 0051 05 Unit Cost Total Cost 2 48 2 48 10 90 10 90 1 48 1 48 10 70 10 70 0 70 0 70 0 16 0 48 1 71 6 84 0 28 2 24 0 28 0 28 0 28 0 28 3 14 3 14 2 01 2 01 31 50 31 50 12 87 12 87 33 00 33 00 52 20 52 20 Total 171 10 Table 9 Initial Estimated Financial Budget Item Estimated Cost without Labor Estima
53. ards were constantly monitored to ensure that no PIC was burned out 3 Power supply fire The power supply was turned off when no persons were present to ensure overheating would not take place 4 Bodily injury Due to the nature of the project extra caution was taken to ensure that no bodily harm occurred while the Dream Green prototype was being constructed Special precautions were taking in the form of gloves when handling potentially dangerous items Many of the lubricants are dangerous if swallowed to prevent any accidental ingestion regular hand washing took place 5 Loss of personal items and Dream Green specifications Many personal items were used throughout the construction of the Dream Green To protect these items and the highly classified Dream Green information the door to the lab remained locked when there was no person present 6 Loss of team member There is always a possibility of a team member getting and internship even as a senior in college To protect against this the team shared all knowledge and information throughout the project 21 2 Anticipated risks encountered and success in management Many of the risks that were anticipated were avoided due to the precautions that were taken When the current drawn by the motor reached a value around 3 amps the power supply was turned off This prevented the accidental burnout of a motor On one occasion the microcontroller got warm The work was immediately stopp
54. ay Fri 4 21 06 Fri 4 21 06 e 4 24 9 29 Industrial Review Panel Demon 1 day Fri 4 28 06 Fri 4 28 06 4 4 28 10 EJ Bound Project Final Report Due 1 day Wed 5 3 06 Wed 5 3 06 5 3 Project The Dream Green Design Re Task Progress es Summary Gay External Tasks Deadline Jb Date Sat 4 29 06 Split dv dvds ae Milestone 9 Project Summary QUEEN External Milestone 9 Figure 12 Project Deliverables Gantt Chart Unchanged throughout project Page 27 17 Project Evaluation The project evaluation describes the milestones for the project and the criteria used to determine the success of the project For each milestone the team evaluated the completeness and relative success and assigned a score as shown in Table 9 The team used the scores for each individual milestone and used a weighting factor to calculate a final score for the project A final score of 85 or more was considered a successful project Table 12 Evaluation Scores for Milestone Completion Description Score Exceeded 100 Met 100 Almost Met 75 Partially Met 50 Did Not Attempt Meet 0 17 1 Project Definition Description The project was defined and the work of previous design teams was reviewed The end user and end uses were confirmed In addition the project constraints were identified and confirmed Evaluation criteria The project was defined thoroughly and based on the client s needs in reference to the
55. cal concept of this design was correct but it was felt that there was much to be desired in this previously used side lift assembly Plus all controls were still needed to automatically sense the position of each wedge 11 1 2 End Lift Assembly The main difference in the end lift is that the entire section must be raised and lowered as opposed to creating a slope at a single point as it is with the side lifts This results in a load that is far greater than for the side lifts The initial end lift assembly was identical to the side lift in that each wedge was driven by its own motor The main problem that the team noted in the way previous groups had with this set up is that the motors were wired in parallel In testing it was noticed that this parallel configuration made control nearly impossible because each motor ran at slightly different speeds This meant that one wedge would always travel farther than the other The group previous to the current team obviously had noted this because they attempted to add resistors in series with the faster motor in hopes of choking the current delivered to the motor The team felt this tactic to be an ineffective and impractical solution and redesign was required Because of the problems that were noted with the dual motor design the team felt that going to a single motor would be a far more effective solution from a controls aspect The team spent a vast amount of time devoted to research of parts and design
56. del XLCDPut model 0 XLCDPut model 1 XLCDPutRomString rom char course XLCDPutRomString rom char You must load new XLCDPutRomString rom char Press XLCDCursorOnBlinkOff KeypadOpen while KeypadGetChar 18 1 return NEW CRS 0 unsigned char save_0 void unsigned char temp 0 KeypadClose LCDReturnHome LCDClear LCDPutRomString rom LCDPutRomString rom LCDPutRomString rom char LCDPutRomString rom char LCDCursorOnBlinkOff char char NM MMM PX DX while temp 1 amp amp temp temp KeypadGetChar KeypadClose if temp 1 if temp if temp 2 return NEW return MAIN MENU unsigned char save_1 void unsigned char temp 0 KeypadClose XLCDReturnHome XLCDClear XLCDPutRomString rom char XLCDPut 1 0 XLCDPut model 1 XLCDPutRomString rom char XLCDPutRomString rom char XLCDPutRomString rom char XLCDCursorOnBlinkOff need connectivity stuff KeypadOpen while temp amp amp temp temp KeypadGetChar KeypadClose CET EV return SAV return SAV temp temp return MAIN MENU unsigned char save 2 void KeypadClose XLCDReturnHome XLCDClear XLCDPutRomString rom char XLC
57. e 7777777777 TRISAbits TRISAO 1 Current Sense 0 TRISAbits TRISAl 1 Current Sense 1 TRISAbits TRISA2 1 ID Bit 0 TRISAbits TRISA3 1 ID Bit 1 TRISAbits TRISA4 1 ID Bit 2 TRISAbits TRISA5 1 ID Bit 3 TRISBbits TRISBO 1 Encoder 0 TRISBbits TRISB1 1 Encoder 1 TRISBbits TRISB4 1 Home 0 TRISBbits TRISB5 1 Home 1 TRISBbits TRISB6 1 End 0 TRISBbits TRISB7 1 End 1 TRISCbits TRISCO 0 Enable 0 TRISCbits TRISC1 0 Enable 1 TRISCbits TRISC2 0 Direction 0 TRISCbits TRISC3 0 Direction 1 TRISCbits TRISC4 1 Thermal Flag 0 TRISCbits TRISC5 1 Thermal Flag 1 TRISCbits TRISC6 0 Brake 0 TRISCbits TRISC7 0 Brake 1 device id 0 portB PORTB DIRECTION 0 0 DIRECTION 1 0 wedge0 pos 0 0 target 0 wedgel pos 0 wedgel target 0 motorO0 time 0 motorl time 0 TurnOff Motorl Initialize CAN module CANInit INTCON3bits INT2IP 1 RCONbits IPEN 1 Enable priority interrupts INTCONbits GIEH 1 Enable all interrupts Configure Timer0 OpenTimer0 TIMER INT ON amp TO 16BIT amp SOURCE INT 6 TO PS 1 256 INTCON2bits TMROIP 1 High priority OpenPORTB PORTB CHANGE INT ON amp PORTB PULLUPS OFF 0 Low priority INTCON2bits RBIP OpenRBOINT PORTB CHANGE INT ON amp RISING EDGE INT amp PORTB PULLUPS OFF Page A 23
58. e Error 0 77777777777777777777777777777777777777777777777777777777777777777777777777777 void ProcessTempError0 void TurnOff Motor0 Send CAN Error Packet TX Message Address MASTER ID TEMP ERROR TX Message NoOfBytes 2 TX Message Ext 0 TX Message Remote 0 TX Message Data 0 0 TX Message Priority 2 CANPut TX Message return Process Temperature Error 1 MIMMMMMMMMWMPMPMPBMMPMlWMlPllMlMllllllilllllllllldld lll Yl dA II TI P P PHP PP PP PIE TT void ProcessTempErrorl void TurnOff Motorl Send CAN Error Packet TX Message Address MASTER ID TEMP ERROR Page A 29 TX Message NoOfBytes 1 TX_Message Ext 0 TX_Message Remote 0 TX Message Data 0 1 TX Message Priority 2 CANPut TX Message return Process Time Error 0 MMMMMlNMIMMPMPMCPMlMllMllE IP P PP M HIEEEPPCGMIMM TTT ATTA b b b bl TTT ATTA TT void ProcessTimeError0 unsigned char deciSec TurnOff Motor0 Send CAN Error Packet TX Message Address MASTER ID TIME ERROR TX Message NoOfBytes 2 TX Message Ext 0 TX Message Remote 0 TX Message Data 0 0 TX Message Data l deciSec TX Message Priority 0 CANPut TX Message return Process Time Error 1 TTT TILT TTA TTT TATA TATA TTT TAT ATTA ATT TTA ATTA void ProcessTimeErrorl unsigned char deciSec TurnOff Motorl Send CAN Error Packet TX Message
59. ed and the microcontroller disconnected to ensure that the PIC was not burned out No major bodily injury occurred during the building of the Dream Green prototype A few cuts and scrapes were encountered from the sharp metal components of the prototype Since the Dream Green lab was locked no pertinent information was lost There were also no break ins to the Dream Green lab that would have lead to the loss of important Dream Green information or schematics Page 32 21 3 Unanticipated risks encountered attempts to manage and success Although many of the risks were planned for ahead of time not all risks could be avoided Several unanticipated risks occurred while building the Dream Green prototype These risks the attempts to manage and the success of this management are stated below 1 Breakage of important components There were times when important pieces of the Dream Green prototype were damaged These pieces were damaged because they were caught under the Dream Green prototype To manage this risk there were several occasions in which the Dream Green lab was organized By organizing the Dream Green lab these important pieces were not misplaced or damaged 2 Loss of important screws bolts nuts etc When the Dream Green lab was not organized many of the screws nuts bolts and couplers were misplaced Much time was wasted trying to find these parts Once again the Dream Green lab was organized to prevent the loss of these impo
60. efine ROW 0 PORTBbits RB4 efine ROW 1 PORTBbits RB5 efine ROW 2 PORTBbits RB6 efine ROW 3 PORTBbits RB7 Qua th Qu Q efine KEYPAD BUFFER SIZE 8 void KeypadOpen void void KeypadClose void void KeypadClearCols void void KeypadSetCols void void KeypadPush unsigned char chData unsigned char KeypadGetChar void void KeypadISR void 777777777777777777777777777777777777777777777777777777777777777777777777777 Filename keypad c 77777777777777777777777777777777777777777777777777777777777777777777777777777 Author Ryan Emerson Company Senior Design Iowa State University Revision 1 0 Date 9 14 05 include p18f448 h include lt stdio h gt include lt delays h gt include keypad h unsigned char keypadBuffer unsigned char KeypadTable 4 4 D 4 O j CRS 59m 8 B E 4 A 535 111 void KeypadOpen void keypadBuffer NULL TRISCbits TRISCO TRISCbits TRISC1 TRISCbits TRISC2 TRISCbits TRISC3 TRISBbits TRISB4 TRISBbits TRISB5 TRISBbits TRISB6 TRISBbits TRISB7 y gm gw Ww Ww od HEP H GO Page A 32 KeypadSetCols INTCON2bits RBPU 1 11 PORTB pull ups are disabled INTCONbits RBIE 1 Enables the RB port change interrupt INTCONbits RBIF 0 INTCON2bits RBIP
61. em is under 1 000 Page 5 9 Expected End Product and Other Deliverables Listed below are the requirements and expected capabilities of the end product delivered to the client 1 10 An automation system that allows the Dream Green elevation settings to be adjusted electronically A preprogrammed course that changes holes on demand via user interface in podium unit The Design of a mechanical system used in controlling the Dream Green The ability to create a course saved in memory Instructions drawings and bill of materials necessary for the correct manufacturing of the Dream Green A self contained unit Project Approach The final phase of this project included consideration of issues from design to manufacturing 10 1 End Product Functional Requirements Listed below are the requirements that were met to have a successful design 1 2 The user operates in one of three modes random wedge settings specific wedge settings or pre set wedge positions Smooth efficient wedge movement 10 2 Design Constraints Listed below are the guidelines for the mechanical and electrical aspects of the Dream Green 1 All parts fit inside current Dream Green dimensions The maximum height with the wedges flat is 2 5 inches The power supply is housed in the control podium Electrical and mechanical components will survive for a minimum of 5 years under normal conditions Electrical and mechanical c
62. es Gat 4 29 06 Split baa aan aay Milestone Project Summary GZ External Milestone Figure 9 Original Project Gantt Chart Page 24 ID o Task Name Duration Start Finish September 2005 2005 December 2005 panar 2006 ea 2006 z March 2008 2006 1 rr Problem Definition 17 days Tue 8 30 05 Wed 9 21 05 2 v Problem Definition Completion 14 days Tue 8 30 05 Fri 9 16 05 3 v Confirmation of End User s and End Use s 7 days Tue 9 13 05 Wed 9 21 05 4 v Review and Identification of Project Constraints 7 days Tue 9 13 05 Wed 9 21 05 5 v Technology Considerations and Selection 10 days Wed 9 14 05 Tue 9 27 05 6 v Review and Modification of Technologies 10 days Wed 9 14 05 Tue 9 27 05 7 v Technology Selection 10 days Wed 9 14 05 Tue 9 27 05 8 v End Project Design 23 days Mon 9 26 05 Wed 10 26 05 9 v Review of Design Requirements 13 days Mon 9 26 05 Wed 10 12 05 10 ae Design Process 16 days Wed 10 5 05 Wed 10 26 05 11 v Documentation of Design 23 days Mon 9 26 05 Wed 10 26 05 12 End Product Prototype Implementation 44 days Tue 10 18 05 Fri 12 16 05 13 v Identification of Prototype Limitations and Substitutions 11days Tue 10 18 05 Tue 11 1 05 14 Implementation of Prototype End Product 29 days Tue 11 1 05 Fri 12 16 05
63. g rom char Set New Course yos LCDPutRomString rom char Course Name T LCDPutRomString rom char ys LCDCursorOnBlinkOn MM KeypadOpen while temp l if temp gt A amp amp temp lt 7 coursename chars temp chars tt if temp amp amp chars 0 return NEW CRS 0 if temp amp amp chars gt 0 chars KeypadClose crsnamelen chars 1 if chars 0 return NEW CRS 0 else for i chars i lt 19 i coursename i 0O return SNEW CRS 3 unsigned char snew_crs3 void unsigned char temp 0 if newcrsdone newhole 1 newpos 1 load course newheight course newhole 1 newpos 1 KeypadClose XLCDReturnHome XLCDClear XLCDPutRomString rom char Set New Course XLCDPutRomString rom char Position XLCDPut newpos 0 XLCDPutRomString rom char E XLCDPutRomString rom char Hole XLCDPut newhole 0 XLCDPutRomString rom char ys XLCDPutRomString rom char Height 0 4 Page A 16 XLCDPut newheight 0 XLCDPutRomString rom char my XLCDCursorOnBlinkOff KeypadOpen while temp 4 if temp A if newheight 4 newheight course newhole 1 newpos 1 newheight break if temp B if newheig
64. g Apparatus Page 10 I I 0 d COICO COIL 1 Dole NNNM D _ 11 3 Key Components Below is a description of the main components used in the final prototype 11 3 1 Motor Power thread calculations were performed to determine torque requirements The side lift motors must lift approximately gt x 2 4 x 4 section of wood Given the small load requirements of the side lifts the torque requirement for the motor is minimal Currently the design incorporates motors purchased by previous groups It would be preferable and more cost effective to research smaller geared motors to replace the existing motors The end lift is expected to lift a sheet of plywood green support material and the putting surface Given the large torque necessary to lift such heavy loads a high torque geared motor was used Both assemblies will require motor protection circuits to prevent burn out However for the prototype four similar motors were used 11 3 2 Wedge Ultra High Molecular Weight UHMW plastic was chosen for the wedges due to its frictional properties Sharp edges on the wedge are to be filleted and contact surfaces will be smoothed to reduce friction The wedge may be modified with permission from Mr Chuck Juel The mechanical advantage of the wedge would be increased by reducing the slope of the inclines This would minimize the requi
65. gned char rndcoursename 19 Ul Ro US Fp Bt Noh VOI rom unsigned char rndcrsnamelen 13 IN ZO pI My 0 0 0 0 VM MIMMMnYdbb lll l VH 4 Functions VM MIMMMeTFl G ATTA TT void XLCDDelayl5ms void DelaylOKTCYx 16 return void XLCDDelay4ms void DelaylOKTCYx 60 return void XLCD Delay500ns void DelaylOTCYx 2 return void XLCDDelay void int 1 for i 0 1 lt 1000 i Nop 7 return Page A 3 VIAA ILLE Interrupt Service Routine void low_isr void serial interrupt taken as low priority interrupt pragma code uart int service 0x18 void uart int service void asm goto low isr _endasm pragma code pragma interruptlow low_isr void low_isr void UARTIntISR KeypadISR pragma interrupt HighISR void HighISR void CANISR pragma code highVector 0x08 void HighVector void asm goto HighISR endasm pragma code return to default code section Main void main unsigned char i unsigned char chData unsigned char last state 1 Initialize CAN module CANInit Initalize Serial Controller UARTIntInit mSetUARTRxIntLowPrior mSetUARTTxIntLowPrior Initalize LCD ADCON1 0x07 make PORTA digital as control portpins are from PORTA XLCDInit
66. ht gt 0 newheight course newhole 1 newpos 1 newheight break if temp C if newhole 18 newhole 1 else newholet break if temp D if newpos motor count newpos 1 else newpostt break KeypadClose if temp saveflag 1 newcrsdone 1 return GAME OPT 0 if temp gt A amp amp temp lt D return SNEW 3 Page A 17 return MAIN MENU unsigned char mdl_menu0 void unsigned char temp 0 KeypadClose XLCDReturnHome XLCDClear XLCDPutRomString rom char Model Menu dg XLCDPut model 0 XLCDPut model 1 XLCDPutRomString rom char 2 16 Dream Green XLCDPutRomString rom char 1 12 Dream Green XLCDPutRomString rom char 3 20 Dream Green XLCDCursorOnBlinkOff KeypadOpen while temp 1 amp amp temp 2 amp amp temp 3 amp amp temp temp KeypadGetChar 1 if temp return MAINT MENU if temp 1 model 0 1 model 1 AT motor count 10 if temp 2 model 0 1 model 1 motor count 14 if temp 3 model 0 2 1 1 is motor count 18 return MDL MENU_1 unsigned char mdl_menul void KeypadClose XLCDReturnHome XLCDClear XLCDPutRomString rom char New Mo
67. ing an end lift that would lift the heavier load with a single motor Once a motor capable of handling the load was discovered it was decided to go with a configuration that had the single motor drive a crossbar at its center point with wedges positioned at the ends of the crossbar U shaped aluminum pieces were used Page 8 to guide the wedges while the crossbar was held straight by guide shafts The figure below shows the design Figure 5 Previously Considered End Lift This design on paper seemed as if it would work great However the main problem is that is was a very difficult part to manufacture The most important component of the design was the guide shafts on the crossbar which were intended to eliminate twisting The bearings that created the interface between the shafts and the crossbar had to be a perfect right angle to be effective As it was discovered that is very difficult to do in practice The guide shafts on the crossbar were not perfectly parallel and as a result did not allow the motor to freely slide the apparatus forward and backward 11 2 Final Designs This section describes the final designs used in the final prototype 11 2 1 Side Lift Assembly Once motors were found with a high enough torque capability the team was able to effectively operate the side lifts without making any significant changes to the design of the previous teams The key was finding a motor that had enough power to get the job done
68. ircuits to be implemented Convert motors to AC power User manual Computer interface for uploading downloading new courses ee Page 30 20 Lessons Learned This section illustrates some of the lessons learned through the two semesters designing and building a prototype Dream Green 20 1 What went well The team was able to successfully implement new technologies and refine existing ones to produce a working prototype for client evaluation The team streamlined many previous designs such as the end lift and motor positioning circuit to make them easier to reproduce 20 2 What did not go well The team had a few set backs during this year The first attempt to redesign the end lift was untimely unsuccessful and took much longer than expected because of the incremental design changes and difficulty with machining Eventually a more efficient design was reached but after missing the original deadlines 20 3 What technical knowledge was gained Because of there mechanical aspects in addition to the electrical aspects of this project the team gained valuable interdisciplinary design experience The electrical and computer engineers were able to get a taste of fiction calculations linear bearings and power treads The mechanical engineer was exposed to communications protocols and control circuits 20 4 What non technical knowledge was gained In addition the technical skill the team gained communications experience with the de
69. minor modifications to the work of previous teams and added necessary components Such modifications included switching to a motor designed for robotics due to its greater torque handling capabilities Added features include implementation of rotary encoders on all lifts allowing the microcontroller to know the height each wedge The team plans to present a working prototype to Mr Juel the client by the project s end Page 35 Appendix Code dgmaster c Filename dgmaster c MEM MB M lll llllll AA Ml IP IP P P P CP C IIPIP P AT P PP MIL IPC I STITT TSS TTT TTT Author Ryan Emerson Company Senior Design Iowa State University Revision 1 0 Date 9 14 05 lude lude lude lude lude lude lude lude lude lude lude lude lt p18f 448 h gt lt stdio h gt lt adc h gt lt delays h gt lt portb h gt lt reset h gt lt timers h gt can h UARTIntC h 1 dgcan h Configuration Data LILLIA LM MMPP Pl Kkf fkll l pragma pragma pragma pragma pragma pragma pragma pragma pragma pragma pragma pragma pragma pragma pragma config OSC HSPLL config PWRT ON config BOR ON config WDT OFF config WDTPS 128 config LVP OFF config DEBUG OFF config OFF c
70. nHome XLCDClear XLCDPutRomString rom char Game Options XLCDPutRomString rom char XLCDPutRomString rom char XLCDPutRomString rom char Players 1 4 XLCDCursorOnBlinkOn KeypadOpen while temp 4 Page A 8 temp KeypadGetChar if temp gt 1 amp amp temp lt 4 amp amp count 0 num players temp 0 XLCDPut temp count tt if temp amp amp count 1 XLCDCursorMoveLeft if temp amp amp count 0 break KeypadClose if temp return GAME OPT 1 else return GAME 2 return MAIN MENU unsigned char game0 void int i unsigned char temp 0 unsigned char tempscore 0 unsigned char count 0 for i 0 i num players 1 tempscore 0 KeypadClose XLCDReturnHome XLCDClear for i 0 i lt crsnamelen i XLCDPut coursename i for i 0 i lt 20 crsnamelen i XLCDPutRomString rom char LC LC LC LC LC LC PutRomString rom char Player Put m 4 tts PutRomString rom char PutRomString rom char Hole Put hole 10 0 Put hole 10 0 LCDPutRomString rom char LCDPutRomString rom char Score LCDCursorOnBlinkOn KU CU
71. o a motor designed for robotics due to its greater torque handling capabilities Added features include implementation of rotary encoders on all lifts allowing the microcontroller to know the height each wedge The overall goal of the team was to provide a working prototype to Mr Juel the client Page 1 2 Acknowledgement Since there have been several groups who have contributed to the Dream Green all documentation and design work is appreciated The current group would like to thank the previous design teams for their work In addition gratitude is extended to Mr Chuck Juel for lending the Dream Green for the team s use All of his time and effort in with past groups as well as current and future assistance has and will prove an invaluable asset to this project 3 Problem Statement The Dream Green was designed to help golfers improve their putting skills by practicing on an adjustable putting surface A series of wedges have been placed under the surface and can be adjusted to change the break of the green Figure 3 shows the basic concept behind the motorized adjustment process Deformable Putting Surface Wedge pushes surface Wedge Motor Drives Wedge Figure 3 Motorized Operation of Wedge Adjustment System Notice how the motor drives the stair step wedge under a catch bar effectively raising the surface Figure 4 below shows a 3D model of the wedge used to deform the putting surface amp Figure 4 Wedge
72. o solve this problem it was necessary to replace the gears Rather than use plastic gears that were intended for torque generation the team switched to metal spider gears These gears are designed to reduce the effects of twisting and slip Once these motors were implemented the team noticed an immediate improvement in encoder performance Page 15 12 2 Electrical Implementation Implementing the electronics was fairly difficult because the designs left by the previous teams were incomplete or unreliable To correct this many components were replaced and the software was rewritten from scratch but the original concept of a central master control board with slave boards controlling each pair of motors The communications standard used by the previous teams SPI could have been used successfully but it was determined that the CAN protocol would be easier to implement and would be more immune to noise from the brushless DC motor Using CAN required adding and additional transceiver but cost was fairly low and seemed to be justified by the noise protection and collision detection The transition to CAN also required a change in microcontroller The PIC16F877 was previous used because it was a good general purpose microcontroller but lacked an integrated CAN controller The PIC 18 series has several models with CAN controllers Eventually the PIC18F248 and PIC18F448 were chosen because were the least expensive with CAN controllers and the other
73. omponents will survive occasional exposure to water or other liquids The entire system uses less than 15 Amps of AC current and is powered from a standard 120V circuit The time required to change positions is 45 seconds or less Additional cost are less than 1 000 Page 6 10 3 Technical Approach Considerations and Results The board to board communications was changed to CAN The previous system using SPI wasn t fully implemented and was unreliable Instead of building on SPI it was decided to pursue and different communication standard Many options were considered RS 232 RS 485 and CAN Each standard was capable of meeting the needs of this project but CAN was the most complete protocol CAN also included collision detection and avoidance unlike any of the other standards The motor position circuit was also seen to be unreliable and was replaced with a more standard solution The past team s design used photo diodes and LEDs to gauge how far the wedge had moved With too much outside light the system didn t work well A set of tact switches was looked into as a possible solution but it proved to be more complex to implement than originally thought Eventually it was decided that a rotary encoder was the least expensive and easiest to employment The current end lift uses two motor and wedges working in tandem to lift the end To eliminate the possibility of the motors falling out of sync the connecting bar was removed 10
74. on Approach To begin the Dream Green renovations a full analysis of May05 03 s materials was conducted The current automation characteristics of the Dream Green were be tested and notes made on several variables such as maximum adjustment time noise power consumption construction characteristics and accuracy of the wedge movement With special attention paid to the limitations in deforming the surface the Dream Green is unique from any other putting surface Because this was the final phase of the Dream Green project the most important objective was to have a finial product ready for the client to test The team added those features necessary to allow for reliable testing The ultimate team goal was to implement features that keep the Dream Green a new and exciting experience with every use Most importantly the team maintained the integrity of the original product keeping fabrication and installation time and cost to a minimum Page 3 4 Operating Environment The operating environment for the Dream Green is indoors or other relatively controlled environments The putting surface quickly degrades in the presence of ultraviolet light and the Dream Green is not to be used in sunlight The Dream Green must be able to withstand occasional spills and a reasonable amount of abuse As a result all electronic and mechanical components will have to be protected or located where they will not become damaged All mechanisms must be reasonabl
75. onfig 1 OFF config WRTB OFF config WRTC OFF config WRTD OFF config EBTRO OFF config EBTR1 OFF config EBTRB OFF Const ant Defini tions define define define define define define define define define define define define define define define define define define NUM OF MAX MOTORS ES 18 18 MAX PLAYERS 4 MAIN MENU O0 pm GAME ty tg tt Awe 14 1 define define define define define define define define define define define SNEW_C SNEW_C SNEW_C SNEW_C MDL MDL M SAV SAV SAVE SAV I Fl Fl OWNFO z RS 0 15 RS 1 16 RS 2 17 RS 3 18 NU 0 19 NU 1 20 21 22 23 24 25 AAA FAA lll P 9 gMMMMPBG M Macro Definitions VMLIMMMOPOalllllll define XLCDCursorOnBlinkOn define XLCDCursorOnBlinkOff define XLCDDisplayOnCursorOff define XLCDDisplayOff define XLCDCursorMoveLeft define XLCDCursorMoveRight define XLCDDisplayMoveLeft define XLCDDisplayMoveRight Function Prototypes unsigned unsigned unsigned unsigned unsigned unsigned unsigned unsigned unsigned unsigned unsigned unsigned un
76. ores i lt score score scores i winner 0 i 1 for i 0 i lt num players i if scores i score amp amp winner 0 i 1 winner tie i 1 tiett KeypadClose XLCDReturnHome XLCDClear for i 0 i lt crsnamelen XLCDPut coursename i for i 0 i lt 20 XLCDPutRomString rom char XLCDPutRomString rom char X LCDPut winner 0 0 gt 1 XLCDPut winner 1 if tie gt 2 10 XLCDPut 2 if tie gt 3 XLCDPut winner 3 else XLCDPutRomString rom char else XLCDPutRomString rom char else XLCDPutRomString rom char if tie 1 XLCDPutRomString rom char else XLCDPutRomString rom char XLCDPutRomString rom char LCDPut score 100 0 crsnamelen acp i 9 Congrats P 10 10 WINNER WINNERS Score Page A 12 LC LC LC LC MxM DPut score 10 DCursorOnBlinkOff padOpen while KeypadGetChar padClose return MAIN MENU DPut score 10 1 0 DPutRomString rom char 0 10 ung unsigned char maint menu void unsigned char temp 0 KeypadClose XLCDReturnHome XLCDClear XLCDPutRomString rom
77. red linear force and resulting stresses on the motor As a result the reliability of the overall system may be increased In addition unnecessary and costly material can be eliminated to reduce manufacturing costs 11 3 3 Threaded Shaft ACME threaded rods are to be used to transfer power between the motors and the wedges The ACME threaded rods increase power transfer capabilities and reduces the potential for binding when compared to traditional threaded rods Square cut threaded rods are not suitable because of their increased potential for catastrophic binding The use of a geared motor for the end lift reduces the rotational speed of the motor considerably Therefore it is desirable to reduce the number of threads per inch to reduce the time requirements for adjustment 11 3 4 Threaded Insert The material of the insert is to be determined but will be a metal with natural lubricative properties such as red bronze or brass The length of engagement for the threaded insert is not as critical since there are guide rails present in the design The insert will be tapped to match the ACME threaded shaft Initial lubrication of the threaded insert will be necessary to reduce friction between the threaded shaft and the insert A lubricant will be chosen such that the system will require minimal if at all reapplication Page 11 11 3 5 Gears Previous groups had attempted to utilize external gears to drive the end lift wedges Instead geared DC
78. rials 61 53 Replacement Parts Deliverable Printing Documents will need to be printed to be turned in 29 74 Machine Shop Used to make additional parts for the prototype See Section 13 Manufacturing for costs 21 30 Total 112 57 Table 6 Final Resource Requirements Resource Reason Costs Related Senior Design Lab Space and equipment will be needed for constructing the Dream Green Prototype Part of the Class Dream Green Will be used to implement design and used for testing Donated Parts Additional parts will be needed to replace burnt out parts from previous teams and new parts will be needed for motor protection 3675 motor control user interface power interface and circuit board creation See Section 15 3 Tables 7 amp 8 for details Deliverable Printing Documents will need to be printed to be turned in 30 Total 3705 Page 20 15 3 Financial Requirements Listed below is a table of estimated costs for the components and labor Some costs reoccurring from last year are for additional materials needed to complete the entire prototype Table 7 Motor Controller Board Parts List Motor Controller Board Parts List Description IC LDO V REG W DELAY TO 220 5 IC PIC MCU FLASH 8KX16 40DIP IC TRANSCEIVER CAN HI SPD 8 DIP IC H BRIDGE 3A 55V TO 220 CRYSTAL 10 000 MHZ HC49 US CAP 1UF 50V 20 CER RADIAL CAP CERAMIC 18PF 50V NPO 1206 RES 1 0M OHM 1 4W 5 CARBON FILM RES 120 OHM 1 4W 5 CARBON FILM RES 10 OHM 1
79. rtant items By organizing the lab these pieces were not lost and could be found easily This reduced the time spent looking for parts 3 Low internet signal A risk that was not considered was the lack of wireless interned signal By not having the internet important data could not be acquired This caused a risk in not completing the prototype on time To manage this risk a ethernet cable was brought in The ethernet cable provided a great signal and the internet was used to make many important decisions throughout the construction of the Dream Green prototype 21 4 Resultant changes in risk management made because of encountered unanticipated risks unanticipated risks were dealt with on a prompt basis These unanticipated risks did not become major problems due to the fast action in dealing with those particular risks At the same time other potential risks stemming from the unanticipated risk were also dealt with in a prompt manner In addition risks closely associated with the unanticipated risks were also thoroughly considered By being proactive many other unanticipated risks were avoided The proactive approached saved much time and expense by dealing with problems before they happened For instance if a motor would have burned out it would have cost 30 to replace the motor and the time waiting for the motor would be lost The anticipation of risks was a major factor in completing the Dream Green prototype on time Page 33 2
80. s Tue 8 30 05 Wed 9 21 05 2 Problem Definition Completion 14 days Tue 8 30 05 Fri 9 16 05 3 Confirmation of End User s End Use s 7 days Tue 9 13 05 Wed 9 21 05 4 Review and Identification of Project Constraints 7 days Tue 9 13 05 Wed 9 21 05 5 Technology Considerations and Selection 10 days Wed 9 14 05 Tue 9 27 05 6 Review Modification of Technologies 10 days Wed 9 14 05 Tue 9 27 05 7 EL Technology Selection 10 days Wed 9 14 05 Tue 9 27 05 8 End Project Design 23 days Mon 9 26 05 Wed 10 26 05 9 Review of Design Requirements 13 days Mon 9 26 05 Wed 10 12 05 10 EL Design Process 16 days Wed 10 5 05 Wed 10 26 05 11 Documentation of Design 23 days Mon 9 26 05 Wed 10 26 05 12 End Product Prototype Implementation 24 days Tue 10 18 05 Fri 11 18 05 13 Identification of Prototype Limitations and Substitutions 11 days Tue 10 18 05 Tue 11 1 05 14 Implementation of Prototype End Product 14 days Tue 11 1 05 Fri 11 18 05 15 End Product Testing 71 days Tue 11 29 05 Tue 3 7 06 16 Test Planning 6 days Tue 11 29 05 Tue 12 6 05 17 Test Development 14 days Tue 11 29 05 Fri 12 16 05 18 Test Execution 8 days Wed 12 7 05 Fri 12 16 05 19 Client Testing 53 days Fri 12 16 05 Tue 2 28 06 20 Test Evaluation 42 days Mon 1 9 06 Tue 3 7 06 21 Documentation of Testing 56 days Tue 11 29 05 Tue 3 7 06 22 End Product Documentation 21 days Tue 3 7 06 Tue 4 4 06
81. s include the project plan end product design report project poster and project final report These documents were used to highlight the progress and revisions which led up to the completion of the project Evaluation criteria Documentation met the necessary criteria and deliverables met established requirements Overall importance 12 Milestone score Met 100 17 9 Final Project Score The result of the project evaluation is an overall final project score of 85 5 This score is calculated by adding the weighted average from each section As defined above this score exceeds the criteria necessary for a successful project 18 Commercialization Given that the manual Dream Green is currently for sale and has been for quite some time it has been the goal from the start to make the automated Dream Green easily replicable for commercialization It has been understood that the team had to make additional costs of automation minimal in order to allow a greater markup in price for the client increasing his profit margins There certainly would have been more expensive ways to accomplish the automation features of the Dream Green but in selecting and purchasing parts cost was always considered in hopes that the client would be replicating the design 19 Recommendations for Additional Work Below is a list of features that could be added as future team projects Touch screen for improved and more user friendly interface Motor protection c
82. s were conducted to confirm that the team met the design requirements laid out by the client The following tests were conducted to evaluate the quality of the end product 13 1 Stress Testing In order to make sure that the motors can handle the minimal lifting of the surface structure and carpet testing was conducted to make sure each motor could handle the load While the team wanted to make sure not to overheat the motor the team did want to get an idea of the actual stall current to determine a correct circuit breaker size From testing it was clear that the motors could handle the minimum load just fine but if someone were to stand on the green during adjustment the motor would certainly stall It was decided through testing that a 2 amp breaker would provide sufficient over current protection Because the team was extra cautious during testing of blowing a motor this testing was not designed to find out its maximum lifting capabilities Rather it was to design the motor protection circuit 13 2 Game Play This was by far the most important part of the testing Once the team wa confident in the positioning capabilities of the controls the Dream Green was put to the real test The team actually used the Dream Green as it would be used by the client and consumer Repeated use is the most effective way to work out any bugs in the system that may not be immediately apparent From the repeated testing it was found that it would be necessary to
83. scores 4 100 0 XLCDPut scores 4 10 oo LCDPutRomString rom char After Hole 10 0 8 Page 10 XLCDPut scores 4 10 0 XLCDPutRomString rom char else XLCDPutRomString rom char else XLCDPutRomString rom char XLCDCursorOnBlinkOff KeypadOpen while KeypadGetChar KeypadClose if isHole 1 hole 18 return GAME 3 else return GAME 2 return MAIN MENU unsigned char game2 void unsigned char i 0 holett KeypadClose XLCDReturnHome XLCDClear for i 0 i lt crsnamelen 1 XLCDPut coursename i for i 0 i lt 20 crsnamelen i XLCDPutRomString rom char LC LC LC LC PutRomString rom char Loading Hole Put hole 10 0 Put hole 10 0 PutRomString rom char Wing LCDPutRomString rom char my LCDPutRomString rom char Please Wait LCDCursorOnBlinkOff PX P P4 P4 P4 temp put course change here KeypadOpen while KeypadGetChar KeypadClose return GAME 0 unsigned char game3 void unsigned char winner 4 0 0 0 0 unsigned char score 255 unsigned char tie 1 Page A 11 int i for i 0 i lt num players i if sc
84. ses The Dream Green can be currently found in sports bars homes cruise ships special events or at college and professional sports facilities The Dream Green is intended to be used for the purposes of putting practice recreation and friendly tournament competition The Dream Green is not intended to be moved while players are standing on the elevated portions of the green The Dream Green is also not designed for people to stand on the elevated portions of the green other than the additional platforms provided with the Dream Green The automated Dream Green will have similar uses It can be used in sports bars homes cruise ships special events or tournament and in college and professional facilities The automation system is simple enough to be assembled and disassembled by almost anyone There is no need for a technical background to use the Dream Green The Dream Green will not be used while the motors are in motion After the motors have adjusted to their new positions the Dream Green can be used Page 4 7 Assumptions Listed below are the assumptions that were taken into consideration throughout the design and redesign of the Dream Green 1 2 oo DUO M 9 No additional loads including people or objects will be on the Dream Green putting surface The Dream Green is operated on a flat level surface automation equipment must be installed at the factory Automation does not significantly increase the complexi
85. sign review poster project presentation and industrial review panel The team also gained knowledge in project planning and dealing with setbacks 20 5 What would you do differently The team would have liked to have met its original prototype deadline This could have been accomplished by speeding up the design process and setting many smaller more achievable milestones Page 31 21 Risk amp Risk Management The subsequent section will describe both risks and the risk management faced throughout the completion of the Dream Green project The following section will discuss the anticipated potential risks and planned management anticipated risks encountered and success in management unanticipated risks encountered attempts to manage and success and the resultant changes in risk management made because of encountered unanticipated risks Due to the nature of the project there were many potential risks This section explains how these risks were managed 21 1 Anticipated potential risks and planned management Many risks were anticipated to reduce the amount of problems further into the building of the Dream Green Below is a list of the potential risks and the management steps taken to ensure that these risks would not result in major problems 1 Motor burnout The current was constantly monitored to ensure that the burnout current was not reached while the motors were being tested 2 Microcontroller burnout The controller bo
86. signed unsigned unsigned unsigned unsigned unsigned unsigned unsigned unsigned unsigned unsigned unsigned unsigned unsigned cnar nar nar nar nar nar nar nar nar nar nar nar nar nar nar nar nar nar nar nar nar nar nar nar nar nar main menu void game optO0 void game 1 void game opt2 void game opt3 void game0 void gamel void game2 void game3 void maint menu void new crsO void new crsl void new crs2 void new crs3 void rnd crs void snew_crs0 void snew_crsl void snew_crs2 void snew_crs3 void mdl menu0 void mdl menul void save O void save_1 void save_2 void save 3 void inst O void Variable Declarations struct CANMessage TX Message struct CANMessage RX Message unsigned unsigned unsigned unsigned unsigned char char char isHol char scores MAX PLAY State num players 1 hole 1 0 LC LC LC LC LC LC LC LC 06 04 KM PX PX DCommand DCommand DCommand DCommand DCommand DCommand DCommand DCommand OxOF OxOE OxOC 0x08 0x10 0x14 0x18 Ox1C unsigned char newhole 0 unsigned char newpos 0 unsigned char newheight
87. ssembly instructions tell our client how to reproduce the automated Dream Green This set of assembly instructions includes two main sections 1 List of Materials a Motors and wedges b Threaded rods gears couplers c Various nuts bolts nails screws etc d Microcontroller parts ie circuit boards 2 Step by step assembly a Machining parts b Attaching parts c Measurements These assembly instructions include a detailed step by step instruction set for the Dream Green including pictures were needed The machining section includes all parts that need to be machined and how to machine them The measurements section includes pictures with exact measurements on where to attach the different components of the Dream Green 14 2 End user Instructions The end user instructions are a set of instructions for the users of the Dream Green This set of instructions includes the following 1 Game play instructions Basic assembly Upkeep and maintenance Safety precautions Warnings Troubleshooting tips De The end user instructions were designed to provide the end customer with a complete guide on how to use and care for their automated Dream Green Page 18 15 Resource Requirements 15 1 Personnel Effort Requirements The following table lists the projected hours that would be spent by each of the team members This is an estimated personnel effort budget only Table 1 Initial Estimated Personnel Effort Requirements
88. ted Cost with Labor Computer Chips and LCD 100 100 Wires 25 25 Gears 75 75 Motors 50 50 Bars 25 25 Blocks 125 125 Fasteners 25 25 Manufacturing Student 50 50 Workspace Labor at 10 hr 9000 Total Cost 475 9475 Table 10 Revised Financial Budget Item Revised Cost without Labor Revised Cost with Labor Circuit Boards 954 954 Wires 50 50 Gears 75 75 Motors 90 90 Wedge Material 300 300 Fasteners 25 25 Manufacturing Student 100 100 Workspace Labor at 10 hr 8650 Total Cost 1594 10244 Page 22 Table 11 Final Financial Budget Item Section Cost Interface Total without Total with x5 sections Costs Labor Labor Circuit Boards 162 172 982 982 Wires 26 18 148 148 Gears 40 200 200 Motors 120 600 600 Wedge Material 54 270 270 Fasteners 10 50 50 Other Parts 35 175 100 Manufacturing 250 1250 1250 Labor at 10 hr 9760 Total Cost 697 190 3675 13 435 Page 23 16 Team Gantt Charts Below are the Gantt charts showing the original Dream Green team project timeline the adjusted timeline final timeline and the deliverables timeline ID a Task Name Duration Start Finish Oct 05 Nov 05 Feb 06 1 Problem Definition 17 day
89. the sender STOP_WEDGES Stops all wedges 0 1 2 MOVE_WEDGE 3 Command to move a wedge to a new position 4 5 MOVE_COMPLETE Signal that the wedge has completed its move and is ready for the next hole POSITION ERROR 6 The wedge cannot reach the requested position CURRENT ERROR 7 The motor has drawn too much current and stopped TEMP ERROR 8 The H bridge has over heated and stopped TIME ERROR 9 The motor has been on longer than the maximum allowed time Each device is given an identification number from 0 32 the motor controller boards use IDs 0 31 and 32 is reserved for the motor control board boards only accept commands that are sent to their address any other packets will be ignored When a control board receives a move command directed at its address begins moving the wedge When the motor stops it sends a reply back to the interface telling it that it is done or why it failed Page 14 12 Implementation Process In the implementation of the components many problems were encountered in developing a final product This section breaks down our implementation process into three sections 1 Mechanical implementation 2 Electrical implementation 3 Suggestions for improvement 12 1 Mechanical Implementation There were several problems that the team ran into while implementing the mechanical components in the final design The first problem the team encountered was handed down by the
90. ty of assembly and disassembly by either the end user or the builder Break adjustments are made using end lifts wedges and other similar devices The maximum number of adjustments is the same amount as the current Dream Green The Dream Green will not be exposed to direct sunlight The Dream Green will be played in an indoor facility or tent like structure and must be hooked up to a power source sections of the Dream Green are 4 feet long 10 The prototype Dream Green runs off DC power 11 The new design is not intended to be a retrofit into existing Dream Greens 8 Limitations Listed below are the limitations in the design and redesign of the Dream Green l 95 Wedges are used in the final design for height adjustment as necessary for patent protection The Dream Green makes full adjustment transition within 45 seconds All mechanical systems do fit within the current Dream Green enclosures including the podium area Complexity and difficulty of the manufacturing process is minimized The Dream Green is safe in all reasonable operating conditions The automation system is reliable and requires minimal conditions The manufacturing cost of the automation system is relatively low to provide for reasonable profitability The automation system is durable enough to withstand a reasonable amount of abuse in both the shipping process and during game play The additional retail price of the automation syst
91. y protected from corrosion The Dream Green must be able to withstand and operate through a reasonable amount of temperature humidity and other environmental variations without loss of functionality It should be feasible to use the Dream Green in an outdoor setting so long as it is not exposed to sunlight or moisture perhaps under a tent or canopy 5 Intended Users The Dream Green is designed for use by a multitude of different people The age range of the Dream Green is for all ages The Dream Green is also designed for use by all ability levels The weight limit of the Dream Green is 350 lbs The Dream Green is intended for several types of game play including recreation competition and professional The Dream Green has been designed to accommodate these types of play Features have been included in the Dream Green that will increase the usability for these types of play Recreational users desire the Dream Green to be enjoyable easy to use and easy to operate These recreational users also desire the Dream Green to have a minimal leaning curve Competitive users would like consistent results in play and repeatable break settings Professional users demand an accurate and realistic playing experience The professional user desires the putting surface to vary in many ways in order to accommodate any putting situation Each of the different users were considered during the design and modification of the Dream Green and its features 6 Intended U

Download Pdf Manuals

image

Related Search

Related Contents

Neurostimulation contre le mal des dos Terapia TENS  Dino-Lite MS33W microscope accessory  peristaltic-pumps.eu - Lambda Laboratory Instruments    Manuel d`utilisation de l`oxymètre de pouls MD300A  Sistema de Música Swing Manual de Instruções  Coby CVE91  JVC HR-XV10AG User's Manual  Samsung Spinpoint M HM161JJ hard disk drive  DRM029, 3-Phase PM Synchronous Motor Control with Quadrature  

Copyright © All rights reserved.
Failed to retrieve file