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.

191 lines
4.3 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
1 year ago
1 year 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. 参数类型,模块参数:
  41. 模块名称,模块ID,参数ID,参数数值,参数名称
  42. 前端页面:
  43. 一级菜单,模块名称
  44. 二级菜单,参数列表
  45. 功能:
  46. 改,查,刷新到硬件
  47. 后端逻辑:
  48. 执行刷新到硬件后,参数全刷新到底层硬件
  49. 设备开机后,
  50. 首先自动刷新所有参数到硬件。
  51. ```
  52. ```
  53. 硬件服务目标
  54. 单独调试每一个业务动作
  55. 硬件服务参数维护
  56. 1. 每个服务一个数据库
  57. 2. 数据格式为key-val
  58. 表单格式:
  59. key,chName,valType,val
  60. valType:
  61. float
  62. int
  63. bool
  64. Pos3d
  65. RectangularPosSet
  66. ```
  67. 前后端交互:
  68. ```
  69. 前端的代码:
  70. 1. 弹出提示框
  71. 2. 用户交互
  72. 3. 提交数据
  73. 4. 触发机械动作
  74. 后端代码:业务逻辑
  75. 约定:
  76. 1.只要是触发短暂的机械动作,前端均弹出蒙板加载页面。(短暂意味着,不可中断,几分钟的执行完成)
  77. 2.设备主逻辑(非阻塞,调用后端方法)
  78. 启动
  79. 停止
  80. 暂停
  81. 3.配置提交,无机械动作,直接提交到数据库。
  82. ```
  83. ```
  84. 具体业务:
  85. 1. 系统初始化
  86. 登录后,弹出提示话,询问用户是否进行设备初始化。
  87. 如何实现:
  88. 页面切换,弹出提示框,用户点击确认,提交初始化请求到后台。
  89. 后台Service阻塞执行动作,返回执行结果。执行结果中携带是否执行成功。
  90. 2.
  91. 前端:
  92. 1. 弹窗信息提示
  93. 2.
  94. 错误信息的展示:
  95. 后端抛出错误事件
  96. 异常中携带用于展示的错误信息。
  97. 后端执行方法,返回错误码,前端直接显示错误码的信息即可。
  98. 错误码对应的中英文字符串存储在数据库中。
  99. 执行动作,需要执行一些前置动作。由前端进行状态检查,确定需要执行前置动作后,弹出提示框,用户点击确认,然后执行动作。
  100. 哪些动作需要蒙版:
  101. 1. 非设备启动动作外均需要蒙版
  102. 2. 项目手动配置中,根据耗材的减少自动更新状态信息。
  103. 1.总数从后端拿到
  104. 2.用户每提交和选中一个项目后,向后台提交配置,同时返回剩余量。
  105. 3.
  106. *:前端每一次点击,将更新的内容提交到后台,后台返回前端当前页面所有状态信息。(非表单信息)
  107. *:
  108. 后台存储:
  109. 耗材总数
  110. ```
  111. ```
  112. ```
  113. 1. 急诊逻辑
  114. 点击急诊位
  115. ---> 弹出是否添加急诊
  116. ---> 点击确认
  117. ---> 弹出急诊添加涉及到的信息框
  118. 配置好信息后 ---> 点击添加
  119. ```
  120. ```
  121. 1. 执行机械相关的动作都需要加载一个蒙版
  122. 2. 非机械相关的动作,无须蒙版
  123. 3. 每次提交一次请求,都返回两类信息
  124. 1. 是否弹出错误提示框
  125. 2. 全部的前端状态信息。
  126. 4.
  127. ```
  128. ```