User Account 1 1
Cart 0  0,00

IoT analog converter * Ethernet/USB-AD16-DA4 module with 16 A/D inputs and 4 D/A outputs (Modbus TCP compatible)

The RO-(ETH/LC)/(USB)-AD16-DA4 is an IoT analog converter with 16 analog inputs and 4 analog outputs. Depending on the variant, connectivity is provided via Ethernet or USB. The module is suitable for precise measurement, control, and regulation tasks in automation, test engineering, IoT, and Industry 4.9 environments, and supports, among other things, open TCP communication, Modbus-TCP, and configuration via a web interface, app, or software library.

Price range: € 772,91 through € 784,81 Incl. 19% VAT plus shipping

SKU: RO-(ETH/LC)/(USB)-AD16-DA4 Category:

Our promise to you

Product Description – IoT analog converter module

The RO-(ETH/LC)/(USB)-AD16-DA4 has been developed for applications where analog signals must be precisely acquired and output. With 16 analog inputs, 4 analog outputs, Ethernet or USB connectivity, Modbus TCP support, and open TCP communication, the module is particularly well suited for data acquisition, test benches, industrial control systems, and networked IoT systems.
The powerful IoT analog converter module enables high-precision 16-bit conversion and ensures reliable digitization and control of analog processes in real time.
Made in Germany quality stands for reliability, durability, and precise measurement results in industrial applications.

Industrial Ethernet communication with TCP/IP, Modbus TCP, and app integration

The Ethernet interface of the RO-(ETH/LC)/(USB)-AD16-DA4 enables direct integration into industrial networks via 10/100 Mbps Ethernet with TCP/IP communication. Data exchange is handled flexibly either through the open TCP/IP protocol or via Modbus TCP, allowing vendor-independent integration into control and automation systems.
In addition, the IoT analog converter module supports control via a dedicated app or mobile application as well as through the integrated web interface, enabling convenient operation and diagnostics without additional software. Network configuration can be set to either dynamic (DHCP) or static addressing and can be seamlessly integrated into existing IT or automation networks.
Overall, the Ethernet interface offers a versatile combination of classic industrial communication and modern, user-friendly remote access capabilities.

Simple direct connection via USB thanks to plug & play

The USB interface of the RO-(ETH/LC)/(USB)-AD16-DA4 is primarily designed for a direct, local connection between the module and a control computer and is characterized by simple commissioning. Thanks to plug-and-play functionality and appropriate drivers, the device is automatically recognized, allowing immediate access to the IoT analog converter module via software tools.
Technically, the interface is based on USB 2.0 with transfer rates of up to 480 Mbit/s, providing a stable and fast data connection for configuration and control. It is often used for initial setup or for applications where no network infrastructure is available.
Overall, USB provides a straightforward and reliable interface for direct access.

Control & software

For control purposes, the IoT analog converter module provides open protocols (TCP/IP, Modbus TCP, and HTTP), enabling flexible integration into existing IT and automation environments. These protocols allow both traditional industrial applications and modern IoT scenarios to be implemented directly, without the need for additional gateways or proprietary interfaces.
In addition, comprehensive API libraries are available for C, C++, C#, Java, VB, and other programming languages, enabling the functions of the RO-(ETH/LC)/(USB)-AD16-DA4 to be seamlessly integrated into custom software solutions.
The DELIB driver library, including CLI tools, also enables fast and straightforward commissioning as well as direct control via scripts or the command line, which is particularly useful for test, automation, and development environments. Furthermore, the I/O Control App for mobile devices provides a convenient way to remotely control and monitor the system over the network, without requiring a traditional PC application.
Overall, this creates a highly flexible control architecture ranging from low-level integration to mobile operation.

Precise data acquisition with 16 analog inputs

The 16 galvanically isolated A/D inputs of the RO-(ETH/LC)/(USB)-AD16-DA4 enable reliable acquisition of analog signals such as voltage and current. Typical sensors include temperature, pressure, or humidity sensors.
Thanks to versatile measurement ranges (0–5 V, 0–10 V, ±5 V, ±10 V, or optional current measurement) and high resolution, the IoT Analog Converter is particularly suitable for industrial measurement tasks with high demands for accuracy, stability, and flexibility.

Analog output signals for direct control

With the 4 analog outputs of the RO-(ETH/LC)/(USB)-AD16-DA4, actuators such as valves, servo motors, or controllers can be directly driven. The outputs provide voltage ranges of 0–5 V, 0–10 V, ±5 V, and ±10 V, enabling direct control of a wide variety of actuators.
The IoT analog converter module is therefore suitable not only for data acquisition but also for active process control in automation and IoT systems, ranging from simple control loops to complex industrial applications.

Event Control – event-based automation

The Event Control function enables direct, event-driven processing of both digital and analog signals in the IoT analog converter module, without requiring cyclic polling by higher-level software. Digital signal transitions can immediately trigger internal actions, while analog signals can generate events based on defined thresholds, measurement ranges, or significant value changes. This allows responses to be implemented much faster and more resource-efficiently compared to traditional polling-based processing.
The event logic can be flexibly configured, enabling both simple switching conditions and more complex dependencies between digital and analog signals. In addition, functions such as filtering, hysteresis, and threshold monitoring are available to ensure stable and reliable trigger conditions.
As a result, Event Control is particularly well suited for automation applications where signals must be evaluated intelligently and processed immediately.

Form factor and connectors

The IoT analog converter module is designed for demanding industrial use and features a robust construction. Its housing is shock-resistant and vibration-proof, making it suitable for installation in control cabinets and on DIN rail mounting systems.
The I/Os of the RO-(ETH/LC)/(USB)-AD16-DA4 are wired via WAGO connectors, providing a secure, vibration-resistant connection. The module supports an operating temperature range from -20 °C to +60 °C and is designed for continuous operation under industrial conditions.
Thanks to these features, it offers high reliability, a long service life, and easy maintenance, making it ideal for automation, mechanical engineering, and laboratory control applications.

Maintenance and Long-Term Planning

The RO-(ETH/LC)/(USB)-AD16-DA4 supports users with a durable, industrial-grade architecture that enables predictable use over many years. The combination of robust drivers, comprehensive documentation, and the ICT diagnostic tool simplifies commissioning and maintenance. Electrical isolation and high-quality electronics ensure reliable operation, while support and continuous updates guarantee seamless integration into professional automation environments.

Technical Specifications

The IoT Analog Converter RO-(ETH/LC)/(USB)-AD16-DA4 is an industrial analog I/O module with 16 analog inputs and 4 analog outputs at 16-bit resolution. Depending on the variant, connectivity is provided via electrically isolated Ethernet with HTTP, UDP, TCP, DHCP, and Modbus-TCP, or via USB 2.0. The module is suitable for precise voltage and current measurements as well as for targeted analog signal output in measurement, control, and diagnostic applications.

Ethernet interface:

  • Ethernet 10/100 Mbps
  • Supported protocols: HTTP, UDP, TCP, DHCP, Modbus-TCP
  • Control: API for Windows and Linux (DELIB driver library), command line interface, open TCP protocol, Modbus-TCP
  • Encrypted Ethernet communication possible
  • Open standard or Modbus TCP protocol
  • Web interface and app (smartphone and tablet)
  • Electrically isolated up to 1.5 kV

USB interface:

  • USB 2.0 interface up to 480 Mbit/s
  • Quick setup thanks to plug-and-play integration
  • Control: API for Windows and Linux (DELIB driver library), command-line interface

16-bit analog inputs:

  • Selectable between 16, 32, or 64 channels
  • Design: single-ended
  • 16-bit resolution per channel
  • Voltage ranges: 0–5 V, 0–10 V, ±5 V, ±10 V
  • Optional current ranges: 0–20 mA, 4–20 mA, 0–24 mA
  • Electrical isolation for the power supply: max. 500 V
  • A/D converter conversion time: 4 µs

Analog outputs:

  • 16-bit resolution per channel
  • Voltage ranges: 0–5 V, 0–10 V, ±5 V, ±10 V
  • Isolation from power supply: max. 500 V AC
  • D/A converter conversion time: 10–12 µs
  • Load resistance: ≥ 2 kΩ

Additional features:

  • Configurable event control
  • M2M functionality

Analog inputs

Analog/digital converter modules are suitable for measuring and monitoring voltages and currents. Transducers, for example, convert physical variables such as pressure, temperature, humidity etc. into corresponding currents or voltages and can therefore be recorded and digitally processed with our A/D modules.

A/D filter

Electrical or electromagnetic interference in measurement signals is smoothed and optimized by the software A/D filter by averaging the measurements.

Symbole analoge Eingänge

Analog outputs

Our digital/analog converters enable the precise control of current- or voltage-controlled actuators such as valves or servomotors. They ensure reliable and interference-free signal transmission, particularly in industrial environments with long distances. This makes them ideal for demanding applications in automation technology.

Symbole analoge Ausgänge


Fail-Safe Mode

The Fail-Safe mode is a safety function in which the DEDITEC module switches to a previously configured, safe switching state in the event of a connection failure.
This is intended to prevent connected installations or systems from continuing to run in an uncontrolled manner.

Symbol für den Fail-Safe Modus


USB interface with Plug & Play

Thanks to Plug & Play, our modules with USB interface are automatically recognized and are immediately ready for use without any configuration. Configuration is only required if several USB modules from the same product series are used on the same system.

Symbol für USB Plug and Play


Plug connector

A screwless system from the manufacturer WAGO® Kontakttechnik is used as the connector. The 1-wire female connectors are 100 % protected against mismating and have an ejection and locking mechanism.

Symbol für Steckverbinder


LEDs

Each digital input and output has a separate LED that lights up when the signal status is active. The status of the operating voltage, communication with the interface, error events or the occurrence of a timeout can also be displayed.

Symbol für LEDs


M2M

Machine-to-machine, or M2M for short, involves direct communication between two or more modules. Analog or digital input signals from one transmitter module can be automatically transmitted to another module on a channel-by-channel basis.
M2M transmission is supported by all our products in the WEU series or by products with a CAN interface.

Symbol für M2M


Software and control for programmers

Our supplied DELIB driver library makes it easy to address the product via our API in almost all programming languages under Windows and Linux.

We offer support for the following programming languages:

  • C
  • C++
  • C#
  • VB
  • VBA
  • VB.Net
  • Java
Symbol für unterstützte Programmiersprachen


Remote switching of IP modules

Our IP modules can be conveniently and easily controlled worldwide via the TCP-IP network. The following options are available to you.

DEDITEC I/O Control app

With our DEDITEC I/O-Control app, our modules can also be controlled remotely. All you need is the network configuration of the module. The app is available for iOS and Android smartphones.

Web interface

Our IP modules can be operated from any browser. All you need is the IP address of the module.

M2M

Our WEU series modules can establish direct M2M communication with any DEDITEC Ethernet product, enabling, for example, the automated transmission of measured values or remote monitoring of machines and systems.

ICT-Tool

With the help of our all-in-one ICT-Tool software, you can configure, update, control and test your DEDITEC modules quickly and easily. The tool is included in the DEDITEC driver library.

Symbol für Ethernet


More security through encryption

With the DEDITEC encryption mode, all TCP communication from the control PC to the DEDITEC module can be encrypted. This prevents unauthorized access to the module via TCP by third parties.

Logo Encryption


Control modules via Modbus TCP

Modbus TCP enables standardized data exchange between controllers, measuring devices, drives, and higher-level systems, regardless of the manufacturer. Status and measured values are read or written via the open Modbus register protocol.

DTT Icon Modbus FREISTELLER


Command-Line-Interface

With the help of the command line interface, or CLI for short, our products with Ethernet or USB interface can be easily addressed via the command line. Our digital and analog inputs/outputs are supported. The CLI is available for Windows and Linux operating systems.

Symbol DEDITEC Treiberbibliothek

Power supply + 12 V ... +24 V DC
General LEDs
  • Operating voltage
  • Interface activity
  • Status (only for Ethernet version)
  • Input status change (only for digital inputs)
  • ERROR
  • Timeout switch-off
  • I/O access
  • One LED per I/O-channel
LEDs product-specific

A/D-version:

  • Activity - flashes when the A/D module is accessed
  • Status - flashes when accessing the A/D converter

D/A-version:

  • Activity - flashes when the D/A module is accessed
  • Status - flashes when accessing the D/A converter

CNT version:

  • Activity - flashes when accessing the counter module
  • Counter module status
  • Status counter input
  • Status of pulse generator output

Incremental encoder version:

  • Activity - flashes when the IGR module is accessed
  • Status LED - flashes when accessing the incremental encoder
  • Direction LEDs - lights up when the direction of rotation is left or right
  • Reset function - both direction LEDs flash simultaneously

PT100 version:

  • Activity - flashes when accessing the PT-100 module
  • Status PT-100 module
  • One LED per temperature input

 

DIP switch
(only for RO-CPU-CAN)
  • Setting the configuration mode
  • Setting the transmission rate
  • Setting the CAN address
Mounting type Can be mounted on 35 x 7.5 mm top-hat rail
Operating temperature +10 °C ... +50 °C
Dimensions with 16 I/Os 122mm x 85 mm x 51,5 mm (H x B x T)
Dimensions with 32 I/Os 122mm x 126 mm x 51,5 mm (H x B x T)
Dimensions with 64 I/Os 122mm x 208 mm x 51,5 mm (H x B x T)
Dimensions with 128 I/Os 122mm x 372 mm x 51,5 mm (H x B x T)

Interfaces

Ethernet-Interface

Ethernet-Interface
  • 10/100 Mbit Ethernet
  • Galvanically isolated up to 1.5 kV / AC 1 min
  • LAN configuration possible via the ICT tool (IP address, netmask ...)
IP-address DHCP or static
DIP Switches
  • DHCP ON/OFF
  • Write protection ON/OFF
  • Start module with factory settings ON/OFF
  • Start module in boot loader ON/OFF
Access speed
  • Average access time from the PC to the module: 1 ms

    (Calculated with 1000 accesses to the module via the DELIB driver library with the command DapiDoSet32)

USB Interface

USB-Interface
  • Connection: Type B
  • USB 2.0 / USB 1.1 interface with up to 480 Mbit/s


Inputs/Outputs

Analog inputs

Inputs
  • 16 A/D channels (single ended)
  • Resolution: 16-bit or 18-bit per channel
  • Measuring ranges 16-bit version:
    0-5 V, 0-10 V, 0-20 V*, 0-40 V*, +-5 V, +-10 V, +-20 V*, +-40 V*
    0-20 mA, 4-20 mA, 0-24 mA, 0-50 mA**
  • Measuring ranges 18-bit version:
    +-5 V, +- 10 V
  • Input resistance: >500 kOhm
  • Accuracy: +3 ppm / °C
  • Zero error temperature drift: +1 ppm / °C
  • Full-scale error temperature drift: + 1 ppm / °C
  • Bipolar Full-Scale Error: Min: - 50 LSB / Max: +50 LSB
  • Unipolar Full-Scale Error: Min: - 70 LSB / Max: +70 LSB

* is not supported by modules of the BS-WEU series
** is only supported by modules of the BS-WEU series

Conversion rates
  • A/D converter conversion rate: 4 µs
  • Conversion rate of the module (all 16 A/D channels are converted):
    78 conversions / second with A/D filter level switched off (filter level = 0)
    48 conversions / second with an A/D filter level of 10
Galvanic isolation For power supply: max. 500 V
A/D-Filter
  • Electrical or electromagnetic interference in measurement signals is smoothed and optimised by the software-side A/D filter by averaging the measurements
  • Filter level 0 at module start (= filter deactivated)
  • Can be set via DELIB commands:Set: DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_AD_FILTER_SET, ((filterlevel & 0xff) << 8) | (submodule_nr & 0xff) , 0)Read back: DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_AD_FILTER_GET, (submodule_nr & 0xff) , 0)

Analog outputs

Output
  • D/A channels with 16-bit resolution each
  • Voltage ranges: 0-5 V, 0-10 V, ±5 V, ±10 V
  • Relative Accuracy: Min: -16 LSB / Max: +16 LSB
  • Bipolar Zero Error (T = 25°C): ±4 ppm FSR / °C
  • Zero-scale error (T = 25°C): ±2 ppm FSR / °C
  • Full-scale error temperature drift: ±1 ppm / °C
Galvanic isolation
  • Channel 1 ... 4 to channel 5 ... 8: max. 1000 V AC*
  • For power supply: max. 500 V AC*

* only applies to modules of the NET series and the UC-CANOPEN series

Load resistance > 2 KOhm
Conversion rate 10-12 µs conversion time of the D/A converter
   
   


Connectors

