IO — HILSTER’s proprietary IO-hardware

Introduction

HILSTER offers prorietary IO-hardware that is DIN rail mountable. Currently there are four different types and sizes available.

You need the io feature in your license to unlock the IO hardware features.

For every device an abstraction is available. To read inputs or write outputs you simply have to assign a value to an output or read an input. The abstractors offer members with the name of the inputs and outputs, e.g. io.R6 for relay 6, io.DO0 for digital output 0 or io.AI3 for analog input 3.

For example to switch on a relay io.R6 you have to assign True to it.

io.R6 = True

To reset the reley you have to assign False.

io.R6 = False

To set the digital output pin io.D3 you have to assign True to it.

io.D3 = True

To reset the digital output pin assign False to it.

io.R6 = False

To set an analog (pwm) level to 50 % you have to assign an integer value knowing the underlying pwm type. In the following example an 8-bit-pwm is assumed.

io.AO0 = 0xf7  # 50 % pwm level

Finally to read an analog level you have to read you simply have to read an analog input

analog_value = io.AI3

IO Mini

../../_images/IOMini.jpg

Features:

  • 6 relays (230 V/6 A)

  • 8 analog/digital inputs

  • 4 digital outputs (2 A)

  • 1 UART

  • 1 SPI

  • 1 I2C

  • RTC

class htf.io.IOMini(port, timeout=1.0)

Initialize an IOMini.

Parameters
  • port (str) – the name of the serial connection

  • timeout=1.0 (float) – the time-out in seconds

A0 = None

Analog input A0

A1 = None

Analog input A1

A2 = None

Analog input A2

A3 = None

Analog input A3

A4 = None

Analog input A4

A5 = None

Analog input A5

D0 = None

Digital output D0

D1 = None

Digital output D1

D2 = None

Digital output D2

D3 = None

Digital output D3

D4 = None

Digital output D4

D5 = None

Digital output D5

D6 = None

Digital output D6

D7 = None

Digital output D7

IN0 = None

Digital input IN0

IN1 = None

Digital input IN1

__del__()

Automatically close serial connection on deletion.

close()

Close the serial connection.

get_board_name()

Return the board name read from the device.

get_version()

Return the version read from the device.

Usage:

>>> from htf.io import IOMini as IO
>>> io = IO("/dev/ttyACM0")
>>> # set D1
>>> io.D1 = True
>>> # reset D1
>>> io.D1 = False
>>> #read A0
>>> analog_value = io.A0
>>> #read D0
>>> digital_value = io.D0
>>> # etc.

IO Maxi

../../_images/IOMaxiAutomation.jpg

Features:

  • 10 relays (230V/6A)

  • 2 analog outputs (0 to 10 V)

  • 12 analog inputs (24 V)

  • 12 digital inputs (24 V)

  • 8 digital outputs (24 V)

  • 2 UART

  • 1 SPI

  • 1 I2C

  • RTC

  • Ethernet

class htf.io.IOMaxi(port, timeout=1.0)

Initialize an IOMaxi.

Parameters
  • port (str) – the name of the serial connection

  • timeout=1.0 (float) – the time-out in seconds

A0 = None

Analog input A0

A1 = None

Analog input A1

A2 = None

Analog input A2

A3 = None

Analog input A3

A4 = None

Analog input A4

A5 = None

Analog input A5

A6 = None

Analog input A6

A7 = None

Analog input A7

A8 = None

Analog input A8

A9 = None

Analog input A9

D0 = None

Digital output D0

D1 = None

Digital output D1

D10 = None

Digital output D10

D11 = None

Digital output D11

D2 = None

Digital output D2

D3 = None

Digital output D3

D4 = None

Digital output D4

D5 = None

Digital output D5

D6 = None

Digital output D6

D7 = None

Digital output D7

D8 = None

Digital output D8

D9 = None

Digital output D9

IN0 = None

Digital input IN0

IN1 = None

Digital input IN1

R0 = None

Relay R0

R1 = None

Relay R1

R2 = None

Relay R2

R3 = None

Relay R3

R4 = None

Relay R4

R5 = None

Relay R5

R6 = None

Relay R6

R7 = None

Relay R7

R8 = None

Relay R8

R9 = None

Relay R9

__del__()

Automatically close serial connection on deletion.

close()

Close the serial connection.

get_board_name()

Return the board name read from the device.

get_version()

Return the version read from the device.

Usage:

>>> from htf.io import IOMaxi as IO
>>> io = IO("/dev/ttyACM0")
>>> # set R6
>>> io.R6 = True
>>> # reset R6
>>> io.R6 = False
>>> #read AI0
>>> analog_value = io.AI0
>>> #read DI0
>>> digital_value = io.DI0
>>> # etc.

IO Maxi Automation

../../_images/IOMaxiAutomation.jpg

Features:

  • 10 relays (230 V/6 A)

  • 2 analog outputs (0 to 24 V)

  • 2 analog inputs (10 V)

  • 12 analog/digital inputs (24 V)

  • 4 digital inputs (24 V)

  • 8 digital outputs (24 V)

  • 2 UART

  • 1 SPI

  • 1 I2C

  • RTC

  • Ethernet

