Modbus - Industrial Analog Out Bricklet

This is the description of the Modbus protocol for the Industrial Analog Out Bricklet. General information and technical specifications for the Industrial Analog Out Bricklet are summarized in its hardware description.

API

A general description of the Modbus protocol structure can be found here.

Basic Functions

BrickletIndustrialAnalogOut.enable
Function ID:
  • 1
Request:
  • empty payload
Response:
  • no response

Enables the output of voltage and current.

The default is disabled.

BrickletIndustrialAnalogOut.disable
Function ID:
  • 2
Request:
  • empty payload
Response:
  • no response

Disables the output of voltage and current.

The default is disabled.

BrickletIndustrialAnalogOut.is_enabled
Function ID:
  • 3
Request:
  • empty payload
Response:
  • enabled – Type: bool, Default: false

Returns true if output of voltage and current is enabled, false otherwise.

BrickletIndustrialAnalogOut.set_voltage
Function ID:
  • 4
Request:
  • voltage – Type: uint16, Unit: 1 mV, Range: [0 to 10000]
Response:
  • no response

Sets the output voltage.

The output voltage and output current are linked. Changing the output voltage also changes the output current.

BrickletIndustrialAnalogOut.get_voltage
Function ID:
  • 5
Request:
  • empty payload
Response:
  • voltage – Type: uint16, Unit: 1 mV, Range: [0 to 10000]

Returns the voltage as set by set_voltage.

BrickletIndustrialAnalogOut.set_current
Function ID:
  • 6
Request:
  • current – Type: uint16, Unit: 1 µA, Range: [0 to 24000]
Response:
  • no response

Sets the output current.

The output current and output voltage are linked. Changing the output current also changes the output voltage.

BrickletIndustrialAnalogOut.get_current
Function ID:
  • 7
Request:
  • empty payload
Response:
  • current – Type: uint16, Unit: 1 µA, Range: [0 to 24000]

Returns the current as set by set_current.

Advanced Functions

BrickletIndustrialAnalogOut.set_configuration
Function ID:
  • 8
Request:
  • voltage_range – Type: uint8, Range: See meanings, Default: 1
  • current_range – Type: uint8, Range: See meanings, Default: 0
Response:
  • no response

Configures the voltage and current range.

Possible voltage ranges are:

  • 0V to 5V
  • 0V to 10V

Possible current ranges are:

  • 4mA to 20mA
  • 0mA to 20mA
  • 0mA to 24mA

The resolution will always be 12 bit. This means, that the precision is higher with a smaller range.

The following meanings are defined for the elements of this function:

For voltage_range:

  • 0 = 0 To 5V
  • 1 = 0 To 10V

For current_range:

  • 0 = 4 To 20mA
  • 1 = 0 To 20mA
  • 2 = 0 To 24mA
BrickletIndustrialAnalogOut.get_configuration
Function ID:
  • 9
Request:
  • empty payload
Response:
  • voltage_range – Type: uint8, Range: See meanings, Default: 1
  • current_range – Type: uint8, Range: See meanings, Default: 0

Returns the configuration as set by set_configuration.

The following meanings are defined for the elements of this function:

For voltage_range:

  • 0 = 0 To 5V
  • 1 = 0 To 10V

For current_range:

  • 0 = 4 To 20mA
  • 1 = 0 To 20mA
  • 2 = 0 To 24mA
BrickletIndustrialAnalogOut.get_identity
Function ID:
  • 255
Request:
  • empty payload
Response:
  • uid – Type: char[8]
  • connected_uid – Type: char[8]
  • position – Type: char, Range: ['a' to 'h', 'z']
  • hardware_version – Type: uint8[3]
    • 0: major – Type: uint8, Range: [0 to 255]
    • 1: minor – Type: uint8, Range: [0 to 255]
    • 2: revision – Type: uint8, Range: [0 to 255]
  • firmware_version – Type: uint8[3]
    • 0: major – Type: uint8, Range: [0 to 255]
    • 1: minor – Type: uint8, Range: [0 to 255]
    • 2: revision – Type: uint8, Range: [0 to 255]
  • device_identifier – Type: uint16, Range: [0 to 216 - 1]

Returns the UID, the UID where the Bricklet is connected to, the position, the hardware and firmware version as well as the device identifier.

The position can be 'a', 'b', 'c', 'd', 'e', 'f', 'g' or 'h' (Bricklet Port). A Bricklet connected to an Isolator Bricklet is always at position 'z'.

The device identifier numbers can be found here