下载并部署Detour:修订间差异

来自MDCS wiki
跳到导航 跳到搜索
无编辑摘要
 
(未显示同一用户的2个中间版本)
第1行: 第1行:
=== Windows下开始使用定位模块,使用2d激光SLAM ===
=== Windows下开始使用定位模块,使用2d激光SLAM ===
[[文件:Dl-select-2d.png|缩略图|下载选项]]
[[文件:Dl-select-2d.png|缩略图|下载选项]]Detour是一款综合导航软件。它具备2D/3D激光SLAM导航、二维码导航、地面纹理导航、天花板SLAM导航等功能。本介绍主要基于2D激光SLAM导航进行展开,这是Detour的核心功能、以及大部分AGV所需要的功能。以下是针对2D激光SLAM的快速开始使用步骤:
#跳转至MDCS下载站:[https://dl.lessokaji.com dl.lessokaji.com],下载时选择:
 
#*Detour - Detour.exe - 为定位主程序
==== '''跳转至MDCS下载站:[https://dl.lessokaji.com dl.lessokaji.com],下载时选择:''' ====
#*Detour - OpenCvSharpExtern.dll - 依赖库
*Detour - Detour.exe - 为定位主程序
#*Medulla - LidarController.dll - 雷达控制器插件
*Detour - OpenCvSharpExtern.dll - 依赖库
#*Medulla - Medulla.exe - 硬件控制主程序
*Medulla - LidarController.dll - 雷达控制器插件
#*Medulla - WinMedulla.exe - 硬件控制UI界面 最后点击页面最下方的Download按钮进行打包下载,下载后解压到任意目录。
*Medulla - Medulla.exe - 硬件控制主程序
#
*Medulla - WinMedulla.exe - 硬件控制UI界面 最后点击页面最下方的Download按钮进行打包下载,下载后解压到任意目录。
 
==== '''配置激光雷达:''' ====
#在Medulla目录下新建一个文本文件,名为:startup.iocmd。
#以倍加福R2000为例,在startup.iocmd里增加以下代码,从而加载一个IP为192.168.1.11的倍加福R2000雷达对象:<syntaxhighlight lang="javascript" line="1">
// 以下两行定义并加载一个IP为192.168.1.11的R2000雷达。
lidar = io load plugins\LidarController.dll
frontlidar = lidar init PnFR2kLidar 192.168.1.11
// 以下两行加载WinMedulla.dll插件并调用Show方法,显示Medulla的用户界面
ui = io load plugins\WinMedulla.dll
ui Show
</syntaxhighlight>如果您使用的是其他类型的雷达,可参考[[MDCS官方雷达支持和使用手册列表]]与[[Medulla雷达开发手册]]
#运行Medulla并检查雷达点云图。启动Medulla后,选择frontlidar对象,点击view,即可看到雷达点云图。如果点云正常,则Medulla部分设置完毕。[[文件:Image medulla frontlidar view.png|无|缩略图|正常的雷达点云图]]如果需要用反光板来增强定位稳定性,还需要检查反光信息。可参考:[[设置反光板导航]]
 
