复合机器人 AGV 使用手册
手册修订时间:2023-03
1 本体介绍
1.1 AGV 本体参数介绍
1.1.1 外形尺寸参数
AGV (Automated Guided Vehicle,简称 AGV),通常也称为 AGV 小车。一般意义上的概念是指装备有电磁或光学等自动导航装置,能够沿规定的导航路径行驶,具有安全保护以及各种移载功能的运输车。
在应用中不需要驾驶员的搬运车,以可充电的蓄电池为其动力来源。一般可通过电脑来控制其行进路径以及行为,复合式的 AGV 上,安装有可旋转的激光扫描器,在运行路径沿途的墙壁或支柱上的激光定位标志,AGV 依靠激光扫描器发射激光束,然后接受由四周定位标志反射回的激光束,即 SLAM 建图的导航方式,AGV 的车载 CPU 计算出车辆当前的位置以及运动的方向,通过和内置的数字地图进行对比来校正方位,从而实现自动到路径导航。
AUBO 复合机器人的本体设计,规范完整的图纸,如下所示:



复合机器人 AGV 的本体基本外形参数如下表所示:
| 序号 | 参数名称 | 参数说明 |
|---|---|---|
| 1 | 尺寸(长宽高) | 1000*700*600mm(不含机械臂高度),公差±2mm |
| 2 | 负载表面尺寸(长*宽) | 650*620mm,公差±2mm |
| 3 | 自重 | 250Kg(不含机械臂) |
| 4 | 最大载重 | 300Kg(包含机械臂和载具重量) |
1.1.2 激光参数
复合机器人 AGV 的本体基本外形参数如下所示:
| 序号 | 参数名称 | 参数说明 |
|---|---|---|
| 1 | 激光传感器数量 | 2 个 |
| 2 | 最大速度 | 1.3m/s |
| 3 | 工作速度 | 前进:1.0m/s(可配置),后退:1.0m/s(可配置) |
| 4 | 转弯半径 | 0mm |
| 5 | 旋转半径 | 550mm |
| 6 | 爬坡能力 | 6° |
| 7 | 越障高度 | 10mm |
| 8 | 过缝宽度 | 30mm |
| 9 | 离地间隙 | 25mm |
| 10 | 行走通道宽度 | ≥ 900mm |
| 11 | 回转通道宽度 | ≥1300mm |
| 12 | 站点定位精度 | ± 10mm |
| 13 | 地面平整度 | 6mm |
1.1.3 性能参数
复合机器人 AGV 的基本性能参数如下所示:
| 序号 | 参数名称 | 参数说明 |
|---|---|---|
| 1 | 驱动形势 | 双轮差速驱动 |
| 2 | 电池容量 | 48V 52Ah,锂电池 |
| 3 | 充电器供电参数 | 220V 800-1000W |
| 4 | 续航时间 | 6h(300Kg 满载) |
| 5 | 电池寿命 | 800 次(DOD 100%),容量保持率 80% |
| 6 | 充电方式 | 可选手动充电或自动充电:最大充电电流 15A |
| 7 | 充电时间 | 3h(从 15%充电到 95%) |
| 8 | 机械臂 | 可选配 AUBO-i5、AUBO-i10 等 |
1.2 AGV 接口布局介绍
1.2.1 机械接口布局
复合机器人机械接口是指为用户预留的接口(包括螺栓孔、定位销孔等),在用户的应用开发中,作为提供为外部零部件的连接。
预留机械接口存在于复合机器人上台面,和机械臂法兰末端,复合机器人上台面的典型应用包括:安装控制柜、安装工控机、安装托盘。

复合机器人 AGV 本体上台面的常用典型应用及其说明所下表所示:
| 序号 | 名称 | 应用说明 |
|---|---|---|
| 1 | 控制柜 | 辅助外设电气设备进行封闭式安全管理 |
| 2 | 工控机 | 基于 PC 总线的工业专用小型计算机,稳定性强 |
| 3 | 空压机 | 空气压缩机,为设备提供气源 |
| 4 | 物料托盘 | 临时放置物料,作为搬运和上下料的工装(治具) |
| 5 | 机械臂 | 选配标准的 i5、i10 等类型的机械臂 |
复合机器人法兰末端的机械接口是指为用户预留的接口,其具体的机械尺寸示意图如图所示。

复合机器人机械臂法兰末端一些常见的典型应用所下:
| 序号 | 名称 | 应用说明 |
|---|---|---|
| 1 | 吸盘 | 可维持物体的吸附功能 |
| 2 | 2D 相机 | 可适配工业 2D 相机,采用眼在手上形式,可实现 2.5D 定位,定位精度可达 0.5mm |
| 3 | 3D 相机 | 可适配结构光相机、双目3D 相机等,采用眼在手上形式,3D 定位精度可达 1mm |
| 4 | 夹爪 | 可适配两指自适应电爪、三指自适应电爪、两指平行电爪,气动夹爪,自行设计的气缸支架夹爪等 |
1.2.2 硬件接口布局
硬件接口丰富,满足主流机器人开发需求支持以太网、Modbus RTU、USB 等接口,默认端子面板接口示意图,如图所示。


控制柜接口:
- 预留 12V 接口,设备数量不限,最大电流 4A、最高功率 48W
- 预留 24V 接口,设备数量不限,最大电流 10A、最高功率 240W
- 支持逆变器,提供交流电供电方案
备注:箱内有 100V-240V 交流和 48V 直流电供电模块,非专业人士请勿带电打开机柜,具体说明可以参看协作 AUBO-i5 & CB-M 用户手册。


1.2.3 软件 API 概述
复合机器人的软件接口指程序接口,其功能是配合用户的应用开发,完成设备的通信、控制、状态采集等工作。
根据开发深度分为两类,示教器程序接口和 API 接口。
示教器程序接口:开发深度浅、开发难度低,使用Lua 语言编写脚本,使用方便、开发快捷、调试简单、学习成本低,可满足用户的基本应用需求。示教器还可提供插件开发,具体的可以参看示教器插件开发指南。
API 接口:开发深度较深,并且开发难度高,编程语言包括但不限于 C\C++、Python,API 接口程序作为独立程序存在,与复合机器人建立 TCP\IP 网络通信,实现机器人与应用开发设备的协同工作,详情可参看SDK 开发手册。
机器人 API 的特点如下:
- 机器人 API 开放开源
- 机器人 API 端口自主独立
- 有防呆和自主关闭功能(若收到任何不符合本协议报文头部的错误数据包,将会主动关闭该 TCP 连接不会回复任何信息)
- 有请求和自动保持机制(使用 TCP KeepAlive 机制进行保活,对已死的连接会及时清除)
常见的六种机器人 API 开放内容如下:
- 机器人状态 API : 用于查询机器人各种状态量,如位置、速度、报警信息等。
- 机器人控制 API : 用于向机器人发送开环控制指令,如前进速度、转向速度,重定位等。
- 机器人导航 API : 用于向机器人发送导航指令,如路径导航,平动转动等。
- 机器人配置 API : 用于设置机器人的参数,以及下载、上传地图等。
- 其他 API : 杂项,如音频控制等。
- 机器人推送 API : 用于机器人主动推送数据到当前连接的客户端。
每个类别使用不同的端口,相互独立,整套 API 主要采用 TCP 问答的方式,机器人作为服务器接受客户端的请求并向客户端作出响应。

对应的 API 测试工具开源在 Github 的 Source 目录下,该工具使用 Qt 编写,其源码可以作为例程参考。编译后的单 Windows 可执行文件也可在 Release 中下载。
API 报文遵循一定的结构,表头和接收的 json 文件如下所示。

