Plecs { Name "forward_peak_current_mode_Z_domain" Version "3.7" CircuitModel "ContStateSpace" StartTime "0.0" StopTime "simuation_total_time" Solver "radau" MaxStep "1e-3" InitStep "-1" FixedStep "1e-3" Refine "1" ZCStepSize "1e-9" RelTol "1e-3" AbsTol "-1" TurnOnThreshold "0" SyncFixedStepTasks "2" UseSingleCommonBaseRate "1" LossVariableLimitExceededMsg "3" NegativeSwitchLossMsg "3" DivisionByZeroMsg "2" StiffnessDetectionMsg "2" MaxConsecutiveZCs "1000" AssertionAction "1" InitializationCommands "fid = fopen(\"myfile.txt\");\n\nfor i = 1:100\n\tfli" "ne = fgetl(fid);\n\t\n\tif(fline == -1)\n\t\tbreak;\n\tend\n\n\tdisp(fline);" "\n\teval(fline);\n\t\t\n\t\nend\n\nfclose(fid)" InitialState "1" SystemState "" CodeGenTopologies "[]" CodeGenSwitchingAlgorithm "1" CodeGenMatrixCodingStyle "1" CodeGenParameterInlining "2" CodeGenInliningExceptions "AAAACwAAAAAA" CodeGenIntegerWordSize "32" CodeGenAbsTimeUsageMsg "3" CodeGenBaseName "" CodeGenOutputDir "" CodeGenExtraOpts "" ExtendedMatrixPrecision "1" MatrixSignificanceCheck "2" Schematic { Location [1, 45; 1919, 2048] ZoomFactor 1.87249 SliderPosition [0, 0] ShowBrowser off BrowserWidth 100 Component { Type Constant Name "Voltage \nController\nReference" Show on Position [155, 560] Direction right Flipped off Frame [-10, -10; 10, 10] LabelPosition [0, 13] LabelAlign up Parameter { Variable "Value" Value "Vc_v" Show off } } Component { Type Goto Name "Goto6" Show off Position [675, 535] Direction right Flipped off Parameter { Variable "Tag" Value "PWM" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Component { Type Sum Name "Sum" Show off Position [220, 560] Direction up Flipped off Parameter { Variable "IconShape" Value "2" Show off } Parameter { Variable "Inputs" Value "|+-" Show off } } Component { Type Reference SrcComponent "Components/Control/Logical/SR Flip-flop" Name "SR Flip-flop" Show on Position [630, 545] Direction up Flipped off Frame [-20, -20; 20, 20] LabelPosition [0, 23] LabelAlign up Parameter { Variable "x_init" Value "0" Show off } Terminal { Type Input Position [-20, 10] Direction left } Terminal { Type Input Position [-20, -10] Direction left } Terminal { Type Output Position [24, -10] Direction right } Terminal { Type Output Position [24, 10] Direction right } } Component { Type PulseGenerator Name "Pulse\nGenerator" Show on Position [545, 485] Direction right Flipped off Parameter { Variable "Hi" Value "1" Show off } Parameter { Variable "Lo" Value "0" Show off } Parameter { Variable "f" Value "fsw" Show off } Parameter { Variable "DutyCycle" Value "0.01" Show off } Parameter { Variable "Delay" Value "0" Show off } } Component { Type Comparator Name "Comparator" Show on Position [540, 555] Direction right Flipped off } Component { Type Sum Name "Sum1" Show off Position [470, 640] Direction left Flipped off Parameter { Variable "IconShape" Value "2" Show off } Parameter { Variable "Inputs" Value "|++" Show off } } Component { Type TriangleGenerator Name "Artifical Ramp" Show on Position [520, 640] Direction left Flipped off Parameter { Variable "Min" Value "0" Show off } Parameter { Variable "Max" Value "Va" Show off } Parameter { Variable "f" Value "fsw" Show off } Parameter { Variable "DutyCycle" Value "0.99" Show off } Parameter { Variable "Delay" Value "0" Show off } } Component { Type Saturation Name "Saturation" Show on Position [390, 560] Direction right Flipped off Parameter { Variable "UpperLimit" Value "VM_i*0.99" Show on } Parameter { Variable "LowerLimit" Value "VM_i*0.01" Show on } } Component { Type Gain Name "Voltage \nSensor Gain" Show on Position [220, 635] Direction up Flipped off Parameter { Variable "K" Value "Hs_v" Show off } Parameter { Variable "Multiplication" Value "1" Show off } } Component { Type From Name "From9" Show off Position [470, 685] Direction up Flipped off Parameter { Variable "Tag" Value "Ifb" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Component { Type From Name "From11" Show off Position [220, 730] Direction up Flipped off Parameter { Variable "Tag" Value "Vo" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Component { Type ZeroOrderHold Name "Zero-Order\nHold Vfb" Show on Position [220, 690] Direction up Flipped off Parameter { Variable "Ts" Value "Tsamp" Show off } } Component { Type DiscreteTransferFunction Name "Discrete\nTransfer Fcn Vo" Show on Position [295, 560] Direction right Flipped off Frame [-30, -15; 30, 15] LabelPosition [0, 18] LabelAlign up Parameter { Variable "Numerator" Value "[b0z_v b1z_v b2z_v]" Show off } Parameter { Variable "Denominator" Value "[a0z_v a1z_v a2z_v]" Show off } Parameter { Variable "Ts" Value "Tsamp" Show off } Parameter { Variable "X0" Value "0" Show off } } Component { Type DCVoltageSource Name "V_dc" Show off Position [210, 135] Direction down Flipped on Parameter { Variable "V" Value "Vinput" Show on } } Component { Type Inductor Name "L1" Show off Position [580, 105] Direction left Flipped off Parameter { Variable "L" Value "Lout" Show on } Parameter { Variable "i_init" Value "0" Show off } } Component { Type Resistor Name "R" Show off Position [815, 200] Direction down Flipped off Parameter { Variable "R" Value "Rload50" Show on } } Component { Type Capacitor Name "C1" Show off Position [735, 235] Direction down Flipped on Parameter { Variable "C" Value "Cout" Show on } Parameter { Variable "v_init" Value "Vout" Show on } } Component { Type PlecsProbe Name "Probe\nIL-Vo" Show on Position [70, 120] Direction right Flipped off } Component { Type SignalDemux Name "Demux1" Show off Position [115, 120] Direction right Flipped on Parameter { Variable "Width" Value "2" Show off } } Component { Type Voltmeter Name "Vout" Show on Position [925, 200] Direction up Flipped off } Component { Type Goto Name "Goto" Show off Position [970, 200] Direction right Flipped off Parameter { Variable "Tag" Value "Vo" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Component { Type Resistor Name "R1" Show off Position [870, 320] Direction down Flipped off Parameter { Variable "R" Value "Rload50" Show on } } Component { Type Switch Name "S1" Show on Position [870, 365] Direction down Flipped off Parameter { Variable "s_init" Value "0" Show off } } Component { Type PulseGenerator Name "50% to 100%" Show on Position [815, 365] Direction right Flipped off Parameter { Variable "Hi" Value "1" Show off } Parameter { Variable "Lo" Value "0" Show off } Parameter { Variable "f" Value "fdisturbance" Show off } Parameter { Variable "DutyCycle" Value "0.5" Show off } Parameter { Variable "Delay" Value "0" Show off } } Component { Type Ground Name "Ground" Show off Position [870, 425] Direction up Flipped off } Component { Type Transformer Name "Tr2" Show on Position [455, 145] Direction right Flipped on Parameter { Variable "Windings" Value "[1 1]" Show off } Parameter { Variable "n" Value "[primary_turns_number secondary_turns_number]" Show off } Parameter { Variable "Polarity" Value "+" Show off } Parameter { Variable "Lm" Value "inf" Show off } Parameter { Variable "im0" Value "0" Show off } } Component { Type Mosfet Name "T2" Show off Position [370, 205] Direction down Flipped on Parameter { Variable "Ron" Value "0" Show off } Parameter { Variable "s_init" Value "0" Show off } Parameter { Variable "thermal" Value "" Show off } Parameter { Variable "T_init" Value "0" Show off } } Component { Type From Name "From10" Show off Position [415, 205] Direction left Flipped off Parameter { Variable "Tag" Value "PWM" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Component { Type Mosfet Name "T3" Show off Position [370, 80] Direction down Flipped on Parameter { Variable "Ron" Value "0" Show off } Parameter { Variable "s_init" Value "0" Show off } Parameter { Variable "thermal" Value "" Show off } Parameter { Variable "T_init" Value "0" Show off } } Component { Type From Name "From12" Show off Position [415, 80] Direction left Flipped off Parameter { Variable "Tag" Value "PWM" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Component { Type Diode Name "D1" Show on Position [330, 90] Direction down Flipped off Parameter { Variable "Vf" Value "0" Show off } Parameter { Variable "Ron" Value "0" Show off } Parameter { Variable "thermal" Value "" Show off } Parameter { Variable "T_init" Value "0" Show off } } Component { Type Diode Name "D2" Show on Position [290, 190] Direction down Flipped off Parameter { Variable "Vf" Value "0" Show off } Parameter { Variable "Ron" Value "0" Show off } Parameter { Variable "thermal" Value "" Show off } Parameter { Variable "T_init" Value "0" Show off } } Component { Type Ground Name "Ground1" Show off Position [465, 310] Direction up Flipped off } Component { Type Diode Name "D3" Show on Position [500, 105] Direction left Flipped off Parameter { Variable "Vf" Value "0" Show off } Parameter { Variable "Ron" Value "0" Show off } Parameter { Variable "thermal" Value "" Show off } Parameter { Variable "T_init" Value "0" Show off } } Component { Type Diode Name "D4" Show on Position [530, 200] Direction down Flipped off Parameter { Variable "Vf" Value "0" Show off } Parameter { Variable "Ron" Value "0" Show off } Parameter { Variable "thermal" Value "" Show off } Parameter { Variable "T_init" Value "0" Show off } } Component { Type Label Name "Label3" Show off Position [870, 85] Direction up Flipped off Parameter { Variable "Tag" Value "Vout" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Component { Type Resistor Name "R2" Show off Position [735, 180] Direction down Flipped off Parameter { Variable "R" Value "Cout_ESR" Show on } } Component { Type Resistor Name "R3" Show off Position [655, 105] Direction left Flipped off Parameter { Variable "R" Value "Lout_ESR" Show on } } Component { Type Scope Name "Scope" Show on Position [155, 120] Direction up Flipped off Location [971, 693; 1382, 1128] State "AAAA/wAAAAD9AAAAAgAAAAEAAAAAAAAAAPwCAAAAA/sAAAAQAFoAbwBvA" "G0AQQByAGUAYQAAAAAA/////wAAAGcA////+wAAABQAUwBhAHYAZQBkAFYAaQBlAHcAcwAAAAAA//" "///wAAAHEA////+wAAAAwAVAByAGEAYwBlAHMAAAAAAP////8AAABxAP///wAAAAMAAAAAAAAAAPw" "BAAAAAfsAAAAUAEQAYQB0AGEAVwBpAGQAZwBlAHQAAAAAAP////8AAABpAP///wAAAZsAAAGQAAAA" "BAAAAAQAAAAIAAAACPwAAAABAAAAAgAAAAEAAAAOAFQAbwBvAGwAQgBhAHIBAAAAAP////8AAAAAA" "AAAAA==" SavedViews "AAAAAgAAAAA=" HeaderState "AAAA/wAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAL/gMAAAAJAAAAC" "QAAAGQAAAAIAAAAZAAAAAcAAABkAAAABgAAAGQAAAAFAAAAZAAAAAQAAABkAAAAAwAAAGQAAAACAA" "AAZAAAAAEAAABkAAAA1QAAAAsBAAABAAAAAAAAAAAAAAAAZP////8AAACBAAAAAAAAAAMAAAChAAA" "AAQAAAAAAAAAAAAAACQAAAAAAAAA0AAAAAQAAAAA=" PlotPalettes "AAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAA" "AEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=" Axes "2" TimeRange "0" ScrollingMode "1" SingleTimeAxis "1" Open "0" Ts "-1" SampleLimit "0" XAxisLabel "" Axis { Name "IL" AutoScale 1 MinValue 0 MaxValue 1 Signals {} SignalTypes [ ] Untangle 0 KeepBaseline off BaselineValue 0 } Axis { Name "Vout" AutoScale 1 MinValue 0 MaxValue 1 Signals {} SignalTypes [ ] Untangle 0 KeepBaseline off BaselineValue 0 } Fourier { SingleXAxis on AxisLabel "Frequency" Scaling 0 PhaseDisplay 0 Axis { Name "" AutoScale 1 MinValue 0 MaxValue 1 Signals {} Untangle 0 KeepBaseline off BaselineValue 0 } Axis { Name "" AutoScale 1 MinValue 0 MaxValue 1 Signals {} Untangle 0 KeepBaseline off BaselineValue 0 } } } Component { Type Resistor Name "R4" Show off Position [255, 245] Direction left Flipped off Parameter { Variable "R" Value "Rsense" Show on } } Component { Type Voltmeter Name "Vm1" Show on Position [255, 285] Direction right Flipped off } Component { Type Goto Name "Goto1" Show off Position [255, 320] Direction down Flipped off Parameter { Variable "Tag" Value "Ifb" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Connection { Type Signal SrcComponent "Sum" SrcTerminal 1 DstComponent "Discrete\nTransfer Fcn Vo" DstTerminal 1 } Connection { Type Signal SrcComponent "Pulse\nGenerator" SrcTerminal 1 Points [570, 485; 570, 535] DstComponent "SR Flip-flop" DstTerminal 2 } Connection { Type Signal SrcComponent "Artifical Ramp" SrcTerminal 1 DstComponent "Sum1" DstTerminal 3 } Connection { Type Signal SrcComponent "Comparator" SrcTerminal 3 DstComponent "SR Flip-flop" DstTerminal 1 } Connection { Type Signal SrcComponent "Sum1" SrcTerminal 1 Points [470, 550] DstComponent "Comparator" DstTerminal 1 } Connection { Type Signal SrcComponent "Discrete\nTransfer Fcn Vo" SrcTerminal 2 DstComponent "Saturation" DstTerminal 1 } Connection { Type Signal SrcComponent "Saturation" SrcTerminal 2 DstComponent "Comparator" DstTerminal 2 } Connection { Type Signal SrcComponent "Voltage \nController\nReference" SrcTerminal 1 DstComponent "Sum" DstTerminal 2 } Connection { Type Signal SrcComponent "Voltage \nSensor Gain" SrcTerminal 2 DstComponent "Sum" DstTerminal 3 } Connection { Type Signal SrcComponent "SR Flip-flop" SrcTerminal 3 DstComponent "Goto6" DstTerminal 1 } Connection { Type Signal SrcComponent "From11" SrcTerminal 1 DstComponent "Zero-Order\nHold Vfb" DstTerminal 1 } Connection { Type Signal SrcComponent "Zero-Order\nHold Vfb" SrcTerminal 2 DstComponent "Voltage \nSensor Gain" DstTerminal 1 } Connection { Type Wire SrcComponent "R" SrcTerminal 2 Points [815, 105] Branch { Points [735, 105] Branch { DstComponent "R2" DstTerminal 2 } Branch { DstComponent "R3" DstTerminal 2 } } Branch { Points [870, 105] Branch { Points [925, 105] DstComponent "Vout" DstTerminal 1 } Branch { DstComponent "R1" DstTerminal 2 } Branch { DstComponent "Label3" DstTerminal 1 } } } Connection { Type Signal SrcComponent "Probe\nIL-Vo" SrcTerminal 1 DstComponent "Demux1" DstTerminal 1 } Connection { Type Signal SrcComponent "Vout" SrcTerminal 3 DstComponent "Goto" DstTerminal 1 } Connection { Type Wire SrcComponent "R" SrcTerminal 1 Points [815, 285] Branch { Points [735, 285] Branch { DstComponent "C1" DstTerminal 2 } Branch { Points [530, 285] Branch { Points [465, 285] Branch { DstComponent "Tr2" DstTerminal 4 } Branch { DstComponent "Ground1" DstTerminal 1 } } Branch { DstComponent "D4" DstTerminal 1 } } } Branch { Points [925, 285] DstComponent "Vout" DstTerminal 2 } } Connection { Type Wire SrcComponent "S1" SrcTerminal 2 DstComponent "R1" DstTerminal 1 } Connection { Type Signal SrcComponent "50% to 100%" SrcTerminal 1 DstComponent "S1" DstTerminal 3 } Connection { Type Wire SrcComponent "S1" SrcTerminal 1 DstComponent "Ground" DstTerminal 1 } Connection { Type Signal SrcComponent "From10" SrcTerminal 1 DstComponent "T2" DstTerminal 3 } Connection { Type Signal SrcComponent "From12" SrcTerminal 1 DstComponent "T3" DstTerminal 3 } Connection { Type Wire SrcComponent "T2" SrcTerminal 2 Points [370, 245; 290, 245] Branch { DstComponent "R4" DstTerminal 2 } Branch { DstComponent "D2" DstTerminal 1 } Branch { Points [290, 285] DstComponent "Vm1" DstTerminal 1 } } Connection { Type Wire SrcComponent "Tr2" SrcTerminal 1 Points [370, 125] Branch { DstComponent "T3" DstTerminal 2 } Branch { Points [290, 125] DstComponent "D2" DstTerminal 2 } } Connection { Type Wire SrcComponent "Tr2" SrcTerminal 2 Points [370, 155] Branch { DstComponent "T2" DstTerminal 1 } Branch { Points [330, 155] DstComponent "D1" DstTerminal 1 } } Connection { Type Wire SrcComponent "T3" SrcTerminal 1 Points [370, 35; 330, 35] Branch { Points [210, 35] DstComponent "V_dc" DstTerminal 1 } Branch { DstComponent "D1" DstTerminal 2 } } Connection { Type Wire SrcComponent "Tr2" SrcTerminal 3 Points [465, 105] DstComponent "D3" DstTerminal 1 } Connection { Type Wire SrcComponent "D3" SrcTerminal 2 Points [530, 105] Branch { DstComponent "L1" DstTerminal 1 } Branch { DstComponent "D4" DstTerminal 2 } } Connection { Type Wire SrcComponent "C1" SrcTerminal 1 DstComponent "R2" DstTerminal 1 } Connection { Type Wire SrcComponent "R3" SrcTerminal 1 DstComponent "L1" DstTerminal 2 } Connection { Type Signal SrcComponent "Demux1" SrcTerminal 2 DstComponent "Scope" DstTerminal 1 } Connection { Type Signal SrcComponent "Demux1" SrcTerminal 3 DstComponent "Scope" DstTerminal 2 } Connection { Type Wire SrcComponent "V_dc" SrcTerminal 2 Points [210, 245] Branch { DstComponent "R4" DstTerminal 1 } Branch { Points [210, 285] DstComponent "Vm1" DstTerminal 2 } } Connection { Type Signal SrcComponent "Vm1" SrcTerminal 3 DstComponent "Goto1" DstTerminal 1 } Connection { Type Signal SrcComponent "From9" SrcTerminal 1 DstComponent "Sum1" DstTerminal 2 } } ProbeBlock { Tag "forward_peak_current_mode_Z_domain/Probe\\nIL-Vo" Probe { Component "L1" Path "" Signals {"Inductor current"} } Probe { Component "C1" Path "" Signals {"Capacitor voltage"} } } } DemoSignature "8I+TUhQspw4BxG4j2wnzu8l7Y91MeND8a4JDl/wGonw="