Skip to main content

smartIO 8x24

Description

PCB smartIO 8x24

The smartIO 8x24 offers connection options for 8 analog signal sources for voltage or current measurement with the following selectable measuring ranges:

  • ±160V, ±80V, ±40V, ±20V, ±10V, ±5V
  • ±200mA, ±100mA, ±50mA, ±25mA

Other key parameters are

  • Sampling rate up to 1 kHz
  • 24 bit analog-to-digital converter
  • Common-mode voltage up to 100V
  • Current input with overload protection
  • Sensor linearization via polynomial
  • Various filter options
  • Isolation between process, supply and digital interfaces up to 1700 V DC

The module is configured via a serial interface (USB) and the extensive SCPI command set using any terminal program or, preferably, optiCONTROL. This configuration also includes the addresses, transmission rates and assignment of the CAN messages. Configuration in the field can be carried out via the CAN bus using the console application smiocan. This is part of the current versions in the Yocto-Linux of the smart family (smartMINI, smartRAIL, ...).

Each module is individually tested as a RAIL version with regard to dielectric strength and insulation between the process and USB side. The sturdy aluminum housing and the protective coating of the circuit board in accordance with EN50155 also meet the requirements for use on rail vehicles.

Even if the module is integrated in the smartRAIL housing, the connection for CAN and power supply is made via the two M12 connections. These can be connected in series with the smartRAIL connection using a short M12 connection cable.

optiMEAS reserves the right to make changes and errors in this and all other data, descriptions or examples relating to this product.

Function

Schematic input channel

The smartIO 8x24 has 8 inputs, each of which is are identically constructed:

  • The connections of the voltage input (U_IN, COM) are each connected with a high impedance of Rin=1MΩR_{\rm{in}} = 1 M\Omega, an operating mode selector switch and the subsequent input amplifier with Sallen-Key filter (SKF).

  • The connections of the current input (I_IN, COM) are connected to each other via a poly-fuse (PF) to protect against overload and a small shunt resistor RShunt=10ΩR_{\rm{Shunt}} = 10 \Omega. The voltage is tapped at the shunt with a high impedance of Rin=1MΩR_{\rm{in}} = 1 M\Omega and leads via the operating mode selector switch to the downstream input amplifier with Sallen key filter (SKF).

  • The COM connections of the 8 channels are only connected to each other via the input impedances RinR_{\rm{in}} and a virtual ground point. This means that the inputs are designed for differential measurement in every operating mode. The COM connection must therefore be set to a reference potential on each channel used.

  • The common-mode voltage 1 between the inputs may be up to 100V DC.

  • The Sallen key filter limits the bandwidth of the input to 480 Hz and thus acts as an anti-aliasing filter for the subsequent AD converter.

  • The AD converter based on the delta-sigma method is configurable up to sampling rates of 1 kHz, synchronous for all input channels. The programmable input gain enables different measuring ranges, the conversion width is 24 bit.

  • A calibration data set is stored for each amplification and operating mode (U/I), which is used to calculate the measurement voltage or current at the input.

  • This calibrated measured variable can be offset against a user polynomial2 to map a sensor characteristic curve. This allows the module to output the physical measured variable of the sensor directly via CAN.

  • This physical measured variable is fed to different filter stages in parallel:

    • a 1st order low-pass filter
    • a moving average filter
    • a moving RMS filter

The window width of the sliding filters and the time constant for the low-pass filters can be set together for all channels. With a window width of 300 samples, true RMS values for AC signals with the typical frequencies of 50 Hz (15 periods), 60 Hz (18 periods) and 16 2/3 Hz (5 periods) can also be measured directly.


Communication

The measured values are transmitted on the CAN bus in individual messages. Up to 20 CAN messages can be configured with:

  • CAN ID (11-bit, 29-bit)
  • Transmission rate in ms, after device start or RTR
  • Content

A large selection of data elements is available for the content, which includes not only the filtered measured values, but also status information on the channel, the internal temperature of the module, firmware and hardware status, or the physical unit. Preferably, the measured values are transmitted as a 4-byte <float>, which eliminates the need for further scaling on the receiver side if the module is planned and set up accordingly. Transmission as <int16> is also possible. In this case, however, the scaling of the output variable depends on the selected measuring range or the user polynomial in order to make the best possible use of the limited value range.

