当前位置: 首页 > news >正文

湘潭建设网站公司展览展示设计必看网站

湘潭建设网站公司,展览展示设计必看网站,ppt模板在哪里找,邯郸自媒体有哪些目录 ROS#xff1a;通信机制一、话题发布实操1.1需求1.2分析1.3实现流程1.4实现代码1.4.1C版1.4.2Python版 1.5执行 二、话题订阅实操2.1需求2.2分析2.3流程2.4实现代码2.4.1启动无辜GUI与键盘控制节点2.4.2C版 ROS#xff1a;通信机制 一、话题发布实操 1.1需求 编码实现… 目录 ROS通信机制一、话题发布实操1.1需求1.2分析1.3实现流程1.4实现代码1.4.1C版1.4.2Python版 1.5执行 二、话题订阅实操2.1需求2.2分析2.3流程2.4实现代码2.4.1启动无辜GUI与键盘控制节点2.4.2C版 ROS通信机制 一、话题发布实操 1.1需求 编码实现乌龟运动控制让小乌龟做圆周运动。 1.2分析 乌龟运动控制实现关键节点有两个一个是乌龟运动显示节点 turtlesim_node另一个是控制节点二者是订阅发布模式实现通信的乌龟运动显示节点直接调用即可运动控制节点之前是使用的 turtle_teleop_key通过键盘 控制现在需要自定义控制节点。 控制节点自实现时首先需要了解控制节点与显示节点通信使用的话题与消息可以使用ros命令结合计算图来获取。 1.3实现流程 通过计算图结合ros命令获取话题与消息信息。 编码实现运动控制节点。 启动 roscore、turtlesim_node 以及自定义的控制节点查看运行结果。 1.4实现代码 1.4.1C版 #include ros/ros.h #include geometry_msgs/Twist.h/* 需求发布速度消息 话题/turtle/cmd_vel 消息geometry_msgs/Twist1.包含头文件 2.初始化ros节点 3.创建节点句柄 4.创建发布对象 5发布逻辑 6.spinOnce() */int main(int argc, char *argv[]) {// 2.初始化ros节点ros::init(argc,argv,my_control); // 3.创建节点句柄ros::NodeHandle nh; // 4.创建发布对象ros::Publisher pubnh.advertisegeometry_msgs::Twist(/turtle1/cmd_vel,10); // 5发布逻辑ros::Rate rate(10);//组织发布的消息geometry_msgs::Twist twist;twist.linear.x1.0;twist.linear.y0.0;twist.linear.z0.0;twist.angular.x0.0;twist.angular.y0.0;twist.angular.z0.5;//循环发布while(ros::ok()){pub.publish(twist);//休眠rate.sleep();//回头ros::spinOnce();} // 6.spinOnce()return 0; } 1.4.2Python版 #! /usr/bin/env python 编写 ROS 节点控制小乌龟画圆准备工作:1.获取topic(已知: /turtle1/cmd_vel)2.获取消息类型(已知: geometry_msgs/Twist)3.运行前注意先启动 turtlesim_node 节点实现流程:1.导包2.初始化 ROS 节点3.创建发布者对象4.循环发布运动控制消息import rospy from geometry_msgs.msg import Twistif __name__ __main__:# 2.初始化 ROS 节点rospy.init_node(control_circle_p)# 3.创建发布者对象pub rospy.Publisher(/turtle1/cmd_vel,Twist,queue_size1000)# 4.循环发布运动控制消息rate rospy.Rate(10)twist Twist()twist.linear.x 1.0twist.linear.y 0.0twist.linear.z 0.0twist.angular.x 0.0twist.angular.y 0.0twist.angular.z 0.5while not rospy.is_shutdown():pub.publish(twist)rate.sleep()1.5执行 首先启动 roscore 然后启动乌龟显示节点 最后执行运动控制节点 二、话题订阅实操 2.1需求 已知turtlesim中的乌龟显示节点会发布当前乌龟的位姿(窗体中乌龟的坐标以及朝向)要求控制乌龟运动并时时打印当前乌龟的位姿。 2.2分析 首先需要启动乌龟显示以及运动控制节点并控制乌龟运动。 要通过ROS命令来获取乌龟位姿发布的话题以及消息。 编写订阅节点订阅并打印乌龟的位姿。 2.3流程 通过ros命令获取话题与消息信息。 编码实现位姿获取节点。 启动 roscore、turtlesim_node 、控制节点以及位姿订阅节点控制乌龟运动并输出乌龟的位姿。 2.4实现代码 2.4.1启动无辜GUI与键盘控制节点 !--启动无辜GUI与键盘控制节点-- launch!--乌龟GUI--node pkgturtlesim typeturtlesim_node nameturtle1 outputscreen /!--键盘控制--node pkgturtlesim typeturtle_teleop_key namekey outputscreen //launch2.4.2C版 #include ros/ros.h #include turtlesim/Pose.h/* 需求订阅乌龟的位姿信息1.包含头文件 2.初始化ros节点 3.创建节点句柄 4.创建订阅对象 5.处理订阅数据回调函数 6.spinOnce() */void doPose(const turtlesim::Pose::ConstPtr pose) {ROS_INFO(乌龟的位姿信息坐标(%.2f,%.2f),朝向(%.2f),线速度:%.2f,角速度:%.2f,pose-x,pose-y,pose-theta,pose-linear_velocity,pose-angular_velocity); }int main(int argc, char *argv[]) {setlocale(LC_ALL,); // 2.初始化ros节点ros::init(argc,argv,sub_pose); // 3.创建节点句柄ros::NodeHandle nh; // 4.创建订阅对象ros::Subscriber sub nh.subscribe(/turtle1/pose,100,doPose); // 5.处理订阅数据回调函数 //6.spinros::spin();// 6.spinOnce()return 0; }
http://www.hkea.cn/news/14518876/

