agv小车-qt-ros控制注说明

2023-11-09

转过来,控制/地图 看上去也是json mqtt 通迅是一样的,单片机端添加ros json接口,由上位机获取单片机控制端的三轴/gps/ 姿态/轨迹数据后由json更新控制参数实现在agv小车在地图上面的动作控制
 1/ui接口类与ros连接
 2/控制消息发布操作---mqtt
 3/地图接口
 4/节点操作
 
 声明rviz的RenderPanel,这个面板类最终继承QWidget

mapp.cpp源文件:

void MAPP::on_btn_map_clicked(){manager_->removeAllDisplays();rviz::Display 
清除 显示内存 初始化

*map_=manager_->createDisplay("rviz/Map","adjustable map",true);
显示 rviz 目录 
 地图ROS_ASSERT(map_!=NULL);
 非空检测----设备初始化 操作
 设置地图路径并发布
 >subProp("Topic")->setValue("/map");
 
 发布地图信息
 rviz::Display *robot_=manager_->createDisplay("rviz/RobotModel","adjustable robot",true);
 显示ROS_ASSERT(robot_!=NULL);robot_->subProp("Robot Description")->setValue("robot_description");
 添加 模式显示rviz::
 Display *laser_=manager_->createDisplay("rviz/LaserScan","adjustable scan",true);
 开始 激光雷达 扫描  ROS_ASSERT(laser_!=NULL);laser_-
 设置激光雷发布消息
 >subProp("Topic")->setValue("/scan");laser_->subProp("Size (m)")->setValue("0.1");}
 发布 雷达 信息代码解释:创建了显示createDisplay(),
 然后添加topic值,加载地图void MAPP::on_btn_left_pressed(){ros::NodeHandle node;
 映射节点 句柄cmdVelPub 
 = node.advertise<:twist>("/cmd_vel", 1);
 写入节点
 参数ROS_INFO("move_turtle_goforward cpp start...");
 显示 前进 操作字符geometry_msgs::
 Twist speed;
 设置界面同步 修正 获取 三轴 
 姿态参数获取   驱动器编码器 
 当前值获取   当前任务 运行时间写入 
 修正参数/修正接口速度  写 0speed.linear.x = 0;
 角度 写 0.05speed.angular.z = 0.05;
 发布 操作参数cmdVelPub.publish(speed);}
 代码解释:向前、向后、向左、向右、停止的
 函数大同小异,主要修改speed.linear.x
 和speed.angular.z为这个进程的节点
 创建一个句柄node在/cmd_vel 话题
 发布一个geometry_msgs/Twist的消息
 控制信号载体Twist message设置线速度为0m/s,
 正为前进,负为后退 (0)设置角速度为0.05rad/s,
 正为左转,负为右转 (0.5)将刚才设置的指令
 发送给机器人cmdVelPub.publish()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

agv小车-qt-ros控制注说明 的相关文章

  • 运维线上业务版本自动回退脚本

    文章目录 运维线上业务版本自动回退脚本 引 回退效果 回退成功 回退失败 脚本 运维线上业务版本自动回退脚本 引 针对线上业务出现问题或Bug 导致业务不稳定等情况 需要紧急回退上个或上上个版本 写了个自动回退脚本 业务环境 Docker
  • 跟我一起使用create-react-app脚手架搭建vw-layout解决方案

    跟我一起使用create react app脚手架搭建vw layout解决方案 参考文章 1 跟我一起使用create react app脚手架搭建vw layout解决方案 2 https www cnblogs com smart g

