【惯性传感器imu】—— WHEELTEC的惯导模块的imu的驱动安装配置和运行

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、IMU驱动安装
    • [1. 安装依赖](#1. 安装依赖)
    • [2. 源码的下载](#2. 源码的下载)
    • [3. 编译源码](#3. 编译源码)
      • [(1) 配置固定串口设备](#(1) 配置固定串口设备)
      • [(2) 修改luanch文件](#(2) 修改luanch文件)
      • [(3) 编译](#(3) 编译)
  • 二、启动IMU
    • [1. 运行imu](#1. 运行imu)
    • [2. 查看imu数据](#2. 查看imu数据)
  • 总结

前言

WHEELTEC的惯导模块使用惯性测量单元(IMU),是一种用于感知车辆运动状态的关键技术。IMU通过测量车辆的加速度和角速度来估计其姿态、位置和速度等信息。WHEELTECIMU采用先进的传感器技术和算法,能够提供高精度、高稳定性的运动信息,对于自动驾驶系统的导航、定位和控制至关重要。IMU能够在各种复杂环境下工作,并具有快速响应和低延迟的特点,为车辆提供准确的导航引导,实现安全可靠的自主行驶。

本教程介绍如何安装WHEELTEC的惯导模块的imu的驱动和使用。

一、IMU驱动安装

注意 :以下的教程适用于WHEELTEC的惯导模块的imu的驱动配置,不同厂家的imu对应的驱动程序不同。

1. 安装依赖

ros系统为noetic版本:

bash 复制代码
sudo apt install ros-noetic-serial    //此命令不能安装时,可以参考github官网的安装流程

melodic版本下:

bash 复制代码
终端输入:sudo apt install ros-melodic-serial

2. 源码的下载

到工作空间的src的目录下,终端输入:

bash 复制代码
https://github.com/SHUNLU-1/fdilink_ahrs.git

3. 编译源码

(1) 配置固定串口设备

src/fdilink_ahrs目录下执行脚本:

bash 复制代码
 sudo chmod 777 wheeltec_udev.sh
 sudo sh wheeltec_udev.sh

(2) 修改luanch文件

查看端口号:

imu连接电脑的USB口,终端输入查看:

bash 复制代码
 ls /dev/ttyUSB0  //检查电脑能否识别到 ttyUSB0

检测到 ttyUSB0 后,给 ttyUSB0 赋权限:

bash 复制代码
sudo chmod 777 /dev/ttyUSB0

修改luanch文件:

将文件中端口改成自己的设备端口,图下 :

bash 复制代码
 <param name="port"  value="/dev/ttyUSB0"

注意:端口号没修改或没插入设备,运行imu驱动时都会出现报错:Unable to open port

整个launch文件的配置如下所示:

cpp 复制代码
<launch>
  <node pkg="fdilink_ahrs" name="ahrs_driver" type="ahrs_driver" output="screen" >
    <!-- 是否输出debug信息 -->
    <param name="debug"  value="false"/>
    
    <!-- 串口设备,可通过rules.d配置固定。
     若使用DETA100,则value="/dev/wheeltec_ch340"
     若使用WHEELTEC N系列,则不需要改动 -->

    <param name="port"  value="/dev/ttyUSB0"/>

    <!-- 波特率 -->
    <param name="baud"  value="921600"/>

    <!-- 发布的imu话题名 -->
    <param name="imu_topic"  value="imu"/>

    <!-- 发布的imu话题中的frame_id -->
    <param name="imu_frame"  value="gyro_link"/>

    <!-- 地磁北的yaw角 -->
    <param name="mag_pose_2d_topic"  value="/mag_pose_2d"/>

    <!-- 发布的数据基于不同设备有不同的坐标系   -->
    <!-- 0: origin_data, 1: for single imu or ucar in ROS, 2:for Xiao in ROS -->
    <param name="device_type"  value="1"/> 
  </node>
</launch> 

(3) 编译

在工作空间的目录下

终端输入:

bash 复制代码
catkin_make

或者

bash 复制代码
catkin_make -DCATKIN_WHITELIST_PACKAGES=fdilink_ahrs   //代码单独编译fdilink_ahrs文件

二、启动IMU

1. 运行imu

编译完成后,终端输入:

bash 复制代码
roscore
source ./devel/setup.bash
roslaunch fdilink_ahrs  ahrs_driver.launch     //启动imu

2. 查看imu数据

(1) 查看imu的ros话题

bash 复制代码
rostopic list

(2) 终端显示imu的数据

bash 复制代码
rostopic echo /imu      

其中/imu是imu对应的话题。

终端打印的数据页面如下所示:

如打印imu话题数据如上所示,则代表imu驱动已经安装完成。

总结

以上教程介绍如何安装WHEELTEC的惯导模块的imu的驱动和使用,以及实测过程中如何修改参数已适配自己的传感器参数,如有其他的问题,可以评论区交流讨论!

相关推荐
陌路202 分钟前
Linux18--进程间的通信总结
linux
2401_858286115 分钟前
OS36.【Linux】简单理解EXT2文件系统(2)
linux·运维·服务器·数据结构·文件系统·ext2
Zach_yuan8 分钟前
程序地址空间
android·linux·运维·服务器
梁萌18 分钟前
Linux安装BiliNote
linux·运维·服务器·docker·bilinote
Roc-xb28 分钟前
解决虚拟机安装的Ubuntu20.04.6 LTS 不能复制粘贴问题
服务器·ubuntu·vmvare
EasyCVR35 分钟前
从汇聚到智能:解析视频融合平台EasyCVR视频智能分析技术背后的关键技术
大数据·人工智能
m0_6501082437 分钟前
【论文精读】GenTron:基于 Transformer 的扩散模型革新图像与视频生成
人工智能·论文精读·transformer扩散模型·文生图(t2i)·文生视频(t2v)
文火冰糖的硅基工坊1 小时前
[人工智能-大模型-66]:模型层技术 - 两种编程范式:数学函数式编程与逻辑推理式编程,构建起截然不同的智能系统。
人工智能·神经网络·算法·1024程序员节
小安运维日记1 小时前
RHCA - DO374 | Day03:通过自动化控制器运行剧本
linux·运维·数据库·自动化·ansible·1024程序员节
创思通信1 小时前
树莓派的YOLO智能AI识别系统,识别ESP32还是STM32
人工智能·stm32·yolo