Használati útmutató Moxa M-4211

Olvassa el alább 📖 a magyar nyelvű használati útmutatót Moxa M-4211 (129 oldal) a nincs kategorizálva kategóriában. Ezt az útmutatót 5 ember találta hasznosnak és 2 felhasználó értékelte átlagosan 4.5 csillagra

Oldal 1/129
ioLogik MXIO DLL API Reference
Second Edition, June 2008
www.moxa.com/product
© 2008 Moxa Inc., all rights reserved.
Reproduction without permission is prohibited.
ioLogik MXIO DLL API Reference
The software described in this manual is furnished under a license agreement, and may be used only in
accordance with the terms of that agreement.
Copyright Notice
Copyright © 2008 Moxa Inc.
All rights reserved.
Reproduction without permission is prohibited.
Trademarks
Moxa is a registered trademark of Moxa Inc.
All other trademarks or registered marks in this manual belong to their respective manufacturers.
Disclaimer
Information in this document is subject to change without notice, and does not represent a commitment on the
part of Moxa.
Moxa provides this document “as is,” without warranty of any kind, either expressed or implied, including, but
not limited to, its particular purpose. Moxa reserves the right to make improvements, and/or changes to this
manual, or to the products, and/or the programs described in this manual, at any time.
Information provided in this manual is intended to be accurate, and reliable. However, Moxa assumes no
responsibility for its use, or for any infringements on the rights of third parties that may result from its use.
This manual might include unintentional technical or typographical errors. Changes are made periodically to the
information herein to correct such errors, and these changes are incorporated into new editions of the manual.
Technical Support Contact Information
www.moxa.com/support
Moxa Americas:
Toll-free: 1-888-669-2872
Tel: +1-714-528-6777
Fax: +1-714-528-6778
Moxa China (Shanghai office):
Toll-free: 800-820-5036
Tel: +86-21-5258-9955
Fax: +86-10-6872-3958
Moxa Europe:
Tel: +49-89-3 70 03 99-0
Fax: +49-89-3 70 03 99-99
Moxa Asia-Pacific:
Tel: +886-2-8919-1230
Fax: +886-2-8919-1231
Table of Contents
Chapter 1. Overview ....................................................................................................1-1
What is the MXIO Linux Library? ....................................................................................... 1-2
Supported Platforms ............................................................................................................. 1-2
Supported I/O Modules ........................................................................................................ 1-2
Moxa Library Comparison ................................................................................................... 1-2
Chapter 2. Programming Flow....................................................................................2-1
Connecting to a Single Ethernet I/O..................................................................................... 2-2
Connecting to Multiple Ethernet I/O .................................................................................... 2-3
Connecting to a Single Serial I/O......................................................................................... 2-4
Connecting to Multiple RS-485 I/O ..................................................................................... 2-5
Connecting to the ioLogik E2000 and Attached RS-485 I/O................................................ 2-6
Modbus Command Sets vs. Direct I/O Command Sets........................................................ 2-7
Modbus Command Sets................................................................................................ 2-7
Direct I/O Command Sets............................................................................................. 2-7
Chapter 3. MXIO API Overview ...................................................................................3-1
System Command Sets......................................................................................................... 3-2
RS-485/RS-232 I/O Connect Commands ..................................................................... 3-2
Ethernet I/O Connect Commands................................................................................. 3-2
General Commands ...................................................................................................... 3-2
Special Commands for ioLogik E2000, R2000 ............................................................ 3-2
Special Commands for ioLogik 4000 ........................................................................... 3-2
Modbus Command Sets........................................................................................................ 3-3
Direct I/O Command Sets..................................................................................................... 3-3
Digital Input Commands............................................................................................... 3-3
Digital Input Commands for ioLogik E2000, R2000 ................................................... 3-3
Digital Input / Output Mode Commands for ioLogik E2000........................................ 3-3
Counter Commands for ioLogik E2000, R2000 ........................................................... 3-4
Digital Output Commands............................................................................................ 3-4
Digital Output Commands for ioLogik E2000, R2000................................................. 3-5
Digital Output Commands for ioLogik 4000................................................................ 3-5
Pulse Output Commands for ioLogik E2000, R2000 ................................................... 3-5
Analog Input Commands.............................................................................................. 3-6
Analog Input Commands for ioLogik E2000, R2000................................................... 3-6
Analog Output Commands ........................................................................................... 3-6
Analog Output Commands for ioLogik E2000, R2000 ................................................ 3-7
Analog Output Commands for ioLogik 4000 ............................................................... 3-7
RTD Commands ........................................................................................................... 3-7
Thermocouple Commands............................................................................................ 3-8
Click&Go Logic Commands................................................................................................ 3-8
Active I/O Message Commands ........................................................................................... 3-8
Chapter 4. System Command Sets ............................................................................4-1
RS-232/RS-485 I/O Connect Commands ............................................................................. 4-2
Ethernet I/O Connect Commands......................................................................................... 4-4
General Commands .............................................................................................................. 4-5
Special Commands for ioLogik E2000, R2000 .................................................................... 4-7
Special Commands for ioLogik 4000 ................................................................................... 4-7
Chapter 5. Modbus Command Sets ...........................................................................5-1
Chapter 6. Direct I/O Command Sets .........................................................................6-1
Digital Input Commands ...................................................................................................... 6-2
Digital Input Commands for ioLogik E2000, R2000 ........................................................... 6-3
Counter Commands for ioLogik E2000, R2000................................................................... 6-6
Digital Output Commands.................................................................................................. 6-18
Digital Output Commands for ioLogik E2000, R2000....................................................... 6-22
Digital Input/Output Commands for ioLogik E2000.......................................................... 6-25
Digital Output Commands for ioLogik 4000...................................................................... 6-27
Pulse Output Commands for ioLogik E2000, R2000 ......................................................... 6-29
Analog Input Commands.................................................................................................... 6-42
Analog Input Commands for ioLogik E2000, R2000......................................................... 6-44
Analog Output Commands ................................................................................................. 6-50
Analog Output Commands for ioLogik E2000, R2000 ...................................................... 6-58
Analog Output Commands for ioLogik 4000 ..................................................................... 6-63
RTD Commands ................................................................................................................. 6-65
Thermocouple Commands.................................................................................................. 6-84
Chapter 7. Click&Go Logic Commands .....................................................................7-1
Chapter 8. Active I/O Message Commands ...............................................................8-1
Chapter 9. Return Codes.............................................................................................9-1
Chapter 10. Product Model and ID Reference Table.................................................10-1
ioLogik 4000 ...................................................................................................................... 10-1
ioLogik E2000 and R2000.................................................................................................. 10-2
1
1
1
11
1
1
1
11
Chapter 1. Overview
This reference introduces the MXIO Linux Library for Moxa’s ioLogik 4000, E2000, and R2000
remote I/O.
The following topics are covered in this chapter:
What is the MXIO Linux Library?
Supported Platforms
Supported I/O Modules
Moxa Library Comparison
ioLogik MXIO DLL API Reference Overview
1-2
What is the MXIO Linux Library?
The MXIO Linux Library is a set of tools for programmers to use with Moxa’s ioLogik 4000, E2000,
and R2000 remote I/O. Programmers can use the library when developing applications to manage
I/O devices and obtain I/O data remotely over an Ethernet or RS-485 network. The MXIO Linux
Library is designed for x86 platforms and Moxa’s UC-7100-LX, UC-7400-LX, and IA-240-LX line
of embedded computers.
Supported Platforms
z arm-elf-mxio-library-x.x.x.x.sh – for UC-7100-LX line
z mxsacleb-mxio-library-x.x.x.x.sh – for UC-7400-LX line
z mxio-library-x.x.x.x.sh – for x86
z arm-linux-mxio-library-x.x.x.x.sh - for IA-240-LX line
Supported I/O Modules
For a list of I/O modules that are supported by this library, please refer to Chapter 10, Product
Model and ID Reference Table.
ATTENTION
Click&Go logic and active I/O messaging are supported by the ioLogik E2000 line only.
Moxa Library Comparison
Function Windows PC-Linux 2.4
PC-Linux 2.6
UC-7110-LX
UC-7112-LX
UC-7408-LX
UC-7420-LX IA-240-LX
MXSIO_OpenCommport 3 3 3 3 3(COM) (ttyS0…) (ttyM0…) (ttyM0…) (ttyM0…)
MXSIO_CloseCommport 3 3 3 3 3
MXSIO_Connect 3 3 3 3 3
MXSIO_Disconnect 3 3 3 3 3
MXEIO_Init 3 - - - -
MXEIO_Exit 3 - - - -
MXEIO_Connect 3 3 3 3 3
MXEIO_Disconnect 3 3 3 3 3
MXEIO_CheckConnection 3 3 3 3 3
MXIO_GetDllVersion 3 3 3 3 3
MXIO_GetDllBuildDate 3 3 3 3 3
MXIO_GetModuleType 3 3 3 3 3
MXIO_ReadFirmwareRevi
sion
3 3 3 3 3
MXIO_ReadFirmwareDate 3 3 3 3 3
MXIO_Restart 3 3 3 3 3
MXIO_Reset 3 3 3 3 3
MXIO_ReadCoils 3 3 3 3 3
MXIO_WriteCoils 3 3 3 3 3
MXIO_ReadRegs 3 3 3 3 3
MXIO_WriteRegs 3 3 3 3 3
ioLogik MXIO DLL API Reference Overview
1-3
Function Windows PC-Linux 2.4
PC-Linux 2.6
UC-7110-LX
UC-7112-LX
UC-7408-LX
UC-7420-LX IA-240-LX
DI_Reads 3 3 3 3 3
DI_Read 3 3 3 3 3
DO_Reads 3 3 3 3 3
DO_Writes 3 3 3 3 3
DO_Read 3 3 3 3 3
DO_Write 3 3 3 3 3
DO_GetSafeValues 3 3 3 3 3
DO_SetSafeValues 3 3 3 3 3
DO_GetSafeValue 3 3 3 3 3
DO_SetSafeValue 3 3 3 3 3
AI_Reads 3 3 3 3 3
AI_Read 3 3 3 3 3
AI_ReadRaws 3 3 3 3 3
AI_ReadRaw 3 3 3 3 3
AO_Reads 3 3 3 3 3
AO_Writes 3 3 3 3 3
AO_Read 3 3 3 3 3
AO_Write 3 3 3 3 3
AO_ReadRaws 3 3 3 3 3
AO_WriteRaws 3 3 3 3 3
AO_ReadRaw 3 3 3 3 3
AO_WriteRaw 3 3 3 3 3
AO_GetSafeValues 3 3 3 3 3
AO_SetSafeValues 3 3 3 3 3
AO_GetSafeValue 3 3 3 3 3
AO_SetSafeValue 3 3 3 3 3
AO_GetSafeRaws 3 3 3 3 3
AO_SetSafeRaws 3 3 3 3 3
AO_GetSafeRaw 3 3 3 3 3
AO_SetSafeRaw 3 3 3 3 3
RTD_Reads 3 3 3 3 3
RTD_Read 3 3 3 3 3
RTD_ReadRaws 3 3 3 3 3
RTD_ReadRaw 3 3 3 3 3
RTD2K_ResetMin 3 3 3 3 3
RTD2K_ResetMins 3 3 3 3 3
RTD2K_ResetMax 3 3 3 3 3
RTD2K_ResetMaxs 3 3 3 3 3
RTD2K_ReadMinRaw 3 3 3 3 3
RTD2K_ReadMinRaws 3 3 3 3 3
RTD2K_ReadMaxRaw 3 3 3 3 3
RTD2K_ReadMaxRaws 3 3 3 3 3
RTD2K_ReadMin 3 3 3 3 3
RTD2K_ReadMins 3 3 3 3 3
RTD2K_ReadMax 3 3 3 3 3
ioLogik MXIO DLL API Reference Overview
1-4
Function Windows PC-Linux 2.4
PC-Linux 2.6
UC-7110-LX
UC-7112-LX
UC-7408-LX
UC-7420-LX IA-240-LX
RTD2K_ReadMaxs 3 3 3 3 3
RTD2K_GetStartStatus 3 3 3 3 3
RTD2K_SetStartStatus 3 3 3 3 3
RTD2K_GetStartStatuses 3 3 3 3 3
RTD2K_SetStartStatuses 3 3 3 3 3
RTD2K_GetSensorType 3 3 3 3 3
RTD2K_SetSensorType 3 3 3 3 3
RTD2K_GetSensorTypes 3 3 3 3 3
RTD2K_SetSensorTypes 3 3 3 3 3
RTD2K_GetEngUnit 3 3 3 3 3
RTD2K_SetEngUnit 3 3 3 3 3
RTD2K_GetEngUnits 3 3 3 3 3
RTD2K_SetEngUnits 3 3 3 3 3
RTD2K_GetMathPar 3 3 3 3 3
RTD2K_SetMathPar 3 3 3 3 3
RTD2K_GetMathPars 3 3 3 3 3
RTD2K_SetMathPars 3 3 3 3 3
TC_Reads 3 3 3 3 3
TC_Read 3 3 3 3 3
TC_ReadRaws 3 3 3 3 3
TC_ReadRaw 3 3 3 3 3
Module2K_GetSafeStatus 3 3 3 3 3
Module2K_ClearSafeStatus 3 3 3 3 3
Adp4K_ReadStatus 3 3 3 3 3
Adp4K_ClearStatus 3 3 3 3 3
Adp4K_ReadFirmwareRevi
sion
3 3 3 3 3
Adp4K_ReadFirmwareDate 3 3 3 3 3
DI2K_GetModes 3 3 3 3 3
DI2K_SetModes 3 3 3 3 3
DI2K_GetMode 3 3 3 3 3
DI2K_SetMode 3 3 3 3 3
DI2K_GetFilters 3 3 3 3 3
DI2K_SetFilters 3 3 3 3 3
DI2K_GetFilter 3 3 3 3 3
DI2K_SetFilter 3 3 3 3 3
DO2K_GetModes 3 3 3 3 3
DO2K_SetModes 3 3 3 3 3
DO2K_GetMode 3 3 3 3 3
DO2K_SetMode 3 3 3 3 3
DO2K_GetPowerOnValues 3 3 3 3 3
DO2K_SetPowerOnValues 3 3 3 3 3
DO2K_GetPowerOnValue 3 3 3 3 3
DO2K_SetPowerOnValue 3 3 3 3 3
Cnt2K_Reads 3 3 3 3 3
ioLogik MXIO DLL API Reference Overview
1-5
Function Windows PC-Linux 2.4
PC-Linux 2.6
UC-7110-LX
UC-7112-LX
UC-7408-LX
UC-7420-LX IA-240-LX
Cnt2K_Clears 3 3 3 3 3
Cnt2K_Read 3 3 3 3 3
Cnt2K_Clear 3 3 3 3 3
Cnt2K_GetOverflows 3 3 3 3 3
Cnt2K_ClearOverflows 3 3 3 3 3
Cnt2K_GetOverflow 3 3 3 3 3
Cnt2K_ClearOverflow 3 3 3 3 3
Cnt2K_GetFilters 3 3 3 3 3
Cnt2K_SetFilters 3 3 3 3 3
Cnt2K_GetFilter 3 3 3 3 3
Cnt2K_SetFilter 3 3 3 3 3
Cnt2K_GetStartStatuses 3 3 3 3 3
Cnt2K_SetStartStatuses 3 3 3 3 3
Cnt2K_GetStartStatus 3 3 3 3 3
Cnt2K_SetStartStatus 3 3 3 3 3
Cnt2K_GetTriggerTypes 3 3 3 3 3
Cnt2K_SetTriggerTypes 3 3 3 3 3
Cnt2K_GetTriggerType 3 3 3 3 3
Cnt2K_SetTriggerType 3 3 3 3 3
Cnt2K_GetPowerOnValues 3 3 3 3 3
Cnt2K_SetPowerOnValues 3 3 3 3 3
Cnt2K_GetPowerOnValue 3 3 3 3 3
Cnt2K_SetPowerOnValue 3 3 3 3 3
Cnt2K_GetSafeValues 3 3 3 3 3
Cnt2K_SetSafeValues 3 3 3 3 3
Cnt2K_GetSafeValue 3 3 3 3 3
Cnt2K_SetSafeValue 3 3 3 3 3
Pulse2K_GetSignalWidths 3 3 3 3 3
Pulse2K_SetSignalWidths 3 3 3 3 3
Pulse2K_GetSignalWidth 3 3 3 3 3
Pulse2K_SetSignalWidth 3 3 3 3 3
Pulse2K_GetOutputCounts 3 3 3 3 3
Pulse2K_SetOutputCounts 3 3 3 3 3
Pulse2K_GetOutputCount 3 3 3 3 3
Pulse2K_SetOutputCount 3 3 3 3 3
Pulse2K_GetStartStatuses 3 3 3 3 3
Pulse2K_SetStartStatuses 3 3 3 3 3
Pulse2K_GetStartStatus 3 3 3 3 3
Pulse2K_SetStartStatus 3 3 3 3 3
Pulse2K_GetPowerOnValu 3 3 3 3 3
Pulse2K_SetPowerOnValue 3 3 3 3 3
Pulse2K_GetPowerOnValu 3 3 3 3 3
ioLogik MXIO DLL API Reference Overview
1-6
Function Windows PC-Linux 2.4
PC-Linux 2.6
UC-7110-LX
UC-7112-LX
UC-7408-LX
UC-7420-LX IA-240-LX
Pulse2K_SetPowerOnValue 3 3 3 3 3
Pulse2K_GetSafeValues 3 3 3 3 3
Pulse2K_SetSafeValues 3 3 3 3 3
Pulse2K_GetSafeValue 3 3 3 3 3
Pulse2K_SetSafeValue 3 3 3 3 3
AI2K_ReadMins 3 3 3 3 3
AI2K_ReadMinRaws 3 3 3 3 3
AI2K_ResetMins 3 3 3 3 3
AI2K_ReadMin 3 3 3 3 3
AI2K_ReadMinRaw 3 3 3 3 3
AI2K_ResetMin 3 3 3 3 3
AI2K_ReadMaxs 3 3 3 3 3
AI2K_ReadMaxRaws 3 3 3 3 3
AI2K_ResetMaxs 3 3 3 3 3
AI2K_ReadMax 3 3 3 3 3
AI2K_ReadMaxRaw 3 3 3 3 3
AI2K_ResetMax 3 3 3 3 3
AI2K_GetRanges 3 3 3 3 3
AI2K_SetRanges 3 3 3 3 3
AI2K_GetRange 3 3 3 3 3
AI2K_SetRange 3 3 3 3 3
AO2K_GetRanges 3 3 3 3 3
AO2K_SetRanges 3 3 3 3 3
AO2K_GetRange 3 3 3 3 3
AO2K_SetRange 3 3 3 3 3
AO2K_GetPowerOnValues 3 3 3 3 3
AO2K_SetPowerOnValues 3 3 3 3 3
AO2K_GetPowerOnValue 3 3 3 3 3
AO2K_SetPowerOnValue 3 3 3 3 3
AO2K_GetPowerOnRaws 3 3 3 3 3
AO2K_SetPowerOnRaws 3 3 3 3 3
AO2K_GetPowerOnRaw 3 3 3 3 3
AO2K_SetPowerOnRaw 3 3 3 3 3
DIO2K_GetIOMode 3 3 3 3 3
DIO2K_SetIOMode 3 3 3 3 3
DIO2K_GetIOModes 3 3 3 3 3
DIO2K_SetIOModes 3 3 3 3 3
Logic2K_GetStartStatus 3 3 3 3 3
Logic2K_SetStartStatus 3 3 3 3 3
Message2K_Start 3 3 3 3 3
Message2K_Stop 3 3 3 3 3
2
2
2
22
2
2
2
22
Chapter 2. Programming Flow
The process used to obtain access to a remote I/O device on an ioLogik is similar for both Ethernet
and serial interfaces. Five different scenarios are described below.
The following topics are covered:
Connecting to a Single Ethernet I/O
Connecting to Multiple Ethernet I/O
Connecting to a Single Serial I/O
Connecting to Multiple RS-485 I/O
Connecting to the ioLogik E2000 and Attached RS-485 I/O
Modbus Command Sets vs. Direct I/O Command Sets
¾ Modbus Command Sets
¾ Direct I/O Command Sets
ioLogik MXIO DLL API Reference Programming Flow
2-2
Connecting to a Single Ethernet I/O
The MXIO Linux Library establishes a data tunnel using Modbus commands to communicate with
the Ethernet I/O. Access is usually established using TCP port number 502.
ioLogik 4000 remote I/O
IP: 192.168.8.1
Port: 502
ioLogik E2000 Ethernet I/O
IP: 192.168.8.1
Port: 502
Three steps are required to access remote I/O data using the MXIO Linux Library.
1. Use MXEIO_Connect to connect to the Ethernet I/O using IP:Port (e.g., 192.168.8.1:502).
MXEIO_Connect should return a handle.
2. Use the handle to access the desired I/O point with Modbus commands or direct I/O
commands.
3. To finish the operation, use MXEIO_Disconnect to release Windows system resources.
Program Flow I.
Connecting to a Single Ethernet I/O
MXEIO Connect
Direct I/O
Command Sets Modbus Command Sets
MXEIO Disconnect
ioLogik MXIO DLL API Reference Programming Flow
2-3
Connecting to Multiple Ethernet I/O
Before multiple Ethernet I/O can be accessed over the network, make sure that each I/O has a
unique IP address.
ioLogik 4000 remote I/O
IP: 192.168.8.1
Port: 502
ioLogik E2000 Ethernet I/O
IP: 192.168.8.2
Port: 502
Each Ethernet I/O needs a unique handle in order to be accessed. Use MXEIO_Connect to obtain
the handle for each Ethernet I/O.
Program Flow II.
Connecting to Multiple Ethernet I/O.
MXEIO Connect # 1 MXEIO Connect # 2
Direct I/O
Command Sets Modbus Command Sets
MXEIO Disconnect # 1
MXEIO Disconnect # 2
ioLogik MXIO DLL API Reference Programming Flow
2-4
Connecting to a Single Serial I/O
ioLogik 4000 and R2000 I/O can be used in RS-485, RS-232 control networks. For access to I/O
over RS-485 or RS-232, please pay attention to the following:
z Your computer must be equipped with an RS-232 or RS-485 communication port.
z Make sure that the baudrate and communication parameters for the computer and the I/O are
identical.
z Make sure that the I/O is running under Modbus/RTU
ioLogik 4000 remote I/O
ID: 10
ioLogik E2000 Ethernet I/O
ID: 10
Four steps are required to access remote I/O data using the MXIO Linux Library.:
1. Use MXSIO_OpenCommport to open the COM port and connect to the serial I/O.
2. Use MXSIO_Connect to connect to the serial I/O using the Unit ID (e.g., 10).
MXSIO_Connect should return a handle.
3. Use the handle to access the desired I/O point with Modbus command sets or direct I/O
command sets.
4. To finish the operation, use MXSIO_Disconnect and MXSIO_CloseCommport to release
Windows system resources.
Program Flow III.
Connecting Single RS-485 I/O.
MXSIO_OpenCommport
MXSIO_Connect
Direct I/O
Command Sets Modbus Command Sets
MXSIO_ Disconnect
MXSIO_Closecommport
ioLogik MXIO DLL API Reference Programming Flow
2-5
Connecting to Multiple RS-485 I/O
In most real world applications, multiple RS-485 I/O are often connected to the same network.
One RS-485 network can support up to 32 nodes.
ioLogik 4000 remote I/O
ID: 01
ioLogik E2000 Ethernet I/O
ID: 32
Each serial I/O requires a unique handle. Make sure each serial I/O server already has its own
handle before accessing the I/O points.
Program Flow IV.
Connecting Multiple Serial I/O.
MXSIO_OpenCommport
MXSIO_Connect#1 MXSIO_Connect#2
Direct I/O
Command Sets Modbus Command Sets
MXSIO_ Disconnect #2
MXSIO_ Disconnect #1
MXSIO_Closecommport
ioLogik MXIO DLL API Reference Programming Flow
2-6
Connecting to the ioLogik E2000 and Attached RS-485 I/O
It is possible to combine Ethernet and RS-485 connections, as shown in the following figure.
Program Flow V.
Connecting to the ioLogik E2000 Ethernet I/O and Attached RS-485 I/O.
MXEIO Connect # 1
MXEIO Connect # 2 MXEIO Connect # 3
Modbus Command
Sets
Direct I/O
Command Sets
MXEIO Disconnect # 3MXEIO Disconnect # 2
MXEIO Disconnect # 1
ioLogik MXIO DLL API Reference Programming Flow
2-7
Modbus Command Sets vs. Direct I/O Command Sets
The MXIO Library offers two options for accessing I/O data from ioLogik 4000, E2000, and
R2000 I/O.
Modbus Command Sets
ioLogik 4000, E2000, and R2000 I/O use Modbus/TCP and Modbus/RTU to communicate with
host computers. The MXIO Library includes Modbus command sets that use the Modbus protocol
data format to access I/O data. This is a good choice if you are already familiar with the Modbus
protocol and prefer using the Modbus data structure.
Direct I/O Command Sets
As an alternative to the complex data structure of Modbus, the MXIO library also provides direct
I/O command sets for a more intuitive method of obtaining I/O data. With direct I/O command sets,
each I/O point or channel can be accessed using the physical slot number and channel number.
This allows users to obtain I/O data quickly and easily.
3
3
3
33
3
3
3
33
Chapter 3. MXIO API Overview
The MXIO API is organized into five types of commands:
System Command Sets
¾ RS-485/RS-232 I/O Connect Commands
¾ Ethernet I/O Connect Commands
¾ General Commands
¾ Special Commands for ioLogik E2000, R2000
¾ Special Commands for ioLogik 4000
Modbus Command Sets
Direct I/O Command Sets
¾ Digital Input Commands
¾ Digital Input Commands for ioLogik E2000, R2000
¾ Digital Input / Output Mode Commands for ioLogik
E2000
¾ Counter Commands for ioLogik E2000, R2000
¾ Digital Output Commands
¾ Digital Output Commands for ioLogik E2000, R2000
¾ Digital Output Commands for ioLogik 4000
¾ Pulse Output Commands for ioLogik E2000, R2000
¾ Analog Input Commands
¾ Analog Input Commands for ioLogik E2000, R2000
¾ Analog Output Commands
¾ Analog Output Commands for ioLogik E2000, R2000
¾ Analog Output Commands for ioLogik 4000
¾ RTD Commands
¾ Thermocouple Commands
Click&Go Logic Commands
Active I/O Message Commands
ioLogik MXIO DLL API Reference MXIO API Overview
3-2
System Command Sets
RS-485/RS-232 I/O Connect Commands
Function Name
MXSIO_OpenCommport
MXSIO_CloseCommport
MXSIO_Connect
MXSIO_Disconnect
Ethernet I/O Connect Commands
Function Name
MXEIO_Init
MXEIO_Exit
MXEIO_Connect
MXEIO_Disconnect
MXEIO_CheckConnection
General Commands
Function Name
MXIO_GetDllVersion
MXIO_GetDllBuildDate
MXIO_GetModuleType
MXIO_ReadFirmwareRevision
MXIO_ReadFirmwareDate
MXIO_Restart
MXIO_Reset
Special Commands for ioLogik E2000, R2000
Function Name
Module2K_GetSafeStatus
Module2K_ClearSafeStatus
Special Commands for ioLogik 4000
Function Name
Adp4K_ReadFirmwareRevision
Adp4K_ReadStatus
Adp4K_ClearStatus
Adp4K_ReadFirmwareDate
Adp4K_ReadSlotAmount
Adp4K_ReadAlarmedSlot
Adp4K_ReadAlarmedSlot
ioLogik MXIO DLL API Reference MXIO API Overview
3-3
Modbus Command Sets
Function Name
MXIO_ReadCoils
MXIO_WriteCoils
MXIO_ReadRegs
MXIO_WriteRegs
Direct I/O Command Sets
Digital Input Commands
Function Name
DI_Reads
DI_Read
Digital Input Commands for ioLogik E2000, R2000
Function Name
DI2K_GetModes
DI2K_SetModes
DI2K_GetMode
DI2K_SetMode
DI2K_GetFilters
DI2K_SetFilters
DI2K_GetFilter
DI2K_SetFilter
Digital Input / Output Mode Commands for ioLogik E2000
Function Name
DIO2K_GetIOMode
DIO2K_SetIOMode
DIO2K_GetIOModes
DIO2K_SetIOModes
ioLogik MXIO DLL API Reference MXIO API Overview
3-4
Counter Commands for ioLogik E2000, R2000
Function Name
Cnt2K_Reads
Cnt2K_Clears
Cnt2K_Read
Cnt2K_Clear
Cnt2K_GetOverflows
Cnt2K_ClearOverflows
Cnt2K_GetOverflow
Cnt2K_ClearOverflow
Cnt2K_GetFilters
Cnt2K_SetFilters
Cnt2K_GetFilter
Cnt2K_SetFilter
Cnt2K_GetStartStatuses
Cnt2K_SetStartStatuses
Cnt2K_GetStartStatus
Cnt2K_SetStartStatus
Cnt2K_GetTriggerTypes
Cnt2K_SetTriggerTypes
Cnt2K_GetTriggerType
Cnt2K_SetTriggerType
Cnt2K_GetPowerOnValues
Cnt2K_SetPowerOnValues
Cnt2K_GetPowerOnValue
Cnt2K_SetPowerOnValue
Cnt2K_GetSafeValues
Cnt2K_SetSafeValues
Cnt2K_GetSafeValue
Cnt2K_SetSafeValue
Digital Output Commands
Function Name
DO_Reads
DO_Read
DO_Writes
DO_Write
DO_GetSafeValues
DO_SetSafeValues
DO_GetSafeValue
DO_SetSafeValue
ioLogik MXIO DLL API Reference MXIO API Overview
3-5
Digital Output Commands for ioLogik E2000, R2000
Function Name
DO2K_GetModes
DO2K_SetModes
DO2K_GetMode
DO2K_SetMode
DO2K_GetPowerOnValues
DO2K_SetPowerOnValues
DO2K_GetPowerOnValue
DO2K_SetPowerOnValue
Digital Output Commands for ioLogik 4000
Function Name
DO4K_GetSafeActions
DO4K_SetSafeActions
DO4K_GetSafeAction
DO4K_SetSafeAction
Pulse Output Commands for ioLogik E2000, R2000
Function Name
Pulse2K_GetSignalWidths
Pulse2K_SetSignalWidths
Pulse2K_GetSignalWidth
Pulse2K_SetSignalWidth
Pulse2K_GetSignalWidths32: Only for ioLogik E2260
Pulse2K_SetSignalWidths32: Only for ioLogik E2260
Pulse2K_GetSignalWidth32: Only for ioLogik E2260
Pulse2K_SetSignalWidth32: Only for ioLogik E2260
Pulse2K_GetOutputCounts
Pulse2K_SetOutputCounts
Pulse2K_GetOutputCount
Pulse2K_SetOutputCount
Pulse2K_GetStartStatuses
Pulse2K_SetStartStatuses
Pulse2K_GetStartStatus
Pulse2K_SetStartStatus
Pulse2K_GetPowerOnValues
Pulse2K_SetPowerOnValues
Pulse2K_GetPowerOnValue
Pulse2K_SetPowerOnValue
Pulse2K_GetSafeValues
Pulse2K_SetSafeValues
Pulse2K_GetSafeValue
Pulse2K_SetSafeValue
ioLogik MXIO DLL API Reference MXIO API Overview
3-6
Analog Input Commands
Function Name
AI_Reads
AI_Read
AI_ReadRaws
AI_ReadRaw
Analog Input Commands for ioLogik E2000, R2000
Function Name
AI2K_ReadMins
AI2K_ReadMinRaws
AI2K_ResetMins
AI2K_ReadMin
AI2K_ReadMinRaw
AI2K_ResetMin
AI2K_ReadMaxs
AI2K_ReadMaxRaws
AI2K_ResetMaxs
AI2K_ReadMax
AI2K_ReadMaxRaw
AI2K_ResetMax
AI2K_GetRanges
AI2K_SetRanges
AI2K_GetRange
AI2K_SetRange
Analog Output Commands
Function Name
AO_Reads
AO_Writes
AO_Read
AO_Write
AO_ReadRaws
AO_WriteRaws
AO_ReadRaw
AO_WriteRaw
AO_GetSafeValues
AO_SetSafeValues
AO_GetSafeValue
AO_SetSafeValue
AO_GetSafeRaws
AO_SetSafeRaws
AO_GetSafeRaw
AO_SetSafeRaw
ioLogik MXIO DLL API Reference MXIO API Overview
3-7
Analog Output Commands for ioLogik E2000, R2000
Function Name
AO2K_GetRanges
AO2K_SetRanges
AO2K_GetRange
AO2K_SetRange
AO2K_GetPowerOnValues
AO2K_SetPowerOnValues
AO2K_GetPowerOnValue
AO2K_SetPowerOnValue
AO2K_GetPowerOnRaws
AO2K_SetPowerOnRaws
AO2K_GetPowerOnRaw
AO2K_SetPowerOnRaw
Analog Output Commands for ioLogik 4000
Function Name
AO4K_GetSafeActions
AO4K_SetSafeActions
AO4K_GetSafeAction
AO4K_SetSafeAction
RTD Commands
Function Name
RTD_Reads
RTD_Read
RTD_ReadRaws
RTD_ReadRaw
RTD2K_ResetMin
RTD2K_ResetMins
RTD2K_ResetMax
RTD2K_ResetMaxs
RTD2K_ReadMinRaw
RTD2K_ReadMinRaws
RTD2K_ReadMaxRaw
RTD2K_ReadMaxRaws
RTD2K_ReadMin
RTD2K_ReadMins
RTD2K_ReadMax
RTD2K_ReadMaxs
RTD2K_GetStartStatus
RTD2K_SetStartStatus
RTD2K_GetStartStatuses
RTD2K_SetStartStatuses
ioLogik MXIO DLL API Reference MXIO API Overview
3-8
Function Name
RTD2K_GetSensorType
RTD2K_SetSensorType
RTD2K_GetSensorTypes
RTD2K_SetSensorTypes
RTD2K_GetEngUnit
RTD2K_SetEngUnit
RTD2K_GetEngUnits
RTD2K_GetMathPar
RTD2K_SetMathPar
RTD2K_GetMathPars
RTD2K_SetMathPars
Thermocouple Commands
Function Name
TC_Reads
TC_Read
TC_ReadRaws
TC_ReadRaw
Click&Go Logic Commands
Function Name
Logic2K_GetStartStatus
Logic2K_SetStartStatus
Active I/O Message Commands
Function Name
Message2K_Start
Message2K_Stop
4
4
4
44
4
4
4
44
Chapter 4. System Command Sets
System commands include functions that initialize the connection between a host computer and the
I/O. In addition, system commands include functions for obtaining hardware and status information
of the I/O itself.
The following topics are covered:
RS-232/RS-485 I/O Connect Commands
Ethernet I/O Connect Commands
General Commands
Special Commands for ioLogik E2000, R2000
Special Commands for ioLogik 4000
ioLogik MXIO DLL API Reference System Commands Sets
4-2
RS-232/RS-485 I/O Connect Commands
MXSIO_OpenCommport This function opens the local COM port of the host computer with
communication parameters.
C/C++
Arguments
Return Value
int MXSIO_OpenCommport ( char *szCommport,
DWORD dwBaudrate,
BYTE bytDataFormat,
DWORD dwTimeout,
int * hCommport);
szCommport: Name of the common port, e.g., “ttyM0”.
dwBaudrate: Baudrate, from 4,800 to 115,200 bps. Does not
support 1200 or 2400 bps.
bytDataFormat: Transmission data format.
bit_cnt
(bit
0,
1)
= 0x00
=
bit_5
0x01
=
bit_6
0x02
=
bit_7
0x03
=
bit_8
stop_cnt
(bit
2)
=
0x00
=
stop_1
0x04
=
stop_2
parity
(bit
3,
4,
5)
=
0x00
=
none
0x08
=
odd
0x18
=
even
0x28
=
mark
0x38
=
space
dwTimeout: Timeout in milliseconds for serial adapter
communication
hCommport: Handle of the opened COM port.
Succeed MXIO_OK.
Fail Refer to Return Codes.
MXSIO_CloseCommport This closes the COM port; the COM port handle will be invalid.
C/C++
Arguments
Return Value
int MXSIO_CloseCommport ( int hCommport);
hCommport: Handle of the opened COM port.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference System Commands Sets
4-3
MXSIO_Connect
Based on the COM port handle or ioLogik E2000 handle, users
must use this function to establish an I/O device handle for each
RS-485 or RS-232 I/O. A COM port handle can connect one
RS-232 I/O or up to 32 RS-485 I/O.
C/C++
Arguments
Return Value
int MXSIO_Connect ( int hCommport,
BYTE bytUnitID,
BYTE bytTransmissionMode,
int *hConnection);
hCommport: I/O over serial interface will get a serial
handle. I/O server over Ethernet interface
will get an Ethernet handle.
For more details, please see the Program
Flow IV and Program Flow V in Chapter 2.
bytUnitID: Modbus unit ID of the I/O, from 01
to 99.
bytTransmissionMod Modbus transmission format.
ex: 0: RTU mode
1: ASCII mode.
Note that the protocol settings must agree
with the hardware settings on the ioLogik
4000 I/O, and the ioLogik R2000 only
supports RTU.
hConnection: Handle of the I/O device connection.
Succeed MXIO_OK.
Fail Refer to Return Codes.
MXSIO_Disconnect This will disconnect the RS-485/232 I/O. The I/O handle will be
invalid.
C/C++
Arguments
Return Value
int MXSIO_Disconnect ( int hConnection);
hConnection: Handle of the I/O device connection.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference System Commands Sets
4-4
Ethernet I/O Connect Commands
MXEIO_Init Initiate the socket, only for windows OS.
C/C++
Arguments
Return Value
int MXEIO_Init ();
None
Succeed MXIO_OK.
Fail Refer to Return Codes.
MXEIO_Exit To terminates use of the socket, only for windows OS.
C/C++
Arguments
Return Value
int MXEIO_Exit ();
None
None.
MXEIO_Connect
This function establishes a connection to the port of the Ethernet
I/O. Once a connection is established, a handle will be
returned for additional functions.
C/C++
Arguments
Return Value
int MXEIO_Connect ( char *szIP,
WORD wPort,
DWORD dwTimeOut,
int * hConnection);
szIP: IP address of the Ethernet I/O to be
connected.
wPort: TCP port number of Ethernet I/O.
Please use 502 for the ioLogik 4000 and
E2000.
dwTimeOut: Timeout value in milliseconds for
establishing a network connection with th
e
ioLogik Ethernet adapter.
hConnection: Handle of the I/O device connection.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference System Commands Sets
4-5
MXEIO_Disconnect This will close the connection with the Ethernet I/O; the handle
will be invalid.
C/C++
Arguments
Return Value
int MXEIO_Disconnect (int hConnection);
hConnection: Handle of the connection.
Succeed MXIO_OK.
Fail Refer to Return Codes.
MXEIO_CheckConnection
This establishes a connection to the port of the Ethernet I/O. Once
the connection is established, a handle will be returned for
additional functions.
C/C++
Arguments
Return Value
int MXEIO_CheckConnection( inth Connection,
DWORD dwTimeOut,
BYTE *bytStatus);
hConnection: Handle of the I/O connection.
dwTimeOut: Timeout value in milliseconds for network
connection.
bytStatus Connection status.
0: Check connection ok.
1: Check connection fail.
2: Check connection timeout.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
General Commands
MXIO_GetDllVersion This will get the DLL version.
C/C++
Arguments
Return Value
int MXIO_GetDllVersion ();
None
Succeed The DLL version. Version 2.0.0.0 is
expressed as value 0x2000.
MXIO_GetDllBuildDate This will get the DLL release date.
C/C++
Arguments
Return Value
int MXIO_GetDllBuildDate();
None
Succeed Return the DLL release date. If the
value is 0x20071001, then the date is
2007/10/01.
ioLogik MXIO DLL API Reference System Commands Sets
4-6
MXIO_GetModuleType This function reports the model name of the network adapter and
I/O modules.
C/C++
Arguments
Return Value
int MXIO_GetModuleType ( int hConnection,
BYTE bytSlot,
WORD * wType);
hConnection: I/O handle for a connection.
bytSlot: Slot number of the I/O to be checked,
from 0 to 32. The ioLogik 4000
network adapters slot number is always 0.
This parameter is inactive for ioLogik
E2000 and R2000 I/O.
wType: A pointer to the model name. For the model
name NA-4010, the value would be
0x4010
Refer to the Product Model and ID
Reference Table for more information.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
MXIO_ReadFirmwareRev
ision
This function reports the firmware revision for the ioLogik 4000
(network adapter), E2000, or R2000.
C/C++
Arguments
Return Value
int MXIO_ReadFirmwareRevision ( int hConnection,
BYTE bytRevision[ ] );
hConnection: I/O handle for a connection.
bytRevision: Stores the firmware revision
bytRevision[0] = major (A)
bytRevision[1] = minor (B)
bytRevision[2] = release (C)
bytRevision[3] = build (D)
format is A.B.C.D
Succeed MXIO_OK.
Fail R
e
f
e
r
t
R
et
ur
n
C
ode
s
MXIO_ReadFirmwareDate This function reports the firmware release date for the ioLogik
4000 (network adapter), E2000, or R2000.
C/C++
Arguments
Return Value
int MXIO_ReadFirmwareDate ( int hConnection,
WORD wDate[ ] );
hConnection: I/O handle for a connection.
wDate: Firmware release date. For a firmware
release date of July 5, 2005, Word 0 =
0x0705 and Word 1 = 0x2005.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference System Commands Sets
4-7
MXIO_Restart This function is used to restart the I/O.
C/C++
Arguments
Return Value
int MXIO_Restart ( int hConnection);
hConnection: I/O handle for a connection.
Succeed MXIO_OK.
Fail Refer to Return Codes.
MXIO_Reset This function is used to reset the I/O.
C/C++
Arguments
Return Value
int MXIO_Reset ( int hConnection);
hConnection: I/O handle for a connection.
Succeed MXIO_OK.
Fail Refer to Return Codes.
Special Commands for ioLogik E2000, R2000
Module2K_GetSafeStatus This function code is used to get the safe status of an ioLogik
E2000 or R2000 I/O.
C/C++
Arguments
Return Value
int Module2K_GetSafeStatus ( int hConnection,
WORD * wStatus);
hConnection: The handle for a connection.
wStatus: A pointer to the specific module’s safe
status. The values are:
0: Normal.
1: Safe mode.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
Module2K_ClearSafeStatus This function code is used to get the safe status of an ioLogik
E2000 or R2000 I/O.
C/C++
Arguments
Return Value
int Module2K_ClearSafeStatus ( int hConnection);
hConnection: The handle for a connection.
Succeed MXIO_OK.
Fail Refer to Return Codes.
Special Commands for ioLogik 4000
Adp4K_ReadFirmwareRevi
sion
This function code is used to read the firmware revision.
C/C++
Arguments
Return Value
int Adp4K_ReadFirmwareRevision ( int hConnection,
WORD * wRevision);
hConnection: The handle for an I/O connection.
wRevision: Stores the firmware revision. For revision
1.01, the value will be 0X0101.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference System Commands Sets
4-8
Adp4K_ReadStatus This function code is used to read the status of the ioLogik 4000
adapter.
C/C++
Arguments
Return Value
int Adp4K_ReadStatus ( int hConnection ,
WORD *wBusStatus,
WORD *wFPStatus,
WORD *wEWStatus,
WORD *wESStatus,
WORD *wECStatus);
hConnection: The handle for an I/O connection.
wBusStatus: Stores the bus status in numerical format.
The values are:
0: Normal Operation.
1: Bus Standby.
2: Bus Communication Fault.
3: Slot Configuration Failed.
4: No Expansion Slot.
wFPStatus: Stores the field power status in numerical
format. The values are:
0: 24 VDC Field Power On.
1: 24 VDC Field Power Off.
wEWStatus: Stores the Watchdog status in numerical
format. The values are:
0: No Error.
1: Watchdog activated.
wESStatus: Stores the Modbus Setup Error status in
numeric data format, supported by NA-4020
& NA-4021 only.
0: No Error.
1: Modbus Setup Error.
wECStatus: Stores the Modbus Checksum Error status,
supported by NA-4020 & NA-4021 only.
0: No Error.
1: Three continuous CRC/LRC checksum
errors have occurred since last restart, last
clear counters operation, or last power-up.
Succeed MXIO_OK.
ioLogik MXIO DLL API Reference System Commands Sets
4-9
Adp4K_ClearStatus This function code is used to clear the status of the ioLogik 4000
adapters.
C/C++
Arguments
Return Value
int Adp4K_ClearStatus ( int hConnection);
hConnection: The handle for an I/O connection.
Succeed MXIO_OK.
Fail Refer to Return Codes.
Adp4K_ReadFirmwareDate This function code is used to read the firmware release date.
C/C++
Arguments
Return Value
int Adp4K_ReadFirmwareDate ( int hConnection,
WORD wDate[ ]);
hConnection: The handle for a connection.
wDate: An array that stores the firmware release
date. For a firmware release date of July 5,
2005, wDate[0] will be 0X0705 and
wDate[1] will be 0X2005.
Succeed MXIO_OK.
Fail Refer to Return Codes.
Adp4K_ReadSlotAmount This function code is used to read the number of expansion slots.
C/C++
Arguments
Return Value
int Adp4K_ReadSlotAmount ( int hConnection,
WORD *wAmount);
hConnection: The handle for a connection.
wAmount: A pointer to the number of expansion slots.
Succeed MXIO_OK.
Fail Refer to Return Codes.
Adp4K_ReadAlarmedSlot This function code is used to read the number of expansion slots.
C/C++
Arguments
Return Value
int Adp4K_ReadAlarmedSlot ( int hConnection,
DWORD *dwAlarm);
hConnection: The handle for a connection.
dwAlarm: A pointer to the Alarm slot list. The
corresponding bit represents slot position.
The wAlarm bit 0 is represented by the first
slot and bit 31 is represented by the last slot.
The values are:
0: Normal slot.
1: Alarm slot.
Succeed MXIO_OK.
Fail
Refer
t
Ret
ur
n
C
ode
s
.
5
5
5
55
5
5
5
55
Chapter 5. Modbus Command Sets
Four basic Modbus commands are provided in the Modbus command set. However, you must refer
to the Modbus reference table in ioAdmin to extract data from the Modbus packet.
MXIO_ReadCoils This function reads the on/off status for a contiguous group of
coils on the same I/O.
C/C++
Arguments
Return Value
int MXIO_ReadCoils ( int hConnection,
BYTE bytCoilType,
WORD wStartCoil,
WORD wCount,
BYTE bytCoils[ ]);
hConnection: Handle for the I/O connection.
bytCoilType: Coil type to be read.
1: read coils (output bit).
2: read discrete (input bit).
wStartCoil: Specifies the starting coil address to be read.
The address is beginning at 0.
wCount: The number of coils to be read.
bytCoils: An array that stores the status of coils; each
byte holds eight coil values. Bit 0 of 1st byte
represents 1st coil status.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Modbus Command Sets
5-2
MXIO_WriteCoils This function code is used to write the contiguous status of an I/O
coils.
C/C++
Arguments
Return Value
int MXIO_WriteCoils ( int hConnection,
WORD wStartCoil,
WORD wCount,
BYTE bytCoils[ ]);
hConnection: Handle for the I/O connection.
wStartCoil: Specifies the starting coil to be written. The
address is beginning at 0.
wCount: The number of coils to be written.
bytCoils: An array that stores the coil value; each byte
holds eight coil values.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
MXIO_ReadRegs This function code is used to read the contents of a contiguous
block of the I/O holding registers.
C/C++
Arguments
Return Value
int MXIO_ReadRegs ( int hConnection,
BYTE bytRegisterType,
WORD wStartRegister,
WORD wCount,
WORD wRegister[ ]);
hConnection: The handle for an I/O connection.
bytRegisterType: Coil type to be read. The meaning for a value in
an entity is as follows:
3: read holding registers (output word).
4: read input register (input word).
wStartRegister: Specifies the starting register address. The
address is beginning at 0.
wCount: The number of coils to be read.
wRegister: An array that stores the register values.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Modbus Command Sets
5-3
MXIO_WriteRegs This function code is used to write the contents of a contiguous
block of the I/O holding registers.
C/C++
Arguments
Return Value
int MXIO_WriteRegs ( int hConnection,
WORD wStartRegister,
WORD wCount,
WORD wRegister[ ]);
hConnection: The handle for an I/O connection.
wStartRegister: Specifies the starting register address. The
address begins at 0.
wCount: The number of coils to be written.
wRegister: An array that stores the register values.
Succeed MXIO_OK.
Fail Refer to Return Codes.
6
6
6
66
6
6
6
66
Chapter 6. Direct I/O Command Sets
Direct I/O command sets provide an intuitive way to access the data for each channel.
The following topics are covered in this chapter:
Digital Input Commands
Digital Input Commands for ioLogik E2000, R2000
Digital Input / Output Mode Commands for ioLogik E2000
Counter Commands for ioLogik E2000, R2000
Digital Output Commands
Digital Output Commands for ioLogik E2000, R2000
Digital Output Commands for ioLogik 4000
Pulse Output Commands for ioLogik E2000, R2000
Analog Input Commands
Analog Input Commands for ioLogik E2000, R2000
Analog Output Commands
Analog Output Commands for ioLogik E2000, R2000
Analog Output Commands for ioLogik 4000
RTD Commands
Thermocouple Commands
Click&Go Logic Commands
Active I/O Message Commands
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-2
Digital Input Commands
DI_Reads This function code is used to read the status of a group of
contiguous D/I channels.
C/C++
Arguments
Return Value
int DI_Reads ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
DWORD * dwValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dwValue: A pointer to the contiguous D/I channel’s
values; each bit holds the value of one channel.
A bit value of 0 represents the digital input
status of the start channel. A bit value of 1
represents the second digital input channel’s
status. The values of the unused bits are
random.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
DI_Read This function code is used to read the status of a specific D/I
channel.
C/C++
Arguments
Return Value
int DI_Read ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
BYTE *bytValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytChannel: The desired channel.
bytValue: A pointer to a specific D/I channel’s status.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-3
Digital Input Commands for ioLogik E2000, R2000
DI2K_GetModes This function code is used to get the mode of contiguous D/I
channels.
C/C++
Arguments
Return Value
int DI2K_GetModes ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wMode[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
wMode: An array that stores the modes of the
contiguous D/I channels. wMode[0] represents
the value of the starting channel. The values
are:
0: D/I Mode.
1: Counter Mode.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
DI2K_SetModes This function code is used to set the mode of contiguous D/I
channels.
C/C++
Arguments
Return Value
int DI2K_SetModes ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wMode[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
wMode: An array that stores the modes of the
contiguous D/I channels. wMode [0] represents
the value of the starting channel. The values
are:
0: D/I Mode.
1: Counter Mode.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-4
DI2K_GetMode This function code is used to get the mode of a specific D/I
channel.
C/C++
Arguments
Return Value
int DI2K_GetMode ( int hConnection,
BYTE bytChannel,
WORD * wMode);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
wMode: A pointer to the mode of the desired D/I
channel. The values are:
0: D/I Mode.
1: Counter Mode.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
DI2K_SetMode This function code is used to set the mode of a specific D/I
channel.
C/C++
Arguments
Return Value
int DI2K_SetMode ( int hConnection,
BYTE bytChannel,
WORD wMode);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
wMode: A pointer to the mode of the desired D/I
channel. The values are:
0: D/I Mode.
1: Counter Mode.
Succeed MXIO_OK.
F
a
il R
e
f
e
r
t
o
R
et
ur
n
C
ode
s
.
DI2K_GetFilters This function code is used to get the filter of contiguous D/I
channels.
C/C++
Arguments
Return Value
int DI2K_GetFilters ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wFilter[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
wFilter: An array that stores the filter values of the
contiguous D/I channels. wFilter [0] represents
the value of the starting channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-5
DI2K_SetFilters This function code is used to set the filter of contiguous D/I
channels.
C/C++
Arguments
Return Value
int DI2K_SetFilters ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wFilter[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
wFilter: An array that stores the filter values of the
contiguous D/I channels. wFilter [0] represents
the value of the starting channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
DI2K_GetFilter This function code is used to get the filter of a specific D/I
channel.
C/C++
Arguments
Return Value
int DI2K_GetFilter ( int hConnection,
BYTE bytChannel,
WORD * wFilter);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
wFilter: A pointer to the filter value of the desired D/I
channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
DI2K_SetFilter This function code is used to set the filter of a specific D/I
channel.
C/C++
Arguments
Return Value
int DI2K_GetFilter ( int hConnection,
BYTE bytChannel,
WORD wFilter);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
wFilter: A pointer to the filter value of the desired D/I
channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-6
Counter Commands for ioLogik E2000, R2000
Cnt2K_Reads This function code is used to read the counter values of contiguous
D/I channels in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_Reads ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD dwValue[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dwValue: An array that stores the counter values of the
contiguous channels, dwValue[0] represents the
value of the starting channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
Cnt2K_Clears This function code is used to clear the counter values of
contiguous D/I channels in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_Clears ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to clear.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
Cnt2K_Read This function code is used to read the counter value of a specific
D/I channel in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_Read ( int hConnection,
BYTE bytChannel,
DWORD * dwValue);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
dwValue: A pointer to the counter value of the desired
channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-7
Cnt2K_Clear This function code is used to clear the counter value of a specific
D/I channel in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_Clear ( int hConnection,
BYTE bytChannel);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
Cnt2K_GetOverflows This function code is used to get the overflow statuses of
contiguous D/I channels in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_GetOverflows ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD * dwStatus);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dwStatus: A pointer to the overflow status of the
contiguous channels; each bit holds the status.
A bit value of 0 represents the status of the start
channel. A bit value of 1 represents the second
channel’s status. The values are :
0: Normal
1: Overflow
Succeed MXIO_OK.
Fail Refer to Return Codes.
Cnt2K_ClearOverflows This function code is used to clear the overflow statuses of
contiguous D/I channels in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_ClearOverflows ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to clear.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-8
Cnt2K_GetOverflow This function code is used to get the overflow status of a specific
D/I channel in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_GetOverflow( int hConnection,
BYTE bytChannel,
BYTE * bytStatus);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
bytStatus: A pointer to the overflow status of the desired
channel. The values are :
0: Normal
1: Overflow
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
Cnt2K_ClearOverflow This function code is used to clear the overflow status of a specific
D/I channel in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_ClearOverflow ( int hConnection,
BYTE bytChannel);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
Cnt2K_GetFilters This function code is used to get the filter value of contiguous D/I
channels in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_GetFilters ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wFilter[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
wFilter: An array that stores the filter values for the
contiguous D/I channels.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-9
Cnt2K_SetFilters This function code is used to set the filter values of contiguous D/I
channels in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_SetFilters ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wFilter[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
wFilter: An array that stores the filter values for the
contiguous D/I channels.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
Cnt2K_GetFilter This function code is used to get the filter value of a specific D/I
channel in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_GetFilter ( int hConnection,
BYTE bytChannel,
WORD * wFilter);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
wFilter: A pointer to the filter value.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
Cnt2K_SetFilter This function code is used to set the filter value of a specific D/I
channel in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_SetFilter ( int hConnection,
BYTE bytChannel,
WORD wFilter);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
wFilter: Stores the filter value.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-10
Cnt2K_GetStartStatuses This function code is used to get the start statuses of contiguous
D/I channels in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_GetStartStatuses ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD * dwStatus);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dwStatus: A pointer to the start statuses of the contiguous
D/I channels; each bit holds the start status of
one channel. A bit value of 0 represents the
status of the start channel. A bit value of 1
represents the second channel’s status. The
values are :
0: stop
1: start
Succeed MXIO_OK.
Fail Refer to Return Codes.
Cnt2K_SetStartStatuses This function code is used to set the start statuses of contiguous
D/I channels in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_SetStartStatuses ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD dwStatus);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
dwStatus: A pointer to the start statuses of the contiguous
D/I channels; each bit holds the start status of
one channel. A bit value of 0 represents the
status of the start channel. A bit value of 1
represents the second channel’s status. The
values are :
0: stop
1: start
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-11
Cnt2K_GetStartStatus This function code is used to get the start status of a specific D/I
channel in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_GetStartStatus ( int hConnection,
BYTE bytChannel,
BYTE * bytStatus);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
bytStatus: A pointer to the start status of the desired
channel. The values are :
0 : stop
1 : start
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
Cnt2K_SetStartStatus This function code is used to set the start status of a specific D/I
channel in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_SetStartStatus ( int hConnection,
BYTE bytChannel,
BYTE bytStatus);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
bytStatus: A pointer to the start status of the desired
channel. The values are :
0: stop
1: start
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-12
Cnt2K_GetTriggerTypes This function code is used to get the trigger types of contiguous
D/I channels in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_GetTriggerTypes ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD * dwType);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dwType: A pointer to the triggers types; each bit holds
the trigger type of one channel. A bit value of 0
represents the trigger type of the start channel.
A bit value of 1 represents the second channel’s
trigger type. The values are :
0: LoToHi
1: HiToLo
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
Cnt2K_SetTriggerTypes This function code is used to set the trigger types of contiguous
D/I channels in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_SetTriggerTypes ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD dwType);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
dwType: Stored the trigger types of the contiguous
channels; each bit holds the trigger type of one
channel. A bit value of 0 represents the trigger
type of the start channel. A bit value of 1
represents the second channel’s trigger type.
The values are :
0: LoToHi
1: HiToLo
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-13
Cnt2K_GetTriggerType This function code is used to get the trigger type of a specific D/I
channel in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_GetTriggerType ( int hConnection,
BYTE bytChannel,
BYTE * bytType);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
bytType: A pointer to the trigger type for a specific
channel. The values are:
0 : LoToHi
1 : HiToLo
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
Cnt2K_SetTriggerType This function code is used to set the trigger type of a specific D/I
channel in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_SetTriggerType ( int hConnection,
BYTE bytChannel,
BYTE bytType);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The desired channel.
bytType: Stores the trigger type for the desired channel.
The values are:
0 : LoToHi
1 : HiToLo
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-14
Cnt2K_GetPowerOnValues This function code is used to get the power on values of
contiguous D/I channels in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_GetPowerOnValues ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD * dwValue);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dwValue: A pointer to the power on values; each bit
holds the power on value of one channel. A bit
value of 0 represents the power on value of
the start channel. A bit value of 1 represents
the second channel’s power on value. The
values are:
0: OFF
1: ON
Succeed MXIO_OK.
Fail Refer to Return Codes.
Cnt2K_SetPowerOnValues This function code is used to set the power on values of
contiguous D/I channels in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_SetPowerOnValues ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD dwValue);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
dwValue: Stored the power on values for the contiguous
channels; each bit holds the power on value of
one channel. A bit value of 0 represents the
power on value of the start channel. A bit
value of 1 represents the second channel’s
power on value. The values are:
0: OFF
1: ON
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-15
Cnt2K_GetPowerOnValue This function code is used to get power on values when specific
D/I channel in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_GetPowerOnValue ( int hConnection,
BYTE bytChannel,
BYTE * bytValue);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
bytValue: A pointer to the power on value for specific
channel. The values are:
0: OFF
1: ON
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
Cnt2K_SetPowerOnValue This function code is used to set the power on value of a specific
D/I channel in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_SetPowerOnValue ( int hConnection,
BYTE bytChannel,
BYTE bytValue);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
bytValue: Stores the power on value for the desired
channel. The values are:
0: OFF
1: ON
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-16
Cnt2K_GetSafeValues This function code is used to get the safe values of contiguous D/I
channels in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_GetSafeValues ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD * dwValue);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dwValue: A pointer to the safe values; each bit holds the
safe value of one channel. A bit value of 0
represents the safe value of the start channel.
A bit value of 1 represents the second
channel’s safe value. The values are:
0: OFF
1: ON
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
Cnt2K_SetSafeValues This function code is used to set the safe values of contiguous D/I
channels in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_SetSafeValues ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD dwValue);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
dwValue: Stored the safe values of the contiguous
channels; each bit holds the safe value of one
channel. A bit value of 0 represents the safe
value of the start channel. A bit value of 1
represents the second channel’s safe value.
The values are:
0: OFF
1: ON
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-17
Cnt2K_GetSafeValue This function code is used to get the safe value of a specific D/I
channel in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_GetSafeValue ( int hConnection,
BYTE bytChannel,
BYTE * bytValue);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
bytValue: A pointer to the safe value of the desired
channel. The values are:
0: OFF
1: ON
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
Cnt2K_SetSafeValue This function code is used to set the safe value of a specific D/I
channel in Counter mode.
C/C++
Arguments
Return Value
int Cnt2K_SetSafeValue ( int hConnection,
BYTE bytChannel,
BYTE bytValue);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
bytValue: Stored the safe value for the desired channel.
The values are:
0: OFF
1: ON
Succeed MXIO_OK.
Fail
Refer
t
o
Ret
ur
C
ode
s
.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-18
Digital Output Commands
DO_Reads This function code is used to read the output statuses of contiguous
D/O channels.
C/C++
Arguments
Return Value
int DO_Reads ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
DWORD * dwValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dwValue: A pointer to the statuses of the contiguous D/O
channels; each bit holds the value of one
channel. A bit value of 0 represents the digital
output status of the start channel. A bit value of
1 represents the status of the second digital
output channel. The values of the unused bits
are random.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
DO_Read This function code is used to read the output status of a specific
D/O channel.
C/C++
Arguments
Return Value
int DO_Read ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
BYTE * bytValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytChannel: The desired channel.
bytValue: A pointer to the output value of the desired
channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-19
DO_Writes This function code is used to write the output statuses of
contiguous D/O channels. There may not contiguous channels if
you use ioLogik E2212 DIO channels. Please make sure they are
contiguous channels or “ILLEGAL_DATA_VALUE” will be
return.
C/C++
Arguments
Return Value
int DO_Writes ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
DWORD dwValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to be written.
dwValue: Stores the channel statuses of the contiguous
D/O channels; each bit holds the status of one
channel. A bit value of 0 represents the digital
output status of the start channel. A bit value of
1 represents the second digital output channel’s
status. The values of the unused bits are random.
Succeed MXIO_OK.
Fail Refer to Return Codes.
DO_Write This function code is used to write the output status for a specific
D/O channel.
C/C++
Arguments
Return Value
int DO_Write ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
BYTE bytValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytChannel: The desired channel.
bytValue: Stores the output status of the desired channel.
1 represents ON, 0 represents OFF.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-20
DO_GetSafeValues This function code is used to get the output safe values of
contiguous D/O channels.
C/C++
Arguments
Return Value
int DO_GetSafeValues ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
DWORD * dwValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dwValue: A pointer to the safe values of the contiguous
D/O channels; each bit holds the value of one
channel. A bit value of 0 represents the digital
output status of the start channel. A bit value of
1 represents the status of the second digital
output channel. The values of the unused bits
are random.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
DO_SetSafeValues This function code is used to set the safe values of contiguous D/O
channels.
C/C++
Arguments
Return Value
int DO_SetSafeValues ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
DWORD dwValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
dwValue: A pointer to the safe values of the contiguous
D/O channels; each bit holds the value of one
channel. A bit value of 0 represents the digital
output status of the start channel. A bit value of
1 represents the status of the second digital
output channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-21
DO_GetSafeValue This function code is used to get the safe value for a specific D/O
channel.
C/C++
Arguments
Return Value
int DO_GetSafeValue ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
BYTE bytValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytChannel: The desired channel.
bytValue: Stores the safe value of the desired D/O channel.
1 represents ON, 0 represents OFF.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
DO_SetSafeValue This function code is used to set the safe value for a specific D/O
channel.
C/C++
Arguments
Return Value
int DO_SetSafeValue ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
BYTE bytValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytChannel: The desired channel.
bytValue: Stores the safe value of the desired channel. 1
represents ON, 0 represents OFF.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-22
Digital Output Commands for ioLogik E2000, R2000
DO2K_GetModes This function code is used to get the mode of contiguous D/O
channels.
C/C++
Arguments
Return Value
int DO2K_GetModes ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wMode[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
wMode: An array that stores the modes of contiguous
D/O channels. The values are:
0: D/O mode
1: Pulse mode
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
DO2K_SetModes This function code is used to set the modes of contiguous D/O
channels.
C/C++
Arguments
Return Value
int DO2K_SetModes ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wMode[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
wMode: An array that stores the modes of contiguous
D/O channels. The values are:
0: D/O mode
1: Pulse mode
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-23
DO2K_GetMode This function code is used to get the mode of a specific D/O
channel.
C/C++
Arguments
Return Value
int DO2K_GetMode( int hConnection,
BYTE bytChannel,
BYTE * wMode);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
wMode: A pointer to the mode of tthe desired D/O
channel. The values are:
0: D/O mode
1: Pulse mode
Succeed MXIO_OK.
Fail R
e
f
e
r
t
o
R
et
ur
n
C
ode
s
.
DO2K_SetMode This function code is used to set the mode for a specific D/O
channel.
C/C++
Arguments
Return Value
int DO2K_SetMode ( int hConnection,
BYTE bytChannel,
WORD wMode);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
wMode: A pointer to the mode of the desired D/O
channel. The values are:
0: D/O mode
1: Pulse mode
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-24
DO2K_GetPowerOnValues This function code is used to get the power on values of
contiguous D/O channels.
C/C++
Arguments
Return Value
int DO2K_GetPowerOnValues ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD * dwValue);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dwValue: A pointer to the power on values of the
contiguous D/O channels; each bit holds the
value of one channel. A bit value of 0
represents the power on status of the start
channel. A bit value of 1 represents the status
of the second digital output channel. The values
of the unused bits are random.
Succeed MXIO_OK.
Fail Refer to Return Codes.
DO2K_SetPowerOnValues This function code is used to set the power on values of
contiguous D/O channels.
C/C++
Arguments
Return Value
int DO2K_SetPowerOnValues ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD dwValue);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
dwValue: Stores the power on values of contiguous D/O
channels; each bit holds the value of one
channel. A bit value of 0 represents the power
on status of the start channel. A bit value of 1
represents the status of the second digital
output channel. The values of the unused bits
are random.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-25
DO2K_GetPowerOnValue This function code is used to get the power on value for a specific
D/O channel.
C/C++
Arguments
Return Value
int DO2K_GetPowerOnValue ( int hConnection,
BYTE bytChannel,
BYTE * bytValue);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
bytValue: A pointer to the power on value of the desired
D/O channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
DO2K_SetPowerOnValue This function code is used to set the power on value for a specific
D/O channel.
C/C++
Arguments
Return Value
int DO2K_SetPowerOnValue ( int hConnection,
BYTE bytChannel,
BYTE bytValue);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
bytValue: Stores the power on value of a specific D/O
channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
Digital Input/Output Commands for ioLogik E2000
DIO2K_GetIOMode This function code is used to get specific channel's DI/DO mode.
C/C++
Arguments
Return Value
int DIO2K_GetIOMode ( int hConnection,
BYTE bytChannel,
BYTE * bytMode);
hConnection: The handle for an I/O connection.
bytChannel: The specific channel to be get.
bytMode: A pointer that stores the specific channel's
DI/DO mode. The values are :
0 : INPUT DI mode
1 : OUTPUT DO mode
Succeed MXIO_OK
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-26
DIO2K_SetIOMode This function code is used to set specific channel's DI/DO mode.
This function will take effect after restart the device.
C/C++
Arguments
Return Value
int DIO2K_SetIOMode ( int hConnection,
BYTE bytChannel,
BYTE bytMode);
hConnection: The handle for an I/O connection.
bytChannel: The specific channel to be set.
bytMode: A pointer that stores the specific channel's
DI/DO mode. The values are:
0 : INPUT DI mode
1 : OUTPUT DO mode
Succeed MXIO_OK
Fail Refer to Return Codes.
DIO2K_GetIOModes This function code is used to get contiguous channel's DI/DO
mode.
C/C++
Arguments
Return Value
int DIO2K_GetIOModes ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD * dwMode);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to be set.
dwStatus: A pointer that stores the contiguous channel's
DI/DO mode; each bit holds one channel status.
A bit value of 0 represents the status of the start
channel. A bit value of 1 represents the second
channel's status. The values are :
0 : INPUT DI mode
1 : OUTPUT DO mode
Succeed MXIO_OK
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-27
DIO2K_SetIOModes This function code is used to set contiguous channel's DI/DO mode
.
This function will take effect after restart the device.
C/C++
Arguments
Return Value
int DIO2K_SetIOModes ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD dwMode);
hConnection: The handle for an I/O device connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to be set.
dwMode: A pointer that stores the contiguous channel's
DI/DO mode; each bit holds one channel status.
A bit value of 0 represents the status of the start
channel. A bit value of 1 represents the second
channel's status. The values are :
0 : INPUT DI mode
1 : OUTPUT DO mode
Succeed MXIO_OK
Fail R
e
f
e
r t
o
R
e
t
u
rn
Codes
Digital Output Commands for ioLogik 4000
DO4K_GetSafeActions This function code is used to get the safe actions of contiguous
D/O channels.
C/C++
Arguments
Return Value
int DO4K_GetSafeActions ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
WORD wAction[ ]);
hConnection: The handle for an I/O connection. bytSlot:
Slot number of the I/O module, from 1 to 32.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
wAction: An array that stores the safe actions of
contiguous D/O channels. The values are:
0: Safe Value
1: Hold last state
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-28
DO4K_SetSafeActions This function code is used to set the safe actions of contiguous
D/O channels.
C/C++
Arguments
Return Value
int DO4K_SetSafeActions ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
WORD wAction[ ]);
hConnection: The handle for an I/O connection. bytSlot:
Slot number of the I/O module, from 1 to 32.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
wAction: An array that stores the safe actions of
contiguous D/O channels. The values are:
0: Safe Value
1: Hold last state
Succeed MXIO_OK.
Fail Refer to Return Codes.
DO4K_GetSafeAction This function code is used to get the safe action for a specific D/O
channel.
C/C++
Arguments
Return Value
int DO4K_GetSafeAction ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
WORD * wAction);
hConnection: The handle for an I/O connection. bytSlot:
Slot number of the I/O module, from 1 to 32.
bytChannel: The desired channel.
wAction: A pointer to the safe action for the desired D/O
channel. The values are:
0: Safe Value
1: Hold last state
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-29
DO4K_SetSafeAction This function code is used to set the safe action for a specific
channel.
C/C++
Arguments
Return Value
int DO4K_GetSafeAction ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
WORD wAction);
hConnection: The handle for an I/O connection. bytSlot:
Slot number of the I/O module, from 1 to 32.
bytChannel: The desired channel.
wAction: Stores the safe action for the desired D/O
channel. The values are:
0: Safe Value
1: Hold last state
Succeed MXIO_OK.
Fail Refer to Return Codes.
Pulse Output Commands for ioLogik E2000, R2000
Pulse2K_GetSignalWidths This function code is used to get the Hi/Lo signal widths of
contiguous pulse output channels.
C/C++
Arguments
Return Value
int Pulse2K_GetSignalWidths ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wHiWidth[ ],
WORD wLoWidth[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
wHiWidth: An array that stores the Hi signal widths
of the contiguous pulse output channels;
wHiWidth[0] represents the Hi signal
width of the starting channel.
wLoWidth: An array that stores the Lo signal widths
of the contiguous pulse output channels;
wLoWidth[0] represents the Lo signal
width of the starting channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-30
Pulse2K_SetSignalWidths This function code is used to set the Hi/Lo signal widths of
contiguous pulse output channels.
C/C++
Arguments
Return Value
int Pulse2K_SetSignalWidths ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wHiWidth[ ],
WORD wLoWidth[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
wHiWidth: An array that stores the Hi signal widths
of the contiguous pulse output channels;
wHiWidth[0] represents the Hi signal
width of the starting channel.
wLoWidth: An array that stores the Lo signal widths
of the contiguous pulse output channels;
wLoWidth[0] represents the Lo signal
width of the starting channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
Pulse2K_GetSignalWidth This function code is used to get the Hi/Lo signal width for a
specific pulse channel.
C/C++
Arguments
Return Value
int Pulse2K_GetSignalWidth ( int hConnection,
BYTE bytChannel,
WORD *wHiWidth,
WORD *wLoWidth);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
wHiWidth: A pointer to the Hi signal width of the
desired channel.
wLoWidth: A pointer to the Lo signal width of the
desired channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-31
Pulse2K_SetSignalWidth This function code is used to set the Hi/Lo signal width for a
specific pulse channel.
C/C++
Arguments
Return Value
int Pulse2K_SetSignalWidth ( int hConnection,
BYTE bytChannel,
WORD wHiWidth,
WORD wLoWidth);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
wHiWidth: A pointer to the Hi signal width of the
desired channel.
wLoWidth: A pointer to the Lo signal width of the
desired channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
Pulse2K_GetSignalWidths32 This function code is used to get the contiguous pulse channel's
Hi/Lo signal width (32 bits).
The function code is designed for the ioLogik E2260 only.
C/C++
Visual Basic
Arguments
Return Value
int Pulse2K_GetSignalWidths32
( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD dwHiWidth[ ],
DWORD dwLoWidth[ ]);
Declare Function Pulse2K_GetSignalWidths32 Lib “MXIO.dll”
(ByVal hConnection As Long, ByVal bytStartChannel As
Byte, ByVal bytCount As Byte, iHiWidth As Long, iLoWidth
As Long) As Long
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to get.
dwHiWidth: An array that stores the contiguous
pulse channel’s Hi signal width,
dwHiWidth[0] represents the Hi
signal width of the starting channel.
dwLoWidth: An array that stores the contiguous
plulse channel’s Lo signal width ,
dwLoWidth[0] represents the Lo
signal width of the starting channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-32
Pulse2K_SetSignalWidths32 This function code is used to set the contiguous pulse channel's
Hi/Lo signal width (32 bits).
The function code is designed for the ioLogik E2260 only.
C/C++
Visual Basic
Arguments
Return Value
int Pulse2K_SetSignalWidths32
( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD dwHiWidth[ ],
DWORD dwLoWidth[ ]);
Declare Function Pulse2K_SetSignalWidths32 Lib “MXIO.dll”
(ByVal hConnection As Long, ByVal bytStartChannel As
Byte, ByVal bytCount As Byte, iHiWidth As Long, iLoWidth
As Long) As Long
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to get.
dwHiWidth: An array that stores the contiguous
pulse channel’s Hi signal width,
dwHiWidth[0] represents the Hi
signal width of the starting channel.
dwLoWidth: An array that stores the contiguous
plulse channels Lo signal width ,
dwLoWidth[0] represents the Lo
signal width of the starting channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-33
Pulse2K_GetSignalWidth32 This function code is used to get the Hi/Lo signal width (32 bits)
for a specific pulse channel.
The function code is designed for the ioLogik E2260 only.
C/C++
Visual Basic
Arguments
Return Value
int Pulse2K_GetSignalWidth32
( int hConnection,
BYTE bytChannel,
DWORD *dwHiWidth,
DWORD *dwLoWidth);
Declare Function Pulse2K_GetSignalWidth32 Lib “MXIO.dll”
(ByVal hConnection As Long, ByVal bytChannel As Byte,
iHiWidth As Long, iLoWidth As Long) As Long
hConnection: The handle for an I/O connection.
bytChannel: The specific channel to get.
dwHiWidth: A pointer that stores the specific pulse
channel’s Hi signal width.
dwLoWidth: A pointer that stores the specific pulse
channel’s Lo signal width.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-34
Pulse2K_GetSignalWidth32 This function code is used to set the Hi/Lo signal width (32 bits)
for a specific pulse channel.
The function code is designed for the ioLogik E2260 only.
C/C++
Visual Basic
Arguments
Return Value
int Pulse2K_SetSignalWidth32
( int hConnection,
BYTE bytChannel,
DWORD dwHiWidth,
DWORD dwLoWidth);
Declare Function Pulse2K_SetSignalWidth32 Lib “MXIO.dll”
(ByVal hConnection As Long, ByVal bytChannel As Byte,
iHiWidth As Long, iLoWidth As Long) As Long
hConnection: The handle for an I/O connection.
bytChannel: The specific channel to get.
dwHiWidth: Store the specific pulse channel’s Hi
signal width.
dwLoWidth: Store the specific pulse channel’s Lo
signal width.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
Pulse2K_GetOutputCounts This function code is used to get the output count.
C/C++
Arguments
Return Value
int Pulse2K_GetOutputCounts ( int hConnection,
BYTE
bytStartChannel,
BYTE
bytCount,
DWORD dwOutputCounts[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dwOutputCounts: An array that stores the output count,
dwOutputCounts[0] represents the pulse
output count of the starting channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-35
Pulse2K_SetOutputCounts This function code is used to set the output counts for contiguous
pulse output channels.
C/C++
Arguments
Return Value
int Pulse2K_SetOutputCounts ( int
hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD dwOutputCounts[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
dwOutputCounts: An array that stores the output counts of
the contiguous pulse output chanels;
dwOutputCounts[0] represents the pulse
output count of the starting channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
Pulse2K_GetOutputCount This function code is used to get the output count for a specific
pulse channel.
C/C++
Arguments
Return Value
int Pulse2K_GetOutputCount ( int hConnection,
BYTE
bytChannel,
DWORD * dwOutputCount);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
dwOutputCount: A pointer to the output count for the
desired channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
Pulse2K_SetOutputCount This function code is used to set the output count for a specific
pulse channel.
C/C++
Arguments
Return Value
int Pulse2K_SetOutputCount ( int hConnection,
BYTE bytChannel,
DWORD dwOutputCount);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
dwOutputCount: A pointer to the output count for the
desired channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-36
Pulse2K_GetStartStatuses This function code is used to get the start statuses of contiguous
pulse channels.
C/C++
Arguments
Return Value
int Pulse2K_GetStartStatuses ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD * dwStatus);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dwStatus: An point that stores the start statuses for the
contiguous pulse channels; each bit holds the
value of one channel. A bit value of 0
represents the start status of the start channel. A
bit value of 1 represents the status of the second
pulse channel. The values are:
0: stop
1: start
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-37
Pulse2K_SetStartStatuses This function code is used to set the start statuses of contiguous
pulse channels.
C/C++
Arguments
Return Value
int Pulse2K_SetStartStatuses ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD dwStatus);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
dwStatus: Stores the start statuses of the contiguous pulse
channels; each bit holds the value of one
channel. A bit value of 0 represents the start
status of the start channel. A bit value of 1
represents the status of the second pulse
channel. The values are :
0: stop
1: start
Succeed MXIO_OK.
Fail Refer to Return Codes.
Pulse2K_GetStartStatus This function code is used to get the start status for a specific pulse
channel.
C/C++
Arguments
Return Value
int Pulse2K_GetStartStatus ( int hConnection,
BYTE bytChannel,
BYTE * bytStatus);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
bytStatus: A pointer to the start status of the desired
channel. The values are :
0: stop
1: start
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-38
Pulse2K_SetStartStatus This function code is used to set the start status for a specific pulse
channel.
C/C++
Arguments
Return Value
int Pulse2K_SetStartStatus ( int hConnection,
BYTE bytChannel,
BYTE bytStatus);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
bytStatus: Stores the start status of the desired channel.
The values are :
0: stop
1: start
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
Pulse2K_GetPowerOnValues This function code is used to get the power on values for
contiguous pulse channels.
C/C++
Arguments
Return Value
int Pulse2K_GetPowerOnValues ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD * dwValue);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dwValue: A pointer to the power on values of the
contiguous pulse channels; each bit holds the
value of one channel. A bit value of 0
represents the power on value of the start
channel. A bit value of 1 represents the value
of the second pulse channel. The values are:
0: stop
1: start
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-39
Pulse2K_SetPowerOnValues This function code is used to set the power on values of
contiguous pulse channels.
C/C++
Arguments
Return Value
int Pulse2K_SetPowerOnValues ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD dwValue);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
dwValue: Stores the power on values for the contiguous
channels; each bit holds the value of one
channel. A bit value of 0 represents the power
on value of the start channel. A bit value of 1
represents the value of the second pulse
channel. The values are:
0: stop
1: start
Succeed MXIO_OK.
Fail Refer to Return Codes.
Pulse2K_GetPowerOnValue This function code is used to get the power on value for a
specific pulse channel.
C/C++
Arguments
Return Value
int Pulse2K_GetPowerOnValue ( int hConnection,
BYTE bytChannel,
BYTE * bytValue);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
bytValue: A pointer to the power on value of the desired
channel. The values are:
0: stop
1: start
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-40
Pulse2K_SetPowerOnValue This function code is used to set the power on value for a specific
pulse channel.
C/C++
Arguments
Return Value
int Pulse2K_SetPowerOnValue ( int hConnection,
BYTE bytChannel,
BYTE bytValue);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
bytValue: Stores the power on value for the desired
channel. The values are:
0: stop
1: start
Succeed MXIO_OK.
Fail Refer to Return Codes.
Pulse2K_GetSafeValues This function code is used to get the safe values of contiguous
pulse channels.
C/C++
Arguments
Return Value
int Pulse2K_GetSafeValues ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD * dwValue);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dwValue: A pointer to the safe values for the contiguous
channels; each bit holds the value of one
channel. A bit value of 0 represents the safe
value of the start channel. A bit value of 1
represents the value of the second pulse
channel. The values are:
0: stop
1: start
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-41
Pulse2K_SetSafeValues This function code is used to set the safe value.
C/C++
Arguments
Return Value
int Pulse2K_SetSafeValues ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD dwValue);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
dwValue: Stores the safe value, each bit holds the value
of one channel. A bit value of 0 represents the
safe value of the start channel. A bit value of 1
represents the value of the second pulse
channel. The values are:
0: stop
1: start
Succeed MXIO_OK.
Fail Refer to Return Codes.
Pulse2K_GetSafeValue This function code is used to get the safe value for a specific pulse
channel.
C/C++
Arguments
Return Value
int Pulse2K_GetSafeValue( int hConnection,
BYTE bytChannel,
BYTE * bytValue);
hConnection: The handle for an I/O server connection.
bytChannel: The desired channel.
bytValue: A pointer to the specific pulse channel’s
power on value. The values are:
0: stop
1: start
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-42
Pulse2K_SetSafeValue This function code is used to set the safe value for a specific pulse
channel.
C/C++
Arguments
Return Value
int Pulse2K_SetSafeValue ( int hConnection,
BYTE bytChannel,
BYTE bytValue);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
bytValue: Stores the specific pulse channel’s power on
value. The values are:
0: stop
1: start
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
Analog Input Commands
AI_Reads This function code is used to read the values of contiguous analog
input channels.
C/C++
Arguments
Return Value
int AI_Reads ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
double dValue[ ]);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dValue: An array that stores the values of the
contiguous A/I channels; dValue[0] represents
the value of the starting channel. The unit is
Vdc for the voltage module, and mA for the
current module.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-43
AI_Read This function code is used to read the value of a specific analog
input channel.
C/C++
Arguments
Return Value
int AI_Read ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
double * dValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytChannel: The desired channel.
dValue: A pointer to the value of the desired analog
input channel. The unit is VDC for the voltage
module, and mA for the current module.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
AI_ReadRaws This function code is used to read the raw data values of
contiguous analog input values.
C/C++
Arguments
Return Value
int AI_ReadRaws ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
WORD wValue[ ]);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
wValue: An array that stores the raw data values of the
contiguous A/I channels; wValue[0] represents
the value of the starting channel.
Succeed MXIO_OK.
Fail R
e
f
e
r
t
o
R
et
ur
n
C
ode
s
.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-44
AI_ReadRaw This function code is used to read the raw data value of a specific
analog input channel.
C/C++
Arguments
Return Value
int AI_ReadRaw ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
WORD * wValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytChannel: The desired channel.
wValue: A pointer to raw data value of the desired
analog input channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
Analog Input Commands for ioLogik E2000, R2000
AI2K_ReadMins This function code is used to read the minimize values of
contiguous A/I channels.
C/C++
Arguments
Return Value
int AI2K_ReadMins ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
double dValue[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dValue: An array that stores the minimize values of
contiguous A/I channels; dValue[0] represents
the value of the starting channel. The unit is
VDC for the voltage module, and mA for the
current module.
Succeed MXIO_OK.
Fail R
e
f
e
r
t
o
R
et
ur
n
C
o
de
s
.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-45
AI2K_ReadMinRaws This function code is used to read the minimize raw data values of
contiguous A/I channels.
C/C++
Arguments
Return Value
int AI2K_ReadMinRaws ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wValue[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
wValue: An array that stores the minimize raw data
values of the contiguous A/I channels;
wValue[0] represents the value of the starting
channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
AI2K_ResetMins This function code is used to reset the minimize values of
contiguous A/I channels.
C/C++
Arguments
Return Value
int AI2K_ResetMins ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to be reset.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
AI2K_ReadMin This function code is used to read the minimize value for a
specific A/I channel.
C/C++
Arguments
Return Value
int AI2K_ReadMin ( int hConnection,
BYTE bytChannel,
double * dValue);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
dValue: A pointer to the minimize value of the desired
A/I channel. The unit is VDC for the voltage
module, and mA for the current module.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-46
AI2K_ReadMinRaw This function code is used to read the minimize raw data value for
a specific A/I channel.
C/C++
Arguments
Return Value
int AI2K_ReadMinRaw( int hConnection,
BYTE bytChannel,
int * iValue);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
iValue: A pointer to the minimize raw data value for
the desired channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
AI2K_ResetMin This function code is used to reset the minimize value for a
specific A/I channel.
C/C++
Arguments
Return Value
int AI2K_ResetMin ( int hConnection,
BYTE bytChannel,
hConnection: The handle for an I/O server connection.
bytChannel: The desired channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
AI2K_ReadMaxs This function code is used to read the maximize values for
contiguous A/I channels.
C/C++
Arguments
Return Value
int AI2K_ReadMaxs ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
double dValue[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dValue: An array that stores the maximize values for
contiguous A/I channels; dValue[0] represents
the value of the starting channel. The unit is
VDC for the voltage module, and mA for the
current module.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-47
AI2K_ReadMaxRaws This function code is used to read the maximize raw data values
for contiguous A/I channels.
C/C++
Arguments
Return Value
int AI2K_ReadMaxRaws ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wValue[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
wValue: An array that stores the maximize raw data
values for the contiguous A/I channels;
wValue[0] represents the value of the starting
channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
AI2K_ResetMaxs This function code is used to reset the maximize values of
contiguous A/I channels.
C/C++
Arguments
Return Value
int AI2K_ResetMaxs ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to be reset.
Succeed MXIO_OK.
Fail Refer to Return Codes.
AI2K_ReadMax This function code is used to read the maximize value for a
specific A/I channel.
C/C++
Arguments
Return Value
int AI2K_ReadMax ( int hConnection,
BYTE bytChannel,
double * dValue);
hConnection: The handle for an I/O connection.
bytChannel: The specific channels to be read.
dValue: A pointer to the maximize value of the desired
A/I channel. The unit is VDC for the voltage
module, and mA for the current module.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-48
AI2K_ReadMaxRaw This function code is used to read the maximize raw data value for
a specific A/I channel.
C/C++
Arguments
Return Value
int AI2K_ReadMaxRaw ( int hConnection,
BYTE bytChannel,
WORD * wValue);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
wValue: A pointer to the raw data value of the desired
A/I channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
AI2K_ResetMax This function code is used to reset the maximize value for a
specific A/I channel.
C/C++
Arguments
Return Value
int AI2K_ResetMin ( int hConnection,
BYTE bytChannel,
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
AI2K_GetRanges This function code is used to get the ranges of contiguous A/I
channels.
C/C++
Arguments
Return Value
int AI2K_GetRanges ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wRange[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
wRange: An array that stores the ranges of the
contiguous A/I channels; wRange[0] represents
the value of the starting channel. The values
are:
00: ±150mV
01: ±500mV
02: ±5V
03: ±10V
04: 0-20mA
05: 4-20mA
Others: return Illegal Data Value
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-49
AI2K_SetRanges This function code is used to set the ranges of contiguous A/I
channels.
C/C++
Arguments
Return Value
int AI2K_SetRanges ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wRange[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
wRange: An array that stores the ranges of the
contiguous A/I channels; wRange[0] represents
the value of the starting channel. The values
are:
00: ±150mV
01: ±500mV
02: ±5V
03: ±10V
04: 0-20mA
05: 4-20mA
Others: return Illegal Data Value
Succeed MXIO_OK.
Fail Refer to Return Codes.
AI2K_GetRange This function code is used to get the range for a specific A/I
channel.
C/C++
Arguments
Return Value
int AI2K_GetRange ( int hConnection,
BYTE bytChannel,
WORD * wRange);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
wRange: A pointer to the range of the desired A/I
channel. The values are:
00: ±150mV
01: ±500mV
02: ±5V
03: ±10V
04: 0-20mA
05: 4-20mA
Others: return Illegal Data Value
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-50
AI2K_SetRange This function code is used to set the range for a specific A/I
channel.
C/C++
Arguments
Return Value
int AI2K_SetRange ( int hConnection,
BYTE bytChannel,
WORD wRange);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
wRange: Stores the range of the desired A/I channel. The
values are:
00: ±150mV
01: ±500mV
02: ±5V
03: ±10V
04: 0-20mA
05: 4-20mA
Others: return Illegal Data Value
Succeed MXIO_OK.
Fail Refer to Return Codes.
Analog Output Commands
AO_Reads This function code is used to read the values of contiguous analog
output channels.
C/C++
Arguments
Return Value
int AO_Reads ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
double dValue[ ]);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dValue: An array that stores the values of contiguous
analog output channels. dValue[0] represents
the value of the starting channel. The unit is
Vdc for the voltage channel and mA for the
current channel.
Succeed MXIO_OK.
Fail
Refer
t
o
Ret
ur
n
C
ode
s
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-51
AO_Writes This function code is used to write the values of contiguous analog
output channels.
C/C++
Arguments
Return Value
int AO_Writes ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
double dValue[ ]);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to write.
dValue: An array that stores the values of contiguous
channel outputs. dValue [0] represents the value
of the starting channel. The unit is VDC for the
voltage channel and mA for the current
channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
AO_Read This function code is used to read the value for a specific analog
output channel.
C/C++
Arguments
Return Value
int AO_Read ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
double * dValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytChannel: The desired channel.
dValue: A pointer to the value of the desired analog
output channel. The unit is VDC for the voltage
channel and mA for the current channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-52
AO_Write This function code is used to write the status for a specific analog
output channel.
C/C++
Arguments
Return Value
int AO_Write ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
double dValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytChannel: The desired channel.
dValue: Stores the value of the desired channel. The
unit is VDC for the voltage channel and mA for
the current channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
AO_ReadRaws This function code is used to read the raw data values of
contiguous analog output channels.
C/C++
Arguments
Return Value
int AO_ReadRaws ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
WORD wValue[ ]);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
wValue: An array that stores the raw data values for the
contiguous analog output channels. wValue
[0] represents the value of the starting
channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-53
AO_WriteRaws This function code is used to write the raw data values for
contiguous analog output channels.
C/C++
Arguments
Return Value
int AO_WriteRaws ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
WORD wValue[ ]);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to write.
wValue: An array that stores raw data values for the
contiguous analog output channels. wValue[0]
represents the value of the starting analog
output channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
AO_ReadRaw This function code is used to read the raw data value of a specific
analog output channel.
C/C++
Arguments
Return Value
int AO_ReadRaw ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
WORD * wValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytChannel: The desired channel.
wValue: A pointer to the raw data value of the desired
analog output channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-54
AO_WriteRaw This function code is used to write the raw data value of a specific
analog output channel.
C/C++
Arguments
Return Value
int AO_WriteRaw ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
WORD wValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytChannel: The specific channel to be written.
wValue: Stores the raw data value for the desired analog
output channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
AO_GetSafeValues This function code is used to get the safe values of contiguous
analog output channels.
C/C++
Arguments
Return Value
int AO_GetSafeValues ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
Double dValue[ ]);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dValue: An array that stores the safe values for the
contiguous A/O channels. dValue[0]
represents the value of the starting channel.
The unit is Vdc for the voltage channel and
mA for the current channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-55
AO_SetSafeValues This function code is used to set the safe values for contiguous
A/O channels.
C/C++
Arguments
Return Value
int AO_SetSafeValues ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
Double dValue[ ]);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
dValue: An array that stores the safe values for the
contiguous A/O channels. dValue[0]
represents the value of the starting analog
output channel. The unit is VDC for the
voltage channel and mA for the current
channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
AO_GetSafeValue This function code is used to get the safe value for a specific A/O
channel.
C/C++
Arguments
Return Value
int AO_GetSafeValue ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
double * dValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytChannel: The desired channel.
dValue: A pointer to the safe value of the desired A/O
channel. The unit is VDC for the voltage
channel and mA for the current channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-56
AO_SetSafeValue This function code is used to set the safe value for a specific A/O
channel.
C/C++
Arguments
Return Value
int AO_SetSafeValue ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
double dValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytChannel: The desired channel.
dValue: Stores the safe value of the desired A/O
channel. The unit is Vdc for the voltage
channel and mA for the current channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
AO_GetSafeRaws This function code is used to get the raw safe values of contiguous
analog output channels.
C/C++
Arguments
Return Value
int AO_GetSafeRaws ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
WORD wValue[ ]);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
wValue: An array that stores the raw safe values of the
contiguous A/O channels. wValue[0] represents
the value of the starting channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-57
AO_SetSafeRaws This function code is used to set safe values for contiguous A/O
channels in raw data format.
C/C++
Arguments
Return Value
int AO_GetSafeRaws ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
WORD wValue[ ]);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to write.
wValue: An array that stores safe values in raw data
format for the contiguous A/O channels.
wValue[0] represents the value of the starting
analog output channel.
Succeed MXIO_OK.
Fail R
e
f
e
r
t
o
R
et
ur
n
C
ode
s
AO_GetSafeRaw This function code is used to get the safe value for a specific A/O
channel in raw data format.
C/C++
Arguments
Return Value
int AO_GetSafeRaw ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
WORD * wValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytChannel: The desired channel.
wValue: A pointer to the safe value for the desired
channel in raw data format.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-58
AO_SetSafeRaw This function code is used to set the safe value for a specific A/O
channel in raw data format.
C/C++
Arguments
Return Value
int AO_SetSafeRaw ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
WORD wValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytChannel: The desired channel.
wValue: Stores the safe value for the desired channel in
raw data format.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
Analog Output Commands for ioLogik E2000, R2000
AO2K_GetRanges This function code is used to get the ranges of contiguous A/O
channels.
C/C++
Arguments
Return Value
int AO2K_GetRanges ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wRange[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
wRange: An array that stores theranges of the
contiguous A/O channels. wRange[0]
represents the value of the starting channel. The
values are:
0: 0-10 VDC
1: 4-20 mA
0xff: disable
Others : return Illegal Data Value
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-59
AO2K_SetRanges This function code is used to set the ranges of contiguous A/O
channels.
C/C++
Arguments
Return Value
int AO2K_SetRanges ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wRange[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
wRange: An array that stores the ranges of the
contiguous A/O channels. wRange[0]
represents the value of the starting channel. The
values are:
0: 0-10 VDC
1: 4-20 mA
Others : return Illegal Data Value
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
AO2K_GetRange This function code is used to get the range of a specific A/O
channel.
C/C++
Arguments
Return Value
int AO2K_GetRange ( int hConnection,
BYTE bytChannel,
WORD * wRange);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
wRange: A pointer to the range of the desired A/O
channel. The values are:
0: 0-10 VDC
1: 4-20 mA
0xff: disable
Others : return Illegal Data Value
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-60
AO2K_SetRange This function code is used to set the range for a specific A/O
channel.
C/C++
Arguments
Return Value
int AO2K_SetRange ( int hConnection,
BYTE bytChannel,
WORD wRange);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
wRange: Stores the specific A/O channel’s range. The
values are:
0: 0-10 VDC
1: 4-20 mA
Others: return Illegal Data Value
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
AO2K_GetPowerOnValues This function code is used to get the power on values of
contiguous A/O channels.
C/C++
Arguments
Return Value
int AO2K_GetPowerOnValues ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
double dValue[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dValue: An array that stores the power on values for the
contiguous A/O channels. dValue[0] represents
the value of the starting channel. The unit is
Vdc for the voltage channel and mA for the
current channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-61
AO2K_SetPowerOnValues This function code is used to set the power on values of
contiguous A/O channels.
C/C++
Arguments
Return Value
int AO2K_SetPowerOnValues ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
double dValue[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
dValue: An array that stores the power on valuse for the
contiguous A/O channels. dValue[0] represents
the value of the starting channel. The unit is
Vdc for the voltage channel and mA for the
current channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
AO2K_GetPowerOnValue This function code is used to get the power on value for a specific
channel.
C/C++
Arguments
Return Value
int AO2K_GetPowerOnValue ( int hConnection,
BYTE bytChannel,
double * dValue);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
dValue: A pointer to the power on value for the desired
A/O channel. The unit is Vdc for the voltage
channel and mA for the current channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
AO2K_SetPowerOnValue This function code is used to set the power on value for a specific
channel.
C/C++
Arguments
Return Value
int AO2K_SetPowerOnValue ( int hConnection,
BYTE bytChannel,
double dValue);
hConnection: The handle for an I/O server connection.
bytChannel: The desired channel.
dValue: Stores the power on value for the desired A/O
channel. The unit is Vdc for the voltage
channel and mA for the current channel.
Succeed MXIO_OK.
Fail
Refer
t
o
Ret
ur
n
C
ode
s
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-62
AO2K_GetPowerOnRaws This function code is used to get the power on values of
contiguous A/O channels in raw data format.
C/C++
Arguments
Return Value
int AO2K_GetPowerOnRaws ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wValue[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
wValue: An array that stores the power on values of the
contiguous A/O channels in raw data format.
wValue[0] represents the value of the starting
channel.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
AO2K_SetPowerOnRaws This function code is used to set the power on values of
contiguous A/O channels in raw data format.
C/C++
Arguments
Return Value
int AO2K_SetPowerOnRaws ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wValue[ ]);
hConnection: The handle for an I/O connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
wValue: An array that stores the power on values of
contiguous A/O channels in raw data format.
wValue [0] represents the value of the starting
channel.
Succeed MXIO_OK.
Fail
Refer
t
o
Ret
ur
n
C
ode
s
AO2K_GetPowerOnRaw This function code is used to get the power on value of a specific
analog output channel in raw data format.
C/C++
Arguments
Return Value
int AO2K_GetPowerOnRaw ( int hConnection,
BYTE bytChannel,
WORD * wValue);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
wValue: A pointer to the power on value for the desired
channel in raw data format.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-63
AO2K_SetPowerOnRaw This function code is used to set the power on value of a specific
analog output channel in raw data format.
C/C++
Arguments
Return Value
int AO2K_SetPowerOnRaw ( int hConnection,
BYTE bytChannel,
WORD wValue);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
wValue: Stores the power on value for the desired
channel in raw data format.
Succeed MXIO_OK.
Fail Refe
r
t
o Re
t
u
r
n Codes.
Analog Output Commands for ioLogik 4000
AO4K_GetSafeActions This function code is used to get the safe actions of contiguous
A/O channels.
C/C++
Arguments
Return Value
int AO4K_GetSafeActions ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
WORD wAction[ ]);
hConnection: The handle for an I/O connection. bytSlot:
Slot number of the I/O module, from 1 to 32.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
wAction: An array that stores the safe actions of the
contiguous A/O channels. wAction[0]
represents the value of the starting channel. The
values are:
0: Safe value
1: Hold last state
2: Low Limit
3: High Limit
Succeed MXIO_OK.
Fail
Refer
t
o
Ret
ur
n
C
ode
s
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-64
AO4K_SetSafeActions This function code is used to set the safe actions of contiguous
A/O channels.
C/C++
Arguments
Return Value
int AO4K_SetSafeActions ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
WORD wAction[ ]);
hConnection: The handle for an I/O connection. bytSlot:
Slot number of the I/O module, from 1 to 32.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to set.
wAction: An array that stores thesafe actions for the
contiguous A/O channels. wAction[0]
represents the value of the starting channel. The
values are:
0: Safe value
1: Hold last state
2: Low Limit
3: High Limit
Succeed MXIO_OK.
Fail Refer to Return Codes.
AO4K_GetSafeAction This function code is used to get the safe action for a specific
analog output channel.
C/C++
Arguments
Return Value
int AO4K_GetSafeAction ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
WORD * wAction);
hConnection: The handle for an I/O connection. bytSlot:
Slot number of the I/O module, from 1 to 32.
bytChannel: The desired channel.
wAction: A pointer to the safe action of the desired A/O
channel. The values are:
0: Safe value
1: Hold last state
2: Low Limit
3: High Limit
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-65
AO4K_SetSafeAction This function code is used to set the safe action for a specific
channel.
C/C++
Arguments
Return Value
int AO4K_GetSafeAction ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
WORD wAction);
hConnection: The handle for an I/O connection. bytSlot:
Slot number of the I/O module, from 1 to 32.
bytChannel: The desired channel.
wAction: Stores the safe action of the desired A/O
channel. The values are:
0: Safe value
1: Hold last state
2: Low Limit
3: High Limit
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
RTD Commands
RTD_Reads This function code is used to read the temperature values for
contiguous channels.
C/C++
Arguments
Return Value
int RTD_Reads ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
double dValue[ ]);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dValue: An array that stores the temperature values
of the contiguous channels. dValue[0]
represents the start channel.
When dValue is 0x8000, it means the sensor is
not wired correctly, or the measured value is
out of range. When using the RTD module for
Resistance Input, the unit is Ohm. When the
operating mode is temperature sensor, the unit
is C or F, depending on the setting. Use the
ioAdmin utility to check the current settings fo
r
the desired channels.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-66
RTD_Read This function code is used to read the temperature value for a
specific channel.
C/C++
Arguments
Return Value
int RTD_Read ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
double * dValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytChannel: The desired channel.
dValue: A pointer to the temperature value of the
desired channel.
When dValue is 0x8000, it means the sensor is
not correctly wired or the measured value is
out of range.
When using the RTD module for Resistance
Input, the unit is Ohm. When the operating
mode is temperature sensor, the unit is C or F,
depending on the setting. Use the ioAdmin
utility to check the current settings for the
desired channels.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-67
RTD_ReadRaws This function code is used to read the temperatures for contiguous
channels in raw data format.
C/C++
Arguments
Return Value
int RTD_ReadRaws ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
WORD wValue[ ]);
hConnection: The handle for an I/O server connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
wValue: An array that stores the temperature values of
the contiguous channels in raw data format.
wValue [0] represents the start channel.
When wValue is 0x8000, it means the sensor is
not wired correctly, or the measured value is
out of range.
When using the RTD module for Resistance
Input 1~2000
, 100 m
/1count.
When using the RTD module for Resistance
Input 1~327
, 10 m
/1count.
When using the RTD module for Resistance
Input 1~620
, 20 m
/1count.
When the operating mode is temperature
sensor, 0.1°C (°F)/1count, depending on the
setting. Use the ioAdmin utility to check the
current settings for the desired channels.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-68
RTD_ReadRaw This function code is used to read the temperature value of a
specific channel in raw data format.
C/C++
Arguments
Return Value
int RTD_ReadRaw ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
WORD * wValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytChannel: The desired channel.
wValue: A pointer to the temperature value of the
desired channel. When wValue is 0x8000, it
means the sensor is not wired correctly, or the
measured value is out of range.
When using the RTD module for Resistance
Input 1~2000
, 100 m
/1count.
When using the RTD module for Resistance
Input 1~327
, 10 m
/1count.
When using the RTD module for Resistance
Input 1~620
, 20 m
/1count.
When the operating mode is temperature
sensor, 0. °C( F)/1count, depending on the
setting. Use the ioAdmin utility to check the
current settings for the desired channels.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
RTD2K_ResetMin This function code is used to reset the RTD input minimize value
for a specific channel.
C/C++
Arguments
Return Value
int RTD2K_ResetMin ( int hConnection,
BYTE bytChannel);
hConnection: The handle for an I/O device connection.
bytChannel: The specific channel to be reset.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-69
RTD2K_ResetMins
This function code is used to reset contiguous RTD channel's
minimize value.
C/C++
Arguments
Return Value
int RTD2K_ResetMins (int hConnection,
BYTE bytStartChannel,
BYTE bytCount);
hConnection: The handle for an I/O device connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to be reset.
Succeed MXIO_OK.
Fail
Refer
t
o
Ret
ur
C
ode
s
RTD2K_ResetMax This function code is used to reset the RTD input maximize value
for a specific channel.
C/C++
Arguments
Return Value
int RTD2K_ResetMax ( int hConnection,
BYTE bytChannel);
hConnection: The handle for an I/O device connection.
bytChannel: The specific channel to be reset.
Succeed MXIO_OK.
Fail
Refer
t
o
Ret
ur
C
ode
s
RTD2K_ResetMaxs This function code is used to reset contiguous RTD channel's
maximize value.
C/C++
Arguments
Return Value
int RTD2K_ResetMaxs(int hConnection,
BYTE ytStartChannel,
BYTE bytCount);
hConnection: The handle for an I/O device connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to be reset.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-70
RTD2K_ReadMinRaw This function code is used to read the RTD input minimize raw dat
a
for a specific channel.
C/C++
Arguments
Return Value
int RTD2K_ReadMinRaw (int hConnection,
BYTE bytChannel,
WORD * iValue);
hConnection: The handle for an I/O device connection.
bytChannel : The specific channel to be read.
iValue: An point that stores the specific RTD
channel's minimize raw data.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
RTD2K_ReadMinRaws This function code is used to read contiguous RTD channel's
minimize raw data.
C/C++
Arguments
Return Value
int RTD2K_ReadMinRaws ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wValue[ ]);
hConnection: The handle for an I/O device connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to be read.
wValue: An array that stores the contiguous RTD
channel's minimize raw data , wValue[0]
represents the value of the starting channel.
Succeed MXIO_OK.
Fail Refer to Return Codes.
RTD2K_ReadMaxRaw This function code is used to read the RTD input maximize raw
data for a specific channel.
C/C++
Arguments
Return Value
int RTD2K_ReadMaxRaw ( int hConnection,
BYTE bytChannel,
WORD * wValue);
hConnection: The handle for an I/O device connection.
bytChannel : The specific channel to be read.
wValue: An point that stores the specific RTD
channel's maximize raw data.
Succeed MXIO_OK.
Fail
Refer
t
o
Ret
ur
C
ode
s
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-71
RTD2K_ReadMaxRaws This function code is used to read contiguous RTD channel's
maximize raw data.
C/C++
Arguments
Return Value
int RTD2K_ReadMaxRaws ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wValue[ ]);
hConnection: The handle for an I/O device connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to be read.
wValue: An array that stores the contiguous RTD
channel's maximize raw data , wValue[0]
represents the value of the starting channel.
Succeed MXIO_OK.
Fail
Refer
t
o
Ret
ur
C
ode
s
RTD2K_ReadMin This function code is used to read the RTD input minimize valu
e
for a specific channel.
C/C++
Arguments
Return Value
int RTD2K_ReadMin( int hConnection,
BYTE bytChannel,
double *dValue);
hConnection: The handle for an I/O device connection.
bytChannel: The specific channel to be read.
dValue: A pointer that stores the specific channel
RTD input minimize value to be read. The
unit is for the Ohm, °C for Celsius and °F
for Fahrenheit.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-73
RTD2K_ReadMaxs This function code is used to read contiguous RTD channel's
maximize value.
C/C++
Arguments
Return Value
int RTD2K_ReadMaxs ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
double dValue[ ]);
hConnection: The handle for an I/O device connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to be read.
dValue: An array that stores the contiguous RTD
channel's maximize value , dValue[0]
represents the value of the starting channel.
The unit is for the Ohm, °C for Celsius
and °F for Fahrenheit.
Succeed MXIO_OK.
Fail Refer to Return Codes.
RTD2K_GetStartStatus This function code is used to get specific channel's start status.
C/C++
Arguments
Return Value
int RTD2K_GetStartStatus ( int hConnection,
BYTE bytChannel,
BYTE * bytStatus);
hConnection: The handle for an I/O device connection.
bytChannel: The specific channel to be get.
bytStatus: A pointer that stores the specific RTD
channel's start status. The values are :
0 : stop
1 : start
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-74
RTD2K_SetStartStatus This function code is used to set specific channel's start status.
C/C++
Arguments
Return Value
int RTD2K_SetStartStatus ( int hConnection,
BYTE bytChannel,
BYTE bytStatus);
hConnection: The handle for an I/O device connection.
bytChannel: The specific channel to be set.
bytStatus: A pointer that stores the specific RTD
channel's start status. The values are :
0 : stop
1 : start
Succeed MXIO_OK.
Fail Refer to Return Codes.
RTD2K_GetStartStatuses This function code is used to get contiguous channel's start status.
C/C++
Arguments
Return Value
int RTD2K_GetStartStatuses ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD * dwStatus);
hConnection: The handle for an I/O device connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to be get.
dwStatus: A pointer that stores the contiguous RTD
channel's start status; each bit holds one
channel status. A bit value of 0 represents
the status of the start channel. A bit value of
1 represents the second channel's status. The
values are :
0 : stop
1 : start
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-75
RTD2K_SetStartStatuses This function code is used to set contiguous channel's start status.
C/C++
Arguments
Return Value
int RTD2K_SetStartStatuses ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
DWORD dwStatus);
hConnection: The handle for an I/O device connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to be set.
dwStatus: A pointer that stores the contiguous count
channel's start status; each bit holds one
channel status. A bit value of 0 represents
the status of the start channel. A bit value of
1 represents the second channel's status. The
values are :
0 : stop
1 : start
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-76
RTD2K_GetSensorType This function code is used to get the sensor type for a specific RTD
channel.
C/C++
Arguments
Return Value
int RTD2K_GetSensorType ( int hConnection,
BYTE bytChannel,
WORD * wSensorType );
hConnection: The handle for an I/O device connection.
bytChannel : The specific channel to be get.
wSensorType: A pointer that stores the specific RTD
channel's sensor type. The values for normal
channels are:
0=PT50
1=PT100
2=PT200
3=PT500
4=PT1000
5=JPT100
6=JPT200
7=JPT500
8=JPT1000
9=NI100
10=NI200
11=NI500
12=NI1000
13=NI120
14=310 Ohm
15=620 Ohm
16=1250 Ohm
17=2500 Ohm
Others : return Illegal Data Value
The values for virtual channels are:
20=AVG
21=DIV
Others : return Illegal Data Value
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-77
RTD2K_SetSensorType This function code is used to set the sensor type for a specific RTD
channel.
C/C++
Arguments
Return Value
int RTD2K_SetSensorType ( int hConnection,
BYTE bytChannel,
WORD wSensorType);
hConnection: The handle for an I/O device connection.
bytChannel : The specific channel to be set.
wSensorType: A pointer that stores the specific RTD
channel's sensor type. The values for normal
channels are:
0=PT50
1=PT100
2=PT200
3=PT500
4=PT1000
5=JPT100
6=JPT200
7=JPT500
8=JPT1000
9=NI100
10=NI200
11=NI500
12=NI1000
13=NI120
14=310 Ohm
15=620 Ohm
16=1250 Ohm
17=2500 Ohm
Others : return Illegal Data Value
The values for virtual channels are:
20=AVG
21=DIV
Others : return Illegal Data Value
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-78
RTD2K_GetSensorTypes This function code is used to get contiguous RTD channel's sensor
type.
C/C++
Arguments
Return Value
int RTD2K_GetSensorTypes ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wSensorType[ ]);
hConnection: The handle for an I/O device connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to be get.
wSensorType: An array that stores the contiguous RTD
channel's sensor type, wSensorType[0]
represents the value of the starting channel.
The values for normal channel are:
0=PT50
1=PT100
2=PT200
3=PT500
4=PT1000
5=JPT100
6=JPT200
7=JPT500
8=JPT1000
9=NI100
10=NI200
11=NI500
12=NI1000
13=NI120
14=310 Ohm
15=620 Ohm
16=1250 Ohm
17=2500 Ohm
Others : return Illegal Data Value
The values for virtual channels are:
20=AVG
21=DIV
Others : return Illegal Data Value
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-79
RTD2K_SetSensorTypes This function code is used to set contiguous RTD channel's sensor
type.
C/C++
Arguments
Return Value
int RTD2K_SetSensorTypes ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wSensorType[ ]);
hConnection: The handle for an I/O device connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to be set.
wSensorType: An array that stores the contiguous RTD
channel's sensor type, wSensorType[0]
represents the value of the starting channel.
The values for normal channel are:
0=PT50
1=PT100
2=PT200
3=PT500
4=PT1000
5=JPT100
6=JPT200
7=JPT500
8=JPT1000
9=NI100
10=NI200
11=NI500
12=NI1000
13=NI120
14=310 Ohm
15=620 Ohm
16=1250 Ohm
17=2500 Ohm
Others : return Illegal Data Value
The values for virtual channels are:
20=AVG
21=DIV
Others : return Illegal Data Value
Succeed MXIO_OK.
F
a
il R
e
f
e
r
t
o
R
et
ur
n
C
ode
s
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-80
RTD2K_GetEngUnit This function code is used to get the engineering unit for a specific
RTD channel.
C/C++
Arguments
Return Value
int RTD2K_GetEngUnit ( int hConnection,
BYTE bytChannel,
WORD * wEngUnit );
hConnection: The handle for an I/O device connection.
bytChannel : The specific channel to be get.
wEngUnit: A pointer that stores the specific RTD
channel's engineering unit. The values for
normal channels are:
0=Celsius
1=Fahrenheit
2=Ohm
Others_: return Illegal Data Value
The values for virtual channels are:
0=Celsius
1=Fahrenheit
Others_: return Illegal Data Value
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
RTD2K_SetEngUnit This function code is used to set the engineering unit for a specific
RTD channel.
C/C++
Arguments
Return Value
int RTD2K_SetEngUnit ( int hConnection,
BYTE bytChannel,
WORD wEngUnit);
hConnection: The handle for an I/O device connection.
bytChannel : The specific channel to be set.
wEngUnit: A pointer that stores the specific RTD
channel's engineering unit. The values for
normal channels are:
0=Celsius
1=Fahrenheit
2=Ohm
Others_: return Illegal Data Value
The values for virtual channels are:
0=Celsius
1=Fahrenheit
Others_: return Illegal Data Value
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-81
RTD2K_GetEngUnits This function code is used to get contiguous RTD channel's
engineering unit.
C/C++
Arguments
Return Value
int RTD2K_GetEngUnits ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wEngUnit[ ]);
hConnection: The handle for an I/O device connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to be gets.
wEngUnit: An array that stores the contiguous RTD
channel's engineering unit, wEngUnit[0]
represents the value of the starting channel.
The values for normal channel are:
0=Celsius
1=Fahrenheit
2=Ohm
Others_: return Illegal Data Value
The values for virtual channels are:
0=Celsius
1=Fahrenheit
Others_: return Illegal Data Value
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-82
RTD2K_SetEngUnits This function code is used to get contiguous RTD channel's
engineering unit.
C/C++
Arguments
Return Value
int RTD2K_SetEngUnits ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wEngUnit[ ]);
hConnection: The handle for an I/O device connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to be set.
wEngUnit: An array that stores the contiguous RTD
channel's engineering unit, wEngUnit[0]
represents the value of the starting channel.
The values for normal channel are:
0=Celsius
1=Fahrenheit
2=Ohm
Others_: return Illegal Data Value
The values for virtual channels are:
0=Celsius
1=Fahrenheit
Others_: return Illegal Data Value
Succeed MXIO_OK.
Fail Refer to Return Codes.
RTD2K_GetMathPar This function code is used to get the math parameter for a specific
RTD channel.
C/C++
Arguments
Return Value
int RTD2K_GetMathPar ( int hConnection,
BYTE bytChannel,
WORD * wMathPar );
hConnection: The handle for an I/O device connection.
bytChannel : The specific channel to be get.
wMathPar: A pointer that stores the specific RTD
channel's math parameter. For AVG,Bit 0 of
high byte represents the first channel and Bit
1 of high byte represents the second
channel.For DEV,the High-Byte as
subtrahend and Low-Byte as minuend.
Exp : AVG( b’0000-0000 b’0010-0011) = ch5+ch1+ch0
Exp : DEV( b’0000-0100 b’0010-0000) = ch2-ch6
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-83
RTD2K_SetMathPar This function code is used to set the math parameter for a specific
RTD channel.
C/C++
Arguments
Return Value
int RTD2K_SetMathPar ( int hConnection,
BYTE bytChannel,
WORD wMathPar);
hConnection: The handle for an I/O device connection.
bytChannel : The specific channel to be set.
wMathPar: A pointer that stores the specific RTD
channel's math parameter. For AVG, Bit 0 o
f
high byte represents the first channel and Bit
1 of high byte represents the second channel.
For DEV,the High-Byte as subtrahend and
Low-Byte as minuend.
Exp : AVG( b’0000-0000 b’0010-0011) = ch5+ch1+ch0
Exp : DEV( b’0000-0100 b’0010-0000) = ch2-ch6
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
RTD2K_GetMathPars This function code is used to get contiguous RTD channel's math
parameter.
C/C++
Arguments
Return Value
int RTD2K_GetMathPars ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wMathPar[ ]);
hConnection: The handle for an I/O device connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to be gets.
wMathPart: An array that stores the contiguous RTD
channel's math parameter, wMathPar[0]
represents the value of the starting channel.
The values are :
For AVG,Bit 0 of high byte represents the
first channel and Bit 1 of high byte
represents the second channel.
For DEV,High-Byte as subtrahend and
Low-Byte as minuend.
Exp : AVG( b’0000-0000 b’0010-0011) = ch5+ch1+ch0
Exp : DEV( b’0000-0100 b’0010-0000) = ch2-ch6
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-84
RTD2K_SetMathPars This function code is used to set contiguous RTD channel's math
parameter.
C/C++
Arguments
Return Value
int RTD2K_SetMathPars ( int hConnection,
BYTE bytStartChannel,
BYTE bytCount,
WORD wMathPar[ ]);
hConnection: The handle for an I/O device connection.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to be sets.
wMathPart: An array that stores the contiguous RTD
channel's math parameter, wMathPar[0]
represents the value of the starting channel.
The values are :
For AVG,Bit 0 of high byte represents the
first channel and Bit 1 of high byte
represents the second channel.
For DEV,High-Byte as subtrahend and
Low-Byte as minuend.
Exp : AVG( b’0000-0000 b’0010-0011) = ch5+ch1+ch0
Exp : DEV( b’0000-0100 b’0010-0000) = ch2-ch6
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
Thermocouple Commands
TC_Reads This function code is used to read the temperature values for
contiguous channels.
C/C++
Arguments
Return Value
int TC_Reads ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
double dValue[ ]);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
dValue: An array that stores the temperature values of
the contiguous channels. dValue[0] represents
start channel 0. When dValue is 0x8000, it
means the sensor is not correctly wired. When
the operating mode of the TC module is voltage
input, the unit is μv. Use ioAdmin to check the
I/O module settings.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-85
TC_Read This function code is used to read the temperature value of a
specific channel.
C/C++
Arguments
Return Value
int TC_Read ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
double * dValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytChannel: The desired channel.
dValue: Stores the temperature value of the desired
channel. When dValue is 0x8000, it means the
sensor is not wired correctly. When the
operating mode of the TC module is voltage
input, the unit is μv. Use ioAdmin to check the
I/O module settings.
Succeed MXIO_OK.
Fail Refer to Return Codes.
TC_ReadRaws This function code is used to read the temperature value of
contiguous channels in raw data format.
C/C++
Arguments
Return Value
int TC_ReadRaws ( int hConnection,
BYTE bytSlot,
BYTE bytStartChannel,
BYTE bytCount,
WORD wValue[ ]);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytStartChannel: Specifies the starting channel.
bytCount: The number of channels to read.
wValue: An array that stores the temperature values of
the contiguous channels in raw data format.
wValue[0] represents start channel 0. When
wValue is 0x8000, it means the sensor is not
correctly wired. When the operating mode is
temperature sensor, 0.1°C (°F). When the
operating mode of the TC module is -78.0 ~
78.0 mV, 10 uV/count. When the operating
mode of the TC module is -32.7 ~ 32.7 mV,
1uV/count. When the operating mode of the TC
module is -65.5 ~ 65.5 mV, 2uV/count. Use
ioAdmin to check the I/O module settings.
Succeed MXIO_OK.
Fail Refer to Return Codes.
ioLogik MXIO DLL API Reference Direct I/O Command Sets
6-86
TC_ReadRaw This function code is used to read the temperature value of a
specific channel in raw data format.
C/C++
Arguments
Return Value
int TC_ReadRaw ( int hConnection,
BYTE bytSlot,
BYTE bytChannel,
WORD * wValue);
hConnection: The handle for an I/O connection.
bytSlot: Slot number of the I/O module, from 1 to 32.
This parameter is inactive for the ioLogik
E2000 and R2000.
bytChannel: The desired channel.
wValue: A pointer to the temperature value to read.
When wValue is 0x8000, it means the sensor is
not correctly wired. When the operating mode
is temperature sensor, 0.1°C (°F). When the
operating mode of the TC module is -78.0 ~
78.0 mV, 10uV/count. When the operating
mode of the TC module is -32.7 ~ 32.7 mV,
1uV/count. When the operating mode of the TC
module is -65.5 ~ 65.5 mV, 2uV/count. Use
ioAdmin to check the I/O module settings.
Succeed MXIO_OK.
Fail Refer
t
o Re
t
u
r
n Codes.
7
7
7
77
7
7
7
77
Chapter 7. Click&Go Logic Commands
Click&Go logic commands are for ioLogik E2000 Ethernet I/O only. These commands involve the
activation of Click&Go logic on an ioLogik E2000 I/O.
Logic2K_GetStartStatus This function code is used to verify activation of Click&Go logic
on an ioLogik E2000 Ethernet I/O.
C/C++
Arguments
Return Value
int Logic2K_GetStartStatus ( int hConnection,
WORD * wStatus);
hConnection: The handle for an I/O connection.
wStatus: A pointer to the I/O Click&Go Logic activation
status. The values are :
0: Click&Go logic is not activated
1: Click&Go logic is activated
Succeed MXIO_OK.
Fail Refer to Return Codes.
Logic2K_SetStartStatus This function code is used to activate or deactivate Click&Go
logic on an ioLogik E2000 Ethernet I/O.
C/C++
Arguments
Return Value
int Logic2K_SetStartStatus ( int hConnection,
WORD wStatus);
hConnection: The handle for an I/O connection.
bytChannel: The desired channel.
wStatus: Stores the I/O Click&Go logic activation
status. The values are:
0: Click&Go logic is not activated
1: Click&Go logic is activated
Succeed MXIO_OK.
Fail Refer to Return Codes.
9
9
9
99
9
9
9
99
Chapter 9. Return Codes
Return Value Value Description
MXIO_OK 0 Function call was successful.
ILLEGAL_FUNCTION 1001 The function code received in the
query is not an allowable action for
the server (or slave).
ILLEGAL_DATA_ADDRESS 1002 The data address received in the
query is not an allowable address for
the server (or slave).
ILLEGAL_DATA_VALUE 1003 A value contained in the query data
field is not an allowable value for the
server (or slave).
SLAVE_DEVICE_FAILURE 1004 An unrecoverable error occurred while the
server (or slave) was attempting to perform
the requested action.
SLAVE_DEVICE_BUSY 1006 Specialized use in conjunction with
programming commands. The server (or
slave) is engaged in processing a
long-duration program command. The
client (or master) should retransmit the
message later when the server (or slave) is
free.
EIO_TIME_OUT 2001 The following situation may cause an
EIO_TIME_OUT :
1. Open socket timeout.
2. Send command to the I/O server timeout.
3. I/O response timeout.
EIO_INIT_SOCKETS_FAIL 2002 An error occurred when the Windows
system couldn’t complete SOCKET INIT.
EIO_CREATING_SOCKET_ERROR 2003 An error occurred when the Windows
system couldn’t initiate Socket.
EIO_RESPONSE_BAD 2004 The data received from Ethernet I/O server is
incorrect.
EIO_SOCKET_DISCONNECT 2005 The network connection from host computer
is down.
PROTOCOL_TYPE_ERROR 2006 Protocol type error.
SIO_OPEN_FAIL 3001 Open COM port failure.
SIO_TIME_OUT 3002 Unable to communicate to the COM
port in the designated time.

