From b169c314570f6fb3983c35515629b0965aced32a Mon Sep 17 00:00:00 2001 From: zhaohe Date: Thu, 1 Aug 2024 14:58:54 +0800 Subject: [PATCH] update --- src/main/java/a8k/appbase/appret/AppRet.java | 2 +- .../devicectrl/commonctrl/HardwareCommonCtrl.java | 4 +- .../service/devicectrl/status/DeviceStatus.java | 40 ++++++++++----- .../service/hardware/canbus/protocol/A8kEcode.java | 58 +++++++++++----------- 4 files changed, 59 insertions(+), 45 deletions(-) diff --git a/src/main/java/a8k/appbase/appret/AppRet.java b/src/main/java/a8k/appbase/appret/AppRet.java index 5048731..fd248a8 100644 --- a/src/main/java/a8k/appbase/appret/AppRet.java +++ b/src/main/java/a8k/appbase/appret/AppRet.java @@ -134,7 +134,7 @@ public class AppRet { if (e instanceof HardwareException hexcep) { r.ecode = new AppRetEcodeInfo(hexcep.getErrorCode(), hexcep.getModuleId(), hexcep.getCmdId()); - r.traceInfo = r.ecode.toDisPlayString() + hexcep.getExtMessage(); + r.traceInfo = trace; r.message = r.ecode.toDisPlayString() + hexcep.getExtMessage(); } else { r.ecode = new AppRetEcodeInfo(A8kEcode.CodeException, null, null); diff --git a/src/main/java/a8k/service/devicectrl/commonctrl/HardwareCommonCtrl.java b/src/main/java/a8k/service/devicectrl/commonctrl/HardwareCommonCtrl.java index c0fc6fc..02d6e64 100644 --- a/src/main/java/a8k/service/devicectrl/commonctrl/HardwareCommonCtrl.java +++ b/src/main/java/a8k/service/devicectrl/commonctrl/HardwareCommonCtrl.java @@ -25,8 +25,8 @@ public class HardwareCommonCtrl { static class ORDER { static final int initializeDevice = 1; - static final int deviceEnable = 2; - static final int deviceClear = 3; + static final int deviceClear = 2; + static final int deviceEnable = 3; } @Resource diff --git a/src/main/java/a8k/service/devicectrl/status/DeviceStatus.java b/src/main/java/a8k/service/devicectrl/status/DeviceStatus.java index 3a13efe..169f222 100644 --- a/src/main/java/a8k/service/devicectrl/status/DeviceStatus.java +++ b/src/main/java/a8k/service/devicectrl/status/DeviceStatus.java @@ -17,54 +17,68 @@ public class DeviceStatus { @Resource A8kCanBusService canBus; + static class ORDER { + static final int isTubeExist = 1; + static final int isTubeRackInEnterPos = 2; + static final int isTubeRackInExitPos = 3; + static final int isHighTube = 4; + static final int getTHchOuterPPS = 5; + static final int getTHchInterPPS = 6; + static final int getXPPS = 7; + static final int getYPPS = 8; + static final int getZPPS = 9; + static final int getTipPPS = 10; + } + // // 状态 // - @EnginnerPageStatu(name = "试管架存在") + @EnginnerPageStatu(name = "试管架存在", group = "进出料光电", order = ORDER.isTubeExist) public Boolean isTubeExist() throws HardwareException { return canBus.getIOState(IOId.TubeExistPPS); } - @EnginnerPageStatu(name = "入口光电") + @EnginnerPageStatu(name = "入口光电", group = "进出料光电", order = ORDER.isTubeRackInEnterPos) public Boolean isTubeRackInEnterPos() throws HardwareException { return canBus.getIOState(IOId.InfeedPPS); } - @EnginnerPageStatu(name = "出口光电") + @EnginnerPageStatu(name = "出口光电", group = "进出料光电", order = ORDER.isTubeRackInExitPos) public Boolean isTubeRackInExitPos() throws HardwareException { return canBus.getIOState(IOId.OutfeedPPS); } - @EnginnerPageStatu(name = "高低判读光电") + @EnginnerPageStatu(name = "试管高低判读光电", group = "进出料光电", order = ORDER.isHighTube) public Boolean isHighTube() throws HardwareException { return canBus.getIOState(IOId.TubeHeightPPS); } - @EnginnerPageStatu(name = "通道外光电") + @EnginnerPageStatu(name = "通道外光电", group = "进出料光电", order = ORDER.getTHchOuterPPS) public Boolean getTHchOuterPPS() throws HardwareException { return canBus.getIOState(IOId.THChOuterPPS); } - @EnginnerPageStatu(name = "通道内光电") + @EnginnerPageStatu(name = "通道内光电", group = "进出料光电", order = ORDER.getTHchInterPPS) public Boolean getTHchInterPPS() throws HardwareException { return canBus.getIOState(IOId.THChInterPPS); } - @EnginnerPageStatu(name = "Z轴光电⬆") - public Boolean getZPPS() throws HardwareException { - return canBus.stepMotorReadIoState(MId.PipetteModZM, 0); - } - - @EnginnerPageStatu(name = "X轴光电➡") + @EnginnerPageStatu(name = "X轴光电➡", group = "HBOT", order = ORDER.getXPPS) public Boolean getXPPS() throws HardwareException { return canBus.hbotReadInio(MId.HbotM, 0); } - @EnginnerPageStatu(name = "Y轴光电⬇") + @EnginnerPageStatu(name = "Y轴光电⬇", group = "HBOT", order = ORDER.getYPPS) public Boolean getYPPS() throws HardwareException { return canBus.hbotReadInio(MId.HbotM, 1); } + @EnginnerPageStatu(name = "Z轴光电⬆", group = "HBOT", order = ORDER.getZPPS) + public Boolean getZPPS() throws HardwareException { + return canBus.stepMotorReadIoState(MId.PipetteModZM, 0); + } + + // @HardwareServiceStatus(name = "TipState") public Boolean getTipPPS() throws HardwareException { return canBus.moduleGetReg(MId.PipetteMod, RegIndex.kreg_pipette_tip_state) == 1; diff --git a/src/main/java/a8k/service/hardware/canbus/protocol/A8kEcode.java b/src/main/java/a8k/service/hardware/canbus/protocol/A8kEcode.java index ba32d2d..1b14067 100644 --- a/src/main/java/a8k/service/hardware/canbus/protocol/A8kEcode.java +++ b/src/main/java/a8k/service/hardware/canbus/protocol/A8kEcode.java @@ -45,7 +45,7 @@ public enum A8kEcode { A8kIDCardContentError(301, "ID卡内容错误"), // A8kIDCardVersionIsLow(302, "ID卡版本过低"), // - AppOptionIsInvalid(400, "AppOptionIsInvalid"), // + AppOptionIsInvalid(400, "参数操作"), // // // FOR HARDWARE @@ -62,15 +62,15 @@ public enum A8kEcode { DeviceOffline(1109, "设备离线"),// SubdeviceOvertime(1111, "子设备超时"),// BufferNotEnough(1112, "缓存溢出"),// - CmdParamNumError(1114, "CmdParamNumError"),// - CheckcodeIsError(1115, "CheckcodeIsError"),// - IllegalOperation(1116, "IllegalOperation"),// - ModuleOpeationBreakByUser(1202, "ModuleOpeationBreakByUser"),// - ModuleNotFindReg(1207, "ModuleNotFindReg"),// - XYMotorXFindZeroEdgeFail(1306, "XYMotorXFindZeroEdgeFail"),// - XYMotorYFindZeroEdgeFail(1307, "XYMotorYFindZeroEdgeFail"),// - XYMotorNotEnable(1308, "XYMotorNotEnable"),// - XYMotorTargetPosOutofRange(1309, "XYMotorTargetPosOutofRange"),// + CmdParamNumError(1114, "指令参数数量不对"),// + CheckcodeIsError(1115, "校验码错误"),// + IllegalOperation(1116, "非法操作"),// + ModuleOpeationBreakByUser(1202, "模块操作被用户中断"),// + ModuleNotFindReg(1207, "找不到对应的寄存器"),// + XYMotorXFindZeroEdgeFail(1306, "X轴找零失败"),// + XYMotorYFindZeroEdgeFail(1307, "Y轴找零失败"),// + XYMotorNotEnable(1308, "XY轴未使能"),// + XYMotorTargetPosOutofRange(1309, "XY轴目标位置超出范围"),// PipetteErrorNoerror(1400, "PipetteErrorNoerror"),// PipetteErrorInitfail(1401, "PipetteErrorInitfail"),// PipetteErrorInvalidcmd(1402, "PipetteErrorInvalidcmd"),// @@ -97,25 +97,25 @@ public enum A8kEcode { PipetteErrorNotLldPrepare(1502, "PipetteErrorNotLldPrepare"),// PipetteErrorTipisloadWhenLldPrepare(1500, "PipetteErrorTipisloadWhenLldPrepare"),// PipetteErrorPumpLoadValIsNotEmpty(1503, "PipetteErrorPumpLoadValIsNotEmpty"),// - StepMotorNotFoundZeroPoint(1600, "StepMotorNotFoundZeroPoint"),// - StepMotorNotGoZero(1601, "StepMotorNotGoZero"),// - StepMotorOverTemperature(1602, "StepMotorOverTemperature"),// - StepMotorOverVoltage(1603, "StepMotorOverVoltage"),// - StepMotorRunOvertime(1604, "StepMotorRunOvertime"),// - StepMotorNotEnable(1605, "StepMotorNotEnable"),// - StepMotorIoindexOutOfRange(1606, "StepMotorIoindexOutOfRange"),// - StepMotorSubicReset(1607, "StepMotorSubicReset"),// - StepMotorDrvErr(1608, "StepMotorDrvErr"),// - StepMotorUvCp(1609, "StepMotorUvCp"),// - StepMotorNotFoundPointEdge(1610, "StepMotorNotFoundPointEdge"),// - StepMotorLostStep(1611, "StepMotorLostStep"),// - MiniServoNotEnable(1700, "MiniServoNotEnable"),// - MiniServoModeNotSupport(1701, "MiniServoModeNotSupport"),// - FanHardwareFault(1800, "FanHardwareFault"),// - WaterCoolingFanError(1900, "WaterCoolingFanError"),// - WaterCoolingTemperatureSensorError(1902, "WaterCoolingTemperatureSensorError"),// - WaterCoolingPumpIsError(1903, "WaterCoolingPumpIsError"),// - WaterCoolingPelterIsError(1904, "WaterCoolingPelterIsError"), + StepMotorNotFoundZeroPoint(1600, "步进电机未找到零点"),// + StepMotorNotGoZero(1601, "步进电机未回零"),// + StepMotorOverTemperature(1602, "步进电机过温"),// + StepMotorOverVoltage(1603, "步进电机过压"),// + StepMotorRunOvertime(1604, "步进电机运行超时"),// + StepMotorNotEnable(1605, "步进电机未使能"),// + StepMotorIoindexOutOfRange(1606, "步进电机IO索引超出范围"),// + StepMotorSubicReset(1607, "步进电机子设备复位"),// + StepMotorDrvErr(1608, "步进电机驱动错误"),// + StepMotorUvCp(1609, "步进电机UV CP"),// + StepMotorNotFoundPointEdge(1610, "步进电机未找到零点边沿"),// + StepMotorLostStep(1611, "步进电机丢步"),// + MiniServoNotEnable(1700, "舵机未使能"),// + MiniServoModeNotSupport(1701, "舵机模式不支持"),// + FanHardwareFault(1800, "风扇硬件故障"),// + WaterCoolingFanError(1900, "水冷风扇故障"),// + WaterCoolingTemperatureSensorError(1902, "水冷温度传感器故障"),// + WaterCoolingPumpIsError(1903, "水冷水泵故障"),// + WaterCoolingPelterIsError(1904, "水冷电热片故障"),// ; public int index;