Stap 3: Programmeren en testen
Ik de chip uit de Raad van bestuur met behulp van Adafruit van USBtinyISP AVR Programmer, die ik gebruik voor alle AVR chips geprogrammeerd. (Niet toevoegen van dat de 2 x 3 ISP header op de robot de bord was een grote fout - elke keer als ik wil de code aanpassen of om het even wat te testen, ik heb de chip te wrikken uit een socket, steek de stekker in een andere PCB voor programmering, dan plaatst u deze opnieuw in de robot. Voor mijn volgende versie- en alle toekomstige robots - zal ik gewoon toevoegen de zes extra header pinnen.)
Zodra de robot draait op, het kalibreert de sensoren door het draaien van links en rechts in plaats, dan het gewoon continu doorlopen Pololu van PID algoritme.
Deel van de kunst van het ontwerpen van de meest vloeiende en snelste lijn volgeling krijgt de PID-constanten zijn precies goed, die ik zeker niet hebben gedaan. Deze robot is traag en schokkerig, een eerste prototype van mijn eerste robot proberen. Ik heb een lange lijst van verbeteringen die ik zou willen maken voor de volgende versie.
In de tussentijd heb ik besloten een paar test video's. De ene maakt gebruik van een eenvoudige lineaire algoritme, dat gewoon gaat links of rechts op basis van waar de lijn op dat moment is. In het tweede voorbeeld gebruikt de PID-algoritme, dat het interessante voordeel heeft dat het slimmer wordt of vloeiender hoe langer die het draait. Door de tweede ronde behandelt het de curven vloeiender, hoewel soms de robot de off-line bizar bocht voordat het een kans krijgt om te verfijnen haar constanten. De derde video is een eenvoudige snelheid en remtest, versnelling naar volle snelheid en vervolgens stoppen zodra het een lijn kruist.
Ik kijk uit naar reacties, vragen of suggesties, en hopelijk deze versie, vroeg zoals het is, zal van belang zijn voor andere elektronica-liefhebbers.