In this paper we present the synchronization and driver architecture of the DLR LWR-III, which supplies an easy to use interface for applications. For our purpose we abstracted the robot hardware entirely from the control algorithms using the common device driver concept of modern operating systems. The software architecture is split into two modular parts. On the one side, there are device drivers that communicate with the hardware components. On the other side, there are realtime applications realized as Simulink Models, which provide advanced control algorithms. This ensures a clean separation between the two modules and provides a communication over a common and approved interface. Furthermore we investigated how we can ensure synchronization to the hardware over the device driver interfaces and how we can ensure that it meets hard realtime requirements. The main result of this paper is to realize a synchronization between LWR-III hardware and Simulink control applications while targeting small latencies with respect to hard realtime requirements. The design is implemented and verified on WindRiver™VxWorks™.
[1]
Alin Albu-Schäffer,et al.
Towards the Robotic Co-Worker
,
2009,
ISRR.
[2]
John D. Simeral,et al.
Continuous Control of the DLR Light-Weight Robot III by a Human with Tetraplegia Using the BrainGate2 Neural Interface System
,
2010,
ISER.
[3]
Bill Weinberg.
Porting RTOS device drivers to embedded Linux
,
2004
.
[4]
Stephen A. Edwards,et al.
The synchronous languages 12 years later
,
2003,
Proc. IEEE.
[5]
Albert Benveniste,et al.
The synchronous approach to reactive and real-time systems
,
1991
.
[6]
Hermann Kopetz,et al.
The time-triggered architecture
,
1998,
Proceedings First International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC '98).
[7]
C. E. SHANNON,et al.
A mathematical theory of communication
,
1948,
MOCO.
[8]
Sven Parusel.
Playing billard with an anthropomorphic robot arm
,
2009
.