Den beste robotiske distrosen

Den beste robotiske distrosen
For utvikling av robotikk er det mange samlinger tilgjengelig å velge mellom. Fra vane ser Linux -brukere etter distribusjoner for å finne den perfekte løsningen for prosjektet sitt. Selv om det er distribusjoner, kan du gå glipp av hvis du ikke ser etter vanlige biblioteker for å hjelpe deg med visse oppgaver. Hvilke verktøy du allerede bruker er også en vurdering av å ta på alvor.

Siden det å jobbe med roboter vil være en utviklingsinnsats, vil de fleste verktøy du trenger være utviklingsverktøy-kits. Open Source Robotics Foundation (OSRF) har en flott webside med ressurser. De støtter og vedlikeholder robotikkoperativsystemet (ROS). Dette er en enorm samling av verktøy som du kan installere både på det eksisterende systemet eller som beholder.

Resonnementet bak en distribusjon

Når du begynner å eksperimentere med roboter, vil du oppdage mange ting du ikke forventet da du startet. Skjønner du hvor mye tolkende bilder betyr noe for robotikkutvikling? I en distribusjon har du alle verktøyene du trenger før du vet at du trenger dem.

Dette gjør det raskere å komme i gang og unngår komplikasjoner når prosjekter utvikler seg. Du vil okkupere diskplass unødvendig, men den totale størrelsen på systemet er ikke stort for en moderne datamaskin. Når du går videre i prosjektet ditt, må du sørge for at du vet hva du skal legge i roboten og ikke. Begrensningene dine for diskplass er mye strengere der.

Ros - det største og åpenbare valget

Som nevnt tidligere har ROS et stort bibliotek med funksjoner. Disse spenner fra maskinvarekontroll, meldinger mellom delsystemer til synsbiblioteker og simulatorer. Prosjektet støttes godt av OSRF. De støttes igjen av mange bransjeledere, og deres kommersielle datterselskap støtter de samme selskapene i sin innsats.

Til tross for det store utvalget av valg og det høye nivået av raffinement, kan en ny bruker komme i gang med å bruke noen standardkomponenter. Takket være samarbeidsmetodene til OSRF, er det mange roboter som er bygget ved hjelp av ROS. Mange er forbrukerprodukter som du kan kjøpe for et rimelig beløp og starte prosjektet for en spesifikk oppgave. For øyeblikket er tilgjengelige produkter ett på hjul, ben og vinger på flygende droner. Du kan til og med finne vannboere, inkludert ubåter.

Dette prosjektet vil vare deg gjennom til industriell bruk hvis du tar sikte på å dra dit. Det er litt av en læringskurve i gang, men du har mye å lære om robotikk uansett. Når du planlegger ditt første prosjekt, vil du absolutt savne mange funksjoner du trenger bare for grunnleggende bruk.

Mobil robotikkprogrammeringsverktøysett

Som du vil se når du begynner med roboter, vil mye av jobben være programmering. Dette verktøysettet hjelper deg med SLAM (samtidig lokalisering og kartlegging) og andre baneplanleggingsverktøy. Mange av verktøyene har med syn å gjøre. Et interessant stykke av dette verktøysettet er støtten til Kinect -maskinvaren. LibFreect -bibliotekene er de underliggende for dette prosjektet. For å legge den til Ubuntu -installasjonen din, kan du hente PPA og installere den med APT. Å sammenstille din egen krever GCC-7 eller nyere, Clang-4 eller nyere. For mer informasjon og hva du trenger å gjøre når du bruker ROS, Goto deres GitHub -side.

YARP

Kåret til 'enda en robotplattform', er det basert på ideen om at du bruker så mye som mulig av eksisterende verktøy. YARP er en samling av C ++ biblioteker som definerer kommunikasjonsprotokoller for alle nivåer av robotiske prosjekter. Du har tre komponenter av Yarp, Yarpos, Yarpsig og Yarpdev. De er alle opptatt av hvordan du sender data mellom komponentene i prosjektet ditt. Yarpos -komponenten lager grensesnitt mot OS du kjører. Dette gjør det enkelt å bytte operativsystem eller maskinvare til en komponent mens du beholder de samme YARP -strømningsstrømmene. Dette er nødvendig for å kjøre de andre delene av systemet. Yarpsig håndterer signalbehandlingsoppgaver, det grensesnitt med OpenCV og lignende biblioteker. Det gjør ikke behandlingen. Yarpdev gir grensesnitt til alle slags enheter du trenger. Tenk kameraer, mikrofoner, motorførere og mer. YARP vil gjøre grensesnittet til det overordnede systemet. Du vil også bruke den til å konfigurere enhetene dine. YARP vil hjelpe deg med å planlegge all annen programvare slik at du kan bruke det som eksisterer der ute. Faktisk har du også muligheten til å kjøre noen komponenter under ROS mens andre kjører YARP. Det er mange alternativer tilgjengelig, og du kan overføre mellom de to gradvis.

Konklusjon

Når du begynner med robotikk, trenger du mange programvaredeler. Hver kontroller og innebygd datamaskin har forskjellige behov og systemer. Hvert kamera har en ny sjåfør. Alle dataene må bevege seg rundt mellom delsystemer og komponenter. Det blir veldig komplisert. For å komme i gang raskere, må du ha et system som koordinerer alt. Du gjør dette ved å ha en koordineringsfunksjon for meldinger og data. Disse er organisert som 'emner', 'noder' og 'tjenester'. Årsaken til disse forskjellige funksjonene er at du noen ganger vil utføre kommandoer, noen ganger vil du gjøre data tilgjengelig for mange andre deler av systemet, og du vil også kunne sende alle dataene ut til systemet generelt.

Det er her du trenger en distribusjon eller en plattform som holder all denne koordinerte. ROS er systemet som fungerer med de fleste, om ikke all maskinvare og typer prosjekter. Husk å forstå hva du prøver å oppnå med designet ditt. Dette er spesielt viktig når du lærer. Hvis du har et mål, har alle trinn en grunn og en forening. Det er det grunnleggende om læring; For å se forbindelsen mellom fornuft og handling.