Robotikk

The Best Robotics Distros

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

Siden arbeid med roboter vil være en utviklingsinnsats, vil de fleste verktøy du trenger være utviklingsverktøy-sett. Open Source Robotics Foundation (OSRF) har en flott webside med ressurser. De støtter og vedlikeholder Robotics Operating System (ROS). Dette er en enorm samling verktøy du kan installere både på ditt eksisterende system eller som en container.

Begrunnelsen bak en fordeling

Når du begynner å eksperimentere med roboter, vil du oppdage mange ting du ikke forventet da du startet. Er du klar over hvor mye tolking av bilder har betydning for utvikling av robotikk? 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 oppta diskplass unødvendig, men den totale størrelsen på systemet er ikke stor for en moderne datamaskin. Når du går videre i prosjektet, må du sørge for at du vet hva du skal legge i roboten og ikke. Diskplassbegrensningene dine 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 visjonsbiblioteker og simulatorer. Prosjektet er godt støttet av OSRF. De blir i sin tur støttet av mange bransjeledere, og deres kommersielle datterselskap støtter de samme selskapene i deres innsats.

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

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

Mobile Robotics Programming Toolkit

Som du vil se når du begynner med roboter, vil mye av jobben være programmering. Denne verktøysettet hjelper deg med SLAM (Simultan lokalisering og kartlegging) og andre baneplanleggingsverktøy. Mange av verktøyene har med visjon å gjøre. en interessant del av dette verktøysettet er støtten for Kinect-maskinvaren. Libfreenect-bibliotekene er de underliggende for dette prosjektet. For å legge den til i Ubuntu-installasjonen, kan du hente PPA og installere den med apt. Å kompilere 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, gå til GitHub-siden.

YARP

Navngitt 'Yet Another Robot Platform', er det basert på ideen om at du bruker mest mulig av eksisterende verktøy. YARP er en samling C ++ - biblioteker som definerer kommunikasjonsprotokoller for alle nivåer av robotikkprosjekter. 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 operativsystemet du kjører. Dette gjør det enkelt å bytte operativsystem eller maskinvare for en komponent mens du beholder de samme YARP-datastrømmene. Dette er nødvendig for å kjøre de andre delene av systemet. YARPsig håndterer signalbehandlingsoppgaver, den 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 samlede systemet. Du vil også bruke den til å konfigurere enhetene dine. YARP hjelper deg med å planlegge all annen programvare slik at du kan bruke det som finnes der ute. Faktisk har du også muligheten til å kjøre noen komponenter under ROS mens andre kjører YARP. Det er mange tilgjengelige alternativer, 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 driver. Alle dataene må bevege seg mellom delsystemer og komponenter. Det blir veldig komplisert. For å komme raskere i gang, må du ha et system som koordinerer alt. Dette gjør du ved å ha en koordinerende funksjon 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 all data ut til systemet generelt.

Det er her du trenger en distribusjon eller en plattform som holder alt dette koordinert. ROS er systemet som fungerer med de fleste, om ikke alle maskinvarene 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 tilknytning. Det er grunnleggende læring; Å se sammenhengen mellom fornuft og handling.

Mus Topp 5 ergonomiske datamuseprodukter for Linux
Topp 5 ergonomiske datamuseprodukter for Linux
Gir langvarig bruk av datamaskiner smerter i håndleddet eller fingrene? Lider du av stive ledd og må hele tiden riste på deg hendene? Føler du en bren...
Mus Hvordan endre mus og berøringsplateinnstillinger ved hjelp av Xinput i Linux
Hvordan endre mus og berøringsplateinnstillinger ved hjelp av Xinput i Linux
De fleste Linux-distribusjoner leveres med "libinput" -biblioteket som standard for å håndtere inngangshendelser på et system. Den kan behandle inngan...
Mus Kartlegg museknappene på en annen måte for annen programvare med X-Mouse Button Control
Kartlegg museknappene på en annen måte for annen programvare med X-Mouse Button Control
Kanskje du trenger et verktøy som kan gjøre at musens kontroll endres med hvert program du bruker. Hvis dette er tilfelle, kan du prøve et program som...