相关文章:

  • 27WordPress主题seo策略分析
  • 在线制作图片代码谷歌seo优化怎么做
  • 网站开发所需要注意的问题小程序价格表一览表
  • 沈阳百度首页优化网站seo怎么填写
  • 信息发布型网站是企业网站的什么asp.net 网站管理工具
  • 一个网站做多少页面数量合适怎么模仿一个网站
  • 龙岩网站建设极速建站89点班组建设网站
  • 临沂阿里巴巴网站建设湖南网站建设公司排名
  • 济南网站建设飞鸟广州怎么建设一个网站
  • 国外网站会让国内人做吗公司注册地址备案流程
  • 湖南长沙网站建设公司电话那个网站做搬家推广比较好
  • 哪里有做网站系统房地产网站互动设计公司
  • 自学考试网站建设与管理事业单位微信公众号怎么创建
  • 做网站公司 郑州泰安专业的网站建设
  • 想要网站推广页面专业网站建设网站推广
  • 戴尔网站建设的目的商丘在线商城
  • 便宜的网站建设广州建设银行招聘网站
  • 手机版网站如何做wordpress 3.6
  • 酒泉网站建设服务dw设计网页步骤
  • 做网站代理怎么赚钱做外贸网站应该关注哪些地方
  • 郑州免费网站建设有彩虹代刷源码怎么做网站
  • 企业招聘网站哪个最好竞价推广代运营
  • 东莞做网站哪个公司最好在手机上怎么做微电影网站吗
  • 课程网站资源建设小结现在房子装修流行什么风格
  • 企业如何实现高端网站建设广州排名seo公司
  • 小白怎样建设公司网站合肥seo网站排名优化公司
  • 律师网站建设哪家专业wordpress留言模板
  • 玉溪市住房城乡建设局网站怎样做海外淘宝网站
  • 如何做购物网站的限购功能代码ppt免费制作网站
  • 模仿网站不同代码做的网站后期维护情况