📄 simtrackerkalman.mdl
字号:
InitialOutput "0"
}
Line {
SrcBlock "Force"
SrcPort 1
DstBlock "Sum1"
DstPort 1
}
Line {
SrcBlock "Gain2"
SrcPort 1
Points [-72, 0; 0, -45]
DstBlock "Sum1"
DstPort 2
}
Line {
SrcBlock "Integrator1"
SrcPort 1
Points [23, 0]
Branch {
DstBlock "Gain3"
DstPort 1
}
Branch {
Points [0, 50]
DstBlock "Gain2"
DstPort 1
}
}
Line {
SrcBlock "Sum1"
SrcPort 1
DstBlock "Integrator1"
DstPort 1
}
Line {
SrcBlock "Gain3"
SrcPort 1
DstBlock "Accleration"
DstPort 1
}
}
}
Block {
BlockType Integrator
Name "Horizontal\nPosition"
Ports [1, 1]
Position [320, 143, 345, 187]
BackgroundColor "magenta"
Port {
PortNumber 1
Name "x"
TestPoint off
LinearAnalysisOutput off
LinearAnalysisInput off
RTWStorageClass "Auto"
DataLogging off
DataLoggingNameMode "SignalName"
DataLoggingDecimateData off
DataLoggingDecimation "2"
DataLoggingLimitDataPoints off
DataLoggingMaxPoints "5000"
}
}
Block {
BlockType Integrator
Name "Horizontal\nVelocity"
Ports [2, 1]
Position [225, 144, 270, 186]
BackgroundColor "magenta"
InitialConditionSource "external"
Port {
PortNumber 1
Name "xdot"
TestPoint off
LinearAnalysisOutput off
LinearAnalysisInput off
RTWStorageClass "Auto"
DataLogging off
DataLoggingNameMode "SignalName"
DataLoggingDecimateData off
DataLoggingDecimation "2"
DataLoggingLimitDataPoints off
DataLoggingMaxPoints "5000"
}
}
Block {
BlockType SubSystem
Name "Vertical\nAcceleration"
Ports [1, 1]
Position [140, 25, 170, 75]
BackgroundColor "cyan"
DropShadow on
ShowPortLabels off
TreatAsAtomicUnit off
System {
Name "Vertical\nAcceleration"
Location [160, 166, 587, 346]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "cyan"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType Inport
Name "Inport"
Position [70, 65, 90, 85]
ForegroundColor "red"
}
Block {
BlockType Gain
Name "Gain"
Position [180, 120, 235, 150]
Orientation "left"
Gain "1/tauc"
}
Block {
BlockType Gain
Name "Gain1"
Position [315, 72, 340, 98]
Gain "g"
}
Block {
BlockType Integrator
Name "Integrator"
Ports [1, 1]
Position [205, 71, 235, 99]
}
Block {
BlockType Sum
Name "Sum"
Ports [2, 1]
Position [145, 67, 165, 98]
Inputs "+-"
}
Block {
BlockType Outport
Name "out_1"
Position [370, 75, 390, 95]
InitialOutput "0"
}
Line {
SrcBlock "Inport"
SrcPort 1
DstBlock "Sum"
DstPort 1
}
Line {
SrcBlock "Gain"
SrcPort 1
Points [-70, 0; 0, -45]
DstBlock "Sum"
DstPort 2
}
Line {
SrcBlock "Integrator"
SrcPort 1
Points [25, 0]
Branch {
DstBlock "Gain1"
DstPort 1
}
Branch {
Points [0, 50]
DstBlock "Gain"
DstPort 1
}
}
Line {
SrcBlock "Sum"
SrcPort 1
DstBlock "Integrator"
DstPort 1
}
Line {
SrcBlock "Gain1"
SrcPort 1
DstBlock "out_1"
DstPort 1
}
}
}
Block {
BlockType Integrator
Name "Vertical\nPosition\n"
Ports [1, 1]
Position [310, 27, 335, 73]
BackgroundColor "cyan"
Port {
PortNumber 1
Name "y"
TestPoint off
LinearAnalysisOutput off
LinearAnalysisInput off
RTWStorageClass "Auto"
DataLogging off
DataLoggingNameMode "SignalName"
DataLoggingDecimateData off
DataLoggingDecimation "2"
DataLoggingLimitDataPoints off
DataLoggingMaxPoints "5000"
}
}
Block {
BlockType Integrator
Name "Vertical\nVelocity"
Ports [1, 1]
Position [225, 28, 250, 72]
BackgroundColor "cyan"
Port {
PortNumber 1
Name "ydot"
TestPoint off
LinearAnalysisOutput off
LinearAnalysisInput off
RTWStorageClass "Auto"
DataLogging off
DataLoggingNameMode "SignalName"
DataLoggingDecimateData off
DataLoggingDecimation "2"
DataLoggingLimitDataPoints off
DataLoggingMaxPoints "5000"
}
}
Block {
BlockType Outport
Name "Y"
Position [360, 45, 390, 59]
}
Block {
BlockType Outport
Name "X"
Position [370, 160, 400, 174]
Port "2"
}
Line {
SrcBlock "Vertical\nAcceleration"
SrcPort 1
DstBlock "Vertical\nVelocity"
DstPort 1
}
Line {
Name "ydot"
Labels [0, 0; 0, 0; 0, 0; 0, 0; 0, 0; 0, 0]
SrcBlock "Vertical\nVelocity"
SrcPort 1
DstBlock "Vertical\nPosition\n"
DstPort 1
}
Line {
Name "xdot"
Labels [0, 0; 0, 0; 0, 0; 0, 0; 0, 0; 0, 0]
SrcBlock "Horizontal\nVelocity"
SrcPort 1
DstBlock "Horizontal\nPosition"
DstPort 1
}
Line {
SrcBlock "Horizontal\nAccleration"
SrcPort 1
DstBlock "Horizontal\nVelocity"
DstPort 1
}
Line {
SrcBlock "Demux"
SrcPort 1
Points [15, 0; 0, -40]
DstBlock "Vertical\nAcceleration"
DstPort 1
}
Line {
SrcBlock "Demux"
SrcPort 2
Points [15, 0; 0, 40]
DstBlock "Horizontal\nAccleration"
DstPort 1
}
Line {
Name "y"
Labels [0, 0]
SrcBlock "Vertical\nPosition\n"
SrcPort 1
DstBlock "Y"
DstPort 1
}
Line {
SrcBlock "Random motion"
SrcPort 1
DstBlock "Demux"
DstPort 1
}
Line {
Name "x"
Labels [0, 0]
SrcBlock "Horizontal\nPosition"
SrcPort 1
DstBlock "X"
DstPort 1
}
Line {
SrcBlock "Speed"
SrcPort 1
DstBlock "Horizontal\nVelocity"
DstPort 2
}
}
}
Block {
BlockType SubSystem
Name "Cartesian to Polar"
Ports [2, 2]
Position [365, 180, 420, 260]
BackgroundColor "[0.501961, 0.000000, 1.000000]"
DropShadow on
ShowPortLabels off
TreatAsAtomicUnit off
MaskType "[x,y]->[r,theta]"
MaskDescription "Tranformation from cartesian to polar\ncoordina"
"tes.\nr=sqrt(x^2+y^2), theta=atan(y/x)"
MaskHelp "Unmask this block for more help."
MaskDisplay "plot(0,0,100,100,[24,20,15,20,20],[85,95,85,95,"
"20],[80,20,95,85,95,85],[70,20,20,15,20,24],[56,56,55,52,50,46],[20,26,31,35,"
"38,42])"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
Port {
PortNumber 1
Name "Range"
TestPoint off
LinearAnalysisOutput off
LinearAnalysisInput off
RTWStorageClass "Auto"
DataLogging off
DataLoggingNameMode "SignalName"
DataLoggingDecimateData off
DataLoggingDecimation "2"
DataLoggingLimitDataPoints off
DataLoggingMaxPoints "5000"
}
Port {
PortNumber 2
Name "Bearing"
TestPoint off
LinearAnalysisOutput off
LinearAnalysisInput off
RTWStorageClass "Auto"
DataLogging off
DataLoggingNameMode "SignalName"
DataLoggingDecimateData off
DataLoggingDecimation "2"
DataLoggingLimitDataPoints off
DataLoggingMaxPoints "5000"
}
System {
Name "Cartesian to Polar"
Location [35, 84, 394, 266]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType Inport
Name "x"
Position [20, 70, 40, 90]
}
Block {
BlockType Inport
Name "y"
Position [20, 129, 40, 151]
Port "2"
}
Block {
BlockType Mux
Name "Mux"
Ports [2, 1]
Position [75, 96, 105, 129]
Inputs "2"
}
Block {
BlockType Fcn
Name "x->r"
Position [155, 72, 260, 98]
Expr "hypot(u[1],u[2])"
}
Block {
BlockType Fcn
Name "x->theta"
Position [160, 129, 265, 151]
Expr "atan2(u[2],u[1])"
}
Block {
BlockType Outport
Name "r"
Position [295, 75, 315, 95]
InitialOutput "0"
}
Block {
BlockType Outport
Name "theta"
Position [295, 130, 315, 150]
Port "2"
InitialOutput "0"
}
Line {
SrcBlock "Mux"
SrcPort 1
Points [15, 0]
Branch {
Points [0, -30]
DstBlock "x->r"
DstPort 1
}
Branch {
Points [0, 25]
DstBlock "x->theta"
DstPort 1
}
}
Line {
SrcBlock "x->r"
SrcPort 1
DstBlock "r"
DstPort 1
}
Line {
SrcBlock "x"
SrcPort 1
DstBlock "Mux"
DstPort 1
}
Line {
SrcBlock "y"
SrcPort 1
DstBlock "Mux"
DstPort 2
}
Line {
SrcBlock "x->theta"
SrcPort 1
DstBlock "theta"
DstPort 1
}
Annotation {
Name "Cartesian to Polar"
Position [167, 37]
VerticalAlignment "top"
}
}
}
Block {
BlockType ToWorkspace
Name "Est. Position\n"
Position [700, 229, 780, 251]
ForegroundColor "green"
BackgroundColor "[0.000000, 0.501961, 0.501961]"
VariableName "X_hat"
MaxDataPoints "inf"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -