Ferngesteuerter Elektrostarter / Anlasser für den Reely RC Truggy Overheater
Written by Bastian Raschke.
Published 2015-04-05 in the category Arduino.
Meinen Overheater von Reely habe ich eigentlich schon länger bei mir rumstehen. Letzten Monat hatte ich jedoch mal wieder richtig Lust bekommen, den Nitro-Verbrenner anzuschmeißen und schön zu heizen. Nach einem langen Vergasereinstell-Marathon hat es dann auch wirklich Spaß gemacht, den 1:8-Offroader über die Piste zu jagen.
Doch nach einigen Fahrten unter Extrembedingungen mit viel Schmutz und Dreck ist wohl ein bisschen „Sand ins Getriebe“ gekommen, was speziell der Seilzugstarter wenig lustig fande und teilweise nicht mehr einzog. Nach der Demontage ist mir das billig gefertigte Endstück der Feder abgebrochen, wodurch ich einen Ersatz finden musste - und „zu den Sternen“ gesehen habe: Ein Elektro-Starter musste her - natürlich on-board und fernstartbar.
Ich dachte nur: Challenge accepted ;-)
Aber zunächst ein paar Bilder von der Fahrt:
Vielen Dank an Martin, der diese tollen Aufnahmen geschossen hat.
Das Problem
Nun nach diesen Fahrten war der Overheater erst mal ein Fall für die Reinigung und Wartung. Dank Druckluft war er recht schnell wieder hübsch anzusehen. Der Seilzugstarter machte jedoch nun meist nur noch „sandige“ Geräusche und blieb immer einige Zentimeter zu lang hängen. Ich persönlich fand es eine Frechheit, wie teuer das Ersatzteil mit rund 20 Euro sein sollte. Eine Reparatur bzw. Reinigung ist eigentlich möglich, doch leider ist dabei das Endstück der Feder weggebrochen, was nicht gerade hilfreich war. Mit etwas Geduld hätte ich das Ding sicher wieder zum laufen bekommen, aber dafür ist mir meine Zeit zu schade - und ich war nicht bereit, wieder 20 Euro für so einen Mist zu bezahlen, der bei etwas Beanspruchung schon sofort aufgibt.
Der defekte Seilzugstarter (demontiert)
Meine Lösung
Nun habe ich als Ersatzteil bei Conrad einen Elektrostarter (zwar doppelt so teuer wie ein Seilzugstarter aber immerhin eine Lösung für längere Dauer) gesehen, der Nitro-Motoren bis zu 3,1 ccm starten soll. Mein Overheater hat mit 4,1 ccm zwar deutlich mehr Hubraum, aber „das packt der schon“ dachte ich mir und bestellte das Teil.
Umbau des Senders
Nun, alles ja ganz fein, aber das sollte ja auch möglichst per Knopfdruck funktionieren, am besten direkt am Sender. Ich habe einen recht günstigen 3-Kanal-Sender, wo schönerweise der 3. Kanal noch nicht belegt war. Also konnte ich diesen als meinen Zündkanal nutzen. Jedoch hatte der Sender nur einen Schiebeschalter, der erstens nicht toll aussah und zweitens auch nicht geeignet zum Elektrostarten ist. Also habe ich einen Druckschalter in die Fernbedienung eingebaut und parallel zu dem anderen Schalter gelötet:
Der umgebaute Sender mit Start-Schalter
Mein funkgesteuertes Relais
Nun war die Frage, wie ich den Signalpegel nutzen kann, um ein Relais zu schalten, welches locker Schaltstrom von mehr als 5A (auf 7,2V) für den Anlasser packt. Natürlich hatte ich keine Lust, ein Fertigelement zu kaufen, die es zu Modellbaupreisen ab ca. 15 Euro zu kaufen gibt. Ich sammele lieber Erfahrungen und habe Spaß dabei - und dachte dabei sofort an Arduino und die AVR-Mikrocontroller.
Schönerweise habe ich im deutschsprachigen Arduino-Forum einen Beitrag gefunden, der mir sehr weitergeholfen hat. Mit der Funktion pulseIn
kann man eben solche Signalpegel auswerten. Und der dort genannte Sketch hat bei mir sogar sofort funktioniert, was mich nochmals schwer von der Plattform begeistert hat.
Nun kann man jedoch nicht einen kompletten Arduino auf dem Overheater rumschleppen, da dieser zu groß und teuer für diese Anwendung ist. Und ich wollte schon lange mal ein Projekt auf einen ATTiny85 packen mit eigener Platine - und dass passte dann wie die Faust aufs Auge ;)
Der Prototyp
Ich hatte mich in der Vergangenheit bereits etwas informiert (unter anderem hier), wie eine eigenständige Platine bzw. eher Schaltung gestaltet werden solle, damit diese möglichst stabil läuft. Da ich kein Elektrotechniker bin, habe ich dies nach meinen besten Kenntnissen gemacht. Schließlich war mein Prototyp fertig:
Planung der Platine
Nun ging es an das Platinen-Layout. Da ich weder Erfahrung noch Ausrüstung zum Layouten und Ätzen von Platinen habe, habe ich mit einer Lochraster-Platine gearbeitet. Ein wirklich tolles Open-Source-Programm zum Designen ist BlackBoard von Matthias Pueski - meinen großen Dank an dieser Stelle! Folgendes Layout ist dabei entstanden:
Platinen-Layout der Schaltung (komplett von oben; obere Ebene; untere Ebene)
Die rote Bahn ist dabei immer die Spannung, die blaue ist Ground, die gelben Signalleitungen und die grüne ist das Eingangssignal. Die Spannungsversorgung läuft über den Empfänger, die Spannung wird durch einen Spannungswandler auf 5V gebracht, dabei wird auf beiden Seiten mit je einem Elko (100 µF) gepuffert, zusätzlich auf der 5V-Seite mit einem Keramikkondensator (100nF). Die LED wird mit einem Vorwiderstand (1 kOhm) verbunden, der gesockelte ATTiny85 wird mit einem Pullup-Widerstand (10 kOhm) an der Reset-Leitung vorsorglich „am Leben gehalten“. Der Poti ermöglicht es, die Schaltschwelle durch das Signals anzupassen. Der NPN-Transistor wird durch den ATTiny geschaltet, wodurch schließlich das Relais geschaltet wird. Der ATTiny kann das Relais nicht direkt schalten, da 100 mA Strom benötigt werden, die Ausgabeleitung des ATTinys aber nur ca. 20 mA liefert. Weiterhin wird noch eine Diode eingesetzt, um das Relais zu schonen. Mehr gibt es eigentlich nicht zu sagen.
Folgende Teile habe ich genutzt:
- 2x Elektrolyt-Kondensator (100µF; 16V)
- 1x Keramik-Kondensator (100nF)
- 1x Spannungswandler 5V (z.B. L78S05CV TO220)
- 1x beliebige LED (3mm)
- 1x Widerstand für LED (1 kOhm)
- 1x Widerstand (10 kOhm)
- 1x Potentiometer (z.B. 500 kOhm)
- 1x NPN-Transistor (z.B. BC337 TO-92)
- 1x ATtiny85-20PU
- 1x passender IC-Sockel (8-polig)
- 1x Leistungsrelais (5V; 10A Leistung)
- 1x Freilaufdiode
- 1x 2er-Schraubklemme (Rastermaß 2,54mm)
- beliebige Lötpunktrasterplatte
Zusätzlich habe ich noch verwendet:
- bleihaltiges Lötzinn inkl. Flussmittel (1,0mm Durchmesser)
- Silberdraht (0,6mm Durchmesser)
Voilà - die fertige Platine
Die fertige Platine (Ansicht von oben und unten)
Der Arduino-Sketch
Folgend noch der Arduino-Sketch für den ATTiny85:
int PIN_RX_SIGNAL = 0;
int PIN_RELAIS = 1;
int PIN_POTENTIOMETER = 3;
void setup()
{
pinMode(PIN_RX_SIGNAL, INPUT);
pinMode(PIN_RELAIS, OUTPUT);
digitalWrite(PIN_RELAIS, LOW);
}
int valueRXSignal;
int valuePotentiometer;
int valueMappedPotentiometer;
void loop()
{
valueRXSignal = pulseIn(PIN_RX_SIGNAL, HIGH, 24000);
valuePotentiometer = analogRead(PIN_POTENTIOMETER);
valueMappedPotentiometer = map(valuePotentiometer, 0, 1023, 0, 2500);
if ( valueRXSignal >= valueMappedPotentiometer )
{
digitalWrite(PIN_RELAIS, HIGH);
}
else
{
digitalWrite(PIN_RELAIS, LOW);
}
}
Eingebaut in ein Universalgehäuse sieht die Platine wie folgt aus:
Eingebaute Platine in Overheater
Das Ergebnis
Und folgend nochmal alles fertig montiert. Wenn ich an dem Sender den Zündschalter betätige, schaltet das Relais und gibt den Strom von einem zusätzlichen Akku-Racing-Pack (7,2V) an den Anlasser weiter, welcher den Motor souverän durchdreht und zündet. Das einzige Problem ist, dass der Anlasser wegen des großen 4,1 ccm-Motors recht dicht sitzt, weswegen ich den Elektromotor mit Glaswolle thermisch etwas isoliert habe.
Der montierte Elektrostarter (Hinter- und Vorderansicht)
Demonstrationsvideo
Und noch ein kleines Video zu dem Projekt:
Ich wünsche viel Spaß beim Heizen - ohne extra Seilzug-Bizeps-Training ;)
Update (2015-10-06):
Ein paar neue (bessere) Bilder hinzugefügt.
Tags: Truggy Overheater, Arduino, DIY