Modelica.Electrical.MultiPhase.Basic

Basic components for electrical multiphase models

Information


This package contains basic analog electrical multiphase components.

Extends from Modelica.Icons.Library2 (Icon for library where additional icon elements shall be added).

Package Content

NameDescription
Modelica.Electrical.MultiPhase.Basic.Star Star Star-connection
Modelica.Electrical.MultiPhase.Basic.Delta Delta Delta (polygon) connection
Modelica.Electrical.MultiPhase.Basic.PlugToPin_p PlugToPin_p Connect one (positive) Pin
Modelica.Electrical.MultiPhase.Basic.PlugToPin_n PlugToPin_n Connect one (negative) Pin
Modelica.Electrical.MultiPhase.Basic.Resistor Resistor Ideal linear electrical resistors
Modelica.Electrical.MultiPhase.Basic.Conductor Conductor Ideal linear electrical conductors
Modelica.Electrical.MultiPhase.Basic.Capacitor Capacitor Ideal linear electrical capacitors
Modelica.Electrical.MultiPhase.Basic.Inductor Inductor Ideal linear electrical inductors
Modelica.Electrical.MultiPhase.Basic.SaturatingInductor SaturatingInductor Simple model of inductors with saturation
Modelica.Electrical.MultiPhase.Basic.Transformer Transformer Multiphase Transformer
Modelica.Electrical.MultiPhase.Basic.VariableResistor VariableResistor Ideal linear electrical resistors with variable resistance
Modelica.Electrical.MultiPhase.Basic.VariableConductor VariableConductor Ideal linear electrical conductors with variable conductance
Modelica.Electrical.MultiPhase.Basic.VariableCapacitor VariableCapacitor Ideal linear electrical capacitors with variable capacitance
Modelica.Electrical.MultiPhase.Basic.VariableInductor VariableInductor Ideal linear electrical inductors with variable inductance


Modelica.Electrical.MultiPhase.Basic.Star Modelica.Electrical.MultiPhase.Basic.Star

Star-connection

Modelica.Electrical.MultiPhase.Basic.Star

Information


Connects all pins of plug_p to pin_n, thus establishing a so-called star-connection.

Parameters

TypeNameDefaultDescription
Integerm3number of phases

Connectors

TypeNameDescription
PositivePlugplug_p 
NegativePinpin_n 

Modelica definition

model Star "Star-connection"
  parameter Integer m(final min=1) = 3 "number of phases";
  Interfaces.PositivePlug plug_p(final m=m);
  Modelica.Electrical.Analog.Interfaces.NegativePin pin_n;

equation 
  for j in 1:m loop
    connect(plug_p.pin[j],pin_n);
  end for;
end Star;

Modelica.Electrical.MultiPhase.Basic.Delta Modelica.Electrical.MultiPhase.Basic.Delta

Delta (polygon) connection

Modelica.Electrical.MultiPhase.Basic.Delta

Information


Connects in a cyclic way plug_n.pin[j] to plug_p.pin[j+1], thus establishing a so-called delta (or polygon) connection when used in parallel to another component.

Parameters

TypeNameDefaultDescription
Integerm3number of phases

Connectors

TypeNameDescription
PositivePlugplug_p 
NegativePlugplug_n 

Modelica definition

model Delta "Delta (polygon) connection"
  parameter Integer m(final min=2) = 3 "number of phases";
  Interfaces.PositivePlug plug_p(final m=m);
  Interfaces.NegativePlug plug_n(final m=m);

equation 
  for j in 1:m loop
    if j<m then
      connect(plug_n.pin[j],plug_p.pin [j+1]);
    else
      connect(plug_n.pin[j],plug_p.pin [1]);
    end if;
  end for;
end Delta;

Modelica.Electrical.MultiPhase.Basic.PlugToPin_p Modelica.Electrical.MultiPhase.Basic.PlugToPin_p

Connect one (positive) Pin

Modelica.Electrical.MultiPhase.Basic.PlugToPin_p

Information


Connects pin k of plug_p to pin_p, leaving the other pins of plug_p unconnected.

