You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

3.2 KiB

服务器地址:mqtt://192.168.87.12:1883

业务流程

sequenceDiagram
    participant 机器人
    participant 消解仪
    机器人->>消解仪: 创建任务
    Note right of 消解仪 : 开门
    消解仪->>机器人: 放入试管架
    机器人->>消解仪: 试管架已放入
    Note right of 消解仪 : 关门
    Note right of 消解仪 : 执行消解步骤
    Note right of 消解仪 : 消解完成,取出试管架
    Note right of 消解仪 : 开门
    消解仪->>机器人: 取出试管架
    机器人->>消解仪: 试管架已取出
    Note right of 消解仪 : 关门
    Note right of 消解仪 : 异常处理结束,取出异常试管
    Note right of 消解仪 : 开门
    消解仪->>机器人: 放入空试管架
    机器人->>消解仪: 试管架已放入
    Note right of 消解仪 : 关门

任务创建

发布至: stw-80a

{
    "action": "StartNewDigestion",
    "params": {
        "taskId" : "00000000-0000-0000-0000-000000000000",
        "name" : "流程测试",
        "batchNo" : "TR-01",
        "tubes" : [{"no":"TR-01-01"},{"no":"TR-01-02"}, ... ]
    }
}
  • taskId : 唯一
  • name : 消解配方名称
  • batchNo : 批次号
  • tubes : 试管列表,依次对应试管架中 1-16个孔位 ,当试管 no 属性为空时表示该孔位试管不存在。

放入试管架

任务创建后,设备自动打开柜门,准备放入试管架位置。 当准备完成后通知机器人将试管架放入。

发布至 :robot

{
    "src" : "stw-80a"
    "action" : "TubeRackPutIn",
    "params" : {
    	"taskId" : "00000000-0000-0000-0000-000000000000",
    	"batchNo":"TR-01"
    },
}

试管架已放入

当试管架放入完成后,通知设备放入操作完成,可以继续执行后续步骤。

发布至: stw-80a

{
    "taskId" : "00000000-0000-0000-0000-000000000000",
    "action" : "TubeRackPutInDone",
    "params" : {}
}

取出试管架

当设备中存在消解完成的批次时,将会打开柜门通知机器人将消解完成的试管架取出设备。 需要注意的是, 除消解完成之外,仍然存在其他情况需要取出试管架,但只需执行取出操作即可。

发布至 :robot

{
    "src" : "stw-80a"
    "action" : "TubeRackTakeOut",
    "params" : {
    	"taskId" : "00000000-0000-0000-0000-000000000000",
    	"batchNo":"TR-01"
    },
}

试管架已取出

当机器人将试管架取出完成后需要通知设备试管架已经取出,则设备将会关闭柜门继续执行后续操作。

发布至: stw-80a

{
    "taskId" : "00000000-0000-0000-0000-000000000000",
    "action" : "TubeRackTakeOutDone",
    "params" : {}
}

放入空试管架

在设备进行异常处理时,需要将异常处理区中已经处理完成的试管取出,则需要放入一个空的试管架来放置已完成的试管。 当机器人收到该消息后,需要将空试管架放入设备内, 并在放置完成后发送 试管架已放置完成 的消息。

发布至 :robot

{
    "src" : "stw-80a"
    "action" : "EmptyTubeRackPutIn",
    "params" : {
    	"taskId" : "00000000-0000-0000-0000-000000000000",
    	"batchNo":"TR-01"
    },
}