Plug connector 10-pin
  • Type: Wago contact technology 713-1105/037-000
  • Pluggable female connector with locking mechanism
  • 100 % protected against mismating
  • 1-wire connection for all conductor types up to 1.5 mm²
Plug connector 18-pin
  • Type: Wago contact technology 713-1109/037-000
  • Pluggable female connector with locking mechanism
  • 100 % protected against mismating
  • 1-wire connection for all conductor types up to 1.5 mm²

The ICT-Tool

Integration, configuration and testing - Our all-in-one Windows tool contains all the functions you need to put our products into operation quickly, easily and efficiently. Start with the setup and configuration, install firmware updates and use the extensive test and diagnostic options. The integrated help menu provides additional support if required.

Below you will find a brief overview of the program’s basic menus.

Module selection
Here you can integrate a new product into the ICT tool by clicking on the “+” symbol and then configure it.

ICT TreeView
In the TreeView, on the left-hand side of the program window, you can see the respective control elements or functions that are supported by your selected module. The scope of the functions depends on the respective product.

Overview
All relevant module information can be accessed here at a glance.

  • Module name
  • Module ID
  • Firmware revision
  • MAC address
  • LAN and WiFi Network address (module dependent)

Inputs / Outputs
This overview shows the number of I/Os supported by your module.

Module infos
Here you will find all the important feature information for your module.

General features
Here you will find all the important feature information for your module.

Digital I/O features
Here you will find information about the digital I/Os supported by the module.

Analog I/O features

Here you will find information about the type of analog I/Os supported by your module.

Special I/O features

Here you will find information about the type of special I/Os supported by your module.

In den folgenden Kapitel, würden wir Ihnen unsere neue All-In-One-Software gerne genauer vorstellen.

Info
All relevant module information can be called up here at a glance.

  • Module name
  • Module ID
  • Firmware revision
  • Interface type
  • Current DIP switch setting (only for Ethernet modules)

Identification
If several DEDITEC Ethernet modules are active in the network, a signal LED on the selected module can be activated via an identification function. This facilitates visual assignment.

Restart
You can restart your module here. The module status shows whether the restart was successful.

USB configuration
If you want to use several USB modules from the same product series on one PC, each of these modules must first be assigned its own module number.

LAN info
On this information page, you will find the current LAN network information and all the settings for your module at a glance.

LAN configuration
Integrate the product into your network or control it directly via a 1-to-1 connection.
The following parameters can be changed.

  • Board name
  • DHCP on/off
  • IP address
  • Subnet mask
  • Default gateway
  • TCP Port

WiFi info
All important WiFi settings are displayed on this page

WiFi configuration
Here you can change the network settings of the selected WiFi product.

The following settings can be made:

  • Board name
  • WLAN on/off
  • Router name
  • Router password

WPS
With the WPS function, your module can be connected to the router quickly and easily, automatically (WPS on the router is required)

CAN configuration
With our CAN products in the BS, NET and UC series, settings for the interface and the TX/RX packets can be made using the ICT tool.

More information can be found here:

Serial configuration
For our serial products in the BS, NET, UC and RO series, changes to the interface can be made using the
ICT tool.

More information can be found here:

Modbus TCP
Here you can set the Modbus TCP configuration of the module.
 
The following configurations can be made.

  • Enable/disable access via Modbus TCP
  • TCP port

TCP encryption
Here you can make settings for the encryption of your module.

The following configurations can be made.

  • Allow unencrypted protocol
  • Allow “User” encryption mode
  • User password
  • Allow “Admin” encryption mode
  • Admin password

NTP configuration
You can make changes to the NTP service here.

The following configurations can be made.

  • NTP service on/off
  • server
  • Port
  • Timezone

WEB-Login
Here you can change the login settings of the web interface.

The following configurations can be made.

  • Session duration
  • Login name
  • Login password
  • Allow I/O access via web interface

D/A Default Values
Here you can set the D/A values and modes with which the module should be started.
The value and mode can be set individually for each channel.

Watchdog configuration
Here you can make and save settings on your watchdog stick.

Save or Load config
Using the “Save or Load config” function, you can save your entire module configuration in an external XML file.
This means you can always load your module in the desired original state.

The following configurations can be saved depending on the module type.

  • USB configuration
  • LAN configuration
  • WiFi configuration
  • TCP encryption
  • NTP configuration
  • Serial configuration
  • CAN configuration

 

Status
This gives you an overview of the activity of the transmitter and receiver module

The following information from the transmitter module is displayed:

  • Status of the activity: If the check mark is set, this action is currently being performed.
  • Total number of actions performed. Is reset to 0 after a restart of the module.
  • Number of actions per second.
  • Number of DELIB errors that occur when executing commands from the DEDITEC driver library.

The following information from the receiver module is displayed:

  • Connected: If the check mark is set, the transmitter and receiver modules are connected.
  • IP address of the receiver module.
  • Number of connection attempts.

 

Receiver modules
You can set the network settings of the receiver module here.

The following settings can be made

  • Name for the receiver module
  • Network settings of the receiver module
  • Timeout
  • Encryption type/ password

Action
With an action, you define which input signal is to be sent from the transmitter module to which output of a receiver module.

The following settings can be made:

  • Type of task (digital, analog)
  • Which receiver module should be used
  • The interval at which the operations are to be carried out
  • Start channel of the transmitter module
  • Number of channels to be transmitted
  • Start channel of the receive module

In the image on the right, DI data is sent every 100ms from channel 3(CH Start) to channel 8 ((CH Start) + (CH Count)) to channels 0-5 of the target module.

 

In den folgenden Kapitel, würden wir Ihnen unsere neue All-In-One-Software gerne genauer vorstellen.

Status
The Status area provides an overview of all active events and executed actions.

The following information is listed:

  • Event number
  • Event type
  • Time interval of the event
  • Number of events that have occurred
  • Action number
  • Number of triggered actions
  • Number of other actions

Events configuration
Up to 16 different events can be created in the configuration menu. An event can be used, for example, to define switching thresholds at the analog inputs or logical states at the digital inputs of the module and link them to an executable action. The configuration itself is saved permanently in the module configuration memory of the module.

The following event modes are available, depending on the module type:

  • DI: High-Low state of a digital input.
  • DI flip-flop: Status change of a digital input (is stored in the module with the so-called flip-flop flag and deleted again after readout).
  • DO readback: ON-OFF status of a digital output (is read out using a DO readback command).
  • A/D: Current or voltage level at the analog inputs

 

Configuration actions
Up to 16 different actions can be created in the configuration menu. An action defines what should happen within an event after a condition is met.

The following action modes are available, depending on the module type:

  • Set DO output:    Switches a digital output on or off
  • Set D/A output:    Outputs a current or voltage value at an analog output
  • Send CAN packet:      A special CAN TX event is triggered (up to eight CAN TX events can be configured separately).

 

Digital Out
Hier können Sie die digitalen Ausgänge Ihres Modules ein- und ausschalten.
 
Folgende Funktionen können in dieser Form getestet werden.

  • Kanalweise Ein- und Ausschalten der digitalen Ausgänge
  • Readback der Kanäle
  • Setzen eines Digitalausgangs für eine bestimmte Zeit (Modulabhängig)
  • Gibt an welchen Status die Kanäle nach Ablauf der Zeit einnehmen sollen (Modulabhängig)
  • Testen der Ausgänge

Digital Out
All digital outputs of your product can be checked by clicking on the buttons.

The following switching options are possible:

  • Switching on and off channel by channel
  • Channel-by-channel switching on or off for a specific time (product-dependent)
  • Reading back the switching status (readback)

Digital In
In this view, the logical states of all optocoupler inputs can be read out.

The following information is displayed:

  • Logical status of the inputs (ON/OFF)
  • Number of detected pulses (counter function)
  • Change of state detected (flip-flop)

TTL I/O
In this menu, the TTL channels of the module can be configured as inputs or outputs. The individual TTL outputs can be switched on or off by pressing the buttons. In addition, the status of all TTL inputs can be read out.

The tool offers the following functions:

  • Configuration of the channels as input or output (in blocks of 8)
  • Switching on and off channel by channel
  • Reading back the switching status (output readback)
  • Displaying the logical status of the inputs (input readback)

 

Analog Out
Here you can test the analog outputs of the module and manually enter any voltage or current value.

Analog In
In this menu, voltage or current values of all A/D channels can be displayed.
It is also possible to activate our A/D software filter with different filter levels.

CAN Runtime Parameter

Here you can change the CAN settings of the interface, the RX and TX packets in runtime.

The following settings can be made:

  • Baud rate
  • Extended ID
  • Active on/off
  • CAN ID
  • Mode

CNT48

Here you can read out the counter readings of a counter module, select filter options and set various counting modes.

The following counting modes are supported:

  • Read on rising edge
  • Read on rising edge x2
  • Read on rising edge x4
  • Period duration
  • Frequency measurement
  • PWM measurement

Pulse generator
The pulse generator can be used to generate square-wave signals. High and low time as well as the number of pulses can be set here.

PWM Out
In this menu you have the option of testing various PWM frequencies. In addition, the duty cycle can be entered manually for each individual channel.

Temp
The temperature of all connected temperature sensors is displayed here directly in °C.

Graphical display
This menu allows a graphical representation of all analog input signals, such as A/D, temperature or FIFO-IN.

Watchdog
This tool can be used to check the configured watchdog parameters for correct function.

I/O – Timeout

You can use the timeout function in the I/O area to simulate a timeout case for your module.

The following is a description of the timeout window

  1. Read / Write symbol:   Flashes to indicate an active connection to the module
  2. Automatic access: Removing the tick triggers a timeout after the timeout time has expired
  3. Manual access: Manual retrieval of data from the module
  4. Timeout status: Shows whether the timeout is active and whether a timeout event has occurred
  5. Timeout mode: Selection between 3 timeout modes, Normal, Reactivate and Secure
  6. Timeout duration: The time after which the timeout should be triggered is set here
  7. Activate / deactivate: Activates or deactivates the timeout function

 

Access times tests
You can test the access times for the module here. The following access time tests can be performed:

  • Register – Read/Write/Write + Readback
  • Digital I/O – Read/Write/Write + Readback
  • Analog I/O – Read/Write/Write + Readback

Access times tests

This test can be used to determine the access times to the module. The test values are read and written in 8, 16, 32, or 64-bit commands.

Access times Register
The following example checks the register accesses to an Ethernet module. The average access time here is 0.5 ms.

Access times Analog I/O
In the following example, the access times to an Ethernet module with analog I/Os are checked. The average access time here is 0.6 ms.

Access times Digital I/O
In the following example, the access times to an Ethernet module with digital I/Os are checked. The average access time here is 0.6 ms.


Cable feedback tests
For this test, the digital or analog outputs of the module are connected to the corresponding digital or analog inputs of the module via cable. The feedback test now checks whether the output and input values match.

Cable return test

The cable return test can be used to check the function of all digital and analog inputs and outputs (I/Os) of a module. To do this, inputs and outputs are wired together externally on a 1:1 basis. The test software analyzes whether the output signals arrive correctly at the inputs, thereby identifying wiring errors or hardware defects.

Analog test
In analog test mode, the D/A converter outputs defined test voltages, which are then read in by the A/D converter and compared with the target values. The software counts the number of test runs and automatically documents any deviations.

Digital test
In the digital test, the switching states of the relay or MOSFET outputs are fed back externally to the optocoupler inputs. Here, too, the software counts and compares the number of cycles and automatically detects transmission errors or deviations.

Cable return test

The cable return test can be used to check the function of all digital and analog inputs and outputs (I/Os) of a module. To do this, inputs and outputs are wired together externally on a 1:1 basis. The test software analyzes whether the output signals arrive correctly at the inputs, thereby identifying wiring errors or hardware defects.

Analog test
In analog test mode, the D/A converter outputs defined test voltages, which are then read in by the A/D converter and compared with the target values. The software counts the number of test runs and automatically documents any deviations.

Digital test
In the digital test, the switching states of the relay or MOSFET outputs are fed back externally to the optocoupler inputs. Here, too, the software counts and compares the number of cycles and automatically detects transmission errors or deviations.


A/D ripple
The ripple test displays the residual ripple of the individual A/D inputs.

A/D quality measurements

The quality of an A/D measurement is influenced by various factors and can be affected by external interference. A reliable method for checking measurement quality is to measure a stable battery voltage. Our diagnostic tools can be used to determine the residual ripple and noise behavior.

A/D ripple
The A/D ripple test can be used to measure the residual ripple of the individual A/D inputs and check for interference signals such as mains hum or voltage instabilities.

A/D noise
The noise behavior of each A/D channel can be displayed graphically using A/D noise measurement. Additional filter stages with averaging can be used to smooth and improve the measurement signal.


FIFO In/Out

The software FIFO test can be used to specifically test the integrated FIFO buffering of our digital and analog NET I/O modules. Depending on whether it is an input or output module, data is read from the submodule FIFO or written to the submodule FIFO.

 

FIFO settings

The submodule number can be used to specify which module is to be tested. The start and end channels can also be used to transmit several channels simultaneously. In addition, the transmission frequency can be set and the desired FIFO mode selected – for example, for the use of test values or the actual measured values of the module.

All important information at a glance

During program execution, key information such as the size of the data packets, free and occupied bytes in the FIFO buffer, the number of data packets sent or received, and the current FIFO status are clearly displayed.


D/A output test

The D/A output test enables targeted testing of each individual D/A channel of a module. A freely selectable test voltage can be output directly. Currently, simple square wave signals with configurable high and low times are available. The signals can be monitored simultaneously with an oscilloscope. This function is also ideal for long-term tests. The test software detects DELIB errors and logs them automatically.


Mustertext

Mustertext

DO 4* value + wait

In this test, adjustable 16-bit values are written to the digital outputs of the module.
The values are sent to the module using the DapiDOSet16 command. The start channel is always channel 0.
You can set different wait times between the individual calls.
The test is intended for testing the functionality of the module.


Mustertext

Mustertext

Modbus I/O test

In the diagnostics section of the ICT-Tool, you can test the module’s digital and analog inputs and outputs directly via Modbus TCP. Register addresses as well as transfer and return values are displayed in a debug panel, allowing you to quickly diagnose problems with the D/A converter, for example. A complete overview of all register addresses and examples can be found in the Modbus manual at the following link:

To benefit from the latest functions and prevent errors, we recommend that you always keep your DEDITEC product up to date.

Flash Files
Downloading the firmware flash file package via the ICT tool

  1. Go to Flash Files in the “Firmware update” menu
  2. Click on the download button to start the download.
  3. Administration rights are required for the automatic unpacking of the flash files. If these rights are not available, the files are downloaded to the download area of your PC and must be extracted manually to the installation directory.
    \DEDITEC\DELIB\programs\flash_files

Downloading the firmware flash file package via the DEDITEC homepage

  1. Download the required firmware flash file package from our homepage: Downloads -> Software -> Firmware
  2. Extract the files to the following installation path: ..\DEDITEC\DELIB\programs\flash_files

Flash modules
In the “Firmware update” menu, select the module you want to update and then click on the “Flash modules” or “Flash submodules” button.
The firmware is now updated and the module is then restarted automatically.

 

Information on the firmware flasher
The following information is displayed in the firmware flasher:

  • Last FW: Displays the last firmware version
  • Current FW: Displays the currently installed firmware version
  • Newest FW: Displays the latest firmware version
  • Log: Displays status or error messages during the flash process

In den folgenden Kapitel, würden wir Ihnen unsere neue All-In-One-Software gerne genauer vorstellen.

General
Here you can make general configurations to the ICT tool.

The following changes can be made:

  • Language – setting between German and English possible

Updates
Here you can search for available DELIB or firmware updates.

  • Automatic update search at program start
  • Search for DELIB updates
  • Search for firmware updates

Error log
Here you can make settings for the deditec_debug.log. This is saved under the path C:\Users\?USER?\AppData\Local\DEDITEC.

The following settings can be made:

  • Enable writing to the debug.log
  • Activate log notifications
  • Activate automatic deletion of the debug.log
  • Setting after how many days the debug.log should be deleted
  • Set the maximum size of the debug.log

DELIB – DebugView – Global

Settings can be made here for the information that is to be displayed with the DebugView.

  • Activate debug output
  • Activate display of errors

DELIB – DebugView – Details
More detailed settings can be made here for the information to be displayed with the DebugView.

Configuration of our modules via the Ethernet / WiFi and USB interface

Depending on the product series, different interfaces are available for configuration with the control PC.

In order to be able to address the DEDITEC product via Ethernet, it must be provided with the corresponding network settings. The following options are available for configuration:

  • USB
  • Ethernet / Dynamic IP
  • Ethernet / Static IP
  • Web interface
  • WiFi

