Ultrasone obstakel-vermijden Robot (13 / 16 stap)

Stap 13: Debugging de firmware met alles toegevoegd


Het beste deel in het schrijven van een firmware is het moment wanneer alles bij de eerste poging werkt. Ik ben geneigd te veel code schrijven voordat daadwerkelijk gaan uit en test het, dus als het werkt op eerste ingeschakeld, het is zelfs beter. Helaas en natuurlijk was dit niet het geval, ik moest doen hele hijs zootje van foutopsporing om de software aan de manier waarop ik had gedacht het functioneren.

Sinds de foutopsporing zal kan en langer duren dan de code zelf te typen - bereid je voor op het ergste. Er is een vrij grappige en realistisch beeld op het web, waarin de stadia van de foutopsporing.

Hoe om te zuiveren

Om erachter te komen waar uw instructieregister op een gegeven moment is, moet men denken aan manieren om een soort van feedback van de PIC. De gemakkelijkste manier om te gaan is te gebruiken sommige LEDs oplichten hen op bepaalde punten in de code - deze manier u zeker, weet dat de code er geschreven werd geëxecuteerd. Daar had ik een ongebruikte 2 x 4 vrouwelijke header aan boord, ontwierp ik een kleine bord alleen voor debugging doeleinden, een Raad die in deze header wordt geplaatst. Op deze manier was ik in staat om te bepalen al dan niet de PIC de juiste beslissingen te in het algoritme nemen is. Dat was relatief makkelijk op te zetten. Na een tijdje de LEDs gewoon niet genoeg waren, en ik begon te denken van een soort van foutzoekprogramma poort, misschien een SPI-beeldscherm dat wordt weergegeven de opgenomen afstanden. Het duurde niet lang om te realiseren dat - bij toeval - ik twee zeer belangrijke PIC pinnen aan de header van deze 2 x 4 haalde: de RX en TX pinnen van de seriële poort! Ik haalde een serial-USB converter ik bestelde van e-bay een tijdje geleden (dekoppeling), en aangesloten op deze pinnen.

De hardware was klaar, ik net nodig sommige firmware voor het initialiseren van de poort met de vereiste parameters, en instellen van de communicatiesnelheid. Dit kan worden gedaan door het lezen van het gegevensbladgedeelte, ik heb dit gedaan door hand veel-veel tijd, dus dit keer die heb ik besloten om gebruik te maken van een rekenmachine voor snellere ontwikkeling. Check out de foto's, een van hen heeft dit nette weinig baud-snelheid (bits per seconde) generator - goed spul! Ik gebruikte 48 [MHz] oscillator snelheid, en maakte de berekeningen voor 115200 [bits per seconde].

Nadat ik klaar met de initiële installatie, schreef ik sommige gemeenschappelijke functies ik wist dat ik zal moeten, en zet het op een proef. De seriële poort werkte bij de eerste proef, mijn beter debug-poort was klaar voor gebruik! Ik nodig een terminalprogramma te kunnen visualiseren van gegevens die worden verzonden van de PIC. Simpel: ik Hercules gedownload van hier: link.

Voordelen van de seriële poort

Nadat ik heb de seriële poort te starten, werd mijn leven tien keer makkelijker. Elke variabele, elke meting, alles wat werd geschreven in de PIC werden toegankelijk via deze debug-poort. Ik snel gevonden dat de variabele die het maximum van de 11 afstandsmeting opgeslagen was "unsigned char", maar sommige lezingen waren groter dan dit type in passen, ik overgeschakeld naar unsigned int mee.

Ik realiseerde me ook dat de afstand gemeten nauwkeurig genoeg is, maar ik geen rekening houden met het feit dat de robot wat ruimte moet om te kunnen naar links of naar rechts. Ik afgetrokken 8 [cm] van de laatste opdracht van de "vooruit uitvoeren", en dit probleem opgelost.

Zodra de robot begon te gaan van de juiste afstanden ten opzichte van de afstanden die het gemeten, verwijderde ik de seriële verbinding en plaats die de LED bord terug binnen.

Gerelateerde Artikelen

BASIC ARDUINO obstakel vermijden ROBOT

BASIC ARDUINO obstakel vermijden ROBOT

