16/32/64 * control digital 24V PWM outputs via Ethernet/USB

0 customer reviews

ab  461,68

Availability: In Stock SKU: RO-(ETH/LC)/(USB)-PWM16-64 Category:

Clear

The RO-(ETH/LC)/(USB)-PWM16-64 module is available in versions with 16, 32 or 64 MOSFET outputs with PWM function. As interface option you have the choice between an Open-Source Ethernet connection with galvanic isolation or a standard USB 2.0 connection.

  • Ethernet interface 10/100 Mbit with galvanic isolation
  • web interface
  • Open Ethernet Protocol
  • USB 2.0 interface up to 480 Mbit
  • 16/32/64 MOSFET outputs with pulse width modulation (0 .. 100%)
  • PWM frequency = 1 KHz (resolution 1%)
  • Galvanic isolation by optocoupler

PWM outputs

For the PWM outputs P-Ch MOSFETs were used, which allow a pulse width modulation from 0 to 100%. The PWM frequency here is 1kHz. With this module, e.g. dimmers can be realized or motors can be controlled.

Timeout protection function

If communication with the DEDITEC module is interrupted in the event of a timeout, the timeout protection function comes into effect. For each digital output it can be set whether it should be “switched off”, “switched on” or left unchanged. In the event of a timeout, for example, motors can be switched off and connected horns or other alarm transmitters can be switched on.


LEDs

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


Connectors

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 eject and locking mechanism. All conductor types up to 1.5mm² can be connected.


Software and control

Our DELIB driver library, which is included with the product, makes it easy to address the product via our API.

 

We offer support for the following programming languages:

  • C
  • C++
  • C#
  • VB
  • VBA
  • VB.Net
  • Java
  • Delphi
  • LabVIEW

We offer support for the following operating systems:

  • Windows 10 (32bit/64bit)
  • Windows 8/8.1 (32bit/64bit)
  • Windows 7 (32bit/64bit)
  • Windows Vista (32bit/64bit)
  • Windows XP (32bit/64bit)
  • Windows Server 2003 (32bit/64bit)
  • Windows 2000
  • Linux

Corresponding programming examples can be found in the “Software” section of the products or are included on the driver CD.


Additional information

Interfaces Variation

,

Number of digital outputs

, ,

General

Power supply + 12V to +24V DC (via two-pin pluggable screw terminal)
LEDs • Operating voltage
• Interface Activity
• Status (only for Ethernet)
• ERROR
• Input state change (only for digital inputs)
• Timeout shutdown
• I/O Access
• One LED per output
Timeout function Automatic shutdown of the outputs in case of connection termination
Connectors • Type: Wago Kontakttechnik 713-1108/037-000
• Pluggable 16 pole female connector with locking mechanism
• 100 % malfunction protected
• 1-conductor connection for all types of conductors up to 1.5mm²
DIN rail mounting TS 35
Operating temperature +10°C .. +50°C
Dimensions with 16 outputs 122mm x 85mm x 51,5mm  (HxWxD)
Dimensions with 32 outputs 122mm x 126 mm x 51,5 mm (HxWxD)
Dimensions with 64 outputs 122mm x 208 mm x 51,5 mm (HxWxD)

Ethernet-Interface

Interface • 10/100 Mbit Ethernet (electrically isolated up to 1.5kV/AC 1 min)
• Configuration via the DELIB Configuration Utility (IP address, netmask …)
IP-Address • DHCP or static
API library • Easy to integrate C-library for the access of inputs and outputs
DIP switches • DHCP ON/OFF
• EEPROM write protection ON/OFF
• BOOT with EEPROM ON/OFF
• SERVICE Mode ON/OFF

USB-Interface

USB-Interface • Connection: Type B
• USB 2.0 / USB 1.1 interface with up to 480Mbit
D-SUB 9 • Possibility to connect the optional USB to RS232 converter “RO-USB-Interface 1 Stick”
• Galvanic isolation up to 500V

PWM outputs

MOSFET to 2A • Typ: IRFR5505PBF
• P-Channel MOSFET
• Max. switching voltage: 48V DC
• Min. switching voltage: 12V DC
• Max. switching current: 2A DC
• Max. switching capacity: 60W DC
• Total load: 12A per 8 outputs
• Rload : recommended < 1K
External power supply 8 outputs each can be powered by a common power supply. Please note the max. total load!
PWM Frequency 1 kHz
Duty cycle 0…100% (1% step size)

Configuration

Configuration of Ethernet modules

Modules with a 10/100 Mbit Ethernet interface can be connected directly to a PC or to a network LAN. The following two options are available for configuration:

 

1. Web interface

The Ethernet module has its own web server that can be used to change the following parameters:

 

  • IP address
  • Netmask
  • Std. Gateway
  • DNS Server

2. DELIB Configuration Utiliy

With the DELIB Configuration Utility the network can be automatically searched for DEDITEC products. All modules found can then be configured with a few clicks. The following parameters can be displayed and partly changed:

 

  • MAC address
  • DHCP or static IP
  • IP address
  • Module name
  • Product type
  • Netmask
  • Std.-Gateway
  • Port
  • Connection timeout
  • Encryption
  • Name assignment for I/Os

Advanced options

View advanced setting options for network settings, encryption and I/O naming.


Port and timeout

Additional options for the connection timeout and the port used can be specified.


Encryption options

If desired, a secure connection with user name and password can be established.


I/O Name Assignment

It is possible to name I/Os. This function facilitates the handling of the I/Os and is for convenience. This function is only available for products with Ethernet interface.

The DELIB Configuration Utility is installed with the DELIB 2.0 driver library and can be downloaded here

 

DELIB driver library

 


More details about the control and some programming examples can be found in the programming section.


Configuration of USB modules

Products with USB interface are automatically recognized by the DELIB driver library. A configuration is only necessary if several identical USB products are to be used on the same system.

 


Several identical USB modules on one system

Each of our USB products has the module number “0” in the delivery state. When using more than one USB module on a PC / system, a new module number must first be assigned to each additional module. This assignment is done with our DELIB configuration utility. Only in this way can a clear assignment be made by the software. The module number is stored permanently in the product. Up to 255 identical modules can be used on one system.


More details about the control and some programming examples can be found in the programming section.

Programming of modules via the DELIB driver library on Windows

The comprehensive yet very easy to use DELIB driver library is suitable for almost any programming language. An installation package with extensive examples can be found on our CD or in the download section.

Downloads

 

 

Control via the Windows driver library DELIB

The DELIB driver library enables a uniform response of all DEDITEC control engineering products. For this purpose, we provide programmers with appropriate functions for the respective product groups, which enable a uniform but also very simple addressing of the products.

 

Here you will find an overview of the DELIB and its programs:

DELIB + Tools

 

A list of all DELIB commands can be found here:

Overview DELIB API

 


The DELIB enables simple addressing of DEDITEC modules

 

