Stimpson Servicemanual Grupp Unimate: IS1204 IT projekt del 2, Autonoma Inbyggda System Karl Axel Zander, Mathias Persson, Fredrik Hagnell, Linus Petersson, Bevin Hansson, Viktor Karlquist Team Unimate 2012 05 16 Sida 1
Innehållsförteckning Inledning... 3 Mätinstrumentet Stimpmetern... 3 Hur roboten fungerar... 3 Hur man använder roboten... 4 Mekanik... 7 Elektronik... 9 Mjukvara... 12 Ritningar... 13 Kretsscheman... 16 Materiallista... 20 Felsökning... 21 Programkod... 21 Team Unimate 2012 05 16 Sida 2
Inledning Robotens funktion är att mäta rullmotståndet på underlag. Huvudfunktionen och tänkta användningsområde: att mäta snabbheten på greener på golfbanor. Inom detta område finns ett utvecklat standardiserat mätinstrument kallad Stimpmeter, vilket är en ränna av aluminium som är utformad för att rulla iväg golfbollar med en konstant hastighet som vi utnyttjar och har byggt in ett exemplar av i roboten för att utföra mätningarna med. Idén och tanken med att utveckla en robot som automatiserar hanterandet av mätinstrumentet är för att stimpmätning är en tidskrävande men simpel syssla som enkelt skulle kunna utföras av en robot. Servicemanualen innehåller information om hur Stimpson är byggd och hur den används. Mätinstrumentet Stimpmetern Se databladet Datablad_Stimpmeter för beskrivning om instrumentets utseende, funktion och hur den används. Hur roboten fungerar Rampen (Stimpmetern) är inbyggd i en rampanordning som gör det möjligt för den höjas och sänkas. I början av ett mätningsförsök är rampen upphöjd från marken och lutar något bakåt. Vid bollhålet längst bak på rampen (där en boll ligger placerad) sitter en sensor som registerar om en boll ligger där eller inte. När roboten ska rulla iväg en boll så höjs rampen tills bollen rullar ut från hålet, sensorn känner av detta och stoppar rampen för att höjas ytterligare. Rampen sänks och slår mot en microbrytare i bottenläget som förhindrar att rampen sänks för långt. När bollen har rullat iväg från rampen och ut på underlaget så är nästa uppgift för roboten att hitta bollen och mäta den sträcka bollen har rullat. Bollen har rullat en okänd sträcka i en okänd riktning, men då kravet för instrumentet att mätområdet ska vara i princip helt plant för att det ska ge acceptabla resultat så kan roboten köra efter i samma riktning som bollen rullade iväg i och anta att bollen inte har avvikit mer från denna linje än uppsamlarens bredd (vilket motsvarar robotens bredd). Roboten kör i denna riktning tills att bollen har upptäcks med hjälp av sensorer framtill och sträckan mäts med hjälp av vinkelhastighetsmätare på hjulen. Detta värde sparas och slås ihop med efterföljande mätningsförsök och summeras i slutet av mätningsessionen till ett medelvärde vilket som blir det slutliga resultatet. Skulle inte bollen hittas efter en bestämd maxsträcka så stängs mätsessionen av med ett felmedelande. En mätningssession består av sex stycken mätningsförsök, tre mätningsförsök åt varje håll. Sista steget i mätningsförsöket är att få tillbaka bollen upp på rampen. När bollen har detekterats kör roboten fram ytterligare en bit så att bollen ligger precis framför uppsamlingsanordningen. Efter detta puttar uppsamlaren upp bollen på rampänden och håller den kvar där medan rampen höjs till dess att bollen börjar rulla bakåt tillbaka till hålet bak i rampen. När detta är gjort gör roboten en 180-graders sväng och påbörjar nästa mätningsförsök i motsatt riktning. Team Unimate 2012 05 16 Sida 3
Se även videon Demonstration_ Stimpson. Hur man använder roboten Lyfta och dra roboten Roboten har ett handtag som kan fällas ner vid mätsessioner och vid förvaring. Roboten kan lyftas i handtaget och dras som en vagn. Då framhjulen är låsta av motorerna måste de vara över marken då roboten dras samtidigt som inte roboten lyfts för mycket så att bakändan släpas i marken. Roboten lyfts bäst på något av följande sätt: Roboten dras Team Unimate 2012 05 16 Sida 4
Lyft i handtaget och hisställningen Lyft i chassibalken och hisställningen Kontroller Roboten styrs med knapparna och switcharna på DE2-brädan. Team Unimate 2012 05 16 Sida 5
Bilden visar vilka knappar och switchar på DE2-brädan som gör vad Göra en mätningssession Roboten ska ställas på greenen på ena kortsidan av en lämpligt vald ca 15x9 fot (~5x3 meter) så plant och rent område som möjligt och riktas mot den andra kortsidan. Kontrollera att bollen ligger i hålet i rampen och tryck på startknappen. När roboten har kört och avslutat mätningssessionen så kan resultatvärdet läsas av på segmentdisplayen. Byta och ladda batterier Två parallellkopplade skruvdragarbatterier som driver DE2-brädan och sensorerna finns inne i roboten. Öppna chassiluckan, koppla ut batterierna och ladda med tillhörande laddare. Ett batteri kan bytas i taget utan att roboten behöver stängas av. Team Unimate 2012 05 16 Sida 6
Roboten inuti Ett större batteri som driver drivmotorerna som sitter baktill kopplas ut och laddas med tillhörande laddare. Mekanik Chassi Den främre delen av chassit är gjort av ett datorchassi och bakdelen är gjord av en lång plåtbit. Dessa är fästa i varandra med popnitar och är stabiliserade med hjälp av styva träplankor och en metallbalk i fronten av chassit. Fronten har ett avtagbart lock för att skydda all elektronik inuti roboten. Ovanpå chassit finns en låda av plexiglas gjord för DE2-brädan. På insidan av chassit finns det även en låda av plexiglas för att kunna stoppa undan kablar och elektronikkomponenter så att de inte ligger i vägen för rampen. Det finns även en hållare i chassit där man kan ställa två skruvdragarbatterier för delar av robotens strömförsörjning. Hjulbas och drivning Roboten har fyra hjul, bakhjulen är svänghjul (kundsvagnshjulmodellen) som sitter fast i en upphöjd metallplatta (för att få önskad hög markfrigång) som är fäst i chassit med hjälp av vinkeljärn. Framhjulen som är hjul tagna från en golfvagn är drivhjulen. De har en urskuren skåra i mitten där drivremmar (gummiband) är fästa och sedan dragna till axlar fästa i skruvdragarmotorer längre bak. Skruvdragarna matas med 12V vid full kraft och kan även oscilleras (snabbt stängas av och på) för att få dem att gå långsammare. Då det är separata drivkretsar till varje framhjul kan båda hjulen styras oberoende av varandra. Framhjulen sitter via en hjulaxel fast i kullager på insidan av chassit. Team Unimate 2012 05 16 Sida 7
Rampanordning För att kunna lyfta och sänka rampen krävs det en ganska hög lyftanordning. Rampen är fäst via ett plastsnöre längst bak till en axel längst upp på anordningen. Denna axel drivs av en skruvdragarmotor som via utväxling på två större golfvagnshjul hissas upp och sänks i en långsam kontrollerad hastighet. I främre delen av anordningen sitter rampen också fast i en stabilisator som ser till att rampen inte kan böjas av i sidled eller åka fram och tillbaka mer än nödvändigt. Anordningen är gjord i trä och är fäst i chassit med hjälp av vinkeljärn och popnitar. Uppsamlare Uppsamlaren liknar en träpropeller som kan putta in bollen mot rampänden och kan hålla den kvar där. En fast planka ifrån locket går ner för att skarva på propellern så att bollen hålls kvar på rampkanten medan den höjs tills att bollen börjar rulla bakåt. Propellern har olika förbestämda lägen så att bladen befinner sig i rätt lägen vid en viss tid. Bollen har hamnat mellan propellerbladen Team Unimate 2012 05 16 Sida 8
Propellern snurrar och puttar in bollen Elektronik Hitta bollen För att hitta bollen som rullat iväg från rampen används en IR-sändare och IR-mottagare. Sändaren lyser konstant med våglängden 940 nm. När detta ljus träffat mottagaren släpper den igenom ström och man får en etta ut till DE2-brädan. När roboten rullar fram och en golfboll bryter strålen kommer detta att göra att ingen ström släpps igenom hos mottagaren och detta registreras då som en nolla. Team Unimate 2012 05 16 Sida 9
IR-mottagaren Bollen ligger i hålet på rampen På samma sätt som vid hitta bollen består denna krets av en IR-sändare och en IR-mottagare. När bollen ligger i hålet bryts strålen och man får en nolla och när bollen har rullat iväg detekterar mottagaren sändaren och man får en etta. Motorstyrning För att motorerna ska kunna styras av signaler från DE2-brädan används reläer. Vinkelhastighetsmätare Då roboten behöver kunna mäta sträcka och kunna åka helt rakt i en riktning behövs något sätt att veta hur långt varje hjul har åkt. För att uppnå detta sitter det en vinkelhastighetsmätare på varje hjul som med hjälp av en reflexdetektor kan mäta hur långt varje hjul har åkt. Om det ena hjulet åker längre än det andra kan då roboten kompensera detta genom att snabbt stänga av motorn till det hjul som har gått för långt. På detta sätt åker roboten alltid rakt och då den vet hur långt varje hjul åkt kan man även få ut sträckan den åkt. Team Unimate 2012 05 16 Sida 10
Egengjord vinkelhastighetsmätare Mikrobrytare För att stoppa rampen i rätt position när den sänks ner används en mikrobrytare. När rampen sänks och trycker ner knappen på mikrobrytaren skickas en signal till DE2-brädan som då stoppar rampmotorn från att ytterligare sänka rampen. På samma sätt används en mikrobrytare som sitter monterad uppe i rampanordningen tillhörande uppsamlaranordningen som stoppar rampen när den höjts till rätt läge (högre än läget då bollen rullar ned för rampen). DE2-brädan på batteridrift DE2-brädan kräver en spänning mellan 7V och 12V för att drivas säkert. För att DE2-brädan ska kunna drivas på 12V-skruvdragarbatterier så behövs en krets för att reglera spänningen. För att sänka spänningen används en spänningsregulator som reglerar spänningen från 12V till ca 9,5V. Batterier Ett 12V (9 Ah) driver robotens drivmotorer och vinschen medan två 12V (1 Ah) parallellkopplade skruvdragarbatterier driver DE2-brädan och sensorerna. Parallellkopplingen förutom ökad kapacitet möjliggör byte av batterier utan att stänga av roboten (ett batteri i parallellkopplingen byts i taget). För att det ena batteriet inte ska ladda upp det andra används dioder som hindrar ström att gå från det ena batteriet till det andra. Team Unimate 2012 05 16 Sida 11
Mjukvara Stimpsons mjukvara är i huvudsak baserad på ideer från en tidigare robot, Arora (som i sin tur har kod från en ännu tidigare robot, VR-09). Mjukvaran består av ett eventsystem, där events lagras i en prioritetskö. Prioritetskön är ordnad på ett sådant sätt att det eventet som skall köras snarast är längst fram i kön. På så sätt kan man sätta att events ska köras vid en viss tidpunkt (eller efter en viss tid har gått) samtidigt som annan kod kan köras periodiskt. Kodbasen består av två huvuddelar och diverse hjälpkod tagen från en tidigare kurs. Den ena delen, maincode, innehåller eventloopen och annan allmän kod (inportar, utportar, periodiska oscillationer) som kan tillämpas på vilken robot som helst. Den andra delen, usercode, innehåller specifik kod för Stimpson. Denna kod kallas från maincodes eventloop genom två uppdateringsmetoder, en för knappar och switchar på kontrollbrädan och en för inportar. Maincode tillhandahåller också metoder för att hämta switch- och inportstillstånd. Stimpson använder också en enkel tillståndsmaskin för att hålla reda på var bollen befinner sig. Beroende på hur inportstillstånden ändrar sig, byter Stimpson mellan tillstånden för att bestämma hur den ska bete sig. Det finns tillstånd för när bollen ligger uppe på rampen, när den är på väg ner, när den är utanför roboten, och så vidare. Team Unimate 2012 05 16 Sida 12
Ritningar Team Unimate 2012 05 16 Sida 13
Team Unimate 2012 05 16 Sida 14
Se även CAD-filen Robot-assembly för hela modellen i 3D. Team Unimate 2012 05 16 Sida 15
Kretsscheman Pins Hitta bollen Team Unimate 2012 05 16 Sida 16
Bollen ligger i hålet på rampen Motorstyrning till drivning Motorstyrning till ramphissen Team Unimate 2012 05 16 Sida 17
Vinkelhastighetsmätare Mikrobrytare Batteridrift Team Unimate 2012 05 16 Sida 18
Uppsamlarmotor Team Unimate 2012 05 16 Sida 19
Materiallista 1x DE2 bräda 1x 12V (9Ah) batteri (Biltema 80256) 3x Skruvdragare 12V 8Nm (batterier 1 Ah) (Jula 060205) 1x Stimpmeter 2x Microbrytare (Clas Ohlson 36 47 69) 1x Servomotor Futaba fp s28 2x Reflexdetektorer (Elfa 75 344 72) 1x Spänningsregulator (Elfa 73 092 63) 2x Relä (Kjell & Company 36102) 1x H brygga (Elfa 73 132 29) 2x Transistorer NPN (Elfa 71 103 80) 4x Likriktardiod (Elfa 70 093 49) 3x Kondensatorer 100 mf 1x IR fotodiod (Elfa 75 220 30) 1x IR diod (Elfa 75 225 35) 1x IR fototransistor (Elfa 75 203 15) 1x IR diod (Elfa 75 203 56) Diverse: trä, plåt, metall, kablar, resistorer, hjul (från golfbagvagnar), skruvar, muttrar, popnitar, buntband, vinkelbeslag, plexiglas, tejp, plastsnöre, gummiband Team Unimate 2012 05 16 Sida 20
Felsökning DE2 brädan och/eller roboten startar inte - Kontrollera att batterierna är laddade och inkopplade Någon av robotens funktion fungerar inte som den ska - Kontrollera att IDE-sladden är inkopplad i DE2-brädan och att molex-kontakterna är kopplade rätt - Kontrollera att sensorer inte har blivit skeva, de måste riktas rakt mot varandra - Kontrollera att microbrytare är intakta - Kontrollera att någon konstruktionsanordning inte har lossnat eller gått sönder Drivmotorerna fungerar inte som de ska, tex roboten åker snett - Konrollera att drivremmarna (gummibanden) inte sitter för tight så att drivaxeln böjs - Kontrollera att vinkelhastighetsskivorna inte riktats snett eller för långt ifrån sensorn - Drivremmarna slits ut, de kan behöva ersättas då och då - Kontrollera att motorerna sitter väl fast i chassit Programkod Se zip-arkivet Stimpson_Code. Team Unimate 2012 05 16 Sida 21