SOEM
SoemLink is a Link implementation using SOEM, an EtherCAT master written in C.
Because it handles an Ethernet raw socket, running it on Linux/macOS requires root privileges (or CAP_NET_RAW).
On Windows, npcap must be installed in “WinPcap API-compatible mode”.
SoemLinkOption {iface,sync0_period,sync0_shift,sync_tolerance,sync_timeout,};SoemLinkOption(iface,sync0_period,sync0_shift,sync_tolerance,sync_timeout,)new SoemLinkOption(iface,sync0Period,sync0Shift,syncTolerance,syncTimeout);| Field | Type | Description |
|---|---|---|
iface |
Interface |
network interface to use. Interface::Auto for automatic selection, Interface::Name(..) to specify by name |
sync0_period |
Duration |
period of the SYNC0 signal |
sync0_shift |
Duration |
shift amount of the SYNC0 signal |
sync_tolerance |
Duration |
tolerance considered as synchronization complete |
sync_timeout |
Duration |
timeout to wait for synchronization to complete |
SoemLinkOptionFull, which fully configures SOEM, is also provided (Rust only).
SoemLinkOptionFull {iface,sync0_period,sync0_shift,send_cycle,sync_tolerance,sync_timeout,state_timeout,op_wait_timeout,};| Field | Type | Description |
|---|---|---|
iface |
Interface |
network interface to use. Interface::Auto for automatic selection, Interface::Name(..) to specify by name |
sync0_period |
Duration |
period of the SYNC0 signal |
sync0_shift |
Duration |
shift amount of the SYNC0 signal |
send_cycle |
Duration |
period of process data transmission |
sync_tolerance |
Duration |
tolerance considered as synchronization complete |
sync_timeout |
Duration |
timeout to wait for synchronization to complete |
state_timeout |
Duration |
timeout to wait for the transition to the SAFE-OP state |
op_wait_timeout |
Duration |
timeout to wait for the transition to the OP state |