IEEE Robotics & Automation Magazine · 2015 · 35 citations · 14 references
ComputingComputer ScienceRobotics EngineeringReal-time SystemsRobot ControlRoboticsHuman-machine InteractionInterprocess CommunicationProcess CoordinationReal-time ControlReal-time Systems ArchitectureReal-time Systems DesignDynamic Balance ControlInterprocess Communication ProtocolsInterprocess SynchronizationLatency ReductionLow-latency CommunicationMessage LatencyReal-time CommunicationSafety-critical Control
Correct real-time software is vital for robots in safety-critical roles such as service and disaster response. These systems depend on software for locomotion, navigation, manipulation, and even seemingly innocuous tasks such as safely regulating battery voltage. A multiprocess software design increases robustness by isolating errors to a single process, allowing the rest of the system to continue operation. This approach also assists with modularity and concurrency. For real-time tasks, such as dynamic balance and force control of manipulators, it is critical to communicate the latest data sample with minimum latency. There are many communication approaches intended for both general-purpose and real-time needs [9], [13], [15], [17], [19]. Typical methods focus on reliable communication or network transparency and accept a tradeoff of increased message latency or the potential to discard newer data. By focusing instead on the specific case of real-time communication on a single host, we reduce communication latency and guarantee access to the latest sample. We present a new interprocess communication (IPC) library, Ach which addresses this need, and discuss its application for real-time multiprocess control on three humanoid robots (Figure 1). (Ach is available at http://www.golems.org/projects/ach.html. The name Ach comes from the common abbreviation for the motor neurotransmitter Acetylcholine and the computer networking term ACK.)
14
Silberschatz · 1991 · 1.6K citations
LCM: Lightweight Communications and Marshalling
Alice Huang, Edwin Olson, David C. Moore · 2010 · 301 citations