La robotika yra besiplečianti sritis. Vis daugiau dirbtinio intelekto ir robotų pakeičia daugiau žmonių darbą. Jie yra dabartis ir ateitis, todėl svarbu mokytis šiose srityse, kad žinotumėte, kaip jos veikia ir kokius įrankius bei sistemas turite savo robotikos projektams. Ir jūs pamatysite šiame straipsnyje kas yra ROS ir viskas, ką apie tai reikia žinoti.
Kas yra ROS?
ROS reiškia Robot Operating System, arba roboto operacinė sistema. Tai yra tarpinė robotikos programinė įranga, tai yra struktūrų rinkinys, skirtas palengvinti robotams skirtos programinės įrangos kūrimą. Šiuo metu jis plačiai naudojamas gerai žinomuose robotuose, nes yra vienas geriausių šiandien prieinamų įrankių, visiškai nemokamas, parašytas C ir Python kalbomis ir pagal BSD atvirojo kodo licenciją.
Iš pradžių ROS buvo sukurta 2007 m Stanfordo dirbtinio intelekto laboratorija, ir kodiniu pavadinimu Switchyard. Iš pradžių tai būtų skirta STAIR2 roboto projektui. Po to buvo nuspręsta atidaryti.
Daugelis dažnai užduodami klausimą: jei tai nėra operacinė sistema, kodėl ji taip vadinama? Na, nors tai yra bibliotekų rinkinys, skirtas plėtrai, tiesa yra ta, kad ji suteikia kai kurias iš jų pagrindinės OS funkcijos, pavyzdžiui, aparatinės įrangos abstrakcijos sluoksnis, kad kūrėjai rūpintųsi tik programine įranga, skirtingų roboto komponentų valdymu žemu lygiu, procesų valdymo ir komunikacijos pajėgumais, paketų priežiūra ir kt.
Biblioteka yra orientuota į UNIX sistemos, kaip „Linux“ (keliuose platinimo įrenginiuose, nors geriausias palaikymas yra „Ubuntu“) ir „macOS“, nors jis taip pat veikia kitose operacinėse sistemose, pvz., „Microsoft Windows“.
Taip pat svarbu atskirti dalys iš ROS:
- Rožė: yra dalis, kuri veikia kaip operacinė sistema, bazė. Tai BSD licencijuotos programinės įrangos dalis. Tai apima pagrindinį koordinavimo mazgą, duomenų srautus (vaizdai, stereo, lazeris, valdymas, pavaros, kontaktas ir kt.), informacijos multipleksavimą, mazgų kūrimą ir naikinimą, prisijungimą ir kt.
- ros-pkg: yra vartotojų sukurtų paketų rinkinys, įgyvendinantis tokias funkcijas kaip planavimas, suvokimas, modeliavimas, žemėlapių sudarymas, vieta ir kt. Šie kiti komponentai yra licencijuoti pagal daugybę licencijų.
The įtraukti įrankiai ROS jie yra:
- rviz: modeliavimui ir 3D vizualizacijai.
- rosbag: įrašyti ir atkurti bendravimo pranešimus.
- katinas- Sukūrimo įrankis, pagrįstas CMake.
- rosbash- Paketas su įrankiais, siekiant išplėsti bash apvalkalo funkcionalumą.
- roslaunch: paleisti ROS mazgus vietoje arba nuotoliniu būdu.
ROS programos
ROS yra nuolat tobulinamas projektas ir kiekvieną kartą prie jo galima priprasti daugiau programų dirbtinio intelekto ir robotikos srityje ir kiekvieną kartą geriau atlieka savo darbą:
- Dirbtinio suvokimo sistemos.
- Objektų identifikavimas ir dirbtinis matymas.
- Veido atpažinimas, gestų atpažinimas ir kt.
- Objekto sekimas.
- Vizualinė odometrija.
- Judesių supratimas.
- Stereo vizija.
- Robotų mobilumas.
- Kontrolė.
- Planavimas.
- Sugriebti daiktai.
- Koordinacija.
- Testavimas.
- Ir tt
Robotų, naudojančių ROS, pavyzdžiai
Jų yra daug, ir būtų sunku juos visus išvardyti, nes daugeliui ROS tapo beveik „standartu“. Tačiau kai kurie geriausiai žinomas garsas:
- PR1: asmeninis robotas, sukurtas Keno Solsberio laboratorijoje Stanforde.
- PR2: asmeninis robotas, kurį kuria Willow Garage.
- Baksteris: robotas iš Rethink Robotics, Inc.
- Šešėlio robotas: robotinė ranka iš Shadow Robot kompanijos, bendradarbiaujant su Pierre ir Marie Curie universitetu Paryžiuje ir Carlos III universitetu Madride. Sukurta europinėje sistemoje.
- žolė: sukurta CMU pagal asmeninę „Intel“ korporacijos robotikos programą.
- Aldebaranas Nao– Humanoidinis robotas, sukurtas Humanoid Robots Labs ir Freiburgo universiteto.
- Husky UGV: antžeminė transporto priemonė ir atviras šaltinis.
Kodėl turėtumėte mokytis su ROS?
Robotai yra sudėtingos sistemos, o robotiką sunku suprasti. Tačiau turint tokių įrankių kaip ROS leidžia daug lengviau kurti nuo nulio, pagreitindami savo projektų kūrimą per daug trumpesnį laiką ir neturėdami tiek žinių, lyg jų neturėtumėte.
Kitaip tariant, ROS pranašumai yra palengvinti kelią kūrėjams su daugybe nemokamų ir atvirojo kodo priedų, kad turėtumėte viską, ko jums reikia. Be to, išmoksite daugiau nei robotika, taip pat elektronikos, mechanikos ir programavimo:
- Kurdami programas naudokite tokias kalbas kaip C ++ ir Python.
- ROS diegimo ir priežiūros tinklų ir sistemų administravimas.
- Pagrindinės robotikos koncepcijos, tokios kaip žemėlapių sudarymas, AI, lokalizacija, atvirkštinė kinematika ir kt., galinčios sujungti jutiklius, pavaras, valdiklius ir kt.
Nesvarbu, roboto sudėtingumas, su ROS viskas daug paprasčiau. Jis taip pat neapsiriboja vieno tipo robotais, jis gali tarnauti nuo robotų naminių gyvūnėlių iki robotų humanoidų ir robotų ginklų pramonei...
Daugiau informacijos apie ROS - Oficiali svetainė