Termékspecifikációk

Márka: Moxa
Kategória: nincs kategorizálva
Modell: M-4211

Szüksége van segítségre?

Ha segítségre van szüksége Moxa M-4211, tegyen fel kérdést alább, és más felhasználók válaszolnak Önnek




Útmutatók nincs kategorizálva Moxa

Moxa

Moxa UPort 1450I Útmutató

1 Április 2025
Moxa

Moxa OnCell G3150 Útmutató

21 Augusztus 2024
Moxa

Moxa ioLogik R1241 Útmutató

21 Augusztus 2024
Moxa

Moxa 4101-MB-PBS Útmutató

21 Augusztus 2024
Moxa

Moxa MGate EIP3270 Útmutató

21 Augusztus 2024
Moxa

Moxa M-3411 Útmutató

21 Augusztus 2024
Moxa

Moxa M-1600 Útmutató

21 Augusztus 2024
Moxa

Moxa TCC-80-RP Útmutató

21 Augusztus 2024

Útmutatók nincs kategorizálva

Legújabb útmutatók nincs kategorizálva

MOZA

MOZA SR-P Útmutató

10 Április 2025
CaterChef

CaterChef 445001 Útmutató

9 Április 2025
IFM

IFM E40581 Útmutató

9 Április 2025
Livn

Livn Bolt Útmutató

9 Április 2025
Livn

Livn Beats Útmutató

9 Április 2025
IFM

IFM O3R252 Útmutató

9 Április 2025