WireSTSDK
  • wire_st_sdk package
    • Subpackages
      • wire_st_sdk.iolink package
        • Submodules
        • wire_st_sdk.iolink.iolink_device module
        • wire_st_sdk.iolink.iolink_master module
        • wire_st_sdk.iolink.iolink_protocol module
        • wire_st_sdk.iolink.iolink_sensor module
        • Module contents
      • wire_st_sdk.utils package
    • Module contents
WireSTSDK
  • Docs »
  • wire_st_sdk package »
  • wire_st_sdk.iolink package
  • View page source

wire_st_sdk.iolink package¶

Submodules¶

wire_st_sdk.iolink.iolink_device module¶

iolink_device

The iolink_device module represent a device capable of connecting to an IO-Link masterboard and sending/receiving data to it.

class wire_st_sdk.iolink.iolink_device.IOLinkDevice(master, position, id, name=None)[source]¶

Bases: object

IO-Link Device class.

This class manages the commands of a standard IO-Link device.

__init__(master, position, id, name=None)[source]¶

Constructor.

Parameters
  • master (wire_st_sdk.iolink.iolink_master.IOLinkMaster) – Masterboard object.

  • position (int) – Device’s position according to the enumeration on the masterboard.

  • id (str) – Device’s identifier.

  • name (str) – Device’s name.

get_features()[source]¶

Get the list of features.

Returns

A list with the available features.

Return type

list

Raises
  • SerialException, SerialTimeoutException – are raised if something with the serial communication does not work.

  • WireSTInvalidOperationException – is raised if the command has not been executed successfully.

get_firmware()[source]¶

Get the version of the firmware.

Returns

The version of the firmware as a string.

Return type

str

Raises
  • SerialException, SerialTimeoutException – are raised if something with the serial communication does not work.

  • WireSTInvalidOperationException – is raised if the command has not been executed successfully.

get_id()[source]¶

Get the device’s identifier.

Returns

The device’s identifier.

Return type

str

get_name()[source]¶

Get the device’s name.

Returns

The device’s name.

Return type

str

get_position()[source]¶

Get the device’s position according to the enumeration on the masterboard.

Returns

The device’s position according to the enumeration on the masterboard.

Return type

int

wire_st_sdk.iolink.iolink_master module¶

iolink_master

The iolink_master module is responsible for managing IO-Link capable devices connected to an iolink masterboard and allocating the needed resources.

class wire_st_sdk.iolink.iolink_master.IOLinkMaster(serial_port)[source]¶

Bases: object

IO-Link Master class.

This class manages the communication between the host and the masterboard.

__init__(serial_port)[source]¶

Constructor.

Parameters

serial_port (Serial) – Serial Port object. Refer to Serial for more information.

add_listener(listener)[source]¶

Add a listener.

Parameters

listener (wire_st_sdk.iolink.iolink_master.IOLinkMasterListener) – Listener to be added.

connect()[source]¶

Start the communication between the masterboard and the host to which it is connected.

Returns

The status of the connection.

Return type

str

Raises
  • SerialException, SerialTimeoutException – are raised if something with the serial communication does not work.

  • WireSTInvalidOperationException – is raised if the command has not been executed successfully.

disconnect()[source]¶

End the communication between the masterboard and the host to which it is connected.

Raises

SerialException, SerialTimeoutException – are raised if something with the serial communication does not work.

get_device(device_id, device_name=None)[source]¶

Configure and get a connected device.

Parameters
  • device_id (str) – Device’s identifier.

  • device_name (str) – Device’s name.

Returns

IOLink connected device if the device identifier is correct, None otherwise.

Return type

wire_st_sdk.iolink.iolink_device.IOLinkDevice

Raises

WireSTInvalidOperationException – is raised if the command has not been executed successfully.

get_device_by_position(device_position, device_name=None)[source]¶

Configure and get a connected device.

Parameters
  • device_position (int) – Device’s position according to the enumeration on the masterboard.

  • device_name (str) – Device’s name.

Returns

IOLink connected device if there is a device connected at the given device position, None otherwise.

Return type

wire_st_sdk.iolink.iolink_device.IOLinkDevice

Raises
  • WireSTInvalidOperationException – is raised if the command has not been executed successfully.

  • ValueError – if the device position is not allowed.

get_port()[source]¶

Get the serial port of the masterboard.

