Indholdsfortegnelse:

Autonomt bordfodboldbord: 5 trin (med billeder)
Autonomt bordfodboldbord: 5 trin (med billeder)

Video: Autonomt bordfodboldbord: 5 trin (med billeder)

Video: Autonomt bordfodboldbord: 5 trin (med billeder)
Video: IONIQ 6 vs IONIQ 5 Comparison 2024, November
Anonim
Autonomt bordfodboldbord
Autonomt bordfodboldbord
Autonomt bordfodboldbord
Autonomt bordfodboldbord
Autonomt bordfodboldbord
Autonomt bordfodboldbord

Hovedprojektmålet var at færdiggøre en fungerende prototype til et Autonomous Foosball Table (AFT), hvor en menneskelig spiller står over for en robotmodstander. Fra spillets menneskelige perspektiv ligner bordfodboldbordet meget et almindeligt bord. Spilleren / spillerne på den menneskelige side styres via en serie på fire håndtag, der kan flyttes ind og ud og roteres for at flytte spillerne lineært hen over spillefeltet og sparke bolden mod modstanderens mål. Den autonome side består af:> Otte servomotorer, der bruges til at manipulere håndtagene på bordfodboldbordet> En mikrokontroller til at aktivere servomotorer og kommunikere med computeren> Et over-head monteret webcam til at spore bolden og spillere> En computer til behandling webcam -billederne, implementere kunstig intelligens og kommunikere med mikrokontrolleren Budgetbegrænsninger for prototypen bremsede projektet nogle og holdt dets funktionalitet til et minimum. Korrekte motorer til at flytte spillerne med en konkurrencedygtig hastighed viste sig at være meget dyre, så der skulle bruges lavere servoer. Mens denne særlige implementering var begrænset af omkostninger og tid, ville et større gearforhold give en hurtigere spilende robot, selvom det ville koste mere end $ 500 basisprisen (pris uden strømforsyning og computer).

Trin 1: Montering af motorstyringskortet

Montering af motorstyringskortet
Montering af motorstyringskortet
Montering af motorstyringskortet
Montering af motorstyringskortet
Montering af motorstyringskortet
Montering af motorstyringskortet
Montering af motorstyringskortet
Montering af motorstyringskortet

