public OpcClient GetOpcConnection(string ip) { OpcClient opc; OpcConnections.TryGetValue(ip, out opc); return(opc); }
public void InitConnection(string ip) { // string ip = "opc.tcp://127.0.0.1:4840"; // string ip2 = "opc.tcp://10.112.254.69:4840"; System.Diagnostics.Debug.WriteLine(ip); if (OpcConnections.ContainsKey(ip)) { OpcClient c = new OpcClient(ip); OpcConnections[ip] = c; } else { OpcClient c = new OpcClient(ip); OpcConnections.Add(ip, c); AddEventHandler(c); } }
public bool HandleCommand(string ip, string command) { OpcClient opc; bool succeeded = OpcConnections.TryGetValue(ip, out opc); if (succeeded) { switch (command) { case "start": if (Singleton.Instance.DBManager.RetrieveFromBatchQueue().Count > 0 && opc.StateCurrent == 4) { BatchQueueModel bqm = Singleton.Instance.DBManager.RetrieveFromBatchQueue()[0]; Singleton.Instance.DBManager.RemoveFromBatchQueue(bqm.Id); opc.StartMachine(10, bqm.BeerId, bqm.Amount, bqm.Speed); } break; case "stop": opc.StopMachine(); break; case "clear": opc.ClearMachine(); break; case "abort": opc.AbortMachine(); break; case "reset": opc.ResetMachine(); break; default: throw new Exception("Invalid command"); } } return(succeeded); }