A system for real-time control of complex pneumatic actuation
- © RBO Lab
The PneumaticBox is a control system developed to enable fast, realtime control of pneumatic systems. Most commercially available solutions are developed for relatively slow process control scenarios, where being a few milliseconds off isn't a problem. Additionally, pneumatics control traditionally is done open-loop and available solutions do not provide for incorporating rich, real-time sensor feedback. The latter especially is a requirement specific to robotics.
The PneumaticBox is a solution that is openly developed and places its focus on easy and rapid integration into robotic systems:
- Integrate with well established robotic systems middleware (e.g. ROS, RoboticsLab RLab, Python scripting)
- Remotely controllable via TCP/IP Network
- provide pressure sensors on board
- Provide easy integration paths for hardware sensors via I2C, SPI busses.
- Use of a dedicated computer for firm real-time control
- Use of open source hardware and software for better support
The PneumaticBox hardware consists of three components:
- Valve array using 5/3 valves
- Embedded Computer (Beaglebone Black)
- Pneumaticbox adapter board
- valve drivers connected via GPIO
- pressure sensors connected via onboard ADC (12 Bit)
- I2C busses 5V and 3.3V peripherals
- SPI bus (3.3V)
- single 24V supply powers the complete system
The Software stack is based on a Ubuntu distribution customized for the Beaglebone Black board and provides a complete Linux with the ability to run ROS nodes and time synchronization for timely event execution.
Additionally, the stack contains:
- A firm Real-Time control process airserver which handles sensor input, valve output, the execution of low-level controllers and timely execution of scheduled signal events. Runs at 500Hz. Clients issue asynchronous messages to configure controllers, schedule changes in client signals and monitor any signals generated within the airserver.
- A reference client library in Python for configuring and asynchronoulsy controlling the airserver via a TCP/IP socket.
- Example scripts for simple control and monitoring scenarios, and unit tests. (located with the Python library)
Airserver  (runs on the BeagleBoneBlack)
Python library  for clients (runs on the client computer)
If you are interested in our PneumaticBox CAPE or are looking for a do-it-yourself solution for controlling a number of electromechanically actuated valves, you are welcome to reproduce our PneumaticBox CAPE!
We are publishing the production data (Gerber Files, Drill Files, Bill of Materials as well as Schematics and PCB as PDF-Files) for easy reproduction of our system.
The data is provided as-is and we do not offer any support.
You can download the files here