using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using OpcAccess; namespace iWareSda_QQJF.RGV.RgvModel { class rgvOPC { public static OpcDaMode rgvopc(int rgvno,rgvDB rgvdb,OpcDaMode rgvopc) { try { rgvopc = new OpcDaMode(); rgvopc.Class_Initialize("OPC.SimaticNET", "192.168.1.29");//初始化OPC连接 rgvopc.AddGroup("rgv" + rgvno.ToString() + "_OPC");//自定义组名 List itemAddress = new List{ rgvdb.rgvNoW, rgvdb.estopW, rgvdb.starPosW, rgvdb.endPosW, rgvdb.palletType, rgvdb.taskIdW, rgvdb.cmdW, rgvdb.ackTaskFinishW, rgvdb.resetW, rgvdb.rgvfatheridW, //-------------------------- rgvdb.rgvNoR, rgvdb.getFinishR, rgvdb.putFinishR, rgvdb.onLineR, rgvdb.alarmR, rgvdb.taskFinishR, rgvdb.loadedR, rgvdb.alarmCodeR, rgvdb.stateR, rgvdb.posR, rgvdb.taskIdR, rgvdb.handShskeR, rgvdb.posationR, rgvdb.totalR }; rgvopc.SetItemAddresses(itemAddress); rgvopc.SetGroupDataChange(); rgvopc.DataValues = rgvopc.ReadValueSerial(); } catch (Exception ) { //errorStr += ex.ToString() + "\r\n"; } return rgvopc; } } }