You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

1990 lines
53 KiB

Model {
Name "sl_quadcopter_vs"
Version 7.7
MdlSubVersion 0
GraphicalInterface {
NumRootInports 0
NumRootOutports 0
ParameterArgumentNames ""
ComputedModelVersion "1.13"
NumModelReferences 0
NumTestPointedSignals 0
}
SavedCharacterEncoding "ISO-8859-1"
SaveDefaultBlockParams on
ScopeRefreshTime 0.035000
OverrideScopeRefreshTime on
DisableAllScopes off
DataTypeOverride "UseLocalSettings"
DataTypeOverrideAppliesTo "AllNumericTypes"
MinMaxOverflowLogging "UseLocalSettings"
MinMaxOverflowArchiveMode "Overwrite"
MaxMDLFileLineLength 120
InitFcn "fprintf('----- creating workspace variables: camera, quad, P, pstar\\n');\n% create a spherical camera\n"
"camera = SphericalCamera('name', 'quad-vs');\n\n% create a grid of points on the ground\nP = mkgrid(2, 4);\n\n% set "
"the desired view of these points, defines the final pose\n% of the quad\npstar = camera.project(P, 'Tcam', transl(0,"
" 0, -5)*trotz(pi/2));\n\n% load a dynamic model of the quadrotor\nmdl_quadcopter"
Created "Thu Nov 4 20:52:52 2010"
Creator "corkep"
UpdateHistory "UpdateHistoryNever"
ModifiedByFormat "%<Auto>"
LastModifiedBy "corkep"
ModifiedDateFormat "%<Auto>"
LastModifiedDate "Wed Apr 25 21:17:41 2012"
RTWModifiedTimeStamp 257288787
ModelVersionFormat "1.%<AutoIncrement:13>"
ConfigurationManager "None"
SampleTimeColors off
SampleTimeAnnotations off
LibraryLinkDisplay "user"
WideLines on
ShowLineDimensions on
ShowPortDataTypes off
ShowLoopsOnError on
IgnoreBidirectionalLines off
ShowStorageClass off
ShowTestPointIcons on
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 "normal"
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 on
ExtModeTrigType "manual"
ExtModeTrigMode "normal"
ExtModeTrigPort "1"
ExtModeTrigElement "any"
ExtModeTrigDuration 1000
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 on
ExtModeAutoUpdateStatusClock on
BufferReuse on
ShowModelReferenceBlockVersion off
ShowModelReferenceBlockIO off
Array {
Type "Handle"
Dimension 1
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 "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 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 7
Cell "BooleansAsBitfields"
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 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 "ErrorLevel1"
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 "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 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 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 10
Version "1.11.0"
Array {
Type "Cell"
Dimension 19
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 "CustomSymbolStrFcnArg"
Cell "CustomSymbolStrBlkIO"
Cell "CustomSymbolStrTmpVar"
Cell "CustomSymbolStrMacro"
Cell "ReqsInCode"
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 11
Version "1.11.0"
Array {
Type "Cell"
Dimension 16
Cell "GeneratePreprocessorConditionals"
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"
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 "Solver"
ConfigPrmDlgPosition [ 920, 197, 1800, 827 ]
}
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 BusSelector
OutputAsBus off
}
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 Demux
Outputs "4"
DisplayOption "none"
BusSelectionMode off
}
Block {
BlockType Display
Format "short"
Decimation "10"
Floating off
SampleTime "-1"
}
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 MATLABFcn
MATLABFcn "sin"
OutputDimensions "-1"
OutputSignalType "auto"
Output1D on
SampleTime "-1"
}
Block {
BlockType Mux
Inputs "4"
DisplayOption "none"
UseBusObject off
BusObject "BusObject"
NonVirtualBus off
}
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 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 ToWorkspace
VariableName "simulink_output"
MaxDataPoints "1000"
Decimation "1"
SampleTime "0"
FixptAsFi off
NumInputs "1"
}
}
System {
Name "sl_quadcopter_vs"
Location [685, 189, 1715, 1039]
Open on
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "inches"
TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000]
TiledPageScale 1
ShowPageBoundaries off
ZoomFactor "100"
ReportName "simulink-default.rpt"
SIDHighWatermark "328"
Block {
BlockType MATLABFcn
Name "-> SE3"
SID "162"
Ports [1, 1]
Position [285, 545, 345, 575]
MATLABFcn "transl(u(1:3))*rpy2tr(u(4:6)')"
OutputDimensions "[4 4]"
Output1D off
}
Block {
BlockType BusSelector
Name "Bus\nSelector1"
SID "172"
Ports [1, 1]
Position [165, 591, 170, 639]
ShowName off
OutputSignals "Z"
OutputAsBus on
}
Block {
BlockType BusSelector
Name "Bus\nSelector2"
SID "246"
Ports [1, 1]
Position [195, 56, 200, 94]
ForegroundColor "orange"
ShowName off
OutputSignals "X,Y"
OutputAsBus on
Port {
PortNumber 1
Name "xy"
PropagatedSignals "X, Y"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType BusSelector
Name "Bus\nSelector3"
SID "247"
Ports [1, 1]
Position [195, 116, 200, 154]
ForegroundColor "orange"
ShowName off
OutputSignals "dx,dy"
OutputAsBus on
Port {
PortNumber 1
Name "xy rates"
PropagatedSignals "dx, dy"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType BusSelector
Name "Bus\nSelector4"
SID "248"
Ports [1, 1]
Position [405, 151, 410, 189]
ForegroundColor "blue"
ShowName off
OutputSignals "pitch,roll"
OutputAsBus on
Port {
PortNumber 1
Name "pitch/roll"
PropagatedSignals "pitch, roll"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType BusSelector
Name "Bus\nSelector5"
SID "249"
Ports [1, 1]
Position [405, 201, 410, 239]
ForegroundColor "blue"
ShowName off
OutputSignals "dpitch,droll"
OutputAsBus on
Port {
PortNumber 1
Name "pitch/roll rates"
PropagatedSignals "dpitch, droll"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType BusSelector
Name "Bus\nSelector6"
SID "250"
Ports [1, 1]
Position [195, 293, 200, 337]
ShowName off
OutputSignals "dyaw"
Port {
PortNumber 1
Name "<dyaw>"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType BusSelector
Name "Bus\nSelector7"
SID "161"
Ports [1, 1]
Position [165, 536, 170, 584]
ShowName off
OutputSignals "X,Y,Z,roll,pitch,yaw"
OutputAsBus on
Port {
PortNumber 1
PropagatedSignals "X, Y, Z, roll, pitch, yaw"
ShowPropagatedSignals "on"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType BusSelector
Name "Bus\nSelector8"
SID "251"
Ports [1, 1]
Position [200, 398, 205, 452]
ForegroundColor "red"
ShowName off
OutputSignals "dz"
Port {
PortNumber 1
Name "<dz>"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Scope
Name "Cartesian velocity"
SID "144"
Ports [1]
Position [260, 674, 290, 706]
Floating off
Location [1808, 549, 2594, 996]
Open off
NumInputPorts "1"
ZoomMode "yonly"
List {
ListType AxesTitles
axes1 "%<SignalLabel>"
}
TimeRange "20"
YMin "-0.4"
YMax "1.9"
DataFormat "StructureWithTime"
SampleTime "0"
}
Block {
BlockType Display
Name "Cartesian velocity dmd"
SID "145"
Ports [1]
Position [55, 650, 140, 730]
BlockMirror on
Format "short_e"
Decimation "1"
Lockdown off
}
Block {
BlockType Clock
Name "Clock"
SID "252"
Position [710, 399, 755, 421]
BackgroundColor "yellow"
ShowName off
DisplayTime on
Decimation "10"
}
Block {
BlockType Reference
Name "Control Mixer"
SID "324"
Ports [4, 5]
Position [680, 18, 755, 362]
DropShadow on
LibraryVersion "1.46"
SourceBlock "roblocks/Dynamics/Control Mixer"
SourceType ""
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
}
Block {
BlockType Gain
Name "D_pr"
SID "276"
Position [485, 205, 515, 235]
ForegroundColor "blue"
Gain ".1"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "D_xy"
SID "277"
Position [275, 120, 305, 150]
ForegroundColor "orange"
Gain "2"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "D_yaw"
SID "278"
Position [250, 300, 280, 330]
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "D_z"
SID "279"
Position [250, 410, 280, 440]
ForegroundColor "red"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Demux
Name "Demux"
SID "280"
Ports [1, 2]
Position [635, 56, 640, 94]
ForegroundColor "blue"
ShowName off
Outputs "2"
DisplayOption "bar"
}
Block {
BlockType Demux
Name "Demux1"
SID "165"
Ports [1, 4]
Position [70, 16, 75, 109]
ShowName off
DisplayOption "bar"
Port {
PortNumber 1
Name "vx"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
Port {
PortNumber 2
Name "vy"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
Port {
PortNumber 3
Name "vz"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
Port {
PortNumber 4
Name "wz"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Gain
Name "Gain"
SID "169"
Position [815, 635, 845, 665]
BlockRotation 270
BlockMirror on
NamePlacement "alternate"
Gain "-0.3"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType MATLABFcn
Name "Jxyz"
SID "146"
Ports [1, 1]
Position [645, 545, 705, 575]
MATLABFcn "u(:,[1 2 3 6])"
Output1D off
}
Block {
BlockType MATLABFcn
Name "MATLAB Fcn"
SID "147"
Ports [1, 1]
Position [530, 645, 590, 675]
BackgroundColor "lightBlue"
ShowName off
MATLABFcn "angdiff( u(:) )"
Output1D off
Port {
PortNumber 1
Name "feature error"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType MATLABFcn
Name "MATLAB Fcn1"
SID "148"
Ports [1, 1]
Position [705, 695, 765, 725]
ShowName off
MATLABFcn "norm(u)"
}
Block {
BlockType Mux
Name "Mux"
SID "283"
Ports [3, 1]
Position [840, 400, 845, 460]
ShowName off
Inputs "3"
DisplayOption "bar"
}
Block {
BlockType Mux
Name "Mux2"
SID "166"
Ports [2, 1]
Position [115, 13, 120, 62]
ShowName off
Inputs "2"
DisplayOption "bar"
}
Block {
BlockType Gain
Name "P_pr"
SID "285"
Position [575, 60, 605, 90]
ForegroundColor "blue"
Gain "-400"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "P_xy"
SID "286"
Position [380, 60, 410, 90]
ForegroundColor "orange"
Gain "0.1*diag([-1, 1])"
Multiplication "Matrix(K*u)"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
Port {
PortNumber 1
Name "pitch/roll\ndmd"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Gain
Name "P_yaw"
SID "287"
Position [370, 265, 400, 295]
Gain "-100"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "P_z"
SID "288"
Position [370, 375, 400, 405]
ForegroundColor "red"
Gain "-40"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Reference
Name "Quadrotor"
SID "323"
Ports [4, 1]
Position [840, 13, 905, 297]
DropShadow on
LibraryVersion "1.46"
SourceBlock "roblocks/Dynamics/Quadrotor"
SourceType ""
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
quad "quad"
}
Block {
BlockType Reference
Name "Quadrotor plot"
SID "326"
Ports [1]
Position [645, 402, 675, 448]
DropShadow on
LibraryVersion "1.46"
SourceBlock "roblocks/Robot Graphics/Quadrotor plot"
SourceType ""
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
x "0"
}
Block {
BlockType Sum
Name "Sum"
SID "150"
Ports [2, 1]
Position [475, 650, 495, 670]
BackgroundColor "lightBlue"
ShowName off
IconShape "round"
Inputs "+-|"
}
Block {
BlockType Sum
Name "Sum15"
SID "307"
Ports [2, 1]
Position [305, 380, 325, 400]
ForegroundColor "red"
ShowName off
IconShape "round"
Inputs "|+-"
InputSameDT off
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Sum
Name "Sum16"
SID "308"
Ports [2, 1]
Position [530, 65, 550, 85]
ForegroundColor "blue"
ShowName off
IconShape "round"
Inputs "|+-"
InputSameDT off
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Sum
Name "Sum17"
SID "309"
Ports [2, 1]
Position [250, 65, 270, 85]
ForegroundColor "orange"
ShowName off
IconShape "round"
Inputs "+-|"
InputSameDT off
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
Port {
PortNumber 1
Name "xy error"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Sum
Name "Sum18"
SID "310"
Ports [2, 1]
Position [325, 65, 345, 85]
ForegroundColor "orange"
ShowName off
IconShape "round"
Inputs "|+-"
InputSameDT off
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Sum
Name "Sum19"
SID "311"
Ports [2, 1]
Position [455, 65, 475, 85]
ForegroundColor "blue"
ShowName off
IconShape "round"
Inputs "|+-"
InputSameDT off
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
Port {
PortNumber 1
Name "pitch/roll\nerror"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Sum
Name "Sum2"
SID "312"
Ports [2, 1]
Position [295, 270, 315, 290]
ShowName off
IconShape "round"
Inputs "|+-"
InputSameDT off
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Sum
Name "Sum4"
SID "314"
Ports [2, 1]
Position [445, 380, 465, 400]
ForegroundColor "red"
DropShadow on
ShowName off
IconShape "round"
Inputs "++|"
InputSameDT off
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType ToWorkspace
Name "To Workspace"
SID "315"
Ports [1]
Position [870, 415, 930, 445]
ShowName off
VariableName "quad"
MaxDataPoints "inf"
SampleTime "-1"
SaveFormat "Array"
}
Block {
BlockType Display
Name "Z"
SID "171"
Ports [1]
Position [210, 600, 300, 630]
BackgroundColor "yellow"
Decimation "1"
Lockdown off
}
Block {
BlockType Reference
Name "camera"
SID "151"
Ports [1, 1]
Position [385, 521, 465, 599]
BackgroundColor "lightBlue"
DropShadow on
LibraryVersion "1.46"
SourceBlock "roblocks/Vision/camera"
SourceType ""
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
cam "camera"
points "P"
}
Block {
BlockType Constant
Name "desired\nimage plane\ncoordinates"
SID "152"
Position [320, 634, 435, 686]
BackgroundColor "green"
Value "pstar"
VectorParams1D off
}
Block {
BlockType Display
Name "feature error"
SID "153"
Ports [1]
Position [490, 716, 580, 814]
BlockMirror on
Format "bank"
Decimation "1"
Lockdown off
}
Block {
BlockType Display
Name "feature error\nnorm"
SID "154"
Ports [1]
Position [875, 695, 935, 725]
Decimation "1"
Lockdown off
}
Block {
BlockType Scope
Name "feature error2"
SID "155"
Ports [1]
Position [750, 749, 780, 781]
Floating off
Location [1829, 49, 2615, 496]
Open off
NumInputPorts "1"
ZoomMode "yonly"
List {
ListType AxesTitles
axes1 "%<SignalLabel>"
}
TimeRange "20"
YMin "-150"
YMax "150"
SaveName "ScopeData1"
DataFormat "StructureWithTime"
SampleTime "0"
}
Block {
BlockType Reference
Name "image\nJacobian"
SID "327"
Ports [1, 1]
Position [535, 534, 605, 586]
BackgroundColor "lightBlue"
DropShadow on
LibraryVersion "1.46"
SourceBlock "roblocks/Vision/image\nJacobian"
SourceType ""
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
cam "camera"
z "1"
}
Block {
BlockType Reference
Name "pinvJac"
SID "328"
Ports [2, 2]
Position [740, 545, 780, 605]
BackgroundColor "red"
DropShadow on
LibraryVersion "1.46"
SourceBlock "roblocks/Vision/pinvJac"
SourceType ""
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
}
Block {
BlockType Display
Name "visjac\ncondition"
SID "157"
Ports [1]
Position [875, 575, 935, 605]
Decimation "1"
Lockdown off
}
Block {
BlockType Constant
Name "weight"
SID "317"
Position [410, 315, 440, 345]
ForegroundColor "red"
DropShadow on
Value "861"
SampleTime "0"
}
Line {
SrcBlock "camera"
SrcPort 1
Points [15, 0]
Branch {
DstBlock "Sum"
DstPort 1
}
Branch {
DstBlock "image\nJacobian"
DstPort 1
}
}
Line {
SrcBlock "Sum"
SrcPort 1
DstBlock "MATLAB Fcn"
DstPort 1
}
Line {
SrcBlock "desired\nimage plane\ncoordinates"
SrcPort 1
DstBlock "Sum"
DstPort 2
}
Line {
Name "feature error"
Labels [0, 0]
SrcBlock "MATLAB Fcn"
SrcPort 1
Points [50, 0]
Branch {
Points [0, 50]
Branch {
DstBlock "MATLAB Fcn1"
DstPort 1
}
Branch {
Points [0, 0; 0, 55]
Branch {
Labels [1, 0]
DstBlock "feature error2"
DstPort 1
}
Branch {
DstBlock "feature error"
DstPort 1
}
}
}
Branch {
Labels [1, 1]
Points [0, -70]
DstBlock "pinvJac"
DstPort 2
}
}
Line {
Labels [0, 0]
SrcBlock "image\nJacobian"
SrcPort 1
DstBlock "Jxyz"
DstPort 1
}
Line {
Labels [0, 0]
SrcBlock "Jxyz"
SrcPort 1
DstBlock "pinvJac"
DstPort 1
}
Line {
SrcBlock "-> SE3"
SrcPort 1
DstBlock "camera"
DstPort 1
}
Line {
Labels [0, 0]
SrcBlock "Bus\nSelector7"
SrcPort 1
DstBlock "-> SE3"
DstPort 1
}
Line {
SrcBlock "MATLAB Fcn1"
SrcPort 1
DstBlock "feature error\nnorm"
DstPort 1
}
Line {
Name "vx"
Labels [0, 0]
SrcBlock "Demux1"
SrcPort 1
DstBlock "Mux2"
DstPort 1
}
Line {
Name "vy"
Labels [0, 0]
SrcBlock "Demux1"
SrcPort 2
DstBlock "Mux2"
DstPort 2
}
Line {
SrcBlock "Gain"
SrcPort 1
Points [0, 160; -635, 0]
Branch {
Points [0, -140]
Branch {
DstBlock "Cartesian velocity dmd"
DstPort 1
}
Branch {
DstBlock "Cartesian velocity"
DstPort 1
}
}
Branch {
Points [-170, 0; 0, -765]
DstBlock "Demux1"
DstPort 1
}
}
Line {
SrcBlock "Bus\nSelector1"
SrcPort 1
DstBlock "Z"
DstPort 1
}
Line {
SrcBlock "Control Mixer"
SrcPort 1
DstBlock "Quadrotor"
DstPort 1
}
Line {
SrcBlock "Control Mixer"
SrcPort 3
DstBlock "Quadrotor"
DstPort 3
}
Line {
SrcBlock "Control Mixer"
SrcPort 4
DstBlock "Quadrotor"
DstPort 4
}
Line {
SrcBlock "weight"
SrcPort 1
Points [10, 0]
DstBlock "Sum4"
DstPort 1
}
Line {
SrcBlock "Sum15"
SrcPort 1
DstBlock "P_z"
DstPort 1
}
Line {
SrcBlock "P_z"
SrcPort 1
DstBlock "Sum4"
DstPort 2
}
Line {
SrcBlock "Quadrotor"
SrcPort 1
Points [30, 0; 0, 350; -220, 0; 0, -45]
Branch {
Points [0, 45; -160, 0; 0, 0]
Branch {
Points [-445, 0]
Branch {
Points [0, -80]
Branch {
DstBlock "Bus\nSelector8"
DstPort 1
}
Branch {
Points [0, -110]
Branch {
Points [0, -95]
Branch {
DstBlock "Bus\nSelector5"
DstPort 1
}
Branch {
Points [0, -50]
Branch {
DstBlock "Bus\nSelector4"
DstPort 1
}
Branch {
Points [0, -35]
Branch {
Points [0, -60]
DstBlock "Bus\nSelector2"
DstPort 1
}
Branch {
DstBlock "Bus\nSelector3"
DstPort 1
}
}
}
}
Branch {
DstBlock "Bus\nSelector6"
DstPort 1
}
}
}
Branch {
Points [0, 55]
Branch {
Points [0, 55]
DstBlock "Bus\nSelector1"
DstPort 1
}
Branch {
DstBlock "Bus\nSelector7"
DstPort 1
}
}
}
Branch {
Points [0, -80]
DstBlock "Quadrotor plot"
DstPort 1
}
}
Branch {
Points [0, -30]
DstBlock "Mux"
DstPort 2
}
}
Line {
Name "xy"
Labels [0, 0]
SrcBlock "Bus\nSelector2"
SrcPort 1
DstBlock "Sum17"
DstPort 2
}
Line {
Name "xy error"
Labels [0, 0]
SrcBlock "Sum17"
SrcPort 1
DstBlock "Sum18"
DstPort 1
}
Line {
Name "xy rates"
Labels [0, 0]
SrcBlock "Bus\nSelector3"
SrcPort 1
DstBlock "D_xy"
DstPort 1
}
Line {
SrcBlock "D_xy"
SrcPort 1
Points [25, 0]
DstBlock "Sum18"
DstPort 2
}
Line {
Name "pitch/roll\ndmd"
Labels [0, 0]
SrcBlock "P_xy"
SrcPort 1
DstBlock "Sum19"
DstPort 1
}
Line {
Name "pitch/roll"
Labels [0, 0]
SrcBlock "Bus\nSelector4"
SrcPort 1
Points [50, 0]
DstBlock "Sum19"
DstPort 2
}
Line {
Name "pitch/roll rates"
Labels [0, 0]
SrcBlock "Bus\nSelector5"
SrcPort 1
DstBlock "D_pr"
DstPort 1
}
Line {
Name "pitch/roll\nerror"
Labels [0, 0]
SrcBlock "Sum19"
SrcPort 1
DstBlock "Sum16"
DstPort 1
}
Line {
SrcBlock "Sum16"
SrcPort 1
DstBlock "P_pr"
DstPort 1
}
Line {
SrcBlock "P_pr"
SrcPort 1
DstBlock "Demux"
DstPort 1
}
Line {
SrcBlock "P_yaw"
SrcPort 1
Points [210, 0; 0, -45]
DstBlock "Control Mixer"
DstPort 3
}
Line {
SrcBlock "Sum2"
SrcPort 1
DstBlock "P_yaw"
DstPort 1
}
Line {
Name "<dyaw>"
Labels [0, 0]
SrcBlock "Bus\nSelector6"
SrcPort 1
DstBlock "D_yaw"
DstPort 1
}
Line {
Name "<dz>"
Labels [0, 0]
SrcBlock "Bus\nSelector8"
SrcPort 1
DstBlock "D_z"
DstPort 1
}
Line {
SrcBlock "D_z"
SrcPort 1
Points [30, 0]
DstBlock "Sum15"
DstPort 2
}
Line {
SrcBlock "D_pr"
SrcPort 1
Points [20, 0]
DstBlock "Sum16"
DstPort 2
}
Line {
SrcBlock "Demux"
SrcPort 2
Points [0, 65]
DstBlock "Control Mixer"
DstPort 2
}
Line {
SrcBlock "Demux"
SrcPort 1
DstBlock "Control Mixer"
DstPort 1
}
Line {
SrcBlock "D_yaw"
SrcPort 1
Points [20, 0]
DstBlock "Sum2"
DstPort 2
}
Line {
SrcBlock "Sum4"
SrcPort 1
Points [135, 0; 0, -70]
DstBlock "Control Mixer"
DstPort 4
}
Line {
SrcBlock "Control Mixer"
SrcPort 2
DstBlock "Quadrotor"
DstPort 2
}
Line {
SrcBlock "Mux"
SrcPort 1
DstBlock "To Workspace"
DstPort 1
}
Line {
SrcBlock "Clock"
SrcPort 1
DstBlock "Mux"
DstPort 1
}
Line {
SrcBlock "Control Mixer"
SrcPort 5
Points [35, 0; 0, 120]
DstBlock "Mux"
DstPort 3
}
Line {
SrcBlock "Sum18"
SrcPort 1
DstBlock "P_xy"
DstPort 1
}
Line {
SrcBlock "Mux2"
SrcPort 1
Points [135, 0]
DstBlock "Sum17"
DstPort 1
}
Line {
Name "vz"
Labels [0, 0]
SrcBlock "Demux1"
SrcPort 3
Points [10, 0; 0, 315]
DstBlock "Sum15"
DstPort 1
}
Line {
Name "wz"
Labels [0, 0]
SrcBlock "Demux1"
SrcPort 4
Points [20, 0; 0, 180]
DstBlock "Sum2"
DstPort 1
}
Line {
SrcBlock "pinvJac"
SrcPort 1
Points [45, 0]
DstBlock "Gain"
DstPort 1
}
Line {
SrcBlock "pinvJac"
SrcPort 2
DstBlock "visjac\ncondition"
DstPort 1
}
Annotation {
Position [70, 592]
}
Annotation {
Position [70, 592]
}
Annotation {
Position [70, 592]
}
Annotation {
Name " "
Position [440, 35]
}
Annotation {
Name "state"
Position [876, 493]
}
Annotation {
Name "gravity feedforward"
Position [472, 415]
}
Annotation {
Name "attitude rate\nloop"
Position [552, 130]
HorizontalAlignment "left"
}
Annotation {
Name "attitude\nloop"
Position [474, 130]
HorizontalAlignment "left"
}
Annotation {
Name "position rate\nloop"
Position [352, 125]
HorizontalAlignment "left"
}
Annotation {
Name "position\nloop"
Position [272, 45]
HorizontalAlignment "left"
}
Annotation {
Name "yaw rate\nloop"
Position [317, 320]
HorizontalAlignment "left"
}
Annotation {
Name "height rate\nloop"
Position [322, 435]
HorizontalAlignment "left"
}
}
}