HOME

Infos

Resources
FAQ

DMX

Open RDM
Dimmer
Switch
Demux
LED
Matrix
Servo
Stepper
Analyzer

Allgemeines

Shop
Links
Forum
Impressum

_

Henne's Sites

DMX Servocontroller und LED-Controller

Servo offen

Mit Hilfe dieser Schaltung lassen sich bis zu vier Standard-Servos unabhängig voneinander mit einer Auflösung von 8bit ansteuern.
Auf Grund der starken Nachfrage wurde zusätzlich ein LED-Dimmer mit bis zu vier Kanälen und Strobe-Funktion integriert.
Über Jumper lassen sich gängige Servotypen einfach auswählen.

 

Eine Servo-Steuerung besteht aus einem DMX-Transceiver, an den die Signalleitungen der Servos direkt angeschlossen werden können. Die Servos benötigen unbedingt eine separate Spannungsversorgung.

 

Rev. 3.2

DMX-Transceiver (Rev. 3.2)

Mit diesem Modul können DMX-Daten sowohl empfangen als auch gesendet werden. Auf Grund des Mikrocontrollers sei Anfängern von einem Nachbau jedoch abgeraten.

Diese Schaltung ist durch die vollständige Anbindung des RS485-Wandlers für eine bidirektionale Kommunikation (z.B. RDM nach ANSI E1.20) geeignet.

Fertige Platinen in Industriequalität sind im Shop erhältlich.

 

 

DMX-Transceiver SchaltungBauteile

  IC1
  IC2
  IC3
  D1 
  LED1
  LED2
  R1
  R2,3,4
  C1,2
  C3,4
  C5,6
  SW1
  Q1
  Anschlüsse
ATmega8515-16PU (sockeln!)
75176B (sockeln!)
7805
1N4007
LED 5mm rot
LED 5mm grün
10k (PT10-S)
390 Ohm
27pF
100nF
100µF
DIP-Schalter (10fach)
8MHz (HC49)
Stiftleiste einreihig
 

Die Bauteilkosten für einen Transceiver liegen zwischen 6,50€ und 9,50€.

 

 

 

 

 

 

 

 

 

 

Wie man sieht, ist die Schaltung äußerst simpel: Die Ansteuerung erfolgt per Firmware innerhalb der MCU (IC1). Diese wird über den "ISP"-Port auf IC1 übertragen. Die Startadresse und besondere Optionen (falls vorhanden) stellt man über ADR ein. Die Leuchtdioden dienen als Statusanzeigen. Die Bauteile rund um den Spannungsstabilisator IC3 sorgen für eine stabile Betriebsspannung von 5V. Q1 und C1,2 werden für die Betriebsfrequenz von 8MHz benötigt. Über den RS485-Wandler IC2 wird der MCU die Kommunikation mit der Außenwelt ermöglicht. Mit Hilfe von "Spare" können verschiedene Funktionsarten der Firmware fest gejumpert werden. Über A-Input kann ein analoger Schwellwert (z.B. zur Temperaturmessung) eingelesen werden.

An PWR wird eine Betriebsspannung zwischen 9Vdc und 12Vdc angeschlossen. Der DMX-Transceiver selbst benötigt <300mA. Bei der Dimensionierung der Spannungsversorgung sind alle angeschlossenen Verbraucher zu berücksichtigen.

Layout (48 * 76 mm^2; 300dpi)

Bestückung

Die Verbindung des Transceivers mit dem DMX-Bus erfolgt gemäß der nächsten Grafik:

Achtung: Pin 3 des XLR-Anschlusses wird mit dem mittleren Pin des Platinen-Steckverbinders verbunden!

 

Eine Anleitung zum Programmieren und zur Quarzselektion des AVRs finden Sie unter 'Resources'.

Nach dem Anpassen der fuse bits kann die Servo-Firmware auf den DMX-Transceiver übertragen werden. Dieses Programm wertet die nächsten sieben Kanäle nach der Startadresse aus und generiert die verschiedenen PWM-Signale.

 

Kanalbelegung zur Ansteuerung von vier Servomotoren

DMX Funktion Ausgangspin
ch1 Position Servo1 OUT1 (PA0)
ch2 Position Servo2 OUT2 (PA1)
ch3 Position Servo3 OUT3 (PA2)
ch4 Position Servo4 OUT4 (PA3)

 

Kanalbelegung im Movinglight-Betrieb

DMX Funktion Ausgangspin
ch1 Servo1 (Tilt) OUT1 (PA0)
ch2 Servo2 (Pan) OUT2 (PA1)
ch3 Strobe  
ch4 PWM1 (red) OUT5 (PA4)
ch5 PWM2(green) OUT6 (PA5)
ch6 PWM3 (blue) OUT7 (PA6)
ch7 PWM4 OUT8 (PA7)

Falls in Ihrer Applikation die LEDs invertiert reagieren (0=full on; 255=off), lässt sich durch Jumpern von Spare1 die PWM-Ausgabe invertieren.

 

Kalibrierung der Servosignale

Der Standard sieht zur Ansteuerung von RC-Servomotoren ein PWM-Signal mit einer Frequenz von 50Hz und einem Duty-Cycle von 1ms bis 2ms vor. Die meisten Hersteller halten sich allerdings nicht an diese Vorgaben und ermöglichen über höhere Duty-Cycles größere Verfahrwege. Aus diesem Grund lässt sich der Arbeitsbereich der Servos wie folgt kalibrieren:

  1. DMX-Kanäle 1 bis 5 auf 50% setzen
  2. Spare2 jumpern. Achtung: Die Servos arbeiten nun in einem sehr großen Verfahrbereich und werden durch die mechanischen Anschläge begrenzt!
  3. DMX-Kanäle 1 bis 4 vorsichtig reduzieren, bis die minimalen Positionen der vier Servos erreicht sind.
  4. DMX-Kanal 5 auf 0% setzen. Die minimalen Positionen werden im EEPROM gespeichert.
  5. DMX-Kanal 5 wieder auf 50% setzen.
  6. DMX-Kanäle 1 bis 4 vorsichtig erhöhen, bis die maximalen Positionen der vier Servos erreicht sind.
  7. DMX-Kanal 5 auf 100% setzen. Die maximalen Positionen werden im EEPROM gespeichert.
  8. DMX-Kanal 5 wieder auf 50% setzen und abschließend den Jumper auf Spare2 entfernen.

 

Debugging

Beim Hochfahren sollte die ErrorLED leuchten. Die Änderung relevanter Kanäle wird durch Blinken der grünen LED indiziert. Ein Fehler wird durch Blinken der ErrorLED angezeigt:

Pattern Fehler Lösung
Blinken Es liegt keinerlei Signal am Transceiver an. Transceiver mit DMX-Bus verbinden.
Doppelblinken Das Signal wird nicht als DMX erkannt.
Es werden nicht alle benötigten Kanäle empfangen.
D+ und D- am DMX-Anschluss vertauschen.
Mehr Kanäle senden oder kleinere Startadresse wählen.