- 1、本文档共24页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
智能网联创新实验室无人驾驶系统编成
目录1ROS编成2ROSCPP3ROSPY4ROSLISP
目录1ROS编成2ROSCPP3ROSPY4ROSLISP
Page.4ROS编成
Page.5ROS编程
Page.6ROS概述roscpp:ROS中的C++客户端库,执行效率高,在ROS中使用最广泛。rospy:ROS中的python客户端库,使得ROS可以享有面向对象的脚本语言所带来的便利。rospy注重开发效率而不是运行效率,master,roslaunch和很多工具都是采用rospy开发的。roslisp:用于LISP的客户端库,它目前用于开发规划库。其他实验库:rosjava,roslua
目录1ROS编成2ROSCPP3ROSPY4ROSLISP
Page.8ROSCPP简单的主题发布者和主题订阅者:编写主题发布者节点需要:初始化ROS系统广播消息:在foo主题上发布Foo_type_msg类型的消息已指定频率发布消息到foo主题编写主题订阅者需要:初始化ROS从foo主题订阅消息Spin,然后等待消息到达当消息到达时,Msg_Callback()函数被调用
Page.9ROSCPP
Page.10ROSCPP简单的服务器端和客户端:服务器端客户端如何使用参数提取参数boolgetParam(conststd::stringkey,parameter_typeoutput_value)constparameter_typeparam(conststd::stringparam_name,parameter_typedefault_val)设置参数voidsetParam(conststd::stringkey,parameter_typev)const删除参数booldeleteParam(conststd::stringkey)const检查存在性boolhasParam(conststd::stringkey)const
Page.11ROSCPP
Page.12ROSCPP
Page.13ROSCPP
Page.14ROSCPPHelloWorld程序节点:2个节点talker(talker.cpp):包含一个发布者节点listener(listener.cpp):包含一个接收者节点间的通讯:Topic(话题的名称):“chatter”Message(传递的数据类型):std_msgs::StringString为ROS自定义的数据类型String中包含唯一变量为std::stringdata
Page.15ROSCPPHelloWorld程序
Page.16ROSCPPHelloWorld程序
Page.17ROSCPPHelloWorld程序
目录1ROS编成2ROSCPP3ROSPY4ROSLISP
Page.19ROSPYrospy是ROS的纯Python客户端库。rospy客户端API使Python程序员能够快速与ROS主题,服务和参数进行交互。rospy的设计有利于运行时性能的实现速度(即开发者时间),以便可以在ROS内快速对原型和测试进行算法测试。它也非常适合非关键路径代码,例如配置和初始化代码。许多ROS工具都是用rospy编写的,以利用类型内省功能。许多ROS工具,例如rostopic和rosservice,都建立在rospy之上。
Page.20ROSPY编写发布节点“Node”(节点)是ROS术语,表示被连接到ROS网络的可执行文件。在这里,我们将创建发布者(talker)节点,这将持续的广播一个消息。目录更改为beginner_tutorials包,你在前面的教程中创建一个package(包):$roscdbeginner_tutorials我们创建一个“脚本”文件夹来存储我们的Python脚本:$mkdirscripts$cdscripts那么示例脚本下载talker.py到新的脚本,目录,使其可执行:$wget/ros/ros_t..._listener/talker.py$chmod+xtalker.py您可以查看和编辑文件$rosedbeginner_tutorialstalker.py或者看下面。
Page.21ROSPY//切换行号显示#!/usr/bin/envpython#licenseremovedforbrevityimportrospy//每个PythonROS节点都会有这样的声明在顶部fromstd_msgs.msgimportString//std
您可能关注的文档
- 智能网联汽车计算平台部署与测试 课件 第1章 无人驾驶系统实现 .pptx
- 智能网联汽车计算平台部署与测试 课件 第2章 ROS 系统.pptx
- 智能网联汽车计算平台部署与测试 课件 第5章 无人驾驶汽车的架构建模与代码生成.pptx
- 智能网联汽车计算平台部署与测试 课件 学习任务1:消息发布与订阅.pptx
- 智能网联汽车计算平台部署与测试 课件 学习任务2:键盘控制无人车.pptx
- 智能网联汽车计算平台部署与测试 课件全套 于万海 第1--5章 无人驾驶系统实现 --- 无人驾驶汽车的架构建模与代码生成+学习任务1、2.pptx
- 建筑力学与结构 第5版 课后客观题答案.docx
- 建筑力学与结构第5版 习题答案 习题.pdf
- 建筑力学与结构第5版 习题答案 项目4习题答案.docx
- 建筑力学与结构第5版 习题答案 项目5 习题答案.docx
文档评论(0)