Turinys:

Autonominis stalo futbolo stalas: 5 žingsniai (su nuotraukomis)
Autonominis stalo futbolo stalas: 5 žingsniai (su nuotraukomis)

Video: Autonominis stalo futbolo stalas: 5 žingsniai (su nuotraukomis)

Video: Autonominis stalo futbolo stalas: 5 žingsniai (su nuotraukomis)
Video: Meistro dienoraštis. Kaip pakabinti lentyną ir nudažyti radiatorių 2024, Liepa
Anonim
Autonominis stalo futbolo stalas
Autonominis stalo futbolo stalas
Autonominis stalo futbolo stalas
Autonominis stalo futbolo stalas
Autonominis stalo futbolo stalas
Autonominis stalo futbolo stalas

Pagrindinis projekto tikslas buvo užbaigti autonominio futbolo stalo (AFT) veikimo prototipą, kuriame žmogaus žaidėjas susiduria su robotu priešininku. Žmogaus požiūriu, futbolo stalas yra labai panašus į įprastą stalą. Žaidėjas (-ai) žmogaus pusėje yra valdomas iš keturių rankenų, kurias galima įstumti ir išstumti ir pasukti, kad žaidėjai linijiškai judėtų per žaidimo lauką ir spirtų į priešininko vartus. Autonominę pusę sudaro:> aštuoni servo varikliai, naudojami manipuliuoti futbolo stalo rankenomis> mikrovaldiklis, skirtas įjungti servo variklius ir bendrauti su kompiuteriu interneto kameros vaizdus, įdiegti dirbtinį intelektą ir bendrauti su mikrovaldikliu Biudžeto apribojimai prototipui šiek tiek sulėtino projektą ir sumažino jo funkcionalumą. Nustatyta, kad tinkami varikliai, skirti žaidėjams judėti konkurenciniu greičiu, yra labai brangūs, todėl reikėjo naudoti žemesnės klasės servo sistemas. Nors šį konkretų įgyvendinimą ribojo išlaidos ir laikas, didesnis pavarų santykis leistų greičiau žaisti robotui, nors tai kainuotų daugiau nei 500 USD bazinė kaina (kaina be maitinimo šaltinio ir kompiuterio).

1 žingsnis: Variklio valdymo plokštės surinkimas

Variklio valdymo plokštės surinkimas
Variklio valdymo plokštės surinkimas
Variklio valdymo plokštės surinkimas
Variklio valdymo plokštės surinkimas
Variklio valdymo plokštės surinkimas
Variklio valdymo plokštės surinkimas
Variklio valdymo plokštės surinkimas
Variklio valdymo plokštės surinkimas

Pridedami vaizdai yra visos grandinės schema, taip pat galutinio variklio valdymo plokštės produkto nuotrauka. Visas šias reikalingas dalis galima įsigyti daugumoje pagrindinių internetinių elektronikos parduotuvių (įskaitant „Digi-Key“ir „Mouser“. Kaip šalutinę pastabą, visos čia naudojamos dalys buvo per skylę, todėl dalys gali būti surenkamos ant protoboard/boardboard) arba naudojant pridedamą PCB dizainą. Daug mažesnį paketą būtų galima sukurti naudojant keletą ant paviršiaus montuojamų dalių. Kai mes įgyvendinome dizainą, mes padalijome variklio valdiklius į 2 grandines, nors tai nėra naudinga. Maža mėlyna plokštė įgyvendina PWM valdymo grandinę, kuri iš esmės yra tik laikrodinis PIC-12F su tam tikru specialiu kodu.

2 žingsnis: Servo variklio surinkimas

Servo variklio surinkimas
Servo variklio surinkimas
Servo variklio surinkimas
Servo variklio surinkimas
Servo variklio surinkimas
Servo variklio surinkimas

