This project integrates ROS 2 with OpenCV (with CUDA) on a Jetson platform to manage a differential robot. It features micro-ROS for handling motor controls by sending linear and angular velocities. The workspace includes two main parts: puzzle_ws for robot control and real-time operations, and fog_ws for off-hardware classification tasks ensuring topic sharing over the network.
- ROS 2 installation
- OpenCV with CUDA support
- micro-ROS setup
- Jetson platform (with proper environment setup for CUDA and ROS 2)
- Serial connection for micro-ROS agent (usually via USB)
- Clone the repository:
git clone https://github.com/paulramirez19/TE3002B/
cd TE3002B- Prepare the
puzzle_wsworkspace:
cd puzzle_ws
# Remove previous build artifacts if they exist
rm -rf build install log
# Build the workspace
colcon build- Prepare the fog_ws workspace:
cd ../fog_ws
# Remove previous build artifacts if they exist
rm -rf build install log
# Build the workspace
colcon build- Launch the micro-ROS agent:
ros2 run micro_ros_agent micro_ros_agent serial --dev /dev/ttyUSB0- Source the setup script and run the launcher file:
source install/setup.bash
ros2 launch puzzle_pkg launch.pyEnsure that if you are working remotely or need the fog_ws for classification, topics are correctly shared across the network.
The project is configured to control a differential robot by sending appropriate linear and angular velocities through the micro-ROS setup. Adjustments to velocity and other parameters should be made in accordance with the specific robot's configuration and environmental context.



