PROFINET IO Controller Stack 1.0.0
Modern C++ implementation of a PROFINET IO Controller stack
Loading...
Searching...
No Matches
virtual_auma_valve.h File Reference

Stateful in-memory AUMA SGx PROFINET IO device simulator. More...

#include <atomic>
#include <cstdint>
#include <functional>
#include <memory>
#include <mutex>
#include <optional>
#include <string>
#include <string_view>
#include <thread>
#include <vector>
#include "profinet/IOSignal.h"
#include "profinet/gsdml.h"
#include "profinet/rt.h"
#include "profinet/sim/in_memory_ethernet.h"
#include "profinet/util.h"
+ Include dependency graph for virtual_auma_valve.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  profinet::sim::VirtualAumaValveConfiguration
 Application-level signal mapping and motion settings for a virtual AUMA SGx. More...
 
struct  profinet::sim::VirtualAumaAlarmEvent
 Captured alarm traffic produced by a virtual AUMA scenario. More...
 
class  profinet::sim::VirtualAumaValve
 AUMA SGx application model that behaves as a real RTC1 peer in memory. More...
 

Namespaces

namespace  profinet
 
namespace  profinet::sim
 

Enumerations

enum class  profinet::sim::VirtualAumaScenario {
  profinet::sim::Normal , profinet::sim::Fault , profinet::sim::BadIops , profinet::sim::NoInput ,
  profinet::sim::SlowValve , profinet::sim::Jammed , profinet::sim::InvalidInput , profinet::sim::DuplicateInput ,
  profinet::sim::OutOfOrderInput
}
 Deterministic operating and communication scenarios for a virtual AUMA valve. More...
 

Functions

const char * profinet::sim::ToString (VirtualAumaScenario scenario) noexcept
 Convert a virtual AUMA scenario into its stable CLI spelling.
 

Detailed Description

Stateful in-memory AUMA SGx PROFINET IO device simulator.

The simulator consumes the parsed AUMA GSDML and real RTC1 IOCR layouts. It models actuator movement, process data, IOPS health, communication loss, RTA error traffic, and PROFINET AlarmNotification traffic. It is intended to exercise production controller code without platform packet transport or physical hardware.

Definition in file virtual_auma_valve.h.