==== '''设置Detour'''  ====
打开Detour.exe以开启程序。Detour程序在开启时会查找当前目录的conf.json或者detour.json来加载配置。如果没有,则会使用空配置,需要用户进行初始配置:
#新建激光里程计: 点击里程计面板,点击添加里程计,点击2D激光。在弹出的面板(输入里程计名称)直接点确定,增加默认2D激光里程计。2D激光里程计属性一般保持默认即可。可以调节switchingDist属性,该属性表示最多靠激光里程计走多少距离必须发生一次回环检测,一般设置为1000-7000mm。[[文件:Imagehint odometrypanel.png|无|缩略图|490x490像素|新建激光里程计]]
#设置激光雷达参数和位置。点击概览面板,车体布局-编辑,可打开车体布局编辑器。选择雷达。然后按照雷达类型/安装方式等设置雷达参数。用户必须配置的内容包括:
#*angleSgn用于指示激光雷达扫描方向,1为逆时针扫描,-1为顺时针扫描。
#*endAngle,为激光雷达扫描的最后一个点的角度。这两个参数必须配置,常见的雷达配置如:  倍加福、万集、科力、西克Nano系列雷达, angleSgn=1, endAngle=180  星秒雷达:angleSgn=1,endAngle=0  西克LMS系列雷达,angleSgn=1, endAngle=270
#*用户还可配置rangeStartAngle/rangeEndAngle,即扫描的有效起始角度和结束角度。如潜伏式车型一般只有220度开口,则可设置rangeStartAngle=-110,rangeEndAngle=110。 
#*用户还可配置ignoreDist和maxDist,分别为雷达扫描的最短距离和最远距离。小于最短距离的点会被去除,大于最远距离的点也会被去除。
#*如果使用了反光板,可以点击【全部启动】按钮来看到反光板位置。[[文件:Imageconf edit cart.png|无|缩略图|491x491像素|激光雷达配置]]
#标定雷达位置。切换到概览面板,点击全部启动,此时可在地图上看到彩色的当前的局部地图。移动物体会被标记为灰色,被遮挡的局部地图以白色显示。并引出若干根从雷达位置射向移动物体的线。用户接下来应对雷达进行位置标定,从而更方便地使用定位数据(不标定则会导致运动轨迹怪异,比如直行时车体会向一边侧移)。以下以一些常用车型为例:
#*对于差速运行式车型,一般输出位姿应为车体旋转中心。该车型的校准包括以下两步骤:  1.  调整角度。首先点击概览-手动输入位置,将位置重置为0,0,0,然后手动行驶车辆准直向前行驶若干距离,查看y轴偏差、补偿雷达的th(角度)并重新将位置设为0,0,0并重复上述调整过程,直到手动行驶车辆准直向前时,y轴无偏差。  2.  调整xy坐标。首先点击概览-手动输入位置,将位置重置为0,0,0。然后手动旋转车体180度,将状态栏中读到的xy坐标除以2输入到雷达的xy坐标中。重复该操作直到误差消除。
#*对于单舵轮运行车型,一般输出位姿为舵轮的位姿。主要补偿其角度。首先手动输入位置为0,0,0。然后手动行驶车辆准直向前行驶若干距离,查看y轴偏差并补偿雷达的th(角度),直到手动行驶车辆准直向前时,y轴无偏差即可。
#*对于多舵轮运行车辆,一般输出位姿为以车体旋转中心。其校准方法类似于差速运行式车型。
#设置Lidar点云图层:  点击激光SLAM面板,点击添加图层,弹出面板(输入图层名称)保持默认直接点击确定。  一般可以不用修改激光SLAM地图的参数,若要修改只需要改两个参数:frame_distant为当前位置最远可以匹配多远的关键帧,gcenter_distant为最远可以匹配重心距离多远的关键帧。一般保持默认即可。如果使用了反光板,可参考[[设置反光板导航]]。
 
==== '''建图和运行'''可参考 [[:文件:MDCS建图和路线绘制.pdf|MDCS 建图和路线绘制]] ====

2024年5月15日 (三) 16:54的最新版本

Windows下开始使用定位模块,使用2d激光SLAM

下载选项

Detour是一款综合导航软件。它具备2D/3D激光SLAM导航、二维码导航、地面纹理导航、天花板SLAM导航等功能。本介绍主要基于2D激光SLAM导航进行展开,这是Detour的核心功能、以及大部分AGV所需要的功能。以下是针对2D激光SLAM的快速开始使用步骤:

跳转至MDCS下载站:dl.lessokaji.com,下载时选择:

  • Detour - Detour.exe - 为定位主程序
  • Detour - OpenCvSharpExtern.dll - 依赖库
  • Medulla - LidarController.dll - 雷达控制器插件
  • Medulla - Medulla.exe - 硬件控制主程序
  • Medulla - WinMedulla.exe - 硬件控制UI界面 最后点击页面最下方的Download按钮进行打包下载,下载后解压到任意目录。

配置激光雷达:

  1. 在Medulla目录下新建一个文本文件,名为:startup.iocmd。
  2. 以倍加福R2000为例,在startup.iocmd里增加以下代码,从而加载一个IP为192.168.1.11的倍加福R2000雷达对象:
    // 以下两行定义并加载一个IP为192.168.1.11的R2000雷达。
    lidar = io load plugins\LidarController.dll
    frontlidar = lidar init PnFR2kLidar 192.168.1.11
    // 以下两行加载WinMedulla.dll插件并调用Show方法,显示Medulla的用户界面
    ui = io load plugins\WinMedulla.dll
    ui Show
    
    如果您使用的是其他类型的雷达,可参考MDCS官方雷达支持和使用手册列表Medulla雷达开发手册
  3. 运行Medulla并检查雷达点云图。启动Medulla后,选择frontlidar对象,点击view,即可看到雷达点云图。如果点云正常,则Medulla部分设置完毕。
    正常的雷达点云图
    如果需要用反光板来增强定位稳定性,还需要检查反光信息。可参考:设置反光板导航

