README

mokomoking2501/profinet_master/io does not have a README file

#
DataStatusFields

pub(all) struct DataStatusFields {
state : String
redundancy : String
data_valid : String
provider_state : String
station_problem : String
ignore : String
} derive(Eq,
Debug
)

#
IAndM0

pub(all) struct IAndM0 {
vendor_id : Int
order_id : String
serial_number : String
hardware_revision : Int
sw_revision_prefix : Byte
sw_revision_functional_enhancement : Byte
sw_revision_bugfix : Byte
sw_revision_internal_change : Byte
revision_counter : Int
profile_id : Int
profile_specific_type : Int
im_version_major : Byte
im_version_minor : Byte
im_supported : Int
} derive(Eq,
Debug
)

I&M0 (Identification & Maintenance) data.

#
IAndM1

pub(all) struct IAndM1 {
function_tag : String
location_tag : String
} derive(Eq,
Debug
)

I&M1 data.

#
IdentificationData

pub(all) struct IdentificationData {
api : Int
slots : Array[IoSlot]
} derive(Eq,
Debug
)

Expected/Real identification data — block for AR connect.

#
IoConnection

pub(all) struct IoConnection {
uuid :
Uuid

rx_data_length : Int
tx_data_length : Int
is_tx_station_ok : Bool
is_tx_provider_in_run : Bool
is_tx_data_valid : Bool
is_tx_primary : Bool
} derive(Eq,
Debug
)

IO connection state — models an active cyclic data connection.

#
IoCyclicFrame

pub(all) struct IoCyclicFrame {
frame_id : Int
cycle_counter : Int
data_status : Byte
transfer_status : Byte
payload : Bytes
} derive(Eq,
Debug
)

IO cyclic data frame — provider status byte + data.

#
IoSlot

pub(all) struct IoSlot {
slot_number : Int
module_ident_number : Int
subslots : Array[IoSubslot]
} derive(Eq,
Debug
)

IO slot definition.

#
IoSubslot

pub(all) struct IoSubslot {
subslot_number : Int
submodule_ident_number : Int
} derive(Eq,
Debug
)

IO subslot definition.

#
block_type_expected_identification

let block_type_expected_identification : Int

Block type for expected identification data.

#
block_type_iam0

let block_type_iam0 : Int

Block type for I&M0.

#
block_type_iam1

let block_type_iam1 : Int

Block type for I&M1.

#
block_type_real_identification

let block_type_real_identification : Int

Block type for real identification data.

#
decode_data_status

fn decode_data_status(status : Byte) -> DataStatusFields

#
encode_cyclic_frame

fn encode_cyclic_frame(frame : IoCyclicFrame) -> Bytes

Encode a cyclic IO frame (for provider).

#
encode_iam1

fn encode_iam1(data : IAndM1) -> Bytes

#
encode_iam1_block

fn encode_iam1_block(data : IAndM1) -> Bytes

#
encode_identification_data

fn encode_identification_data(data : IdentificationData) -> Bytes

Encode expected/real identification data body.

#
format_iam0

fn format_iam0(data : IAndM0) -> String

Format I&M0 summary.

#
parse_cyclic_frame

fn parse_cyclic_frame(data : Bytes, offset : Int, data_length : Int) -> IoCyclicFrame raise
FrameError

Parse a cyclic IO frame.

#
parse_iam0

fn parse_iam0(data : Bytes, offset : Int) -> IAndM0 raise
FrameError

Parse I&M0 from body bytes.

#
parse_iam1

fn parse_iam1(data : Bytes, offset : Int) -> IAndM1 raise
FrameError

Parse I&M1 from body bytes.

#
parse_identification_data

fn parse_identification_data(data : Bytes, offset : Int) -> IdentificationData raise
FrameError

Parse identification data from body bytes.

Source Files