随机推荐

  • Vue系列文章(一)———解决:ERROR TypeError: Cannot read property ‘NormalModule‘ of undefined等问题方案

    问题描述 方案一 1 删除node moudles 2 导入依赖 npm install 3 运行 npm run serve 方案二 1 删除node moudles 2 下载安装yarn npm install g yarn 3 安装依
  • 使用 CDN 或直接引入的方式,更换网站中文字体

    看腻了原先的字体 亦或是想满足独树一帜的设计欲望 不妨更换一下网站的字体吧 引入字体文件 这里提供两种引入的思路 一种是 CDN 引入 一种是本地引入 建议通过 CDN 的方式引入 可以大大提高加载效率 引入 CDN 字体文件 以更换字体为
  • Open3D 建筑物点云立面和平面分割提取

    目录 一 算法原理 二 代码实现 三 结果展示 一 算法原理 在建筑物点云中 立面点和平面点的法向量存在明显的差异 根据法向量在Z方向的分量设置相应得阈值即可实现立面点与平面点的分割 二 代码实现 import open3d as o3d
  • Python Flask使用PyInstaller打包成单独的exe可执行文件后图片无法正常显示的问题及解决方法

    在使用Pyinstaller将Flask打包成单独的exe可执行文件包时 原来在Pycharm里运行正常的程序突然出了问题 就是原来正常显示的网页图片和文件全部出现URL链接错误 资源不存在或URL错误 经过几个小时的各种网上查找资料和调试
  • css文字垂直居中

    div class style text align center margin top 20px div class style background F9C356 width 80 height 70px margin 0 auto d
  • 子网掩码是什么,IP段的24是什么写法(CIDR写法,斜杠记法斜线记法)

    背景 关于设置 IP 网段 我们常见到的 192 168 1 0 24 是什么意思 24是什么意思 这里的 192 168 1 0 的末尾0是 一定是0吗 跟 192 168 1 5 24 所表示的网段是一样的吗 补充 其实 24类似这种写
  • STM32F103ZET6-ESP8266驱动程序

    ESP8266 WIFI 模块如下图所示 WIFI 模块尺寸图如下图所示 如果需要将此模块设计到自己产品内 可能需要参考这个尺寸值 WIFI模块插在开发板上 如下图所示 从 WIFI 模块实物图中可以看到 WIFI 模块提供了一个 2 4
  • K Nearest Neighbor 算法

    2019独角兽企业重金招聘Python工程师标准 gt gt gt K Nearest Neighbor算法又叫KNN算法 这个算法是机器学习里面一个比较经典的算法 总体来说KNN算法是相对比较容易理解的算法 其中的K表示最接近自己的K个数
  • Black Screen Remote Desktop to Ubuntu from Windows with XRDP

    We have noticed that a lot of people hit the same issue over and over again When trying to connect via remote desktop pr
  • 相机标定-基础(一)

    1 何为相机标定 当相机拍摄照片时 我们看到的图像通常与我们实际看到的不完全相同 这是由相机镜头引起的 而且发生的频率比我们想象的要高 这种图像的改变就是我们所说的畸变 一般来说 畸变是指直线在图像中出现弯曲或弯曲 这种畸变我们可以通过相机
  • Python网络编程

    本地的进程间通信 IPC 有很多种方式 但可以总结为下面4类 消息传递 管道 FIFO 消息队列 同步 互斥量 条件变量 读写锁 文件和写记录锁 信号量 共享内存 匿名的和具名的 远程过程调用 Solaris门和Sun RPC 网络中进程之
  • pytest右键显示run pytest for XX.py

    进入 File settings python integrated tools里面修改 选择unittest
  • C++相关容器篇章

    内容 链接 vector 点击链接 stack和queue的函数用法 点击链接 优先队列priority queue
  • IDEA打包失败(多个module之间依赖不能识别)

    背景 开发过程中总会遇到一些不那么合理的架构 一个服务多个module 前后端不分离 于是需要自己打镜像 然后发到docker hub 再起服务 于是就有了第一步 本地打包的过程 idea提供了很方便的打包功能 然后出现异常 异常原因 we
  • 不限次数的chatGPT

    不说废话直接看方法 不用翻墙 开干 第一步 打开电脑的Edge浏览器 就是windows系统的默认浏览器 搜索wetab 点击如下的官方链接就会进入安装插件界面 第二步 点击chat AI就会弹出这个弹窗 点击 安装教程 按钮 第三步 来到
  • 企业微信跳转体验版小程序

    企业微信的 菜单中的H5页面要通过分享卡片跳转到小程序 测试时发现只能跳转正式环境 且 分享消息到当前会话 接口没有提供跳转体验版的参数 技术人想办法 要做多方案准备 终于可以了 企业微信提供了 小程序 打开多场景调试 这样打开了体验版开关
  • 温昱书评:读《代码之道》

    索然无味 毫无观点的书永远引不起人们的阅读兴趣 放心 代码之道 绝对不是 形式上 本书中的每一篇文章都通过讲故事等方式提出问题 然后分析问题根源 最后给出改善建议 其中 问题的提出往往极具戏剧效果 作者也坦承 为了达到效果 我又一次夸大了问
  • CUDA的cublas 和 Intel的MKL 矩阵运算对比

    CUBLAS和MKL都是快速矩阵运算的工具 一个适用Intel的cpu 一个适用于nvidia的GPU 最近在做RNN 循环神经网络 的加速 其中一点就是把神经网络的矩阵运算放到CPU上算 所以就做了一点相关的测试 以前我们实验室的RNN用
  • Java文件读写和CSV文件解析(读取csv文件的一列或若干列)

    文件类 Java 读文件流的知识不可少 先复习一下吧 OREACLE JDK8 DOCS 文件类是Java IO的一个对象 用于指定文件的相关信息 位置和名称信息 如txt文件 csv文件对Java来说就是一个文件类 开发手册中指出 文件类
  • agv小车-qt-ros控制注说明

    转过来 控制 地图 看上去也是json mqtt 通迅是一样的 单片机端添加ros json接口 由上位机获取单片机控制端的三轴 gps 姿态 轨迹数据后由json更新控制参数实现在agv小车在地图上面的动作控制 1 ui接口类与ros连接