@ -52,7 +52,7 @@ public class HbotBaseMoveExDriver {
public void hbotMoveTo ( Pos3d targetPos ) throws AppException {
public void hbotMoveTo ( Pos3d targetPos ) throws AppException {
logger . info ( "hbotCheckAndMoveTo:{}" , targetPos ) ;
logger . debug ( "hbotCheckAndMoveTo:{}" , targetPos ) ;
checkBeforeMove ( ) ;
checkBeforeMove ( ) ;
boolean zEnable = true ;
boolean zEnable = true ;
boolean hbotEnable = canBus . moduleGetReg ( MId . HbotM , RegIndex . kreg_xyrobot_is_enable ) = = 1 ;
boolean hbotEnable = canBus . moduleGetReg ( MId . HbotM , RegIndex . kreg_xyrobot_is_enable ) = = 1 ;
@ -93,132 +93,4 @@ public class HbotBaseMoveExDriver {
}
}
/ / public String scan2dCode ( Integer waittime ) throws AppException {
/ / try {
/ / canBus . codeScanerStartScan ( MId . PipetteModCodeScanner ) ;
/ / String result = canBus . codeScanerWaittingForResult ( MId . PipetteModCodeScanner , waittime ) ;
/ / canBus . codeScanerStopScan ( MId . PipetteModCodeScanner ) ;
/ / return result ;
/ / } catch ( AppException e ) {
/ / return "" ;
/ / }
/ / }
/ /
/ /
/ / public void zMoveTo ( Integer z ) throws AppException {
/ / if ( z = = 0 ) {
/ / pipetteCtrlModule . zMotorMoveToZeroPointQuickBlock ( ) ;
/ / } else {
/ / pipetteCtrlModule . zMotorMoveToBlock ( z ) ;
/ / }
/ / }
/ /
/ / private void hbotCheckAndMoveTo ( Pos2d targetPos ) throws AppException {
/ / hbotMoveTo ( new Pos3d ( targetPos . x , targetPos . y , 0 ) ) ;
/ / }
/ / private void modGroupMoveToZero ( ) throws AppException {
/ / if ( ! canBus . getIOState ( IOId . PlateBoxCoverClosurePPS ) ) {
/ / throw new AppException ( A8kEcode . APPE_PLATE_BOX_NOT_COVER ) ;
/ / }
/ /
/ / pipetteCtrlModule . zMotorEnable ( 1 ) ;
/ / hbotModule . enable ( 1 ) ;
/ /
/ / hbotModule . moveToZeroBlock ( timep . getHbotRuntoZeroActionOvertime ( ) ) ;
/ /
/ / / / 丢弃tip
/ / Pos3d dropPos = pp . getTipDropPos ( ) ;
/ / hbotMoveTo ( dropPos ) ;
/ / / / TODO : canBus . pipetteCtrlInitDeviceBlock ( MId . PipetteMod , timep . getActionOvertime ( ) ) ;
/ /
/ / / / 快速归零
/ / modGroupMoveToZeroQuick ( ) ;
/ / }
/ / private void modGroupMoveToZeroQuick ( ) throws AppException {
/ / hbotCheckAndMoveTo ( new Pos2d ( 0 , 0 ) ) ;
/ / }
/ / + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
/ / 单步测试
/ / + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
/ / @ExtApiFn ( name = "丢Tip" , group = "单步测试" )
/ / public void dropTip ( ) throws AppException {
/ / Pos3d pos = pp . getTipDropPos ( ) ;
/ / hbotMoveTo ( pos . x , pos . y ) ;
/ / zMoveTo ( pos . z ) ;
/ / pipetteCtrlModule . putTipBlock ( ) ;
/ / zMoveTo ( 0 ) ;
/ / }
/ /
/ / @ExtApiFn ( name = "取Tip" , group = "单步测试" )
/ / public Boolean takeTip ( TipGroup tipGroup , Integer index ) throws AppException {
/ / logger . info ( "takeTip groupId:{} index:{}" , tipGroup . ordinal ( ) , index ) ;
/ /
/ / if ( index > TipPickUpPosInfo . cgetTipNum ( ) | | index < 0 ) {
/ / throw new AppException ( A8kEcode . CODEERROR_PARAM_OUT_OF_RANGE ) ;
/ / }
/ /
/ / TipPickUpPosInfo tipPos = pp . getTipPickUpPosInfo ( ) ;
/ / Pos2d pos = tipPos . getTipPos ( tipGroup . ordinal ( ) , index ) ;
/ / hbotMoveTo ( pos . x , pos . y ) ;
/ /
/ / / / TODO : 补偿 , group大于1时 , z轴需要补偿0 . 2mm
/ / Integer zCompensate = 0 ;
/ / if ( tipGroup . ordinal ( ) > 1 ) {
/ / zCompensate = 2 ;
/ / }
/ /
/ / pipetteCtrlModule . zMotorMoveToBlock ( tipPos . getPickUpZPos ( tipGroup . ordinal ( ) ) + zCompensate ) ;
/ / pipetteCtrlModule . zMotorMoveToZeroPointQuickBlock ( ) ;
/ /
/ / Boolean isGetTip = canBus . moduleGetReg ( MId . PipetteMod , RegIndex . kreg_pipette_tip_state ) = = 1 ;
/ / if ( ! isGetTip ) {
/ / logger . error ( "takeTip fail" ) ;
/ / }
/ / return isGetTip ;
/ / }
/ / @ExtApiFn ( name = "HBot移动到" , group = "单步测试" )
/ / public void hbotMoveTo ( Integer x , Integer y ) throws AppException {
/ / hbotCheckAndMoveTo ( new Pos2d ( x , y ) ) ;
/ / }
/ / @ExtApiFn ( name = "HBot移动到小瓶缓冲液X孔" , group = "单步测试" )
/ / public void hbotMoveToSmallBottleGroup ( ConsumableGroup group , Integer Xhole )
/ / throws AppException {
/ / BottleGroupsPosInfo posInfo = pp . getBottleBufferPosInfo ( ) ;
/ / if ( Xhole < 0 | | Xhole > BottlesPosInfo . cgetMAX ( ) ) {
/ / throw new AppException ( A8kEcode . CODEERROR_PARAM_OUT_OF_RANGE ) ;
/ / }
/ / Pos2d pos = posInfo . cgetSmallBottleBufferPos ( group . off , Xhole ) ;
/ / hbotCheckAndMoveTo ( pos ) ;
/ / }
/ /
/ / @ExtApiFn ( name = "HBot移动到探测物质X孔" , group = "单步测试" )
/ / public void hbotMoveToDetectMaterialPos ( ConsumableGroup group , Integer Xhole )
/ / throws AppException {
/ / BottleGroupsPosInfo posInfo = pp . getBottleBufferPosInfo ( ) ;
/ / if ( Xhole < 0 | | Xhole > BottlesPosInfo . cgetMAX ( ) ) {
/ / throw new AppException ( A8kEcode . CODEERROR_PARAM_OUT_OF_RANGE ) ;
/ / }
/ / Pos2d pos = posInfo . cgetDetectMaterialPos ( group . off , Xhole ) ;
/ / hbotCheckAndMoveTo ( pos ) ;
/ / }
/ /
/ / @ExtApiFn ( name = "HBot移动到大瓶缓冲液X孔" , group = "单步测试" )
/ / public void hbotMoveToLargeBottleGroup ( ConsumableGroup ch ) throws AppException {
/ / LargeBottleBufferPos posInfo = pp . getLargeBottleBufferPosInfo ( ) ;
/ / Pos2d pos = posInfo . cgetBottlePos ( ch . off ) ;
/ / hbotCheckAndMoveTo ( pos ) ;
/ / }
/ /
/ / @ExtApiFn ( name = "HBot移动到急诊位" , group = "单步测试" )
/ / public void hbotMoveToEmergencyPos ( ) throws AppException {
/ / hbotMoveTo ( pp . getEmergencyPos ( ) ) ;
/ / }
}
}