Stap 18: Programmeren van de Boards - programmering
De Control Board maakt gebruik van het command.aps-project heeft drie hoofdlijnen: communicatie, motion control en token passing. Het begint met het eerste maken of verbinding maken met een netwerk en dan begint de belangrijkste statusmachine voor bewegingscontrole en token passing. Als de robot is gedeclareerd als de leider dan duurt het dat aan de beurt om te verkennen. Dit betekent dat het zal rijden en voorkomen van belemmeringen stoppen en een zwaai van 180 graden van het gebied doen en de locatie, evenals de locatie van obstakels rond het verzenden met een PC om een toewijzing te maken. Het vervolgens leiderschap doorgegeven aan een ander robot in de zwerm en het proces begint opnieuw.
De lokalisatie van bestuur maakt gebruik van het localize.aps-project waarin de functies die de iRobot en het ultrasone bord praten. Odometry lezingen ontvangt van de iRobot en localisatie lezingen van de ultrasone bord. Het geeft ook de opdrachten aan de iRobot die de motoren rijden. Ook de lokalisatie van bestuur genereert de 24kHz en 36.7kHz-signalen die de IR en ToF transmissies rijden.
Elk van de microcontollers op het bord ToF gebruik van het tof.aps-project en is identiek. Het doel van de Raad van bestuur van ToF is ongecompliceerd: door de timing van het verschil in aankomsttijd van gelijktijdig uitgezonden infrarood licht en ultrasone geluid, kunt u zien hoe ver de emitterende bron is. Door het opnemen van de time-of-flight op drie afzonderlijke punten op de robot, kunt u de positie van de bron triangulate. Elke microcontroller maakt gebruik van een speciale input capture pin aan nauwkeurig tijd hoelang het infrarood is zichtbaar (als een controle die uitwijst dat het was de beoogde signaal) dan berekent de time-of-flight van het geluid. Deze gegevens zijn klaar om te worden overgebracht terug naar de lokalisatie van bestuur op verzoek.
Naast alle belangrijke functies we voor elke microcontroller hebben zijn er diverse test-programma's die kunnen worden uitgevoerd op de planken. Onze belangrijkste testprogramma voor de robots was een WASD-programma dat in principe afstandsbediening de robots met behulp van de transceivers die op de robots waren gecontroleerd.