The project enables a serial connection with the Inertial Measurement Unit (IMU) sensor VectorNav VN-100 for data transmission. The connection reads raw IMU data which includes linear acceleration, angular rate, magnetic field and orientation. The data is then transmitted using ROS2 communication to other systems on the network.
- Humble
ament_cmakerclcppstd_msgsstd_srvssensor_msgsgeometry_msgs
sonia_common_cppsonia_common_ros2
Boost
- Name:
imu_provider - Port Name:
/dev/IMU - Port type: serial
- Baud Rate: 115200
| Type | Name | Direction | Message/Service Type | Description |
|---|---|---|---|---|
| Topic | /provider_imu/imu_info |
Published | sensor_msgs/msg/IMU |
IMU standard data |
| Topic | /system_monitor/node_status |
Published | sonia_common_ros2/msg/NodeStatus |
Message contains information of the state of a node |
| Service | /provider_imu/tare |
Service Server | std_srvs/srv/Trigger |
Resets the imu sensor to current orientation |
To build the project, the following commands should be run directly from your ROS2 workspace.
colcon build --packages-select imu_port_manager --symlink-install
source install/setup.bashros2 launch imu_port_manager launch.pyros2 node list
ros2 node info /imu_port_manager
ros2 topic echo /provider_imu/imu_info
ros2 param list /imu_port_manager