Autonomus muur volgende hindernis vermijden Arduino Rescue Bot (6 / 7 stap)

Stap 6: De Code


Dit was mijn belangrijkste bijdrage aan de robot. Ik heb mijn hele voorjaarsvakantie programmering!  Met uitzondering van de voorbeeldcode om de ping-sensoren (die ik heb gewijzigd op controle 7 pings) schreef ik alle code voor deze robot (iemand anders schreef code naar besturingselement de CMU-Cam op de BasicStamp). Na hersenen bestorming een basisgrafiek stroom van wat de robot moest doen, begon ik gebouw van kleine porties van het Wetboek, een stap tegelijk.

Ik begon met de eerste logische stap, ik geladen het PING voorbeeldprogramma dat is ingebouwd in de taal van de arduino en testte het uit. Ik heb vervolgens gewijzigd om te lezen van de 7 pings die we gebruikten. Dit werd de Ping testprogramma hieronder, die later werd gebruikt om te zorgen voor goede verbindingen en bij het ontwikkelen van sommige gedeelten van de belangrijkste code.

De volgende stap was een eenvoudige test van de Sabertooth. Dit was de eerste keer dat ik ooit had gebruikt voor, dus ik schreef een klein programma dat reed vooruit, terug, daarna draaide links, vervolgens rechtsaf. Het is een eenvoudig programma, maar opnieuw zeer nuttig. Wij beëindigden omhoog wederopbouw en bedrading van de robot meerdere keren en na elke keer lopen wij dit eenvoudige programma om ervoor te zorgen dat wij de motoren correct had aangesloten.

Het volgende programma is geschreven met behulp van een vroege mock up van onze robot gemaakt van een stuk van schroot aluminium, een paar van servomotoren, pings en karton (Ik afgeplakte de pings op het karton te monteren hen), kunt u een beeld van onze kleine ongewenste bot hieronder. het was gegooid samen ongeveer een uur maar diende zijn doel. Ik begon door het lezen van de rechterkant sensoren. De robot zou vooruit rijden zo lang als de sensor-waardes waren hetzelfde (plein aan de muur) en het één motor sneller dan de andere rijden zou als de waarden verschillend waren. Dit gecorrigeerd elke drift die zou optreden. Dit is erg belangrijk, zelfs als je 2 motoren met dezelfde snelheid rijden ze niet zet altijd precies hetzelfde tempo, vooral als ze in tegengestelde richting draaien.

Zodra deze code werkte begon ik te controleren van de sensor vooraan rechts om te zien dat als het ooit ging dramatisch gestegen, dit zou alleen gebeuren als de robot de rand van een muur bereikt. Na een 90 graden bocht die zouden het nog zien een lange afstand tot de zijwand die een probleem zou kunnen zijn, zelfs als het vooruit van rijden zou er het worden verward wanneer de eerste sensor de volgende muur, raakt dus een speciaal algoritme werd geschreven met de andere sensoren vierkant tegen een andere muur en rijden naar voren tot beide kant sensoren de muur opnieuw lezen. Later voegde ik in sommige meer uitzonderingen te krijgen rond de ingang van elk van de kamers en een controle van de voorste sensoren voor binnen hoeken.

Ik weet zeker dat de meeste mensen lezen dit doen omdat ze willen leren hoe te maken van een obstakel te vermijden robot, dit was een zeer doel robot gebouwd, en sommige delen van de code die wordt gebruikt tijdens onze wedstrijd zou van geen nut zijn voor de meesten van u, dus heb ik besloten om 2 uitgeklede versies. Ik weet hoe vervelend het kan zijn om de voorbeeldcode die precies wat je nodig hebt doet, dan moet doorlopen en wissen van de helft van wat u niet nodig hebt te vinden. Ze zijn nog steeds functioneel als obstakel vermijden van robots, behalve dat ik heb verwijderd de gedeelten die met de Camera en het schild van de Speakjet communiceren. Dit is eigenlijk de code die is gebruikt tijdens onze "Engineering Day" demo van de robot, dus de 7 segment displays willekeurig nieuwe nummers wordt gegenereerd wanneer het bereikt een binnenkant hoek. We bouwden een klein rechthoekig cursus (onze test cursus had na de wedstrijd is gedemonteerd) voor de gebeurtenis en dacht dat die het zou leuk zijn voor de weergave van tijd tot tijd bijwerken zodat wij stel deze in op het genereren van willekeurige getallen. In de kale minimum versie verwijder ik ook een heleboel code die is gebruikt voor het bijhouden van elke kamer en weergeven naar de displays van de 7segment.

Gerelateerde Artikelen

3D afgedrukt Arduino Boe-Bot

3D afgedrukt Arduino Boe-Bot

Hallo, toont dit instructable dat u hoe te bouwen van een kleine 3D afgedrukt Arduino Boe-Bot dat wordt aangedreven door 360 graden servo's. Zijn geïnspireerd door de Parallax Boe Bots. Daarmee hebt u twee manieren om te bepalen van het bot met een R
(Bronbestanden voor) Hoe maak je een OAWR (hindernis vermijden Walking Robot)