The following example shows how simple means can be used to access the inputs of our modules within a very short time.

 

Open the module

handle = DapiOpenModule(RO_ETH,0); // Open Ethernet-Module

 

Read 16 digital inputs

data = DapiDIGet16(handle, 0); // Read the first 16 digital inputs

 

Close Module

DapiCloseModule(handle); // Close the module

 

The function “DapiOpenModule” is used to open a product. Which product is to be opened is determined by the two transferred parameters. The first parameter designates the “Module ID”. Due to the included “DELIB.H” the parameter can be simply specified with “RO_USB1”. This tells the driver library that a RO module with USB bus is to be addressed.

 

The second parameter determines the module number. If only one module is connected to the PC, a “0” is specified. If several modules are connected, the corresponding module number must be specified. The module number can be changed with the DELIB Configuration Utility.


 

Example of the addressing of a DEDITEC module

DEDITEC-Module Demo

The scope of delivery includes the DT module Demo. This program offers the possibility to address all inputs/outputs in a simple way and thus also to test them.

In this example a RO-ETH is connected. The connected RO-ETH has PT100 temperature sensors, relay outputs and stepper motor controls.

 


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 the communication via TCP/IP is disclosed. The control is register-based. For this purpose, a communication protocol has been created which is used to address the registers of the module and thus execute read or write commands. The manual “Protocols & Register Assignment” describes the send and receive frames to communicate with our Ethernet modules.

 

Ethernet Protocol Documentation


Programming of USB modules

Example for opening several modules on one PC:

 

Opening the module with the nr. “1”

handle1 = DapiOpenModule(RO_USB1,1); // Open USB-Modul with Nr=1

Opening the module with the nr. “4”

handle2 = DapiOpenModule(RO_USB1,4); // Open USB-Modul with Nr=4

General Handling

DapiOpenModule
This function opens a particular module.

DapiOpenModule

 

Description

This function opens a specific module

 

Definition

ULONG DapiOpenModule(ULONG moduleID, ULONG nr);

 

Parameters

moduleID=Specifies the module to be opened (see delib.h)
nr=Specifies which one (in case of several modules) should be opened.
nr=0 -> 1st module
nr=1 -> 2nd module

 

Return-Value

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

 

Comment

The handle returned by this function is needed 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(“Modul konnte nicht geöffnet werden\n”);
return;
}

DapiCloseModule
This command closes an opened module.

DapiCloseModule

 

Description

This command closes an open module.

 

Definition

ULONG DapiCloseModule(ULONG handle);

 

Parameters

handle=This is the handle of an open module

 

Return-Value

None

 

Programming example

// Close module
DapiCloseModule(handle);

DapiGetLastError
This function returns the last registered error. If an error has occurred, it must be deleted with DapiClearLastError(), otherwise any call of DapiGetLastError() will return the "old" error. If multiple modules are used, the use of DapiGetLastErrorByHandle() is recommended.

DapiGetLastError

 

Description

This function returns the last detected error. If an error occurred, it must be cleared with DapiClearLastError(), otherwise any call to DapiGetLastError() will return the “old” error.
If more than one module should be used, it is recommended to use DapiGetLastLastErrorByHandle().

 

Definition

ULONG DapiGetLastError(void);

 

Parameters

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 registered error of a particular module (handle). If an error has occurred, it must be deleted with DapiClearLastErrorByHandle(), otherwise any call of DapiGetLastErrorByHandle() will return the "old" error.

DapiGetLastErrorByHandle

 

Description

This function returns the last detected error of a specific module (handle). If an error occurred, it must be cleared with DapiClearLastErrorByHandle(), otherwise any call to DapiGetLastErrorByHandle() will return the “old” error.

 

Definition

ULONG DapiGetLastErrorByHandle(ULONG handle);

 

Parameters

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 the text of the last registered error. If an error has occurred, it must be cleared with DapiClearLastError(), otherwise every call of DapiGetLastErrorText() returns the "old" error. Definition

DapiGetLastErrorText

 

Description

This function reads the text of the last detected error. If an error occurred, it must be cleared with DapiClearLastError(), otherwise any call to DapiGetLastErrorText() will return the “old” error.

 

Definition

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

 

Parameters

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 registered with DapiGetLastError().

DapiClearLastError

Description

This function deletes the last error registered with DapiGetLastError().

 

Definition

void DapiGetLastError(void);

 

Parameters

None

 

Return value

None

 

Example program

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 particular module (handle), which was registered with DapiGetLastErrorByHandle().

DapiClearLastErrorByHandle

 

Description

This function deletes the last error of a particular module (handle), which was registered with DapiGetLastErrorByHandle().

 

Definition

void DapiClearLastErrorByHandle(ULONG handle);

 

Parameters

handle=This is the handle of an opened module.

 

Return value

None

 

Example program

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;
}

DapiGetDELIBVersion
This function returns the installed DELIB version.

DapiGetDELIBVersion

 

Description

This function returns the installed DELIB version.

 

Definition

ULONG DapiGetDELIBVersion(ULONG mode, ULONG par);

 

Parameters

mode=Mode with which the version is read (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 installed version 1.32 version = 132(hex)

DapiOpenModuleEx
This function opens a specific module with ethernet interface.The particularity of this command is,that parameters like IP-address, portnumber and the duration of the timeout can be specified. The opening of the module is independent of the DELIB Configuration Utility settings.

DapiOpenModuleEx

 

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 determined.
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);

 

Parameters

moduleID = Specifies the module to be opened (see delib.h)
nr = Specifies which one (in case of several modules) is to be opened
nr = 0 -> 1st module
nr = 1 -> 2nd 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

 

Comment

The handle returned by this function is required to identify the module for all other functions.
This command is supported by all modules with 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);

Digital output functions

DapiDOSet1
This is the command to set a single output.

DapiDOSet1

 

Description

This command sets a single output.

 

Definition

void DapiDOSet1(ULONG handle, ULONG ch, ULONG data);

 

Parameters

handle=This is the handle of an open module
ch= Specifies the number of the output to be set (0 .. )
data= Specifies the data value to be written (0 / 1)

 

Return-Value

None

 

Requirements

The following SW feature bits must be supported by the module:

 

DAPI_SW_FEATURE_BIT_CFG_DO

The following conditions for the transfer parameters must be met:

maxCh = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_GET_MODULE_CONFIG, DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DO, 0, 0)
maxCh > ch

DapiDOSet8
This command sets 8 digital outputs simultaneously.

DapiDOSet8

 

Description

This command sets 8 digital outputs simultaneously.

 

Definition

void DapiDOSet8(ULONG handle, ULONG ch, ULONG data);

 

Parameters

handle=This is the handle of an open module
ch= Specifies the number of the output from which writing is to start (0, 8, 16, 24, 32, ..)
data=Specifies the data values to be written

 

Return-Value

None

DapiDOSet16
This command sets 16 digital outputs simultaneously.

DapiDOSet16

 

