INHOUDSOPGAWE:

Outonome tafelvoetbal tafel: 5 stappe (met foto's)
Outonome tafelvoetbal tafel: 5 stappe (met foto's)

Video: Outonome tafelvoetbal tafel: 5 stappe (met foto's)

Video: Outonome tafelvoetbal tafel: 5 stappe (met foto's)
Video: MSC Seascape Full Ship Tour Tips Tricks & Review New Flagship Vista Megaship Project Italy 2024, Julie
Anonim
Outonome tafelvoetbal
Outonome tafelvoetbal
Outonome tafelvoetbal
Outonome tafelvoetbal
Outonome tafelvoetbal
Outonome tafelvoetbal

Die hoofdoel van die projek was om 'n werkende prototipe vir 'n Autonomous Foosball Table (AFT) te voltooi, waar 'n menslike speler 'n robot teenstander in die gesig staar. Vanuit die menslike oogpunt van die spel, is die tafelvoetbal baie soortgelyk aan 'n gewone tafel. Die speler (s) aan die menslike kant word beheer deur 'n reeks van vier handvatsels wat in en uit beweeg en gedraai kan word om die spelers lineêr oor die speelveld te beweeg en om die bal na die doelwit van die teenstander te skop. Die outonome kant bestaan uit:> Agt servomotore wat gebruik word om die handvatsels van die tafelvoetbal te manipuleer> 'n Mikrobeheerder om die servomotors te aktiveer en met die rekenaar te kommunikeer> 'n Webkamera wat oor die kop gemonteer is om die bal en spelers op te spoor> 'n Rekenaar om te verwerk die webkamera -beelde, implementeer kunsmatige intelligensie en kommunikeer met die mikrobeheerder. Begrotingsbeperkings vir die prototipe het die projek vertraag en die funksionaliteit tot die minimum beperk. Die regte motors om die spelers teen 'n mededingende spoed te laat beweeg, was baie duur, daarom moes laer-end servo's gebruik word. Dit kos meer as die basisprys van $ 500 (prys sonder kragtoevoer en rekenaar).

Stap 1: Monteer die motorbeheerraad

Die samestelling van die motorbeheerraad
Die samestelling van die motorbeheerraad
Die samestelling van die motorbeheerraad
Die samestelling van die motorbeheerraad
Die samestelling van die motorbeheerraad
Die samestelling van die motorbeheerraad
Die samestelling van die motorbeheerraad
Die samestelling van die motorbeheerraad

Die aangehegte beelde is 'n volledige stroombaan, sowel as 'n prentjie van die finale produk vir die motorbeheerbord. Al die benodigde onderdele kan by die meeste groot elektroniese winkels (insluitend Digi-Key en Mouser) gekoop word., of deur die aangehegte PCB -ontwerp te gebruik. 'n Baie kleiner pakket kan geskep word deur 'n aantal onderdele op die oppervlak te gebruik. enige klein kabelschema gebruik. Die klein blou bord implementeer die PWM-beheerkringe, wat basies net 'n PIC-12F met 'n spesiale kode is.

Stap 2: Servomotoriese samestelling

Servo motor vergadering
Servo motor vergadering
Servo motor vergadering
Servo motor vergadering
Servo motor vergadering
Servo motor vergadering

Twee verskillende soorte servo's word gebruik. Eerstens word die sybeweging beheer deur 'n groep van vier hoë-wring-servo's: Robotis Dynamixel Tribotix AX-12. Hierdie vier werk op 'n enkele reeks en bied ongelooflike funksies. Die hoë wringkrag stel hierdie servo's in staat om so gerat te word dat dit 'n hoë tangensnelheid vir sywaartse beweging bied. Ons kon 'n stel ratte en ritte van 3,5 duim vind om saam met Grainger te gaan, teen ongeveer $ 10 per stuk. Die servo's bied beskerming teen wringkrag, 'n individuele servo-aanspreekskema, vinnige kommunikasie, interne temperatuurmonitering, tweerigtingkommunikasie, ens. Die nadeel van hierdie servo's is dat dit duur en nie baie vinnig is nie (alhoewel versnelling hulle help). Om vinniger beweging vir skopwerk te kry, word Hitec HS-81s gebruik. Die HS-81's is relatief goedkoop, het 'n redelike vinnige hoeksnelheid en is maklik om te koppel (standaard PWM). Die HS-81s draai egter slegs 90 grade (alhoewel dit moontlik is-en nie aanbeveel nie-om dit tot 180 grade te verander). Boonop het hulle interne nylon -ratte wat maklik verwyder word as u die servo wil verander. Dit sal die geld werd wees om 'n roterende servo van 180 grade met 'n soort hoeksnelheid te vind. Die hele stelsel word verbind met stukke medium-digte veselbord (MDF) en veselplaat met hoë digtheid (HDF). Dit is gekies vir die lae koste (~ $ 5 vir 'n 6'x4 'vel), gemak om te sny en die vermoë om met feitlik enige oppervlak te koppel. 'N Meer permanente oplossing sou wees om aluminiumhakies te masjien om alles bymekaar te hou. Die skroewe wat die PWM -servo's op hul plek hou, is standaard masjienskroewe (#10s) met seskantmoere wat dit van die ander kant af hou. Metrieke skroewe van 1 mm, ongeveer 3/4 duim lank, hou die AX-12 vas in die MDF wat die twee servo's met mekaar verbind.

Stap 3: sagteware

Sagteware
Sagteware

Die laaste stap is om al die sagteware wat op die masjien gebruik word, te installeer. Dit bestaan uit 'n paar individuele stukke kode:> Die kode wat op die beeldverwerkings-rekenaar uitgevoer word> Die kode wat op die PIC-18F-mikrobeheerder uitgevoer word> Die kode wat op elk van die PIC-12F-mikrobeheerders uitgevoer is Daar is twee voorvereistes om op die beeldverwerking te installeer Rekenaar. Die beeldverwerking word gedoen deur die Java Media Framework (JMF), wat hier by Sun beskikbaar is. Die Java Communications API is ook beskikbaar via Sun, en word gebruik om met die motorbeheerbord te kommunikeer, oor die seriële poort op die rekenaar. Die voordeel van die gebruik van Java is dat dit * op enige bedryfstelsel moet * werk, alhoewel ons Ubuntu, 'n Linux -verspreiding, gebruik het. In teenstelling met die algemene mening, is die verwerkingsnelheid in Java nie te sleg nie, veral nie in basiese lus nie (wat visie -analise baie gebruik). Boonop is die buitelyn van die tafel visueel geleë, en daarom is blou skildersband gebruik om 'n visuele omtrek te maak. Doele word geregistreer wanneer die rekenaar die bal vir 10 opeenvolgende rame nie kan opspoor nie, wat gewoonlik dui aan dat die bal van die speelvlak af in die doel geval het. As dit gebeur, begin die sagteware 'n klankbyte om homself te juig of die teenstander te boei, afhangende van die rigting van die doel. 'N Beter stelsel, alhoewel ons nie die tyd gehad het om dit te implementeer nie, sou wees om 'n eenvoudige infrarooi emitter/sensorpaar te gebruik om die bal in die doel te sien val. Alle sagteware wat in hierdie projek gebruik word, is beskikbaar in 'n enkele zip -lêer, hier. Gebruik die javac -opdrag om die Java -kode saam te stel. Die PIC-18F en PIC-12F kode word versprei met Microchip se MPLAB sagteware.

Stap 4: Webcam -berging

Webcam -berging
Webcam -berging

'N Philips SPC-900NC webkamera is gebruik, hoewel dit nie aanbeveel word nie. Die spesifikasies vir hierdie kamera is deur die ingenieurs- of verkoopspersoneel van Philips vervals. In plaas daarvan sou 'n goedkoop webkamera dit doen, solank dit deur die bedryfstelsel ondersteun word. Vir meer inligting oor die gebruik van webcams onder Linux, kyk na hierdie bladsy. Ons het die afstand wat die brandpunt van die webcam benodig, gemeet om die hele tafelvoetbal in die raam te pas. Vir hierdie kameramodel blyk die getal net meer as 5 voet te wees. Ons het rakke gebruik wat by enige groot hardewarewinkel beskikbaar was om 'n houer vir die kamera te bou. Die rakrakke strek opwaarts vanaf elk van die vier hoeke van die tafel en word deur 'n skuins aluminiumhakie gekruis. Dit is baie belangrik dat die kamera gesentreer is en geen hoekrotasie het nie, aangesien die sagteware veronderstel dat die x- en y-as in lyn is met die tabel.

Stap 5: Gevolgtrekking

Alle verwante projeklêers kan op hierdie webwerf afgelaai word. 'N Rugsteun van die meerderheid van die webwerf -inhoud kan hier gevind word by my persoonlike webgasheer. Dit bevat die finale verslag, wat 'n bemarkingsanalise bevat, sowel as dinge wat ons sou verander, ons oorspronklike doelwitte en 'n lys van die spesifikasies wat eintlik bereik is. Die projek is NIE bedoel om die mededingendste speler ter wêreld te wees nie. Dit is 'n goeie hulpmiddel om meer te sien van die stappe wat gebruik word by die ontwerp van so 'n dier, sowel as 'n ordentlike prototipe van hierdie tipe robot wat teen 'n ongelooflike lae koste gebou is. Daar is ander sulke robotte in die wêreld, en baie van hulle sou hierdie robot beslis 'klop'. Hierdie projek is ontwerp deur 'n groep van vier elektriese/rekenaaringenieurs by Georgia Tech as 'n senior ontwerpprojek. Geen hulp is deur meganiese ingenieurs ontvang nie en geen befondsing van derde partye is gebruik nie. Dit was 'n wonderlike leerproses vir ons almal en 'n ordentlike benutting van die tyd vir senior ontwerpkursusse. Ek wil graag dankie sê> Dr. James Hamblen, ons afdelingadviseur, vir sy voortdurende hulp in tegniese strategieë> Dr. Jennifer Michaels, die hoofprofessor omdat ons ons nie ontmoedig het om 'n meer ambisieuse projek te probeer nie> James Steinberg en Edgar Jones, die senior ontwerpers van die ontwerpslaboratorium, vir konstante hulp by die bestelling van onderdele, probleemoplossing en die vind van die 'cool stuff' om teen 'n lae koste in die projek te gooi en hoë funksionaliteit> En natuurlik die ander drie lede van my span, waarvan niks hiervan moontlik sou gewees het nie: Michael Aeberhard, Evan Tarr en Nardis Walker.

Aanbeveel: