Model { Name "Aeropendulum" Version 7.7 MdlSubVersion 0 GraphicalInterface { NumRootInports 0 NumRootOutports 0 ParameterArgumentNames "" ComputedModelVersion "1.173" NumModelReferences 0 NumTestPointedSignals 0 } Description "AeroPendulum Controller \n-Phase lead\n-Phase lag\n-Proportional control\n\nAll controllers working!" SavedCharacterEncoding "windows-1252" SaveDefaultBlockParams on ScopeRefreshTime 0.035000 OverrideScopeRefreshTime on DisableAllScopes off DataTypeOverride "UseLocalSettings" DataTypeOverrideAppliesTo "AllNumericTypes" MinMaxOverflowLogging "UseLocalSettings" MinMaxOverflowArchiveMode "Overwrite" MaxMDLFileLineLength 120 Created "Mon Nov 02 16:08:06 2009" Creator "Josh Gill" UpdateHistory "UpdateHistoryNever" ModifiedByFormat "%" LastModifiedBy "MEMS lab" ModifiedDateFormat "%" LastModifiedDate "Thu Jul 21 22:25:01 2011" RTWModifiedTimeStamp 233180319 ModelVersionFormat "1.%" ConfigurationManager "None" SampleTimeColors off SampleTimeAnnotations off LibraryLinkDisplay "none" WideLines off ShowLineDimensions off ShowPortDataTypes off ShowLoopsOnError on IgnoreBidirectionalLines off ShowStorageClass off ShowTestPointIcons off ShowSignalResolutionIcons on ShowViewerIcons on SortedOrder off ExecutionContextIcon off ShowLinearizationAnnotations on BlockNameDataTip off BlockParametersDataTip off BlockDescriptionStringDataTip off ToolBar on StatusBar on BrowserShowLibraryLinks off BrowserLookUnderMasks off SimulationMode "external" LinearizationMsg "none" Profile off ParamWorkspaceSource "MATLABWorkspace" AccelSystemTargetFile "accel.tlc" AccelTemplateMakefile "accel_default_tmf" AccelMakeCommand "make_rtw" TryForcingSFcnDF off RecordCoverage off CovPath "/" CovSaveName "covdata" CovMetricSettings "dw" CovNameIncrementing off CovHtmlReporting on CovForceBlockReductionOff on covSaveCumulativeToWorkspaceVar on CovSaveSingleToWorkspaceVar on CovCumulativeVarName "covCumulativeData" CovCumulativeReport off CovReportOnPause on CovModelRefEnable "Off" CovExternalEMLEnable off ExtModeBatchMode off ExtModeEnableFloating off ExtModeTrigType "manual" ExtModeTrigMode "normal" ExtModeTrigPort "1" ExtModeTrigElement "any" ExtModeTrigDuration 10000 ExtModeTrigDurationFloating "auto" ExtModeTrigHoldOff 0 ExtModeTrigDelay 0 ExtModeTrigDirection "rising" ExtModeTrigLevel 0 ExtModeArchiveMode "off" ExtModeAutoIncOneShot off ExtModeIncDirWhenArm off ExtModeAddSuffixToVar off ExtModeWriteAllDataToWs off ExtModeArmWhenConnect on ExtModeSkipDownloadWhenConnect off ExtModeLogAll off ExtModeAutoUpdateStatusClock on BufferReuse on ShowModelReferenceBlockVersion off ShowModelReferenceBlockIO off Array { Type "Handle" Dimension 2 Simulink.ConfigSet { $ObjectID 1 Version "1.11.0" Array { Type "Handle" Dimension 8 Simulink.SolverCC { $ObjectID 2 Version "1.11.0" StartTime "0.0" StopTime "60" AbsTol "auto" FixedStep "auto" InitialStep "auto" MaxNumMinSteps "-1" MaxOrder 5 ZcThreshold "auto" ConsecutiveZCsStepRelTol "10*128*eps" MaxConsecutiveZCs "1000" ExtrapolationOrder 4 NumberNewtonIterations 1 MaxStep "auto" MinStep "auto" MaxConsecutiveMinStep "1" RelTol "1e-3" SolverMode "Auto" ConcurrentTasks off Solver "FixedStepDiscrete" SolverName "FixedStepDiscrete" SolverJacobianMethodControl "auto" ShapePreserveControl "DisableAll" ZeroCrossControl "UseLocalSettings" ZeroCrossAlgorithm "Nonadaptive" AlgebraicLoopSolver "TrustRegion" SolverResetMethod "Fast" PositivePriorityOrder off AutoInsertRateTranBlk off SampleTimeConstraint "Unconstrained" InsertRTBMode "Whenever possible" } Simulink.DataIOCC { $ObjectID 3 Version "1.11.0" Decimation "1" ExternalInput "[t, u]" FinalStateName "xFinal" InitialState "xInitial" LimitDataPoints on MaxDataPoints "1000" LoadExternalInput off LoadInitialState off SaveFinalState off SaveCompleteFinalSimState off SaveFormat "Array" SignalLoggingSaveFormat "ModelDataLogs" SaveOutput on SaveState off SignalLogging on DSMLogging on InspectSignalLogs off SaveTime on ReturnWorkspaceOutputs off StateSaveName "xout" TimeSaveName "tout" OutputSaveName "yout" SignalLoggingName "logsout" DSMLoggingName "dsmout" OutputOption "RefineOutputTimes" OutputTimes "[]" ReturnWorkspaceOutputsName "out" Refine "1" } Simulink.OptimizationCC { $ObjectID 4 Version "1.11.0" Array { Type "Cell" Dimension 8 Cell "PassReuseOutputArgsAs" Cell "PassReuseOutputArgsThreshold" Cell "ZeroExternalMemoryAtStartup" Cell "ZeroInternalMemoryAtStartup" Cell "OptimizeModelRefInitCode" Cell "NoFixptDivByZeroProtection" Cell "BooleansAsBitfields" Cell "UseSpecifiedMinMax" PropName "DisabledProps" } BlockReduction on BooleanDataType on ConditionallyExecuteInputs on InlineParams off UseIntDivNetSlope off UseSpecifiedMinMax off InlineInvariantSignals off OptimizeBlockIOStorage on BufferReuse on EnhancedBackFolding off StrengthReduction off ExpressionFolding on BooleansAsBitfields off BitfieldContainerType "uint_T" EnableMemcpy on MemcpyThreshold 64 PassReuseOutputArgsAs "Structure reference" ExpressionDepthLimit 2147483647 FoldNonRolledExpr on LocalBlockOutputs on RollThreshold 5 SystemCodeInlineAuto off StateBitsets off DataBitsets off UseTempVars off ZeroExternalMemoryAtStartup on ZeroInternalMemoryAtStartup on InitFltsAndDblsToZero off NoFixptDivByZeroProtection off EfficientFloat2IntCast off EfficientMapNaN2IntZero on OptimizeModelRefInitCode off LifeSpan "inf" MaxStackSize "Inherit from target" BufferReusableBoundary on SimCompilerOptimization "Off" AccelVerboseBuild off AccelParallelForEachSubsystem on } Simulink.DebuggingCC { $ObjectID 5 Version "1.11.0" RTPrefix "error" ConsistencyChecking "none" ArrayBoundsChecking "none" SignalInfNanChecking "none" SignalRangeChecking "none" ReadBeforeWriteMsg "UseLocalSettings" WriteAfterWriteMsg "UseLocalSettings" WriteAfterReadMsg "UseLocalSettings" AlgebraicLoopMsg "warning" ArtificialAlgebraicLoopMsg "warning" SaveWithDisabledLinksMsg "warning" SaveWithParameterizedLinksMsg "warning" CheckSSInitialOutputMsg on UnderspecifiedInitializationDetection "Classic" MergeDetectMultiDrivingBlocksExec "none" CheckExecutionContextPreStartOutputMsg off CheckExecutionContextRuntimeOutputMsg off SignalResolutionControl "UseLocalSettings" BlockPriorityViolationMsg "warning" MinStepSizeMsg "warning" TimeAdjustmentMsg "none" MaxConsecutiveZCsMsg "error" MaskedZcDiagnostic "warning" IgnoredZcDiagnostic "warning" SolverPrmCheckMsg "warning" InheritedTsInSrcMsg "warning" DiscreteInheritContinuousMsg "warning" MultiTaskDSMMsg "error" MultiTaskCondExecSysMsg "error" MultiTaskRateTransMsg "error" SingleTaskRateTransMsg "none" TasksWithSamePriorityMsg "warning" SigSpecEnsureSampleTimeMsg "warning" CheckMatrixSingularityMsg "none" IntegerOverflowMsg "warning" Int32ToFloatConvMsg "warning" ParameterDowncastMsg "error" ParameterOverflowMsg "error" ParameterUnderflowMsg "none" ParameterPrecisionLossMsg "warning" ParameterTunabilityLossMsg "warning" FixptConstUnderflowMsg "none" FixptConstOverflowMsg "none" FixptConstPrecisionLossMsg "none" UnderSpecifiedDataTypeMsg "none" UnnecessaryDatatypeConvMsg "none" VectorMatrixConversionMsg "none" InvalidFcnCallConnMsg "error" FcnCallInpInsideContextMsg "Use local settings" SignalLabelMismatchMsg "none" UnconnectedInputMsg "warning" UnconnectedOutputMsg "warning" UnconnectedLineMsg "warning" SFcnCompatibilityMsg "none" UniqueDataStoreMsg "none" BusObjectLabelMismatch "warning" RootOutportRequireBusObject "warning" AssertControl "UseLocalSettings" EnableOverflowDetection off ModelReferenceIOMsg "none" ModelReferenceMultiInstanceNormalModeStructChecksumCheck "error" ModelReferenceVersionMismatchMessage "none" ModelReferenceIOMismatchMessage "none" ModelReferenceCSMismatchMessage "none" UnknownTsInhSupMsg "warning" ModelReferenceDataLoggingMessage "warning" ModelReferenceSymbolNameMessage "warning" ModelReferenceExtraNoncontSigs "error" StateNameClashWarn "warning" SimStateInterfaceChecksumMismatchMsg "warning" SimStateOlderReleaseMsg "error" InitInArrayFormatMsg "warning" StrictBusMsg "Warning" BusNameAdapt "WarnAndRepair" NonBusSignalsTreatedAsBus "none" LoggingUnavailableSignals "error" BlockIODiagnostic "none" SFUnusedDataAndEventsDiag "warning" SFUnexpectedBacktrackingDiag "warning" SFInvalidInputDataAccessInChartInitDiag "warning" SFNoUnconditionalDefaultTransitionDiag "warning" SFTransitionOutsideNaturalParentDiag "warning" } Simulink.HardwareCC { $ObjectID 6 Version "1.11.0" ProdBitPerChar 8 ProdBitPerShort 16 ProdBitPerInt 32 ProdBitPerLong 32 ProdBitPerFloat 32 ProdBitPerDouble 64 ProdBitPerPointer 32 ProdLargestAtomicInteger "Char" ProdLargestAtomicFloat "None" ProdIntDivRoundTo "Zero" ProdEndianess "LittleEndian" ProdWordSize 32 ProdShiftRightIntArith on ProdHWDeviceType "Generic->32-bit x86 compatible" TargetBitPerChar 8 TargetBitPerShort 16 TargetBitPerInt 32 TargetBitPerLong 32 TargetBitPerFloat 32 TargetBitPerDouble 64 TargetBitPerPointer 32 TargetLargestAtomicInteger "Char" TargetLargestAtomicFloat "None" TargetShiftRightIntArith on TargetIntDivRoundTo "Undefined" TargetEndianess "Unspecified" TargetWordSize 32 TargetTypeEmulationWarnSuppressLevel 0 TargetPreprocMaxBitsSint 32 TargetPreprocMaxBitsUint 32 TargetHWDeviceType "Specified" TargetUnknown off ProdEqTarget on } Simulink.ModelReferenceCC { $ObjectID 7 Version "1.11.0" UpdateModelReferenceTargets "IfOutOfDateOrStructuralChange" CheckModelReferenceTargetMessage "error" EnableParallelModelReferenceBuilds off ParallelModelReferenceErrorOnInvalidPool on ParallelModelReferenceMATLABWorkerInit "None" ModelReferenceNumInstancesAllowed "Multi" PropagateVarSize "Infer from blocks in model" ModelReferencePassRootInputsByReference on ModelReferenceMinAlgLoopOccurrences off PropagateSignalLabelsOutOfModel off SupportModelReferenceSimTargetCustomCode off } Simulink.SFSimCC { $ObjectID 8 Version "1.11.0" SFSimEnableDebug on SFSimOverflowDetection on SFSimEcho on SimBlas on SimCtrlC on SimExtrinsic on SimIntegrity on SimUseLocalCustomCode off SimParseCustomCode on SimBuildMode "sf_incremental_build" } Simulink.RTWCC { $BackupClass "Simulink.RTWCC" $ObjectID 9 Version "1.11.0" Array { Type "Cell" Dimension 8 Cell "IncludeHyperlinkInReport" Cell "GenerateTraceInfo" Cell "GenerateTraceReport" Cell "GenerateTraceReportSl" Cell "GenerateTraceReportSf" Cell "GenerateTraceReportEml" Cell "GenerateSLWebview" Cell "GenerateCodeMetricsReport" PropName "DisabledProps" } SystemTargetFile "rtwin.tlc" GenCodeOnly off MakeCommand "make_rtw" GenerateMakefile on TemplateMakefile "rtwin.tmf" Description "Real-Time Windows Target" GenerateReport off SaveLog off RTWVerbose on RetainRTWFile off ProfileTLC off TLCDebug off TLCCoverage off TLCAssert off ProcessScriptMode "Default" ConfigurationMode "Optimized" ProcessScript "rtwin_make_rtw_hook" ConfigAtBuild off RTWUseLocalCustomCode off RTWUseSimCustomCode off IncludeHyperlinkInReport off LaunchReport off TargetLang "C" IncludeBusHierarchyInRTWFileBlockHierarchyMap off IncludeERTFirstTime off GenerateTraceInfo off GenerateTraceReport off GenerateTraceReportSl off GenerateTraceReportSf off GenerateTraceReportEml off GenerateCodeInfo off GenerateSLWebview off GenerateCodeMetricsReport off RTWCompilerOptimization "On" CheckMdlBeforeBuild "Off" CustomRebuildMode "OnUpdate" Array { Type "Handle" Dimension 2 Simulink.CodeAppCC { $ObjectID 10 Version "1.11.0" Array { Type "Cell" Dimension 21 Cell "IgnoreCustomStorageClasses" Cell "IgnoreTestpoints" Cell "InsertBlockDesc" Cell "SFDataObjDesc" Cell "SimulinkDataObjDesc" Cell "DefineNamingRule" Cell "SignalNamingRule" Cell "ParamNamingRule" Cell "InlinedPrmAccess" Cell "CustomSymbolStr" Cell "CustomSymbolStrGlobalVar" Cell "CustomSymbolStrType" Cell "CustomSymbolStrField" Cell "CustomSymbolStrFcn" Cell "CustomSymbolStrBlkIO" Cell "CustomSymbolStrTmpVar" Cell "CustomSymbolStrMacro" Cell "InsertPolySpaceComments" Cell "MATLABFcnDesc" Cell "CustomSymbolStrFcnArg" Cell "ReqsInCode" PropName "DisabledProps" } ForceParamTrailComments off GenerateComments on IgnoreCustomStorageClasses on IgnoreTestpoints off IncHierarchyInIds off MaxIdLength 95 PreserveName off PreserveNameWithParent off ShowEliminatedStatement off IncAutoGenComments off SimulinkDataObjDesc off SFDataObjDesc off MATLABFcnDesc off IncDataTypeInIds off MangleLength 1 CustomSymbolStrGlobalVar "$R$N$M" CustomSymbolStrType "$N$R$M" CustomSymbolStrField "$N$M" CustomSymbolStrFcn "$R$N$M$F" CustomSymbolStrFcnArg "rt$I$N$M" CustomSymbolStrBlkIO "rtb_$N$M" CustomSymbolStrTmpVar "$N$M" CustomSymbolStrMacro "$R$N$M" DefineNamingRule "None" ParamNamingRule "None" SignalNamingRule "None" InsertBlockDesc off InsertPolySpaceComments off SimulinkBlockComments on MATLABSourceComments off EnableCustomComments off InlinedPrmAccess "Literals" ReqsInCode off UseSimReservedNames off } RTWinTarget.RTWinTargetCC { $BackupClass "Simulink.TargetCC" $ObjectID 11 Version "1.11.0" Array { Type "Cell" Dimension 16 Cell "IncludeMdlTerminateFcn" Cell "CombineOutputUpdateFcns" Cell "SuppressErrorStatus" Cell "ERTCustomFileBanners" Cell "GenerateSampleERTMain" Cell "GenerateTestInterfaces" Cell "ModelStepFunctionPrototypeControlCompliant" Cell "CPPClassGenCompliant" Cell "MultiInstanceERTCode" Cell "PurelyIntegerCode" Cell "PortableWordSizes" Cell "SupportComplex" Cell "SupportAbsoluteTime" Cell "SupportContinuousTime" Cell "SupportNonInlinedSFcns" Cell "GeneratePreprocessorConditionals" PropName "DisabledProps" } TargetFcnLib "ansi_tfl_table_tmw.mat" TargetLibSuffix "_rtwin.lib" TargetPreCompLibLocation "C:\\Program Files\\MATLAB\\R2011a\\toolbox\\rtw\\targets\\rtwin\\lib\\win32" TargetFunctionLibrary "ANSI_C" UtilityFuncGeneration "Auto" ERTMultiwordTypeDef "System defined" FunctionExecutionProfile off CodeExecutionProfiling off ERTCodeCoverageTool "None" ERTMultiwordLength 256 MultiwordLength 2048 GenerateFullHeader on GenerateSampleERTMain off GenerateTestInterfaces off IsPILTarget off ModelReferenceCompliant on ParMdlRefBuildCompliant off CompOptLevelCompliant on IncludeMdlTerminateFcn on GeneratePreprocessorConditionals "Disable all" CombineOutputUpdateFcns off CombineSignalStateStructs off SuppressErrorStatus off ERTFirstTimeCompliant off IncludeFileDelimiter "Auto" ERTCustomFileBanners off SupportAbsoluteTime on LogVarNameModifier "rt_" MatFileLogging off MultiInstanceERTCode off SupportNonFinite on SupportComplex on PurelyIntegerCode off SupportContinuousTime on SupportNonInlinedSFcns on SupportVariableSizeSignals off EnableShiftOperators on ParenthesesLevel "Nominal" PortableWordSizes off ModelStepFunctionPrototypeControlCompliant off CPPClassGenCompliant off AutosarCompliant off CCListing off RebuildAll off ExtMode on ExtModeTransport 0 ExtModeStaticAlloc off ExtModeStaticAllocSize 1000000 ExtModeTesting off ExtModeMexFile "rtwinext" ExtModeIntrfLevel "Level1" } PropName "Components" } } PropName "Components" } Name "RTWin" ExtraOptions "-aGenerateTraceInfo=0 -aIgnoreTestpoints=0 " CurrentDlgPage "Solver" ConfigPrmDlgPosition [ 118, 95, 1350, 614 ] } Simulink.ConfigSet { $ObjectID 12 Version "1.11.0" Array { Type "Handle" Dimension 8 Simulink.SolverCC { $ObjectID 13 Version "1.11.0" StartTime "0.0" StopTime "10.0" AbsTol "auto" FixedStep "auto" InitialStep "auto" MaxNumMinSteps "-1" MaxOrder 5 ZcThreshold "auto" ConsecutiveZCsStepRelTol "10*128*eps" MaxConsecutiveZCs "1000" ExtrapolationOrder 4 NumberNewtonIterations 1 MaxStep "auto" MinStep "auto" MaxConsecutiveMinStep "1" RelTol "1e-3" SolverMode "Auto" ConcurrentTasks off Solver "ode45" SolverName "ode45" SolverJacobianMethodControl "auto" ShapePreserveControl "DisableAll" ZeroCrossControl "UseLocalSettings" ZeroCrossAlgorithm "Nonadaptive" AlgebraicLoopSolver "TrustRegion" SolverResetMethod "Fast" PositivePriorityOrder off AutoInsertRateTranBlk off SampleTimeConstraint "Unconstrained" InsertRTBMode "Whenever possible" } Simulink.DataIOCC { $ObjectID 14 Version "1.11.0" Decimation "1" ExternalInput "[t, u]" FinalStateName "xFinal" InitialState "xInitial" LimitDataPoints on MaxDataPoints "1000" LoadExternalInput off LoadInitialState off SaveFinalState off SaveCompleteFinalSimState off SaveFormat "Array" SignalLoggingSaveFormat "ModelDataLogs" SaveOutput on SaveState off SignalLogging on DSMLogging on InspectSignalLogs off SaveTime on ReturnWorkspaceOutputs off StateSaveName "xout" TimeSaveName "tout" OutputSaveName "yout" SignalLoggingName "logsout" DSMLoggingName "dsmout" OutputOption "RefineOutputTimes" OutputTimes "[]" ReturnWorkspaceOutputsName "out" Refine "1" } Simulink.OptimizationCC { $ObjectID 15 Version "1.11.0" Array { Type "Cell" Dimension 6 Cell "PassReuseOutputArgsAs" Cell "PassReuseOutputArgsThreshold" Cell "ZeroExternalMemoryAtStartup" Cell "ZeroInternalMemoryAtStartup" Cell "OptimizeModelRefInitCode" Cell "NoFixptDivByZeroProtection" PropName "DisabledProps" } BlockReduction on BooleanDataType on ConditionallyExecuteInputs on InlineParams off UseIntDivNetSlope off UseSpecifiedMinMax off InlineInvariantSignals off OptimizeBlockIOStorage on BufferReuse on EnhancedBackFolding off StrengthReduction off ExpressionFolding on BooleansAsBitfields off BitfieldContainerType "uint_T" EnableMemcpy on MemcpyThreshold 64 PassReuseOutputArgsAs "Structure reference" ExpressionDepthLimit 2147483647 FoldNonRolledExpr on LocalBlockOutputs on RollThreshold 5 SystemCodeInlineAuto off StateBitsets off DataBitsets off UseTempVars off ZeroExternalMemoryAtStartup on ZeroInternalMemoryAtStartup on InitFltsAndDblsToZero off NoFixptDivByZeroProtection off EfficientFloat2IntCast off EfficientMapNaN2IntZero on OptimizeModelRefInitCode off LifeSpan "inf" MaxStackSize "Inherit from target" BufferReusableBoundary on SimCompilerOptimization "Off" AccelVerboseBuild off AccelParallelForEachSubsystem on } Simulink.DebuggingCC { $ObjectID 16 Version "1.11.0" RTPrefix "error" ConsistencyChecking "none" ArrayBoundsChecking "none" SignalInfNanChecking "none" SignalRangeChecking "none" ReadBeforeWriteMsg "UseLocalSettings" WriteAfterWriteMsg "UseLocalSettings" WriteAfterReadMsg "UseLocalSettings" AlgebraicLoopMsg "warning" ArtificialAlgebraicLoopMsg "warning" SaveWithDisabledLinksMsg "warning" SaveWithParameterizedLinksMsg "warning" CheckSSInitialOutputMsg on UnderspecifiedInitializationDetection "Classic" MergeDetectMultiDrivingBlocksExec "none" CheckExecutionContextPreStartOutputMsg off CheckExecutionContextRuntimeOutputMsg off SignalResolutionControl "UseLocalSettings" BlockPriorityViolationMsg "warning" MinStepSizeMsg "warning" TimeAdjustmentMsg "none" MaxConsecutiveZCsMsg "error" MaskedZcDiagnostic "warning" IgnoredZcDiagnostic "warning" SolverPrmCheckMsg "warning" InheritedTsInSrcMsg "warning" DiscreteInheritContinuousMsg "warning" MultiTaskDSMMsg "error" MultiTaskCondExecSysMsg "error" MultiTaskRateTransMsg "error" SingleTaskRateTransMsg "none" TasksWithSamePriorityMsg "warning" SigSpecEnsureSampleTimeMsg "warning" CheckMatrixSingularityMsg "none" IntegerOverflowMsg "warning" Int32ToFloatConvMsg "warning" ParameterDowncastMsg "error" ParameterOverflowMsg "error" ParameterUnderflowMsg "none" ParameterPrecisionLossMsg "warning" ParameterTunabilityLossMsg "warning" FixptConstUnderflowMsg "none" FixptConstOverflowMsg "none" FixptConstPrecisionLossMsg "none" UnderSpecifiedDataTypeMsg "none" UnnecessaryDatatypeConvMsg "none" VectorMatrixConversionMsg "none" InvalidFcnCallConnMsg "error" FcnCallInpInsideContextMsg "Use local settings" SignalLabelMismatchMsg "none" UnconnectedInputMsg "warning" UnconnectedOutputMsg "warning" UnconnectedLineMsg "warning" SFcnCompatibilityMsg "none" UniqueDataStoreMsg "none" BusObjectLabelMismatch "warning" RootOutportRequireBusObject "warning" AssertControl "UseLocalSettings" EnableOverflowDetection off ModelReferenceIOMsg "none" ModelReferenceMultiInstanceNormalModeStructChecksumCheck "error" ModelReferenceVersionMismatchMessage "none" ModelReferenceIOMismatchMessage "none" ModelReferenceCSMismatchMessage "none" UnknownTsInhSupMsg "warning" ModelReferenceDataLoggingMessage "warning" ModelReferenceSymbolNameMessage "warning" ModelReferenceExtraNoncontSigs "error" StateNameClashWarn "warning" SimStateInterfaceChecksumMismatchMsg "warning" SimStateOlderReleaseMsg "error" InitInArrayFormatMsg "warning" StrictBusMsg "Warning" BusNameAdapt "WarnAndRepair" NonBusSignalsTreatedAsBus "none" LoggingUnavailableSignals "error" BlockIODiagnostic "none" SFUnusedDataAndEventsDiag "warning" SFUnexpectedBacktrackingDiag "warning" SFInvalidInputDataAccessInChartInitDiag "warning" SFNoUnconditionalDefaultTransitionDiag "warning" SFTransitionOutsideNaturalParentDiag "warning" } Simulink.HardwareCC { $ObjectID 17 Version "1.11.0" ProdBitPerChar 8 ProdBitPerShort 16 ProdBitPerInt 32 ProdBitPerLong 32 ProdBitPerFloat 32 ProdBitPerDouble 64 ProdBitPerPointer 32 ProdLargestAtomicInteger "Char" ProdLargestAtomicFloat "None" ProdIntDivRoundTo "Undefined" ProdEndianess "Unspecified" ProdWordSize 32 ProdShiftRightIntArith on ProdHWDeviceType "32-bit Generic" TargetBitPerChar 8 TargetBitPerShort 16 TargetBitPerInt 32 TargetBitPerLong 32 TargetBitPerFloat 32 TargetBitPerDouble 64 TargetBitPerPointer 32 TargetLargestAtomicInteger "Char" TargetLargestAtomicFloat "None" TargetShiftRightIntArith on TargetIntDivRoundTo "Undefined" TargetEndianess "Unspecified" TargetWordSize 32 TargetTypeEmulationWarnSuppressLevel 0 TargetPreprocMaxBitsSint 32 TargetPreprocMaxBitsUint 32 TargetHWDeviceType "Specified" TargetUnknown off ProdEqTarget on } Simulink.ModelReferenceCC { $ObjectID 18 Version "1.11.0" UpdateModelReferenceTargets "IfOutOfDateOrStructuralChange" CheckModelReferenceTargetMessage "error" EnableParallelModelReferenceBuilds off ParallelModelReferenceErrorOnInvalidPool on ParallelModelReferenceMATLABWorkerInit "None" ModelReferenceNumInstancesAllowed "Multi" PropagateVarSize "Infer from blocks in model" ModelReferencePassRootInputsByReference on ModelReferenceMinAlgLoopOccurrences off PropagateSignalLabelsOutOfModel off SupportModelReferenceSimTargetCustomCode off } Simulink.SFSimCC { $ObjectID 19 Version "1.11.0" SFSimEnableDebug on SFSimOverflowDetection on SFSimEcho on SimBlas on SimCtrlC on SimExtrinsic on SimIntegrity on SimUseLocalCustomCode off SimParseCustomCode on SimBuildMode "sf_incremental_build" } Simulink.RTWCC { $BackupClass "Simulink.RTWCC" $ObjectID 20 Version "1.11.0" Array { Type "Cell" Dimension 6 Cell "IncludeHyperlinkInReport" Cell "GenerateTraceInfo" Cell "GenerateTraceReport" Cell "GenerateTraceReportSl" Cell "GenerateTraceReportSf" Cell "GenerateTraceReportEml" PropName "DisabledProps" } SystemTargetFile "grt.tlc" GenCodeOnly off MakeCommand "make_rtw" GenerateMakefile on TemplateMakefile "grt_default_tmf" GenerateReport off SaveLog off RTWVerbose on RetainRTWFile off ProfileTLC off TLCDebug off TLCCoverage off TLCAssert off ProcessScriptMode "Default" ConfigurationMode "Optimized" ConfigAtBuild off RTWUseLocalCustomCode off RTWUseSimCustomCode off IncludeHyperlinkInReport off LaunchReport off TargetLang "C" IncludeBusHierarchyInRTWFileBlockHierarchyMap off IncludeERTFirstTime off GenerateTraceInfo off GenerateTraceReport off GenerateTraceReportSl off GenerateTraceReportSf off GenerateTraceReportEml off GenerateCodeInfo off GenerateSLWebview off GenerateCodeMetricsReport off RTWCompilerOptimization "Off" CheckMdlBeforeBuild "Off" CustomRebuildMode "OnUpdate" Array { Type "Handle" Dimension 2 Simulink.CodeAppCC { $ObjectID 21 Version "1.11.0" Array { Type "Cell" Dimension 17 Cell "IgnoreCustomStorageClasses" Cell "IgnoreTestpoints" Cell "InsertBlockDesc" Cell "SFDataObjDesc" Cell "SimulinkDataObjDesc" Cell "DefineNamingRule" Cell "SignalNamingRule" Cell "ParamNamingRule" Cell "InlinedPrmAccess" Cell "CustomSymbolStr" Cell "CustomSymbolStrGlobalVar" Cell "CustomSymbolStrType" Cell "CustomSymbolStrField" Cell "CustomSymbolStrFcn" Cell "CustomSymbolStrBlkIO" Cell "CustomSymbolStrTmpVar" Cell "CustomSymbolStrMacro" PropName "DisabledProps" } ForceParamTrailComments off GenerateComments on IgnoreCustomStorageClasses on IgnoreTestpoints off IncHierarchyInIds off MaxIdLength 31 PreserveName off PreserveNameWithParent off ShowEliminatedStatement off IncAutoGenComments off SimulinkDataObjDesc off SFDataObjDesc off MATLABFcnDesc off IncDataTypeInIds off MangleLength 1 CustomSymbolStrGlobalVar "$R$N$M" CustomSymbolStrType "$N$R$M" CustomSymbolStrField "$N$M" CustomSymbolStrFcn "$R$N$M$F" CustomSymbolStrFcnArg "rt$I$N$M" CustomSymbolStrBlkIO "rtb_$N$M" CustomSymbolStrTmpVar "$N$M" CustomSymbolStrMacro "$R$N$M" DefineNamingRule "None" ParamNamingRule "None" SignalNamingRule "None" InsertBlockDesc off InsertPolySpaceComments off SimulinkBlockComments on MATLABSourceComments off EnableCustomComments off InlinedPrmAccess "Literals" ReqsInCode off UseSimReservedNames off } Simulink.GRTTargetCC { $BackupClass "Simulink.TargetCC" $ObjectID 22 Version "1.11.0" Array { Type "Cell" Dimension 16 Cell "IncludeMdlTerminateFcn" Cell "CombineOutputUpdateFcns" Cell "SuppressErrorStatus" Cell "ERTCustomFileBanners" Cell "GenerateSampleERTMain" Cell "GenerateTestInterfaces" Cell "ModelStepFunctionPrototypeControlCompliant" Cell "CPPClassGenCompliant" Cell "MultiInstanceERTCode" Cell "PurelyIntegerCode" Cell "SupportNonFinite" Cell "SupportComplex" Cell "SupportAbsoluteTime" Cell "SupportContinuousTime" Cell "SupportNonInlinedSFcns" Cell "PortableWordSizes" PropName "DisabledProps" } TargetFcnLib "ansi_tfl_table_tmw.mat" TargetLibSuffix "" TargetPreCompLibLocation "" TargetFunctionLibrary "ANSI_C" UtilityFuncGeneration "Auto" ERTMultiwordTypeDef "System defined" FunctionExecutionProfile off CodeExecutionProfiling off ERTCodeCoverageTool "None" ERTMultiwordLength 256 MultiwordLength 2048 GenerateFullHeader on GenerateSampleERTMain off GenerateTestInterfaces off IsPILTarget off ModelReferenceCompliant on ParMdlRefBuildCompliant on CompOptLevelCompliant on IncludeMdlTerminateFcn on GeneratePreprocessorConditionals "Disable all" CombineOutputUpdateFcns off CombineSignalStateStructs off SuppressErrorStatus off ERTFirstTimeCompliant off IncludeFileDelimiter "Auto" ERTCustomFileBanners off SupportAbsoluteTime on LogVarNameModifier "rt_" MatFileLogging on MultiInstanceERTCode off SupportNonFinite on SupportComplex on PurelyIntegerCode off SupportContinuousTime on SupportNonInlinedSFcns on SupportVariableSizeSignals off EnableShiftOperators on ParenthesesLevel "Nominal" PortableWordSizes off ModelStepFunctionPrototypeControlCompliant off CPPClassGenCompliant off AutosarCompliant off UseMalloc off ExtMode off ExtModeStaticAlloc off ExtModeTesting off ExtModeStaticAllocSize 1000000 ExtModeTransport 0 ExtModeMexFile "ext_comm" ExtModeIntrfLevel "Level1" RTWCAPISignals off RTWCAPIParams off RTWCAPIStates off RTWCAPIRootIO off GenerateASAP2 off } PropName "Components" } } PropName "Components" } Name "Configuration" CurrentDlgPage "Real-Time Workshop" ConfigPrmDlgPosition [ 280, 135, 1160, 765 ] } PropName "ConfigurationSets" } Simulink.ConfigSet { $PropName "ActiveConfigurationSet" $ObjectID 1 } BlockDefaults { ForegroundColor "black" BackgroundColor "white" DropShadow off NamePlacement "normal" FontName "Helvetica" FontSize 10 FontWeight "normal" FontAngle "normal" ShowName on BlockRotation 0 BlockMirror off } AnnotationDefaults { HorizontalAlignment "center" VerticalAlignment "middle" ForegroundColor "black" BackgroundColor "white" DropShadow off FontName "Helvetica" FontSize 10 FontWeight "normal" FontAngle "normal" UseDisplayTextAsClickCallback off } LineDefaults { FontName "Helvetica" FontSize 9 FontWeight "normal" FontAngle "normal" } BlockParameterDefaults { Block { BlockType Clock DisplayTime off } Block { BlockType Constant Value "1" VectorParams1D on SamplingMode "Sample based" OutMin "[]" OutMax "[]" OutDataTypeStr "Inherit: Inherit from 'Constant value'" LockScale off SampleTime "inf" FramePeriod "inf" PreserveConstantTs off } Block { BlockType DataTypeConversion OutMin "[]" OutMax "[]" OutDataTypeStr "Inherit: Inherit via back propagation" LockScale off ConvertRealWorld "Real World Value (RWV)" RndMeth "Zero" SaturateOnIntegerOverflow on SampleTime "-1" } Block { BlockType Demux Outputs "4" DisplayOption "none" BusSelectionMode off } Block { BlockType DiscretePulseGenerator PulseType "Sample based" TimeSource "Use simulation time" Amplitude "1" Period "2" PulseWidth "1" PhaseDelay "0" SampleTime "1" VectorParams1D on } Block { BlockType Gain Gain "1" Multiplication "Element-wise(K.*u)" ParamMin "[]" ParamMax "[]" ParamDataTypeStr "Inherit: Same as input" OutMin "[]" OutMax "[]" OutDataTypeStr "Inherit: Same as input" LockScale off RndMeth "Floor" SaturateOnIntegerOverflow on SampleTime "-1" } Block { BlockType Inport Port "1" OutputFunctionCall off OutMin "[]" OutMax "[]" OutDataTypeStr "Inherit: auto" LockScale off BusOutputAsStruct off PortDimensions "-1" VarSizeSig "Inherit" SampleTime "-1" SignalType "auto" SamplingMode "auto" LatchByDelayingOutsideSignal off LatchInputForFeedbackSignals off Interpolate on } Block { BlockType MultiPortSwitch DataPortOrder "One-based contiguous" Inputs "3" DataPortIndices "{1,2,3}" DataPortForDefault "Last data port" DiagnosticForDefault "Error" InputSameDT on OutMin "[]" OutMax "[]" OutDataTypeStr "Inherit: Inherit via internal rule" LockScale off RndMeth "Floor" SaturateOnIntegerOverflow on SampleTime "-1" AllowDiffInputSizes off } Block { BlockType Outport Port "1" OutMin "[]" OutMax "[]" OutDataTypeStr "Inherit: auto" LockScale off BusOutputAsStruct off PortDimensions "-1" VarSizeSig "Inherit" SampleTime "-1" SignalType "auto" SamplingMode "auto" SourceOfInitialOutputValue "Dialog" OutputWhenDisabled "held" InitialOutput "[]" } Block { BlockType Product Inputs "2" Multiplication "Element-wise(.*)" CollapseMode "All dimensions" CollapseDim "1" InputSameDT on OutMin "[]" OutMax "[]" OutDataTypeStr "Inherit: Same as first input" LockScale off RndMeth "Zero" SaturateOnIntegerOverflow on SampleTime "-1" } Block { BlockType S-Function FunctionName "system" SFunctionModules "''" PortCounts "[]" SFunctionDeploymentMode off } Block { BlockType Saturate UpperLimitSource "Dialog" UpperLimit "0.5" LowerLimitSource "Dialog" LowerLimit "-0.5" LinearizeAsGain on ZeroCross on SampleTime "-1" OutMin "[]" OutMax "[]" OutDataTypeStr "Inherit: Same as input" LockScale off RndMeth "Floor" } Block { BlockType Scope ModelBased off TickLabels "OneTimeTick" ZoomMode "on" Grid "on" TimeRange "auto" YMin "-5" YMax "5" SaveToWorkspace off SaveName "ScopeData" LimitDataPoints on MaxDataPoints "5000" Decimation "1" SampleInput off SampleTime "-1" } Block { BlockType SignalViewerScope Floating off ModelBased off TickLabels "OneTimeTick" ZoomMode "on" Grid "on" TimeRange "auto" YMin "-5" YMax "5" SaveToWorkspace off SaveName "ScopeData" LimitDataPoints on MaxDataPoints "5000" Decimation "1" SampleInput off SampleTime "0" Disabled off ScrollMode on } Block { BlockType SubSystem ShowPortLabels "FromPortIcon" Permissions "ReadWrite" PermitHierarchicalResolution "All" TreatAsAtomicUnit off CheckFcnCallInpInsideContextMsg off SystemSampleTime "-1" RTWFcnNameOpts "Auto" RTWFileNameOpts "Auto" RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" SimViewingDevice off DataTypeOverride "UseLocalSettings" DataTypeOverrideAppliesTo "AllNumericTypes" MinMaxOverflowLogging "UseLocalSettings" Variant off GeneratePreprocessorConditionals off } Block { BlockType Sum IconShape "rectangular" Inputs "++" CollapseMode "All dimensions" CollapseDim "1" InputSameDT on AccumDataTypeStr "Inherit: Inherit via internal rule" OutMin "[]" OutMax "[]" OutDataTypeStr "Inherit: Same as first input" LockScale off RndMeth "Floor" SaturateOnIntegerOverflow on SampleTime "-1" } Block { BlockType Terminator } Block { BlockType ToWorkspace VariableName "simulink_output" MaxDataPoints "1000" Decimation "1" SampleTime "0" FixptAsFi off NumInputs "1" } Block { BlockType Trigonometry Operator "sin" ApproximationMethod "None" NumberOfIterations "11" OutputSignalType "auto" SampleTime "-1" } } System { Name "Aeropendulum" Location [104, 119, 905, 836] Open on ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000] TiledPageScale 1 ShowPageBoundaries off ZoomFactor "100" ReportName "simulink-default.rpt" SIDHighWatermark "109" Block { BlockType Constant Name "Controller Select" SID "1" Position [300, 20, 330, 50] Value "4" } Block { BlockType SubSystem Name "Design Parameters" SID "2" Ports [0, 4] Position [15, 131, 115, 179] MinAlgLoopOccurrences off PropExecContextOutsideSubsystem off RTWSystemCode "Auto" FunctionWithSeparateData off Opaque off RequestExecContextInheritance off MaskHideContents off System { Name "Design Parameters" Location [474, 485, 793, 748] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000] TiledPageScale 1 ShowPageBoundaries off ZoomFactor "100" Block { BlockType Constant Name "Constant1" SID "3" Position [25, 116, 55, 144] ShowName off Value "2" } Block { BlockType Constant Name "Constant2" SID "4" Position [25, 70, 55, 100] ShowName off Value "22" } Block { BlockType Constant Name "Constant3" SID "5" Position [25, 160, 55, 190] ShowName off Value "30" } Block { BlockType Constant Name "S2" SID "6" Position [25, 25, 55, 55] ShowName off Value "146" } Block { BlockType Outport Name "Desired Angle" SID "7" Position [85, 168, 115, 182] IconDisplay "Port number" } Block { BlockType Outport Name "u0" SID "8" Position [80, 78, 110, 92] Port "2" IconDisplay "Port number" } Block { BlockType Outport Name "S" SID "9" Position [80, 33, 110, 47] Port "3" IconDisplay "Port number" } Block { BlockType Outport Name "Kp (proportional)" SID "10" Position [95, 123, 125, 137] Port "4" IconDisplay "Port number" } Line { SrcBlock "Constant2" SrcPort 1 DstBlock "u0" DstPort 1 } Line { SrcBlock "Constant1" SrcPort 1 DstBlock "Kp (proportional)" DstPort 1 } Line { SrcBlock "Constant3" SrcPort 1 DstBlock "Desired Angle" DstPort 1 } Line { SrcBlock "S2" SrcPort 1 DstBlock "S" DstPort 1 } } } Block { BlockType Reference Name "DocBlock" SID "11" Ports [] Position [1078, 20, 1137, 89] ShowName off LibraryVersion "1.236" UserDataPersistent on UserData "DataTag0" SourceBlock "simulink/Model-Wide\nUtilities/DocBlock" SourceType "DocBlock" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData off RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" GeneratePreprocessorConditionals off DocumentType "Text" } Block { BlockType SubSystem Name "Lag Controller" SID "12" Ports [4, 1] Position [230, 222, 405, 268] MinAlgLoopOccurrences off PropExecContextOutsideSubsystem off RTWSystemCode "Auto" FunctionWithSeparateData off Opaque off RequestExecContextInheritance off MaskHideContents off System { Name "Lag Controller" Location [508, 452, 1313, 750] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000] TiledPageScale 1 ShowPageBoundaries off ZoomFactor "100" Block { BlockType Inport Name "Desired Theta" SID "13" Position [25, 98, 55, 112] IconDisplay "Port number" } Block { BlockType Inport Name "u0" SID "14" Position [380, 168, 410, 182] Port "2" IconDisplay "Port number" } Block { BlockType Inport Name "S" SID "15" Position [25, 253, 55, 267] Port "3" IconDisplay "Port number" } Block { BlockType Inport Name "Theta" SID "16" Position [25, 223, 55, 237] Port "4" IconDisplay "Port number" } Block { BlockType Reference Name "LTI System" SID "17" Ports [1, 1] Position [275, 87, 370, 123] LibraryVersion "1.107" SourceBlock "cstblocks/LTI System" SourceType "LTI Block" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData off RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" GeneratePreprocessorConditionals off sys "clagd" IC "[]" } Block { BlockType SubSystem Name "Linearization" SID "18" Ports [2, 1] Position [160, 217, 310, 273] MinAlgLoopOccurrences off PropExecContextOutsideSubsystem off RTWSystemCode "Auto" FunctionWithSeparateData off Opaque off RequestExecContextInheritance off MaskHideContents off System { Name "Linearization" Location [127, 284, 606, 448] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000] TiledPageScale 1 ShowPageBoundaries off ZoomFactor "100" Block { BlockType Inport Name "Theta" SID "19" Position [25, 38, 55, 52] IconDisplay "Port number" } Block { BlockType Inport Name "S" SID "20" Position [240, 53, 270, 67] Port "2" IconDisplay "Port number" } Block { BlockType Gain Name "Deg->Rad" SID "21" Position [80, 27, 140, 63] Gain "pi()/180" ParamDataTypeStr "Inherit: Inherit via internal rule" OutDataTypeStr "Inherit: Inherit via internal rule" SaturateOnIntegerOverflow off } Block { BlockType Product Name "Product" SID "22" Ports [2, 1] Position [295, 37, 325, 68] InputSameDT off OutDataTypeStr "Inherit: Inherit via internal rule" SaturateOnIntegerOverflow off } Block { BlockType Trigonometry Name "Trigonometric\nFunction" SID "23" Ports [1, 1] Position [190, 30, 220, 60] ShowName off } Block { BlockType Outport Name "Linearization" SID "24" Position [365, 48, 395, 62] IconDisplay "Port number" } Line { SrcBlock "Trigonometric\nFunction" SrcPort 1 DstBlock "Product" DstPort 1 } Line { SrcBlock "Deg->Rad" SrcPort 1 DstBlock "Trigonometric\nFunction" DstPort 1 } Line { SrcBlock "Theta" SrcPort 1 DstBlock "Deg->Rad" DstPort 1 } Line { SrcBlock "Product" SrcPort 1 DstBlock "Linearization" DstPort 1 } Line { SrcBlock "S" SrcPort 1 DstBlock "Product" DstPort 2 } } } Block { BlockType Saturate Name "Saturation" SID "25" Ports [1, 1] Position [675, 90, 705, 120] InputPortMap "u0" UpperLimit "127" LowerLimit "-127" } Block { BlockType Sum Name "Sum1" SID "26" Ports [2, 1] Position [120, 95, 140, 115] ShowName off IconShape "round" Inputs "|+-" InputSameDT off OutDataTypeStr "Inherit: Inherit via internal rule" SaturateOnIntegerOverflow off } Block { BlockType Sum Name "Sum2" SID "27" Ports [2, 1] Position [590, 165, 610, 185] ShowName off IconShape "round" Inputs "|++" InputSameDT off OutDataTypeStr "Inherit: Inherit via internal rule" SaturateOnIntegerOverflow off } Block { BlockType Sum Name "Sum3" SID "28" Ports [2, 1] Position [605, 95, 625, 115] ShowName off IconShape "round" Inputs "|++" InputSameDT off OutDataTypeStr "Inherit: Inherit via internal rule" SaturateOnIntegerOverflow off } Block { BlockType Outport Name "Control Signal" SID "29" Position [750, 98, 780, 112] IconDisplay "Port number" } Line { SrcBlock "Theta" SrcPort 1 Points [70, 0] Branch { DstBlock "Linearization" DstPort 1 } Branch { DstBlock "Sum1" DstPort 2 } } Line { SrcBlock "Desired Theta" SrcPort 1 DstBlock "Sum1" DstPort 1 } Line { SrcBlock "Sum3" SrcPort 1 DstBlock "Saturation" DstPort 1 } Line { SrcBlock "Sum1" SrcPort 1 DstBlock "LTI System" DstPort 1 } Line { SrcBlock "u0" SrcPort 1 DstBlock "Sum2" DstPort 1 } Line { SrcBlock "Saturation" SrcPort 1 DstBlock "Control Signal" DstPort 1 } Line { SrcBlock "LTI System" SrcPort 1 DstBlock "Sum3" DstPort 1 } Line { SrcBlock "Sum2" SrcPort 1 DstBlock "Sum3" DstPort 2 } Line { SrcBlock "Linearization" SrcPort 1 Points [285, 0] DstBlock "Sum2" DstPort 2 } Line { SrcBlock "S" SrcPort 1 DstBlock "Linearization" DstPort 2 } } } Block { BlockType SubSystem Name "Lead Controller" SID "30" Ports [4, 1] Position [230, 297, 405, 343] MinAlgLoopOccurrences off PropExecContextOutsideSubsystem off RTWSystemCode "Auto" FunctionWithSeparateData off Opaque off RequestExecContextInheritance off MaskHideContents off System { Name "Lead Controller" Location [443, 302, 1287, 605] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000] TiledPageScale 1 ShowPageBoundaries off ZoomFactor "100" Block { BlockType Inport Name "Desired Theta" SID "31" Position [25, 98, 55, 112] IconDisplay "Port number" } Block { BlockType Inport Name "u0" SID "32" Position [380, 168, 410, 182] Port "2" IconDisplay "Port number" } Block { BlockType Inport Name "S" SID "33" Position [25, 253, 55, 267] Port "3" IconDisplay "Port number" } Block { BlockType Inport Name "Theta" SID "34" Position [25, 223, 55, 237] Port "4" IconDisplay "Port number" } Block { BlockType Reference Name "LTI System" SID "105" Ports [1, 1] Position [285, 87, 380, 123] LibraryVersion "1.107" SourceBlock "cstblocks/LTI System" SourceType "LTI Block" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData off RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" GeneratePreprocessorConditionals off sys "clead" IC "[]" } Block { BlockType SubSystem Name "Linearization" SID "36" Ports [2, 1] Position [160, 217, 310, 273] MinAlgLoopOccurrences off PropExecContextOutsideSubsystem off RTWSystemCode "Auto" FunctionWithSeparateData off Opaque off RequestExecContextInheritance off MaskHideContents off System { Name "Linearization" Location [127, 284, 606, 448] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000] TiledPageScale 1 ShowPageBoundaries off ZoomFactor "100" Block { BlockType Inport Name "Theta" SID "37" Position [25, 38, 55, 52] IconDisplay "Port number" } Block { BlockType Inport Name "S" SID "38" Position [240, 53, 270, 67] Port "2" IconDisplay "Port number" } Block { BlockType Gain Name "Deg->Rad" SID "39" Position [80, 27, 140, 63] Gain "pi()/180" ParamDataTypeStr "Inherit: Inherit via internal rule" OutDataTypeStr "Inherit: Inherit via internal rule" SaturateOnIntegerOverflow off } Block { BlockType Product Name "Product" SID "40" Ports [2, 1] Position [295, 37, 325, 68] InputSameDT off OutDataTypeStr "Inherit: Inherit via internal rule" SaturateOnIntegerOverflow off } Block { BlockType Trigonometry Name "Trigonometric\nFunction" SID "41" Ports [1, 1] Position [190, 30, 220, 60] ShowName off } Block { BlockType Outport Name "Linearization" SID "42" Position [365, 48, 395, 62] IconDisplay "Port number" } Line { SrcBlock "Trigonometric\nFunction" SrcPort 1 DstBlock "Product" DstPort 1 } Line { SrcBlock "Deg->Rad" SrcPort 1 DstBlock "Trigonometric\nFunction" DstPort 1 } Line { SrcBlock "Theta" SrcPort 1 DstBlock "Deg->Rad" DstPort 1 } Line { SrcBlock "Product" SrcPort 1 DstBlock "Linearization" DstPort 1 } Line { SrcBlock "S" SrcPort 1 DstBlock "Product" DstPort 2 } } } Block { BlockType Saturate Name "Saturation" SID "43" Ports [1, 1] Position [675, 90, 705, 120] InputPortMap "u0" UpperLimit "127" LowerLimit "-127" } Block { BlockType Sum Name "Sum1" SID "44" Ports [2, 1] Position [120, 95, 140, 115] ShowName off IconShape "round" Inputs "|+-" InputSameDT off OutDataTypeStr "Inherit: Inherit via internal rule" SaturateOnIntegerOverflow off } Block { BlockType Sum Name "Sum2" SID "45" Ports [2, 1] Position [590, 165, 610, 185] ShowName off IconShape "round" Inputs "|++" InputSameDT off OutDataTypeStr "Inherit: Inherit via internal rule" SaturateOnIntegerOverflow off } Block { BlockType Sum Name "Sum4" SID "103" Ports [2, 1] Position [605, 95, 625, 115] ShowName off IconShape "round" Inputs "|++" InputSameDT off OutDataTypeStr "Inherit: Inherit via internal rule" SaturateOnIntegerOverflow off } Block { BlockType Outport Name "Control Signal" SID "47" Position [750, 98, 780, 112] IconDisplay "Port number" } Line { SrcBlock "Theta" SrcPort 1 Points [70, 0] Branch { DstBlock "Linearization" DstPort 1 } Branch { DstBlock "Sum1" DstPort 2 } } Line { SrcBlock "Desired Theta" SrcPort 1 DstBlock "Sum1" DstPort 1 } Line { SrcBlock "Sum4" SrcPort 1 DstBlock "Saturation" DstPort 1 } Line { SrcBlock "u0" SrcPort 1 DstBlock "Sum2" DstPort 1 } Line { SrcBlock "Saturation" SrcPort 1 DstBlock "Control Signal" DstPort 1 } Line { SrcBlock "Sum2" SrcPort 1 DstBlock "Sum4" DstPort 2 } Line { SrcBlock "Linearization" SrcPort 1 Points [285, 0] DstBlock "Sum2" DstPort 2 } Line { SrcBlock "S" SrcPort 1 DstBlock "Linearization" DstPort 2 } Line { SrcBlock "Sum1" SrcPort 1 DstBlock "LTI System" DstPort 1 } Line { SrcBlock "LTI System" SrcPort 1 DstBlock "Sum4" DstPort 1 } } } Block { BlockType Reference Name "Model Info" SID "48" Ports [] Position [1160, 24, 1396, 164] ShowName off LibraryVersion "1.236" FontName "Arial" SourceBlock "simulink/Model-Wide\nUtilities/Model Info" SourceType "CMBlock" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData off RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" GeneratePreprocessorConditionals off InitialBlockCM "None" BlockCM "None" Frame "on" DisplayStringWithTags "%\n--------------------------------------\n%\n%\n" "%" MaskDisplayString "AeroPendulum Controller \\n-Phase lead\\n-Phase lag\\n-Proportional control\\n\\nAll co" "ntrollers working!\\n--------------------------------------\\nMEMS lab\\nThu Jul 21 22:12:32 2011\\n1.172" HorizontalTextAlignment "Center" LeftAlignmentValue "0.5" SourceBlockDiagram "Aeropendulum" TagMaxNumber "20" } Block { BlockType MultiPortSwitch Name "Multiport\nSwitch" SID "49" Ports [5, 1] Position [495, 109, 530, 211] Inputs "4" zeroidx off InputSameDT off SaturateOnIntegerOverflow off } Block { BlockType Constant Name "Open Loop Duty Cycle" SID "50" Position [300, 75, 330, 105] Value "30" } Block { BlockType SubSystem Name "Pendulum I/O \n(Plant)" SID "51" Ports [1, 1] Position [560, 139, 670, 181] MinAlgLoopOccurrences off PropExecContextOutsideSubsystem off RTWSystemCode "Auto" FunctionWithSeparateData off Opaque off RequestExecContextInheritance off MaskHideContents off System { Name "Pendulum I/O \n(Plant)" Location [504, 186, 1107, 663] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000] TiledPageScale 1 ShowPageBoundaries off ZoomFactor "100" Block { BlockType Inport Name "Write %" SID "52" Position [210, 198, 240, 212] NamePlacement "alternate" IconDisplay "Port number" } Block { BlockType SubSystem Name "Calibrate Reading" SID "53" Ports [1, 1] Position [550, 177, 675, 203] MinAlgLoopOccurrences off PropExecContextOutsideSubsystem off RTWSystemCode "Auto" FunctionWithSeparateData off Opaque off RequestExecContextInheritance off MaskHideContents off System { Name "Calibrate Reading" Location [248, 176, 945, 537] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000] TiledPageScale 1 ShowPageBoundaries off ZoomFactor "100" Block { BlockType Inport Name "Raw" SID "54" Position [25, 38, 55, 52] IconDisplay "Port number" } Block { BlockType Sum Name "Calibrate Reading" SID "55" Ports [2, 1] Position [245, 25, 285, 105] Inputs "+-" InputSameDT off OutDataTypeStr "Inherit: Inherit via internal rule" SaturateOnIntegerOverflow off } Block { BlockType SubSystem Name "Initial Reading" SID "56" Ports [1, 1] Position [120, 65, 195, 105] MinAlgLoopOccurrences off PropExecContextOutsideSubsystem off RTWSystemCode "Auto" FunctionWithSeparateData off Opaque off RequestExecContextInheritance off MaskHideContents off System { Name "Initial Reading" Location [351, 277, 841, 512] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000] TiledPageScale 1 ShowPageBoundaries off ZoomFactor "100" Block { BlockType Inport Name "Raw" SID "57" Position [25, 28, 55, 42] IconDisplay "Port number" } Block { BlockType Clock Name "Clock" SID "58" Position [30, 65, 50, 85] Decimation "10" } Block { BlockType SubSystem Name "Switch & Memory" SID "59" Ports [3, 1] Position [110, 28, 180, 62] ErrorFcn "Stateflow.Translate.translate" PermitHierarchicalResolution "ExplicitOnly" TreatAsAtomicUnit on MinAlgLoopOccurrences off PropExecContextOutsideSubsystem off RTWSystemCode "Auto" FunctionWithSeparateData off Opaque off RequestExecContextInheritance off MaskHideContents off MaskType "Stateflow" MaskDescription "Embedded MATLAB block" MaskSelfModifiable on MaskDisplay "bgColor = Simulink.Root.ColorString2Rgb(get_param(gcbh, 'BackgroundColor')); image(imread('private" "/eml_membrane_16.png','png','BackgroundColor',bgColor(1:3)),'center'); disp([10 10 'fcn']);" MaskIconFrame on MaskIconOpaque off MaskIconRotate "none" MaskPortRotate "default" MaskIconUnits "normalized" System { Name "Switch & Memory" Location [257, 457, 812, 717] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000] TiledPageScale 1 ShowPageBoundaries off ZoomFactor "100" SIDHighWatermark "11" Block { BlockType Inport Name "raw" SID "59::1" Position [20, 101, 40, 119] IconDisplay "Port number" } Block { BlockType Inport Name "t" SID "59::2" Position [20, 136, 40, 154] Port "2" IconDisplay "Port number" } Block { BlockType Inport Name "Ts" SID "59::3" Position [20, 171, 40, 189] Port "3" IconDisplay "Port number" } Block { BlockType Demux Name " Demux " SID "59::9" Ports [1, 1] Position [270, 180, 320, 220] Outputs "1" } Block { BlockType S-Function Name " SFunction " SID "59::8" Tag "Stateflow S-Function Aeropendulum 1" Ports [3, 2] Position [180, 100, 230, 180] FunctionName "sf_sfun" PortCounts "[3 2]" EnableBusSupport on Port { PortNumber 2 Name "x" RTWStorageClass "Auto" DataLoggingNameMode "SignalName" } } Block { BlockType Terminator Name " Terminator " SID "59::11" Position [460, 191, 480, 209] } Block { BlockType Outport Name "x" SID "59::7" Position [460, 101, 480, 119] IconDisplay "Port number" } Line { SrcBlock "raw" SrcPort 1 DstBlock " SFunction " DstPort 1 } Line { SrcBlock "t" SrcPort 1 DstBlock " SFunction " DstPort 2 } Line { SrcBlock "Ts" SrcPort 1 DstBlock " SFunction " DstPort 3 } Line { Name "x" Labels [0, 0] SrcBlock " SFunction " SrcPort 2 DstBlock "x" DstPort 1 } Line { SrcBlock " Demux " SrcPort 1 DstBlock " Terminator " DstPort 1 } Line { SrcBlock " SFunction " SrcPort 1 DstBlock " Demux " DstPort 1 } } } Block { BlockType Constant Name "Tinit" SID "60" Position [25, 110, 55, 140] Value ".1" } Block { BlockType ToWorkspace Name "To Workspace1" SID "106" Ports [1] Position [115, 90, 175, 120] ExtModeUploadOption "log" VariableName "t" MaxDataPoints "inf" SampleTime "-1" SaveFormat "Array" } Block { BlockType Outport Name "Vinit" SID "61" Position [330, 38, 360, 52] IconDisplay "Port number" } Line { SrcBlock "Clock" SrcPort 1 Points [5, 0] Branch { Points [15, 0; 0, -30] DstBlock "Switch & Memory" DstPort 2 } Branch { Points [0, 30] DstBlock "To Workspace1" DstPort 1 } } Line { SrcBlock "Tinit" SrcPort 1 Points [20, 0; 0, -70] DstBlock "Switch & Memory" DstPort 3 } Line { SrcBlock "Raw" SrcPort 1 DstBlock "Switch & Memory" DstPort 1 } Line { SrcBlock "Switch & Memory" SrcPort 1 DstBlock "Vinit" DstPort 1 } } } Block { BlockType Gain Name "K_pot" SID "62" Position [475, 35, 560, 95] Gain "340/4095" ParamDataTypeStr "Inherit: Inherit via internal rule" OutDataTypeStr "Inherit: Inherit via back propagation" } Block { BlockType DataTypeConversion Name "unit16 -> double" SID "63" Position [120, 13, 195, 47] OutDataTypeStr "double" RndMeth "Floor" SaturateOnIntegerOverflow off } Block { BlockType Outport Name "Calibrated Theta" SID "64" Position [600, 58, 630, 72] IconDisplay "Port number" } Line { SrcBlock "Initial Reading" SrcPort 1 DstBlock "Calibrate Reading" DstPort 2 } Line { SrcBlock "Raw" SrcPort 1 Points [15, 0] Branch { Points [0, 40] DstBlock "Initial Reading" DstPort 1 } Branch { Points [0, -15] DstBlock "unit16 -> double" DstPort 1 } } Line { SrcBlock "Calibrate Reading" SrcPort 1 DstBlock "K_pot" DstPort 1 } Line { SrcBlock "K_pot" SrcPort 1 DstBlock "Calibrated Theta" DstPort 1 } Line { SrcBlock "unit16 -> double" SrcPort 1 Points [15, 0; 0, 15] DstBlock "Calibrate Reading" DstPort 1 } } } Block { BlockType Reference Name "Packet Output" SID "65" Ports [1] Position [320, 185, 375, 225] AttributesFormatString "Standard Devices\\nSerial Port [4h]" LibraryVersion "1.120" SourceBlock "rtwinlib/Packet Output" SourceType "RTWin Packet Output" SampleTime "-1" DrvName "Standard_Devices/Serial_Port" DrvAddress "4" DrvOptions "[9600 8 0 0 0 0 0 0]" PacketSize "1" DataTypes "'int8'" ShowReady off ShowError off PacketID "1" ByteOrder "1" InitialValue "[]" FinalValue "[]" } Block { BlockType SubSystem Name "Query Instrument" SID "66" Ports [0, 1] Position [450, 181, 500, 199] MinAlgLoopOccurrences off PropExecContextOutsideSubsystem off RTWSystemCode "Auto" FunctionWithSeparateData off Opaque off RequestExecContextInheritance off MaskHideContents off System { Name "Query Instrument" Location [472, 333, 1179, 705] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000] TiledPageScale 1 ShowPageBoundaries off ZoomFactor "100" Block { BlockType DiscretePulseGenerator Name "255 Query" SID "67" Ports [0, 1] Position [25, 28, 70, 62] PulseType "Time based" Amplitude "128" Period ".02" PulseWidth "50" } Block { BlockType Scope Name "Data ready port" SID "68" Ports [1] Position [290, 204, 320, 236] ExtModeUploadOption "log" Floating off Location [46, 268, 370, 507] Open off NumInputPorts "1" List { ListType AxesTitles axes1 "%" } YMin "0" YMax "1" SaveName "ScopeData3" DataFormat "StructureWithTime" SampleTime "0" } Block { BlockType Reference Name "Packet Input" SID "69" Ports [0, 2] Position [155, 135, 210, 175] AttributesFormatString "Standard Devices\\nSerial Port [4h]" LibraryVersion "1.120" SourceBlock "rtwinlib/Packet Input" SourceType "RTWin Packet Input" SampleTime ".01" DrvName "Standard_Devices/Serial_Port" DrvAddress "4" DrvOptions "[9600 8 0 0 0 0 0 0]" PacketSize "2" DataTypes "'uint16'" ShowReady on ShowError off PacketID "1" ByteOrder "1" ShowTimestamp off } Block { BlockType Reference Name "Packet Output" SID "70" Ports [1] Position [150, 25, 205, 65] AttributesFormatString "Standard Devices\\nSerial Port [4h]" LibraryVersion "1.120" SourceBlock "rtwinlib/Packet Output" SourceType "RTWin Packet Output" SampleTime "-1" DrvName "Standard_Devices/Serial_Port" DrvAddress "4" DrvOptions "[9600 8 0 0 0 0 0 0]" PacketSize "1" DataTypes "'int8'" ShowReady off ShowError off PacketID "1" ByteOrder "1" InitialValue "[]" FinalValue "[]" } Block { BlockType Outport Name "Raw" SID "71" Position [375, 138, 405, 152] IconDisplay "Port number" } Line { SrcBlock "255 Query" SrcPort 1 DstBlock "Packet Output" DstPort 1 } Line { SrcBlock "Packet Input" SrcPort 2 Points [60, 0] DstBlock "Data ready port" DstPort 1 } Line { SrcBlock "Packet Input" SrcPort 1 DstBlock "Raw" DstPort 1 } } } Block { BlockType ToWorkspace Name "To Workspace" SID "72" Ports [1] Position [740, 275, 800, 305] ExtModeUploadOption "log" VariableName "theta" MaxDataPoints "inf" SampleTime "-1" SaveFormat "Array" } Block { BlockType ToWorkspace Name "To Workspace1" SID "91" Ports [1] Position [295, 285, 355, 315] ExtModeUploadOption "log" VariableName "PWM" MaxDataPoints "inf" SampleTime "-1" SaveFormat "Array" } Block { BlockType Outport Name "Theta" SID "73" Position [720, 183, 750, 197] IconDisplay "Port number" } Line { SrcBlock "Write %" SrcPort 1 Points [15, 0] Branch { DstBlock "Packet Output" DstPort 1 } Branch { Points [0, 95] DstBlock "To Workspace1" DstPort 1 } } Line { Labels [0, 0] SrcBlock "Query Instrument" SrcPort 1 DstBlock "Calibrate Reading" DstPort 1 } Line { SrcBlock "Calibrate Reading" SrcPort 1 Points [15, 0] Branch { DstBlock "Theta" DstPort 1 } Branch { Points [0, 100] DstBlock "To Workspace" DstPort 1 } } } } Block { BlockType SubSystem Name "Proportional Controller" SID "74" Ports [5, 1] Position [230, 131, 405, 189] MinAlgLoopOccurrences off PropExecContextOutsideSubsystem off RTWSystemCode "Auto" FunctionWithSeparateData off Opaque off RequestExecContextInheritance off MaskHideContents off System { Name "Proportional Controller" Location [240, 286, 1251, 832] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000] TiledPageScale 1 ShowPageBoundaries off ZoomFactor "100" Block { BlockType Inport Name "Desired Theta" SID "75" Position [190, 268, 220, 282] IconDisplay "Port number" } Block { BlockType Inport Name "u0" SID "76" Position [545, 348, 575, 362] Port "2" IconDisplay "Port number" } Block { BlockType Inport Name "S" SID "77" Position [190, 448, 220, 462] Port "3" IconDisplay "Port number" } Block { BlockType Inport Name "Kp" SID "78" Position [375, 303, 405, 317] Port "4" IconDisplay "Port number" } Block { BlockType Inport Name "Theta" SID "79" Position [190, 403, 220, 417] Port "5" IconDisplay "Port number" } Block { BlockType Gain Name "Deg->Rad" SID "80" Position [345, 392, 405, 428] Gain "pi()/180" ParamDataTypeStr "Inherit: Inherit via internal rule" OutDataTypeStr "Inherit: Inherit via internal rule" SaturateOnIntegerOverflow off } Block { BlockType Product Name "Product" SID "81" Ports [2, 1] Position [490, 267, 520, 298] InputSameDT off OutDataTypeStr "Inherit: Inherit via internal rule" SaturateOnIntegerOverflow off } Block { BlockType Product Name "Product1" SID "82" Ports [2, 1] Position [560, 402, 590, 433] InputSameDT off OutDataTypeStr "Inherit: Inherit via internal rule" SaturateOnIntegerOverflow off } Block { BlockType Saturate Name "Saturation" SID "83" Ports [1, 1] Position [840, 270, 870, 300] InputPortMap "u0" UpperLimit "127" LowerLimit "-127" } Block { BlockType Sum Name "Sum1" SID "84" Ports [2, 1] Position [285, 265, 305, 285] ShowName off IconShape "round" Inputs "|+-" InputSameDT off OutDataTypeStr "Inherit: Inherit via internal rule" SaturateOnIntegerOverflow off } Block { BlockType Sum Name "Sum2" SID "85" Ports [2, 1] Position [755, 345, 775, 365] ShowName off IconShape "round" Inputs "|++" InputSameDT off OutDataTypeStr "Inherit: Inherit via internal rule" SaturateOnIntegerOverflow off } Block { BlockType Sum Name "Sum3" SID "86" Ports [2, 1] Position [770, 275, 790, 295] ShowName off IconShape "round" Inputs "|++" InputSameDT off OutDataTypeStr "Inherit: Inherit via internal rule" SaturateOnIntegerOverflow off } Block { BlockType Trigonometry Name "Trigonometric\nFunction" SID "87" Ports [1, 1] Position [455, 395, 485, 425] ShowName off } Block { BlockType Outport Name "Control Signal" SID "88" Position [915, 278, 945, 292] IconDisplay "Port number" } Line { SrcBlock "Theta" SrcPort 1 Points [70, 0] Branch { DstBlock "Sum1" DstPort 2 } Branch { DstBlock "Deg->Rad" DstPort 1 } } Line { SrcBlock "Desired Theta" SrcPort 1 DstBlock "Sum1" DstPort 1 } Line { SrcBlock "Sum3" SrcPort 1 DstBlock "Saturation" DstPort 1 } Line { SrcBlock "Sum1" SrcPort 1 DstBlock "Product" DstPort 1 } Line { SrcBlock "u0" SrcPort 1 DstBlock "Sum2" DstPort 1 } Line { SrcBlock "Saturation" SrcPort 1 DstBlock "Control Signal" DstPort 1 } Line { SrcBlock "Product" SrcPort 1 DstBlock "Sum3" DstPort 1 } Line { SrcBlock "Sum2" SrcPort 1 DstBlock "Sum3" DstPort 2 } Line { SrcBlock "Kp" SrcPort 1 Points [65, 0] DstBlock "Product" DstPort 2 } Line { SrcBlock "Trigonometric\nFunction" SrcPort 1 DstBlock "Product1" DstPort 1 } Line { SrcBlock "Deg->Rad" SrcPort 1 DstBlock "Trigonometric\nFunction" DstPort 1 } Line { SrcBlock "Product1" SrcPort 1 Points [170, 0] DstBlock "Sum2" DstPort 2 } Line { SrcBlock "S" SrcPort 1 Points [290, 0; 0, -30] DstBlock "Product1" DstPort 2 } } } Block { BlockType ToWorkspace Name "Ref Input To Workspace " SID "107" Ports [1] Position [157, 75, 223, 100] BlockRotation 270 NamePlacement "alternate" ExtModeUploadOption "log" VariableName "theta0" MaxDataPoints "inf" SampleTime "-1" SaveFormat "Array" } Block { BlockType Clock Name "Clock" SID "102" Position [220, 445, 240, 465] IOType "siggen" Decimation "10" } Block { BlockType Constant Name "Constant" SID "100" Position [40, 95, 70, 125] IOType "siggen" Value "100" } Block { BlockType Constant Name "Constant1" SID "101" Position [40, 95, 70, 125] IOType "siggen" Value "-100" } Block { BlockType SignalViewerScope Name "Scope1" SID "89" Ports [] Position [20, 15, 60, 55] IOType "viewer" List { ListType IOSignalStrings set0ParseKeys "25,19" set0Sigs "Pendulum I//O (Plant):o1Multiport Switch:o1" } ExtModeUploadOption "log" Location [876, 214, 1346, 507] Open on NumInputPorts "1" TickLabels "on" ZoomMode "yonly" List { ListType AxesTitles axes1 "Angle" } ShowDataMarkers off ShowLegends on LegendLocations "282.3333 221.3333 165 36" TimeRange "60" YMin "-50" YMax "140" SaveToWorkspace on DataFormat "Array" MaxDataPoints "10000" RefreshTime 0.010417 } Line { Labels [0, 0] SrcBlock "Pendulum I/O \n(Plant)" SrcPort 1 Points [40, 0; 0, 245; -530, 0; 0, -70] Branch { Points [0, -75] Branch { Points [0, -80] DstBlock "Proportional Controller" DstPort 5 } Branch { DstBlock "Lag Controller" DstPort 4 } } Branch { DstBlock "Lead Controller" DstPort 4 } } Line { SrcBlock "Design Parameters" SrcPort 1 Points [30, 0] Branch { Points [0, 90] Branch { DstBlock "Lag Controller" DstPort 1 } Branch { Points [0, 75] DstBlock "Lead Controller" DstPort 1 } } Branch { Points [40, 0] Branch { DstBlock "Proportional Controller" DstPort 1 } Branch { DstBlock "Ref Input To Workspace " DstPort 1 } } } Line { SrcBlock "Design Parameters" SrcPort 3 Points [10, 0] Branch { DstBlock "Proportional Controller" DstPort 3 } Branch { Points [0, 90] Branch { DstBlock "Lag Controller" DstPort 3 } Branch { Points [0, 75] DstBlock "Lead Controller" DstPort 3 } } } Line { SrcBlock "Multiport\nSwitch" SrcPort 1 DstBlock "Pendulum I/O \n(Plant)" DstPort 1 } Line { SrcBlock "Open Loop Duty Cycle" SrcPort 1 Points [115, 0; 0, 50] DstBlock "Multiport\nSwitch" DstPort 2 } Line { SrcBlock "Design Parameters" SrcPort 2 Points [20, 0] Branch { DstBlock "Proportional Controller" DstPort 2 } Branch { Points [0, 90] Branch { DstBlock "Lag Controller" DstPort 2 } Branch { Points [0, 75] DstBlock "Lead Controller" DstPort 2 } } } Line { SrcBlock "Design Parameters" SrcPort 4 DstBlock "Proportional Controller" DstPort 4 } Line { Labels [0, 0] SrcBlock "Proportional Controller" SrcPort 1 DstBlock "Multiport\nSwitch" DstPort 3 } Line { SrcBlock "Lag Controller" SrcPort 1 Points [40, 0; 0, -65] DstBlock "Multiport\nSwitch" DstPort 4 } Line { SrcBlock "Lead Controller" SrcPort 1 Points [50, 0; 0, -120] DstBlock "Multiport\nSwitch" DstPort 5 } Line { SrcBlock "Controller Select" SrcPort 1 Points [125, 0; 0, 85] DstBlock "Multiport\nSwitch" DstPort 1 } Annotation { Name "Unit Feedback" Position [456, 413] } } } MatData { NumRecords 1 DataRecord { Tag DataTag0 Data " %)30 . 8 $ 8 ( @ % \" $ ! 0 % 0 \" $ 8 =F5R<" "VEO;@!C;VYT96YT &9O2=S($%E'!E