IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> ros读取GPS模块数据,并发布到topic -> 正文阅读

[系统运维]ros读取GPS模块数据,并发布到topic

今天拿到一个GPS模块,店家说linux可以用,那就是可以试试
在这里插入图片描述

1 检查设备连接

Ubuntu输入:

	ls /dev/tty*

查看是否有USB设备接入,正常情况如下:
在这里插入图片描述
然后可以直接看设备原始数据:

	sudo cat /dev/ttyACM0

如图:
在这里插入图片描述
连接正确

2 串口助手读取数据

sudo apt install cutecom
sudo cutecom 

设置 串口和波特率可以看到数据

3 接入ros

mea_navsat_driver 包用于解析 NMEA 字符串并发布非常简单的 GPS 消息的包。不需要或使用 GPSD 守护程序。
参见ros wiki: http://wiki.ros.org/nmea_navsat_driver
github源码:https://github.com/ros-drivers/nmea_navsat_driver
这个包为输出兼容的 NMEA 语句的 GPS 设备提供了一个 ROS 接口。

(1)安装nmea_navsat_driver

	sudo apt-get install ros-melodic-nmea-navsat-driver libgps-dev

(2)打开新Terminal窗口

	roscore

(3)启动launch文件,运行nmea_serial_driver 节点

	roscd nmea_navsat_driver/launch/
	sudo vim nmea_serial_driver.launch 

修改USB口和波特率:

<launch>
 
  <!-- A simple launch file for the nmea_serial_driver node. -->
 
  <arg name="port" default="/dev/ttyACM0" />
  <arg name="baud" default="9600" />
  <arg name="frame_id" default="gps" />
  <arg name="use_GNSS_time" default="False" />
  <arg name="time_ref_source" default="gps" />
  <arg name="useRMC" default="False" />
 
  <node name="nmea_serial_driver_node" pkg="nmea_navsat_driver" type="nmea_serial_driver" output="screen">
    <param name="port" value="$(arg port)"/>
    <param name="baud" value="$(arg baud)" />
    <param name="frame_id" value="$(arg frame_id)" />
    <param name="use_GNSS_time" value="$(arg use_GNSS_time)" />
    <param name="time_ref_source" value="$(arg time_ref_source)" />
    <param name="useRMC" value="$(arg useRMC)" />
  </node>

然后给USB权限:

	sudo chmod 777 /dev/ttyACM0

运行nmea_serial_driver 节点:

	roslaunch nmea_navsat_driver nmea_serial_driver.launch

(4)查看话题输出

	rostopic echo /fix

在这里插入图片描述
一开始在室内测试,值为nan,到了室外后正常
在这里插入图片描述
一个廉价的GPS模块,随便玩玩吧。

4 其他说明

nmea_navsat_driver提供四个节点:
nmea_topic_driver,nmea_serial_driver,nmea_topic_serial_reader和nmea_socket_driver

nmea_topic_serial_reader节点

此节点从串口读入GPS数据,然后封装为nmea_msgs/Sentence数据格式,发布话题nmea_sentence。

nmea_topic_driver节点

此节点订阅话题nmea_sentence,然后根据NMEA0184协议解析,并发布解析后的数据,发布话题为:经纬度/fix,速度/vel,gps时间/time_reference和航向角/heading。

nmea_serial_driver节点

此节点从串口读数据,直接解析发布数据,相当于nmea_topic_driver节点和nmea_topic_serial_reader节点的结合体。

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-05-08 08:30:52  更:2022-05-08 08:33:16 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 17:44:27-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码