Connect the DEDITEC module to your PC via USB cable. Thanks to the Plug & Play function and the DELIB driver library, our modules are automatically recognized by your computer’s operating system. You can now access the module with our ICT-Tool and make the network settings in the configuration menu.

In DHCP mode, the DEDITEC module is automatically assigned a free IP address and the appropriate network settings by a DHCP server. The following options are available for activating DHCP mode:

 

  1. Activation via DIP switch
  2. Activation via the network search function in the “Edit / Add menu” of the ICT-Tool
  3. Activation via the “Module configuration menu” of the ICT-Tool
  4. Activation via the web interface of the module

DHCP mode can be activated on all DEDITEC modules with DIP switch 1.

In the “Edit / Add menu” of the ICT-Tool, you can scan the network for connected DEDITEC modules. Any modules found are then displayed in a list view where they can be configured and saved.

Click on the “Edit” button in the line of the desired module.

You can now make the desired network configuration in the following window and save it in the module using the “Save / Test” button.

To access the module’s configuration menu, the module must first be integrated into the ICT-Tool.

As the factory IP settings of the module often do not match the network settings of the customer’s PC, the following options are available to help you change them:

 

  • Integration via the USB interface
  • Integration via DHCP with DIP switch 1
  • Direct connection to the PC * IP factory setting via DIP switch
  • Integration via WiFi

Integration via the USB interface (only if available)

Connect the DEDITEC module to your PC via USB cable. Thanks to the Plug & Play function and the DELIB driver library, our modules are automatically recognized by your computer’s operating system. You can now select the module in the main menu of the ICT-Tool and make the network settings in the configuration menu.

Integration via DHCP using DIP switch 1

Set DIP switch 1 on your module to “ON” and switch the module on.
The module now starts in DHCP mode and can be added or selected as a module in the ICT-Tool. You can now make the network settings in the configuration menu. Then reset DIP switch 1 again.

Integration via the IP factory settings with DIP switch 3 and crossover cable

Connect the DEDITEC module directly to your PC using a crossover cable. Set the module’s DIP switch 3 to “ON” and switch the module on. The module now starts with the factory IP address 192.168.1.1. Temporarily set your PC to the same 192.168.1.x network and then add the DEDITEC module in the ICT-Tool.
You can now change the network settings of the module in the configuration menu. DIP switch 3 and the PC IP settings are then reset.

Integration via WiFi (only for WEU series modules)

By pressing the CFG button on the DEDITEC module, you activate the WPS function to automatically connect to the WLAN router of your network (see “WiFi” tab). After a successful connection, the module can be called up in the ICT-Tool via the board name stored in the router – e.g. “boardname.fritz.box” – and can be added as a new module. You can then make the network settings in the configuration menu. For support, contact your system administrator if necessary.

The module is now set to DHCP on the software side.

Central network settings, such as IP configuration or DHCP activation, can be made via the module’s web interface.

To call up the web interface of the module, start your Internet browser and enter the IP address of the module in the URL line. -> For more details, see the “Web interface” tab

 

To integrate the module into an existing network, it can be permanently assigned a fixed IP address. The following options are available for configuring the module’s network settings:

 

  1. Configuration via the network search function in the “Edit / Add menu” of the ICT-Tool
  2. Configuration via the “Module configuration menu” of the ICT-Tool
  3. Configuration via the module’s web interface

In the “Edit / Add menu” of the ICT-Tool, you can scan the network for connected DEDITEC modules. Any modules found are then displayed in a list view where they can be configured and saved.

Click on the “Edit” button in the line of the desired module.

You can now make the desired network configuration in the following window and save it in the module using the “Save / Test” button.

To access the module’s configuration menu, the module must first be integrated into the ICT-Tool.

As the factory IP settings of the module often do not match the network settings of the customer’s PC, the following options are available to help you change them:

  • Integration via the USB interface
  • Integration via DHCP with DIP switch 1
  • Direct connection to the PC * IP factory setting via DIP switch
  • Integration via WiFi

Integration via the USB interface (only if available)

Connect the DEDITEC module to your PC via USB cable. Thanks to the Plug & Play function and the DELIB driver library, our modules are automatically recognized by your computer’s operating system. You can now select the module in the main menu of the ICT-Tool and make the network settings in the configuration menu.

Integration via DHCP using DIP switch 1

Set DIP switch 1 on your module to “ON” and switch the module on.
The module now starts in DHCP mode and can be added or selected as a module in the ICT-Tool. You can now make the network settings in the configuration menu. Then reset DIP switch 1 again.

Integration via the IP factory settings with DIP switch 3 and crossover cable

Connect the DEDITEC module directly to your PC using a crossover cable. Set the module’s DIP switch 3 to “ON” and switch the module on. The module now starts with the factory IP address 192.168.1.1. Temporarily set your PC to the same 192.168.1.x network and then add the DEDITEC module in the ICT-Tool.
You can now change the network settings of the module in the configuration menu. DIP switch 3 and the PC IP settings are then reset.

Integration via WiFi (only for WEU series modules)

By pressing the CFG button on the DEDITEC module, you activate the WPS function to automatically connect to the WLAN router of your network (see “WiFi” tab). After a successful connection, the module can be called up in the ICT-Tool via the board name stored in the router – e.g. “boardname.fritz.box” – and can be added as a new module. You can then make the network settings in the configuration menu. For support, contact your system administrator if necessary.

The module is now set to DHCP on the software side.

Central network settings, such as IP configuration or DHCP activation, can be made via the module’s web interface.

To call up the web interface of the module, start your Internet browser and enter the IP address of the module in the URL line. -> For more information, see the “Web interface” tab

All central network settings for the module can be made via the module’s web interface.

Access to the web interface

To call up the web interface of the module, start your Internet browser and enter the IP address of the module in the URL line. The access data is set at the factory as follows:

IP address: 192.168.1.1
User name: admin
Password: admin

If you do not know the IP address of the module, simply use the network search function in the “Edit / Add Men” of the ICT-Tool or look at the IP address assignment in your router.

You can also find more information on this under the “Static IP” or “Dynamic IP” tabs

All modules in the WEU series have an integrated WiFi interface. The connection to a WiFi network can be established either via the ICT-Tool or by pressing the CFG button on the module. You can then make further network settings in the configuration menu. The following options are available for establishing a WiFi connection:

  • Establish WiFi connection via button
  • Establish automatic connection via ICT-Tool (WPS)
  • Establish manual connection via ICT-Tool

By pressing the CFG button on the DEDITEC module, you activate the WPS function to automatically connect to the WLAN router of your network.

Different modes are activated depending on the duration of operation:

  • 3–6 Press and hold for seconds: Activate WiFi
  • 7–12 Press and hold for seconds: Start WPS connection
  • 13–15 Press and hold for seconds: Deactivate WiFi

A status LED on the module indicates the current mode by flashing.

WPS – Simple connection to the network

WPS (WiFi Protected Setup) makes it particularly easy to connect to a WLAN network – without having to enter a network name or password manually.

This is how the WPS connection works:

  1. Activate WPS mode on the module (press the CFG button for 7-12 seconds)
  2. Press the WPS button on the router within 2 minutes*.
  3. The connection is now established automatically.

* Note:

For this type of connection to work, the router used must support WPS. Otherwise, the WLAN connection must be set up manually via the LAN configuration in the ICT-Tool.

A connection to the router can be established automatically in the WPS tab. To do this, press the “WPS Start” button and activate the WPS function on the router within two minutes. The devices will then connect to each other automatically.

If the router login data is known, a connection can be established in the WiFi configuration tab by entering the user name and password. Please note that WiFi must also be activated.

Control of Ethernet modules via Modbus TCP protocol

Modbus TCP is a protocol based on TCP/IP that is used for communication between different devices. It allows data to be read and written via so-called registers and bits. Standardized function codes are used for this purpose, such as:

General register allocation

Modbus
register
(dez)
Data type Access Data
size
(Bit)
Description
0 ... 9999 Coil write / read 1 Writing and reading back digital outputs
10000 ... 19999 Discrete Inputs read 1 Read digital inputs
30000 ... 39999 Input Register read 16 Read holder register
40000 ... 49999 Holding Register write / read 16 Write and read back registers

Control of Ethernet modules via Modbus TCP

Our modules can be controlled via the Modbus register protocol for quick and easy integration. This protocol allows you to conveniently read and write values, switch digital outputs, or query inputs. The complete protocol is available for download.

Example:

// Writes the digital outputs of channels 1-16
MASTER.WriteMultipleRegisters(SLAVE_ID, 0x0420, 0x03);

// Reads the values from channels 1-16
registerValue = MASTER.ReadHoldingRegisters(SLAVE_ID, 0x0420, NUMREGISTERS);

 


Configuration of our Modbus TCP modules

The Ethernet module is configured as follows at the factory:

Modbus active = YES
Modbus IP address = IP address of the module
Modbus port = 502 (standard Modbus port)

If you would like to use your own settings or deactivate the Modbus function, please use the configuration menu of our ICT-Tool.

Icon Can

Changing the parameters in the ICT-Tool

1. Setting/changing the IP address:

The IP address for Modbus TCP and TCP-IP is always identical.

Detailed instructions on how to change the IP address can be found at the following link:

 

 

2. Deactivate the Modbus function in the module:

If you want to deactivate the Modbus function, navigate to the “Modbus TCP” submenu, uncheck the “Enable” box, and then save your settings.

3. Port configuration

Modbus TCP communication takes place on port 502 by default. Alternatively, any port between 100 and 49151 can be set.

FormCfgCANStatus

Modbus I/O test

In the diagnostics section of the ICT-Tool, you can test the module's digital and analog inputs and outputs directly via Modbus TCP. Register addresses as well as transfer and return values are displayed in a debug panel, allowing you to quickly diagnose problems with the D/A converter, for example. A complete overview of all register addresses and examples can be found in the Modbus manual at the following link:

FormDiagnoseSetDAWithDelay

M2M

Machine to Machine
M2M is the abbreviation for “machine-to-machine” and enables automatic data transmission between two or more devices. This means that analog or digital input signals from a transmitter module can be automatically transmitted to a receiver module, where they are immediately output again.

Data exchange without a control PC
The modules communicate directly at device level and therefore do not require any additional user software. The one-off configuration of the transmitter module can be carried out very easily using our ICT-Tool. All settings remain permanently stored in the module memory, even in the event of a power failure. After a restart, the module automatically switches back to M2M operation.

M2M Ethernet or M2M CAN
With our DEDITEC products, we differentiate between M2M Ethernet and M2M CAN. We also refer to the latter as CAN-TX/RX mode. Both M2M methods are supported by most of our modules with Ethernet or CAN interface.

Overview M2M

M2M-Ethernet

To be able to use M2M-Ethernet, the transmitter module must always be equipped with our M2M feature, whereas the receiver module can be any DEDITEC product with an Ethernet interface.

A maximum of 4 receiver modules (destinations) can currently be configured and up to 8 actions defined.

Definition of the receiver module

  • Designation/name of the module
  • Network configuration of the module
  • Timeout time
  • Encryption type and password
FormM2MDestinations

Definition of actions

These actions are used to define which analog or digital inputs are to be transmitted to a receiver module.

The following parameters can be defined in an action:

  • Which data should be sent (digital or analog)
  • To which receiver module (destination) should be sent
  • The interval with which the operations are to be performed
  • Start channel of the transmitter module
  • Number of input channels to be transmitted
  • Start channel of the receiver module

In the image on the right, DI data is sent every 100ms from channel 3(CH Start) to channel 8 ((CH Start) + (CH Count)) to channels 0-5 of the target module.

FormM2MJobs

Programming our modules with the DELIB driver library

The DELIB driver library enables uniform communication with all DEDITEC products. Thanks to its comprehensive and clearly structured design, our modules can be integrated into your projects and controlled in almost any programming language.

Detailed instructions on DELIB and a variety of programming examples can be found here:

 

A list of all DELIB commands can be found here:

Logo DeLib

Programming our modules with the DELIB driver library ETH

DELIB ETH is a pure Ethernet version of the DEDITEC driver library. It does not contain any drivers for USB or serial ports and does not need to be installed on the PC. There is also no need to configure or integrate a module in the registry. Admin write permissions are also not required.

As a project customer, you can also integrate DELIB ETH directly into your own setup.

All products with an Ethernet interface are supported by DELIB ETH and can be addressed directly via the TCP/IP address.

 

Click here for DELIB ETH:

Example of programming our modules with DELIB

The following examples show how to open a module and switch digital outputs.

Open module:
uint ModulID = 14; - the ID depends on the module type. (s. delib.h)
uint ModulNr = 0; - always 0 by default
uint handle; - handle of the open module
handle = DapiOpenModule(ModulID, ModulNr);

Switching relays:
uint ch = 0; - channel number
uint val = 1; - value to be set (0=off / 1=on)
DapiDOSet1(handle, ch, val);

Close module:
DapiCloseModule(handle);

Explanation:

The “DapiOpenModule” function is used to open a module. The two parameters passed within the parentheses determine which module is to be opened.

The first parameter refers to the module ID. You can find the correct ID for your module in the delib.h file, which is located in the DEDITEC installation path.
The second parameter refers to the module number, which is important if several modules of the same type are operated on one PC. If only one module is connected to the PC, simply enter “0”. The module number can be set directly on the module using the ICT-Tool.

How do I test my module?

You can access the module directly via the graphical user interface and execute all functions.

Click here for the ICT tool:

Overview ICT Tool DE

Programming our Ethernet modules

Our Ethernet modules are programmed using the DELIB driver library.

 

The following programming options (protocols/IP address) are available:

Module mit einem 10/100 Mbit Ethernet-Interface können direkt an einem PC oder an einem Netzwerk-LAN angeschlossen werden. Für die Konfiguration stehen folgende Möglichkeiten zur Auswahl:

Ansteuerung von Ethernet-Modulen mit Hilfe der IP-Direct-Methode

Mit dieser Methode können Sie unsere Ethernet-Module direkt über die IP-Adresse öffnen und steuern. Eine Installation des DELIB-Setups ist nicht notwendig.

Im folgenden Beispiel wird das Modul über IP-Direct geöffnet:

DAPI_OPENMODULEEX_STRUCT exbuffer = new DAPI_OPENMODULEEX_STRUCT();

exbuffer.address = „192.168.1.1“;

exbuffer.portno   = 9912;

exbuffer.timeout  = 5000;

handle = DapiOpenModuleEx(29, 0, exbuffer, 0);

Ansteuerung von Ethernet-Modulen mit Hilfe der Standard-Methode (Registry)

Mit dieser Methode wird das Modul über die in der Registry hinterlegten Netzwerkkonfiguration geöffnet.

Dadurch muss die Anwendungssoftware nicht die IP-Adresse kennen, da diese auf dem Rechner in der Registry gespeichert ist. Die Verteilung von Software auf unterschiedliche Rechner ist dadurch einfacher.

Die Konfiguration kann mit Hilfe des ICT-Tools in der Registry abgespeichert werden.

Im folgenden Beispiel wird das Modul über die Standard-Methode geöffnet:

uint ModulID = 39; (s. delib.h)

uint ModulNr = 0;

handle = DapiOpenModule(ModulID, ModulNr);

Ansteuerung von Ethernet-Modulen über TCP/IP über unser offenes Ethernet Protokoll

Bei Bedarf können Sie Ihre eigene Ansteuerung selber programmieren. Das Protokoll, welches die Kommunikation über TCP/IP beschreibt, ist offen gelegt. Die Ansteuerung erfolgt registerbasiert. Hierfür wurde ein Kommunikations-Protokoll erstellt, anhand dessen die Register des Moduls angesprochen werden und somit Lese- oder Schreibbefehle ausgeführt werden. Das Handbuch “Protokolle & Registerbelegung” beschreibt die Sende- und Empfangsrahmen, um mit unseren Ethernet-Modulen zu kommunizieren.

Our Ethernet products can be controled in various ways. For a better overview, we have divided these into the following points:

  • IP direct method
  • Standard method (registry)
  • DEDITEC TCP/IP protocol
  • Modbus TCP protocol

Ansteuerung von Ethernet-Modulen mit Hilfe der IP-Direct-Methode

Mit dieser Methode können Sie unsere Ethernet-Module direkt über die IP-Adresse öffnen und steuern. Eine Installation des DELIB-Setups ist nicht notwendig.

Im folgenden Beispiel wird das Modul über IP-Direct geöffnet:

DAPI_OPENMODULEEX_STRUCT exbuffer = new DAPI_OPENMODULEEX_STRUCT();

exbuffer.address = „192.168.1.1“;

