智能佳机器人知识社区

展开菜单

ROS知识课堂-1.ROS起源与发展

ROS知识课堂-1.ROS起源与发展
本世纪开始,关于人工智能的研究进入了大发展阶段,包括全方位的具体的AI,例如斯坦福大学人工智能实验室STAIR(Stanford Artificial Intelligence Robot)项目,该项目组创建了灵活的、动态的软件系统的原型,用于机器人技术。在2007年,机器人公司Willow Garage和该项目组合作,他们十分具有前瞻性的,提供了大量资源进一步扩展了这些概念,经过具体的研究测试实现之后,无数的研究人员将他们的专业性研究贡献到ROS核心概念和其基础软件包,这期...

ROS知识课堂-2.什么是ROS

ROS知识课堂-2.什么是ROS
    机器人是一个系统工程,它涉及机械、电子、控制、通信、软件等诸多学科。以前,开发一个机器人需要花很大的功夫,你需要设计机械、画电路板、写驱动程序、设计通信架构、组装集成、调试、以及编写各种感知决策和控制算法,每一个任务都需要花费大量的时间。因此像电影《钢铁侠》中那样,仅靠一个人的力量造出一个动力超强的人形机器人机甲是不可能的。...

ROS知识课堂-3.URDF

ROS知识课堂-3.URDF
什么是URDF    全称为 Unified Robot Description Format ,翻译为中文为 统一机器人描述性格式。那么这里我们可以确定,URDF是用来描述机器人的,通过一些特定的格式将机器人具体的描述出来,供计算机进行理解操作。URDF是Unified Robot Description Format的首字母缩写,直译为统一(标准化)机器人描述格式,可以以一种XML的方式描述机器人的部分结构,比如底盘、摄像头、激光雷...

ROS知识课堂-4.RViz

ROS知识课堂-4.RViz
RvizRViz是ROS Visualization Tool的首字母缩写,直译为ROS的三维可视化工具。它的主要目的是以三维方式显示ROS消息,可以将数据进行可视化表达。例如:可以显示机器人模型,可以无需编程就能表达激光测距仪(LRF)传感器中的传感器到障碍物的距离,RealSense、Kinect或Xtion等三维距离传感器的点云数据(PCD, Point Cloud Data),从相机获取的图像值等以“ros- [ROS_DISTRO]-desktop-full”命令安...

ROS知识课堂-5.在Rviz中显示一个盒状机器人

ROS知识课堂-5.在Rviz中显示一个盒状机器人
URDF不能单独使用,需要结合Rviz或Gazebo,URDF只是一个文件,需要在Rviz或Gazebo中渲染成图形化的机器人模型,首先演示URDF与Rviz的集成使用。实现流程:1准备:新建功能包,导入依赖创建一个新的功能包,名称自定义,导入依赖包:urdf与xacromkdir -p ~/mycar_ws/srccd ~/mycar_ws/srccatkin_create_pkg mycar_des roscpp urdf tf rviz geometry_ms...

ROS知识课堂-6.Xacro

ROS知识课堂-6.Xacro
概念Xacro是XML Macros的缩写,Xacro是一种 XML宏语言,是可编程的XML。原理Xacro 可以声明变量,可以通过数学运算求解,使用流程控制控制执行顺序,还可以通过类似函数的实现,封装固定的逻辑,将逻辑中需要的可变的数据以参数的方式暴露出去,从而提高代码复用率以及程序的安全性。作用较之于纯粹的URDF实现,可以编写更安全、精简、易读性更强的机器人模型文件,且可以提高编写效率。...

ROS知识课堂-7.Gazebo

ROS知识课堂-7.Gazebo
Gazebo是一款3D动态模拟器,用于显示机器人模型并创建仿真环境,能够在复杂的室内和室外环境中准确有效地模拟机器人。与游戏引擎提供高保真度的视觉模拟类似,Gazebo提供高保真度的物理模拟,其提供一整套传感器模型,以及对用户和程序非常友好的交互方式。以“ros- [ROS_DISTRO]-desktop-full”命令安装ROS时,gzebo会默认被安装。运行使用命令gazebo或rosrun gazebo_ros gazebo...

ROS知识课堂-8.AMCL自适应蒙特卡洛定位

ROS知识课堂-8.AMCL自适应蒙特卡洛定位
1.AMCL概述AMCL(Adaptive Monte Carlo Localization),即自适应蒙特卡洛定位,是ROS/ROS2系统中最官方的定位模块,是导航模块中唯一指定的算法。它是基于多种蒙特卡洛融合算法在 ROS/ROS2系统中的一种实现。AMCL自适应蒙特卡洛定位是一个关于机器人在二维空间移动的概率定位系统,采用粒子滤波器来跟踪机器人在已知地图中的位姿。2.原理说明构建地图后,为了机器人能够达到一个比较准确的位置,我们需要利用自适应蒙特卡洛定位对机器人位置进行...

ROS知识课堂-9.ROS中的坐标表现方式

ROS知识课堂-9.ROS中的坐标表现方式
坐标轴的定义三维坐标轴朝向定义常规用来表示三维位置关系时,使用的是右手坐标系,何为右手坐标系呢?我们来看下图:右手坐标系定义把右手放在原点的位置,使大姆指,食指和中指互成直角,把大姆指指向Z轴的正方向,食指指向X轴的正方向时向时,中指所指的方向就是Y轴的正方向。通常相对于我们的身体而言X->朝前Y->朝左Z->朝上举例:坐标点(3,4,5)表示距原点前3个单位 ,并向左4个单位以及向上5个单位的位置。三维坐标轴旋转定义有了三维坐标轴的定义,那么对于旋转的定义...