RC Fahrtregler mit Mikrocontrollersteuerung

 

Fahrtregler mit 89C2051 Controller

Fahrtregler mit Controller 89C2051

 

Fahrtregler mit Controller AVR 90S2313

Fahrtregler mit Controller AVR 90S2313

Die ersten Versuche der Fahrtregler machte ich mit dem mir vertrauten Mikrocontroller 89C2051 von Atmel. Die ersten positiven Ergebnisse folgten auch sehr rasch, und das Modellfahren konnte beginnen. Natürlich  stiegen noch rascher die Anforderungen an die nächste Version des Fahrtreglers, und ich überlegte mir, was man noch einbauen könnte, bzw. wie man das eine oder andere Problem umgehen könnte. Nach dem die ersten Akkus erfolgreich leergefahren wurden, musste ich mir selbst eingestehen, dass die Softwaremöglichkeiten des 89C2051 eigentlich nicht das waren, was ich mir für die weitere Entwicklung vorstellte. Der Prozessor ist eigentlich zu langsam (trotz der 24Mhz, da intern ja durch 12 geteilt wird), hat zu schlechte Interrupteigenschaften (nur low Flanke/Pegel möglich) und ein Watchdog wäre doch auch schon das eine oder andere mal nützlich gewesen, als sich der Prozessor durch Induktionsspannungen vom Motor aufgehängt hat. Ich wurde bei Atmel und den neueren AVR RISC Prozessoren fündig, die den für mich nicht zu unterschätzenden Vorteil der Pinkompatibilität mit dem 89C2051 haben. (dadurch werden sie auch für alle anderen Projekte mit diesem Prozessor eine Alternative). Bei diesen Mikrocontroller waren auch die Interrupts so, wie ich es mir vorstellte (wahlweise positive oder negative Flanke), es gibt einen Watchdog, und die Befehlsabarbeitung ist 4* schneller (bei 8Mhz, verglichen mit 24 Mhz des 89C2051). Ausserdem gibt es ein internes eEprom, was für eine Parameterspeicherung sehr nützlich ist. Und als Clou gibt es noch zwei "abgespeckte" Versionen mit nur 8 Pins und damit optimal für eine zukünftige mini Version geeignet.

Hier sind die ersten Varianten meiner Fahrtregler, aber natürlich sind Weiterentwicklungen (nur noch mit AVR) bereits in Arbeit, u.a. auch ein Rückwärtsregler, bei dem hapert es aber im Moment noch an dem genügend kleinen Layout, er wird wohl komplett in SMD aufgebaut werden.

Fazit und Warnung an alle potentiellen Selberbauer:
Die Schaltungen sind zum Nachbauen für diejenigen geeignet, die mit Mikrocontrollerschaltungen schon einige Erfahrung gesammelt haben, und abschätzen können, ob sie eine solche Schaltung auch in Betrieb nehmen können, und mit möglicherweise auftretenden Störungen durch die hohen Motorströme zurecht kommen. Diese Schaltung läuft in kleinen Variationen bei mir und einigen Freunden bereits in mehreren Modellen und an 3 verschiedenen Fernsteuerungen, was aber nicht heisst, dass es in anderer Konstellation und insbesondere bei anderen Motoren nicht doch zu Problemen kommen kann! Insbesondere habe ich keinerlei Erfahrung, wie sich Bauteiletoleranzen eventuell auswirken.
Durch die möglicherweise unterschiedlichen Servosignale und die unterschiedlichen Signalzeiten verschiedener Fernbedienungen muss gegebenenfalls auch die Software angepasst werden, was nicht ohne entsprechendes Equipment und zumindest rudimentäre Programmiererfahrung zu machen ist.

