User Tools

Site Tools


rc:sq:sq1

This is an old revision of the document!


Servo Sequencer - SQ1

programmierbar. 4 Servos, 1 Schaltausgang

Features

  • programmierbarer Servo-Sequencer
  • bis zu 4 Servos unabhängig steuerbar.
  • bis zu 4 Ablaufsequenzen.
  • bis zu 16 Befehle pro Sequenz.
  • komplexe Programme möglich (inkl. Schleifen usw.).
  • verschiedene Servogeschwindigkeiten
  • Schaltausgang für das programmierbare schalten von weiteren Verbrauchern.
  • per PC und USB oder Bluetooth programmierbar.
  • Für Hochvoltempfänger- und servos geeignet.

Technische Daten

MerkmalWertEinheit
Spannungsversorgung3,5-16Volt
max. Spannung am Schaltausgang30Volt
Servoimpuls900-2100µS
Servoperiode20ms
Servoimpuls Amplitude3,3Volt

Beschreibung

Der Servo-Sequencer SQ1 dient zum automatischen Ausführen von Steuerprogrammen für Servos. Mit dem SQ1 können auch komplexe Abläufe für bis zu 4 Servos und einem Schaltausgang programmiert werden. Bis zu 4 Ablaufsequenzen sind möglich. Die Anwahl der jeweiligen Sequenz erfolgt über einen freien Empfängerkanal. Je nach empfangener Schalterstellung am Sender, wird eine programmierte Sequenz ausgeführt.

Die Sequenzen werden aus Befehlen zusammengesetzt, welche nacheinander ausgeführt werden. Dabei gibt es Befehle zum Positionieren von Servos, für das Warten, für Schleifen, für das steuern des Schaltausgangs usw.

Eine einfache Sequenz (oder auch Programm) könnte dabei z.B. so aussehen:

  1. Drehe Servo A auf Position 1000µS (Schnell)
  2. Warte 2 Sekunden
  3. Drehe Servo B auf Position 1500µS (Langsam)
  4. Warte bis Servo B am Ziel
  5. Drehe Servo C auf Position 1900µS (Schnell)

Jede Zeile stellt einen Befehl dar. Ein Befehl kann auch Parameter besitzen. Diese spezifizieren den Befehl, und legen z.B. fest auf welches Servo er angewendet werden soll, oder welche Position angefahren werden soll.

Anschlüsse

Anschluss an einen PC

Für den Anschluss an den PC kommen alle USB-Adapter für Lichtmodule infrage. Insbesondere eignet sich der LMProg-Iso für dieses Modul. Eine drahtlose Anbindung ist mit dem Bluetooth-Adapter möglich. Programmieradapter für Lichtmodule

Programmierung

Die Programmierung erfolgt mit der Software “LM-Control 3”. Es handelt sich dabei um diesselbe Software die auch für die Lichtmodule zum Einsatz kommt.

In der Software muss das Modul “Sequencer SQ1” ausgewählt werden.

Das Konfigurationsfenster ist in verschiedene Bereiche aufgeteilt:

Global Settings

In diesem Abschnitt kann das “Startup Delay” festgelegt werden. Dies ist die Zeit in Sekunden, bis das SQ1 vom Einschalten an wartet, bis es auf den Empfänger reagiert und seine Sequenzen abarbeitet.

Hier kann ebenfalls die gewünschte Anzahl an Sequenzen (maximal 4) eingestellt werden.

Startup Servos

Hier kann ausgewählt werden, wie die angeschlossenen Servos beim Einschalten des Moduls reagieren sollen. Die Einstellung “Servos off” führt dazu, dass die Servos nicht angesteuert werden, bis ein entsprechender Befehl dazu im Programm abgearbeitet wird. Die Servos sind dabei “kraftlos”, d.h. bekommen keine Ansteuersignale.

In der Einstellung “Last position” werden alle Servos sofort nach dem Einschalten mit ihrer letzten Position angesteuert. D.h. alle Servos drehen sofort beim Einschalten in ihre letzte Position, welche sie vor dem ausschalten hatten.

Startup Program

In diesem Abschnitt kann das Startverhalten des Moduls im hinblick auf die Sequenz festgelegt werden.

Bei “Last Line” läuft die aktuelle Sequenz von der letzten Anweisungszeile aus weiter, welche vor dem Ausschalten erreicht war. “From Beginning” führt dazu dass die aktuelle Sequenz in jedem Fall nach dem Einschalten des Moduls von vorne beginnt.

No-RX Sequence