机器人开放相关操作的 API。整套 API 采用 TCP request/response 问答的方式,机器人作为服务器接受客户端的请求并向客户端作出响应。API 请求由头部和数据区组成,用于标识数据包是序列化后的 JSON 数据,可以通过多种方式解析和使用,详情可参考说明文档。
2 AGV 整体拆装
2.1 外壳拆装
复合机器人的拆装过程主要包括:机械臂的拆装、上层外壳的拆装和下层外壳的拆装三大部分。在拆装的过程中,一定要注意保障停止供电,即关机状态下才可以进行拆装。
复合机器人(海纳系列)拆装需要注意的是,其中机械臂的拆装是相对最简单的,其固定的螺栓数目最少。通过四个螺栓孔与基座相连,旋出机械臂的电源线(防呆口设计),然后拆除掉机械臂基座的四个螺栓即可。需要提示的是,如果机械臂需要打包运输,则需要将机械臂的姿态调整为打包位置,通过示教器的机械臂设置部分完成,之后再关机拆卸。
对于复合机器人 AGV 本体外壳的拆装,建议按照 K01 到 K08 顺序依次拆卸对应的壳体,具体的拆卸顺序示意图,如图所示:

注意,壳体与相连壳体之间有卡扣配合,在拆卸的时候需要严格按照步骤,防止卡扣断裂。拆卸掉使用的固定螺丝以取下外壳,逐步慢慢的拉开即可。
具体的拆卸说明流程如图所示:


注意事项:
- 为防止吸塑外壳卡扣断裂,需严格遵循拆装流程;
- 吸塑外壳螺栓易丢失,请妥善保存;
- AGV 台面需要保持完整,若应用开发需要钻孔,将可能导致机器人电气设备损坏;
- 运输过程中,需要使用木箱和泡沫进行包装,木箱和泡沫已经在产品中提供;
- 吸塑外壳,请勿踩踏、覆盖重物,以防止外壳损伤;
- 复合机器人的电气接口脆弱,在应用开发时,请勿撞击;
- 激光雷达外壳请勿撞击,防止雷达磨损甚至损坏;
- 请妥善保存机器人包装木箱;
- 复合机器人在运输过程中需要锁闸,以防止电池损耗,若不锁闸,将导致电池消耗,存在报废电池的风险。具体的也可参考使用手册。
2.2 电池快速拆换
2.2.1 拆卸电池
拆卸电池方法的具体思路如下:
首先打开电池仓,得到电池的概览,如图所示:在关机条件下,缓慢旋转螺纽,之后拔掉航插口即可,以停止电池的供电。

与此同时,需要注意到侧边的开关,在长时间保持电池或者是不插电的情况下,需要把电池的手动开关关闭,防止电量的泄露和其他接触,如图所示:

特别注意的是要保障插口处的安全性,尤其是防潮,防静电。
2.2.2 充电器相关配置
手动充电器有两种,分别对应三孔和四孔的,接插件实物如图所示。

对于其背面有数字标识,便于了解其其接线方式,分别对应的是,红线接 1,黑线接 2,其他的可以不接(或者对四插口的 3 和 4 短接不使用即可)。
充电时,对应接插件的位置,检查确保安全的情况下再通上电源。
对于与充电器相连接的接线口,是按照标准的电气接入方式完成布局的,实物示意图如下。

其引脚的接线方式,与充电器相连接的一端接线口如下:
2 正 8 负(粗),3 红 7 黑(中),1 和 5 短接(细),469 号可以不接。
2.3 防滑轮拆装
复合机器人的标准主动轮采用聚氨酯包胶轮,因这类轮胎材质较硬且光滑,在地面湿滑的工作场景下,有可能影响机器人的定位精度,导致工作内容(如为机床上下料)无法成功执行。另一种防滑轮的表面进行了磨砂处理的包胶轮(以下简称防滑车轮),复合机器人在进行打滑标定后,使用防滑车轮作为主动轮能够在湿滑地面行驶。


当达到一定的使用次数之后,达到了轮子的寿命,需要进行更换,则需要完成拆除,此时,需要在 AGV 整体外壳拆除的基础上,完成防滑轮的更换。
拆装本体 AGV 过程的部分实物图如下所示。

3 示教器插件使用说明
3.1 界面介绍
示教器是用户能够进行机器人的手动操控、程序编写、参数配置以及实时监控时可以使用的手持装置。对于复合机器人的示教器,在 AGV 部分单独集成了一套相对独立的控制方式,通过插件的方式来实现 AGV 的基本运行功能。

插件具体的路径是在 AGV 部分,AGV 扩展 AGV 插件路径为:扩展 → Peripheral → AGV,AGV 插件包括以下 4 个选项卡,内容及其说明如下表所示:
| 序号 | 名称 | 说明 |
|---|---|---|
| 1 | AgvControl | 连接/断开 AGV |
| 2 | AgvStatus | 常用状态获取 |
| 3 | Map | 地图及开环控制等 |
| 4 | Log | 日志信息 |
| 5 | I/O 状态 | 显示 AGV 的控制器 IO 状态 |
| 6 | 电池信息 | 显示电池电量百分比。 |
| 7 | 急停状态 | 蓝色表示无急停,红色表示急停被按下 |
| 8 | 置信度 | 在[0, 1]之间,值越大,位置准确度越高 |
| 9 | 激光阻挡 | 显示激光状态,是否被阻挡等 |
| 10 | 当前站点 | 显示 AGV 的当前站点信息 |
| 11 | 错误信息 | 蓝色表示无急停,红色表示急停被按下 |
3.1.1 AGV 扩展功能描述
示教器 AGV 扩展功能描述
- 实时位置:x 坐标(单位 m),y 坐标(单位 m),角度(单位 rad)
- 当前站点:显示当前站点名称
- 错误日志:记录错误信息,如电机、激光、通信异常等状态
- 其他:界面中还显示 AGV 其他状态信息,如实时速度、当前地图名称、IO 状态、激光阻挡等详情。
下表是导航和激光状态显示情况分析。
| 序号 | 显示名称 | 状态 |
|---|---|---|
| 1 | NONE | 无导航 |
| 2 | RUNNING | 导航中 |
| 3 | SUSPENDED | 导航暂停 |
| 4 | COMPLETED | 导航完成 |
| 5 | FAILED | 导航失败 |
| 6 | Unblocked | 激光未被阻挡 |
| 7 | Slowed | 激光减速,AGV 此时慢速运动 |
| 8 | Blocked | 激光被阻挡,AGV 此时不能运动 |
3.1.2 AGV 扩展功能应用
对于 AGV 插件的功能应用部分,主要包括有如下的五个功能,具体的操作和说明要求如下:
- 地图操作部分:显示地图信息,查询地图列表,更换地图。
- 地图绘制:显示 AGV 位置,LM 站点,路径,障碍物,激光数据等信息。
- 开环控制:控制 AGV 前进后退或转向。
- 导航控制:向 AGV 下达路径导航命令。
- 重定位:当 AGV 重启或更新地图后,需要重定位并且确认 AGV 位置正确,才可进行导航操作。将 AGV 移动到某个站点 LMx 附近(方向也要接近,x 表示对是站点序号名称,为阿拉伯数字),进行重定位,完成后弹窗确定即可。

3.2 工程建立与使用
在创建工程中需要明确工程的逻辑思路,例如:站点数量具体工作内容,标准建议的上下料的工程案例,我们可以以此为逻辑样板进行在线编程。

案例中,体现的是复合机器人模拟的上下料工作,具体是先连接 AGV,执行到一个等待站点 LM1(初始起点),之后可以进行记录和等待,进行机械臂的运动来模拟单次的上料/下料工作,重复运动到下一个站点,然后继续执行,最终完成循环(满足循环条件条件之后结束工程)。
对于示教器在线编程部分的使用指南,详情可以参看遨博学院官方讲解资料。
4 RoboshopPro 的使用说明
4.1 安装配置
4.1.1 建议硬件环境
该部分的说明文档,仅供参考和操作使用。旨在帮助未接触过 Roboshop 的工程师理解以及操作 RoboshopPro 的机器人调试应用工具.
安装软件的硬件要求建议如下:
windows7 及以上,64 位操作系统,PC 内存要求 4GB RAM 以上,硬盘空间要求 8G 以上可用,显示器分辨率 1920*1080,网络设备要求可以正常接入有线网和无线网络。
对于设备的硬件网络要求,需要满足支持无线网络协议:IEEE 802.11 a/b/g/n,带宽速度值不低于 100Mbits,信号强度要求不低于 60dBm, 网络延时要求平均延时时间不超过 100ms。
4.1.2 安装过程
下载压缩包,解压,之后,双击 RoboshopProInstaller_x64_x.x.x.exe(其中 x.x.x 代表版本号,如 2.4.0,2.3.27 等)启动安装程序,选择所需要的安装语言(该语言会同时应用于 Roboshop Pro 的软件语言)。点击下—步,再点击我接受(I) 以同意软件授权协议。之后进入选择安装位置界面,点击浏览可选择安装的目标文件夹。点击安装即开始 Roboshop Pro 的安装过程,等待软件安装完成。
建议将 Roboshop Pro 的启动快捷方式将添加到桌面上。
使用 Roboshop Pro 的过程中如遇到 Windows 防火墙警告,请按照下图同时勾选 专用网络和公用网络,并点击允许访问。若只勾选了—个,可能会导致计算机连接到其他网络时 Roboshop Pro 的部分功能无法正常使用。如果有其他杀毒软件或防火墙弹出拦截,也请点击允许。
允许应用通过防火墙配置,在控制面板找到系统与安全,找到 window defender 防火墙一栏,选择即可,操作流程如图所示:

之后,选择对应的应用,如果列表不存在 roboshop,则选择允许其他应用,浏览本地的安装文件位置即可,使得.exe 文件通过防火墙。


与此同时,需要注意的是:
请务必将本软件安装在非系统盘(一般为 D 盘)中。若电脑只装有一个硬盘,请勿安装在该硬盘的 Program Files 和 Program Files(x86) 目录下。推荐路径 D:\SeerRobotics\RoboshopPro)。
如果计算机装有安全防护软件,在安装本软件时可能会出现:“有程序正在修改文档”的提示,遇到请选择允许修改即可。
如果防火墙拒绝,也不出现弹窗,则修改防火墙,允许应用通过使用,找到对应的应用程序文件所在位置,管理添加即可。
正常打开软件之后的界面如下:

4.2 网络配置
AGV 使用过程中需要的网络环境要求如下: 无线网络协议:IEEE 802.11 a/b/g/n
- 带速度值:≥100Mbits
- 信号强度要求:≥-60dBm
- 网络延时要求:平均延时时间≤100ms
4.2.1 查看网络信息
Windows 系统下指令: ipconfig+IP 地址

ubuntu 系统下指令: ifconfig+IP 地址

4.2.2 电脑 IP、防火墙配置
查看网络信息状态,进入终端。电脑端快捷键打开 win+r,输入 cmd 进入终端,如图所示

电脑端 win 图标右键点击,选择windows 终端,之后以管理员身份运行。进入之后,查看网络属性的命令为 ipconfig 界面正常如下图所示:

其中 windows 下的 IP 配置中,第一个为以太网,本地电脑对应的 IPv4 地址为 192.168.92.1;最后一个为无线局域网,本地电脑对应的 IPv4 地址为 172.16.20.61;与机器人连接要求,需要与机器人在同一个网段下,同一个局域网内的无线连接,或者是通过以太网络直接连接。
自定义修改电脑以太网络属性和无线网络属性:电脑设置中找到网络高级设置或者是网络共享中心,或者通过控制面板打开网络和 internet 属性,进行如图所示的配置即可。
该过程需要注意,关闭 IP 的自动配置,关闭 DHCP 服务,打开手动开关,配置自定义的 IP 地址和网关即可。

最终结果查看:自定义修改机器人的网络属性,打开软件,找到机器人连接首页。

进入 wifi 客户端配置,手动配置 IP 地址为固定的值,取消 DHCP 功能,在无线 IP 连接处也可以进行配置,之后机器人的 IP 地址就变成了可以访问的固定地址。
4.2.3 常见网络连接问题
1. 无线网远程连接不上
首先确定无线网的 IP 是否与 AGV 的 IP 在同一网段,例如:IP 地址为 192.168.1.101,子网掩码为 255.255.255.0。如需要在同一个网段,则需要 IP 地址为 192.168.1.1- 192.168.1.254。
有时候会遇到 子网掩码 为 255.255.254.0,则他的 IP 网段为,192.168.0.1-192.168.0.254,192.168.1.1-192.168.1.254。尾号 0 和 255 的地址分别为网络号和广播地址。其中的原理参考《计算机网络》。
使用 ping+IP 地址查看网络连接情况,如果显示如下内容,证明在同一网段下,可以进行连接。正常的连接成功,网络畅通的情况如图所示。

使用 MobaXterm 软件进行远程连接,发现连接不上,结果所下:

遇见该情况,一般性网络故障,进入 AGV 中 ubuntu 系统。选择/etc/host.deny 文件,将其中的所有的 IP 地址删除,或者删除自己当前的 IP 地址。
Host 配置文件是限制 IP 地址进行 TCP 连接的配置文件,数量限制。

2. 网络 IP 地址异常( 169.254.xxx.xxx)
当进行以太网连接时经常使用网线进行热插拔,因此 DHCP 给该主机分配 IP 地址后重复操作导致 DHCP 服务宕机。其 IP 网段变为 169.254.222.xxx,该网段是保留地址,当 DHCP 无法分配 IP 时,主机会自动用该网段作为 IP 地址,该网段将接收到的网络包全部丢弃,无法接入网段。
解决方案,终端输入 config ./release ,config ./renew ,重置即可。如果使用以上重置网络更新的命令之后还是无效,可以进行以下操作。
(1)进入 windows 中的任务管理器,按住 ctrl+alt+delete 或者右击任务栏就会显示任务管理器,进入之后,打开服务模块。

(2)找到服务模块,选择 DHCP

(3)找到 DHCP client,双击进入编辑,在服务类型中选中点击停止,接着该服务就会进行重启。

(4)最后 ipconfig ./renew ,再次输入 ipconfig 就可以看见 IP 地址恢复正常,之后就可以使用。
4.3 软件基本功能介绍
首页界面如下所示,显示的是所有连接过的机器人,右上角的添加设备可以自定义添加机器人,输入机器人的 IP 地址即可。
4.3.1 地图建立与编辑
进入首页之后,默认打开的是机器人当前的地图,如图所示:

2. 地图建立
首次使用机器人时,需要建立地图,通过 SLAM 模块进行 2D 的建图。选择菜单栏中的地图与控制,2D 建图,下栏选择第一个 SLAM 选项,实时定位与建立地图,会弹出一个窗口,选择设定的速度,加速度和直线运动,旋转运动的情况,之后手动控制 AGV 进行扫描,逐步建立地图即可。
注意机器人在移动的过程中,保持 AGV 前方的畅通,可移动的障碍物尽量保持在 AGV 后方或者侧后方,人员保持在 AGV 后面跟随,(鉴于 AGV 建图扫描算法的过程主要是依据前方的激光,所以优先保障机器人前方的稳定)同时需要注意保持 AGV 的安全避障和功能。
扫图完成后,点击右上角的保存按钮即可,然后根据提示输入自定义的名称和路径进行保存。
保存成功之后,会弹出对话框询问是否打开,一般选择推送地图并打开,把刚才建立的地图推送到机器人并打开地图,自动进行重新定位,软件显示的地图与实际机器人运行的地图保持一致,可以直接使用。
建议扫图路线为环形,形成闭合回路,扫描地图一圈回到初始位置。
2. 地图编辑
在地图与控制一栏下,有地图的编辑框,可以进行地图的编辑处理,主要是启用编辑,和退出编辑。
启用编辑之后,列出的几种模式如下:
(1)指针。功能常用于选择,并且可以对选择的元素(包括站点,路径,区域等)进行手动移动和编辑。一般常用于地图站点的属性编辑和路径的编辑和修改,如编辑站点的位置角度,路径运动的速度等参数,也可以通过 delete 键删除站点和路线。

(2)橡皮擦。可以擦除掉地图上的普通点和线,主要用于地图上噪点干扰的擦除。使用过程中,根据需要可以调整橡皮擦矩形框的大小,左键点击进行擦除。一般需要注意到地图上孤立的点和非直线的边缘杂点。 
(3)禁行线。用于禁止机器人通过,一般相当于设置的安全线和违禁区。
(4)站点。最常用于机器人的停靠等待位或者执行其他任务的临时缓冲点。一般的站点分为三种,普通站点,工作站,特殊工作站。

