Stap 9: gaan!
Vanwege de torgue en rotatie snelheid beperking, zal het besturingsprogramma houden evenwicht als de hoek van de fout te groot is te mislukken. Dus, voordat u het programma uitvoert, gebruik je hand te houden de robot evenwichtig mogelijk als je kunt.
Mijn aanpak is met mijn linkerhand aan het evenwicht van de robot en mijn rechterhand gelet op toetsenbord om druk op de Enter-toets.
Als gevolg van elke robot heeft verschillende massamiddelpunt. Het zorgt ervoor dat de aanvankelijke evenwichtige hoek varieert. Dat is waarom ik een "angle_offset" variabele in de code hebt. Kunt u aanpassen aan uw robot.
Hier zijn een aantal video's voor demostration.
Als de robot niet aan houden in evenwicht brengen, kan de oorzaak zijn:
- De eerste angle_offset is niet goed genoeg, wijzig het en probeer het meer.
- De richting van het besturen van de motor en de richting van de meting van de sensor worden de hetzelfde. U kunt dit wijzigen in de motors.c
- Als motoren naar de juiste richting, maar het nog steeds falled. Het kan uw motoren niet krachtig genoeg of de angle_offset is niet goed.
- Wanneer start het, de initiële hoek is te groot om te worden afgewogen. U kunt proberen het meer.
- Onbekende problemen
- Als het evenwichtige maar niet gracieus, kan u proberen te wijzigen parameters van de PID.
Hoop dat u allen genieten!!