Ein Video bei youtube =>
Es läuft immer besser
Befestigung der neuen Lenkstange mit Hilfe eines Drehlagers aus einem Fahrradpedal.
Die Zentralplatine, speziell für den Runner hergestellt.
Anzeige für Geschwindigkeit, Wegstrecke, Batteriespannung.
Verschiedene Probleme mussten bewältigt werden.
1. Das Fahren ist z.T. sehr zittrig. Es wurden ein Kalman-Filter und an
verschiedenen Stellen einfache digitale Filter in die Software eingefügt.
2. Beim einseitigen Überfahren kleiner Hindernisse auf der Straße und zum
Testen eines ca. 1,5cm dicken Holzstückes drehte sich der Runner in die
entsprechende Richtung. Bei gleich bleibender PWM-Ansteuerung des stärker
geforderten Rades war das selbstverständlich. Mit Hilfe eines Gyro-Sensors wurde
diese horizontale Drehung erfasst und das zu schwache Rad stärker angesteuert.
Nun fährt mein Runner auch bei Hindernissen gerade aus.
3. Au, au, das tat weh. Kein Sturz, wie man denken könnte. Nein, sondern
verschiedene Softwarefehler führten zu nicht vorhersehbaren Ereignissen.
Da war der Stack, dessen Größe in der Programmiersprache BASCOM vom
Programmierer festgelegt werden muss. Die vorgesehene Größe, die auch nach
verschiedenen Anpassungen ausreichend erschien, war plötzlich zu klein. Mein
Runner fuhr beim Aufsteigen und dem Betätigen des Fußschalters plötzlich mit
voller Kraft los. Natürlich gegen mein Schienbein. Da dieses Ereignis ohne
direkt vorhergehende Softwareänderung auftrat, war ein Programmfehler
auszuschließen. Nach dem Vergrößern des Stack und dem Aufkleben eines Pflasters
war das Problem behoben.
Die Programmzeilen nahmen in den nächsten Wochen weiter zu.
Vertieft in die Algorithmen des Programms traf es mein Schienbein erneut und an
der gleichen Stelle, was noch schmerzhafter war.
Der eingeschaltete Runner startete plötzlich ohne Betätigung des Fußschalters
und setzte sich mit voller Kraft in Bewegung. Das Problem konnte erneut durch
die Vergrößerung des Stack und einem Pflaster beseitigt werden.
Einige Zeilen zur Bestimmung des Stack-Bedarfs wurden in das Programm eingefügt,
um rechtzeitig reagieren zu können.
Auch die vorhergehenden Ereignisse lassen sich noch überbieten.
Nach dem Update auf die neue BASCOM-Version 2073 wurde das Steuerprogramm neu
kompiliert und
geflasht. Beim ersten Aufsteigen schießt mein Runner erneut mit
einer nie da gewesenen Kraft gegen das gleiche Schienbein. Die Fehlersuche
zeigte, dass die PWM-Signale beim Starten des Runners nicht bei 0% beginnen,
sondern bei 100% der Leistung. Somit erbrachten die Motoren zusammen eine
Leistung von 1000W bzw. 1,36PS. Mein Schienbein erlitt an den vorher schon stark
geschwollenen Stellen einen erneuten Schlag. Dies führte zu inneren Blutungen
und einer längeren ärztlichen Behandlung.
Meine Frau hat mir Schienbeinschoner für Fußballer geschenkt.
Aber warum trat dieser Fehler auf?
Der Hersteller des BASCOM-Compilers hat bei der PWM-Konfiguration die
Schlüsselwörter UP und DOWN getauscht und damit eine vorherige Definition
geändert. Aus einer logischen 1 eine logische 0 gemacht und umgekehrt. Nach der
entsprechenden Änderung der PWM-Konfiguration ist auch dieses Problem behoben.