De vedhæftede billeder er et fuldstændigt kredsløbsskema samt et billede af det endelige produkt til motorens styrekort. Alle disse nødvendige dele kan købes i de fleste større online elektronikforretninger (inklusive Digi-Key og Mouser. Som en sidebemærkning var alle de dele, der blev brugt her, gennem hul, og derfor kan delene samles på et protoboard/brødbræt, eller ved hjælp af det vedhæftede PCB -design. En meget mindre pakke kunne oprettes ved hjælp af et antal overflademonterede dele. Da vi implementerede designet, delte vi motorstyringerne i 2 kredsløb, selvom der ikke er nogen fordel ved at gøre det andet end enhver bestemt kabelføring anvendt. Den lille blå tavle implementerer PWM-styrekredsløbet, som stort set bare er en clocked PIC-12F med en specialiseret kode.

Trin 2: Servomotormontering

Servomotor samling
Servomotor samling
Servomotor samling
Servomotor samling
Servomotor samling
Servomotor samling

To forskellige typer servoer bruges. For det første styres den laterale bevægelse af en gruppe på fire servomotorer med højt drejningsmoment: Robotis Dynamixel Tribotix AX-12. Disse fire kører på en enkelt serielinje og giver fantastisk funktionalitet. Det høje drejningsmoment gør det muligt for disse servoer at blive gearet på en sådan måde, at de giver en høj tangentialhastighed til sideværts bevægelse. Vi var i stand til at finde et sæt 3,5 tommer gear og spor til at gå med dem fra Grainger til en pris på omkring $ 10 for hver. Servoerne giver momentoverbelastningsbeskyttelse, et individuelt servo-adresseringsskema, hurtig kommunikation, intern temperaturovervågning, tovejskommunikation osv. Ulempen ved disse servoer er, at de er dyre og ikke særlig hurtige (selvom gearing hjælper dem). Så for at få hurtigere bevægelse til spark, bruges Hitec HS-81'er. HS-81'erne er relativt billige, har en anstændig hurtig vinkelhastighed og er nemme at tilslutte (standard PWM). HS-81'erne roterer dog kun 90 grader (selvom det er muligt-og ikke anbefales-at forsøge at ændre dem til 180 grader). Derudover har de indvendige nylonhjul, der let fjernes, hvis du forsøger at ændre servoen. Det ville være pengene værd at finde en 180 graders roterende servo, der har denne type vinkelhastighed. Hele systemet er bundet sammen med stykker af medium-density fiberboard (MDF) og high-density fiberboard (HDF). Dette blev valgt på grund af de lave omkostninger (~ $ 5 for et 6'x4 'ark), let skæring og evnen til at grænseflade med stort set enhver overflade. En mere permanent løsning ville være at bearbejde aluminiumsbeslag for at holde alt sammen. Skruerne, der holder PWM -servoerne på plads, er standard maskinskruer (#10s) med sekskantmøtrikker, der holder dem fra den anden side. 1 mm metriske maskinskruer, ca. 3/4 i længden, holder AX-12 ind i MDF'en, der forbinder de to servoer. Et dobbeltvirkende skuffespor holder hele samlingen nede og på linje med sporet.

Trin 3: Software

Software
Software

Det sidste trin er at installere al den software, der bruges på maskinen. Dette består af et par enkelte stykker kode:> Koden køres på billedbehandlings-pc'en> Koden køres på PIC-18F mikrokontrolleren> Koden køres på hver af PIC-12F mikrokontrollerne Der er to forudsætninger for at installere på billedbehandlingen PC. Billedbehandlingen udføres via Java Media Framework (JMF), som er tilgængelig via Sun her. Java Communications API er også tilgængelig via Sun og bruges til at kommunikere til motorens styrekort på tværs af den serielle port på computeren. Det smukke ved at bruge Java er, at det * skal * køre på ethvert operativsystem, selvom vi brugte Ubuntu, en Linux -distribution. I modsætning til den almindelige opfattelse er behandlingshastigheden i Java ikke så dårlig, især i grundlæggende looping (som visionanalyse bruger en hel del). Som det ses på skærmbilledet, spores både bolden og modstanderens spillere på hver frame -opdatering. Derudover er bordets kontur placeret visuelt, hvorfor blå malertape blev brugt til at skabe en visuel kontur. Mål registreres, når computeren ikke kan lokalisere bolden i 10 på hinanden følgende rammer, hvilket typisk angiver, at bolden faldt i målet uden for spillefladen. Når dette sker, starter softwaren en lyd-byte til enten at heppe sig selv eller boo modstanderen, afhængigt af målets retning. Et bedre system, selvom vi ikke havde tid til at implementere det, ville være at bruge et simpelt infrarødt sender/sensorpar til at registrere bolden falde i målet. Al den software, der bruges i dette projekt, er tilgængelig i en enkelt zip -fil, her. Brug javac -kommandoen til at kompilere Java -koden. PIC-18F- og PIC-12F-koden distribueres med Microchips MPLAB-software.

Trin 4: Webcam Mount

Webcam Mount
Webcam Mount

Der blev brugt et Philips SPC-900NC webcam, selvom det ikke anbefales. Specifikationerne for dette kamera blev forfalsket enten af ingeniør- eller salgspersonale hos Philips. I stedet ville ethvert billigt webcam gøre det, så længe det understøttes af operativsystemet. For mere information om brugen af webkameraer under linux, tjek denne side. Vi målte afstanden, som webkameraets brændvidde krævede for at passe hele fodboldbordet i rammen. For denne kameramodel viste det tal sig at være lidt over 5 fod. Vi brugte reoler, der fås fra enhver større isenkræmmer, til at bygge en holder til kameraet. Hyldestativene strækker sig opad fra hvert af de fire hjørner af bordet og krydses af vinklede aluminiumsbeslag. Det er meget vigtigt, at kameraet er centreret og ikke har nogen vinkelrotation, da softwaren antager, at x- og y-aksen er justeret til bordet.

Trin 5: Konklusion

Alle de relaterede projektfiler kan downloades på dette websted. En sikkerhedskopi af størstedelen af webstedets indhold kan findes her på min personlige webhost. Dette inkluderer den endelige rapport, der har en marketinganalyse samt ting, vi ville ændre, vores oprindelige mål og en liste over, hvilke specifikationer der faktisk blev opnået. Projektet er IKKE beregnet til at være den mest konkurrencedygtige spiller i verden. Det er et godt værktøj til at vise flere af de trin, der bruges til at designe et sådant dyr, samt en anstændig prototype af denne type robot bygget til en utrolig lav pris. Der er andre sådanne robotter i verden, og helt sikkert ville mange af dem "slå" denne robot. Dette projekt blev designet af en gruppe på fire elektriske/computeringeniører ved Georgia Tech som et seniordesignprojekt. Ingen mekaniske ingeniører modtog ingen hjælp, og der blev ikke brugt tredjemands finansiering. Det var en stor læringsproces for os alle og en anstændig brug af seniordesignkursustid. Jeg vil gerne takke> Dr. James Hamblen, vores sektionsrådgiver, for hans løbende hjælp til tekniske strategier> Dr. Jennifer Michaels, den ledende professor, for ikke at have afskrækket os fra at forsøge et mere ambitiøst projekt> James Steinberg og Edgar Jones, senior designlaboratorierne, for konstant hjælp til at bestille dele, fejlfinding og finde de "fede ting" til at kaste ind i projektet til lave omkostninger og høj funktionalitet> Og selvfølgelig de andre tre medlemmer af mit team, hvoraf intet af dette ville have været muligt: Michael Aeberhard, Evan Tarr og Nardis Walker.

Anbefalede: