Archived OpenModelica forums. Posting is disabled.

Alternative forums include GitHub discussions or StackOverflow (make sure to read the Stack Overflow rules; you need to have well-formed questions)


Forgot password? | Forgot username? | Register

Openmodelica fails to simulate DC/DC converter

Openmodelica fails to simulate DC/DC converter

Hi,
I upgrade my openmodelica (MAC version) to 1.8, and it crashes, it don´t open. my OS is snow leopard

Second problem...
when i try to simulate a boost, buck or buck-boost DC/DC converter, the simulation is bad, I compare with a manual solution and with scilab solution. Only the openmodelica solution is different.

the code is:
model Buck
  annotation(experiment(StartTime = 0.0, StopTime = 0.01, Tolerance = 1e-06));
  Modelica.Electrical.Analog.Sources.TrapezoidVoltage trapezoidvoltage1(V = 20, rising = 1e-06, width = 4.8e-05, falling = 1e-06, period = 0.0001, nperiod = 100) annotation(Placement(visible = true, transformation(origin = {-29.5,-31.5}, extent = {{-15,15},{15,-15}}, rotation = -90)));
  Modelica.Electrical.Analog.Semiconductors.NMOS nmos1 annotation(Placement(visible = true, transformation(origin = {-42.5,28.5}, extent = {{15,-15},{-15,15}}, rotation = 90)));
  Modelica.Electrical.Analog.Sources.ConstantVoltage constantvoltage1(V = 100) annotation(Placement(visible = true, transformation(origin = {-78.5,-3}, extent = {{-15,15},{15,-15}}, rotation = -90)));
  Modelica.Electrical.Analog.Semiconductors.Diode diode1 annotation(Placement(visible = true, transformation(origin = {10.5,15.5}, extent = {{15,-15},{-15,15}}, rotation = 90)));
  Modelica.Electrical.Analog.Basic.Capacitor capacitor1(C = 1e-05) annotation(Placement(visible = true, transformation(origin = {47,14}, extent = {{-15,15},{15,-15}}, rotation = -90)));
  Modelica.Electrical.Analog.Basic.Resistor resistor1(R = 100, T_ref = 300.15, alpha = 0) annotation(Placement(visible = true, transformation(origin = {80,14}, extent = {{-15,15},{15,-15}}, rotation = -90)));
  Modelica.Electrical.Analog.Basic.Ground ground1 annotation(Placement(visible = true, transformation(origin = {-30,-77.5}, extent = {{-15,-15},{15,15}}, rotation = 0)));
equation
  connect(ground1.p,trapezoidvoltage1.n) annotation(Line(points = {{-30,-62.5},{-30,-45},{-29.5,-45},{-29.5,-46.5},{-29.5,-46.5}}));
  connect(diode1.p,trapezoidvoltage1.n) annotation(Line(points = {{10.5,0.5},{10.5,0.5},{10.5,-45},{-29,-45},{-29,-46.5},{-29.5,-46.5}}));
  connect(constantvoltage1.n,trapezoidvoltage1.n) annotation(Line(points = {{-78.5,-18},{-78,-18},{-78,-45.5},{-29.5,-45.5},{-29.5,-46.5}}));
  connect(constantvoltage1.p,nmos1.D) annotation(Line(points = {{-78.5,12},{-79.5,12},{-79.5,43},{-50,43},{-50,43.5}}));
  connect(nmos1.B,nmos1.S) annotation(Line(points = {{-42.5,43.5},{-35,43.5},{-35,43.5},{-35,43.5}}));
  connect(nmos1.S,diode1.n) annotation(Line(points = {{-35,43.5},{10.5,43.5},{10.5,30.5},{10.5,30.5}}));
  connect(capacitor1.n,diode1.p) annotation(Line(points = {{47,-1},{10,-1},{10,0.5},{10.5,0.5}}));
  connect(resistor1.n,capacitor1.n) annotation(Line(points = {{80,-1},{47,-1},{47,-1},{47,-1}}));
  connect(capacitor1.p,resistor1.p) annotation(Line(points = {{47,29},{79.5,29},{79.5,29},{80,29}}));
  connect(diode1.n,capacitor1.p) annotation(Line(points = {{10.5,30.5},{47.5,30.5},{47.5,29},{47,29}}));
  connect(trapezoidvoltage1.p,nmos1.G) annotation(Line(points = {{-29.5,-16.5},{-29,-16.5},{-29,13.5},{-35,13.5}}));
end Buck;

The amplitude level is bad, and the waveform.

Edited by: jaime_paul - Feb-09-12 05:50:28
There are 0 guests and 0 other users also viewing this topic
You are here: