FAQ

来自MDCS wiki
Artheru讨论 | 贡献2024年1月25日 (四) 17:16的版本
跳到导航 跳到搜索

调试原理性问题

  • Q: Simple下任务后,Clumsy的表现和预期不一致,或者做完任务后Simple还报错了,如何调试?
    • A: Simple首先通过对车进行路径搜索(SegmentPlan.FindRoute)搜索到路径,然后通过Compile调用车体类挂载的Coder生成代码,最后通过车体类继承的actualSendScript进行脚本下发。对于Clumsy而言,下发的脚本会保存于debug目录下。首先检查脚本是否正确,然后调试Clumsy插件中继承SimpleAGVInterface的类(一般为AGV类),是否其函数按照正常的方法实现了(见通用约定)。
  • Q: Simple不给锁,怎么看原因?
    • A: 点开小车的状态面板,看TcStat交管信息。这个字段里显示了为什么不下发锁的原因。
  • Q: Simple似乎死锁了?
    • A: Simple非常非常难遇到真的死锁。可以看BlockedBy字段来判断到底是真的死锁了,还是因为路线图设计问题导致的关键等待。可能所有的车都在等一个关键车下发路线。
  • Q: Simple包络似乎错了,两个车包络明明冲突但相撞了。
    • A: 检查经过的路径的layerName,在不同layerName上的包络互相不冲突。比如layerName