ros官网 、goros官网
时间:2023-03-29 01:54 来源:网络整理 作者:默认发布 点击:次
Gazebo在智能网联汽车中的应用? 智能车无人驾驶技术是目前人工智能和机器人技术的研究热点,有许多开源平台可以使我们零基础零成本入门无人驾驶技术。本文分享一下目前ROS官网最新推荐的一款开源汽车仿真模拟。使用的平台为Ubuntu 16.04 + ROS Kinetic + Gazebo 8。同时需要具备Docker和nvidia-docker的基础。 Gazebo: 1.认识ROS1.点对点设计 ROS = 通讯机制+开发工具+应用功能+生态系统 1.节点(node)--软件模块 执行任务的进程 2.节点管理器(ROS Master)控制中心,提供参数管理 记录每个节点信息 3.话题(topic)--异步通信机制,传输消息(Message) Talker与Listener 先后顺序无关 一般需要如下七个步骤 双向同步通信机制,类似于常用的web服务器 一般需要如下五个步骤 类似与全局变量的概念 需要及时的更新参数:动态更新参数机制 这里主要介绍通过软件源的方式安装;如果是一些嵌入式设备可以通过编译源码的方式安装。 1.按照官网步骤安装: ; 2.参考一下步骤: 将 ubuntu 的源设置为其自带的主服务器的源,并且将"restricted" "universe" 和"multiverse"都选上。 可能存在改完源仍更新不成功的情况,需要手动修改源 sudo gedit /etc/apt/source.list 把所有的末尾以 universe 的注释都取消然后执行 sudo apt-get update 在机器人开发的时候可能没有终端去发布消息:可以通过命令行去简单测试。 rostopic pub /... nodelet API提供共享内存的机制,让运行更加高效。 ros版本最新的是什么DeveloperPreview(DP)2版本。根据查询ros官网得知,ros版本最新的是DeveloperPreview(DP)2版本。ROS也是RouterOS的缩写routeros是mikrotik公司的软路由产品,MikroTikRouterOS是一种路由作业系统,并通过该软体将标准的PC电脑变成专业路由器。 ROS 工作空间、package 及 catkin 编译系统本文内容都可以在 ROS 官网 wiki ( )中找到,作者只是根据自己的理解重新阐述了其中的某些内容,或许能帮助读者更好的理解 ROS 系统中的一些概念。首先保证 ROS 已经正确安装了。安装方式可以参考 本博客的另一篇文章 。 简单地说,ROS workspace (工作空间)就是统一存放 ROS 文件的地方,比如一个项目的所有 ROS 文件*** 都放在一个 workspace 中,便于统一管理、编译和调用。 catkin 是目前 ROS 的编译系统,自 ROS Groovy 版本开始使用,取代了之前的 ro*** uild 编译系统。 ROS workspace 中可以包含若干 ROS package,每个 package 内部包含实现某些特定功能的文件。 其中,~ 表示当前用户的 home 目录, -p (parent)参数可以创建某个文件夹和它的父文件夹,也就是两层的路径。这里 workspace 的名字是 catkin_ws,这个名字可以按照自己项目的内容设定,但是 src 这个文件夹的名字是固定的。 初始化工作空间。这里 src 就是以后存放 ROS 源文件的地方。上述命令之后,会在 src 目录下产生 CMakeLists.txt 文件,这实际上是一个链接到ROS 安装目录下的 /opt/ros/kinetic/share/catkin/cmake/toplevel.cmake 一个超链接文件,对工作空间做了一些初始设置。不用去管它,也不要随便修改它。 会一次性编译 src 文件夹中的所有源文件,同时生成 devel 和 build 两个文件夹。 实际上,catkin_make 这个命令并没有特别神奇的地方,它只是把一系列基本的编译命令整合在了一起,一个 catkin_make 命令相当于如下的一系列命令: 如果要深入研究 catkin_make 编译方式,可以参考 这篇文章 。 将 workspace 的信息载入系统环境变量。 这种方法载入的信息只对当前 terminal 有效。新开一个 terminal 就无效了。如果要对每个 terminal 都有效,可以将上述命令写入用户 home 路径下的 .bashrc 文件中: 注意,.bashrc 文件是隐藏文件,在 home 路径下通过命令 命令可以看到。 还要注意, 是将 echo 后边的内容写入文件的尾部,如果用 则要覆盖原文件,一定不要搞错。 编译之后,由于我们只是一个空的 workspace,还没有任何 package,所以没有什么实质性的东西,只是告诉系统这里有个 ROS workspace,算是在系统中注册了一下。 package 是组织 ROS 文件的基本单元,一般来说,每个 package 完成一些特定功能。 package 中至少包含两个文件: package.xml 和 CMakeLists.txt. package 在 workspace 中的存放结构一般如下: 也可采用其他的结构,但是要注意 package 之间不能嵌套,也就是在一个 package 中,不能再创建另一个 package ,所有 package 都必须是相对独立的目录。 用 catkin 创建 package 的过程很简单,用如下命令: 其中 depend 为依赖的其他 package。这样创建之后,package 中的 CMakeLists.txt 和 package.xml 中会体现出这种依赖关系。创建时也可以不指明依赖关系,在后续编译 package 的时候再补上。 创建好了 package,就可以使用 rospack 相关的命令进行查找、进入等操作了。不过,有时会有延迟,可以用命令 或者 查找、更新一下。 (责任编辑:admin) |
- 上一篇:关于市十七届人大一次会议第1036号建议的协办意
- 下一篇:个人计算机技术分享