Returns

Serial Port object. Refer to Serial for more information.

Return type

Serial

is_connected()[source]¶

Check whether the master is connected.

Returns

True if the master is connected, False otherwise.

Return type

bool

remove_listener(listener)[source]¶

Remove a listener.

Parameters

listener (wire_st_sdk.iolink.iolink_master.IOLinkMasterListener) – Listener to be removed.

class wire_st_sdk.iolink.iolink_master.IOLinkMasterListener[source]¶

Bases: object

Interface used by the wire_st_sdk.iolink.IOLinkMaster class to notify changes of a masterboard’s status.

abstract on_device_found(masterboard, device_id, device_position)[source]¶

To be called whenever a masterboard finds a new device connected.

Parameters
  • masterboard (wire_st_sdk.iolink.iolink_master.IOLinkMaster) – Masterboard that has found a new device.

  • device_id (str) – New device found.

  • device_position (int) – Position of the new device found.

Raises

NotImplementedError – is raised if the method is not implemented.

abstract on_status_change(masterboard, new_status, old_status)[source]¶

To be called whenever a masterboard changes its status.

Parameters
  • masterboard (wire_st_sdk.iolink.iolink_master.IOLinkMaster) – Masterboard that has changed its status.

  • new_status (wire_st_sdk.iolink.iolink_master.IOLinkMasterStatus) – New status.

  • old_status (wire_st_sdk.iolink.iolink_master.IOLinkMasterStatus) – Old status.

Raises

NotImplementedError – is raised if the method is not implemented.

class wire_st_sdk.iolink.iolink_master.IOLinkMasterStatus[source]¶

Bases: enum.Enum

Status of the masterboard.

CONNECTED = 'CONNECTED'¶

Connected to the host.

CONNECTING = 'CONNECTING'¶

Opening a connection with the host.

DISCONNECTING = 'DISCONNECTING'¶

Closing the connection to the host.

IDLE = 'IDLE'¶

Waiting for a connection.

INIT = 'INIT'¶

Dummy initial status.

wire_st_sdk.iolink.iolink_protocol module¶

iolink_protocol

The iolink_protocol module contains definitions related to the IO-Link protocol.

class wire_st_sdk.iolink.iolink_protocol.FLS[source]¶

Bases: enum.Enum

Allowed parameters’ values for FLS. Accelerometer’s full scale.

FLS_16 = 16¶
FLS_2 = 2¶
FLS_4 = 4¶
FLS_8 = 8¶
class wire_st_sdk.iolink.iolink_protocol.IOLinkProtocol[source]¶

Bases: object

This class lists the protocol’s commands used for IO-Link communication.

ACK = '1'¶

Acknowledgement.

BYTES_TRANSMISSION = True¶

If True, transmission of data is by bytes; by characters otherwise.

COMMAND_ACQ = 'ACQ\r\n'¶

Set accelerometer’s total acquisition time (all types of analysis).

COMMAND_END = 'COMMAND END\r\n'¶

Close actual programming mode and change node.

COMMAND_FLS = 'FLS\r\n'¶

Set accelerometer’s full scale.

COMMAND_GET = 'STS\r\n'¶

Get sensor’s status, vibration peak, RMS, or vibration overtoken.

COMMAND_GET_1 = 'MCU\r\n'¶

Microcontroller’s identifier.

COMMAND_ICD = 'DEVICE\r\n'¶

IO-Link communication mode.

COMMAND_ICM = 'MASTER\r\n'¶

Master settings mode.

COMMAND_ID = 'IDS\r\n'¶

Get sensors list.

COMMAND_MEAS1 = 'MSR\r\n'¶

Request for measurement.

COMMAND_MEAS1_1 = 'RAW\r\n'¶

RAW data.

COMMAND_MEAS1_2 = 'TDM\r\n'¶

Time domain data.

COMMAND_MEAS1_3 = 'ENV\r\n'¶

Environmental data.

COMMAND_MEAS1_4 = 'FFT\r\n'¶

Fast Fourier Transform data.

COMMAND_NEW = 'COMMAND NEW\r\n'¶

Continue programming on the same node.

COMMAND_ODR = 'ODR\r\n'¶

Set accelerometer’s output data rate.

COMMAND_OVL = 'OVL\r\n'¶

Set accelerometer’s overlapping percentage between two consecutive FFT analysis.

