Schritt 9: gehen!!
Wegen der Geschwindigkeitsbegrenzung Torgue und Rotation wird das Steuerungsprogramm nicht balancieren zu halten, wenn der Fehler-Winkel zu groß ist. Also, bevor Sie das Programm ausführen, bitte benutzen Sie Ihre Hand, um den Roboter möglichst ausgewogen zu halten wie möglich.
Mein Ansatz ist meine linke Hand, den Roboter zu balancieren und meine Rechte Hand auf der Tastatur die Eingabetaste drücken.
Wegen jeder Roboter hat verschiedenen Mitte der Masse. Es bewirkt, dass die anfängliche ausgewogene Winkel variiert. Thats, warum ich habe eine Variable "Angle_offset" im Code. Bitte ändern Sie Ihren Roboter anpassen.
Hier sind einige Videos zur Demonstration.
Wenn der Roboter nicht Balance zu halten, kann das Problem sein:
- Der erste Angle_offset ist nicht gut genug, bitte ändern Sie es und versuchen mehr.
- Die Richtung der treibende Motor und die Richtung der Sensormessung sind die gleich. Sie können es in der motors.c
- Wenn Motoren in die richtige Richtung, aber es noch falled gehen. Es kann sein, dass Ihre Motoren nicht stark genug, oder die Angle_offset ist nicht gut.
- Wann beginnen sie, der Anfangswinkel ist zu groß, um ausgeglichen werden. Sie können es versuchen.
- Unbekannte Probleme
- Wenn es ausgewogen, aber nicht anmutig ist, können Sie versuchen, PID-Parameter zu ändern.
Hoffe, es gefällt euch allen!