示例#1
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var weightItem = new OpcMonitoredItem(_opc.cl.GetNode("WeightDiff_" + _tagWeight), OpcAttribute.Value);

            weightItem.DataChangeReceived += HandleWeightChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(weightItem);

            var percentRought = new OpcMonitoredItem(_opc.cl.GetNode(_tagPreciseDos + ".Percents"), OpcAttribute.Value);

            percentRought.DataChangeReceived += HandlePercentRoughtChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(percentRought);
            var weightPrecise = new OpcMonitoredItem(_opc.cl.GetNode(_tagPreciseDos + ".PreciseWeight"), OpcAttribute.Value);

            weightPrecise.DataChangeReceived += HandleWeightPreciseChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(weightPrecise);
            var byPercent = new OpcMonitoredItem(_opc.cl.GetNode(_tagPreciseDos + ".Work_ByPercent"), OpcAttribute.Value);

            byPercent.DataChangeReceived += HandleByPercentChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(byPercent);

            for (int i = 0; i < WorkMode.Length; i++)
            {
                WorkMode[i].Subscribe();
            }

            OpcServer.GetInstance().GetSubscription(_opcName).ApplyChanges();
        }
示例#2
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            if (_isInertBunker)
            {
                var preciseModeItem = new OpcMonitoredItem(_opc.cl.GetNode("Precise." + TagGate), OpcAttribute.Value);
                preciseModeItem.DataChangeReceived += HandlePreciseModeChanged;
                OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(preciseModeItem);

                var roughtModeItem = new OpcMonitoredItem(_opc.cl.GetNode("Rought." + TagGate), OpcAttribute.Value);
                roughtModeItem.DataChangeReceived += HandleRoughtModeChanged;
                OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(roughtModeItem);
            }
            var preciseWorkItem = new OpcMonitoredItem(_opc.cl.GetNode(TagGate + ".Precise_Work"), OpcAttribute.Value);

            preciseWorkItem.DataChangeReceived += HandlePreciseWorkChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(preciseWorkItem);

            var precisePauseItem = new OpcMonitoredItem(_opc.cl.GetNode(TagGate + ".Precise_Pause"), OpcAttribute.Value);

            precisePauseItem.DataChangeReceived += HandlePrecisePauseChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(precisePauseItem);

            var roughtWorkItem = new OpcMonitoredItem(_opc.cl.GetNode(TagGate + ".Rought_Work"), OpcAttribute.Value);

            roughtWorkItem.DataChangeReceived += HandleRoughtWorkChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(roughtWorkItem);

            var roughtPauseItem = new OpcMonitoredItem(_opc.cl.GetNode(TagGate + ".Rought_Pause"), OpcAttribute.Value);

            roughtPauseItem.DataChangeReceived += HandleRoughtPauseChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(roughtPauseItem);
        }
示例#3
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var readVal   = _readVal ?? ValuePcay;
            var valueItem = new OpcMonitoredItem(_opc.cl.GetNode(Prefix + readVal), OpcAttribute.Value);

            valueItem.DataChangeReceived += HandleValueChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(valueItem);
            if (VisValue != null)
            {
                var visItem = new OpcMonitoredItem(_opc.cl.GetNode(Prefix + VisValue), OpcAttribute.Value);
                visItem.DataChangeReceived += HandleVisChanged;
                OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(visItem);
            }
            if (VisErrorTag != null)
            {
                var visErrorItem = new OpcMonitoredItem(_opc.cl.GetNode(Prefix + VisErrorTag), OpcAttribute.Value);
                visErrorItem.DataChangeReceived += HandleVisErrorChanged;
                OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(visErrorItem);
            }
            if (!string.IsNullOrEmpty(PermitTag))
            {
                _opc = OpcServer.GetInstance().GetOpc(_opcName);
                var permitDos = new OpcMonitoredItem(_opc.cl.GetNode(PermitTag), OpcAttribute.Value);
                permitDos.DataChangeReceived += HandlePermitDosChanged;
                OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(permitDos);
            }
        }
