Esempio n. 1
0
        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();
        }
Esempio n. 2
0
        // 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();
        }
Esempio n. 3
0
        /// <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);
            }
        }