其中最常用的是普通站点,用于一般的点位设置。工作站需要配置单独的模型文件,需要 AP 点依据模型属性进行设置。特殊工作站应用于自动充电桩的配置,在当前地图中建立 CP 点,编辑地址坐标,之后按照模型文件配置识别的模型文件,作为充电站点,还需要配置前置点的辅助,进行机器人的自动充电。
(5)连接线。用于机器人根据轨迹线路行走,在编辑地图时,对各个站点添加线路进行连接。连接线的方式有三种,分别是直线,3 阶贝塞尔曲线和圆弧。

可以根据真实场景单独配置相应的属性,其中路径的属性包括有路径的类型,路径的注释描述,路径的操作和移动方向。
直线方式,其中的连接线路属性只能为直线,无法通过拖动等方式改变线路的连接类型,路径为固定的直线,两点之间通过直线直接相连,机器人中心直接直线运动。
3 阶贝塞尔曲线方式,一般用于曲线的过渡,连接两个站点,编辑路线的形状,可以通过指针拖动选择曲线的形状和有弧度的曲率。
圆弧方向,该种连接方式的线路属性只能为标准圆弧。可以通过指针选中路径,然后拖动虚线上的控制点,更改路线的圆弧形状以及大小。
(6)其他说明暂无,不常使用,可忽略。
4.3.2 路径导航与任务链
机器人的路径导航,主要是依据建立地图时的路径连接展开的,依据设定的方向和站点,AGV 会自动导航移动到指定的位置。
任务链部分,需要建立队列和任务组,分配以确定其运行的方式。参考案例如图所示:

4.4 机器人自动充电配置
4.4.1 简介
自动充电桩的应用背景是提升复合机器人的自动工作能力,可替代人工为复合机器人执行充电工作,减少人工介入,降低人因误差,保障复合机器人的稳定可靠工作。自动充电桩是一种充电设备,在电气参数上与复合机器人配套的手动充电机一致,通过充电桩内部的充电片与复合机器人的充电接口对接,实现为复合机器人充电。
自动充电桩结构如下图,其基本组成包括:充电桩结构部件、反光片、充电对接模块、充电机等。

充电桩结构部件组成了自动充电桩的基本框架,用于支撑反光片、充电对接模块、充电机等设备。
反光片安装于充电桩外壳上,目标是定位自动充电桩、引导复合机器人对接等工作。方法是于复合机器人的激光雷达等传感器配合,通过充电桩定位算法实现机器人对自动充电桩的定位和引导对接。
充电对接模块是自动充电桩与复合机器人对接的模块,包含充电片、充电片罩等设备。
在非对接状态,充电片罩包裹充电片,达到保护充电片、防止意外短路等目标。在对接状态时,充电片罩会回缩至充电桩内部,将充电片暴露出来,达到将充电片与复合机器人的充电口对接的目标,实现自动充电。
对于新版充电桩,其模型如下所示:

两款充电桩的实物图如下所示:

4.4.2 技术参数
自动充电桩的技术参数参考下表:
| 序号 | 参数类型 | 技术指标 |
|---|---|---|
| 1 | 最大输出电压 | 54.6V+0.2V |
| 2 | 输出电流 | 15A+5% |
| 3 | 最大输出功率 | 900W |
| 4 | 输入电压 | 180~260Vac |
| 5 | 额定输入电压 | 220Vac |
| 6 | 额定输出 | 54.6Vdc, 15A |
| 7 | 输入频率 | 50~60Hz |
| 8 | 转换电流 | 0.75A |
环境条件要求:
| 序号 | 参数类型 | 技术参数 |
|---|---|---|
| 1 | 工作温度 | -20~45C。 |
| 2 | 相对湿度 | 5%~95% |
| 3 | 存贮温度 | -40~70C。 |
| 4 | 冷却方式 | 强制风冷 |
| 5 | 海拔高度 | 0~3000m |
4.4.3 自动充电配置
通过软件控制 AGV 进行自动充电,其配置的过程如下。
- 固定自动充电桩
靠墙放置充电桩(临时)或使用膨胀螺栓固定在地面上。确保充电桩与机器人,以及反光条与激光处于同一平面
- 创建地图
将充电装扫进地图范围内,通过建立地图或者编辑地图拼接等功能实现,以便于后面的特殊工作站的建立。

- 修改安全参数
修改 ManualBlock 安全参数,在手动模式下的避障功能。需要将【参数配置】中【ManualBlock】配置为【false】,否则机器人无法自动靠近充电桩。如图所示:

当机器人内部出现问题时,Roboshop Pro 会在右下角的 Robokit 的报警框进行报警提示,进行告警,显示为红蓝交替闪烁状态,并显示错误数量。
- 创建充电站点 CP 和前置站点 LM,具体步骤如下:
- 手动控制机器人,使机器人的自动充电口正对插入充电桩。
- 鼠标光标放在机器人上,右键点击【标记特殊工作站】,创建 CP 点。 手动控制机器人后退大约 0.5m~ 1m 距离。
- 鼠标光标放在机器人上,右键点击【标记站点】,创建 LM 点。

- 配置自动充电模型
把鼠标放置在 CP 点,将识别模型文件设置为 amb.charger。 前置点勾选预先设定的普通站点。

修改识别文件,将识别模型的参数修改为:dx:0.125,dx 代表 AGV 与反光板之间的距离,其他的值保持默认即可。

- 修改安全参数
将 ManualBlock 改回 true,点击永久修改。

4.5 声光提示及报警配置
4.5.1 三色灯转向提示配置说明
通过设定的连接口输出,具体可以参考说明文档配置,连接完成的三色灯接口示意如图所示:

该方法需要软硬件同时使用,以通过 Roboshop 机器人模型中修改转向灯配置文件,配置控制转向灯的 DO 输出。
硬件部分需要连接相关线路展开布局,如图所示:安装 4 个灯带,灯带正极并联连接 24V+,负极分别连接对应打开的 DO。
灯带左前 LF 连接 DO0、灯带右前 RF 连接 DO1、灯带左后 LB 连接 DO2、灯带右后 RB 连接 DO3。

软件部分需要修改机器人模型文件,调整机器人模型参数,修改相关文件属性,调试好配置。

具体实现步骤如图所示:

该方式能够实现 AGV 在左前转、右前传、左后转、右后转、前进方向、后退方向、停止、原地旋转这几种情况下的灯光测试(包括蜂鸣器报警)。
4.5.2 灯光安全报警配置说明
参看用户手册,安全 IO 功能及其定义使用。
默认的安全 IO 如下所示:

常用的 IO 输入表如下所示:

4.5.3 程序运行提示配置说明
在线编程过程中,使用到的程序联动控制IO 扩展,可以根据情况加入监控和状态的反馈。

联动模式时,机械臂可通过联动模式 IO 口与外部一台或多台设备(机械臂等)通信。此模式一般适用于在线编程或者 AGV 和机械臂进行的协同运动。
用户可以使用的联动模式 IO 功能及其状态的说明如下所示:

4.6 AGV 安全配置
激光安全属性配置,如下图所示。在 Roboshop 软件内连接机器人之后,选择参数配置,选择安全性,显示更多,找到该模式下的相关参数。

一个是在自动充电桩配置过程中用到的变量还有其他的相关,如减速距离,减速速度等。其中,对于碰撞预测的机器人扩展宽度代表的是 AGV 两侧的安全预测距离。
4.7 机器人打滑标定
复合机器人的打滑标定步骤如下。
打开机器人模型 -> controller。先启用设备,之后设置坐标,参考坐标 x:0.282150,坐标 y:-0.077000。

之后,在参数配置一栏中的显示更多里面,修改参数。
把 Startskiddetection 改成 false,把 DiffLaserOdomCalibSize 改成 1.000000,把 Laserodomcalibspeed 改成 0.200000,把 Laserodommaxrotvel 改成 15.000。参数修改完成之后,就可以进行标定。环境要求,将复合机器人移动至空旷地带,使其半径 3m 范围内无障碍物。
在地图与控制窗口处,点击其他,选择标定机器人。选择 laser1 开始标定,等待大约 2min。

该步骤完成之后,即标定完成,设置标定的参数,点击确定则此时 laser1 标定完成。