Description

This command sets 16 digital outputs simultaneously.

 

Definition

void DapiDOSet16(ULONG handle, ULONG ch, ULONG data);

 

Parameters

handle=This is the handle of an open module
ch= Specifies the number of the output from which writing is to start (0, 16, 32, ..)
data=Specifies the data values to be written

 

Return-Value

None

DapiDOSet32
This command sets 32 digital outputs simultaneously.

DapiDOSet32

 

Description

This command sets 32 digital outputs simultaneously.

 

Definition

void DapiDOSet32(ULONG handle, ULONG ch, ULONG data);

 

Parameters

handle=This is the handle of an open module
ch= Specifies the number of the output from which writing is to start (0, 32, 64, ..)
data=Specifies the data values to be written

 

Return-Value

None

 

Programming example

// Write a value to the outputs
data = 0x0000ff00; // outputs 9-16 are set to 1
DapiDOSet32(handle, 0, data); // Chan Start = 0
printf(“Write to outputs data=0x%x\n”, data);
printf(“key for further\n”);
getch();
// —————————————————-
// Write a value to the outputs
data = 0x80000000; // Output 32 is set to 1
DapiDOSet32(handle, 0, data); // Chan Start = 0
printf(“Write to outputs data=0x%x\n”, data);
printf(“key for further\n”);
getch();
// —————————————————-
// Write a value to the outputs
data = 0x80000000; // Output 64 is set to 1
DapiDOSet32(handle, 32, data); // Chan Start = 32
printf(“Write to outputs data=0x%x\n”, data);
printf(“key for further\n”);
getch();

DapiDOSet64
This command is to set 64 digital outputs.

DapiDOSet64

 

Description

This command sets 64 digital outputs simultaneously.

 

Definition

void DapiDOSet64(ULONG handle, ULONG ch, ULONGLONG data);

 

Parameters

handle=This is the handle of an open module
ch= Specifies the number of the output from which writing is to start (0, 64, ..)
data=Specifies the data values to be written

 

Return-Value

None

DapiDOClrBit32
With this command you can change the states of outputs to 0 without changing the states of the neighboring outputs.

DapiDOClrBit32

 

Description

This command can be used to switch outputs selectively to 0 without changing the states of adjacent outputs.

 

Definition

void DapiDOClrBit32(uint handle, uint ch, uint data);

 

Parameters

handle = This is the handle of an open module
ch = Specifies the number of the output from which writing is to start
data = Specifies the data value to be written (up to 32 bits)

 

Return-Value

None

 

Comment

Only the bits with a value of 1 in the data parameter are considered by the command.

 

Programming example

data = 0x1; // Output 0 would be changed to 0. The states of outputs 1-31 won’t be changed
DapiDOSetBit32(handle, 0, data);

data = 0xf; // Outputs 0-3 would be changed to 0. The states of outputs 4-31 won’t be changed
DapiDOSetBit32(handle, 0, data);

data = 0xff; // Outputs 0-7 would be changed to 0. The states of outputs 8-31 won’t be changed
DapiDOSetBit32(handle, 0, data);

data = 0xff000000; // Outputs 23-31 would be changed to 0. The states of outputs 0-21 won’t be changed
DapiDOSetBit32(handle, 0, data);

DapiDOSet1_WithTimer
This function sets a digital output (ch) to a value (data - 0 or 1) for a specified time in msec.

DapiDOSet1_WithTimer

 

Description

This function sets a digital output (ch) to a value (data – 0 or 1) for a certain time in ms.

 

Definition

void DapiDOSet1_WithTimer(ULONG handle, ULONG ch, ULONG data, ULONG time_ms);

 

Parameters

handle=This is the handle of an open module
ch= Specifies the number of the output to be set (0 .. )
data= Specifies the data value to be written (0 / 1)
time_ms=Specifies the time in which the output is set [ms].

 

Return-Value

None

 

Comment

This command is supported by all output modules of the NET series as well as by our RO-O8-R8 module.
This command loses its validity if it is overwritten with other values.
If you want to deactivate the command, it must be overwritten with time_ms=0.

 

Programming example

DapiDOSet1_WithTimer(handle, 2, 1, 1000);
//Setting channel 2 for 1000msec to 1

DapiDOSetBit32
With this command you can change the states of outputs to 1 without changing the states of the neighboring outputs.

DapiDOSetBit32

 

Description

This command can be used to switch outputs selectively to 1 without changing the states of adjacent outputs.

 

Definition

void DapiDOSetBit32(uint handle, uint ch, uint data);

 

Parameters

handle = This is the handle of an open module
ch = Specifies the number of the output from which writing is to start
data = Specifies the data value to be written (up to 32 bits)

 

Return-Value

None

 

Comment

Only the bits with a value of 1 in the data parameter are considered by the command.

 

Programming example

data = 0x1; // Output 0 would be changed to 1. The states of outputs 1-31 won’t be changed
DapiDOSetBit32(handle, 0, data);

data = 0xf; // Outputs 0-3 would be changed to 1. The states of outputs 4-31 won’t be changed
DapiDOSetBit32(handle, 0, data);

data = 0xff; // Outputs 0-7 would be changed to 1. The states of outputs 8-31 won’t be changed
DapiDOSetBit32(handle, 0, data);

data = 0xff000000; // Outputs 23-31 would be changed to 1. The states of outputs 0-21 won’t be changed
DapiDOSetBit32(handle, 0, data);

DapiDOReadback32
This command reads back the 32 digital outputs.

DapiDOReadback32

 

Description

This command reads back the 32 digital outputs.

 

Definition

ULONG DapiDOReadback32(ULONG handle, ULONG ch);

 

Parameters

handle=This is the handle of an open module
ch= Specifies the number of the output from which the read back is to be performed (0, 32, 64, ..)

 

Return-Value

Status of 32 outputs.

DapiDOReadback64
This command reads the current PWM frequency of the module

DapiDOReadback32

 

Description

This command reads back the 32 digital outputs.

 

Definition

ULONG DapiDOReadback32(ULONG handle, ULONG ch);

 

Parameters

handle=This is the handle of an open module
ch= Specifies the number of the output from which the read back is to be performed (0, 32, 64, ..)

 

Return-Value

Status of 32 outputs.

PWM functions

DapiPWMOutReadback
This command reads the current PWM ratio of one channel

DapiPWMOutReadback

 

Description

This command reads the PWM ratio of a PWM channel

 

Definition

float DapiPWMOutReadback(ULONG handle, ULONG ch);

 

Parameters

handle=This is the handle of an open module
ch= Specifies the number of the output to be read

 

Return-Value

PWM ratio of the channel from 0% to 100%

 

Programming example

float data = DapiPWMOutReadback(handle, 0);
// Reads the pwm ratio of the first channel
float data = DapiPWMOutReadback(handle, 2);
// Reads the pwm ratio of the second channel

DapiPWMOutSet
This command can set the PWM ratio of one channel

