Rico's Nerd Cluster

「离开世界之前 一切都是过程」

Robotics - [Epic Bugs] SLAM Related Bugs

G2O

Below is a list of bugs that took me multiple hours, if not days, to troubleshoot and analyze. These are the “epic bugs” that are worth remembering for my career. Epic Bug 1: G2O Optimization Didn...

Robotics - A Survey On Oil Pipe Inspection Robotics (Revising)

Non-Destructive Testing Methods American Society for Testing and Materials (ASTM) and American Society of Mechanical Engineers (ASME) develops standards for pipe inspections Ultrasonic Testing...

Robotics - [ROS2 Foundation] Ros2 Bags

Introduction ros2 bag is a command line tool for recording data published on topics in your system. It accumulates the data passed on any number of topics and saves it in a database. You can then ...

Robotics - [ROS2 Foundation] Ros2 Parameters

ROS2 Parameters Intro What are ROS2 parameters? ROS2 Parameters are one means to change certain values in a node during runtime. They are associated initialized, set, and retrieved at the level o...

Robotics - [ROS2 Foundation] Ros2 Executor Callback Model

Executor, Callbacks, Threading Model, Rate Object

Executors TODO Callback groups In ROS2, callback groups are a synchronization mechanism for managing concurrent execution in multi-threaded executors. They determine which callbacks can run simu...

Robotics - ROS2 Service

How to Bring Up a Service

Set up a ROS2 Service File ROS2’s ament build system does not support generating msg and srv files in pure python packages. So it’s a common practice to define an interface package that could be i...

Robotics - [ROS2 Foundation 3] ROS2 Build System

Various Things to Note For Building Dockerized ROS2 App

Build Tool A build tool operates on a set of packages determines the dependency graph invokes the specific build system for each package in topological order. for a specific package, knows ...

Robotics - [ROS2 Foundation 2] ROS2 in Docker

Various Things to Note For Building Dockerized ROS2 App

Networking Using --net=host implies both DDS participants believe they are in the same machine and they try to communicate using SharedMemory instead of UDP. So we need to enable SharedMemory b...

Robotics - [ROS2 Foundation - 1] DDS Notes

DDS, Zeroconf, IDL, FastRTPS, ROS2 Messaging Mechanism

What’s Middleware Middleware abstracts the complexity of managing communication, serialization, discovery, and other low-level functionalities, allowing developers to focus on application-level ...

Robotics General Design Notes

What's New In ROS2

Software Structuring Build a simulation / dataset for debugging software is key. Otherwise, you will have a lot of overhead of on-robot hardware testing. Have three general feature f...