Robotika

Kako planirati jednostavnog robota pomoću Linuxa

Kako planirati jednostavnog robota pomoću Linuxa
Nakon što instalirate ROS, možda ćete htjeti izgraditi robota. Dobar način za uspjeh u ovom projektu je planiranje onoga što želite učiniti. U ovom slučaju ROS dolazi u pomoć. Pomoću ROS-a možete postaviti ono što ste izgradili i vizualizirati cijelu stvar. Kada radite s robotima, morat ćete razmotriti mnogo scenarija. Robot mora komunicirati s okolinom, poput izbjegavanja sofe i pronalaska puta natrag iz kuhinje. Robot bi također trebao imati ruke i noge ako to zahtijevaju vaše potrebe. Sve to možete simulirati pomoću ROS-a, a za dio kodiranja također možete simulirati unutarnje dijelove vašeg sustava.

Kako se izrađuje ROS robot?

Da bi sustav dobro radio i da biste mogli pratiti što će uređaj raditi u određenim situacijama, potrebne su vam standardne definicije za svaki dio. U ROS-u su ove komponente čvorovi, usluge i teme. Ukratko, stvorite po jedan čvor za svaku veću potrebu. Na primjer, kretanje je jedan čvor, vid je drugi čvor, a planiranje je treći čvor. Čvorovi sadrže usluge koje mogu slati informacije drugim čvorovima, a usluge također mogu obrađivati ​​zahtjeve i odgovore. Tema može emitirati vrijednosti na mnoge druge čvorove. Upoznavanje s ovim pojmovima i načinom na koji ih trebate koristiti prvi je ključ za savladavanje razvoja ROS2.

Oponašajte navigaciju kornjačama

Kada započnete s ROS-om, vjerojatno ćete kupiti robota koji se šeće ili se mota po vašoj kući. Da bi to učinio, robot mora imati pogled na područje u kojem se kreće. Da biste to učinili, možete upotrijebiti aplikaciju sličnu mapi kako biste testirali ponašanje svog robota. Dizajneri iza Turtlebota osmislili su aplikaciju koja se naziva turtlesim i koja to može učiniti za vas. Kao i kod svih ostalih dijelova ROS2, i ove alate možete pokrenuti podnaredbom iz naredbenog retka. Tada imate aktivnosti za različite funkcije. Prvi dio je pokretanje prozora u kojem možete vidjeti simulaciju, a to se naziva čvor.

$ ros2 pokreni kornjačicu kornjačicučvor

Pojavit će se prozor s Kornjačom u središtu. Da biste kornjačom upravljali pomoću tipkovnice, morate pokrenuti drugu naredbu koja ostaje otvorena i neprestano pritiskajte određene tipke. Ovo je drugi čvor koji komunicira s prvim.

$ ros2 pokreni kornjaču, kornjaču, ključ

Sada možete pomicati kornjaču i vidjeti kako se kreće. Možete dobiti i pogreške, poput udaranja u zid. Te se pogreške prikazuju u terminalu na kojem radi kornjačinski čvor. Ovo je najjednostavnija uporaba simulacijskog modula. Također možete trčati dane oblike, osiguran je kvadrat i dodati još kornjača. Da biste dodali još kornjača, možete upotrijebiti naredbu rqt.

Definirajte usluge s rqt

Program rqt pruža usluge simulacije. Q znači Qt, koji služi za rukovanje sučeljem. U ovom primjeru izričete novu kornjaču.

$ rqt

Sučelje rqt dugački je popis usluga za simulaciju koju pokrećete. Da biste stvorili novu kornjaču, odaberite padajući izbornik 'mrijest', dajte kornjači novo ime i kliknite 'poziv.»Odmah ćete vidjeti novu kornjaču pored prve. Ako kliknete padajući izbornik 'mrijest', vidjet ćete i novu hrpu unosa povezanih s netom mriještenom kornjačom.

Također možete remapirati naredbe za pokretanje nove kornjače. Naredba za to je sljedeća:

$ ros2 pokreni kornjačuim kornjačaleopkey -ros-args -remap kornjača1 / cmdvel: = kornjača2 / cmdvel

Postavite naziv "kornjača2", prema vašem ranijem izboru.

Napredno gledanje s Rvizom

Za naprednije i 3D gledanje upotrijebite rviz. Ovaj paket simulira sve čvorove u vašem dizajnu.

$ ros2 pokreni rviz2 rviz2

U grafičkom sučelju imate tri ploče s pogledom u sredini. Možete graditi okruženja pomoću ploče "Zasloni". Možete dodati zidove, sile vjetra i druga fizička svojstva. Ovdje također dodajete svoje robote.

Imajte na umu da ćete prije nego što dođete do ove točke morati razumjeti kako se koristi URDF format. URDF format definira robota, omogućavajući vam postavljanje tijela, ruku, nogu i, prije svega, zona sudara. Zone sudara su tamo, tako da simulacija može odlučiti je li se robot sudario.

Učenje o stvaranju robota u URDF formatu velik je projekt, pa upotrijebite postojeći kod otvorenog koda za eksperimentiranje s emulatorima.

Simulirajte fiziku s sjenicom

U Gazebu možete simulirati fiziku okoline koja okružuje vašeg robota. Sjenica je komplementarni program koji dobro funkcionira zajedno s rvizom. S Gazebom možete vidjeti što se zapravo događa; s rvizom pratite što robot otkriva. Kada vaš softver otkrije zid koji nije tu, Gazebo će pokazati prazno, a rviz će pokazati gdje je u vašem kodu zid stvoren.

Zaključak

Simulacija vašeg robota i njegovog okruženja neophodna je za pronalaženje grešaka i pružanje potrebnih poboljšanja u radu vašeg robota prije nego što ga izbacite u divljinu. Ovo je naporan proces koji se nastavlja dugo nakon što započnete testiranje bota, kako u kontroliranim okruženjima, tako i u stvarnom životu. Uz odgovarajuće znanje o infrastrukturi internih sustava vašeg robota, možete shvatiti što ste učinili ispravno i pogrešno. Naučite brzo uvažavati sve greške koje otkrijete, jer dugoročno mogu učiniti vaš sustav robusnijim.

Najbolji Linux Distros za igre na sreću 2021. godine
Linux operativni sustav daleko je prevalio svoj izvorni, jednostavni izgled zasnovan na poslužitelju. Ovaj se OS posljednjih godina izuzetno poboljšao...
Kako snimiti i struji svoju igraću sesiju na Linuxu
U prošlosti se igranje igara smatralo samo hobijem, ali s vremenom je igračka industrija zabilježila ogroman rast u pogledu tehnologije i broja igrača...
Najbolje igre za ručno praćenje
Oculus Quest nedavno je predstavio sjajnu ideju ručnog praćenja bez kontrolera. Sa sve većim brojem igara i aktivnosti koje izvršavaju podršku bilo fo...