using HslCommunication;
|
using System;
|
using System.Collections.Generic;
|
using System.Text;
|
using WIDESEA_Core.EFDbContext;
|
using WIDESEA_Services.IRepositories;
|
using WIDESEA_Services.Repositories;
|
using WIDESEA_WCS.WCSClient;
|
|
namespace WIDESEA_WCS.SchedulerExecute.AGV
|
{
|
public partial class AGVSchedulerExecute
|
{
|
public static void AgvAndEquiWorkThreeHKFJ()
|
{
|
VOLContext Context = new VOLContext();
|
Idt_plcinfodetailRepository plcdetailRep = new dt_plcinfodetailRepository(Context);
|
Idt_plcinfoheadRepository plcheadRep = new dt_plcinfoheadRepository(Context);
|
PLCClient fagvthreeplchk = WCSService.Clients.Find(v => v.PLCName == "负极2号AGV");
|
|
#region 负极6-10烘烤设备信号传递
|
int hkfornumthree = 1200;
|
double agvthreedbaGT1 = 4893.6;
|
double agvthreedbaGT2 = 4893.7;
|
double agvthreedbaGT3 = 5093.6;
|
double agvthreedbaGT4 = 5093.6;
|
double agvthreedbFa = 4894.0;
|
double agvthreedbFb = 4895.0;
|
double agvthreedbFc = 4896.0;
|
double agvthreedbFd = 4897.0;
|
double agvthreedbFe = 4898.0;
|
double agvthreedbFf = 4994.0;
|
double agvthreedbFg = 4995.0;
|
double agvthreedbFh = 4996.0;
|
double agvthreedbFi = 4997.0;
|
double agvthreedbFj = 5094.0;
|
double agvthreedbFk = 5095.0;
|
double agvthreedbFl = 5096.0;
|
double agvthreedbFm = 5194.0;
|
double agvthreedbFq = 5195.0;
|
double agvthreedbFr = 5196.0;
|
double agvthreedbFs = 5197.0;
|
double agvthreedbFt = 5198.0;
|
double agvthreedbFx = 5199.0;
|
double agvthreedbFy = 4992.2;
|
double agvthreedbFz = 5192.2;
|
List<string> FHKFQSBMegthree = new List<string> { "负极6号烘烤机","负极7号烘烤机", "负极8号烘烤机", "负极9号烘烤机", "负极10号烘烤机" };
|
foreach (var FHKSBthree in FHKFQSBMegthree)
|
{
|
if (fagvthreeplchk == null)
|
break;
|
PLCClient FHSSBone = WCSService.Clients.Find(v => v.PLCName == FHKSBthree);
|
if (FHSSBone == null)
|
{
|
hkfornumthree += 400;
|
WIDESEA_Common.Tools.WriteLog.GetLog("信号传递负极烘烤6-10").Write($"Info:“设备未连接”+{FHKSBthree}", "信号传递负极烘烤6-10");
|
continue;
|
}
|
//读烘烤滚筒是否转动
|
OperateResult<bool> RHKupGTZ1 = FHSSBone.MelsecPLCClient.readWriteNet.ReadBool("YC");
|
OperateResult<bool> RHKupGTZ2 = FHSSBone.MelsecPLCClient.readWriteNet.ReadBool("YD");
|
OperateResult<bool> RHKupGTZ3 = FHSSBone.MelsecPLCClient.readWriteNet.ReadBool("YE");
|
OperateResult<bool> RHKupGTZ4 = FHSSBone.MelsecPLCClient.readWriteNet.ReadBool("YF");
|
//写AGV滚筒转动
|
OperateResult WupresultGTZ1 = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.Write("DB1002." + (agvthreedbaGT1 + hkfornumthree), RHKupGTZ1.Content);
|
WupresultGTZ1 = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.Write("DB1002." + (agvthreedbaGT2 + hkfornumthree), RHKupGTZ2.Content);
|
WupresultGTZ1 = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.Write("DB1002." + (agvthreedbaGT3 + hkfornumthree), RHKupGTZ3.Content);
|
WupresultGTZ1 = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.Write("DB1002." + (agvthreedbaGT4 + hkfornumthree), RHKupGTZ4.Content);
|
|
//读烘烤入料
|
OperateResult<short> RFHKupa = FHSSBone.MelsecPLCClient.readWriteNet.ReadInt16("D1960");
|
|
if (!RFHKupa.IsSuccess)
|
{
|
continue;
|
}
|
OperateResult<short> RFHKupb = FHSSBone.MelsecPLCClient.readWriteNet.ReadInt16("D15");
|
OperateResult<short> RFHKupc = FHSSBone.MelsecPLCClient.readWriteNet.ReadInt16("D1961");
|
OperateResult<short> RFHKupd = FHSSBone.MelsecPLCClient.readWriteNet.ReadInt16("D1950");
|
OperateResult<short> RFHKupe = FHSSBone.MelsecPLCClient.readWriteNet.ReadInt16("D1951");
|
//写AGV入料
|
OperateResult Wupresult = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.Write("DB1002." + (agvthreedbFa + hkfornumthree), byte.Parse(RFHKupa.Content.ToString()));
|
Wupresult = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.Write("DB1002." + (agvthreedbFb + hkfornumthree), byte.Parse(RFHKupb.Content.ToString()));
|
Wupresult = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.Write("DB1002." + (agvthreedbFc + hkfornumthree), byte.Parse(RFHKupc.Content.ToString()));
|
Wupresult = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.Write("DB1002." + (agvthreedbFd + hkfornumthree), byte.Parse(RFHKupd.Content.ToString()));
|
Wupresult = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.Write("DB1002." + (agvthreedbFe + hkfornumthree), byte.Parse(RFHKupe.Content.ToString()));
|
//读AGV入料
|
OperateResult<byte> RFAGVa = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.ReadByte("DB1002." + (agvthreedbFf + hkfornumthree));
|
OperateResult<byte> RFAGVb = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.ReadByte("DB1002." + (agvthreedbFg + hkfornumthree));
|
OperateResult<byte> RFAGVc = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.ReadByte("DB1002." + (agvthreedbFh + hkfornumthree));
|
OperateResult<byte> RFAGVd = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.ReadByte("DB1002." + (agvthreedbFi + hkfornumthree));
|
OperateResult<bool> RFAGVe = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002." + (agvthreedbFy + hkfornumthree));
|
//写烘烤入料
|
OperateResult Whkresult = FHSSBone.MelsecPLCClient.readWriteNet.Write("D1940", RFAGVa.Content);
|
Whkresult = FHSSBone.MelsecPLCClient.readWriteNet.Write("D1941", RFAGVb.Content);
|
Whkresult = FHSSBone.MelsecPLCClient.readWriteNet.Write("D1955", RFAGVc.Content);
|
Whkresult = FHSSBone.MelsecPLCClient.readWriteNet.Write("D1956", RFAGVd.Content);
|
Whkresult = FHSSBone.MelsecPLCClient.readWriteNet.Write("M691", RFAGVe.Content);
|
//读烘烤出料
|
OperateResult<short> RFHKdowna = FHSSBone.MelsecPLCClient.readWriteNet.ReadInt16("D1960");
|
OperateResult<short> RFHKdownb = FHSSBone.MelsecPLCClient.readWriteNet.ReadInt16("D35");
|
OperateResult<short> RFHKdownc = FHSSBone.MelsecPLCClient.readWriteNet.ReadInt16("D1962");
|
//写AGV出料
|
OperateResult Wdownresult = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.Write("DB1002." + (agvthreedbFj + hkfornumthree), byte.Parse(RFHKdowna.Content.ToString()));
|
Wdownresult = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.Write("DB1002." + (agvthreedbFk + hkfornumthree), byte.Parse(RFHKdownb.Content.ToString()));
|
Wdownresult = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.Write("DB1002." + (agvthreedbFl + hkfornumthree), byte.Parse(RFHKdownc.Content.ToString()));
|
//读AGV出料
|
OperateResult<byte> RFAGVdowna = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.ReadByte("DB1002." + (agvthreedbFm + hkfornumthree));
|
OperateResult<byte> RFAGVdownb = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.ReadByte("DB1002." + (agvthreedbFq + hkfornumthree));
|
OperateResult<byte> RFAGVdownc = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.ReadByte("DB1002." + (agvthreedbFr + hkfornumthree));
|
OperateResult<byte> RFAGVdownd = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.ReadByte("DB1002." + (agvthreedbFs + hkfornumthree));
|
OperateResult<byte> RFAGVdowne = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.ReadByte("DB1002." + (agvthreedbFt + hkfornumthree));
|
OperateResult<byte> RFAGVdownf = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.ReadByte("DB1002." + (agvthreedbFx + hkfornumthree));
|
OperateResult<bool> RFAGVdowng = fagvthreeplchk.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002." + (agvthreedbFz + hkfornumthree));
|
//写烘烤出料
|
OperateResult Whkdownresult = FHSSBone.MelsecPLCClient.readWriteNet.Write("D1940", RFAGVdowna.Content);
|
|
Whkdownresult = FHSSBone.MelsecPLCClient.readWriteNet.Write("D1941", RFAGVdownb.Content);
|
Whkdownresult = FHSSBone.MelsecPLCClient.readWriteNet.Write("D1957", RFAGVdownc.Content);
|
Whkdownresult = FHSSBone.MelsecPLCClient.readWriteNet.Write("D1952", RFAGVdownd.Content);
|
Whkdownresult = FHSSBone.MelsecPLCClient.readWriteNet.Write("D1953", RFAGVdowne.Content);
|
Whkdownresult = FHSSBone.MelsecPLCClient.readWriteNet.Write("D1958", RFAGVdownf.Content);
|
Whkdownresult = FHSSBone.MelsecPLCClient.readWriteNet.Write("M692", RFAGVdowng.Content);
|
|
hkfornumthree += 400;
|
}
|
|
|
#endregion
|
|
WIDESEA_Common.Tools.WriteLog.GetLog("信号传递负极烘烤6-10").Write($"Info:“结束”+{DateTime.Now}", "信号传递负极烘烤6-10");
|
}
|
}
|
}
|