From 23b210cbaf4928803f3f94ea48f211f1d8944de3 Mon Sep 17 00:00:00 2001 From: zby <24947@USER> Date: Sat, 21 Sep 2024 15:24:03 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9rfid?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Service/Execute/Api/RfidApi.cs | 4 +- Service/Execute/Step/DoSwappingState.cs | 2 - Service/Execute/Step/StationReadyState.cs | 2 +- .../Plc/Handler/SummaryFailuresReqHandler.cs | 397 +++++++++--------- Service/Plc/Msg/Plc/Req/SummaryFailuresReq.cs | 2 +- 5 files changed, 203 insertions(+), 204 deletions(-) diff --git a/Service/Execute/Api/RfidApi.cs b/Service/Execute/Api/RfidApi.cs index 3db95c5..1669c0a 100644 --- a/Service/Execute/Api/RfidApi.cs +++ b/Service/Execute/Api/RfidApi.cs @@ -103,12 +103,12 @@ public class RfidApi Log.Info("RfidApi ReadRfid"); - // string readUrl = BASE_URL + "/Api/BeginRead"; + string readUrl = BASE_URL + "/Api/BeginRead"; string url = BASE_URL + "/Api/ReadRfidData"; Log.Info($"url={url}"); try { - //var vBeginRead = await _httpClient.GetStringAsync(readUrl); + var vBeginRead = await _httpClient.GetStringAsync(readUrl); string s = await _httpClient.GetStringAsync(url); Log.Info($"ReadRfid resp={s}"); if (s != String.Empty) diff --git a/Service/Execute/Step/DoSwappingState.cs b/Service/Execute/Step/DoSwappingState.cs index be01d83..ee5b566 100644 --- a/Service/Execute/Step/DoSwappingState.cs +++ b/Service/Execute/Step/DoSwappingState.cs @@ -199,11 +199,9 @@ public class DoSwappingState : IState return Invoker.Invoke("plc UnPack", 500, 5, machine.IsCanceled, () => machine.UnOldBatteryFlag, () => { - LedClient.SendMsgByKey(InfoEnum.SwapInfo.InfoUnPack.GetLed()); SoundClient = AppInfo.Container.Resolve(); - machine.UnOldBatteryFlag = ClientMgr.PlcClient.DisassembleDone; if (machine.UnOldBatteryFlag) diff --git a/Service/Execute/Step/StationReadyState.cs b/Service/Execute/Step/StationReadyState.cs index d05e004..fb4fb50 100644 --- a/Service/Execute/Step/StationReadyState.cs +++ b/Service/Execute/Step/StationReadyState.cs @@ -251,7 +251,7 @@ public class StationReadyState : IState return Invoker.Invoke(" BeginRead read rfid", 1000, 20, machine.IsCanceled, () => machine.BeginRfidReadFlag, () => { - // Task open = RfidApi.Connect(); + Task open = RfidApi.Connect(); Task beginRead = RfidApi.BeginRead(); beginRead.Wait(); if (!beginRead.Result) diff --git a/Service/Plc/Handler/SummaryFailuresReqHandler.cs b/Service/Plc/Handler/SummaryFailuresReqHandler.cs index 229b34e..76768e3 100644 --- a/Service/Plc/Handler/SummaryFailuresReqHandler.cs +++ b/Service/Plc/Handler/SummaryFailuresReqHandler.cs @@ -73,211 +73,212 @@ public class SummaryFailuresReqHandler : SimpleChannelInboundHandler i.EquipCode == "plc"); - List lstAlarm = new List(); - if (msg.ScreenEmergencyStop) - Alarm("1"); - if (msg.PassageEmergencyStop) - Alarm("2"); - if (msg.RobotEmergencyStop) - Alarm("3"); - if (msg.FaultyRelays) - Alarm("4"); - if (msg.TelecommFailures) - Alarm("5"); - if (msg.MasterFailures) - Alarm("6"); - if (msg.TitleFailures) - Alarm("7"); - if (msg.TitleXFailures) - Alarm("8"); - if (msg.TitleYFailures) - Alarm("9"); - if (msg.TitleZFailures) - Alarm("10"); - if (msg.TitleMFailures) - Alarm("11"); - if (msg.WireBroken0) - Alarm("12"); - if (msg.WireBroken1) - Alarm("13"); - if (msg.WireBroken2) - Alarm("14"); - if (msg.WireBroken3) - Alarm("15"); - if (msg.XPositiveLimit) - Alarm("16"); - if (msg.XNegativeLimit) - Alarm("17"); - if (msg.YPositiveLimit) - Alarm("18"); - if (msg.YNegativeLimit) - Alarm("19"); - if (msg.ZPositiveLimit) - Alarm("20"); - if (msg.ZNegativeLimit) - Alarm("21"); - if (msg.MPositiveLimit) - Alarm("22"); - if (msg.MNegativeLimit) - Alarm("23"); - if (msg.XDriveFailure) - Alarm("24"); - if (msg.YDriveFailure) - Alarm("25"); - if (msg.ZDriveFailure) - Alarm("26"); - if (msg.MDriveFailure) - Alarm("27"); - if (msg.DoorLeft) - Alarm("28"); - if (msg.DoorcloseLeft) - Alarm("29"); - if (msg.DoorRight) - Alarm("30"); - if (msg.DoorcloseRight) - Alarm("31"); - if (msg.DoorRepaiDhambers) - Alarm("32"); - if (msg.DoorcloseRepairChambers) - Alarm("33"); - if (msg.DoorRepaiCabinet) - Alarm("34"); - if (msg.DoorRowFrames) - Alarm("35"); - if (msg.X1RetractionFailure) - Alarm("36"); - if (msg.X1StickingFault) - Alarm("37"); - if (msg.X2RetractionFailure) - Alarm("38"); - if (msg.X2StickingFault) - Alarm("39"); - if (msg.LocalBattIncorrect) - Alarm("40"); - if (msg.NoLocalBattery) - Alarm("41"); - if (msg.LocalStorageBatteries) - Alarm("42"); - if (msg.RemoteBattIncorrect) - Alarm("43"); - if (msg.RemoteBattery) - Alarm("44"); - if (msg.RemoteStorageBatteries) - Alarm("45"); - if (msg.RemoteMoveLibraryBattery) - Alarm("46"); - if (msg.RemoteLibraryBatteries) - Alarm("47"); - if (msg.RemoteAreBatteries) - Alarm("48"); - if (msg.RemoteMoveElectLibrary) - Alarm("49"); - if (msg.RemoteelectrLibrary) - Alarm("50"); - if (msg.RemoteelectrAreBatteries) - Alarm("51"); - if (msg.RemoteStorageLibrary) - Alarm("52"); - if (msg.RemotStorageAreBatteries) - Alarm("53"); - if (msg.RemoteOutboundLibrary) - Alarm("54"); - if (msg.RemotOutboundAreBatteries) - Alarm("55"); - if (msg.RemoteBackupLibrary) - Alarm("56"); - if (msg.RemotBackupAreBatteries) - Alarm("57"); - if (msg.BatteryCompartAbnormal01) - Alarm("58"); - if (msg.BatteryCompartAbnormal02) - Alarm("59"); - if (msg.BatteryCompartAbnormal03) - Alarm("60"); - if (msg.BatteryCompartAbnormal04) - Alarm("61"); - if (msg.BatteryCompartAbnormal05) - Alarm("62"); - if (msg.BatteryCompartAbnormal06) - Alarm("63"); - if (msg.BatteryCompartAbnormal07) - Alarm("64"); - if (msg.BatteryCompartAbnormal08) - Alarm("65"); - if (msg.BatteryCompartAbnormal09) - Alarm("66"); - if (msg.BatteryWasDetectCompartment) - Alarm("67"); - if (msg.RepairWasDetectCompartment) - Alarm("68"); - if (msg.WasDetectCompartment214) - Alarm("69"); - if (msg.ZSpreaderForceSensor) - Alarm("70"); - if (msg.YZSafetyBitAlarm) - Alarm("71"); - if (msg.YZSafetyWarehouseBitAlarm) - Alarm("72"); + //lstEquipAlarmDefine = EquipAlarmDefineRepository.QueryListByClause(i => i.EquipCode == "plc"); + //List lstAlarm = new List(); + //if (msg.ScreenEmergencyStop) + // Alarm("1"); + //if (msg.PassageEmergencyStop) + // Alarm("2"); + //if (msg.RobotEmergencyStop) + // Alarm("3"); + //if (msg.FaultyRelays) + // Alarm("4"); + //if (msg.TelecommFailures) + // Alarm("5"); + //if (msg.MasterFailures) + // Alarm("6"); + //if (msg.TitleFailures) + // Alarm("7"); + //if (msg.TitleXFailures) + // Alarm("8"); + //if (msg.TitleYFailures) + // Alarm("9"); + //if (msg.TitleZFailures) + // Alarm("10"); + //if (msg.TitleMFailures) + // Alarm("11"); + //if (msg.WireBroken0) + // Alarm("12"); + //if (msg.WireBroken1) + // Alarm("13"); + //if (msg.WireBroken2) + // Alarm("14"); + //if (msg.WireBroken3) + // Alarm("15"); + //if (msg.XPositiveLimit) + // Alarm("16"); + //if (msg.XNegativeLimit) + // Alarm("17"); + //if (msg.YPositiveLimit) + // Alarm("18"); + //if (msg.YNegativeLimit) + // Alarm("19"); + //if (msg.ZPositiveLimit) + // Alarm("20"); + //if (msg.ZNegativeLimit) + // Alarm("21"); + //if (msg.MPositiveLimit) + // Alarm("22"); + //if (msg.MNegativeLimit) + // Alarm("23"); + //if (msg.XDriveFailure) + // Alarm("24"); + //if (msg.YDriveFailure) + // Alarm("25"); + //if (msg.ZDriveFailure) + // Alarm("26"); + //if (msg.MDriveFailure) + // Alarm("27"); + //if (msg.DoorLeft) + // Alarm("28"); + //if (msg.DoorcloseLeft) + // Alarm("29"); + //if (msg.DoorRight) + // Alarm("30"); + //if (msg.DoorcloseRight) + // Alarm("31"); + //if (msg.DoorRepaiDhambers) + // Alarm("32"); + //if (msg.DoorcloseRepairChambers) + // Alarm("33"); + //if (msg.DoorRepaiCabinet) + // Alarm("34"); + //if (msg.DoorRowFrames) + // Alarm("35"); + //if (msg.X1RetractionFailure) + // Alarm("36"); + //if (msg.X1StickingFault) + // Alarm("37"); + //if (msg.X2RetractionFailure) + // Alarm("38"); + //if (msg.X2StickingFault) + // Alarm("39"); + //if (msg.LocalBattIncorrect) + // Alarm("40"); + //if (msg.NoLocalBattery) + // Alarm("41"); + //if (msg.LocalStorageBatteries) + // Alarm("42"); + //if (msg.RemoteBattIncorrect) + // Alarm("43"); + //if (msg.RemoteBattery) + // Alarm("44"); + //if (msg.RemoteStorageBatteries) + // Alarm("45"); + //if (msg.RemoteMoveLibraryBattery) + // Alarm("46"); + //if (msg.RemoteLibraryBatteries) + // Alarm("47"); + //if (msg.RemoteAreBatteries) + // Alarm("48"); + //if (msg.RemoteMoveElectLibrary) + // Alarm("49"); + //if (msg.RemoteelectrLibrary) + // Alarm("50"); + //if (msg.RemoteelectrAreBatteries) + // Alarm("51"); + //if (msg.RemoteStorageLibrary) + // Alarm("52"); + //if (msg.RemotStorageAreBatteries) + // Alarm("53"); + //if (msg.RemoteOutboundLibrary) + // Alarm("54"); + //if (msg.RemotOutboundAreBatteries) + // Alarm("55"); + //if (msg.RemoteBackupLibrary) + // Alarm("56"); + //if (msg.RemotBackupAreBatteries) + // Alarm("57"); + //if (msg.BatteryCompartAbnormal01) + // Alarm("58"); + //if (msg.BatteryCompartAbnormal02) + // Alarm("59"); + //if (msg.BatteryCompartAbnormal03) + // Alarm("60"); + //if (msg.BatteryCompartAbnormal04) + // Alarm("61"); + //if (msg.BatteryCompartAbnormal05) + // Alarm("62"); + //if (msg.BatteryCompartAbnormal06) + // Alarm("63"); + //if (msg.BatteryCompartAbnormal07) + // Alarm("64"); + //if (msg.BatteryCompartAbnormal08) + // Alarm("65"); + //if (msg.BatteryCompartAbnormal09) + // Alarm("66"); + //if (msg.BatteryWasDetectCompartment) + // Alarm("67"); + //if (msg.RepairWasDetectCompartment) + // Alarm("68"); + //if (msg.WasDetectCompartment214) + // Alarm("69"); + //if (msg.ZSpreaderForceSensor) + // Alarm("70"); + //if (msg.YZSafetyBitAlarm) + // Alarm("71"); + //if (msg.YZSafetyWarehouseBitAlarm) + // Alarm("72"); - //查询当前PLC的实时报警信息 - var lstNowEquipAlarmRecord = EquipAlarmRecordRepository.QueryListByClause(i => i.EquipCode == "plc"); - var sqllstAlarm = lstNowEquipAlarmRecord.Select(obj => obj.ErrorCode).ToList(); //当前报警列表 - // 找出实时报警中存在但数据库中不存在的元素 - List uniqueToList1 = lstAlarm.Except(sqllstAlarm).ToList(); + ////查询当前PLC的实时报警信息 + //var lstNowEquipAlarmRecord = EquipAlarmRecordRepository.QueryListByClause(i => i.EquipCode == "plc"); + //var sqllstAlarm = lstNowEquipAlarmRecord.Select(obj => obj.ErrorCode).ToList(); //当前报警列表 - // 找出数据库中存在但实时报警中不存在的元素 - List uniqueToList2 = sqllstAlarm.Except(lstAlarm).ToList(); - if (uniqueToList1.Count > 0) - { - //这里要添加新的报警数据 - foreach (var errorCode in uniqueToList1) - { - EquipAlarmDefine? alarmDefine = - EquipAlarmDefineRepository.QueryByClause(i => i.ErrorCode == errorCode); - if (alarmDefine != null) - { - EquipAlarmRecord record = new EquipAlarmRecord() - { - EquipTypeCode = alarmDefine.EquipTypeCode, - EquipCode = "plc", - ErrorCode = errorCode, - ErrorLevel = alarmDefine.ErrorLevel, - ErrorMsg = alarmDefine.ErrorMsg, - ProcessMethod = alarmDefine.ProcessMethod, - StartTime = DateTime.Now - }; - EquipAlarmRecordRepository.Insert(record); - } - } - } - else if (uniqueToList2.Count > 0) - { - //这些是要清除实时报警,并且处理记录的。 - // 使用LINQ找出ErrorCode在uniqueToList2中的EquipAlarmRecord对象 - List filteredObjectList = lstNowEquipAlarmRecord - .Where(obj => uniqueToList2.Contains(obj.ErrorCode)) - .ToList(); - foreach (var VARIABLE in filteredObjectList) - { - EquipAlarmProcessRecord EquipAlarmProcessRecord = new EquipAlarmProcessRecord(); - EquipAlarmProcessRecord.EquipTypeCode = VARIABLE.EquipTypeCode; - EquipAlarmProcessRecord.EquipCode = VARIABLE.EquipCode; - EquipAlarmProcessRecord.ErrorCode = VARIABLE.ErrorCode; - EquipAlarmProcessRecord.ErrorLevel = VARIABLE.ErrorLevel; - EquipAlarmProcessRecord.ErrorMsg = VARIABLE.ErrorMsg; - EquipAlarmProcessRecord.ProcessMethod = VARIABLE.ProcessMethod; - EquipAlarmProcessRecord.StartTime = VARIABLE.StartTime; - EquipAlarmProcessRecord.ProcessTime = DateTime.Now; + //// 找出实时报警中存在但数据库中不存在的元素 + //List uniqueToList1 = lstAlarm.Except(sqllstAlarm).ToList(); - EquipAlarmProcessRecordRepository.Insert(EquipAlarmProcessRecord); - } + //// 找出数据库中存在但实时报警中不存在的元素 + //List uniqueToList2 = sqllstAlarm.Except(lstAlarm).ToList(); + //if (uniqueToList1.Count > 0) + //{ + // //这里要添加新的报警数据 + // foreach (var errorCode in uniqueToList1) + // { + // EquipAlarmDefine? alarmDefine = + // EquipAlarmDefineRepository.QueryByClause(i => i.ErrorCode == errorCode); + // if (alarmDefine != null) + // { + // EquipAlarmRecord record = new EquipAlarmRecord() + // { + // EquipTypeCode = alarmDefine.EquipTypeCode, + // EquipCode = "plc", + // ErrorCode = errorCode, + // ErrorLevel = alarmDefine.ErrorLevel, + // ErrorMsg = alarmDefine.ErrorMsg, + // ProcessMethod = alarmDefine.ProcessMethod, + // StartTime = DateTime.Now + // }; + // EquipAlarmRecordRepository.Insert(record); + // } + // } + //} + //else if (uniqueToList2.Count > 0) + //{ + // //这些是要清除实时报警,并且处理记录的。 + // // 使用LINQ找出ErrorCode在uniqueToList2中的EquipAlarmRecord对象 + // List filteredObjectList = lstNowEquipAlarmRecord + // .Where(obj => uniqueToList2.Contains(obj.ErrorCode)) + // .ToList(); + // foreach (var VARIABLE in filteredObjectList) + // { + // EquipAlarmProcessRecord EquipAlarmProcessRecord = new EquipAlarmProcessRecord(); + // EquipAlarmProcessRecord.EquipTypeCode = VARIABLE.EquipTypeCode; + // EquipAlarmProcessRecord.EquipCode = VARIABLE.EquipCode; + // EquipAlarmProcessRecord.ErrorCode = VARIABLE.ErrorCode; + // EquipAlarmProcessRecord.ErrorLevel = VARIABLE.ErrorLevel; + // EquipAlarmProcessRecord.ErrorMsg = VARIABLE.ErrorMsg; + // EquipAlarmProcessRecord.ProcessMethod = VARIABLE.ProcessMethod; + // EquipAlarmProcessRecord.StartTime = VARIABLE.StartTime; + // EquipAlarmProcessRecord.ProcessTime = DateTime.Now; - EquipAlarmRecordRepository.Delete(filteredObjectList); - } + // EquipAlarmProcessRecordRepository.Insert(EquipAlarmProcessRecord); + // } + + // EquipAlarmRecordRepository.Delete(filteredObjectList); + //} ClientMgr.PlcClient.Auto = msg.T3 == 1; diff --git a/Service/Plc/Msg/Plc/Req/SummaryFailuresReq.cs b/Service/Plc/Msg/Plc/Req/SummaryFailuresReq.cs index 9a65452..8cec619 100644 --- a/Service/Plc/Msg/Plc/Req/SummaryFailuresReq.cs +++ b/Service/Plc/Msg/Plc/Req/SummaryFailuresReq.cs @@ -292,7 +292,7 @@ public class SummaryFailuresReq : ASDU /// - /// 又侧移门关门故障 + /// 右侧移门关门故障 /// [Property(55, 1)] public bool DoorcloseRight { get; set; }