同理,标定 laser2 和 controller。全部标定完成并保存之后,设备的状态会显示已标定。

修改参数,Startskiddetection 改成 true ,启用打滑检测功能,即可实现自动的打滑纠正,AGV 会自动偏移回初始设定的站点/路线。
4.8 AGV 日志导出
AGV 日志在示教器目录的位置如下,详见后续的 Moba 通信软件使用。
/auborobotstudio/robotstudio/teachpendant/bin/agv_plugin_logs
/auborobotstudio/robotstudio/teachpendant/bin/logfiles5 MobaXtem 软件使用
5.1 远程登录软件概述
Moba 是最强大的免费终端程序之一,它提供了对各种远程网络功能和工具的访问。有了这个应用程序,您可以从远程位置继续在 Windows 计算机上工作。该软件可以让 Linux 和Windows 用户方便地使用一系列格式。Moba 提供了对 Windows 操作系统上的 Linux 终端的方便访问。Moba 下载着重于将一系列多功能远程网络功能引入到单个程序中。强大的终端包含丰富的功能,从远程有效地工作,通过 MobaXtem,可以在几秒钟内轻松地在 Windows 和 Linux 之间切换。除此之外,还可以访问各种远程网络工具和 Unix 命令,没有任何麻烦。
笔记本通过 Moba 软件连接控制柜需要控制柜支持 ssh,当前出售的控制柜一般会自带客户端软件和服务端软件,可以直接通过 Moba 软件连接。
5.2 软件使用前提要求
- 需要保证笔记本与控制柜处于同一网段;
- 直接从控制柜的示教器操作,设置—网络—ifconfig 界面获取控制柜的 IP 地址,包括主要的 wlan0,eth0 两种。对应的是 WiFi 连接的地址,eth0 为默认以太网连接断开;
- 本地 IP 查询和配置,WIFI 属性/网络适配器属性,确保一致性;
- 有些情况下注意防火墙,注意允许应用通过防火墙,具体相关配置可以参考本手册的 Roboshop 软件安装防火墙设置。
IP 查询结果界面如下所示,图中的案例是在虚拟机获得的 IP 地址,可参考。

5.3 软件安装说明
软件安装与使用说明简要如下,将压缩包拷贝到笔记本中解压。
点击
.exe图标即可执行该软件,如图所示:
进入 moba 软件界面,依次点击 session ,然后进入 ssh ,之后在 Remoto host 栏目下输入指定机器人的 IP 地址,点击 OK 确认。常见的操作说明如下所示:

进入之后,输入 root 登录,密码为 0 或者 1 ,一般为 0 ,之后回车进入管理员后台终端界面,即进入了控制柜内部文件。
查询 IP 地址命令:
ifconfig(Linux) ,ipconfig(Windows)。
5.4 软件使用说明
常用文件夹路径,示教器目录下如下:
- 示教器所属文件夹
/root/auborobotstudio/robotstudio/teachpendant/share/teachpendant/- 工程目录
/root/auborobotstudio/robotstudio/teachpendant/share/teachpendant/script/- 过程目录
/root/auborobotstudio/robotstudio/teachpendant/share/teachpendant/produce/- 脚本目录
/root/auborobotstudio/robotstudio/teachpendant/share/teachpendant/script/- 轨迹目录
/root/auborobotstudio/robotstudio/teachpendant/share/teachpendant/recordtrack/
/root/auborobotstudio/robotstudio/teachpendant/share/teachpendant/offlinetrack/- 数据配置目录
/root/auborobotstudio/robotstudio/teachpendant/share/teachpendant/database/- AGV 日志目录:
/auborobotstudio/robotstudio/teachpendant/bin/agv_plugin_logs
/auborobotstudio/robotstudio/teachpendant/bin/logfiles如图所示,把文件拷贝出来即可:

6 网络调试助手使用说明
网络调试助手是集 TCP/UDP 服务端客户端一体的网络调试工具,可以帮助网络应用设计、开发、测试人员检查所开发的网络应用软硬件的数据收发状况,提高开发的速度,是网络开发人员的常用工具。
网络调试助手(NetAssist)集成了 TCP/UDP 服务端和 TCP/UDP 客户端,服务端可管理多个连接,客户端也可以建立多个链接,各自独立操作,管理方便。操作简捷,只需要输入相应的主机和监听的端听即可,它为使用者提供了多链接和多数据格式解析的功能,成为高效的 TCP/UDP 应用开发助手。
6.1 使用前提要求
- 需要保证笔记本与机器人处于同一网段;
- 直接从机器人的示教器操作,设置—网络—ifconfig 界面获取控制柜 IP 地址,wlan0 对应的是 WiFi 连接的地址,eth0 为默认以太网连接断开;
- 本地 IP 查询和配置,WIFI 属性/网络适配器属性,确保一致性;
- 有些情况下注意防火墙,注意允许应用通过防火墙。
6.2 软件安装与使用说明简要
免安装的软件 NetAssist.exe;
点击.exe 图标即可执行该软件。
确认协议类型 ,远程主机地址和端口 ,案例为机器人作为客户端 192.168.1.101,端口为 1206,本地 IP 地址为 192.168.1.104,属于同一个局域网,如图所示,连接成功。

本机也可以作为服务器端,如图所示:

6.3 软件使用注意事项
6.3.1 机器人请求应答信道
机器人做 TCP 服务端,调度做 TCP 客户端。调度串行发送任务,机器人应答。串行的意思是,调度在发出并收到响应前,不会发送下一条任务。
查询导航任务的状态:
端口:19204 。此端口属于请求应答信道。
6.3.2 机器人数据上报信道
对于复合机器人,TCP 的服务端配置目前只支持 1206 端口,进行调度相关的数据通信。
机器人做 TCP 服务端,调度做 TCP 客户端。当调度通过此信道连接到机器人时,机器人即按照指定的频率,主动向调度推送机器人的数据和状态。
下发导航任务给机器人:
端口:19206 。此端口属于请求应答信道。
注意: 实现调度通信具体使用和说明,详细信息请参考 TCP/IP 通信协议。
7 Modbus 调试助手使用说明
复合机器人集成了 Modbus 模块,具体包括 ModbusRTU 从站和 ModbusTCP 服务器。Modbus 协议的结构通信内容如图所示:

外部 ModbusRTU 主站或者 ModbusTCP 客户端可以和机器人通信或者读取机器人的部分状态。想参考更多具体的协议内容可以参看Modbus 协议官方参考文档。
Modbus TCP 是 Modbus 协议在服务/客户端的实现,是 Modbus 协议在 TCP/IP 层的实现。(注:因为是在 TCP/IP 层的实现,所以通讯是靠 TCP/IP 中的网络层来实现的,这是一种请求/应答的通讯模式)相应站点之间可以进行通讯访问,机器人可以作为从站使用,在作为从站只能使用 502 端口进行通信,且通信协议支持四种对象的类型。

对于需要使用 Modbus RTU 控制机器人的用户,涉及到串行到 TCP 协议的转换,所以需要网关设备做 IP 地址映射,且该网关设备需要有修改 RTU 地址的功能(地址一定要设置正确,否则会出现总线上有多个设备无法与主设备进行报文数据交换的问题),使用转换需要注意以下几点:
- 网关设备需要可以做有线/无线的 IP 地址映射(网关 IP — 机器人IP)
- 需要对网关设备进行 RTU 站点的地址设置,网关设备需要带有此功能
- 从站地址需要设置正确
- 报文的传播方式需要设置网关设备(注意:RTU 模式下一定需要设置从站地址)
连接建立完成之后可以 modbus 通信,具体的数据类型和参数等传输协议,可以参考 modbus 官方说明文档,以及参考 API 说明。

7.1 主站(Poll)软件操作
机器人作为从站(相当于服务器),外部作为主站(相当于客户端)。
- 机器人端配置
打开系统设置,网络属性查看,获得本地 IP 为 172.16.20.88,打开 Modbus 插件,添加设备,IP 和端口配置,之后建立 IO 变量即可。

- 电脑端配置
打开 Modbus Poll ,作为 Poll(主站) ,查看电脑本地 IP 为 172.16.20.76 ,在同一网段需要连接 AGV 的 IP,172.16.20.88,打开 Modbus 助手 Poll 端,进行配置:

之后就能看到变量的状态,也可以读写到寄存器的相应地址对应的变量值了。

7.2 从站(Slave)软件操作
机器人作为主站(相当于作为客户端),外部设备作为从站(相当于服务器)。
- 电脑端配置
打开 Modbus Slave,作为 Slave(从站),查看电脑本地 IP,本地 IP 为 172.16.20.76, 作为从站的 ip 地址,端口为 503 ,如图所示进行配置即可。

显示连接成功。
建议避开 502 固定端口,有可能出现 API 协议的地址/类型冲突,图中为例,以 502 端口,机器人作为从站获取数据,按照协议的输入寄存器获取 AGV 状态。

- 机器人端配置
查看机器人 IP 和状态进入终端,输入 ifconfig 回车,确保在同一个网段。

之后回到示教器端,设置 Modbus 设备的相关属性。如图所示:

之后依次添加 IO 配置即可,实现数据的交互。

弹出窗口连接成功即可实现通信。
7.3 Modbus 通信案例
完整的案例如下所示:
这里分别按照请求和应答模式展开的 Modbus 通信测试,联合机器人和外部设备进行调试和应用。
案例 1:
以机器人作为主站,外部设备作为从站,通过测试得到的结果如下所示,外部设备的 IP 地址为 192.168.1.100 ,机器人的 IP 地址为 192.168.1.X ,以 503 端口为例。通过modbus slave 模拟从站,如下所示

机器人端的配置如下所示:

最终连接成功。
案例 2:
以机器人作为从站,外部设备作为主站,通过测试得到的结果如下所示,机器人的 IP 地址为 172.16.20.112 ,以 502 端口为例。外部设备的 IP 地址为 172.16.20.X 即可。
机器人端的配置如下:

电脑端通过 modbus poll 模拟主站,配置如下:

最终连接成功。
8 调度系统使用说明
8.1 一对多调度系统使用手册
一对多调度系统是为了AGV 在工作的条件下进行任务分配的系统。该系统能极大的减少工程设计的代码量,节约 AGV 重复不必要的时间,为工厂提供更快更高效的工作效率。
一对多调度系统类型
目前一对多调度系统存在两个版本,一个是通用版本,另一个是 PLC 版本。两个版本都有各自的特点。
通用版本可以实现任何设备的调度,该插件在 AGV 内部对如 n 台 CNC 机床进行路径规划和任务分配,一切处理都可通过 AGV 来进行,但该调度系统存在的问题是:该设备创建了多个线程,几个设备就需要创建几个线程,因此如果网络不稳定则存在许多未知问题。该版本要求调度的设备有网络模块的硬性要求。
PLC 版本要求调度设备搭配 PLC 模块,该版本的特点是稳定。至始至终只连接 PLC,因此不存在多线程不稳定问题。PLC 连接需要调度的设备,每个设备对应于 PLC 的一个地址,而该调度系统只读取该规定的寄存器地址,并进行最短路径进行规划、分配任务。缺点是 PLC 是硬件要求,对于 PLC 的工程师有一定水平要求。
8.1.1 环境配置
将插件导入至 AGV 的操作系统的规定路径下。
将 libSchedule.so 或者 libPlcSchedule.so 放进 /root/auborobotstudio/robotstudio/ teachpendant/lib/teachpendant/plugins/ 路径下。最后重启 AGV。
通用版本的一对多调度系统插件自 1.1 开始没有配置文件,由插件自动生成配置文件。但切记不可随意手动修改生成的配置文件,如过在/root/下有 1.0 手动配置的文件时,使用更高版本的插件需将之前的配置文件删除。1.0 版本需要手动导入配置文件,其配置文件如图所示:

Path_tool 为 python 脚本编写的脚本,lansicfg.json 为配置文件,具体的使用参考早期的《一对多调度系统手册》。目前主推 1.2 版本,PLC 版本为 1.0。
插件导入方法多种,可以 U 盘拷入,或者是使用 MobaXterm 等远程软件导入。 网络调试过程中出现问题,参考《网络测试手册》。
8.1.2 通用调度系统
通用调度系统的界面如图所示。
Schedule
Path_set
Slave_set
该版本存在三个模块,分别为 Schedule、Path_set、Slave_set。
Schedule 模块中寄存器类型存在 Coil Status、Input Status、Holding Register、Input Register 四种。这四种类型分别对应 Modbus 的四种类型。开始按钮点击后会显示正在启动中,等待显示按钮变为停止表示初始化成功。停止就是关闭调度系统。还有就是清屏按钮,将屏幕清空。
Path_set 为路径生成的功能,在 from LM 的文本框中选择起始地点,to LM 的文本框子选择结束地点,distance 为两段之间的距离,该距离参考 robotshop 上实际距离填写。注意的是,该处的初始地点和结束地点指的是 robotshop 上两个相邻站点之间的距离,例如 LM1_LM2 的距离为 2,LM2_LM3 的距离为 3,则该模块中填写的就是该两段距离,剩下的比如LM1_LM3 的距离 5会在内部进行计算,LM2_LM1 也会在内部进行计算,无需重复输入。站点中还存在LM1_LM1,该距离为 0,也是在内部计算得出,无需输入。Add 是增减站点路径,以 from LM 和 to LM 的两个值组合成为主键,也就是唯一标识。当记录文件中去存在该段路径,则会提示存在,否则点击后文件会自动添加进去,路径也会重新计算。Remove 是移除路径,主键也与 Add 一样,只不过,该处是主键存在时进行删除,distance 可以随便填写也可删除该路径,最后也会重新计算。Modify 为修改路径,该主键也是一样,该功能在读取主键存在的情况下,修改 distance 的值。
Slave_set 为站点设置功能。该功能的 add、remove 和 modify 与 Path_set 一致,该模块以 IP 地址为主键,进行增删改功能。其中 IP 为 IP 地址,必须唯一。Port 为端口号。Slave_ID 为站点号,也需要唯一,但不是识别的主键。station 为站点号,就是时间站, 目前只能设置以 LM 开头的站点。read_coil 为 Modbus 读取的地址。proj_name 为项目名,要求该项目真实存在。
Path_set 展示
Slave_set 展示
该插件中设置了初始连接中,如果配置文件中的 IP 地址不存在或者连接不成功,那么后续都不会进行连接,停止后重新开始。在调度过程中,如果出现 Modbus 出现掉线,重连三次还不成功将会断开该 IP 连接,后续都不降进行连接读取。在读取Modbus 寄存器地址上的值时,如果读取失败 5 次,那么该 IP 地址也会断开连接,再也不进行连接读取。
8.1.3 基于 PLC 一对多调度系统
PLC 调度系统的界面如下所示。
schedule
path_set
Slave_set
该版本也和通用寄存器一样存在三个模块,分别为 Schedule、Path_set、Slave_set。
Schedule 此处的 ip 地址和端口号为 PLC 设备的,IP 地址的文本框中会自动保存上一次使用的 IP 地址。Connect 按钮可以进行 PLC 的预链接,点击后 connect 后会获取 AGV 中的工程列表,如图所示:

- Schedule 中其他功能与通用版本一致。
- Path_set 模块中与通用版本中的一模一样。
- Slave_set 模块中,主键为寄存器地址,其他剩余的配置与通用版本的一致。
8.2 多对多调度系统 ARDS 使用说明
8.2.1 软件安装
Windows 平台

复合机器人调度系统(ARDS)是一款免安装软件,在 Windows 平台下直接将软件目录下的 ards.exe 文件直接双击打开即可运行。
Ubuntu 平台

在 Linux 平台下,可以直接在终端下将软件目录下的 ards 文件打开即可运行,指令为 ./ ards。
8.2.2 文件配置
- 数据库配置文件配置
运行软件之前需要确认本机电脑端或者要连接的远程电脑已经安装 MySQL 数据库。
数据库下载与安装可以参考MySQL 下载与安装_codelinkworld 的博客-CSDN 。
根据将要使用的 Mysql 数据库配置调度系统软件所 需要 的参数文件 dbconfig.ini,如下图所示:左侧是数据库的相关信息,右侧是相应的 dbconfig.ini 配置设置。

