Table of Contents

Class PhaseAnalysisModule

Namespace
Loehnert.Lisrt.IO.Beckhoff.PhaseAnalysis
Assembly
Loehnert.Lisrt.IO.Beckhoff.dll

Represents an analyzer that detects whether a three-phase electric power system is connected correctly.

public class PhaseAnalysisModule : CompositeModule, INotifyPropertyChangedEx, ICompositeModule, ILisrtModule, INotifyPropertyChanged, IHasServiceView, IHasDeviceLabel
Inheritance
PropertyChangedBase
PhaseAnalysisModule
Implements
INotifyPropertyChangedEx
Inherited Members
PropertyChangedBase.Refresh()
PropertyChangedBase.IsNotifying
PropertyChangedBase.PropertyChanged

Examples

This example shows the usage of the PhaseAnalysisModule with two EL3443 terminals.

var referenceTerminal = new EL3443();
var testingTerminal = new EL3443();
var analyzer = new PhaseAnalysisModule(
    "Phase Analyzer",
    referenceTerminal.PowerMeasurementInput.Measurement,
    testingTerminal.PowerMeasurementInput.Measurement);

var result = analyzer.ComparePhases();
Console.WriteLine($"L1 connected to: {result.L1Connection}");

Remarks

You can use this module with the EL3443 or EL3453 Beckhoff terminals.

Important

You must set the operation mode of the terminal to DC-Synchron (DC = Distributed Clock).

Constructors

PhaseAnalysisModule(string, ThreePhasePowerMeasurement, ThreePhasePowerMeasurement)

Initializes a new instance of the PhaseAnalysisModule class.

public PhaseAnalysisModule(string name, ThreePhasePowerMeasurement referenceSystem, ThreePhasePowerMeasurement testingSystem)

Parameters

name string

Name of the module.

referenceSystem ThreePhasePowerMeasurement

Three phase power measurement system for reference.

testingSystem ThreePhasePowerMeasurement

Three phase power measurement system for testing.

Exceptions

ArgumentNullException

Thrown when referenceSystem or testingSystem is null.

Properties

DeviceLabel

Gets or sets the label for the device.

[Configuration("")]
public string DeviceLabel { get; set; }

Property Value

string

ExpectedVoltageInVolt

Gets or sets the expected voltage in Volt.

[Configuration(DefaultValue = 230, Unit = "V")]
public double ExpectedVoltageInVolt { get; set; }

Property Value

double

Default value is 230 V.

Exceptions

ArgumentOutOfRangeException

Thrown if value is 0 (zero) or less.

FrequencyInHertz

Gets or sets the frequency in Hertz.

[Configuration(DefaultValue = 50, Unit = "Hz")]
public double FrequencyInHertz { get; set; }

Property Value

double

Default value is 50 Hz.

Exceptions

ArgumentOutOfRangeException

Thrown if value is 0 (zero) or less.

InstanceID

Gets the ID for this instance.

public int InstanceID { get; set; }

Property Value

int

MaximumVoltageDifferenceInPercent

Gets or sets the maximum voltage difference in percent.

[Configuration(DefaultValue = 10, Unit = "%")]
public double MaximumVoltageDifferenceInPercent { get; set; }

Property Value

double

Default value is 10 %.

Exceptions

ArgumentOutOfRangeException

Thrown if value is less than 0 (zero).

ReferenceSystemIsPowered

Gets a value indicating whether the reference system is powered. See ExpectedVoltageInVolt and MaximumVoltageDifferenceInPercent.

public bool ReferenceSystemIsPowered { get; }

Property Value

bool

Methods

ComparePhases()

Compares the phases of testing system with the phases of the reference system.

public PhaseComparisonResult ComparePhases()

Returns

PhaseComparisonResult

The comparison result.

Exceptions

InvalidOperationException

Thrown when the reference system is not powered.

ShowServiceView()

Shows the service view.

public void ShowServiceView()