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.

259 lines
4.9 KiB

1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
10 months ago
1 year ago
11 months ago
11 months ago
11 months ago
1 year ago
11 months ago
1 year ago
11 months ago
1 year ago
11 months ago
1 year ago
11 months ago
1 year ago
11 months ago
1 year ago
11 months ago
1 year ago
11 months ago
1 year ago
11 months ago
1 year ago
11 months ago
1 year ago
11 months ago
1 year ago
11 months ago
1 year ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
  1. ```
  2. TODO:
  3. 1. 数据库文件是否被破坏检查
  4. 2. 数据库文件如果被破坏,自动恢复默认配置
  5. 3. 添加归零保护,底层检测,如果电机未归零就执行moveTo,则报错。
  6. 坐标XY方向约定:
  7. 0 ----------------------->
  8. | (X)
  9. |
  10. |
  11. |
  12. |
  13. |
  14. v(Y)
  15. 舵机位置约定:
  16. 抓手
  17. 1.夹紧位置为0
  18. 2.最大张开位置为300
  19. 3.垂直位置70
  20. 水平位置
  21. 初始位置为0
  22. 2.水平移动舵机初始化位置为200(处于设备最后端)
  23. 复位要求:
  24. 1. 板夹仓推杆电机需要处于零点位置
  25. 2. 光学模组推杆电机需要处于零点位置
  26. 3. 试管架通道中没有试管架
  27. 4. 出料口没有试管架
  28. 5. 进出料位置没有试管
  29. 逻辑漏洞
  30. 1.高试管如果脱帽,会被识别成低试管。
  31. TODO:
  32. 1.想办法解决
  33. 4:号仓位退不出
  34. 14
  35. ```
  36. ```
  37. <!-- 耗材 -->
  38. <!-- 添加样本 -->
  39. 入料:
  40. while(true)
  41. {
  42. }
  43. <!-- startReaction -->
  44. ```
  45. ```
  46. 第一层服务
  47. FrontEndEventRouter 前端事件路由器
  48. 用户服务:(OK)
  49. 1.添加
  50. 2.删除
  51. 3.修改
  52. ID卡服务:
  53. 1.插入检测,插入事件上报(Service,Fn)
  54. 2.删除
  55. 3.查询
  56. 系统服务:
  57. 1.时间修改
  58. 2.本机IP
  59. 系统配置服务:
  60. 1.
  61. 设备初始化服务:
  62. 设备初始化运行前检查
  63. 耗材扫描服务:
  64. 样本添加服务:
  65. 主运行服务:
  66. 入料与预处理控制服务:
  67. 滴定
  68. 反应
  69. 设备运行状态服务:
  70. ------------------------------------------------
  71. 第二层服务:
  72. 硬件层
  73. 光学标定服务:
  74. 报表打印服务:
  75. 开机---> 设备不动
  76. service
  77. core_service
  78. event_bus
  79. app_service
  80. hardware_service
  81. setting_service
  82. appSettingService
  83. TODO:
  84. 初始化服务
  85. 物料扫描服务
  86. 入料服务
  87. 预处理服务
  88. 孵育服务
  89. 取样与反应服务
  90. ```
  91. ```
  92. ```
  93. ```
  94. 动作:
  95. 入料并扫描
  96. 准备下一个样本
  97. 条件: 当前正在处理的样本处理完成 &&
  98. 急诊位Pending | 还有剩余试管未处理
  99. 样本处理
  100. BEFORE_PROCESS 预处理A(脱帽,摇匀)
  101. BEFORE_PROCESS 预处理B(hbot取tip头,移动到待机位)
  102. BEFORE_PROCESS 预处理C(推出反应板夹)
  103. PROCESS 处理(取样,处理,滴定)
  104. AFTER_PROCESS 后处理
  105. 将反应板推出到光学扫描位
  106. 光学扫描
  107. 代码规范
  108. 1. 什么样的检查写在动作中?
  109. 需要进行报错处理的检查写在步骤中
  110. ```
  111. ```
  112. 任务列表:
  113. 0. 重新思考整个系统的状态
  114. 1. 尽可能完成整个流程的控制,如果中间缺少某些位置参数,则只修改状态,让整个流程执行下去。
  115. 2. 支持急诊位置
  116. 3. 根据配置,修改对应的动作的细节,使其支持更多的试管架类型,更多的项目类型。
  117. 4. 完善日志
  118. 3. 完成剩余动作的校准工作。(取样本,取耗材,滴定,光学扫描,结果分析)
  119. 5. 添加温度控制。
  120. 5. 支持吸空检测。
  121. 6. 支持反应板夹类型检测。
  122. ```
  123. ```
  124. TODO:
  125. 1. 如果当前板夹仓对应位置的耗材批次码没有发生变化,则耗材量不重新初始化。
  126. 2. tip头只有在第一次扫描时,才会初始化其数量是满的。
  127. ```
  128. ```
  129. TODO:
  130. 1. 软件启动后读取所有单片机版本号。
  131. 2. 添加温度控制服务。(不用向前台提供接口)
  132. 3. 扫描耗材时,检查ID卡,同时检查温度是否一致。
  133. 4. MainFlowCtrl监听,温度控制异常事件,当发生异常时,主动暂停MainFlowCtrl
  134. 5. 打印结果
  135. 6. 支持扫码枪
  136. 添加DEBUG模式,
  137. 需要模拟硬件行为的地方。
  138. 1. 耗材扫描
  139. 2. 初始化
  140. 3. 工作流中的所有动作
  141. 需要产生的虚假行为
  142. 1. 触发.提供插入一个假的ID卡配置的事件
  143. 2. 触发.提供假的耗材配置
  144. 3. 触发.提供假的样本
  145. 4. 触发.添加一个假的急诊
  146. 为前台提供的接口:
  147. 设备控制
  148. 主流程控制
  149. 扫描耗材
  150. 添加急诊
  151. 开关机
  152. 配置:
  153. xxx
  154. xxx
  155. xxx
  156. 数据
  157. 项目管理
  158. 用户接口
  159. 事件
  160. ...
  161. 错误码
  162. ...
  163. ```
  164. ```
  165. TODO:
  166. 单片机层添加急停指令,同时添加急停错误。
  167. ```
  168. ```angular2html
  169. 查看服务的日志
  170. journalctl -u zapp.service -n 100
  171. ```