This paper contains robot and machine maker automation software fundamentals.
"CIP is a model-based software development method for embedded systems. The problem of constructing an embedded system is decomposed into a functional and a connection problem. The functional problem is solved by constructing a formal reactive behavioural model.
A CIP model consists of concurrent clusters of synchronously cooperating extended state machines. The state machines of a cluster interact by multicast events.
State machines of different clusters can communicate through asynchronous channels. The construction of CIP models is supported by the CIP Tool, a graphical modelling framework with code generators that transform CIP models into concurrently executable CIP components. The connection problem consists of connecting generated CIP components to the real environment.
This problem is solved by means of techniques and tools adapted to the technology of the interface devices. Construction of a CIP model starts from the behaviour of the processes of the real environment, leading to an operational specification of the system behaviour in constructive steps.
This approach allows stable interfaces of CIP components to be specified at an early stage, thus supporting concurrent development of their connection to the environment."