0% found this document useful (0 votes)
58 views17 pages

PierreKhancyr Ros and ArduPIlot

ROS and ArduPilot can be used together by translating between their communication protocols. ROS is a proven middleware for robotics that has tools for algorithms, but is not lightweight enough for embedded systems. ArduPilot is a proven autopilot that provides a safe base for vehicles but lacks high-level capabilities. They can be combined so ROS extends ArduPilot with algorithms while ArduPilot handles low-level control and sensing. This allows for applications like heterogeneous swarm robotics research projects.

Uploaded by

Thành Trung
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
58 views17 pages

PierreKhancyr Ros and ArduPIlot

ROS and ArduPilot can be used together by translating between their communication protocols. ROS is a proven middleware for robotics that has tools for algorithms, but is not lightweight enough for embedded systems. ArduPilot is a proven autopilot that provides a safe base for vehicles but lacks high-level capabilities. They can be combined so ROS extends ArduPilot with algorithms while ArduPilot handles low-level control and sensing. This allows for applications like heterogeneous swarm robotics research projects.

Uploaded by

Thành Trung
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

ROS AND ARDUPILOT

Pierre Kancir – Canberra Unconference 2018


ROS
2

¨ Robot Operating System


¨ NOT an OS but a middleware
¨ Enable code reuse in robotics research and
development and to release ready to use software
packages for a large set of common tasks.
Application

Middleware

OS

Hardware
ROS Middleware
3

WHY ROS ?
No middleware A company + a ROS
middleware

• Code linked • Reusable • Open source


to hardware codebase • Middleware
• Multi • Easier for robots
components programming • Tools for
communication • Locked to simplier
complex company robots
programming

PR2, first ROS robot


ROS Architecture
4

¨ TCP/IP communication Peer


to
¨ Publish/Subscribe peer
everywhere ! Free & Multi
Open Langu
Source age
¨ Standard message set ROS
dedicated to robots
Plent
¨ Tools Light y
C++ tools
¨ More tools…
Java
XML- Lisp
RPC

Python
ROS Wording
5

¨ Nodes : computation processes like control motors, do SLAM


etc.
¨ Master service : manage the communications.
¨ Parameter server : where parameters are stored.
¨ Messages : data structure for communication between nodes.
¨ Topics : asynchronous exchanges.
¨ Services : synchronous exchanges.
¨ Bags : data logging.
ROS Wording
6
ROS Some Tools
7

¨ Gazebo : simulation
¨ Catkin : compilation
with magic
¨ RQT : Gui for
everything
¨ Mavros : ROS <->
Mavlink translation
ROS Problems
8

¨ Centralised architecture and no real time contraints.


¨ Build for ground robots.
¨ Not light enough to be embedable.
¨ Not usage on unreliable networks (Wifi, RF, etc.).
¨ No Multi-Robots System.
¨ Few compatibility is other systems : Cloud, IoT, etc.
¨ Too much undocumented / rooting package
¨ Package are mostly done by academic : Beware the bugs !
ROS 2.0
9

¨ DDS
¨ Embedable
¨ Decentralised
¨ RT-compatible
¨ MRS-compatible
10

Questions on ROS ?

Need example ?
ROS and ArduPilot
11

¨ ROS is a proven ¨ ArduPilot is a proven


middleware for embedded autopilot
robotic
Problematic
12

¨ ROS only speaks ROS and ArduPilot only speaks


Mavlink
¨ Translator possible :
¤ Mavros
¤ autopilot_bridge

¨ ArduPilot input are constraints by Mavlink


What can it be used for ?
13

¨ ROS already got plenties of package for high


level algorithm : SLAM, filtering, video, etc.
¨ ROS can extend ArduPilot capabilities.
¨ ArduPilot bring a safe and proven base for ROS
vehicle and sensors !
Swarm with ROS and ArduPilot
14

¨ Research project on
heterogenous swarm
patrolling (pheromone
based)
How hard it is to use ?
15

¨ Just need to understand how to use a


serial/tcp/udp port !

¨ Let’s do it !
Advanced simulation
16

¨ ArduPilot lack of 3D simulation


¨ Gazebo as plotter
¨ Gazebo as simulator
¤ Still
basic : feed SITL with IMU and position only
¤ Patch for GPS, rangefinder comming
¤ Merge into Gazebo master branch is stall
17

Questions ?

You might also like