Hur man bygger en själv navigera roboten (4 / 7 steg)

Steg 4: Öppen källkod



Mjukvaran är utvecklad med MPLAB® gratis IDE och skrivit med MPLAB® C30 kompilator (även i en gratis eller student version), båda (naturligtvis) av mikrochip:
http://www.microchip.com/Stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=81

Hela projektet är tillgänglig som öppen källkod på Google Code
http://code.Google.com/p/dspid33/
Se det för den senaste versionen, kommentar, beskrivningar, etc.
Programmet beskrivs steg för steg inne i koden. För att få en hög nivå av kommentarer och en mer lättläst kod, på varje väsentlig punkt det är ett nummer inom parentes (e.g.: [7]) som en referens till en extern fil (dvs.: descrEng.txt) i MPLAB projektet.

Diagrammet visar den övergripande arkitekturen av förfarandena för kontroll av dsNav ombord och navigation strategier tillämpas på basen av projektet.
De motoriska styrenheterna kan ses som svarta lådor som tar hand om hastigheten på hjulen. Den handledare delen av programmet skickar dem referenshastigheten (VeldDesX: önskad hastighet). Input Capture moduler av mikrokontroller få pulser från kodare är ansluten till den motoriska axeln och härleda motorerna rotationshastighet (VelMesX: uppmätt hastighet). Kombinera varje 1ms detta värden i kontrollen PID "Hastighet PID" få vi rätt PWM värdet för att hålla önskad hastighet för varje enskild hjul.
QEI (Quadrature Encoder Interface) modulerna få både A och B pulser från pulsgivare och ge tillbaka till funktionen handledare resande riktning och antalet pulser i 4 x-läge (räkna de stigande och fallande kanterna av signal A och signal B: 2 x 2 = 4).
Att multiplicera antalet pulser med K som anger utrymmet för varje enskild encoder puls, få vi avståndet reste av höger och vänster hjul varje 10ms. Handledaren kombinerar detta reser informationer och gäller död räkenskap förfarandet för att erhålla de uppmätta positionskoordinater bot: Xmes, Ymes, θMes (orientering vinkel).

Handledaren får navigering kommandot från utanför av seriellt gränssnitt (telemetri).
Olika strategier kan tillämpas:
A - resa i en given hastighet i en viss riktning (VelDes, θDes).
B - resa mot en given punkt med koordinater XDes, YDes.
C - resor för ett givet avstånd i en viss riktning (DistDes, θDes).

Läge A : med "logisk kontroll växlar" i läge 1, endast den PID control "Vinkel PID" används av funktionerna som handledare. Här kombinerar önskad vinkel θDes med den uppmätta vinkeln θMes beräknas av odometry förfarande, för att få värdet av rotation rusat vinkelformigt ω runt sin vertikala axel, behövs för att rätta till felet orientering.
Värdet av DeltaV är proportionell mot ω. Lagt till VelDes att få hastigheten på vänstra hjulet har. dras till VelDes att få hastigheten på högra hjulet, för att hålla rubriken motsvarande θDes värde, medan mitten av roboten fortfarande reser VelDes hastighet

Läge B : med "logisk kontroll växlar" i position 2, önskad hastighet VelDes beräknas genom kontrollen PID "Dist PID" och det används som i läge A. Den uppmätta ingången för denna PID (DistMes) beräknas som en funktion av de aktuella koordinaterna och destination koordinaterna. Önskad orientering vinkel θDes kommer också från samma förfarande och det används som referens ingång för "Vinkel PID". Hänvisningen ingång för "Dist PID" är 0, vilket innebär att målet nås. Med ω och VelDes tillgängliga går varvtalsreglering av hjulen som i läge A.

Läge C : med "logisk kontroll växlar" i position 2, destination cordinates Xdes, Ydes beräknas en gång i början som en funktion av indataparametrar DistDes, θDes. Efter att allt går som i läge B

Se Steg
Relaterade Ämnen

Hur man bygger en Lego Mindstorms NXT hexapod robot?

Denna gång (i min allra första instructable någonsin) jag kommer att visa dig hur man bygger en hexapod robot med hjälp av Lego Mindstorms NXT.Njut och lämna en kommentar!Steg 1: Vad behöver du Behöver du:-Lego Mindstorms NXT kit-några extra Lego gea...

DIY: Hur man bygger en WiFi Robot Spybot

vi kommer att visa dig hur man bygger en wifi robot / spybot från grunden. Det är en mycket rättfram projekt och kan lätt hanteras av en mellanliggande robot builder. För att slutföra roboten, tar det ett par timmar.Video av komplett robot kör:http:/...

Hur man bygger en kraftfull robot!

Hej! Är du redo att bygga en stark, snabb och tålig robot? Det är mycket enklare än du tror, det är bara en kombination av att bygga ett redskap tåg och skruva i hjul, barer och andra delar!Steg 1: Samla delar: grundläggande delar(4) chassi skenor(1)...

Hur man bygger en robotarm

Uppdatera: https://www.youtube.com/watch?v=BILiuqRmLRIvill bygga registeransvarige gå till härvideon är:http://www.youtube.com/watch?v=N9z7OQLlhrEhttp://www.youtube.com/watch?v=jozshuI246o&feature=youtu.behttp://www.youtube.com/watch?v=onQIzR5C8qkhtt...

