Sie sind auf Seite 1von 56
AUTONOMOUS MOBILE ROBOT a NUS wy National University of Singapore ‘TM3101 MECHANICAL ENGINEERING DESIGN PROJECT TITLE AUTONOMOUS MOBILE ROBOT PROJECTOR GROUP NO. : 5A BACHELOR OF TECHNOLOGY PROGRAMME —-s AUTONOMOUS MOBILE ROBOT PROJECT TELE +: AUTONOMOUS MOBILE ROBOT PROJECT GROUPNO. + 5A PROJECT DURATION: FROM 15.JAN 2014 TO 09 APR 2014, PROJECT SUPERVISORS: A/PROF QUAN CHENG GEN PROJECT MEMBERS ADMINNO, REMARK AIYECHAO 0107714 LEADER HUA TANHANG AOO7S00U TREASURER (CHARLES WILFRED MASCARENHAS 0107702 BIANG YIPING A00s9038 JIANG ZHICHAO Annre718U HU IMING, ‘AoLo7T07H. LOW JUN-XIONG A088 966, LWA IAN RONG AOIOTESIE DATE OF SUBMISSION. : 09/04/2014 gp AUTONOMOUS MOBILE ROBOT | 2014 Table of Contents Acknowledgements 5 INTRODUCTION... 6 dion nen 6 a 6 13. Specieatons 6 131, Compeiton zen 6 1.32, Robot Specification a 7 7 14 Sched nd Planing 2 a, LAL, Tie Planing nnn 7 12, Proves Gantt Chit nn a, . 2 CONCEPTUAL DESIGN. ° 21, Feasibliy Sud ° 22. Conceptual Design of Chasis... ° 23. Concept Design of Arm. a 24, Conepta Design of Ope... : 2 3. DETAIL DESIGN OF ROBOT... - eet 41, Design Calehated nnn - 0 41141, Design Technical Caleltons: Mobility “ 4112, Design Technica Cleltons: Depreof Freedom ene 313, Design Tecnica Clelatons: Shuler as AMA, Design Techni Cleo: Art as BLS. Design Technical Caleltions Gripe. as 416, Design Tecnica Calculations: Rotting Pte 16 317, Design Tecnica Clelaions: DC Mote 16 32, Robot CAD Deg a 32.1, Sores Dring wv 322, Deal Design of Chass 8 323, Deal Designo Ama 19 yp eee AUTONOMOUS MoBILE RoBoT | 2014 224, Dati Design of Griper 20 225. Ovenll Design of Robo a ee) 3. Component Fabcaion & Outsourcing — 3, Bleronic Contol Desa oS ALA, Main Heston Component Selection, 25 34.2, Servo Motor Saleton nnn oud? 243, Cicit Design & Wiring. 23 25. Blof Material 30 4 PROGRAMMING. . - ers) 41. Pashbuton Code. cen 38 42. Mover Control Code. — 38 43. Servo Cnt Caden ees 44, Ball Seaming Cole er neon nn 36 5. IMPROVEMENT. ene) Sil. Upeading of Bate Plate sone 37 52. Upgrading oid Electr. - oe) 53. Upgrading of MethadologyofSxn Program, 38 4. Upgrading of Am Position Dring Trveling 40 SS. Upaading of Bll Picking. sn 6 Discussions, z a 61. Seng ofthe Design nh 62, Wesknes ofthe Desan : 3 7. CONCLUSION. : : a APPENDIX. — 4“ AUTONOMOUS MOBILE ROBOT | 2014 Abstract ‘Tae team is expected to apply knowledge leamed in previous modules and apply his knowledge of mechanical, manufacturing electrical and electronics to design and build the robot. I aio needs proper co-ordination. In so doing, the tam has to work together, manage the team spits and manage the time aa oss of fibrcation and assembly which also requires knowledge of projet management. Acknowledgements “This projest has been exciting journey for the projec team. I has bee an inredible and {ulin learning experience ~ from drat of our design to the final competition. Its our honor and pleasure tobe indebted to various people, who dirty or inde contbuted in he development ofthis projet. ‘We would like to express sincere gratitude to oar project supervisor tutor Prof Quan CChenggen for his excellent and professional guidance, advice and support, valuable suggestions and presiou time during the journey of study In addons, we would also lke to thanks all the staffs fom Bachelor of Technology of [NUS for their contribution on their knowledge snd comment. ‘There are many more of you who formed pars of our team as we completed tis projet. Whether we name you hereor no, know tht, with gratitude an love, ‘Wetanks youll! All Team Member osiaprn0is AUTONOMOUS MOBILE ROBOT | 2014 1, INTRODUCTION {.A.Introduetion ‘A robot is « mechanical or viral intelligent agent tat can perform tasks automatically cr with guidance. In practic, a rbot is usually an electro-mechanical machine that i ‘sided by computer and electronic programming. It ean be avionomoss, semi autonomous ot remotely conwolled. Robots are being used in an increasingly wide ‘variety of tasks uch as vacuuming floors, mowing lawns, cleaning dein, in warfare, snd in asks that are to expensive o oo dangers to be performed by humans sich as exploring outer space or atthe bottom ofthe sea. tn this module, we fous on the design nd build of an autonomous robot which pick and place a tenis ball base onthe given ‘les and repulations. Our group consists of eight members. Weare to work as a eam in developing the design of sn sutonomous robo, selection of materials and fabrication, purchasing ofthe various standard pats, assembly, programming, testing, alysis and ‘eommissioning, and finally working on the group report. 1.2. Background {In 2010, BP cil sil was partially resolved by underwater robots which pocisely placed a ‘metal conrete ball on the leakage pipe. In memory ofthis, NUS had decided to give an opportnity for students to design and build so that the robot can cary out similar mission as in BP. 1.3. Specifications 1.34. Competition Arena ‘The arena is an $00 mm wide by 1200 mm long wooden platform. The surfce of platform is pated mat lac with border all round, Retro-reflestive tape of with $0 ‘um will be used a guide forthe mobile robot. The plastic pip (hollow cylinder) has an Jtemal dimeter of 50 mm and extemal diamsterof 60 mm, The height ofthe pipe can be differen, berween 20 mm to $0 mm, in steps of 10 mm. The gate shall have a clearance of 300 mm wide and limit in height of 300 mm. The exact loeation ofthe gate will nt be made known until the competition, but shall be constrained between 450:mm = AUTONOMOUS MOBILE ROBOT | 2014 ‘and 750 mm ftom the stating base lin, in steps of 50 mm, The lower SO mm of the gate shall be made reto- reflective for sensing purposes. 3. Robot Specification “The robot must be slf-onsined apd fully atonomexs, ie, no external power or con. The rbot mast fit within the sar asa Befoe testa ofthe competion, i, 200 mm wide nd 10 ‘mm long Theres at beight init The oho mus not weigh more than Sk 1.4, Schedule and Planning, LA. Time Planning Date ‘Brief Decision Week2 | Hojo. 26/or Week| 27/03..0y02 Week| 0302-902 Weeks 6/02 Weeks | 1702-2902 Week| 2702. 0x03 Weeks | 003 o9/03 Week n Mechanial Design & Prototyping tectonics & Programming & Fine Tulag “Troubleshooting & Report Compiling Compation nig ‘ubiion of Report and Fa 5am ‘ue Ss bee ames s89908 “TFT ‘102 | LOMOWaTIGON SROWONOLAY AUTONOMOUS MOBILE RaBOT _ | 2014 2, CONCEPTUAL DESIGN 2.1. Feasibility Study A feasibiiy study have been perfonm to evaluate the prstclty and desirability forthe sutonomous mobile bot project. The feasibility study for selection of option of design mainly consider the areas as following, ‘+ Machines avilable for fbrcsting the parts and component of robot ‘+ ems availble for purchase at Singapore which reduce fabrication cost at condition of inted option of machine is availabe fo eam member use ‘+ Designa sable robot sable to pick and place the ball with good reliability ‘+ Design a unigue structure to differentiate with oter groups commonly used 2.2. Conceptual Design of Chassis Some ofthe important fstors that considered during selection of cha ‘+ Rigid enough to take the overall weight + Ease of machining to reduce cost ‘+ Simple design forthe ease of ssembly/ssssembly ‘+ Spacious enough to install l part ike ar, bttery, MCU ee ‘+ Dimension must be within 200mm(L) and 1S0mm(W) ‘+ Ground height must below to attain better CG ‘+ Design such a way that all the weight wil concentrate to centre of chassis otha (0G can be balanced easily, Choices for the base plate of chasis Hevagoral shapes ——Aesthetiely Unique cl to fabricate AUTONOMOUS MOBILE ROBOT ———— Ee a ee “Table 2-1: Comparison of Chassis Design Choiees forthe mover ‘abana Highest manewverablty Higher eeliabily ase! sped Drawbacts Highest cost, Nood more motor driver por. Compleat sofware irestion contro not easy ‘Aivaatages Easy contol algorithm. Fastest peed. Stable runing. Drawbacks Highest cost. Need more motor driver port. Complicate software eins “Tack wheel set - Stable Easy consol algorithm, Small turning rd. Drawbacks Moe mechanical pars, Very slow velocity Direction contol not easy ‘Table 2-2: Mover Design Option Comparison TT AuTONOMOUS MoBILEROBOT —_| 2014 2.3. Conceptual Design of Arm Lis of consideration on design: 4 Rigid end song enough to cary the bal and gripper mechanism, “+ Mechanism must be light so that minimm powers wilized to operate it ‘+ Flexible enough to cater forthe range of motion that is required fo achieve the project objective “+ Simplistic design to reduce fabrication cost and ease of assemblydisassembly ‘+The length must be suliient wo pick and place the ball. 1+ i-must beable to move tothe speifie location, pick the bal, tun to other side su place i ‘+ Design to get the shortest path foram so thatthe task can be complete within the shortespssible ime, ‘+ To achieve maxims speed posible ‘Tae concepusl design it a modular arm shown belo, Figure 2-1: Arm Design Option A AvTonoMousmosiLéRovoT [2014 ‘The advantage ofthis design i, a i's e-explanatery, it's modula, st will make the {abrcaton ease. Consists only two basic components, one is motor gear box the send fone is conection bat: Due to the complexity we encountered during fabrication, ‘modification is made to make it eve simpler Inthe finalized design, one servo motor is sett connect to other servo motor wit connection bracket which sown a Figure 23. igure 2-2: Arm Design Option B 2.4, Conceptual Design of Gripper List of considerations on design: ‘+ Gripper must be simple and easy tobe fabricated, ‘Gripper must be ight enough fr serv ti. ‘+ Gripper need to open & close quickly + Gripper ned to leat ens ball securely. ‘Gripper must beable to grip the ball and old while swinging, 1+ Gripper must be rigid. = AUTONOMOUS MOBILEROBOT | 2014 The conceptual design is shown belo: Figure 23: Gripper Design Option A Gripper fabricated by engineering plastic 4 four bar linkage coanected toa servo mover by worm gear While the fnaliod design consist fingers and two arms, one am is iven by serv0 motor, The shape ofthe $ finger, Figure 2-4, i designed that it can provide better griping Figure 24: Gripper Design Option B <7 AUTONOMOUS MOI rosor | 2014 “The fonmer design is abandoned daring fabrication. Reason i simple, compared to finalized design i's much more complicated tobe fabricated, It needs to include CNC and Inser cat, in conta, the design curently use only need to use laser et In aspect of ‘atria, febrication of the conceptual design wil ned blocks of wood and servic boar, while the current design. 3. DETAIL DESIGN OF ROBOT 3. Design Technical Calculations: Mobility Number of Axis: 4+ Gripper Servo Voltage: 60 Volt ‘Range of Motion per Axis: 0-180" 3.1.2, Design Technical Calculations: Degree of Freedom Figure 31: Degree of Freedom = AuTONOMOUSMoBILEROBOT | 2014 By Grubler's Equation, Degree of Freedom, M=3 (oe)—291 2 =3664)=204)-0 Where n: Number of Links ‘1: Nunber of One Degree of Freedom Joint, £2: Namber of Fwo Degree of Freedom Joint 3.13. Design Technical Calculations: Shoulder ‘The weight of the shoulder (inste the 2 Bracket ASB-201, ASB-204;) andthe weight {in 3 a around 900g, And the distance fot rotating center 1 gravity centr is around 15cm. The torque required i 47m 3.14, Design Technical Calculations: Arm “The weight ofthe ams (lcude the aluminum ube AT-O3 and 2 Tubing Connector Hub 'HUB.08, 2 "L* Connector ASB-06, mounting stews) snd the weight in 2s around 3404, And the distance from rotting cemer to gravity center is Sem, The torque rouied is ‘T= 03g * 250m = 8 Skgsm-0 834Ne 3.15. Design Technical Calculations: Gripper + Gripper (opencloseymotor For tis motor we just need it to drive the gripper finger open, close and hold at the position. The torque required is quit low, and so We chose the servo-motor with low torque and small size to reduce the weight. + Gripper (upldown)motor rowot _| 2014 AUTONOMOUS MOI This motors required to move the gripper with emis up and down, “The weight of the gripper (wth motor in 1, tennis sensor, basket) if 200g. And the distance from rotating center to gravity enter Sem, the torque required “T= 0.2kg * 6em= 1 2k¢.em=0.118Nm 3.1.6 Design Technical Caleulations: Rota Top view Side view Figure 3.2: Gravity Center “The weight ofthe whole arm asembly is around 1.2kg, and the distance from rotating center to gravity cee it aound 12em. The one requled is skgem=1.413Nm 2kg* Hem Paleulations: DC Motor 342. Design Technical 21cm The diameter forthe wheel weselected _D=42mm, For the Max weight is $ kg, and so the tou MAX torque is) Tmax 5°2.1=10.Skgem=103Nm = AUTONOMOUS MOBILE ROBOT _—_| 2014 We are using 2 motor and so for each the MAX torque cannot exceed 5.25kg.m-0 S1SNen “The DC motor we sleted ie SKU: RBT.01262 with torque 30 oz in (0.206Nm) withthe ea aio 100:, and sot can provide sulicint torque, ‘32, Robot CAD Design 8.2, Scratches Drawing Figure 3.3: Seatches of Robot AuronomousmopiLeRonoT —_| 2014 3.22, Detail Design of Chassis Figure 3-4 Assembly View of Chasis AUTONOMOUS MOBILE ROBOT _| 2014 3.2.3. Detail Design of Arm Figure 36: Assembly View of Arm Figure 37: Exploded View of Goppee AurowoMous MOBILE ROBOT —_| 2014 3.24, Detail Design of Gripper Figure 9: Exploded View of Gripper wD AUTONOMOUS MOBILEROBOT _| 2014 3.25, Overall Design of Robot Figure 310: Assembly View of Robot AuTONOMOUSMoBILEROBOT __| 2014 3.3.Component Fabsleation & Outsourcin Top Base ‘Mouning plate for Push Button, Power Switch Laser Cuting Materia: Aerie Astschment fe sensor to Base pte Laser Cuing Material: Acrylic Gepperassemble for griping tennis all Laser Cutting AUTONOMOUS MOBILEROBOT | 2014 rem FEATURE | PROCESS Maer: Stainless Stet a oui pe | Tung & Ding foe Motor, hess, Battery and sensor. Mari: anu Laser Citing & Joint beween | Bending Bucand Am | (Ousouee) 8 wall towe Mater: uninum Laser Cig & Bending Drake in é (Outsource) Baseto Am Materia ARS Cuiper | Plas nection assenblefor | (Ousouce) siping emis wal AUTONOMOUS MOBILE ROBOT = ee ls atl re ‘& Drilling Mowe “Mounting The (Outs ) Bracket on “Table 3-1: Components of Robot = AUTONOMOUS MOBIL rozor [2014 3.4. lectronic Control Design 34. Mi Electronic Component Selection NO PICTURE | pescriprion Arduino Leonardo (with headers) Hitec HS-648MG High Toque Servo Motor Hits HS-80S Analog ‘Meza Quarter Scale Seo Hitec 18-7558 Analog Quarter Seale Servo Hitec HS-485H8 Deluxe Analog Servo = AUTONOMOUS MoRILE ROBOT —_| 2014 NO PICTURE DESCRIPTION IR Sersor (Digital 5 i | Oo Analog) Re <0 Battery (°V) Push Button Switch Gear Motor “Motor Driver Shield 1298 H-Bidge AUTONOMOUS MOBILEROBOT | 2014 Polola High Curent (7A) Voltage ‘Regular DISFTORSS3 TAY Step Down To sv “Table 3-2: Elesronie Components of Robot 3.42. Servo Motors Seleeto Servo motor are selet mainly du factors i. Dimension ii, Basines of gesting from market ii, Maximum torque capable jv. Input voltage ow are the detail servo selection forthe mobile robo, ‘+ Servo Motor for Shoulder “The servo motor, HITEC HS-48SHB is selected based on the amount of torque required to provide the rotating plate to rotate in rotational moson to meet the desired turning angle. It must be able to suppor the gripper and arm + Servo Motor for Elbow “The sero motor, HITEC HS-S0SBBY fs selected berase it must be able to provide & high output torque to hold the welght ofthe arm and gripper “This servo motors pivoted onthe topside ofthe ing plate whichis used 10 consol the elevation of the rear am. 1+ Servo Motor forthe Wrist —----—s XT AvToNoMoUSMoBILEROBOT _| 2014 “The servo motor, HITEC HS-7SSHB is select based on the smeount of torque required 8 the linkage between the on and ea ans terete a incr motion ‘+ Servo Motor for Gripper "The servo motor, HITEC HS-G45MG is selected based onthe amount of torque required to provide the gripper to oat na rotational motion to cesta pulling motion, + Serve Motor for Gripper ‘The servo motor, HITEC HS-311 i selected based oa the ameunt of torque required to actuate the gripping ation AuToNoMoUsMoBiLeRoBOT | 2014 343. Clreut Design & Wiring “The schematic diagram of the electronic overview i illustrated in Figure below. The ‘main electronic components used te the microcontroller beard, power supply and servo ‘Ardunino Leonardo Figure 3-11: Robot Control Ckeuit —+-sT "Poor oF 95 ands weg seeT ‘nip aang p11 omy “eae UOTE SE] UNG O1eaN aN GN SIXEN SDN ST Sa BT aR ORS BATT ati SRIMO IONS soe gl-|=)-|=[-fo]-[=| oan ruven s0 mse 107 “L004 HTIGON SHONONOLAY he oT [a HN ND FomY ALMA S—[ ASRS [8 Fagor sey | onog a5 sup eA Sey sma-SH OTT | —— wasn ——| ago OH 0095 Fmmy 2ST GHSH-SH =H users ar : ands pas ro av = or z = s = Sanaa [se aT Tas SH eae sovasy [er [ara TAOS OD PRT rocasy——[ er aaa x) PAG. HOT HHH corasy [i aman ssodng ON CN wozesy for | se Tan | 6 z srasy | $¢ z sane T ey | 9 r FLOM SH |— ORTS-SH Mp MPEG MOEN jousy [st i Ho SSHOHO CONSH-SHND MPU, D, WS rasy [ie ET io S454 swag | ee i SAW EH wae aria [ce H Sano was ro6ttod [te - STOR Sar tne ET osr10d [oF = SCARE A A OS soar 10d | 62 © et ee ee Ea 1 Smee wamrarct wea somegusraree | eyo an | & z = Tana LD RO TRE test0a_— | 5 1 = Sneed | Tory sajon anopdns wano-uHTOT | eSsabuasTa | se “a | ae | ang San oxen [NS W107 “LOWOW HuIHOW SnOWONOAN Jee mum g0 me 18 7 = eas Sa, = 5 : Hr BOA = » : SaaS rR | = anos Saco Le |e E Sno icons | i Sas soso ous | 9 : ae curse | 65 - 05 toons 85 = aS scauruaa — [is : anes srao0rna 95 : aegis ws0ous [5 : SS 15 : ss a = OHH a = ago} 10H [SOIL OND an. TH ONSISH TH Dnswsi [1s Tee | ining SHEN ound [NS voz “TOaOWSTHGON SHONONOLAV AUTONOMOUS MoBILERoBOT [2014 4, PROGRAMMING “The programming code for controlling the robot mainly consist four parts which are tod a8 following andthe rest of deal code refer to appendix fr chapter 4 1) Mover controlling code used to conto the robot move tothe location before pick ‘nd place the tenis ball 2) Servo controlling code wsed to conto all five servo to execate the fnetion of pick and place the tennis all 53) Ball scanning coe wed to find the ball location a X-Y plane by seanning the ball 4) Pash button code used to activate the robot 19 move 4.1.Push button Code const in inPin= 10; Input button oni pia 10 ‘if (GigitalReadnPin) —- HIGH Pash burton start program seins} } 42. Mover Control Code (Define Funston: Diving mover to son location, coded by Hu Sanhan void move ToL. action) { int midleSensorStop = analogRead(uCeter); wile (nidleSeasorStcp > iThresbld ) 0 int postonVal = readLine) 1 Get calibrated reading along withthe line position int eror= posiionVel- calibrated; int motorSpeed = Kp * noe "Ki (enor lastBron); laste = ero, int rightMotorSpeed ~ speelLeve2 + motorSpeed; int leRMotorSpeed~ speedL-ve2 -moterSpeed; 1 (iahtMotorSpoed > rightMaxSpeed)rightMotorSpeed = ighMaxSpeed; if (leftMotorSpecd > lelfMaxSpe)leftMotorSpeed = leRMaxSpeeds, ‘M(GighiMotorSpecd < 68) rightMotrSpeed = 50; 5 (letMotorpeed < 64) letMotorSpeed = 50; righSensorVal) empVal = callbrtedVal ~ abecalibrtedVal-(le'SensorVal + middleSensorVel + rightSensorVa)) elseif (leftSensrVal< right SensorVal) empVal=lef'ensorVal + midleSensorVal + righ’SensorVal} 43.Servo Control Code u sll sers ftom sat angle to end anale, coded by Hus Fal ‘void servoMovetit servolD, it startAngle, it endAngl, int servoSpeed) { 'f( stamAngle< endAngle) { for(int t myServos{servlD] write delayservoSpeod), ) , ‘tse if (strtAngle > endAngle) { or it i= stanAngle; i> endAnge; i) { ‘myServs{servD]. write) Aela(aervoSpeed) stAngle; i Ie; posrpos-1) ‘ myServos{. writes) ‘AngPost2 = analokead(distSensr), ‘elay20), ave2= pos; if(AngPoste > 250) t break; ) ? aveTotal (avel +a¥62)2 ervoMove(0 ave, aveTotal, 20), retura(aveTotl) } — AUTONOMOUS MoBILEROBOT | 2014 5, IMPROVEMENT 5.1. Upgrading of Base Plate “Two main features are upgraded as shown in the figure below ri Figure 5-1: Upgrading Base Pte Lo Feature indicated in point is the space to place the two rear wheel The space is increased afer tril run so that etre wheel willbe within the red doted lie 19 make sre that no par ofthe robot went ou ofthe dimension imi, { ‘As point indicated, three more sts of holes se added forthe positioning of the three infrared Sensors atthe rst. sO AvToNoMousMoRILERoBOT —_ | 5.2.Upgrading of Effector Before uprading, the gear presented inthe left figure is eat together with end effector ‘am from 2 whole piece of srylic. However, we find thet due to the allowance of the laser cut machine and the shriakage of the material the matching of two gears ae not 0d enough Ta solve this problem, we modified the CAD drawing, cut out the gripper arm without ss0r tached, bought two gears instead of cu it by ourelves, intepated the am to the eer After searching forthe ger in hardware shop for quite a while, we sucesshily find two ars which ean perfectly met out requirement, The rest ofthe soltion turns ou to be a Figure 5-2: Upgrading of Gripper 5.3.Upgrading of Methodology of Sean Program [Afr the rbot moves from stating position to the end of the white tac, it needs to move is gripper accurtly tothe location of the ball Though theoretically, che ball, shouldbe atthe let side of the robo, precisely 9 "9 clock position, however in fat i's ‘very dificult to make the position where the robo stop i the end at that perfect position. ‘Based on our observation, the angular devition is usally within 30 degree. AUTONOMOUS MoBILEROBOT | 2014 Figure 5.3: Uperaing of Methodology of Scan Program fore upgrading version The infrared sensor wil scan from 180 degre to 150 degree. The angular postion which produced the largest and second largest cuput wil e found ou the average of them wll be stored as avel, (Analog output wil increase asthe distance between the object and sensor decrease) After tha, the sensor will san fom 150 degree to 180 degree and the robot wll gt the ave2 Finally, we get eloulate the average of avel and ave? and tha’ the angular potion of the ball with respect o ur soba. To increase the stability and accursy ofthe sean process we upgrade the methodology Alter upgrading version Sensor starts to scan fom 180 degtoe rotating clockwise uni the analog output ge stop rotating and record the angular poston 1, Sensor rotates to 150 positon and start to san counter clockwise until the analog output gets bigee ‘han 250, top rotting and resord the angule position 2. The average of angular pstion 1 and 2 the angular postion ofthe entre ofthe ball, —----— XT AUTONOMOUS MOBILE ROBOT 5.4, Upgrading of Arm Position During Travelling ‘A Git, during the traveling for the stating position to the end ofthe white wack, the ‘obo am rensins same postion! as shown below. Signa I duetohien erovty an —— Figure 5: Changing of Arm Position During Traveling However the outcome is very dissppoining, in our design there're tre infared sensors the font o detect the white ape and sel analog signal 0 adjust the speed of the two ‘whee tthe rear so that the robot can move alone the whit tape, now the fasetion oully doesnt ork ‘After almost thre hours inspection, we find that when the robot runing with its arm in positon the gravity ofthe whole rbot cause the rear wheels bit ied up, makes the contact between the whe! and ground so less thatthe adjusting ia speed can't turn ito the effect of moving direction adjustment. ‘Ass soltion, we lower down the am position? so that she rear two wheels are in all, contet with the ground ——-----s XS AUTONOMOUS MOBILEROBOT | 2014 5.5, Upgrading of Bal Picking “Thebeight ofthe holder ofthe tennis ball varies from 20mm to SOmm, The mai problem eoded to tickle isthe calculation of angle of shoulder and elbow and wrist of rbot arm, ‘The theoretical soliton isto make use of the CAD software. By adjusting constrain condition accordingly, we ean easly andintanly get the angles [Figure $: Upgrading of Ball Picking However practically, the CAD simulation can ony give usa set of angle whic isan ‘approximation of the angle we want. The better the simulation the closer fom approximation to the exact angle we intend to get. We se te set of angle generated fom CCAD is used a a reference and manually adjust the angle of each joints tha the gripper ‘sn grab the ball at difewent height, forunately the fine tuning was pretty straight forward a ou simulation is pretty god. L —r AuToNoMoUS MoBILEROBOT _—_| 2014 (Our plan is to get 13 sts of angle corresponding to ball holder height fom 20mm to ‘0mm with 2.Smm as terval. During our testing, we find that, with the angle used for ‘abot to grab ballin the holder at height 20mm can atwally manage o grab ballin the ‘olde tight from 20 to 25 mm, Aer futher investigation into that esl, ou robot ‘managed to grab ball in bolder at height from 20 to $0 with only 4 sts of angle for shoulder elbow and wrist respectively “Tobe $1: Upgrading of Ball Picking 6. DISCUSSIONS 6.1. Strengths ofthe Design ‘+ Accurate control and high flexibility and repeatability. ‘This robot isa truly “intellectual” robot. It integrated 4 infrared sensors to contol the ‘movement and dession makiag. The thee inffred sensors on the base make the robot, capable of running slone the white tse with auto ligament. The infared sensor atthe ‘ripperis ike an eye ofthe robt, othe robot can accurately find the bal by sll, + Craftsmanship. Most ofthe components of mechanism in our robot are fabricated by our group member [Even the wiring are seriously consider during design session, we careflly designed the al the bracket and plates making sre the space fr wise it is arranged so nicely that it ‘ives the rbot a more presentable appearance, and result ina ble circuit rib. —-- AUTONOMOUS MOBILEROBOT | 2014 6.2. Weakness ofthe Design “The only weakness in our design i the selection of motor forthe two whel, it gives us 2 ‘vey unsatisfying sped in running, takes the robot about 8 seconds to move pass the “whole arena. And we didnt manage to improve it duet lack of ine 7. CONCLUSION Sincere thanks again forthe guidance of our ter Pro Quan ChengGen. Winning the ‘competition it notin the priority lists for he entire project, the experience and confidence sined daring design, discussion, programming, fabrication and fine tuning i, Staring fom seth to final product was the vill factor. The working processes enable team members capable of wing of diferent kinds of mechanism, programming and crc sccomplsha give ask AuTONOMOUSMoBILEROBOT _| 2014 APPENDIX AUTONOMOUS MoBILE ROBOT _| 2014 include 1 Depending on how to wie the motors, may need to swap = Added by Hua anHang define CW 0//Clockwse Aéefine CCW 1 //Counter-cockwise iene MOTOR AO// Left motor Aetine MOTOR. 1// Right motor Aéetine SERVO_10 5 / Servo 1D (Oto 4) cone int rightMaxSpeed = 250; // max speed ofthe robot ‘cone inte anSpeed = 250; // max speedaf the rbot ‘one int speedLevel = 200 //set motor tothe sped before stop (010255) ‘ons intspeedLeved = 220 //set motor tothe speed before stop (010255) Note: Pin dssgnments & Don't change there! These pins are satay defined by shield layout ‘one byte PWMA= 3; // PM contra (speed) for motor A ‘cone byte PWM = 11: Pa contol speed) for motor 8 ‘const byte IRA = 12; // Direction conta for motor A ‘const byte IRB = 13;//Drecton conta fr motor 8 ‘const int eSensor=0;_// tlie sensoris en pn AO const intieft=1;_//eltine sensor ison pin AL ons nt Center =2; feline sersrisen pn A2 ons nt Right = 3 /f Rip lin sensors on pin AS ons int nPin = 10; / Input button on dg pin 10 ons int Threshold» 750; / et IR Sensor sensor cut-off point ons it caliratedal = 2500; // ths vate s fom calraton value minus 150 Intlsteror=0; // Used in move to postion flost Kp =0.23;//Propartionparametor 5; [] megraon parameter ‘CODE FOR a 2 erate servo objets to contol a servoes ‘ase = myServs[0); shoul = mySerost] elbow = mySeresll; wrist = mySeros(; tipper = myServose] Serva mySeros{SRV0_1D| i setng picking bal Angles adjusted by Yechao& anhang f 1 eng ange fr picking bal for b= 207mm ok ‘const int shulderlekAnle= 83; const int ebowPichangie= 117; const int wristickAng 4 setting ane fr pekng ball for h= 307mm ok ‘const int shoulderPcange» 66; ons int elbowickAngle = 117; Eons int wetPeAngle = 152; one int gnpperPcbAnae= 5 " 17 sttng ane or peig bal fo const int shulderPekAngle = 63; re — AUTONOMOUS NOBILE ROBOT _| 2014 cons int elbowPickangle = 16; cons int writichargie = 148; const int eiperPebtngle = a; a 1 setng ange for picking bal for h= 50mm ok const int shulderPckangle= 65; const int ebowPickangle = 117; const int wristPickAngle = 15; const int wriperckAnae 7 ting are or placing bal Angles ajsted by YeChao & Janae ‘ors int basePlacetetngl #165; // need plus scan angie 166 of aveTotal ‘const it shuldePlaceAnge = 90; const int elbowPaceingle = 132; one it writPaceangle = 140; ors int aripperPacegle= 120; ot ett) t ‘setupardumott // Stal pas as outputs rmyServoso] attach) // taches the sero on pln tothe bas servo rmyServost] attach} // aches the servo on pin tothe shoulder servo myServos] attach) taches the servo on pin 6 othe elbow servo ryservosattaeh 7h // attaches the Servo on pla 70 the WHS Se¥0 thyServos] attach / attaches the ero on pln 80th gripper sero Pnetodelinin, INPUT): , voidloopt) ¢ 1 tep 0: emt ita pestion ‘nyservs[0 wie); / base servo to goto postion 10 deg ely, ‘nyservs{t} wite105) shoulder servo to go to postion 115 deg aly, ‘ySeror(2 wrtets);// elbow servo to goto poston 45 deg aay, ‘nyseros{3] wite60); // wis servo to goto poston 180 de ely}, myserves{4] wite$0); / ripper servo tog to ose postion 50 deg ely, i (igtaeadtnFn) = HIGH] // Pushbutton ta tart program 1 elayso0, 1/5tep 4 mtn posiion bore mover forward ServoMove2, 45, 135,10} // elbow servo to go to postion 150 deg “RePENORT AUTONOMOUS MOBILE ROBOT _| 2014 ey servoMove, 105155, 10); // shoulder servo to got positon 150 deg ely, ServoMovelé, 0,125, 5); // Gripper sero to goto open position 125 deg ey), 1 step 2: Move robot picking postion ‘devekrdumotoJMOTOR A, CW, 200; ‘tvekrdumotolMOTOR®, CW, 200; ely 150, ‘moveTocaton) the mover got plein lecaton 1 stag 3 Arm to positon before SCANNING ServeMovei, 55,120, 10; //stouler sero ServoMovel0 95,0, 1} // base sere ServoMove2, 135, 132,10; // elbow servo ServoMove(1, 120, 6,10); //shouléer servo ferveMovel3, 160, 158,10) // wrist sew 1) 5tep 4: SCANNING int gevveTotal = scanFunction(0;35); // Move am to mide plane of bl befor picking 11095: Goto picking postion servoMovel2, 132, elbowPickAnge, 10); // elbow servo serveMovel 80, shouldrPiceArge, 10}; shoulder sew ServeMovel3, 160, wistPckAnge, 10); // wrist see ServeMovels, 125, grpperickArele, 10; // ripper servo 11 5tap 6: Prepare am before rotate SeroMvel, shoulerPict Ange, 130, 10); shoulder servo move before rotate ServoMavel elbowFickAngle, 130, 10); // elbow servo move before rotate {Step T:Moveto placing postion Ine basetiaeangle = getaveTotal+basePlacefetAng servoMovel0, etaveTotl basePiaceAngl, 10; base servo to goto pacing postion servoMavel3 ariticngle, wristPacedagle, 10); // wit seve servoMovel, 130, shoulderPacenngl, 10): / shoulder sero move before placing ServeMovel2, 130, elbowPlaceAnge, 10); // elbow servo servMove(, tipperckAnge,gipperPlacedagle, I; // zipper servo whl) /stop here continue loo inside , ’ 11 Define Function: Moving the Mover to leactin for picking ball= Added by Hua anHang, ‘oid moveTaLocation() 1 “Wrenn a AUTONOMOUS MOBILE ROBOT | 2014 Int midaesencortop = analogRealicerter hile (midleSensorstep>irTreshoi nt posionval= eadLne);// Get ealirated easing along wth the line positon Int eror= positional cloratedVa Int motorpeed=Kp* ear Ki (ero lastron: ‘aneror= err, IntghtMotorspeed = peedLeve2 + motorSpeed: int leftMotarSpeed=speed.eved-motorSpeed; i lvighifotorspeed>rightMaxSpeec) right MotorSpeed = igtMasSpec i (leftotorSpeed > IeMaxSpeed) letMotorspeed = ltMaxSpeed i ightotorspe=d <8) rehtMotorspeed=50, i llstMotorSpeed 68 letMetorSpeed = 5 “rvesrdumotolMOTOR.A, CW, lefMoterspeed) // Motor Forward ‘rvekedumotelMOTOR 8, OW, rightMoterspedh; // Motor 8 Forward int midsleSensorstop = araogReadirCenter; i (idlesensorstop <= ifTvesho} { ‘iveArdumotoJMOTOR.8, COW, speedLevel;// Motor 8 Backwara ‘ivesrdumoto)MOTOR_A, CCW, speectevel;// Motor A Backward ely); stophvdumoto(MOTOR Al, // Motor AStop SopArdumatofMOTOR 8) // Motor 8 stop break } ) ) fine Function: stupAcdumota tlie al pins== Aes by Hua an Hang vod setupardumott) { pinMode(PWIMA, OUTPUT) Al pis should be setup as OUTPUT pinMoce(Pwn, OUTPUT pinMode(OIRA, OUTPUT): pinMode(OI8, OUTPUT): ‘igtalwtePWM, LOW): iti al pins asLOW dgtalwetewns, Low) figtalwrne(OIRA, tow digealwritef1Re, LOW), , {fbefine Functions: deveArdumat dives motor n'a retin at's speed ‘oid dvenedumoto(byte motor, byte ir, byte spd) ¢ motor MoTOR.A) ePENORT ae AUTONOMOUS MOBILE ROBOT _| 2014 cl dgtatwritefORA i snalogWtlOWMA, dptatwrte018, cin; alogWite(PWN, pd; ‘Hoefine Functions: stopArdumoto makes a motor top ‘void topardumotoyte motor) c devehrdumotofmeto, 0,0 , ‘{foefine Function: Read move poston fom 3 sensrs-= Added by Hua ion Hana ingreadune() Int templal «0, int eSenterVal = anlogReaditeft) ead hele sensor on AL Int mideesenserval = anlogheastCente) Rea the et sensor on A2 Int ghtsensorval = anaogRead fight); //Read te right sensor connected AS I ltsensorval> rightSensorVall//need left turn ==> Motor < Mato {tempal»albratedVal+abs{cliratedalleftSensorVal+mideeSensoral + righsensorva)) theif (eRSenscVel Motark ieftSensrval+ midleSencorvalsghSensorVa) fine Function: Mowe serves rom stat angle to end angle by sweepe= by Hua JanHant ‘old servoMovelint served, int startAngl, int endl, nt ervaspeed) { ‘(statange endAngle) t APPENOR, AUTONOMOUS MoBILE ROBOT —_| 2014 for inti tartan > endl) t myServosserolD writ felayserospeed, } } ‘eli Function: ean ba postion a planssbelow ade on 2014.03.11 by Ba Ye Chao Int seanFuneiontint ent rat) t cone nt istSensor=0; Int argposo1=0, Int argposo2=0 Int averoro; Intavet-, inter, for it pos = ef; pos «at ‘ imyservosi)witlpos); ‘AngPos0 »analogReac{astSensor|; aly(20, vel = pos; (angPos0t > 250) ( ‘servoMove(, pos, right, 20) // base sero break } , 1) for int os rit pos> et; po ‘ myServoso) write(pos ‘ngs » analogRead{dstSensor); ely(20}; He? = pos i (angPost2 > 250) ‘ ) 1 veal (avel + ave): ServoMovel0, vez, veTotal 20; // base servo return(aveTotal ) sr

Das könnte Ihnen auch gefallen