public Valve(IOpcNode parent, OpcName name, OpcContext context) : base(parent, name, context) { _maxFlow = new OpcAnalogItemNode <double>(this, "MaxDurchfluss", 600.0); _maxFlow.BeforeApplyChanges += _maxFlow_BeforeApplyChanges; _flow = new OpcAnalogItemNode <double>(this, "Durchfluss"); _flow.InstrumentRange = new OpcValueRange(400.0, 0); _flow.EngineeringUnit = new OpcEngineeringUnitInfo(4666675, "m3/min", "Kubikmeter pro Minute"); _flow.EngineeringUnitRange = new OpcValueRange(400.0, 0); _flow.Description = "Kubikmeter pro Minute"; _open = new OpcDataVariableNode <bool>(this, "Offen"); _open.Description = "True = offen, False = zu"; _movementAlarm = new OpcDataVariableNode <bool>(this, "AlarmPosition"); ManualControl = new ManualControl(this, "Handbetrieb", Context); }
public Motor(IOpcNode parent, OpcName name, OpcContext context) : base(parent, name, context) { tempSensor = new TemperaturSensor(this, "Temperatur", context); tempSensor.AlarmEventChanged += TempSensor_AlarmEventChanged; tempSensor.UpperLimit = 70.0; _speed = new OpcDataVariableNode <double>(this, "Speed"); _current = new OpcDataVariableNode <double>(this, "Current"); _power = new OpcDataVariableNode <double>(this, "Power"); _running = new OpcDataVariableNode <bool>(this, "Running"); _overcurrent = new OpcDataVariableNode <bool>(this, "AlarmÜberlast"); ManualControl = new ManualControl(this, "Handbetrieb", Context); CreateSpeedPt1(); PowerPt1 = new PT1_Floating(5000); CurrentPt1 = new PT1_Floating(12.5); CurrentPt1.TimeConstant = 200; }