Figure 2: Orbit kernel architecture with the two layers; i)
communication and ii) real-time execution, together with the application
specification of its configuration and automation.
Network of supervisory controllers
When processes consist of several instruments communication of the
instruments are vital. Orbit has support for communication between each
other. An orbit can connect to another orbit as a client or act as a
server to receive connections from other orbits. For a network of Orbit
running instruments it’s important to be able to communicate when a pool
needs to be transferred. In that case there need to be a synchronization
when both of the systems are ready. A system in a chain needs to
synchronize with both the machine before and the machine after. The
cycle of an instrument can therefore be generalized to be “ready to
receive”, “receiving”, “processing”, “ready to deliver” and
“delivering”. When an instrument is “ready to receive” and the
previous machine is ready to deliver the delivering/receiving phase can
start.
In the BMS and QAS OrbitX controllers, the OrbitX works as a service
where other Orbits can connect and make an order. In that case the Orbit
connects as a client and makes an order. A necessity is of course that
there is a physical connection. Figure 3 illustrates the process where
the integrated downstream process is communicating with each other. They
are also connected to the support systems BMS and QAS for ordering of
fresh buffer or analysis of the product. All communication happens in a
local network. Each Orbit controller is it’s own module and with this
framework it’s easy to extend the system with another process step or to
add another service. All of the orbit instances are also connected to
the database where all data are streamed to. The modularized approach
creates a flexible, almost plug-and-play, architecture. Modules, a
physical setup with a local Orbit supervisory controller, can be
exchanged in the structure with minimal effort as long as the plant-wide
synchronization protocol is kept constant.