SBG EllipseE型号IMU 用ROS的驱动sbg_driver读取数据

2023-10-25 13:20

本文主要是介绍SBG EllipseE型号IMU 用ROS的驱动sbg_driver读取数据,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、SBG 驱动下载

SBG Driver驱动下载

sudo apt-get install ros-melodic-sbg-driver

SBG ROS Driver下载:在工作空间中运行

git clone https://github.com/SBG-Systems/sbg_ros_driver

catkin工作空间文件夹中

catkin build

或者

catkin_make

二级标题

二、配置 SBG 相关yaml配置文件

1.许可ROS

修改配置 sbg_device_uart_default.yaml文件中,以下false改为true

#Configuration of the device with ROS.
confWithRos: true

在这里插入图片描述

2.配置端口

检测 SBG 设备连接的端口名称:

ls -l /dev/ttyUSB*

将sbg_device_uart_default.yaml文件中设备名修改成实际的设备名

  # Port NameportName: "/dev/ttyUSB1"

在这里插入图片描述
设置许可

sudo chmod 777 /dev/ttyUSB0

三、读取数据及rosbag储存

1.启动ROS驱动节点

roscore
roslaunch sbg_driver sbg_device.launch 

在这里插入图片描述
命令查看当前话题,有Sbg的话题

rostopic list 

在这里插入图片描述

2.终端数据读取

查看详细话题消息,在终端用sbg_driver读取imu数据( /sbg/imu_data可改为其他话题名称)

rostopic echo /sbg/imu_data

在这里插入图片描述
在这里插入图片描述

3.rosbag采集数据

rosbag record -a

把bag转为txt

rostopic echo -b bag_name.bag -p /sbg/imu_data >txt_name.txt

在这里插入图片描述
在这里插入图片描述

四、出现的问题及解决

1.[Init] Unable to initialize the interface - SBG_ERROR

roslaunch sbg_driver sbg_device.launch
启用 sbg.device.lauch时报错
[ERROR] [1664863199.350635249]: SBG_DRIVER - SBG_DRIVER - [Init] Unable to initialize the interface - SBG_ERROR
在这里插入图片描述
参数文件/config/sbg_device_uart_default.yaml,设备名修改成实际的设备名
portName: “/dev/sbg”

设置许可

chmod 777/dev/ttyUSB0
2.Unable to get the device Info : SBG_TIME_OUT

错误Unable to get the device Info : SBG_TIME_OUT
未收到设备信息,显示的设备的所有信息都是不规则的
在这里插入图片描述

/config/sbg_device_uart_default.yaml,打开修改波特率,修改参数文件不需要重新catkin_make,直接重新启动节点就可以

这篇关于SBG EllipseE型号IMU 用ROS的驱动sbg_driver读取数据的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/282826

相关文章

Java如何从Redis中批量读取数据

《Java如何从Redis中批量读取数据》:本文主要介绍Java如何从Redis中批量读取数据的情况,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一.背景概述二.分析与实现三.发现问题与屡次改进3.1.QPS过高而且波动很大3.2.程序中断,抛异常3.3.内存消

Linux查看系统盘和SSD盘的容量、型号及挂载信息的方法

《Linux查看系统盘和SSD盘的容量、型号及挂载信息的方法》在Linux系统中,管理磁盘设备和分区是日常运维工作的重要部分,而lsblk命令是一个强大的工具,它用于列出系统中的块设备(blockde... 目录1. 查看所有磁盘的物理信息方法 1:使用 lsblk(推荐)方法 2:使用 fdisk -l(

如何在Ubuntu上安装NVIDIA显卡驱动? Ubuntu安装英伟达显卡驱动教程

《如何在Ubuntu上安装NVIDIA显卡驱动?Ubuntu安装英伟达显卡驱动教程》Windows系统不同,Linux系统通常不会自动安装专有显卡驱动,今天我们就来看看Ubuntu系统安装英伟达显卡... 对于使用NVIDIA显卡的Ubuntu用户来说,正确安装显卡驱动是获得最佳图形性能的关键。与Windo

嵌入式Linux之使用设备树驱动GPIO的实现方式

《嵌入式Linux之使用设备树驱动GPIO的实现方式》:本文主要介绍嵌入式Linux之使用设备树驱动GPIO的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、设备树配置1.1 添加 pinctrl 节点1.2 添加 LED 设备节点二、编写驱动程序2.1

嵌入式Linux驱动中的异步通知机制详解

《嵌入式Linux驱动中的异步通知机制详解》:本文主要介绍嵌入式Linux驱动中的异步通知机制,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言一、异步通知的核心概念1. 什么是异步通知2. 异步通知的关键组件二、异步通知的实现原理三、代码示例分析1. 设备结构

usb接口驱动异常问题常用解决方案

《usb接口驱动异常问题常用解决方案》当遇到USB接口驱动异常时,可以通过多种方法来解决,其中主要就包括重装USB控制器、禁用USB选择性暂停设置、更新或安装新的主板驱动等... usb接口驱动异常怎么办,USB接口驱动异常是常见问题,通常由驱动损坏、系统更新冲突、硬件故障或电源管理设置导致。以下是常用解决

使用Python检查CPU型号并弹出警告信息

《使用Python检查CPU型号并弹出警告信息》本教程将指导你如何编写一个Python程序,该程序能够在启动时检查计算机的CPU型号,如果检测到CPU型号包含“I3”,则会弹出一个警告窗口,感兴趣的小... 目录教程目标方法一所需库步骤一:安装所需库步骤二:编写python程序步骤三:运行程序注意事项方法二

Linux_kernel驱动开发11

一、改回nfs方式挂载根文件系统         在产品将要上线之前,需要制作不同类型格式的根文件系统         在产品研发阶段,我们还是需要使用nfs的方式挂载根文件系统         优点:可以直接在上位机中修改文件系统内容,延长EMMC的寿命         【1】重启上位机nfs服务         sudo service nfs-kernel-server resta

ROS - C++实现RosBag包回放/提取

文章目录 1. 回放原理2. 回放/提取 多个话题3. 回放/提取数据包,并实时发布 1. 回放原理 #include <ros/ros.h>#include <rosbag/bag.h>#include <std_msgs/String.h>int main(int argc, char** argv){// 初始化ROS节点ros::init(argc, argv,

驱动(RK3588S)第七课时:单节点设备树

目录 需求一、设备树的概念1、设备树的后缀名:2、设备树的语法格式3、设备树的属性(重要)4、设备树格式举例 二、设备树所用函数1、如何在内核层种获取设备树节点:2、从设备树上获取 gpio 口的属性3、获取节点上的属性只针对于字符串属性的4、函数读取 np 结点中的 propname 属性的值,并将读取到的 u32 类型的值保存在 out_value 指向的内存中,函数的返回值表示读取到的