Plecs { Name "vector_control_induction_machine_ix" Version "4.4" CircuitModel "ContStateSpace" StartTime "0.0" StopTime "2" Timeout "" Solver "radau" MaxStep "1e-3" InitStep "-1" FixedStep "1e-3" Refine "1" ZCStepSize "1e-9" RelTol "1e-4" AbsTol "-1" TurnOnThreshold "0" SyncFixedStepTasks "2" UseSingleCommonBaseRate "2" LossVariableLimitExceededMsg "3" NegativeSwitchLossMsg "3" DivisionByZeroMsg "1" StiffnessDetectionMsg "2" MaxConsecutiveZCs "1000" AlgebraicLoopWithStateMachineMsg "3" AssertionAction "1" InitializationCommands "% Induction Machine parameters\nRs = 0.1062;\nRr = 0" ".0764;\nLls = 0.2145/(2*pi*60);\nLlr = Lls;\nLm = 5.834/(2*pi*60);\nLr = Lm +" " Llr;\nLs = Lm + Lls;\np = 2;\nJ = 2.8;\nF = 0;\n\n% Rotor flux orientation\n" "k = Lm/sqrt(Lr*Ls);\t\nsigma = 1 - k^2;\nLsigma = sigma*Ls;\nLM = Lm*(Lm/Lr);" "\nRR = Rr*(Lm/Lr)^2;\n\n% Converter\nVdc = 400;\nfsw = 10e3;\n\n% PI controll" "er\nRtot = Rs + Rr*(Lm/Lr)^2;\n\nLf_PI = Lsigma;\nRf_PI = Rtot;\nK_plant = 1/" "Rf_PI;\nT_plant = Lf_PI/Rf_PI;\n\nKpe = 1;\nTsw = 1/fsw;\nTpe = Tsw*1.5;\n\nt" "ype_PI = 2;\n\n% PI design: Optimum Magnitude \n\nTn_PI = T_plant;\nTi_PI = 2" "*K_plant*Kpe*Tpe;\nKp_PI = Tn_PI/Ti_PI;\nKi_PI = 1/Ti_PI;\nKbc_PI = Ki_PI/Kp_" "PI;\n\n% HIL simulation\nTs_plant = 5e-6;\nTs_control = 1/fsw;\n\n% Scaling\n" "Vdc_scl = 3/Vdc;\nIs_scl = 3/200;" InitialState "1" SystemState "" TaskingMode "1" TaskConfigurations "" CodeGenParameterInlining "2" CodeGenFloatingPointFormat "2" CodeGenAbsTimeUsageMsg "3" CodeGenBaseName "" CodeGenOutputDir "" CodeGenExtraOpts "" CodeGenTarget "Generic" CodeGenTargetSettings "" ExtendedMatrixPrecision "1" MatrixSignificanceCheck "2" EnableStateSpaceSplitting "2" DisplayStateSpaceSplitting "1" DiscretizationMethod "2" ExternalModeSettings "AAAAfwAAAAAWUU1hcDxRU3RyaW5nLFFTdHJpbmc+AAAAAAYAAAAYAF" "QAcgBpAGcAZwBlAHIAVgBhAGwAdQBlAAAAAgAwAAAAGABUAHIAaQBnAGcAZQByAEQAZQBsAGEAeQA" "AAAIAMAAAABYAUwBlAG4AcwBpAHQAaQB2AGkAdAB5AAAAAgAwAAAAFgBSAGUAZgByAGUAcwBoAFIA" "YQB0AGUAAAAEADIAMAAAABQATgB1AG0AUwBhAG0AcABsAGUAcwAAAAgAOAAxADkAMgAAABQARABlA" "GMAaQBtAGEAdABpAG8AbgAAAAIAMQ==" AlgebraicLoopMethod "1" AlgebraicLoopTolerance "1e-6" ScriptsDialogGeometry "" ScriptsDialogSplitterPos "0" Schematic { Location [43, 53; 446, 380] ZoomFactor 1 SliderPosition [0, 0] ShowBrowser off BrowserWidth 100 Component { Type Subsystem Name "Controller" Show on Position [135, 100] Direction down Flipped off Frame [-40, -30; 40, 30] LabelPosition [0, -33] LabelAlign down TreatAsAtomicUnit on SampleTime "-1" TaskingMode "1" CodeGenEnable on CodeGenSampleTime "Ts_control" CodeGenDiscretizationMethod "2" CodeGenInliningExceptions "AAAACwAAAAACAAAABABUAGUAAAAeAFAASQAvAGQALQBhA" "HgAaQBzAC8AUABJAC8ASwBw" CodeGenTarget "Imperix Controllers" CodeGenTargetSettings "AAAAfwAAAAAlUU1hcDxRU3RyaW5nLFFNYXA8UVN0cmluZyxRU" "3RyaW5nPiA+AAAAAAIAAAAcAFAATABFAEMAUwAgAFIAVAAgAEIAbwB4ACAAMQAAABYAAAAeAHMAeQ" "BuAGMAaAByAG8AbgBpAHoAZQBUAGkAbQBlAAAAAgAwAAAAGABzAHQAYQByAHQAdQBwAFMARgBQAF8" "ARAAAAAIAMAAAABgAcwB0AGEAcgB0AHUAcABTAEYAUABfAEMAAAACADAAAAAYAHMAdABhAHIAdAB1" "AHAAUwBGAFAAXwBCAAAAAgAwAAAAGABzAHQAYQByAHQAdQBwAFMARgBQAF8AQQAAAAIAMAAAABoAc" "wBhAG0AcABsAGkAbgBnAEQAZQBsAGEAeQAAAAIAMAAAABgAbQBhAHgAXwBvAHYAZQByAHIAdQBuAH" "MAAAACADUAAAASAG0AYQBzAHQAZQByAFMARgBQAAAAAgAxAAAAJABkAGkAZwBpAHQAYQBsAE8AdQB" "0AHAAdQB0AEwAZQB2AGUAbAAAAAIAMQAAABAAYwBhAG4AMgBUAHgAUgB4AAAAAgAxAAAAHgBjAGEA" "bgAyAFQAZQByAG0AaQBuAGEAdABpAG8AbgAAAAIAMgAAABQAYwBhAG4AMgBFAG4AYQBiAGwAZQAAA" "AIAMAAAABAAYwBhAG4AMgBCAGEAdQBkAAAADAA1ADAAMAAwADAAMAAAABAAYwBhAG4AMQBUAHgAUg" "B4AAAAAgAxAAAAHgBjAGEAbgAxAFQAZQByAG0AaQBuAGEAdABpAG8AbgAAAAIAMgAAABQAYwBhAG4" "AMQBFAG4AYQBiAGwAZQAAAAIAMAAAABAAYwBhAG4AMQBCAGEAdQBkAAAADAA1ADAAMAAwADAAMAAA" "ABwAYQBuAGEAbABvAGcAUwBhAG0AcABsAGkAbgBnAAAAAgAxAAAAIgBhAG4AYQBsAG8AZwBPAHUAd" "ABwAHUAdABSAGEAbgBnAGUAAAACADMAAAAgAGEAbgBhAGwAbwBnAEkAbgBwAHUAdABSAGEAbgBnAG" "UAAAACADEAAAAaAFQAQQBSAEcARQBUAF8ARABFAFYASQBDAEUAAAAAAAAAGgBFAFgAVABFAFIATgB" "BAEwAXwBNAE8ARABFAAAAAgAxAAAAJgBJAG0AcABlAHIAaQB4ACAAQwBvAG4AdAByAG8AbABsAGUA" "cgBzAAAAAA==" ExternalModeSettings "AAAAfwAAAAAWUU1hcDxRU3RyaW5nLFFTdHJpbmc+AAAAAAcAAA" "AYAFQAcgBpAGcAZwBlAHIAVgBhAGwAdQBlAAAADgAzADIALgAxADEAMwA4AAAAGABUAHIAaQBnAGc" "AZQByAEQAZQBsAGEAeQAAAAwALQAyADAAMgA3ADcAAAAcAFQAcgBpAGcAZwBlAHIAQwBoAGEAbgBu" "AGUAbAAAAAQALQAxAAAAFgBTAGUAbgBzAGkAdABpAHYAaQB0AHkAAAACADAAAAAWAFIAZQBmAHIAZ" "QBzAGgAUgBhAHQAZQAAAAQAMgAwAAAAFABOAHUAbQBTAGEAbQBwAGwAZQBzAAAACgA0ADAAMAAwAD" "AAAAAUAEQAZQBjAGkAbQBhAHQAaQBvAG4AAAACADE=" MaskIconFrame on MaskIconOpaque off MaskIconRotates on Terminal { Type Input Position [40, 0] Direction right Index "1" } Terminal { Type Input Position [40, 20] Direction right Index "2" } Terminal { Type Output Position [-44, 0] Direction left Index "1" } Terminal { Type Input Position [-40, -20] Direction left Index "3" } Schematic { Location [836, 54; 1560, 427] ZoomFactor 1 SliderPosition [0, 0] ShowBrowser off BrowserWidth 100 Component { Type SignalMux Name "Mux" Show off Position [250, 325] Direction right Flipped off Parameter { Variable "Width" Value "2" Show off } } Component { Type Scope Name "Scope" Show on Position [460, 295] Direction up Flipped off Location [1196, 196; 1945, 944] State "AAAA/wAAAAD9AAAAAgAAAAEAAACgAAACIPwCAAAAA/sAAAAQAFoAb" "wBvAG0AQQByAGUAYQAAAAAA/////wAAAIQA////+wAAABQAUwBhAHYAZQBkAFYAaQBlAHcAcwAAAA" "AA/////wAAAGYA////+wAAAAwAVAByAGEAYwBlAHMAAAAAHAAAAiAAAABmAP///wAAAAMAAAAAAAA" "AAPwBAAAAAfsAAAAUAEQAYQB0AGEAVwBpAGQAZwBlAHQAAAAAAP////8AAABQAP///wAAAu0AAALR" "AAAABAAAAAQAAAAIAAAACPwAAAABAAAAAgAAAAEAAAAOAFQAbwBvAGwAQgBhAHIBAAAAAP////8AA" "AAAAAAAAA==" SavedViews "AAAAAgAAAAA=" HeaderState "AAAA/wAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAL/gMAAAAJA" "AAAAwAAAGQAAAACAAAAZAAAAAUAAABkAAAABAAAAGQAAAAHAAAAZAAAAAYAAABkAAAACQAAAGQAAA" "AIAAAAZAAAAAEAAABkAAAAwgAAAAsBAAABAAAAAAAAAAAAAAAAZP////8AAACBAAAAAAAAAAsAAAC" "bAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAA" "AAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAA" "AAAAAAnAAAAAQAAAAAAAAPoAAAAACc=" PlotPalettes "AAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" "QAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAA" "AAAA==" Axes "3" TimeRange "0" ScrollingMode "1" SingleTimeAxis "1" Open "0" Ts "-1" SampleLimit "0" XAxisLabel "Time (s)" ShowLegend "1" Axis { Name "Stator Currents" AutoScale 1 MinValue -200 MaxValue 200 Signals {} SignalTypes [ ] AxisLabel "Current (A)" Untangle 0 KeepBaseline off BaselineValue 0 } Axis { Name "Direct Current (Id)" AutoScale 1 MinValue 0 MaxValue 50 Signals {} SignalTypes [ ] AxisLabel "Current (A)" Untangle 0 KeepBaseline off BaselineValue 0 } Axis { Name "Quadrature Current (Iq)" AutoScale 1 MinValue 0 MaxValue 200 Signals {} SignalTypes [ ] AxisLabel "Current (A)" Untangle 0 KeepBaseline off BaselineValue 0 } Fourier { SingleXAxis on AxisLabel "Frequency" Scaling 0 PhaseDisplay 0 ShowFourierLegend off 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 } Axis { Name "" AutoScale 1 MinValue 0 MaxValue 1 Signals {} Untangle 0 KeepBaseline off BaselineValue 0 } } } Component { Type SignalSelector Name "Cont\nSelector" Show off Position [365, 320] Direction right Flipped off Parameter { Variable "InputWidth" Value "4" Show off } Parameter { Variable "OutputIndices" Value "[1 3 2 4]" Show off } } Component { Type SignalMux Name "Mux1" Show off Position [325, 320] Direction left Flipped on Parameter { Variable "Width" Value "[2 2]" Show off } } Component { Type SignalDemux Name "Demux2" Show off Position [425, 300] Direction right Flipped on Parameter { Variable "Width" Value "[2 2]" Show off } } Component { Type Constant Name "Te" Show on Position [145, 335] Direction right Flipped off Frame [-15, -10; 15, 10] LabelPosition [0, 13] LabelAlign up Parameter { Variable "Value" Value "100" Show off } Parameter { Variable "DataType" Value "10" Show off } } Component { Type Subsystem Name "PI" Show on Position [350, 220] Direction up Flipped off Frame [-30, -30; 30, 30] LabelPosition [0, 33] LabelAlign up SampleTime "-1" CodeGenDiscretizationMethod "2" CodeGenTarget "Generic" MaskDisplayLang "2" MaskIconFrame on MaskIconOpaque off MaskIconRotates on Terminal { Type Input Position [-30, 20] Direction left } Terminal { Type Output Position [34, 0] Direction right } Terminal { Type Input Position [-30, 0] Direction left } Terminal { Type Input Position [-30, -20] Direction left } Schematic { Location [357, 546; 793, 780] ZoomFactor 1 SliderPosition [0, 0] ShowBrowser off BrowserWidth 100 Component { Type Input Name "Idq*" Show on Position [390, 80] Direction right Flipped on Parameter { Variable "Index" Value "1" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Output Name "Vs*" Show on Position [40, 120] Direction right Flipped on Parameter { Variable "Index" Value "2" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Input Name "Idq" Show on Position [390, 115] Direction right Flipped on Parameter { Variable "Index" Value "3" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Input Name base64 "z4ll" Show on Position [235, 135] Direction left Flipped off Parameter { Variable "Index" Value "4" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Sum Name "Sum" Show off Position [345, 80] Direction down Flipped on Parameter { Variable "IconShape" Value "2" Show off } Parameter { Variable "Inputs" Value "|+-" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type SignalDemux Name "Demux" Show off Position [310, 80] Direction right Flipped off Parameter { Variable "Width" Value "2" Show off } } Component { Type Gain Name base64 "TM+D" Show on Position [265, 115] Direction right Flipped on Parameter { Variable "K" Value "Lsigma" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Sum Name "Sum3" Show off Position [120, 75] Direction down Flipped on Parameter { Variable "IconShape" Value "2" Show off } Parameter { Variable "Inputs" Value "|+-" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Sum Name "Sum4" Show off Position [120, 165] Direction down Flipped off Parameter { Variable "IconShape" Value "2" Show off } Parameter { Variable "Inputs" Value "|++" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Product Name "Product" Show off Position [175, 120] Direction down Flipped on Parameter { Variable "Inputs" Value "2" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type SignalDemux Name "Demux1" Show off Position [135, 120] Direction left Flipped on Parameter { Variable "Width" Value "2" Show off } } Component { Type SignalMux Name "Mux" Show off Position [80, 120] Direction right Flipped on Parameter { Variable "Width" Value "2" Show off } } Component { Type ConfigurableSubsystem Name "d-axis" Show on Position [200, 75] Direction down Flipped on Frame [-20, -10; 20, 10] LabelPosition [0, 13] LabelAlign up SampleTime "-1" CodeGenDiscretizationMethod "2" CodeGenTarget "Generic" MaskIconFrame on MaskIconOpaque off MaskIconRotates on Parameter { Variable "Kp_PI" Prompt "Kp PI" Type FreeText Value "Kp_PI" Show off Tunable off TabName "PI" } Parameter { Variable "Ki_PI" Prompt "Ki PI" Type FreeText Value "Ki_PI" Show off Tunable off TabName "PI" } Parameter { Variable "Kbc_PI" Prompt "Kbc PI" Type FreeText Value "Kbc_PI" Show off Tunable off TabName "PI" } Parameter { Variable "Limit_PI" Prompt "Limit PI" Type FreeText Value "[-Vdc Vdc]" Show off Tunable off TabName "PI" } Terminal { Type Input Position [-20, 0] Direction left } Terminal { Type Output Position [24, 0] Direction right } TerminalNames { "i", "o" } Location [425, 546; 808, 780] ZoomFactor 1 SliderPosition [0, 0] ShowBrowser off BrowserWidth 100 Configurations { Name "PI" Schematic { Component { Type Input Name "i" Show on Position [40, 90] Direction right Flipped off Parameter { Variable "Index" Value "1" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Output Name "o" Show on Position [330, 90] Direction right Flipped off Parameter { Variable "Index" Value "2" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Gain Name "Kp" Show on Position [100, 60] Direction right Flipped off Parameter { Variable "K" Value "Kp_PI" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Gain Name "Ki" Show on Position [100, 120] Direction right Flipped off Parameter { Variable "K" Value "Ki_PI" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Integrator Name "Integrator" Show off Position [190, 120] Direction left Flipped on Parameter { Variable "ExternalReset" Value "1" Show off } Parameter { Variable "InitialConditionSource" Value "1" Show off } Parameter { Variable "x0" Value "0" Show off } Parameter { Variable "ShowStatePort" Value "1" Show off } Parameter { Variable "UpperLimit" Value "inf" Show off } Parameter { Variable "LowerLimit" Value "-inf" Show off } } Component { Type Sum Name "Sum" Show off Position [215, 90] Direction up Flipped off Parameter { Variable "IconShape" Value "2" Show off } Parameter { Variable "Inputs" Value "+|+" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Saturation Name "Saturation" Show off Position [270, 90] Direction right Flipped off Parameter { Variable "UpperLimit" Value "Limit_PI(2)" Show off } Parameter { Variable "LowerLimit" Value "Limit_PI(1)" Show off } } Component { Type Sum Name "Sum2" Show off Position [235, 170] Direction down Flipped on Parameter { Variable "IconShape" Value "2" Show off } Parameter { Variable "Inputs" Value "+-|" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Gain Name "Gain2" Show off Position [190, 170] Direction right Flipped on Parameter { Variable "K" Value "Kbc_PI" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Sum Name "Sum3" Show off Position [145, 120] Direction up Flipped off Parameter { Variable "IconShape" Value "2" Show off } Parameter { Variable "Inputs" Value "|+-" Show off } Parameter { Variable "DataType" Value "11" Show off } } Connection { Type Signal SrcComponent "Kp" SrcTerminal 2 Points [215, 60] DstComponent "Sum" DstTerminal 2 } Connection { Type Signal SrcComponent "Integrator" SrcTerminal 2 Points [215, 120] DstComponent "Sum" DstTerminal 3 } Connection { Type Signal SrcComponent "i" SrcTerminal 1 Points [65, 90] Branch { Points [65, 120] DstComponent "Ki" DstTerminal 1 } Branch { Points [65, 60] DstComponent "Kp" DstTerminal 1 } } Connection { Type Signal SrcComponent "Saturation" SrcTerminal 2 Points [295, 90] Branch { DstComponent "o" DstTerminal 1 } Branch { Points [295, 170] DstComponent "Sum2" DstTerminal 3 } } Connection { Type Signal SrcComponent "Sum2" SrcTerminal 1 DstComponent "Gain2" DstTerminal 1 } Connection { Type Signal SrcComponent "Sum3" SrcTerminal 1 DstComponent "Integrator" DstTerminal 1 } Connection { Type Signal SrcComponent "Ki" SrcTerminal 2 DstComponent "Sum3" DstTerminal 2 } Connection { Type Signal SrcComponent "Gain2" SrcTerminal 2 Points [145, 170] DstComponent "Sum3" DstTerminal 3 } Connection { Type Signal SrcComponent "Sum" SrcTerminal 1 Points [235, 90] Branch { DstComponent "Saturation" DstTerminal 1 } Branch { DstComponent "Sum2" DstTerminal 2 } } } } Parameter { Variable "Configuration" Value "1" Show off } } Component { Type ConfigurableSubsystem Name "q-axis" Show on Position [200, 165] Direction down Flipped off Frame [-20, -10; 20, 10] LabelPosition [0, -13] LabelAlign down SampleTime "-1" CodeGenDiscretizationMethod "2" CodeGenTarget "Generic" MaskIconFrame on MaskIconOpaque off MaskIconRotates on Parameter { Variable "Kp_PI" Prompt "Kp PI" Type FreeText Value "Kp_PI" Show off Tunable off TabName "PI" } Parameter { Variable "Ki_PI" Prompt "Ki PI" Type FreeText Value "Ki_PI" Show off Tunable off TabName "PI" } Parameter { Variable "Kbc_PI" Prompt "Kbc PI" Type FreeText Value "Kbc_PI" Show off Tunable off TabName "PI" } Parameter { Variable "Limit_PI" Prompt "Limit PI" Type FreeText Value "[-Vdc Vdc]" Show off Tunable off TabName "PI" } Terminal { Type Input Position [-20, 0] Direction left } Terminal { Type Output Position [24, 0] Direction right } TerminalNames { "i", "o" } Location [526, 546; 909, 780] ZoomFactor 1 SliderPosition [0, 0] ShowBrowser off BrowserWidth 100 Configurations { Name "PI" Schematic { Component { Type Input Name "i" Show on Position [40, 90] Direction right Flipped off Parameter { Variable "Index" Value "1" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Output Name "o" Show on Position [330, 90] Direction right Flipped off Parameter { Variable "Index" Value "2" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Gain Name "Kp" Show on Position [100, 60] Direction right Flipped off Parameter { Variable "K" Value "Kp_PI" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Gain Name "Ki" Show on Position [100, 120] Direction right Flipped off Parameter { Variable "K" Value "Ki_PI" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Integrator Name "Integrator" Show off Position [190, 120] Direction left Flipped on Parameter { Variable "ExternalReset" Value "1" Show off } Parameter { Variable "InitialConditionSource" Value "1" Show off } Parameter { Variable "x0" Value "0" Show off } Parameter { Variable "ShowStatePort" Value "1" Show off } Parameter { Variable "UpperLimit" Value "inf" Show off } Parameter { Variable "LowerLimit" Value "-inf" Show off } } Component { Type Sum Name "Sum" Show off Position [215, 90] Direction up Flipped off Parameter { Variable "IconShape" Value "2" Show off } Parameter { Variable "Inputs" Value "+|+" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Saturation Name "Saturation" Show off Position [270, 90] Direction right Flipped off Parameter { Variable "UpperLimit" Value "Limit_PI(2)" Show off } Parameter { Variable "LowerLimit" Value "Limit_PI(1)" Show off } } Component { Type Sum Name "Sum2" Show off Position [235, 170] Direction down Flipped on Parameter { Variable "IconShape" Value "2" Show off } Parameter { Variable "Inputs" Value "+-|" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Gain Name "Gain2" Show off Position [190, 170] Direction right Flipped on Parameter { Variable "K" Value "Kbc_PI" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Sum Name "Sum3" Show off Position [145, 120] Direction up Flipped off Parameter { Variable "IconShape" Value "2" Show off } Parameter { Variable "Inputs" Value "|+-" Show off } Parameter { Variable "DataType" Value "11" Show off } } Connection { Type Signal SrcComponent "Kp" SrcTerminal 2 Points [215, 60] DstComponent "Sum" DstTerminal 2 } Connection { Type Signal SrcComponent "Integrator" SrcTerminal 2 Points [215, 120] DstComponent "Sum" DstTerminal 3 } Connection { Type Signal SrcComponent "i" SrcTerminal 1 Points [65, 90] Branch { Points [65, 120] DstComponent "Ki" DstTerminal 1 } Branch { Points [65, 60] DstComponent "Kp" DstTerminal 1 } } Connection { Type Signal SrcComponent "Sum2" SrcTerminal 1 DstComponent "Gain2" DstTerminal 1 } Connection { Type Signal SrcComponent "Sum3" SrcTerminal 1 DstComponent "Integrator" DstTerminal 1 } Connection { Type Signal SrcComponent "Ki" SrcTerminal 2 DstComponent "Sum3" DstTerminal 2 } Connection { Type Signal SrcComponent "Gain2" SrcTerminal 2 Points [145, 170] DstComponent "Sum3" DstTerminal 3 } Connection { Type Signal SrcComponent "Sum" SrcTerminal 1 Points [235, 90] Branch { DstComponent "Saturation" DstTerminal 1 } Branch { DstComponent "Sum2" DstTerminal 2 } } Connection { Type Signal SrcComponent "Saturation" SrcTerminal 2 Points [295, 90] Branch { DstComponent "o" DstTerminal 1 } Branch { Points [295, 170] DstComponent "Sum2" DstTerminal 3 } } } } Parameter { Variable "Configuration" Value "1" Show off } } Connection { Type Signal SrcComponent "Sum" SrcTerminal 1 DstComponent "Demux" DstTerminal 1 } Connection { Type Signal SrcComponent "d-axis" SrcTerminal 2 DstComponent "Sum3" DstTerminal 2 } Connection { Type Signal SrcComponent base64 "TM+D" SrcTerminal 2 DstComponent "Product" DstTerminal 2 } Connection { Type Signal SrcComponent base64 "z4ll" SrcTerminal 1 Points [210, 135; 210, 125] DstComponent "Product" DstTerminal 3 } Connection { Type Signal SrcComponent "Idq" SrcTerminal 1 Points [345, 115] Branch { DstComponent "Sum" DstTerminal 3 } Branch { DstComponent base64 "TM+D" DstTerminal 1 } } Connection { Type Signal SrcComponent "Demux1" SrcTerminal 2 Points [120, 125] DstComponent "Sum4" DstTerminal 3 } Connection { Type Signal SrcComponent "Demux1" SrcTerminal 3 Points [120, 115] DstComponent "Sum3" DstTerminal 3 } Connection { Type Signal SrcComponent "Sum3" SrcTerminal 1 Points [100, 75; 100, 115] DstComponent "Mux" DstTerminal 2 } Connection { Type Signal SrcComponent "Sum4" SrcTerminal 1 Points [100, 165; 100, 125] DstComponent "Mux" DstTerminal 3 } Connection { Type Signal SrcComponent "Idq*" SrcTerminal 1 DstComponent "Sum" DstTerminal 2 } Connection { Type Signal SrcComponent "Product" SrcTerminal 1 DstComponent "Demux1" DstTerminal 1 } Connection { Type Signal SrcComponent "Demux" SrcTerminal 2 DstComponent "d-axis" DstTerminal 1 } Connection { Type Signal SrcComponent "q-axis" SrcTerminal 2 DstComponent "Sum4" DstTerminal 2 } Connection { Type Signal SrcComponent "Mux" SrcTerminal 1 DstComponent "Vs*" DstTerminal 1 } Connection { Type Signal SrcComponent "Demux" SrcTerminal 3 Points [300, 85; 300, 165] DstComponent "q-axis" DstTerminal 1 } } } Component { Type ConfigurableSubsystem Name base64 "z4hyIGVzdGku" Show on Position [245, 195] Direction up Flipped off Frame [-30, -45; 30, 45] LabelPosition [0, -48] LabelAlign down SampleTime "-1" CodeGenDiscretizationMethod "2" CodeGenTarget "Generic" MaskDisplayLang "2" MaskIconFrame on MaskIconOpaque off MaskIconRotates on Terminal { Type Input Position [-30, 35] Direction left } Terminal { Type Output Position [34, -15] Direction right } Terminal { Type Output Position [34, 5] Direction right } Terminal { Type Input Position [-30, -35] Direction left } Terminal { Type Output Position [34, 25] Direction right } TerminalNames { "Is", base64 "zrhl", base64 "z4ll", base64 "z4lt", "" "Idq" } Location [16, 621; 540, 945] ZoomFactor 1 SliderPosition [0, 0] ShowBrowser off BrowserWidth 100 Configurations { Name base64 "REZPQyhJcyzPiW0p" Schematic { Component { Type Input Name "Is" Show on Position [460, 190] Direction right Flipped on Parameter { Variable "Index" Value "1" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Output Name base64 "zrhl" Show on Position [60, 140] Direction right Flipped on Parameter { Variable "Index" Value "2" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Output Name base64 "z4ll" Show on Position [60, 40] Direction right Flipped on Parameter { Variable "Index" Value "3" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Input Name base64 "z4lt" Show on Position [460, 140] Direction right Flipped on Parameter { Variable "Index" Value "4" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Output Name "Idq" Show on Position [60, 185] Direction right Flipped on Parameter { Variable "Index" Value "5" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Gain Name "Gain2" Show off Position [295, 280] Direction left Flipped on Parameter { Variable "K" Value "RR" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Integrator Name "Integrator1" Show off Position [340, 245] Direction up Flipped off Parameter { Variable "ExternalReset" Value "1" Show off } Parameter { Variable "InitialConditionSource" Value "1" Show off } Parameter { Variable "x0" Value "0" Show off } Parameter { Variable "ShowStatePort" Value "1" Show off } Parameter { Variable "UpperLimit" Value "inf" Show off } Parameter { Variable "LowerLimit" Value "-inf" Show off } } Component { Type Sum Name "Sum7" Show off Position [250, 280] Direction up Flipped on Parameter { Variable "IconShape" Value "2" Show off } Parameter { Variable "Inputs" Value "|+-" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Gain Name "Gain8" Show off Position [295, 220] Direction right Flipped on Parameter { Variable "K" Value "1/LM" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Integrator Name "Integrator" Show off Position [235, 140] Direction right Flipped on Parameter { Variable "ExternalReset" Value "1" Show off } Parameter { Variable "InitialConditionSource" Value "1" Show off } Parameter { Variable "x0" Value "0" Show off } Parameter { Variable "ShowStatePort" Value "1" Show off } Parameter { Variable "UpperLimit" Value "inf" Show off } Parameter { Variable "LowerLimit" Value "-inf" Show off } } Component { Type Reference SrcComponent "Components/Control/Transformations/3ph->RRF" Name "3ph->RRF" Show off Position [215, 225] Direction right Flipped off Frame [-15, -15; 15, 15] LabelPosition [-18, 0] LabelAlign right Terminal { Type Input Position [-15, -5] Direction left } Terminal { Type Output Position [19, 0] Direction right } Terminal { Type Input Position [-15, 5] Direction left } } Component { Type Gain Name "Gain3" Show off Position [285, 140] Direction right Flipped on Parameter { Variable "K" Value "p" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Sum Name "Sum5" Show off Position [110, 40] Direction down Flipped on Parameter { Variable "IconShape" Value "2" Show off } Parameter { Variable "Inputs" Value "|++" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Reference SrcComponent "Components/Control/Transformations/Rect->polar" Name "Rect->polar" Show off Position [310, 75] Direction down Flipped on Frame [-15, -15; 15, 15] LabelPosition [0, 18] LabelAlign up Terminal { Type Input Position [-15, 0] Direction left } Terminal { Type Output Position [19, 0] Direction right } } Component { Type SignalDemux Name "Demux3" Show off Position [275, 75] Direction right Flipped off Parameter { Variable "Width" Value "2" Show off } } Component { Type Reference SrcComponent "Components/Control/Transformations/3ph->RRF" Name "3ph->RRF1" Show off Position [115, 185] Direction down Flipped off Frame [-15, -15; 15, 15] LabelPosition [0, -18] LabelAlign down Terminal { Type Input Position [-15, -5] Direction left } Terminal { Type Output Position [19, 0] Direction right } Terminal { Type Input Position [-15, 5] Direction left } } Component { Type Gain Name "Gain10" Show off Position [155, 40] Direction right Flipped on Parameter { Variable "K" Value "p" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Sum Name "Sum" Show off Position [180, 140] Direction down Flipped off Parameter { Variable "IconShape" Value "2" Show off } Parameter { Variable "Inputs" Value "|++" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type CScript Name base64 "zrhlLT7PiWU=" Show on Position [210, 80] Direction down Flipped on Parameter { Variable "DialogGeometry" Value "" Show off } Parameter { Variable "NumInputs" Value "1" Show off } Parameter { Variable "NumOutputs" Value "1" Show off } Parameter { Variable "NumContStates" Value "0" Show off } Parameter { Variable "NumDiscStates" Value "0" Show off } Parameter { Variable "NumZCSignals" Value "0" Show off } Parameter { Variable "DirectFeedthrough" Value "1" Show off } Parameter { Variable "Ts" Value "1/fsw" Show off } Parameter { Variable "Parameters" Value "1/fsw" Show off } Parameter { Variable "LangStandard" Value "2" Show off } Parameter { Variable "GnuExtensions" Value "1" Show off } Parameter { Variable "RuntimeCheck" Value "2" Show off } Parameter { Variable "Declarations" Value "#include \"math.h\"\nstatic double Ts;\nstati" "c double theta, theta_pre, omega;\n#define pi 3.1415926" Show off } Parameter { Variable "StartFcn" Value "Ts = ParamRealData(0,0);" Show off } Parameter { Variable "OutputFcn" Value "if(IsMajorStep)\n{\n\ttheta = Input(0);\n\t\n" "\tif((theta - theta_pre <= 2*pi*0.9) && (theta - theta_pre >= -2*pi*0.9))\n\t" "{\n\t\tomega = (theta-theta_pre)/Ts;\n\t\t\n\t}\t\n\tOutput(0) = omega;\n\tth" "eta_pre = theta;\n}" Show off } Parameter { Variable "UpdateFcn" Value "" Show off } Parameter { Variable "DerivativeFcn" Value "" Show off } Parameter { Variable "TerminateFcn" Value "" Show off } } Connection { Type Signal SrcComponent "Gain3" SrcTerminal 2 DstComponent "Integrator" DstTerminal 1 } Connection { Type Signal SrcComponent "Rect->polar" SrcTerminal 2 DstComponent "Demux3" DstTerminal 1 } Connection { Type Signal SrcComponent "Gain2" SrcTerminal 2 Points [340, 280] DstComponent "Integrator1" DstTerminal 1 } Connection { Type Signal SrcComponent "3ph->RRF1" SrcTerminal 2 DstComponent "Idq" DstTerminal 1 } Connection { Type Signal SrcComponent "Demux3" SrcTerminal 3 Points [260, 80] Branch { DstComponent base64 "zrhlLT7PiWU=" DstTerminal 1 } Branch { Points [260, 110; 180, 110] DstComponent "Sum" DstTerminal 3 } } Connection { Type Signal SrcComponent "Sum5" SrcTerminal 1 DstComponent base64 "z4ll" DstTerminal 1 } Connection { Type Signal SrcComponent "Gain10" SrcTerminal 2 DstComponent "Sum5" DstTerminal 2 } Connection { Type Signal SrcComponent "Is" SrcTerminal 1 Points [220, 190] Branch { DstComponent "3ph->RRF1" DstTerminal 1 } Branch { DstComponent "3ph->RRF" DstTerminal 1 } } Connection { Type Signal SrcComponent "Integrator" SrcTerminal 2 Points [210, 140] Branch { DstComponent "Sum" DstTerminal 2 } Branch { DstComponent "3ph->RRF" DstTerminal 3 } } Connection { Type Signal SrcComponent "Sum" SrcTerminal 1 Points [150, 140] Branch { DstComponent base64 "zrhl" DstTerminal 1 } Branch { Points [150, 180] DstComponent "3ph->RRF1" DstTerminal 3 } } Connection { Type Signal SrcComponent base64 "zrhlLT7PiWU=" SrcTerminal 2 Points [110, 80] DstComponent "Sum5" DstTerminal 3 } Connection { Type Signal SrcComponent "Integrator1" SrcTerminal 2 Points [340, 220] Branch { DstComponent "Rect->polar" DstTerminal 1 } Branch { DstComponent "Gain8" DstTerminal 1 } } Connection { Type Signal SrcComponent "Gain8" SrcTerminal 2 Points [250, 220] DstComponent "Sum7" DstTerminal 3 } Connection { Type Signal SrcComponent "Sum7" SrcTerminal 1 DstComponent "Gain2" DstTerminal 1 } Connection { Type Signal SrcComponent "3ph->RRF" SrcTerminal 2 Points [215, 280] DstComponent "Sum7" DstTerminal 2 } Connection { Type Signal SrcComponent base64 "z4lt" SrcTerminal 1 Points [360, 140] Branch { DstComponent "Gain3" DstTerminal 1 } Branch { Points [360, 40] DstComponent "Gain10" DstTerminal 1 } } } } Parameter { Variable "Configuration" Value "1" Show off } } Component { Type Constant Name base64 "z4hyKg==" Show on Position [145, 315] Direction left Flipped on Frame [-15, -10; 15, 10] LabelPosition [0, -13] LabelAlign down Parameter { Variable "Value" Value "0.3" Show off } Parameter { Variable "DataType" Value "10" Show off } } Component { Type Subsystem Name "Transform" Show on Position [205, 325] Direction down Flipped on Frame [-25, -20; 25, 20] LabelPosition [0, 23] LabelAlign up SampleTime "-1" CodeGenDiscretizationMethod "2" CodeGenTarget "Generic" MaskIconFrame on MaskIconOpaque off MaskIconRotates on Terminal { Type Input Position [25, -10] Direction right } Terminal { Type Input Position [25, 10] Direction right } Terminal { Type Output Position [-29, 5] Direction left } Terminal { Type Output Position [-29, -5] Direction left } Schematic { Location [1262, 547; 1475, 739] ZoomFactor 1 SliderPosition [0, 0] ShowBrowser off BrowserWidth 100 Component { Type Product Name "Divide" Show off Position [110, 100] Direction down Flipped off Parameter { Variable "Inputs" Value "*/" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Gain Name "Gain" Show off Position [140, 60] Direction left Flipped off Parameter { Variable "K" Value "1/Lm" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Gain Name "Gain1" Show off Position [165, 95] Direction right Flipped on Parameter { Variable "K" Value "1.5*p*(Lm/Lr)" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Input Name base64 "fM+Icip8" Show on Position [220, 60] Direction right Flipped on Parameter { Variable "Index" Value "1" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Input Name "Te*" Show on Position [220, 120] Direction left Flipped off Parameter { Variable "Index" Value "2" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Output Name "Iq*" Show on Position [60, 100] Direction right Flipped on Parameter { Variable "Index" Value "3" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Output Name "Id*" Show on Position [60, 60] Direction right Flipped on Parameter { Variable "Index" Value "4" Show on } Parameter { Variable "Width" Value "-1" Show off } } Connection { Type Signal SrcComponent "Gain1" SrcTerminal 2 DstComponent "Divide" DstTerminal 3 } Connection { Type Signal SrcComponent base64 "fM+Icip8" SrcTerminal 1 Points [200, 60] Branch { Points [200, 95] DstComponent "Gain1" DstTerminal 1 } Branch { DstComponent "Gain" DstTerminal 1 } } Connection { Type Signal SrcComponent "Te*" SrcTerminal 1 Points [150, 120; 150, 105] DstComponent "Divide" DstTerminal 2 } Connection { Type Signal SrcComponent "Divide" SrcTerminal 1 DstComponent "Iq*" DstTerminal 1 } Connection { Type Signal SrcComponent "Gain" SrcTerminal 2 DstComponent "Id*" DstTerminal 1 } } } Component { Type Product Name "Divide" Show off Position [485, 210] Direction up Flipped on Parameter { Variable "Inputs" Value "*/" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Gain Name "Gain" Show off Position [285, 90] Direction right Flipped off Parameter { Variable "K" Value "0.5" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Reference SrcComponent "Components/Control/Transformations/RRF->3ph" Name "RRF->3ph" Show off Position [425, 215] Direction up Flipped on Frame [-15, -15; 15, 15] LabelPosition [0, -18] LabelAlign down Terminal { Type Input Position [-15, -5] Direction left } Terminal { Type Output Position [19, 0] Direction right } Terminal { Type Input Position [-15, 5] Direction left } } Component { Type Reference SrcComponent "Imperix_Control/ADC" Name "Vdc" Show on Position [140, 90] Direction up Flipped off Frame [-30, -25; 30, 25] LabelPosition [0, 28] LabelAlign up Parameter { Variable "device" Value "0" Show off } Parameter { Variable "channel" Value "0" Show off } Parameter { Variable "sensor" Value "2" Show off } Parameter { Variable "sensor_gain" Value "0.00246" Show off } Parameter { Variable "sensor_offset" Value "0.0" Show off } Parameter { Variable "analog_gain" Value "3" Show off } Parameter { Variable "TargetPortIndices" Value "1" Show off } Terminal { Type Output Position [34, 0] Direction right } Terminal { Type EventInput Position [-30, 15] Direction left } } Component { Type Reference SrcComponent "Imperix_Control/ADC" Name "Is" Show on Position [140, 230] Direction up Flipped off Frame [-30, -25; 30, 25] LabelPosition [0, 28] LabelAlign up Parameter { Variable "device" Value "0" Show off } Parameter { Variable "channel" Value "1:3" Show off } Parameter { Variable "sensor" Value "1" Show off } Parameter { Variable "sensor_gain" Value "0.05" Show off } Parameter { Variable "sensor_offset" Value "0.0" Show off } Parameter { Variable "analog_gain" Value "1" Show off } Parameter { Variable "TargetPortIndices" Value "2" Show off } Terminal { Type Output Position [34, 0] Direction right } Terminal { Type EventInput Position [-30, 15] Direction left } } Component { Type Reference SrcComponent "Imperix_Control/CB_PWM" Name "PWM" Show on Position [625, 220] Direction up Flipped off Frame [-30, -30; 30, 30] LabelPosition [0, 33] LabelAlign up Parameter { Variable "nb_bbx" Value "0" Show off } Parameter { Variable "out_conf" Value "2" Show off } Parameter { Variable "pwm_out_single" Value "0" Show off } Parameter { Variable "pwm_out_dual" Value "0:2" Show off } Parameter { Variable "carrier" Value "1" Show off } Parameter { Variable "block_input_duty" Value "2" Show off } Parameter { Variable "block_input_phase" Value "1" Show off } Parameter { Variable "block_input_activate" Value "1" Show off } Parameter { Variable "rate" Value "1" Show off } Parameter { Variable "duty" Value "0.5" Show off } Parameter { Variable "phase" Value "[0 0 0]" Show off } Parameter { Variable "block_input_clock" Value "2" Show off } Parameter { Variable "dead_time" Value "1e-6" Show off } Parameter { Variable "sim_dead_time" Value "1" Show off } Parameter { Variable "TargetPortIndices" Value "3" Show off } Terminal { Type Input Position [-30, -10] Direction left } Terminal { Type Input Position [-30, 5] Direction left } Terminal { Type Input Position [-30, 0] Direction left } Terminal { Type EventInput Position [-30, 20] Direction left } } Component { Type Subsystem Name "scale" Show on Position [540, 210] Direction up Flipped off Frame [-20, -15; 20, 15] LabelPosition [0, 18] LabelAlign up SampleTime "-1" CodeGenDiscretizationMethod "2" CodeGenTarget "Generic" MaskDisplayLang "2" MaskIconFrame on MaskIconOpaque off MaskIconRotates on Terminal { Type Input Position [-20, 0] Direction left } Terminal { Type Output Position [24, 0] Direction right } Schematic { Location [942, 556; 1225, 724] ZoomFactor 1 SliderPosition [0, 0] ShowBrowser off BrowserWidth 100 Component { Type Input Name "In" Show on Position [60, 80] Direction right Flipped off Parameter { Variable "Index" Value "1" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Output Name "Out" Show on Position [220, 80] Direction right Flipped off Parameter { Variable "Index" Value "2" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Offset Name "Offset" Show on Position [110, 80] Direction right Flipped off Frame [-20, -10; 20, 10] LabelPosition [0, 13] LabelAlign up Parameter { Variable "Offset" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Gain Name "Gain" Show on Position [165, 80] Direction right Flipped off Parameter { Variable "K" Value "0.5" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Connection { Type Signal SrcComponent "In" SrcTerminal 1 DstComponent "Offset" DstTerminal 1 } Connection { Type Signal SrcComponent "Offset" SrcTerminal 2 DstComponent "Gain" DstTerminal 1 } Connection { Type Signal SrcComponent "Gain" SrcTerminal 2 DstComponent "Out" DstTerminal 1 } } } Component { Type ControlTaskTrigger Name "Control Task Trigger" Show on Position [160, 40] Direction left Flipped on Parameter { Variable "CodeFcn" Value "if (Target.Family ~= \"Imperix Controllers\") then" "\n return 'This block is not compatible with the selected target family (\"%" "s\")' % {Target.Family}\nend\n\nreturn {\n}" Show off } } Component { Type Reference SrcComponent "Imperix_Control/DEC" Name "DEC" Show on Position [140, 160] Direction up Flipped off Frame [-30, -25; 30, 25] LabelPosition [0, 28] LabelAlign up Parameter { Variable "device" Value "0" Show off } Parameter { Variable "input_mode" Value "1" Show off } Parameter { Variable "module_single" Value "1" Show off } Parameter { Variable "module_diff" Value "1" Show off } Parameter { Variable "ppr" Value "2500" Show off } Parameter { Variable "reset_mode" Value "1" Show off } Parameter { Variable "direction" Value "1" Show off } Parameter { Variable "invert" Value "1" Show off } Parameter { Variable "TargetPortIndices" Value "4" Show off } Terminal { Type Output Position [34, 0] Direction right } Terminal { Type EventInput Position [-30, 15] Direction left } } Component { Type Reference SrcComponent "Imperix_Control/Configuration" Name "Configuration" Show on Position [45, 55] Direction up Flipped off Frame [-30, -30; 30, 30] LabelPosition [0, 33] LabelAlign up Parameter { Variable "clock_freq" Value "fsw" Show off } Parameter { Variable "phase" Value "0.5" Show off } Parameter { Variable "postscaler" Value "0" Show off } Parameter { Variable "cycle_delay" Value "5e-6" Show off } Parameter { Variable "TargetPortIndices" Value "" Show off } Terminal { Type EventOutput Position [34, -15] Direction right } Terminal { Type EventOutput Position [34, 5] Direction right } Terminal { Type EventOutput Position [34, -5] Direction right } } Connection { Type Signal SrcComponent "Te" SrcTerminal 1 DstComponent "Transform" DstTerminal 2 } Connection { Type Signal SrcComponent "PI" SrcTerminal 2 DstComponent "RRF->3ph" DstTerminal 1 } Connection { Type Signal SrcComponent base64 "z4hyIGVzdGku" SrcTerminal 2 Points [390, 180; 390, 210] DstComponent "RRF->3ph" DstTerminal 3 } Connection { Type Signal SrcComponent base64 "z4hyIGVzdGku" SrcTerminal 3 DstComponent "PI" DstTerminal 4 } Connection { Type Signal SrcComponent "DEC" SrcTerminal 1 DstComponent base64 "z4hyIGVzdGku" DstTerminal 4 } Connection { Type Signal SrcComponent base64 "z4hyKg==" SrcTerminal 1 DstComponent "Transform" DstTerminal 1 } Connection { Type Signal SrcComponent "Transform" SrcTerminal 4 DstComponent "Mux" DstTerminal 2 } Connection { Type Signal SrcComponent "Transform" SrcTerminal 3 DstComponent "Mux" DstTerminal 3 } Connection { Type Signal SrcComponent "Mux1" SrcTerminal 1 DstComponent "Cont\nSelector" DstTerminal 1 } Connection { Type Signal SrcComponent "Cont\nSelector" SrcTerminal 2 Points [395, 320; 395, 300] DstComponent "Demux2" DstTerminal 1 } Connection { Type Signal SrcComponent "Demux2" SrcTerminal 2 DstComponent "Scope" DstTerminal 2 } Connection { Type Signal SrcComponent "Demux2" SrcTerminal 3 DstComponent "Scope" DstTerminal 3 } Connection { Type Signal SrcComponent "Divide" SrcTerminal 1 DstComponent "scale" DstTerminal 1 } Connection { Type Signal SrcComponent "RRF->3ph" SrcTerminal 2 DstComponent "Divide" DstTerminal 2 } Connection { Type Signal SrcComponent "Gain" SrcTerminal 2 Points [450, 90; 450, 205] DstComponent "Divide" DstTerminal 3 } Connection { Type Signal SrcComponent "scale" SrcTerminal 2 DstComponent "PWM" DstTerminal 1 } Connection { Type Signal SrcComponent base64 "z4hyIGVzdGku" SrcTerminal 5 Points [290, 220] Branch { DstComponent "PI" DstTerminal 3 } Branch { Points [290, 315] DstComponent "Mux1" DstTerminal 3 } } Connection { Type Signal SrcComponent "Mux" SrcTerminal 1 Points [300, 325] Branch { DstComponent "Mux1" DstTerminal 2 } Branch { Points [300, 240] DstComponent "PI" DstTerminal 1 } } Connection { Type Signal SrcComponent "Is" SrcTerminal 1 Points [195, 230] Branch { Points [195, 285] DstComponent "Scope" DstTerminal 1 } Branch { DstComponent base64 "z4hyIGVzdGku" DstTerminal 1 } } Connection { Type Signal SrcComponent "Vdc" SrcTerminal 1 DstComponent "Gain" DstTerminal 1 } Connection { Type Event SrcComponent "Configuration" SrcTerminal 1 DstComponent "Control Task Trigger" DstTerminal 1 } Connection { Type Event SrcComponent "Configuration" SrcTerminal 2 Points [95, 60; 95, 105] Branch { Points [95, 175] Branch { DstComponent "Is" DstTerminal 2 } Branch { DstComponent "DEC" DstTerminal 2 } } Branch { DstComponent "Vdc" DstTerminal 2 } } Connection { Type Event SrcComponent "Configuration" SrcTerminal 3 Points [580, 50] DstComponent "PWM" DstTerminal 4 } } } Component { Type Subsystem Name "Plant" Show on Position [270, 100] Direction up Flipped off Frame [-40, -30; 40, 30] LabelPosition [0, -33] LabelAlign down TreatAsAtomicUnit on SampleTime "-1" TaskingMode "1" CodeGenEnable on CodeGenSampleTime "Ts_plant" CodeGenDiscretizationMethod "2" CodeGenTarget "Generic" CodeGenTargetSettings "AAAAfwAAAAAlUU1hcDxRU3RyaW5nLFFNYXA8UVN0cmluZyxRU" "3RyaW5nPiA+AAAAAAIAAAAcAFAATABFAEMAUwAgAFIAVAAgAEIAbwB4ACAAMQAAABYAAAAeAHMAeQ" "BuAGMAaAByAG8AbgBpAHoAZQBUAGkAbQBlAAAAAgAwAAAAGABzAHQAYQByAHQAdQBwAFMARgBQAF8" "ARAAAAAIAMAAAABgAcwB0AGEAcgB0AHUAcABTAEYAUABfAEMAAAACADAAAAAYAHMAdABhAHIAdAB1" "AHAAUwBGAFAAXwBCAAAAAgAwAAAAGABzAHQAYQByAHQAdQBwAFMARgBQAF8AQQAAAAIAMAAAABoAc" "wBhAG0AcABsAGkAbgBnAEQAZQBsAGEAeQAAAAIAMAAAABgAbQBhAHgAXwBvAHYAZQByAHIAdQBuAH" "MAAAACADUAAAASAG0AYQBzAHQAZQByAFMARgBQAAAAAgAxAAAAJABkAGkAZwBpAHQAYQBsAE8AdQB" "0AHAAdQB0AEwAZQB2AGUAbAAAAAIAMQAAABAAYwBhAG4AMgBUAHgAUgB4AAAAAgAxAAAAHgBjAGEA" "bgAyAFQAZQByAG0AaQBuAGEAdABpAG8AbgAAAAIAMgAAABQAYwBhAG4AMgBFAG4AYQBiAGwAZQAAA" "AIAMAAAABAAYwBhAG4AMgBCAGEAdQBkAAAADAA1ADAAMAAwADAAMAAAABAAYwBhAG4AMQBUAHgAUg" "B4AAAAAgAxAAAAHgBjAGEAbgAxAFQAZQByAG0AaQBuAGEAdABpAG8AbgAAAAIAMgAAABQAYwBhAG4" "AMQBFAG4AYQBiAGwAZQAAAAIAMAAAABAAYwBhAG4AMQBCAGEAdQBkAAAADAA1ADAAMAAwADAAMAAA" "ABwAYQBuAGEAbABvAGcAUwBhAG0AcABsAGkAbgBnAAAAAgAxAAAAIgBhAG4AYQBsAG8AZwBPAHUAd" "ABwAHUAdABSAGEAbgBnAGUAAAACADMAAAAgAGEAbgBhAGwAbwBnAEkAbgBwAHUAdABSAGEAbgBnAG" "UAAAACADEAAAAaAFQAQQBSAEcARQBUAF8ARABFAFYASQBDAEUAAAAAAAAAGgBFAFgAVABFAFIATgB" "BAEwAXwBNAE8ARABFAAAAAgAxAAAADgBHAGUAbgBlAHIAaQBjAAAAAA==" ExternalModeSettings "AAAAfwAAAAAWUU1hcDxRU3RyaW5nLFFTdHJpbmc+AAAAAAcAAA" "AYAFQAcgBpAGcAZwBlAHIAVgBhAGwAdQBlAAAABgAxADUAMAAAABgAVAByAGkAZwBnAGUAcgBEAGU" "AbABhAHkAAAAMAC0ANQAwADAAMAAwAAAAHABUAHIAaQBnAGcAZQByAEMAaABhAG4AbgBlAGwAAAAE" "AC0AMQAAABYAUwBlAG4AcwBpAHQAaQB2AGkAdAB5AAAAAgAwAAAAFgBSAGUAZgByAGUAcwBoAFIAY" "QB0AGUAAAAEADIAMAAAABQATgB1AG0AUwBhAG0AcABsAGUAcwAAAAwAMQAwADAAMAAwADAAAAAUAE" "QAZQBjAGkAbQBhAHQAaQBvAG4AAAACADE=" MaskIconFrame on MaskIconOpaque off MaskIconRotates on Terminal { Type Input Position [-40, 0] Direction left Index "1" } Terminal { Type Output Position [44, -20] Direction right Index "1" } Terminal { Type Output Position [44, 20] Direction right Index "2" } Terminal { Type Output Position [44, 0] Direction right Index "3" } Schematic { Location [840, 510; 1559, 833] ZoomFactor 1 SliderPosition [0, 0] ShowBrowser off BrowserWidth 100 Component { Type DCVoltageSource Name "Vi" Show on Position [40, 115] Direction up Flipped off Parameter { Variable "V" Value "Vdc" Show off } } Component { Type Gear Name "Gear" Show off Position [630, 140] Direction down Flipped on Parameter { Variable "g" Value "1/9.7" Show off } } Component { Type RotationalDamper Name "Rotational\nDamper" Show off Position [665, 140] Direction down Flipped on Parameter { Variable "D" Value "100" Show off } Parameter { Variable "theta0" Value "" Show off } } Component { Type RotationalReference Name "Rotational\nFrame" Show off Position [685, 140] Direction left Flipped off } Component { Type SignalDemux Name "Demux" Show off Position [135, 220] Direction right Flipped on Parameter { Variable "Width" Value "[2 2 2]" Show off } } Component { Type Goto Name "Goto" Show off Position [160, 210] Direction right Flipped off Parameter { Variable "Tag" Value "sw_a" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Component { Type Scope Name "Scope" Show on Position [355, 270] Direction down Flipped on Location [453, 54; 829, 861] State "AAAA/wAAAAD9AAAAAgAAAAEAAAAAAAAAAPwCAAAAA/sAAAAQAFoAb" "wBvAG0AQQByAGUAYQAAAAAA/////wAAAIQA////+wAAABQAUwBhAHYAZQBkAFYAaQBlAHcAcwAAAA" "AA/////wAAAGYA////+wAAAAwAVAByAGEAYwBlAHMAAAAAAP////8AAABmAP///wAAAAMAAAAAAAA" "AAPwBAAAAAfsAAAAUAEQAYQB0AGEAVwBpAGQAZwBlAHQAAAAAAP////8AAABQAP///wAAAXgAAAMM" "AAAABAAAAAQAAAAIAAAACPwAAAABAAAAAgAAAAEAAAAOAFQAbwBvAGwAQgBhAHIBAAAAAP////8AA" "AAAAAAAAA==" SavedViews "AAAAAgAAAAA=" HeaderState "AAAA/wAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAL/gMAAAAJA" "AAAAwAAAGQAAAACAAAAZAAAAAUAAABkAAAABAAAAGQAAAAHAAAAZAAAAAYAAABkAAAACQAAAGQAAA" "AIAAAAZAAAAAEAAABkAAAAzwAAAAsBAAABAAAAAAAAAAAAAAAAZP////8AAACBAAAAAAAAAAsAAAC" "oAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAA" "AAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAA" "AAAAAAnAAAAAQAAAAAAAAPoAAAAACc=" PlotPalettes "AAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" "QAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAA" "AAAA==" Axes "3" TimeRange "0" ScrollingMode "1" SingleTimeAxis "1" Open "1" Ts "-1" SampleLimit "0" XAxisLabel "Time (s)" ShowLegend "1" Axis { Name "Stator Currents" AutoScale 0 MinValue -300 MaxValue 300 Signals {} SignalTypes [ ] AxisLabel "Current (A)" Untangle 0 KeepBaseline off BaselineValue 0 } Axis { Name base64 "Um90YXRpb25hbCBTcGVlZCAoz4lyKQ==" AutoScale 0 MinValue 0 MaxValue 300 Signals {} SignalTypes [ ] AxisLabel "Speed (rad/s)" Untangle 0 KeepBaseline off BaselineValue 0 } Axis { Name "Electrical Torque (Te)" AutoScale 0 MinValue 0 MaxValue 300 Signals {} SignalTypes [ ] AxisLabel "Torque (Nm)" Untangle 0 KeepBaseline off BaselineValue 0 } Fourier { SingleXAxis on AxisLabel "Frequency" Scaling 0 PhaseDisplay 0 ShowFourierLegend off 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 } Axis { Name "" AutoScale 1 MinValue 0 MaxValue 1 Signals {} Untangle 0 KeepBaseline off BaselineValue 0 } } } Component { Type PlecsProbe Name "Probe" Show off Position [435, 275] Direction right Flipped on } Component { Type SignalDemux Name "Demux1" Show off Position [390, 275] Direction right Flipped off Parameter { Variable "Width" Value "2" Show off } } Component { Type PlecsProbe Name "Probe1" Show off Position [570, 45] Direction right Flipped off } Component { Type ElectricalModelSettings Name "Electrical\nModel Settings" Show off Position [500, 205] Direction up Flipped off Parameter { Variable "CodeGenSwitchingAlgorithm" Value "2" Show off } Parameter { Variable "CodeGenMatrixCodingStyle" Value "3" Show off } Parameter { Variable "CodeGenTopologies" Value "[]" Show off } } Component { Type PlecsProbe Name "Probe2" Show off Position [580, 245] Direction right Flipped off } Component { Type Reference SrcComponent "Components/Electrical/Machines/Squirrel-Cage IM" Name "IM" Show on Position [570, 110] Direction up Flipped off Frame [-25, -25; 25, 35] LabelPosition [28, 5] LabelAlign left Parameter { Variable "Rs" Value "Rs" Show off } Parameter { Variable "Lls" Value "Lls" Show off } Parameter { Variable "Rr" Value "Rr" Show off } Parameter { Variable "Llr" Value "Llr" Show off } Parameter { Variable "Lm" Value "Lm" Show off } Parameter { Variable "J" Value "J" Show off } Parameter { Variable "F" Value "F" Show off } Parameter { Variable "p" Value "p" Show off } Parameter { Variable "wm0" Value "(1800/60)*2*pi*0" Show off } Parameter { Variable "thm0" Value "0" Show off } Parameter { Variable "is0" Value "[0 0]" Show off } Parameter { Variable "psisdq0" Value "[0 0]" Show off } Terminal { Type Port Position [-30, -10] Direction left } Terminal { Type Port Position [-30, 0] Direction left } Terminal { Type Port Position [-30, 10] Direction left } Terminal { Type Rotational Position [30, 30] Direction right } } Component { Type XYPlot Name base64 "z4hy" Show on Position [650, 45] Direction up Flipped off Location [45, 465; 447, 858] State "AAAA/wAAAAD9AAAAAgAAAAEAAAAAAAAAAPwCAAAAAvsAAAAQAFoAb" "wBvAG0AQQByAGUAYQAAAAAA/////wAAADQA////+wAAABQAUwBhAHYAZQBkAFYAaQBlAHcAcwAAAA" "AA/////wAAAGYA////AAAAAwAAAAAAAAAA/AEAAAAB+wAAABIAVABpAG0AZQBSAGEAbgBnAGUAAAA" "AAP////8AAAB4AP///wAAAZIAAAFuAAAABAAAAAQAAAAIAAAACPwAAAABAAAAAgAAAAEAAAAOAFQA" "bwBvAGwAQgBhAHIBAAAAAP////8AAAAAAAAAAA==" SavedViews "AAAAAgAAAAA=" HeaderState "" PlotPalettes "AAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" TimeRange "0.0" ShownPeriods "1" Open "1" Ts "-1" SampleLimit "0" XAxisLabel "Direct Rotating Axis" AspectRatioX "-1" AspectRatioY "-1" PlotStyle "1" ShowLegend "1" Axis { Name base64 "Um90b3IgRmx1eCDPiHI=" AutoScale 0 MinValue -0.5 MaxValue 0.5 Signals {} AxisLabel "Quadrature Rotating Axis" } Axis { Name "" AutoScale 0 MinValue -0.5 MaxValue 0.5 Signals {} } } Component { Type SignalDemux Name "Demux2" Show off Position [615, 45] Direction right Flipped on Parameter { Variable "Width" Value "2" Show off } } Component { Type Input Name "sw" Show on Position [90, 220] Direction right Flipped off Parameter { Variable "Index" Value "1" Show on } Parameter { Variable "DataType" Value "10" Show off } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Goto Name "Goto2" Show off Position [200, 220] Direction right Flipped off Parameter { Variable "Tag" Value "sw_b" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Component { Type Goto Name "Goto3" Show off Position [160, 230] Direction right Flipped off Parameter { Variable "Tag" Value "sw_c" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Component { Type From Name "From" Show off Position [150, 125] Direction right Flipped off Parameter { Variable "Tag" Value "sw_a" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Component { Type From Name "From1" Show off Position [275, 125] Direction right Flipped off Parameter { Variable "Tag" Value "sw_b" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Component { Type From Name "From2" Show off Position [405, 125] Direction right Flipped off Parameter { Variable "Tag" Value "sw_c" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Component { Type Goto Name "Goto1" Show off Position [250, 145] Direction right Flipped off Parameter { Variable "Tag" Value "I_a" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Component { Type Goto Name "Goto4" Show off Position [380, 145] Direction right Flipped off Parameter { Variable "Tag" Value "I_b" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Component { Type Goto Name "Goto5" Show off Position [505, 145] Direction right Flipped off Parameter { Variable "Tag" Value "I_c" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Component { Type From Name "From3" Show off Position [325, 210] Direction right Flipped off Parameter { Variable "Tag" Value "I_a" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Component { Type From Name "From4" Show off Position [295, 220] Direction right Flipped off Parameter { Variable "Tag" Value "I_b" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Component { Type From Name "From5" Show off Position [325, 230] Direction right Flipped off Parameter { Variable "Tag" Value "I_c" Show off } Parameter { Variable "Visibility" Value "1" Show off } } Component { Type SignalMux Name "Mux" Show off Position [360, 220] Direction right Flipped off Parameter { Variable "Width" Value "3" Show off } } Component { Type Output Name "I_meas" Show on Position [435, 220] Direction right Flipped off Parameter { Variable "Index" Value "2" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Output Name "Encoder_out" Show on Position [635, 245] Direction right Flipped off Parameter { Variable "Index" Value "3" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Output Name "Vdc_meas" Show on Position [160, 35] Direction left Flipped on Parameter { Variable "Index" Value "4" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Resistor Name "R1" Show on Position [70, 60] Direction left Flipped on Parameter { Variable "R" Value "0.001" Show off } } Component { Type ConfigurableSubsystem Name "Vdc" Show off Position [105, 115] Direction up Flipped off Frame [-10, -15; 10, 15] LabelPosition [-13, 0] LabelAlign right SampleTime "-1" CodeGenDiscretizationMethod "2" CodeGenTarget "Generic" MaskType "DIN800V" MaskDisplay "Icon:color(221,4,45)\nIcon:circle(0,0,9)\nIcon:circle" "(0,0,10)\n\nIcon:color(0,0,0)\nIcon:line({0,0}, {-20,-10})\nIcon:line({0,0}, " "{20,10})\n\nIcon:line({2,6}, {-15,-15})\nIcon:line({4,4}, {-13,-17})\n\nIcon:" "text(0,-0.,\"V\", 'FontSize',11)" MaskDisplayLang "2" MaskIconFrame off MaskIconOpaque on MaskIconRotates on MaskInit "tau = 1/(100e3*2*pi);" Terminal { Type Output Position [14, 0] Direction right } Terminal { Type Port Position [0, -20] Direction up } Terminal { Type Port Position [0, 20] Direction down } TerminalNames { "M", "In", "Out" } Location [632, 343; 1012, 530] ZoomFactor 1 SliderPosition [0, 0] ShowBrowser off BrowserWidth 100 Configurations { Name "Ideal model" Schematic { Component { Type Output Name "M" Show on Position [290, 90] Direction right Flipped off Parameter { Variable "Index" Value "1" Show on } Parameter { Variable "Width" Value "1" Show off } } Component { Type Gain Name "Si" Show on Position [220, 90] Direction right Flipped off Parameter { Variable "K" Value "2.46e-3" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Port Name "In" Show on Position [165, 45] Direction down Flipped off Parameter { Variable "Index" Value "2" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Port Name "Out" Show on Position [165, 140] Direction down Flipped on Parameter { Variable "Index" Value "3" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Voltmeter Name "Voltmeter" Show on Position [165, 90] Direction up Flipped off } Connection { Type Signal SrcComponent "Voltmeter" SrcTerminal 3 DstComponent "Si" DstTerminal 1 } Connection { Type Signal SrcComponent "Si" SrcTerminal 2 DstComponent "M" DstTerminal 1 } Connection { Type Wire SrcComponent "In" SrcTerminal 1 DstComponent "Voltmeter" DstTerminal 1 } Connection { Type Wire SrcComponent "Out" SrcTerminal 1 DstComponent "Voltmeter" DstTerminal 2 } } Name "First-order model" Schematic { Component { Type Output Name "M" Show on Position [305, 90] Direction right Flipped off Parameter { Variable "Index" Value "1" Show on } Parameter { Variable "Width" Value "1" Show off } } Component { Type Port Name "In" Show on Position [130, 45] Direction down Flipped off Parameter { Variable "Index" Value "2" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Port Name "Out" Show on Position [130, 135] Direction up Flipped off Parameter { Variable "Index" Value "3" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type TransferFunction Name "LPF1" Show off Position [245, 90] Direction right Flipped off Frame [-30, -15; 30, 15] LabelPosition [0, 18] LabelAlign up Parameter { Variable "Numerator" Value "[1]" Show off } Parameter { Variable "Denominator" Value "[tau 1]" Show off } Parameter { Variable "X0" Value "0" Show off } } Component { Type Gain Name "Si" Show on Position [185, 90] Direction right Flipped off Parameter { Variable "K" Value "2.46e-3" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Voltmeter Name "Voltmeter" Show on Position [130, 90] Direction up Flipped off } Connection { Type Signal SrcComponent "LPF1" SrcTerminal 2 DstComponent "M" DstTerminal 1 } Connection { Type Signal SrcComponent "Voltmeter" SrcTerminal 3 DstComponent "Si" DstTerminal 1 } Connection { Type Signal SrcComponent "Si" SrcTerminal 2 DstComponent "LPF1" DstTerminal 1 } Connection { Type Wire SrcComponent "Voltmeter" SrcTerminal 1 DstComponent "In" DstTerminal 1 } Connection { Type Wire SrcComponent "Voltmeter" SrcTerminal 2 DstComponent "Out" DstTerminal 1 } } } Parameter { Variable "Configuration" Value "1" Show off } MaskProbe { Name "True voltage value" Probe { Component "Voltmeter" Path "Ideal model" Signals {"Measured voltage"} } Probe { Component "Voltmeter" Path "First-order model" Signals {"Measured voltage"} } } MaskProbe { Name "Sensor output" Probe { Component "M" Path "Ideal model" Signals {"Input"} } Probe { Component "M" Path "First-order model" Signals {"Input"} } } } Component { Type ConfigurableSubsystem Name "M0" Show off Position [200, 115] Direction up Flipped off Frame [-25, -50; 25, 50] LabelPosition [-28, 0] LabelAlign right SampleTime "-1" CodeGenDiscretizationMethod "2" CodeGenTarget "Generic" MaskType "PEB8024" MaskDisplay "local function drawRectangleFull(x,y,w,h,color)\n\tIc" "on:color(221,4,45)\n\tIcon:line({x,x+w,x+w,x,x},{y,y,y+h,y+h,y})\nend\n\nloca" "l function drawMosfet(x,y)\n\tIcon:line({x, x, x-10}, {y+20, y+10, y+10})\n\t" "Icon:line({x, x, x-10}, {y+10, y, y})\n\tIcon:line({x, x, x-10}, {y-20, y-10," " y-10})\n\tIcon:line({x-10, x-10}, {y+13, y+7})\n\tIcon:line({x-10, x-10}, {y" "+3, y-3})\n\tIcon:line({x-10, x-10}, {y-7, y-13})\n\tIcon:line({x-15, x-15}, " "{y+10, y-10})\n\tIcon:line({x-15, x-20}, {y, y})\n\tIcon:line({x-4, x-8, x-4}" ", {y+2, y, y-2}) -- arrow\n\tIcon:line({x+10, x+10, x+0}, {y+6, y+14, y+14}) " "-- diode anode wire\n\tIcon:line({x+5, x+15}, {y-5, y-5}) --diode bar\n\tIcon" ":line({x+0, x+10, x+10}, {y-14, y-14, y-6}) -- diode cathode wire\n\tIcon:lin" "e({x+10, x+15, x+5, x+10}, {y-5, y+5, y+5, y-5}) -- diode triangle\nend\n\ndr" "awRectangleFull(-25,-50,50,100)\ndrawRectangleFull(-24,-49,48,98)\nIcon:color" "(0,0,0)\n\ndrawMosfet(0,25)\ndrawMosfet(0,-25)\n\nIcon:line({0,25},{0,0}) --M" "idpoint outpout\nIcon:line({0,0},{-10,10}) --Midpoint interconnection\nIcon:c" "ircle(0,0,1)\nIcon:line({0,0},{50,45}) -- +VCC point\nIcon:line({0,0},{-50,-4" "5}) -- -VCC point\n\nIcon:text(0,-65,\"PEB8024\", 'FontSize',9)" MaskDisplayLang "2" MaskIconFrame off MaskIconOpaque off MaskIconRotates on MaskInit "tau_i = 1/(300e3*2*pi);\ntau_v = 1/(30e3*2*pi);" Parameter { Variable "V0" Prompt "Initial DC bus voltage" Type FreeText Value "Vdc" Show off Tunable off TabName "" } Terminal { Type Input Position [-25, 10] Direction left } Terminal { Type Output Position [29, 30] Direction right } Terminal { Type Port Position [0, -55] Direction up } Terminal { Type Port Position [0, 55] Direction down } Terminal { Type Port Position [30, 0] Direction right } Terminal { Type Output Position [29, 40] Direction right } TerminalNames { "s", "I", "VDC+", "VDC-", "AC", "V" } Location [301, 486; 844, 695] ZoomFactor 1 SliderPosition [0, 0] ShowBrowser off BrowserWidth 100 Configurations { Name "Ideal model" Schematic { Component { Type Input Name "s" Show on Position [110, 130] Direction right Flipped off Parameter { Variable "Index" Value "1" Show on } Parameter { Variable "Width" Value "2" Show off } } Component { Type Output Name "I" Show on Position [380, 45] Direction right Flipped off Parameter { Variable "Index" Value "2" Show on } Parameter { Variable "Width" Value "1" Show off } } Component { Type Port Name "AC" Show off Position [360, 100] Direction right Flipped on Parameter { Variable "Index" Value "5" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Ammeter Name "Iac" Show off Position [295, 100] Direction left Flipped off } Component { Type Port Name "VDC+" Show off Position [160, 40] Direction right Flipped off Parameter { Variable "Index" Value "3" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Port Name "VDC-" Show off Position [160, 170] Direction right Flipped off Parameter { Variable "Index" Value "4" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type SignalDemux Name "Demux" Show off Position [155, 130] Direction right Flipped on Parameter { Variable "Width" Value "2" Show off } } Component { Type Capacitor Name "C" Show on Position [190, 95] Direction up Flipped off Parameter { Variable "C" Value "130e-6" Show off } Parameter { Variable "v_init" Value "V0" Show off } } Component { Type Gain Name "Si" Show on Position [335, 45] Direction right Flipped off Parameter { Variable "K" Value "50e-3" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Voltmeter Name "Vdc" Show off Position [270, 145] Direction up Flipped off } Component { Type Gain Name "Sv" Show on Position [335, 145] Direction right Flipped off Parameter { Variable "K" Value "4.99e-3" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Output Name "V" Show on Position [380, 145] Direction right Flipped off Parameter { Variable "Index" Value "6" Show on } Parameter { Variable "Width" Value "1" Show off } } Component { Type MosfetWithDiode Name "S1" Show off Position [230, 75] Direction up Flipped off 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 MosfetWithDiode Name "S0" Show off Position [230, 135] Direction up Flipped off 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 Resistor Name "ESR" Show off Position [190, 135] Direction down Flipped off Parameter { Variable "R" Value "20e-3" Show off } } Connection { Type Wire SrcComponent "AC" SrcTerminal 1 DstComponent "Iac" DstTerminal 2 } Connection { Type Signal SrcComponent "s" SrcTerminal 1 DstComponent "Demux" DstTerminal 1 } Connection { Type Signal SrcComponent "Si" SrcTerminal 2 DstComponent "I" DstTerminal 1 } Connection { Type Signal SrcComponent "Iac" SrcTerminal 3 Points [295, 45] DstComponent "Si" DstTerminal 1 } Connection { Type Wire SrcComponent "S0" SrcTerminal 2 Points [230, 170] Branch { Points [190, 170] Branch { DstComponent "VDC-" DstTerminal 1 } Branch { DstComponent "ESR" DstTerminal 1 } } Branch { Points [270, 170] DstComponent "Vdc" DstTerminal 2 } } Connection { Type Wire SrcComponent "VDC+" SrcTerminal 1 Points [190, 40] Branch { Points [230, 40] Branch { DstComponent "S1" DstTerminal 1 } Branch { Points [270, 40] DstComponent "Vdc" DstTerminal 1 } } Branch { DstComponent "C" DstTerminal 1 } } Connection { Type Signal SrcComponent "Vdc" SrcTerminal 3 DstComponent "Sv" DstTerminal 1 } Connection { Type Signal SrcComponent "Sv" SrcTerminal 2 DstComponent "V" DstTerminal 1 } Connection { Type Signal SrcComponent "Demux" SrcTerminal 2 Points [165, 125; 165, 75] DstComponent "S1" DstTerminal 3 } Connection { Type Wire SrcComponent "Iac" SrcTerminal 1 Points [230, 100] Branch { DstComponent "S0" DstTerminal 1 } Branch { DstComponent "S1" DstTerminal 2 } } Connection { Type Signal SrcComponent "Demux" SrcTerminal 3 DstComponent "S0" DstTerminal 3 } Connection { Type Wire SrcComponent "ESR" SrcTerminal 2 DstComponent "C" DstTerminal 2 } } } Parameter { Variable "Configuration" Value "1" Show off } MaskProbe { Name "Gate signals" Probe { Component "s" Path "Ideal model" Signals {"Output"} } } MaskProbe { Name "DC bus voltage (true value)" Probe { Component "Vdc" Path "Ideal model" Signals {"Measured voltage"} } } MaskProbe { Name "DC bus voltage (sensor signal)" Probe { Component "V" Path "Ideal model" Signals {"Input"} } } MaskProbe { Name "Output current (true value)" Probe { Component "Iac" Path "Ideal model" Signals {"Measured current"} } } MaskProbe { Name "Output current (sensor signal)" Probe { Component "I" Path "Ideal model" Signals {"Input"} } } } Component { Type ConfigurableSubsystem Name "M1" Show off Position [325, 115] Direction up Flipped off Frame [-25, -50; 25, 50] LabelPosition [-28, 0] LabelAlign right SampleTime "-1" CodeGenDiscretizationMethod "2" CodeGenTarget "Generic" MaskType "PEB8024" MaskDisplay "local function drawRectangleFull(x,y,w,h,color)\n\tIc" "on:color(221,4,45)\n\tIcon:line({x,x+w,x+w,x,x},{y,y,y+h,y+h,y})\nend\n\nloca" "l function drawMosfet(x,y)\n\tIcon:line({x, x, x-10}, {y+20, y+10, y+10})\n\t" "Icon:line({x, x, x-10}, {y+10, y, y})\n\tIcon:line({x, x, x-10}, {y-20, y-10," " y-10})\n\tIcon:line({x-10, x-10}, {y+13, y+7})\n\tIcon:line({x-10, x-10}, {y" "+3, y-3})\n\tIcon:line({x-10, x-10}, {y-7, y-13})\n\tIcon:line({x-15, x-15}, " "{y+10, y-10})\n\tIcon:line({x-15, x-20}, {y, y})\n\tIcon:line({x-4, x-8, x-4}" ", {y+2, y, y-2}) -- arrow\n\tIcon:line({x+10, x+10, x+0}, {y+6, y+14, y+14}) " "-- diode anode wire\n\tIcon:line({x+5, x+15}, {y-5, y-5}) --diode bar\n\tIcon" ":line({x+0, x+10, x+10}, {y-14, y-14, y-6}) -- diode cathode wire\n\tIcon:lin" "e({x+10, x+15, x+5, x+10}, {y-5, y+5, y+5, y-5}) -- diode triangle\nend\n\ndr" "awRectangleFull(-25,-50,50,100)\ndrawRectangleFull(-24,-49,48,98)\nIcon:color" "(0,0,0)\n\ndrawMosfet(0,25)\ndrawMosfet(0,-25)\n\nIcon:line({0,25},{0,0}) --M" "idpoint outpout\nIcon:line({0,0},{-10,10}) --Midpoint interconnection\nIcon:c" "ircle(0,0,1)\nIcon:line({0,0},{50,45}) -- +VCC point\nIcon:line({0,0},{-50,-4" "5}) -- -VCC point\n\nIcon:text(0,-65,\"PEB8024\", 'FontSize',9)" MaskDisplayLang "2" MaskIconFrame off MaskIconOpaque off MaskIconRotates on MaskInit "tau_i = 1/(300e3*2*pi);\ntau_v = 1/(30e3*2*pi);" Parameter { Variable "V0" Prompt "Initial DC bus voltage" Type FreeText Value "Vdc" Show off Tunable off TabName "" } Terminal { Type Input Position [-25, 10] Direction left } Terminal { Type Output Position [29, 30] Direction right } Terminal { Type Port Position [0, -55] Direction up } Terminal { Type Port Position [0, 55] Direction down } Terminal { Type Port Position [30, 0] Direction right } Terminal { Type Output Position [29, 40] Direction right } TerminalNames { "s", "I", "VDC+", "VDC-", "AC", "V" } Location [301, 486; 844, 695] ZoomFactor 1 SliderPosition [0, 0] ShowBrowser off BrowserWidth 100 Configurations { Name "Ideal model" Schematic { Component { Type Input Name "s" Show on Position [110, 130] Direction right Flipped off Parameter { Variable "Index" Value "1" Show on } Parameter { Variable "Width" Value "2" Show off } } Component { Type Output Name "I" Show on Position [380, 45] Direction right Flipped off Parameter { Variable "Index" Value "2" Show on } Parameter { Variable "Width" Value "1" Show off } } Component { Type Port Name "AC" Show off Position [360, 100] Direction right Flipped on Parameter { Variable "Index" Value "5" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Ammeter Name "Iac" Show off Position [295, 100] Direction left Flipped off } Component { Type Port Name "VDC+" Show off Position [160, 40] Direction right Flipped off Parameter { Variable "Index" Value "3" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Port Name "VDC-" Show off Position [160, 170] Direction right Flipped off Parameter { Variable "Index" Value "4" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type SignalDemux Name "Demux" Show off Position [155, 130] Direction right Flipped on Parameter { Variable "Width" Value "2" Show off } } Component { Type Capacitor Name "C" Show on Position [190, 95] Direction up Flipped off Parameter { Variable "C" Value "130e-6" Show off } Parameter { Variable "v_init" Value "V0" Show off } } Component { Type Gain Name "Si" Show on Position [335, 45] Direction right Flipped off Parameter { Variable "K" Value "50e-3" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Voltmeter Name "Vdc" Show off Position [270, 145] Direction up Flipped off } Component { Type Gain Name "Sv" Show on Position [335, 145] Direction right Flipped off Parameter { Variable "K" Value "4.99e-3" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Output Name "V" Show on Position [380, 145] Direction right Flipped off Parameter { Variable "Index" Value "6" Show on } Parameter { Variable "Width" Value "1" Show off } } Component { Type MosfetWithDiode Name "S1" Show off Position [230, 75] Direction up Flipped off 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 MosfetWithDiode Name "S0" Show off Position [230, 135] Direction up Flipped off 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 Resistor Name "ESR" Show off Position [190, 135] Direction down Flipped off Parameter { Variable "R" Value "20e-3" Show off } } Connection { Type Wire SrcComponent "AC" SrcTerminal 1 DstComponent "Iac" DstTerminal 2 } Connection { Type Signal SrcComponent "s" SrcTerminal 1 DstComponent "Demux" DstTerminal 1 } Connection { Type Signal SrcComponent "Si" SrcTerminal 2 DstComponent "I" DstTerminal 1 } Connection { Type Signal SrcComponent "Iac" SrcTerminal 3 Points [295, 45] DstComponent "Si" DstTerminal 1 } Connection { Type Wire SrcComponent "S0" SrcTerminal 2 Points [230, 170] Branch { Points [190, 170] Branch { DstComponent "VDC-" DstTerminal 1 } Branch { DstComponent "ESR" DstTerminal 1 } } Branch { Points [270, 170] DstComponent "Vdc" DstTerminal 2 } } Connection { Type Wire SrcComponent "VDC+" SrcTerminal 1 Points [190, 40] Branch { Points [230, 40] Branch { DstComponent "S1" DstTerminal 1 } Branch { Points [270, 40] DstComponent "Vdc" DstTerminal 1 } } Branch { DstComponent "C" DstTerminal 1 } } Connection { Type Signal SrcComponent "Vdc" SrcTerminal 3 DstComponent "Sv" DstTerminal 1 } Connection { Type Signal SrcComponent "Sv" SrcTerminal 2 DstComponent "V" DstTerminal 1 } Connection { Type Signal SrcComponent "Demux" SrcTerminal 2 Points [165, 125; 165, 75] DstComponent "S1" DstTerminal 3 } Connection { Type Wire SrcComponent "Iac" SrcTerminal 1 Points [230, 100] Branch { DstComponent "S0" DstTerminal 1 } Branch { DstComponent "S1" DstTerminal 2 } } Connection { Type Signal SrcComponent "Demux" SrcTerminal 3 DstComponent "S0" DstTerminal 3 } Connection { Type Wire SrcComponent "ESR" SrcTerminal 2 DstComponent "C" DstTerminal 2 } } } Parameter { Variable "Configuration" Value "1" Show off } MaskProbe { Name "Gate signals" Probe { Component "s" Path "Ideal model" Signals {"Output"} } } MaskProbe { Name "DC bus voltage (true value)" Probe { Component "Vdc" Path "Ideal model" Signals {"Measured voltage"} } } MaskProbe { Name "DC bus voltage (sensor signal)" Probe { Component "V" Path "Ideal model" Signals {"Input"} } } MaskProbe { Name "Output current (true value)" Probe { Component "Iac" Path "Ideal model" Signals {"Measured current"} } } MaskProbe { Name "Output current (sensor signal)" Probe { Component "I" Path "Ideal model" Signals {"Input"} } } } Component { Type ConfigurableSubsystem Name "M2" Show off Position [455, 115] Direction up Flipped off Frame [-25, -50; 25, 50] LabelPosition [-28, 0] LabelAlign right SampleTime "-1" CodeGenDiscretizationMethod "2" CodeGenTarget "Generic" MaskType "PEB8024" MaskDisplay "local function drawRectangleFull(x,y,w,h,color)\n\tIc" "on:color(221,4,45)\n\tIcon:line({x,x+w,x+w,x,x},{y,y,y+h,y+h,y})\nend\n\nloca" "l function drawMosfet(x,y)\n\tIcon:line({x, x, x-10}, {y+20, y+10, y+10})\n\t" "Icon:line({x, x, x-10}, {y+10, y, y})\n\tIcon:line({x, x, x-10}, {y-20, y-10," " y-10})\n\tIcon:line({x-10, x-10}, {y+13, y+7})\n\tIcon:line({x-10, x-10}, {y" "+3, y-3})\n\tIcon:line({x-10, x-10}, {y-7, y-13})\n\tIcon:line({x-15, x-15}, " "{y+10, y-10})\n\tIcon:line({x-15, x-20}, {y, y})\n\tIcon:line({x-4, x-8, x-4}" ", {y+2, y, y-2}) -- arrow\n\tIcon:line({x+10, x+10, x+0}, {y+6, y+14, y+14}) " "-- diode anode wire\n\tIcon:line({x+5, x+15}, {y-5, y-5}) --diode bar\n\tIcon" ":line({x+0, x+10, x+10}, {y-14, y-14, y-6}) -- diode cathode wire\n\tIcon:lin" "e({x+10, x+15, x+5, x+10}, {y-5, y+5, y+5, y-5}) -- diode triangle\nend\n\ndr" "awRectangleFull(-25,-50,50,100)\ndrawRectangleFull(-24,-49,48,98)\nIcon:color" "(0,0,0)\n\ndrawMosfet(0,25)\ndrawMosfet(0,-25)\n\nIcon:line({0,25},{0,0}) --M" "idpoint outpout\nIcon:line({0,0},{-10,10}) --Midpoint interconnection\nIcon:c" "ircle(0,0,1)\nIcon:line({0,0},{50,45}) -- +VCC point\nIcon:line({0,0},{-50,-4" "5}) -- -VCC point\n\nIcon:text(0,-65,\"PEB8024\", 'FontSize',9)" MaskDisplayLang "2" MaskIconFrame off MaskIconOpaque off MaskIconRotates on MaskInit "tau_i = 1/(300e3*2*pi);\ntau_v = 1/(30e3*2*pi);" Parameter { Variable "V0" Prompt "Initial DC bus voltage" Type FreeText Value "Vdc" Show off Tunable off TabName "" } Terminal { Type Input Position [-25, 10] Direction left } Terminal { Type Output Position [29, 30] Direction right } Terminal { Type Port Position [0, -55] Direction up } Terminal { Type Port Position [0, 55] Direction down } Terminal { Type Port Position [30, 0] Direction right } Terminal { Type Output Position [29, 40] Direction right } TerminalNames { "s", "I", "VDC+", "VDC-", "AC", "V" } Location [301, 486; 844, 695] ZoomFactor 1 SliderPosition [0, 0] ShowBrowser off BrowserWidth 100 Configurations { Name "Ideal model" Schematic { Component { Type Input Name "s" Show on Position [110, 130] Direction right Flipped off Parameter { Variable "Index" Value "1" Show on } Parameter { Variable "Width" Value "2" Show off } } Component { Type Output Name "I" Show on Position [380, 45] Direction right Flipped off Parameter { Variable "Index" Value "2" Show on } Parameter { Variable "Width" Value "1" Show off } } Component { Type Port Name "AC" Show off Position [360, 100] Direction right Flipped on Parameter { Variable "Index" Value "5" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Ammeter Name "Iac" Show off Position [295, 100] Direction left Flipped off } Component { Type Port Name "VDC+" Show off Position [160, 40] Direction right Flipped off Parameter { Variable "Index" Value "3" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type Port Name "VDC-" Show off Position [160, 170] Direction right Flipped off Parameter { Variable "Index" Value "4" Show on } Parameter { Variable "Width" Value "-1" Show off } } Component { Type SignalDemux Name "Demux" Show off Position [155, 130] Direction right Flipped on Parameter { Variable "Width" Value "2" Show off } } Component { Type Capacitor Name "C" Show on Position [190, 95] Direction up Flipped off Parameter { Variable "C" Value "130e-6" Show off } Parameter { Variable "v_init" Value "V0" Show off } } Component { Type Gain Name "Si" Show on Position [335, 45] Direction right Flipped off Parameter { Variable "K" Value "50e-3" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Voltmeter Name "Vdc" Show off Position [270, 145] Direction up Flipped off } Component { Type Gain Name "Sv" Show on Position [335, 145] Direction right Flipped off Parameter { Variable "K" Value "4.99e-3" Show off } Parameter { Variable "Multiplication" Value "1" Show off } Parameter { Variable "DataType" Value "11" Show off } } Component { Type Output Name "V" Show on Position [380, 145] Direction right Flipped off Parameter { Variable "Index" Value "6" Show on } Parameter { Variable "Width" Value "1" Show off } } Component { Type MosfetWithDiode Name "S1" Show off Position [230, 75] Direction up Flipped off 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 MosfetWithDiode Name "S0" Show off Position [230, 135] Direction up Flipped off 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 Resistor Name "ESR" Show off Position [190, 135] Direction down Flipped off Parameter { Variable "R" Value "20e-3" Show off } } Connection { Type Wire SrcComponent "AC" SrcTerminal 1 DstComponent "Iac" DstTerminal 2 } Connection { Type Signal SrcComponent "s" SrcTerminal 1 DstComponent "Demux" DstTerminal 1 } Connection { Type Signal SrcComponent "Si" SrcTerminal 2 DstComponent "I" DstTerminal 1 } Connection { Type Signal SrcComponent "Iac" SrcTerminal 3 Points [295, 45] DstComponent "Si" DstTerminal 1 } Connection { Type Wire SrcComponent "S0" SrcTerminal 2 Points [230, 170] Branch { Points [190, 170] Branch { DstComponent "VDC-" DstTerminal 1 } Branch { DstComponent "ESR" DstTerminal 1 } } Branch { Points [270, 170] DstComponent "Vdc" DstTerminal 2 } } Connection { Type Wire SrcComponent "VDC+" SrcTerminal 1 Points [190, 40] Branch { Points [230, 40] Branch { DstComponent "S1" DstTerminal 1 } Branch { Points [270, 40] DstComponent "Vdc" DstTerminal 1 } } Branch { DstComponent "C" DstTerminal 1 } } Connection { Type Signal SrcComponent "Vdc" SrcTerminal 3 DstComponent "Sv" DstTerminal 1 } Connection { Type Signal SrcComponent "Sv" SrcTerminal 2 DstComponent "V" DstTerminal 1 } Connection { Type Signal SrcComponent "Demux" SrcTerminal 2 Points [165, 125; 165, 75] DstComponent "S1" DstTerminal 3 } Connection { Type Wire SrcComponent "Iac" SrcTerminal 1 Points [230, 100] Branch { DstComponent "S0" DstTerminal 1 } Branch { DstComponent "S1" DstTerminal 2 } } Connection { Type Signal SrcComponent "Demux" SrcTerminal 3 DstComponent "S0" DstTerminal 3 } Connection { Type Wire SrcComponent "ESR" SrcTerminal 2 DstComponent "C" DstTerminal 2 } } } Parameter { Variable "Configuration" Value "1" Show off } MaskProbe { Name "Gate signals" Probe { Component "s" Path "Ideal model" Signals {"Output"} } } MaskProbe { Name "DC bus voltage (true value)" Probe { Component "Vdc" Path "Ideal model" Signals {"Measured voltage"} } } MaskProbe { Name "DC bus voltage (sensor signal)" Probe { Component "V" Path "Ideal model" Signals {"Input"} } } MaskProbe { Name "Output current (true value)" Probe { Component "Iac" Path "Ideal model" Signals {"Measured current"} } } MaskProbe { Name "Output current (sensor signal)" Probe { Component "I" Path "Ideal model" Signals {"Input"} } } } Component { Type Scope Name "Vbus" Show on Position [105, 275] Direction up Flipped off Location [548, 855; 898, 1082] State "AAAA/wAAAAD9AAAAAgAAAAEAAAAAAAAAAPwCAAAAA/sAAAAQAFoAb" "wBvAG0AQQByAGUAYQAAAAAA/////wAAADQA////+wAAABQAUwBhAHYAZQBkAFYAaQBlAHcAcwAAAA" "AA/////wAAAGYA////+wAAAAwAVAByAGEAYwBlAHMAAAAAAP////8AAABmAP///wAAAAMAAAAAAAA" "AAPwBAAAAAfsAAAAUAEQAYQB0AGEAVwBpAGQAZwBlAHQAAAAAAP////8AAABQAP///wAAAV4AAADI" "AAAABAAAAAQAAAAIAAAACPwAAAABAAAAAgAAAAEAAAAOAFQAbwBvAGwAQgBhAHIBAAAAAP////8AA" "AAAAAAAAA==" SavedViews "AAAAAgAAAAA=" HeaderState "AAAA/wAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAL/gMAAAAJA" "AAAAwAAAGQAAAACAAAAZAAAAAUAAABkAAAABAAAAGQAAAAHAAAAZAAAAAYAAABkAAAACQAAAGQAAA" "AIAAAAZAAAAAEAAABkAAAA2QAAAAsBAAABAAAAAAAAAAAAAAAAZP////8AAACBAAAAAAAAAAsAAAC" "yAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAA" "AAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAA" "AAAAAAnAAAAAQAAAAAAAAPoAAAAACc=" PlotPalettes "AAAAAQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" Axes "1" TimeRange "0.0" ScrollingMode "1" SingleTimeAxis "1" Open "0" Ts "-1" SampleLimit "0" XAxisLabel "" ShowLegend "1" Axis { Name "" AutoScale 1 MinValue 0 MaxValue 1 Signals {} SignalTypes [ ] Untangle 0 KeepBaseline off BaselineValue 0 } Fourier { SingleXAxis on AxisLabel "Frequency" Scaling 0 PhaseDisplay 0 ShowFourierLegend off Axis { Name "" AutoScale 1 MinValue 0 MaxValue 1 Signals {} Untangle 0 KeepBaseline off BaselineValue 0 } } } Component { Type PlecsProbe Name "Probe3" Show off Position [55, 275] Direction right Flipped off } Connection { Type Wire SrcComponent "Vdc" SrcTerminal 2 Points [105, 60] Branch { Points [200, 60] Branch { Points [325, 60] Branch { DstComponent "M2" DstTerminal 3 } Branch { DstComponent "M1" DstTerminal 3 } } Branch { DstComponent "M0" DstTerminal 3 } } Branch { DstComponent "R1" DstTerminal 1 } } Connection { Type Wire SrcComponent "M0" SrcTerminal 4 Points [200, 175] Branch { Points [325, 175] Branch { Points [455, 175] DstComponent "M2" DstTerminal 4 } Branch { DstComponent "M1" DstTerminal 4 } } Branch { Points [105, 175] Branch { Points [40, 175] DstComponent "Vi" DstTerminal 2 } Branch { DstComponent "Vdc" DstTerminal 3 } } } Connection { Type Rotational SrcComponent "Rotational\nDamper" SrcTerminal 2 DstComponent "Gear" DstTerminal 1 } Connection { Type Rotational SrcComponent "Rotational\nFrame" SrcTerminal 1 DstComponent "Rotational\nDamper" DstTerminal 1 } Connection { Type Signal SrcComponent "Demux1" SrcTerminal 2 DstComponent "Scope" DstTerminal 2 } Connection { Type Signal SrcComponent "Demux1" SrcTerminal 3 DstComponent "Scope" DstTerminal 3 } Connection { Type Signal SrcComponent "Probe" SrcTerminal 1 DstComponent "Demux1" DstTerminal 1 } Connection { Type Signal SrcComponent "Probe2" SrcTerminal 1 DstComponent "Encoder_out" DstTerminal 1 } Connection { Type Rotational SrcComponent "IM" SrcTerminal 4 DstComponent "Gear" DstTerminal 2 } Connection { Type Signal SrcComponent "Probe1" SrcTerminal 1 DstComponent "Demux2" DstTerminal 1 } Connection { Type Signal SrcComponent "Demux2" SrcTerminal 2 DstComponent base64 "z4hy" DstTerminal 2 } Connection { Type Signal SrcComponent "Demux2" SrcTerminal 3 DstComponent base64 "z4hy" DstTerminal 1 } Connection { Type Wire SrcComponent "IM" SrcTerminal 3 Points [535, 120] Branch { Points [490, 120; 490, 115] DstComponent "M2" DstTerminal 5 } Branch { Points [535, 205] DstComponent "Electrical\nModel Settings" DstTerminal 1 } } Connection { Type Signal SrcComponent "sw" SrcTerminal 1 DstComponent "Demux" DstTerminal 1 } Connection { Type Signal SrcComponent "Demux" SrcTerminal 4 DstComponent "Goto3" DstTerminal 1 } Connection { Type Signal SrcComponent "Demux" SrcTerminal 3 DstComponent "Goto2" DstTerminal 1 } Connection { Type Signal SrcComponent "Demux" SrcTerminal 2 DstComponent "Goto" DstTerminal 1 } Connection { Type Signal SrcComponent "From" SrcTerminal 1 DstComponent "M0" DstTerminal 1 } Connection { Type Signal SrcComponent "From1" SrcTerminal 1 DstComponent "M1" DstTerminal 1 } Connection { Type Signal SrcComponent "From2" SrcTerminal 1 DstComponent "M2" DstTerminal 1 } Connection { Type Wire SrcComponent "M0" SrcTerminal 5 Points [240, 115; 240, 100] DstComponent "IM" DstTerminal 1 } Connection { Type Wire SrcComponent "M1" SrcTerminal 5 Points [450, 115; 450, 110] DstComponent "IM" DstTerminal 2 } Connection { Type Signal SrcComponent "M0" SrcTerminal 2 DstComponent "Goto1" DstTerminal 1 } Connection { Type Signal SrcComponent "M1" SrcTerminal 2 DstComponent "Goto4" DstTerminal 1 } Connection { Type Signal SrcComponent "M2" SrcTerminal 2 DstComponent "Goto5" DstTerminal 1 } Connection { Type Signal SrcComponent "From5" SrcTerminal 1 DstComponent "Mux" DstTerminal 4 } Connection { Type Signal SrcComponent "From4" SrcTerminal 1 DstComponent "Mux" DstTerminal 3 } Connection { Type Signal SrcComponent "From3" SrcTerminal 1 DstComponent "Mux" DstTerminal 2 } Connection { Type Signal SrcComponent "Mux" SrcTerminal 1 Points [395, 220] Branch { Points [395, 260] DstComponent "Scope" DstTerminal 1 } Branch { DstComponent "I_meas" DstTerminal 1 } } Connection { Type Wire SrcComponent "R1" SrcTerminal 2 Points [40, 60] DstComponent "Vi" DstTerminal 1 } Connection { Type Signal SrcComponent "Probe3" SrcTerminal 1 DstComponent "Vbus" DstTerminal 1 } Connection { Type Signal SrcComponent "Vdc" SrcTerminal 1 Points [130, 115] DstComponent "Vdc_meas" DstTerminal 1 } } } Component { Type Delay Name "Delay1" Show off Position [200, 190] Direction right Flipped on Parameter { Variable "N" Value "1" Show off } Parameter { Variable "X0" Value "0" Show off } Parameter { Variable "Ts" Value "Ts_control" Show off } } Component { Type Delay Name "Delay2" Show off Position [200, 220] Direction right Flipped on Parameter { Variable "N" Value "1" Show off } Parameter { Variable "X0" Value "0" Show off } Parameter { Variable "Ts" Value "Ts_control" Show off } } Component { Type Delay Name "Delay3" Show off Position [200, 160] Direction right Flipped on Parameter { Variable "N" Value "1" Show off } Parameter { Variable "X0" Value "0" Show off } Parameter { Variable "Ts" Value "Ts_control" Show off } } Connection { Type Signal SrcComponent "Plant" SrcTerminal 4 Points [335, 100; 335, 190] DstComponent "Delay1" DstTerminal 1 } Connection { Type Signal SrcComponent "Plant" SrcTerminal 2 Points [350, 80; 350, 220] DstComponent "Delay2" DstTerminal 1 } Connection { Type Signal SrcComponent "Controller" SrcTerminal 3 DstComponent "Plant" DstTerminal 1 } Connection { Type Signal SrcComponent "Delay2" SrcTerminal 2 Points [45, 220; 45, 80] DstComponent "Controller" DstTerminal 2 } Connection { Type Signal SrcComponent "Delay1" SrcTerminal 2 Points [60, 190; 60, 100] DstComponent "Controller" DstTerminal 1 } Connection { Type Signal SrcComponent "Plant" SrcTerminal 3 Points [320, 120; 320, 160] DstComponent "Delay3" DstTerminal 1 } Connection { Type Signal SrcComponent "Delay3" SrcTerminal 2 Points [75, 160; 75, 115; 95, 115] } Annotation { Name "Vector Control of an Induction Machine deployable on impe" "rix B-Box RCP" Position [205, 25] } Annotation { Name "This model file has been adapted from PLECS code examples" Position [200, 265] } } ProbeBlock { Tag "vector_control_induction_machine_ix/Plant/Probe" Probe { Component "IM" Path "Plant" Signals {"Rotational speed", "Electrical torque"} } } ProbeBlock { Tag "vector_control_induction_machine_ix/Plant/Probe1" Probe { Component "IM" Path "Plant" Signals {"Rotor flux (dq)"} } } ProbeBlock { Tag "vector_control_induction_machine_ix/Plant/Probe2" Probe { Component "IM" Path "Plant" Signals {"Rotational speed"} } } ProbeBlock { Tag "vector_control_induction_machine_ix/Plant/Probe3" Probe { Component "IM" Path "Plant" Signals {"Rotor flux (dq)"} } Probe { Component "Vdc" Path "Plant" Signals {"True voltage value"} } } } DemoSignature "PPb6ELEmabCi/uWBVDdiVcWBXKBYLJM++Yr+AktrVhI="