Parameters

TypeNameDefaultDescription
Integerm3number of phases
Integerk phase index

Connectors

TypeNameDescription
PositivePlugplug_p 
PositivePinpin_p 

Modelica definition

model PlugToPin_p "Connect one (positive) Pin"
  parameter Integer m(final min=1) = 3 "number of phases";
  parameter Integer k(final min=1, final max=m, start = 1) "phase index";
  Interfaces.PositivePlug plug_p(final m=m);
  Modelica.Electrical.Analog.Interfaces.PositivePin pin_p;
equation 
  pin_p.v = plug_p.pin[k].v;
  for j in 1:m loop
    plug_p.pin[j].i = if j == k then -pin_p.i else 0;
  end for;
end PlugToPin_p;

Modelica.Electrical.MultiPhase.Basic.PlugToPin_n Modelica.Electrical.MultiPhase.Basic.PlugToPin_n

Connect one (negative) Pin

Modelica.Electrical.MultiPhase.Basic.PlugToPin_n

Information


Connects pin k of plug_n to pin_n, leaving the other pins of plug_n unconnected.

Parameters

TypeNameDefaultDescription
Integerm3number of phases
Integerk phase index

Connectors

TypeNameDescription
NegativePlugplug_n 
NegativePinpin_n 

Modelica definition

model PlugToPin_n "Connect one (negative) Pin"
  parameter Integer m(final min=1) = 3 "number of phases";
  parameter Integer k(final min=1, final max=m, start = 1) "phase index";
  Interfaces.NegativePlug plug_n(final m=m);
  Modelica.Electrical.Analog.Interfaces.NegativePin pin_n;
equation 
  pin_n.v = plug_n.pin[k].v;
  for j in 1:m loop
    plug_n.pin[j].i = if j == k then -pin_n.i else 0;
  end for;
end PlugToPin_n;

Modelica.Electrical.MultiPhase.Basic.Resistor Modelica.Electrical.MultiPhase.Basic.Resistor

Ideal linear electrical resistors

Modelica.Electrical.MultiPhase.Basic.Resistor

Information


Contains m resistors (Modelica.Electrical.Analog.Basic.Resistor)

Extends from Interfaces.TwoPlug (Component with one m-phase electric port), Modelica.Electrical.MultiPhase.Interfaces.ConditionalHeatPort (Partial model to include conditional HeatPorts in order to describe the power loss via a thermal network).

Parameters

TypeNameDefaultDescription
Integerm3number of phases
ResistanceR[m] Resistances R_ref at temperatures T_ref [Ohm]
TemperatureT_ref[m]fill(300.15, m)Reference temperatures [K]
LinearTemperatureCoefficientalpha[m]zeros(m)Temperature coefficients of resistances at reference temperatures [1/K]
IntegermhmNumber of heatPorts=number of phases
BooleanuseHeatPortfalse=true, if all HeatPorts are enabled
TemperatureT[mh]T_refFixed device temperatures if useHeatPort = false [K]

Connectors

TypeNameDescription
PositivePlugplug_p 
NegativePlugplug_n 
HeatPort_aheatPort[mh] 

Modelica definition

model Resistor "Ideal linear electrical resistors"
  extends Interfaces.TwoPlug;
    parameter Modelica.SIunits.Resistance R[m](start=fill(1,m)) 
    "Resistances R_ref at temperatures T_ref";
  parameter Modelica.SIunits.Temperature T_ref[m]=fill(300.15,m) 
    "Reference temperatures";
  parameter Modelica.SIunits.LinearTemperatureCoefficient alpha[m]=zeros(m) 
    "Temperature coefficients of resistances at reference temperatures";
  extends Modelica.Electrical.MultiPhase.Interfaces.ConditionalHeatPort(final mh=m, T = T_ref);
  Modelica.Electrical.Analog.Basic.Resistor resistor[m](
    final R=R,
    final T_ref=T_ref,
    final alpha=alpha,
    each final useHeatPort = useHeatPort,
    final T=T);
equation 
  connect(resistor.p, plug_p.pin);
  connect(resistor.n, plug_n.pin);
  connect(resistor.heatPort, heatPort);