Naudojami du skirtingi servo tipai. Pirma, šoninį judesį valdo keturių didelio sukimo momento servo grupė: „Robotis Dynamixel Tribotix AX-12“. Šie keturi veikia vienoje serijinėje linijoje ir suteikia nuostabų funkcionalumą. Didelis sukimo momentas leidžia šiuos servo variklius paversti taip, kad būtų užtikrintas didelis tangentinis greitis šoniniam judėjimui. Mums pavyko rasti 3,5 colio krumpliaračių ir vikšrų rinkinį, skirtą jiems iš Graingerio, kainuojantį apie 10 USD už kiekvieną. Servos suteikia apsaugą nuo sukimo momento perkrovos, individualią servo adresavimo schemą, greitą ryšį, vidinės temperatūros stebėjimą, dvipusį ryšį ir tt Šių servų trūkumas yra tai, kad jie yra brangūs ir nėra labai greiti (nors pavarų dėžė jiems padeda). Taigi, norint greičiau judėti smūgiuojant, naudojami „Hitec HS-81“. HS-81 yra palyginti nebrangūs, pasižymi pakankamai dideliu kampiniu greičiu ir yra lengvai sujungiami (standartinis PWM). Tačiau HS-81 sukasi tik 90 laipsnių (nors galima ir nerekomenduojama bandyti juos pakeisti iki 180 laipsnių). Be to, jie turi vidines nailonines pavaras, kurios lengvai nusisuka, jei bandote pakeisti servo. Būtų verta rasti 180 laipsnių besisukančią servo sistemą, turinčią tokio tipo kampinį greitį. Visa sistema yra susieta su vidutinio tankio medienos plaušų plokštės (MDF) ir didelio tankio medienos plaušų plokštės (HDF) gabalėliais. Tai buvo pasirinkta dėl mažos kainos (~ 5 USD už 6'x4 'lapą), paprastą pjovimą ir galimybę sąveikauti su beveik bet kokiu paviršiumi. Nuolatinis sprendimas būtų apdirbti aliuminio laikiklius, kad viskas būtų kartu. Varžtai, laikantys PWM servos, yra standartiniai mašininiai varžtai (#10s) su šešiakampėmis veržlėmis, laikančiomis juos iš kitos pusės. 1 mm metriniai mašinos varžtai, maždaug 3/4 colio ilgio, laiko AX-12 į MDF, jungiantį abi servo sistemas. Dvigubo veikimo stalčių takelis visą agregatą laiko žemyn ir atitinka liniją.

3 žingsnis: programinė įranga

Programinė įranga
Programinė įranga

Paskutinis žingsnis yra įdiegti visą mašinoje naudojamą programinę įrangą. Jį sudaro keli atskiri kodo vienetai:> kodas paleidžiamas vaizdo apdorojimo kompiuteryje> kodas vykdomas naudojant PIC-18F mikrovaldiklį> kodas vykdomas kiekviename iš PIC-12F mikrovaldiklių. Yra dvi būtinos sąlygos vaizdo apdorojimui įdiegti PC. Vaizdų apdorojimas atliekamas naudojant „Java Media Framework“(JMF), kurį čia galima rasti per „Sun“. Taip pat prieinama per „Sun“, „Java Communications“API naudojama bendrauti su variklio valdymo plokšte per kompiuterio nuoseklųjį prievadą. „Java“naudojimo grožis yra tas, kad ji * turėtų veikti bet kurioje operacinėje sistemoje, nors mes naudojome „Ubuntu“, „Linux“platinimą. Priešingai populiarių nuomonių, „Java“apdorojimo greitis nėra labai blogas, ypač atliekant pagrindinį ciklą (kuris vizijos analizėje naudoja gana mažai). Kaip matyti ekrano kopijoje, tiek kamuoliuko, tiek priešininko žaidėjai yra stebimi kiekvieną kartą atnaujinant kadrą. Be to, lentelės kontūras yra vizualiai išdėstytas, todėl vizualiam kontūrui sukurti buvo naudojama mėlyna tapytojų juosta. Įvarčiai užregistruojami, kai kompiuteris negali rasti kamuolio 10 kadrų iš eilės, paprastai nurodydamas, kad kamuolys nukrito į vartus nuo žaidimo paviršiaus. Kai tai atsitiks, programinė įranga inicijuoja garso baitą, norėdama nudžiuginti save arba pabučiuoti priešininką, priklausomai nuo tikslo krypties. Geresnė sistema, nors mes neturėjome laiko ją įgyvendinti, būtų paprasta infraraudonųjų spindulių spinduliuotės/jutiklio pora, skirta aptikti kamuolį, patenkantį į vartus. Visa šiame projekte naudojama programinė įranga yra viename ZIP faile, čia. Norėdami sudaryti „Java“kodą, naudokite komandą javac. PIC-18F ir PIC-12F kodas platinamas naudojant „Microchip“MPLAB programinę įrangą.

4 žingsnis: internetinės kameros tvirtinimas

Interneto kameros laikiklis
Interneto kameros laikiklis

Buvo naudojama „Philips SPC-900NC“internetinė kamera, nors ji nerekomenduojama. Šio fotoaparato specifikacijas suklastojo „Philips“inžinieriai ar pardavėjai. Vietoj to, bet kokia pigi internetinė kamera tai padarytų, jei ją palaiko operacinė sistema. Norėdami gauti daugiau informacijos apie internetinių kamerų naudojimą naudojant „Linux“, apsilankykite šiame puslapyje. Mes išmatavome atstumą, kurio reikia, kad vaizdo kameros židinio nuotolis atitiktų visą rutulyje esantį stalo futbolo stalą. Šio fotoaparato modeliui šis skaičius pasirodė šiek tiek didesnis nei 5 pėdos. Norėdami sukurti fotoaparato laikiklį, naudojome lentynas, kurias galima įsigyti bet kurioje pagrindinėje techninės įrangos parduotuvėje. Lentynų lentynos tęsiasi aukštyn nuo kiekvieno iš keturių stalo kampų ir yra sukryžiuotos kampuotais aliuminio laikikliais. Labai svarbu, kad fotoaparatas būtų centre ir neturėtų kampinio sukimosi, nes programinė įranga daro prielaidą, kad x ir y ašys yra suderintos su lentele.

5 žingsnis: Išvada

Visus susijusius projekto failus galima atsisiųsti iš šios svetainės. Daugumos svetainės turinio atsargines kopijas galite rasti čia, mano asmeniniame žiniatinklio priegloboje. Tai apima galutinę ataskaitą, kurioje pateikiama rinkodaros analizė, taip pat tai, ką mes keistume, mūsų pirminius tikslus ir sąrašą, kokios specifikacijos buvo iš tikrųjų pasiektos. Projektas NĖRA skirtas tapti konkurencingiausiu žaidėju pasaulyje. Tai geras įrankis parodyti daugiau žingsnių, naudojamų kuriant tokį žvėrį, taip pat padorus šio tipo roboto prototipas, sukurtas už neįtikėtinai mažą kainą. Pasaulyje yra ir kitų tokių robotų, ir tikrai, daugelis jų šį robotą „įveiks“. Šį projektą sukūrė keturių „Georgia Tech“elektros/kompiuterių inžinierių grupė kaip vyresnysis projektavimo projektas. Jokios mechanikos inžinieriai nesulaukė pagalbos ir nebuvo panaudotas trečiųjų šalių finansavimas. Tai buvo puikus mokymosi procesas mums visiems ir deramai panaudotas vyresniųjų dizaino kursų laikas. Norėčiau padėkoti> Dr. James Hamblen, mūsų skyriaus patarėjas, už jo nuolatinę pagalbą techninėse strategijose> Dr. Jennifer Michaels, vadovaujanti profesorė už tai, kad neatbaidė mūsų nuo bandymo siekti ambicingesnio projekto> Jamesas Steinbergas ir Edgaras Jonesas, vyresnieji projektavimo laboratorijos administratoriai, už nuolatinę pagalbą užsakant dalis, pašalinant gedimus ir surandant „šaunių dalykų“, kuriuos reikia išmesti į projektą už mažą kainą ir didelis funkcionalumas> Ir, žinoma, kiti trys mano komandos nariai, iš kurių nė vienas iš jų nebūtų buvęs įmanomas: Michaelas Aeberhardas, Evanas Tarras ir Nardis Walkeris.

Rekomenduojamas: