Model { Name "softloop1" Version 3.00 SimParamPage "Solver" SampleTimeColors off InvariantConstants off WideVectorLines on ShowLineWidths off ShowPortDataTypes off StartTime "0.0" StopTime "25" SolverMode "SingleTasking" Solver "ode45" RelTol "1e-3" AbsTol "1e-3" Refine "1" MaxStep ".010" InitialStep "auto" FixedStep "auto" MaxOrder 5 OutputOption "RefineOutputTimes" OutputTimes "[]" LoadExternalInput off ExternalInput "[t, u]" SaveTime on TimeSaveName "t" SaveState off StateSaveName "xout" SaveOutput off OutputSaveName "yout" LoadInitialState off InitialState "xInitial" SaveFinalState off FinalStateName "xFinal" SaveFormat "Matrix" LimitMaxRows off MaxRows "1000" Decimation "1" AlgebraicLoopMsg "warning" MinStepSizeMsg "warning" UnconnectedInputMsg "warning" UnconnectedOutputMsg "warning" UnconnectedLineMsg "warning" InheritedTsInSrcMsg "warning" IntegerOverflowMsg "warning" UnnecessaryDatatypeConvMsg "none" Int32ToFloatConvMsg "warning" SignalLabelMismatchMsg "none" ConsistencyChecking "off" ZeroCross on SimulationMode "normal" BlockDataTips on BlockParametersDataTip on BlockAttributesDataTip off BlockPortWidthsDataTip off BlockDescriptionStringDataTip off BlockMaskParametersDataTip off ToolBar on StatusBar on BrowserShowLibraryLinks off BrowserLookUnderMasks off OptimizeBlockIOStorage on BufferReuse on BooleanDataType off RTWSystemTargetFile "grt.tlc" RTWInlineParameters off RTWRetainRTWFile off RTWTemplateMakefile "grt_default_tmf" RTWMakeCommand "make_rtw" RTWGenerateCodeOnly off ExtModeMexFile "ext_comm" ExtModeBatchMode off ExtModeTrigType "manual" ExtModeTrigMode "oneshot" ExtModeTrigPort "1" ExtModeTrigElement "any" ExtModeTrigDuration 1000 ExtModeTrigHoldOff 0 ExtModeTrigDelay 0 ExtModeTrigDirection "rising" ExtModeTrigLevel 0 ExtModeArchiveMode "off" ExtModeAutoIncOneShot off ExtModeIncDirWhenArm off ExtModeAddSuffixToVar off ExtModeWriteAllDataToWs off ExtModeArmWhenConnect off Created "Tue Jan 18 21:08:16 2000" UpdateHistory "UpdateHistoryNever" ModifiedByFormat "%" ModifiedDateFormat "%" LastModifiedDate "Tue Jan 18 21:13:46 2000" ModelVersionFormat "1.%" ConfigurationManager "none" BlockDefaults { Orientation "right" ForegroundColor "black" BackgroundColor "white" DropShadow off NamePlacement "normal" FontName "Helvetica" FontSize 10 FontWeight "normal" FontAngle "normal" ShowName on } AnnotationDefaults { HorizontalAlignment "center" VerticalAlignment "middle" ForegroundColor "black" BackgroundColor "white" DropShadow off FontName "Helvetica" FontSize 10 FontWeight "normal" FontAngle "normal" } LineDefaults { FontName "Helvetica" FontSize 9 FontWeight "normal" FontAngle "normal" } System { Name "softloop1" Location [2, 74, 802, 558] Open on ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on ReportName "simulink-default.rpt" Block { BlockType SubSystem Name "Disturbance" Ports [0, 1, 0, 0, 0] Position [545, 14, 595, 66] Orientation "left" BackgroundColor "cyan" DropShadow on FontName "Arial" FontSize 14 ShowPortLabels off MaskType "Pulse disturbance" MaskDescription "Pulse" MaskHelp "This block generates a (one shot) pulse" MaskPromptString "pulse amplitude:|initial time:|pulse duration:" MaskStyleString "edit,edit,edit" MaskTunableValueString "on,on,on" MaskCallbackString "||" MaskEnableString "on,on,on" MaskVisibilityString "on,on,on" MaskInitialization "D=@1;ti=@2;dt=@3;" MaskDisplay "disp('PULSE')" MaskIconFrame on MaskIconOpaque on MaskIconRotate "none" MaskIconUnits "autoscale" MaskValueString "0|5|10" System { Name "Disturbance" Location [116, 184, 629, 455] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Step Name "Dist1" Position [60, 17, 95, 43] BackgroundColor "cyan" DropShadow on FontName "Arial" FontSize 14 Time "ti" Before "0" After "D" SampleTime "0" } Block { BlockType Step Name "Dist2" Position [60, 112, 95, 138] BackgroundColor "cyan" DropShadow on FontName "Arial" FontSize 14 Time "ti+dt" Before "0" After "-D" SampleTime "0" } Block { BlockType Sum Name "Sum2" Ports [2, 1, 0, 0, 0] Position [240, 73, 260, 117] BackgroundColor "cyan" DropShadow on ShowName off FontName "Arial" FontSize 14 IconShape "rectangular" Inputs "++" SaturateOnIntegerOverflow on } Block { BlockType Outport Name "out_1" Position [345, 85, 365, 105] ForegroundColor "green" DropShadow on FontName "Arial" FontSize 14 Port "1" OutputWhenDisabled "held" InitialOutput "0" } Line { SrcBlock "Sum2" SrcPort 1 DstBlock "out_1" DstPort 1 } Line { SrcBlock "Dist1" SrcPort 1 Points [63, 0; 0, 55] DstBlock "Sum2" DstPort 1 } Line { SrcBlock "Dist2" SrcPort 1 Points [63, 0; 0, -20] DstBlock "Sum2" DstPort 2 } } } Block { BlockType TransferFcn Name "Linear\ncontroller" Position [215, 74, 295, 136] ForegroundColor "red" DropShadow on FontName "Arial" FontSize 14 Numerator "9*dplin" Denominator "conv(nplin,[1 4 0])" MaskType "Controller" MaskDescription "Plant linear model" MaskPromptString "plant model numerator nplin:|plant model denomi" "nator dplin:" MaskStyleString "edit,edit" MaskTunableValueString "on,on" MaskCallbackString "|" MaskEnableString "on,on" MaskVisibilityString "on,on" MaskInitialization "nplin=@1;dplin=@2;" MaskDisplay "disp('CONT')" MaskIconFrame on MaskIconOpaque on MaskIconRotate "none" MaskIconUnits "autoscale" MaskValueString "1.13|[1 3 1.55]" } Block { BlockType Mux Name "Mux" Ports [2, 1, 0, 0, 0] Position [615, 173, 665, 217] ForegroundColor "green" DropShadow on ShowName off FontName "Arial" FontSize 14 Inputs "2" DisplayOption "none" } Block { BlockType SubSystem Name "Nonlinear \nplant model " Ports [1, 1, 0, 0, 0] Position [400, 268, 465, 322] ForegroundColor "red" DropShadow on ShowName off FontName "Arial" FontSize 14 ShowPortLabels off MaskType "N.L.Model" MaskDisplay "disp('N.L.Mod')" MaskIconFrame on MaskIconOpaque on MaskIconRotate "none" MaskIconUnits "autoscale" System { Name "Nonlinear \nplant model " Location [4, 131, 808, 649] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "in_1" Position [150, 331, 175, 359] ForegroundColor "blue" DropShadow on FontName "Arial" FontSize 14 Port "1" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Fcn Name "Fcn" Position [330, 150, 555, 210] BackgroundColor "yellow" DropShadow on ShowName off FontName "Arial" FontSize 14 Expr "(u[2])^3+u[2]" } Block { BlockType Fcn Name "Fcn1" Position [280, 232, 460, 278] BackgroundColor "yellow" DropShadow on ShowName off FontName "Arial" FontSize 14 Expr "-2*(u[1])-3*(u[2])" } Block { BlockType Fcn Name "Fcn2" Position [315, 307, 495, 363] BackgroundColor "yellow" DropShadow on ShowName off FontName "Arial" FontSize 14 Expr "(1+0.1*(u[1])^2)*u[2]" } Block { BlockType Integrator Name "Integrator" Ports [1, 1, 0, 0, 0] Position [590, 164, 620, 196] BackgroundColor "yellow" DropShadow on ShowName off FontName "Arial" FontSize 14 ExternalReset "none" InitialConditionSource "internal" InitialCondition "0" LimitOutput off UpperSaturationLimit "inf" LowerSaturationLimit "-inf" ShowSaturationPort off ShowStatePort off AbsoluteTolerance "auto" } Block { BlockType Integrator Name "Integrator1" Ports [1, 1, 0, 0, 0] Position [600, 265, 630, 295] BackgroundColor "yellow" DropShadow on ShowName off FontName "Arial" FontSize 14 ExternalReset "none" InitialConditionSource "internal" InitialCondition "0" LimitOutput off UpperSaturationLimit "inf" LowerSaturationLimit "-inf" ShowSaturationPort off ShowStatePort off AbsoluteTolerance "auto" } Block { BlockType Mux Name "Mux" Ports [2, 1, 0, 0, 0] Position [255, 160, 300, 200] BackgroundColor "yellow" DropShadow on ShowName off FontName "Arial" FontSize 14 Inputs "2" DisplayOption "none" } Block { BlockType Mux Name "Mux1" Ports [2, 1, 0, 0, 0] Position [150, 235, 195, 270] BackgroundColor "yellow" DropShadow on ShowName off FontName "Arial" FontSize 14 Inputs "2" DisplayOption "none" } Block { BlockType Mux Name "Mux2" Ports [2, 1, 0, 0, 0] Position [235, 308, 280, 357] BackgroundColor "yellow" DropShadow on ShowName off FontName "Arial" FontSize 14 Inputs "2" DisplayOption "none" } Block { BlockType Sum Name "Sum" Ports [2, 1, 0, 0, 0] Position [555, 233, 580, 322] BackgroundColor "yellow" DropShadow on ShowName off FontName "Arial" FontSize 14 IconShape "rectangular" Inputs "++" SaturateOnIntegerOverflow on } Block { BlockType ToWorkspace Name "state1" Position [570, 100, 620, 120] Orientation "left" BackgroundColor "green" DropShadow on NamePlacement "alternate" FontName "Arial" FontSize 14 VariableName "x1m" Buffer "10000" Decimation "1" SampleTime "0" SaveFormat "Matrix" } Block { BlockType ToWorkspace Name "state2" Position [695, 270, 740, 290] BackgroundColor "green" DropShadow on FontName "Arial" FontSize 14 VariableName "x2m" Buffer "10000" Decimation "1" SampleTime "0" SaveFormat "Matrix" } Block { BlockType Outport Name "out_1" Position [715, 166, 740, 194] ForegroundColor "green" DropShadow on FontName "Arial" FontSize 14 Port "1" OutputWhenDisabled "held" InitialOutput "0" } Line { SrcBlock "in_1" SrcPort 1 DstBlock "Mux2" DstPort 2 } Line { SrcBlock "Mux" SrcPort 1 DstBlock "Fcn" DstPort 1 } Line { SrcBlock "Fcn" SrcPort 1 DstBlock "Integrator" DstPort 1 } Line { SrcBlock "Mux1" SrcPort 1 DstBlock "Fcn1" DstPort 1 } Line { SrcBlock "Fcn1" SrcPort 1 DstBlock "Sum" DstPort 1 } Line { SrcBlock "Sum" SrcPort 1 DstBlock "Integrator1" DstPort 1 } Line { SrcBlock "Fcn2" SrcPort 1 Points [35, 0; 0, -35] DstBlock "Sum" DstPort 2 } Line { SrcBlock "Mux2" SrcPort 1 DstBlock "Fcn2" DstPort 1 } Line { SrcBlock "Integrator" SrcPort 1 Points [55, 0] Branch { Points [20, 0] Branch { DstBlock "out_1" DstPort 1 } Branch { Points [-55, 0; 0, 45; -415, 0] Branch { Points [0, -55] DstBlock "Mux" DstPort 1 } Branch { Points [-20, 0] Branch { Points [-80, 0; 0, 20] DstBlock "Mux1" DstPort 1 } Branch { Points [0, 95] DstBlock "Mux2" DstPort 1 } } } } Branch { Points [-35, 0; 0, -70] DstBlock "state1" DstPort 1 } } Line { SrcBlock "Integrator1" SrcPort 1 Points [35, 0; 0, -5] Branch { Points [0, -217; -550, 0; 0, 132] Branch { Points [0, 70] DstBlock "Mux1" DstPort 2 } Branch { DstBlock "Mux" DstPort 2 } } Branch { Points [0, 5] DstBlock "state2" DstPort 1 } } } } Block { BlockType SubSystem Name "Plant" Ports [1, 1, 0, 0, 0] Position [465, 56, 525, 134] BackgroundColor "yellow" DropShadow on FontName "Arial" FontSize 14 ShowPortLabels off MaskType "Plant" MaskDisplay "disp('Plant');" MaskIconFrame on MaskIconOpaque on MaskIconRotate "none" MaskIconUnits "autoscale" System { Name "Plant" Location [9, 83, 809, 597] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "yellow" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "in_1" Position [25, 370, 55, 400] ForegroundColor "blue" DropShadow on FontName "Arial" FontSize 14 Port "1" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Fcn Name "Fcn" Position [250, 135, 475, 195] DropShadow on ShowName off FontName "Arial" FontSize 14 Expr "(u[2])^3+u[2]" } Block { BlockType Fcn Name "Fcn1" Position [245, 217, 425, 263] DropShadow on ShowName off FontName "Arial" FontSize 14 Expr "-2*(u[1])-3*(u[2])" } Block { BlockType Fcn Name "Fcn2" Position [275, 347, 455, 403] DropShadow on ShowName off FontName "Arial" FontSize 14 Expr "(1+0.1*(u[1])^2)*u[2]" } Block { BlockType Integrator Name "Integrator" Ports [1, 1, 0, 0, 0] Position [505, 150, 540, 180] DropShadow on ShowName off FontName "Arial" FontSize 14 ExternalReset "none" InitialConditionSource "internal" InitialCondition "0" LimitOutput off UpperSaturationLimit "inf" LowerSaturationLimit "-inf" ShowSaturationPort off ShowStatePort off AbsoluteTolerance "auto" } Block { BlockType Integrator Name "Integrator1" Ports [1, 1, 0, 0, 0] Position [555, 251, 585, 279] DropShadow on ShowName off FontName "Arial" FontSize 14 ExternalReset "none" InitialConditionSource "internal" InitialCondition "0" LimitOutput off UpperSaturationLimit "inf" LowerSaturationLimit "-inf" ShowSaturationPort off ShowStatePort off AbsoluteTolerance "auto" } Block { BlockType Mux Name "Mux" Ports [2, 1, 0, 0, 0] Position [170, 145, 215, 185] DropShadow on ShowName off FontName "Arial" FontSize 14 Inputs "2" DisplayOption "none" } Block { BlockType Mux Name "Mux1" Ports [2, 1, 0, 0, 0] Position [65, 221, 110, 259] DropShadow on ShowName off FontName "Arial" FontSize 14 Inputs "2" DisplayOption "none" } Block { BlockType Mux Name "Mux2" Ports [2, 1, 0, 0, 0] Position [150, 355, 195, 395] DropShadow on ShowName off FontName "Arial" FontSize 14 Inputs "2" DisplayOption "none" } Block { BlockType Sum Name "Sum" Ports [2, 1, 0, 0, 0] Position [500, 218, 525, 307] DropShadow on ShowName off FontName "Arial" FontSize 14 IconShape "rectangular" Inputs "++" SaturateOnIntegerOverflow on } Block { BlockType ToWorkspace Name "state1" Position [485, 85, 535, 105] Orientation "left" DropShadow on NamePlacement "alternate" FontName "Arial" FontSize 14 VariableName "x11" Buffer "10000" Decimation "1" SampleTime "0" SaveFormat "Matrix" } Block { BlockType ToWorkspace Name "state2" Position [645, 255, 690, 275] DropShadow on FontName "Arial" FontSize 14 VariableName "x21" Buffer "10000" Decimation "1" SampleTime "0" SaveFormat "Matrix" } Block { BlockType Outport Name "out_1" Position [650, 152, 675, 178] ForegroundColor "green" DropShadow on FontName "Arial" FontSize 14 Port "1" OutputWhenDisabled "held" InitialOutput "0" } Line { SrcBlock "in_1" SrcPort 1 DstBlock "Mux2" DstPort 2 } Line { SrcBlock "Mux" SrcPort 1 DstBlock "Fcn" DstPort 1 } Line { SrcBlock "Fcn" SrcPort 1 DstBlock "Integrator" DstPort 1 } Line { SrcBlock "Mux1" SrcPort 1 DstBlock "Fcn1" DstPort 1 } Line { SrcBlock "Fcn1" SrcPort 1 DstBlock "Sum" DstPort 1 } Line { SrcBlock "Sum" SrcPort 1 DstBlock "Integrator1" DstPort 1 } Line { SrcBlock "Fcn2" SrcPort 1 Points [20, 0; 0, -90] DstBlock "Sum" DstPort 2 } Line { SrcBlock "Mux2" SrcPort 1 DstBlock "Fcn2" DstPort 1 } Line { SrcBlock "Integrator" SrcPort 1 Points [55, 0] Branch { Points [20, 0] Branch { DstBlock "out_1" DstPort 1 } Branch { Points [-65, 0; 0, 45; -405, 0] Branch { Points [0, -55] DstBlock "Mux" DstPort 1 } Branch { Points [-20, 0] Branch { Points [-80, 0] DstBlock "Mux1" DstPort 1 } Branch { Points [0, 155] DstBlock "Mux2" DstPort 1 } } } } Branch { Points [-35, 0; 0, -70] DstBlock "state1" DstPort 1 } } Line { SrcBlock "Integrator1" SrcPort 1 Points [20, 0; 0, -5] Branch { Points [0, -217; -570, 0; 0, 132] Branch { Points [0, 75] DstBlock "Mux1" DstPort 2 } Branch { DstBlock "Mux" DstPort 2 } } Branch { Points [0, 5] DstBlock "state2" DstPort 1 } } } } Block { BlockType SubSystem Name "Plant " Ports [1, 1, 0, 0, 0] Position [475, 191, 535, 269] BackgroundColor "yellow" DropShadow on FontName "Arial" FontSize 14 ShowPortLabels off MaskType "Plant" MaskDisplay "disp('Plant')" MaskIconFrame on MaskIconOpaque on MaskIconRotate "none" MaskIconUnits "autoscale" System { Name "Plant " Location [2, 74, 802, 588] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "yellow" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "in_1" Position [40, 362, 75, 398] ForegroundColor "blue" DropShadow on FontName "Arial" FontSize 14 Port "1" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Fcn Name "Fcn" Position [265, 130, 490, 190] DropShadow on ShowName off FontName "Arial" FontSize 14 Expr "(u[2])^3+u[2]" } Block { BlockType Fcn Name "Fcn1" Position [260, 212, 440, 258] DropShadow on ShowName off FontName "Arial" FontSize 14 Expr "-2*(u[1])-3*(u[2])" } Block { BlockType Fcn Name "Fcn2" Position [290, 342, 470, 398] DropShadow on ShowName off FontName "Arial" FontSize 14 Expr "(1+0.1*(u[1])^2)*u[2]" } Block { BlockType Integrator Name "Integrator" Ports [1, 1, 0, 0, 0] Position [520, 144, 555, 176] DropShadow on ShowName off FontName "Arial" FontSize 14 ExternalReset "none" InitialConditionSource "internal" InitialCondition "0" LimitOutput off UpperSaturationLimit "inf" LowerSaturationLimit "-inf" ShowSaturationPort off ShowStatePort off AbsoluteTolerance "auto" } Block { BlockType Integrator Name "Integrator1" Ports [1, 1, 0, 0, 0] Position [560, 245, 590, 275] DropShadow on ShowName off FontName "Arial" FontSize 14 ExternalReset "none" InitialConditionSource "internal" InitialCondition "0" LimitOutput off UpperSaturationLimit "inf" LowerSaturationLimit "-inf" ShowSaturationPort off ShowStatePort off AbsoluteTolerance "auto" } Block { BlockType Mux Name "Mux" Ports [2, 1, 0, 0, 0] Position [190, 140, 235, 180] DropShadow on ShowName off FontName "Arial" FontSize 14 Inputs "2" DisplayOption "none" } Block { BlockType Mux Name "Mux1" Ports [2, 1, 0, 0, 0] Position [85, 215, 130, 250] DropShadow on ShowName off FontName "Arial" FontSize 14 Inputs "2" DisplayOption "none" } Block { BlockType Mux Name "Mux2" Ports [2, 1, 0, 0, 0] Position [165, 343, 210, 392] DropShadow on ShowName off FontName "Arial" FontSize 14 Inputs "2" DisplayOption "none" } Block { BlockType Sum Name "Sum" Ports [2, 1, 0, 0, 0] Position [510, 213, 535, 302] DropShadow on ShowName off FontName "Arial" FontSize 14 IconShape "rectangular" Inputs "++" SaturateOnIntegerOverflow on } Block { BlockType ToWorkspace Name "state1" Position [510, 85, 560, 105] Orientation "left" DropShadow on NamePlacement "alternate" FontName "Arial" FontSize 14 VariableName "x1" Buffer "10000" Decimation "1" SampleTime "0" SaveFormat "Matrix" } Block { BlockType ToWorkspace Name "state2" Position [660, 250, 705, 270] DropShadow on FontName "Arial" FontSize 14 VariableName "x2" Buffer "10000" Decimation "1" SampleTime "0" SaveFormat "Matrix" } Block { BlockType Outport Name "out_1" Position [650, 143, 680, 177] ForegroundColor "green" DropShadow on FontName "Arial" FontSize 14 Port "1" OutputWhenDisabled "held" InitialOutput "0" } Line { SrcBlock "in_1" SrcPort 1 DstBlock "Mux2" DstPort 2 } Line { SrcBlock "Mux" SrcPort 1 DstBlock "Fcn" DstPort 1 } Line { SrcBlock "Fcn" SrcPort 1 DstBlock "Integrator" DstPort 1 } Line { SrcBlock "Mux1" SrcPort 1 DstBlock "Fcn1" DstPort 1 } Line { SrcBlock "Fcn1" SrcPort 1 DstBlock "Sum" DstPort 1 } Line { SrcBlock "Sum" SrcPort 1 DstBlock "Integrator1" DstPort 1 } Line { SrcBlock "Fcn2" SrcPort 1 Points [20, 0] DstBlock "Sum" DstPort 2 } Line { SrcBlock "Mux2" SrcPort 1 DstBlock "Fcn2" DstPort 1 } Line { SrcBlock "Integrator" SrcPort 1 Points [55, 0] Branch { Points [20, 0] Branch { DstBlock "out_1" DstPort 1 } Branch { Points [-55, 0; 0, 45; -415, 0] Branch { Points [0, -55] DstBlock "Mux" DstPort 1 } Branch { Points [-20, 0] Branch { Points [-80, 0; 0, 20] DstBlock "Mux1" DstPort 1 } Branch { Points [0, 150] DstBlock "Mux2" DstPort 1 } } } } Branch { Points [-35, 0; 0, -65] DstBlock "state1" DstPort 1 } } Line { SrcBlock "Integrator1" SrcPort 1 Points [20, 0] Branch { Points [0, -222; -560, 0; 0, 132] Branch { Points [0, 70] DstBlock "Mux1" DstPort 2 } Branch { DstBlock "Mux" DstPort 2 } } Branch { DstBlock "state2" DstPort 1 } } } } Block { BlockType SubSystem Name "Q-BLOCK" Ports [1, 1, 0, 0, 0] Position [190, 266, 230, 324] ForegroundColor "magenta" DropShadow on FontName "Arial" FontSize 14 ShowPortLabels off System { Name "Q-BLOCK" Location [52, 97, 773, 535] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "in_1" Position [10, 45, 30, 65] ForegroundColor "blue" DropShadow on FontName "Arial" FontSize 14 Port "1" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType SubSystem Name "OBSERVER" Ports [1, 1, 0, 0, 0] Position [320, 221, 380, 319] Orientation "left" ForegroundColor "magenta" DropShadow on FontName "Arial" FontSize 14 ShowPortLabels off System { Name "OBSERVER" Location [0, 42, 800, 576] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "in_1" Position [15, 351, 40, 379] ForegroundColor "blue" DropShadow on FontName "Arial" FontSize 14 Port "1" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Fcn Name "Fcn" Position [230, 115, 455, 175] BackgroundColor "magenta" DropShadow on ShowName off FontName "Arial" FontSize 14 Expr "(u[2])^3+u[2]" } Block { BlockType Fcn Name "Fcn1" Position [225, 197, 405, 243] BackgroundColor "magenta" DropShadow on ShowName off FontName "Arial" FontSize 14 Expr "-2*(u[1])-3*(u[2])" } Block { BlockType Fcn Name "Fcn2" Position [255, 327, 435, 383] BackgroundColor "magenta" DropShadow on ShowName off FontName "Arial" FontSize 14 Expr "(1+0.1*(u[1])^2)*u[2]" } Block { BlockType Integrator Name "Integrator" Ports [1, 1, 0, 0, 0] Position [505, 132, 555, 158] BackgroundColor "magenta" DropShadow on ShowName off FontName "Arial" FontSize 14 ExternalReset "none" InitialConditionSource "internal" InitialCondition "0" LimitOutput off UpperSaturationLimit "inf" LowerSaturationLimit "-inf" ShowSaturationPort off ShowStatePort off AbsoluteTolerance "auto" } Block { BlockType Integrator Name "Integrator1" Ports [1, 1, 0, 0, 0] Position [555, 230, 585, 260] BackgroundColor "magenta" DropShadow on ShowName off FontName "Arial" FontSize 14 ExternalReset "none" InitialConditionSource "internal" InitialCondition "0" LimitOutput off UpperSaturationLimit "inf" LowerSaturationLimit "-inf" ShowSaturationPort off ShowStatePort off AbsoluteTolerance "auto" } Block { BlockType Mux Name "Mux" Ports [2, 1, 0, 0, 0] Position [155, 125, 200, 165] BackgroundColor "magenta" DropShadow on ShowName off FontName "Arial" FontSize 14 Inputs "2" DisplayOption "none" } Block { BlockType Mux Name "Mux1" Ports [2, 1, 0, 0, 0] Position [50, 200, 95, 235] BackgroundColor "magenta" DropShadow on ShowName off FontName "Arial" FontSize 14 Inputs "2" DisplayOption "none" } Block { BlockType Mux Name "Mux2" Ports [2, 1, 0, 0, 0] Position [130, 328, 175, 377] BackgroundColor "magenta" DropShadow on ShowName off FontName "Arial" FontSize 14 Inputs "2" DisplayOption "none" } Block { BlockType Mux Name "Mux3" Ports [2, 1, 0, 0, 0] Position [625, 14, 675, 321] BackgroundColor "magenta" DropShadow on ShowName off FontName "Arial" FontSize 14 Inputs "2" DisplayOption "none" } Block { BlockType Sum Name "Sum" Ports [2, 1, 0, 0, 0] Position [495, 198, 520, 287] BackgroundColor "magenta" DropShadow on ShowName off FontName "Arial" FontSize 14 IconShape "rectangular" Inputs "++" SaturateOnIntegerOverflow on } Block { BlockType Outport Name "out_1" Position [715, 156, 740, 184] ForegroundColor "green" DropShadow on FontName "Arial" FontSize 14 Port "1" OutputWhenDisabled "held" InitialOutput "0" } Line { SrcBlock "Mux2" SrcPort 1 DstBlock "Fcn2" DstPort 1 } Line { SrcBlock "Fcn2" SrcPort 1 Points [20, 0; 0, -90] DstBlock "Sum" DstPort 2 } Line { SrcBlock "Sum" SrcPort 1 DstBlock "Integrator1" DstPort 1 } Line { SrcBlock "Fcn1" SrcPort 1 DstBlock "Sum" DstPort 1 } Line { SrcBlock "Mux1" SrcPort 1 DstBlock "Fcn1" DstPort 1 } Line { SrcBlock "Fcn" SrcPort 1 DstBlock "Integrator" DstPort 1 } Line { SrcBlock "Mux" SrcPort 1 DstBlock "Fcn" DstPort 1 } Line { SrcBlock "Integrator" SrcPort 1 Points [0, 0] Branch { Points [20, 0; 0, 45; -450, 0] Branch { Points [-20, 0] Branch { Points [-80, 0; 0, 20] DstBlock "Mux1" DstPort 1 } Branch { Points [0, 150] DstBlock "Mux2" DstPort 1 } } Branch { Points [0, -55] DstBlock "Mux" DstPort 1 } } Branch { Points [20, 0; 0, -55] DstBlock "Mux3" DstPort 1 } } Line { SrcBlock "in_1" SrcPort 1 DstBlock "Mux2" DstPort 2 } Line { SrcBlock "Mux3" SrcPort 1 DstBlock "out_1" DstPort 1 } Line { SrcBlock "Integrator1" SrcPort 1 Points [35, 0] Branch { DstBlock "Mux3" DstPort 2 } Branch { Points "[-25, 0; 0, -199; -578, 0; 0, 109; -2" ", 0]" Branch { Points [2, 0; 0, 70] DstBlock "Mux1" DstPort 2 } Branch { DstBlock "Mux" DstPort 2 } } } Annotation { Position [67, 335] VerticalAlignment "top" ForegroundColor "blue" Text "u(t)" FontName "Arial" FontSize 14 } Annotation { Position [732, 215] VerticalAlignment "top" Text "VECTOR\n xhat(t)" FontName "Arial" FontSize 14 } } } Block { BlockType Product Name "Product" Ports [2, 1, 0, 0, 0] Position [390, 58, 420, 82] ForegroundColor "magenta" DropShadow on FontName "Arial" FontSize 14 Inputs "2" SaturateOnIntegerOverflow on } Block { BlockType Sum Name "Sum" Ports [2, 1, 0, 0, 0] Position [135, 46, 155, 79] ForegroundColor "magenta" DropShadow on FontName "Arial" FontSize 14 IconShape "rectangular" Inputs "+-" SaturateOnIntegerOverflow on } Block { BlockType SubSystem Name "[a(x)]^{-1}" Ports [1, 1, 0, 0, 0] Position [245, 92, 300, 178] ForegroundColor "magenta" DropShadow on FontName "Arial" FontSize 14 ShowPortLabels off System { Name "[a(x)]^{-1}" Location [14, 160, 762, 463] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "in_1" Position [90, 135, 110, 155] ForegroundColor "blue" DropShadow on FontName "Arial" FontSize 14 Port "1" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Fcn Name "Fcn2" Position [195, 99, 515, 191] BackgroundColor "magenta" DropShadow on ShowName off FontName "Arial" FontSize 14 Expr "9/((1+3*(u[2])^2)*(1+0.1*(u[1])^2))" } Block { BlockType Outport Name "out_1" Position [570, 135, 590, 155] ForegroundColor "green" DropShadow on FontName "Arial" FontSize 14 Port "1" OutputWhenDisabled "held" InitialOutput "0" } Line { SrcBlock "in_1" SrcPort 1 DstBlock "Fcn2" DstPort 1 } Line { SrcBlock "Fcn2" SrcPort 1 DstBlock "out_1" DstPort 1 } Annotation { Position [352, 47] VerticalAlignment "top" ForegroundColor "red" Text "WARNING: THE INPUT SHOULD BE A VECTOR W" "ITH 2 COMPONENTS" DropShadow on FontName "Arial" FontSize 14 } } } Block { BlockType SubSystem Name "b(x)" Ports [1, 1, 0, 0, 0] Position [80, 227, 140, 313] Orientation "left" ForegroundColor "magenta" DropShadow on FontName "Arial" FontSize 14 ShowPortLabels off System { Name "b(x)" Location [0, 42, 800, 576] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "in_1" Position [40, 225, 60, 245] ForegroundColor "blue" DropShadow on FontName "Arial" FontSize 14 Port "1" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Fcn Name "Fcn" Position [100, 201, 615, 269] BackgroundColor "magenta" DropShadow on ShowName off FontName "Arial" FontSize 14 Expr "(7*u[1]-5*(u[2])^3-6*u[1]*(u[2])^2+u[2]" ")/9" } Block { BlockType Outport Name "out_1" Position [670, 225, 690, 245] ForegroundColor "green" DropShadow on FontName "Arial" FontSize 14 Port "1" OutputWhenDisabled "held" InitialOutput "0" } Line { SrcBlock "in_1" SrcPort 1 DstBlock "Fcn" DstPort 1 } Line { SrcBlock "Fcn" SrcPort 1 DstBlock "out_1" DstPort 1 } Annotation { Position [372, 82] VerticalAlignment "top" ForegroundColor "red" Text "WARNING: THE INPUT SHOULD BE A VECTOR W" "ITH 2 COMPONENTS" DropShadow on FontName "Arial" FontSize 14 } } } Block { BlockType Outport Name "out_1" Position [505, 59, 525, 81] ForegroundColor "green" DropShadow on FontName "Arial" FontSize 14 Port "1" OutputWhenDisabled "held" InitialOutput "0" } Line { SrcBlock "OBSERVER" SrcPort 1 Points [-114, 0] Branch { DstBlock "b(x)" DstPort 1 } Branch { Points [0, -135] DstBlock "[a(x)]^{-1}" DstPort 1 } } Line { SrcBlock "Product" SrcPort 1 Points [41, 0] Branch { DstBlock "out_1" DstPort 1 } Branch { Points [0, 200] DstBlock "OBSERVER" DstPort 1 } } Line { SrcBlock "[a(x)]^{-1}" SrcPort 1 Points [40, 0; 0, -60] DstBlock "Product" DstPort 2 } Line { SrcBlock "b(x)" SrcPort 1 Points [-25, 0; 0, -200] DstBlock "Sum" DstPort 2 } Line { SrcBlock "Sum" SrcPort 1 DstBlock "Product" DstPort 1 } Line { SrcBlock "in_1" SrcPort 1 DstBlock "Sum" DstPort 1 } } } Block { BlockType SubSystem Name "Reference" Ports [0, 1, 0, 0, 0] Position [20, 66, 70, 114] BackgroundColor "cyan" DropShadow on FontName "Arial" FontSize 14 ShowPortLabels off MaskType "Reference" MaskDescription "Reference" MaskHelp "This block generates a square wave with a user" " defined mean value." MaskPromptString "mean value Ro:|square wave frequency fsw [ra" "d/s]:| amplitude square wave asw:" MaskStyleString "edit,edit,edit" MaskTunableValueString "on,on,on" MaskCallbackString "||" MaskEnableString "on,on,on" MaskVisibilityString "on,on,on" MaskInitialization "Ro=@1;fsw=@2;asw=@3;" MaskDisplay "disp('REF')" MaskIconFrame on MaskIconOpaque on MaskIconRotate "none" MaskIconUnits "autoscale" MaskValueString "2|0.3|1" System { Name "Reference" Location [125, 159, 780, 337] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Clock Name "Clock" Position [40, 91, 65, 119] BackgroundColor "cyan" DropShadow on FontName "Arial" FontSize 14 DisplayTime off Decimation "10" } Block { BlockType Fcn Name "Fcn" Position [200, 71, 350, 139] BackgroundColor "cyan" DropShadow on FontName "Arial" FontSize 14 Expr "sin(u[1]*fsw)" } Block { BlockType Sum Name "Sum2" Ports [2, 1, 0, 0, 0] Position [525, 58, 545, 122] BackgroundColor "cyan" DropShadow on ShowName off FontName "Arial" FontSize 14 IconShape "rectangular" Inputs "++" SaturateOnIntegerOverflow on } Block { BlockType Step Name "reference mean value" Position [120, 12, 155, 38] BackgroundColor "cyan" DropShadow on FontName "Arial" FontSize 14 Time "0" Before "0" After "Ro" SampleTime "0" } Block { BlockType Relay Name "sign+amplification" Position [395, 76, 455, 134] BackgroundColor "cyan" FontName "Arial" FontSize 14 OnSwitchValue "0" OffSwitchValue "0" OnOutputValue "asw" OffOutputValue "-asw" } Block { BlockType Outport Name "out_1" Position [580, 76, 605, 104] ForegroundColor "green" DropShadow on FontName "Arial" FontSize 14 Port "1" OutputWhenDisabled "held" InitialOutput "0" } Line { SrcBlock "sign+amplification" SrcPort 1 DstBlock "Sum2" DstPort 2 } Line { SrcBlock "Fcn" SrcPort 1 DstBlock "sign+amplification" DstPort 1 } Line { SrcBlock "Clock" SrcPort 1 DstBlock "Fcn" DstPort 1 } Line { SrcBlock "Sum2" SrcPort 1 DstBlock "out_1" DstPort 1 } Line { SrcBlock "reference mean value" SrcPort 1 Points [335, 0; 0, 50] DstBlock "Sum2" DstPort 1 } } } Block { BlockType Scope Name "Scope2" Ports [1, 0, 0, 0, 0] Position [705, 160, 760, 230] BackgroundColor "green" DropShadow on ShowName off FontName "Arial" FontSize 14 Floating off Location [275, 280, 725, 594] Open off NumInputPorts "1" TickLabels "on" ZoomMode "on" List { ListType AxesTitles axes1 "%" } Grid "on" TimeRange "25.000000" YMin "-4" YMax "4" SaveToWorkspace off SaveName "ScopeData" DataFormat "Matrix" LimitMaxRows on MaxRows "5000" Decimation "1" SampleInput off SampleTime "0" } Block { BlockType Sum Name "Sum" Ports [2, 1, 0, 0, 0] Position [130, 78, 150, 127] ForegroundColor "red" DropShadow on ShowName off FontName "Arial" FontSize 14 IconShape "rectangular" Inputs "+-" SaturateOnIntegerOverflow on } Block { BlockType Sum Name "Sum1" Ports [2, 1, 0, 0, 0] Position [135, 268, 155, 317] ForegroundColor "red" DropShadow on ShowName off FontName "Arial" FontSize 14 IconShape "rectangular" Inputs "+-" SaturateOnIntegerOverflow on } Block { BlockType Sum Name "Sum2" Ports [2, 1, 0, 0, 0] Position [575, 258, 595, 307] ForegroundColor "red" DropShadow on ShowName off FontName "Arial" FontSize 14 IconShape "rectangular" Inputs "+-" SaturateOnIntegerOverflow on } Block { BlockType Sum Name "Sum5" Ports [2, 1, 0, 0, 0] Position [405, 208, 425, 252] BackgroundColor "yellow" DropShadow on ShowName off FontName "Arial" FontSize 14 IconShape "rectangular" Inputs "++" SaturateOnIntegerOverflow on } Block { BlockType Sum Name "Sum6" Ports [2, 1, 0, 0, 0] Position [415, 73, 435, 117] BackgroundColor "yellow" DropShadow on ShowName off FontName "Arial" FontSize 14 IconShape "rectangular" Inputs "++" SaturateOnIntegerOverflow on } Block { BlockType ToWorkspace Name "control" Position [230, 205, 270, 235] Orientation "left" BackgroundColor "green" DropShadow on ShowName off FontName "Arial" FontSize 14 VariableName "unl" Buffer "10000" Decimation "1" SampleTime "0" SaveFormat "Matrix" } Block { BlockType ToWorkspace Name "control1" Position [285, 21, 325, 49] Orientation "left" BackgroundColor "green" DropShadow on ShowName off FontName "Arial" FontSize 14 VariableName "ul" Buffer "10000" Decimation "1" SampleTime "0" SaveFormat "Matrix" } Block { BlockType ToWorkspace Name "plant" Position [630, 80, 670, 110] BackgroundColor "green" DropShadow on ShowName off FontName "Arial" FontSize 14 VariableName "yl" Buffer "20000" Decimation "1" SampleTime "0" SaveFormat "Matrix" } Block { BlockType ToWorkspace Name "plant2" Position [625, 235, 665, 265] BackgroundColor "green" DropShadow on ShowName off FontName "Arial" FontSize 14 VariableName "ynl" Buffer "20000" Decimation "1" SampleTime "0" SaveFormat "Matrix" } Block { BlockType ToWorkspace Name "ref" Position [145, 27, 185, 53] BackgroundColor "green" DropShadow on ShowName off FontName "Arial" FontSize 14 VariableName "r" Buffer "20000" Decimation "1" SampleTime "0" SaveFormat "Matrix" } Line { SrcBlock "Sum" SrcPort 1 DstBlock "Linear\ncontroller" DstPort 1 } Line { SrcBlock "Plant" SrcPort 1 Points [15, 0] Branch { Points [0, 86; -430, 0] DstBlock "Sum" DstPort 2 } Branch { Points [42, 0] Branch { DstBlock "plant" DstPort 1 } Branch { Points [0, 90] DstBlock "Mux" DstPort 1 } } } Line { SrcBlock "Nonlinear \nplant model " SrcPort 1 DstBlock "Sum2" DstPort 2 } Line { SrcBlock "Sum1" SrcPort 1 DstBlock "Q-BLOCK" DstPort 1 } Line { SrcBlock "Sum2" SrcPort 1 Points [10, 0; 0, 65; -515, 0; 0, -45] DstBlock "Sum1" DstPort 2 } Line { SrcBlock "Q-BLOCK" SrcPort 1 Points [5, 0] Branch { Points [50, 0; 0, -75] DstBlock "control" DstPort 1 } Branch { Points [110, 0] Branch { DstBlock "Nonlinear \nplant model " DstPort 1 } Branch { Points [0, -55] DstBlock "Sum5" DstPort 2 } } } Line { SrcBlock "Sum5" SrcPort 1 DstBlock "Plant " DstPort 1 } Line { SrcBlock "Plant " SrcPort 1 Points [15, 0; 0, 40] Branch { DstBlock "Sum2" DstPort 1 } Branch { Points [0, -35; 30, 0; 0, 15] Branch { DstBlock "plant2" DstPort 1 } Branch { Points [0, -45] DstBlock "Mux" DstPort 2 } } } Line { SrcBlock "Mux" SrcPort 1 DstBlock "Scope2" DstPort 1 } Line { SrcBlock "Reference" SrcPort 1 Points [-3, 0] Branch { Points [25, 0] Branch { DstBlock "Sum" DstPort 1 } Branch { Points [0, 190] DstBlock "Sum1" DstPort 1 } } Branch { Points [25, 0; 0, -50] DstBlock "ref" DstPort 1 } } Line { SrcBlock "Sum6" SrcPort 1 DstBlock "Plant" DstPort 1 } Line { SrcBlock "Disturbance" SrcPort 1 Points [-155, 0; 0, 45] Branch { DstBlock "Sum6" DstPort 1 } Branch { Points [0, 135] DstBlock "Sum5" DstPort 1 } } Line { SrcBlock "Linear\ncontroller" SrcPort 1 Points [62, 0] Branch { DstBlock "Sum6" DstPort 2 } Branch { Points [0, -70] DstBlock "control1" DstPort 1 } } Annotation { Position [397, 412] VerticalAlignment "top" ForegroundColor "red" Text "THE PLANT LINEAR MODEL IS GIVEN BY Go(s)=nplin(" "s)/dplin(s).\nTHE USER MUST PROVIDE nplin AND dpin, AS WELL AS REFERENCE AND " "DISTURBANCE DEFINITIONS\n (DOUBLE CLICK ON BLOCKS CONT, REF ADN PULSE RESPECT" "IVELY)" DropShadow on FontName "Arial" FontSize 14 } Annotation { Position [387, 362] VerticalAlignment "top" ForegroundColor "blue" Text "PERFORMANCE COMPARISON OF LINEAR AND NONLINEAR " "CONTROL DESIGN FOR A \n(SMOOOTH) NONLINEAR PLANT." DropShadow on FontName "Arial" FontSize 14 } } }