end Resistor;

Modelica.Electrical.MultiPhase.Basic.Conductor Modelica.Electrical.MultiPhase.Basic.Conductor

Ideal linear electrical conductors

Modelica.Electrical.MultiPhase.Basic.Conductor

Information


Contains m conductors (Modelica.Electrical.Analog.Basic.Conductor)

Extends from Interfaces.TwoPlug (Component with one m-phase electric port), Modelica.Electrical.MultiPhase.Interfaces.ConditionalHeatPort (Partial model to include conditional HeatPorts in order to describe the power loss via a thermal network).

Parameters

TypeNameDefaultDescription
Integerm3number of phases
ConductanceG[m] Conductances G_ref at temperatures T_ref [S]
TemperatureT_ref[m]fill(300.15, m)Reference temperatures [K]
LinearTemperatureCoefficientalpha[m]zeros(m)Temperature coefficients of conductances at reference temperatures [1/K]
IntegermhmNumber of heatPorts=number of phases
BooleanuseHeatPortfalse=true, if all HeatPorts are enabled
TemperatureT[mh]T_refFixed device temperatures if useHeatPort = false [K]

Connectors

TypeNameDescription
PositivePlugplug_p 
NegativePlugplug_n 
HeatPort_aheatPort[mh] 

Modelica definition

model Conductor "Ideal linear electrical conductors"
  extends Interfaces.TwoPlug;
  parameter Modelica.SIunits.Conductance G[m](start=fill(1,m)) 
    "Conductances G_ref at temperatures T_ref";
  parameter Modelica.SIunits.Temperature T_ref[m]=fill(300.15,m) 
    "Reference temperatures";
  parameter Modelica.SIunits.LinearTemperatureCoefficient alpha[m]=zeros(m) 
    "Temperature coefficients of conductances at reference temperatures";
  extends Modelica.Electrical.MultiPhase.Interfaces.ConditionalHeatPort(final mh=m, T = T_ref);
  Modelica.Electrical.Analog.Basic.Conductor conductor[m](
    final G=G,
    final T_ref=T_ref,
    final alpha=alpha,
    each final useHeatPort = useHeatPort,
    final T=T);
equation 
  connect(plug_p.pin, conductor.p);
  connect(plug_n.pin, conductor.n);
  connect(conductor.heatPort, heatPort);
end Conductor;

Modelica.Electrical.MultiPhase.Basic.Capacitor Modelica.Electrical.MultiPhase.Basic.Capacitor

Ideal linear electrical capacitors

Modelica.Electrical.MultiPhase.Basic.Capacitor

Information


Contains m capacitors (Modelica.Electrical.Analog.Basic.Capacitor)

Extends from Interfaces.TwoPlug (Component with one m-phase electric port).

Parameters

TypeNameDefaultDescription
Integerm3number of phases
CapacitanceC[m] Capacitance [F]

Connectors

TypeNameDescription
PositivePlugplug_p 
NegativePlugplug_n 

Modelica definition

model Capacitor "Ideal linear electrical capacitors"
  extends Interfaces.TwoPlug;
  parameter Modelica.SIunits.Capacitance C[m](start=fill(1, m)) "Capacitance";
  Modelica.Electrical.Analog.Basic.Capacitor capacitor[m](final C=C);
equation 
  connect(capacitor.p, plug_p.pin);
  connect(capacitor.n, plug_n.pin);
end Capacitor;

Modelica.Electrical.MultiPhase.Basic.Inductor Modelica.Electrical.MultiPhase.Basic.Inductor

Ideal linear electrical inductors

Modelica.Electrical.MultiPhase.Basic.Inductor

Information


Contains m inductors (Modelica.Electrical.Analog.Basic.Inductor)

Extends from Interfaces.TwoPlug (Component with one m-phase electric port).

Parameters

TypeNameDefaultDescription
Integerm3number of phases
InductanceL[m] Inductance [H]

Connectors

TypeNameDescription
PositivePlugplug_p 
NegativePlugplug_n 

Modelica definition

