DMX servo controller with LED control
With this circuit, up to four standard servos can be controlled independently of each other with a resolution of 8bit.
A servo controller consists of a DMX Transceiver to which the signal lines of the servos are connected directly. The servos need their own power supply!
DMX Transceiver (Rev. 3.2)
With this module, DMX data can be sent and received. However, due to using a microcontroller, this circuit is not ideal for beginners.
The Transceiver is suitable for bidirectional communication (e.g. RDM according to ANSI E1.20) due to the complete connection of the RS485 converter.
Industrial-quality circuit boards are available in the shop.
As you can see, the circuit is quite simple: All the magic happens in firmware within the MCU (IC1). It is transferred to IC1 via the "ISP"port. The start address and special options (if any) are set via ADR. The LEDs serve as status indicators. The voltage regulator IC3 ensures a stable operating voltage of 5V. Q1 and C1,2 are needed for an operating frequency of 8MHz. The RS485 converter IC2 allows the MCU to communicate with the DMX universe. With the help of "Spare", various firmware options can be jumpered. Via A-Input, an analogue threshold value (e.g. for thermal protection) can be read.
A supply voltage between 9V and 12V dc is connected to PWR. The DMX Transceiver itself requires <300mA. When selecting the power supply, all loads must be taken into account.
The transceiver is connected to the DMX bus as shown in the next diagram:
Attention: Pin 3 of the XLR connectors is connected to the middle pin of the PCB connector!
Instructions for programming and selection of clock sources can be found under 'Resources'.
After adjusting the fuse bits, the servo firmware can be transferred to the DMX Transceiver. This firmware evaluates the next seven channels after the start address and generates the various PWM signals.
DMX footprint to control four servo motors
DMX footprint in moving light mode
If the LEDs react inverted in your application (0=full on; 255=off), the PWM output can be inverted by setting the Spare1 jumper.
Calibration of the servo signals
A standard rc servo expects a PWM signal with a frequency of 50Hz and a duty cycle of 1ms to 2ms. However, many manufacturers do not adhere to this standard and allow greater travel distances by higher duty cycles. For this reason, the ranges of the servos can be calibrated as follows:
The ErrorLED should light up during start-up. A change in the relevant relevant DMX channels is acknowledged with a flashing of the green LED. An error is indicated by the ErrorLED flashing: