查看“使用手册 - MDCS适配流程说明”的源代码
←
使用手册 - MDCS适配流程说明
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
管理员
您可以查看和复制此页面的源代码。
== 配置流程 == [[文件:Qwe1.png|852x852像素]] [[文件:MDCS部署方法介绍-PPT 03.png|900x900像素]] [[文件:车体配置流程 00.png|1681x1681像素]] ==== MedullaAdapter车体适配-目录 ==== • {ModelName}Cart.cs • 定义车体信号(AsUpperIO、AsLowerIO、IOObjectMonitor),重载Init • 若干Routine.cs • 通常包括MotorRoutine、IORoutine、BatteryRoutine等 • 通信协议文件(PLC、ModBus、CAN等) • {ModelName}Remote.cs • 遥控器,用于测试运动控制是否正确(控制权限相当于Clumsy) ==== MedullaAdapter车体适配 ==== '''• {ModelName}Cart.cs''' • 重载Init()函数:初始化时调用,通常对通信接口进行初始化 • 定义以下public member: • AsUpperIO:上位向硬件发送的信号 • AsLowerIO:硬件向上位发送的信号 • IOObjectMonitor:其他通信协议中包含的信号,无需与上位交互 '''• 若干Routine.cs''' • 重载Operation()函数:指定scanInterval,以该周期重复执行 Operation中读写信号的代码 • {ModelName}Remote.cs • 重载Operation()函数:使用Throttle、DPad、Button等预定义好 的遥控器元件,实现对车体信号的遥控逻辑。可使用Medulla内 置的remote简单遥控器界面,也可以使用NetRemote界面 ==== Detour建图 ==== • 里程计->添加里程计->2D激光 Odometry_0->启动 • 单线激光SLAM->添加图层->mainmap->闭环检测开启->建图模式 • 概览->车体布局->编辑->选中单线雷达frontlidar->根据实际雷达更 改以下参数: • angleSgn:1为逆时针,-1为顺时针 • endAngle:扫描结束角度 • rangeStartAngle:有效扫描角度起始位置 • rangeEndAngle:有效扫描角度结束位置 • x,y,th:相对于轮轴中心的偏移量 • 在场地中移动车辆 • 完成建图后: • 单线激光SLAM->mainmap->另存图层 • 主菜单->导航配置->保存 ==== ClumsyAdapter运动适配-目录 ==== '''• {ModelName}cDef.cs''' • 定义车体信号(AsUpperIO、AsLowerIO),重载Init、DriveStop • Movements.cs • 定义“单元动作”的集合,并实现对应的UI测试按钮 • {ModelName}Config.cs • 运动参数 • AGV.cs • 对接调度系统的接口(若干函数) '''• {ModelName}cDef.cs''' • 重新声明C中需要用到的信号 • 声明静态成员self • 重载Init()函数:初始化时调用。一般需写self = this; ClumsyLib.Capture(); • 定义Drive类型,重载Write()函数。例如DifferentialWriterClass,WriteLR • 重载DriveStop()函数:刹车时调用的函数 ClumsyAdapter运动适配 '''• Movements.cs''' • 定义“单元动作”MovementDefinition。主要是重载Get()函数 (Generator Function,返回迭代器) • 定义“动作测试按钮”MovementTest。重载Test()函数和TestStop() 函数 '''• AGV.cs''' • 定义若干函数,对应Simple调度时下发的动作命令。主要使用 Movements.cs中定义的“单元动作”MovementDefinition ===== Simple建图 ===== '''• 添加车辆''' • 将车开至业务站点所在位置,在UI上对应位置添加站点 • 添加路径,连接站点 • 编辑站点、路径的属性(与AMRScene中SiteFields和TrackFields对 应) • 编辑Simple上的车辆属性(speed等) ===== AMRScene业务场景适配 ===== '''• {ModelName}Car.cs''' • 定义SiteFields和TrackFields • 定义若干TemplateTrackCoderSettings • 定义若干TemplateSiteCoderSettings • 其中: • priority:值越大者越先检查 • useVerb:定义触发所需满足的条件 • blockVerb:终止符。为true则屏蔽剩下未检查的coder • templateString:满足条件时编译生成的命令 ===== 雷达适配 ===== • 雷达驱动类派生于Lidar2DIOObject • 将点云数据整理为LidarPoint2D格式 • th:-180度~180度,逆时针为角度正方向,x轴正方向为0度 • d:距离,单位mm • intensity:强度,0到1 • 提交每帧数据时: • 将数据存至LidarPoint2D[] cachedLidar • 更新scanC(帧号),同时frame += 1 • output()将数据同步至共享内存 [[文件:Qwe119.png]]
返回
使用手册 - MDCS适配流程说明
。
导航菜单
个人工具
中文(中国大陆)
创建账号
登录
命名空间
页面
讨论
大陆简体
查看
阅读
查看源代码
查看历史
更多
导航
首页
最近更改
随机页面
MediaWiki帮助
工具
链入页面
相关更改
特殊页面
页面信息