exbuffer.portno   = 9912;

exbuffer.timeout  = 5000;

handle = DapiOpenModuleEx(29, 0, exbuffer, 0);

Ansteuerung von Ethernet-Modulen mit Hilfe der Standard-Methode (Registry)

Mit dieser Methode wird das Modul über die in der Registry hinterlegten Netzwerkkonfiguration geöffnet.

Dadurch muss die Anwendungssoftware nicht die IP-Adresse kennen, da diese auf dem Rechner in der Registry gespeichert ist. Die Verteilung von Software auf unterschiedliche Rechner ist dadurch einfacher.

Die Konfiguration kann mit Hilfe des ICT-Tools in der Registry abgespeichert werden.

Im folgenden Beispiel wird das Modul über die Standard-Methode geöffnet:

uint ModulID = 39; (s. delib.h)

uint ModulNr = 0;

handle = DapiOpenModule(ModulID, ModulNr);

Ansteuerung von Ethernet-Modulen über TCP/IP über unser offenes Ethernet Protokoll

Bei Bedarf können Sie Ihre eigene Ansteuerung selber programmieren. Das Protokoll, welches die Kommunikation über TCP/IP beschreibt, ist offen gelegt. Die Ansteuerung erfolgt registerbasiert. Hierfür wurde ein Kommunikations-Protokoll erstellt, anhand dessen die Register des Moduls angesprochen werden und somit Lese- oder Schreibbefehle ausgeführt werden. Das Handbuch “Protokolle & Registerbelegung” beschreibt die Sende- und Empfangsrahmen, um mit unseren Ethernet-Modulen zu kommunizieren.

Module mit einem 10/100 Mbit Ethernet-Interface können direkt an einem PC oder an einem Netzwerk-LAN angeschlossen werden. Für die Konfiguration stehen folgende Möglichkeiten zur Auswahl:

Control of Ethernet modules using the IP Direct method

This method allows you to open and control our Ethernet modules directly via the IP address. It is not necessary to install the DELIB setup.

In the following example, the module is opened via IP-Direct:

DAPI_OPENMODULEEX_STRUCT exbuffer = new DAPI_OPENMODULEEX_STRUCT();

exbuffer.address = „192.168.1.1“;

exbuffer.portno   = 9912;

exbuffer.timeout  = 5000;

handle = DapiOpenModuleEx(29, 0, exbuffer, 0);

Control of Ethernet modules using the standard method (registry)

This method opens the module via the network configuration stored in the registry.

This means that the application software does not need to know the IP address, as this is stored on the computer in the registry. This makes it easier to distribute software to different computers.

The configuration can be saved in the registry using the ICT-Tool.

In the following example, the module is opened using the standard method:

uint ModulID = 39; (s. delib.h)

uint ModulNr = 0;

handle = DapiOpenModule(ModulID, ModulNr);

Control of Ethernet modules via TCP/IP using our open Ethernet protocol

If required, you can program your own control system yourself. The protocol that describes communication via TCP/IP is open. Control is register-based. A communication protocol has been created for this purpose, which is used to address the registers of the module and thus execute read or write commands. The “Protocols & Register Assignment” manual describes the send and receive frames for communicating with our Ethernet modules.

This method allows you to open and control our Ethernet modules directly via the IP address. Installation of the DELIB setup is not necessary.

In the following example, the module is opened via IP Direct:

DAPI_OPENMODULEEX_STRUCT exbuffer = new DAPI_OPENMODULEEX_STRUCT();

exbuffer.address = „192.168.1.1“;

exbuffer.portno   = 9912;

exbuffer.timeout  = 5000;

handle = DapiOpenModuleEx(29, 0, exbuffer, 0);

Ansteuerung von Ethernet-Modulen mit Hilfe der IP-Direct-Methode

Mit dieser Methode können Sie unsere Ethernet-Module direkt über die IP-Adresse öffnen und steuern. Eine Installation des DELIB-Setups ist nicht notwendig.

Im folgenden Beispiel wird das Modul über IP-Direct geöffnet:

DAPI_OPENMODULEEX_STRUCT exbuffer = new DAPI_OPENMODULEEX_STRUCT();

exbuffer.address = „192.168.1.1“;

exbuffer.portno   = 9912;

exbuffer.timeout  = 5000;

handle = DapiOpenModuleEx(29, 0, exbuffer, 0);

Ansteuerung von Ethernet-Modulen mit Hilfe der Standard-Methode (Registry)

Mit dieser Methode wird das Modul über die in der Registry hinterlegten Netzwerkkonfiguration geöffnet.

Dadurch muss die Anwendungssoftware nicht die IP-Adresse kennen, da diese auf dem Rechner in der Registry gespeichert ist. Die Verteilung von Software auf unterschiedliche Rechner ist dadurch einfacher.

Die Konfiguration kann mit Hilfe des ICT-Tools in der Registry abgespeichert werden.

Im folgenden Beispiel wird das Modul über die Standard-Methode geöffnet:

uint ModulID = 39; (s. delib.h)

uint ModulNr = 0;

handle = DapiOpenModule(ModulID, ModulNr);

Ansteuerung von Ethernet-Modulen über TCP/IP über unser offenes Ethernet Protokoll

Bei Bedarf können Sie Ihre eigene Ansteuerung selber programmieren. Das Protokoll, welches die Kommunikation über TCP/IP beschreibt, ist offen gelegt. Die Ansteuerung erfolgt registerbasiert. Hierfür wurde ein Kommunikations-Protokoll erstellt, anhand dessen die Register des Moduls angesprochen werden und somit Lese- oder Schreibbefehle ausgeführt werden. Das Handbuch “Protokolle & Registerbelegung” beschreibt die Sende- und Empfangsrahmen, um mit unseren Ethernet-Modulen zu kommunizieren.

Module mit einem 10/100 Mbit Ethernet-Interface können direkt an einem PC oder an einem Netzwerk-LAN angeschlossen werden. Für die Konfiguration stehen folgende Möglichkeiten zur Auswahl:

Ansteuerung von Ethernet-Modulen mit Hilfe der IP-Direct-Methode

Mit dieser Methode können Sie unsere Ethernet-Module direkt über die IP-Adresse öffnen und steuern. Eine Installation des DELIB-Setups ist nicht notwendig.

Im folgenden Beispiel wird das Modul über IP-Direct geöffnet:

DAPI_OPENMODULEEX_STRUCT exbuffer = new DAPI_OPENMODULEEX_STRUCT();

exbuffer.address = „192.168.1.1“;

exbuffer.portno   = 9912;

exbuffer.timeout  = 5000;

handle = DapiOpenModuleEx(29, 0, exbuffer, 0);

Ansteuerung von Ethernet-Modulen mit Hilfe der Standard-Methode (Registry)

Mit dieser Methode wird das Modul über die in der Registry hinterlegten Netzwerkkonfiguration geöffnet.

Dadurch muss die Anwendungssoftware nicht die IP-Adresse kennen, da diese auf dem Rechner in der Registry gespeichert ist. Die Verteilung von Software auf unterschiedliche Rechner ist dadurch einfacher.

Die Konfiguration kann mit Hilfe des ICT-Tools in der Registry abgespeichert werden.

Im folgenden Beispiel wird das Modul über die Standard-Methode geöffnet:

uint ModulID = 39; (s. delib.h)

uint ModulNr = 0;

handle = DapiOpenModule(ModulID, ModulNr);

Ansteuerung von Ethernet-Modulen über TCP/IP über unser offenes Ethernet Protokoll

Bei Bedarf können Sie Ihre eigene Ansteuerung selber programmieren. Das Protokoll, welches die Kommunikation über TCP/IP beschreibt, ist offen gelegt. Die Ansteuerung erfolgt registerbasiert. Hierfür wurde ein Kommunikations-Protokoll erstellt, anhand dessen die Register des Moduls angesprochen werden und somit Lese- oder Schreibbefehle ausgeführt werden. Das Handbuch “Protokolle & Registerbelegung” beschreibt die Sende- und Empfangsrahmen, um mit unseren Ethernet-Modulen zu kommunizieren.

This method opens the module using the network configuration stored in the registry.

This means that the application software does not need to know the IP address, as this is stored in the registry on the computer. This makes it easier to distribute software to different computers.

The configuration can be saved in the registry using the ICT-Tool.

In the following example, the module is opened using the standard method:

uint ModulID = 39; (s. delib.h)

uint ModulNr = 0;

handle = DapiOpenModule(ModulID, ModulNr);

Ansteuerung von Ethernet-Modulen mit Hilfe der IP-Direct-Methode

Mit dieser Methode können Sie unsere Ethernet-Module direkt über die IP-Adresse öffnen und steuern. Eine Installation des DELIB-Setups ist nicht notwendig.

Im folgenden Beispiel wird das Modul über IP-Direct geöffnet:

DAPI_OPENMODULEEX_STRUCT exbuffer = new DAPI_OPENMODULEEX_STRUCT();

exbuffer.address = „192.168.1.1“;

exbuffer.portno   = 9912;

exbuffer.timeout  = 5000;

handle = DapiOpenModuleEx(29, 0, exbuffer, 0);

Ansteuerung von Ethernet-Modulen mit Hilfe der Standard-Methode (Registry)

Mit dieser Methode wird das Modul über die in der Registry hinterlegten Netzwerkkonfiguration geöffnet.

Dadurch muss die Anwendungssoftware nicht die IP-Adresse kennen, da diese auf dem Rechner in der Registry gespeichert ist. Die Verteilung von Software auf unterschiedliche Rechner ist dadurch einfacher.

Die Konfiguration kann mit Hilfe des ICT-Tools in der Registry abgespeichert werden.

Im folgenden Beispiel wird das Modul über die Standard-Methode geöffnet:

uint ModulID = 39; (s. delib.h)

uint ModulNr = 0;

handle = DapiOpenModule(ModulID, ModulNr);

Ansteuerung von Ethernet-Modulen über TCP/IP über unser offenes Ethernet Protokoll

Bei Bedarf können Sie Ihre eigene Ansteuerung selber programmieren. Das Protokoll, welches die Kommunikation über TCP/IP beschreibt, ist offen gelegt. Die Ansteuerung erfolgt registerbasiert. Hierfür wurde ein Kommunikations-Protokoll erstellt, anhand dessen die Register des Moduls angesprochen werden und somit Lese- oder Schreibbefehle ausgeführt werden. Das Handbuch “Protokolle & Registerbelegung” beschreibt die Sende- und Empfangsrahmen, um mit unseren Ethernet-Modulen zu kommunizieren.

Module mit einem 10/100 Mbit Ethernet-Interface können direkt an einem PC oder an einem Netzwerk-LAN angeschlossen werden. Für die Konfiguration stehen folgende Möglichkeiten zur Auswahl:

Ansteuerung von Ethernet-Modulen mit Hilfe der IP-Direct-Methode

Mit dieser Methode können Sie unsere Ethernet-Module direkt über die IP-Adresse öffnen und steuern. Eine Installation des DELIB-Setups ist nicht notwendig.

Im folgenden Beispiel wird das Modul über IP-Direct geöffnet:

DAPI_OPENMODULEEX_STRUCT exbuffer = new DAPI_OPENMODULEEX_STRUCT();

exbuffer.address = „192.168.1.1“;

exbuffer.portno   = 9912;

exbuffer.timeout  = 5000;

handle = DapiOpenModuleEx(29, 0, exbuffer, 0);

Ansteuerung von Ethernet-Modulen mit Hilfe der Standard-Methode (Registry)

Mit dieser Methode wird das Modul über die in der Registry hinterlegten Netzwerkkonfiguration geöffnet.

Dadurch muss die Anwendungssoftware nicht die IP-Adresse kennen, da diese auf dem Rechner in der Registry gespeichert ist. Die Verteilung von Software auf unterschiedliche Rechner ist dadurch einfacher.

Die Konfiguration kann mit Hilfe des ICT-Tools in der Registry abgespeichert werden.

Im folgenden Beispiel wird das Modul über die Standard-Methode geöffnet:

uint ModulID = 39; (s. delib.h)

uint ModulNr = 0;

handle = DapiOpenModule(ModulID, ModulNr);

Ansteuerung von Ethernet-Modulen über TCP/IP über unser offenes Ethernet Protokoll

Bei Bedarf können Sie Ihre eigene Ansteuerung selber programmieren. Das Protokoll, welches die Kommunikation über TCP/IP beschreibt, ist offen gelegt. Die Ansteuerung erfolgt registerbasiert. Hierfür wurde ein Kommunikations-Protokoll erstellt, anhand dessen die Register des Moduls angesprochen werden und somit Lese- oder Schreibbefehle ausgeführt werden. Das Handbuch “Protokolle & Registerbelegung” beschreibt die Sende- und Empfangsrahmen, um mit unseren Ethernet-Modulen zu kommunizieren.

If necessary, you can program your own control system yourself. The protocol that describes communication via TCP/IP is fully documented. Control is register-based. A communication protocol has been created for this purpose, which is used to address the module’s registers and thus execute read or write commands. The “Protocols & Register Assignment” manual describes the transmission and reception frames for communicating with our Ethernet modules.

 

Ansteuerung von Ethernet-Modulen mit Hilfe der IP-Direct-Methode

Mit dieser Methode können Sie unsere Ethernet-Module direkt über die IP-Adresse öffnen und steuern. Eine Installation des DELIB-Setups ist nicht notwendig.

Im folgenden Beispiel wird das Modul über IP-Direct geöffnet:

DAPI_OPENMODULEEX_STRUCT exbuffer = new DAPI_OPENMODULEEX_STRUCT();

exbuffer.address = „192.168.1.1“;

exbuffer.portno   = 9912;

exbuffer.timeout  = 5000;

handle = DapiOpenModuleEx(29, 0, exbuffer, 0);

Ansteuerung von Ethernet-Modulen mit Hilfe der Standard-Methode (Registry)

Mit dieser Methode wird das Modul über die in der Registry hinterlegten Netzwerkkonfiguration geöffnet.

Dadurch muss die Anwendungssoftware nicht die IP-Adresse kennen, da diese auf dem Rechner in der Registry gespeichert ist. Die Verteilung von Software auf unterschiedliche Rechner ist dadurch einfacher.

Die Konfiguration kann mit Hilfe des ICT-Tools in der Registry abgespeichert werden.

Im folgenden Beispiel wird das Modul über die Standard-Methode geöffnet:

uint ModulID = 39; (s. delib.h)

uint ModulNr = 0;

handle = DapiOpenModule(ModulID, ModulNr);

Ansteuerung von Ethernet-Modulen über TCP/IP über unser offenes Ethernet Protokoll

Bei Bedarf können Sie Ihre eigene Ansteuerung selber programmieren. Das Protokoll, welches die Kommunikation über TCP/IP beschreibt, ist offen gelegt. Die Ansteuerung erfolgt registerbasiert. Hierfür wurde ein Kommunikations-Protokoll erstellt, anhand dessen die Register des Moduls angesprochen werden und somit Lese- oder Schreibbefehle ausgeführt werden. Das Handbuch “Protokolle & Registerbelegung” beschreibt die Sende- und Empfangsrahmen, um mit unseren Ethernet-Modulen zu kommunizieren.

Modbus TCP is a protocol based on TCP/IP that is used for communication between different devices. It allows data to be read and written via so-called registers and bits. Standardized function codes are used for this purpose, such as:

General register allocation

Modbus
register
(dez)
Data type Access Data
size
(Bit)
Description
0 … 9999 Coil write / read 1 Writing and reading back digital outputs
10000 … 19999 Discrete Inputs read 1 Read digital inputs
30000 … 39999 Input Register read 16 Read holder register
40000 … 49999 Holding Register write / read 16 Write and read back registers

Modbus TCP is a protocol based on TCP/IP that is used for communication between different devices. It allows data to be read and written via so-called registers and bits. Standardized function codes are used for this purpose, such as:


  • Read Coils (FC 01): reads digital outputs (0 or 1).
  • Read Discrete Inputs (FC 02): reads digital inputs (0 or 1).
  • Read Holding Registers (FC 03): Reads 16-bit values that can also be written (e.g., setpoints).
  • Read Input Registers (FC 04): Reads 16-bit values that are read-only (e.g., measured values).

Our modules can be controlled via the Modbus register protocol for quick and easy integration. This protocol allows you to conveniently read and write values, switch digital outputs, or query inputs. The complete protocol is available for download.

Example:

// Writes the digital outputs of channels 1-16
MASTER.WriteMultipleRegisters(SLAVE_ID, 0x0420, 0x03);

// Reads the values from channels 1-16
registerValue = MASTER.ReadHoldingRegisters(SLAVE_ID, 0x0420, NUMREGISTERS);

 

