Architecture of TcOpen
Getting started
Features
- main is released to production (x = implemented)
- dev is in current development branch (x = implemented)
- IVF feature requires inxton vortex framework to operate (x = implemented)
- WPF feature has an UI control for WPF platform (requires IVF) (x = implemented)
- Blazor feature has an UI control for Blazor platform (requires IVF) (x = implemented)
TcoCore
main | dev | PLC Class | Description | IVF | WPF | Blazor |
---|---|---|---|---|---|---|
x | TcoRtc | Single source of real time clock for the application | ||||
x | TcoContext | Provides encapsulation for coherent unit of control | ||||
x | TcoComponent | Base class from which all components should derive | ||||
x | TcoObject | Base class from which all objects (FBs) in the framework should derive | ||||
x | TcoMessenger | Static messaging mechanism; Messages can be read from higher level application | x | |||
x | TcoLogger | Logs messages from the PLC program. | ||||
x | TcoTask | Task coordinator for synch and asynch run of arbitary code. | x | x | ||
x | TcoToggleTask | Task coordinator for switching between two branches of logic. | x | x | ||
x | TcoRemoteTask | Task coordinator for executing arbitrary code in .net evironment. | x | x | x | |
x | TcoMomentaryTask | Task coordinator for executing arbitrary logic while a codition is met. | ||||
x | TcoState | Basic state controller enhances the ST language (IF,CASE, ELSIF) coordination | ||||
x | TcoSequencer | Advanced sequencing coordination primitive for step-by-step operations. | x | x | ||
x | TcoDialog | Interaction with the user from the PLC via dialog window. | x | x |
TcOpen Inxton application specific
main | dev | Package | Description | IVF | WPF | Blazor |
---|---|---|---|---|---|---|
x | Inxton.Vortex.Package.Core | Compiler and communication libraries | x | x | ||
x | Inxton.Vortex.Package.Essentials | Automated UI generation WPF | x | x | ||
x | Inxton.Vortex.Blazor-experimental | Automated UI generation Blazor | x | x | ||
x | TcOpen.Inxton.Logging | Logs user action and application events from inxton application | x | |||
x | TcOpen.Inxton.Local.Security | Limits user access to protected section of inxton application | x | x | x | |
x | TcOpen.Inxton.Swift | Experimental implementation of auto programer (creates program capturing manual mode actions) | x | x |
TcoData
main | dev | PLC Class | Description | IVF | WPF | Blazor |
---|---|---|---|---|---|---|
x | TcoDataExchage | CRUD capabale from PLC code | x | x | ||
x | InMemory repository | IRepository implementation for in memory storage | x | |||
x | Json repository | IRepository implementation string object as Json files | x | |||
x | MongoDb repository | IRepository implementation for mongodb databases | x | |||
RavenDb repository | IRepository implementation for ravendb databases | x |
TcoInspectors
main | dev | PLC Class | Description | IVF | WPF | Blazor |
---|---|---|---|---|---|---|
x | TcoInspector | Base class for inspector | x | |||
x | TcoDigitalInspector | Inspection of descret values | x | |||
x | TcoAnalogueInspector | Inspection of continuous values | x | |||
x | TcoDataInspector | Inspection of alphanumerical values | x |
TcoDrivesBeckhoff
main | dev | PLC Class | Description | IVF | WPF | Blazor |
---|---|---|---|---|---|---|
x | TcoDriveSimple | Simple implementation of motion tasks (absolute, relative, velo, jog...) | x | x |
TcoElements
main | dev | PLC Class | Description | IVF | WPF | Blazor |
---|---|---|---|---|---|---|
x | TcoDi | Simple class for managing discrete inputs | x | x | ||
x | TcoDo | Simple class for managing discrete outputs | x | x | ||
x | TcoAi | Simple class for managing analogue inputs | x | |||
x | TcoAo | Simple class for managing analogue outputs | x |
TcoPnematics
main | dev | PLC Class | Description | IVF | WPF | Blazor |
---|---|---|---|---|---|---|
x | TcoCylinder | Simple class for managing pneumatic cyclinder | x | x |