|
PROFINET IO Controller Stack 1.0.0
Modern C++ implementation of a PROFINET IO Controller stack
|
Configuration for a controller-facing virtual PROFINET device. More...
#include <virtual_profinet_rpc_device.h>
Collaboration diagram for profinet::sim::VirtualProfinetDeviceConfiguration:Public Attributes | |
| std::uint16_t | rpcPort = 34965 |
| UDP port on which the virtual device accepts controller RPC. | |
| std::uint16_t | controllerCcontrolPort = rpc::RPC_PORT |
| Controller CControl listener port used for ApplicationReady. | |
| std::string | controllerAddress = "127.0.0.1" |
| Controller loopback address used for ApplicationReady. | |
| std::string | stationName = "valve2" |
| Station name reported by the virtual device. | |
| MacAddress | deviceMac {0xA0, 0xD3, 0x85, 0x00, 0xF6, 0x13} |
| Device MAC address used by the virtual device model. | |
| std::uint16_t | vendorId = 0x013F |
| PROFINET vendor identifier. | |
| std::uint16_t | deviceId = 0x0002 |
| PROFINET device identifier. | |
| std::chrono::milliseconds | applicationReadyDelay {10} |
| Delay between accepting PrmEnd and sending ApplicationReady. | |
| std::uint16_t | inputFrameId = 0xC000 |
| Frame ID returned for the input IOCR. | |
| std::uint16_t | outputFrameId = 0xC001 |
| Frame ID returned for the output IOCR. | |
| std::uint16_t | deviceAlarmReference = 42 |
| Alarm reference returned by the device when AlarmCR is supported. | |
| bool | requireBothIocrs = true |
| Require an Input and Output IOCR when CONNECT contains cyclic data. | |
| bool | requireExpectedSubmodules = true |
| Require ExpectedSubmoduleBlockReq in cyclic CONNECT requests. | |
| bool | requireAlarmCr = true |
| Require AlarmCR when cyclic CONNECT is requested. | |
| bool | automaticApplicationReady = true |
| Automatically send ApplicationReady after PrmEnd. | |
Configuration for a controller-facing virtual PROFINET device.
Definition at line 69 of file virtual_profinet_rpc_device.h.
| std::chrono::milliseconds profinet::sim::VirtualProfinetDeviceConfiguration::applicationReadyDelay {10} |
Delay between accepting PrmEnd and sending ApplicationReady.
Definition at line 97 of file virtual_profinet_rpc_device.h.
Referenced by profinet::sim::VirtualProfinetRpcDevice::ScheduleApplicationReady().
| bool profinet::sim::VirtualProfinetDeviceConfiguration::automaticApplicationReady = true |
Automatically send ApplicationReady after PrmEnd.
Definition at line 118 of file virtual_profinet_rpc_device.h.
Referenced by profinet::sim::VirtualProfinetRpcDevice::HandleControl().
| std::string profinet::sim::VirtualProfinetDeviceConfiguration::controllerAddress = "127.0.0.1" |
Controller loopback address used for ApplicationReady.
Definition at line 82 of file virtual_profinet_rpc_device.h.
Referenced by profinet::sim::VirtualProfinetRpcDevice::SendApplicationReady().
| std::uint16_t profinet::sim::VirtualProfinetDeviceConfiguration::controllerCcontrolPort = rpc::RPC_PORT |
Controller CControl listener port used for ApplicationReady.
Definition at line 79 of file virtual_profinet_rpc_device.h.
Referenced by profinet::sim::VirtualProfinetRpcDevice::SendApplicationReady().
| std::uint16_t profinet::sim::VirtualProfinetDeviceConfiguration::deviceAlarmReference = 42 |
Alarm reference returned by the device when AlarmCR is supported.
Definition at line 106 of file virtual_profinet_rpc_device.h.
Referenced by profinet::sim::VirtualProfinetRpcDevice::HandleConnect().
| std::uint16_t profinet::sim::VirtualProfinetDeviceConfiguration::deviceId = 0x0002 |
PROFINET device identifier.
Definition at line 94 of file virtual_profinet_rpc_device.h.
| MacAddress profinet::sim::VirtualProfinetDeviceConfiguration::deviceMac {0xA0, 0xD3, 0x85, 0x00, 0xF6, 0x13} |
Device MAC address used by the virtual device model.
Definition at line 88 of file virtual_profinet_rpc_device.h.
| std::uint16_t profinet::sim::VirtualProfinetDeviceConfiguration::inputFrameId = 0xC000 |
Frame ID returned for the input IOCR.
Definition at line 100 of file virtual_profinet_rpc_device.h.
Referenced by profinet::sim::VirtualProfinetRpcDevice::HandleConnect().
| std::uint16_t profinet::sim::VirtualProfinetDeviceConfiguration::outputFrameId = 0xC001 |
Frame ID returned for the output IOCR.
Definition at line 103 of file virtual_profinet_rpc_device.h.
Referenced by profinet::sim::VirtualProfinetRpcDevice::HandleConnect().
| bool profinet::sim::VirtualProfinetDeviceConfiguration::requireAlarmCr = true |
Require AlarmCR when cyclic CONNECT is requested.
Definition at line 115 of file virtual_profinet_rpc_device.h.
Referenced by profinet::sim::VirtualProfinetRpcDevice::ValidateConnect().
| bool profinet::sim::VirtualProfinetDeviceConfiguration::requireBothIocrs = true |
Require an Input and Output IOCR when CONNECT contains cyclic data.
Definition at line 109 of file virtual_profinet_rpc_device.h.
Referenced by profinet::sim::VirtualProfinetRpcDevice::ValidateConnect().
| bool profinet::sim::VirtualProfinetDeviceConfiguration::requireExpectedSubmodules = true |
Require ExpectedSubmoduleBlockReq in cyclic CONNECT requests.
Definition at line 112 of file virtual_profinet_rpc_device.h.
Referenced by profinet::sim::VirtualProfinetRpcDevice::ValidateConnect().
| std::uint16_t profinet::sim::VirtualProfinetDeviceConfiguration::rpcPort = 34965 |
UDP port on which the virtual device accepts controller RPC.
The production device normally uses 34964. On the same Linux host this simulator uses another port because RPCCon currently binds its CControl listener to 34964 on INADDR_ANY.
Definition at line 76 of file virtual_profinet_rpc_device.h.
Referenced by profinet::sim::VirtualProfinetRpcDevice::RpcPort(), profinet::sim::VirtualProfinetRpcDevice::Start(), and profinet::sim::VirtualProfinetRpcDevice::WakeWorker().
| std::string profinet::sim::VirtualProfinetDeviceConfiguration::stationName = "valve2" |
Station name reported by the virtual device.
Definition at line 85 of file virtual_profinet_rpc_device.h.
| std::uint16_t profinet::sim::VirtualProfinetDeviceConfiguration::vendorId = 0x013F |
PROFINET vendor identifier.
Definition at line 91 of file virtual_profinet_rpc_device.h.