Configuration is carried out using an extended SCPI protocol via the serial interface3, which is available at the USB configuration port (COM, /dev/tty). The serial interface can be addressed with any terminal program4. The module adds an editable command input with history and offers an optional colored output. For certain commands that affect several channels simultaneously, the output is structured in a readable manner. In addition, the end of line used (CR, LF, CRLF) is determined automatically, thus enabling operation on a (classic) terminal. The `__?' command can be used to call up a detailed, documented list of all commands directly from the device. Critical commands are protected by a pass code. The configuration software optiCONTROL provides easy-to-use input masks for the essential settings to configure the module.

A service connection to the new smartIO family can also be established in the field via two reserved CAN messages (0x011, 0x012)5. An extended ISO-TP protocol is used via the messages. In addition to the actual data connection (ASCII/binary), asynchronous status information is also implemented for connection management and command processing on the device side. This makes it possible to select one device at a time for communication on the same CAN messages and to transmit even large amounts of data securely and bidirectionally. Furthermore, access protection is implemented using a seed key procedure.

About this service connection

  • the SCPI command set of the device is used for configuration and
  • a firmware update of the device software can be carried out.

In the current versions of the YOCTO environment, the smiocan console application can be used on the smart family devices to communicate via this service connection. The app offers the following options:

  • Execute device search
  • Set device time/date
  • Various logbook outputs
  • Commands from
    • the Linux command line
    • a batch file or
    • interactively
  • Execute firmware updates for a specific or all devices

Isolation of the connection groups

The input group for supply voltage and CAN bus, the USB configuration interface and the connections to the process are isolated from each other, suitable for systems with 110V nominal operating voltage up to an isolation voltage of 1.7kV DC.

Isolation ESP32

Depending on the design of the module, process inputs are connected to each other with a high impedance to the internal analog reference point (virtual GND) and thus - usually negligibly - also to each other.

Interfaces of the module

Measurement inputs (X10)

Double-row Phoenix terminals with a 3.5 mm pitch are used for the measurement inputs [X10]. The position of pin 1 and the counting direction are marked on the housing.

Measurement input X10

ChannelI_INCOMU_IN
1Pin 1Pin 3Pin 5
2Pin 2Pin 4Pin 6
3Pin 7Pin 9Pin 11
4Pin 8Pin 10Pin 12
5Pin 13Pin 15Pin 17
6Pin 14Pin 16Pin 18
7Pin 19Pin 21Pin 23
8Pin 20Pin 22Pin 24

Suitable plugs from Phoenix are

  • Art.-Nr. 1790399, DFMC 1,5/12-STF-3,5
  • Art.-Nr. 1790580, DFMC 1,5/12-ST-3,5-LR

If several smartIO modules are used, the basic housing of the plug connection on the smartIO and the plugs can be uniquely marked using the coding profile. This makes it possible to pre-assemble the plugs and ensure a mix-up-proof connection.

  • Part no. 1790647, CP-DMC 1.5 NAT - Coding profile

Voltage measurement

The U_IN and COM inputs must be used for a voltage measurement. The measurement is differential, both connections must always be used. The potential difference between different input channels must be within the range of the permissible common mode voltage.

In the configuration of the smartIO, deactivate the current measurement for the corresponding channel (adc:current N, 0) and select a suitable measuring range (adc:gain N, G). The optiCONTROL software is recommended for configuration; configuration via the SCPI interfaces is possible.

Voltage measurement

The following measuring ranges can be set:

Gain GMeasuring range
1±160V\pm160\rm{V}
2±80V\pm80\rm{V}
4±40V\pm40\rm{V}
8±20V\pm20\rm{V}
16±10V\pm10\rm{V}
32±5V\pm5\rm{V}

Current measurement

The inputs I_IN and COM must be used for a current measurement. The measurement is carried out differentially via the internal shunt resistor; both connections must always be used. The measurement can be carried out at any position in the supply circuit of the signal source (high/low side). The potential difference between different input channels must be within the range of the permissible common mode voltage.

In the smartIO configuration, activate the current measurement for the corresponding channel (adc:current N, 1) and select a suitable measuring range (adc:gain N, G). The optiCONTROL software is recommended for configuration; configuration via the SCPI interfaces is possible.

Current measurement

The following measuring ranges can be set:

Gain GMeasuring range
1±200mA\pm200\rm{mA}
2±100mA\pm100\rm{mA}
4±50mA\pm50\rm{mA}
8±25mA\pm25\rm{mA}

The scaling factors 16 and 32 are not calibrated and must not be used for measurements.

Sensor scaling

The measured input variables voltage or current are transmitted via the CAN bus with the factory settings in float format. Scaling to the measuring range used in the DBC file is not necessary. Scaling to the physical measured variable recorded on the sensor can be carried out in the DBC file or, better still, via the polynomial definition in the smartIO. The latter then also enables the correct display of the true RMS values that are calculated in the smartIO.

Sensor scaling

The following is an example of how to determine the coefficients for connecting a 4-20mA pressure sensor:

The polynomial to be determined specifies the relationship between the measurement signal xx (voltage or current at the measurement input) and the physical measured variable yy of the sensor:

y(x)=Polynomial(x)=k=0n1akxk=+a2x2+a1x+a0y(x)=scalex+offset\begin{array}{l} y(x) = Polynomial(x) = \sum\limits_{k = 0}^{n - 1} {{a_k}{x^k} = \ldots + {a_2}{x^2} + {a_1}x + {a_0}} \\ y(x) = \it{scale} \cdot x + \it{offset} \end{array}

The following information can be found in the sensor data sheet:

[xminxmax]=[4mA20mA][yminymax]=[50hPa150hPa]\begin{array}{l} \left[{\begin{array}{cc} {{x_{\min }}}&{{x_{\max }}} \end{array}} \right] = \left[ {\begin{array}{cc} {4{\rm{mA}}}&{20{\rm{mA}}} \end{array}} \right]\\ \left[ {\begin{array}{cc} {{y_{\min }}}&{{y_{\max }}} \end{array}} \right] = [\begin{array}{cc} { - 50{\rm{hPa}}}&{150{\rm{hPa}}} \end{array}] \end{array}

If you insert these points into the above equation, you get:

\begin{array}{l} \it{scale} = \frac{{y_{\max }} - {y_{\min }}}}{{x_{\max }} - {x_{\max }}}} = 12.5\frac{{hPa}}{{mA}}\\ \it{offset} = y({x_{\min }}) - \it{scale} \cdot {x_{\min }} = {y_{\min }} - scale \cdot {x_{\min }} = - 100hPa \end{array}

In this case, the following polynomial would be set in the smartIO for channel N=2:

adc:polynomial 2, 12.5, -100.0
adc:unit 2, "hPa"

The dialog-guided configuration using optiCONTROL is much simpler:

Polynomial setting in optiCONTROL

All result values on the CAN bus are then correctly scaled in hPa for this channel.

Power supply, CAN bus, configuration (X20 - X22)

Supply voltage and CAN bus are available on two M12 connectors (A-coded) [X20] and [X22] according to the Device-Net assignment. The 24V power supply and the CAN bus connection are looped through from the plug to the socket. to the socket. This means that several different smartIO modules can be modules can be connected in series. If no further smartIO module follows, the CAN bus is connected to a plug with an integrated terminating resistor (120 Ω) or directly to the Phoenix terminal. CAN-GND is identical to the supply ground is identical.

M12 connector, USB

CAN In/Out (X20, X22)

The two connections [X20] and [X22] are internally connected 1:1 and functionally identical. The male/female pair design allows the CAN bus to be continued directly bypassing the smartIO.

PinSignalDescription
1CAN shieldCable shielding, is passed through
2+24 VPower supply +24V (nom., see technical data)
3GNDReference ground for power supply and CAN bus
4CAN HCAN bus: CAN high
5CAN LCAN bus: CAN low

Commercially available Device-Net cables that lead from socket to plug can be used. For pre-assembled cables, twisted pair cable bundles must be selected for connection pairs 2 and 3 as well as 4 and 5.

The smartIO itself does not have an internal terminating resistor for the CAN bus. This is available as an accessory in M12 format.

  • Part no. 1507816, SAC-5P-M12MS CAN TR (Male)

  • Part no. 1529344, SAC-5P-M12FS CAN TR (Female)

For information on setting up CAN bus networks and their termination, please refer to this article.

USB (X21)

Behind the USB-UART configuration interface [X21] is a USB-to-serial converter (CP2102N), which is mapped as a virtual COM port under Windows and as /dev/tty* and /dev/serial/by*... under Linux. This connection is also electrically isolated from the process level. The ASCII-based SCPI protocol is used to configure the module. However, the optiCONTROL software from optiMEAS, which provides a graphical user interface with appropriately prepared dialogs, is recommended for configuring the smartIO modules.

Certifications

EC Declaration of Conformity

CE

The CE mark indicates compliance with the

  • EMC Directive,
  • RoHS 2011/65/EU (08.06.2011) and the
  • Low Voltage Directive.

Railway applications-Electronic equipment on railroad vehicles, EN 50155:2017

TopicDescriptionStandard
EN50155For the smartRAIL version, in addition to
the CE declaration of conformity, the following
classifications and certifications for EN50155
are also provided:
EN50155 ClimateEnvironmental conditions:
- AX (2000m)
- TX (...)
- Cold
- Dry heat
- Damp heat cyclic

EN 50125-1 §4.2.1
EN 50155 §4.1.2
EN 50155 §13.4.4
EN 50155 §13.4.5
EN 50155 §13.4.7
IEC61373Swinging Shock
- Swinging
- Shocking

IEC61373 §8 + 9
IEC61373 §10
EN50121EMC + insulation
Piece tests are carried out and recorded
in accordance with EN50155 §12.2

- Visual inspection
- Insulation 500V DC
- Withstand voltage 1.7kV
EN50121-3-2
EN 61000-3-2/3
EN 55016-2-1/2

EN50155 §12.2.1
EN50155 §12.2.9.1
EN50155 §12.2.9.2
EN45545Fire protectionEN45545-2

Technical data

Supply voltage / ambient conditions

ParameterCommentMinTypeMaxUnit
Supply voltagewith reverse polarity protection836V
overvoltage protectionno
ESD protectionTVS diode40V
current consumption@ 24V5060mA
ConnectorA-coded (M + F)M12
Operating temperatureEN 50155 / range TX6-4085°C
Relative humidity(condensing)595%
PCB coatingEN50155PC2
HousingAluminum
length(without connector)124mm
width85mm
Height35mm
Weight330g
Coolingpassive
Protection classISO 20653IP54
mountingmounting rail (EN 50022)TS 35
version RAIL
Insulation resistance@ 500V10GΩG\Omega
withstand voltage test60s1.7kV

CPU

ParameterCommentValueUnit
ProcessorESP32-S3
FamilyXtensa® 32-bit LX7
Clock240MHz
ROMFLASH384kB
RAMSRAM512kB
data bus32bit

Analog inputs, digitization

ParameterCommentMinTypeMaxUnit
NumberVoltage, differential78
Measuring rangeGain = 1-160160V
Gain = 2-8080V
Gain = 4-4040V
Gain = 8-2020V
Gain = 16-1010V
Gain = 32-55V
Accuracyrms(ΔU)/URangerms(\Delta U)/U_{\rm{Range}}0.02% FS
input resistanceRinR_{\rm{in}} to the virt. MP1MΩM\Omega
numberCurrent, differential78
Gain = 1-200200mA
Gain = 2-100100mA
Gain = 4-5050mA
Gain = 8-2525mA
Accuracyrms(ΔI)/IRangerms(\Delta I)/I_{\rm{Range}}0.50% FS
CM suppressionΔc/cmax\Delta c/c_{\rm{max}}0.05% FS
ShuntRShuntR_{\rm{Shunt}}, 1.5W610Ω\Omega
Poly-Fuse32V, fast500mA
input resistanceRinR_{\rm{in}} to the virt. MP1MΩM\Omega
Anti-aliasing filterSallen-Key filter, 2nd order, switchable480Hz
ConverterDelta-Sigma24
sampling rate1000Hz
Output ratevia CAN01000Hz
software filterlowpass, 1st order01000ms
MiWe, RMS300500samples
LinearizationPolynomiala0x0a_0\cdot x^0a14x14a_{14}\cdot x^{14}

Interfaces

ParameterCommentMinTypeMaxUnit
NumberCAN 2.0 B1
baud rateparameterizable5001000kbit/s
plug connectorA-coded (M + F)M12
terminating resistorno
numberSerial /USB1
baud ratefixed38400kbit/s
ConnectorMicro-USB
ChipsetSupply by USBCP2102N
ProtocolSCPI

Both interfaces are isolated from each other and from the measuring input.

The module responds to the SCPI request *idn? with an identification according to the following pattern, whereby the serial number, version status and date/time stamp will vary:

optiMEAS, smartIO, 8X24, 1, 24006200011, 1.35, 0, Nov 22 2024 15:50:07, 20240610

Process image

The following messages are reserved for the smartIO family with ESP controller:

CAN-Id (dec)CAN-Id (hex)Data typeDirectionDescriptionUnit
160x010uint48to all smartIOtimestamp (Unix, 1970-01-01)ms
uint80
uint8Checksum
170x011ISO-TP+8to all smartIODiagnostic interface
180x012ISO-TP+8from activated smartIOdiagnostic interface

The process image for measurement data and status information is freely configured via the SCPI interface. With the factory settings, the following messages and content are sent in Motorola format (MSB) with a baud rate of 500kBit:

can:msg 0x0F0, -2, 9000, 9001, 9002
can:msg 0x0F1, 10, 0, 1
can:msg 0x0F2, 10, 2, 3
can:msg 0x0F3, 10, 4, 5
can:msg 0x0F4, 10, 6, 7
can:msg 0x0F5, 100, 200, 201
can:msg 0x0F6, 100, 202, 203
can:msg 0x0F7, 100, 204, 205
can:msg 0x0F8, 100, 206, 207
can:msg 0x0FD, 1000, 8000, 8001, 8002, 8300, 8301, 8110
CAN-Id (dec)CAN-Id (hex)Param.-IDData typeOutput clockDescriptionUnit
2400x0F09000uint40Startup + RTRSerial Number
240062#####
9001uint8HW Version
9002uint16SW Version0.01\cdot 0.01
2410x0F10float10 msInput 1, PT1-FilterV, mA, X
1floatInput 2, PT1 filterV, mA, X
2420x0F22float10 msInput 3, PT1 filterV, mA, X
3floatInput 4, PT1 filterV, mA, X
2430x0F34float10 msInput 5, PT1 filterV, mA, X
5floatInput 6, PT1 filterV, mA, X
2440x0F46float10 msInput 7, PT1 filterV, mA, X
7floatInput 8, PT1 filterV, mA, X
2450x0F5200float100 msInput 1, RMS[300]V, mA, X
201floatInput 2, RMS[300]V, mA, X
2460x0F6202float100 msInput 3, RMS[300]V, mA, X
203floatInput 4, RMS[300]V, mA, X
2470x0F7204float100 msInput 5, RMS[300]V, mA, X
205floatInput 6, RMS[300]V, mA, X
2480x0F8206float100 msInput 7, RMS[300]V, mA, X
207floatInput 8, RMS[300]V, mA, X
2530x0FD8000uint81000 msCPU0 load%
8001uint8CPU1 load%
8002uint16PCB Temperature0.1 °C
8300uint8Status SK filter, `bool[8]
8301uint8Current-Modes, `bool[8]
8110uint16Missing ADC
cycles

Footnotes

  1. Based on the average voltage potential between U_IN or I_IN and COM.

  2. Polynomial up to a14x14+...a2x2+a1x+a0a_{14}\cdot x^{14} + ... a_2 \cdot x^2 + a_1 \cdot x + a_0, the polynomial is calculated according to the Horner scheme

  3. 38400 baud, 8 data, 1 stop, no parity, [x] Local Echo, [x] Implicit CR with LF (receive)

  4. E.g. PuTTY or TeraTerm - these are not part of the scope of delivery

  5. The addresses used represent the optiMEAS standard for the administration of the smartIO family. They can be changed for special areas of application in order to avoid collisions with existing communication protocols. These messages are free in the CANopen standard.

  6. The measured currents are converted directly at the shunts into a corresponding heat output of up to 0.4W / channel. If all channels are operated constantly at 200 mA, an additional heat output of 3.2W is generated on the module! Although this is tested and permissible as a continuous load, it leads to a significant heating of the entire module depending on the ambient conditions. No negative effects are to be expected for typical measurement operation with dynamic measurement signals. 2

  7. Either the voltage measurement or current measurement operating mode must be selected for each input. 2

  8. For the diagnostic interface, the ISO-TP protocol is extended by the type code 0xE0 for the Connection Management Layer (CML). The data packets have a length of 1 to 8 bytes, depending on their content and function. 2