Management functions

Icon Delib Command

DapiOpenModule

This function opens a specific module.

Description
This function opens a specific module.

Definition
ULONG DapiOpenModule(ULONG moduleID, ULONG nr);

Parameter
moduleID=Specifies the module to be opened (see delib.h)
nr=Specifies which module is to be opened.
nr=0 -> 1. Module
nr=1 -> 2. Module

Return value
handle=Corresponding handle for the module
handle=0 -> Module was not found

Remark
The handle returned by this function is required to identify the module for all other functions.

Programming example

// Open USB module
handle = DapiOpenModule(RO_USB1, 0);
printf(„handle = %x\n“, handle);
if (handle==0)
{
// USB module was not found
printf(„Module could not be opened\n“);
return;
}

DapiCloseModule

This command closes an open module.

Description
This command closes an open module.

Definition
ULONG DapiCloseModule(ULONG handle);

Parameter
handle=This is the handle of an open module

Return value
None

Programming example

// Close module
DapiCloseModule(handle);

DapiGetDELIBVersion

This function returns the installed DELIB version.

Description
This function returns the installed DELIB version.

Definition
ULONG DapiGetDELIBVersion(ULONG mode, ULONG par);

Parameter
mode=Mode with which the version is read out (must always be 0).
par=This parameter is not defined (must always be 0).

Return value
version=Version number of the installed DELIB version [hex]

Programming example

version = DapiGetDELIBVersion(0, 0);
//With version 1.32 installed
version = 132(hex)

DapiSpecialCMDGetModuleConfig

This function returns the hardware configuration (number of input and output channels) of the module.

Description
This function returns the hardware configuration (number of input and output channels) of the module.

Definition
ULONG DapiSpecialCommand(ULONG handle,
DAPI_SPECIAL_CMD_GET_MODULE_CONFIG, par, 0, 0);

Parameter
handle=This is the handle of an open module
Querying the number of digital input channels
par=DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DI
Query number of digital input flip-flops
par=DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DI_FF
Query number of digital input counters (16-bit counter)
par=DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DI_COUNTER
Query number of digital input counters (48-bit counter)
par=DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_CNT48
Querying the number of digital output channels
par=DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DO
Querying the number of digital pulse generator outputs
par=DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_PULSE_GEN
Querying the number of digital PWM outputs
par=DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_PWM_OUT
Querying the number of digital input/output channels
par=DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DX
Querying the number of analog input channels
par=DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_AD
Querying the number of analog output channels
par=DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DA
Query number of temperature channels
par=DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_TEMP
Query number of stepper channels
par=DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_STEPPER

Return value
Querying the number of digital input channels
return=number of digital input channels
Query number of digital input flip-flops
return=number of digital input flip-flops
Query number of digital input counters (16-bit counter)
return=number of digital input counters (16-bit counter)
Query number of digital input counters (48-bit counter)
return=number of digital input counters (48-bit counter)
Querying the number of digital output channels
return=number of digital output channels
Querying the number of digital pulse generator outputs
return=number of digital pulse generator outputs
Querying the number of digital PWM outputs
return=number of digital PWM outputs
Querying the number of digital input/output channels
return=number of digital input/output channels
Querying the number of analog input channels
return=number of analog input channels
Querying the number of analog output channels
return=number of analog output channels
Query number of temperature channels
return=number of temperature channels
Query number of stepper channels
return=number of stepper channels

Programming example

ret=DapiSpecialCommand(handle,
DAPI_SPECIAL_CMD_GET_MODULE_CONFIG,
DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DI, 0, 0);
//Returns the number of digital input channels
ret=DapiSpecialCommand(handle,
DAPI_SPECIAL_CMD_GET_MODULE_CONFIG,
DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DO, 0, 0);
//Returns the number of digital output channels
ret=DapiSpecialCommand(handle,
DAPI_SPECIAL_CMD_GET_MODULE_CONFIG,
DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DX, 0, 0);
//Returns the number of digital input/output channels
ret=DapiSpecialCommand(handle,
DAPI_SPECIAL_CMD_GET_MODULE_CONFIG,
DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_AD, 0, 0);
//Returns the number of analog input channels
ret=DapiSpecialCommand(handle,
DAPI_SPECIAL_CMD_GET_MODULE_CONFIG,
DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DA, 0, 0);
//Returns the number of analog output channels
ret=DapiSpecialCommand(handle,
DAPI_SPECIAL_CMD_GET_MODULE_CONFIG,
DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_STEPPER, 0, 0);
//Returns the number of stepper channels

DapiOpenModuleEx

This function specifically opens a module with an Ethernet interface. The parameters IP address, port number and the duration of the timeout can be defined.

Description
This function specifically opens a module with an Ethernet interface. The parameters IP address, port number and the duration of the timeout can be defined. The module is opened independently of the settings made in the DELIB Configuration Utility.

Definition
ULONG DapiOpenModuleEx(ULONG moduleID, ULONG nr, unsigned char* exbuffer, 0);

Parameter
moduleID = Specifies the module to be opened (see delib.h)
nr = Specifies which module (if several) is to be opened.
nr = 0 -> 1. Module
nr = 1 -> 2. Module
exbuffer = Buffer for IP address, port number and duration of the timeout

Return value
handle = Corresponding handle for the module
handle = 0 -> Module was not found

Remark
The handle returned by this function is required to identify the module for all other functions.
This command is supported by all modules with an Ethernet interface.

Programming example

// Open ETH-Module with parameter

DAPI_OPENMODULEEX_STRUCT open_buffer;

strcpy((char*) open_buffer.address, "192.168.1.10");
open_buffer.portno = 0;
open_buffer.timeout = 5000;

handle = DapiOpenModuleEx(RO_ETH, 0, (unsigned char*) &open_buffer, 0);
printf("Module handle = %x\n", handle);

DapiScanAllModulesAvailable

This function can be used to scan all modules connected to the USB bus.

Description
This function can be used to scan all modules connected to the USB bus.
The module ID and module no. of each module found are determined.

Definition
ULONG DapiScanAllModulesAvailable(uint nr)

Parameter
nr = 0: All modules connected to the USB bus are searched for
nr = i: Reading out the individual connected modules

Return value
Indicates the number of modules found.

Programming example

no_of_modules =
DT.Delib.DapiScanAllModulesAvailable(0);
for (i = 1; i <= no_of_modules; i++)
{
ret = DapiScanAllModulesAvailable(i);
moduleID = ret & 0x0000ffff;
moduleNr = (ret >> 16) & 0xff;
}


Register functions

Icon Delib Command

DapiWriteByte

This command executes a direct register write command to the module.

Description
This command executes a direct register write command to the module.

Definition
void DapiWriteByte(ULONG handle, ULONG adress, ULONG value);

Parameter
handle=This is the handle of an open module
adress=Address to be accessed
value=Specifies the data value that is written (8-bit)

Return value
None

Remark
This should only be used by experienced programmers. This allows direct access to all available registers.

Programming example

// Data is written to register 0x10
DapiWriteByte(handle, 0x10, 0xFF);

DapiWriteWord

This command executes a direct register write command to the module.

Description
This command executes a direct register write command to the module.

Definition
void DapiWriteWord(ULONG handle, ULONG adress, ULONG value);

Parameter
handle=This is the handle of an open module
adress=Address to be accessed
value=Specifies the data value that is written (16-bit)

Return value
None

Remark
This should only be used by experienced programmers. This allows direct access to all available registers.

Programming example

// Data is written to register 0x10
DapiWriteWord(handle, 0x10, 0xFFFF);

DapiWriteLong

This command executes a direct register write command to the module.

Description
This command executes a direct register write command to the module.

Definition
void DapiWriteLong(ULONG handle, ULONG adress, ULONG value);

Parameter
handle=This is the handle of an open module
adress=Address to be accessed
value=Specifies the data value that is written (32-bit)

Return value
None

Remark
This should only be used by experienced programmers. This allows direct access to all available registers.

Programming example

// Data is written to register 0x10
DapiWriteLong(handle, 0x10, 0xFFFFFFFF);

DapiWriteLongLong

This command executes a direct register write command to the module.

Description
This command executes a direct register write command to the module.

Definition
void DapiWriteLongLong(ULONG handle, ULONG adress, ULONGLONG value);

Parameter
handle=This is the handle of an open module
adress=Address to be accessed
value=Specifies the data value that is written (64-bit)

Return value
None

Remark
This should only be used by experienced programmers. This allows direct access to all available registers.

Programming example

// Data is written to register 0x10
DapiWriteLongLong(handle, 0x10, 0xFFFFFFFFFFFFFFFF);

DapiReadByte

This command executes a direct register read command on the module.

Description
This command executes a direct register read command on the module.

Definition
ULONG DapiReadByte(ULONG handle, ULONG adress);

Parameter
handle=This is the handle of an open module
adress=Address to be accessed

Return value
Content of the register to be read (8-bit)

Remark
This should only be used by experienced programmers. This allows direct access to all available registers.

Programmierbeispiel

// Reads 8 bits from the address 0x0
ULONG data;
data = DapiReadByte(handle, 0x0);

DapiReadWord

This command executes a direct register read command on the module.

Description
This command executes a direct register read command on the module.

Definition
ULONG DapiReadWord(ULONG handle, ULONG adress);

Parameter
handle=This is the handle of an open module
adress=Address to be accessed

Return value
Content of the register to be read (16-bit)

Remark
This should only be used by experienced programmers. This allows direct access to all available registers.

Programming example

// Reads 16 bits from the address 0x0
ULONG data;
data = DapiReadWord(handle, 0x0);

DapiReadLong

This command executes a direct register read command on the module.

Description
This command executes a direct register read command on the module.

Definition
ULONG DapiReadLong(ULONG handle, ULONG adress);

Parameter
handle=This is the handle of an open module
adress=Address to be accessed

Return value
Content of the register to be read (32-bit)

Remark
This should only be used by experienced programmers. This allows direct access to all available registers.

Programming example

// Reads 32 bits from the address 0x0
ULONG data;
data = DapiReadLong(handle, 0x0);

DapiReadLongLong

This command executes a direct register read command on the module.

Description
This command executes a direct register read command on the module.

Definition
ULONGLONG DapiReadLongLong(ULONG handle, ULONG address);

Parameter
handle=This is the handle of an open module
address=Address to be accessed

Return value
Content of the register to be read (64-bit)

Remark
This should only be used by experienced programmers. This allows direct access to all available registers.

Programming example

// Reads 64 bits from the address 0x0
ULONGLONG data;
data = DapiReadLongLong(handle, 0x0);


Analog input functions

Icon Delib Command

DapiADSetMode

This command configures the voltage range for an A/D converter.

Description
This command configures the voltage range for an A/D converter.

Definition
void DapiADSetMode(ULONG handle, ULONG ch, ULONG mode);

Parameter
handle=This is the handle of an open module
ch=Indicates the channel of the A/D converter (0 .. )
mode=Indicates the mode for the channel

Return value
None

Remark
The following modes are supported:
(these depend on the A/D module used)

Unipolar voltages (does not apply to modules of the CAN-Box series)
DAPI_ADDA_MODE_16BIT_UNIPOL_10V
DAPI_ADDA_MODE_16BIT_UNIPOL_5V
DAPI_ADDA_MODE_16BIT_UNIPOL_2V5

Unipolar voltages of the CAN-Box series
DAPI_ADDA_MODE_16BIT_UNIPOL_40V
(nur CAN-Box 24V-Version)
DAPI_ADDA_MODE_16BIT_UNIPOL_60V
(nur CAN-Box 48V-Version)

Bipolar voltages
DAPI_ADDA_MODE_16BIT_BIPOL_10V
DAPI_ADDA_MODE_16BIT_BIPOL_5V
DAPI_ADDA_MODE_16BIT_BIPOL_2V5

Currents
DAPI_ADDA_MODE_16BIT_0_20mA
DAPI_ADDA_MODE_16BIT_4_20mA
DAPI_ADDA_MODE_16BIT_0_24mA
DAPI_ADDA_MODE_16BIT_0_50mA

Programming example

// Sets channel 0 to 0 ... 10V mode
DapiADSetMode(handle, 0,  DAPI_ADDA_MODE_16BIT_UNIPOL_10V);

DapiADGetMode

This command reads back the set mode of an A/D converter. For a mode description, see DapiADSetMode.

Description
This command reads back the set mode of an A/D converter. For a description of the mode, see DapiADSetMode.

Definition
ULONG DapiADGetMode(ULONG handle, ULONG ch);

Parameter
handle=This is the handle of an open module
ch=Indicates the channel of the A/D converter (0 .. )

Return value
Mode of the A/D converter

Programming example

// Reads back the current mode of channel 1
unsigned long mode;
mode = DapiADGetMode(handle, 0);
// Check mode
if(mode == DAPI_ADDA_MODE_16BIT_UNIPOL_10V)
{
printf("Mode is 0 .. 10V");
}

DapiADGet

This command reads a data value from a channel of an A/D converter.

Description
This command reads a data value from a channel of an A/D converter.

Definition
ULONG DapiADGet(ULONG handle, ULONG ch);

Parameter
handle=This is the handle of an open module
ch=Indicates the channel of the A/D converter (0 .. )

Return value
Value from the A/D converter in digits

Remark
The value read back must be interpreted based on the set mode. If the mode is set to 0 ... 10V, a value of 0x8000 corresponds to 5V. However, if the mode is set to -10 ... 10V mode is set, the value 0x8000 corresponds to 0V.

Programming example

// Reads the value of channel 1
unsigned long data;
data = DapiADGet(handle, 0);

DapiADGetVolt

This command reads a data value from one channel of an A/D converter in volts.

Description
This command reads a data value from one channel of an A/D converter in volts.

Definition
float DapiADGetVolt(ULONG handle, ULONG ch);

Parameter
handle=This is the handle of an open module
ch=Indicates the channel of the A/D converter (0 .. )

Return value
Value from the A/D converter in volts

Programming example

// Reads the value of channel 1 in volts
float data;
data = DapiADGetVolt(handle, 0);

DapiADGetmA

This command reads a data value of a channel of an A/D converter in mA.

Description
This command reads a data value of a channel of an A/D converter in mA.

Definition
float DapiADGetmA(ULONG handle, ULONG ch);

Parameter
handle=This is the handle of an open module
ch=Indicates the channel of the A/D converter (0 .. )

Return value
Value from A/D converter in mA

Remark
This command is module-dependent. Of course, it only works if the module also supports current mode.

Programming example

// Reads the value of channel 1 in mA
float data;
data = DapiADGetmA(handle, 0);

DapiReadMultipleAD

This command saves the values of certain neighboring channels of an A/D converter simultaneously in an intermediate buffer. The values can then be read out one after the other.

Description
This command saves the values of certain neighboring channels of an A/D converter simultaneously in an intermediate buffer.
The values can then be read out one after the other. The advantage of this is that the A/D values are buffered simultaneously and the values can then be queried more quickly (compared to the DapiADGet command).

Definition
void DapiSpecialCommand(ULONG handle, DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_AD_READ_MULTIPLE_AD, ULONG start_ch, ULONG end_ch);

Parameter
handle=This is the handle of an open module.
start_ch=Specifies the start channel of the A/D converter from which the values are buffered (0, 1, 2, ..).
end_ch=Specifies the end channel of the A/D converter up to which the values are buffered (0, 1, 2, ...).

Return value
None

Remark
The values buffered with the DapiReadMultipleAD command can then be read with the DapiADGetVolt, DapiADGetmA or DapiADGet commands. To ensure that the buffered value is actually read, the parameter "ch" must be logically linked with 0x8000 "or" for these functions (see examples).

Programming example

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_AD_READ_MULTIPLE_AD, 0, 15);
// Buffers the values of A/D channel 0..15

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_AD_READ_MULTIPLE_AD, 0, 63);
// Buffers the values of A/D channel 0..63

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_AD_READ_MULTIPLE_AD, 16, 31);
// Buffers the values of A/D channel 16..31

value = DapiADGetVolt(handle, 0x8000 | 0);
// Returns the buffered value of A/D channel 0 in volts.

value = DapiADGetmA(handle, 0x8000 | 15);
// Returns the buffered value of A/D channel 15 in mA.

value = DapiADGet(handle, 0x8000 | 63);
// Returns the buffered value of A/D channel 63 in digits.

DapiSpecialADFilterSet

This command can be used to set the A/D filter level of your A/D module.