示例#4
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var activeVibroItem = new OpcMonitoredItem(_opc.cl.GetNode(_tagVibro + ".Active"), OpcAttribute.Value);

            activeVibroItem.DataChangeReceived += HandleActiveVibroChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(activeVibroItem);

            var onQuantityItem = new OpcMonitoredItem(_opc.cl.GetNode(_tagVibro + ".Work_Count"), OpcAttribute.Value);

            onQuantityItem.DataChangeReceived += HandleOnQuantityChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(onQuantityItem);

            var onTimeItem = new OpcMonitoredItem(_opc.cl.GetNode(_tagVibro + ".Work_Time"), OpcAttribute.Value);

            onTimeItem.DataChangeReceived += HandleOnTimeChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(onTimeItem);

            var pauseTimeItem = new OpcMonitoredItem(_opc.cl.GetNode(_tagVibro + ".Pause_Time"), OpcAttribute.Value);

            pauseTimeItem.DataChangeReceived += HandlePauseTimeChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(pauseTimeItem);

            OpcServer.GetInstance().GetSubscription(_opcName).ApplyChanges();
        }
示例#5
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var addVolumeItem = new OpcMonitoredItem(_opc.cl.GetNode("Add_Volume[" + _contNumDictionary[_containerItem] + "]"), OpcAttribute.Value);

            addVolumeItem.DataChangeReceived += HandleAddVolumeChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(addVolumeItem);

            var parVolumeItem = new OpcMonitoredItem(_opc.cl.GetNode("PAR_Volume[" + _contNumDictionary[_containerItem] + "]"), OpcAttribute.Value);

            parVolumeItem.DataChangeReceived += HandleParVolumeChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(parVolumeItem);

            var currentVolumeItem = new OpcMonitoredItem(_opc.cl.GetNode("Volume[" + _contNumDictionary[_containerItem] + "]"), OpcAttribute.Value);

            currentVolumeItem.DataChangeReceived += HandleCurrentVolumeChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(currentVolumeItem);

            var loadCement = new OpcMonitoredItem(_opc.cl.GetNode("LoadCement_Silos" + _numSilo), OpcAttribute.Value);

            loadCement.DataChangeReceived += HandleLoadCementChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(loadCement);

            OpcServer.GetInstance().GetSubscription(_opcName).ApplyChanges();
        }
示例#6
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var runningItem = new OpcMonitoredItem(_opc.cl.GetNode("Work_ON"), OpcAttribute.Value);

            runningItem.DataChangeReceived += HandleRunningChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(runningItem);

            var pauseItem = new OpcMonitoredItem(_opc.cl.GetNode("Work_Pause"), OpcAttribute.Value);

            pauseItem.DataChangeReceived += HandlePauseChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(pauseItem);

            var rdyStartItem = new OpcMonitoredItem(_opc.cl.GetNode("rdy_btn_Start"), OpcAttribute.Value);

            rdyStartItem.DataChangeReceived += HandleRdyStartChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(rdyStartItem);

            var rdyStopItem = new OpcMonitoredItem(_opc.cl.GetNode("rdy_btn_Stop"), OpcAttribute.Value);

            rdyStopItem.DataChangeReceived += HandleRdyStopChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(rdyStopItem);

            var rdyPauseItem = new OpcMonitoredItem(_opc.cl.GetNode("rdy_btn_Pause"), OpcAttribute.Value);

            rdyPauseItem.DataChangeReceived += HandleRdyPauseChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(rdyPauseItem);
        }
