Skip to content
All projects

Robotics · Computer visionPython

ROS 2 Camera Arm

A 2-DOF arm with a live camera, tracing a square in Gazebo while RViz2 mirrors every joint.

θ1θ2CAM/camera/image_raw/joint_states · /tf

Overview

This started as dofarm, a ROS 2 package that describes a planar two-joint arm in URDF and brings it up in RViz2 and Gazebo with a single launch file. The camera arm builds on it by mounting a camera sensor on a dedicated link and streaming its view over ROS 2 topics.

It is the build where the full ROS 2 stack came together at once: robot description, physics simulation, topic bridging, state publishing and live visualisation.

How it works

  1. Describe

    A URDF/Xacro model defines two revolute joints, the link geometry and a camera link with its sensor plugin.

  2. Command

    A Python node publishes joint position commands that walk the arm around a square trajectory.

  3. Simulate

    Gazebo Fortress handles the physics and renders the camera, and ros_gz_bridge carries the image stream into ROS 2.

  4. Visualise

    robot_state_publisher and joint_state_publisher feed /joint_states and /tf to RViz2, which shows the pose and the camera image live.

What's next

  • Sensor fusion and closed-loop feedback from the camera