L298N Motortreiber mit RC Fernsteuerempfänger verbinden

Der Servoausgang  eine RC Empfängers stellt zwar alle Informationen bereit, die zur Steuerung eines L298N Motortreibers benötigt werden, aber das Signal muss in geeigneter Weise ausgewertet und neu kodiert werden, da die Ansteuerungslogik des Motortreibers grundsätzlich anders ist als die eines RC Servos.

Diese Aufgabe kann der RCRX2Bridge Baustein übernehmen. Es handelt sich dabei um eine Ein-Chip-Lösung, die jeweils einen Kanal auswertet und damit einen Motor der L296 Brücke ansteuert. Die Schaltung ist sehr einfach und der Baustein mit dem Breakout-Board schnell aufzubauen.

RCRX2Bridge Breakout Board
RCRX2Bridge Breakout Board

 

RCRX2Bridge unterstützt die zwei gängigen, aber unterschiedlichen Ansteuerungen von L298N Brücken: Modelle mit 2/4 Phasen und Modelle mit zwei Logik- und einen Speed-Eingang.

Ansteuerung von Brücken mit zwei Eingängen

Typischer L298N Motortreiber mit zwei Eingängen je Motor
Typischer L298N Motortreiber mit zwei Eingängen je Motor

 

Der RCRX2Bridge Baustein wird eingangsseitig, wie im Beitragsbild dargestellt, mit dem Empfänger verbunden. Die Eingangspins des Motortreibers IN1 und IN2 werden wie im Beitragsbild gezeigt, mit den Ausgangspins des Breakout-Boards verbunden. Soll noch ein zweiter Motor angesteuert werden, dann ist dazu ein zweites RCRX2Bridge -Modul erforderlich.

Ansteuerung von Brücken mit drei Eingängen

Typischer L298N Motortreiber mit drei Eingängen
Typischer L298N Motortreiber mit drei Eingängen

 

Konfiguration des RCRX2Bridge für Motortreiber mit drei Eingängen
Konfiguration des RCRX2Bridge für Motortreiber mit drei Eingängen

Für diesen Anwendungsfall wird der RCRX2Bridge Baustein durch eine Lötbrücke bei “MODE” für die geänderte Logik konfiguriert und dann auch in diesem Fall eingangsseitig, wie im Beitragsbild dargestellt, mit dem Empfänger verbunden.

Die Eingangspins des Motortreibers ENA, IN1 und IN2 werden wie im Bild gezeigt, mit den Ausgangspins des Breakout-Boards verbunden. Soll noch ein zweiter Motor angesteuert werden, dann ist dazu auch hier ein zweites RCRX2Bridge -Modul erforderlich.

 

Der Bausatz für das Breakout-Board mit dem RCRX2Bridge Controller ist im Shop erhältlich.

 

Fernsteuerung mit Gamepad oder Joystick

Überblick

Bereits im vorherigen Beitrag wurde die Möglichkeit vorgestellt, mit einem Joystick oder Gamepad, einem PC und einem PiKoder/SSC bis zu acht Servos über eine USB-Schnittstelle zu steuern. Hier wird nun beschrieben, wie eine drahtlose Modellfernsteuerung mit einem PiKoder – Empfänger, dem PiKoder/SSC RX, realisert werden kann.  Zur Signalübertragung kommt Bluetooth zum Einsatz.

Aufbau

Zunächst ist der PiKoder/SSC RX auf der Ebene des Betriebssystems mit dem PC zu verbinden. Hierzu sucht man zunächst in der Gerätesteuerung nach neuen Bluetoothgeräten.

Nach kurzer Zeit sollte das Bluetooth-Modul des Empfängers angeboten werden. Der PIN lautet “1234”.

Mit der Auswahl “Verbinden” erfolgt die Kopplung (Pairing) auf Systemebene.

