![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ROS
十啵
这个作者很懒,什么都没留下…
展开
-
将solidworks模型导入ROS中的错误解决
sw_urdf_exporter插件还有一点小错误好像,我今天弄的时候就遇到了,仔细检查urdf文件后终于发现了这个错误,来源与我们用solidworks生成的文件[ERROR] [1584194344.911065094]: Ignoring transform for child_frame_id "left_wheel_link" from authority "unknown_publi...原创 2020-03-14 23:02:34 · 2981 阅读 · 0 评论 -
用solidworks将模型导成ROS的URDF模型
虽然不久前就知道能将模型直接导入,但是并没有找到一个比较详细的教程,ros wiki上的官方教程比较模糊,经过我的摸索,这里给大家详细介绍一下,希望能够帮到大家,缩短学习和开发的时间。先给大家看一下效果:这里需要一个插件,这个还是要到官网下载为好,直接安装,不用自己设置目录,很方便。直接Google搜索sw_urdf_exporter,进入wiki下载插件就行。我的模型是在inventor...原创 2020-03-14 22:53:21 · 5288 阅读 · 1 评论 -
ROS-机器视觉:特定物体识别(find_object_2d包)
ROS的优点之一是有大量可以在应用程序中重用的软件包。在我们的例子中,想要实现一个物体识别和检测系统。而find_object_2d包(http://wiki.ros.org/find_object_2d)就是一个物体识别和检测的ROS包,它实现了SURF、SIFT、FAST和BRIEF特征检测器(https://goo.gl/B8H9Zm)和用于物体检测的描述符。通过此包提供的GUI,可以标记待...原创 2020-02-14 20:43:27 · 10503 阅读 · 2 评论 -
ROS整合谷歌tensorflow实现物体识别
目前机器人行业最火的ROS,人工智能/机器学习方面相对较火的tensorflow,两者结合肯定是让机器人锦上添花,功能更加丰富完善。正好在GitHub上看到了tensorflow的ROS功能包,验证功能包可行性之后,给大家分享一下。先看一下效果:TensorFlow由谷歌人工智能团队谷歌大脑(Google Brain)开发和维护,效果非常好,不得不承认谷歌太强了。而且可以看到,准确率还是非...原创 2020-02-13 20:36:56 · 3192 阅读 · 1 评论 -
ROS-机器视觉 ④:物体跟踪
物体跟踪与物体识别有相似之处,同样使用特征点检测的方法,但侧重点并不相同。物体识别针对的物体可以是静态的或动态的,根据物体特征点建立的模型作为识别的数据依据;物体跟踪更强调对物体位置的准确定位,输入图像一般需要具有动态特性。物体跟踪功能首先根据输入的图像流和选择跟踪的物体,采样物体在图像当前帧中的特征点;然后将当前帧和下一帧图像进行灰度值比较,估计出当前帧中跟踪物体的特征点在下一帧图像中的位置;...原创 2020-02-10 21:21:56 · 4820 阅读 · 2 评论 -
ROS-机器视觉 ③:人脸识别
人脸识别需要在输入的图像中确定人脸(如果存在)的位置、大小和姿态,往往用于生物特征识别、视频监听、人机交互等应用中。2001年,Viola和Jones提出了基于Haar特征的级联分类器对象检测算法,并在2002年由Lienhart和Maydt进行改进,为快速、可靠的人脸检测应用提供了一种有效方法。OpenCV已经集成了该算法的开源实现,利用大量样本的Haar特征进行分类器训练,然后调用训练好的瀑布...原创 2020-02-10 20:47:46 · 3688 阅读 · 5 评论 -
ROS-机器视觉 ②:OpenCV库的安装和简单论证
OpenCV库(Open Source Computer Vision Library)是一个基于BSD许可发行的跨平台开源计算机视觉库,可以运行在Linux、Windows和mac OS等操作系统上。OpenCV由一系列C函数和少量C++类构成,同时提供C++、Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法,而且对非商业应用和商业应用都是免费的。同...原创 2020-02-10 20:08:59 · 1872 阅读 · 0 评论 -
ROS-机器视觉 ①:摄像头的标定
摄像头这种精密仪器对光学器件的要求较高,由于摄像头内部与外部的一些原因,生成的物体图像往往会发生畸变,为了避免数据源造成的误差,需要针对摄像头的参数进行标定。ROS官方提供了用于双目和单目摄像头标定的功能包——camera_calibration。机器视觉功能包下载地址,包含了摄像头标定、OpenCV、人脸识别、物体跟踪、二维码识别和物体识别等://download.csdn.net/down...原创 2020-02-10 17:59:27 · 2652 阅读 · 0 评论 -
SLAM- cartographer 简介与使用
2016年10月5日,谷歌宣布开放一个名为cartographer的即时定位与地图建模库,开发人员可以使用该库实现机器人在二维或三维条件下的定位及建图功能。cartograhper的设计目的是在计算资源有限的情况下,实时获取相对较高精度的2D地图。考虑到基于模拟策略的粒子滤波方法在较大环境下对内存和计算资源的需求较高,cartographer采用基于图网络的优化方法。目前cartographer主...原创 2020-02-09 16:24:38 · 3830 阅读 · 1 评论 -
SLAM-hector_slam 简介与使用
hector_slam功能包使用高斯牛顿方法,不需要里程计数据,只根据激光信息便可构建地图。所以他的总体框架如下:hector-slam功能包hector_slam的核心节点是hector_mapping,它订阅“/scan”话题以获取SLAM所需的激光数据。与gmapping相同的是,hector_mapping节点也会发布map话题,提供构建完成的地图信息;不同的是,hector_ma...原创 2020-02-08 15:47:22 · 11237 阅读 · 6 评论 -
在分布式多机通讯过程中使用ros_arduino_bridge功能包查看rqt_tf_tree出错:PluginHandlerDirect._restore_settings() plugin....
【问题描述】这个问题发生使用多机通讯过程中,虽然能连接上下位机,而且有/odom话题发布,但是在接下来的一系列建图过程中出错,于是我检查tf_tree,就看到了这些错误。PluginHandlerDirect._restore_settings() plugin "rqt_tf_tree/RosTfTree#0" raised an exception:Traceback (most re...原创 2020-02-07 23:21:14 · 1758 阅读 · 0 评论 -
SLAM-gmapping简介与使用
gmapping功能包集成了Rao-Blackwellized粒子滤波算法,为开发者隐去了复杂的内部实现。下图所示的是gmapping功能包的总体框架。gmapping功能包订阅机器人的深度信息、IMU信息和里程计信息,同时完成一些必要参数的配置,即可创建并输出基于概率的二维栅格地图。gmapping功能包基于openslam社区的开源SLAM算法。在ROS的软件源中已经集成了gmappi...原创 2020-02-06 21:55:53 · 10296 阅读 · 0 评论 -
MessageFilter [target=odom ]: Dropped 100.00% of messages so far.问题解决
【错误提示】[ WARN] [1580994954.426403779]: MessageFilter [target=odom ]: Dropped 100.00% of messages so far. Please turn the [ros.gmapping.message_notifier] rosconsole logger to DEBUG for more information...原创 2020-02-06 21:31:56 · 16789 阅读 · 7 评论 -
For frame [laser]: Fixed Frame [map] does not exist此类问题解决
又是一个容易被新手忽略的小问题。当我们使用rviz时,比如运行雷达后没有点云数据,即使我们能看到发布了/scan话题像这样,就是没点云图,看一下laserscan提示的错误:For frame [laser]: Fixed Frame [map] does not exist看Global Options 当中的Fixed Frame ,是map。这是因为世界坐标定义成map,单独运行...原创 2020-02-05 23:43:12 · 16589 阅读 · 5 评论 -
ROS分布式多机通讯的配置与实现
ROS是一种分布式软件框架,节点之间通过松耦合的方式进行组合,在很多应用场景下,节点可以运行在不同的计算平台上,通过Topic、Service进行通信。但是ROS中只允许存在一个Master,在多机系统中Master只能运行在一台机器上,其他机器需要通过ssh的方式和Master取得联系。所以在多机ROS系统中需要进行一些配置。我们以两台计算机为例,介绍分布式多机通信的配置步骤,其中计算机shi...原创 2020-02-04 20:44:35 · 5989 阅读 · 2 评论 -
ROS与Arduino:用Twist消息+用键盘+用Xbox one手柄 控制小车
ros_arduino_brige功能包使用和安装这里就不多说了,详情点击先看一下ros_arduino_brige功能包的文件系统├── README.md├── ros_arduino_bridge # metapackage (元包)│ ├── CMakeLists.txt│ └── package.xml├── ros_ardu...原创 2020-02-03 15:49:05 · 6876 阅读 · 1 评论 -
ROS与Arduino:ros_arduino_bridge功能包的使用解读
说明:这个ROS功能包集包括了Arduino库(ROSArduinoBridge)和一系列用来控制基于Arduino的ROS功能包,它使用的是标准的ROS消息和服务。这个功能包集并不依赖于ROS串口。...原创 2020-02-02 21:05:16 · 3430 阅读 · 1 评论 -
ROS中的常用重要组件:launch启动文件
每当我们需要运行一个ROS节点或工具时,都需要打开一个新的终端运行一个命令。当系统中的节点数量不断增加时,“每个节点一个终端”的模式会变得非常麻烦。那么有没有一种方式可以一次性启动所有节点呢?答案当然是肯定的。这里我引用古月的书上的内容给大家详细介绍一下。启动文件(Launch File)便是ROS中一种同时启动多个节点的途径,它还可以自动启动ROS Master节点管理器,并且可以实现每个节...原创 2020-02-01 19:53:29 · 1571 阅读 · 0 评论 -
在rviz中使用Astra pro深度相机的点云数据
Astra pro深度相机配置我发现从github上clone下来的功能包并没有rviz文件为了显示深度相机的点云图,这里需要配置一个rviz文件在功能包目录下建立一个名为rviz的文件夹,创建一个depth_camera.rviz文件,具体内容如下:Panels: - Class: rviz/Displays Help Height: 88 Name: Display...原创 2020-02-01 14:56:51 · 6735 阅读 · 7 评论 -
ROS中使用uvc_camera时select timeout in grab问题汇总解决
比如运行相机节点时出现这个问题而不能显示rgb图像我检查了好几天程序和文件,最后发现是这个简单的问题我用的时VMware workstation虚拟机,这里设置上有点问题:因为我使用的是Astra pro相机,这里USB兼容性要调整为USB 3.0调好之后就能正常使用了然后再做一个小的检查:ls /dev/video*我的电脑上video1才是我的Astra pro所以要检查一...原创 2020-02-01 14:38:38 · 5327 阅读 · 6 评论 -
为树莓派Ubuntu mate系统配置ROS Kinetic+镜像下载
更新源:Ubuntu MATE系统中默认的软件源可能存在连接不畅的问题,建议使用国内的软件源:sudo cp /etc/apt/sources.list /etc/apt/sources.list.baksudo vi /etc/apt/sources.list(修改软件源之前,注意备份原配置文件。)打开sources.list,添加清华大学的软件源,将以下内容复制到sources.li...原创 2020-01-14 17:03:45 · 2240 阅读 · 0 评论 -
ROS与Arduino:利用CMake编译代码并上传到arduino
为什么要利用CMake编译代码并上传到arduino?当需要开发大点的软件项目,Arduino IDE对代码的管理就变得比较笨拙。如果你经常想要从命令行或能自动完成的eclipse编译代码最后你可以通过rosserial_client的CMake基础架构,你利用ROS buildfarm构建和分发固件这个blog只说一个简单的示例。1.创建工作空间等,此处略在catkin工作空间下s...原创 2020-01-29 15:30:09 · 2267 阅读 · 0 评论 -
ROS中的客户端与服务端+ROS环境下上位机与Arduino单片机通信
服务(Service)是节点之间同步通信的一种方式,允许客户端(Client)节点发布请求(Request),由服务端(Server)节点处理后反馈应答(Response)。关于功能包我给大家整理好了,下载地址大家把功能包放在工作空间的src目录下就可以了创建一个server首先创建Server节点,提供加法运算的功能,返回求和之后的结果。实现该节点的源码文件learning_commun...原创 2020-01-27 17:55:41 · 7041 阅读 · 1 评论 -
ROS中话题的订阅与发布+ROS环境下上位机与Arduino单片机通讯
创建工作空间$ mkdir -p ~/catkin_ws/src$ cd ~/catkin_ws/src$ catkin_init_workspace进入代码空间,使用catkin_create_pkg命令创建功能包:$ cd ~/catkin_ws/src$ catkin_create_pkg learning_communication std_msgs rospy roscpp...原创 2020-01-20 01:33:44 · 7534 阅读 · 0 评论 -
ROS与Arduino:Arduino IDE的配置安装+实现简单串口通讯
rosserial_arduino包可让ROS和ArduinoIDE一起工作rosserial提供的ROS通讯协议工作在Arduino的UART上,它让Arduino成为标准的ROS节点,可以发布和订阅ROS消息,发布TF转换,获取ROS系统时间。Arduino IDE安装安装Arduinosudo apt-get install arduino...原创 2020-01-18 17:02:19 · 11124 阅读 · 4 评论 -
配置微软Xbox One手柄到ROS实现通讯控制
环境:Ubuntu16.04 + ROS kinetic安装joy packagejoy package为通用的Linux操纵杆提供了ROS驱动,它包括了一个joy_node节点,可以让Linux操纵杆和ROS交互.这个节点发布一个”Joy”消息,包含了操纵杆每一个按钮和轴的当前状态.安装这个joy package:sudo apt-get install ros-kinetic-joy...原创 2020-01-17 21:19:01 · 8750 阅读 · 1 评论 -
在ROS中使用奥比中光Orbbec Astra Pro深度相机
有兴趣的可以看一下ROS Wiki上的介绍:Orbbec Astra Pro介绍astra_camera包介绍astra_launch包介绍功能包下载地址,可以直接用步骤里的git clone1)安装ROS若已安装请忽略2)安装依赖:$ sudo apt install ros--rgbd-launch ros--libuvc ros--libuvc-camera ros--...原创 2020-01-17 19:47:38 · 7662 阅读 · 8 评论 -
ROS Kinetic下使用杉川Delta_2A激光雷达示例
ROS Kinetic的安装配置请点关于雷达初次尝试使用的工作空间我给大家创建整理好了,大家下载后放在自己的Home目录或其他目录下就可以了,下面是网盘地址链接:https://pan.baidu.com/s/1IoJQjA2nxIvWymW5RLuu5g提取码:7wag大家下载解压到自己的根目录下后,还需要几个简单的配置配置工作空间的环境变量cd catkin_lidarsours...原创 2020-01-16 23:34:13 · 7687 阅读 · 6 评论 -
为Ubuntu 16.04配置ROS-kinetic环境
ROS从诞生至今已经经历了11个版本,目前最新的也是使用最多的版本是ROS Kinetic Kame版本,下面也是主要讲解Kinetic的配置,我用的系统时Ubuntu 16.04 LTS配置系统软件源以软件源安装为例,首先需要配置Ubuntu系统允许restricted(不完全的自由软件)、universe(Ubuntu官方不提供支持与补丁,全靠社区支持)、multiverse(非自由软件,...原创 2020-01-14 22:11:26 · 2008 阅读 · 0 评论