Lens Motor Control
Supported Lens Motors
Tilta Nucleus-M Motors
Requirements
- 12-24V DC Power supply 5-10A
- IO Builder Tilta Nucleus-M EtherCAT Control Box or DIY UDP/TTL Serial Gateway
CMotion CForce Motors
Requirements
- 24V DC Power supply 5-10A
- ARRI LCUBE CUB-1
- IO Builder CForce EtherCAT Control Box or DIY UDP/RS232 Gateway
- LCUBE IO Builder Cable
IO Builder Universal Lens Motor Driver
Requirements
- 24V DC Power Supply 5-10A
- ARRI CLM3 / ARRI CLM4 / HedΓ©n Motors
- Other motors might be compatible, that have
Incremental Encoder Interface (5V, GND, A, B) and
Motor Winding Inputs (+, -)
EtherCAT Option
EtherCAT Option (with Additional EtherCAT Slaves)
If you plan to expand the network by adding more slaves, incorporating EtherCAT Junctions into the system is recommended to simplify the cabling process.
DIY Option
The user can create a custom solution that can be connected through the IP network. IO Builder has a Custom Lens Motor node developed for the purpose.
DIY Option Protocol Guide
This guide explains how to communicate between the IO Builder software and an external device (called "your box") to control camera lens features like Focus, Iris, and Zoom (FIZ). We use UDP, a way to send and receive messages, for this communication.
- UDP Port: The external device should wait for messages from IO Builder on an arbitrary port (for example, port 10000).
- Message Format: Messages between IO Builder and the external device are written in text/json format.
β¬οΈ From IO Builder to Your Box: IO Builder sends instructions like this
{
"f": 0.0, // Focus target
"i": 0.0, // Iris target
"z": 0.0, // Zoom target
"f_cal": false, //Focus Calibration Request
"i_cal": false, //Iris Calibration Request
"z_cal": false //Zoom Calibration Request
}
Target Values (f, i, z): (Percentage, 0 - 100.0 float; any negative value should disable the corresponding motor (removing power from the motor))
Calibration Request (f_cal, i_cal, z_cal): Start calibration on rising edge (true)
β¬οΈ From Your Box to IO Builder: After getting a message, reply to IO Builder with this format to the source UDP port:
{ "f": 0.0, // Actual focus position "i": 0.0, // Actual iris position "z": 0.0, // Actual zoom position "f_stat": 0, // Focus status "i_stat": 0, // Iris status "z_stat": 0 // Zoom status }
Actual position: (Percentage, 0-100.0 float)
Calibration status (f_stat, i_stat, z_stat):
Status | Value |
Offline | 0 |
Uncalibrated | 1 |
Calibration in progress | 2 |
Calibrated, ready | 3 |
Immediate response with the current status after receiving a control packet ensures a reliable feedback loop, enabling IO Builder to adjust commands based on real-time lens positions and calibration status.