示例#7
0
        private void CreateSubscription()
        {
            IndexMethod();
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var alarmItem = new OpcMonitoredItem(_opc.cl.GetNode(AlarmPcy), OpcAttribute.Value);

            alarmItem.DataChangeReceived += HandleAlarmStatusChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(alarmItem);
            var onItem = new OpcMonitoredItem(_opc.cl.GetNode(KmPcy), OpcAttribute.Value);

            onItem.DataChangeReceived += HandleKmStatusChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(onItem);
            var modeAutomat = new OpcMonitoredItem(_opc.cl.GetNode(ModePcy), OpcAttribute.Value);

            modeAutomat.DataChangeReceived += HandleAutomatChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(modeAutomat);
            var modeManual = new OpcMonitoredItem(_opc.cl.GetNode(ManualPcy), OpcAttribute.Value);

            modeManual.DataChangeReceived += HandleManualChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(modeManual);

            if (FreqPcay == null)
            {
                VisFreq = Visibility.Collapsed;
            }
            else
            {
                VisFreq = Visibility.Visible;
                var freqItem = new OpcMonitoredItem(_opc.cl.GetNode(FreqPcay), OpcAttribute.Value);
                freqItem.DataChangeReceived += HandleFreqChanged;
                OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(freqItem);
            }
        }
示例#8
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var paramItem = new OpcMonitoredItem(_opc.cl.GetNode(_opcTag), OpcAttribute.Value);

            paramItem.DataChangeReceived += HandleIdChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(paramItem);
        }
示例#9
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var visItem = new OpcMonitoredItem(_opc.cl.GetNode(TagContainer + ".Pause"), OpcAttribute.Value);

            visItem.DataChangeReceived += HandleVisChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(visItem);
        }
示例#10
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(OpcServer.OpcList.Rbu);
            var idItem = new OpcMonitoredItem(_opc.cl.GetNode("TaskID"), OpcAttribute.Value);

            idItem.DataChangeReceived += HandleIdChanged;
            OpcServer.GetInstance().GetSubscription(OpcServer.OpcList.Rbu).AddMonitoredItem(idItem);
        }
示例#11
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var readVal = _readVal ?? OnPcy;
            var visItem = new OpcMonitoredItem(_opc.cl.GetNode(Prefix + readVal), OpcAttribute.Value);

            visItem.DataChangeReceived += HandleVisChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(visItem);
        }
示例#12
0
 private void CreateSubscription()
 {
     if (!string.IsNullOrEmpty(PermitTag))
     {
         _opc = OpcServer.GetInstance().GetOpc(_opcName);
         var permitDos = new OpcMonitoredItem(_opc.cl.GetNode(PermitTag), OpcAttribute.Value);
         permitDos.DataChangeReceived += HandlePermitDosChanged;
         OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(permitDos);
     }
 }
示例#13
0
        public OPC_client InitOpc(OpcList obj, string serverAddress)
        {
            if (!_opcDict.ContainsKey(obj))
            {
                var opc = new OPC_client(serverAddress, ServiceData.GetInstance().GetOpcTablesBase(), GetObjectData(obj).SqlTableName);
                _opcDict.Add(obj, opc);
                return(opc);
            }

            return(_opcDict[obj]);
        }
示例#14
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var leftManualItem = new OpcMonitoredItem(_opc.cl.GetNode(LeftManualPcy), OpcAttribute.Value);

            leftManualItem.DataChangeReceived += HandleLeftManualChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(leftManualItem);
            var rightManualItem = new OpcMonitoredItem(_opc.cl.GetNode(RightManualPcy), OpcAttribute.Value);

            rightManualItem.DataChangeReceived += HandleRightManualChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(rightManualItem);
        }
示例#15
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var visWindowItem = new OpcMonitoredItem(_opc.cl.GetNode(VisWindowTag), OpcAttribute.Value);

            visWindowItem.DataChangeReceived += HandleVisWindowChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(visWindowItem);

            var eventsNumValueItem = new OpcMonitoredItem(_opc.cl.GetNode(EventsNumTag), OpcAttribute.Value);

            eventsNumValueItem.DataChangeReceived += HandleEventsNumValueChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(eventsNumValueItem);
        }