DapiPWMOutSet

 

Description

This command sets the PWM ratio of a PWM channel

 

Definition

void DapiPWMOutSet(ULONG handle, ULONG ch, float data);

 

Parameters

handle=This is the handle of an open module
ch= Specifies the number of the output to be set
data=PWM ratio in from 0% to 100% in 1% steps
Minimum PWM ratio depends on the PWM frequency
10Hz data must be >= 0%.
100Hz data must be >= 2%.
250Hz data must be >= 3%.
1000Hz data must be >= 9%.

 

Return-Value

None

 

Programming example

DapiPWMOutSet(handle, 0, 50);
// Sets the pwm ratio of channel 1 to 50% (50% high, 50% low)
DapiPWMOutSet(handle, 1, 100);
// Sets the pwm ratio of channel 2 to 100% (100% high, 0% low)

DapiSpecialCommand - DAPI_SPECIAL_PWM_FREQ_SET
This command can sets the PWM frequency of the module

DapiSpecialCommand – DAPI_SPECIAL_PWM_FREQ_SET

 

Description

This command sets the PWM frequency of the module

 

Definition

void DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_PWM, cmd, par1, par2);

 

Parameters

handle=This is the handle of an open module
cmd=DAPI_SPECIAL_PWM_FREQ_SET
par1=channel area 0 (ch 0-15), 16 (ch 16-31) … etc.
par2=frequency = DAPI_PWM_FREQUENCY_10HZ, DAPI_PWM_FREQUENCY_100HZ, DAPI_PWM_FREQUENCY_250HZ or DAPI_PWM_FREQUENCY_1000Hz

 

Return-Value

None

 

Programming example

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_PWM, DAPI_SPECIAL_PWM_FREQ_SET, 0, DAPI_PWM_FREQUENCY_100HZ);
// Sets the pwm frequency of the module to 100Hz

DapiSpecialCommand - DAPI_SPECIAL_PWM_FREQ_READBACK
This command reads the current PWM frequency of the module

DapiSpecialCommand – DAPI_SPECIAL_PWM_FREQ_READBACK

 

Description

This command reads the current PWM frequency of the module

 

Definition

void DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_PWM, cmd, par1, par2);

 

Parameters

handle=This is the handle of an open module
cmd=DAPI_SPECIAL_PWM_FREQ_READBACK
par1=0
par2=0

 

Return-Value

uint = DAPI_PWM_FREQUENCY_10HZ, DAPI_PWM_FREQUENCY_100HZ, DAPI_PWM_FREQUENCY_250HZ or DAPI_PWM_FREQUENCY_1000Hz

 

Programming example

uint frequency = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_PWM, DAPI_SPECIAL_PWM_FREQ_READBACK, 0, 0);
// Reads the pwm frequency of the module

Software FIFO-functions

DapiSpecialCommand - DapiSpecialCMDSWFifo
This command is used to set the software FIFO of the NET-Modules

DapiSpecialCommand-DapiSpecialCMDSWFifo

 

Description

This command is used to set the software FIFO.
DAPI_SPECIAL_CMD_SW_FIFO commands only work with the NET series.

 

Definition

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO, cmd, fifo_instance, par2);

 

Parameters

handle = This is the handle of an open module
cmd = function to be executed
fifo_instance = Specifies the instance of the software FIFO. So far there is only instance 0
par2 = value that is passed to the function

Remark

Always define the submodule first with the DapiSpecialSWFifoSetSubmodule command!

DapiSpecialCommand - DapiSpecialSWFifoSetSubmodule
This command specifies to which submodule the data of the software FIFO are transferred

DapiSpecialCommand-DapiSpecialSWFifoSetSubmodule

 

Description

This command specifies to which submodule the data of the software FIFO are transferred.

 

Definition

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO, cmd, fifo_instance, par2);

 

Parameters

cmd = DAPI_SPECIAL_SW_FIFO_SET_SUBMODULE
fifo_instance = Specifies the instance of the software FIFO
par2 = indicates the number of the submodule (0, 1, 2, 3, …)

 

Programming example

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO,
DAPI_SPECIAL_SW_FIFO_SET_SUBMODULE, fifo_instance, 2);
//The software FIFO transfers the data to submodule 2.

DapiSpecialCommand - DapiSpecialSWFifoGetSubmodule
This command returns the number of the submodule to which the data is transferred

DapiSpecialCommand – DapiSpecialSWFifoGetSubmodule

 

Description

This command returns the number of the submodule to which the data is transferred.

 

Definition

ULONG DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO, cmd, fifo_instance, 0);

 

Parameters

cmd = DAPI_SPECIAL_SW_FIFO_GET_SUBMODULE
fifo_instance = Specifies the instance of the software FIFO

 

Return value

Number of the submodule (0, 1, 2, 3, …)

 

Programming example

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO,
DAPI_SPECIAL_SW_FIFO_SET_SUBMODULE, fifo_instance, 2);
//The software FIFO transfers the data to submodule 2.

DapiSpecialCommand - DapiSpecialSWFifoActivate
This command activates the automatic output of the D/A converter

DapiSpecialCommand-DapiSpecialSWFifoActivate

 

Description

This command activates the automatic output of the D/A converter.

 

Definition

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO, cmd, fifo_instance, 0);

 

Parameters

cmd = DAPI_SPECIAL_SW_FIFO_ACTIVATE
fifo_instance = Specifies the instance of the software FIFO

 

Programming example

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO,
DAPI_SPECIAL_SW_FIFO_ACTIVATE, fifo_instance, 0);
//The automatic output of the D/A converter is activated.

DapiSpecialCommand - DapiSpecialSWFifoDeactivate
This command disables the automatic output of the D/A converter

DapiSpecialCommand-DapiSpecialSWFifoDeactivate

 

Description

This command disables the automatic output of the D/A converter.

 

Definition

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO, cmd, fifo_instance, 0);

 

Parameters

cmd = DAPI_SPECIAL_SW_FIFO_DEACTIVATE
fifo_instance = Specifies the instance of the software FIFO

 

Programming example

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO,
DAPI_SPECIAL_SW_FIFO_DEACTIVATE, fifo_instance, 0);
//The automatic output of the D/A converter is deactivated.

DapiSpecialCommand - DapiSpecialSWFifoGetActivity
This command gets the status of the FIFO transmission to the D/A converter (whether active or inactive)

DapiSpecialCommand – DapiSpecialSWFifoGetActivity

 

Description

This command gets the status of the FIFO transmission to the D/A converter (whether active or inactive).

 

Definition

ULONG DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO, cmd, fifo_instance, 0);

 

Parameters

cmd = DAPI_SPECIAL_SW_FIFO_GET_ACTIVITY
fifo_instance = Specifies the instance of the software FIFO

 

Return value

Return = 0 (transmission is deactivated)
Return = 1 (transmission is activated)

 

Programming example