Hier kann die Sequenz ausgewählt werden, in welche das Modul springen soll, wenn kein Fernsteuerimpuls mehr erkannt wird. In der Einstellung -HOLD- verbleibt das Modul in der letzten aktiven Sequenz. Wird wieder ein Fernsteuerimpuls erkannt, so wird die Ausführung normal fortgesetzt und die Sequenz entsprechend dem Fernsteuersignal ausgewählt.

Sequence

Im Abschnitt “Sequence” werden die Ablaufsequenzen eingegeben, welche das Modul ausführen soll.

Mit der Dropdown-Box “Current Sequence” wird die Sequenz angewählt, welche bearbeitet werden soll. Die Befehle der Sequenz werden dann in der Liste darunter angezeigt.

Wenn Servos und Positionen mit einem Namen versehen wurden, so werden stets diese Namen angezeigt, anstatt die Servonummer oder die Position.

Mit dem Button “Run Now”, führt ein angeschlossenes Modul die ausgewählte Sequenz sofort aus. So kann die Sequenz einfach getestet werden. Vorher sollte mit “Upload” sichergestellt werden, dass die aktuelle Konfiguration auch im Modul so vorliegt.

Mit einem Doppelklick auf einen Eintrag in der Sequenzliste, kann der Befehl bearbeitet werden.

In der Liste “Commands” finden sich alle möglichen Befehle. Um einen Befehl an die nächste Stelle der Sequenz anzufügen, reicht ein Doppelklick. Bei manchen Befehlen öffnet sich dann ein Fenster in dem Einstellungen bzw. Parameter für diesen Befehl eingegeben werden können.

Um einen Befehl in der Mitte einer Sequenz einzufügen, kann ein bestehender Befehl ausgewählt werden, und dann ein ein neuer Befehl mit den Button “Insert before” bzw. “Insert after”, vor bzw. nach diesem Befehl eingefügt werden.

Ein markierter Befehl kann mit den Button “Up” und “Down” in der Liste hoch bzw. runter geschoben werden.

Befehlsübersicht

BefehlParameterBeschreibung
DRIVEServo: A-D
Position: 900-2100µS
Speed: 5 Stufen
Dreht das angegebene Servo auf eine bestimmte Position mit einer von 5 Geschwindigkeitstufen. Full bewirkt eine schnellstmögliche Bewegung.
WAITTime: 1-254 SekundenDie Programmausführung pausiert für die angegebene Zeit
GOTOLine: 1-16Das Programm wird an der angegebene Zeilennummer fortgesetzt.
WAITSERVOServo:A-DWartet bis das angegebene Servo seine vorgegebene Position erreicht hat
STOP-Das Programm wird dauerhaft angehalten. Es werden keine weiteren Befehle mehr ausgeführt. Ein Sequenzwechsel findet nicht mehr statt.
LOOPLine: 1-16
Count: 1-254
Springt an Zeile Line und widerholt dies so oft wie in Count angegeben.
SWON-Aktiviert den Schaltausgang
SWOFF-Deaktiviert den Schaltausgang
SWBLINKOn-Time: 0,0-25s
Off-Time: 0,0-25s
Bewirkt ein Blinken des Schaltausgangs. Dabei legt On-Time die Einschaltzeit und Off-Time die Ausschaltzeit fest.

Anmerkungen zu den Befehlen

DRIVE

Der Befehl DRIVE bewegt ein Servo an eine angegebene Position. Dabei kann auch die Geschwindigkeit angegeben werden.

Mit der Dropdown-Box “Servo” wird das gewünschte Servo ausgewählt. Die Bezeichnungen A-D entsprechenden den Servoanschlüssen des Moduls A-D. Wurde ein Name für das Servo vergeben, so wird dieser Name stattdessen angezeigt.

Mit dem Button “Change Name” kann dem ausgewählten Servo ein Name zugewiesen werden. Dies erleichtert die Programmierung und die Lesbarkeit der Sequenz.

Das Eingabefeld “Position” enthält die Position in µS auf die das Servo drehen soll. Bereits gespeicherte Positionen können aus der Dropdown-Box daneben angewählt werden. Die entsprechenden Position wird dann automatisch eingetragen.

Mit der Dropdown-Box “Speed” kann festgelegt werden, wie schnell das Servo die angegebene Position anfahren soll. Die Auswahl “Full” führt dazu, dass sofort der endgültige Servoimpuls ausgegeben wird. Die Zeit bis die Position dann tatsächlich erreicht wird, hängt vom Servo selbst ab.

