diff --git a/source/common/q_a/doc.md b/source/common/q_a/doc.md index a6b8303..4b0e794 100644 --- a/source/common/q_a/doc.md +++ b/source/common/q_a/doc.md @@ -17,3 +17,48 @@ * “ USB-Hub 上面的接口不通用吗(仅 导航套件 二代 用户)?” 不通用,组装时务必按照文字提示插入设备,错误的接线方式将无法正常建图、定位、避障,甚至危及人身安全。 + + + +#### 常见问题: + +##### 建图篇 + +1. 键盘控制AP1行走时,AP1动作异常,动一下停一下 +可调整显示器的位置,保持接收器不被遮挡,并调整自己的位置,使接收器可以接收到发送的指令信号,建议使用USB延长线或USB-HUB将接收器放置在架子的高处,无任何遮挡,便于信号传输。 +2. 键盘控制,AP1一动不动 + a) 确认已将AP1电源总开关打开,急停开关没有被按下,AP1处于上位机控制模式 + b) 新开一个terminal,执行以下命令,打出关系图,查看键盘节点 + `$ rosrun rqt_graph rqt_graph` + c) 执行以下命令,上下左右控制键盘看是否会有数据打出,如没有数据打出,说明AP1没有接收到键盘发送的指令 + `$ rostopic echo /cmd_vel` + d)执行以下命令,确认event-kbd的数量,数量大于一个则有问题 + `ll /dev/input/by-path/ ` + ![](imgs/keyboard.png) + e) 请排查是否有多个键盘设备,键盘驱动查找的是最后一个连接的键盘,需要将其他(显示为)键盘的设备找出来,拔掉(可能是鼠标、机械键盘、混装键鼠) +3. AP1不受键盘控制、失控 + 在开始建图前,需要禁用无线功能。如果没有禁用,AP1在连接了WIFI的状态下开始建图,在地图构建过程中,一旦AP1离开无线覆盖区域,无线连接断开,ROS的网络通信中断就会导致AP1控制失控。 + +##### 导航篇 + +常见问题: +1. 定位要走一走 + 2. 建图地图质量不好,障碍物颜色虚,效果好墙面黑色实现 + 3. 周围没有明显的特征信息,使得机器人能够找到自己的位置,开到有折角拐弯或明显标志物附近,能够加速机器人找到自己的位置 +2. 建图白,多走几遍, +3. 镜面,建图 + +1. 目标点给定后,可能会发生AP1不动或原地转圈,控制台显示【Failed to get a plan/不能规划路径】的红色错误,这可能是有两种原因造成: + * 目标点选择在了障碍物中 + * 车在地图中所处的位置是在障碍物中 + 那么这样的情况,我们可以先尝试重新给定目标点,或者将车换个位置重新给定初始位置。 +2. 在行走的过程中也可能会发生AP1停止不动或原地转圈的现象发生 + 这种情况是因为AP1在行走过程中,检测到障碍物,无法到达目标点,这个障碍物有可能是真实的障碍物,也有可能是误检,我们可以先等待观察,AP1会进行自我恢复(不超过一分钟),如果恢复之后AP1仍没有行动,导航已自动停止,此时我们需要重新设置目标点。 +3. 建图效果不佳/地图构建要点 + 在构建地图的过程,以下几点会影响到建图的准确性: + * 轮胎气不足影响里程计数据 + * 运行速度不宜过快,由于激光扫描有一定的频率,车速低时雷达可以扫描到的点更多,构建的地图会更准确一些 + * 走一个来回,增加激光雷达扫描次数,累计更多的数据 + * 地图构建的质量也受环境限制,请尽量选择特征比较明显的环境,玻璃、镜子、楼道、空旷等场景会影响建图效果 + * 构建完成的地图,会发现有些点会飞出,飞出的点可能是由于物体的表面不平或者有空隙激光直接穿越了过去 + * 当场景很大特征不足的时候,需要规划建图路径时,应先走一个小回环,当回环成功后,可以再多走几圈,消除粒子在这个回环的多样性。接下来走下一个回环,直到把整个地图连通成一个大的回环 diff --git a/source/version_one/index.md b/source/version_one/index.md index 1b6727d..2b3e0f2 100644 --- a/source/version_one/index.md +++ b/source/version_one/index.md @@ -2,13 +2,15 @@ ### 目录 -* [产品介绍]() +* [产品介绍](overview/doc.md) * 使用指南 + * [收货与清点](user_guide/quick_start/receipt.md) + * [组装与测试](user_guide/assembly_test/doc.md) - * [快速上手]() + * [快速上手](user_guide/quick_start/slam_doc.md) * [常见问题]() diff --git a/source/version_one/overview/doc b/source/version_one/overview/doc deleted file mode 100644 index d6d88e4..0000000 --- a/source/version_one/overview/doc +++ /dev/null @@ -1 +0,0 @@ -# 产品介绍 diff --git a/source/version_one/overview/doc.md b/source/version_one/overview/doc.md new file mode 100644 index 0000000..a6e8492 --- /dev/null +++ b/source/version_one/overview/doc.md @@ -0,0 +1,70 @@ +# 产品介绍 + +Autolabor Pro1 导航平台搭载激光雷达、深度相机、惯导、里程计等传感器,可实现SLAM建图导航、视觉SLAM、图像识别等功能。 + +![](imgs/667width.png) + +定制化操作系统AutolaborOS系统,已实现室内自主导航,无须开发一键式建图导航,操作简单。 + +系统持续更新,代码全部开源,使用户可以快速上手ROS,基于平台高效的进行二次开发。 + +![](imgs/667width-3.png) + + +# 传感器及设备清单 + +序号 | 设备 | 型号 +:---:|:---:|--- +1| 激光雷达 | 思岚 RPLIDAR-A2 +2 | 深度相机 | Kinect V2 +3| IMU | AH-100B +4 | mini 电脑 | AMD Ryzen 3 2200G/4G/120G +5 | 13.3 寸高清显示屏| 1080P 便携 HDR 显示器 +6 | 电源模块 | 24V 10AH 锂电池/稳压模块/电量显示模块/分线板船型电源 + + +# 功能及效果演示 + + +![](imgs/667width-1.png) + + +![](imgs/667width-4.png) + + +![](imgs/667width-7.png) + + +![](imgs/667width-8.png) + + +### 驱动列表: +* Autolabor Pro1 驱动包 +* 激光雷达驱动包 + * RPLIDAR A1 + * RPLIDAR A2 + * HOKUYO URG-04LX-UG01 +* 深度相机驱动包 + * Kinect V2 +* 惯导驱动包 + * AH100B + + +### 功能列表: + +* 一键SLAM导航 +* 键盘控制机器人运动 +* 手柄控制机器人运动 +* Gmapping 单线激光雷达SLAM建图 +* Amcl 基于单线激光雷达定位 +* Navigation 自动导航功能 +* Autolabor Simulation 仿真模拟器场景应用 + +## 应用场景: +* ROS学习 +* 算法验证 +* 自动驾驶 +* 自主导航 +* 智能建图 + +平台可实现的功能包括但不仅限于以上内容,更多功能还在持续开发中,后续功能将通过AutolaborOS更新发布,敬请关注。 diff --git a/source/version_one/overview/imgs/667width-1.png b/source/version_one/overview/imgs/667width-1.png new file mode 100644 index 0000000..85ad45e Binary files /dev/null and b/source/version_one/overview/imgs/667width-1.png differ diff --git a/source/version_one/overview/imgs/667width-2.png b/source/version_one/overview/imgs/667width-2.png new file mode 100644 index 0000000..f2fcc27 Binary files /dev/null and b/source/version_one/overview/imgs/667width-2.png differ diff --git a/source/version_one/overview/imgs/667width-3.png b/source/version_one/overview/imgs/667width-3.png new file mode 100644 index 0000000..9519af4 Binary files /dev/null and b/source/version_one/overview/imgs/667width-3.png differ diff --git a/source/version_one/overview/imgs/667width-4.png b/source/version_one/overview/imgs/667width-4.png new file mode 100644 index 0000000..72f0c73 Binary files /dev/null and b/source/version_one/overview/imgs/667width-4.png differ diff --git a/source/version_one/overview/imgs/667width-7.png b/source/version_one/overview/imgs/667width-7.png new file mode 100644 index 0000000..2c3cb5f Binary files /dev/null and b/source/version_one/overview/imgs/667width-7.png differ diff --git a/source/version_one/overview/imgs/667width-8.png b/source/version_one/overview/imgs/667width-8.png new file mode 100644 index 0000000..0acc038 Binary files /dev/null and b/source/version_one/overview/imgs/667width-8.png differ diff --git a/source/version_one/overview/imgs/667width.png b/source/version_one/overview/imgs/667width.png new file mode 100644 index 0000000..90c17cf Binary files /dev/null and b/source/version_one/overview/imgs/667width.png differ diff --git a/source/version_one/overview/imgs/video-cover.png b/source/version_one/overview/imgs/video-cover.png new file mode 100644 index 0000000..32d9b33 Binary files /dev/null and b/source/version_one/overview/imgs/video-cover.png differ diff --git a/source/version_one/user_guide/assembly_test/doc.md b/source/version_one/user_guide/assembly_test/doc.md index cfdbe25..b292700 100644 --- a/source/version_one/user_guide/assembly_test/doc.md +++ b/source/version_one/user_guide/assembly_test/doc.md @@ -7,6 +7,18 @@ 详请参照视频 +https://video-autolabor-1255388470.cos.ap-beijing.myqcloud.com/AutolaborPro1/%E5%AF%BC%E8%88%AA%E5%A5%97%E4%BB%B6%E7%BB%84%E8%A3%85%E6%95%99%E7%A8%8B.mp4 + + +### 注意事项 + +1. 激光雷达的朝向一定要与视频中一致,否则将影响程序功能。 +2. Autolabor Pro1的串口数据线与雷达的数据线需插在工控机的USB2.0接口上 +3. 新版显示器不再使用圆形dc电源插口,以USB typec方式供电,USB线另一端直接插在上位机USB口上。(2019-01-04) +![](imgs/update-1.jpg) +4. Kinect集线器电源线升级 (2019-01-04) +![](imgs/update-2.jpg) + ### 电气拓扑 ![](imgs/autolabor_navigationkit_v1_electrical_topology.png) diff --git a/source/version_one/user_guide/assembly_test/imgs/update-1.jpg b/source/version_one/user_guide/assembly_test/imgs/update-1.jpg new file mode 100644 index 0000000..9ec91e2 Binary files /dev/null and b/source/version_one/user_guide/assembly_test/imgs/update-1.jpg differ diff --git a/source/version_one/user_guide/assembly_test/imgs/update-2.jpg b/source/version_one/user_guide/assembly_test/imgs/update-2.jpg new file mode 100644 index 0000000..a3fa4c5 Binary files /dev/null and b/source/version_one/user_guide/assembly_test/imgs/update-2.jpg differ diff --git a/source/version_one/user_guide/quick_start/slam_doc.md b/source/version_one/user_guide/quick_start/slam_doc.md index 25c6c07..c61153b 100644 --- a/source/version_one/user_guide/quick_start/slam_doc.md +++ b/source/version_one/user_guide/quick_start/slam_doc.md @@ -1,8 +1,15 @@ # 快速开始 +## 视频版 + +https://video-autolabor-1255388470.cos.ap-beijing.myqcloud.com/AutolaborPro1/%E5%AF%BC%E8%88%AA%E5%A5%97%E4%BB%B6%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B.mp4 + +## 文字版 + #### 准备工作: -1. AP1导航机器人 -2. 成套键鼠 +1. AP1室内导航套件 +2. 一套无线键鼠 + ## 操作步骤 @@ -19,70 +26,66 @@ 1. 将AP1控制模式切换到上位机控制,打开急停开关,确保急停开关没有被按下 2. 禁用工控机无线功能 在建图过程中,如果工控机连接了无线网络,当AP1走出无线网络的覆盖区域后,网络连接会自动断开,这将导致AP1控制失控,所以在开始建图之前,为了避免失控,需要将工控机的无线网络连接关闭。 -3. 进入桌面【SLAM建图导航】文件夹 #### 1. 点击【开始建图】 -RVIZ工具打开,能够看到地图中的AP1,使用键盘的上下左右控制AP1行走,边走边建图,可以看到环境地图随着AP1的行走不断被构建更新。 +RVIZ工具打开,能够看到地图中的一个黄色的小车,这是AP1在环境中的初始位置。 -地图中,黑色是不可行走区域,白色是可行走区域,灰色是未知区域,红色是激光雷达实时数据。 +使用键盘的上下左右控制AP1行走,小车边走边建图,可以看到环境地图随着小车的行走不断被构建更新。 + +我们看到地图中,黑色是不可行走区域,白色是可行走区域,灰色是未知区域,红色是激光雷达实时数据。 + +注: + +* ROS键盘控制功能在系统中已经安装好,无需安装可直接使用。 +* 使用键盘上下左右控制车辆行走,数字键【1/2】线速度增加/减少,数字键【3/4】角速度增加/减少,数字键【9】启用,数字键【0】禁用。 + +在小车行走建图的时候,有临时移动障碍物的出现在小车附近,如走动的人,即便之后离开了,建图的结果上有可能会有黑色障碍物在对应的位置;有些障碍物也有可能没有被检测到,在地图中没有显示出来,那么想要导航的效果更好的话,可以手动修正地图,但这一步不是必须操作,可做可不做,不影响导航功能。 #### 2. 建图完毕,点击【保存并停止建图】 -#### 3. 点击【开始导航】 -RVIZ工具打开,建好的地图会自动加载。 +#### 3. 修正建图结果 -接下来这一步请一定不要忘记,按键盘数字键【0】关闭键盘控制功能,控制方式将切换至导航程序控制,如不切换机器人接收到目标点命令后将不会自动导航行走。 +注:此步非必须操作,可跳过至下一步。 + +建好的地图存放在下面的文件夹中 + +`/home/autolabor/catkin_ws/src/launch/autolabor_box_launch/map` + + +每一次建图的结果都会存放在这里,每次会生成对应的4个文件,real_map.pgm、real_map.yaml、show_map.pgm、show_map.yaml,后缀.pgm是图像文件,.yaml是对图像文件的解释文件,real_map是定位时使用的地图,show_map是导航时使用的地图。 + +请注意,在这里要修改的建图文件是show_map.pgm,其他的文件不做修改。 + +使用U盘将show_map.pgm拷贝至自己的电脑里,使用系统画图工具或者专业的绘图软件来修改地图。 + +注意:地图文件不能有任何的翻转、移动操作,只能进行涂抹操作。 + +拿到地图,对照真实的建图环境,将没有障碍物的地方使用白色涂抹掉,真实环境中存在障碍物,但建图结果上没有的,使用黑色增加。 + +哪些区域不希望小车去行走,也可以使用黑色来涂抹设置为不可行走范围的,比如环境中有椅子或者桌子等开放式区域,我们可以涂抹黑色进行封闭处理,将其变为墙。 + +最好也对地图边缘等未知区域进行封闭处理,使用黑色将边界涂抹。 + +处理完地图之后,将该文件拷贝回原文件夹中,可将之前的文件做一个备份,请注意将修改后的地图文件名称与之前保持一致。 + +#### 4. 点击【开始导航】 + +RVIZ工具打开,我们看到修改后的地图已经自动加载进来了。 + +在地图中初始化车的所在位置,并设定一个目标位置,小车就可以自动导航了。 + +初始化所在位置的设置方式有两种: + +1. 使用键盘控制小车走到初始建图位置,注意车头、车尾方向与之前基本保持一致; + +2. 使用2D Pose Estimate,点击 2D Pose Estimate(2D nav goal左边),根据小车现在的所在位置,对比地图,找到车辆在地图中大概的位置,根据真实车头的朝向,拉动鼠标,方向指向车头朝向的方向,这样车辆就完成了位置初始化。 + +初始化位置之后,我们可以使用键盘控制小车,小幅度的控制小车行走,看到小车周围的蓝色块收敛,程序会依据激光雷达的数据校准当前位置,这样我们给定的初始位置相对来说也就更精准一些。 + +接下来这一步请不要忘记,按【0】关闭键盘控制功能,控制方式将切换至导航程序控制。 点击2D Nav Goal,指定目标位置,拉动鼠标,箭头方向是最终车辆运行至目标的车头朝向,鼠标松开,这样就完成了目标点的指定。 -目标点给定后在地图中我们能看到一条线,这是规划好的路径。根据这个规划好的路径,AP1向目标点行走。 +#### 5. 点击【终止导航】,停止导航功能,导航结束。 -当AP1已经到达目标点后,再一次使用2D Pose Estimate指定初始位置,设置目标位置,AP1将去到下一个目标点。 - - -四、点击【终止导航】,停止导航功能,导航结束。 之后在同一环境中需要再次使用导航功能时,无须重复建图,点击【开始导航】即可。 - - -#### 常见问题: - -##### 建图篇 - -1. 键盘控制AP1行走时,AP1动作异常,动一下停一下 -可调整显示器的位置,保持接收器不被遮挡,并调整自己的位置,使接收器可以接收到发送的指令信号,建议使用USB延长线或USB-HUB将接收器放置在架子的高处,无任何遮挡,便于信号传输。 -2. 键盘控制,AP1一动不动 - a) 确认已将AP1电源总开关打开,急停开关没有被按下,AP1处于上位机控制模式 - b) 新开一个terminal,执行以下命令,打出关系图,查看键盘节点 - `$ rosrun rqt_graph rqt_graph` - c) 执行以下命令,上下左右控制键盘看是否会有数据打出,如没有数据打出,说明AP1没有接收到键盘发送的指令 - `$ rostopic echo /cmd_vel` - d)执行以下命令,确认event-kbd的数量,数量大于一个则有问题 - `ll /dev/input/by-path/ ` - ![](imgs/keyboard.png) - e) 请排查是否有多个键盘设备,键盘驱动查找的是最后一个连接的键盘,需要将其他(显示为)键盘的设备找出来,拔掉(可能是鼠标、机械键盘、混装键鼠) -3. AP1不受键盘控制、失控 - 在开始建图前,需要禁用无线功能。如果没有禁用,AP1在连接了WIFI的状态下开始建图,在地图构建过程中,一旦AP1离开无线覆盖区域,无线连接断开,ROS的网络通信中断就会导致AP1控制失控。 - -##### 导航篇 - -常见问题: -1. 定位要走一走 - 2. 建图地图质量不好,障碍物颜色虚,效果好墙面黑色实现 - 3. 周围没有明显的特征信息,使得机器人能够找到自己的位置,开到有折角拐弯或明显标志物附近,能够加速机器人找到自己的位置 -2. 建图白,多走几遍, -3. 镜面,建图 - -1. 目标点给定后,可能会发生AP1不动或原地转圈,控制台显示【Failed to get a plan/不能规划路径】的红色错误,这可能是有两种原因造成: - * 目标点选择在了障碍物中 - * 车在地图中所处的位置是在障碍物中 - 那么这样的情况,我们可以先尝试重新给定目标点,或者将车换个位置重新给定初始位置。 -2. 在行走的过程中也可能会发生AP1停止不动或原地转圈的现象发生 - 这种情况是因为AP1在行走过程中,检测到障碍物,无法到达目标点,这个障碍物有可能是真实的障碍物,也有可能是误检,我们可以先等待观察,AP1会进行自我恢复(不超过一分钟),如果恢复之后AP1仍没有行动,导航已自动停止,此时我们需要重新设置目标点。 -3. 建图效果不佳/地图构建要点 - 在构建地图的过程,以下几点会影响到建图的准确性: - * 轮胎气不足影响里程计数据 - * 运行速度不宜过快,由于激光扫描有一定的频率,车速低时雷达可以扫描到的点更多,构建的地图会更准确一些 - * 走一个来回,增加激光雷达扫描次数,累计更多的数据 - * 地图构建的质量也受环境限制,请尽量选择特征比较明显的环境,玻璃、镜子、楼道、空旷等场景会影响建图效果 - * 构建完成的地图,会发现有些点会飞出,飞出的点可能是由于物体的表面不平或者有空隙激光直接穿越了过去 - * 当场景很大特征不足的时候,需要规划建图路径时,应先走一个小回环,当回环成功后,可以再多走几圈,消除粒子在这个回环的多样性。接下来走下一个回环,直到把整个地图连通成一个大的回环