示例#16
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var idItem = new OpcMonitoredItem(_opc.cl.GetNode("TaskID"), OpcAttribute.Value);

            idItem.DataChangeReceived += HandleIdChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(idItem);
            //var batchNumItem = new OpcMonitoredItem(_opc.cl.GetNode("Current_batchNum"), OpcAttribute.Value);
            //batchNumItem.DataChangeReceived += HandleBatchNumChanged;
            //OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(batchNumItem);
            //var componentWights = new OpcMonitoredItem(_opc.cl.GetNode("ComponentsWeight"), OpcAttribute.Value);
            //componentWights.DataChangeReceived += HandleComponentsWeightChanged;
            //OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(componentWights);
        }
示例#17
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var idItem = new OpcMonitoredItem(_opc.cl.GetNode("TaskID"), OpcAttribute.Value);

            idItem.DataChangeReceived += HandleIdChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(idItem);

            var currentBatchNumItem = new OpcMonitoredItem(_opc.cl.GetNode("Current_batchNum"), OpcAttribute.Value);

            currentBatchNumItem.DataChangeReceived += HandleCurrentBatchNumChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(currentBatchNumItem);

            var batchesQuantityItem = new OpcMonitoredItem(_opc.cl.GetNode("PAR_BatchesQuantity"), OpcAttribute.Value);

            batchesQuantityItem.DataChangeReceived += HandleBatchesQuantityChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(batchesQuantityItem);

            var dosingProcessItem = new OpcMonitoredItem(_opc.cl.GetNode("CommonProgress"), OpcAttribute.Value);

            dosingProcessItem.DataChangeReceived += HandleDosingProcessChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(dosingProcessItem);

            var componentWights = new OpcMonitoredItem(_opc.cl.GetNode("ComponentsWeight"), OpcAttribute.Value);

            componentWights.DataChangeReceived += HandleComponentsWeightChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(componentWights);

            var cementDone = new OpcMonitoredItem(_opc.cl.GetNode("DozingCement_Done"), OpcAttribute.Value);

            cementDone.DataChangeReceived += HandleItemDoneChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(cementDone);
            var waterDone = new OpcMonitoredItem(_opc.cl.GetNode("DozingWater_Done"), OpcAttribute.Value);

            waterDone.DataChangeReceived += HandleItemDoneChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(waterDone);
            var inertDone = new OpcMonitoredItem(_opc.cl.GetNode("DozingInert_Done"), OpcAttribute.Value);

            inertDone.DataChangeReceived += HandleItemDoneChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(inertDone);
            var additiveDone = new OpcMonitoredItem(_opc.cl.GetNode("DozingAdditive_Done"), OpcAttribute.Value);

            additiveDone.DataChangeReceived += HandleItemDoneChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(additiveDone);

            var mixerIdItem = new OpcMonitoredItem(_opc.cl.GetNode("Mixer.TaskID_mixer"), OpcAttribute.Value);

            mixerIdItem.DataChangeReceived += HandleMixerIdChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(mixerIdItem);
        }
示例#18
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var visItem = new OpcMonitoredItem(_opc.cl.GetNode(OnPcy), OpcAttribute.Value);

            visItem.DataChangeReceived += HandleVisChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(visItem);
            if (OnSecondPcy != null)
            {
                var visSecondItem = new OpcMonitoredItem(_opc.cl.GetNode(OnSecondPcy), OpcAttribute.Value);
                visSecondItem.DataChangeReceived += HandleVisSecondChanged;
                OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(visSecondItem);
            }
        }
