Hur man bygger en själv navigera roboten (2 / 7 steg)
Steg 2: Vad vill vi uppnå? Och hur?
Detta dead reckoning navigationssystem påverkas av ackumulerade fel; mäta precisionen måste vara hög för att säkerställa en litet fel cirkel efter en lång väg. Så, efter några bra resultat med hemgjord pulsgivare, jag beslutade att använda något bättre: ett par 12V-200 rpm inriktad motors, ansluten till ett par 300 Count Per revolutionen (HLR) pulsgivare, båda finns på många internetbutiker robotics.
Grundläggande principer
För att fånga alla pulser genereras av 300 HLR kodaren på en 3000 rpm motor i 4 x avkodning metod (120 kHz), vi behöver dedikerad hårdvara för varje kodare (QEI = kvadratur Encoder gränssnitt). Efter några experimentera med en dubbel PIC18F2431, beslöt jag att rätt uppgraderingen är att en dsPIC. I början var de två dsPIC30F4012 motor flygledare att kontrollera hjul position och hastighet, att utföra odometry och tillhandahålla data av de två motorerna till ett dsPIC30F3013. Denna generella DSC är tillräckligt kraftfull för att hämta data, göra vissa trigonometri för att beräkna positionskoordinater och lagra data för sökvägen omfattas för att få en karta över fältet, alla i mycket hög takt.
När styrelsen och program var nästan klar, tog Microchip fram en ny, kraftfull 28-pin SPDIP i dsPIC33F-serien för både motor controller (MC) och allmänt ändamål (GP) versioner. De är betydligt snabbare än dsPIC30F, de har mycket mer tillgängligt programminne och RAM (användbart för fältmappning), de kräver mindre ström (bra för en batteridriven robot) och möjligheterna till DMA förenkla många o operationer.
Viktigast av allt, är detta de första motor mikrochip-styrenheterna med två QEIs på samma chip. Låt oss börja en ny port igen! Den logiska blockdiagram är liknande som tidigare styrelsen , men hård- och mjukvara är mycket enklare eftersom jag kan använda en DSC endast i stället för tre . Det finns inget behov av en snabb kommunikation mellan handledare och motor domänkontrollanter att utbyta navigering parametrar. Varje process är enkelt att synkronisera eftersom det är på samma chip. Med perifera PIN-koden select förmåga att dsPIC33F serien ytterligare förenklar den PCB, möjliggör en intern anslutning av kringutrustning och en större flexibilitet.
Detta leder oss till "dsPIC baserad Navigation Control board" eller dsNavCon för kort. Denna styrelse är utformad som en del av ett mer komplext system. I en komplett explorer robot, kommer att andra styrelser styra ljud, ljus, gas sensorer, samt stötfångare och ultraljud utbud finders att hitta mål och undvika hinder.
Som en fristående styrelse, dsNavCon kan också användas för en enkel "line-anhängare" robot, något mer komplex som en robot för en odometry och död räkenskap tävling eller en så kallad "kan kan roboten" (för kan samla tävlingar). Fortfarande finns det gott om gratis programminne att lägga till kod för sådana uppgifter. Med mindre eller inga förändringar i programvara, kan det också vara användas fristående för en avlägsen kontrollerade fordon, med dubbelriktad RF-modem med någon form av smart fjärrkontroll. Denna fjärrkontroll kan skicka komplexa kommandon som "flytta FWD 1m," "tur 15° vänster," "köra FWD på 50 cm/s," "gå till X, Y koordinater," eller något liknande.
Styrelsen och roboten också, är avsedda att göras av någon hemma utan professionella verktyg och utrustning.