model Inductor "Ideal linear electrical inductors"
  extends Interfaces.TwoPlug;
  parameter Modelica.SIunits.Inductance L[m](start=fill(1, m)) "Inductance";
  Modelica.Electrical.Analog.Basic.Inductor inductor[m](final L=L);
equation 
  connect(inductor.p, plug_p.pin);
  connect(inductor.n, plug_n.pin);
end Inductor;

Modelica.Electrical.MultiPhase.Basic.SaturatingInductor Modelica.Electrical.MultiPhase.Basic.SaturatingInductor

Simple model of inductors with saturation

Modelica.Electrical.MultiPhase.Basic.SaturatingInductor

Information


Contains m saturating inductors (Modelica.Electrical.Analog.Basic.SaturatingInductor)

Attention!!!
Each element of the array of saturatingInductors is only dependent on the current flowing through this element.

Extends from Interfaces.TwoPlug (Component with one m-phase electric port).

Parameters

TypeNameDefaultDescription
Integerm3number of phases
CurrentInom[m] Nominal current [A]
InductanceLnom[m] Nominal inductance at Nominal current [H]
InductanceLzer[m] Inductance near current=0 [H]
InductanceLinf[m] Inductance at large currents [H]

Connectors

TypeNameDescription
PositivePlugplug_p 
NegativePlugplug_n 

Modelica definition

model SaturatingInductor "Simple model of inductors with saturation"
  extends Interfaces.TwoPlug;
  parameter Modelica.SIunits.Current Inom[m](start=fill(1,m)) "Nominal current";
  parameter Modelica.SIunits.Inductance Lnom[m](start=fill(1,m)) 
    "Nominal inductance at Nominal current";
  parameter Modelica.SIunits.Inductance Lzer[m](start={2*Lnom[j] for j in 1:m}) 
    "Inductance near current=0";
  parameter Modelica.SIunits.Inductance Linf[m](start={Lnom[j]/2 for j in 1:m}) 
    "Inductance at large currents";
  Modelica.Electrical.Analog.Basic.SaturatingInductor saturatingInductor[m](
    final Inom=Inom,
    final Lnom=Lnom,
    final Lzer=Lzer,
    final Linf=Linf);
equation 
  connect(saturatingInductor.p, plug_p.pin);
  connect(saturatingInductor.n, plug_n.pin);
end SaturatingInductor;

Modelica.Electrical.MultiPhase.Basic.Transformer Modelica.Electrical.MultiPhase.Basic.Transformer

Multiphase Transformer

Modelica.Electrical.MultiPhase.Basic.Transformer

Information


Contains m transformers (Modelica.Electrical.Analog.Basic.Transformer)

Extends from Interfaces.FourPlug (Component with two m-phase electric ports).

Parameters

TypeNameDefaultDescription
Integerm3number of phases
InductanceL1[m] Primary inductance [H]
InductanceL2[m] Secondary inductance [H]
InductanceM[m] Coupling inductance [H]

Connectors

TypeNameDescription
PositivePlugplug_p1 
PositivePlugplug_p2 
NegativePlugplug_n1 
NegativePlugplug_n2 

Modelica definition

model Transformer "Multiphase Transformer"
  extends Interfaces.FourPlug;
  parameter Modelica.SIunits.Inductance L1[m](start=fill(1, m)) 
    "Primary inductance";
  parameter Modelica.SIunits.Inductance L2[m](start=fill(1, m)) 
    "Secondary inductance";
  parameter Modelica.SIunits.Inductance M[m](start=fill(1, m)) 
    "Coupling inductance";
  Modelica.Electrical.Analog.Basic.Transformer transformer[m](
    final L1=L1,
    final L2=L2,
    final M=M);
equation 

  connect(plug_p1.pin, transformer.p1);
  connect(plug_p2.pin, transformer.p2);
  connect(plug_n1.pin, transformer.n1);
  connect(plug_n2.pin, transformer.n2);
end Transformer;

Modelica.Electrical.MultiPhase.Basic.VariableResistor Modelica.Electrical.MultiPhase.Basic.VariableResistor