设置Detour

打开Detour.exe以开启程序。Detour程序在开启时会查找当前目录的conf.json或者detour.json来加载配置。如果没有,则会使用空配置,需要用户进行初始配置:

  1. 新建激光里程计: 点击里程计面板,点击添加里程计,点击2D激光。在弹出的面板(输入里程计名称)直接点确定,增加默认2D激光里程计。2D激光里程计属性一般保持默认即可。可以调节switchingDist属性,该属性表示最多靠激光里程计走多少距离必须发生一次回环检测,一般设置为1000-7000mm。
    新建激光里程计
  2. 设置激光雷达参数和位置。点击概览面板,车体布局-编辑,可打开车体布局编辑器。选择雷达。然后按照雷达类型/安装方式等设置雷达参数。用户必须配置的内容包括:
    • angleSgn用于指示激光雷达扫描方向,1为逆时针扫描,-1为顺时针扫描。
    • endAngle,为激光雷达扫描的最后一个点的角度。这两个参数必须配置,常见的雷达配置如: 倍加福、万集、科力、西克Nano系列雷达, angleSgn=1, endAngle=180 星秒雷达:angleSgn=1,endAngle=0 西克LMS系列雷达,angleSgn=1, endAngle=270
    • 用户还可配置rangeStartAngle/rangeEndAngle,即扫描的有效起始角度和结束角度。如潜伏式车型一般只有220度开口,则可设置rangeStartAngle=-110,rangeEndAngle=110。
    • 用户还可配置ignoreDist和maxDist,分别为雷达扫描的最短距离和最远距离。小于最短距离的点会被去除,大于最远距离的点也会被去除。
    • 如果使用了反光板,可以点击【全部启动】按钮来看到反光板位置。
      激光雷达配置
  3. 标定雷达位置。切换到概览面板,点击全部启动,此时可在地图上看到彩色的当前的局部地图。移动物体会被标记为灰色,被遮挡的局部地图以白色显示。并引出若干根从雷达位置射向移动物体的线。用户接下来应对雷达进行位置标定,从而更方便地使用定位数据(不标定则会导致运动轨迹怪异,比如直行时车体会向一边侧移)。以下以一些常用车型为例:
    • 对于差速运行式车型,一般输出位姿应为车体旋转中心。该车型的校准包括以下两步骤: 1.  调整角度。首先点击概览-手动输入位置,将位置重置为0,0,0,然后手动行驶车辆准直向前行驶若干距离,查看y轴偏差、补偿雷达的th(角度)并重新将位置设为0,0,0并重复上述调整过程,直到手动行驶车辆准直向前时,y轴无偏差。 2.  调整xy坐标。首先点击概览-手动输入位置,将位置重置为0,0,0。然后手动旋转车体180度,将状态栏中读到的xy坐标除以2输入到雷达的xy坐标中。重复该操作直到误差消除。
    • 对于单舵轮运行车型,一般输出位姿为舵轮的位姿。主要补偿其角度。首先手动输入位置为0,0,0。然后手动行驶车辆准直向前行驶若干距离,查看y轴偏差并补偿雷达的th(角度),直到手动行驶车辆准直向前时,y轴无偏差即可。
    • 对于多舵轮运行车辆,一般输出位姿为以车体旋转中心。其校准方法类似于差速运行式车型。
  4. 设置Lidar点云图层: 点击激光SLAM面板,点击添加图层,弹出面板(输入图层名称)保持默认直接点击确定。 一般可以不用修改激光SLAM地图的参数,若要修改只需要改两个参数:frame_distant为当前位置最远可以匹配多远的关键帧,gcenter_distant为最远可以匹配重心距离多远的关键帧。一般保持默认即可。如果使用了反光板,可参考设置反光板导航

建图和运行可参考 MDCS 建图和路线绘制