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.
 
 
 
 
 
 

2236 lines
53 KiB

Library {
Name "control"
Version 8.0
MdlSubVersion 0
SavedCharacterEncoding "ISO-8859-1"
LibraryType "BlockLibrary"
SaveDefaultBlockParams on
ScopeRefreshTime 0.035000
OverrideScopeRefreshTime on
DisableAllScopes off
FPTRunName "Run 1"
MaxMDLFileLineLength 120
Object {
$PropName "BdWindowsInfo"
$ObjectID 1
$ClassName "Simulink.BDWindowsInfo"
Object {
$PropName "WindowsInfo"
$ObjectID 2
$ClassName "Simulink.WindowInfo"
IsActive [1]
Location [1125.0, 50.0, 1156.0, 860.0]
Object {
$PropName "ModelBrowserInfo"
$ObjectID 3
$ClassName "Simulink.ModelBrowserInfo"
Visible [0]
DockPosition "Left"
Width [50]
Height [50]
Filter [10]
}
Object {
$PropName "ExplorerBarInfo"
$ObjectID 4
$ClassName "Simulink.ExplorerBarInfo"
Visible [1]
}
Object {
$PropName "EditorsInfo"
$ObjectID 5
$ClassName "Simulink.EditorInfo"
IsActive [1]
ViewObjType "SimulinkTopLevel"
LoadSaveID "0"
Extents [1122.0, 698.0]
ZoomFactor [1.0]
Offset [0.0, 0.0]
}
}
}
Created "Sun Apr 4 19:58:29 2010"
Creator "corkep"
UpdateHistory "UpdateHistoryNever"
ModifiedByFormat "%<Auto>"
LastModifiedBy "corkep"
ModifiedDateFormat "%<Auto>"
LastModifiedDate "Sun Jan 27 11:35:19 2013"
RTWModifiedTimeStamp 281187294
ModelVersionFormat "1.%<AutoIncrement:18>"
ConfigurationManager "None"
SampleTimeColors off
SampleTimeAnnotations off
LibraryLinkDisplay "all"
WideLines off
ShowLineDimensions off
ShowPortDataTypes off
ShowDesignRanges 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"
RecordCoverage off
CovSaveName "covdata"
CovMetricSettings "dw"
CovNameIncrementing off
CovHtmlReporting on
CovForceBlockReductionOff on
covSaveCumulativeToWorkspaceVar on
CovSaveSingleToWorkspaceVar on
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
ShowModelReferenceBlockVersion off
ShowModelReferenceBlockIO off
Array {
Type "Handle"
Dimension 1
Simulink.ConfigSet {
$ObjectID 6
Version "1.12.1"
Array {
Type "Handle"
Dimension 8
Simulink.SolverCC {
$ObjectID 7
Version "1.12.1"
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"
EnableConcurrentExecution off
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 8
Version "1.12.1"
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 9
Version "1.12.1"
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
UseFloatMulNetSlope 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
ParallelExecutionInRapidAccelerator on
}
Simulink.DebuggingCC {
$ObjectID 10
Version "1.12.1"
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 "UseLocalSettings"
SignalLabelMismatchMsg "none"
UnconnectedInputMsg "warning"
UnconnectedOutputMsg "warning"
UnconnectedLineMsg "warning"
SFcnCompatibilityMsg "none"
FrameProcessingCompatibilityMsg "warning"
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"
SFUnconditionalTransitionShadowingDiag "warning"
SFUndirectedBroadcastEventsDiag "warning"
SFTransitionActionBeforeConditionDiag "warning"
}
Simulink.HardwareCC {
$ObjectID 11
Version "1.12.1"
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 12
Version "1.12.1"
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 13
Version "1.12.1"
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 14
Version "1.12.1"
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
PackageGeneratedCodeAndArtifacts off
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
PortableWordSizes off
GenerateErtSFunction off
CreateSILPILBlock "None"
CodeExecutionProfiling off
CodeExecutionProfileVariable "executionProfile"
CodeProfilingSaveOptions "SummaryOnly"
CodeProfilingInstrumentation off
TargetLang "C"
IncludeBusHierarchyInRTWFileBlockHierarchyMap off
IncludeERTFirstTime off
GenerateTraceInfo off
GenerateTraceReport off
GenerateTraceReportSl off
GenerateTraceReportSf off
GenerateTraceReportEml off
GenerateCodeInfo off
GenerateWebview off
GenerateCodeMetricsReport off
GenerateCodeReplacementReport off
RTWCompilerOptimization "Off"
CheckMdlBeforeBuild "Off"
CustomRebuildMode "OnUpdate"
Array {
Type "Handle"
Dimension 2
Simulink.CodeAppCC {
$ObjectID 15
Version "1.12.1"
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
OperatorAnnotations 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
InternalIdentifier "Classic"
InlinedPrmAccess "Literals"
ReqsInCode off
UseSimReservedNames off
}
Simulink.GRTTargetCC {
$BackupClass "Simulink.TargetCC"
$ObjectID 16
Version "1.12.1"
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 ""
CodeReplacementLibrary "ANSI_C"
UtilityFuncGeneration "Auto"
ERTMultiwordTypeDef "System defined"
ERTMultiwordLength 256
MultiwordLength 2048
GenerateFullHeader on
GenerateSampleERTMain off
GenerateTestInterfaces off
IsPILTarget off
ModelReferenceCompliant on
ParMdlRefBuildCompliant on
CompOptLevelCompliant on
ConcurrentExecutionCompliant 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"
ModelStepFunctionPrototypeControlCompliant off
CPPClassGenCompliant off
AutosarCompliant off
GRTInterface on
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"
}
ExplicitPartitioning off
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"
}
MaskDefaults {
SelfModifiable "off"
IconFrame "on"
IconOpaque "on"
RunInitForIconRedraw "off"
IconRotate "none"
PortRotate "default"
IconUnits "autoscale"
}
MaskParameterDefaults {
Evaluate "on"
Tunable "on"
NeverSave "off"
Internal "off"
ReadOnly "off"
Enabled "on"
Visible "on"
ToolTip "on"
}
BlockParameterDefaults {
Block {
BlockType Delay
DelayLengthSource "Dialog"
DelayLength "2"
DelayLengthUpperLimit "100"
InitialConditionSource "Dialog"
InitialCondition "0.0"
ExternalReset "None"
PreventDirectFeedthrough off
DiagnosticForOutOfRangeDelayLength "None"
RemoveProtectionDelayLength off
InputProcessing "Elements as channels (sample based)"
UseCircularBuffer off
SampleTime "-1"
StateMustResolveToSignalObject off
CodeGenStateStorageClass "Auto"
}
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 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 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 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 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"
SFBlockType "NONE"
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 TransferFcn
Numerator "[1]"
Denominator "[1 2 1]"
AbsoluteTolerance "auto"
ContinuousStateAttributes "''"
Realization "auto"
}
}
System {
Name "control"
Location [1125, 50, 2281, 910]
Open on
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
TiledPaperMargins [1.270000, 1.270000, 1.270000, 1.270000]
TiledPageScale 1
ShowPageBoundaries off
ZoomFactor "100"
ReportName "simulink-default.rpt"
SIDHighWatermark "191"
Block {
BlockType SubSystem
Name "vloop"
SID "24"
Ports [2, 4]
Position [110, 67, 160, 168]
ZOrder -9
DropShadow on
LibraryVersion "*1.13"
MinAlgLoopOccurrences off
PropExecContextOutsideSubsystem off
RTWSystemCode "Auto"
FunctionWithSeparateData off
Opaque off
RequestExecContextInheritance off
MaskHideContents off
Object {
$PropName "MaskObject"
$ObjectID 17
$ClassName "Simulink.Mask"
Array {
Type "Simulink.MaskParameter"
Dimension 7
Object {
$ObjectID 18
Type "edit"
Name "J"
Prompt "Inertia (J)"
Value "372e-6"
}
Object {
$ObjectID 19
Type "edit"
Name "B"
Prompt "Viscous friction coefficient (B)"
Value "817e-6"
}
Object {
$ObjectID 20
Type "edit"
Name "Km"
Prompt "Motor torque constant"
Value "0.228"
}
Object {
$ObjectID 21
Type "edit"
Name "tau_max"
Prompt "Torque limit (tau_max)"
Value "0.9"
}
Object {
$ObjectID 22
Type "edit"
Name "Kv"
Prompt "Proportional gain (Kv)"
Value "1"
}
Object {
$ObjectID 23
Type "edit"
Name "Ki"
Prompt "Integral gain (Ki)"
Value "5"
}
Object {
$ObjectID 24
Type "edit"
Name "T"
Prompt "Sample interval (T)"
Value "0.001"
}
PropName "Parameters"
}
}
System {
Name "vloop"
Location [1199, 44, 2042, 510]
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 "qd*"
SID "175"
Position [25, 113, 55, 127]
ZOrder -1
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "tau_d"
SID "176"
Position [435, 33, 465, 47]
ZOrder -2
Port "2"
IconDisplay "Port number"
}
Block {
BlockType Integrator
Name "Integrator"
SID "177"
Ports [2, 1]
Position [225, 152, 255, 183]
ZOrder -3
ExternalReset "level"
LimitOutput on
UpperSaturationLimit "1"
LowerSaturationLimit "-1"
}
Block {
BlockType Gain
Name "Ki"
SID "178"
Position [295, 150, 325, 180]
ZOrder -4
Gain "Ki"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "Km"
SID "179"
Position [400, 105, 430, 135]
ZOrder -5
ForegroundColor "blue"
Gain "Km"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "Kv"
SID "180"
Position [295, 105, 325, 135]
ZOrder -6
Gain "Kv"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Sum
Name "Sum"
SID "181"
Ports [2, 1]
Position [100, 110, 120, 130]
ZOrder -7
ShowName off
IconShape "round"
Inputs "|+-"
InputSameDT off
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Sum
Name "Sum1"
SID "182"
Ports [2, 1]
Position [530, 110, 550, 130]
ZOrder -8
ForegroundColor "blue"
ShowName off
IconShape "round"
Inputs "-+|"
InputSameDT off
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Sum
Name "Sum2"
SID "183"
Ports [2, 1]
Position [350, 110, 370, 130]
ZOrder -9
ShowName off
IconShape "round"
Inputs "|++"
InputSameDT off
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Delay
Name "control\ntime"
SID "184"
Ports [1, 1]
Position [160, 103, 185, 137]
ZOrder -10
UserDataPersistent on
UserData "DataTag0"
InputPortMap "u0"
DelayLength "1"
InputProcessing "Inherited"
SampleTime "T"
}
Block {
BlockType TransferFcn
Name "motor"
SID "185"
Position [580, 101, 645, 139]
ZOrder -11
ForegroundColor "blue"
Denominator "[J B]"
ContinuousStateAttributes "'qd'"
Port {
PortNumber 1
Name "qd"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Saturate
Name "torque\nlimit"
SID "186"
Ports [1, 1]
Position [450, 105, 480, 135]
ZOrder -12
ForegroundColor "blue"
InputPortMap "u0"
UpperLimit "tau_max"
LowerLimit "-tau_max"
}
Block {
BlockType Outport
Name "qd"
SID "187"
Position [720, 113, 750, 127]
ZOrder -13
IconDisplay "Port number"
}
Block {
BlockType Outport
Name "qd error"
SID "188"
Position [150, 33, 180, 47]
ZOrder -14
Port "2"
IconDisplay "Port number"
}
Block {
BlockType Outport
Name "tau"
SID "189"
Position [720, 193, 750, 207]
ZOrder -15
Port "3"
IconDisplay "Port number"
}
Block {
BlockType Outport
Name "integral"
SID "190"
Position [720, 253, 750, 267]
ZOrder -16
Port "4"
IconDisplay "Port number"
}
Line {
SrcBlock "Ki"
SrcPort 1
Points [30, 0]
DstBlock "Sum2"
DstPort 2
}
Line {
SrcBlock "Integrator"
SrcPort 1
Points [0, -5; 10, 0]
Branch {
Points [0, 95]
DstBlock "integral"
DstPort 1
}
Branch {
DstBlock "Ki"
DstPort 1
}
}
Line {
SrcBlock "Kv"
SrcPort 1
DstBlock "Sum2"
DstPort 1
}
Line {
SrcBlock "Sum2"
SrcPort 1
DstBlock "Km"
DstPort 1
}
Line {
SrcBlock "Km"
SrcPort 1
DstBlock "torque\nlimit"
DstPort 1
}
Line {
Labels [0, 0]
SrcBlock "qd*"
SrcPort 1
DstBlock "Sum"
DstPort 1
}
Line {
SrcBlock "control\ntime"
SrcPort 1
Points [20, 0]
Branch {
DstBlock "Integrator"
DstPort 1
}
Branch {
DstBlock "Kv"
DstPort 1
}
}
Line {
SrcBlock "torque\nlimit"
SrcPort 1
Points [15, 0]
Branch {
Points [0, 80]
DstBlock "tau"
DstPort 1
}
Branch {
DstBlock "Sum1"
DstPort 2
}
}
Line {
SrcBlock "tau_d"
SrcPort 1
Points [70, 0]
DstBlock "Sum1"
DstPort 1
}
Line {
Name "qd"
Labels [0, 0]
SrcBlock "motor"
SrcPort 1
Points [20, 0]
Branch {
DstBlock "qd"
DstPort 1
}
Branch {
Points [0, 105; -560, 0]
DstBlock "Sum"
DstPort 2
}
}
Line {
SrcBlock "Sum"
SrcPort 1
Points [5, 0]
Branch {
Points [0, -80]
DstBlock "qd error"
DstPort 1
}
Branch {
DstBlock "control\ntime"
DstPort 1
}
}
Line {
SrcBlock "Sum1"
SrcPort 1
DstBlock "motor"
DstPort 1
}
Annotation {
SID "191"
Name "tau_m"
Position [505, 116]
ForegroundColor "blue"
}
}
}
Block {
BlockType SubSystem
Name "vloop_ff"
SID "41"
Ports [3, 3]
Position [265, 65, 315, 165]
ZOrder -2
DropShadow on
MinAlgLoopOccurrences off
PropExecContextOutsideSubsystem off
RTWSystemCode "Auto"
FunctionWithSeparateData off
Opaque off
RequestExecContextInheritance off
MaskHideContents off
Object {
$PropName "MaskObject"
$ObjectID 25
$ClassName "Simulink.Mask"
Array {
Type "Simulink.MaskParameter"
Dimension 7
Object {
$ObjectID 26
Type "edit"
Name "J"
Prompt "Inertia (J)"
Value "372e-6"
}
Object {
$ObjectID 27
Type "edit"
Name "B"
Prompt "Viscous friction coefficient (B)"
Value "817e-6"
}
Object {
$ObjectID 28
Type "edit"
Name "Km"
Prompt "Motor torque constant"
Value "0.228"
}
Object {
$ObjectID 29
Type "edit"
Name "tau_max"
Prompt "Torque limit (tau_max)"
Value "0.9"
}
Object {
$ObjectID 30
Type "edit"
Name "Kv"
Prompt "Proportional gain (Kv)"
Value "1"
}
Object {
$ObjectID 31
Type "edit"
Name "Ki"
Prompt "Integral gain (Ki)"
Value "0"
}
Object {
$ObjectID 32
Type "edit"
Name "T"
Prompt "Sample interval (T)"
Value "0.001"
}
PropName "Parameters"
}
}
System {
Name "vloop_ff"
Location [229, 359, 1129, 826]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
TiledPaperMargins [1.270000, 1.270000, 1.270000, 1.270000]
TiledPageScale 1
ShowPageBoundaries off
ZoomFactor "100"
Block {
BlockType Inport
Name "qd*"
SID "42"
Position [25, 113, 55, 127]
ZOrder -1
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "tau_d"
SID "43"
Position [480, 33, 510, 47]
ZOrder -2
Port "2"
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "tau_ff"
SID "59"
Position [25, 203, 55, 217]
ZOrder -3
ForegroundColor "red"
Port "3"
IconDisplay "Port number"
}
Block {
BlockType Integrator
Name "Integrator"
SID "45"
Ports [1, 1]
Position [225, 150, 255, 180]
ZOrder -4
}
Block {
BlockType Gain
Name "Kff"
SID "58"
Position [295, 194, 345, 226]
ZOrder -5
ForegroundColor "red"
Gain "1/Km"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "Ki"
SID "44"
Position [295, 150, 325, 180]
ZOrder -6
Gain "Ki"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "Km"
SID "46"
Position [445, 105, 475, 135]
ZOrder -7
ForegroundColor "blue"
Gain "Km"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "Kv"
SID "47"
Position [295, 105, 325, 135]
ZOrder -8
Gain "Kv"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Sum
Name "Sum"
SID "48"
Ports [2, 1]
Position [100, 110, 120, 130]
ZOrder -9
ShowName off
IconShape "round"
Inputs "|+-"
InputSameDT off
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Sum
Name "Sum1"
SID "49"
Ports [2, 1]
Position [575, 110, 595, 130]
ZOrder -10
ForegroundColor "blue"
ShowName off
IconShape "round"
Inputs "-+|"
InputSameDT off
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Sum
Name "Sum2"
SID "50"
Ports [2, 1]
Position [350, 110, 370, 130]
ZOrder -11
ShowName off
IconShape "round"
Inputs "|++"
InputSameDT off
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Sum
Name "Sum3"
SID "57"
Ports [2, 1]
Position [395, 110, 415, 130]
ZOrder -12
ForegroundColor "red"
ShowName off
IconShape "round"
Inputs "|++"
InputSameDT off
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Delay
Name "control\ntime"
SID "51"
Ports [1, 1]
Position [160, 103, 185, 137]
ZOrder -13
UserDataPersistent on
UserData "DataTag1"
InputPortMap "u0"
DelayLength "1"
InputProcessing "Inherited"
SampleTime "T"
}
Block {
BlockType TransferFcn
Name "motor"
SID "52"
Position [625, 101, 690, 139]
ZOrder -14
ForegroundColor "blue"
Denominator "[J B]"
ContinuousStateAttributes "'qd'"
Port {
PortNumber 1
Name "qd"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Saturate
Name "torque\nlimit"
SID "53"
Ports [1, 1]
Position [495, 105, 525, 135]
ZOrder -15
ForegroundColor "blue"
InputPortMap "u0"
UpperLimit "tau_max"
LowerLimit "-tau_max"
}
Block {
BlockType Outport
Name "qd"
SID "54"
Position [765, 113, 795, 127]
ZOrder -16
IconDisplay "Port number"
}
Block {
BlockType Outport
Name "qd error"
SID "55"
Position [150, 33, 180, 47]
ZOrder -17
Port "2"
IconDisplay "Port number"
}
Block {
BlockType Outport
Name "tau"
SID "56"
Position [765, 193, 795, 207]
ZOrder -18
Port "3"
IconDisplay "Port number"
}
Line {
SrcBlock "Sum1"
SrcPort 1
DstBlock "motor"
DstPort 1
}
Line {
SrcBlock "Sum"
SrcPort 1
Points [5, 0]
Branch {
DstBlock "control\ntime"
DstPort 1
}
Branch {
Points [0, -80]
DstBlock "qd error"
DstPort 1
}
}
Line {
Name "qd"
Labels [0, 0]
SrcBlock "motor"
SrcPort 1
Points [20, 0]
Branch {
DstBlock "qd"
DstPort 1
}
Branch {
Points [0, 130; -605, 0]
DstBlock "Sum"
DstPort 2
}
}
Line {
SrcBlock "tau_d"
SrcPort 1
Points [70, 0]
DstBlock "Sum1"
DstPort 1
}
Line {
SrcBlock "torque\nlimit"
SrcPort 1
Points [15, 0]
Branch {
DstBlock "Sum1"
DstPort 2
}
Branch {
Points [0, 80]
DstBlock "tau"
DstPort 1
}
}
Line {
SrcBlock "control\ntime"
SrcPort 1
Points [20, 0]
Branch {
DstBlock "Kv"
DstPort 1
}
Branch {
DstBlock "Integrator"
DstPort 1
}
}
Line {
Labels [0, 0]
SrcBlock "qd*"
SrcPort 1
DstBlock "Sum"
DstPort 1
}
Line {
SrcBlock "Km"
SrcPort 1
DstBlock "torque\nlimit"
DstPort 1
}
Line {
SrcBlock "Kv"
SrcPort 1
DstBlock "Sum2"
DstPort 1
}
Line {
SrcBlock "Integrator"
SrcPort 1
DstBlock "Ki"
DstPort 1
}
Line {
SrcBlock "Ki"
SrcPort 1
Points [30, 0]
DstBlock "Sum2"
DstPort 2
}
Line {
SrcBlock "Sum2"
SrcPort 1
DstBlock "Sum3"
DstPort 1
}
Line {
SrcBlock "Sum3"
SrcPort 1
DstBlock "Km"
DstPort 1
}
Line {
SrcBlock "Kff"
SrcPort 1
Points [55, 0]
DstBlock "Sum3"
DstPort 2
}
Line {
SrcBlock "tau_ff"
SrcPort 1
DstBlock "Kff"
DstPort 1
}
Annotation {
SID "79"
Name "tau_m"
Position [550, 116]
ForegroundColor "blue"
}
Annotation {
SID "80"
Name "feedforward path"
Position [182, 222]
ForegroundColor "red"
}
Annotation {
SID "81"
Name "feedback path"
Position [297, 262]
}
}
}
Block {
BlockType SubSystem
Name "vloop_voltage"
SID "163"
Ports [2, 4]
Position [405, 70, 465, 175]
ZOrder -3
DropShadow on
MinAlgLoopOccurrences off
PropExecContextOutsideSubsystem off
RTWSystemCode "Auto"
FunctionWithSeparateData off
Opaque off
RequestExecContextInheritance off
MaskHideContents off
Object {
$PropName "MaskObject"
$ObjectID 33
$ClassName "Simulink.Mask"
Array {
Type "Simulink.MaskParameter"
Dimension 10
Object {
$ObjectID 34
Type "edit"
Name "J"
Prompt "Inertia (K)"
Value "372e-6"
}
Object {
$ObjectID 35
Type "edit"
Name "B"
Prompt "Viscous friction coefficient (B)"
Value "817e-6"
}
Object {
$ObjectID 36
Type "edit"
Name "Km"
Prompt "Motor torque constant"
Value "0.228"
}
Object {
$ObjectID 37
Type "edit"
Name "tau_max"
Prompt "Voltage limit (tau_max)"
Value "20"
}
Object {
$ObjectID 38
Type "edit"
Name "Rm"
Prompt "Motor resistance (Rm)"
Value "0.1"
}
Object {
$ObjectID 39
Type "edit"
Name "Lm"
Prompt "Motor inductance (Lm)"
Value "0.1"
}
Object {
$ObjectID 40
Type "edit"
Name "Ka"
Prompt "Amplifier gain (Ka)"
Value "10"
}
Object {
$ObjectID 41
Type "edit"
Name "Kv"
Prompt "Proportional gain (Kv)"
Value "1"
}
Object {
$ObjectID 42
Type "edit"
Name "Ki"
Prompt "Integral gain (Ki)"
Value "1"
}
Object {
$ObjectID 43
Type "edit"
Name "T"
Prompt "Sample interval (T)"
Value "0.001"
Evaluate "off"
}
PropName "Parameters"
}
}
System {
Name "vloop_voltage"
Location [978, 480, 2096, 933]
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 "qd*"
SID "165"
Position [25, 108, 55, 122]
ZOrder -1
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "tau_d"
SID "166"
Position [690, 28, 720, 42]
ZOrder -2
Port "2"
IconDisplay "Port number"
}
Block {
BlockType Gain
Name "Gain"
SID "171"
Position [725, 100, 755, 130]
ZOrder -8
ShowName off
Gain "Km"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
Port {
PortNumber 1
Name "tau"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Gain
Name "Gain1"
SID "172"
Position [740, 180, 770, 210]
ZOrder -8
BlockMirror on
ShowName off
Gain "Km"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
Port {
PortNumber 1
Name "back EMF"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Integrator
Name "Integrator"
SID "149"
Ports [1, 1]
Position [225, 145, 255, 175]
ZOrder -10
}
Block {
BlockType Gain
Name "Ki"
SID "150"
Position [295, 145, 325, 175]
ZOrder -11
Gain "Ki"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "Kv"
SID "152"
Position [295, 100, 325, 130]
ZOrder -12
Gain "Kv"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType TransferFcn
Name "Motor\nimpedance"
SID "170"
Position [610, 97, 670, 133]
ZOrder -9
Denominator "[Lm Rm]"
Port {
PortNumber 1
Name "motor\ncurrent"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Sum
Name "Sum"
SID "153"
Ports [2, 1]
Position [100, 105, 120, 125]
ZOrder -14
ShowName off
IconShape "round"
Inputs "|+-"
InputSameDT off
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Sum
Name "Sum1"
SID "154"
Ports [2, 1]
Position [810, 105, 830, 125]
ZOrder -15
ForegroundColor "blue"
ShowName off
IconShape "round"
Inputs "-+|"
InputSameDT off
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Sum
Name "Sum2"
SID "155"
Ports [2, 1]
Position [350, 105, 370, 125]
ZOrder -16
ShowName off
IconShape "round"
Inputs "|++"
InputSameDT off
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Sum
Name "Sum3"
SID "173"
Ports [2, 1]
Position [540, 105, 560, 125]
ZOrder -18
ShowName off
IconShape "round"
Inputs "|+-"
InputSameDT off
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
Port {
PortNumber 1
Name "nett\nvoltage"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Delay
Name "control\ntime"
SID "156"
Ports [1, 1]
Position [160, 98, 185, 132]
ZOrder -19
UserDataPersistent on
UserData "DataTag2"
InputPortMap "u0"
DelayLength "1"
InputProcessing "Inherited"
SampleTime "T"
}
Block {
BlockType TransferFcn
Name "motor"
SID "157"
Position [855, 96, 920, 134]
ZOrder -20
ForegroundColor "blue"
Denominator "[J B]"
ContinuousStateAttributes "'qd'"
Port {
PortNumber 1
Name "qd"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Gain
Name "voltage\namplifier\ngain"
SID "151"
Position [405, 100, 435, 130]
ZOrder -21
ForegroundColor "blue"
Gain "Ka"
ParamDataTypeStr "Inherit: Inherit via internal rule"
OutDataTypeStr "Inherit: Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Saturate
Name "voltage\nlimit"
SID "158"
Ports [1, 1]
Position [460, 100, 490, 130]
ZOrder -22
ForegroundColor "blue"
InputPortMap "u0"
UpperLimit "v_max"
LowerLimit "-v_max"
Port {
PortNumber 1
Name "applied\nvoltage"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Outport
Name "qd error"
SID "164"
Position [150, 28, 180, 42]
ZOrder -23
IconDisplay "Port number"
}
Block {
BlockType Outport
Name "qd"
SID "167"
Position [990, 108, 1020, 122]
ZOrder -24
Port "2"
IconDisplay "Port number"
}
Block {
BlockType Outport
Name "tau"
SID "168"
Position [990, 163, 1020, 177]
ZOrder -25
Port "3"
IconDisplay "Port number"
}
Block {
BlockType Outport
Name "integral"
SID "174"
Position [385, 188, 415, 202]
ZOrder -26
Port "4"
IconDisplay "Port number"
}
Line {
SrcBlock "Sum1"
SrcPort 1
DstBlock "motor"
DstPort 1
}
Line {
SrcBlock "Sum"
SrcPort 1
Points [5, 0]
Branch {
DstBlock "control\ntime"
DstPort 1
}
Branch {
Points [0, -80]
DstBlock "qd error"
DstPort 1
}
}
Line {
Name "qd"
Labels [0, 0]
SrcBlock "motor"
SrcPort 1
Points [25, 0]
Branch {
DstBlock "qd"
DstPort 1
}
Branch {
Points [0, 80]
Branch {
Points [0, 40; -840, 0]
DstBlock "Sum"
DstPort 2
}
Branch {
DstBlock "Gain1"
DstPort 1
}
}
}
Line {
SrcBlock "tau_d"
SrcPort 1
Points [95, 0]
DstBlock "Sum1"
DstPort 1
}
Line {
SrcBlock "control\ntime"
SrcPort 1
Points [20, 0]
Branch {
DstBlock "Kv"
DstPort 1
}
Branch {
DstBlock "Integrator"
DstPort 1
}
}
Line {
Labels [0, 0]
SrcBlock "qd*"
SrcPort 1
DstBlock "Sum"
DstPort 1
}
Line {
SrcBlock "Sum2"
SrcPort 1
DstBlock "voltage\namplifier\ngain"
DstPort 1
}
Line {
SrcBlock "Kv"
SrcPort 1
DstBlock "Sum2"
DstPort 1
}
Line {
SrcBlock "Integrator"
SrcPort 1
DstBlock "Ki"
DstPort 1
}
Line {
SrcBlock "Ki"
SrcPort 1
Points [30, 0]
Branch {
DstBlock "Sum2"
DstPort 2
}
Branch {
Points [10, 0]
DstBlock "integral"
DstPort 1
}
}
Line {
SrcBlock "voltage\namplifier\ngain"
SrcPort 1
DstBlock "voltage\nlimit"
DstPort 1
}
Line {
Name "applied\nvoltage"
Labels [0, 0]
SrcBlock "voltage\nlimit"
SrcPort 1
DstBlock "Sum3"
DstPort 1
}
Line {
Name "nett\nvoltage"
Labels [-1, 0]
SrcBlock "Sum3"
SrcPort 1
DstBlock "Motor\nimpedance"
DstPort 1
}
Line {
Name "motor\ncurrent"
Labels [-1, 0]
SrcBlock "Motor\nimpedance"
SrcPort 1
DstBlock "Gain"
DstPort 1
}
Line {
Name "tau"
Labels [0, 0]
SrcBlock "Gain"
SrcPort 1
Points [30, 0]
Branch {
DstBlock "Sum1"
DstPort 2
}
Branch {
Points [0, 55]
DstBlock "tau"
DstPort 1
}
}
Line {
Name "back EMF"
Labels [0, 0]
SrcBlock "Gain1"
SrcPort 1
Points [-185, 0]
DstBlock "Sum3"
DstPort 2
}
}
}
Annotation {
SID "82"
Position [131, 168]
}
Annotation {
SID "83"
Position [131, 168]
}
Annotation {
SID "84"
Position [131, 168]
}
}
}
MatData {
NumRecords 3
DataRecord {
Tag DataTag0
Data " %)30 . B 8 ( @ % \" $ ! 0 % 0 $P $ 3 :&%S26"
"YH97)I=&5D3W!T:6]N #@ # & \" D\" !0 @ ! 0 $ @ ! $ "
}
DataRecord {
Tag DataTag1
Data " %)30 . B 8 ( @ % \" $ ! 0 % 0 $P $ 3 :&%S26"
"YH97)I=&5D3W!T:6]N #@ # & \" D\" !0 @ ! 0 $ @ ! $ "
}
DataRecord {
Tag DataTag2
Data " %)30 . B 8 ( @ % \" $ ! 0 % 0 $P $ 3 :&%S26"
"YH97)I=&5D3W!T:6]N #@ # & \" D\" !0 @ ! 0 $ @ ! $ "
}
}