![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ROS学习
lxmyzzs
这个作者很懒,什么都没留下…
展开
-
ROS学习笔记( 二十一): URDF 进阶
1.说明3D立体渲染为每只眼睛显示不同的视图,因此场景看起来具有深度。 如果您有支持立体声的显示器和支持立体声的图形卡,则可以让Rviz以立体声呈现其视图。 本教程介绍了如何完成此操作。2.硬件要求要以立体声渲染,您将需要具有四缓冲区立体声的图形卡。 您可能还需要具有立体声功能的监视器和/或可以以120Hz显示的监视器。2.1 使用NVIDIA硬件在Linux上,NVIDIA Quadro卡支持四路缓冲立体声。 NVIDIA网站上提供了有关哪些卡支持此功能的信息。另请参见http://www.z翻译 2020-07-09 01:44:39 · 1492 阅读 · 0 评论 -
ROS学习笔记( 二十): URDF入门
1.Intro交互式标记类似于先前教程中描述的“常规”标记,但是它们允许用户通过更改其位置或旋转,单击它们或从分配给每个标记的上下文菜单中选择某些内容来与它们进行交互。它们由visualization_msgs / InteractiveMarker消息表示,该消息包含一个上下文菜单和多个控件(visualization_msgs / InteractiveMarkerControl)。 这些控件定义了交互式标记的不同视觉部分,可以由几个常规标记(visualization_msgs / Marker)翻译 2020-07-05 00:52:06 · 3869 阅读 · 0 评论 -
ROS学习笔记(十九):Markers: Points and Lines (C++)
1.Intro在“标记:基本形状”中,您学习了如何使用可视化标记将简单形状发送到rviz。 您不仅可以发送简单的形状,而且本教程将向您介绍POINTS,LINE_STRIP和LINE_LIST标记类型。 有关类型的完整列表,请参见“标记显示”页面。2.Using Points, Line Strips, and Line ListsPOINTS,LINE_STRIP和LINE_LIST标记都使用visualization_msgs / Marker消息的点成员。POINTS类型在添加的每个点处放置一个翻译 2020-07-02 18:20:13 · 2789 阅读 · 2 评论 -
ROS学习笔记(十八):rviz之Markers: Sending Basic Shapes (C++)
显示如何使用visualization_msgs / Marker消息将基本形状(立方体,球体,圆柱体,箭头)发送到rviz。1.Intro与其他显示不同,“标记显示”使您可以在rviz中可视化数据,而rviz不了解有关解释该数据的任何信息。 相反,原始对象是通过visualization_msgs / Marker消息发送到显示器的,该消息使您可以显示箭头,框,球和线之类的内容。本教程将向您展示如何发送四个基本形状(盒子,球体,圆柱体和箭头)。 我们将创建一个程序,该程序每秒发送一个新标记,用不.翻译 2020-07-02 12:22:15 · 802 阅读 · 0 评论 -
ROS学习笔记(十七):rviz之用户指导
1.Troubleshooting如果您遇到问题并且没有看到下面的答案,请尝试“故障排除”页面2.Install or build rviz2.1 Install from debian repositoryUntil fuerte:sudo apt-get install ros-fuerte-visualizationFrom groovy on:sudo apt-get install ros-groovy-rviz# orsudo apt-get install ros-hydr翻译 2020-07-02 10:32:25 · 1498 阅读 · 0 评论 -
ROS学习笔记(十六):Using urdf with robot_state_publisher
本教程提供了使用URDF的机器人模型的完整示例,该模型使用robot_state_publisher。 首先,我们创建包含所有必要部分的URDF模型。 然后,我们编写一个节点,该节点发布JointState并进行转换。 最后,我们一起运行所有部分。1.Create the URDF FileHere is the URDF file for a 7-link model roughly approximating R2-D2. Save the following link to your comput翻译 2020-06-30 12:38:31 · 2303 阅读 · 0 评论 -
ROS学习笔记(十五):Using the robot state publisher on your own robot
当您使用具有许多相关框架的机器人时,将它们全部发布到tf成为一项艰巨的任务。 机器人状态发布者是一款可以为您完成此工作的工具。机器人状态发布者可帮助您将机器人的状态广播到tf转换库。 机器人状态发布者在内部具有机器人的运动学模型。 因此,根据机器人的关节位置,机器人状态发布者可以计算和广播机器人中每个链接的3D姿态。您可以将机械手状态发布器用作独立的ROS节点或库:1.Running as a ROS node1.1 robot_state_publisher运行机器人状态发布者的最简单方法是作为翻译 2020-06-30 11:13:10 · 1375 阅读 · 1 评论 -
ROS学习笔记(十四):Setting up your robot with tf
了解如何让机器人状态发布者为您完成所有的tf发布:在自己的机器人上使用机器人状态发布者1.Transform Configuration许多ROS软件包要求使用tf软件库发布机器人的变换树。在抽象级别上,变换树根据不同坐标系之间的平移和旋转来定义偏移量。为了更加具体,请考虑一个简单的机器人示例,该机器人具有一个可移动的基座,并在其上方安装了一个激光器。关于机器人,我们定义两个坐标系:一个对应于机器人基座的中心点,另一个对应于安装在基座顶部的激光器的中心点。让我们也给他们起个名字以便于参考。我们将附着在移翻译 2020-06-30 10:47:57 · 271 阅读 · 0 评论 -
ROS学习笔记(十三):Using Stamped datatypes with tf::MessageFilter
本教程介绍了如何在tf中使用传感器数据。 传感器数据的一些实际示例是:单声道和立体声相机激光扫描假设创建了一个新的乌龟,名为turtle3,并且没有很好的里程表,但是有一个高架摄像机跟踪其位置并将其发布为与世界框架有关的geometry_msgs / PointStamped消息。乌龟1想要知道将turtle3与自身进行比较的地方。为此,turtle1必须聆听正在发布turtle3姿势的主题,等到准备好转换为所需的帧后再进行操作。 为了简化操作,tf :: MessageFilter类非常有翻译 2020-06-28 17:52:04 · 264 阅读 · 0 评论 -
ROS学习笔记(十二):Debugging tf problems
1.Starting the example在本教程中,我们设置了一个演示应用程序,该应用程序存在许多问题。 本教程的目的是应用系统的方法来发现这些问题。首先,让我们运行一个示例,看看会发生什么: $ roslaunch turtle_tf start_debug_demo.launch您会看到turtlesim出现。 如果从启动演示的位置选择终端窗口,则可以使用箭头键驱动其中一个机器人。 在左上角有第二个机器人。如果演示正常运行,则第二个机器人应该跟随您可以使用箭头键命令的机器人。 显然,它翻译 2020-06-28 16:22:33 · 1296 阅读 · 0 评论 -
ROS学习笔记(十一):Learning TF
0.TF初体验http://wiki.ros.org/tf/Tutorials/Introduction%20to%20tf1.Writing a tf broadcaster (C++)在接下来的两个教程中,我们将编写代码来重现tf入门教程中的演示。 之后,以下教程将重点介绍使用更高级的tf功能扩展演示。在开始之前,您需要为此项目创建一个新的ros软件包。 在沙盒文件夹中,创建一个名为learning_tf的程序包,该程序包取决于tf,roscpp,rospy和turtlesim: $ cd %翻译 2020-06-27 16:30:04 · 2160 阅读 · 0 评论 -
ROS学习笔记(十):常用功能模块之launch启动文件
roslaunch是一个工具,可通过SSH轻松地在本地和远程启动多个ROS节点,以及在参数服务器上设置参数。 它包括自动重生已经死亡的进程的选项。 roslaunch接受一个或多个XML配置文件(带有.launch扩展名),这些文件指定要设置的参数和要启动的节点以及应在其上运行的计算机。翻译 2020-06-26 16:32:18 · 476 阅读 · 0 评论 -
ROS怎么学?学什么?都在这里(转载)
简而言之,学习ROS的关键是——多实践!ROS是一个机器人研发中的重要工具,“学以致用”才是我们学习的最终目的:给学习赋能的就是实践!而实践就是不断进行知行合一的各种尝试!现在关于ROS的资料已经非常多了,无论是图书、视频还是博客,都可以找到很多学习的资源,但是ROS的学习曲线还是有点陡峭,很多初学者还没来得及在ROS的世界走一走,就半路放弃回了头。那么ROS该如何学习?如何实践?古月君尝试给各位提供一些参考思路。一、 基础教程不可少1.背景知识ROS需要基于Ubuntu使用,涉及的编程语言主要是C++和P转载 2020-06-24 19:11:55 · 650 阅读 · 0 评论 -
ROS学习笔记(九):编写并测试简单的服务器和客户端 (C++)、相关数据录制、roswtf
官方教程:编写简单的服务器和客户端 (C++)错误经历:编译错误,真的需要专心转载 2020-06-23 16:00:24 · 203 阅读 · 0 评论 -
ROS学习笔记(八):Could not find a package configuration file provided by xxx
使用msg1.0 rosed : rosbash 的一部分。利用它可以直接通过package名来获取到待编辑的文件而无需指定该文件的存储路径了。Usage:$ rosed [package_name] [filename]rosed默认的编辑器是vim,如果没有安装,也只需一条指令:$sudo apt-get install vim2.0 消息(msg)和服务(srv)介绍:消息(msg): msg文件就是一个描述ROS中所使用消息类型的简单文本。它们会被用来生成不同语言的源代码,存放在p原创 2020-06-22 19:03:29 · 5820 阅读 · 2 评论 -
ROS学习笔记(七):rqt_console 和 roslaunch
1.预先安装rqt和turtlesim程序包$ sudo apt-get install ros-<distro>-rqt ros-<distro>-rqt-common-plugins ros-<distro>-turtlesim2.使用rqt_console和rqt_logger_levelrqt_console属于ROS日志框架(logging framework)的一部分,用来显示节点的输出信息。rqt_logger_level允许我们修改节点运行时输转载 2020-06-22 14:23:29 · 349 阅读 · 0 评论 -
ROS学习笔记(六):ROS服务与参数 命令行总结
命令行总结roscore:为ROS提供名称服务+rosout+参数服务器Usage:$ roscorerosnode:用于获取节点信息的ros工具Usage:$ rosnode再根据提示输入命令行rosrun:从给定软件包中运行节点Usage:$ rosrun [package_name] [node_name]rqt_graph:能够创建一个显示当前系统运行情况的动态图形Usage:$ rosrun rqt_graph rqt_graphROS Topics:通过键盘远程控原创 2020-06-22 10:50:44 · 1204 阅读 · 1 评论 -
ROS学习笔记(五):重要命令的理解以及ROS Topics初试水
官方中文教程概念理解:rosout:相当于stdout/stderrstdout – 标准输出设备 (printf("…")) 同 stdout。stderr – 标准错误输出设备两者默认向屏幕输出。但如果用转向标准输出到磁盘文件,则可看出两者区别。stdout输出到磁盘文件,stderr在屏幕。roscore: 主机+ rosout + 参数服务器rospy = python 客户端库roscpp = c++ 客户端库三大命令:使用roscore:roscore 是你在运行所有原创 2020-06-21 14:34:09 · 278 阅读 · 0 评论 -
ROS学习笔记(四):编译catkin时遇到的错误经历
参考资料:官方学习课件遇到问题一:Invoking “cmake” failed在执行catkin_make命令时:# 在catkin工作空间下$ catkin_make [make_targets] [-DCMAKE_VARIABLES=...]出现如下问题:-- Configuring incomplete, errors occurred!See also "/home/li/catkin_ws/build/CMakeFiles/CMakeOutput.log".See also "原创 2020-06-21 12:48:58 · 9984 阅读 · 3 评论 -
ROS学习笔记(三): 创建ROS程序包
二、创建ROS程序包0.1 catkin软件包组成该程序包必须包含catkin compliant package.xml文件这个package.xml文件提供有关程序包的元信息。程序包必须包含一个catkin 版本的CMakeLists.txt文件,而Catkin metapackages中必须包含一个对CMakeList.txt文件的引用。每个目录下只能有一个程序包。意味着在同一个目录下不能有嵌套的或者多个程序包存在。0.2 在catkin工作空间中的程序包开发转载 2020-06-20 14:57:10 · 675 阅读 · 0 评论 -
ROS学习笔记(二):rospack+roscd+rosls
一、熟悉ROS文件系统0.1 预备工作$ sudo apt-get install ros-melodic-ros-tutorials" ros中间的modelic是ros的版本,笔者是这个版本的,其他版本的可自行替换。"ROS版本查询::1、先在终端输入$ roscore2、打开新终端,再输入,$ rosparam list3、再输入$ rosparam get /rosdistro就能得到版本 0.2 回顾文件系统概念Packages: Packages are the s转载 2020-06-20 11:47:58 · 922 阅读 · 0 评论 -
ROS学习笔记(一)之 成功安装(melodic版)
Ubuntu18.04安装ROS Melodic详情请参考:https://blog.csdn.net/haiyinshushe/article/details/842561371.配置Ubuntu软件库:配置Ubuntu存储库以允许 “restricted,” “universe,” and “multiverse.”记住中科大的源比较合适在这里2.设置sources.list(一句搞定系列)sudo sh -c '. /etc/lsb-release && echo "de原创 2020-06-11 11:59:25 · 495 阅读 · 0 评论