Zu diesem Problem hatte ein Praktikant von mir eine saugeile Idee:Zitat von RCO
I-Regler - funktioniert folgendermaßen:
Man benötigt eine (signed) Korrekturvariable - im weiteren I genannt. Während einer Endlosschleife stellt man die Motorgeschwindigkeit auf MotorSpeed(Grundgeschw+I, Grundgeschw-I)
Außerdem nutzt man die Odometriesensoren. Findet beim linken Sensor ein Helligkeitswechsel statt (natürlich etwas Hysterese verwenden, sonst verzählt man sich) I um eins erniedrigen, für einen Wechsel beim rechten um eins erhöhen.
Nach kurzer Banane fährt ASURO sehr gut geradeaus. Ggf. kann man sich den Wert im EEPROM auch noch merken...
Der ADC kann übringens nach einer Wandlung automatisch einen Interrupt auslösen, sodass man das Problem auch im Hintergrund laufen lassen kann.
CU, Robin
Lesezeichen