Explanation
A/D converters with higher resolution are very precise measuring instruments that can detect even the smallest changes in the measurement signal. In practice
it often happens that electrical or electromagnetic disturbance variables affect the measurement signal via the connecting cable and distort it. The measurement signals can be smoothed and optimized with the help of an A/D filter. The software-based filter we use has already been integrated into the microcontroller that controls the A/D converter. Various filter levels can be set by software command and also
read back. The filter principle is based on averaging a sum of measurements. The higher the filter level is selected, the more measurements are used to calculate the average value. However, this also means that the sampling rate of the A/D converter is reduced as the filter level increases.

Description
This command can be used to set the A/D filter level of your A/D module. Depending on the module, the adjustable filter level may vary.
For a module with several submodules, the A/D filter level can be determined individually for each submodule.
If a 0 is transferred as the filter level, the filter level is deactivated.

Definition
void DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD, cmd, par1, par2);

Parameter
handle=This is the handle of an open module.
cmd=DAPI_SPECIAL_AD_FILTER_SET
par1=((filterlevel & 0xff) << 8) | (submodule_nr & 0xff)
filterlevel: specifies which filter level is to be set
submodule_nr: specifies the submodule on which the filter is to be set.
If the module has no submodules, the value 0xff is passed.
par2 = 0

Return value
None.

Remark
Each time the module is restarted, the A/D filter is initially switched off and can be
can be activated if required. It is therefore advisable to activate the A/D filter in the
initialization of your project.

Programming example

filterlevel = 10
submodule_nr = 0
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD,
DAPI_SPECIAL_AD_FILTER_SET, ((filterlevel & 0xff) << 8)
| (submodule_nr & 0xff) , 0);
// A/D filter of submodule 0 is set to 10
filterlevel = 5
submodule_nr = 3
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD,
DAPI_SPECIAL_AD_FILTER_SET, ((filterlevel & 0xff) << 8)
| (submodule_nr & 0xff) , 0);
// A/D filter of submodule 3 is set to 5
filterlevel = 6
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD,
DAPI_SPECIAL_AD_FILTER_SET, ((filterlevel & 0xff) << 8)
| (0xff & 0xff) , 0);
// A/D filter of the main module is set to 6 (only for modules without
submodule)
filterlevel = 2
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD,
DAPI_SPECIAL_AD_FILTER_SET, ((filterlevel & 0xff) << 8)
| (0xff & 0xff) , 0);
// A/D filter of the main module is set to 2 (only for modules without
submodule)

DapiSpecialADFilterGet

This command can be used to read out the A/D filter level of the A/D module.

Description
This command can be used to read out the A/D filter level of the A/D module.
For a module with submodules, the submodule number must be transferred.

Definition
void DT.Delib.DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD, cmd, par1, par2);

Parameter
handle=This is the handle of an open module.
cmd=DAPI_SPECIAL_AD_FILTER_GET
par1=(submodule_nr & 0xff)
submodule_nr: specifies the submodule from which the filter is to be read.
If the module has no submodules, the value 0xff is transferred
par2 = 0

Return value
A/D filter level

Programming example

unsigned long filterlevel = DapiSpecialCommand(handle,
DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_AD_FILTER_GET, (0 &
0xff) , 0);
// A/D filter of submodule 0 is read
unsigned long filterlevel = DapiSpecialCommand(handle,
DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_AD_FILTER_GET, (5 &
0xff) , 0);
// A/D filter of submodule 5 is read
unsigned long filterlevel = DapiSpecialCommand(handle,
DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_AD_FILTER_GET, (0xff
& 0xff) , 0);
// A/D filter of the main module is read(only for modules without
submodule)

DapiSpecialADMittelwertValueSet

This command can be used to set the time interval in seconds for averaging your A/D module.

Explanation
This function can be used to smooth measured values and reduce random fluctuations or noise in the A/D signal.
By averaging over an adjustable time period, more stable and better comparable results are obtained.
A key feature is the flexible adjustment of the time period in seconds, allowing the smoothing to be optimally adapted to different requirements.

Description
This command can be used to set the time interval in seconds for averaging your A/D module. Within this time, the recorded measured values are collected and combined into an average value.
For a module with multiple submodules, the averaging time interval can be defined individually for each submodule.

Definition void DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD, cmd, par1, par2);

Parameters
handle = This is the handle of an opened module.
cmd = DAPI_SPECIAL_AD_MITTELWERT_VALUE_SET
par1 = ((average& 0xff) << 8) | (submodule_nr & 0xff)
average = Specifies after how many seconds the average of the A/D measurements is to be calculated.
submodule_nr = Specifies on which submodule the averaging is to be applied. If the module has no submodules, the value 0xff is passed.
par2 = 0

Return value
None.

Note
After each restart of the module, A/D averaging is initially disabled and can be activated if required. It is therefore recommended to define A/D averaging during the initialization of your project.

Programming example

average = 10
submodule_nr = 2
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD,
DAPI_SPECIAL_AD_MITTELWERT_VALUE_SET, ((average& 0xff) << 8)
| (submodule_nr & 0xff) , 0);
// The average of all received A/D values from submodule 2 is calculated after 10 seconds

average = 5
submodule_nr = 3
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD,
DAPI_SPECIAL_AD_MITTELWERT_VALUE_SET, ((average& 0xff) << 8)
| (submodule_nr & 0xff) , 0);
// The average of all received A/D values from submodule 3 is calculated after 5 seconds

average = 6
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD,
DAPI_SPECIAL_AD_MITTELWERT_VALUE_SET, ((average& 0xff) << 8)
| (0xff & 0xff) , 0);
// The average of all received A/D values of the main module is calculated after 6 seconds (only for modules without submodule)

average = 2
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD,
DAPI_SPECIAL_AD_MITTELWERT_VALUE_SET, ((average& 0xff) << 8)
| (0xff & 0xff) , 0);
// The average of all received A/D values of the main module is calculated after 2 seconds (only for modules without submodule)

DapiSpecialADMittelwertValueGet

This command can be used to read out the time interval used for A/D averaging.

Description
This command can be used to read out the time interval used for A/D averaging.
For a module with submodules, the submodule number must be provided.

Definition void DT.Delib.DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD, cmd, par1, par2);

Parameters
handle = This is the handle of an open module.
cmd = DAPI_SPECIAL_AD_MITTELWERT_VALUE_GET
par1 = (submodule_nr & 0xff)
submodule_nr = Specifies the submodule from which the time interval for averaging is to be read. If the module has no submodules, the value 0xff is passed.
par2 = 0

Return value
Time interval for averaging in seconds.

Programming example

submodule_nr = 2
unsigned long average = DapiSpecialCommand(handle,
DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_AD_MITTELWERT_VALUE_GET, (0 &
0xff) , 0);
// Time interval in seconds for averaging for submodule 2 is read out

submodule_nr = 5
unsigned long average = DapiSpecialCommand(handle,
DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_AD_MITTELWERT_VALUE_GET, (5 &
0xff) , 0);
// Time interval in seconds for averaging for submodule 5 is read out

unsigned long average = DapiSpecialCommand(handle,
DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_AD_MITTELWERT_VALUE_GET, (0xff
& 0xff) , 0);
// Time interval in seconds for averaging of the main module is read out (only for modules without submodule)

DapiSpecialADMittelwertCounterGet

This command can be used to read the currently elapsed time in seconds used for averaging.
Description
This command can be used to read the currently elapsed time in seconds used for averaging.
For a module with submodules, the submodule number must be provided.

Definition void DT.Delib.DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD, cmd, par1, par2);

Parameters
handle = This is the handle of an open module.
cmd = DAPI_SPECIAL_AD_MITTELWERT_COUNTER_GET
par1 = (submodule_nr & 0xff)
submodule_nr = Specifies the submodule from which the elapsed averaging time is to be read. If the module has no submodules, the value 0xff is passed.
par2 = 0

Return value
Time span for averaging in seconds.

Programming example

submodule_nr = 2
unsigned long elapsed_time = DapiSpecialCommand(handle,
DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_AD_MITTELWERT_COUNTER_GET, (0 &
0xff) , 0);
// The already elapsed averaging time is read for submodule 2

submodule_nr = 5
unsigned long elapsed_time = DapiSpecialCommand(handle,
DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_AD_MITTELWERT_COUNTER_GET, (5 &
0xff) , 0);
// The already elapsed averaging time is read for submodule 5

unsigned long elapsed_time = DapiSpecialCommand(handle,
DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_AD_MITTELWERT_COUNTER_GET, (0xff
& 0xff) , 0);
// The already elapsed averaging time of the main module is read (only for modules without submodule)


Analog output functions

Icon Delib Command

DapiDASetMode

This command sets the mode for a D/A converter.

Description
This command sets the mode for a D/A converter.

Definition
void DapiDASetMode(ULONG handle, ULONG ch, ULONG mode);

Parameter
handle=This is the handle of an open module
ch=Indicates the channel of the D/A converter (0 .. )
mode=Specifies the mode for the D/A converter

Return value
None

Remark
The following modes are supported:
(these depend on the D/A module used)

Unipolar voltages
ADDA_MODE_UNIPOL_10V
ADDA_MODE_UNIPOL_5V
ADDA_MODE_UNIPOL_2V5

Bipolar voltages
ADDA_MODE_BIPOL_10V
ADDA_MODE_BIPOL_5V
ADDA_MODE_BIPOL_2V5

Currents
ADDA_MODE_0_20mA
ADDA_MODE_4_20mA
ADDA_MODE_0_24mA
ADDA_MODE_0_25mA
ADDA_MODE_0_50mA

Programming example

// Sets channel 0 to 0 ... 10V mode
DapiDASetMode(handle, 0,  DAPI_ADDA_MODE_16BIT_UNIPOL_10V);

DapiDAGetMode

This command reads back the set mode of a D/A converter.

Description
This command reads back the set mode of a D/A converter.

Definition
ULONG DapiDAGetMode(ULONG handle, ULONG ch);

Parameter
handle=This is the handle of an open module
ch=Indicates the channel of the D/A converter (0 .. )

Return value
Mode of the D/A converter

Programming example

// Reads back the current mode of channel 1
unsigned long mode;
mode = DapiDAGetMode(handle, 0);
// Check mode
if(mode == DAPI_ADDA_MODE_16BIT_UNIPOL_10V)
{
printf("Mode is 0 .. 10V");
}

DapiDASet

This command transfers a data value to a channel of a D/A converter.

Description
This command transfers a data value to a channel of a D/A converter.

Definition
void DapiDASet(ULONG handle, ULONG ch, ULONG data);

Parameter
handle=This is the handle of an open module
ch=Indicates the channel of the D/A converter (0 .. )
data=Indicates the data value that is written
(16-bit data value -> data value range: 0-65535)

Return value
None

Programming example

DapiDASet(handle, 0, 65535);
// Sets the 1st output of the D/A converter to the maximum value of the selected mode.
selected mode.
//(if ADDA_MODE_UNIPOL_10V mode is selected, the 1st output is set to the maximum value of the selected mode.
of the D/A converter is set to 10V)

DapiDASetVolt

This command sets a voltage to a channel of a D/A converter.

Description
This command sets a voltage to a channel of a D/A converter.

Definition
void DapiDASetVolt(ULONG handle, ULONG ch, float data);

Parameter
handle=This is the handle of an open module
ch=Indicates the channel of the D/A converter (0 .. )
data=Indicates the voltage to be set [V]

Return value
None

Programming example

DapiDASetVolt(handle, 0, 5,4321);
// Sets the 1st output of the D/A converter to 5.4321 V

DapiDASetmA

This command sets a current to a channel of a D/A converter.

Description
This command sets a current to a channel of a D/A converter.

Definition
void DapiDASetmA(ULONG handle, ULONG ch, float data);

Parameter
handle=This is the handle of an open module
ch=Indicates the channel of the D/A converter (0 .. )
data=Indicates the current that is written [mA]

Return value
None

Remark
This command is module-dependent. Of course, it only works if the module also supports current mode.

DapiSpecialCmdDA

This command sets the voltage values for a channel when switching on or after a timeout of a D/A converter.

Description
This command sets the voltage values for a channel when switching on or after a timeout of a D/A converter (EEPROM configuration).

Definition
void DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_DA, cmd, ch, 0);

Parameter
handle=This is the handle of an open module
ch=Indicates the channel of the D/A converter (0, 1, 2, ..)
Resetting the settings to the default configuration
cmd=DAPI_SPECIAL_DA_PAR_DA_LOAD_DEFAULT
Saving the configuration to the EEPROM
cmd=DAPI_SPECIAL_DA_PAR_DA_SAVE_EEPROM_CONFIG
Load the configuration from the EEPROM
cmd=DAPI_SPECIAL_DA_PAR_DA_LOAD_EEPROM_CONFIG

Return value
None

Remark
DAPI_SPECIAL_CMD_DA_PAR_DA_LOAD_DEFAULT
This command is used to load the default configuration of a D/A converter.
The D/A converter now has an output voltage of 0V.

DAPI_SPECIAL_DA_PAR_DA_SAVE_EEPROM_CONFIG
This command saves the current D/A converter setting (voltage/current value, enable/disable and D/A converter mode) to the EEPROM.

DAPI_SPECIAL_DA_PAR_DA_LOAD_EEPROM_CONFIG
This command is used to set the D/A converter with the configuration stored in the EEPROM.

Programming example

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_DA, DAPI_SPECIAL_DA_PAR_DA_LOAD_DEFAULT, 1, 0);
//Reset the EEPROM configuration to the default configuration for channel 1.
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_DA, DAPI_SPECIAL_DA_PAR_DA_SAVE_EEPROM_CONFIG, 3, 0);
//Saving the D/A converter settings in the EEPROM for channel 3.
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_DA, DAPI_SPECIAL_DA_PAR_DA_LOAD_EEPROM_CONFIG, 2, 0);
//Set the D/A converter with the configuration stored in the EEPROM for channel 2.


Timeout protection function

Icon Delib Command

DapiSpecialCMDTimeout

This command is used to set the timeout protection function.

Description
This command is used to set the timeout protection function.
There are three different timeout methods since 2021.

"normal" timeout
This is the timeout that our modules have had since 2009.
Procedure for the timeout command:
The timeout is activated by command.
If a so-called timeout event then occurs (pause between two accesses to the module is longer than the permitted timeout time), the following happens:
- All outputs are switched off.
- The timeout status changes to "2".
- The timeout LED goes on (for modules that have such a status)
Further access to the outputs is then still possible, but the timeout is no longer active. Only when it has been reactivated.

"auto reactivate" timeout
This is a timeout mode implemented since 2021, which automatically reactivates the timeout after the timeout event occurs.
Procedure for the timeout command:
The timeout is activated by command.
If a so-called timeout event then occurs (pause between two accesses to the module is longer than the permitted timeout time), the following happens:
- All outputs are switched off.
- The timeout status changes to "4".
- The timeout LED goes on (for modules that have such a status)
Further access to the outputs is then still possible. AND the timeout is still active. If the timeout time is exceeded again, the outputs are switched off again.

"secure outputs" timeout
This is a timeout mode implemented since 2021, which prevents write access to the outputs after the timeout event occurs, thus ensuring that the software must first restore a "secure" state of the outputs, as the module's timeout mechanism has changed the outputs to predefined values.
Procedure for the timeout command:
The timeout is activated by command.
If a so-called timeout event then occurs (pause between two accesses to the module is longer than the permitted timeout time), the following happens:
- All outputs are switched off.
- The timeout status changes to "6".
- The timeout LED goes on (for modules that have such a status)
Further access to the outputs is NOT possible. The outputs can only be written to after the timeout has been reactivated or deactivated.

Definition
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, cmd, par1, par2);

Parameter
handle = This is the handle of an open module
cmd = function to be executed
par1 = Value that is passed to the function
par2 = Value that is passed to the function

DapiSpecialTimeoutSetValueSec

This command is used to set the timeout time.

Description
This command is used to set the timeout time.

Definition
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, cmd, par1, par2);

Parameter
cmd = DAPI_SPECIAL_TIMEOUT_SET_VALUE_SEC
par1 = seconds [s]
par2 = milliseconds [100ms] (value 6 = 600ms)

Remark
The permissible value range of the time specification is between 0.1 seconds and 6553 seconds

Programming example

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT,
DAPI_SPECIAL_TIMEOUT_SET_VALUE_SEC, 3, 7);
// The time of the timeout is set to 3.7 sec.

DapiSpecialTimeoutActivate

This command activates the "normal" timeout.

Description
This command activates the "normal" timeout.
After the timeout event...
- ...all outputs are switched off
- ...the timeout status is set to "2"
- ...the timeout LED is switched on (for modules that have such a status)
Further access to the outputs is then still possible, but the timeout is no longer active.
Only when it has been reactivated.

Definition
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, cmd, 0, 0);