Wie die folgende Ansicht aus dem Geräte-Manager zeigt, werden mit der Kopplung systemseitig auch zwei virtuelle serielle Schnittstellen angelegt auf die wir später im Programm zum Verbindungsaufbau zugreifen. 

Damit ist die Einrichtung abgeschlossen und das Programm JoystickRC kann jetzt wie im vorherigen Beitrag beschrieben gestartet werden. 

Servos mit Gamepad oder Joystick steuern

Überblick

Im Bereich der Robotik ergibt sich häufiger die Notwendigkeit mehrere Servos drahtgebunden anzusteuern, z.B. bei der Realisierung eines Roboterarms oder eines Underwater ROV. Hierbei bietet sich die Bedienung mit einem Gamepad oder Joystick an, weil die Vielzahl der Achsen / Freiheitsgrade die effiziente Kontrolle vieler Kanäle ermöglicht.

Dieser Blog beschreibt den Aufbau, um mit der kostenlosen Windows APP JoystickRC acht Servos drahtgebunden zu kontrollieren.

Die Abbildung der Achsen und Schalter auf die Servokanäle erfolgt flexibel in der Software. Die eigentliche Impulserzeugung für die Servos übernimmt ein PiKoder Serial Servo Controller (PiKoder/SSCng), der über seine USB-Schnittstelle mit dem PC verbunden ist. 

Aufbau

Der Aufbau erfolgt idealerweise mit Hilfe eines PiKoder/SSCng –Entwicklungsboards und mit einem Standard USB-Kabel. Die Spannungsversorgung des PiKoder erfolgt über den USB Port. Da die USB-Schnittstelle nicht genügend Leistung zum Betrieb der Servos liefern kann, sind diese mit einer unabhängigen Spannungsquelle über die Anschlussleiste zu versorgen. Um Ausgleichströme zu verhindern, die den PC beschädigen könnten, darf der Jumper auf der PiKoder-Leiterplatte auf keinen Fall gesteckt sein. Nähere Informationen finden Sie im User Manual der PiKoder.

Software

Das Programm JoystickRC ist kostenlos im Microsoft Store erhältlich. Weitere Hinweise zur Bedienung finden Sie auf der Webseite des Programms.

 

Tester für Metz MECATRONIC Rudermaschine 190/18

Derzeit beschäftige ich mich mit der Restaurierung einer Metz MECATRON ‘BABY’ Funkfernsteuerung. Zum Test und zur Inbetriebnahme der Rudermaschine wollte ich nicht jedesmal die gesamte Fernsteuerung einschalten und habe mir daher einen einfachen Tester gebaut.

Dieser Tester bildet den Ausgang des Empfängers 191/S – ein Relais mit einem Umschaltkontakt – mit einem entsprechenden Taster nach. So kann dann die Funktion der Rudermaschine, die abhängig von der eingesetzten Schaltscheibe ist, getestet werden.

In meinem Fall ist die Schaltscheibe 1 eingesetzt; damit wird gemäß der Bedienungsanleitung folgender Schalterrhythmus realsiert:

  • Sendertaste gedrückt: Ruder links, solange Taste gedrückt bleibt
  • Sendertaste kurz drücken (ca. 0,4 Sekunden), kurz loslassen (ca. 0,4 Sekunden) und gedrückt halten: Ruder rechts, solange Taste beim zweiten Mal gedrückt gehalten wird.
  • Nach Loslassen des Senderknopfes geht das Ruder immer von selbst in Stellung neutral.

Im hier vorgestellten Aufbau entspricht natürlich der Senderknopf dem Taster.

Der Tester kann sehr einfach auf einer Laborleiterplatte aufgebaut werden und der Verdrahtungsaufwand ist minimal. Den benötigten 7-poligen Stecker zur Verbindung mit der Rudermaschine habe ich, wie im Bild sichtbar,  durch das Einstecken von Lötnägeln in eine 7-polige Röhrenfassung realisiert.  

Als Referenz für eigene Versuche habe ich die Bedienungsanleitung der Rudermaschine gescannt.

 

 

