一、openTCS概览
1. openTCS操作流程
- 打开ModelEditor设置点、路线、装货卸货等信息并保存模型
- 打开Kernel和KernelControlCenter
- 在ModelEditor上传模型
- 打开KernelControlCenter设置车辆信息
- 打开OperationsDesk
- 打开OperationsDesk设置小车模式为可利用,并创建订单
2. openTCS基本概念
- 路由(Route) : 决定了车辆通过什么样的方式和算法来获得一段路径,未来车辆将沿着此路径运行。
- 派遣(Dispacher): 决定了一个订单应该关联哪一辆小车,即为订单分配车辆和为车辆分配订单。
- 调度(Schedule):狭义上的调度,交通管制的核心,决定了何时分配共享资源,何时释放拥有的资源。
二、openTCS源码分析
1. TransportOrder相关源码
- opentcs-5.8.1\openTCS-API-Base\src\main\java\org\opentcs\data\order\TransportOrder.java:表示运输单实体类,该类具有八种状态,分别为RAW、ACTIVE、DISPATCHABLE、BEING_PROCESSED、WITHDRAWN、FINISHED、FAILED、UNROUTABLE。
- opentcs-5.8.1\openTCS-API-Base\src\main\java\org\opentcs\access\to\order\TransportOrderCreationTO.java:该类包含要访问的目的地序列以及应该在该处执行的序列,作为TransportOrderService.createTransportOrder()方法的参数,主要用于创建TransportOrder.java类。
- opentcs-5.8.1\openTCS-API-Base\src\main\java\org\opentcs\data\order\DriveOrder.java:该类是TransportOrder.java的一个属性,一旦程序将TransportOrder分配给车辆,就会为TransportOrder的每个DriveOrders计算一条路线,然后将这些路线存储在相应的DriveOrders中。
- opentcs-5.8.1\openTCS-API-Base\src\main\java\org\opentcs\drivers\vehicle\MovementCommand.java:一旦车辆能够处理DriveOrder,其路线的单个Steps就会映射到MovementCommands。这些MovementCommands包含车辆驾驶员到达最终目的地并在那里执行所需操作所需的所有信息。