(Bronbestanden voor) Hoe maak je een OAWR (hindernis vermijden Walking Robot)

dit is een uitloper Instructable uit hoe maak je een OAWR (hindernis vermijden Walking Robot) en bevat versies van de bestanden van dat instructable in bewerkbare formaten (alle leuke en open source'ary ik denk).(Als er een ander bestand dat je denkt
DIY intelligente Autonomus Robot (elektronische Pet) /w Arduino

DIY intelligente Autonomus Robot (elektronische Pet) /w Arduino

Ik hou van elke vorm van robots vooral de autonomus of intelligente robots, die een beetje meer intelligentie dan het vermijden van een obstakel hebben. Dus besloten heb ik dat ik mijn eigen goedkope intelligente robot die heeft een ingebouwde camera
Nog een andere lijn volgende / obstakel vermijden 2WD auto

Nog een andere lijn volgende / obstakel vermijden 2WD auto

Deze robot auto is niets nieuws. Instructables en Youtube zijn doorspekt met een soortgelijk aan deze robot-auto en eerlijk deze boekingen inspireerde mij om samen te stellen deze betaalbare robotics kit dat ik hand-out kon op mijn Robotics workshop
Hoe maak je een obstakel te vermijden Arduino Robot

Hoe maak je een obstakel te vermijden Arduino Robot

Hallo allemaal! In dit Instructable zal ik tonen u hoe maak je een robot vergelijkbaar met de "mobiele Arduino experimenteel Platform" (MAEP) die ik heb gemaakt. Het is uitgerust met twee motoren die sturen kunnen de robot en de mogelijkheid om
Hoe maak je een OAWR (hindernis vermijden Walking Robot)

Hoe maak je een OAWR (hindernis vermijden Walking Robot)

dit Instructable toont hoe maak je een kleine wandelende robot die obstakels (net als vele commercieel beschikbare opties vermijdt). Maar wat is het plezier in het kopen van een speeltje, wanneer u kunt in plaats daarvan met een motor, het blad van p
Gebruik een PS3-Controller te controleren van een Arduino NXT Bot

Gebruik een PS3-Controller te controleren van een Arduino NXT Bot

UPDATE:Ik heb een paar insecten met het gegevenspakket vast, en ik heb bewerkt de NXTI2CDevice bibliotheek zodat ze compatibel zijn met Arduino 1.0.Het bijgevoegde zip-bestand heeft1. een nieuwe schets van de Arduino2. een nieuwe Processing Schets3.
Bouw je eigen Arduino - blote bot systeem

Bouw je eigen Arduino - blote bot systeem

ik heb gelezen door middel van een heleboel tutorials online te maken van een kloon Arduino op een breadboard, en sommigen van hen zijn geweldig, maar geen van hen lijkt echt te hebben het allemaal, dus ik ga proberen om het hier allemaal samen en bi
Obstakel te vermijden Arduino auto

Obstakel te vermijden Arduino auto

Hallo iedereen ik ben hier delen wat ik maak een obstakels vermijden van arduino auto. Ik gebruikte hier gemakkelijk beschikbaar materiaal, deze robo blijven uitvoeren naar voren totdat en tenzij elk obstakel kwam voor auto laten zien en maak...Stap
RC auto naar hindernis vermijden Robot

RC auto naar hindernis vermijden Robot

dit is de oude auto.Ik vind een oude RC auto in mijn schuur.Hoe ik veranderd in een robot? Het is eenvoudig, dat ik zal u uitleggen in de volgende stap.Stap 1: De oude RC auto 1. verwijderen van de behuizing2. het verwijderen van het circuit.Stap 2:
Arduino Bluetooth-Bot met Android en LED

Arduino Bluetooth-Bot met Android en LED

Hallo iedereen,laten we een bluetooth robot gecontroleerd door android.Haar een instructable stapsgewijze met enkele foto's en natuurlijk de arduino code, hebt u vragen vraag me. Bedankt!Stap 1: Componenten van het project:1. een, Arduino (Arduino 25
Arduino obstakel te vermijden Robot

Arduino obstakel te vermijden Robot

In dit instructable ik zal u tonen hoe te maken van uw eigen obstakel te vermijden robot!We zullen de Arduino uno board en een ultrasone sensor gebruiken. Als de robot een object voor, met de hulp van een kleine servomotor, detecteert scant het het g
CupBots - 3D afgedrukt Robotic platform voor Arduino en Raspberry Pi

CupBots - 3D afgedrukt Robotic platform voor Arduino en Raspberry Pi

Hier is een geweldig weekend robotica project uit te voeren met vrienden of mensen op uw lokale maker-ruimte. Je moet een 3D-printer handig om 3D print de STL-bestanden bijgevoegd als onderdeel van de volgende stappen en een beker, in mijn geval, ik
Aangepaste Arduino schild en Sensors

Aangepaste Arduino schild en Sensors

Overzicht:Dit instructable zal het construeren van een reeks aangepaste sensor modules en het schild van een Arduino. Deze modules zijn beschikbaar uit veel verschillende bronnen, maar fans van de Instructables website zou waarschijnlijk vinden tevre