Parameter
cmd = DAPI_SPECIAL_TIMEOUT_ACTIVATE

Programming example

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT,
DAPI_SPECIAL_TIMEOUT_ACTIVATE, 0, 0);
// The "normal" timeout is activated.

DapiSpecialTimeoutActivateAutoReactivate

This command activates the "auto reactivate" timeout.

Description
This command activates the "auto reactivate" timeout.
In this mode, the timeout is automatically reactivated after the timeout event.
After the timeout event...
- ...all outputs are switched off
- ..the timeout status is set to "4"
- ...the timeout LED is switched on (for modules that have such a status)
Further access to the outputs is then still possible AND the timeout is still active.
If the timeout time is exceeded again, the outputs are switched off again.

Definition
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, cmd, 0, 0);

Parameter
cmd = DAPI_SPECIAL_TIMEOUT_ACTIVATE_AUTO_REACTIVATE

Programming example

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT,
DAPI_SPECIAL_TIMEOUT_ACTIVATE_AUTO_REACTIVATE, 0, 0);
// The "auto reactivate" timeout is activated.

DapiSpecialTimeoutActivateSecureOutputs

This command activates the "secure outputs" timeout.

Description
This command activates the "secure outputs" timeout.
In this mode, write access to the outputs is prevented after a timeout event.
This ensures that the software must first restore a "secure" state of the outputs,
as the module's timeout mechanism has changed the outputs to predefined values.
After the timeout event...
- ...all outputs are switched off
- ..the timeout status is set to "6"
- ..the timeout LED is switched on (for modules that have such a status)
Further access to the outputs is NOT possible. Only after reactivating the
timeout or deactivating the timeout, the outputs can be written to.

Definition
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, cmd, 0, 0);

Parameter
cmd = DAPI_SPECIAL_TIMEOUT_ACTIVATE_SECURE_OUTPUTS

Programming example

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT,
DAPI_SPECIAL_TIMEOUT_ACTIVATE_SECURE_OUTPUTS, 0, 0);
// The "secure outputs" timeout is activated.

DapiSpecialTimeoutDeactivate

This command deactivates the timeout.

Description
This command deactivates the timeout.

Definition
DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, cmd, 0, 0);

Parameter
cmd = DAPI_SPECIAL_TIMEOUT_DEACTIVATE

Programming example

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT,
DAPI_SPECIAL_TIMEOUT_DEACTIVATE, 0, 0);
// The timeout is deactivated.

DapiSpecialTimeoutGetStatus

This command is used to read out the timeout status.

Description
This command is used to read out the timeout status.

Definition
ULONG DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT, DAPI_SPECIAL_TIMEOUT_GET_STATUS, 0, 0);

Parameter
cmd = DAPI_SPECIAL_TIMEOUT_GET_STATUS

Return value
Return = 0 (timeout is deactivated)

Values for the "normal" timeout
Return = 1 (timeout "normal" is activated)
Return = 2 (timeout "normal" has taken place)

Values for the "auto reactivate" timeout
Return = 3 ("auto reactivate" timeout is activated)
Return = 4 ("auto reactivate" timeout has occurred once or several times)

Values for the "secure" timeout
Return = 5 ("secure" timeout is activated)
Return = 6 (Timeout "secure" has taken place. Writing to the outputs is prevented in this status)

Programming example

unsigned long status = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_TIMEOUT,
DAPI_SPECIAL_TIMEOUT_GET_STATUS, 0, 0);
printf("Status = %ul\n", status);
//Query the timeout status with output.


Error handling

Icon Delib Command

DapiGetLastError

This function returns the last error recorded.

Description
This function returns the last recorded error. If an error has occurred, it must be cleared with DapiClearLastError(), otherwise every call to DapiGetLastError() will return the "old" error.
If several modules are to be used, the use of DapiGetLastErrorByHandle() is recommended.

Definition
ULONG DapiGetLastError(void);

Parameter
None

Return value
Error code
0=no error. (see delib_error_codes.h)

Programming example

BOOL IsError()
{
unsigned char msg[500];
unsigned long error_code = DapiGetLastError();

if (error_code != DAPI_ERR_NONE)
{
DapiGetLastErrorText((unsigned char*) msg, sizeof(msg));
printf("Error Code = 0x%x * Message = %s\n", error_code, msg);

DapiClearLastError();

return TRUE;
}

return FALSE;
}

DapiGetLastErrorByHandle

This function returns the last error recorded for a specific module using the handle.

Description
This function returns the last error recorded for a specific module using the handle. If an error has occurred, it must be cleared with DapiClearLastErrorByHandle(), otherwise every call to DapiGetLastErrorByHandle() will return the "old" error.

Definition
ULONG DapiGetLastErrorByHandle(ULONG handle);

Parameter
handle=This is the handle of an open module

Return value
Error code
0=no error. (see delib_error_codes.h)

Programming example

BOOL IsError(ULONG handle)
{
unsigned long error_code = DapiGetLastErrorByHandle(handle);

if (error_code != DAPI_ERR_NONE)
{
printf("Error detected on handle 0x%x - Error Code = 0x%x\n", handle, error_code);

DapiClearLastErrorByHandle(handle);

return TRUE;
}

return FALSE;
}

DapiGetLastErrorText

This function reads out the text of the last error recorded.

Description
This function reads out the text of the last recorded error. If an error has occurred, it must be cleared with DapiClearLastError(), otherwise every call to DapiGetLastErrorText() will return the "old" error.

Definition
ULONG DapiGetLastErrorText(unsigned char * msg, unsigned long msg_length);

Parameter
msg = Buffer for the text to be received
msg_length = Length of the text buffer

Programming example

BOOL IsError()
{
unsigned char msg[500];
unsigned long error_code = DapiGetLastError();

if (error_code != DAPI_ERR_NONE)
{
DapiGetLastErrorText((unsigned char*) msg, sizeof(msg));
printf("Error Code = 0x%x * Message = %s\n", error_code, msg);

DapiClearLastError();

return TRUE;
}

return FALSE;
}

DapiClearLastError

This function deletes the last error that was recorded with DapiGetLastError().

Description
This function deletes the last error that was recorded with DapiGetLastError().

Definition
void DapiClearLastError(void);

Parameter
None

Return value
None

Programming example

BOOL IsError()
{
unsigned char msg[500];
unsigned long error_code = DapiGetLastError();

if (error_code != DAPI_ERR_NONE)
{
DapiGetLastErrorText((unsigned char*) msg, sizeof(msg));
printf("Error Code = 0x%x * Message = %s\n", error_code, msg);

DapiClearLastError();

return TRUE;
}

return FALSE;
}

DapiClearLastErrorByHandle

This function deletes the last error of a specific module (handle) that was recorded with DapiGetLastErrorByHandle().

Description
This function deletes the last error of a specific module (handle) that was registered with DapiGetLastErrorByHandle().

Definition
void DapiClearLastErrorByHandle(ULONG handle);

Parameter
handle=This is the handle of an open module.

Return value
None

Programming example

BOOL IsError(ULONG handle)
{
unsigned long error_code = DapiGetLastErrorByHandle(handle);

if (error_code != DAPI_ERR_NONE)
{
printf("Error detected on handle 0x%x - Error Code = 0x%x\n", handle, error_code);

DapiClearLastErrorByHandle(handle);

return TRUE;
}

return FALSE;
}


Test functions

Icon Delib Command

DapiPing

This command checks the connection to an open module.

Description
This command checks the connection to an open module.

Definition
ULONG DapiPing(ULONG handle, ULONG value);

Parameter
handle=This is the handle of an open module
value=Transferred test value, in the value range of 0-255 (8-bit), to the module

Return value
The test value transferred with "value" must be returned here

Web interface

All DEDITEC Ethernet modules feature a web interface that allows you to conveniently configure settings via your web browser and also provides direct access to the I/Os.
This means you can access the product using a smartphone, tablet, or PC via a browser.
The following I/O units are supported:

  • Digital inputs
  • Digital inputs (counter function)
  • Digital outputs
  • Analog inputs (voltage & current)
  • Analog outputs (voltage & current)
  • PT100 temperature measurement
  • stepper motor control

With a user system and optional encryption system, you can protect the Ethernet module against unauthorized access.

General

Home page of the web interface. The navigation bar on the left-hand side gives you access to various settings options.

01 Ethernet Lc Config General 615 464 Kopie

Network configuration

All network settings can be configured directly via the web interface..

02 Ethernet Lc Config Network 615 464 Kopie

Usermanager

Here, you can specify the user name and password for accessing the web interface. If the user is inactive, they will be automatically logged out after the session time expires.

03 Ethernet Lc Config Usermanager 615 464 Kopie

Status / Reboot

Version of the installed firmware. Functions for restarting and resetting the settings.

04 Ethernet Lc Config Status 615 464 Kopie

Security

In addition to a user/password system for the web interface, we also offer you the option of encrypting all network communication. Access to the I/Os can also be blocked.

05 Ethernet Lc Config Security 615 464 Kopie

Supported I/Os

Below, we show you the supported I/Os that you can operate via the web interface.

Digital Inputs

The image shows an overview of the digital inputs. You can switch between multiple inputs using the drop-down menu. The “State” column shows whether a signal is present at the input.

06 Ethernet Io Digital Inputs 615 464 Kopie

Digital Inputs Counter

Our digital inputs have a counting function. The meter reading can be read and reset via the web interface.

07 Ethernet Io Digital Inputs Counter 615 464 Kopie

Digital Outputs

The digital outputs can be switched using an on/off button. The current status of the outputs can be read back via the “Readback” column.

08 Ethernet Io Digital Output 615 464 Kopie

Analog Inputs

Current and voltage can also be read via the web interface. The desired operating mode can be set via the A/D Mode drop-down menu.

09 Ethernet Io Analog Inputs 615 464 Kopie

Analog Outputs

Analog signals can also be output via the web interface. As with the analog inputs, the desired D/A mode can be set using the drop-down menu. The desired value can be written to the outputs using the ‘SET’ button. The ‘Readback’ column shows the current voltage/current output of the D/A converter.

10 Ethernet Io Analog Outputs 615 464 Kopie

Temperature measurement (PT100)

Temperature measurement is supported by our RO series.

PT100

The current temperature can be read. If no sensor is connected to the channel, this is indicated by ‘disconnected’.

11 Ethernet Io Pt100 615 464 Kopie

Stepper-Motor Control

The position and speed of the stepper motor can be set using the control elements. The status window shows the current position, temperature, and power supply.

12 Ethernet Io Stepper 615 464 Kopie

I/O-Control APP for Android™

Control the digital and analog I/Os of our Ethernet modules while on the go. The DEDITEC I/O-Control Android app turns any network-enabled Android device into a remote control for DEDITEC products with an Ethernet interface.

Features:

  • Separate storage of network settings for private and public networks
  • Better clarity thanks to configurable I/O names
  • Configurable refresh of all I/Os

The following I/Os are supported:

  • up to 128 analog inputs (0..10V, 0..5V, +/- 10V, and +/- 5V)
  • up to 64 analog outputs (0..10V, 0..5V, +/- 10V, and +/- 5V)
  • up to 128 digital inputs and outputs

Network settings

In the network settings, you can create and save configurations for private (Wi-Fi) or public (Internet) networks.
DT-IO-Control Beitragsbild

Module configuration

The module configuration shows the number of connected I/O modules.
You can also select which I/Os are to be controlled here.
DT-IO-Control Beitragsbild

Digital inputs

The digital inputs are polled at an adjustable interval.

DT-IO-Control Beitragsbild

Digital outputs

In the digital outputs section, the channels can be switched on or off individually. It is also possible to switch all channels on or off.

DT-IO-Control Beitragsbild

Analog inputs

For the analog inputs, you can choose from the measuring ranges 0..10V, 0..5V, +/- 10V, or +/- 5V. The A/D channels are queried automatically at a configurable interval.

DT-IO-Control Beitragsbild

Analog outputs

Here you can set analog outputs in the measuring range 0..10V, 0..5V, +/- 10V, or +/- 5V.

DT-IO-Control Beitragsbild

Settings

This image shows the settings for analog outputs. Here, each channel can be given a name.
In addition, you can specify here whether and at what intervals the analog outputs are read back.
These settings are available for all I/Os.

DT-IO-Control Beitragsbild

Connection example AD16:

Connection example


Connection example DA4/8:

Connection example

Screwless connector system

The customer-side connection wiring of the inputs and outputs is carried out using screwless, pluggable terminal strips. The conductor connection is made using a so-called actuating tool.
A locking and ejecting mechanism facilitates the insertion and removal of the complete terminal strip.

Handling:

Steps 1-5

Step 1

See the scope of delivery for the operating tool.

Wago Betaetigungswerkzeug 615 464 Kopie
Step 2

Insert the operating tool firmly into the side opening in the direction of the conductor connection.

Konf Werkz Montage2 615 464 Kopie
Step 3

Now insert the stripped conductor into the open clamp contact.

Konf Werkz Montage3 615 464 Kopie
Step 4

Pull out the operating tool again.

Konf Werkz Montage4 615 464 Kopie
Step 5

Check that the conductor is properly connected. It should now no longer be possible to pull it out easily.

Konf Werkz Montage5 615 464 Kopie

Manual

DDT Icons Downloads PDF Transparent 250606

Manual RO series

Quickstart - Hardware description - Software description - ICT tool

Commissioning/Quickstart

  • Safety instructions
  • Installing the drivers
  • Connecting the power supply
  • Connecting to the PC or network
  • Connecting the I/O connectors
  • Function test


Hardware description

  • List of technical data
  • Definition of the LEDs
  • Functions of switches and buttons
  • Pin assignment of the connectors
  • Connection examples

Software description

  • Control options via the DELIB, protocol level, DELIB CLI, graphical applications
  • DELIB driver library, DELIB sample sources, DELIB for Linux
  • Web interface (only for Ethernet modules)
  • DELIB API and its functions


ICT-Tool

  • Add module to PC
  • Configure module / interface (Ethernet, USB, CAN, serial)
  • Setting options for M2M and event control (only for supported modules)
  • Test and diagnose module
  • Install firmware updates
  • Save / load module configurations using a separate file

Software packages ICT-Tool / DELIB driver library

DDT-Icons-Downloads_ZIP_transparent_250606

ICT-Tool + DELIB for Windows (64-bit)

For Windows 11/10, Windows 7, Windows 8, Vista, XP and 2000

Software package for the 64-bit version of the ICT-Tool and the DELIB driver library.

The following operating systems are compatible:
64-bit:

  • Windows 10/11 x64
  • Windows 8 x64
  • Windows 7 x64
  • Windows Server 2012 x64
  • Windows Server 2008 x64
  • Windows Vista x64
  • Windows XP x64
  • Windows Server 2003 x64
  • Windows 2000 x64

Supplied software

ICT-Tool x64

  • Updating the DEDITEC module-firmware
  • Assigning module addresses
  • Module-specific settings
  • Configuration of CAN modules
  • Test and diagnosis of module functions
  • Configuration of the watchdog stick

Replaces the following software

  • DT-Flasher x64
  • DELIB Module Demo x64
  • CAN Configuration Utility x64
  • DELIB Module Config x64
  • DELIB Configuration Utility x64
  • Watchdog Configuration Utility x64


DELIB Command Line Interface x64

Enables the execution of DELIB commands in the command line.

DDT-Icons-Downloads_ZIP_transparent_250606

ICT-Tool + DELIB for Windows (32-bit)

For Windows 11/10, Windows 7, Windows 8, Vista, XP and 2000

Software package for the 32-bit version of the ICT-Tool and the DELIB driver library.

The following operating systems are compatible:
32-bit:

      • Windows 10/11
      • Windows 8
      • Windows 7
      • Windows Server 2012
      • Windows Server 2008
      • Windows Vista
      • Windows XP
      • Windows Server 2003
      • Windows 2000
    •  

Supplied software

ICT-Tool x32

      • Updating the DEDITEC module-firmware
      • Assigning module addresses
      • Module-specific settings
      • Configuration of CAN modules
      • Test and diagnosis of module functions
      • Configuration of the watchdog stick

 

Replaces the following software

      • DT-Flasher
      • DELIB Module Demo
      • CAN Configuration Utility
      • DELIB Module Config
      • DELIB Configuration Utility
      • Watchdog Configuration Utility

Attention:

With this version of the driver library, only 32-bit applications can be created, which can then be executed on 32- and 64-bit systems.

DDT-Icons-Downloads_ZIP_transparent_250606

DELIB driver library for Linux (32/64-bit)

For 32/64-bit Linux distributions from kernel 2.6.x. Version 2.73 from 28.10.2024

