ich habe ein kleines Sketch geschrieben mit <servo.h>, um einen kleinen Modellbauservo anzusteuern. Das funktioniert soweit auch erst mal hervorragend!
Jetzt möchte ich aus mehreren Gründen, dass der Servo nur seine Stromversorgung bekommt, wenn er auch was stellen muss. Er wird immer nur kurzzeitig benötigt und soll danach die Position nicht weiter halten.
Dazu muss man wohl oder übel seine Stromversorgung abschalten. Dass habe ich zuerst über einen NPN-Transistor (BC338) in Kollektorschaltung probiert mit 1K Basis-Vorwiderstand (Verstärkung 400 x 5mA = 2A sollte reichen). Das funktioniert zwar, allerdings schafft der Servo so nur noch den halben Stellstrom. Liegt vermutlich am Spannungsfall über die Transistorstrecke.
Mit ein FET wollte ich jetzt nicht weiter experimentieren (welche bei 5V auch schlecht durchschalten außer spezielle LL-Typen, die ich nicht habe), sondern lieber gleich ein Relais nehmen. Ich habe zwei 5V-Relais in meiner Sammlungen (=irgendwo mal ausgeschlachtet) gefunden, die passen müssten: Ein Omron mit 28mA Spulenstrom und ein Axicom mit 30mA, wobei ich noch nicht weiß, ob ich das Omron auf einer normalen Platine bekommen (war eigentlich ein SMD-Typ, man kann die Beinchen aber "lang" machen und RM passt auch)
Jetzt lese ich immer, dass man Relais nicht direkt ansteuern soll. Bei 30mA möchte ich es trotzdem gerne probieren um mir weiteres Hühnerfutter und Stromverschwendung zu sparen. Es sei denn, es gibt wirklich einen guten Grund, das nichts zu tun? Eine schnelle 1N4148 als Schutzdiode (Freilauf parallel zur Relaisspule) in Sperrrichtung kommt natürlich mit rein.
Meine 2 Fragen an die Experten wären jetzt noch:
Das Relais mit einem Digitalausgang des Nanos lieber gegen LOW oder gegen HIGH schalten? Oder ist das beim Nano völlig egal? Ich habe bisher nur etwas von 40mA max gelesen, aber nicht ob nach GND oder +5V.
Sollte ich lieber die +5V oder den GND-Leitung zum Servo mit dem Relais schalten? Das Ansteuersignal vom Nano liegt weiterhin an der Steuerleitung an. Nur zur Klarstellung: Der Servo wird natürlich nicht über einen Digitalausgang versorgt, sondern über den 5V-Pin und GND-Pin des Nanos. Einen von diesen gilt es mit dem Relaiskontakt zu schalten. Der Nano selbst wird über USB 5V/2A gespeist.
Nein, musst Du nicht. Es reicht die Steuerimpulse abzuschalten. Nahezu alle Servos regeln dann nicht mehr nach und halten die Position nicht.
Ein BC338 kann keine 2A schalten. Die Stromverstärkung gilt nur für wesentlich kleinere Ströme.
Die 40mA sind die 'maximum Ratings'. D.h. der Hersteller garantiert, dass der Baustein bis max 40mA nicht dauerhaft kaputtgeht. Dass er da noch funktioniert wird damit nicht gesagt.
Der Ausgangsstrom im normalen Betrieb sollte nicht über 20mA sein. (Edit: wobei noch weitere Begrenzungen gelten. Auch der Summenstrom über mehrere pins ist begrenzt.)
P.S. Wie steuerst Du die Servos an? Meine MobaTools können das Abschalten der Servopulse automatisch erledigen, wenn der Servo nicht mehr bewegt wird.
Danke für den Tipp noiasca. Das hat mir doch sehr weitergeholfen. Es funktionierte bei den aktuellen Servo leider nicht. Aber bei anderen optisch absolut Baugleichen, welche ich wesentlich früher mal bestellt habe, allerdings schon. Es handelt sich um die 9g Mikro-Servos aus Fernost im blau-transparenten Gehäuse. Krass, dass die nicht alle baugleich sind.
Bei allen größeren "richtigen" Modellbauservos, die ich jetzt noch gefunden und getestet habe, klappt das tatsächlich ausnahmslos! Die kommen aber leider wegen der Größe nicht in Frage.
Dann muss ich auf gut glück wohl noch mal ein paar 9g Servos aus China bestellen und hoffen, dass sie abschalten.
@microbahner: Dir auch danke für den Tipp!
Ja, der BC338 kann keine 2A, sondern nur 800mA. Der Servo zieht unter volllast nur 400-500mA. Mit BC338 waren es nur noch 200mA. Er sollte aber voll durchschalten.
Also bei 20mA-40mA kann der Arduino Nano kaputt gehen, muss aber nicht? Gibt es da Erfahrungswerte? Mit 30mA läge ich dann ja im Mittelfeld. Ich habe nur gelesen, dass aber 20mA die Ausgangsspannung einbricht.
Danke auch für den Tipp zu Deine MobaTools Library. Wenn ich mal für ein Projekt mehr als 1 Servos nutzen möchte, werde ich darauf zurückgreifen. Dann vermutlich mit ESP32. Ich habe aber noch nichts in Planung. 1Servo reicht mir für mein Problem gerade völlig aus.
Nein. Bis 40mA hält der Chip ja aus ohne dauerhaft kaputtzugehen. Nur die Eigenschaften lt. Datenblatt hält er nicht mehr ein. Ausserdem leidet die Lebensdauer. Im Datenblatt steht:
This is a stress rating only and
functional operation of the device at these or
other conditions beyond those indicated in the
operational sections of this specification is not
implied. Exposure to absolute maximum rating
conditions for extended periods may affect
device reliability
Du solltest also grundsätzlich bei den Werten aus den 'operational sections' bleiben. Und das sind die 20mA.