示例#19
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var modeItem = new OpcMonitoredItem(_opc.cl.GetNode("UseWeight_" + _tagName), OpcAttribute.Value);

            modeItem.DataChangeReceived += HandleModeChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(modeItem);

            var emptyItem = new OpcMonitoredItem(_opc.cl.GetNode("Scale_isEmpty_" + _tagName), OpcAttribute.Value);

            emptyItem.DataChangeReceived += HandleEmptyChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(emptyItem);

            OpcServer.GetInstance().GetSubscription(_opcName).ApplyChanges();
        }
示例#20
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var valueItem = new OpcMonitoredItem(_opc.cl.GetNode(ValuePcay), OpcAttribute.Value);

            valueItem.DataChangeReceived += HandleValueChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(valueItem);

            if (CheckLevelNum != 0)
            {
                var checkLevelItem = new OpcMonitoredItem(_opc.cl.GetNode("DO_CheckLevel_Cement" + CheckLevelNum), OpcAttribute.Value);
                checkLevelItem.DataChangeReceived += HandleCheckLevelChanged;
                OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(checkLevelItem);
            }
        }
示例#21
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var idItem = new OpcMonitoredItem(_opc.cl.GetNode("Mixer.TaskID_mixer"), OpcAttribute.Value);

            idItem.DataChangeReceived += HandleIdChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(idItem);

            var currentBatchNumItem = new OpcMonitoredItem(_opc.cl.GetNode("Mixer.CurrentMixing_batchNum"), OpcAttribute.Value);

            currentBatchNumItem.DataChangeReceived += HandleCurrentBatchNumChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(currentBatchNumItem);

            var batchesQuantityItem = new OpcMonitoredItem(_opc.cl.GetNode("Mixer.PAR_BatchesQuantity"), OpcAttribute.Value);

            batchesQuantityItem.DataChangeReceived += HandleBatchesQuantityChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(batchesQuantityItem);

            var mixingProcessItem = new OpcMonitoredItem(_opc.cl.GetNode("Mixer.Current_MixingTime"), OpcAttribute.Value);

            mixingProcessItem.DataChangeReceived += HandleMixingProcessChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(mixingProcessItem);

            var parMixingProcessItem = new OpcMonitoredItem(_opc.cl.GetNode("Mixer.PAR_MixingTime"), OpcAttribute.Value);

            parMixingProcessItem.DataChangeReceived += HandleParMixingProcessChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(parMixingProcessItem);

            var currentPartialUnloadItem = new OpcMonitoredItem(_opc.cl.GetNode("Mixer.Current_PartUnloadTime"), OpcAttribute.Value);

            currentPartialUnloadItem.DataChangeReceived += HandlePartialUnloadProcessChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(currentPartialUnloadItem);

            var currentFullUnloadItem = new OpcMonitoredItem(_opc.cl.GetNode("Mixer.Current_UnloadTime"), OpcAttribute.Value);

            currentFullUnloadItem.DataChangeReceived += HandleFullUnloadProcessChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(currentFullUnloadItem);

            var parPartialUnloadItem = new OpcMonitoredItem(_opc.cl.GetNode("Mixer.PAR_TimePartialUnload"), OpcAttribute.Value);

            parPartialUnloadItem.DataChangeReceived += HandleParPartialUnloadChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(parPartialUnloadItem);

            var parFullUnloadItem = new OpcMonitoredItem(_opc.cl.GetNode("Mixer.PAR_TimeFullUnload"), OpcAttribute.Value);

            parFullUnloadItem.DataChangeReceived += HandleParFullUnloadChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(parFullUnloadItem);
        }
示例#22
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(_opcName);

            var checkTimeItem = new OpcMonitoredItem(_opc.cl.GetNode("CheckLevel_Control_Cement" + _checkLevelNum), OpcAttribute.Value);

            checkTimeItem.DataChangeReceived += HandleCheckTimeChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(checkTimeItem);

            var pauseTimeItem = new OpcMonitoredItem(_opc.cl.GetNode("CheckLevel_Pause_Cement" + _checkLevelNum), OpcAttribute.Value);

            pauseTimeItem.DataChangeReceived += HandlePauseTimeChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(pauseTimeItem);

            var delayTimeItem = new OpcMonitoredItem(_opc.cl.GetNode("CheckLevel_Delay_Cement" + _checkLevelNum), OpcAttribute.Value);

            delayTimeItem.DataChangeReceived += HandleDelayTimeChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(delayTimeItem);

            OpcServer.GetInstance().GetSubscription(_opcName).ApplyChanges();
        }