unsigned long ret = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO,
DAPI_SPECIAL_SW_FIFO_GET_ACTIVITY, fifo_instance, 0);
printf(“Status = %lu\n”, ret);
//transfer status is retrieved

DapiSpecialCommand - DapiSpecialSWFifoInitAndClear
This command deletes existing data from the software FIFO memory and returns the FIFO mechanism to its original state

DapiSpecialCommand – DapiSpecialSWFifoInitAndClear

 

Description

This command deletes existing data from the software FIFO memory and returns the FIFO mechanism to its original state.

 

Definition

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO, cmd, fifo_instance, 0);

 

Parameters

cmd = DAPI_SPECIAL_SW_FIFO_INIT_AND_CLEAR
fifo_instance = Specifies the instance of the software FIFO

 

Programming example

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO,
DAPI_SPECIAL_SW_FIFO_INIT_AND_CLEAR, fifo_instance, 0);
//existing data is deleted from the FIFO memory.

DapiSpecialCommand - DapiSpecialSWFifoSetChannel
This command specifies the A/D channels to which the FIFO data is to be transferred, specifying the start and end channels

DapiSpecialCommand – DapiSpecialSWFifoSetChannel

 

Description

This command specifies the A/D channels to which the FIFO data is to be transferred, specifying the start and end channels.

 

Definition

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO, cmd, fifo_instance, ch);

 

Parameters

cmd = DAPI_SPECIAL_SW_FIFO_SET_CHANNEL
fifo_instance = Specifies the instance of the software FIFO
ch = specification of the start and end channel

 

Programming example

unsigned long ch_start = 0; //Start with D/A Channel 0
unsigned long ch_end = 1; //End with D/A Channel 1

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO,
DAPI_SPECIAL_SW_FIFO_SET_Channel, fifo_instance,
((ch_end << 8) & 0xff00) | (ch_start & 0xff);
//The start and end channel is defined

DapiSpecialCommand - DapiSpecialSWFifoGetChannel
This command shows the D/A channels to which the data is transferred

DapiSpecialCommand-DapiSpecialSWFifoGetChannel

 

Description

This command shows the D/A channels to which the data is transferred.

 

Definition

ULONG DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO, cmd, fifo_instance, 0);

 

Parameters

cmd = DAPI_SPECIAL_SW_FIFO_GET_CHANNEL
fifo_instance = Specifies the instance of the software FIFO

 

Return value

Number of the A/D channels
Bit 0-7 Start channel
Bit 8-15 End channel

 

Programming example

unsigned long ret = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO,
DAPI_SPECIAL_SW_FIFO_GET_CHANNEL, fifo_instance, 0);
printf(“Channel = %lu\n”, ret);
//Shows on which A/D channels the data is transferred.

DapiSpecialCommand - DapiSpecialSWFifoSetIntervalMS
This command specifies the time interval (in milliseconds) from the FIFO to the module

DapiSpecialCommand-DapiSpecialSWFifoSetIntervalMS

 

Description

This command specifies the time interval (in milliseconds) from the FIFO to the module.

 

Definition

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO, cmd, fifo_instance, par2);

 

Parameters

cmd = DAPI_SPECIAL_SW_FIFO_SET_INTERVAL_MS
fifo_instance = Specifies the instance of the software FIFO
par2 = time interval in milliseconds

 

Remark

The permissible value range of the time interval is between 1 and 1000 milliseconds.

 

Programming example

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO,
DAPI_SPECIAL_SW_FIFO_SET_INTERVAL_MS, fifo_instance, 10);
//Sets the time interval to 10 ms.

DapiSpecialCommand - DapiSpecialSWFifoGetIntervalMS
This command returns the previously set time interval in milliseconds

DapiSpecialCommand-DapiSpecialSWFifoGetIntervalMS

 

Description

This command returns the previously set time interval in milliseconds.

 

Definition

ULONG DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO, cmd, fifo_instance, 0);

 

Parameters

cmd = DAPI_SPECIAL_SW_FIFO_GET_INTERVAL_MS
fifo_instance = Specifies the instance of the software FIFO

 

Return value

Time interval in milliseconds

 

Programming example

unsigned long ret = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO,
DAPI_SPECIAL_SW_FIFO_GET_INTERVAL_MS, fifo_instance, 0);
printf(“Channel = %lu\n”, ret);
//Displays the previously set time interval.

DapiSpecialCommand - DapiSpecialSWFifoGetBytesFree
This command is used to read the free bytes in the software FIFO buffer

DapiSpecialCommand-DapiSpecialSWFifoGetBytesFree

 

Description

This command is used to read the free bytes in the software FIFO buffer.

 

Definition

ULONG DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO, cmd, fifo_instance, 0);

 

Parameters

cmd = DAPI_SPECIAL_SW_FIFO_GET_BYTES_FREE
fifo_instance = Specifies the instance of the software FIFO

 

Return value

Free bytes of the software FIFO

 

Programming example

unsigned long ret = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO,
DAPI_SPECIAL_SW_FIFO_GET_BYTES_FREE, fifo_instance, 0);
printf(“Free memory = %lu\n”, ret);
//Output the remaining free bytes of the memory.

DapiSpecialCommand - DapiSpecialSWFifoGetBytesPerSample
This command specifies how many bytes are required for writing to the D/A converter

DapiSpecialCommand-DapiSpecialSWFifoGetBytesPerSample

 

Description

This command specifies how many bytes are required for writing to the D/A converter.
Example: If 3 D/A channels are written to a 16 bit (2 byte) D/A converter, 3×2 bytes are required per sample. So the value 6 will be returned.

 

Definition

ULONG DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO, cmd, fifo_instance, 0);

 

Parameters

cmd = DAPI_SPECIAL_SW_FIFO_GET_BYTES_PER_SAMPLE
fifo_instance = Specifies the instance of the software FIFO

 

Return value

Bytes required per sample

 

Programming example

unsigned long ret = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO,
DAPI_SPECIAL_SW_FIFO_GET_BYTES_PER_SAMPLE, fifo_instance, 0);
printf(“Required bytes = %lu\n”, ret);
//Output of the required bytes per sample.

DapiSpecialCommand - DapiSpecialSWFifoGetBytesPerSample
This command specifies how many bytes are required for writing to the D/A converter

DapiSpecialCommand-DapiSpecialSWFifoGetBytesPerSample

 

Description

This command specifies how many bytes are required for writing to the D/A converter.
Example: If 3 D/A channels are written to a 16 bit (2 byte) D/A converter, 3×2 bytes are required per sample. So the value 6 will be returned.

 

Definition

ULONG DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO, cmd, fifo_instance, 0);

 

Parameters

cmd = DAPI_SPECIAL_SW_FIFO_GET_BYTES_PER_SAMPLE
fifo_instance = Specifies the instance of the software FIFO

 

Return value

Bytes required per sample

 

Programming example

