Model { Name "block420" Version 4.00 SampleTimeColors off LibraryLinkDisplay "none" WideLines on ShowLineDimensions off ShowPortDataTypes off ShowStorageClass off ExecutionOrder off RecordCoverage off CovPath "/" CovSaveName "covdata" CovMetricSettings "dw" CovNameIncrementing off CovHtmlReporting on BlockNameDataTip off BlockParametersDataTip off BlockDescriptionStringDataTip off ToolBar on StatusBar on BrowserShowLibraryLinks off BrowserLookUnderMasks off Created "Sun Mar 23 20:40:19 2003" UpdateHistory "UpdateHistoryNever" ModifiedByFormat "%" LastModifiedBy "Feng-Li Lian" ModifiedDateFormat "%" LastModifiedDate "Sun Mar 23 20:42:50 2003" ModelVersionFormat "1.%" ConfigurationManager "None" SimParamPage "Solver" StartTime "0.0" StopTime "999999" SolverMode "SingleTasking" Solver "ode23" RelTol "1e-3" AbsTol "1e-6" Refine "1" MaxStep "auto" MinStep "auto" MaxNumMinSteps "-1" InitialStep "auto" FixedStep "auto" MaxOrder 5 OutputOption "RefineOutputTimes" OutputTimes "[]" LoadExternalInput off ExternalInput "[t, u]" SaveTime off TimeSaveName "tout" SaveState off StateSaveName "xout" SaveOutput off OutputSaveName "yout" LoadInitialState off InitialState "xInitial" SaveFinalState off FinalStateName "xFinal" SaveFormat "Array" LimitDataPoints off MaxDataPoints "1000" Decimation "1" AlgebraicLoopMsg "warning" MinStepSizeMsg "warning" UnconnectedInputMsg "warning" UnconnectedOutputMsg "warning" UnconnectedLineMsg "warning" InheritedTsInSrcMsg "warning" SingleTaskRateTransMsg "none" MultiTaskRateTransMsg "error" IntegerOverflowMsg "warning" CheckForMatrixSingularity "none" UnnecessaryDatatypeConvMsg "none" Int32ToFloatConvMsg "warning" InvalidFcnCallConnMsg "error" SignalLabelMismatchMsg "none" LinearizationMsg "none" VectorMatrixConversionMsg "none" SfunCompatibilityCheckMsg "none" BlockPriorityViolationMsg "warning" ArrayBoundsChecking "none" ConsistencyChecking "none" ZeroCross on Profile off SimulationMode "normal" RTWSystemTargetFile "grt.tlc" RTWInlineParameters off RTWRetainRTWFile off RTWTemplateMakefile "grt_default_tmf" RTWMakeCommand "make_rtw" RTWGenerateCodeOnly off TLCProfiler off TLCDebug off TLCCoverage off AccelSystemTargetFile "accel.tlc" AccelTemplateMakefile "accel_default_tmf" AccelMakeCommand "make_rtw" TryForcingSFcnDF off ExtModeMexFile "ext_comm" ExtModeBatchMode off ExtModeTrigType "manual" ExtModeTrigMode "normal" 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 on ExtModeSkipDownloadWhenConnect off ExtModeLogAll on ExtModeAutoUpdateStatusClock on OptimizeBlockIOStorage on BufferReuse on ParameterPooling on BlockReductionOpt on RTWExpressionDepthLimit 5 BooleanDataType off 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 "block420" Location [121, 174, 621, 461] Open on ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "A4" PaperUnits "centimeters" ZoomFactor "100" ReportName "simulink-default.rpt" Block { BlockType SubSystem Name "Pulse" Ports [0, 1] Position [45, 203, 70, 227] DropShadow on ShowPortLabels off TreatAsAtomicUnit off RTWSystemCode "Auto" RTWFcnNameOpts "Auto" RTWFileNameOpts "Auto" MaskType "Pulse" MaskDescription "Pulse Generator." MaskHelp "Pulse generator which ensures pulse\\ntransitio" "ns are hit. Provides a vector of pulses when the height is entered as a vecto" "r.\\nUnmask to see how it works." MaskPromptString "Pulse width:|Pulse height:|Pulse start time:" MaskStyleString "edit,edit,edit" MaskTunableValueString "on,on,on" MaskCallbackString "||" MaskEnableString "on,on,on" MaskVisibilityString "on,on,on" MaskToolTipString "on,on,on" MaskInitialization "width=@1;height=@2;tstep=@3;" MaskDisplay "plot(-30,-10,100,100,[60,35,35,20,20,0],[20,20," "80,80,20,20])" MaskIconFrame on MaskIconOpaque on MaskIconRotate "none" MaskIconUnits "autoscale" MaskValueString "0.1|-10|25" MaskVariableAliases ",," System { Name "Pulse" Location [100, 215, 335, 385] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "A4" PaperUnits "centimeters" ZoomFactor "100" Block { BlockType Step Name "Step Input1" Position [65, 50, 85, 70] ShowName off Time "tstep" Before "0" After "height" SampleTime "-1" VectorParams1D on } Block { BlockType Step Name "Step Input2" Position [65, 105, 85, 125] ShowName off Time "tstep+width" Before "0" After "height" SampleTime "-1" VectorParams1D on } Block { BlockType Sum Name "Sum" Ports [2, 1] Position [145, 75, 165, 95] IconShape "rectangular" Inputs "+-" SaturateOnIntegerOverflow on } Block { BlockType Outport Name "out_1" Position [205, 75, 225, 95] Port "1" OutputWhenDisabled "held" InitialOutput "[]" } Line { SrcBlock "Sum" SrcPort 1 DstBlock "out_1" DstPort 1 } Line { SrcBlock "Step Input1" SrcPort 1 Points [15, 0; 0, 20] DstBlock "Sum" DstPort 1 } Line { SrcBlock "Step Input2" SrcPort 1 Points [25, 0; 0, -25] DstBlock "Sum" DstPort 2 } } } Block { BlockType SubSystem Name "Robot" Ports [2, 2] Position [235, 130, 265, 185] DropShadow on ShowPortLabels off TreatAsAtomicUnit off RTWSystemCode "Auto" RTWFcnNameOpts "Auto" RTWFileNameOpts "Auto" System { Name "Robot" Location [42, 365, 453, 546] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "A4" PaperUnits "centimeters" ZoomFactor "100" Block { BlockType Inport Name "u" Position [30, 40, 50, 60] Port "1" LatchInput off Interpolate on } Block { BlockType Inport Name "v" Position [30, 85, 50, 105] Port "2" LatchInput off Interpolate on } Block { BlockType Demux Name "Demux" Ports [1, 2] Position [260, 56, 300, 89] Outputs "[1 3]" BusSelectionMode off } Block { BlockType Mux Name "Mux2" Ports [2, 1] Position [90, 56, 120, 89] DropShadow on ShowName off Inputs "2" DisplayOption "none" } Block { BlockType StateSpace Name "robmech" Position [150, 54, 225, 96] A "om0*[0 1 -1; al-1 -be1 be1; al be2 -be2]" B "[0 0; ga de; 0 0]" C "[0 0 om0;1 0 0; 0 1 0; 0 0 1]" D "[0 0; 0 0; 0 0; 0 0]" X0 "0" AbsoluteTolerance "auto" Realization "auto" } Block { BlockType Outport Name "y" Position [350, 25, 370, 45] Port "1" OutputWhenDisabled "held" InitialOutput "[]" } Block { BlockType Outport Name "x" Position [350, 70, 370, 90] Port "2" OutputWhenDisabled "held" InitialOutput "[]" } Line { SrcBlock "Demux" SrcPort 1 Points [15, 0; 0, -30] DstBlock "y" DstPort 1 } Line { SrcBlock "u" SrcPort 1 Points [5, 0; 0, 15] DstBlock "Mux2" DstPort 1 } Line { SrcBlock "v" SrcPort 1 Points [5, 0; 0, -15] DstBlock "Mux2" DstPort 2 } Line { SrcBlock "Demux" SrcPort 2 DstBlock "x" DstPort 1 } Line { SrcBlock "Mux2" SrcPort 1 DstBlock "robmech" DstPort 1 } Line { SrcBlock "robmech" SrcPort 1 DstBlock "Demux" DstPort 1 } } } Block { BlockType Step Name "Step Input" Position [50, 120, 70, 140] DropShadow on ShowName off Time "0" Before "0" After "1" SampleTime "-1" VectorParams1D on } Block { BlockType SubSystem Name "dstfb3" Ports [2, 1] Position [170, 115, 200, 170] BackgroundColor "magenta" DropShadow on ShowPortLabels off TreatAsAtomicUnit off RTWSystemCode "Auto" RTWFcnNameOpts "Auto" RTWFileNameOpts "Auto" System { Name "dstfb3" Location [596, 457, 952, 707] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "magenta" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "A4" PaperUnits "centimeters" ZoomFactor "100" Block { BlockType Inport Name "uc" Position [20, 40, 40, 60] Port "1" LatchInput off Interpolate on } Block { BlockType Inport Name "x" Position [20, 140, 40, 160] Port "2" LatchInput off Interpolate on } Block { BlockType Demux Name "Demux" Ports [1, 3] Position [70, 134, 110, 166] BackgroundColor "magenta" ShowName off Outputs "3" BusSelectionMode off } Block { BlockType Sum Name "Sum2" Ports [4, 1] Position [280, 82, 300, 128] BackgroundColor "magenta" DropShadow on ShowName off IconShape "rectangular" Inputs "+---" SaturateOnIntegerOverflow on } Block { BlockType ZeroOrderHold Name "ZoH4" Position [140, 35, 180, 65] BackgroundColor "magenta" DropShadow on ShowName off SampleTime "[h t0]" } Block { BlockType ZeroOrderHold Name "ZoH5" Position [140, 85, 180, 115] BackgroundColor "magenta" DropShadow on ShowName off SampleTime "[h t0]" } Block { BlockType ZeroOrderHold Name "ZoH6" Position [140, 135, 180, 165] BackgroundColor "magenta" DropShadow on ShowName off SampleTime "[h t0]" } Block { BlockType ZeroOrderHold Name "ZoH7" Position [140, 185, 180, 215] BackgroundColor "magenta" DropShadow on ShowName off SampleTime "[h t0]" } Block { BlockType Gain Name "l1" Position [200, 85, 230, 115] BackgroundColor "magenta" DropShadow on Gain "l1" Multiplication "Element-wise(K.*u)" SaturateOnIntegerOverflow on } Block { BlockType Gain Name "l2" Position [200, 135, 230, 165] BackgroundColor "magenta" DropShadow on Gain "l2" Multiplication "Element-wise(K.*u)" SaturateOnIntegerOverflow on } Block { BlockType Gain Name "l3" Position [200, 185, 230, 215] BackgroundColor "magenta" DropShadow on Gain "l3" Multiplication "Element-wise(K.*u)" SaturateOnIntegerOverflow on } Block { BlockType Gain Name "lc" Position [200, 35, 230, 65] BackgroundColor "magenta" DropShadow on Gain "lc" Multiplication "Element-wise(K.*u)" SaturateOnIntegerOverflow on } Block { BlockType Outport Name "u" Position [330, 95, 350, 115] Port "1" OutputWhenDisabled "held" InitialOutput "[]" } Line { SrcBlock "Demux" SrcPort 3 Points [10, 0] DstBlock "ZoH7" DstPort 1 } Line { SrcBlock "Demux" SrcPort 2 DstBlock "ZoH6" DstPort 1 } Line { SrcBlock "Demux" SrcPort 1 Points [10, 0] DstBlock "ZoH5" DstPort 1 } Line { SrcBlock "x" SrcPort 1 DstBlock "Demux" DstPort 1 } Line { SrcBlock "l3" SrcPort 1 Points [30, 0] DstBlock "Sum2" DstPort 4 } Line { SrcBlock "ZoH7" SrcPort 1 DstBlock "l3" DstPort 1 } Line { SrcBlock "l1" SrcPort 1 DstBlock "Sum2" DstPort 2 } Line { SrcBlock "l2" SrcPort 1 Points [20, 0; 0, -40] DstBlock "Sum2" DstPort 3 } Line { SrcBlock "ZoH6" SrcPort 1 DstBlock "l2" DstPort 1 } Line { SrcBlock "ZoH5" SrcPort 1 DstBlock "l1" DstPort 1 } Line { SrcBlock "lc" SrcPort 1 Points [20, 0; 0, 40] DstBlock "Sum2" DstPort 1 } Line { SrcBlock "ZoH4" SrcPort 1 DstBlock "lc" DstPort 1 } Line { SrcBlock "uc" SrcPort 1 DstBlock "ZoH4" DstPort 1 } Line { SrcBlock "Sum2" SrcPort 1 DstBlock "u" DstPort 1 } } } Block { BlockType Outport Name "u" Position [330, 135, 350, 155] Port "1" OutputWhenDisabled "held" InitialOutput "[]" } Block { BlockType Outport Name "u1" Position [265, 90, 285, 110] Port "2" OutputWhenDisabled "held" InitialOutput "[]" } Block { BlockType Outport Name "u2" Position [165, 60, 185, 80] Port "3" OutputWhenDisabled "held" InitialOutput "[]" } Line { SrcBlock "Robot" SrcPort 1 DstBlock "u" DstPort 1 } Line { SrcBlock "dstfb3" SrcPort 1 Points [0, 0] Branch { Points [10, 0; 0, -45] DstBlock "u1" DstPort 1 } Branch { DstBlock "Robot" DstPort 1 } } Line { SrcBlock "Step Input" SrcPort 1 Points [0, 0] Branch { Points [55, 0; 0, -60] DstBlock "u2" DstPort 1 } Branch { DstBlock "dstfb3" DstPort 1 } } Line { SrcBlock "Pulse" SrcPort 1 Points [140, 0; 0, -45] DstBlock "Robot" DstPort 2 } Line { SrcBlock "Robot" SrcPort 2 Points [36, 0; 0, 75; -175, 0; 0, -90] DstBlock "dstfb3" DstPort 2 } } }