maken een eenvoudige arduino gebaseerde obstakel vermijden robotStap 1: vereisten BENODIGDE MATERIALEN1. natuurlijk Arduino Uno (een andere compatibele board) X 12. Chasis voor robot (ik gebruikte een van mijn broer's RC auto)3. een L293D Dual h-brug
How to Build obstakel vermijden Robot voor Beginners met Arduino Tutorial

How to Build obstakel vermijden Robot voor Beginners met Arduino Tutorial

Deze Tutorial is voor iedereen aan de slag met arduino. Wij zullen bouwen obstakel te vermijden robot die gebruikmaakt van een ultrasone sensor voor HC SR-04 om objecten en 2 continu (360 graden) servo's aangesloten op een externe batterijvoeding te
Remote Controlled obstakel vermijden Robot met PIC Microcontroller

Remote Controlled obstakel vermijden Robot met PIC Microcontroller

Ik gebruik pic 16f877aservo motor ultrasone module afgestemd motor motor stuurprogramma en 20 mhz kristal.In robotica is obstakel te vermijden de taak van het voldoen aan enkele doelstelling van de controle niet-splitsing of niet-botsing functie bepe
Hoe maak je een obstakels vermijden Robot - Arduino stijl

Hoe maak je een obstakels vermijden Robot - Arduino stijl

je altijd al wilde maken van een van deze coole robots die in principe elk object kunnen vermijden. Maar je niet genoeg geld om te kopen een van die erg duur zijn hoefde, met reeds gesneden delen waar alle materialen waar er voor u. Als u als me bent
Arduino obstakel vermijden Robot

Arduino obstakel vermijden Robot

De kerels van Hey,Materiaal:1 Arduino Microcontroller - http://www.robotshop.com/en/arduino-uno-usb-microc...2 parallax continu roterende Servos - http://www.robotshop.com/en/parallax-futaba-contin...1 180 graad Hi-Tec HS-422 Servo - http://www.robot
Obstakel te vermijden Robot met arduino

Obstakel te vermijden Robot met arduino

OBSTAKEL - VERMIJDEN ROBOTEen obstakel te vermijden ROBOT is een die kan een obstakel te vermijden met behulp van ultrasone sensor en navigeren in haar eigen pad. Met een breadboard gekoppeld aan de robot kunt u plezier spelen binnen een korte period
Obstakel te vermijden Robot met behulp van IR Module geïnterfacet met een boord van Mediatek LinkIt

Obstakel te vermijden Robot met behulp van IR Module geïnterfacet met een boord van Mediatek LinkIt

In deze Intructable zal u worden kunnen te maken een obstakel vermijden Robot met behulp van IR module met L293D en Mediatek Linkit een boord.Stap 1: vereisten L293D Motor Driver IC.2 IR Sensor Modules.Chassi voor Bot.Mediatek LinkItOne-Board2 100 RP
TurtleDuino Object vermijden Robot

TurtleDuino Object vermijden Robot

Hallo, in dit instructable ik zal tonen u stap voor stap hoe te bouwen van de TurtleDuino, een object vermijden robot, met een Arduino UNO microcrontroller aan boord. Ik ontwierp de TurtleDuino met behulp van materiaal van de hardware winkel (Home De
Obstakel ontwijkt Robot met behulp van de Arduino Uno en de nabijheid van de IR Sensor

Obstakel ontwijkt Robot met behulp van de Arduino Uno en de nabijheid van de IR Sensor

Volg de stappen voor het maken van een obstakel vermijden Robot met behulp van Arduino Uno en IR Sensor van de nabijheidStap 1: Onderdelen die nodig zijn1) Arduino Uno R3 (kloon zal doen)2) IR naderingssensoren (2 aanbevolen)3) chassis met motoren4)
Hoe maak je een obstakel te vermijden Robot

Hoe maak je een obstakel te vermijden Robot

obstakel te vermijden robot is een eenvoudige robot die wordt beheerd door een arduino en wat het doet is dat het gewoon zwerft rond en vermijdt obstakels. Het detecteert de belemmeringen met een ultrasone sensor van HC-SR04 met andere woorden als de
Obstakel te vermijden Robot

Obstakel te vermijden Robot

Dit instructable is de schriftelijke versie van mijn "Arduino: hoe te bouwen een obstakel te vermijden Robot" Youtube-video die ik onlangs heb geüpload. Ik raden u om het te controleren.Dus, zonder dralen, laten we beginnen!Stap 1: Een chassis!
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
Obstakel te vermijden Robot V2

Obstakel te vermijden Robot V2

ik deed onlangs een instructable op een eenvoudige belemmering vermijden robot. In dit instructable ik zal de uitvoering van een panning PING))) sensor, in tegenstelling tot de vorige robot die sensor werd stationaire. Ik zal gebruik maken van deze d
Obstakel te vermijden Robot - Motor Shield

Obstakel te vermijden Robot - Motor Shield

Hallo jongens! Dit is een eenvoudige en elementaire tutorial voor het maken van een obstakel te vermijden Robot... Lees verder...Stap 1: Benodigde materialen Het obstakel te vermijden Robot u nodig te bouwen-Arduino Uno R3 (aangeraden Arduino Uno r3