4. Feature List
This feature list provides a coarse overview of what components are implemented in various parts of CENA. If you want to make sure that a specific feature you are looking for exists, you might want to take a look at the project changelog.
4.1. Model Cores
Each model core realizes the given information model as a set of C++ classes. They include the model reflection of the model classes
4.1.1. Module Type Package
ModuleTypePackage base class
ServiceSet &
Service
ConfigurationParameter
Procedure
/w custom userland callbacks andProcedureHealthView
ProcedureParameter
ProcessValueIn
ReportValue
ProcessValueOut
DataAssemblies
(Ana|Bin)Vlv
/w user callbacks(Ana|Bin)Man
(Ana|Bin)ManInt
(Ana|Bin|String)ServParam
(Ana|Bin|DInt|String)View
(Ana|Bin)ProcessValueIn
PIDCtrl
4.1.2. Process Automation Device Integration Model
PADIMType
base classSignalTypes
andSignalVariableTypes
AnalogItemType
,AnalogUnitRangeType
andAnalogSignalVariableType
DiscreteItemType
,DiscreteSignalVariableType
MultiStateValueDiscreteType
,MultiStateDictionaryEntryDiscreteBaseType
,MultiStateDiscreteSignalVariableType
TwoStateDiscreteType
,TwoStateDiscreteSignalVariableType
ControlVariableType
4.2. I/O Drivers
Note that most of these drivers require special or additional hardware.
Pimorino AutomationHat and AutomationHat Mini
Foundation HART
Kunbus PiControl
Siemens S7
Bronkhorst ProPar/DataFlow MFC
Huber PilotOne
Fink Chem+Tech Ritmo R15
4.3. Operating System Abstraction & Utilities
UML state machines (hierarchical states, historizing, parallel execution)
Task abstraction (loop task, thread decorators, mutex)
Timer abstraction
Logging (file & shell sinks, log formatters, severity & filtering)
Messaging API (internal, thread-safe)