📄 aeroblk_vmm.mdl
字号:
SaturateOnIntegerOverflow on
SampleTime "-1"
}
Block {
BlockType Goto
IconDisplay "Tag"
}
Block {
BlockType Inport
Port "1"
UseBusObject off
BusObject "BusObject"
BusOutputAsStruct off
PortDimensions "-1"
SampleTime "-1"
DataType "auto"
OutDataType "sfix(16)"
OutScaling "2^0"
SignalType "auto"
SamplingMode "auto"
LatchByDelayingOutsideSignal off
LatchByCopyingInsideSignal off
Interpolate on
}
Block {
BlockType Integrator
ExternalReset "none"
InitialConditionSource "internal"
InitialCondition "0"
LimitOutput off
UpperSaturationLimit "inf"
LowerSaturationLimit "-inf"
ShowSaturationPort off
ShowStatePort off
AbsoluteTolerance "auto"
IgnoreLimit off
ZeroCross on
ContinuousStateAttributes "''"
}
Block {
BlockType "Interpolation_n-D"
NumberOfTableDimensions "2"
Table "sqrt([1:11]' * [1:11])"
InterpMethod "Linear"
ExtrapMethod "Linear"
RangeErrorMode "None"
CheckIndexInCode on
ValidIndexMayReachLast off
NumSelectionDims "0"
OutDataTypeMode "Inherit from table data"
OutDataType "sfix(16)"
OutScaling "2^0"
LockScale off
RndMeth "Floor"
SampleTime "-1"
LUTDesignTableMode "Redesign Table"
LUTDesignDataSource "Block Dialog"
LUTDesignFunctionName "sqrt(x)"
LUTDesignUseExistingBP on
LUTDesignRelError "0.01"
LUTDesignAbsError "1e-6"
}
Block {
BlockType Logic
Operator "AND"
Inputs "2"
IconShape "rectangular"
AllPortsSameDT on
OutDataTypeMode "Logical (see Configuration Parameters: Optimiza"
"tion)"
LogicDataType "uint(8)"
SampleTime "-1"
}
Block {
BlockType Mux
Inputs "4"
DisplayOption "none"
UseBusObject off
BusObject "BusObject"
NonVirtualBus off
}
Block {
BlockType Outport
Port "1"
UseBusObject off
BusObject "BusObject"
BusOutputAsStruct off
PortDimensions "-1"
SampleTime "-1"
DataType "auto"
OutDataType "sfix(16)"
OutScaling "2^0"
SignalType "auto"
SamplingMode "auto"
OutputWhenDisabled "held"
InitialOutput "[]"
}
Block {
BlockType PreLookup
BreakpointsData "[10:10:100]"
IndexSearchMethod "Binary search"
BeginIndexSearchUsingPreviousIndexResult off
OutputOnlyTheIndex off
ProcessOutOfRangeInput "Clip to range"
UseLastBreakpoint off
ActionForOutOfRangeInput "None"
SampleTime "-1"
IndexDataTypeMode "uint32"
IndexDataType "sfix(16)"
FractionDataTypeMode "Inherit via internal rule"
FractionDataType "sfix(16)"
FractionScaling "2^0"
LockScale off
RndMeth "Floor"
}
Block {
BlockType Product
Inputs "2"
Multiplication "Element-wise(.*)"
CollapseMode "All dimensions"
CollapseDim "1"
InputSameDT on
OutDataTypeMode "Same as first input"
OutDataType "sfix(16)"
OutScaling "2^0"
LockScale off
RndMeth "Zero"
SaturateOnIntegerOverflow on
SampleTime "-1"
}
Block {
BlockType Reference
}
Block {
BlockType RelationalOperator
Operator ">="
InputSameDT on
LogicOutDataTypeMode "Logical (see Configuration Parameters: Optimiza"
"tion)"
LogicDataType "uint(8)"
ZeroCross on
SampleTime "-1"
}
Block {
BlockType Reshape
OutputDimensionality "1-D array"
OutputDimensions "[1,1]"
}
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 Selector
NumberOfDimensions "1"
IndexMode "One-based"
InputPortWidth "-1"
SampleTime "-1"
}
Block {
BlockType "S-Function"
FunctionName "system"
SFunctionModules "''"
PortCounts "[]"
}
Block {
BlockType SubSystem
ShowPortLabels "FromPortIcon"
Permissions "ReadWrite"
PermitHierarchicalResolution "All"
TreatAsAtomicUnit 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"
MinMaxOverflowLogging "UseLocalSettings"
}
Block {
BlockType Sum
IconShape "rectangular"
Inputs "++"
CollapseMode "All dimensions"
CollapseDim "1"
InputSameDT on
OutDataTypeMode "Same as first input"
OutDataType "sfix(16)"
OutScaling "2^0"
LockScale off
RndMeth "Floor"
SaturateOnIntegerOverflow on
SampleTime "-1"
}
Block {
BlockType Switch
Criteria "u2 >= Threshold"
Threshold "0"
InputSameDT on
OutDataTypeMode "Inherit via internal rule"
RndMeth "Floor"
SaturateOnIntegerOverflow on
ZeroCross on
SampleTime "-1"
}
Block {
BlockType Terminator
}
}
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"
}
System {
Name "aeroblk_vmm"
Location [49, 85, 535, 530]
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"
Block {
BlockType Reference
Name "6DoF Animation"
Ports [2]
Position [95, 84, 195, 166]
BackgroundColor "[1.000000, 0.501961, 0.501961]"
SourceBlock "aerolibanim/6DoF Animation"
SourceType "6DoF_Animation"
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"
u1 "[0 2500 -100 1000 -1100 100]"
u2 "0.2"
u3 "50.0"
u4 "[5000 0 5000]"
u5 "Fly alongside"
u6 "[50 150 -10]"
u7 "45"
u8 on
}
Block {
BlockType SubSystem
Name "Airframe"
Ports [2, 2]
Position [235, 196, 330, 354]
BackgroundColor "[1.000000, 0.694118, 0.392157]"
MinAlgLoopOccurrences off
RTWSystemCode "Auto"
FunctionWithSeparateData off
MaskHideContents off
System {
Name "Airframe"
Location [106, 75, 984, 473]
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 "Envir Bus"
Position [165, 163, 195, 177]
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "Motor Bus"
Position [25, 313, 55, 327]
Port "2"
IconDisplay "Port number"
}
Block {
BlockType Scope
Name "Acceleration"
Ports [1]
Position [685, 329, 715, 361]
Floating off
Location [481, 506, 882, 751]
Open off
NumInputPorts "1"
ZoomMode "yonly"
List {
ListType AxesTitles
axes1 "%<SignalLabel>"
}
TimeRange "35"
YMin "-50"
YMax "200"
SaveName "ScopeData1"
DataFormat "StructureWithTime"
SampleTime "0"
}
Block {
BlockType BusCreator
Name "Bus\nCreator1"
Ports [3, 1]
Position [205, 217, 210, 373]
ShowName off
Inputs "3"
DisplayOption "bar"
}
Block {
BlockType BusSelector
Name "Bus\nSelector"
Ports [1, 2]
Position [380, 201, 385, 279]
ShowName off
OutputSignals "Motor.Propellant.m_dot,Motor.Propellant.m"
Port {
PortNumber 1
Name "<m_dot>"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
Port {
PortNumber 2
Name "<m>"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType SubSystem
Name "Collision?"
Ports [1]
Position [735, 125, 785, 145]
MinAlgLoopOccurrences off
RTWSystemCode "Auto"
FunctionWithSeparateData off
MaskHideContents off
System {
Name "Collision?"
Location [310, 339, 679, 452]
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 "Xe"
Position [25, 43, 55, 57]
IconDisplay "Port number"
}
Block {
BlockType Reference
Name "Check Static \nUpper Bound"
Description "u <= vmm_alt"
Ports [1]
Position [150, 27, 210, 73]
ShowName off
SourceBlock "simulink/Model\nVerification/Check Stat"
"ic \nUpper Bound"
SourceType "Checks_SMax"
ShowPortLabels "on"
SystemSampleTime "-1"
FunctionWithSeparateData "off"
RTWMemSecFuncInitTerm "Inherit from model"
RTWMemSecFuncExecute "Inherit from model"
RTWMemSecDataConstants "Inherit from model"
RTWMemSecDataInternal "Inherit from model"
RTWMemSecDataParameters "Inherit from model"
max "vmm_alt"
max_included "on"
enabled "on"
callback "disp('Collision with ground')"
stopWhenAssertionFail "on"
export "off"
icon "graphic"
}
Block {
BlockType Selector
Name "Selector"
Ports [1, 1]
Position [90, 31, 130, 69]
ShowName off
IndexOptions "Index vector (dialog)"
Indices "3"
OutputSizes "1"
InputPortWidth "3"
}
Line {
SrcBlock "Selector"
SrcPort 1
DstBlock "Check Static \nUpper Bound"
DstPort 1
}
Line {
SrcBlock "Xe"
SrcPort 1
DstBlock "Selector"
DstPort 1
}
}
}
Block {
BlockType Reference
Name "Custom Variable Mass 6DoF (Quaternion)"
Ports [6, 8]
Position [435, 119, 640, 361]
BackgroundColor "[1.000000, 0.501961, 0.501961]"
SourceBlock "aerolib6dof2/6DoF (Euler Angles)"
SourceType "6DoF EoM (Body Axis)"
ShowPortLabels "on"
SystemSampleTime "-1"
FunctionWithSeparateData "off"
RTWMemSecFuncInitTerm "Inherit from model"
RTWMemSecFuncExecute "Inherit from model"
RTWMemSecDataConstants "Inherit from model"
RTWMemSecDataInternal "Inherit from model"
RTWMemSecDataParameters "Inherit from model"
units "Metric (MKS)"
mtype "Custom Variable"
rep "Quaternion"
xme_0 "[0 0 vmm_alt]"
Vm_0 "[0 0 0]"
eul_0 "[0 pi/4 0]"
pm_0 "[0 0 0]"
mass_0 "1.0"
mass_e "0"
mass_f "0"
inertia "eye(3)"
inertia_e "eye(3)"
inertia_f "eye(3)"
k_quat "1.0"
}
Block {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -