Modelica示例——晶体管静态工作点电路

如图所示,为晶体管静态工作点的最简电路。

电路


曲线


代码

model aa "Simple NPN transistor amplifier circuit"
  import Modelica.Electrical.Analog.Basic;
  import Modelica.Electrical.Analog.Sources;
  import Modelica.Electrical.Analog.Examples.Utilities;
  import Modelica.Icons;
  extends Icons.Example;
  Modelica.Electrical.Analog.Basic.Resistor R1(R = 10000) annotation(
    Placement(visible = true, transformation(extent = {{-78, -20}, {-58, 0}}, rotation = 0)));
  Modelica.Electrical.Analog.Basic.Resistor R2(R = 100) annotation(
    Placement(visible = true, transformation(origin = {-26, 30}, extent = {{-10, -10}, {10, 10}}, rotation = 270)));
  Modelica.Electrical.Analog.Basic.Ground Gnd1 annotation(
    Placement(visible = true, transformation(extent = {{-31, -80}, {-21, -70}}, rotation = 0)));
  Modelica.Electrical.Analog.Examples.Utilities.Transistor Transistor1(ct(v(start = 0, fixed = true))) annotation(
    Placement(visible = true, transformation(extent = {{-46, -20}, {-26, 0}}, rotation = 0)));
  Modelica.Electrical.Analog.Sources.ConstantVoltage constantVoltage1(V = 15) annotation(
    Placement(visible = true, transformation(origin = {10, -10}, extent = {{-10, -10}, {10, 10}}, rotation = -90)));
  Modelica.Electrical.Analog.Sources.ConstantVoltage constantVoltage2(V = 3) annotation(
    Placement(visible = true, transformation(origin = {-78, -42}, extent = {{-10, -10}, {10, 10}}, rotation = -90)));
equation
  connect(constantVoltage2.n, Gnd1.p) annotation(
    Line(points = {{-80, -52}, {-80, -52}, {-80, -70}, {-28, -70}, {-28, -70}}, color = {0, 0, 255}));
  connect(R1.p, constantVoltage2.p) annotation(
    Line(points = {{-78, -10}, {-78, -10}, {-78, -32}, {-78, -32}}, color = {0, 0, 255}));
  connect(R2.n, Transistor1.c) annotation(
    Line(points = {{-28, 20}, {-28, -4}}, color = {0, 0, 255}));
  connect(R2.p, constantVoltage1.p) annotation(
    Line(points = {{-28, 40}, {8, 40}, {8, 0}}, color = {0, 0, 255}));
  connect(R1.n, Transistor1.b) annotation(
    Line(points = {{-60, -10}, {-48, -10}}, color = {0, 0, 255}));
  connect(Transistor1.e, Gnd1.p) annotation(
    Line(points = {{-28, -16}, {-28, -16}, {-28, -70}, {-28, -70}}, color = {0, 0, 255}));
  connect(constantVoltage1.n, Gnd1.p) annotation(
    Line(points = {{8, -20}, {8, -70}, {-28, -70}}, color = {0, 0, 255}));
  annotation(
    Documentation(info = "<html>
<p>It is a simple NPN transistor amplifier circuit. The voltage difference between R1.p and R3.n is amplified. The output signal is the voltage between R2.n and R4.n. In this example the voltage at V1 is amplified because R3.n is grounded.</p>
<p>The simulation end time should be set to 1e- 8. Please plot the input voltage V1.v, and the output voltages R2.n.v, and R4.n.v.</p>
<p><b>Reference:</b></p>
<p>Tietze, U.; Schenk, Ch.: Halbleiter-Schaltungstechnik. Springer-Verlag Berlin Heidelberg NewYork 1980, p. 59</p>
</html>", revisions = "<html>
<dl>
<dt>
<b>Main Authors:</b>
</dt>
<dd>
Christoph Clau&szlig;
    &lt;<a href=\"mailto:[email protected]\">[email protected]</a>&gt;<br>
    Andr&eacute; Schneider
    &lt;<a href=\"mailto:[email protected]\">[email protected]</a>&gt;<br>
    Fraunhofer Institute for Integrated Circuits<br>
    Design Automation Department<br>
    Zeunerstra&szlig;e 38<br>
    D-01069 Dresden
</dd>
</dl>
</html>"),
    experiment(StopTime = 1),
    Diagram(coordinateSystem(preserveAspectRatio = false, initialScale = 0.1)),
    uses(Modelica(version = "3.2.2")));
end aa;

猜你喜欢

转载自blog.csdn.net/bear_miao/article/details/80187239
今日推荐