序章
由于之前的 IMU G掉了,然后翻了翻找出来了一个超核电子的 CH110,但是Amazing的是……我忘记怎么接线怎么用了,在此记录一下,并且跑一下在 ROS2 Humble 下的驱动。
1-接线
这个 CH110 是 CAN_232,版的,刚好手头有一个USB转232公头的串口线,其中RS232的公头与母头如下:
,根据CH110上的线序,接线示意图如下,其中母头 TXD 与 RXD 正常接入即可,VCC与GND单独拉出供电,注意电源线,IMU、RS232的GND口串接,共地:
2-Windows资料使用
2.1-驱动安装
超核电子上位机:hipnuc/CHManager: Experimental PC host for HiPNUC products (github.com)
超核电子产品驱动:hipnuc/products: 超核电子产品资料 (github.com)
先访问hipnuc/products: 超核电子产品资料 (github.com),下载该zip包,找到products/usb_uart_drivers/win at master · hipnuc/products (github.com)中的CP2104,然后根据自己的电脑系统安装驱动:
这个一路下一步就好了。
2.2-上位机使用
驱动安装完成后,电脑上接入 USB-232 的线,并且给 IMU 供电(宽电压):
供电后打开上位机,点击连接中的自动连接,即可连接到IMU
此时 IMU 的数据即可读到,需要注意的是,刚连接时 IMU 的航向并不准确,需要按照产品说明,让其旋转 1 分钟左右根据磁力计进行自动标定。
3- Linux下的使用
3.1-Ubuntu20.04下 ROS noetic 与 ROS Foxy的使用
3.1.1-ROS noetic(官方示例为Melodic但兼容noetic)
在 GitHub - hipnuc/products: 超核电子产品资料 下载的文件中有 examples 的文件夹,其中 ROS 对应的为 ROS1。
直接在 ~/products-master/examples/ROS_Melodic/serial_imu_ws 中进行 catkin_make ,然后进行
source devel/setup.bash
sudo chmod 777 /dev/tty*
roslaunch hipnuc_imu imu_msg.launch
即可直接看到数据:
3.1.2-ROS Foxy(官方示例为Foxy但兼容Humble)
与上方的 ROS noetic 同理,直接在 ~/products-master/examples/ROS2/serial_imu_ws 中进行 colcon build , 然后进行
source install/setup.bash
sudo chmod 777 /dev/tty*
ros2 launch hipnuc_imu imu_spec_msg.launch.py
即可看到数据
4-工控机使用
上方的所有使用都是接入的USB-RS232的线在自己的电脑上进行的使用,但是工控有直接使用的RS232口,可以直接插入,在插入后,先给权限,然后可以用 CuteCom 查看数据是否接通设备,如果没有可以安装
sudo apt install cutecom
然后给权限,因为我插入的是 COM1 口,则下面的 CuteCom 可以选择 S0
sudo chmod 777 /dev/tty*
之后把 hipnuc_config.yaml 中的串口名称修改一下就可以了
IMU_publisher:
ros__parameters:
serial_port: "/dev/ttyS0" #因为我接入的是S0
baud_rate: 115200
frame_id: "base_link"
imu_topic: "/IMU_data"
之后的所有运行都跟上面的一样了。
不及归不无以至千里,不积小流无以成江河-----------------------19:33