示例#23
0
        private void CreateSubscription()
        {
            IndexMethod();
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var alarmItem = new OpcMonitoredItem(_opc.cl.GetNode(AlarmPcy), OpcAttribute.Value);

            alarmItem.DataChangeReceived += HandleAlarmStatusChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(alarmItem);
            var kmItem = new OpcMonitoredItem(_opc.cl.GetNode(KmPcy), OpcAttribute.Value);

            kmItem.DataChangeReceived += HandleKmStatusChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(kmItem);
            var modeAutomat = new OpcMonitoredItem(_opc.cl.GetNode(ModePcy), OpcAttribute.Value);

            modeAutomat.DataChangeReceived += HandleAutomatChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(modeAutomat);
            var modeManual = new OpcMonitoredItem(_opc.cl.GetNode(ManualPcy), OpcAttribute.Value);

            modeManual.DataChangeReceived += HandleManualChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(modeManual);
        }
示例#24
0
        private void CreateSubscription()
        {
            IndexMethod();
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var alarmItem = new OpcMonitoredItem(_opc.cl.GetNode(AlarmPcy), OpcAttribute.Value);

            alarmItem.DataChangeReceived += HandleAlarmStatusChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(alarmItem);
            var closeItem = new OpcMonitoredItem(_opc.cl.GetNode(ClosePcy), OpcAttribute.Value);

            closeItem.DataChangeReceived += HandleCloseStatusChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(closeItem);
            var openItem = new OpcMonitoredItem(_opc.cl.GetNode(OpenPcy), OpcAttribute.Value);

            openItem.DataChangeReceived += HandleOpenStatusChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(openItem);
            var modeAutomat = new OpcMonitoredItem(_opc.cl.GetNode(ModePcy), OpcAttribute.Value);

            modeAutomat.DataChangeReceived += HandleAutomatChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(modeAutomat);
            var modeManual = new OpcMonitoredItem(_opc.cl.GetNode(ManualPcy), OpcAttribute.Value);

            modeManual.DataChangeReceived += HandleManualChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(modeManual);
            if (IsDosing)
            {
                var modeManualDosingItem = new OpcMonitoredItem(_opc.cl.GetNode(ManualDosingPcy), OpcAttribute.Value);
                modeManualDosingItem.DataChangeReceived += HandleManualDosingChanged;
                OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(modeManualDosingItem);
            }
            if (IsUnload)
            {
                var percentOpenItem = new OpcMonitoredItem(_opc.cl.GetNode("gr_Valve_PercentOpen"), OpcAttribute.Value);
                percentOpenItem.DataChangeReceived += HandlePercentChanged;
                OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(percentOpenItem);
            }
        }