Ideal linear electrical resistors with variable resistance

Modelica.Electrical.MultiPhase.Basic.VariableResistor

Information


Contains m variable resistors (Modelica.Electrical.Analog.Basic.VariableResistor)

Attention!!!
It is recomended that none of the R_Port signals should not cross the zero value. Otherwise depending on the surrounding circuit the probability of singularities is high.

Extends from Interfaces.TwoPlug (Component with one m-phase electric port), Modelica.Electrical.MultiPhase.Interfaces.ConditionalHeatPort (Partial model to include conditional HeatPorts in order to describe the power loss via a thermal network).

Parameters

TypeNameDefaultDescription
Integerm3number of phases
TemperatureT_ref[m]fill(300.15, m)Reference temperatures [K]
LinearTemperatureCoefficientalpha[m]zeros(m)Temperature coefficients of resistances at reference temperatures [1/K]
IntegermhmNumber of heatPorts=number of phases
BooleanuseHeatPortfalse=true, if all HeatPorts are enabled
TemperatureT[mh]T_refFixed device temperatures if useHeatPort = false [K]

Connectors

TypeNameDescription
PositivePlugplug_p 
NegativePlugplug_n 
HeatPort_aheatPort[mh] 
input RealInputR[m] 

Modelica definition

model VariableResistor 
  "Ideal linear electrical resistors with variable resistance"
  extends Interfaces.TwoPlug;
  parameter Modelica.SIunits.Temperature T_ref[m]=fill(300.15,m) 
    "Reference temperatures";
  parameter Modelica.SIunits.LinearTemperatureCoefficient alpha[m]=zeros(m) 
    "Temperature coefficients of resistances at reference temperatures";
  extends Modelica.Electrical.MultiPhase.Interfaces.ConditionalHeatPort(final mh=m, T = T_ref);
  Modelica.Blocks.Interfaces.RealInput R[m];
  Modelica.Electrical.Analog.Basic.VariableResistor variableResistor[m](
    final T_ref=T_ref,
    final alpha=alpha,
    each final useHeatPort=useHeatPort,
    final T=T);
equation 
  connect(variableResistor.p, plug_p.pin);
  connect(variableResistor.n, plug_n.pin);
  connect(R, variableResistor.R);
  connect(variableResistor.heatPort, heatPort);
end VariableResistor;

Modelica.Electrical.MultiPhase.Basic.VariableConductor Modelica.Electrical.MultiPhase.Basic.VariableConductor

Ideal linear electrical conductors with variable conductance

Modelica.Electrical.MultiPhase.Basic.VariableConductor

Information


Contains m variable conductors (Modelica.Electrical.Analog.Basic.VariableConductor)

Attention!!!
It is recomended that none of the G_Port signals should not cross the zero value. Otherwise depending on the surrounding circuit the probability of singularities is high.

Extends from Interfaces.TwoPlug (Component with one m-phase electric port), Modelica.Electrical.MultiPhase.Interfaces.ConditionalHeatPort (Partial model to include conditional HeatPorts in order to describe the power loss via a thermal network).

Parameters

TypeNameDefaultDescription
Integerm3number of phases
TemperatureT_ref[m]fill(300.15, m)Reference temperatures [K]
LinearTemperatureCoefficientalpha[m]zeros(m)Temperature coefficients of conductances at reference temperatures [1/K]
IntegermhmNumber of heatPorts=number of phases
BooleanuseHeatPortfalse=true, if all HeatPorts are enabled
TemperatureT[mh]T_refFixed device temperatures if useHeatPort = false [K]

Connectors

TypeNameDescription
PositivePlugplug_p 
NegativePlugplug_n 
HeatPort_aheatPort[mh] 
input RealInputG[m] 

Modelica definition