unsigned long ret = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO,
DAPI_SPECIAL_SW_FIFO_GET_BYTES_PER_SAMPLE, fifo_instance, 0);
printf(“Required bytes = %lu\n”, ret);
//Output of the required bytes per sample.

DapiSpecialCommand - DapiSpecialSWFifoSetMode
This command sets the software FIFO mode

DapiSpecialCommand-DapiSpecialSWFifoSetMode

 

Description

This command sets the software FIFO mode. This command is not yet supported in the current firmware.

 

Definition

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO, cmd, fifo_instance, par2);

 

Parameters

cmd = DAPI_SPECIAL_SW_FIFO_SET_MODE
fifo_instance = Specifies the instance of the software FIFO
par2 = Software FIFO Mode

 

Programming example

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO,
DAPI_SPECIAL_SW_FIFO_SET_MODE, fifo_instance, 0);
//The software FIFO mode is set.

DapiSpecialCommand - DapiSpecialSWFifoGetMode
This command returns the previously set FIFO mode

DapiSpecialCommand-DapiSpecialSWFifoGetMode

 

Description

This command returns the previously set FIFO mode. Currently this mode is not yet supported in the firmware.

 

Definition

ULONG DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO, cmd, fifo_instance, 0);

 

Parameters

cmd = DAPI_SPECIAL_SW_FIFO_GET_MODE
fifo_instance = Specifies the instance of the software FIFO

 

Return value

FIFO Software Mode

 

Programming example

unsigned long ret = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO,
DAPI_SPECIAL_SW_FIFO_GET_MODE, fifo_instance, 0);
printf(“Mode = %lu\n”, ret);
//Get the previously set FIFO mode.

DapiSpecialCommand - DapiSpecialSWFifoGetStatus
This command gets status information

DapiSpecialCommand-DapiSpecialSWFifoGetStatus

 

Description

This command gets status information. This is not yet supported in the current firmware.

 

Definition

ULONG DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_SW_FIFO, cmd, fifo_instance, 0);

 

Parameters

cmd = DAPI_SPECIAL_SW_FIFO_GET_STATUS
fifo_instance = Specifies the instance of the software FIFO

DapiSpecialCommand - DapiSpecialCMDAD
This command controls the Software FIFO of a A/D converter.

DapiSpecialCommand-DapiSpecialCMDAD

 

Description

This command manages the control of the software FIFO of an A/D converter.

 

Definition

ULONG DapiSpecialCommand(ULONG handle, DAPI_SPECIAL_CMD_AD, ULONG cmd, ULONG ch_range, ULONG par0);

 

Parameters

handle = This is the handle of an open module
ch_range = Indicates the number of the A/D converter module (see example or file delib.h)

 

Initialize FIFO

cmd=DAPI_SPECIAL_RO_AD_FIFO_INIT
par0=not defined

Activate FIFO
cmd=DAPI_SPECIAL_RO_AD_FIFO_ACTIVATE
par0=not defined

Deactivate FIFO
cmd=DAPI_SPECIAL_RO_AD_FIFO_DEACTIVATE
par0=not defined

Set FIFO interval
cmd=DAPI_SPECIAL_RO_AD_FIFO_SET_INTERVAL_MS
par0=interval [msec]

Set FIFO for an A/D converter channel
cmd=DAPI_SPECIAL_RO_AD_FIFO_SET_CHANNEL
par0=16 bit value for A/D channels that are written to the FIFO. Each bit stands for one channel (Bit0 -> AD0, Bit1 -> AD1, … Bit15 -> AD15).
If the bit is set, the corresponding A/D channel is active.

Request FIFO status
cmd=DAPI_SPECIAL_RO_AD_FIFO_GET_STATUS
par0=not defined

 

Return-Value

cmd=DAPI_SPECIAL_RO_AD_FIFO_INIT
no return value

cmd=DAPI_SPECIAL_RO_AD_FIFO_ACTIVATE
no return value

cmd=DAPI_SPECIAL_RO_AD_FIFO_DEACTIVATE
no return value

cmd=DAPI_SPECIAL_RO_AD_FIFO_SET_INTERVAL_MS
no return value

cmd=DAPI_SPECIAL_RO_AD_FIFO_SET_CHANNEL
no return value

cmd=DAPI_SPECIAL_RO_AD_FIFO_GET_STATUS
return=current FIFO status

Value [hex] Meaning Explanation 0x80 RO_FIFO_STATUS_MASK_MEASURE_ENABLED FIFO is active 0x40 RO_FIFO_STATUS_MASK_TEST_DATA
0x20 RO_FIFO_STATUS_MASK_OVERFLOW FIFO Buffer is full 0x10 RO_FIFO_STATUS_MASK_UNDERRUN
0x08 RO_FIFO_STATUS_FULL_256_BYTE 256 Byte data available 0x04 RO_FIFO_STATUS_FULL_64_BYTE 64 Byte data available 0x02 RO_FIFO_STATUS_FULL_16_BYTE 16 Byte data available 0x01 RO_FIFO_STATUS_FULL_1_BYTE 1 Byte data available

 

Programming example

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_RO_AD_FIFO_DEACTIVATE, DAPI_SPECIAL_AD_CH0_CH15, 0);
// deactivates the current AD-FIFO recording for AD module0 (channel 0 to 15)

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_RO_AD_FIFO_INIT, DAPI_SPECIAL_AD_CH0_CH15, 0);
// initializing a new AD-FIFO recording for AD module 0 (channel 0 to 15)

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_RO_AD_FIFO_SET_INTERVAL_MS, DAPI_SPECIAL_AD_CH0_CH15, 100);
// Set the AD-FIFO interval for recording to 100 ms for AD module 0 (channel 0 to 15).

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_RO_AD_FIFO_SET_CHANNEL, DAPI_SPECIAL_AD_CH0_CH15, 0x1051);
// set the A/D channels to be recorded for AD module 0 (channel 0 to 15)
// 0x1051 [hex] = 0001 0000 0101 0001 0001 [bin]
// the following channels are recorded: AD0, AD4, AD6 and AD12

DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_RO_AD_FIFO_ACTIVATE, DAPI_SPECIAL_AD_CH0_CH15, 0);
// starts / activates the recording

status = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_AD, DAPI_SPECIAL_RO_AD_FIFO_GET_STATUS, DAPI_SPECIAL_AD_CH0_CH15, 0);
// get the current AD-FIFO status

DapiWriteFifo
This command writes data records into the software FIFO

DapiWriteFifo

 

Description

This command writes data records into the software FIFO.

 

Definition

DapiWriteFifo(ULONG handle, ULONG fifo_instance, ULONG type, UCHAR * buffer, ULONG buffer_length);

 

Parameters

handle=This is the handle of an open module
fifo_instance=Gives the instance of the software FIFO
type=Gives the FIFO type
buffer=Buffer for the record to be sent
buffer_length=Length of the buffer

 

Programming example