Hur man bygger den perfekta Zombie Survival Kit...

Så du vill lära dig hur man bygger en utmärkt zombie survival kit, och ärligt talat din bästa insats skulle vara att läsa zombie survival guide av max brooks. Men om du saknar tid, pengar eller är bara lata ska jag rakt på sak och ge dig en snabb, lä...

Hur man bygger en klocka som projekten tid på väggen

detta Instructable visar dig hur man bygger en projektor klocka. Den här enheten kan du projekttid på väggen. Baserat på en liten LCD väckarklocka (inte för liten, istället, du inte kommer kunna projicera det och att arbeta på det), detta är ett bra...

Hur man bygger en Stark industri Iron-Man bågreaktorn... Mycket mycket låg kostnad...

Hur man bygger en Stark industri Iron-Man bågreaktorn... Mycket mycket låg kostnad bågreaktorn somde flesta kan göra mycket lätt.nu har jag en vinyl cutter och jag har användningen av en kompisar cnc router men det här handlar om en bygga somalla kan...

Hur man bygger stjärnor avfyra

Star brand eller indiska brand är som namnet antyder är det en traditionell brand design används främst av indierna av vilda västern. Denna typ av brand är bränsle effektiv och bäst för överlevnad och primitiva situationer. Bränsle för elden kan vara...

Hur man bygger en Walk-In dusch (del 2: Wedi vägginstallation)

Detta är en episk tutorial...Jag lovar att du får lära dig hur man bygger en duschkabin i 1 timme eller mindre.Det är en allvarlig garanti men jag står bakom den.Varför?Vi gjorde det medvetet steg för steg så att någon kunde följa med.Tätskikt är vad...

Hur man bygger ett wingbone Turkiet samtal

detta instructable kommer att vara en beskrivning av hur man bygger ett wingbone Turkiet samtal. Denna uppmaning är lätt att bygga, men svårt att bemästra. Ringer i ett Turkiet med en ring som du gjort själv av ett annat Turkiet är dock en mycket giv...

Hur man bygger en stationär kretsloppsodling system för inomhus trädgårdsskötsel.

Kretsloppsodling system: hur man bygger en stationär kretsloppsodling system för inomhus trädgårdsskötsel. Kretsloppsodling guide.När dagarna blir kortare och nätterna bli kallare, kan vi inte längre förneka att hösten är på väg och vintern är runt h...

Hur man bygger ditt eget Cajon Box trumman med justerbar snara

i detta instructable jag kommer att visa dig hur man bygger din egna Cajon box trumman. Vi gjorde 2 Cajon trummor för under 50$, så ca 25$ en bit. Jag kommer att ange detta instructable i musikaliska instrument tävlingen, så snälla rösta!Steg 1: Saml...

Hur man bygger en ballistisk kniv [lätt väg]

Hej, detta är min första tutorial och idag ville jag visa dig hur man bygger en arbetande ballistiska kniv.För detta projekt behöver du några saker:-En Scooter styre, med den knapp som du trycker på och han kommer upp igen, eller någon tube med knapp...

Hur man bygger en T.E.A. Laser

A te Laser är kväve Laser som är verksam vid standard tryck och temperatur. I själva verket använder många normal luft som är över 75% N2. Normal luft har en egenskap som kallas super radiance. Detta innebär att luften kan producera en laser strålar...

Hur man bygger en slida

detta instructable är en tag-along till min första, "Hur man bygger en kniv." Jag hade vissa begäranden för detta efter att jag postat att första en, så här är det--mycket förr än jag trodde, alltför.Så, vill du göra en slida? Kanske har du en f...

Hur man bygger en ljussabel i Word 2010

Hur man bygger en ljussabel i Word 2010.Steg 1: Steg 1Öppna Word 2010Steg 2: Steg 2Gå till infoga och klicka på formerSteg 3: Steg 3Bygga din fästetSteg 4: Steg 4 Lägga till en kniv med en rundad rektangel. Gör insidan vit och de utanför oavsett färg...

Hur man bygger en blöja spruta

om du tyg-diapering din wee en, du ganska van att bli kallad en Lom. Om du planerar att bygga din egen blöja spruta, kan du lägga till minst en ytterligare person folk som tror att du är galen, VVS associate(s) på din lokala hem förbättring butik.Det...

Hur man bygger en tillfällig vedeldad Pizza tegelugn med billiga, lätt att hitta material

om du gillar DIY projekt (och pizza projekt), kolla in min sida, mikesenese.com/DOIT och följ mig påDenna pizzaugn är nästan lika enkelt att bygga som stapla block, men skapar en mycket effektiv trä vedeldad ugn med ett välvt tak som kan nå 800-900 g...

Hur man bygger en vatten Thrusted raket

Hur till bygga en vatten Thrusted raket - titta på fler roliga filmer här detta är en tutorial video som visar hur man bygger en vatten och tryck thrusted raket. Det är mycket enkelt att lägga i träda, och använder material som du kan hitta i ditt hu...