model InvGate "InvGate with 1 input value, composed by Not and sensitive inertial delay"
import D = Modelica.Electrical.Digital;
extends D.Delay.DelayParams;
extends D.Interfaces.SISO;
D.Basic.Not G1 annotation (Placement(transformation(extent = {
{-60, -20},
{-20, 20}})));
D.Delay.InertialDelaySensitive G2(tLH = tLH, tHL = tHL) annotation (Placement(transformation(extent = {
{20, -20},
{60, 20}})));
equation
connect(G1.x,x) annotation (Line(
points = {
{-52, 0},
{-60, 0}},
color = {127, 0, 127}));
connect(G1.y,G2.x) annotation (Line(
points = {
{-20, 0},
{28, 0}},
color = {127, 0, 127}));
connect(G2.y,y) annotation (Line(
points = {
{60, 0},
{100, 0}},
color = {127, 0, 127}));
annotation (
Documentation(
info = "<html>\n<p>The InvGate model has a single valued input, and a single valued output. It is composed by a Basic Not and an InertialDelaySensitive. Its parameters are the delay parameters (rise and fall inertial delay time, and initial value).</p>\n</html>",
revisions = "<html>\n<dl>\n<dt><em>August 14, 2003</em></dt>\n<dd>by Teresa Schlegel initially modelled.</dd>\n</dl>\n</html>"),
Icon(
coordinateSystem(
preserveAspectRatio = true,
extent = {
{-100, -100},
{100, 100}}),
graphics = {
Text(
extent = {
{152, -160},
{-148, -100}},
lineColor = {0, 0, 255},
textString = "%name"),
Rectangle(
extent = {
{-50, 100},
{50, -100}},
lineThickness = 0.5,
fillColor = {213, 170, 255},
fillPattern = FillPattern.Solid),
Text(
extent = {
{-50, 80},
{50, 40}},
textString = "1"),
Text(
extent = {
{-18, -60},
{20, -100}},
textString = "Gate"),
Ellipse(
extent = {
{50, 6},
{62, -6}},
lineThickness = 0.5,
fillColor = {255, 255, 255},
fillPattern = FillPattern.Solid)}));
end InvGate;