DapiWriteFifo(handle, fifo_instance, 0, buff, pos);
//Writes the data set to the software FIFO.

DapiReadFifo
This command reads the Software-FIFO of the RO-Modules

DapiReadFifo

 

Description

This command reads the software FIFO. The data sets read out are deleted from the module’s software FIFO after reading.

 

Definition

ULONG DapiReadFifo(ULONG handle, ULONG type, UCHAR * buffer, ULONG buffer_length);

 

Parameters

handle=This is the handle of an open module
fifo_instance=Gives the instance of the software FIFO
type=Gives the FIFO type
buffer=Buffer for the record to be received
buffer_length=Length of the buffer

 

Return-Value

Length of the read FIFO data records

 

Structure of a FIFO data record (example with 2 active AD channels, AD0 and AD4)

Byte || Meaning || Value [hex]

0 RO_FIFO_ID_START 0xf0

1 FIFO type
2 Time stamp (Bit0..Bit7)
3 Time stamp (Bit8..Bit15)
4 Active A/D channels (Bit0..Bit7) 0x11

5 Active A/D channels (Bit8..Bit15) 0x00

6 A/D value channel 0 (Bit0..Bit7)
7 A/D value channel 0 (Bit8..Bit15)
8 A/D value channel 4 (Bit0..Bit7)
9 A/D value channel 4 (Bit8..Bit15)
10 RO_FIFO_ID_END 0xf1

FIFO data set = 7 bytes ID + (2 x number of active A/D channels) bytes data

 

RO_FIFO_ID_START

Signals the beginning of a new FIFO data record. The RO_FIFO_ID_START always has the value 0xf0 [hex].

 

FIFO type

Specifies the FIFO type (e.g. RO_FIFO_ID_TYPE_AD16M0 for A/D-FIFO)

 

Time stamp

Specifies the 16 bit time stamp of the current record. The time reference here is the time of activation of the FIFO.
If the time stamp overflows, it is reset to 0.

 

Active A/D channels

Specifies a 16 bit value for the currently active A/D channels. Each bit represents one channel (Bit0 -> AD0, Bit1 -> AD1, … Bit15 -> AD15).
If the bit is set, the corresponding A/D channel is active

RO_FIFO_ID_END
Signals the end of a FIFO data record. The RO_FIFO_ID_END always has the value 0xf1 [hex].

 

Comment

This command is only supported by our RO-ETH series modules.
Please note that the software FIFO must be activated or initialized with the command “DapiSpecialCMDAD”.

 

Programming example

bytes_received = DapiReadFifo(handle, DAPI_FIFO_TYPE_READ_AD_FIFO, buffer, sizeof(buffer));
// Reads the Software FIFO

Web Interface – Interface

All DEDITEC Ethernet modules have a web interface that allows you to make settings conveniently via your web browser and also gives you direct access to the I/Os.

This allows you to access the product with a smartphone, tablet or even a PC via a browser.

The following I/O units are supported:

 

  • Digital inputs
  • Digital inputs (counter function)
  • Digital outputs
  • Analog inputs (voltage & current)
  • Analogue outputs (voltage & current)
  • PT100 temperature detection
  • Stepper motor control

You can protect the Ethernet module against unauthorized access with a user system and optional encryption system.

General

Start page of the web interface. The navigation on the left side gives you access to various setting options.

Network configuration

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

Usermanager

Here you can define the user name and password for access to the web interface. If the user is inactive, he/she is automatically logged out after the session time has expired.

Status / Reboot

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

Security

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

Supported I/Os

In the following we show you the supported I/Os that you can operate via the web interface.

Digital Inputs

The picture shows the overview of the digital inputs. You can switch between several inputs via the drop-down menu. The column ‘State’ shows whether a signal is present at the input.

Digital Inputs Counter

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

Digital Outputs

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

Analogue Inputs

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

Analogue Outputs

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

Temperature measurement (PT100)

The 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 signalled with ‘disconnected’.

Stepper-Motor Control

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

I/O Control APP for Android™

 

Get it on Google Play

 

 

 

Control the digital and analog I/Os of our Ethernet modules from on the road. With the DEDITEC I/O control Android App, any network-compatible Android device can be remotely controlled for DEDITEC products with Ethernet interface

 

Features:

  • Separate storage of network settings for private and public networks
  • Better clarity through 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
A configuration for private (WLAN) or public (Internet) networks can be created and saved in the network settings.


Module configuration

At the module configuration you see the number of connected I/O modules.

You can also select here which I/Os are to be controlled.


Digital inputs
The digital inputs are scanned at an adjustable interval.


Digital outputs
In the area of the digital outputs the channels can be switched on or off individually.

It is also possible to switch all channels on or off.


Analogue inputs
For the analog inputs you can select from the measuring ranges 0..10V, 0..5V, +/- 10V or +/- 5V.

The A/D channels are scanned automatically at an adjustable interval.


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


Settings
This picture shows the settings for analog outputs. Each channel can be given a name here.

It can also be defined here whether and at what interval the analog outputs are read back.

These settings are available for all I/Os.

 

Block diagram RO-M16

RO-M16

Screwless connector system

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

 

Handling

Step 1

Remove the operating tool from the scope of delivery.

Step 2

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

Step 3

Now insert the stripped conductor into the open terminal contact.

Schritt 4

Pull the operating tool out again.

Step 5

Check the correct connection of the conductor. It should now no longer be possible to pull it out easily.

Manual RO-Serie
Hard- and Software-description
Download
  • Description of the measurement modules
  • Configuration of the different module interfaces
  • Installation of the DELIB driver library

 


DELIB driver library

Manual for the DELIB driver library
Documentation of all functions for the driver library
Download
  • Windows 10, 8, Vista, 7, XP, 2000 and Linux
  • module open/close functions
  • Digital Input read 1 / 8 / 16 / 32 / 64 bit
  • Digital Output write 1 / 8 / 16 / 32 / 64 bit
  • A/D Read, read_volt, read_mA, set A/D mode
  • D/A Write, write_volt, write_mA, set D/A mode

 

DELIB (32-bit) driver library for Windows
For Windows 10, Windows 7, Windows 8, Vista, XP und 2000
Download

Installation file for the 32 bit DELIB driver library.

The following operating systems are supported:

32 bit

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

64 bit

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

Caution

With this version of the driver library, you can only compile 32 bit applications, which can be run on 32 and 64 systems.

 

DELIB (64-bit) driver library for Windows
For Windows 10, Windows 7, Windows 8, Vista, XP and 2000
Download

Installation file for the 64 bit DELIB driver library.

The following operating systems are supported:

64 bit

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

 

DELIB driver library for Linux (32/64-bit)
For 32/64-bit Linux distributions starting with kernel 2.6.x
Download

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

This driver package includes the following components:

  • DELIB USB driver
  • DELIB Ethernet driver
  • DELIB CLI

DELIB USB driver

