Bundle and save to celebrate summer! Shop Now

View All Materials

Lesson:

A iRobot® Create® 3 robot ROS2 server and client library by KIPR

Experience Level

Advanced

Duration

30-60 minutes

Group Size

Individual

Small Groups (2-4)

Compatible Robots

N/A

Details

This ROS 2 server will run the robot's C commands in a client-server model with ROS2 in a Docker container with the client running on any dev machine or robot.

Downloads & Resources

To view the full library, visit https://github.com/kipr/create...

iRobot® Create® 3 robot ROS2 server and client library

Holds a ROS2 C++ server for communicating with the iRobot® Create® 3 robot and an associated client library for communicating with said server. The server can then be packaged into a Docker image, allowing the client to remain free of ROS2 dependencies.

The RPC between client and server is handled by Cap'n Proto.

Dependencies

Common

Server

Building

cd create3
cmake -Bbuild
cmake --build build

Build Options

For most scenarios:

Use --parallel <n> to build with multiple threads in cmake --build build step.

Windows Support

To configure cmake for a windows build, replace cmake -Bbuild with:

cmake -Bbuild -GNinja -Dserver=OFF

The remaining instructions are the same.

Examples

Examples are configured to connect to a KIPR Wombat running the docker instance of the server. Users may want to change the IP address in the examples to match their own setup.

Examples may be run after building by executing:

cd create3/build
./examples/<example_name>

Tests

To run unit tests, execute:

cd create3/build
ctes