DELIB driver library for Linux distributions (32/64-bit) from kernel 2.6.x

This driver package contains the following components

  • DELIB USB driver
  • DELIB Ethernet driver
  • DELIB CLI

DELIB USB driver

Support for the following products:

  • NET series (via USB interface)
  • RO-USB series
  • BS-USB series
  • USB mini-sticks
  • USB watchdog
  • USB-OPTION-8 / USB-RELAY-8
  • USB-TTL-32 / USB-TTL-64

Note:

With the standard version of the USB driver, several USB products with different module IDs (e.g. one RO-USB and one USB-OPTOIN-8) can be addressed. No further driver installation is required.

If several USB products with the same module ID (e.g. a USB-OPTOIN-8 and a USB-RELAIS-8) are to be addressed, the Linux FTDI driver must also be installed. You can find the FTDI driver at http://www.ftdichip.com.

DELIB Ethernet driver

Support for the following products:

  • NET series (via Ethernet interface)
  • RO-ETH series
  • RO-ETH/LC series
  • BS-ETH series
  • ETH-OPTION-8 / ETH-RELAY-8
  • ETH-TTL-64

DELIB CLI

With the DELIB CLI (Command Line Interface) for Linux, all commands for digital and analog I/Os can be set directly via the command line


Manual

DDT Icons Downloads PDF Transparent 250606

Manual for ICT-Tool and DELIB

Software Description - ICT-Tool - DELIB API Reference

Software Description

  • Control options via DELIB, protocol level, DELIB CLI, graphical applications
  • DELIB driver library, DELIB sample sources, DELIB for Linux
  • Web interface (only for Ethernet modules)
  • DELIB API and its functions

ICT-Tool

  • Add module to PC
  • Configure module/interface (Ethernet, USB, CAN, Serial)
  • Settings for M2M and Event Control (only for supported modules)
  • Test and diagnose module
  • Install firmware updates
  • Save/load module configurations using a separate file

DELIB API Reference

  • Directory structure of DELIB
  • Management functions
  • Error handling
  • Manage digital inputs and outputs
  • Manage analog inputs and outputs
  • Manage software FIFO
  • Manage output timeout
  • Register read and write commands


Download

DDT-Icons-Downloads_ZIP_transparent_250606

Hardware updates (firmware flash file package)

Firmware flash file package for the ICT tool

This package contains the latest firmware files for the following product series:

  • STARTER series
  • BS series
  • RO series
  • NET series
  • UC series
  • CAN-IO-Box
  • Development accessories

The firmware flash file package can alternatively be downloaded via the ICT tool.

USB cable A plug to B plug

USB cable for connecting our modules to the control PC.

  • Type: USB 2.0, A plug to B plug
  • Length: 1,8 m
Zbh Kab Usb Ab 2m 600

2-pin plug connector

Enables the power supply to be connected to the DEDITEC module.

  • Type: Phoenix Contact® - 1783287
  • 100 % mismatch protected
  • For all conductor types from 0.2 mm² to 2.5 mm²
Zbh Steck 02 Gew 600


10-pin plug connector

Required for connecting inputs and outputs of the DEDITEC module.

  • Type: WAGO® - 713-1105/037-000
  • Plug-in female multipoint connector with locking mechanism
  • 100 % mismatch protected
  • 1-wire connection for all conductor types up to 1.5 mm²
ZBH STECK 10 AUSW 600


18-pin plug connector

Required for connecting inputs and outputs of the DEDITEC module.

  • Type: WAGO® - 713-1109/037-000
  • Plug-in female multipoint connector with locking mechanism
  • 100 % mismatch protected
  • 1-wire connection for all conductor types up to 1.5 mm²
ZBH STECK 18 AUSW 600


Actuating tool for Wago connectors

Used to open and close the terminal contacts on the WAGO® connectors.

  • Type: WAGO® - 734-231
Zbh Steck Werkz 600

Optional input current range 0 ... 24 mA

This option changes the input range of the RO-AD16-DA4 modules to 0 ... 24 mA. 16 channels are always modified per ordered quantity.

  • Input current range 0 ... 24 mA
  • 16 channels
Opt Ad U Mode 24mA

USB cable A plug to B plug

USB cable for connecting our modules to the control PC.

  • Type: USB 2.0, A plug to B plug
  • Length: 1,8 m
Zbh Kab Usb Ab 2m 600


2-pin plug connector

Enables the power supply to be connected to the DEDITEC module.

  • Type: Phoenix Contact® - 1783287
  • 100 % mismatch protected
  • For all conductor types from 0.2 mm² to 2.5 mm²
Zbh Steck 02 Gew 600


10-pin plug connector

Required for connecting inputs and outputs of the DEDITEC module.

  • Type: WAGO® - 713-1105/037-000
  • Plug-in female multipoint connector with locking mechanism
  • 100 % mismatch protected
  • 1-wire connection for all conductor types up to 1.5 mm²
ZBH STECK 10 AUSW 600


18-pin plug connector

Required for connecting inputs and outputs of the DEDITEC module.

  • Type: WAGO® - 713-1109/037-000
  • Plug-in female multipoint connector with locking mechanism
  • 100 % mismatch protected
  • 1-wire connection for all conductor types up to 1.5 mm²
ZBH STECK 18 AUSW 600


Actuating tool for Wago connectors

Used to open and close the terminal contacts on the WAGO® connectors.

  • Type: WAGO® - 734-231
Zbh Steck Werkz 600


Strain relief plate for 10-pin Wago connectors

The strain relief plate is pushed onto the center of the female connector and enables the connected cables or strands to be fixed in place.

  • Type: WAGO® - 713-126
  • Strain relief for the connection wiring
  • Suitable for 10-pole female multipoint connectors
  • Slide onto the female connector from the side
ZBH STECK PL 10
ZBH STECK PL 10 Wago


Strain relief plate for 16 or 18-pin Wago connectors

The strain relief plate is pushed onto the center of the female connector and enables the connected cables or strands to be fixed in place.

  • Type: WAGO® - 713-127
  • Strain relief for the connection wiring
  • Suitable for 16 or 18-pole female connectors
  • Slide onto the female connector from the side
ZBH STECK PL 16
ZBH STECK PL 16 Wago


Top hat rail

Top-hat rail for mounting our control technology modules.

  • DIN rail according to DIN EN 50022
  • Type: Phoenix Contact® - 1208131
  • Dimensions in mm: 450 x 35 x 7.5 (L x W x H)
Zbhhutschiene 1m 600


24V/2A power supply unit for top-hat rail mounting

The DR-4524 from Mean Well is a 48W power supply unit for DIN rail mounting for industrial applications. It offers protection against short circuit, overload, overvoltage and overheating.

  • Input voltage range: 85 V.. 264 V AC / 120 V DC ... 370 V DC
  • Output voltage: 24 V DC
  • Output current: 2 A
  • Rated power: 48 W
Zbhnetzteil 24v 2a 600

Typical Application Areas:

  • Smart Building & Building Automation:
    The RO-(ETH/LC)/(USB)-AD16-DA4 enables control of lighting, air conditioning systems, blinds, or security systems—all centrally networked via Ethernet.
  • Remote monitoring and IoT projects:
    Real-time data acquisition and transmission to cloud systems, IoT gateways, or edge computing platforms. Perfect for distributed measurement points or remote monitoring of systems.
  • Remote monitoring & remote control (IoT):
    With TCP/IP and web interface, devices can be monitored and controlled worldwide—perfect for IoT and Industry 4.0 applications.
  • Data logging and measurement data acquisition:
    Analog and digital signals are precisely acquired via USB using the RO-(ETH/LC)/(USB)-AD16-DA4 and transmitted to a system for analysis.
  • Rapid prototyping of automation solutions:
    USB-based systems enable the RO-(ETH/LC)/(USB)-AD16-DA4 to quickly implement and validate new control and automation concepts.
  • Industrial sensor data acquisition:
    The analog inputs are suitable for precise acquisition of physical measurement variables such as pressure, temperature, or fill levels in industrial processes.
  • Labor and testing technology:
    The IoT analog converter modules is ideally suited for experimental setups, data acquisition, and calibrations where high precision and reliability are essential.
  • Research & Development:
    With the RO-(ETH/LC)/(USB)-AD16-DA4, output voltages can be adjusted flexibly and quickly, which is particularly advantageous in experiments and prototype development.

Comparison of RO-(ETH/LC)/(USB)-AD16-DA4 with common market products

</tr ></tr ></tr ></tr ></tr ></tr ></tr ></tr ></tr ></tr >

Interfaces & Communication

Feature Market Comparison Advantages of the DEDITEC RO-(ETH/LC)/(USB)-AD16-DA4</th > Practical Benefits of the modules
Interfaces Usually only USB or PCI USB, Ethernet and web interface Enables flexible connectivity options in various IT and industrial environments.
Supported protocols Usually only TCP HTTP, UDP, TCP, DHCP, Modbus‑TCP Expands application possibilities in modern network and IoT infrastructures.
Number of USB modules that can be used simultaneously 1–4 modules, often without proper management Up to 16 modules per system Enables larger system configurations without additional distributors or expansion devices.
Ethernet Signal Isolation Not always galvanically isolated Galvanically isolated Ethernet interface for safe communication Protects connected systems from interference voltages and increases communication stability in industrial networks.

Analog inputs

Feature Market Comparison Advantages of the DEDITEC RO-(ETH/LC)/(USB)-AD16-DA4</th > Practical Benefits of the modules
Resolution and accuracy Typically 8–12 bit High‑resolution 16‑bit for precise signal control Improves measurement accuracy and enables reliable evaluation of even small signal changes.
Firmware filtering External filtering required Smoothing and averaging directly in the module; filters adjustable Reduces measurement noise and ensures more stable input values without external filter hardware.
Galvanic isolation Often, there is no isolation from the power supply Electrical isolation for the module’s power supply Protects connected systems from interference voltages and prevents interactions between measurement circuits and the power supply.

Analog outputs

Feature Market Comparison Advantages of the DEDITEC RO-(ETH/LC)/(USB)-AD16-DA4</th > Practical Benefits of the modules
Analog voltage output Basic analog outputs, often only 0–5 V or 0–10 V Precise voltage output over 0–5 V, 0–10 V or ±10 V Enables precise control of various actuators and reduces the need for external signal converters.
Low output ripple Stronger ripple in OEM modules Low ripple and stable output signals Improves signal quality and ensures stable output values in sensitive control and regulation applications.
Galvanic isolation Often, there is no isolation from the power supply Electrical isolation for the module’s power supply Protects connected devices from interference voltages and prevents feedback between the output stage and the power supply.

Automation & Diagnostics

Feature Market Comparison Advantages of the DEDITEC RO-(ETH/LC)/(USB)-AD16-DA4</th > Practical Benefits of the modules
Remote access Barely possible Direct access via web and Modbus‑TCP Allows for configuration and monitoring without physical presence, thereby supporting efficient maintenance processes.
Diagnostic tools Mostly not available Extensive diagnostic capabilities integrated in the ICT tool Simplifies commissioning, troubleshooting, and long-term analysis through centralized, integrated diagnostic functions.
Automated control and monitoring Additional control PC required Configurable event control enables automated process monitoring without a control PC Reduces the need for external control logic and enables automated processes directly within the module.

Hardware flexibility

Feature Market Comparison Advantages of the DEDITEC RO-(ETH/LC)/(USB)-AD16-DA4</th > Practical Benefits of the modules
Supply voltage Usually fixed (e.g., +24 V) Flexible +12 V DC … +28 V DC Facilitates use in various power supply configurations and reduces the need for additional power supplies.
Add modules later Usually only a fixed number of I/Os per module Additional I/O modules can be added freely Enables step-by-step system expansion without replacing existing hardware.
EMC stability Low-cost OEM modules often susceptible to interference Industrial‑grade EMC design Ensures low-interference operation in industrial environments with high electromagnetic interference.

Software & Integration

Feature Market Comparison Advantages of the DEDITEC RO-(ETH/LC)/(USB)-AD16-DA4</th > Practical Benefits of the modules
Software integration Limited drivers DELIB library for C, C++, C#, Java, VB Simplifies development through standardized programming interfaces and reduces the effort required for custom driver adaptations.
Integration into IoT ecosystems Low, only feasible via gateways Directly usable via Ethernet in IoT clouds / SCADA / edge systems Enables direct integration into modern cloud, SCADA, and edge systems without additional gateways.
Example programs Barely available or only upon request Example programs can be downloaded for free Accelerates implementation and facilitates the transition to project-specific applications.
Support for many protocols Often only one or two protocols offered HTTP, UDP, TCP, DHCP, Modbus-TCP Increases compatibility with existing network infrastructures and enables flexible communication concepts.
API concept Many manufacturers have different APIs per series Unified API for all series Simplifies maintenance and further development, as all series can be addressed via the same interface.
Firmware updates Often paid or limited Free for life Ensures long-term functionality and enables improvements without additional licensing costs.
Example code Fewer languages or restricted examples Extensive examples for C, C++, C#, Java, VB, LabView Supports various development environments and facilitates integration into existing software landscapes.
Response times Partially higher latency with standard I/O Very fast firmware Improves real-time performance and enables reliable processing of time-critical signals.
System integration Proprietary systems complicate integration Easy integration into PLCs, PCs, and test benches Facilitates integration into existing automation and test systems without extensive modifications.
Test system integration Competitors often more expensive or less flexible Ideal for automotive and test bench applications Supports reproducible measurement and test procedures and reduces integration effort in complex test bench environments.

Mechanical & physical properties

Feature Market Comparison Advantages of the DEDITEC RO-(ETH/LC)/(USB)-AD16-DA4</th > Practical Benefits of the modules
Mounting Depending on the supplier, different or less standard designs may be used. Mounting on a 35 x 7.5 mm DIN rail for use in control cabinets and decentralized I/O systems. Enables quick and standards-compliant integration into existing control cabinets.

Reliability

Feature Market Comparison Advantages of the DEDITEC RO-(ETH/LC)/(USB)-AD16-DA4</th > Practical Benefits of the modules
Long-term availability Typically 3–5 years 10‑year guaranteed availability Simplifies long-term plant planning and reduces risks associated with early product discontinuations.
Firmware updates Often paid or limited Free for life Ensures continuous functional improvement without additional operating costs.
ICT tool Often multiple tools, fewer functions One tool for commissioning, diagnostics, loopback testing, long‑term simulation Simplifies commissioning, diagnostics, and testing procedures through a centralized software solution.
Production location Many manufacturers produce in Asia Made in Germany Enables short supply chains, consistent quality assurance, and a reliable supply of spare parts.
Modbus upgrade free of charge Often paid or not available at all Yes Expands communication capabilities without additional licensing costs or hardware changes.
MTBF Low-cost OEM modules with shorter lifespan High MTBF values Reduces the probability of failure and increases availability in continuous-operation applications.
Failure rate Higher failure rates with low‑cost I/O Very low field failure rates Minimizes unplanned downtime and reduces maintenance and service costs.
Series maturity Many products are new or frequently revised Series with 15+ years of history Offers a proven platform with stable firmware and mature hardware.
Spare parts availability Often early discontinuation Long‑term spare parts availability Facilitates maintenance and modernization of existing systems over many years.

Service and support

Feature Market Comparison Advantages of the DEDITEC RO-(ETH/LC)/(USB)-AD16-DA4</th > Practical Benefits of the modules
Support quality Call centers or external service providers Direct developer support Enables fast and technically sound problem-solving without the need to escalate issues through external service providers.
Response time Sometimes several days Very fast response, often same day Reduces downtime and speeds up the restoration of system operations when technical issues arise.
Customization Rare or very expensive Custom hardware/firmware possible Enables project-specific solutions without the need for time-consuming in-house development or additional hardware components.
Documentation Often minimal or incomplete Comprehensive and practical documentation Simplifies commissioning and reduces the need for follow-up inquiries thanks to clearly structured and comprehensive technical documentation.
Consulting Often only sales support Technicians instead of general sales staff Ensures application-oriented support directly tailored to technical requirements.

Economy

Feature Market Comparison Advantages of the DEDITEC RO-(ETH/LC)/(USB)-AD16-DA4</th > Practical Benefits of the modules
Price-performance ratio Major brands significantly more expensive Very good price‑performance ratio Reduces total cost per channel and enables cost-effective system expansions.
License costs Modbus/features often require additional payment No additional costs for protocols Simplifies cost planning and prevents unexpected follow-up costs associated with functional or protocol expansions.
Series prices Large manufacturers often inflexible Attractive volume pricing Simplifies budget planning for larger volumes and enables cost-effective scaling of projects.
My cart
Your cart is empty.

Looks like you haven't made a choice yet.