The GMPS Driver is a ROS2 Driver for GMPS sensor.
GMPS sensor
<--(CAN)--> USB-CAN I/F
<--(socketCAN)--> ros2_socketcan
<--(can_msgs::Frame)--> gmps_driver
- Host device
- Linux OS: Ubuntu 22.04
- ROS2: humble
- Other packages
# enable socketCAN
$ sudo modprobe can_dev
$ sudo modprobe can
$ sudo modprobe can_raw
$ sudo ip link set can0 type can bitrate 500000
$ sudo ip link set up can0
# launch ros2_socketcan
$ ros2 launch ros2_socketcan socket_can_bridge.launch.xml
# launch gmps_driver
$ ros2 launch gmps_driver gmps_driver
-
in_gmps_can_frame (can_msgs/Frame)
CAN messages from CAN bus. -
in_velocity (autoware_auto_vehicle_msgs/VelocityReport)
Vehicle speed. -
in_soft_reset (std_msgs/Bool)
Reboot GMPS sensor.
-
out_gmps_can_frame (can_msgs/Frame)
CAN messages to CAN bus. -
out_gmps_detect (gmps_msgs/GmpsDetect)
GMPS sensor ouput, which means lateral deviation from detected magnetic marker. -
out_gmps_error (gmps_msgs/GmpsError)
GMPS sensor error.
The parameters are set in launch/gmps_driver.launch.xml
.
Name | Type | Description |
---|---|---|
offset_search_mode | bool | Launch this node for sensor calibration. |
delay_dist | double | Delay distance from the center of a magnetic marker [m] |
watchdog_timeout | double | Threshold for watchdog timer [s] |