COMMAND_RDC = 'RD_C\r\n'¶

L6360 read curent mode.

COMMAND_RDS = 'RD_S\r\n'¶

L6360 read sequential mode.

COMMAND_SET = 'SET\r\n'¶

Set sensor parameter.

COMMAND_SET1 = 'SENSOR CNF\r\n'¶

Sensor configuration parameters.

COMMAND_SET1_1 = 'SENSOR ACC CNF\r\n'¶

Sensor configuration accelerometer parameters.

COMMAND_SET1_2 = 'SENSOR ACC CPT\r\n'¶

Sensor configuration computation parameters.

COMMAND_SP = 'PRM\r\n'¶

Get sensor’s parameter.

COMMAND_SP1 = 'SENSOR ACC PRM\r\n'¶

Get accelerometer’s data.

COMMAND_SP2 = 'SENSOR ENV PRM\r\n'¶

Get evironmental data.

COMMAND_START = 'START\r\n'¶

Open RS485 communication.

COMMAND_SUB = 'SUB\r\n'¶

Set accelerometer’s number of subranges.

COMMAND_SZE = 'SZE\r\n'¶

Set accelerometer’s input array size for FFT.

COMMAND_WRC = 'WR_C\r\n'¶

L6360 write curent mode.

COMMAND_WRS = 'WR_S\r\n'¶

L6360 write sequential mode.

MESSAGE_CONNECTED = 'CONNECTED\r\n'¶
MESSAGE_PARAMETER_ERROR = 'PARAMETER ERROR\r\n'¶
MESSAGE_PARAMETER_UPDATED = 'PARAMETER UPDATED\r\n'¶
MESSAGE_PROGRAMMING_DONE = 'PROGRAMMING DONE\r\n\r\n'¶
MESSAGE_SENSOR_FAILED = 'SENSOR FAILED\r\n'¶
MESSAGE_TRANSMISSION_COMPLETED = 'TRANSMISSION COMPLETED\r\n'¶
NACK = '0'¶

Non-Acknowledgement.

REQUEST_IC = 'INSERT ADDRESS IC :\r\n'¶
REQUEST_MEASURE_TYPE = 'INSERT MEASURE TYPE :'¶
REQUEST_MOD = 'SELECT MASTER OR DEVICE\r\n'¶
REQUEST_OPM = 'INSERT OPERATING MODE :\r\n'¶
REQUEST_PARAMETER_NAME = 'INSERT PARAMETER NAME :'¶
REQUEST_PARAMETER_VALUE = 'INSERT PARAMETER VALUE :'¶
REQUEST_RADRS = 'INSERT REGISTER ADDRESS :\r\n'¶
REQUEST_RVAL = 'INSERT REGISTER VALUE :\r\n'¶
REQUEST_SENSOR_COMMAND = 'INSERT SENSOR COMMAND :'¶
REQUEST_SLAVE = 'INSERT SLAVE NODE :'¶
TERMINATOR_SEQ = '\r\n'¶

Terminator sequence.

class wire_st_sdk.iolink.iolink_protocol.ODR[source]¶

Bases: enum.Enum

Allowed parameters’ values for ODR. Accelerometer’s output data rate.

ODR_104 = 104¶
ODR_13 = 13¶
ODR_1660 = 1660¶
ODR_208 = 208¶
ODR_26 = 26¶
ODR_3330 = 3330¶
ODR_416 = 416¶
ODR_52 = 52¶
ODR_6660 = 6660¶
ODR_833 = 833¶
class wire_st_sdk.iolink.iolink_protocol.SUB[source]¶

Bases: enum.Enum

Allowed parameters’ values for SUB. Accelerometer’s number of subranges.

SUB_16 = 16¶
SUB_32 = 32¶
SUB_64 = 64¶
SUB_8 = 8¶
class wire_st_sdk.iolink.iolink_protocol.SZE[source]¶

Bases: enum.Enum

Allowed parameters’ values for SZE. Accelerometer’s input array size for FFT.

SZE_1024 = 1024¶
SZE_2048 = 2048¶
SZE_256 = 256¶
SZE_512 = 512¶

wire_st_sdk.iolink.iolink_sensor module¶

iolink_sensor

The iolink_sensor module represents a device capable of connecting to an IOLink masterboard and sending/receiving data to it.

