Title : 
PX4: A node-based multithreaded open source robotics framework for deeply embedded platforms
         
        
            Author : 
Meier, Lorenz ; Honegger, Dominik ; Pollefeys, Marc
         
        
            Author_Institution : 
Comput. Sci. Dept., Comput. Vision & Geometry Group, ETH Zurich, Zurich, Switzerland
         
        
        
        
        
        
            Abstract : 
We present a novel, deeply embedded robotics middleware and programming environment. It uses a multithreaded, publish-subscribe design pattern and provides a Unix-like software interface for micro controller applications. We improve over the state of the art in deeply embedded open source systems by providing a modular and standards-oriented platform. Our system architecture is centered around a publish-subscribe object request broker on top of a POSIX application programming interface. This allows to reuse common Unix knowledge and experience, including a bash-like shell. We demonstrate with a vertical takeoff and landing (VTOL) use case that the system modularity is well suited for novel and experimental vehicle platforms. We also show how the system architecture allows a direct interface to ROS and to run individual processes either as native ROS nodes on Linux or nodes on the micro controller, maximizing interoperability. Our microcontroller-based execution environment has substantially lower latency and better hardware connectivity than a typical Robotics Linux system and is therefore well suited for fast, high rate control tasks.
         
        
            Keywords : 
Linux; application program interfaces; embedded systems; middleware; open systems; public domain software; robot programming; Linux; POSIX application programming interface; PX4; ROS nodes; Unix-like software interface; VTOL; deeply embedded open source systems; deeply embedded platforms; deeply embedded robotics middleware; interoperability; microcontroller; multithreaded design pattern; node-based multithreaded open source robotics framework; programming environment; publish-subscribe design pattern; publish-subscribe object request broker; standards-oriented platform; vertical takeoff and landing; Computer architecture; Hardware; Linux; Robot sensing systems; Software; Vehicles;
         
        
        
        
            Conference_Titel : 
Robotics and Automation (ICRA), 2015 IEEE International Conference on
         
        
            Conference_Location : 
Seattle, WA
         
        
        
            DOI : 
10.1109/ICRA.2015.7140074