Für alle die trotz aller Warnungen weiterlesen, und noch nicht aufgegeben haben ;-)
Die unbestreitbaren Vorteile von Profi Reglern, die allesamt erst im Preissegment jenseits der 200.- DM starten sind: kein Motorlimit, hohe Ansteuerfrequenz für den Motor (dadurch gleichmäßigerer Lauf und etwas besserer Wirkungsgrad, allerdings nur noch für den Profi unterscheidbar), gleichmäßiges, und in der ganz teuren Klasse auch ein programmierbares Regelverhalten. Dazu ein Bremslichtanschluss für die, die eine Realitätsnähe möchten, eventuell noch ein Rückwärtsganglicht.
Das alles sollte mindestens in meinen Fahrtreglern drin sein, dazu noch wenn möglich eine bessere Umschaltung für den Rückwärtsgang, denn wer bremst schon genau die 2 Sekunden bevor der (käufliche) Regler auf rückwärts umschaltet. Da meine Fernsteuerung einen 3. Kanal hat (der Empfänger natürlich auch) wollte ich diesen auch entsprechend nutzen. Bei reinen Vorwärtsreglern gibt es damit aber keine Probleme, die AVR Variante des Vorwärtsreglers nutzt diesen Kanal ebenfalls, dort aber zur Steuerung eines Rücklichtes.
Das Regelverhalten der meisten käuflichen Regler misst beim Abgleich den Nullpunkt, sowie den Maximalausschlag für Vollgas und Bremse. Im optimalen Fall, werden zwischen diesen Werten tatsächlich 255 Schritte für den Motor erzeugt, was für eine gleichmäßige Regeleigenschaft sprechen soll. Jetzt kann jeder mal versuchen, 255 Positionen mit dem Handregler einzustellen, und dann noch 255 verschiedene Motorgeschwindigkeiten zu erkennen. In der Praxis ist es so, dass der Motor im unteren Bereich recht feinfühlig auf die Änderung der Gasstellung reagiert, im oberen Bereich allerdings deutlich weniger Unterschiede festzustellen sind. Jetzt gibt es tolle Profi Fernsteuersender, die ein Einstellen der Gaskurve möglich machen, also dem eben beschriebenen Effekt entgegenwirken können. Das ist durchaus Sinnvoll bei Benzingetriebenen Motoren, die ein mechanisches Servo als Gassteuerung benutzen, bei einem elektronischen Fahrtregler geht das natürlich auf kosten der Anzahl der Steuerschritte, und wird in meinen Reglern durch das Programm realisiert. Somit wird ein "verstellen" der Gaskurve durch den Fahrtregler umgesetzt. (Tabellengesteuert). Ähnlich machen das auch die sehr teuren Profi Regler für Rennfahrer (z.B. Novak) für die es z.B. eine PC Software zum Anpassen auf Motor und Auto gibt. Eben diesen "Aufschlag" wollte ich ja mit meinen Fahrtreglern einsparen ;-)

Einige Erfahrungen, mit denen ich vor Beginn der Arbeiten so nicht unbedingt gerechnet hätte sind Folgende:
Man merkt auch als "nicht Rennfahrer" sehr wohl einen Unterschied im direkten Vergleich, ob man Leistungsfähigere FETs und die möglichst noch in höherer Anzahl verwendet, oder dort gespart hat. Auch sind die Bremsströme nicht zu vernachlässigen! Sind die Leiterbahnen dort zu schmal, brennen sie ruck zuck durch, was ich besonders in der Software Entwicklungsphase manchmal als Programmierfehler interpretiert hatte.

Insbesondere beim Testen während der Programmentwicklung sollte man sich nicht dazu verleiten lassen, die Schaltung aus einem Netzteil zu speisen, wenn eine (auch kleinere) Last in Form eines schwächeren Motors angeschlossen ist. Die Ströme die beim anlaufen des Motors auftreten liegen im Bereich deutlich jenseits 10A und der auftretende "brumm" und die Spannungsschwankungen "versauen" manches Messergebnis. Das Verhalten der Schaltung ist nur an einem geeigneten Akku reproduzierbar. Dieser sollte jedoch bei den ersten Versuchen nicht ganz prall geladen sein, um bei möglichen Kurzschlüssen wenigstens noch eine kurze Reaktionszeit zu haben.
Achtung bei beinahe leeren Akkus, sie reagieren durch den höheren Innenwiderstand viel mehr auf hohe Belastungen durch abfallen der Spannung. Die interne Spannungsregelung des Fahrtreglers muss darauf eingerichtet sein. Bei dem AVR Fahrtregler ist zusätzlich noch eine "Watchdog" Routine eingebaut, falls sich der Mikrocontroller mal bei Spannungseinbruch "aufhängt".

Also nochmal: Jeder sollte sich genau überlegen, ob der Selbstbau für Ihn selbst Sinn macht, und ob er den eventuell auftretenden Problemen gewachsen ist. Ein weiteres Thema in diesem Zusammenhang ist die mögliche Störung von anderen RC Fahrern mit möglicherweise empfindlicheren, weil vielleicht nicht so hochwertigen Empfängern. Also nicht gleich den ersten Test auf einer vollen Bahn machen!
 
 
 
 

Letzte Änderung dieser Seite: 15.10.2001


 Diese Seite ist Teil eines Framesets. Kein Inhalsverzeichnis? Mit Home gelangen Sie zum Index.