A Software Framework for Real-Time and Distributed Robot and Machine Control (Een software raamwerk voor ware tijd en gedistribueerde robot en machine controle)
A Software Framework for Real-Time and Distributed Robot and Machine Control (Een software raamwerk voor ware tijd en gedistribueerde robot en machine controle)
复制标题
实时分布式机器人和机器控制的软件框架(Een software raamwerk voor ware tijd en gedistribueerde robots en machine controle)
DOI:
--
复制
发表时间:
2006
期刊:
影响因子:
--
通讯作者:
P. Soetens
中科院分区:
文献类型:
--
作者:
P. Soetens
The design of software frameworks in real-time robot and machine control has focused in the past on robotics, where motion control is dominant, or on automated machine control, where logic control is dominant. Designs with the former in mind lead to communication frameworks where sending data between components, controlling the data flow, is central. Designs with the latter in mind lead to frameworks which aid in realising decision making for controlling the logic execution flow. Both forms of control are required to have robot or machine control applications running. This work looks at the control application as a whole and identifies both separation and coupling between data flow and logic execution flow. A single software component model supports control tasks which are highly reactive, such as in weaving machines or in automated machine tools, and serves equally well in applications which are highly data driven such as in vision or force in the loop motion control applications. Ideally, a software framework for control must offer inter-task communication primitives which are inherently thread-safe and hard real-time. They may not add indeterminism, possible deadlocks or race conditions to the control application. Furthermore, observation of and interaction with the control task’s activity must not disturb its time determinism. Classic real-time operating systems, in which present day control applications are built, do not offer all these guarantees. This work contributes design patterns for synchronous and asynchronous inter-task communication which uphold these requirements using lock-free data exchange. The patterns guarantee ‘localised’ real-time properties in a mixed real-time, not real-time environment, allowing remote (non deterministic) access, hence distribution of the application’s real-time components. The communication primitives are validated in this work and outperform on average and in worst case traditional lock-based approaches. This works contributes a design pattern for structuring feedback control as well. The Control Kernel, which implements this pattern, can be applied on distributed control applications. For example, it is used to synchronise two