WLAN Modellfernsteuerung mit Arduino

Der Open Source Arduino Sketch arduinodtx implementiert die Bedieneroberfläche und die Bedienelemente für einen leistungsfähigen Modellfernsteuerungssender mit einem seriellen Kommandoausgang (PiKoder/SSC kompatibel). Für die Kommandoübertragung zum PiKoder wird ein transparenter serieller Kommunikationskanal benötigt.

Soll WLAN als Übertragungsweg genutzt werden, dann kann ein solcher Kanal senderseitig mit einem ESP8266-01 Modul realisiert werden; als Empfänger kommt ein PiKoder/SSC wRX zum Einsatz.

In diesem Fall werden neben den Basiskomponenten wie Steuerknüppeln, Schalter, etc., die zum Aufbau des arduinodtx-basierten Fernsteuersenders erforderlich sind, ein Logic Level Umsetzer von 5 auf 3,3 Volt, zwei Jumper zur Umschaltung der seriellen Kommunikationsschnittstelle (UART-Multiplexer) und ein ESP8266-01 Modul benötigt wie im Beitragsbild dargestellt. Die Verdrahtung entnehmen Sie dem folgenden Schaltbild (die Signale mit gleicher Bezeichnung müssen verbunden werden, Signale in blauer Schrift sind mit den entsprechenden Arduino-Signalen zu verbinden):

Der Aufbau ist relativ einfach und sollte problemlos auf einem Prototyp-Board erfolgen können.  

Im nächsten Schritt ist der ESP8266-01 als Access Point mit seriellem Ausgang zu programmieren – die Beschreibung hierzu finden Sie im Blog ESP8266-01 Sketch für den PiKoder/SSC wRX. Wollen Sie den ESP8266-01 im “eingesetzten Zustand” programmieren, dann müssen Sie die dargestellte Schaltung um einen Programmierteil erweitern:

Bitte beachten Sie auch die Jumperstellung für D0/D1. Zusätzlich sollte bei jeder direkten Kommunikation mit dem ESP8266-01 der Arduino “stillgelegt” werden (RESET Leitung auf GND legen), so dass die Datenübertragung nicht gestört wird.

Mit dem erfolgreichen Abschluss der Programmierung des ESP8266-01, dem Umstecken der Jumper, Aufwecken des Arduino und einem Reboot ist die Modellfernsteuerung betriebsbereit. 

 

Servo Tester digital und präzise

Übersicht

Der hier vorgestellte Servo Tester ist mit einem Controllerbaustein versehen und ermöglicht so gegenüber einem einfachen Aufbau mit RC-Gliedern eine stabile Impulserzeugung (Impulsbreite: 1 ms – 2 ms). Hierzu wird der interne Oszillator heran gezogen, der im gewählten Bereich der Versorgungsspannung mit einer Genauigkeit von 1% spezifiziert ist.

Weiterhin zeichnet sich der Servotester dadurch aus, dass im Gegensatz zu anderen einfacheren digitalen Geräten der Versorgungsspannungsbereich von 4,8 V – 6 V abgedeckt wird; damit kann der Servotester auch mit dem BEC-Anschluß eines Fahrtreglers verbunden werden. Die Polarität des Impulses zur Servoansteuerung kann hardwaremäßig eingestellt werden.

Darüber hinaus ermöglicht der Servo Tester den Einsatz von Servos für andere Einsatzzwecke wie z.B. zum Drehen und Schwenken von Überwachungskameras.

Schaltung

Die Schaltung basiert auf dem PIC12F675, der den Servotester steuert. Die Versorgungsspannung des Controllers wird durch einen entsprechenden Regler auf 3,3 V abgesenkt; damit wird einerseits die höchste Genauigkeit des internen Oszillators erreicht und andererseits kann so der große Versorgungsspannungsbereich des Testers gewährleistet werden.

