USB Analog and Digital IO Modules

LucidControl USB IO Modules

  • Data acquisition and control
  • Cost effective and flexible
  • Platform independent
  • Windows® and Linux
  • Compatible with RPi and Beagle Bone
  • Clippable on DIN-Rail
Read More ...
  • Industrial & home automation
Secure IoT Controller

LucidIoT Secure IoT Network Controller

  • 16 Analog and Digital IO Channels
  • HTTPS, Modbus/TCP, MQTT, FTP
  • SSL/TLS secured
  • Data Logging Function
  • Compatible with LucidControl Software Tools
  • DIN-Rail Enclosure
Read More ...
  • Multi-Protocol
USB Digital Input Module

USB Digital Input Module

LucidControl Product Series

  • 4 / 8 digital inputs
  • For 5V, 10V and 24V signals
  • Opto insulated contacts
  • Counters and edge detectors
Read More ...
USB Digital Output Module

USB Digital Output Module

LucidControl Product Series

  • Opto insulated option
  • 4 / 8 digital outputs
  • Relay module option
  • Pulse width modulation and timers
Read More ...
  • Switching and power control applications
USB Analog Input Module

USB Analog Input Module

LucidControl Product Series

  • Measurement range options
  • 4 analog inputs
  • e.g. 0-10 V or 0-20mA
  • 14 bit resolution
Read More ...
  • Acquisition of sensor signals
USB Analog Output Module

USB Analog Output Module

LucidControl Product Series

  • 4 analog outputs
  • Output range options
  • e.g. 0 - 10 V or 4 - 20 mA
  • 12 bit resolution
Read More ...
  • 4 - 20 mA current interfaces
USB RTD Input Module for Pt100 / Pt1000 with 8 Channels

USB RTD Input Module

LucidControl Product Series

  • 4/8 Pt1000/Pt100 RTD inputs
  • Temperature range: -180 ~ 180 °C or 0 ~ 360°C
  • 0.1 °C resolution
  • Heat control applications
Read More ...
  • Logging of temperatures

LucidIoT Modbus TCP Server

The LucidIoT data acquisition and control module can acquire and control up to 16 analog and digital signals.

The Modbus TCP/IP field-bus protocol based on top of the Modbus application layer uses TCP/IP protocol and Ethernet link layer instead of the serial transfer used by Modbus RTU or ASCII.

Modbus TCP/IP is widely spread in the industrial automation industry. LucidIoT can operate ass Modbus TCP/IP server and allows clients to connect to it.

In contradiction to other field-busses like Profinet, CAN or EtherCAT, a standard Ethernet connection is used and protocol specific hardware is not needed.

On the downside Modbus TCP/IP is not able to handle real-time tasks because the Ethernet link layer it not time deterministic, what means that synchronization can not be guaranteed. But, since LucidIoT does not claim being real-time this is not really important and Modbus TCP/IP is a great protocol interfacing LucidIoT.

Modbus TCP/IP is easy to understand and many libraries like pyModbusTCP for Python are available for different programming languages. Communication can be sniffed and recorded by free tools like qModMaster.

LucidControl Modbus TCP/IP function

Many signals like digital signals, relays, 5V, 0-10V, 24V voltages or 4-20mA currents can be measured and controlled by the Modbus TCP/IP protocol and LucidIoT.

Configuration of Modbus TCP/IP Server

LucidIoT Modbus TCP/IP Configuration

The Connection section contains values that configure the Modbus TCP/IP server.

The Modbus TCP/IP module can be enabled here. If enabled the Modbus TCP/IP server is listening on the configured port (default 502).

The protocol can be enabled for IPv4 and/or IPv6 networks.

The configurable Keep Alive timer interval enables detection of inactive connections and releases their resources.

The State section gives information about the LucidIoT Modbus service.

If configuration was changed, the Reset flag indicates if a restart of LucidIoT is necessary.

Using LucidIoT Modbus TCP/IP

Address Register Description
0x1000 to 0x101E 32 Bit wide Holding Registers of IO Channel Number 0 to 15 Values
0x1100 to 0x111E 32 Bit wide Holding Register of IO Channel Number 0 to 15 Configuration Parameter 0
0x1200 to 0x121E 32 Bit wide Holding Register of IO Channel Number 0 to 15 Configuration Parameter 1
0x2000 to 0x200F 16 Bit wide (Standard) Holding Register of IO Channel Number 0 to 15 Values
0x2100 to 0x210F 16 Bit wide (Standard) Holding Register of IO Channel Number 0 to 15 Configuration Parameter 0
0x2200 to 0x220F 16 Bit wide (Standard) Holding Register of IO Channel Number 0 to 15 Configuration Parameter 1
0x8000 Start of internal registers e.g. System Time

LucidIoT Modbus registers are accessible as holding or input registers. The registers are stored in standard Modbus 16 bit wide representation and also in 32 bit wide representation combining 2 standard registers.

The standard registers have the advantage that they are defined in the standard, but they have limited value range. The 32 bit wide registers give much higher precision, but are supported by less other devices.

LucidIoT implements both, 16 and 32 bit wide registers. Starting at address 0x1000 with 32 bit wide registers, at address 0x2000 with standard 16 bit wide registers.

Modbus allows the client to access to the IO Values which represent e.g. the analog voltage of an analog input channels.

Moreover, The IO Configuration Parameters 0 and 1 can be accessed by Modbus protocol. This allows the client to change e.g. duty-cycle or period of a PWM output signal.