class htf.io.IOMaxiAutomation(port, timeout=1.0)

Initialize an IOMaxiAutomation.

Parameters
  • port (str) – the name of the serial connection

  • timeout=1.0 (float) – the time-out in seconds

AI0 = None

Analog input AI0

AI1 = None

Analog input AI1

AI10 = None

Analog input AI10

AI11 = None

Analog input AI11

AI12 = None

Analog input AI12

AI13 = None

Analog input AI13

AI2 = None

Analog input AI2

AI3 = None

Analog input AI3

AI4 = None

Analog input AI4

AI5 = None

Analog input AI5

AI6 = None

Analog input AI6

AI7 = None

Analog input AI7

AI8 = None

Analog input AI8

AI9 = None

Analog input AI9

AO0 = None

Analog output AO0

AO1 = None

Analog output AO1

DI0 = None

Digital input DI0

DI1 = None

Digital input DI1

DI2 = None

Digital input DI2

DI3 = None

Digital input DI3

DO0 = None

Digital output DO0

DO1 = None

Digital output DO1

DO2 = None

Digital output DO2

DO3 = None

Digital output DO3

DO4 = None

Digital output DO4

DO5 = None

Digital output DO5

DO6 = None

Digital output DO6

DO7 = None

Digital output DO7

IN1 = None

Digital input IN1

IN2 = None

Digital input IN2

R0 = None

Relay R0

R1 = None

Relay R1

R2 = None

Relay R2

R3 = None

Relay R3

R4 = None

Relay R4

R5 = None

Relay R5

R6 = None

Relay R6

R7 = None

Relay R7

R8 = None

Relay R8

R9 = None

Relay R9

__del__()

Automatically close serial connection on deletion.

close()

Close the serial connection.

get_board_name()

Return the board name read from the device.

get_version()

Return the version read from the device.

Usage:

>>> from htf.io import IOMaxiAutomation as IO
>>> io = IO("/dev/ttyACM0")
>>> # set R6
>>> io.R6 = True
>>> # reset R6
>>> io.R6 = False
>>> #read AI0
>>> analog_value = io.AI0
>>> #read DI0
>>> digital_value = io.DI0
>>> # etc.

IO Mega

../../_images/IOMega.jpg

Features:

  • 16 relays (230 V/6 A)

  • 2 analog outputs (0 to 10 V)

  • 21 analog inputs (24 V)

  • 12 digital outputs (24 V)

  • 2 UART

  • 1 RS485

  • 1 SPI

  • 1 I2C

  • RTC

  • Ethernet

class htf.io.IOMega(port, timeout=1.0)

Initialize an IOMega.

Parameters
  • port (str) – the name of the serial connection

  • timeout=1.0 (float) – the time-out in seconds

A0 = None

Analog input A0

A1 = None

Analog input A1

A10 = None

Analog input A10

A11 = None

Analog input A11

A12 = None

Analog input A12

A13 = None

Analog input A13

A14 = None

Analog input A14

A15 = None

Analog input A15

A2 = None

Analog input A2

A3 = None

Analog input A3

A4 = None

Analog input A4

A5 = None

Analog input A5

A6 = None

Analog input A6

A7 = None

Analog input A7

A8 = None

Analog input A8

A9 = None

Analog input A9

D0 = None

Digital output D0

D1 = None

Digital output D1

D10 = None

Digital output D10

D11 = None

Digital output D11

D12 = None

Digital output D12

D13 = None

Digital output D13

D14 = None

Digital output D14

D15 = None

Digital output D15

D16 = None

Digital output D16

D17 = None

Digital output D17

D18 = None

Digital output D18

D19 = None

Digital output D19

D2 = None

Digital output D2

D3 = None

Digital output D3

D4 = None

Digital output D4

D5 = None

Digital output D5

D6 = None

Digital output D6

D7 = None

Digital output D7

D8 = None

Digital output D8

D9 = None

Digital output D9

I16 = None

Digital input I16

I17 = None

Digital input I17

I18 = None

Digital input I18

IN0 = None

Digital input IN0

IN1 = None

Digital input IN1

R0 = None

Relay R0

R1 = None

Relay R1

R10 = None

Relay R10

R11 = None

Relay R11

R12 = None

Relay R12

R13 = None

Relay R13

R14 = None

Relay R14

R15 = None

Relay R15

R2 = None

Relay R2

R3 = None

Relay R3

R4 = None

Relay R4

R5 = None

Relay R5

R6 = None

Relay R6

R7 = None

Relay R7

R8 = None

Relay R8

R9 = None

Relay R9

__del__()

Automatically close serial connection on deletion.

close()

Close the serial connection.

get_board_name()

Return the board name read from the device.

get_version()

Return the version read from the device.

Usage:

>>> from htf.io import IOMega as IO
>>> io = IO("/dev/ttyACM0")
>>> # set R6
>>> io.R6 = True
>>> # reset R6
>>> io.R6 = False
>>> #read AI0
>>> analog_value = io.AI0
>>> #read DI0
>>> digital_value = io.DI0
>>> # etc.