Home
Hsieh - Texas A&M University
Contents
1. ccc YY Y uu 73 IX CONCLUSIONS AND SUGGESTED FUTURE WORK 80 PEC OME HIS On iu haa ease Y SR 80 D gt MTA OMS UF WT AN FERF FFF wee nea TYR FN RF l 9 3 Suggested Future WOLK ues Ge OYN GG AO Ona 82 REFERENC ES ccsneccnciia sawed anaudamaartasn a OAN s dy 83 APPENDIX A OPERATING PROGRAM 00 cece Y FYN 85 APPENDIX B CLIENT SIDE PROGRAM 0 cccccceeeeeenseees 116 FIGURE 3 1 3 2 3 3 3 4 4 1 4 2 4 3 4 4 4 5 4 6 4 7 5 1 32 5 3 LIST OF FIGURES Development of the robotic wheelchair The sensor system 1s mounted at the front and the laptop for controlling the robotic Wheelchair 1501 the ODuaes su dane Yg GYD Yg Y ENIE E Interface board and two motor controllers Four relays and CD4066 chips are connected to the MC 7 The interface board connected to the PCMDIO card with the connectors that were modified from IPRV and PMLR FFY YY YY cece ee eee eens Seven light sensitive resistors and five distance measuring sensors are mounted on the sensor bracket with interface circuit Interface board between the sensor bracket and the PCMDIO The chips from top to bottom are the voltage regulators operational amplifiers and priority encoderP 0 cece een MC 7 motor controller and the interface board Dervise MC 7 motor controller ccc cc cece eee c eee cececescecess Circuit for speeding forward and b
2. NO IN On Cc oo a 100 120 140 x cm Figure 8 5 Motion trajectory of robotic wheelchair turned clockwise for approximately 140 160 r 120 gt 5 80 40 0 0 40 80 120 160 xX cm Figure 8 6 Motion trajectory of the robotic wheelchair tracking a specific light 76 By this motion trajectory recording method the real time path planning can be recorded as Figures 8 5 8 6 Figure 8 5 shows the motion trajectory of robotic wheelchair moved forward for approximately 120 cm and turned clockwise for approximately 140 Figure 8 6 shows the motion trajectory while it tracking a specific light which was described in Section 5 4 The robotic wheelchair detected the light on the right side it turned clockwise to the right and turned counter clockwise after approximately 45 cm to correct the error automatically Figure 8 7 shows the motion trajectory of the robotic wheelchair moving in real life testing environment with collision avoidance navigation recorded by the long term exposure photography technique A lamp was mounted on the robotic wheelchair Figure 8 8 shows the same motion trajectory of the robotic wheelchair as Figure 8 7 Figure 8 7 Motion trajectory of the robotic wheelchair recorded by the long term exposure photography technique y cm 50 0 50 100 150 200 250 X cm Figure 8 8 Motion trajectory of the robotic wheelchair moving i
3. ueeeeeeee Al 5 24 Response to the twenty third CONCItION ccccssseeeeeceeceeeeeseesseeeeees 42 5 25 Response to the twenty fourth condition 00 c cece cee YY Y uu 42 5 26 Response to the twenty fifth CONCIION cc eeeeeeeeeeeeceeeeeeeseeeeeeeees 43 5 27 _ Response to the twenty sixth Condition ccc cece FFY FF 43 5 28 Response to the twenty seventh COndition ccc cece cece FN 44 5 29 Response to the twenty eighth condition ccc YY Y YY Y ion 44 5 30 Response to the twenty ninth conditiOn YY YY Y FIN 45 5 31 Response to the thirtieth conditiOn YY cece FFY Y Fon 45 5 32 Response to the thirty first conditiOn cece cence Y FIN 46 5 33 Response to the thirty second Condition ccceee Y YY eud 46 6 1 PEMDIO channel configurati On os gd Ud 51 7 1 Duty ratio of the PWM signals generated from two MC 7 motor CORON Of tops wa eat Molen Od A acne 64 deo Experimental data for the two driving wheels eeeeeee eee 66 CHAPTER I INTRODUCTION 1 1 History This thesis is built upon previous research in the Precision Mechatronics Lab Intelligent Pothole Repair Vehicle IPRV 1 and Precision Mechatronics Lab Robot PMLR 2 Both of IPRV and PMLR are modified electrical wheelchairs using a laptop with a data acquisition card as the controller In the IPRV research an electrical wheelchair wa
4. 54 The user presses the Autonomous button Give the output signal to let the wheelchair move front Give the output signal according to the condition of the signals from photocells Is there any signal from any of the photocells the front photocell and fro infrared sensor generate logic high signal Is there any signal from five Infrared sensor Give output signal to let the wheelchair react as Table 5 1 Give the output signal to stop the wheelchair Figure 6 3 Algorithm for the autonomous mode of the robotic wheelchair 55 56 6 4 Remote Control Remote operability of the robotic wheelchair is provided by interfacing with a LAN using a wireless USB LAN card installed on the laptop In the development of the PMLR it used an ad hoc technique to equip the PMLR with remote control ability 2 This ad hoc technique can only be controlled by the client computer in the same network and there was only a 10 meter effective range to control the PMLR With the newly developed technique by Cheng Yeh Hsu in Precision Mechatronics Lab the autonomous robotic wheelchair could be controlled by any computer connected to the Internet while the robotic wheelchair moving in the environment with a Wi Fi access We used the Tamulink system which is a Wi Fi access provided by Texas A amp M University almost everywhere on its campus The transport layer proto
5. DC gt 1 Y VW hor WNN gt gt 5 Zo Y 89 VW VW AMP A A mie wr E Ti D IF l VVAV NS PhotoCells DC A1 A2 A3 A4 A5 A6 AT B1 B2 7 4LS148 8 3 ga Encoder A1 PCMDIO A2 A3 Figure 4 7 Circuit between photocells and PCMDIO 24 25 4 3 2 Interfacing the Distance Measuring Sensor Three Sharp GP2D15 and two GP2D12 distance measuring sensors also known as infrared sensors are used to detect obstacles The GP2D15 detects an obstacle at a 24 cm range and the GP2D12 detects an obstacle at the range from 12 cm to 80 cm From the datasheet of the GP2D15 for generating a 5 V output signal it is necessary to connect to a 12 kQ resister The GP2D12 is an analog sensor we can set the ADC outputs 5 V signal to the PCMDIO while the GP2D12 detects the obstacle at the range of 70 cm 26 CHAPTER V KINEMATICS AND PATH PLANNING This chapter describes the kinematics and dynamics of the robotic wheelchair and the algorithm of the real time path planning The analysis of the kinematics and dynamics for the robotic wheelchair is de
6. 6000000 2 2 gt 600000000 00000004 1000000000 500000009 O00000 ooo 000 600000000 6000000 500000 mv 999 00000000 000000000 6000000 000000000 o 9000000 90000 00000 o 0 o 000 fa 000 0eoo oo 0900 S 9000 0000 s Ue ANODD OOOO2OO029 192000000 C Ces 500000000228 OO SGooooe2229999 o oo02202O9 Fe a ee RS O00000000 000 Ce l SOO 2o0ooo lt 29986069999 Oo 2022020020999 y a a a e o OOOO O00009 500000 a o gt AAD EFO Q ie O coco ot nol oo HoOoCcod020 ps S 00000Q9 0000009999 O ent DOOoxoooo lt 000999972 00 0O O00000 OOOO oooU t OOO O00000 m OOGCOOQOQOOQO0OOYY S OO OOS 000000000 l BOOOCOCCOOS Le es A SPSS A YDOO 0000 OO Te tr A T 2 900 OOV V Ps A amp a A iA O T JU bj oe A DIN PP Pi a 40 oon MAM iia 09090999 O 909 08 f o o Figure 4 4 Interface board that contains four relays two CD4066 chips one gt Oc OO ps i ev Darlington array chip and two 74HC191 counters 22 4 3 Interfacing the Sensor System The PCMDIO is a TTL comparable I O card It can also take the digital input signal It is necessary to build an interface circuit as an ADC function between the sensor system and the PCMDIO Interface board for the sensor system is shown in Figure 4 5 Figure 4 5 Interface board for
7. right sock sendData sendData sock Close End Sub Private Sub back Click sock RemoteHost txtIP Text sock RemotePort 4400 sock Connect sendData back sock sendData sendData sock Close End Sub Private Sub stop Click Index As Integer sock RemoteHost txtIP Text sock RemotePort 4400 sock Connect sendData stop sock sendData sendData sock Close End Sub 119 VITA Name Pin Chun Hsieh Address 1F 8 1 Ln 26 Ganggian Rd Taipei Taiwan Email ryanhsieh seed net tw Education B S Power Mechanical Engineering National Tsing Hua University 2004 M S Mechanical Engineering Texas A amp M University 2008
8. 5 15 5 16 5 17 5 18 5 19 5 20 5 21 322 5 22 5 24 323 obstacle to the left and right It keeps moving forward until it detec an oDstacl uu uu GO o t The fourteenth condition The robotic wheelchair detects the obstacle to the left right and in the front This is an unpredictable SiLUALLOD ANG It SEOD Sa wd a Y dd NO YY ON The fifteenth condition The robotic wheelchair detects the obstacle to the left It turns clockwise until it detects no obstacle The sixteenth condition The robotic wheelchair detects the obstacle to the left and in the front It turns clockwise until it detects no obstacle ccc cece cece ccc ceccececcececcuceccuceceseseseas The seventeenth condition The robotic wheelchair detects the obstacle to the left and right It keeps moving forward until it detects an obstacle LL LL ccc ccc Y cence Y CG Y GE FF DEN The eighteenth condition The robotic wheelchair detects the obstacle to the left right and in the front This is an unpredictable situation and StOps ue a a Uw IG A OD AU sews The nineteenth condition The robotic wheelchair detects the obstacle to the left and right It Keeps moving forward untll 1t detects am ODstac lenn WE GN GU EOG The twentieth condition The robotic wheelchair detects the obstacle to the left right and in the front This is an unpredictable SItUatonand 1 amp tOpS i eU EGG ed GU dodd The twenty first condition The robotic wh
9. 1 4 THESIS Oreani7atlOnw cancs in a RO 3 II LITERATURE REVIEW adna Ab GR Gu nA O YS AFU 5 2 Wd a nS TF HF CR 5 2 2 Sensor ImplementatiOB 5i wi GO RWE wb 6 2 3 Path Planning and Obstacle Avoidance 008 6 I ROBOTIC WHEELCHAIR DESIGN 00 ccc cece Yu 9 3 1 Step I Main System of the Robotic W NCCICH HR ars uceotd O O Ii H NE TR NYTH TN FETH 10 Sy de en HY O O O 10 al Aa DOD ec ei CN dd Od ORG a CDG Rd 10 3 1 3 Data Acguisition Card LY YY nu 10 Dede Intenace Board a SG 11 3 2 Step H The Sens r SVStemii secs es ana rw a YU 12 3 2 1 Light Sensitive ROSTSICIO GG a DU 12 3 2 2 Distance Measuring Sensor 9 rr eee 12 52 Ha lEt leer SCDSOIS Gu GWR WOBR Da 13 3 2 4 Interface Board on the Sensor System 14 3 2 5 Operational AmplilI amp rs YY uu 14 512 6 Poni ENCO Seena nU Ua 15 5 2 Voltage ReeulAtol aes AG GN eee 15 3 3 Stage III Wireless Internet YY YY cence ee eens 15 CHAPTER IV y VI VII VIII INTERFACING DD NN o 4 1 The PCMDIO Data Acguisition Card seen 4 2 Interfacing the Motor Controllers 0 ccc eee eee 42 AS Pecans COMO Mics GG Y O manent 4 2 2 Forward and Backward Control 00 eee 4 2 3 Movement Measurement eee uu 4 3 Interfacing the Sensor System Ynni 4 3 1 Interfacing the Light Sensitive
10. 1 4 Thesis Organization Chapter I describes the history of this thesis and its contribution Chapter II presents the relevant literature reviewed by the author The literature review is divided into several categories modeling sensor implementation path planning and obstacle avoidance Chapter III describes in detail the design of the autonomous robotic wheelchair in three steps The first step involved the design of the main system of the robotic wheelchair The second step involved the sensor system The final step involved the wireless LAN communication The description of the mechanical design of the robotic wheelchair is organized according to the development steps mentioned above Chapter IV describes the details of the development of the interface boards In order to operate and control the robotic wheelchair two interface boards were developed between the laptop and the electronic components of the robotic wheelchair First it describes the PCMDIO data acquisition card which is used for all I O data acquisition Second it describes the interface circuits between the motor controllers and the laptop Then it describes the interface circuits between the sensor system and the laptop Chapter V describes the dynamics and kinematics of the robotic wheelchair and the algorithm of real time path planning The dynamics and kinematics of the robotic wheelchair are described first By the analysis of the kinematics the design of
11. End If End If If LIFR 1 And LIFRS 1 And RIFR 3 And IFR 0 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 0 And LIFRS 0 And RIFR 0 And IFR 1 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If 106 End If If LIFR 0 And LIFRS 0 And RIFR 2 And IFR 1 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 5 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 0 And LIFRS 0 And RIFR 1 And IFR 1 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 5 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End
12. Front GP2D15 s signal is L Forward Detecting obstacle Robot after response Figure 5 30 The twenty ninth condition The robotic wheelchair detects the obstacle to the left and right It keeps moving forward until it detects an obstacle Table 5 31 Response to the thirtieth condition Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is H O H H H HO o Stop O Stop Unpredictable situation stop Figure 5 31 The thirtieth condition The robotic wheelchair detects the obstacle to the left right and in the front This is an unpredictable situation and it stops 46 Table 5 32 Response to the thirty first condition Forward Left oe Left ann Right ae Right _ Front GP2D15 s signal is L ES i nr a bc H a SN i Ua f M a a N m en gr y ff AS Detecting obstacle Robot after response Figure 5 32 The thirty first condition The robotic wheelchair detects no obstacle and it keeps moving forward Table 5 33 Response to the thirty second condition Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is H H H H H Stop o er Fd Unpredictable situation stop Figure 5 33 The thirty second condition The robotic wheelchair detects the obstacle in the front This is an unpredictable situation and it stops 47 5 4 Light Tracking T
13. Interfacing photocells with the control system een Interfacing Hall effect sensors with the control system Statistic chart of the control voltage and duty ratiO An experimental path of the robotic wheelchair moving two MOTOTS EHUN NS FFON TAF ATYNNU HEO NIN FR AF YAWN FNAN FYD Recording the motion traJect0Ty YY cece ccc YY YY Y eens Recording the motion trajectory while one of the driving wheels are moving forward and the other are moving backward at time i Motion trajectory of the two driving wheels een The robotic wheelchair moves in different basis coordinates in the RY DIAC a y EF AEL a Motion trajectory of robotic wheelchair turned clockwise for approximately 40 uu LG a dU EDR YN GRY Y Motion trajectory of the robotic wheelchair tracking a specific Motion trajectory of the robotic wheelchair recorded by long term exposure photography technique ceeee eee Motion trajectory of the robotic wheelchair moving 1n a real life LOSES cny ronnen rene a Y YY NHS FE NWR The robotic wheelchair starts at point 0 840 ccc cece eens The robotic wheelchair turned at point 148 842 een xiii Page 57 58 58 60 6l 6l 62 65 67 70 72 12 74 75 75 76 T7 78 79 X1V FIGURE Page 8 11 The robotic wheelchair turned at point 1060 806 99 n 79
14. Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is H O H LL H HO To Stop E Stop he Unpredictable situation stop Figure 5 23 The twenty second condition The robotic wheelchair detects the obstacle to the left right and in the front This is an unpredictable situation and it stops 42 Table 5 24 Response to the twenty third condition Left avi Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is L O H Right ooo ee VO A Y Nosso ecco A i a a a a a a ee e T y w o o Cd o z J A j A Detecting obstacle Robot after response Figure 5 24 The twenty third condition The robotic wheelchair detects the obstacle to the left It turns clockwise until it detects no obstacle Table 5 25 Response to the twenty fourth condition Left wae Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is H O Ha Right Unpredictable situation stop Figure 5 25 The twenty fourth condition The robotic wheelchair detects the obstacle to the left and front It turns clockwise until it detects no obstacle 43 Table 5 26 Response to the twenty fifth condition Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is L Forward se s o Nc ge eT a RR kd m i Detecting obstacle Robot after response Figure 5 26 The t
15. Channel4 of al Voci bl _ PCMDIO bo 1K GND DL2803 ail Vcc1 bl T4 DC CG SV b2 T5 GND ZK Channel6 of 1 Vecl b1 PCMDIO ee b 1K GND Figure 4 3 Circuit for speeding forward and backward control 4 2 3 Movement Measurement Two 74HC191 decade counter chips shown in Figure 4 4 from IPRV and PMLR are also 21 included on the interface board to count the pulses generated by the Hall effect sensors By this function it has the ability to measure the moving distance of the robotic wheelchair Referred to 10 for the details 1000000000000 0009090900909000 yi ee ee e e ee ee Ty v bs t3 h LL oo WN gt 90000009090990 000000000909009 0000000000909099 55065564000000065555655055 6000000000000 5 600000000009000090 DO 4 2 000000 19000000 7000000 0009 000000000000 5000000000000 566000000 5000000000 56500000000 0000000090909090 5000000009 200 ooo oo Oo 2 m moeoo 10000 0000000000000099 190000000000000000 vw 7 120800 00 00 29999 nooooooc 60000000 MDO O dey 0099 00000000 bad 90000000000090000099 500 ss 000000000 O00 500009 9909 O00 5090999 0000 d 5900000009 00000000900090 009500090 9000 An 290 5000 20090 4500000000000 5000009 0000009 000000 0909000 Ss 900900 80060600000000000000 600 9009000 9000 9000 0990 33 i 90909 3000 09 900 o
16. TABLE 5 1 5 5 3 5 4 5 5 5 6 5 7 5 8 5 20 SPA LIST OF TABLES Response of the robotic wheelchair Response to the first condition Response to the second condition for each condition 00 Response to the third conditi0n ccc cece ccc FFY e Y YY eeneaes Response to the fourth condition Response to the fifth condition Response to the sixth condition Response to the seventh condition Response to the eighth Condition cccc cece cece YY Y Fyn Response to the ninth condition Response to the tenth condition Response to the eleventh condition Response to the twelfth Condition 0 cece cece FA FY YN un Response to the thirteenth conditiOn YYYL FFF FFY eens Response to the fourteenth conditiOn 9 FFY Y FL AN Response to the fifteenth condition Response to the sixteenth condition Response to the seventeenth conditi OTS a in CW GA FD O aY Response to the eighteenth conditiOn YYY FI Y Y Y ed Response to the nineteenth condition ccc cece cece FF eens Response to the twentieth condition XV Page 30 31 31 32 32 33 33 34 34 35 35 36 36 37 37 38 38 39 39 40 40 XVI TABLE Page 5 22 Response to the twenty first CONGITION ccccccccceceeeeeseeeeeceeeeeeeeeeeees 41 5 23 Response to the twenty second condition
17. and it stops 38 Table 5 16 Response to the fifteenth condition Right turn Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is L O H Right y SW Lo lt lt i A y 7 Detecting obstacle Robot after response Figure 5 16 The fifteenth condition The robotic wheelchair detects the obstacle to the left It turns clockwise until it detects no obstacle Table 5 17 Response to the sixteenth condition Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is H E Detecting obst cle Robot after response Figure 5 17 The sixteenth condition The robotic wheelchair detects the obstacle to the left and in the front It turns clockwise until it detects no obstacle 39 Table 5 18 Response to the seventeenth condition Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is L Forward gt aaa Detecting obstacle Robot after response Figure 5 18 The seventeenth condition The robotic wheelchair detects the obstacle to the left and right It keeps moving forward until it detects an obstacle Table 5 19 Response to the eighteenth condition Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is H Po H E Lt H HO Stop Stop Unpredictable situ
18. autonomous robotic wheelchair research contains three major design components hardware design interface design and real time path planning algorithm design This chapter describes how these three design components are combined together to make the autonomous robotic wheelchair move in an unknown environment with collision avoidance navigation Section 8 1 describes the typical autonomous and manual operation modes Section 8 2 describes the experiments and testing results of the motion trajectory with real time path planning 8 1 Operation As described in Chapter VI the control software provides two modes autonomous and manual of the robotic wheelchair When the user turns on the robotic wheelchair it runs in the autonomous mode by default unless the user switches to the manual mode 8 1 1 Autonomous Mode While the robotic wheelchair running in the autonomous mode it keeps moving forward until an obstacle is detected by the any of five infrared sensors or a specific light 1s detected by any of the seven photocells The algorithm of the autonomous mode can be referred to Figure 6 3 If there is any obstacle detected by any of the infrared sensors the robotic wheelchair will react according to the Table 5 1 This function allows the robotic wheelchair to perform the collision avoidance navigation If the robotic wheelchair detects the specific light by any of the seven photocells it moves toward the specific light 69 and stops ther
19. left turns right moving forward or stop according to 29 each condition of the infrared sensors signal From some experiments and testing we set the reaction of the robotic wheelchair in Table 5 1 There are five infrared sensors assembled on the sensor bracket Two Sharp GP2D12 infrared sensors assembled on the right and left sides as Figure 5 1 We set the detecting range as 70 cm Three GP2D15 sensors have the detecting range at 25 cm One GP2D15 infrared sensor was mounted at the front Two GP2D15 infrared sensors assembled on the left and right side just behind the GP2D12 sensors These two GP2D15 sensors are used to eliminate the dead zone Since the GP2D12 and GP2D15 sensors detect different distance to obstacles it can prevents some dead zone and detects the parallel obstacles With these sensors arrangement there are 32 conditions distinct of the signal from these five sensors In Table 5 1 the H means the infrared sensor generates logic high level signal to the PCMDIO and L means a logic low level signal While the robotic wheelchair running in autonomous mode it will Keep moving forward if there is no signal from any of the five infrared sensors If there are signals from those five infrared sensors it will response according to each of these 32 conditions It may turn right turn left keep moving forward or stop The schematic diagrams of the response of the robotic wheelchair in the autonomous mode after it detect
20. m Left Motors Channel 4 Circuits Controller Control Program Right MC 7 PE MIDIG gt TI HCC m Motor Right Motor Channel 6 Circuits Controller PCMDIO Right Hall Channel 1 effect Sensor Figure 7 4 Interfacing Hall effect sensors with the control system 7 3 Controlling the Wheel Speed To control the speeds of the two driving wheels of the robotic wheelchair the MC 7 63 motor controllers are used to generate the PWM signals to the two motors However the PWM signals from the MC 7 motor controllers are not exactly the same while the same control voltage connected to the pins T13 of the MC 7 controllers The distance of the two driving wheels is 57 5 cm and the diameter of the wheel is 31 75 cm Although the speed difference of the two driving wheels is only 5 the wheelchair will move approximately 16 to one side while it only moving for three meters The 16 error is too large to implement the real time path planning It 1s necessary to make the robotic wheelchair move as straight as possible The development in the PMLR is used the Hall effect sensors signals to design a feedback controller to let the wheelchair move near straight However the resolution of the Hall effect sensor 1s120 Although feedback controller in the PMLR can work the wheelchair would have a significant vibration and the moving trajectory in not smooth 2 To adjust the speed of the two driving wheels it is necessary to measure the duty
21. measuring sensors manufactured by Sharp as shown in Figure3 3 are used to detect obstacles The GP2D15 detects an obstacle at 24 cm range and the GP2D12 from 12 cm to 80 cm The sensors generate the output voltage signals fed to the analog to digital converters on the interface board to the PCMDIO card 13 3 2 3 Hall Effect Sensors Two Hall effect sensors from IPRV and PMLR were mounted on the rear casing of both the motors A pulse is generated by the Hall effect sensors on every rotation of the motor shaft and fed to a circuit with a 74HC191 counter chip and input to the PCMDIO data acquisition card installed on the laptop When the wheelchair is moving in a path the distance traversed by it is proportional to the number of rotations of the motor shaft This resolution of the Hall effect sensors was found to be approximately Icm in the previous IPRV and PMLR research A distance measuring sensors on s light sensitive resistors light sensitive h si N _ distance measuring sensors aie 3 d m Figure 3 3 Seven light sensitive resistors and five distance measuring sensors are mounted on the sensor bracket with interface circuit board 14 3 2 4 Interface Board on the Sensor System An interface board connects between the sensor system and the PCMDIO card with the electronic components will be given in Section 4 for detailed description 3 2 5 Operational Amplifiers Four TLO72ACP a
22. of the wheelchair axle The maximum turning radius OA of the wheelchair to prevent collision is approximately 60 cm Figure 5 1 shows the robotic wheelchair turns in an original point and the detecting range of five infrared sensors We select the detecting range of the two GP2D12 infrared sensors as 70 cm In Figure 5 1 we can see that the circle 1s the turning trajectory of the wheelchair turning at an original point The detecting range of two GP2D12 and three GP2D15 infrared 28 sensors are indicated as dash lines The robotics wheelchair could avoid any obstacles outside the turning trajectory and it will be much easier to design a real time path planning The algorithm of the real time path planning can be simplified if the motion trajectory of the robotic wheelchair turning around the axle middle point is a circle Front GP2D15 ae a Right GP2D12 Is range 2 5em ad o range cm i e Left GP2D 12 e A range Oem 7 hn i o Pos P Radius of sensor a 8 e af we w bracket 25cm pew Right wheel n P Ue rn Maximum turning radius Left wheel 7 of the wheelchair at onginal point 6Ucm Figure 5 1 The robotic wheelchair turns in an original point and the detecting range of five infrared sensors 5 3 Algorithm of the Real Time Path Planning Guided by Infrared Sensors To design the algorithm of the real time path planning we can set the reaction of the robotic wheelchair to let it turns
23. ratio of the PWM signals generated from the two MC 7 motor controllers with various control voltage to pins T13 Figure 7 5 and Table 7 1 show the results of the duty ratio of the PWM signals generated by the two MC 7 motor controllers measured by an oscilloscope From Table 7 1 and Figure 7 5 we can see that the difference in the duty ratios of the two MC 7 motor controllers is approximately 1 2 For the better resolution in the duty ratio it can be seen that the control voltage should be adjusted below 0 01 V However it is practically impossible to adjust the control voltage below 0 01 V precisely 64 Table 7 1 Duty ratio of the PWM signals generated from two MC 7 motor controllers Control voltage to pin T13 of Duty ration of the left Duty ration of the right 1 55V 23 7 1 56V 24 1 1 57V 24 4 1 58V 24 7 1 59V 25 2 1 60V 25 4 1 61V 25 9 1 62V 26 1 1 63V 26 5 1 64V 26 9 1 65V 27 3 1 67V 28 1 1 68V 28 5 1 69V 28 9 1 70V 29 3 1 71V 29 6 1 72V 30 1 1 73V 30 5 1 74V 32 5 30 9 1 75V 33 0 31 2 The method to making the autonomous robotic wheelchair move in a near straight and 65 smooth path is adding a 109 2009 potentiometer on the interface board This potentiometer can adjust the control voltage to the left side MC 7 motor controller from 1 60 V to 1 69 V From the experiments result by adjusting the left control voltage to 1 62 V the difference of the two wheels can be reduced to approximate
24. 066 chip to adjust the motor speed to ensure the wheelchair to move straight 2 ID i 4 5009 3950992 gt o o 36 6 60 oo oo oe OOE oc oOo o oo 0000000000000 oc 20000000000 ov oor 0000 gt Figure 3 2 Interface board and two motor controllers Four relays and CD4066 chips are connected to the MC 7 The interface board connected to the PCMDIO card with the connectors that were modified from IPRV and PMLR 12 Two relays are connected between an ULN2803 Darlington array chip and two motor MC 7 controllers The logic signal input to the Darlington array chip can select the forward mode or backward mode in the motor controllers By this function the wheelchair can turn in a circle at original point Two 74HC191 counter chips in PMLR are also rebuilt on the interface board for counting the pulses generated by the Hall effect sensors 3 2 Step II The Sensor System 3 2 1 Light Sensitive Resister Seven CdS light sensitive resistors are also referred to as photocells were assembled on the sensor bracket The photocell is PDV P5001 with a rise time of 55ms and with a typical resistance range of 8 kQ to 16 kQ at 10 lux at 2856K light The photocell is connected to a 5 V power supply in series with a 1 KQ resistor and the voltage across the photocell s terminal is direct connected to an operational amplifier comparator 3 2 2 Distance Measuring Sensor Three GP2D15 and two GP2D12 infrared distance
25. 1 And LIFRS 0 And RIFR 3 And IFR 1 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 0 If intStatus lt gt 0 Then 111 Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 1 And LIFRS 1 And RIFR 0 And IFR 1 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 5 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 1 And LIFRS 1 And RIFR 2 And IFR 1 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus 112 End If intStatus singleDigitalOutput gintlogicaldevice 6 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 1 And LIFRS 1 And RIFR 1 And IFR 1 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 1
26. 2D12 Output Control the right wheel 6 1 2 Performing Data Acquisition PCMDRIVE uses a data defined interface and each data acquisition operation is defined by a series of configuration parameters These parameters are contained in a data structure and are collectively referred to as a request or a request structure From the IPRV development in order to perform an input or output operation using the PCMDIO it requires the following sequence of steps 1 1 Define the hardware configuration 2 Open the hardware device 52 3 Allocate the request structure and data buffers 4 Define the request structure and data buffers 5 Request the operation 6 Write data to the locked data buffer 7 Arm the request 8 Trigger the request 9 Wait for completion 10 Read data from the locked data buffer 11 Release the configuration 12 Close the hardware device There are five functions were specially created in order to simplify the use of the PCMDIO for digital I O operations The functions are 1 Function openDevice 2 Function singleDigitalInput 3 Function multipleDigitalInput 4 Function singleDigitalOutput 5 Function multipleDigitalOutput The detail of those twelve sequences and five functions can be found in 1 6 2 Hardware Control To equip the autonomous robotic wheelchair with feedback control ability we set the logical channels input and output data lines and the bits number per logic channel
27. AUTONOMOUS ROBOTIC WHEELCHAIR WITH COLLISION AVOIDANCE NAVIGATION A Thesis by PIN CHUN HSIEH Submitted to the Office of Graduate Studies of Texas A amp M University in partial fulfillment of the requirements for the degree of MASTER OF SCIENCE August 2008 Major Subject Mechanical Engineering AUTONOMOUS ROBOTIC WHEELCHAIR WITH COLLISION AVOIDANCE NAVIGATION A Thesis by PIN CHUN HSIEH Submitted to the Office of Graduate Studies of Texas A amp M University in partial fulfillment of the requirements for the degree of MASTER OF SCIENCE Approved by Chair of Committee Won jong Kim Committee Members Chu Der Suh Yoonsuck Choe Head of Department Dennis O Neal August 2008 Major Subject Mechanical Engineering 111 ABSTRACT Autonomous Robotic Wheelchair with Collision Avoidance Navigation August 2008 Pin Chun Hsieh B A National Tsing Hua University Chair of Advisory Committee Won jong Kim The objective of this research is to demonstrate a robotic wheelchair moving in an unknown environment with collision avoidance navigation A real time path planning algorithm was implemented by detecting the range to obstacles and by tracking specific light sources used as beacons Infrared sensors were used for range sensing and light sensitive resistors were used to track the lights To optimize the motion trajectory it was necessary to modify the original motor controllers of the electric
28. And LIFRS 1 And RIFR 3 And IFR 1 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If End Sub Private Sub Timer2_Timer Call SensorRead End Sub Private Sub Timer3_ Timer If PCL 0 Then Timer 1 Enabled False intStatus singleDigitalOutput gintlogicaldevice 4 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 6 If intStatus lt gt 0 Then 113 114 Call pcmdioError gintlogicaldevice intStatus End If End If If PCL 1 Or PCL 2 Or PCL 3 Then Timerl Enabled False intStatus singleDigitalOutput gintlogicaldevice 4 5 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If PCL 4 Or PCL 5 Or PCL 6 Then Timer1 Enabled False intStatus singleDigitalOutput gintlogicaldevice 4 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 5 115 If intStatus lt gt 0 Then Call pcmd
29. DIO 10 Hz ZOH Channel c 2 3 5 and 7 Infrared Sensors PCMDIO Channel lt 0 and 1 Hall effect Sensors Figure 7 1 Structure of the control system 7 2 The Sensor in the Control System As described in section 7 1 there are three kinds of sensors in the sensor system infrared sensors photocells and Hall effect sensors How these sensors are interfeced with the control system is described below Figure 7 2 shows the infrared sensors in the control system The signals from the five infrared sensors are input to the control program through the input channels of the PCMDIO data acguisition card The sample time interval for the signals from the infrared sensors in the control program was set as 100 ms It can also be referred as a 10 Hz zero order holder ZOH to the control system 61 Left GP2D15 PCMDIO gt OP Sensor Channel 2 Right gt GP2D15 Sensor if PCMDIO 10Hz ZOH Control Channel 3 Program Right GP2DI2 Sensor Left GP2D12 PCMDIO gt gt Sensor Channel 5 Front gt GP2D15 EMO Channel 7 Sensor Figure 7 2 Interfacing infrared sensors with the control system Figure 7 3 shows how the photocells are interfaced with the control system The signals from the seven photocells ar
30. Enabled False Timer4 Enabled False intStatus singleDigitalOutput gintlogicaldevice 4 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If If IFR 1 Then intStatus singleDigitalOutput gintlogicaldevice 4 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If Call HallsRead Call SensorRead 93 End Sub Private Sub left Click Index As Integer Timer1 Enabled False Timer3 Enabled False Timer4 Enabled False intStatus singleDigitalOutput gintlogicaldevice 4 5 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If If IFR 1 Then intStatus singleDigitalOutput gintlogicaldevice 4 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If Call HallsRead Call SensorRead End Sub Private Sub right Click Index As
31. FR 0 And LIFRS 1 And RIFR 3 And IFR 1 And PCL 7 Then 109 intStatus singleDigitalOutput gintlogicaldevice 4 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 1 And LIFRS 0 And RIFR 0 And IFR 1 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 5 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 1 And LIFRS 0 And RIFR 2 And IFR 1 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 0 110 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 1 And LIFRS 0 And RIFR 1 And IFR 1 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR
32. If 107 If LIFR 0 And LIFRS 0 And RIFR 3 And IFR 1 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 5 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 0 And LIFRS 1 And RIFR 0 And IFR 1 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 5 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If 108 If LIFR 0 And LIFRS 0 And RIFR 2 And IFR 1 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 0 And LIFRS 1 And RIFR 1 And IFR 1 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LI
33. Integer Timerl Enabled False Timer3 Enabled False Timer4 Enabled False intStatus singleDigitalOutput gintlogicaldevice 4 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 5 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If If IFR 1 Then 94 intStatus singleDigitalOutput gintlogicaldevice 4 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If Call HallsRead End Sub Private Sub back Click Timer1 Enabled False Timer3 Enabled False Timer4 Enabled False intStatus singleDigitalOutput gintlogicaldevice 4 5 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 5 95 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If Call HallsRead End Sub Private Sub stop Click Index As Integer Timerl Enabled False Timer3 Enabled False Timer4 Enabled False blnRun False Call Neutral End Sub Private Sub Form Load Close 1 gintlogicaldevice openDevice Call Initialize Call SensorRead 96 End Sub Private Sub Form Unload Cancel As Integer Call Neutral wa
34. Resist0rs 4 3 2 Interfacing the Distance Measuring Sensor KINEMATICS AND PATH PLANNING rr rrr Y Ye 5 1 Dynamics of the Wheelchair YY YY Y Y ued 5 2 Kinematics of the Wheelchair Y YY Y ie 5 3 Algorithm of the Real Time Path Planning Guided by Inrrarcd Sensoria Y E A a vues IA A l bed ua ba l nu EY RF Y ENFYS A SORT WARE DESIGN ba YR RR GE GA OEOD Ce 6 1 Programming Eaneua6eO eie Ga taser GC SS 6 1 1 PCMDRIVE Configuration Utility 6 1 2 Performing Data AcdUuISitiOn Ynn nnion 6 2 Hardware C ontrols ae UA 6 3 Operation of the Robotic Wheelchairn o Remote COMUO iirc ea a A a oa S CONTROL SYSTEM DESIGN 0 cece cece eee e eee eecneeeees 7 1 The Structure of the Control System u 7 2 The Sensor in the Control System r ee 17 3 Controlline the Wheel Speed ceiau Aa OPERATION AND TESTING LG RG DDOL Bl ODE ATION cat Ye e en eaae o ll Autonomous Model Dyd a a GUI o Manual MIlode ea dU O 8 2 Experiments and Testit sss ui eu GG UU BR OEE base 8 2 1 Recording the Motion Traject0ry 8 2 2 Robotic Wheelchair Rotating around the Axle Made orl SH ann nee Mere reer YF 26 26 27 28 47 Vill CHAPTER Page 8 2 3 Motion Trajectory of the Robotic Wheelchair in an Unknown Environment
35. a panoramic camera were equipped in 4 The ultrasonic sensors used for navigation were equipped in 5 In 6 sensors were arranged on a circular robot That paper presented a high performance ultrasonic sensing system for mobile robots They describe how wide angle ultrasonic transducers can be used to obtain substantial information of the environment An actuated laser scanner mounted on an unmanned aerial vehicle UAV 7 The scanner was mounted on a tilt actuator with an encoder The ultrasonic sensors and stereo cameras were equipped in the multi vehicle platform of 8 The platform consisted of ten wireless networked robots 2 3 Path Planning and Obstacle Avoidance Robotic wheelchairs and mobile robots explore in an unknown environment require map generation of surrounding and path planning for obstacle avoidance navigation Since early 1980 s various algorithms and implementations have been developed and available for guiding robotic wheelchairs and mobile robots in a two dimensional 2 D environment In 4 the robotic wheelchair was capable of obstacle avoidance while moving in the middle of free space and following a specified moving target By processing the color sequence of the image from a panoramic camera the robotic wheelchair could determine the orientation of the target with respect to itself The distance of the wheelchair from the target could be measured by several sonars In order to have certain desired feature
36. a td sim Oora O to the basis coordinate X Y can be found as Yia yaa tdia COSCO o tA O A od Li ki LH RH E o where d _ 6 LH RH Yn 7 X01 2 2 A eee n I N Furthermore if the robotic wheelchair moves to the basis coordinate Xx y the position X Y can be found as Xo j B eL RAL nl 0 n j l j l j XX tt d sin y O og gt Qi 0 E p 0 q 0 p j l j y ya t d cos ae gt Qe 0 p 0 q 0 74 LH RH LA RH hJ B ae SS E a _ as J O ien sm i jeN Where L J 2 2 J J x represents the position to the basis coordinate X y At the sampling period i in the basis coordinate x y d LH mE ss i RH represent the small turning angle small displacement from the last position and pulses counted from the Hall effect sensors in the basis coordinate x y X 4 4 represents the last position in the Xn j l Ynja represents tan and a represents the total basis coordinate X Y O ja turning angle around its axle middle point at x 4 y 4 can be measured by the method described in Section 8 2 2 The illustration of this motion path recording method is shown in Figure 8 4 a Va MW A o y no 0 0 Figure 8 4 The robotic wheelchair moves in different basis coordinates in the xy plane 140 120 y cm 60 40 20
37. acing the Motor Controllers The interface board shown in Figure 4 1 is between the PCMDIO and the Dervise MC 7 motor controllers The logic signal from the PCMDIO is directly input to the two CD4066 switch chips and two relays and the control voltage from the relays input to the motor controller for certain speed of the wheelchair A potentiometer is connected to one CD4066 chip and one relay to adjusting the motor speed for ensuring the wheelchair moving near straight without feedback Figure 4 1 MC 7 motor controller and the interface board 18 Two relays are connected between an ULN2803 Darlington array chip and two motor MC 7 controllers The logic signal input to the Darlington array chips can select the forward mode or backward mode in the motor controllers By this function the wheelchair can turn 1n a circle at original point Two 74HC191 counter chips design in PMLR are also rebuilt on the interface board for counting the pulse generated by the Hall effect sensors 4 2 1 Speeding Control The MC 7 motor controller is manufactured by Diverse Electronics and is used to power a DC motor by producing a pulse width modulation PWM power supply voltage It has a power output range from 12 V to 36 V and can accept the control signal input The range of voltage of the input signal is 1V to 3V where 1V indicates the minimum speed and 3V indicates the maximum speed In order to provide this control signal to the motor controller we sel
38. ackward control Interface board that contains four relays two CD4066 chips one Darlington array chip and two 74HC191 counters Interface board for the sensor system VV Y Y Y eee You Nol agc CompardtOr ue Bie hd Circuit between photocells and PCMDIO cc cee Fei The robotic wheelchair turns in an original point and the detecting tange of fiye mfrared SensOrS sete Gu Wn Regan The first condition The robotic wheelchair detects the obstacle to the right It turns counter clockwise until it detects no 0 B51 0316 A E E E E E EA The second condition The robotic wheelchair detects the obstacle to the right and in the front It turns counter clockwise left until it 1X Page 11 13 14 17 19 20 21 22 23 24 28 FIGURE 5 4 I 5 6 ai i 5 8 5 9 5 10 5 11 5 12 5 13 5 14 detects no Obstacle as Y ho a a GO The third condition The robotic wheelchair detects the obstacle to the right and front It turns counter clockwise until it detects no CNIS ENC UG tics hg Sessa perth os octane we YF RR WN The fourth condition The robotic wheelchair detects the obstacle to the right and in the front It turns counter clockwise until it detects NO ODStacle6 cceiesea wos ce Sunde cbe ad Udd y a The fifth condition The robotic wheelchair detects the obstacle to the right It turns counter clockwise until it detects
39. al wheelchair so that it could turn in a minimum turning radius of 28 75 cm around its middle point of axle Then with these kinematics the real time path planning algorithm of the robotic wheelchair is simplified In combination with the newly developed wireless Internet connection capability the robotic wheelchair will be able to navigate in an unknown environment The experimental results presented in this thesis include the performance of the control system the motion trajectory of the two driving wheels turning in a minimum radius and 1V the motion trajectory of the real time path planning in a real life testing environment These experimental results verified that the robotic wheelchair could move successfully in an unknown environment with collision avoidance navigation ACKNOWLEDGMENTS I would like to take this opportunity to express my sincere gratitude to my advisor Dr Won jong Kim I would also like to thank him for the invaluable time and guidance that I received from him throughout this thesis research VI TABLE OF CONTENTS Page AB IRAC ueu rere AR bo O dod a i ee a 111 ACFCNOWELEEDGMWEN LES tenna a GA a RO V 1ADEFOF CONTENT cenit a ta AE AOE O vi EIS TOP FIGURE i a E E GOD 1X LSTOEFABI BO a bd BU Y E AO GW abate OOF XV CHAPTER I INTRODUCTION sern 1 ES AIS CORY 7 TW TWN FR RAN YN PR EN HI ANFRFFFFFF TAN 1 ID OBC CU EE eee HF HN R FFIN FFION EI 2 eo Ou Mi LS a _ _ O O O OO Oh HR 2
40. ampling period i may be defined as x x rcosa y y rsing Aa ya N i i I i i iat y r 28 75 2 2 RH On Yad d i re Rd LH Figure 8 2 Recording the motion trajectory while one of the driving wheels are moving forward and the other are moving backward at time i 40 F y cm 40 40 40 X cm Figure 8 3 Motion trajectory of the two driving wheels 73 The experimental measurement of the motion trajectory of the two driving wheels while the robotic wheelchair is turning 360 is shown in Figure 8 3 It can be seen that the motion trajectory of the two driving wheels is nearly a circle Therefore it is approximated that the robotic wheelchair turns around the middle point of its axle 8 2 3 Motion Trajectory of the Robotic Wheelchair in an Unknown Environment The robotic wheelchair can move in an unknown environment with real time path planning with collision avoidance navigation While the robotic wheelchair is turning clockwise or counter clockwise by an angle around the middle point of its axle the body fixed coordinate system in the xy plane also rotates by an anglea Figure 8 4 shows the robotic wheelchair moving to point x y 9 turning clockwise for an angle the basis coordinate rotates to x y the sampling period i resets to 0 and moves to the point x il y At the sampling period i the point x il y relation l O Xa Xa
41. and rendezvous The authors also explored optimal formation shapes to improve the performance of existing motion coordination algorithms Information consensus in multi vehicle cooperative control was discussed in 9 to provide a tutorial overview Theoretical results regarding consensus seeking under dynamically changing communication topologies was described This article also described several specific applications of consensus algorithms to multi vehicle coordination CHAPTER III ROBOTIC WHEELCHAIR DESIGN The robotic wheelchair in Figure 3 1 was designed in three steps The first step involved the design of the main system of the robotic wheelchair The second step involved the sensor system The final step involved the Wireless internet communication The description of the mechanical design of the robotic wheelchair is organized according to these development steps Figure 3 1 Development of the robotic wheelchair The sensor system is mounted at the front and the laptop for controlling the robotic wheelchair is on the top 10 3 1 Step I Main System of the Robotic Wheelchair 3 1 1 Wheelchair This robotic wheelchair is a take over from the previous project in Precision Mechatronics Lab IPRV and PMLR It is built upon the base frame of an Invacare Ranger II electric powered wheelchair The frame is 70 cm long 48 cm wide with a height of 55 cm It is capable of supporting a weight of approximately 100 kg This
42. and the light sensitive resistors are used to track the light To optimize the motion trajectory it is necessary to modify the motor controller of the wheelchair so that it can turn in a minimum turning radius Then with these kinematics the algorithm of the real time path planning of the robotic wheelchair can be simplified In combination with the newly developed wireless Internet connection capability the robotic wheelchair will be able to navigate in an unknown environment 1 3 Contributions As described above this thesis 1s the advance of the previous research IPRV and PMLR The specific contributions of this thesis are 1 Adding the sensor system to let the wheelchair have the ability to detect obstacles in an unknown environment 2 Modifying the interface board between the PCMDIO 24 channel data acquisition input output I O card and the motor controller to let the wheelchair rotate about its geometric center 3 Having the wheelchair be capable of collision avoidance navigation and tracking a beacon 4 Developing a real time path planning algorithm by the capability described above With this real time path planning algorithm the wheelchair can become an autonomous robot which can move 1n an unknown or partially known environment In this thesis we continue to use the wheelchair from the IPRV and PMLR projects as the main frame The setting of the PCMDIO data acquisition input output I O card has been modified
43. and the speeds of two motors Section 7 1 describes the main structure of the control system Section 7 2 describes how the sensor system interacts with the control system In Section 7 3 the speed control of the speeds of two motors is described 7 1 The Structure of the Control System The structure of the control system is shown in Figure 7 1 The client side computer sends the command signals to the control program running on the laptop on the robotic wheelchair The signals from the seven photocells and the five infrared sensors are input to the laptop through the six input channels of the PCMDIO data acquisition card with a 10 Hz sampling frequency The control program generates the output signals to the MC 7 motor controllers through the output channels of the PCMDIO data acquisition card and the interface circuits The MC 7 motor controllers generate pulse width modulation PWM signals to the left side and right side motors The Hall effect sensors generate the pulses by the rotations of the two motors which are feedback to the control program through the input channels of PCMDIO data acquisition card 60 10 Hz ZOH lt CME lt lt PhotoCells Channel 8 Control 5 UU Interface cT p Channel gt AA gt Motor gt Two Motors Program Circuits 4and 6 Controllers Client Computer PCM
44. ation stop Figure 5 19 The eighteenth condition The robotic wheelchair detects the obstacle to the left right and in the front This is an unpredictable situation and it stops 40 Table 5 20 Response to the nineteenth condition Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is L Forward e e Detecting obstacle Robot after response Figure 5 20 The robotic wheelchair detects the obstacle to the left and right It keeps moving forward until it detects an obstacle Table 5 21 Response to the twentieth condition Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is H O Ea Stop Stop Unpredictable situation stop Figure 5 21 The robotic wheelchair detects the obstacle to the left right and in the front This is an unpredictable situation and it stops 41 Table 5 22 Response to the twenty first condition Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is L Forward ce a s cecee ee MAweese9 Detecting obstacle Robot after response Figure 5 22 The twenty first condition The robotic wheelchair detects the obstacle to the left and right It keeps moving forward until it detects an obstacle Table 5 23 Response to the twenty second condition Left GP2D12
45. cludes real time path planning hardware control and networking This chapter describes each program Section 6 1 1t describes the programming and software being used Section 6 2 describes the software to control the hardware Section 6 3 describes the real time path planning algorithm Section 6 4 describes the wireless networking connection 6 1 Programming Language The Microsoft Windows Visual Basic 6 0 for Windows development environment is being used for the programming reguirements of the robotic wheelchair It provided a single platform to write programs for all the applications of the robotic wheelchair In the IPRV development the Microsoft Windows application programming interface API was utilized to develop the application to control the PCMDIO digital I O card 1 It use of the Windows API provides direct access to the dynamic link library DLL files to operate the PCMDIO card This development is also need in this thesis research The PCMDIO digital I O data acguisition card is used for all data acquisition and output control signal to operate the robotic wheelchair The vendor of the PCMDIO card also provides the POMDRIVE data acquisition software The software includes the following components For the details of the PCMDRIVE software can be found in 12 and 13 50 6 1 1 PCMDRIVE Configuration Utility This software was specifically designed to support the PCMDIO data acquisition adapter function It is easy
46. col used for sending and receiving data is the Transmission Control Protocol TCP The Microsoft Winsock Control 6 0 ActiveX control is used for the implementation of the TCP sockets within Visual Basic 6 0 Appendix B While the client computer has the IP address of the laptop on the wheelchair the user on the client side computer could control the robotic wheelchair with the client side program A schematic of the control system is shown in Figure 6 4 and 6 5 It can be seen that the commands from the client computer send through the Tamulink wireless Internet system The controller will have response according to the commands from client computer and the sensor system The interface of the client side program is shown in Figure 6 6 Global Internet TCP IP Tamulink Server Client Computer Autonomous Robotic Wheelchair Figure 6 4 Remote control through Internet 57 Command gt Client Computer Figure 6 5 Schematic of remote control through the Internet a Controller gt Robotic Wheelchair Sensor System AUTONOMOUS MODE MANUAL MODE Server IP Figure 6 6 Interface of the client side program 58 Movement 59 CHAPTER VII CONTROL SYSTEM DESIGN A key remaining issue of the autonomous robotic wheelchair is developing the control system The design of the control system includes the sensor system
47. condition Left ao Left ae Right Ge Right Front GP2D15 s signal is H Right turn 39 oo e wef o Ld i ants I p W y Je N A a a a s 38 fe p mm a A N a s N _ a Dd a O lt y Detecting obstacle Robot after response Figure 5 9 The eighth condition The robotic wheelchair detects the obstacle to the left and in the front It turns clockwise until it detects no obstacle 35 Table 5 10 Response to the ninth condition Forward Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is L Po H Forward _ ce j cecee if J li Detecting obstacle Robot after response Figure 5 10 The ninth condition The robotic wheelchair detects the obstacle to the left and right It keeps moving forward until it detects an obstacle Table 5 11 Response to the tenth condition Stop Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is H _ LL H H Stop Unpredictable situation stop Figure 5 11 The tenth condition The robotic wheelchair detects the obstacle to the left right and in the front This is an unpredictable situation and it stops 36 Table 5 12 Response to the eleventh condition Forward Left Gei Left eee Right ea Right eee Front GP2D15 s si
48. e The specific light 1s considered as the final target According to the real time path planning algorithm all the trajectories are generated in real time by the path planning algorithm described in Figure 6 3 without any predefined route 8 1 2 Manual Mode The manual mode allows the user to control the robotic wheelchair manually It provides five functions front back right left and stop Those functions allows the user to control the robotic wheelchair to move forward move backward turn left counter clockwise turn right clockwise and stop any time The manual mode also allows the user to control the robotic wheelchair manually when it stops in a dead zone While the user operating the robotic wheelchair in the manual mode the autonomous mode 1s disabled 8 2 Experiments and Testing To implement the real time path planning algorithm it 1s necessary to ensure that the motion trajectory of the robotic wheelchair turning around the middle point of its axle be a perfect circle This motion trajectory can be recorded by the Hall effect sensors and converted to a two dimensional trajectory in the xy plane 8 2 1 Recording the Motion Trajectory The motion trajectory can be recorded by the Hall effect sensors and converted to an xy plane coordinate system The gear ratio of the driving wheel is found as 32 1 and the resolution of the Hall effect sensor is 120 so that there are 96 pulses for one revolution The circumference of
49. e encoded to three bit data by a 74LS148 priority encoder The signal from this priority encoder is input to the control program through channel 8 of the PCMDIO data acquisition card The sampling interval for the signals for the photocells is set as 100 ms as well 74LS148 Seven Eion PCMDIO 10 Hz ZOH Control Photocells Encoder Channel 8 Program Figure 7 3 Interfacing photocells with the control system 62 Figure 7 4 shows how the Hall effect sensors are interfaced with the control system The control program generates the output signals to the left and right side MC 7 motor controllers through the output channels of the PCMDIO data acquisition card and the interface circuits The MC 7 motor controllers generate the PWM signals to the left and right side motors The Hall effect sensors mounted on the left and right side motors generate the pulses by the rotations of the two motors The pulses are input to the control program through the input channels of the PCMDIO data acquisition card The pulses from the two Hall effect sensors can be used to record the motion path of the robotic wheelchair and to adjust the speeds of the two driving wheels PCMDIO Left Hall Channel 0 effect Sensor Left MC 7 eM DEG gt laaie a Motor
50. ect the voltage as 1 66 V which is easy to design the circuit and provides the proper speed for the robotic wheelchair The circuit between the MC 7 motor controllers and the PCMDIO data acquisition card is shown in Figure 4 3 Two relays connect to pin T13 of the MC 7 motor controllers and ULN2803 Darlington array chip This circuit provides the switch function as stop and start Two CD 4066 switch chips provide the function of selecting speed if we need different speed 4 2 2 Forward and Backward Control The MC 7 controller will drive an electric motor in both the forward and backward directions Two relays are connected between an ULN2803 Darlington array chip and 19 two MC 7 motor controllers The logic signal input to the Darlington array chips can select the forward mode or backward mode in the motor controllers By this function the wheelchair can turn in a circle at an original point with one wheel moving forward and the other moving backward This tight rotation function is very important in real time path planning The circuit for this function is shown in Figure 4 2 Figure 4 2 Dervise MC 7 motor controllers In Figure 4 3 we can see that two relays connect to pin T13 of the MC 7 motor controller 20 which provide the function of the speeding control Two relays connect to pins T3 T4 and TS of the MC 7 motor controller which provide the forward and backward control ability 12V DC T al veci bi T4 b2 T5 OND
51. eelchair detects the obstacle to the left and right It Keeps moving forward untll 1t detects amobsTael amp 6e i Ce ddo The twenty second condition The robotic wheelchair detects the obstacle to the left right and in the front This is an unpredictable situation ANG TL StOpDSas eu au GR GA Ae Ud A DOG YA ON The twenty third condition The robotic wheelchair detects the obstacle to the left It turns clockwise until it detects no ODS AC Ie aca ee ei O YO V IE O The twenty fourth condition The robotic wheelchair detects the obstacle to the left and front It turns clockwise until it detects no XI Page FIGURE 5 26 D 5 28 5 29 6 1 6 2 6 3 ODS ACLS UT ee Ges Y O WWW The twenty fifth condition The robotic wheelchair detects the obstacle to the left and right It keeps moving forward until it detects am ODS IACI Cs ne CY yd The twenty sixth condition The robotic wheelchair detects the obstacle to the left right and in the front This is an unpredictable SICUALIOMN and 1 STOPS ae E Ad The twenty seventh condition The robotic wheelchair detects the obstacle to the left and right It keeps moving forward until it deiectsamobsiaele ee y Ge Gy ed GU y Y Y y O ed The twenty eighth condition The robotic wheelchair detects the obstacle to the left right and in the front This is an unpredictable SIMMALION and 1t SlOPScinancaecdcwnnnsanatsddekasnetadsonlannmiieasabhdnknaon The twenty nint
52. es different analog signals according to the distance from the obstacle Without the analog I O capability the robotic wheelchair can only detect the obstacles in a fixed range It cannot measure the precise distance from the obstacles The control program and real time path planning algorithm can only be designed by this digital input signals Other control laws such as optimal controller to ensure the robotic wheelchair to move in an optimal path cannot be implemented 3 The laptop tends to overheat which causes it unstable The wireless adapter does not have good performance in receiving Wi Fi signal 4 The robotic wheelchair has no sensor at backside while it moving to the dead zone it 82 can only set to stop and cannot moving backward 9 3 Suggested Future Work The following are proposed as future work to enhance the functionality of the autonomous robotic wheelchair and overcome the current limitations 1 Use of the controller with analog I O capability such as digital signal processor DSP board With the analog I O capability we could implement other real time path planning algorithms which might have better performance The PWM signals could be directly generated from the DSP and we could adjust the duty ratio at the same 2 Adding the optical encoders on the two driving wheels instead of the Hall effect sensors The optical encoders have much better resolution than the Hall effect sensors By the signal from the
53. ger Dim L_ Hall As Integer Dim 1 As Integer Dim blnRun As Boolean Public Sub Initialize Timer1 Enabled True Timer2 Enabled True Timer3 Enabled True Timer4 Enabled False blnRun True Stop T1me 10000000 intStatus 0 OldDist 0 RbytRipple 0 RbytRipple 0 Textl Text 0 Text2 Text 0 86 87 End Sub Public Sub HallsRead Do DoEvents mintStatusl singleDigitallnput gintlogicaldevice 0 bytHallLeft If mintStatus lt gt 0 Then Call errorMessage mintStatus Call PCMCloseDeviceVB gintlogicaldevice End End If mintStatus2 singleDigitalInput gintlogicaldevice 1 bytHallRight If mintStatus2 lt gt 0 Then Call errorMessage mintStatus2 Call PCMCloseDeviceVB gintlogicaldevice End End If If bytHallLeft gt 0 And bytHallLeft lt 8 Then If blnRipCntLeft True Then 88 bytRippleLeft bytRippleLeft 1 End If blnRipCntLeft False Else blnRipCntLeft True End If If bytHallRight gt 0 And bytHallRight lt Then If bInRipCntRight True Then bytRippleRight bytRippleRight 1 End If blnRipCntRight False Else blnRipCntRight True End If Text1 Text bytRippleLeft 15 Text2 Text bytRippleRight 15 Loop End Sub Public Sub SensorRead 89 mintStatus singleDigitalInput gintlogicaldevice 7 IFR If mintStatus lt gt 0 Then Call errorMessage mintStatus Call PCMCloseDeviceVB gintlogicaldevice End End If Text3 Tex
54. gnal is L Detecting obstacle Robot after response Figure 5 12 The eleventh condition The robotic wheelchair detects the obstacle to the left and right It keeps moving forward until it detects an obstacle Table 5 13 Response to the twelfth condition Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is H po H H H Stop Unpredictable situation stop Figure 5 13 The twelfth condition The robotic wheelchair detects the obstacle to the left right and in the front This is an unpredictable situation and it stops 37 Table 5 14 Response to the thirteenth condition Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is L 5 Pd an eg i Me ue a a a N U o P a 6 H Fi w r i y a ie ee oor ch 7 See C aeie FF W Bb f N n bh a Detecting obstacle Robot after response Figure 5 14 The thirteenth condition The robotic wheelchair detects the obstacle to the left and right It keeps moving forward until it detects an obstacle Table 5 15 Response to the fourteenth condition Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is H Stop Unpredictable situation stop Figure 5 15 The fourteenth condition The robotic wheelchair detects the obstacle to the left right and in the front This is an unpredictable situation
55. h condition The robotic wheelchair detects the obstacle to the left and right It keeps moving forward until it deicec sam oDstac leu au a tees oan teas DN T O LU The thirtieth condition The robotic wheelchair detects the obstacle to the left right and in the front This is an unpredictable situation ANG AE SLODS ud GO YD Y Y DLOS The thirty first condition The robotic wheelchair detects no obstacle and it keeps moving forward ece eee Y YY in The thirty second condition The robotic wheelchair detects the obstacle in the front This is an unpredictable situation and it Steps of the robotic wheelchair track a specific light PCMDRIVE configuration utility 00 cece cece ence cece eee eeeeeeees Operating interface to the user in Visual Basic program Algorithm for the autonomous mode of the robotic weeke Dal Su FUR FR so XII Page 42 43 43 A4 44 45 45 46 46 47 FIGURE 6 4 6 5 6 6 7 1 LZ 7 3 7 4 fis 7 6 8 1 8 2 8 3 8 4 8 5 8 6 8 7 8 8 8 9 Remote control through Internet 0 ccc cece eee YF Schematic of remote control through the Internet Interface of the client side program cece seen cece Fun Structure of the control System YYYYY YY FFI RY FFY Y You Interfacing infrared sensors with the control system
56. he robotic wheelchair has the capability of tracking a motion trajectory defined with a light with the seven photocells mounted on the sensor bracket The algorithm of this tracking capability is If any of the three photocells on the left detects the light then the wheelchair turns counter clockwise until the front photocell detects the light If any of the three photocells on the right detect the light the wheelchair turns clockwise until the front photocells detect the light The diagrams to illustrate this light tracking capability are shown in Figure 5 34 and 5 35 Sensing Sensing directionof direction of photocell 7 photocell 1 ne Sensing i i direction of direction of i photocell 2 photocell 4 bh x i 0 22 55 9 22 5 Sensing Pa 0 22 5 direction of x photocell5 4 Sensing Sensing direction of direction of photocell 3 photocell 6 Figure 5 34 Sensing directions of the photocells are indicated as dashed lines 48 Step 1 Figure 5 35 Steps of the robotic wheelchair track a specific light Step 1 The left photocells detect the light Step 2 The wheelchair turns to the counter clockwise until the front photocell detects the light Step 3 After the front photocell detects the light the wheelchair moves to the target and stops at 25 cm away 49 CHAPTER VI SOFTWARE DESIGN The control program of the autonomous robotic wheelchair in
57. intStatus End If End If If LIFR 0 And LIFRS 0 And RIFR 3 And IFR 0 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 5 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 0 And LIFRS 1 And RIFR 0 And IFR 0 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 6 If intStatus lt gt 0 Then 100 Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 5 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 0 And LIFRS 0 And RIFR 2 And IFR 0 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 0 And LIFRS 1 And RIFR 1 And IFR 0 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus 101 End If intStatus singleDigitalOutput gintlogicaldevice 6 5 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intS
58. ioError gintlogicaldevice intStatus End If End If If PCL 0 And IFR 1 Then Timerl Enabled False intStatus singleDigitalOutput gintlogicaldevice 4 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If PCL 7 Then Timerl Enabled True End If End Sub 116 APPENDIX B CLIENT SIDE PROGRAM This Program is a development from Cheng Yeh Hsu who is a member in Precision Mechatronics Lab Dim sendData As String Private Sub AUTO Click Index As Integer sock RemoteHost txtIP Text sock RemotePort 4400 sock Connect sendData auto sock sendData sendData sock Close End Sub Private Sub MANUAL Click Index As Integer sock RemoteHost txtIP Text sock RemotePort 4400 sock Connect sendData manual sock sendData sendData sock Close End Sub Private Sub front Click Index As Integer sock RemoteHost txtIP Text sock RemotePort 4400 sock Connect sendData auto sock sendData sendData sock Close End Sub Private Sub left Click Index As Integer sock RemoteHost txtIP Text sock RemotePort 4400 sock Connect sendData left sock sendData sendData sock Close End Sub Private Sub right Click Index As Integer sock RemoteHost txtIP Text sock RemotePort 4400 sock Connect sendData
59. ircle is the distance of the two wheels which is 57 5 cm The circumference of the circle is 57 5x 272 361 28 cm However the speeds of the two driving wheels are not exactly the same and the driving wheels may skid on the ground therefore the position of the middle point of the axel will not be fixed and the motion trajectory is not a perfect circle To record the motion trajectory the Hall effect sensors can be used Set the sampling interval as 100 ms for the pulses counted by the Hall effect sensors In Figure 8 2 the position of the axle middle point O x y at the sampling period i in xy plane can be found by the method described in Section 8 2 1 Notice that mn LH RH LH tRH 5 2 if it turns counter clockwise and LH RH LH RH a lil if it turns clockwise At the sampling period i while one of the driving wheels is moving forward and the other moving backward the turning angle a from the wheel to the axle middle point can also be found by the pulse LH and RH While the robotic wheelchair is turning 360 around the middle point of the axle the circumference of the motion trajectory circle is 361 28 cm Since one pulse represents 1 cm of the motion of the wheel the turning angle can be represented as a LH RH and the radius r 28 75 cm is the distance from the driving wheel 72 to the axle middle point The point x y represents the position of the driving wheel at the s
60. ironment with real time path planning The generation of a real time path was implemented by detecting the range from the obstacles and by tracking specific lights sources which is used as a beacon The infrared sensors were used to detect the distance to the obstacles and the light variance resistors were used to track the specific light source To optimize the motion trajectory the circuits to the motor controller were modified to ensure the wheelchair can turns in a minimum turning radius The robotic wheelchair could turn around the center point of the axle The algorithm of the real time path planning of the robotic wheelchair was simplified Combined with the newly developed of Internet connection capability the robotic wheelchair could move in an unknown environment with collision avoidance navigation Sl 9 2 Limitations The autonomous robotic wheelchair in its current form has the following limitations 1 The speeds of two driving wheels are not exactly the same and the autonomous robotic wheelchair cannot move in a straight line Even using the feedback controller by the pulses from the Hall effect sensors it is impossible to adjust the control voltage to the motor controllers precisely 2 The main limitation of the robotic wheelchair is that the PCMDIO data acquisition card has digital I O capability alone All signals from the sensors need to be converted to digital signal through ADCs The GP2D12 infrared sensor generat
61. itTime 100 Close 1 End End Sub Public Sub Neutral mtStatus singleDigitalOutput gintlogicaldevice 4 0 If intStatus lt gt 0 Then Call pemdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End Sub Private Sub Timer1 Timer If LIFR 0 And LIFRS 0 And RIFR 0 And IFR 0 And PCL 7 Then 97 98 intStatus singleDigitalOutput gintlogicaldevice 4 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 0 And LIFRS 0 And RIFR 2 And IFR 0 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 5 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 0 And LIFRS 0 And RIFR 1 And IFR 0 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 5 99 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice
62. ly 1 The experimental data are shown in Table 7 2 35 00 r 30 00 gt 25 00 20 00 gt eft E Right Duty ratio 15 00 r 10 00 r 5 00 0 00 Los ds 2509 Lol Tos 65 107 LO LL ILO LID Control voltage to pins T13 Figure 7 5 Statistic chart of the control voltage and duty ratio 66 Table 7 2 Experimental data for the two driving wheels Control voltage to Control voltage to Pulses counted by Pulse counted by pin T13 of the right pin T13 of the left the right Hall effect the left Hall effect MC 7 motor MC 7 motor sensor in one sensor 1n one controller controllers minute minute In this thesis research the control voltage to the left wheel was set as 1 62 V and the right wheel is set as 1 66 V From Table 7 2 the velocity V of the center between the two driving wheels can be obtained as 1293 cm min 0 21 m s from Table 7 2 An experimental path of the robotic wheelchair moving for two meters recorded by the pulses counted by the Hall effect sensors is shown in Figure 7 6 It can be seen that the robotic wheelchair were moving in a near straight path The experimental method will be described in the next chapter 250 200 Fr 150 y cm 100 100 50 0 50 100 x cm Figure 7 6 An experimental path of the robotic wheelchair moving two meters 67 68 CHAPTER VIII OPERATION AND TESTING This
63. n a real life testing environment 77 78 From Figure 8 7 and 8 8 it can be seen that the motion trajectory recorded by the Hall effect sensor is very close to the long term exposure photograph It can be seen that the motion trajectory on Figure 8 7 is a smoother path A possible reason is that the speeds of the two driving wheels were not exactly the same and there was skidding The testing environment for this research is in the ground floor hallway and Precision Mechatronics Lab inside the Zachery Engineering Center of Texas A amp M University This testing result demonstrates that the robotic wheelchair can move in an unknown environment located in a normal building Figures 8 9 8 11 shows sequence photos of the robotic wheelchair during testing Figure 8 9 The robotic wheelchair starts at point 0 840 Figure 8 11 The robotic wheelchair turned at point 160 806 79 80 CHAPTER IX CONCLUSIONS AND SUGGESTED FUTURE WORK The autonomous robotic wheelchair was successfully constructed and met the objective Section 9 1 summarizes the accomplishments of the thesis Section 9 2 discusses the current limitations of the autonomous robotic wheelchair In Section 9 3 future work is proposed to enhance the functionality of the autonomous robotic wheelchair and overcome the current limitations 9 1 Conclusions The autonomous robotic wheelchair has met the objectives The robotic wheelchair could move in an unknown env
64. nd three LM741 operational amplifiers shown in Figure 3 4 are employed to compare the voltage signals from the photocells and the five Infrared Sensors OKO 5 SS 4 yr da _ Voltage Regulators eh ly rr a CA NT uo y Ml ADY i w Suik Figure 3 4 Interface board between the sensor bracket and the PCMDIO The chips from top to bottom are the voltage regulators operational amplifiers and priority encoder 15 3 2 6 Priority Encoders The output signals from operational amplifier comparator are input to a 74LS148 priority encoder that generates a three bit output signal and directly input to the PCMDIO data acquisition card on the laptop 3 2 7 Voltage Regulator A KA7805 and a KA7905 voltage regulators are used to supply positive and negative 5 V to the whole electronic circuit 3 3 Step III Wireless Internet Remote operability of the mobile robot is provided by use of a wireless LAN card installed on the laptop This capability was developed in the IPRV and PMLR research The wheelchair acts as a server and executes the server side program Any remote terminal executes the client side program on the same LAN can be used to remotely operate the robot 16 CHAPTER IV INTERFACING This chapter describes the details of the development of the interface boards In order to operate and control the robotic wheelchair two interface boards were developed between the laptop and the electronic compone
65. no OS CC EY RR RR FN FFR RR FN HEFFER eu ase lewis The sixth condition The robotic wheelchair detects the obstacle to the right and in the front It turns counter clockwise until it detects TNO OD SUAC sy ee ena deca heat eb Abate AE The seventh condition The robotic wheelchair detects the obstacle to the left It turns clockwise until it detects no OS EF site aorta ce scons cote WI Y Hr cre Y Y RF Y HN DY YT The eighth condition The robotic wheelchair detects the obstacle to the left and 1n the front It turns clockwise until it detects no OD AC o en bd ON Y A ERY Ser The ninth condition The robotic wheelchair detects the obstacle to the left and right It keeps moving forward until it detects an OOS IAC FT _ _ NT The tenth condition The robotic wheelchair detects the obstacle to the left right and in the front This is an unpredictable situation ANG 4 SLODSS iA E id dn SY dy The eleventh condition The robotic wheelchair detects the obstacle to the left and right It keeps moving forward until it detects an oODStacle uu a I AYN enna GG ad The twelfth condition The robotic wheelchair detects the obstacle to the left right and in the front This is an unpredictable situation anc SODA ED RO det O OND OE The thirteenth condition The robotic wheelchair detects the Page 32 32 33 33 34 34 36 FIGURE
66. nts of the robotic wheelchair described in the last chapter Section 4 1 describes the PCMDIO data acquisition card from IPRV and PMLR which is used for all I O data acquisition Section 4 2 describes the interface circuits between the motor controllers and the laptop Section 4 3 describes the interface circuits between the sensor system and the laptop 4 1 The PCMDIO Data Acquisition Card A Superlogics PCMDIO 24 channel digital I O type II Personal Computer Memory Card International Association PCMCIA card is installed on the Fujitsu laptop It is used to perform all data acquisition and control functions A CP 1037 adapter cable is used to convert the PCMDIO s 33 pin 0 8 mm I O connector to an industry standard D 37 connector The PCMDIO has 24 TTL compatible buffered digital I O channels individually programmable as either input or output These digital I O channels are grouped into several different ports with each port containing several channels These ports are controlled via the Data Port A Data Port B and Data Port C control registers respectively In all three registers each bit corresponds to one data line The eight Port C I O channels may also be configured as interrupt sources The interrupts may be 17 configured in four ways level sensitive active low interrupt level sensitive active high interrupt _ high to low transition edge sensitive interrupt and low to high transition edge sensitive interrupt 4 2 Interf
67. of the PCMDIO I O card as Table 6 1 The six input channels take 16 bits of the input data lines 53 These are for the signals from two GP2D12 infrared sensors three GP2D15 infrared sensors the 71HC191 counters count the signal from the right and the left Hall effect sensors and the 74LS148 priority encoder to encode the signals from seven photocells In thisr research these two channels are used to control the speed of the wheelchair and to generate the forward and backward motion 6 3 Operation of the Robotic Wheelchair The real time path planning algorithm was described in Section 5 3 and 5 4 To program this algorithm in Visual Basic 6 0 the operation interface with the user was designed in Visual Basic 6 0 as Figure 6 2 The interface for the user includes the manual mode and autonomous mode for the user operating the robotic wheelchair If the user presses the manual mode button the wheelchair can be controlled by the user manually This function includes front right left stop and back motions of the wheelchair If the user presses the autonomous mode button the program will run the algorithm shown in Figure 6 3 In this autonomous mode we set the sampling time interval from the input data lines of the PCMDIO as 100 ms and the output control signals are 100 ms interval 5 Formi Baz LEFT HALL RIGHT HALL m LEFT INFRARED Figure 6 2 Operating interface with the user in Visual Basic 6 0
68. optical encoders a better feedback controller can be designed to ensure the robotic wheelchair to move in a straight line 83 REFERENCES 1 R Homji Intelligent Pothole Repair Vehicle M S thesis Texas A amp M University 2005 2 A Rogers Precision Mechatronics Lab Robot Development M S thesis Texas A amp M University 2007 3 T J A de Vries C v Heteren and L Huttenhuis Modeling and Control of a Fast Moving Highly Maneuverable Wheelchair in Proceedings of the International Biomechatronics Workshop pp 110 115 Apr 1999 4 A Argyros P Georgiadis P Trahanias and D Tsakiris Semi Autonomous Navigation of a Robotic Wheelchair Journal of Intelligent and Robotic Systems vol 34 no 3 pp 315 329 2002 5 C H Kuo H L Huang and M Y Lee Development of Agent Based Autonomous Robotic Wheelchair Control Systems Journal of Biomedical Engineering Applications Basis Communications vol 15 no 6 pp 12 23 Dec 2003 6 D Bank A High Performance Ultrasonic Sensing System for Mobile Robots in ROBOTIK 2002 Leistungsstand Anwendungen Visionen Trends VDI Berichte Nr 1679 pp 557 564 Jun 2002 7 D H Shim H Chung and S S Sastry Conflict Free Navigation in Unknown Urban Environments IEEE Robotics amp Automation Magazine vol 13 pp 27 33 Sep 2006 8 D Cruz J McClintock B Perteet O A A Orqueda Y Cao and R Fierro Decentrali
69. rable wheelchair was demonstrated in 3 This project considered a wheelchair with two independently driven front wheels and two castors at the rear and showed that the system became unstable when driven at high speeds A nonlinear control scheme was proposed to handle this problem The kinematics and coordinate systems of a robotic wheelchair were given in 4 and 5 In 4 the authors supposed that the wheelchair is move on a planar surface inside a corridor formed by obstacles which was approximated by two straight parallel walls They further supposed that appropriate sensors mounted on the wheelchair could detect the distance to the walls and derived the non holonomic constraint on the motion of the wheelchair From this the instantaneous speed lateral to the moving direction of the mobile platform had to be zero Thus the employed wheelchair was kinematically equivalent to the unicycle type mobile robot 2 2 Sensor Implementation Although sensor technology is continually improving the cost of sensors 1s often too high for the mass production of robots Sensors implemented in robotics systems include global positioning system GPS receivers laser range finders cameras for image processing ultrasonic sensors and infrared sensors These sensors can be used for navigation and obstacle avoidance There are many sensor systems for mobile robots Sonars used for distance measurement in a preselected critical direction and
70. s modified to be an autonomous road repair vehicle that would be used to fill potholes The IPRV is capable of being maneuvered remotely over a wireless local area network LAN The limitation of the IPRV was that it could only move straight during the autonomous mode The PMLR moved in a desired path with better accuracy It demonstrated an ability to travel around 10 m with a combination of its dead reckoning capability and position feedback by Hall effect sensors The limitation of PMLR was that it could only travel in a predetermined path and had a significantly larger turning radius Based on the existing development of the IPRV and PMLR the modified wheelchair already has wireless remote control capability by LAN connection and is controlled with the feedback from the Hall effect sensors With these capabilities adding other kinds of sensors and modifying the motor controller could make it possible for the wheelchair to be operated with real time path planning and obstacle avoidance This thesis follows the style of IEEE Transactions on Automatic Control 1 2 Objective The objective of this research is to demonstrate a robotic wheelchair moving in an unknown environment with real time path planning The generation of a real time map and a moving path can be implemented by detecting the range from the obstacles and by tracking specific lights sources used as beacons Infrared sensors are used to detect the range form the obstacles
71. s of the control system the motion control laws of motion used the sensory data and took into account the non holonomic kinematic constraints of the wheelchair An agent based robotic wheelchair was developed in 5 Its controller contains the functions of path planning navigation and obstacle avoidance In that work a fuzzy logic was used for obstacle avoidance and smooth wheelchair motion control and the algorithm was used to develop the path planning Autonomous exploration for UAV was presented in 7 In that article the authors proposed an algorithm suitable for urban navigation by combining the model predictive control The algorithm was based on obstacle avoidance with a local obstacle map which was built by an onboard laser scanner A real time gradient search based optimization let the model predictive control solve for a collision avoidance trajectory The tracking control was responsible for following through the given trajectory The multi vehicle platform in 8 discussed several coordinated control algorithms The authors implemented the algorithms on cooperative multi vehicle testbed with low level robotics vehicles and combining them to generate high level controllers The cooperative multi vehicle testbed are based on potential field control The authors added motion coordination algorithms to the library of team controllers which include perimeter estimation and pattern formation dynamic target tracking deployment
72. s the obstacles are given in Tables 5 1 to 5 33 and Figures 5 2 to 5 33 The details of the autonomous mode algorithm will be described in Chapter VI 30 Table 5 1 Response of the robotic wheelchair for each condition Left Left Right Right Front GP2D15 s Front GP2D15 s 31 Table 5 2 Response to the first condition Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is L P RL wears e _ XSP Detecting obstacle Robot after response Figure 5 2 The first condition The robotic wheelchair detects the obstacle to the right It turns counter clockwise until it detects no obstacle Table 5 3 Response to the second condition Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is H Left turn Detecting obstacle Robot after response Figure 5 3 The second condition The robotic wheelchair detects the obstacle to the right and in the front It turns counter clockwise left until it detects no obstacle 32 Table 5 4 Response to the third condition Left SPD Left SPDS Right HN Right eae Front GP2D15 s signal is L Left turn LAED TK phe Detecting obstacle Robot after response Figure 5 4 The third condition The robotic wheelchair detects the obstacle to the right and front It turns counter clockwise until it detects no obstacle Table 5 5 Respon
73. scribed in Section 5 1 and 5 2 By the analysis of the kinematics for the robotic wheelchair the design of the real time path planning algorithm is described in Section 5 3 The light tracking capability is described in Section 5 4 In Section 5 5 by implementing this real time path planning algorithm and light tracking ability the robotic wheelchair can become as an autonomous robot 5 1 Dynamics of the Wheelchair The dynamics of the two driving wheel vehicle can be written as an equation below 1 V rV cos0 x 2 0 0 j Au V sind 0 0 l 0 lu 0 lu 5 1 Vv z Th fo V 0 0 1 0 where V and V are the velocities of two driving wheels x and y are the positions of the axle middle point of two driving wheels in the two dimension reference frame and O is the turning angle of the vehicle 11 By setting 2 V gt V 5 2 a N V We can get X cos 0 0 yl lsim0 V 0 2 5 3 0 0 From the dynamics eguation 5 3 and 11 we can see that the middle point of axle can be fixed at an original point if V V Thus for designing the path planning algorithm of the two driving wheel vehicle we do not have to consider the turning radius of the axle middle point of the vehicle but consider the size of the vehicle 5 2 Kinematics of the Wheelchair By experiments and measurement we can see that if we let the wheelchair turning at an original point which is the vertical axis on the center
74. se to the fourth condition Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is H L L L H L Left turn i A A gt r i mm A y f Detecting obstacle Robot after response Figure 5 5 The fourth condition The robotic wheelchair detects the obstacle to the right and in the front It turns counter clockwise until it detects no obstacle 33 Table 5 6 Response to the fifth condition Left Gei Left weer Right ea Right an Front GP2D15 s signal is L Left turn SR Detecting obstacle Robot after response Figure 5 6 The fifth condition The robotic wheelchair detects the obstacle to the right It turns counter clockwise until it detects no obstacle Table 5 7 Response to the sixth condition Left turn Left ae Left Right deu Right taen Front GP2D15 s signal is H Detecting obstacle Robot after response Figure 5 7 The sixth condition The robotic wheelchair detects the obstacle to the right and in the front It turns counter clockwise until it detects no obstacle 34 Table 5 8 Response to the seventh condition Left Gei Left eee Right beU Right eee Front GP2D15 s signal is L Right turn Detecting obstacle Robot after response Figure 5 8 The seventh condition The robotic wheelchair detects the obstacle to the left It turns clockwise until it detects no obstacle Table 5 9 Response to the eighth
75. t IFR mintStatus singleDigitalInput gintlogicaldevice 8 PCL If mintStatus lt gt 0 Then Call errorMessage mintStatus Call PCMCloseDeviceVB gintlogicaldevice End End If Text4 Text PCL mintStatus singleDigitalInput gintlogicaldevice 2 LIFR If mintStatus lt gt 0 Then Call errorMessage mintStatus Call PCMCloseDeviceVB gintlogicaldevice End End If 90 Text5 Text LIFR mintStatus singleDigitalInput gintlogicaldevice 3 RIFR If mintStatus lt gt 0 Then Call errorMessage mintStatus Call PCMCloseDeviceVB gintlogicaldevice End End If Text6 Text RIFR mintStatus singleDigitalInput gintlogicaldevice 5 LIFRS If mintStatus lt gt 0 Then Call errorMessage mintStatus Call PCMCloseDeviceVB gintlogicaldevice End End If Text7 Text LIFRS End Sub Private Sub AUTO Click Index As Integer 91 Timerl Enabled True Timer2 Enabled True Call SensorRead Call HallsRead End Sub Private Sub MANUAL Click Index As Integer Timerl Enabled False Timer3 Enabled False Timer4 Enabled False blnRun False intStatus singleDigitalOutput gintlogicaldevice 4 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End Sub Private Sub front Click Index As Integer Timer 1 Enabled False 92 Timer3
76. tatus End If End If If LIFR 0 And LIFRS 1 And RIFR 3 And IFR 0 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 1 And LIFRS 0 And RIFR 0 And IFR 0 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If 102 intStatus singleDigitalOutput gintlogicaldevice 6 5 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 1 And LIFRS 0 And RIFR 2 And IFR 0 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 0 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 5 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 1 And LIFRS 0 And RIFR 1 And IFR 0 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 6 103 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStat
77. the real time path planning algorithm is described The light tracking capability is described next Then by implementing this real time path planning algorithm and light tracking capability the robotic wheelchair can become an autonomous robot Chapter VI describes the control program of the autonomous robotic wheelchair including the real time path planning algorithm hardware control and networking This chapter describes the software to control the hardware the real time path planning algorithm and wireless networking connection Chapter VII describes how these designs are integrated together to make the autonomous robotic wheelchair move in an unknown environment with collision avoidance navigation It describes a typical operation mode of the autonomous robot with experimental results Chapter VIII summarizes the achievements of this thesis The future work towards further development of the autonomous robotic wheelchair is also given CHAPTER II LITERATURE REVIEW A usual electronic wheelchair an assistive device for people with impaired mobility has motor controllers with limited capabilities for perception of their environment The present work related to the development of robotic wheelchairs navigation includes dynamic and kinematic modeling path planning target tracking obstacle avoidance sensors implementation and wireless remote control 2 1 Modeling Modeling and control of a fast moving highly maneuve
78. the driving wheel is approximately 100 cm and one pulse 70 represents closely 1 cm of the wheel moving on the ground if there is no skid The difference of pulses counted by the left and right side Hall effect sensors represents closely 1 of the turning angle of the robotic wheelchair in PMLR s research 2 Assume that the robotic wheelchair starts at the x y 0 0 point in the xy plane Then set the sampling interval as 100 ms for the pulses counted by the Hall effect sensors Defined the pulse counted by the left side Hall effect sensor at the sampling period i is LH and that counted by the right side Hall effect sensor is RH where i R n The displacement d of the robotic wheelchair from x _ y to 4 y _ LH RH _LH RH 5 3 cm and the turning angle is 2 LH RH y In the xy plane the position of the robotic wheelchair is x x rd sin0 y y rd cos0 An illustration of the motion path recording method is shown in Figure 8 1 6 Ma LH 57 5 cm RH 0 LH RH q LHtRH _LH RH 2 2 Figure 8 1 Recording the motion trajectory 71 8 2 2 Robotic Wheelchair Rotating around the Axle Middle Point Theoretically if one of the driving wheels moves forward and the other moves backwards at the same speed the robotic wheelchair will turn around the middle point of its axle The motion trajectory is a circle when it turns 360 and the diameter of this c
79. the sensor system 4 3 1 Interfacing the Light Sensitive Resistors Seven CdS light sensitive resistors are also known as photocells were assembled on the sensor bracket The photocell is PDV P5001 with a rise time of 55 ms and with a typical resistance range of 8 kQ to 16 kQ at 10 lux at 2856K light The photocell is connected to a 5 V power supply in series with a 1 KQ resistor and the voltage across the photocell s 23 terminal is direct connected to an _ operational amplifier comparator The operational amplifier is design as voltage comparators By selecting the reference voltage the comparator provides the 5 V output while the light is darker than the desired brightness and provides 0 V output while the light is brighter than the desired brightness This function can also refer as an ADC the PCMDIO For describing this function we analysis the voltage comparator designed by operational amplifier shown in Figure 4 6 5V OV R PhotoCell R OP AMP R 5V Figure 4 6 Voltage comparator R The reference voltage is set as V 5 L In this project we select R 220 O ref 1 2 and R 1kQ Then if the voltage generated by the photocell drops below 0 41 V the output voltage of the operational amplifier becomes 0 V This can also be referred as a logic low level signal to the 74LS148 priority encoder Figure 4 7 shows the entire circuits between the seven photocells and the PCMDIO card 5V
80. to use the application that allows the user to graphically acquire and display real time data This software is used to edit the PCMDIO hardware configuration file This file contains the setup of the 24 individual I O channels of the PCMDIO card into logical channels Using the configuration software each logical channel can be set as single bit or multiple bit channels Once all the logical channels have been set each channel may be configured as an input channel or an output channel The PCMDRIVE configuration utility with the 24 data I O lines is shown in Figure 6 1 For the autonomous robotic wheelchair the PCMDIO was configured to have 8 logical channels because of some limitation from the PMLR s development The detail of the channel configuration is shown in Table 6 1 Eg General A D D A Digital 1 0 Configuration Digital IAU Digital Input Output Selectable Ports select Page jo Fart OF Bit e So ae ak A au 0 of fi fi fi fo fo fo fe Fort Bit te we Op a ee all 0 Ed ooo RAIAIN cH 4 fa fa fe BB PCMDID 24 channel digital o Cancel Help Figure 6 1 PCMDRIVE configuration utility 13 SI Table 6 1 PCMDIO channel configuration Logical Number Channel type Function Channel of bits Input Signal from left hall effect sensor Signal from right hall effect sensor Signal from left GP2D15 Signal from right GP2D15 and GP2D12 Output Control the left wheel Input Signal from left GP
81. us End If End If If LIFR 1 And LIFRS 0 And RIFR 3 And IFR 0 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 5 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 1 And LIFRS 1 And RIFR 0 And IFR 0 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 5 If intStatus lt gt 0 Then 104 Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 1 And LIFRS 1 And RIFR 2 And IFR 0 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If End If If LIFR 1 And LIFRS 1 And RIFR 1 And IFR 0 And PCL 7 Then intStatus singleDigitalOutput gintlogicaldevice 4 6 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus End If intStatus singleDigitalOutput gintlogicaldevice 6 5 If intStatus lt gt 0 Then Call pcmdioError gintlogicaldevice intStatus 105
82. wenty fifth condition The robotic wheelchair detects the obstacle to the left and right It keeps moving forward until it detects an obstacle Table 5 27 Response to the twenty sixth condition Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is H O Ea H H Stop E Stop Unpredictable situation stop Figure 5 27 The twenty sixth condition The robotic wheelchair detects the obstacle to the left right and in the front This is an unpredictable situation and it stops 44 Table 5 28 Response to the twenty seventh condition Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is L Forward e e E j SS Ps Detecting obstacle Robot after response Figure 5 28 The twenty seventh condition The robotic wheelchair detects the obstacle to the left and right It keeps moving forward until it detects an obstacle Table 5 29 Response to the twenty eighth condition Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15 Front GP2D15 s signal is H O H H Stop O E Stop Unpredictable situation stop Figure 5 29 The twenty seventh condition The robotic wheelchair detects the obstacle to the left right and in the front This is an unpredictable situation and it stops 45 Table 5 30 Response to the twenty ninth condition Left GP2D12 Left GP2D15 Right GP2D12 Right GP2D15
83. wheelchair is driven by two independent 12 V DC motors for the front wheels with a diameter of 31 75cm with built in reduction gears that provide a maximum speed of 6 km hr Two Diverse Electronic Company s modular motor controllers are used for motion control and are mounted on the frame Two 18 cm diameter caster wheels in the rear provide support 3 1 2 Laptop The main control program is operated by a Fujitsu Laptop with an AMD K6 451 MHz processor and with 192 MB RAM The main operation program is Visual Basic 6 0 in the Microsoft Windows XP operating system 3 1 3 Data Acquisition Card A Superlogics PCMDIO 24 channel digital I O type II Personal Computer Memory Card International Association PCMCIA card is installed on the Fujitsu laptop and is used to perform all data acquisition and control functions A CP 1037 adapter cable is used to convert the PCMDIO s 33 pin 0 8 mm I O connector to an industry standard D 37 connector The PCMDIO has 24 transistor transistor logic TTL compatible buffered ll digital I O channels individually programmable as either input or output 3 1 4 Interface Board The interface board shown in Figure 3 2 is between the PCMDIO and the Dervise MC 7 motor controllers The logic signal from the PCMDIO is directly input to the two CD4066 switch chips and the control voltage from a CD4066 chip is input to the motor controller for a certain speed of the wheelchair A potentiometer is connected to one CD4
84. zed Cooperative Control A Multivehicle Platform for Research in 84 Networked Embedded Systems IEEE Control Systems Magazine vol 27 no 3 pp 58 78 Jun 2007 9 W Ren R W Beard and E M Atkins Information Consensus in Multivehicle Cooperative Control IEEE Control Systems Magazine vol 27 no 2 pp 71 82 Apr 2007 10 H Sahin and L Giuvenc Household Robotics Autonomous Devices for Vacuuming and Lawn Mowing JEEE Control Systems Magazine vol 27 no 2 pp 20 96 Apr 2007 11 J Laumond Robot Motion Planning and Control Lecture Notes in Control and Information Science 229 Berlin Springer 12 Superlogics PCMDIO Users Manual Available at SuperLogics Inc 300 Third Avenue Waltham MA 02451 USA 13 Superlogics PCMDRIVE Data Acquisition Software User s Manual Available at SuperLogics Inc 300 Third Avenue Waltham MA 02451 USA APPENDIX A OPERATING PROGRAM Dim IFR As Byte Dim LIFR As Byte Dim RIFR As Byte Dim LIFRS As Byte Dim PCL As Byte Dim mintStatus As Integer Dim bytRippleLeft As Integer Dim bytRippleRight As Integer Dim bytHallLeft As Byte Dim bytHallRight As Byte Dim blnRipCntLeft As Boolean Dim blnRipCntRight As Boolean Dim mintStatusl As Integer Dim mintStatus2 As Integer Dim PrePulseR As Boolean Dim PrePulseL As Boolean Dim ActDist As Single Dim StopTime As Single Dim CarryDeg As Integer 85 Dim NeutralMC As Byte Dim R_ Hall As Inte
Download Pdf Manuals
Related Search
Related Contents
Je suis d`ailleurs, chroniques d`un forum... Tome 1 CA Agile Vision - Manuel d`implémentation La question de l`amour dans Capitale Nokia 8600 Luna User Guide P16 [Converted] Português folding trike owner manual fold me ride me Mode d`emploi Copyright © All rights reserved.
Failed to retrieve file