Allerdings erfordert dieser Ansatz einen Treibertransistor Q1, der die Pegelanpassung zur Ansteuerung des Servos vornimmt. Die Versorgungsspannung des Servos ist direkt durch geschleift, so dass Servos oder Motorregler entweder mit der bereits im Modell vorhandenen Batterie / BEC-Versorgung durch den Fahrtregler oder mittels einer zusätzlichen Spannungsversorgung getestet werden können (in dieser Konfiguration ist sicherzustellen, dass keine Versorgung über den Servostecker erfolgt).

Über den Jumper JP3 wird die Polarität des Steuerimpulses für das Servo eingestellt. Bitte beachten Sie, dass es sich bei der LED um eine Bi-Color-LED handelt.

Bedienung

Die Bedienung ist einfach und intuitiv. Der Servotester verfügt über zwei verschiedene Betriebsarten: der Manual-Mode, bei dem die Steuerung des Servos per Drehknopf P1 erfolgt und die Neutralstellung eingestellt werden kann und dem Exercise-Mode, in dem das Servo automatisch zwischen den Anschlägen hin- und her gefahren wird. Der Wechsel zwischen den beiden Betriebsarten erfolgt durch die Betätigung des Tasters S1. Über die LED kann jeweils erkannt werden, in welchem Modus sich der Servotester befindet.

Nach dem Einschalten befindet sich das Gerät im Manual-Mode und die Servoposition wird durch Drehung des Potentiometers P1 eingestellt. Im Impulsbereich außerhalb des Fensters von 1,45 ms und 1,55 ms leuchtet die LED grün. Um die Neutralstellung definiert anzufahren, wechselt die Farbe der LED innerhalb dieses Fensters auf gelb bzw. beide Farben der LED leuchten und bei Erreichen der Neutralstellung von 1,5 ms wird schließlich rot angezeigt; es muss also kein Taster gedrückt werden und beide Hände sind frei, um ggf. Justagearbeiten durchführen zu können.

Im Exercise Mode stehen zwei Geschwindigkeiten zur Auswahl. Die LED blinkt in dieser Betriebsart rot und zeigt über ihre Blinkfrequenz an, welche Geschwindigkeit gewählt wurde (0,25 s entsprechend 2 x blinken/Sekunde oder 15 s (entsprechend einmal 2 s an, dann 2 s aus) von Endausschlag zu Endausschlag). Die Umschaltung der Geschwindigkeit erfolgt durch Verdrehung des Potentiometers: wird eine Impulslänge größer als 1,5 ms eingestellt, dann wird der Exercise Mode mit hoher Geschwindigkeit gewählt, ansonsten erfolgt die langsame Ansteuerung des Servos.

Software Download

Die Firmware für den Servotester (Release 1.0) ist Freeware, die gemäß dem zugrunde liegenden End User License Agreement (EULA) für private, nicht kommerzielle Zwecke ohne Einschränkungen genutzt werden kann.

Servotester Bausatz und Komponenten

Im Shop finden Sie einen kompletten Bausatz für den Tester.

Modellfernsteuerung über WLAN mit Smartphone

Dieser Beitrag zeigt, wie einfach es ist, ein ferngesteuertes Modellauto – hier einen Crawler – auf eine Fernsteuerung mit dem Smartphone und WLAN umzurüsten. Durch die Verwendung des Pretzelboards als Empfänger beschränkt sich der Hardware-Bauaufwand auf eine Prototyp-Leiterplatte zur elektrischen und mechanischen Adaption des Boardes. Der benötigte Sketch sowie die Android App stehen im Beitrag zum Download bereit.

Aufbau Empfänger

Die Schaltung des Empfängers kann durch den Einsatz des Pretzelboards sehr einfach gehalten werden. Die Spannungsversorgung  erfolgt über den Fahrtregler, der normalerweise auch den “traditionellen” Empfänger mit 5 Volt versorgt (BEC – Battery Elimination Circuit) und ausreichend Leitung bereitstellt.

