From eff35f5c915ddaa15cced3796ce2ba7c93ea5029 Mon Sep 17 00:00:00 2001 From: zhaohe Date: Thu, 5 Oct 2023 17:28:59 +0800 Subject: [PATCH] update --- api/i_pipette_module.hpp | 6 +++++- zcancmder_protocol.hpp | 45 +++++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 48 insertions(+), 3 deletions(-) diff --git a/api/i_pipette_module.hpp b/api/i_pipette_module.hpp index cfd4b00..a9df333 100644 --- a/api/i_pipette_module.hpp +++ b/api/i_pipette_module.hpp @@ -5,6 +5,7 @@ #include #include "basic_type.hpp" +#include "i_step_motor_ctrl_module.hpp" // namespace iflytop { @@ -32,7 +33,10 @@ class I_PipetteModule { virtual int32_t stop(u8 stop_type) = 0; virtual int32_t zero_pos_calibrate(action_cb_status_t status_cb) = 0; - virtual int32_t reset_device(action_cb_status_t status_cb) = 0; + // virtual int32_t reset_device(action_cb_status_t status_cb) = 0; + + virtual int32_t zmotor_reset(action_cb_status_t status_cb) = 0; + virtual int32_t pipette_reset(action_cb_status_t status_cb) = 0; virtual int32_t take_tip(s16 vel, s16 height_mm, s16 tip_hight_mm, action_cb_status_t status_cb) = 0; virtual int32_t remove_tip(s16 vel, s16 height_mm, action_cb_status_t status_cb) = 0; diff --git a/zcancmder_protocol.hpp b/zcancmder_protocol.hpp index 09b4c3c..1294ad9 100644 --- a/zcancmder_protocol.hpp +++ b/zcancmder_protocol.hpp @@ -167,10 +167,50 @@ typedef enum { kcmd_serial_module_read_status = CMDID(1015, 50), // 读取模块状态信息 kcmd_serial_module_set_cfg = CMDID(1015, 100), // 串口透传设置配置 - // 移液枪控制 +// 移液枪控制 +/******************************************************************************* + * |Module_1016:移液枪控制 * + *******************************************************************************/ + +#if 0 + virtual int32_t enable(u8 enable) = 0; + virtual int32_t stop(u8 stop_type) = 0; + + virtual int32_t zero_pos_calibrate(action_cb_status_t status_cb) = 0; + virtual int32_t reset_device(action_cb_status_t status_cb) = 0; + + virtual int32_t take_tip(s16 vel, s16 height_mm, s16 tip_hight_mm, action_cb_status_t status_cb) = 0; + virtual int32_t remove_tip(s16 vel, s16 height_mm, action_cb_status_t status_cb) = 0; + + virtual int32_t move_to(s16 vel, s16 height_mm, action_cb_status_t status_cb) = 0; + virtual int32_t move_to_with_lld(s16 vel, s16 lld_cap_thr, s16 lld_max_hight_mm, s16 lld_rela_hight_mm, action_cb_status_t status_cb) = 0; + virtual int32_t shake_volume(s16 shake_times, s16 shake_volume, action_cb_status_t status_cb) = 0; + virtual int32_t take_and_split_liquid(s16 take_volume_mm, action_cb_status_t status_cb) = 0; + /******************************************************************************* - * |Module_1016:移液枪控制 * + * ReadStatus * *******************************************************************************/ + virtual int32_t get_status(status_t &status) = 0; + + /******************************************************************************* + * SETTING * + *******************************************************************************/ + virtual int32_t set_z_motor_para(const I_StepMotorCtrlModule::base_param_t &z_motor_param) = 0; + virtual int32_t get_z_motor_para(I_StepMotorCtrlModule::base_param_t &z_motor_param) = 0; + virtual int32_t set_base_param(const base_param_t &base_param) = 0; + virtual int32_t get_base_param(base_param_t &base_param) = 0; +#endif + + kcmd_pipette_module_enable = CMDID(1016, 0), // 使能 + kcmd_pipette_module_stop = CMDID(1016, 1), // 停止 + + kcmd_pipette_module_zero_pos_calibrate = CMDID(1016, 2), // 回零并校准 + kcmd_barcode_reader_reset_device = CMDID(1016, 3), // 重置设备,归零,并弹出tip头 + + + + +#if 0 kcmd_pipette_module_z_motor_enable = CMDID(1016, 0), // 使能 kcmd_pipette_module_z_motor_move_to = CMDID(1016, 1), // 移动到 kcmd_pipette_module_z_motor_move_to_zero = CMDID(1016, 2), // 归零 @@ -189,6 +229,7 @@ typedef enum { kcmd_pipette_module_set_run_param = CMDID(1016, 100), // 设置运行参数 kcmd_pipette_module_set_warning_limit_param = CMDID(1016, 101), // 设置限制参数 kcmd_pipette_module_set_run_to_zero_param = CMDID(1016, 102), // 设置归零参数 +#endif } CmdID_t;