Structure of the software
openTCS is implemented completely in the Java programming language and can be executed on every operating system for which a Java runtime environment (min. version 1.8) exists.
As a result, the software can be used on a Linux/Unix system as well as on a Windows system.
System components
The whole software distribution consists of multiple components that can be used to build a complete control system:
Kernel
The kernel assumes the central position in the control system. Here, the state of the entire system is managed, transport orders are dispatched to vehicles, routes for vehicles are computed and track clearance is handled. Furthermore, interfaces are provided for user interaction as well as for hosts maintaining higher-level process control.
The kernel also provides a framework and uniform interfaces for vehicle drivers. Vehicle drivers translate the kernel’s abstract orders to the vehicles' respective communication protocols and also translate report messages sent by vehicles into a uniform state description for the kernel. As a result, a vehicle driver is the only component in the system that has to know and work with the type-specific attributes of a concrete vehicle. Vendors can develop new drivers for their own vehicles and load them into the kernel in a plug-in manner.
Plant overview
Via the plant overview’s graphical user interface, driving course models can be created and modified interactively to build complete transportation systems. In addition to the most important parts of the respective plant’s topology - report and halting positions, load change stations and paths to be travelled by vehicles -, properties like vehicle- and path-specific speed limits can be specified here.
Furthermore, the plant overview visualizes the plant’s state during operation. This includes a graphical representation of the current vehicle positions and their future routes. It can also be used to let an operator manually enter transport orders and interact with the system, e.g. to withdraw a transport order in case of a vehicle’s failure.