Pretože práca s robotmi bude vývojovým úsilím, väčšina nástrojov, ktoré budete potrebovať, budú vývojové sady. Open Source Robotics Foundation (OSRF) má skvelú webovú stránku so zdrojmi. Podporujú a udržiavajú operačný systém Robotics (ROS). Toto je rozsiahla zbierka nástrojov, ktoré môžete nainštalovať do existujúceho systému alebo ako kontajner.
Odôvodnenie distribúcie
Keď začnete experimentovať s robotmi, objavíte veľa vecí, ktoré ste na začiatku neočakávali. Uvedomujete si, ako veľmi záleží na interpretácii obrázkov pre vývoj robotiky? V distribúcii máte všetky nástroje, ktoré budete potrebovať, skôr ako sa dozviete, že ich potrebujete.
Vďaka tomu je začatie rýchlejšie a predchádza sa komplikáciám pri vývoji projektov. Zbytočne zaberiete miesto na disku, ale celková veľkosť systému nie je pre moderný počítač veľká. Pri postupe vo svojom projekte sa uistite, že viete, čo do robota vložiť, a nie. Vaše obmedzenia na disku sú tam oveľa prísnejšie.
ROS - najväčšia a zrejmá voľba
Ako už bolo spomenuté, ROS má rozsiahlu knižnicu funkcií. Tie siahajú od riadenia hardvéru, zasielania správ medzi subsystémami až po knižnice zraku a simulátory. OSRF projekt dobre podporuje. Na oplátku ich podporuje mnoho lídrov v odbore a ich komerčná pobočka podporuje rovnaké spoločnosti v ich úsilí.
Napriek širokej škále možností a vysokej úrovni prepracovanosti môže nový používateľ začať používať niektoré štandardné komponenty. Vďaka kooperatívnym metódam OSRF existuje veľa robotov, ktoré boli vyrobené pomocou ROS. Mnohé z nich sú spotrebné výrobky, ktoré si môžete kúpiť za primerané množstvo a zahájiť tak svoj projekt zameraný na konkrétnu úlohu. Momentálne dostupné produkty sú jeden na kolesách, nohách a krídlach na lietajúcich dronoch. Môžete dokonca nájsť obyvateľov vody, vrátane ponoriek.
Tento projekt vás prevedie priemyselným využitím, ak sa tam chystáte ísť. Začína sa trochu učiť, ale aj tak sa musíte veľa naučiť o robotike. Pri plánovaní prvého projektu vám bude určite chýbať veľa funkcií, ktoré potrebujete len na základné použitie.
Sada programovacích nástrojov pre mobilnú robotiku
Ako uvidíte, keď začnete s robotmi, veľká časť práce bude programovanie. Táto sada nástrojov vám pomôže so SLAM (simultánna lokalizácia a mapovanie) a ďalšími nástrojmi na plánovanie cesty. Mnoho nástrojov súvisí s víziou. zaujímavým kúskom tejto súpravy nástrojov je podpora pre hardvér Kinect. Knižnice libfreenect sú podkladom pre tento projekt. Ak ho chcete pridať do svojej inštalácie Ubuntu, môžete si vyzdvihnúť PPA a nainštalovať ho pomocou apt. Kompilácia vašich vlastných vyžaduje gcc-7 alebo novší, clang-4 alebo novší. Ďalšie informácie a to, čo musíte urobiť, keď používate ROS, nájdete na ich stránke GitHub.
YARP
Pod názvom „Yet Another Robot Platform“ je založená na myšlienke, že využijete čo najviac existujúcich nástrojov. YARP je kolekcia knižníc C ++, ktorá definuje komunikačné protokoly pre všetky úrovne robotických projektov. Máte tri komponenty YARP, YARPos, YARPsig a YARPdev. Všetci sa zaoberajú tým, ako posielať údaje medzi komponentmi vášho projektu. Komponent YARPos vytvára rozhrania smerom k operačnému systému, ktorý používate. Toto uľahčuje prepínanie operačného systému alebo hardvéru jedného komponentu pri zachovaní rovnakých tokov dát YARP. Toto je potrebné na spustenie ostatných častí systému. YARPsig spracováva úlohy spracovania signálu, je prepojený s OpenCV a podobnými knižnicami. Nerobí to spracovanie. YARPdev poskytuje rozhrania so všetkými zariadeniami, ktoré potrebujete. Myslite na fotoaparáty, mikrofóny, ovládače motorov a ďalšie. YARP vytvorí rozhranie s celkovým systémom. Použijete ho tiež na konfiguráciu svojich zariadení. YARP vám pomôže naplánovať všetok ďalší softvér, aby ste mohli využiť to, čo už existuje. V skutočnosti máte tiež možnosť spustiť niektoré komponenty pod ROS, zatiaľ čo iné spustia YARP. Existuje veľa možností a môžete medzi nimi prechádzať postupne.
Záver
Ak začínate s robotikou, budete potrebovať veľa softvérových častí. Každý radič a zabudovaný počítač majú odlišné potreby a systémy. Každá kamera má nový ovládač. Všetky údaje sa musia pohybovať medzi subsystémami a komponentmi. Začína sa to naozaj komplikovať. Aby ste mohli začať rýchlejšie, musíte mať systém, ktorý všetko koordinuje. Robíte to tak, že máte koordinačnú funkciu pre správy a dáta. Sú usporiadané ako „témy“, „uzly“ a „služby“. Dôvod týchto rôznych funkcií spočíva v tom, že niekedy chcete vykonávať príkazy, niekedy chcete sprístupniť údaje mnohým ďalším častiam systému a budete tiež môcť všeobecne odosielať všetky údaje do systému.
To je miesto, kde potrebujete distribúciu alebo platformu, ktorá to všetko koordinuje. ROS je systém, ktorý pracuje s väčšinou, ak nie so všetkým hardvérom a typmi projektov. Nezabudnite pochopiť, čo sa snažíte dosiahnuť svojim dizajnom. Toto je obzvlášť dôležité, keď sa učíte. Ak máte cieľ, potom všetky kroky majú svoj dôvod a asociáciu. To sú základy učenia; Vidieť súvislosť medzi rozumom a činom.