public void connect_Server(string Piservername) // Got from AlpacaFinal / OSIPI.cs { PISDK.PISDK SDK = new PISDK.PISDK(); //Creates new instance of PI SDK PI_SERVER = SDK.Servers["ESMARTSERVER-PC"]; //Assign PI server to local machine [Piservername] PI_SERVER.Open(PI_SERVER.DefaultUser); //Open connection through default user PISDK.PIValue PIconnect = new PISDK.PIValue(); //Create new instance of PI value PIconnect = (PISDK.PIValue)PI_SERVER.PIPoints["SP14VICE_Connection"].Data; rpiCONNECT = PIconnect.ToString(); }
// Got from AlpacaFinal / OSIPI.cs public void connect_Server(string Piservername) { PISDK.PISDK SDK = new PISDK.PISDK(); //Creates new instance of PI SDK PI_SERVER = SDK.Servers["ESMARTSERVER-PC"]; //Assign PI server to local machine [Piservername] PI_SERVER.Open(PI_SERVER.DefaultUser); //Open connection through default user PISDK.PIValue PIconnect = new PISDK.PIValue(); //Create new instance of PI value PIconnect = (PISDK.PIValue)PI_SERVER.PIPoints["SP14VICE_Connection"].Data; rpiCONNECT = PIconnect.ToString(); }
/// <summary> /// Запись значения в тэг на временную метку. /// </summary> /// <param name="Tag">Тэг.</param> /// <param name="Timestamp">Временная метка.</param> /// <param name="Value">Значение.</param> private void Write(string Tag, string Timestamp, string Value) { if (WriteMode == "On" || WriteMode == "on" || WriteMode == "ON") { Log.Information("Запись значения в тэг: {Tag}", Tag); try { PISDK.PISDK PiSDK = new PISDK.PISDK(); PISDK.Server PiServer = PiSDK.Servers[Program.IniFile["Service"]["PIServer"].StringValue]; PISDK.PIPoint PiPoint = PiServer.PIPoints[Tag]; DateTime timeStamp = DateTime.Parse(Timestamp); PISDK.PIValue PiValue = PiPoint.Data.Snapshot; if (PiValue.Value.GetType().IsCOMObject) { switch (Value) { case "Конденсат": Value = "СК"; break; case "Дистиллят": Value = "ДГКЛ"; break; case "ТД": Value = "Топливо дизельное"; break; } } PiPoint.Data.UpdateValue(Value, timeStamp, PISDK.DataMergeConstants.dmReplaceDuplicates, null); Log.Information("Записано значение: {Value}", Value); } catch (System.Exception Ex) { Log.Error(Ex, "Ошибка записи значения: {Value} в тэг: {Tag}", Value, Tag); } } else { Log.Information("Запись отключена, в тэг: {Tag} значение {Value} не записано!", Tag, Value); } }