| | |
| | | device1.Jsæ·é¡º2.Config.IP, |
| | | device1.ç»´å¸å°æè1.Config.IP, |
| | | device1.ç»´å¸å°æè2.Config.IP, |
| | | device1.RGV.Config.IP |
| | | device1.RGV.Config.IP, |
| | | device1.S1002Read.Config.IP, |
| | | device1.S2001Read.Config.IP, |
| | | device1.S3001Read.Config.IP |
| | | }) |
| | | { |
| | | string pattern = @"\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b"; |
| | | |
| | | var matches = Regex.Match(ip, pattern); |
| | | if (matches.Success) |
| | | IsMachineOnline(matches.Value); |
| | | { |
| | | var b = IsMachineOnline(matches.Value); |
| | | if (!Iponlines.ContainsKey(ip)) |
| | | { |
| | | Iponlines.TryAdd(ip, b); |
| | | } |
| | | else |
| | | Iponlines[ip] = b; |
| | | } |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | |
| | | tasks.Add(GetTask(sa3006, tag, 3000)); |
| | | tasks.Add(GetTask(sa3010, tag, 3000)); |
| | | |
| | | |
| | | |
| | | |
| | | Task.WaitAll(tasks.ToArray()); |
| | | } |
| | | |
| | | public static ConcurrentDictionary<string, bool> Iponlines = new ConcurrentDictionary<string, bool>(); |
| | | public bool IsMachineOnline(string hostNameOrIp, int timeout = 1000) |
| | | { |
| | | //device.påé£ç§1ä¸çº¿.Config.IP |
| | |
| | | if (VERX != null) |
| | | { |
| | | if (tag.wxr1.R46) |
| | | LogHelper.Info($"{VERX.deviceName} R44>{tag.wxr1.R46} R44LAST>{tag.wxr1.R46_LAST} R10>{tag.wxr1.R11}"); |
| | | LogHelper.Info($"{VERX.deviceName} R46>{tag.wxr1.R46} R46LAST>{tag.wxr1.R46_LAST} R11>{tag.wxr1.R11}"); |
| | | if (tag.wxr1.R46 && !tag.wxr1.R46_LAST && tag.wxr1.R11) |
| | | { |
| | | if (TcpServer.TrayIps.TryGetValue(VERX.deviceNo[1], out string traycode) && !string.IsNullOrEmpty(traycode.Trim())) |
| | |
| | | if (VERX != null) |
| | | { |
| | | if (tag.wxr2.R46) |
| | | LogHelper.Info($"{VERX.deviceName} R44>{tag.wxr2.R46} R44LAST>{tag.wxr2.R46_LAST} R10>{tag.wxr2.R11}"); |
| | | LogHelper.Info($"{VERX.deviceName} R46>{tag.wxr2.R46} R46LAST>{tag.wxr2.R46_LAST} R11>{tag.wxr2.R11}"); |
| | | if (tag.wxr2.R46 && !tag.wxr2.R46_LAST && tag.wxr2.R11) |
| | | { |
| | | if (TcpServer.TrayIps.TryGetValue(VERX.deviceNo[1], out string traycode) && !string.IsNullOrEmpty(traycode.Trim())) |
| | |
| | | } |
| | | else |
| | | { |
| | | TcpServer.TcpServerSend(VERX.deviceNo[2], GZ.Device.PLC.PlcHelper.Hex2Bin("544F4E")); |
| | | TcpServer.TcpServerSend(VERX.deviceNo[1], GZ.Device.PLC.PlcHelper.Hex2Bin("544F4E")); |
| | | } |
| | | } |
| | | else |
| | |
| | | LogHelper.Info($"RGV æå¨æ¨¡å¼ï¼ä¸ç¨ç®¡ã"); |
| | | return; |
| | | } |
| | | LogHelper.Info($"RGV125å½ä»¤æ¥ç 任塿°æ® workmode:{tag.RGV.workMod}\n taskmod{tag.RGV.taskmod} \n t1No:{tag.RGV.taskno1}\n t1do:{tag.RGV.task1do} \n t2No:{tag.RGV.taskno2}\n t2do:{tag.RGV.task2do}\n taskend:{tag.RGV.taskend} "); |
| | | if (tag.RGV.taskend == 125) |
| | | { |
| | | LogHelper.Info($"RGV æ125å½ä»¤æªæ§è¡ã "); |
| | | LogHelper.Info($"RGV125å½ä»¤æªæ§è¡ 任塿°æ® workmode:{tag.RGV.workMod}\n taskmod{tag.RGV.taskmod} \n t1No:{tag.RGV.taskno1}\n t1do:{tag.RGV.task1do} \n t2No:{tag.RGV.taskno2}\n t2do:{tag.RGV.task2do}\n taskend:{tag.RGV.taskend} "); |
| | | |
| | | |
| | | if (tag.RGV.workMod == 0 && tag.RGV.taskmod == 0 && tag.RGV.taskno1 == tag.RGV.ReadTask1No && tag.RGV.taskno2 == tag.RGV.ReadTask2No) |
| | | { |
| | | LogHelper.Info($"RGV125å½ä»¤æªæ§è¡ tag.RGV.workMod == 0 && tag.RGV.taskmod == 0 && tag.RGV.taskno1 == tag.RGV.ReadTask1No && tag.RGV.taskno2 == tag.RGV.ReadTask2No èªå¨æ¸
é¤125"); |
| | |
| | | // var b = RedisHelper.Remove("RGVQueue", out rev); |
| | | // } |
| | | //} |
| | | var tklistall = taskservice.FindList(x => x.S_B_STATE != "宿" && x.S_B_STATE != "忶" && x.S_WORK_MODE == "RGV").OrderBy(x => x.T_CREATE).ToList(); |
| | | var tklist = tklistall.FindAll(x => x.S_B_STATE == "æªæ§è¡"); |
| | | var tkunNormal = tklistall.Except(tklist); |
| | | if (tkunNormal.Any()) |
| | | foreach (var tk in tkunNormal) |
| | | { |
| | | if (tk.S_TASK_NO != task1?.S_TASK_NO && tk.S_TASK_NO != task2?.S_TASK_NO) |
| | | { |
| | | tk.S_B_STATE = "åæ¶"; |
| | | tk.S_NOTE = "ä¸å¨æ§è¡éåä¸,åæ¶"; |
| | | taskservice.Update(tk); |
| | | } |
| | | } |
| | | |
| | | ///1 æè´§ å°±2 åã 1 没货 å°±2 å¸è´§ï¼ é½æè´§ å°±1å¸è´§ã 齿²¡è´§ å°±1å¸ |
| | | var tklist = taskservice.FindList(x => x.S_B_STATE == "æªæ§è¡" && x.S_WORK_MODE == "RGV").OrderBy(x => x.T_CREATE).ToList(); |
| | | // taskservice.FindList(x => x.S_B_STATE == "æªæ§è¡" && x.S_WORK_MODE == "RGV").OrderBy(x => x.T_CREATE).ToList(); |
| | | if (task1 != null && task1.S_B_STATE != "宿") //1æä»»å¡ |
| | | { |
| | | if (task2 != null && task2.S_B_STATE != "宿")// 1 æä»»å¡ 2 æä»»å¡ã |
| | |
| | | continuuuuu = true; |
| | | } |
| | | else |
| | | { |
| | | SetRedistoPlc("A1019å货交äº.Ssetreq", "true", "A1019å货交äºQueue", "åAGVç³è¯·"); |
| | | tag.SA1019.StaskMode = 1; |
| | | } |
| | | } |
| | | break; |
| | | case "1030": |
| | |
| | | continuuuuu = true; |
| | | } |
| | | else |
| | | { |
| | | SetRedistoPlc("A1030å货交äº.Ssetreq", "true", "A1030å货交äºQueue", "åAGVç³è¯·"); |
| | | tag.SA1030.StaskMode = 1; |
| | | } |
| | | } |
| | | break; |
| | | case "2030": |
| | |
| | | continuuuuu = true; |
| | | } |
| | | else |
| | | { |
| | | SetRedistoPlc("A2030å货交äº.Ssetreq", "true", "A2030å货交äºQueue", "åAGVç³è¯·"); |
| | | tag.SA2030.StaskMode = 1; |
| | | } |
| | | } |
| | | break; |
| | | case "3005": |
| | |
| | | continuuuuu = true; |
| | | } |
| | | else |
| | | { |
| | | SetRedistoPlc("A3005å货交äº.Ssetreq", "true", "A3005å货交äºQueue", "åAGVç³è¯·"); |
| | | tag.ssxè¾é线.s3005.StaskMode = 1; |
| | | } |
| | | } |
| | | break; |
| | | case "3010": |
| | |
| | | continuuuuu = true; |
| | | } |
| | | else |
| | | { |
| | | SetRedistoPlc("A3010å货交äº.Ssetreq", "true", "A3010å货交äºQueue", "åAGVç³è¯·"); |
| | | tag.ssxè¾é线.s3010.StaskMode = 1; |
| | | } |
| | | } |
| | | break; |
| | | //} |
| | |
| | | continuuuuu = true; |
| | | } |
| | | else |
| | | { |
| | | SetRedistoPlc("A1022æ¾è´§äº¤äº.Ssetreq", "true", "A1022æ¾è´§äº¤äºQueue", "åAGVç³è¯·"); |
| | | tag.SA1022.StaskMode = 2; |
| | | } |
| | | } |
| | | break; |
| | | case "1025": |
| | |
| | | continuuuuu = true; |
| | | } |
| | | else |
| | | { |
| | | SetRedistoPlc("A1025æ¾è´§äº¤äº.Ssetreq", "true", "A1025æ¾è´§äº¤äºQueue", "åAGVç³è¯·"); |
| | | tag.SA1025.StaskMode = 2; |
| | | } |
| | | } |
| | | break; |
| | | case "2001": |
| | |
| | | continuuuuu = true; |
| | | } |
| | | else |
| | | { |
| | | SetRedistoPlc("A2001æ¾è´§äº¤äº.Ssetreq", "true", "A2001æ¾è´§äº¤äºQueue", "åAGVç³è¯·"); |
| | | tag.SA2001.StaskMode = 2; |
| | | } |
| | | } |
| | | break; |
| | | case "3001": |
| | |
| | | continuuuuu = true; |
| | | } |
| | | else |
| | | { |
| | | SetRedistoPlc("A3001æ¾è´§äº¤äº.Ssetreq", "true", "A3001æ¾è´§äº¤äºQueue", "åAGVç³è¯·"); |
| | | tag.ssxè¾é线.s3001.StaskMode = 2; |
| | | } |
| | | } |
| | | break; |
| | | case "3006": |
| | |
| | | continuuuuu = true; |
| | | } |
| | | else |
| | | { |
| | | SetRedistoPlc("A3006æ¾è´§äº¤äº.Ssetreq", "true", "A3006æ¾è´§äº¤äºQueue", "åAGVç³è¯·"); |
| | | tag.ssxè¾é线.s3006.StaskMode = 2; |
| | | } |
| | | } |
| | | break; |
| | | } |
| | |
| | | { |
| | | |
| | | var close = (System.UInt16)System.Convert.ChangeType(Conn.é»è®¤Redis.GetValue(dev.deviceName + "." + (V ? "D2220" : "D2225")), typeof(System.UInt16)); |
| | | if (close == 1) |
| | | if (close == 0) |
| | | { |
| | | LogHelper.Info($"{dev.deviceName}{(V ? "å·¦" : "å³")} å
æ
{(goin ? "å
³é" : "å¼å¯")} ç³è¯·ã å·²ç»å
³éï¼"); |
| | | continuuuuu = true; |
| | |
| | | //ä¸çº¿å°åï¼10.221.55.181 端å£ï¼6000 |
| | | //if (IsMachineOnline("10.221.55.181")) |
| | | { |
| | | //if (tag.DZ1.D2211 == 1 && tag.DZ1.D2220 == 1) |
| | | // tag.DZ1.D2211 = 0; |
| | | //if (tag.DZ1.D2216 == 1 && tag.DZ1.D2225 == 1) |
| | | // tag.DZ1.D2216 = 0; |
| | | if (tag.DZ1.D2211 == 1 && tag.DZ1.D2220 == 1) |
| | | //tag.DZ1.D2211 = 0; |
| | | Conn.é»è®¤Redis.SetValue("Då®å1å·æºæ¢°æ.D2211", "0", "Då®å1å·æºæ¢°æQueue", false); |
| | | if (tag.DZ1.D2216 == 1 && tag.DZ1.D2225 == 1) |
| | | //tag.DZ1.D2216 = 0; |
| | | Conn.é»è®¤Redis.SetValue("Då®å1å·æºæ¢°æ.D2216", "0", "Då®å1å·æºæ¢°æQueue", false); |
| | | } |
| | | //äºçº¿å°åï¼10.221.55.179 端å£ï¼6000 |
| | | //if (IsMachineOnline("10.221.55.179")) |
| | | { |
| | | //if (tag.DZ2.D2211 == 1 && tag.DZ2.D2220 == 1) |
| | | // tag.DZ2.D2211 = 0; |
| | | //if (tag.DZ2.D2216 == 1 && tag.DZ2.D2225 == 1) |
| | | // tag.DZ2.D2216 = 0; |
| | | if (tag.DZ2.D2211 == 1 && tag.DZ2.D2220 == 1) |
| | | //tag.DZ2.D2211 = 0; |
| | | Conn.é»è®¤Redis.SetValue("Då®å2å·æºæ¢°æ.D2211", "0", "Då®å2å·æºæ¢°æQueue", false); |
| | | if (tag.DZ2.D2216 == 1 && tag.DZ2.D2225 == 1) |
| | | //tag.DZ2.D2216 = 0; |
| | | Conn.é»è®¤Redis.SetValue("Då®å2å·æºæ¢°æ.D2216", "0", "Då®å2å·æºæ¢°æQueue", false); |
| | | } |
| | | } |
| | | LogHelper.Info($"ThreadGrats deviceType5å
æ
åå
¥ä½éç½®å®æã =================> "); |
| | |
| | | { |
| | | RedisHelper.Add($"S{Bssx}Read.RtaskState_LAST", "1", out msg); |
| | | RedisHelper.Add($"S{item}Read.R5空é²_LAST", "1", out string msg2); |
| | | |
| | | LogHelper.Info($"{Ræçç } å®åçäº§å®æè¿è¡é²å·¥ï¼ï¼"); |
| | | var str = Settings.apiHelper.Post(Settings.MESbaseUrl + "mom-basic/dataTransmission/json/service/223", JsonConvert.SerializeObject(new |
| | | { |
| | | cntrCode = Ræçç , |
| | | type = 1, |
| | | lineCode = "1002,1008".Contains(Bssx) ? "T01" : "T02" |
| | | })); |
| | | //var strr = JsonConvert.DeserializeObject<MES2234>(str); |
| | | //if (strr.success && strr.data != null) |
| | | //{ |
| | | |
| | | //} |
| | | //Conn.é»è®¤Redis.SetValue($"S{Bssx}Read.RtaskState_LAST", "1", $"S{Bssx}ReadQueue"); |
| | | //Conn.é»è®¤Redis.SetValue($"S{item}Read.R5空é²_LAST", "1", $"S{item}ReadQueue"); |
| | | break; |
| | |
| | | { |
| | | RedisHelper.Add($"S{Bssx}Read.RtaskState_LAST", "1", out msg); |
| | | RedisHelper.Add($"S{item}Read.R5空é²_LAST", "1", out string msg1); |
| | | LogHelper.Info($"{Ræçç } 转åçäº§å®æè¿è¡é²å·¥ï¼ï¼"); |
| | | var str = Settings.apiHelper.Post(Settings.MESbaseUrl + "mom-basic/dataTransmission/json/service/223", JsonConvert.SerializeObject(new |
| | | { |
| | | cntrCode = Ræçç , |
| | | type = 2, |
| | | lineCode = "1002,1008".Contains(Bssx) ? "T01" : "T02" |
| | | })); |
| | | //Conn.é»è®¤Redis.SetValue($"S{Bssx}Read.RtaskState_LAST", "1", $"S{Bssx}ReadQueue"); |
| | | //Conn.é»è®¤Redis.SetValue($"S{item}Read.R5空é²_LAST", "1", $"S{item}ReadQueue"); |
| | | break; |
| | |
| | | { |
| | | LogHelper.Info($"ssx == 1003 && tag.SF䏿ä½.WRelease1003:{tag.SF䏿ä½.WRelease1003} åf1 2210=1ï¼Arrive{ssx}BarcodeLast={RtrayCode}"); |
| | | tag.FNK1.D2210 = 1; |
| | | //Conn.é»è®¤Redis.SetValue($"påé£ç§1ä¸çº¿.D2210", "1", $"påé£ç§1ä¸çº¿Queue",false); |
| | | } |
| | | break; |
| | | case "1005": |
| | |
| | | |
| | | if (WRelease == 1 && rReleaseOver == 1) |
| | | { |
| | | switch (ssx) |
| | | { |
| | | case "1003": |
| | | { |
| | | LogHelper.Info($"读{ssx} WRelease=1&& rReleaseOver=1 读FNK1.D2213{tag.FNK1.D2213}=1? å¹¶å0"); |
| | | tag.FNK1.D2213 = 0; |
| | | } |
| | | break; |
| | | case "1005": |
| | | { |
| | | LogHelper.Info($"读{ssx} WRelease=1&& rReleaseOver=1 读FNK1.D2218{tag.FNK1.D2218}=1? å¹¶å0"); |
| | | tag.FNK1.D2218 = 0; |
| | | } |
| | | break; |
| | | case "1011": |
| | | { |
| | | LogHelper.Info($"读{ssx} WRelease=1&& rReleaseOver=1 读FNK2.D2213{tag.FNK1.D2213}=1? å¹¶å0"); |
| | | tag.FNK2.D2213 = 0; |
| | | } |
| | | break; |
| | | case "1013": |
| | | { |
| | | LogHelper.Info($"读{ssx} WRelease=1&& rReleaseOver=1 读FNK2.D2218{tag.FNK2.D2218}=1? å¹¶å0"); |
| | | tag.FNK2.D2218 = 0; |
| | | } |
| | | break; |
| | | } |
| | | //switch (ssx) |
| | | //{ |
| | | // case "1003": |
| | | // { |
| | | // LogHelper.Info($"读{ssx} WRelease=1&& rReleaseOver=1 读FNK1.D2213{tag.FNK1.D2213}=1? å¹¶å0"); |
| | | // tag.FNK1.D2213 = 0; |
| | | // } |
| | | // break; |
| | | // case "1005": |
| | | // { |
| | | // LogHelper.Info($"读{ssx} WRelease=1&& rReleaseOver=1 读FNK1.D2218{tag.FNK1.D2218}=1? å¹¶å0"); |
| | | // tag.FNK1.D2218 = 0; |
| | | // } |
| | | // break; |
| | | // case "1011": |
| | | // { |
| | | // LogHelper.Info($"读{ssx} WRelease=1&& rReleaseOver=1 读FNK2.D2213{tag.FNK1.D2213}=1? å¹¶å0"); |
| | | // tag.FNK2.D2213 = 0; |
| | | // } |
| | | // break; |
| | | // case "1013": |
| | | // { |
| | | // LogHelper.Info($"读{ssx} WRelease=1&& rReleaseOver=1 读FNK2.D2218{tag.FNK2.D2218}=1? å¹¶å0"); |
| | | // tag.FNK2.D2218 = 0; |
| | | // } |
| | | // break; |
| | | //} |
| | | LogHelper.Info($"读{ssx} WRelease=1&& rReleaseOver=1 WRelease å0"); |
| | | Conn.é»è®¤Redis.SetValue($"FNK1003051113.WRelease{ssx}", "0", $"FNK1003051113Queue"); |
| | | } |
| | |
| | | if (tag.FNK1.D2217 == 1 && tag.FNK1.D2217_LAST == 0) |
| | | { |
| | | //tag.FNK1.D2215 = 0; |
| | | tag.FNK1.D2218 = 1; |
| | | //tag.FNK1.D2218 = 1; |
| | | //tag.FNK1.D2212_LAST = 1; |
| | | RedisHelper.Add($"påé£ç§1ä¸çº¿.D2217_LAST", "1", out string msg); |
| | | |
| | |
| | | LogHelper.Info($" FN1 D2212>{tag.FNK1.D2212} D2212LAST>{tag.FNK1.D2212_LAST} D2210>{tag.FNK1.D2210} D2211>{tag.FNK1.D2211} D2213>{tag.FNK1.D2213}"); |
| | | if (tag.FNK1.D2212 == 1 && tag.FNK1.D2212_LAST == 0) |
| | | { |
| | | tag.FNK1.D2213 = 1; |
| | | //tag.FNK1.D2213 = 1; |
| | | //tag.FNK1.D2210 = 0; |
| | | //tag.FNK1.D2217_LAST = 1; |
| | | RedisHelper.Add($"påé£ç§1ä¸çº¿.D2212_LAST", "1", out string msg); |
| | |
| | | if (tag.FNK2.D2217 == 1 && tag.FNK2.D2217_LAST == 0) |
| | | { |
| | | //tag.FNK2.D2215 = 0; |
| | | tag.FNK2.D2218 = 1; |
| | | //tag.FNK2.D2218 = 1; |
| | | //tag.FNK2.D2212_LAST = 1; |
| | | RedisHelper.Add($"påé£ç§2ä¸çº¿.D2217_LAST", "1", out string msg); |
| | | |
| | |
| | | if (tag.FNK2.D2212 == 1 && tag.FNK2.D2212_LAST == 0) |
| | | { |
| | | //tag.FNK2.D2210 = 0; |
| | | tag.FNK2.D2213 = 1; |
| | | //tag.FNK2.D2213 = 1; |
| | | //tag.FNK2.D2217_LAST = 1; |
| | | RedisHelper.Add($"påé£ç§2ä¸çº¿.D2212_LAST", "1", out string msg); |
| | | |
| | |
| | | { |
| | | var taggg = tag.SA1019; |
| | | string vqu = "A1019å货交äº"; |
| | | Console.WriteLine($"1019ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (tag.SA1019.SOver && tag.SA1019.SreadSsxOver) |
| | | LogHelper.Info($"1019ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (taggg.SOver && taggg.SreadAgvover) |
| | | { |
| | | SetRedistoPlc(vqu + ".Ssetreq", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".SOver", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | |
| | | private void sa2008(Tag tag) |
| | | { |
| | | var rdisTcode = RedisHelper.Get<string>($"Arrive{2008}BarcodeLast", out string msg); |
| | | //if(tag.ssxè¾é线.s2008) |
| | | LogHelper.Info($"2008 æçå·{tag.SA2030.Ræçç } redis Arrive{2008}BarcodeLastæçå·ï¼{rdisTcode} å¹é
æ ¡éªã"); |
| | | if (!string.IsNullOrEmpty(tag.ssxè¾é线.s2008.Ræçç ) && rdisTcode != tag.ssxè¾é线.s2008.Ræçç ) |
| | | { |
| | | var ntr = tag.ssxè¾é线.s2008.Ræçç ; |
| | | var str = Settings.apiHelper.Post(Settings.MESbaseUrl + "mom-basic/dataTransmission/json/service/224", JsonConvert.SerializeObject(new |
| | | { |
| | | cntrCode = ntr, |
| | | type = 1 |
| | | })); |
| | | var strr = JsonConvert.DeserializeObject<MES2234>(str); |
| | | if (strr.success && strr.data != null) |
| | | { |
| | | var end = (strr.data.lineNum == 1 ? 2027 |
| | | : strr.data.lineNum == 2 ? 2020 : 2013); |
| | | tag.ssxè¾é线.s2008.wTaskNo = (uint)(20080000 + end); |
| | | tag.ssxè¾é线.s2008.wEbit = 2027; |
| | | tag.ssxè¾é线.s2008.Ræçç = ntr; |
| | | RedisHelper.Add<string>($"Arrive{2008}BarcodeLast", ntr, out msg); |
| | | } |
| | | } |
| | | } |
| | | |
| | | private void sa2030(Tag tag) |
| | | { |
| | | var taggg = tag.SA2030; |
| | | string vqu = "A2030å货交äº"; |
| | | Console.WriteLine($"{vqu}ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (tag.SA1019.SOver && tag.SA1019.SreadSsxOver) |
| | | LogHelper.Info($"{vqu}ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (taggg.SOver && taggg.SreadAgvover) |
| | | { |
| | | SetRedistoPlc(vqu + ".Ssetreq", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".SOver", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".Ssetreq", "false", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".SOver", "false", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".StaskMode", "0", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | } |
| | | } |
| | | |
| | |
| | | { |
| | | var taggg = tag.SA2001; |
| | | string vqu = "A2001æ¾è´§äº¤äº"; |
| | | Console.WriteLine($"{vqu}ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (tag.SA1019.SOver && tag.SA1019.SreadSsxOver) |
| | | LogHelper.Info($"{vqu}ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (taggg.SOver && taggg.SreadAgvover) |
| | | { |
| | | SetRedistoPlc(vqu + ".Ssetreq", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".SOver", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".Ssetreq", "false", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".SOver", "false", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".StaskMode", "0", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | } |
| | | } |
| | | |
| | |
| | | { |
| | | var taggg = tag.SA1030; |
| | | string vqu = "A1030å货交äº"; |
| | | Console.WriteLine($"{vqu}ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (tag.SA1019.SOver && tag.SA1019.SreadSsxOver) |
| | | LogHelper.Info($"{vqu}ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (taggg.SOver && taggg.SreadAgvover) |
| | | { |
| | | SetRedistoPlc(vqu + ".Ssetreq", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".SOver", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".StaskMode", "0", vqu + "Queue", "åAGVç³è¯·"); |
| | | } |
| | | } |
| | | |
| | |
| | | { |
| | | var taggg = tag.SA1025; |
| | | string vqu = "A1025æ¾è´§äº¤äº"; |
| | | Console.WriteLine($"{vqu}ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (tag.SA1019.SOver && tag.SA1019.SreadSsxOver) |
| | | LogHelper.Info($"{vqu}ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (taggg.SOver && taggg.SreadAgvover) |
| | | { |
| | | SetRedistoPlc(vqu + ".Ssetreq", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".SOver", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".Ssetreq", "false", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".SOver", "false", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".StaskMode", "0", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | } |
| | | } |
| | | |
| | |
| | | { |
| | | var taggg = tag.SA1022; |
| | | string vqu = "A1022æ¾è´§äº¤äº"; |
| | | Console.WriteLine($"{vqu}ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (tag.SA1019.SOver && tag.SA1019.SreadSsxOver) |
| | | LogHelper.Info($"{vqu}ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (taggg.SOver && taggg.SreadAgvover) |
| | | { |
| | | SetRedistoPlc(vqu + ".Ssetreq", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".SOver", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".Ssetreq", "false", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".SOver", "false", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".StaskMode", "0", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | } |
| | | } |
| | | |
| | |
| | | { |
| | | var taggg = tag.ssxè¾é线.s3010; |
| | | string vqu = "A3010å货交äº"; |
| | | Console.WriteLine($"{vqu}ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (tag.SA1019.SOver && tag.SA1019.SreadSsxOver) |
| | | LogHelper.Info($"{vqu}ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (taggg.SOver && taggg.SreadAgvover) |
| | | { |
| | | SetRedistoPlc(vqu + ".Ssetreq", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".SOver", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".Ssetreq", "false", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".SOver", "false", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".StaskMode", "0", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | } |
| | | } |
| | | |
| | |
| | | { |
| | | var taggg = tag.ssxè¾é线.s3006; |
| | | string vqu = "A3006æ¾è´§äº¤äº"; |
| | | Console.WriteLine($"{vqu}ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (tag.SA1019.SOver && tag.SA1019.SreadSsxOver) |
| | | LogHelper.Info($"{vqu}ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (taggg.SOver && taggg.SreadAgvover) |
| | | { |
| | | SetRedistoPlc(vqu + ".Ssetreq", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".SOver", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".Ssetreq", "false", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".SOver", "false", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".StaskMode", "0", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | } |
| | | } |
| | | |
| | |
| | | { |
| | | var taggg = tag.ssxè¾é线.s3005; |
| | | string vqu = "A3005å货交äº"; |
| | | Console.WriteLine($"{vqu}ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (tag.SA1019.SOver && tag.SA1019.SreadSsxOver) |
| | | LogHelper.Info($"{vqu}ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (taggg.SOver && taggg.SreadAgvover) |
| | | { |
| | | SetRedistoPlc(vqu + ".Ssetreq", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".SOver", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".Ssetreq", "false", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".SOver", "false", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".StaskMode", "0", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | } |
| | | } |
| | | |
| | |
| | | { |
| | | var taggg = tag.ssxè¾é线.s3010; |
| | | string vqu = "A3001æ¾è´§äº¤äº"; |
| | | Console.WriteLine($"{vqu}ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (tag.SA1019.SOver && tag.SA1019.SreadSsxOver) |
| | | LogHelper.Info($"{vqu}ä»»å¡ç¶æï¼ =====>ä»»å¡ç³è¯·ï¼{taggg.Ssetreq},è¾é线å
许ï¼{taggg.SreadCan} ä»»å¡å®æï¼{taggg.SOver} è¾é线æ¶å°å®æï¼{taggg.SreadAgvover}"); |
| | | if (taggg.SOver && taggg.SreadAgvover) |
| | | { |
| | | SetRedistoPlc(vqu + ".Ssetreq", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".SOver", "false", vqu + "Queue", "åAGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".Ssetreq", "false", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".SOver", "false", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | SetRedistoPlc(vqu + ".StaskMode", "0", vqu + "Queue", "æ¸
AGVç³è¯·"); |
| | | } |
| | | } |
| | | |
| | |
| | | } |
| | | public void Thread1030Down(Tag tag) |
| | | { |
| | | //Console.WriteLine($"SA1030 ä»»å¡ç¶æï¼ =====>agv宿SOver{tag.SA1030.SOver}"); |
| | | Console.WriteLine($"SA1030 ä»»å¡ç¶æï¼ =====>"); |
| | | if (tag.SA1030.RtaskState == 4 && tag.SA1030.RtaskState_LAST == 0 && tag.SA2001.R5ç©ºé² == 5) |
| | | { |
| | | var str = Settings.apiHelper.Post(Settings.WMSbaseUrl + "mom-basic/dataTransmission/json/service/200", JsonConvert.SerializeObject(new |
| | | { |
| | | requestType = 10, |
| | | startBit = "1030", |
| | | endBit = "2001", |
| | | })); |
| | | RedisHelper.Add($"S1030Read.RtaskState_LAST", "1", out string msg); |
| | | } |
| | | else if (tag.SA1030.RtaskState != 4 && tag.SA1030.RtaskState_LAST == 1) |
| | | RedisHelper.Add($"S1030Read.RtaskState_LAST", "0", out string msg); |
| | | //if (tag.SA1019.SOver && tag.SA1019.SreadSsxOver) |
| | | //{ |
| | | // SetRedistoPlc("A1022æ¾è´§äº¤äº.Ssetreq", "false", "A1022æ¾è´§äº¤äºQueue", "æ¸
ç"); |
| | |
| | | case "1022": |
| | | { |
| | | type = "A008"; |
| | | if (tag.SA1022.R5ç©ºé² != 1) |
| | | if (tag.SA1022.R5ç©ºé² != 5) |
| | | { |
| | | LogHelper.Info($"è§£éMESä»»å¡ ->{task.S_TASK_NO} ç»ç¹1022 é空é²ï¼ä¸æ¨é"); |
| | | LogHelper.Info($"è§£éMESä»»å¡ ->{task.S_TASK_NO} ç»ç¹1022 >{tag.SA1022.R5空é²} é空é²ï¼ä¸æ¨é"); |
| | | continue; |
| | | } |
| | | } |
| | |
| | | case "1025": |
| | | { |
| | | type = "A007"; |
| | | if (tag.SA1025.R5ç©ºé² != 1) |
| | | if (tag.SA1025.R5ç©ºé² != 5) |
| | | { |
| | | LogHelper.Info($"è§£éMESä»»å¡ ->{task.S_TASK_NO} ç»ç¹ 1025 é空é²ï¼ä¸æ¨é"); |
| | | LogHelper.Info($"è§£éMESä»»å¡ ->{task.S_TASK_NO} ç»ç¹ 1025 >{tag.SA1025.R5空é²} é空é²ï¼ä¸æ¨é"); |
| | | continue; |
| | | } |
| | | } |
| | |
| | | case "2001": |
| | | { |
| | | type = "A007"; |
| | | if (tag.SA2001.R5ç©ºé² != 1) |
| | | if (tag.SA2001.R5ç©ºé² != 5) |
| | | { |
| | | LogHelper.Info($"è§£éMESä»»å¡ ->{task.S_TASK_NO} ç»ç¹ 2001 é空é²ï¼ä¸æ¨é"); |
| | | LogHelper.Info($"è§£éMESä»»å¡ ->{task.S_TASK_NO} ç»ç¹ 2001>{tag.SA2001.R5空é²} é空é²ï¼ä¸æ¨é"); |
| | | continue; |
| | | } |
| | | } |
| | |
| | | case "3001": |
| | | { |
| | | type = "A010"; |
| | | if (tag.ssxè¾é线.s3001.R5ç©ºé² != 1) |
| | | if (tag.ssxè¾é线.s3001.R5ç©ºé² != 5) |
| | | { |
| | | LogHelper.Info($"è§£éMESä»»å¡ ->{task.S_TASK_NO} ç»ç¹ 3001 é空é²ï¼ä¸æ¨é"); |
| | | LogHelper.Info($"è§£éMESä»»å¡ ->{task.S_TASK_NO} ç»ç¹ 3001>{tag.ssxè¾é线.s3001.R5空é²} é空é²ï¼ä¸æ¨é"); |
| | | continue; |
| | | } |
| | | } |
| | |
| | | case "3006": |
| | | { |
| | | type = "A010"; |
| | | if (tag.ssxè¾é线.s3006.R5ç©ºé² != 1) |
| | | if (tag.ssxè¾é线.s3006.R5ç©ºé² != 5) |
| | | { |
| | | LogHelper.Info($"è§£éMESä»»å¡ ->{task.S_TASK_NO} ç»ç¹ 3006 é空é²ï¼ä¸æ¨é"); |
| | | LogHelper.Info($"è§£éMESä»»å¡ ->{task.S_TASK_NO} ç»ç¹ 3006>{tag.ssxè¾é线.s3001.R5空é²} é空é²ï¼ä¸æ¨é"); |
| | | continue; |
| | | } |
| | | } |
| | |
| | | |
| | | LogHelper.Info($"è§£éMESä»»å¡ ->{task.S_TASK_NO} ç´æ¥çæå¯¹åºä»»å¡"); |
| | | //ç´æ¥çæå¯¹åºä»»å¡ã |
| | | var res = TaskProcess.CreateTask(task.S_TASK_NO, task.S_START_LOC, task.S_END_LOC, task.S_TYPE, 6, task.S_CNTRS?.Split(',').ToList() ?? new List<string>(), type); |
| | | var res = TaskProcess.CreateTask(task.S_TASK_NO, task.S_START_LOC, task.S_END_LOC, task.S_TYPE, 6, task.S_CNTRS?.Split(',').ToList() ?? new List<string>(), "AGV", type); |
| | | |
| | | LogHelper.Info($"è§£éMESä»»å¡ ->{task.S_TASK_NO} ç´æ¥çæå¯¹åºä»»å¡ ç»æï¼{res}"); |
| | | if (res) |
| | |
| | | |
| | | public string procNo() |
| | | { |
| | | return TaskProcess.GenerateTaskNo("æ¥å¿æµæ°´å·"); |
| | | return TaskProcess.GenerateTaskNo("æ¥å¿æµæ°´å·", "LOG"); |
| | | } |
| | | public bool SetRedistoPlc(string key, string value, string queue, string desc) |
| | | { |
| | |
| | | { |
| | | requestType = 7, |
| | | startBit = VERX.location[0], |
| | | endBit = "1025", |
| | | unLockStartBitOutbin = true |
| | | })); |
| | | LogHelper.Info($"{VERX.location[0]}ç³è¯·mesä»»å¡ç»æ{str}"); |
| | |
| | | { |
| | | requestType = 7, |
| | | startBit = VERX.location[1], |
| | | endBit = "1025", |
| | | unLockStartBitOutbin = true |
| | | })); |
| | | LogHelper.Info($"{VERX.location[0]}ç³è¯·mesä»»å¡ç»æ{str}"); |
| | |
| | | LogHelper.Info("å®å2å·çº¿ deviceType 5 没æé
ç½®ã"); |
| | | return; |
| | | } |
| | | LogHelper.Info($" {VERX.deviceName} D2221>{tag.DZ1.D2221} D2221_LAST>{tag.DZ1.D2221_LAST} D2226>{tag.DZ1.D2226} D2226_LAST>{tag.DZ1.D2226_LAST}"); |
| | | LogHelper.Info($" {VERX.deviceName} D2221>{tag.DZ2.D2221} D2221_LAST>{tag.DZ2.D2221_LAST} D2226>{tag.DZ2.D2226} D2226_LAST>{tag.DZ2.D2226_LAST}"); |
| | | if (tag.DZ2.D2221 == 1 && tag.DZ2.D2221_LAST == 0) |
| | | { |
| | | var str = Settings.apiHelper.Post(Settings.WMSbaseUrl + "mom-basic/dataTransmission/json/service/200", JsonConvert.SerializeObject(new |
| | | { |
| | | requestType = 7, |
| | | startBit = VERX.location[0], |
| | | endBit = "1025", |
| | | unLockStartBitOutbin = true |
| | | })); |
| | | LogHelper.Info($"{VERX.location[0]}ç³è¯·mesä»»å¡ç»æ{str}"); |
| | |
| | | { |
| | | requestType = 7, |
| | | startBit = VERX.location[1], |
| | | endBit = "1025", |
| | | unLockStartBitOutbin = true |
| | | })); |
| | | LogHelper.Info($"{VERX.location[0]}ç³è¯·mesä»»å¡ç»æ{str}"); |