3D tryckt Arduino Robot (9 / 11 steg)
Steg 9: kod
Kör koden är för närvarande ganska enkel och jag uppmuntrar dig att arbeta med detta att göra din robot mer intelligent.
void runDriveMode() {
grundläggande enhet loop
int avstånd = getDistanceToWall();
Serial.println(Distance);
om (distanserar < 20)
{
turnRandom(2);
moveBackward();
Delay(Random(1500));
}
annars om (distanserar < 50)
{
turnRandom(2);
}
annars om (avstånd < 80)
{
turnRandom(1);
}
annat
{
myWheel.write(WHEEL_CENTER);
moveForward();
}
Delay(200);
}
Så roboten kontrollerar avståndet till nästa objekt / vägg. Om detta är mindre än 20cm det kommer att gå i omvänd svarvning i en slumpmässig riktning för en slumpmässig tid. Om avståndet är mindre än 80cm det börjar vända sig bort och om avståndet är större än att det bara kommer att köras i en rät linje.
Ingen främre roterande hjul.
Om du byggt en robot utan en roterande framhjul måste du aktivera metod runDriveModeWithNoFrontWheel() snarare än runDriveMode(); metoden. Detta är liknande men kommer att vända genom att flytta hjulen vid olika hastigheter och riktningar. För att vara ärlig du kan behöva justera denna kod som varje robot kommer att ha en annan tyngdpunkt och kommer att arbeta och sväng vid olika hastigheter.