class wire_st_sdk.iolink.iolink_sensor.IOLinkSensor(master, position, id, name=None)[source]¶

Bases: wire_st_sdk.iolink.iolink_device.IOLinkDevice

IO-Link Sensor class.

This class manages the commands of a standard IO-Link sensor.

get_env()[source]¶

Get environmental data.

Returns

A list with Pressure [mbar], Humidity [%], and Temperature [C] values.

Return type

list

Raises
  • SerialException, SerialTimeoutException – are raised if something with the serial communication does not work.

  • WireSTInvalidOperationException – is raised if the command has not been executed successfully.

get_fft()[source]¶

Get Fast Fourier Transform of vibration data.

Returns

A n-elements list, with each element being a list of four values: the first is a frequency [Hz] and the other three are the corresponding vibration values on the three axis [m/s2].

Return type

list

Raises
  • SerialException, SerialTimeoutException – are raised if something with the serial communication does not work.

  • WireSTInvalidOperationException – is raised if the command has not been executed successfully.

get_tdm()[source]¶

Get time domain data.

Returns

A two-elements list, with a list of RMS Speed values on X,Y,Z axes [mm/s] as the first element, and a list of Peak Acceleration values on X,Y,Z axes [m/s2] as the second element.

Return type

list

Raises
  • SerialException, SerialTimeoutException – are raised if something with the serial communication does not work.

  • WireSTInvalidOperationException – is raised if the command has not been executed successfully.

set_acq(acq)[source]¶

Set accelerometer’s total acquisition time, which is valid for all types of analysis.

Parameters

acq (int) – Accelerometer’s total acquisition time (must be in the range [ACQ_MIN..ACQ_MAX]).

Returns

True if the parameter has been set correctly, False otherwise.

Return type

bool

Raises
  • SerialException, SerialTimeoutException – are raised if something with the serial communication does not work.

  • WireSTInvalidOperationException – is raised if the command has not been executed successfully.

set_fls(fls)[source]¶

Set accelerometer’s full scale.

Parameters

fls (wire_st_sdk.iolink.iolink_protocol.FLS) – Accelerometer’s full scale.

Returns

True if the parameter has been set correctly, False otherwise.

Return type

bool

Raises
  • SerialException, SerialTimeoutException – are raised if something with the serial communication does not work.

  • WireSTInvalidOperationException – is raised if the command has not been executed successfully.

set_odr(odr)[source]¶

Set accelerometer’s output data rate.

Parameters

odr (wire_st_sdk.iolink.iolink_protocol.ODR) – Accelerometer’s output data rate.

Returns

True if the parameter has been set correctly, False otherwise.

Return type

bool

Raises
  • SerialException, SerialTimeoutException – are raised if something with the serial communication does not work.

  • WireSTInvalidOperationException – is raised if the command has not been executed successfully.

set_ovl(ovl)[source]¶

Set accelerometer’s overlapping percentage between two consecutive FFT analysis.

Parameters

ovl (int) – Accelerometer’s overlapping percentage between two consecutive FFT analysis (must be in the range [OVL_MIN..OVL_MAX]).

Returns

True if the parameter has been set correctly, False otherwise.

Return type

bool

Raises
  • SerialException, SerialTimeoutException – are raised if something with the serial communication does not work.

  • WireSTInvalidOperationException – is raised if the command has not been executed successfully.

set_sub(sub)[source]¶

Set accelerometer’s number of subranges.

Parameters

sub (wire_st_sdk.iolink.iolink_protocol.SUB) – Number of subranges.

Returns

True if the parameter has been set correctly, False otherwise.

Return type

bool

Raises
  • SerialException, SerialTimeoutException – are raised if something with the serial communication does not work.

  • WireSTInvalidOperationException – is raised if the command has not been executed successfully.

set_sze(sze)[source]¶

Set accelerometer’s input array size for FFT.

Parameters

sze (wire_st_sdk.iolink.iolink_protocol.SZE) – Accelerometer’s input array size for FFT.

Returns

True if the parameter has been set correctly, False otherwise.

Return type

bool

Raises
  • SerialException, SerialTimeoutException – are raised if something with the serial communication does not work.

  • WireSTInvalidOperationException – is raised if the command has not been executed successfully.

Module contents¶

Next Previous

© Copyright 2019, Davide Aliprandi

Built with Sphinx using a theme provided by Read the Docs.