- 数据库配置
机床配置:根据实际情况配置 lathe_info 表里面配置名称、IP 地址、端口号、读寄存器地址、写寄存器地址、机床所在地图的位置及对应的站点。

机器人配置:根据实际情况配置 robot_info 表中的机器人 IP 地址和机器人的名称。

工程名文件配置
根据实际情况配置机床对应的工程名,使用 json 格式,示例如下:
json{ "lathe1": { "1": "proj_1", "2": "proj_2" } }上面的信息代表机床名为 lathe1 的读寄存器的值如果为 1,代表执行名为 proj_1 工程,读寄存器的值如果为 2,代表执行名为 proj_2 的工程,以此类推。
根据实际情况配置小车的充电任务,使用 json 格式,充电工程必须带
ch字母,示例如下:json"robot1": "proj_ch1"
交通管控路口配置
根据实际地图情况进行配置交通路口管控数据表
crossing_info表中的crossing_location(站点名称),location_dir(站点方向),crossing_location_mutex(互斥站点名称)和location_mutex_dir(互斥站点方向)。路口管控数据表

地图中机器人运行的方向示意图

以下图中十字路口举例说明,LMx(dir) 表示在站点 LMx 机器人的运动方向是 dir: LM2(3)、LM3(1)、LM6(4)、LM7(2) 四个路口管控点在路口管控数据表中实现方式如上所示:
- 站点 LM2(3) 与站点 LM6(4) 和 LM7(2) 互斥
- 站点 LM3(1) 与站点 LM6(4) 和 LM7(2) 互斥
- 站点 LM6(4) 与站点 LM2(3) 和 LM3(1) 互斥
- 站点 LM7(2) 与站点 LM2(3) 和 LM3(1) 互斥

地图配置
使用本软件前复合机器人需要用 RoboShop 软件扫描一张可用的地图存储为名为
ards.smap的文件放置在config文件夹下。
8.2.3 界面介绍
主界面 主要包含软件名称、菜单选项(包含设备管理、地图监控、数据显示及用户设置)、最大化\最小化\退出按钮、及菜单选项显示区域四部分。

设备管理
设备管理包含机器人和机床两部分,机器人界面:显示机器人 IP、机器人代号、工作状态(包括空闲、正在工作)及在线状态(在线和离线)。

机床管理界面:显示机床 IP、机床代号、工作状态及在线状态(在线和离线)。

地图显示
左侧包含机器人示意图、机床示意图模块,不同颜色对应不同的机器人和机床的状态,右侧实时显示机床及机器人的位置,可以通过右下方的刷新、放大和缩小按钮来操作地图的显示。

数据统计
可以对机器人的运行数据进行统计,统计某天各个机器人的工作时间、工作功率及行驶里程统计,工作的平均功率图表显示。
数据统计界面

功率图表界面显示

对机器人的一天的任务执行数据进行统计:

对机器人工作的电流做统计:

用户设置
- 权限设置(待开发)
- 设备设置:包含机器人设置、机床设置和模式设置
- 机器人设置:可以修改机器人属性,增加或者删除机器人
- 机床设置:可以修改机床属性,增加或者删除机器人
- 模式设置主要是根据需求选择软件运行模式,只有勾选了地图监控模式软件才会启用地图监控功能,修改功能后需要点击下方确认修改模式按钮软件运行模式方可生效。
用户设置界面

机器人设置界面

- 修改:根据机器人编号,可以修改指定编号机器人的 IP 地址和名称
- 删除:根据机器人 IP,可以删除指定 IP 地址的机器人
- 增加:输入机器人 IP 地址和机器人名称,可以增加指定 IP 地址和名称的机器人
机床设置界面

- 修改:根据机床编号,可以修改指定编号机床的名称、IP 地址、端口号、读取寄存器地址、写入寄存器地址、机床 x 坐标、机床 y 坐标和机床位置值
- 删除:根据机床 IP,可以删除指定 IP 地址的机床
- 增加:输入机床的名称、IP 地址、端口号、读取寄存器地址、写入寄存器地址、机床 x 坐标、机床 y 坐标和机床位置值,可以增加指定机床
8.2.4 注意事项
- 使用同一复合机器人调度系统软件的所有机器人必须使用相同的地图。
- 复合机器人调度软件只能开启一个,不能同时开启多个调度系统软件。
- 复合机器人所运行区域必须保证网络全覆盖,确保网络信号稳定(原因详见 ARDS 交通管制测试报告第二期测试报告,文件名是”ARDS调度系统测试报告.pdf“)。
- 使用调度系统软件的电脑必须保证运行软件期间网络稳定连接,不得休眠。
- 使用调度系统时保证路口管控点设置位置能保证互斥路口的机器人可 以无障碍通过,注意保证路口管控点在机器人的安全距离外。
- 使用调度系统前必须保证复合机器人已经成功定位。
9 视觉系统使用说明
9.1 视觉系统概述
机器人视觉系统的优势是节省设备空间、便于使用、便于调试。视觉系统提供特征码定位、模板匹配的开环验证功能,满足大部分应用场景下的视觉定位、引导需求。同时,提供视觉相机一键标定,并且支持视觉功能在多台机器人之间的快速复制。
在应用过程中,提供二维码的快速安装方案以及操作培训。在降低使用人员的调试难度以及学习成本的同时,搭建一套安全稳定、简单易用、部署灵活的应用开发平台。
9.2 视觉软件安装
安装步骤如下:
将安装文件拷贝至机器人控制器中,包括安装脚本
aubovisioninstall.sh与安装包aubovisioninstall_*.zip(后缀为版本号)。
将文件拷贝到示教器的主页 home 目录下。

终端运行安装脚本,三行命令分别如下:
bashcd /root chmod +x aubovisioninstall.sh ./aubovisioninstall.sh等待终端显示安装完成,如下所示:

之后重启即可软件部分安装完毕。
首次完成插件安装需在插件界面输入注册码,注册码与硬件码绑定,参考
code.txt文件输入完成注册。 如插件的使用权限与机器人硬件绑定,在第一次使用前需在注册界面输入对应的验证码。

9.3 视觉硬件安装和参数配置
9.3.1 电气线路安装
硬件安装部分的参考海康工业相机 IO 触发相机光源接线及配置方法。 相机的说明书一般的引脚示意如下:

光源外形如下图:

根据海康标配 6pin 线缆绘制,第三方线缆, 自行根据线标对应。一般的引脚和示意表请参考说明书。标准的案例如下:

对其中的相机引线 line1 输出接线方法示意如下:

引线的 Line 1 的参考参数是:
最大输出电流为 25 mA 。外部电压为 3.3 V 且外部电阻为 1 KΩ的情况下,输出逻辑低电平为 575mV ,输出逻辑高电平为 3.3 V。
输出 PNP 设备的接线示意图如下所示:

输出 NPN 设备的接线方法如下。
接线方法 1
上拉电源提供驱动电压输出,触发外部设备(推荐) (1)若 NPN 设备的 VCC 为 24 V ,推荐使用 1 ~ 4.7 KΩ的上拉电阻。 (2)若 NPN 设备的 VCC 为 12 V ,推荐使用 1 KΩ的上拉电阻。

接线方法 2
VCC 与信号地之间电势差大于 12V 时,建议在 VCC 与相机输出之间串联 1K 大小的电阻,如下所示。

相机与光源的接线步骤参考如下:
- 相机电源正(橙)接复合机器人接口板 24V 输出
- 相机电源地(灰)接复合机器人接口板 0V
- 光耦隔离输出 (蓝)接光源电源地
- 光耦隔离信号地 (绿)接复合机器人接口板 0V
- 光源电源接复合机器人接口板 24V 输出
- 网线的输入输出端分别对应连接到端子面板和相机通讯口
线路连接之后,关机检查正常之后,可以通电测试,正常的结果是有蓝色电源指示灯和黄色信号灯亮起,则表明硬件连接成功。
9.3.2 相机基本参数设置
对于相机的基本参数配置,即相机硬件输出,可以参考这里的用法:参考用法 。主要分为两类,一类是 strobe 输出,配合频闪光源拍摄,IO 输出跟随曝光,输出周期与曝光周期同步。一类是 software 输出,用户自定义时刻输出,用户自主控制,必要时刻输出 OK 或 NG 信号。其中主要是相机硬件 strobe 输出配置如下。
相机使用 strobe 输出,配合频闪光源拍摄,IO 输出跟随曝光,输出周期与曝光周期同步。