model VariableConductor 
  "Ideal linear electrical conductors with variable conductance"
  extends Interfaces.TwoPlug;
 parameter Modelica.SIunits.Temperature T_ref[m]=fill(300.15,m) 
    "Reference temperatures";
  parameter Modelica.SIunits.LinearTemperatureCoefficient alpha[m]=zeros(m) 
    "Temperature coefficients of conductances at reference temperatures";
  extends Modelica.Electrical.MultiPhase.Interfaces.ConditionalHeatPort(final mh=m, T = T_ref);
  Modelica.Blocks.Interfaces.RealInput G[m];
  Modelica.Electrical.Analog.Basic.VariableConductor variableConductor[m](
    final T_ref=T_ref,
    final alpha=alpha,
    each final useHeatPort=useHeatPort,
    final T=T);
equation 
  connect(variableConductor.p, plug_p.pin);
  connect(variableConductor.n, plug_n.pin);
  connect(G, variableConductor.G);
  connect(variableConductor.heatPort, heatPort);
end VariableConductor;

Modelica.Electrical.MultiPhase.Basic.VariableCapacitor Modelica.Electrical.MultiPhase.Basic.VariableCapacitor

Ideal linear electrical capacitors with variable capacitance

Modelica.Electrical.MultiPhase.Basic.VariableCapacitor

Information


Contains m variable capacitors (Modelica.Electrical.Analog.Basic.VariableCapacitor)

It is required that each C_Port.signal ≥ 0, otherwise an assertion is raised. To avoid a variable index system,
C = Cmin, if 0 ≤ C_Port.signal < Cmin, where Cmin is a parameter with default value Modelica.Constants.eps.

Extends from Interfaces.TwoPlug (Component with one m-phase electric port).

Parameters

TypeNameDefaultDescription
Integerm3number of phases
CapacitanceCmin[m]fill(Modelica.Constants.eps,...minimum Capacitance [F]

Connectors

TypeNameDescription
PositivePlugplug_p 
NegativePlugplug_n 
input RealInputC[m] 

Modelica definition

model VariableCapacitor 
  "Ideal linear electrical capacitors with variable capacitance"
  extends Interfaces.TwoPlug;
  parameter Modelica.SIunits.Capacitance Cmin[m]=fill(Modelica.Constants.eps,m) 
    "minimum Capacitance";
  Modelica.Blocks.Interfaces.RealInput C[m];
  Modelica.Electrical.Analog.Basic.VariableCapacitor variableCapacitor[m](final Cmin = Cmin);
equation 
  connect(variableCapacitor.p, plug_p.pin);
  connect(variableCapacitor.n, plug_n.pin);
  connect(C, variableCapacitor.C);
end VariableCapacitor;

Modelica.Electrical.MultiPhase.Basic.VariableInductor Modelica.Electrical.MultiPhase.Basic.VariableInductor

Ideal linear electrical inductors with variable inductance

Modelica.Electrical.MultiPhase.Basic.VariableInductor

Information


Contains m variable inductors (Modelica.Electrical.Analog.Basic.VariableInductor)

It is required that each L_Port.signal ≥ 0, otherwise an assertion is raised. To avoid a variable index system,
L = Lmin, if 0 ≤ L_Port.signal < Lmin, where Lmin is a parameter with default value Modelica.Constants.eps.

Extends from Interfaces.TwoPlug (Component with one m-phase electric port).

Parameters

TypeNameDefaultDescription
Integerm3number of phases
InductanceLmin[m]fill(Modelica.Constants.eps,...minimum Inductance [H]

Connectors

TypeNameDescription
PositivePlugplug_p 
NegativePlugplug_n 
input RealInputL[m] 

Modelica definition

model VariableInductor 
  "Ideal linear electrical inductors with variable inductance"
  extends Interfaces.TwoPlug;
  parameter Modelica.SIunits.Inductance Lmin[m]=fill(Modelica.Constants.eps,m) 
    "minimum Inductance";
  Modelica.Blocks.Interfaces.RealInput L[m];
  Modelica.Electrical.Analog.Basic.VariableInductor variableInductor[m](final Lmin
      =    Lmin);

equation 
  connect(variableInductor.p, plug_p.pin);
  connect(variableInductor.n, plug_n.pin);
  connect(L, variableInductor.L);
end VariableInductor;

HTML-documentation generated by Dymola Sun Jan 17 21:10:58 2010.