![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
机器人系统实验
麓山君陌
在校科研生
展开
-
机器人系统实验(12)2020.12.15
一、实验内容1.在地图上选择至少4个航路点(Waypoint),组成一个特定路径2.编写新的节点(可以使用roscpp或者rospy),使用move_base的接口控制机器人运动3.如果导航失败,调整路径规划参数或者更换实验场景二、相关知识1.move_base(1)move_base提供了ROS导航的配置、运行、交互接口,它主要包括两个部分:全局路径规划(global planner):根据给定的目标位置进行总体路径的规划;本地实时规划(local planner):根据附近的障碍物进原创 2020-12-15 15:09:33 · 838 阅读 · 0 评论 -
机器人系统实验(11)2020.12.8
一、实验内容1.重写一个launch文件,采用map_server和amcl提供地图和定位;2.驱动小车在地图中移动,观察amcl粒子的变化情况;3.在launch文件中加入move_base节点;4.指定小车在不同房间之间移动,观察move_base的路径规划;5.在房间不同位置增加障碍物(桌子、人),观察路径规划的变化;6.通过gimp修改地图,阻止机器人进入特定区域二、相关知识已知环境的定位问题:1、历程计累计误差;2、激光雷达的噪声;3、环境的变化;4、简单的梯度下降算法很容原创 2020-12-08 11:54:23 · 1103 阅读 · 0 评论 -
机器人系统实验(10)2020.12.1
一、实验内容1.安装gmapping的SLAM包2.修改urdf⽂件,把机器⼈odom消息放到/odom坐标系3.修改launch⽂件,引⼊gmapping建图包。打开rviz,引⼊map话题。4.驱动机器人在环境中缓慢运动,观察所构建的地图;二、相关知识1.SLAM:(1)同步定位与建图, 即时定位与地图构建,或并发建图与定位。(2)问题可以描述为:将一个机器人放入未知环境中的未知位置,是否有办法让机器人一边移动一边逐步描绘出此环境完全的地图,所谓完全的地图是指不受障碍行进到房间可进入的每原创 2020-12-01 11:24:32 · 901 阅读 · 0 评论 -
机器人系统实验(9)2020.11.24
一、实验内容1、从课程中心下载odom_noise.py到工作空间2、修改launch文件,加入odom_noise节点3、修改urdf,将odom发布的底盘坐标系改掉4、在房间中找到至少一个特征点,计算该特征点位置的激光特征和map坐标5、修改扫地节点,发布map->odom坐标系转换关系6、在rviz中查看小车位置以及odom坐标系原点位置变化二、相关知识机器人的坐标体系:运动是相对的,不同的参考点看到的运动形态各不相同机器人是由大量电机、关节等组成的复杂机械系统,机器人与 大原创 2020-11-24 14:03:59 · 1305 阅读 · 0 评论 -
机器人系统实验(8)2020.11.17
一、实验内容1.补齐前面课程拆掉的墙壁2.根据房间形态修改机器人控制节点,3.要求移动人至少覆盖一个房间4.在RVIZ中查看机器人覆盖轨迹二、相关知识1.路径规划概述(1)移动机器人的一个重要组成部分,它的任务就是在具有障碍物的环境内按照一定的评价标准如工作代价最小、行走路线最短、行走时间最短等,寻找一条从起始状态包括位置和姿态到达目标状态包括位置和姿态的无碰路径。(2)使机器人能从初始位置运动到目标位置。(3)一定的算法使机器人能绕开障碍物,并且经过某些必须经过的点完成相应的作业任务。原创 2020-11-17 12:05:47 · 1050 阅读 · 0 评论 -
机器人系统实验(7)2020.11.10
一、实验内容1.在模型文件中添加激光传感器2.修改上节课的节点,接收激光传感器话题3.控制小车从房间外进入房间,面向墙壁1米停下二、相关知识1.激光数据的表示方法(1)LaserScan极坐标表示法,常⽤于单线传感器(2)PointCloud笛卡尔坐标系表示法,常⽤于多线激光传感器(3)点云数据处理较复杂,可以通过PCL库进⾏处理2.点云(1)点云是在同一空间参考系下表达目标空间分布和目标表面特性的海量点集合,在获取物体表面每个采样点的空间坐标后,得到的是点的集合,称之为“点云”(2)原创 2020-11-10 14:36:45 · 1347 阅读 · 0 评论 -
机器人系统实验(6)2020.11.3
一、实验内容1.建立机器人仿真模型,至少3个轮子2.控制机器人在仿真世界的房间之间运动(穿越门)二、相关知识1.URDF机器人模型(1)URDF是统一的机器人描述格式,是ROS中一个非常重要的机器人模型描述格式(2)可以解析URDF文件中使用XML格式描述的机器人模型(3)ROS同时也提供URDF文件的C++解析器,可以在C++代码中直接解析URDF机器人模型,这样做的好处是:在基于模型的计算算法中,可以在代码中调用模型的信息,方便计算2.创建机器人的过程(1)创建机器人模型需要将机器人拆原创 2020-11-03 13:23:36 · 1680 阅读 · 2 评论 -
机器人系统实验(5)2020.10.27
一、实验内容1.设计⾃定义的路径曲线2.编写节点订阅/odom消息3.根据⼩球当前位置,发布相应的速度4.带球进门二、相关知识1.传递参数的⼏种形式(1)修改源代码 ->设计宏定义、全局变量或者局部变量(2)命令⾏传递 ->gazebo_ros的spawn_model节点(3)⾃定义配置⽂件传递 ->随着安装位置变化⽽变化(4)ROS param传递 ->基于ros2. 有关参数服务器的命令(1)ros::NodeHa原创 2020-10-27 16:55:41 · 1080 阅读 · 0 评论 -
机器人系统实验(4):2020.10.20
一、实验内容1.使用物理仿真器代替小乌龟2.使用可视化工具观察话题数据3.自定义物理世界模型二、相关知识1.Gazebo机器人物理环境仿真工具,3D动态模拟器,能够在复杂的室内和室外环境中准确有效地模拟机器人群用途:测试机器人算法;设计机器人;用现实场景进行回归测试特点:包含多个物理引擎;包含丰富的机器人模型和环境库;包含各种各样的传感器;程序设计方便和具有简单的图形界面2.RVizROS的三维可视化⼯具以三维⽅式显⽰ROS消息,可以将数据进⾏可视化表达三、实验步骤1.新原创 2020-10-20 14:02:28 · 1168 阅读 · 0 评论 -
机器人系统实验(3)2020.10.13
一、实验内容1.采用python语言,编写小乌龟控制程序2.在自己的功能包中编写launch文件,启动小乌龟仿真的所有节点 3.在launch文件中加入速度平滑节点,使用平滑后的速度控制小乌龟运动 4.使用不同的平滑参数控制小乌龟运动,观察小乌龟的运动轨迹 5.使用命令rqt_graph查看平滑后的节点关系图二、相关知识1.Launch文件:使用launch文件,可以同时启动多个ros节点,包括master节点,所以这样只要一个roslaunch,就可以启动roscore和多个节点程序。原创 2020-10-13 12:47:44 · 1361 阅读 · 0 评论 -
机器人系统实验(2)2020.9.29
一、实验内容1、 创建ROS工作空间2、 创建ROS工作包3、 开发一个ROS功能节点4、 通过该ROS功能节点指挥小乌龟走出一个特定的路径二、相关知识创建工作空间:相当于创建一个文件夹路径,该路径下将会有三个子文件夹,其中build为编译工程中的临时文件,src为主要的代码文件。src目录下先是功能包,一般只有一个,然后是不同的节点。编译流程:Catkin主要定义了一系列的CMake宏、变量和工具函数,目标是解决包与包之间复杂的依赖问题。三、实验步骤1、创建工作空间目录。新开一原创 2020-09-29 13:08:20 · 1393 阅读 · 0 评论 -
机器人系统实验(1)2020.9.22
一、实验内容1、在电脑上安装ROS操作系统2、配置ROS系统,安装ROS Install3、运行小海龟仿真器,查看小海龟运行时的ROS节点4、查看系统中广播的话题把小海龟运行时的话题/turtle1/cmd_vel记录到文件中5、解释所用命令行各参数的意义二、相关知识1、Ros的基本概念:ROS是一个适用于机器人的开源的元操作系统。ROS提供一些标准操作系统服务,例如硬件抽象,底层设备控制,常用功能实现,进程间消息以及数据包管理。ROS是基于一种图状架构,从而不同节点的进程能接受,发布,聚原创 2020-09-22 20:15:02 · 1508 阅读 · 0 评论