Supports the following products:

  • NET-Series (via USB interface)
  • RO-USB-Series
  • BS-USB-Series
  • USB-Mini-Sticks
  • USB-Watchdog
  • USB-OPTION-8 / USB-RELAIS-8
  • USB-TTL-32 / USB-TTL-64

Note:

With the standard USB driver, you can access several USB products with different module IDs (for example one RO-USB and one USB-OPTOIN-8). Therefore, no additional driver installation is required.

If you want to access several USB products with the same module ID (for example one USB-OPTOIN-8 and one USB-RELAIS-8), you have to install additionally the Linux FTDI driver. The FTDI driver can be found at http://www.ftdichip.com.

 

DELIB Ethernet driver

Supports the following products:

  • NET-Series (via Ethernet Interface)
  • RO-ETH-Series
  • RO-ETH/LC-Series
  • BS-ETH-Serie
  • ETH-OPTION-8 / ETH-RELAIS-8
  • ETH-TTL-64

DELIB CLI

With the DELIB CLI (Command Line Interface) for Linux it is possible so controll all I/O’s over the command-line.

 

DELIB - Sample-Sources - Installer (approx. 10 MB)
Sample programs for different programming languages (Also in DELIB Setup included)
Download

Sample programs for different programming languages (Also in DELIB Setup included)

  • C (Microsoft Visual C++ 6.0, Borland C)
  • C++ (Microsoft Visual C++ 6.0)
  • C# (Microsoft Visual C# 2008 to 2015)
  • Delphi (Borland Delphi 7)
  • VB (Microsoft Visual Basic 6.0)
  • VB.NET (Microsoft Visual Basic 2008 to 2015)
  • Java (Java native interface)
  • Java.dll (Ethernet protocol for ethernet products)

 

Manual protocol and register assignment
Transmission protocols and register assignment
Download

Describes the structure of the ethernet, serial and CAN protocol.
Includes a describtion for register access of the I/Os and access to the functions of a product.

 


Download

Hardware-Updates (Firmware)
Flash files for the DT-Flasher
Download

The flash files can also be downloaded directly in the DT-Flasher.

This package contains firmware files for the following products:

STARTER-series:

  • USB-MINI-Sticks
  • USB-8-er Opto/Relay
  • Ethernet 8-er Opto/Relay
  • USB-TTL I/O
  • Ethernet-TTL I/O

BS-series:

  • BS-CAN Module
  • BS-ETH Module
  • BS-USB Module
  • BS-SER Module

RO-series Interfaces:

  • RO-USB
  • RO-SER
  • RO-ETH
  • RO-ETH/LC
  • RO-CAN

RO-series I/Os:

  • AD / DA Module
  • CNT8 / CNT-IGR
  • O8-R8 Time module
  • PT100
  • Stepper2

Development accessories

  • USB Controller 8
  • USB Watchdog Stick

DEDITEC driver CD

DEDITEC Driver CD with many helpful tools and manuals for commissioning your DEDITEC products.

  • DELIB driver library for Windows
  • Test and configuration software
  • Manuals
  • Data sheets
  • Example programs for C++, C#, VB, VB.Net, Delphi, LabVIEW

2 pin plug connector

Allows the power supply to be connected to the DEDITEC module

  • Type: Phoenix Contact 1783287
  • 100 % malfunction protected
  • For all conductor types from 0.2mm² to 2.5mm²

10 pol connector

Required to connect your application to the DEDITEC module

  • Type: Wago Kontakttechnik 713-1105/037-000
  • Pluggable female connector with locking mechanism
  • 100 % malfunction protected
  • 1-wire connection for all types of conductors up to 1.5mm²

 

 

  • 100% fail-safe
    CAGE CLAMP® connection

Tool for wiring connectors

Serves to open and close the clamp contacts on the Wago connectors.
  • Type: Wago Kontakttechnik 734-231

2 meter USB A/B connection cable

2 meter USB connection cable A to B.

  • Type: Plug A to plug B
  • length: 1,8m

8-times relay powermodule (switching capacity 40V/10A), which can be controlled by relays/opto-couplers

The MOD-REL8_10A has eight changeover relays with a switching capacity of 48V/10A AC or 48V/8A DC. It can be used as additional power stage for our digital output modules. The normally open contacts of a digital output module, e.g. a RO-USB-REL16, are simply connected in parallel to the inputs of this power stage. Additionally this module requires a power supply of 24V DC.

  • Power stage for all digital output modules
  • 8 change-over contact relay (CO) / 48V / 10A AC/DC
  • 24V power supply
  • Pluggable terminal strips for the connection wiring
  • Potential-free inputs (no control voltage required)

USB watchdog stick with 2 relays for shift operations

This USB-WATCHDOG-STICK monitors your operating PC or server and can reset the hardware independently in case of a program crash. Simply integrate the function of the Watchdog Stick into your application. As soon as a timeout occurs and the watchdog stick is no longer periodically reset, the two relay outputs are switched through. With an appropriate connection cabling, for example, the PC reset could be activated, an external SMS modem can send warnings or a connected siren signals an alarm. With the help of our free configuration tool, you can define how the relays should switch in case of an error.

  • USB 2.0 / USB 1.1 interface
  • Watchdog function
  • Monitoring your control PC or server
  • Timeout times adjustable from 10ms to 10h
  • Windows Watchdog API
  • 2 NO contact relay (NO)
  • Connection cable with DSUB9 socket (approx. 1.8m)

RO-USB-Interface1 Stick

With the RO-USB-Interface1 stick you will add a galvanic isolation between RO-USB modules and your control-PC.

  • Adds a galvanic isolation to all RO-USB products

Power supply 24V/2A for DIN rail mounting

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

  • Input voltage range: 85V… 264V AC / 120V DC … 370V DC
  • Output voltage: 24V DC
  • Output current: 2A
  • Nominal power: 48W

2 pin plug connector

Allows the power supply to be connected to the DEDITEC module

  • Type: Phoenix Contact 1783287
  • 100 % malfunction protected
  • For all conductor types from 0.2mm² to 2.5mm²

10 pol connector

Required to connect your application to the DEDITEC module

  • Type: Wago Kontakttechnik 713-1105/037-000
  • Pluggable female connector with locking mechanism
  • 100 % malfunction protected
  • 1-wire connection for all types of conductors up to 1.5mm²

 

 

  • 100% fail-safe
    CAGE CLAMP® connection

Tool for wiring connectors

Serves to open and close the clamp contacts on the Wago connectors.
  • Type: Wago Kontakttechnik 734-231

DIN rail 1m



Top-hat rail for mounting our control technology modules.

  • Top-hat rail according to DIN EN 50022
  • Type: Phoenix Contact / 1208131
  • Dimensions in mm: 450 x 35 x 7.5 (L x W x D)

Reviews

There are no reviews yet.

Be the first to review “16/32/64 * control digital 24V PWM outputs via Ethernet/USB”

Your email address will not be published. Required fields are marked *