一般的操作流程如下,首先打开终端,进入命令行,输入如下指令:
cd /opt/MVS/bin/
./MVS即可打开软件进行配置,首先连接相机。
配置输入信号源:选择 Line1
Line mode 为 strobe 选项,不做参数配置
测试 line inverter ,反复点击,可测试电平变化,验证接线是否正常
配置输出事件源 Line source:选择 Exposure Start Active
配置输出信号时序:StrobeLineDuration(信号持续时间,默认 0 ,持续时间等同曝光时间;设置其他值,就是其他值时间)、StrobeLineDelay(延时输出,从曝光开始,延时多久输出) 、StrobeLinePreDelay(提前输出,曝光延后开始)
使能输出,strobe Enable(使能后,IO 输出就跟随曝光开始而进行输出)
保存设置。用户设置选项与默认用户设置选择 User Set 1 ,点击用户设置保存。

配置完成,相机断电重启即可。
9.4 视觉插件操作界面说明
9.4.1 插件路径
AuboVision 视觉系统以插件形式部署于示教器软件 AUBOPE 中,AuboVision 插件路径为:扩展 ->Peripheral -> AuboVision。
插件中包含五个选项卡:
- 定位: 选择视觉定位方式、制作模板
- 路点编辑: 编辑示教点位、生成视觉脚本
- 标定:编辑手眼标定路点、计算手眼标定结果
- 示教:控制机械臂运动
- 配置:调整相机参数
视觉插件的主界面如下所示:

9.4.2 定位选项卡
AuboVision 插件定位选项卡主要功能包括:
1. 视觉定位类型选择:
模板定位(2D) 由用户自定义 ROI 以及识别对象,如工件,指定 marker 等。

特征码定位(2.5D) 对指定特征码进行识别,不要求且不建议将相机光轴垂直于特征码所在平面拍摄。

2. 模板定位参数配置: 特征点数量,匹配阈值
3. 特征码定位参数配置:循环周期, 目标精度
4. 2D 标定:
仅在使用模板定位时使用。在相机调平后,通过识别标定板计算像素距离,用于后续模板匹配算法使用。

- 模板名字:用户可自定义模板名称。若不输入名称,模板名称将随机生成。
- 模板列表:选择以制作的模板
- 添加模板:制作模板并添加至模板列表中
- 保存参数:将模板、参数保存至本地。模板保存后即可通过开环验证或闭环验证调用。
- 开环验证:根据选择的算法类型以及模板进行视觉算法开环验证
- 闭环验证:根据选择的算法类型以及模板进行视觉算法闭环验证
9.4.3 路点编辑选项卡
AuboVision 插件路点编辑选项卡主要功能包括:
- 添加路点:添加需要视觉补偿的示教点位。
- 运动到路点:机械臂运动至路点列表中用户所选路点。
- 删除路点:移除路点列表中用户所选路点。
- 生成脚本:根据用户在界面中选择的定位类型、模板名称、视觉验证类型、示教点位运动类型、示教点位自动生成视觉脚本。

9.4.4 标定选项卡
AuboVison 插件标定选项卡主要功能包括:
添加姿态:触发相机拍照对如下图所示标定板进行识别。 若成功识别标定板,下方文本框中将提示识别成功,将机械臂当前姿态记录为有效标定姿态并添加至标定路点列表中。 若识别失败,则会在下方文本框中提示识别失败,需要重新调整姿态。

删除姿态:移除标定路点列表中用户所选路点。
保存姿态:将标定路点列表中的机械臂姿态信息保存至本地。
自动标定:机械臂根据用户已保存的姿态信息进行运动,尝试识别标定板,最终返回手眼标定结果。
计算标定结果:计算手眼标定结果,并在下方文本框中输出。

9.4.5 示教选项卡
AuboVision 插件示教选项卡主要功能包括:
控制机械臂进行关节运动
控制机械臂在基坐标系下进行直线运动
控制机械臂在法兰坐标系下进行末端姿态调整

9.4.6 配置选项卡
AuboVision 插件配置选项卡主要功能包括: 调整白平衡、设置相机曝光。

9.5 手眼标定
9.5.1 手动手眼标定
基本要求和操作说明:
确定标定位置,放置标定板,调整镜头焦距、光圈,确保标定板在相机画面中清晰。
在连续拍照验证选项中选择标定,点击连续拍照验证按钮开始拍照。
移动机械臂使标定板进入相机视野,并保证标定板上特征点全识别。

在界面下方文本框中提示识别单图成功并且相机画面中标定板特征点被标记后,点击添加机器人姿态,等待添加成功。
变化机器人姿态,重复 2,3,4 步骤至少 15 次。
点击保存姿态。
点击计算标定结果;若下方文本框提示标定结果验证成功,手眼标定完成;若下方文本框中提示标定结果验证失败,需调整机械臂标定姿态,重新计算标定结果。
9.5.2 自动手眼标定
自动标定将根据用户保存的手眼标定姿态控制机械臂进行运动,并对标定板进行识别。
- 点击自动标定
- 若已保存的手眼标定姿态小于 5 个, 自动标定将不会开始
- 等待自动标定结束,查看标定结果
自动标定过程中,若在某个姿态未成功识别标定板,该姿态将被移除。用户可根据需要,重新调整手眼标定姿态。
9.6 特征码定位
基本步骤如下:
- 点击定位选项卡,定位类型选择特征码定位
- 设置循环周期(默认为 10),设置目标精度(默认为 0.5)
- 选择拍照位拍照高度: 与相机镜头、环境光照、末端设备尺寸等多种因素相关。以使用 12mm 镜头,Φ90 相机光源,末端设备长度为 200mm为参考。 (1)拍摄高度通常为 200mm 左右。 (2)拍照角度:特征码与相机成 45 度左右(确保可以识别出 x ,y ,z 轴, 避免相机光轴与特征码平面垂直拍摄)
- 输入特征码定位模板名称(可选)
- 点击添加模板 (1)相机画面中特征码将被标记,并显示特征码的 x ,y ,z 轴 (2)特点击保存参数
- 在模板列表中选择建立的模板名称,点击开环或闭环验证,检验特征码定位模板是否制作成功
- 验证成功后,点击路点编辑选项卡
- 定位类型选择特征码定位
- 模板列表选择建立的模板名称
- 进行机械臂点位示教,在插件界面选择需要的运动类型,点击添加路点
- 完成所有路点添加后,选择视觉验证类型,默认为开环验证
- 点击生成脚本
特征码定位脚本名称为:hmakescript+ 特征码定位模板名称征码中二维码的识别率越高,最终视觉引导精度越高。

9.7 模板定位
基本步骤如下:
点击定位选项卡
定位类型选择模板定位
设置特征点数量(默认为 256),设置匹配阈值(默认为 90)
在目标模板所在平面进行 2D 标定 (1)在连续拍照验证选项中选择调平选项 (2)点击连续拍照验证按钮,对标定板进行调平验证 (3)手动调整机械臂姿态,使相机光轴垂直于目标模板所在平面 (4)若调平完成,相机画面中标定板将被绿色方框围起;若调平未完成,相机画面中标定板将被红色方框围起 (5)调平完成后,关闭连续拍照,点击 2D 标定 (6)等待标定完成,下方文本框显示像素距离
将目标模板移入相机视野,连续拍照验证选项选择默认选项,触发拍照
在相机图像中手动拖拽图形 ROI ,框选模板范围

输入模板定位模板名称(可选)
点击添加模板,等待模板制作完成
点击保存参数
在模板列表选择建立的模板名称,点击开环或闭环验证,检验模板定位模板是否制作成功

验证成功后,点击路点编辑选项卡
定位类型选择模板定位
模板列表选择建立的模板名称
进行机械臂点位示教,在插件界面选择需要的运动类型,点击添加路点
完成所有路点添加后,选择视觉验证类型,默认为开环验证
点击生成脚本
模板定位脚本名称为:rmakescript+ 模板定位模板名称。
