A build systems is a functional program or scripts developed to automate and simplify compiling and linking source code. A meta-build system like CMake generates native makefiles and workspaces that can be used in the compiler environment of your choice. CMake is a powerful open-source cross-platform set of tools designed to build, test and package…Read more Understanding ROS Build Systems
Step-by-step guide for contributing to Open Source projects
Contributing to open source projects can feel very daunting in the beginning. A good way to get started is to contribute small changes such as bug or documentation fixes. Most open source projects publish guidelines which outline best practices and contributors are sometimes invited to attend meetings to discuss the direction of the project. Regardless…Read more Step-by-step guide for contributing to Open Source projects
Step-by-step Autoware.Auto installation guide
Open source autonomous driving projects have simplified autonomous vehicle development, particularly where resources are constrained. Popular projects include Apollo (an open autonomous driving platform), openpilot (an open source driver assistance system), CARLA (an open source simulator for autonomous driving research) and Autoware.Auto (an open source autonomous driving platform). This article focuses on setting up a…Read more Step-by-step Autoware.Auto installation guide
Extracting Images and Sensor Data from ROS bag files to Python
The ROS bag file format is popular in robotics, where it is used to store ROS message data. Several tools for working with ROS bag files exist, such as rosbag (a tool for recording, playing back, and filtering data), rqt_bag (a tool for visualising rosbag data), rostopic (a tool for listing and echoing the content…Read more Extracting Images and Sensor Data from ROS bag files to Python
GNU Screen Magic
GNU Screen is a terminal multiplexer. Simply put, it allows you to run multiple persistent sessions and each session can have multiple screen (shell) windows. These sessions will continue to run even if your SSH connection gets disconnected. This setup is very useful for running processes that take a long time on a remote machine.…Read more GNU Screen Magic
Autonomous robot hardware setup
The TurtleBot2 robot is a popular open source robotics research platform. The platform officially supports a Netbook laptop as the main computer for the robot, however, driving around with a laptop on the robot can be cumbersome. It is better to integrate a single board computer with the robot platform to allow the robot to…Read more Autonomous robot hardware setup
5G not connecting in Ubuntu
5G is fast becoming a standard for hassle free at home Internet, with companies like Huawei partnering with Vodafone/Three/EE to offer this service. Most phones, tablets and laptops can automatically connect to a 5GHz network without any issues. On Ubuntu, especially with older hardware, the network can appear to be connected but a simple ping…Read more 5G not connecting in Ubuntu
Setting up ROS with Python 3 and OpenCV
The Robot Operating System (ROS) does not currently work out-of-the-box with Python 3. ROS officially supports Python 2.7 and ROS 2 supports Python 3 natively. Since Python 2.7 support is now deprecated, and most robots in 2020 still use ROS (not ROS 2), it becomes neccessary to set up Python 3 with ROS in order…Read more Setting up ROS with Python 3 and OpenCV
Optimising the RealSense R200 camera for outdoor use
The RealSense cameras are widely used on robots which often have to venture outdoors. Using any camera outdoors can pose some challenges with glare from sunlight. The RealSense D435 camera's default settings work quite well outdoors. This is however not the case for the older R200 cameras. This tutorial outlines how to optimise the R200…Read more Optimising the RealSense R200 camera for outdoor use
Running the RealSense R200 camera with librealsense and pyrealsense legacy libraries
The legacy Intel RealSense cameras such as the R200/F200/SR300/LR200/ZR300 can be challenging to work with because support is limited. Documentation is sparse, so this tutorial provides a step by step guide for installing librealsense and pyrealsense for running the older RealSense R200 camera in ROS or natively in Python. Install librealsense The first part of…Read more Running the RealSense R200 camera with librealsense and pyrealsense legacy libraries