Achtung: bitte immer sicherheitshalber nachmessen, um eine Zerstörung des Pretzelboardes durch zu hohe Spannung zu vermeiden!

Schematic Receiver Crawler

Von daher wird der Empfänger zweckmäßigerweise unter Verwendung einer Lochrasterplatine, die über zwei Buchsenleisten das Pretzelboard aufnimmt und zwei dreipolige Stiftleisten für den Anschluss des Lenkservos und den Fahrtregler (ESC) realisiert.

Einbau Empfänger

Der Empfänger wird mechanisch mit Klettband an einer geeigneten Stelle im Modell befestigt.

Schließlich ist der Controller Sketch “UDP_RC.ino” zu laden, der über github bereit gestellt wird.

Installation Android App “udpRC4NanoESP”

Die als Sender benötigte Android App “udpRC4NanoESP” ist Open Source und kann über github  bezogen werden.

Start der Fernsteuerung

Zunächst wird der Empfänger eingeschaltet, der nach dem Booten den Hotspot “NanoESP” anbietet. Das Android Smartphone ist über die Einstellungen mit diesem Hotspot zu verbinden.

Dann wird die udpRC4NanoESP-App gestartet und die gewünschte Bedieneroberfläche im Hauptmenü ausgewählt….

WLAN Modellfernsteuerung mit Pretzel Board und Android Smartphone (Vortrag Maker Faire 2016)

Auf der Maker Faire 2016 in Hannover habe ich vorgestellt, dass sich mit dem Pretzel Board und einer geeigneten Android App mit geringem Aufwand eine einfache Modellfernsteuerung über WLAN realisieren lässt.

Der Empfänger kann auf einem Prototypboard aufgebaut werden.

UDP_Receiver-Pretzelboard

Dann wird das Pretzelboard  über das Arduino IDE mit dem nachfolgenden Sketch “udp_RC.ino” programmiert, der als Open Source bei github verfügbar ist.

Nun wird nur noch die Android App “udpRC4NanoESP” benötigt, die ebenfalls über github kostenlos bezogen werden kann.

Wer einen dauerhafteren Aufbau des Empfängers realisieren möchte, findet im folgenden Beitrag weitere Informationen.

Modellfernsteuerung mit Tablet oder Smartphone 2.0

Benutzen Sie Ihr Android Tablet oder Smartphone als Fernsteuerung: mit Touch-Kommandos oder durch Bewegen des Tablets kann beispielsweise ein Roboter oder ein Modellauto über Bluetooth ferngesteuert werden. Als Basis dient die Android App picCAR, die als Open Source released wurde.  

Diese App unterstützt in der aktuellen Version 1.3 nun zusätzlich zur bisherigen Robotersteuerung ( = Richtungsänderung über Geschwindigkeitsänderung der Antriebsmotoren)  auch “normale” Fahrzeuge, bei denen ein Kanal zur Lenkung und ein Kanal zur Geschwindigkeitsregelung verwendet wird.

Foto_hoch

Das Tablet oder Smartphone steuert einen PiKoder/SSC über BlueTooth an. Der Einbau und die Verdrahtung des PiKoder/SSC ist schnell vorgenommen.

Detail Einbau PiKoder

Nähere Informationen zum Aufbau des Empfängers finden Sie auf der PiKoder Bluetooth-Fernsteuerseite.

Modellfernsteuerung mit Tablet oder Smartphone über Bluetooth

Benutzen Sie Ihr Android Tablet oder Smartphone als Fernsteuerung: mit Touch-Kommandos oder durch Bewegen des Tablets kann beispielsweise ein Roboter über Bluetooth ferngesteuert werden. Als Basis dient die Android App picCAR, die als Open Source released wurde.  Diese App steuert einen PiKoder/SSC direkt an. Nähere Informationen zum Aufbau des Empfängers finden Sie auf der PiKoder Bluetooth-Fernsteuerseite.