Im Abschnitt “Move real servo”, kann die Servoposition am real angeschlossenen Servo ermittelt werden. Dabei muss zunächst die Sperre mit dem setzen des Hakens bei “Unlock” entfernt werden. Mit dem Schieber kann nun das angeschlossenen Servo bewegt werden. Die Position wird direkt oben in das Eingabefeld eingetragen.

Ist die gewünschte Position ermittelt, so kann diese Position unter einem Namen abgespeichert werden. So kann die später einfach wieder angewählt werden. Außerdem erhöht dies die Lesbarkeit der Sequenz.

WAIT FOR

Die Ausführung wartet bis das angegebene Servo an seiner Position angekommen wird.

Sinnvoll wenn Servos langsam eine Position anfahren sollen und das Programm erst weitergehen soll, wenn das Servo die Position erreicht hat.

Auch hier können den Servos Namen gegeben werden.

LOOP

Ähnlich wie GOTO, wird zur angegeben Zeile in der Sequenz gesprungen. Hierbei kann aber die Anzhl angegeben werden, wie oft dies geschehen soll. Danach läuft die Ausführung des Programms nach dem LOOP Befehl weiter.

So können einzelne Abschnitte einer Sequenz einige male wiederholt werden.

Mit diesem Befehl kann der Schaltausgang in einem bestimmten Abstand ein und ausgeschaltet werden. Dabei kann die ON-Time eingegeben werden, also die Zeit in Sekunden die der Ausgang EINgeschaltet ist. Die OFF-Time gibt an, wie lange danach der Ausgang AUSgeschaltet sein soll. Dies wird dauerhaft wiederholt. Die Ausführung geschieht im Hintergrund, d.h. die Ausführung läuft sofort zum nächsten Befehl weiter.

Die Befehle “SW ON” oder “SW OFF” stoppen die Blinksequenz wieder.

Schaltausgang

Der SQ1 verfügt über einen Schaltausgang für das schalten beliebigen Lasten bzw. Verbrauchern. Der Schaltausgang kann im Programm durch spezielle Befehle (SWON,SWOFF,SWBLINK) angesteuert werden.

Ein Verbraucher wird einfach, richtig gepolt, an die beiden Pins des Schaltausgangs (Plus und Minus) angeschlossen. Dabei kann es sich um LEDs, Relais, Motoren, Pumpen, Geräuschmodule usw. handeln. LEDs benötigen natürlich einen passenden Vorwiderstand.

Am Plus-Ausgang liegt diesselbe Spannung wie am Plus-Eingang des Moduls und an den Servo-Anschlüssen an. Es besteht aber die Möglichkeit eine externe Spannungsquelle mit diesem Ausgang zu schalten. Dazu wird der Verbraucher mit Plus mit der Spannungsquelle (z.B. ein Akku) verbunden, und mit Minus mit dem Minus-Pin des Schaltausgangs. Nun muss noch darauf geachtet werden, dass das Minus der Spannungsquelle über irgendeinen Weg mit dem Minus des Moduls verbunden wird. Die kann eine direkte Verbindung an einen Minus-Anschluss sein (siehe Zeichnung unten), oder auch eine bereits vorhandene Verbindung z.B. über ein BEC.

Anschluss einer LED (oder anderen Verbraucher) an den Schaltausgang

Schalten einer Last welche über einen externen Akku versorgt werden soll

Videos

Teil 1 - Grundlagen

Teil 2 - Erweiterte Befehle

Teil 3 - Beispielprojekt: Fahrwerk

Firmware

Bestellung

Der Sequencer SQ1 kann als Bausatz oder Fertiggerät bezogen werden.

Bausatz

Der Bausatz besteht aus:

  • Platine bestückt und getestet
  • 3 pol Stiftleiste für RX Anschluss
  • 4 pol JST Stiftleiste für Programmierung
  • 4×3 pol Stiftleiste für Servos
  • Schrumpfschlauch
  • Servokabel

Es müssen lediglich die Stiftleisten eingelötet werden. Das Modul kann danach noch in den Schrumpfschlauch eingeschrumpft werden um es zu schützen und Kurzschlüsse zu vermeiden.

Das fertig gebaute Modul sieht wie folgt aus:

Fertiggerät

Das Fertiggerät wird bereits komplett bestückt und eingeschrumpft geliefert. Es kann sofort genutzt werden.

Bausatz SQ120 EUR
Fertiggerät35 EUR
ProgrammieradapterAuswahl

Versand: D: 2 EUR, EU+Schweiz: 5 EUR, Sonstiges Ausland bitte anfragen.

Direkte Bestellanfrage via Formular: Bestellanfrage

rc/sq/sq1.1427676405.txt.gz · Last modified: 2015/03/30 00:46 by cyblord