📄 kalmanbucy.mdl
字号:
ParameterDataTypeMode "Same as input"
ParameterDataType "sfix(16)"
ParameterScalingMode "Best Precision: Matrix-wise"
ParameterScaling "2^0"
OutDataTypeMode "Same as input"
OutDataType "sfix(16)"
OutScaling "2^0"
LockScale off
RndMeth "Floor"
SaturateOnIntegerOverflow on
SampleTime "-1"
}
Block {
BlockType Inport
BusObject "BusObject"
BusOutputAsStruct off
PortDimensions "-1"
SampleTime "-1"
DataType "auto"
OutDataType "sfix(16)"
OutScaling "2^0"
SignalType "auto"
SamplingMode "auto"
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
}
Block {
BlockType Outport
Port "1"
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 Product
Inputs "2"
Multiplication "Element-wise(.*)"
InputSameDT on
OutDataTypeMode "Same as first input"
OutDataType "sfix(16)"
OutScaling "2^0"
LockScale off
RndMeth "Zero"
SaturateOnIntegerOverflow on
SampleTime "-1"
}
Block {
BlockType RandomNumber
Mean "0"
Variance "1"
Seed "0"
SampleTime "-1"
VectorParams1D on
}
Block {
BlockType SubSystem
ShowPortLabels on
Permissions "ReadWrite"
PermitHierarchicalResolution "All"
SystemSampleTime "-1"
RTWFcnNameOpts "Auto"
RTWFileNameOpts "Auto"
SimViewingDevice off
DataTypeOverride "UseLocalSettings"
MinMaxOverflowLogging "UseLocalSettings"
}
Block {
BlockType Sum
IconShape "rectangular"
Inputs "++"
InputSameDT on
OutDataTypeMode "Same as first input"
OutDataType "sfix(16)"
OutScaling "2^0"
LockScale off
RndMeth "Floor"
SaturateOnIntegerOverflow on
SampleTime "-1"
}
}
AnnotationDefaults {
HorizontalAlignment "center"
VerticalAlignment "middle"
ForegroundColor "black"
BackgroundColor "white"
DropShadow off
FontName "Arial"
FontSize 10
FontWeight "normal"
FontAngle "normal"
}
LineDefaults {
FontName "Arial"
FontSize 9
FontWeight "normal"
FontAngle "normal"
}
System {
Name "kalmanbucy"
Location [219, 95, 817, 592]
Open on
ModelBrowserVisibility on
ModelBrowserWidth 212
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
ZoomFactor "100"
ReportName "simulink-default.rpt"
Block {
BlockType Inport
Name "u"
Position [30, 78, 60, 92]
Port "1"
IconDisplay "Port number"
LatchInput off
}
Block {
BlockType SubSystem
Name "Kalman-Bucy Filter"
Ports [2, 2]
Position [150, 184, 245, 251]
TreatAsAtomicUnit off
MinAlgLoopOccurrences off
RTWSystemCode "Auto"
MaskPromptString "x0|P0|A|B|C|D|Q|R"
MaskStyleString "edit,edit,edit,edit,edit,edit,edit,edit"
MaskTunableValueString "on,on,on,on,on,on,on,on"
MaskCallbackString "|||||||"
MaskEnableString "on,on,on,on,on,on,on,on"
MaskVisibilityString "on,on,on,on,on,on,on,on"
MaskToolTipString "on,on,on,on,on,on,on,on"
MaskVarAliasString ",,,,,,,"
MaskVariables "x0=@1;P0=@2;A=@3;B=@4;C=@5;D=@6;Q=@7;R=@8;"
MaskDisplay "port_label('input',1,'y')\nport_label('input',2"
",'u')\nport_label('output',1,'x')\nport_label('output',2,'y')\ndisp(sprintf('"
"Kalman-Bucy\\n Filter'))"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "x1|P1|A1|B1|C1|D1|Q1|R1"
MaskTabNameString ",,,,,,,"
System {
Name "Kalman-Bucy Filter"
Location [364, 176, 962, 673]
Open off
ModelBrowserVisibility on
ModelBrowserWidth 212
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
ZoomFactor "100"
Block {
BlockType Inport
Name "y1"
Position [365, 138, 395, 152]
Port "1"
IconDisplay "Port number"
LatchInput off
}
Block {
BlockType Inport
Name "u"
Position [30, 213, 60, 227]
Port "2"
IconDisplay "Port number"
PortDimensions "size(B,2)"
LatchInput off
}
Block {
BlockType Gain
Name "A"
Position [245, 105, 275, 135]
Orientation "left"
Gain "A"
Multiplication "Matrix(K*u)"
ParameterDataTypeMode "Inherit via internal rule"
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "A'"
Position [265, 245, 295, 275]
Orientation "left"
Gain "A'"
Multiplication "Matrix(u*K)"
ParameterDataTypeMode "Inherit via internal rule"
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "A1"
Position [260, 340, 290, 370]
Orientation "left"
Gain "A"
Multiplication "Matrix(K*u)"
ParameterDataTypeMode "Inherit via internal rule"
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "B"
Position [130, 65, 160, 95]
Gain "B"
Multiplication "Matrix(K*u)"
ParameterDataTypeMode "Inherit via internal rule"
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "C"
Position [245, 150, 275, 180]
Orientation "left"
Gain "C"
Multiplication "Matrix(K*u)"
ParameterDataTypeMode "Inherit via internal rule"
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "C'inv(R)"
Position [420, 290, 450, 320]
Gain "C'*inv(R)"
Multiplication "Matrix(u*K)"
ParameterDataTypeMode "Inherit via internal rule"
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "C1"
Position [390, 420, 420, 450]
Orientation "left"
Gain "C"
Multiplication "Matrix(u*K)"
ParameterDataTypeMode "Inherit via internal rule"
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "D"
Position [135, 205, 165, 235]
Gain "D"
Multiplication "Matrix(K*u)"
ParameterDataTypeMode "Inherit via internal rule"
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Integrator
Name "Integrator"
Ports [1, 1]
Position [295, 65, 325, 95]
InitialCondition "x0"
IgnoreLimit off
}
Block {
BlockType Integrator
Name "Integrator1"
Ports [1, 1]
Position [305, 290, 335, 320]
InitialCondition "P0"
IgnoreLimit off
}
Block {
BlockType Product
Name "Product"
Ports [2, 1]
Position [477, 120, 508, 150]
Orientation "up"
ShowName off
Multiplication "Matrix(*)"
InputSameDT off
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Product
Name "Product1"
Ports [2, 1]
Position [270, 412, 300, 443]
Orientation "left"
InputSameDT off
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Constant
Name "Q"
Position [30, 290, 60, 320]
Value "Q"
}
Block {
BlockType Sum
Name "Sum"
Ports [3, 1]
Position [210, 70, 230, 90]
ShowName off
IconShape "round"
Inputs "+++"
InputSameDT off
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Sum
Name "Sum1"
Ports [2, 1]
Position [210, 210, 230, 230]
ShowName off
IconShape "round"
Inputs "++|"
InputSameDT off
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Sum
Name "Sum2"
Ports [3, 1]
Position [210, 295, 230, 315]
ShowName off
IconShape "round"
Inputs "+++"
InputSameDT off
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Sum
Name "Sum3"
Ports [2, 1]
Position [155, 295, 175, 315]
ShowName off
IconShape "round"
Inputs "|+-"
InputSameDT off
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Sum
Name "Sum4"
Ports [2, 1]
Position [425, 180, 445, 200]
ShowName off
IconShape "round"
Inputs "+-|"
InputSameDT off
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Outport
Name "x"
Position [380, 43, 410, 57]
IconDisplay "Port number"
BusOutputAsStruct off
}
Block {
BlockType Outport
Name "y"
Position [370, 213, 400, 227]
Port "2"
IconDisplay "Port number"
BusOutputAsStruct off
}
Line {
SrcBlock "Sum1"
SrcPort 1
Points [55, 0]
Branch {
DstBlock "y"
DstPort 1
}
Branch {
Points [0, -30]
DstBlock "Sum4"
DstPort 2
}
}
Line {
SrcBlock "D"
SrcPort 1
DstBlock "Sum1"
DstPort 2
}
Line {
SrcBlock "C"
SrcPort 1
Points [-20, 0]
DstBlock "Sum1"
DstPort 1
}
Line {
SrcBlock "B"
SrcPort 1
DstBlock "Sum"
DstPort 2
}
Line {
SrcBlock "A"
SrcPort 1
Points [-20, 0]
DstBlock "Sum"
DstPort 3
}
Line {
SrcBlock "Integrator"
SrcPort 1
Points [20, 0]
Branch {
Points [0, -30]
DstBlock "x"
DstPort 1
}
Branch {
Points [0, 40]
Branch {
Points [0, 45]
DstBlock "C"
DstPort 1
}
Branch {
DstBlock "A"
DstPort 1
}
}
}
Line {
SrcBlock "Sum"
SrcPort 1
DstBlock "Integrator"
DstPort 1
}
Line {
SrcBlock "u"
SrcPort 1
Points [25, 0]
Branch {
DstBlock "D"
DstPort 1
}
Branch {
Points [0, -140]
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -