Skip to main content

ROS Common v1

Flex interface specifications for ROS (Robot Operating System) common message types.

Overview

This module provides Flex definitions for the standard ROS message packages.

These specifications allow ROS message types to be used for data transformation, code generation, and system integration in robotics applications.

Module Structure

FileDescription
builtin.flexCore ROS primitives (TimePrim, DurationPrim)
std_msgs.flexStandard message wrappers (Header, Bool, String, ColorRGBA, multi-arrays)
geometry_msgs.flexSpatial data (Point, Pose, Quaternion, Transform, Twist, Wrench, Vector3)
sensor_msgs.flexSensor data (Image, Imu, LaserScan, PointCloud2, NavSatFix, JointState, BatteryState)
nav_msgs.flexNavigation (Odometry, Path, OccupancyGrid, MapMetaData)
actionlib_msgs.flexAction server (GoalID, GoalStatus, GoalStatusArray)
diagnostic_msgs.flexDiagnostics (DiagnosticArray, DiagnosticStatus, KeyValue)
shape_msgs.flex3D shapes (Mesh, Plane, SolidPrimitive)
stereo_msgs.flexStereo vision (DisparityImage)
trajectory_msgs.flexMotion planning (JointTrajectory, MultiDOFJointTrajectory)
visualization_msgs.flexRViz visualization (Marker, InteractiveMarker, MenuEntry)

Key Message Types

Geometry - Poses, transforms, and kinematic data for robot localization and manipulation:

  • Pose, PoseStamped, PoseWithCovariance - Position and orientation
  • Transform, TransformStamped - Coordinate frame relationships
  • Twist, Accel, Wrench - Velocity, acceleration, and force

Sensors - Common robot sensor interfaces:

  • Image, CompressedImage, CameraInfo - Camera data and calibration
  • LaserScan, PointCloud2 - LIDAR and depth sensors
  • Imu, MagneticField - Inertial and magnetic sensors
  • NavSatFix - GPS/GNSS positioning
  • JointState - Robot joint positions, velocities, and efforts

Navigation - Autonomous navigation primitives:

  • Odometry - Robot pose and velocity estimates
  • Path - Waypoint sequences for path planning
  • OccupancyGrid - 2D probability maps for obstacle avoidance

Visualization - RViz display types:

  • Marker, MarkerArray - 3D visualization primitives
  • InteractiveMarker - User-manipulable 3D controls

Usage

Import specific message types from the appropriate module:

import ROS::Common::v1.geometry_msgs (Pose, Transform)
import ROS::Common::v1.sensor_msgs (Image, LaserScan)
import ROS::Common::v1.nav_msgs (Odometry, Path)

Dependencies

  • tangram::flex::helpers::v1.annotations - Flex annotation helpers (@Length, @Rename)