示例#25
0
        private void CreateSubscription()
        {
            _opc = OpcServer.GetInstance().GetOpc(_opcName);
            var visItem = new OpcMonitoredItem(_opc.cl.GetNode("gi_lifeWord"), OpcAttribute.Value);

            visItem.DataChangeReceived += HandleVisChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(visItem);

            var currentItem = new OpcMonitoredItem(_opc.cl.GetNode("gr_Current"), OpcAttribute.Value);

            currentItem.DataChangeReceived += HandleCurrentChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(currentItem);
            var minCurrentItem = new OpcMonitoredItem(_opc.cl.GetNode("Current_Min"), OpcAttribute.Value);

            minCurrentItem.DataChangeReceived += HandleMinCurrentChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(minCurrentItem);
            var maxCurrentItem = new OpcMonitoredItem(_opc.cl.GetNode("Current_Max"), OpcAttribute.Value);

            maxCurrentItem.DataChangeReceived += HandleMaxCurrentChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(maxCurrentItem);
            var normalMinCurrentItem = new OpcMonitoredItem(_opc.cl.GetNode("Current_NormalMin"), OpcAttribute.Value);

            normalMinCurrentItem.DataChangeReceived += HandleNormalMinCurrentChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(normalMinCurrentItem);
            var normalMaxCurrentItem = new OpcMonitoredItem(_opc.cl.GetNode("Current_NormalMax"), OpcAttribute.Value);

            normalMaxCurrentItem.DataChangeReceived += HandleNormalMaxCurrentChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(normalMaxCurrentItem);
            var blockUnloadItem = new OpcMonitoredItem(_opc.cl.GetNode("gb_BlockUnload"), OpcAttribute.Value);

            blockUnloadItem.DataChangeReceived += HandleBlockUnloadChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(blockUnloadItem);
            var waterCorrectItem = new OpcMonitoredItem(_opc.cl.GetNode("gr_WaterCorrect"), OpcAttribute.Value);

            waterCorrectItem.DataChangeReceived += HandleWaterCorrectChanged;
            OpcServer.GetInstance().GetSubscription(_opcName).AddMonitoredItem(waterCorrectItem);
        }
示例#26
0
        public WindowSetParameter(OpcServer.OpcList opcName, string parameterName, double minValue, double maxValue, string opcTag, ValueType valueType, Popup popup = null, int digit = 1, double?firstPrompt = null, double?secondPrompt = null, double?thirdPrompt = null, double?fourthPrompt = null, double?stepFeed = null, string additionalTag = "")
        {
            InitializeComponent();
            KeyDown += OnKeyDown;

            DataContext = this;

            _opcName = opcName;
            _popup   = popup;
            if (maxValue < minValue)
            {
                maxValue = minValue;
            }
            MinValue       = minValue;
            MaxValue       = maxValue;
            _opcTag        = opcTag;
            ParameterName  = parameterName;
            _valueType     = valueType;
            _digit         = digit;
            _opc           = OpcServer.GetInstance().GetOpc(_opcName);
            _additionalTag = additionalTag;

            switch (_valueType)
            {
            case ValueType.Byte:
                ParameterValue = _opc.cl.ReadByte(_opcTag, out _err).ToString();
                break;

            case ValueType.Int16:
                ParameterValue = _opc.cl.ReadInt16(_opcTag, out _err).ToString();
                break;

            case ValueType.Int32:
                ParameterValue = _opc.cl.ReadInt32(_opcTag, out _err).ToString();
                break;

            case ValueType.Real:
                ParameterValue = Math.Round(_opc.cl.ReadReal(_opcTag, out _err), _digit).ToString($"F{_digit}");
                break;

            case ValueType.UInt16:
                ParameterValue = _opc.cl.ReadUInt16(_opcTag, out _err).ToString();
                break;

            case ValueType.UInt32:
                ParameterValue = (_opc.cl.ReadUInt32(_opcTag, out _err) / 1000).ToString();
                break;
            }

            _startValue = ParameterValue;

            if (firstPrompt != null && secondPrompt != null && thirdPrompt != null && fourthPrompt != null)
            {
                FirstPrompt  = Convert.ToDouble(firstPrompt);
                SecondPrompt = Convert.ToDouble(secondPrompt);
                ThirdPrompt  = Convert.ToDouble(thirdPrompt);
                FourthPrompt = Convert.ToDouble(fourthPrompt);

                VisPrompt = true;
            }

            if (stepFeed != null)
            {
                StepFeed = Convert.ToDouble(stepFeed);
                VisFeed  = true;
            }

            ValueStringFormat = $"F{_digit}";

            SelText();
        }