ajout TP2 424
1715
424-Systeme_Non_Lineaires/TP2/Grue_L.mdl
Normal file
882
424-Systeme_Non_Lineaires/TP2/Grue_L.mdl.r2009b
Normal file
|
@ -0,0 +1,882 @@
|
|||
Model {
|
||||
Name "Grue_L"
|
||||
Version 7.4
|
||||
MdlSubVersion 0
|
||||
GraphicalInterface {
|
||||
NumRootInports 0
|
||||
NumRootOutports 0
|
||||
ParameterArgumentNames ""
|
||||
ComputedModelVersion "1.70"
|
||||
NumModelReferences 0
|
||||
NumTestPointedSignals 0
|
||||
}
|
||||
SavedCharacterEncoding "ISO-8859-1"
|
||||
SaveDefaultBlockParams on
|
||||
ScopeRefreshTime 0.035000
|
||||
OverrideScopeRefreshTime on
|
||||
DisableAllScopes off
|
||||
DataTypeOverride "UseLocalSettings"
|
||||
MinMaxOverflowLogging "UseLocalSettings"
|
||||
MinMaxOverflowArchiveMode "Overwrite"
|
||||
MaxMDLFileLineLength 120
|
||||
Created "Fri Mar 23 18:37:01 2012"
|
||||
Creator "abbasturki"
|
||||
UpdateHistory "UpdateHistoryNever"
|
||||
ModifiedByFormat "%<Auto>"
|
||||
LastModifiedBy "abbasturki"
|
||||
ModifiedDateFormat "%<Auto>"
|
||||
LastModifiedDate "Thu Mar 24 18:48:48 2016"
|
||||
RTWModifiedTimeStamp 380746096
|
||||
ModelVersionFormat "1.%<AutoIncrement:70>"
|
||||
ConfigurationManager "None"
|
||||
SampleTimeColors off
|
||||
SampleTimeAnnotations off
|
||||
LibraryLinkDisplay "none"
|
||||
WideLines off
|
||||
ShowLineDimensions off
|
||||
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.6.0"
|
||||
Array {
|
||||
Type "Handle"
|
||||
Dimension 8
|
||||
Simulink.SolverCC {
|
||||
$ObjectID 2
|
||||
Version "1.6.0"
|
||||
StartTime "0.0"
|
||||
StopTime "20"
|
||||
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"
|
||||
Solver "ode45"
|
||||
SolverName "ode45"
|
||||
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.6.0"
|
||||
Decimation "1"
|
||||
ExternalInput "[t, u]"
|
||||
FinalStateName "xFinal"
|
||||
InitialState "xInitial"
|
||||
LimitDataPoints on
|
||||
MaxDataPoints "1000"
|
||||
LoadExternalInput off
|
||||
LoadInitialState off
|
||||
SaveFinalState off
|
||||
SaveCompleteFinalSimState off
|
||||
SaveFormat "Array"
|
||||
SaveOutput on
|
||||
SaveState off
|
||||
SignalLogging on
|
||||
InspectSignalLogs off
|
||||
SaveTime on
|
||||
ReturnWorkspaceOutputs off
|
||||
StateSaveName "xout"
|
||||
TimeSaveName "tout"
|
||||
OutputSaveName "yout"
|
||||
SignalLoggingName "logsout"
|
||||
OutputOption "RefineOutputTimes"
|
||||
OutputTimes "[]"
|
||||
ReturnWorkspaceOutputsName "out"
|
||||
Refine "1"
|
||||
}
|
||||
Simulink.OptimizationCC {
|
||||
$ObjectID 4
|
||||
Version "1.6.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
|
||||
InlineInvariantSignals off
|
||||
OptimizeBlockIOStorage on
|
||||
BufferReuse on
|
||||
EnhancedBackFolding off
|
||||
StrengthReduction off
|
||||
EnforceIntegerDowncast on
|
||||
ExpressionFolding on
|
||||
BooleansAsBitfields off
|
||||
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"
|
||||
BufferReusableBoundary on
|
||||
SimCompilerOptimization "Off"
|
||||
AccelVerboseBuild off
|
||||
}
|
||||
Simulink.DebuggingCC {
|
||||
$ObjectID 5
|
||||
Version "1.6.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"
|
||||
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"
|
||||
ModelReferenceVersionMismatchMessage "none"
|
||||
ModelReferenceIOMismatchMessage "none"
|
||||
ModelReferenceCSMismatchMessage "none"
|
||||
UnknownTsInhSupMsg "warning"
|
||||
ModelReferenceDataLoggingMessage "warning"
|
||||
ModelReferenceSymbolNameMessage "warning"
|
||||
ModelReferenceExtraNoncontSigs "error"
|
||||
StateNameClashWarn "warning"
|
||||
SimStateInterfaceChecksumMismatchMsg "warning"
|
||||
StrictBusMsg "Warning"
|
||||
LoggingUnavailableSignals "error"
|
||||
BlockIODiagnostic "none"
|
||||
}
|
||||
Simulink.HardwareCC {
|
||||
$ObjectID 6
|
||||
Version "1.6.0"
|
||||
ProdBitPerChar 8
|
||||
ProdBitPerShort 16
|
||||
ProdBitPerInt 32
|
||||
ProdBitPerLong 32
|
||||
ProdIntDivRoundTo "Undefined"
|
||||
ProdEndianess "Unspecified"
|
||||
ProdWordSize 32
|
||||
ProdShiftRightIntArith on
|
||||
ProdHWDeviceType "32-bit Generic"
|
||||
TargetBitPerChar 8
|
||||
TargetBitPerShort 16
|
||||
TargetBitPerInt 32
|
||||
TargetBitPerLong 32
|
||||
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.6.0"
|
||||
UpdateModelReferenceTargets "IfOutOfDateOrStructuralChange"
|
||||
CheckModelReferenceTargetMessage "error"
|
||||
ModelReferenceNumInstancesAllowed "Multi"
|
||||
ModelReferencePassRootInputsByReference on
|
||||
ModelReferenceMinAlgLoopOccurrences off
|
||||
}
|
||||
Simulink.SFSimCC {
|
||||
$ObjectID 8
|
||||
Version "1.6.0"
|
||||
SFSimEnableDebug on
|
||||
SFSimOverflowDetection on
|
||||
SFSimEcho on
|
||||
SimBlas on
|
||||
SimCtrlC on
|
||||
SimExtrinsic on
|
||||
SimIntegrity on
|
||||
SimUseLocalCustomCode off
|
||||
SimBuildMode "sf_incremental_build"
|
||||
}
|
||||
Simulink.RTWCC {
|
||||
$BackupClass "Simulink.RTWCC"
|
||||
$ObjectID 9
|
||||
Version "1.6.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
|
||||
RTWCompilerOptimization "Off"
|
||||
CheckMdlBeforeBuild "Off"
|
||||
Array {
|
||||
Type "Handle"
|
||||
Dimension 2
|
||||
Simulink.CodeAppCC {
|
||||
$ObjectID 10
|
||||
Version "1.6.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
|
||||
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
|
||||
SimulinkBlockComments on
|
||||
EnableCustomComments off
|
||||
InlinedPrmAccess "Literals"
|
||||
ReqsInCode off
|
||||
UseSimReservedNames off
|
||||
}
|
||||
Simulink.GRTTargetCC {
|
||||
$BackupClass "Simulink.TargetCC"
|
||||
$ObjectID 11
|
||||
Version "1.6.0"
|
||||
Array {
|
||||
Type "Cell"
|
||||
Dimension 17
|
||||
Cell "GeneratePreprocessorConditionals"
|
||||
Cell "IncludeMdlTerminateFcn"
|
||||
Cell "CombineOutputUpdateFcns"
|
||||
Cell "SuppressErrorStatus"
|
||||
Cell "ERTCustomFileBanners"
|
||||
Cell "GenerateSampleERTMain"
|
||||
Cell "GenerateTestInterfaces"
|
||||
Cell "ModelStepFunctionPrototypeControlCompliant"
|
||||
Cell "CPPClassGenCompliant"
|
||||
Cell "MultiInstanceERTCode"
|
||||
Cell "PurelyIntegerCode"
|
||||
Cell "SupportNonFinite"
|
||||
Cell "SupportComplex"
|
||||
Cell "SupportAbsoluteTime"
|
||||
Cell "SupportContinuousTime"
|
||||
Cell "SupportNonInlinedSFcns"
|
||||
Cell "PortableWordSizes"
|
||||
PropName "DisabledProps"
|
||||
}
|
||||
TargetFcnLib "ansi_tfl_table_tmw.mat"
|
||||
TargetLibSuffix ""
|
||||
TargetPreCompLibLocation ""
|
||||
TargetFunctionLibrary "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
|
||||
IncludeMdlTerminateFcn on
|
||||
GeneratePreprocessorConditionals "Disable all"
|
||||
CombineOutputUpdateFcns 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
|
||||
GenerateASAP2 off
|
||||
}
|
||||
PropName "Components"
|
||||
}
|
||||
}
|
||||
PropName "Components"
|
||||
}
|
||||
Name "Configuration"
|
||||
CurrentDlgPage "Solver"
|
||||
ConfigPrmDlgPosition " [ 280, 124, 1160, 754 ] "
|
||||
}
|
||||
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 Demux
|
||||
Outputs "4"
|
||||
DisplayOption "none"
|
||||
BusSelectionMode off
|
||||
}
|
||||
Block {
|
||||
BlockType Inport
|
||||
Port "1"
|
||||
UseBusObject off
|
||||
BusObject "BusObject"
|
||||
BusOutputAsStruct off
|
||||
PortDimensions "-1"
|
||||
VarSizeSig "Inherit"
|
||||
SampleTime "-1"
|
||||
OutMin "[]"
|
||||
OutMax "[]"
|
||||
DataType "auto"
|
||||
OutDataType "fixdt(1,16,0)"
|
||||
OutScaling "[]"
|
||||
OutDataTypeStr "Inherit: auto"
|
||||
LockScale off
|
||||
SignalType "auto"
|
||||
SamplingMode "auto"
|
||||
LatchByDelayingOutsideSignal off
|
||||
LatchByCopyingInsideSignal off
|
||||
Interpolate on
|
||||
}
|
||||
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"
|
||||
VarSizeSig "Inherit"
|
||||
SampleTime "-1"
|
||||
OutMin "[]"
|
||||
OutMax "[]"
|
||||
DataType "auto"
|
||||
OutDataType "fixdt(1,16,0)"
|
||||
OutScaling "[]"
|
||||
OutDataTypeStr "Inherit: auto"
|
||||
LockScale off
|
||||
SignalType "auto"
|
||||
SamplingMode "auto"
|
||||
SourceOfInitialOutputValue "Dialog"
|
||||
OutputWhenDisabled "held"
|
||||
InitialOutput "[]"
|
||||
}
|
||||
Block {
|
||||
BlockType StateSpace
|
||||
A "1"
|
||||
B "1"
|
||||
C "1"
|
||||
D "1"
|
||||
X0 "0"
|
||||
AbsoluteTolerance "auto"
|
||||
ContinuousStateAttributes "''"
|
||||
Realization "auto"
|
||||
}
|
||||
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"
|
||||
MinMaxOverflowLogging "UseLocalSettings"
|
||||
}
|
||||
}
|
||||
System {
|
||||
Name "Grue_L"
|
||||
Location [378, 114, 1308, 624]
|
||||
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 286
|
||||
Block {
|
||||
BlockType SubSystem
|
||||
Name "Grue_L"
|
||||
SID 278
|
||||
Ports [2, 6]
|
||||
Position [405, 96, 540, 249]
|
||||
MinAlgLoopOccurrences off
|
||||
PropExecContextOutsideSubsystem off
|
||||
RTWSystemCode "Auto"
|
||||
FunctionWithSeparateData off
|
||||
Opaque off
|
||||
RequestExecContextInheritance off
|
||||
MaskHideContents off
|
||||
System {
|
||||
Name "Grue_L"
|
||||
Location [713, 179, 1248, 430]
|
||||
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"
|
||||
Block {
|
||||
BlockType Inport
|
||||
Name "Delta F"
|
||||
SID 281
|
||||
Position [30, 98, 60, 112]
|
||||
IconDisplay "Port number"
|
||||
OutDataType "fixdt(1, 16)"
|
||||
OutScaling "2^0"
|
||||
}
|
||||
Block {
|
||||
BlockType Inport
|
||||
Name "Delta C"
|
||||
SID 284
|
||||
Position [25, 148, 55, 162]
|
||||
Port "2"
|
||||
IconDisplay "Port number"
|
||||
OutDataType "fixdt(1, 16)"
|
||||
OutScaling "2^0"
|
||||
}
|
||||
Block {
|
||||
BlockType Demux
|
||||
Name "Demux1"
|
||||
SID 236
|
||||
Ports [1, 6]
|
||||
Position [295, 28, 300, 227]
|
||||
ShowName off
|
||||
Outputs "6"
|
||||
DisplayOption "bar"
|
||||
}
|
||||
Block {
|
||||
BlockType Mux
|
||||
Name "Mux1"
|
||||
SID 233
|
||||
Ports [2, 1]
|
||||
Position [95, 81, 100, 179]
|
||||
ShowName off
|
||||
Inputs "2"
|
||||
DisplayOption "bar"
|
||||
}
|
||||
Block {
|
||||
BlockType StateSpace
|
||||
Name "Syst. linéaire"
|
||||
SID 232
|
||||
Position [160, 113, 220, 147]
|
||||
A "[0 0 0 1 0 0 ; 0 0 0 0 1 0 ; 0 0 0 0 0 1 ; 0 0 m*g/Mc -Cd/Mc 0 0 ; 0 0 0 0 -Cr/(b^2*(J/b^2+m)) 0 ; 0 0 -g/R*"
|
||||
"(1+m/Mc) Cd/(Mc*R) 0 0]"
|
||||
B "[0 0 ; 0 0 ; 0 0 ; 1/Mc 0 ; 0 -1/(b*(J/b^2+m)) ; -1/(R*Mc) 0 ];"
|
||||
C "eye(6)"
|
||||
D "zeros(6,2)"
|
||||
}
|
||||
Block {
|
||||
BlockType Outport
|
||||
Name "Delta d"
|
||||
SID 279
|
||||
Position [480, 33, 510, 47]
|
||||
IconDisplay "Port number"
|
||||
OutDataType "fixdt(1, 16)"
|
||||
OutScaling "2^0"
|
||||
}
|
||||
Block {
|
||||
BlockType Outport
|
||||
Name "Delta r"
|
||||
SID 280
|
||||
Position [445, 68, 475, 82]
|
||||
Port "2"
|
||||
IconDisplay "Port number"
|
||||
OutDataType "fixdt(1, 16)"
|
||||
OutScaling "2^0"
|
||||
}
|
||||
Block {
|
||||
BlockType Outport
|
||||
Name "Delta theta"
|
||||
SID 282
|
||||
Position [415, 103, 445, 117]
|
||||
Port "3"
|
||||
IconDisplay "Port number"
|
||||
OutDataType "fixdt(1, 16)"
|
||||
OutScaling "2^0"
|
||||
}
|
||||
Block {
|
||||
BlockType Outport
|
||||
Name "Delta d'"
|
||||
SID 283
|
||||
Position [380, 138, 410, 152]
|
||||
Port "4"
|
||||
IconDisplay "Port number"
|
||||
OutDataType "fixdt(1, 16)"
|
||||
OutScaling "2^0"
|
||||
}
|
||||
Block {
|
||||
BlockType Outport
|
||||
Name "Delta r'"
|
||||
SID 285
|
||||
Position [350, 173, 380, 187]
|
||||
Port "5"
|
||||
IconDisplay "Port number"
|
||||
OutDataType "fixdt(1, 16)"
|
||||
OutScaling "2^0"
|
||||
}
|
||||
Block {
|
||||
BlockType Outport
|
||||
Name "Delta theta'"
|
||||
SID 286
|
||||
Position [320, 208, 350, 222]
|
||||
Port "6"
|
||||
IconDisplay "Port number"
|
||||
OutDataType "fixdt(1, 16)"
|
||||
OutScaling "2^0"
|
||||
}
|
||||
Line {
|
||||
SrcBlock "Mux1"
|
||||
SrcPort 1
|
||||
DstBlock "Syst. linéaire"
|
||||
DstPort 1
|
||||
}
|
||||
Line {
|
||||
SrcBlock "Delta F"
|
||||
SrcPort 1
|
||||
DstBlock "Mux1"
|
||||
DstPort 1
|
||||
}
|
||||
Line {
|
||||
SrcBlock "Syst. linéaire"
|
||||
SrcPort 1
|
||||
DstBlock "Demux1"
|
||||
DstPort 1
|
||||
}
|
||||
Line {
|
||||
SrcBlock "Delta C"
|
||||
SrcPort 1
|
||||
DstBlock "Mux1"
|
||||
DstPort 2
|
||||
}
|
||||
Line {
|
||||
SrcBlock "Demux1"
|
||||
SrcPort 1
|
||||
DstBlock "Delta d"
|
||||
DstPort 1
|
||||
}
|
||||
Line {
|
||||
SrcBlock "Demux1"
|
||||
SrcPort 2
|
||||
DstBlock "Delta r"
|
||||
DstPort 1
|
||||
}
|
||||
Line {
|
||||
SrcBlock "Demux1"
|
||||
SrcPort 3
|
||||
DstBlock "Delta theta"
|
||||
DstPort 1
|
||||
}
|
||||
Line {
|
||||
SrcBlock "Demux1"
|
||||
SrcPort 4
|
||||
DstBlock "Delta d'"
|
||||
DstPort 1
|
||||
}
|
||||
Line {
|
||||
SrcBlock "Demux1"
|
||||
SrcPort 5
|
||||
DstBlock "Delta r'"
|
||||
DstPort 1
|
||||
}
|
||||
Line {
|
||||
SrcBlock "Demux1"
|
||||
SrcPort 6
|
||||
DstBlock "Delta theta'"
|
||||
DstPort 1
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
BIN
424-Systeme_Non_Lineaires/TP2/Grue_L.slxc
Normal file
3720
424-Systeme_Non_Lineaires/TP2/Grue_NL.mdl
Normal file
2563
424-Systeme_Non_Lineaires/TP2/Grue_NL.mdl.r2009b
Normal file
BIN
424-Systeme_Non_Lineaires/TP2/Grue_NL.slxc
Normal file
BIN
424-Systeme_Non_Lineaires/TP2/Grue_NL_corrL.slx
Normal file
BIN
424-Systeme_Non_Lineaires/TP2/Grue_NL_corrNL.slx
Normal file
BIN
424-Systeme_Non_Lineaires/TP2/Grue_NL_corrNL.slx.autosave
Normal file
BIN
424-Systeme_Non_Lineaires/TP2/Grue_NL_corrNL.slxc
Normal file
120
424-Systeme_Non_Lineaires/TP2/Ini_Grue.m
Normal file
|
@ -0,0 +1,120 @@
|
|||
% Ce script permet de d<EFBFBD>clarer les valeurs des param<EFBFBD>tres du mod<EFBFBD>le
|
||||
% Il sert aussi <EFBFBD> d<EFBFBD>clarer et <EFBFBD> calculer les diff<EFBFBD>rentes variables
|
||||
% de commande tout au long du TP (Exemples : Point de fonctionnement,
|
||||
% trajectoire, commande <EFBFBD> grand gain, ...
|
||||
clear, clc,
|
||||
|
||||
|
||||
|
||||
%% Param<EFBFBD>tres :
|
||||
m = 500; %kg
|
||||
Mc = 5000; %kg
|
||||
g = 10; %m/s^2
|
||||
J = 50; %kg.m^2
|
||||
b = 0.4; %m
|
||||
Cd = 20; %kg/s
|
||||
Cr = 20; %kg.m^2/s
|
||||
|
||||
%% Point de fonctionnement
|
||||
R = 10;
|
||||
D = 0;
|
||||
C0 = m*g*b;
|
||||
F = 0;
|
||||
|
||||
%% Trajectoire
|
||||
Rini = R;
|
||||
Dini = 0;
|
||||
Rfin = 5;
|
||||
Dfin = 20;
|
||||
zh = 1;
|
||||
dt = 10;
|
||||
%% Manip 1
|
||||
A = [0 0 0 1 0 0 ;
|
||||
0 0 0 0 1 0 ;
|
||||
0 0 0 0 0 1 ;
|
||||
0 0 m*g/Mc -Cd/Mc 0 0 ;
|
||||
0 0 0 0 -Cr/(b^2*(J/b^2+m)) 0 ;
|
||||
0 0 -g/R*(1+m/Mc) Cd/(Mc*R) 0 0];
|
||||
|
||||
B = [0 0 ;
|
||||
0 0 ;
|
||||
0 0 ;
|
||||
1/Mc 0 ;
|
||||
0 -1/(b*(J/b^2+m)) ;
|
||||
-1/(R*Mc) 0 ];
|
||||
C= eye(6);
|
||||
Com = [B A*B A^2*B A^3*B A^4*B A^5*B];
|
||||
rank(Com)
|
||||
|
||||
%% Manip 2
|
||||
|
||||
vprA = damp(eig(A)); % valeur propres de A
|
||||
omega0 = vprA(2);
|
||||
xi = 0.5
|
||||
i=complex(0,1);
|
||||
p1 = omega0*(-xi+ i *sqrt(1-xi^2));
|
||||
p2 = omega0*(-xi- i *sqrt(1-xi^2));
|
||||
p = [-2 -2.5 -3 -4 p1 p2];
|
||||
|
||||
|
||||
K = place(A,B,p)
|
||||
C_1 =C(1,:);
|
||||
B_1 =B(:,1);
|
||||
|
||||
eta = -1/(C_1*(A-B*K)^-1*B_1);
|
||||
|
||||
%%
|
||||
sys = ss(A-B*K,B(:,2),C(2,:),D)
|
||||
H = tf(sys)
|
||||
bode(H)
|
||||
% margin(H)
|
||||
% Avec le correcteur intégral :
|
||||
Ti = 5e-4
|
||||
CI = tf(1,[-Ti 0]); % négatif pour avoir une phase >180
|
||||
%bode(H,CI*H,'grid')
|
||||
fig =figure();
|
||||
margin(CI*H)
|
||||
grid on;
|
||||
saveas(fig,"manip_5marge.png");
|
||||
|
||||
%% pretty figure
|
||||
% plot(simout)
|
||||
% legend("d","r","\theta","d d/dt","dr/dt","d\theta/dt");
|
||||
% grid on;
|
||||
%% Commande grand gain
|
||||
Deltat= 10
|
||||
Dini = 0;
|
||||
Rini = 10;
|
||||
Dfin = 20;
|
||||
Rfin = 5;
|
||||
ed = omega0/10;
|
||||
er = ed;
|
||||
|
||||
coeff_phi = [6/Deltat^5 -15/Deltat^4 10/Deltat^3 0 0 0]
|
||||
|
||||
|
||||
%%
|
||||
close all;
|
||||
fig= figure()
|
||||
plot(Dc)
|
||||
hold on
|
||||
plot(simout.Time, simout.Data(:,1));
|
||||
xlabel('temps (s)');
|
||||
grid on;
|
||||
title('Vérification de la planification de trajectoire');
|
||||
legend('d_c','d');
|
||||
|
||||
fig2= figure()
|
||||
plot(Rc)
|
||||
hold on
|
||||
plot(simout.Time, simout.Data(:,2));
|
||||
xlabel('temps (s)');
|
||||
grid on;
|
||||
title('Vérification de la planification de trajectoire');
|
||||
legend('r_c','r');
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
BIN
424-Systeme_Non_Lineaires/TP2/NL_correcL.fig
Normal file
BIN
424-Systeme_Non_Lineaires/TP2/NL_correcL.png
Normal file
After Width: | Height: | Size: 17 KiB |
BIN
424-Systeme_Non_Lineaires/TP2/NL_correcL1.png
Normal file
After Width: | Height: | Size: 17 KiB |
BIN
424-Systeme_Non_Lineaires/TP2/NL_correcL10.png
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
424-Systeme_Non_Lineaires/TP2/NL_correcL100.png
Normal file
After Width: | Height: | Size: 16 KiB |
518
424-Systeme_Non_Lineaires/TP2/TP2.tex
Normal file
|
@ -0,0 +1,518 @@
|
|||
\documentclass[10pt,a4paper,notitlepage]{article}
|
||||
\usepackage[utf8]{inputenc}
|
||||
\usepackage[french]{babel}
|
||||
\usepackage[T1]{fontenc}
|
||||
\usepackage{mathtools}
|
||||
\usepackage[left=2cm,right=2cm,top=2cm,bottom=2cm]{geometry}
|
||||
\usepackage{graphicx}
|
||||
\usepackage{float}
|
||||
\usepackage{subcaption}
|
||||
\usepackage{tikz}
|
||||
|
||||
\usepackage{siunitx}
|
||||
\usepackage{numprint}
|
||||
|
||||
\addto{\captionsfrench}{\renewcommand{\abstractname}{Introduction}}
|
||||
|
||||
\author{Pierre-Antoine Comby}
|
||||
\title{TP1 : Commande d'un bras à liaison flexible par bouclage linéarisant}
|
||||
|
||||
\input{/home/pac/Scripts/Raccourcis.tex}
|
||||
\renewcommand{\R}{\mathbb{R}}
|
||||
\renewcommand{\Z}{\mathbb{Z}}
|
||||
\renewcommand{\vec}{\overrightarrow}
|
||||
\usepackage{minted}
|
||||
\begin{document}
|
||||
\maketitle
|
||||
\section{Modélisation}
|
||||
\paragraph{Prépa.1}
|
||||
\begin{itemize}
|
||||
\item On applique le PFD au chariot \{1\}de masse $M_c$:
|
||||
\begin{equation}
|
||||
M_c\vec{a_{\{1\}}} = \vec{F}+\vec{T}-C_d\vec{v_{\{1\}}}+M_c\vec{g}
|
||||
\end{equation}
|
||||
Soit en projetant:
|
||||
\begin{equation}
|
||||
M_c \ddot{d} = F+T\sin(\theta)-C_d\dot{d}
|
||||
\end{equation}
|
||||
\item On fait de meme pour la masse pendulaire \{2\} $m$:
|
||||
\begin{equation}
|
||||
m \vec{a_{\{2\}}} = -\vec{T} +m \vec{g}
|
||||
\end{equation}
|
||||
et il vient directement:
|
||||
\begin{equation}
|
||||
\begin{cases}
|
||||
m\ddot{x} = -T\sin(\theta)\\
|
||||
m\ddot{z} = -T\cos(\theta)+mg
|
||||
\end{cases}
|
||||
\end{equation}
|
||||
\item et un théorème du moment cinétique sur l'arbre donne (avec $\alpha$ angle du tambour par rapport au chariot):
|
||||
\begin{equation}
|
||||
J\ddot{\alpha} = -C +bT-C_r \dot{\alpha}
|
||||
\end{equation}
|
||||
soit :
|
||||
\begin{equation}
|
||||
J \frac{\ddot{r}}{b} = -C+bT -C_r \frac{\dot{r}}{b}
|
||||
\end{equation}
|
||||
\end{itemize}
|
||||
\paragraph{Prépa.2}
|
||||
Comme $b\ll r$ on a :
|
||||
\begin{equation}
|
||||
\begin{cases}
|
||||
x = r\sin\theta+d\\
|
||||
z = r\cos\theta
|
||||
\end{cases}
|
||||
\end{equation}
|
||||
soit :
|
||||
\begin{equation}
|
||||
\begin{cases}
|
||||
\dot{x} = \dot{r}\sin\theta + r\dot{\theta}\cos\theta +\dot{d}\\
|
||||
\dot{z} = \dot{r}\cos\theta -r\dot{\theta}\sin\theta
|
||||
\end{cases}
|
||||
\quad\text{ et }\quad
|
||||
\begin{cases}
|
||||
\ddot{x} = \ddot{r}\sin\theta+2\dot{r}\dot{\theta}\cos\theta+r\ddot{\theta}\cos\theta- r\dot{\theta}^2\sin\theta+\ddot{d}\\
|
||||
\ddot{z} = \ddot{r}\cos\theta-2\dot{r}\dot{\theta}\sin\theta-r\ddot{\theta}\sin\theta-r\dot{\theta}^2\cos\theta
|
||||
\end{cases}
|
||||
\end{equation}
|
||||
\paragraph{Prépa.3} en remplacant dans le système (1) donné dans l'énoncé on trouve:
|
||||
\begin{equation}
|
||||
\begin{cases}
|
||||
m(
|
||||
\ddot{r} \sin\theta+2\dot{r}\dot{\theta}\cos\theta+r\ddot{\theta}\cos\theta-r\dot{\theta}^2\sin\theta+\ddot{d}
|
||||
) &=-T\sin\theta\\
|
||||
m(
|
||||
\ddot{r}\cos{\theta}-2\dot{r}\dot{\theta}\sin\theta-r\ddot{\theta}\sin\theta-r\dot{\theta}^2\cos\theta
|
||||
) &= - T\cos\theta+ mg
|
||||
\end{cases}
|
||||
\end{equation}
|
||||
A partir des identités trigonométrique on a :
|
||||
\begin{equation}
|
||||
\begin{cases}
|
||||
m\ddot{r} &= - m\ddot{d}\sin\theta+mr\dot{\theta}^2 -T + mg \cos{\theta}\\
|
||||
r \ddot{\theta} &= -\ddot{d}\cos\theta-2\dot{r}\dot{\theta}-g\sin\theta
|
||||
\end{cases}
|
||||
\end{equation}
|
||||
\paragraph{Prépa.4}
|
||||
Des équations précédentes on en déduit le modèle d'état( en remplacant l'expression de $T$ par celle déduite de la prépa.3):
|
||||
\begin{equation}
|
||||
\begin{cases}
|
||||
M_c\ddot{d} &= F +T \sin\theta-C_d\dot{d}\\
|
||||
r\ddot{\theta} &= -\ddot{d}\cos\theta-2\dot{r}\dot{\theta}-g\sin(\theta)\\
|
||||
(m+\frac{J}{b^2})\ddot{r} = -\frac{C}{b}-\frac{C_r\dot{r}}{b^2}-m\ddot{d}\sin\theta-mr\dot{\theta}^2+mg\cos{\theta}
|
||||
\end{cases}
|
||||
\end{equation}
|
||||
|
||||
\paragraph{Prépa.5}
|
||||
On linéarise autour de $d=D$,$r=R$,$\theta=0$, $T=mg$,$F=0$,$C=mbg$:
|
||||
\begin{equation}
|
||||
\begin{cases}
|
||||
M_{c}(\Delta d+D) &=(\Delta F)+T \sin (\Delta \theta)-C_{d}(\Delta d+D) \\(\Delta r+R)(\Delta \theta) &=-(\Delta d+D) \cos (\Delta \theta)-2(\Delta r+R)(\Delta \theta)-g \sin (\Delta \theta) \\\left(m+\frac{J}{b^{2}}\right)(\Delta r+R) &=-\frac{\Delta C+m g b}{b}-\frac{C_{r}(\Delta r+R)}{b^{2}}-m(\Delta d+D) \sin (\Delta \theta)-m(\Delta r+R)(\Delta \theta)^{2}+m g \cos (\Delta \theta)
|
||||
\end{cases}
|
||||
\end{equation}
|
||||
En faisant une approximation au 1er ordre on a:
|
||||
\begin{equation}
|
||||
\begin{cases}
|
||||
M_{c} \Delta d &=\Delta F+m g \Delta \theta-C_{d} \Delta d \\
|
||||
R \Delta \theta+\Delta d &=-g \Delta \theta \\
|
||||
\left(m+\frac{J}{b^{2}}\right) \ddot{\Delta r} &=-\frac{\Delta C+m g b}{b}-\frac{C_{r} \Delta r}{b^{2}}-m g \Delta \theta
|
||||
\end{cases}
|
||||
\implies
|
||||
\begin{cases} M_{c} \ddot{\Delta} d &=\Delta F+m g \Delta \theta-C_{d} \dot{\Delta} d \\
|
||||
R \Delta \theta+\Delta d &=-g \Delta \theta \\
|
||||
\left(m+\frac{J}{b^{2}}\right) \ddot{\Delta r} &=-\frac{\Delta C}{b}-\frac{C_{r} \Delta r}{b^{2}}
|
||||
\end{cases}
|
||||
\end{equation}
|
||||
On en deduit le modèle d'état linéarisé:
|
||||
\[
|
||||
\deriv{t}\vect{\Delta d \\ \Delta r \\ \Delta\theta \\ \dot{\Delta d}\\ \dot{\Delta r}\\ \dot{\Delta \theta}} =
|
||||
\left[ \begin{array}{cccccc}
|
||||
{0} & {0} & {0} & {1} & {0} & {0} \\
|
||||
{0} & {0} & {0} & {0} & {1} & {0} \\
|
||||
{0} & {0} & {0} & {0} & {0} & {1} \\
|
||||
{0} & {0} & {\frac{m g}{M_{c}}} & {-\frac{C_{d}}{M_{c}}} & {0} & {0} \\
|
||||
{0} & {0} & {0} & {0} & {-\frac{C_{r}}{J+m b^{2}}} & {0} \\
|
||||
{0} & {0} & {-\left(1+\frac{m}{M c}\right) \frac{g}{R}} & {\frac{C_{d}}{R M_{c}}} & {0} & {0}
|
||||
\end{array}\right] \cdot
|
||||
\left[ \begin{array}{c}{\Delta d} \\ {\Delta r} \\ {\Delta \theta} \\ {\Delta d} \\ {\Delta r} \\ {\Delta \theta}\end{array}\right]+
|
||||
\left[ \begin{array}{ccc}{0} & {0} \\ {0} & {0} \\ {0} & {0} \\ {\frac{1}{M_{c}}} & {0} \\ {0} & {-\frac{1}{\frac{J}{b}+m b^{2}}} \\ {-\frac{1}{R M_{c}}} & {0}\end{array}\right]
|
||||
\cdot \left[ \begin{array}{c}{\Delta F} \\ {\Delta C}\end{array}\right]
|
||||
\]
|
||||
|
||||
\section{Commande linéaire}
|
||||
\paragraph{Manip.1}
|
||||
Dans le cas linéaire on construit la matrce de Kallman :
|
||||
\[
|
||||
\mathcal{C} = \vect{B & AB & A^2B & A^5B }
|
||||
\]
|
||||
avec la fonction matlab \texttt{rank(Com)} on vérifie que le système est bien commandable.
|
||||
\begin{minted}{matlab}
|
||||
A = [0 0 0 1 0 0 ;
|
||||
0 0 0 0 1 0 ;
|
||||
0 0 0 0 0 1 ;
|
||||
0 0 m*g/Mc -Cd/Mc 0 0 ;
|
||||
0 0 0 0 -Cr/(b^2*(J/b^2+m)) 0 ;
|
||||
0 0 -g/R*(1+m/Mc) Cd/(Mc*R) 0 0];
|
||||
B = [0 0 ;
|
||||
0 0 ;
|
||||
0 0 ;
|
||||
1/Mc 0 ;
|
||||
0 -1/(b*(J/b^2+m)) ;
|
||||
-1/(R*Mc) 0 ];
|
||||
Com = [B A*B A^2*B A^3*B A^4*B A^5*B];
|
||||
rank(Com)
|
||||
\end{minted}
|
||||
On a un rang de 6, le système linéaire est bien commandable.
|
||||
\paragraph{Manip.2}
|
||||
avec la fonction \texttt{damp(eig(A))} on trouve les valeurs propres et constantes de temps de la matrice d'état
|
||||
\begin{table}[H]
|
||||
\centering
|
||||
\begin{tabular}[t]{llll}
|
||||
\hline
|
||||
{\bf Pole} & {\bf Damping} & {\bf Time Constant} & \\
|
||||
\hline
|
||||
& & {(rad/TimeUnit)} & {(TimeUnit)} \\
|
||||
|
||||
0.00e+00 & -1.00e+00 & 0.00e+00 & Inf \\
|
||||
-1.82e-04 + 1.48e+00i & 1.23e-04 & 1.48e+00 & 5.50e+03 \\
|
||||
-1.82e-04 - 1.48e+00i & 1.23e-04 & 1.48e+00 & 5.50e+03 \\
|
||||
-3.64e-03 & 1.00e+00 & 3.64e-03 & 2.75e+02 \\
|
||||
0.00e+00 & -1.00e+00 & 0.00e+00 & Inf \\
|
||||
-1.54e-01 & 1.00e+00 & 1.54e-01 & 6.50e+00 \\
|
||||
\hline
|
||||
\end{tabular}
|
||||
|
||||
\caption{Valeur propre et pulsation caractéristique}
|
||||
\end{table}
|
||||
On a donc la pulsation propre du système : $\omega_0$= \SI{1.48}{rad/s}. On choisi alors d'imposer les poles suivant, (d'après le cahier des charges) en ammortissant le pole double conjugué principal:
|
||||
\[
|
||||
p_{1,2} = \omega_0(\xi\pm j \sqrt{1-\xi^2}) = 1.48(0.5\pm \sqrt{1-0.5^2})
|
||||
\]
|
||||
\begin{minted}{matlab}
|
||||
|
||||
vprA = damp(eig(A)); % valeur propres de A
|
||||
omega0 = vprA(2);
|
||||
xi = 0.5
|
||||
i=complex(0,1);
|
||||
p1 = omega0*(xi+ i *sqrt(1-xi^2));
|
||||
p2 = omega0*(xi- i *sqrt(1-xi^2));
|
||||
p = [-2 -2.5 -3 -4 p1 p2];
|
||||
|
||||
K = place(A,B,p)
|
||||
|
||||
\end{minted}
|
||||
\[K = 10^{5}\cdot
|
||||
\begin{bmatrix}
|
||||
|
||||
0.4288 & 0.1360 & 2.2614 & 0.0215 & 0.0506 & -0.9539 \\
|
||||
-0.0035 & -0.0261 & -0.0026 & 0.0019 & -0.0182 & 0.0195 \\
|
||||
|
||||
\end{bmatrix}\]
|
||||
\paragraph{Manip.3}
|
||||
Pour le terme de précommande, si l'on veux un gain statique unitaire, il faut\footnote{cf UE 421}:
|
||||
\[
|
||||
\eta =\frac{-1}{C_1(A-BK)^{-1}B_1} = 4.1039. 10^{4}
|
||||
\]
|
||||
Avec $C_1$ et $B_1$ lignes et colonnes des matrices $C$ et $B$ propre à $\Delta d$
|
||||
\paragraph{Manip.4} L'ajout d'une composante intégrale va rendre notre système précis. On construit alors la fonction de transfert grace à MATLAB:
|
||||
\begin{minted}{matlab}
|
||||
sys = ss( A-B*K,B(:,2),C(2,:), 0 );
|
||||
H = tf(sys);
|
||||
bode(H);
|
||||
\end{minted}
|
||||
On obtient le diagramme de bode suivant:
|
||||
\begin{figure}[ht]
|
||||
\centering
|
||||
\includegraphics[width=0.9\textwidth]{manip_5_bode.png}
|
||||
\caption{Diagramme de bode système en boucle ouverte}
|
||||
\label{fig:label}
|
||||
\end{figure}
|
||||
\paragraph{Manip.5}
|
||||
La marge de phase est nulle, on met en place un correcteur intégrale pur qui apporte stabilité et précission au système:
|
||||
|
||||
\begin{minted}{matlab}
|
||||
Ti = 4e-4
|
||||
CI = tf(1,[-Ti 0]); % négatif pour avoir une phase >180
|
||||
%bode(H,CI*H,'grid')
|
||||
figure();
|
||||
margin(CI*H)
|
||||
\end{minted}
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
\includegraphics[width=0.7\textwidth]{manip_5marge.png}
|
||||
\caption{Marge de Phase et Gain pour $T_i=4.10^{-4}$}
|
||||
\label{fig:margin}
|
||||
\end{figure}
|
||||
sur la figure\ref{fig:margin} on relève une marge de phase de 50$^o$ , le cahier des charge est respecté.
|
||||
|
||||
\begin{figure}[ht]
|
||||
\centering
|
||||
\includegraphics[width=0.9\textwidth]{bouclage_modele_L.png}
|
||||
\caption{Modèle Linéaire compléter par le correcteru par retour d'état.}
|
||||
\label{fig:label}
|
||||
\end{figure}
|
||||
|
||||
\paragraph{Manip.6}
|
||||
Avec une commande $\Delta d_c = 20$m on obtient la figure suivante:
|
||||
\begin{figure}[ht]
|
||||
\centering
|
||||
\includegraphics[width=0.7\textwidth]{manip6_20.png}
|
||||
\caption{sortie du système pour une commande de 20m}
|
||||
\label{fig:gain20}
|
||||
\end{figure}
|
||||
|
||||
On remarque que le système n'est plus précis, il faut recaler le gain, ici manuellement, pour obtenir un système précis.
|
||||
On atteint les limites du modèle linéaire, pour des commandes plus grande ou plus complexe il va falloir tenir compte des non-linéarités du système.
|
||||
|
||||
\paragraph{Manip.7}
|
||||
On applique le correcteur au modèle non linéaire, en ayant recentrer le
|
||||
retourd'état autour de son point de fonctionnement.
|
||||
On obtient une sortie chaotique, mais douce. comme on peux le voir sur la figure \ref{fig:dc_var}
|
||||
\paragraph{Manip.8}
|
||||
Un changement de consigne apporte un comportement différents :
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
\begin{subfigure}{0.5\textwidth}
|
||||
\centering
|
||||
\includegraphics[width=\textwidth]{NL_correcL10.png}
|
||||
\caption{$d_c=10$}
|
||||
\label{fig:label}
|
||||
\end{subfigure}%
|
||||
\begin{subfigure}{0.5\textwidth}
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{NL_correcL100.png}
|
||||
\caption{$d_c=100$}
|
||||
\label{fig:label}
|
||||
\end{subfigure}\\
|
||||
\begin{subfigure}{0.5\textwidth}
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{NL_correcL1.png}
|
||||
\caption{$d_c=1$}
|
||||
\label{fig:label}
|
||||
\end{subfigure}
|
||||
\caption{différentes sorties pour des consignes différentes}
|
||||
\label{fig:dc_var}
|
||||
\end{figure}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
\section{Commande non linéaire hiérarchisante}
|
||||
\subsection{commande à grand gain}
|
||||
\paragraph{Prépa.6} On planifie la trajectoire avec:
|
||||
\begin{equation}
|
||||
\begin{aligned} D_{c}(t) &=(1-\phi(t)) D_{i n i}+\phi(t) D_{f i n} \\
|
||||
R_{c}(t) &=(1-\phi(t)) R_{i n i}+\phi(t) R_{f i n}
|
||||
\end{aligned}
|
||||
\end{equation}
|
||||
Avec les conditions initiales et finales sur les positions
|
||||
$\phi(0)=0 \quad$ et $\quad \phi(\Delta t)=1$
|
||||
et celles sur la vitesse et l'accélération
|
||||
$\forall i=1,2\left.\frac{d^{i} \phi(t)}{d t^{i}}\right|_{t=0}=0 \quad$ et $\quad\left.\frac{d^{i} \phi(t)}{d t^{i}}\right|_{t=\Delta t}=0$
|
||||
On a 6 conditions à respecter, donc on choisit un polynôme de degré 5:
|
||||
\[
|
||||
\phi(t) = a_5 t^5 + a_4 t^4 +a_3 t^3 + a_2 t^2+a_1 t+ a_0
|
||||
\]
|
||||
|
||||
Les conditions initiales imposent $a_0=a_1=a_2 = 0$ on a donc le polynome : $ \phi(t) = a_5 t^5 + a_4 t^4 +a_3 t^3$.
|
||||
Alors :
|
||||
\begin{equation}
|
||||
\begin{aligned} \alpha(\Delta t)=1 & \Rightarrow \quad a_5 \Delta t^{5} \quad+a_4 \Delta t^{4} \quad+a_3 \Delta t^{3}=1 \\
|
||||
\left.\frac{d \alpha(t)}{d t}\right|_{t=\Delta t}=0 & \Rightarrow 5 a_5 \Delta t^{4} \quad+4 a_4 \Delta t^{3}+3 a_3 \Delta t^{2}=0 \\
|
||||
\left.\frac{d^{2} \alpha(t)}{d t^{2}}\right|_{t=\Delta t}=0 & \Rightarrow 20 a_5 \Delta t^{4}+12 a_4 \Delta t^{3}+6 a_3 \Delta t^{2}=0
|
||||
\end{aligned}
|
||||
\end{equation}
|
||||
En résolvant le système on obtient:
|
||||
\[
|
||||
a_5 = \frac{6}{\Delta t^5} ,\quad a_4 = \frac{-15}{\Delta t^4}, \quad a_3 = \frac{10}{\Delta t^3}
|
||||
\]
|
||||
|
||||
\paragraph{Prépa.7} à partir de l'équation (2.4) de l'énoncé on a :
|
||||
|
||||
\begin{equation}
|
||||
\frac{1}{\omega_{0}^{2}}=\frac{R}{g} \Rightarrow \omega_{0}=\sqrt{\frac{g}{R}}
|
||||
\end{equation}
|
||||
|
||||
\paragraph{Prépa.8} on a les commandes :
|
||||
\begin{equation}
|
||||
F=\frac{M_{c}}{\epsilon_{d}}\left(\dot{D}_{c}-\dot{d}\right) \text{ et } C=-\frac{J / b+m b}{\epsilon_{r}}\left(\dot{R}_{c}-\dot{r}\right)
|
||||
\end{equation}
|
||||
soit le modèle :
|
||||
\begin{equation}
|
||||
\dot{x}=\left[ \begin{array}{c}{\Delta d} \\ {\Delta r} \\ {\frac{m g}{M_{c}} \Delta \theta-\frac{C_{d}}{M_{c}} \Delta d+\frac{1}{\epsilon_{d}}\left(\dot{D}_{c}-\dot{d}\right)} \\ {\frac{-C_{r}}{J+m b^{2}}+\frac{F_{c}-\dot{r}}{\epsilon_{r}}} \\ {\Delta \theta}\end{array}\right]
|
||||
\end{equation}
|
||||
D'où :
|
||||
\begin{equation}
|
||||
\begin{aligned}
|
||||
\ddot{\Delta d} &=-\left(\frac{C_{d}}{M_{c}}+\frac{1}{\epsilon_{d}}\right) \Delta d+\frac{\dot{D}_{c}}{\epsilon_{d}}+\frac{m g}{M_{c}} \Delta \theta \\
|
||||
\ddot{\Delta r} &=-\left(\frac{C_{r}}{J+m b^{2}}+\frac{1}{\epsilon_{r}}\right) \Delta r+\frac{\dot{R}_{c}}{\epsilon_{r}} \\
|
||||
\text { On peut poser } \tau_{d} &=\frac{1}{\frac{C_{d}}{M_{c}}+\frac{1}{\epsilon_{d}}} \\
|
||||
\text { et } \tau_{r} &=\frac{1}{\frac{C_{r}}{J+m b^{2}}+\frac{1}{\epsilon_{r}}}
|
||||
\end{aligned}
|
||||
\end{equation}
|
||||
En considérant $\epsilon_d \ll 1 $ et $\epsilon_r <<1 $ on a $\tau_d \simeq \epsilon_d$ et $\tau_r \simeq \epsilon_r$
|
||||
|
||||
\paragraph{Prépa.9}
|
||||
On doit prendre $\epsilon_d$ et $\epsilon_r$ suffisamment petit devant la pulsation du sytème $\omega_0$, pour avoir une commande qui puisse compenser suffisament vite les oscillations du système.
|
||||
\paragraph{Manip.9}
|
||||
On réalise la commande suivante :
|
||||
\begin{figure}[ht]
|
||||
\centering
|
||||
\includegraphics[width=0.9\textwidth]{boucleNL.png}
|
||||
\caption{Élaboration de la commande pour la porsuite de trajectoire}
|
||||
\label{fig:label}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[ht]
|
||||
\centering
|
||||
\begin{subfigure}{0.5\textwidth}
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{traj_plan_d}
|
||||
\caption{poursuite sur $d$}
|
||||
\label{fig:label}
|
||||
\end{subfigure}%
|
||||
\begin{subfigure}{0.5\textwidth}
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{traj_plan_r}
|
||||
\caption{Poursuite sur $r$}
|
||||
\label{fig:label}
|
||||
\end{subfigure}
|
||||
\caption{Commande en poursuite de trajectoire}
|
||||
\label{fig:pours_traj}
|
||||
\end{figure}
|
||||
sur la figure \ref{fig:pours_traj} on remarque que la poursuite est plutot bien respecté pour $d$, mais celle sur $r$ conduit à un écart final non nul.
|
||||
\paragraph{Manip.10}
|
||||
|
||||
|
||||
\paragraph{Manip.11}
|
||||
\paragraph{Manip.12}
|
||||
\paragraph{Manip.13}
|
||||
|
||||
\subsection{Platitude}
|
||||
\paragraph{Prépa.10}
|
||||
Pour montrer que le systeme est plat, ayant pour sortie plates $(x, z),$ il faut montrer que les états,$d, r, \theta$ et les commandes $F, C$ ne dépendent que des sorties $x, z$ et de leurs derivées.
|
||||
\begin{equation}
|
||||
\left\{
|
||||
\begin{aligned}
|
||||
x &=r \sin \theta+d \\
|
||||
m \ddot{x} &=-T \sin \theta
|
||||
\end{aligned}
|
||||
\right. \Rightarrow d=x+r \frac{m \ddot{x}}{T}
|
||||
\end{equation}
|
||||
|
||||
Or on a:
|
||||
\begin{equation}
|
||||
\begin{cases}
|
||||
m \ddot{x}=-T \sin \theta \\
|
||||
m \ddot{z}=-T \cos \theta+m g
|
||||
\end{cases} \Rightarrow T=m \sqrt{\ddot{x}^{2}+(g-\ddot{z})^{2}}
|
||||
\end{equation}
|
||||
\begin{equation}
|
||||
\begin{cases}
|
||||
x=r \sin \theta+d \\
|
||||
z=r \cos \theta
|
||||
\end{cases} \Rightarrow r^{2}=(x-d)^{2}+z^{2}
|
||||
\end{equation}
|
||||
Soit :
|
||||
\begin{equation}
|
||||
\begin{cases}
|
||||
x-d &=-r \frac{m \ddot{x}}{T} \\
|
||||
r^{2} &=(x-d)^{2}+z^{2}
|
||||
\end{cases} \Rightarrow r^{2}=\frac{z^{2}}{1-\frac{\ddot{x}^{2}}{\vec{x}^{2}+(g-\ddot{z})^{2}}}
|
||||
\end{equation}
|
||||
|
||||
Or $\theta = \arccos{\frac{z}{r}}$ on a donc :
|
||||
|
||||
\begin{equation}
|
||||
r=\sqrt{\frac{z^{2}}{1-\frac{\ddot{x}^{2}}{\ddot{x}^{2}+(g-\ddot{z})^{2}}},}, d=x+\sqrt{\frac{z^{2}}{(g-\ddot{z})^{2}}} \ddot{x}, \quad \text { et } \theta=\arccos \sqrt{1-\frac{\ddot{x}^{2}}{\ddot{x}^{2}+(g-\ddot{z})^{2}}}
|
||||
\end{equation}
|
||||
Les variables d'états de dépendent donc que des sorties et de leurs dérivées, de même pour la commande
|
||||
\begin{equation}
|
||||
\begin{aligned}
|
||||
C &=b T-C_{r} \frac{\dot{r}}{b}-J \frac{\ddot{r}}{b} \\
|
||||
F &=M_{c} \ddot{d}-T \sin \theta+C_{d} \dot{d}
|
||||
\end{aligned}
|
||||
\end{equation}
|
||||
Le système est plat ,avec le sorties plates $x,z$
|
||||
\paragraph{Prépa.11}
|
||||
Les conditions imposées sont :
|
||||
\begin{equation}
|
||||
\begin{cases}
|
||||
d(t=0) = D_{ini} \\
|
||||
r(t=0) = R_{ini} \\
|
||||
\theta(t=0) = 0
|
||||
\end{cases} \quad\text{ et }\quad
|
||||
\begin{cases}
|
||||
d(t=\Delta t ) = D_{fin} \\
|
||||
r(t=\Delta t ) = R_{fin} \\
|
||||
\theta(t=\Delta t ) = 0
|
||||
\end{cases}
|
||||
\end{equation}
|
||||
Ce qui se transpose aux coordonnées:
|
||||
\begin{equation}
|
||||
\begin{cases}
|
||||
x(t=0) = D_{ini}\\
|
||||
z(t=0) = R_{ini} \\
|
||||
\end{cases} \quad\text{ et }\quad
|
||||
\begin{cases}
|
||||
x(t=\Delta t) = D_{fin}\\
|
||||
z(t=\Delta t) = R_{fin} \\
|
||||
\end{cases}
|
||||
\end{equation}
|
||||
|
||||
On pose donc :
|
||||
\begin{equation}
|
||||
\begin{aligned}
|
||||
x_{c}(t) &=(1-\alpha(t)) D_{i n i}+\alpha(t) D_{f i n} \\
|
||||
z_{c}(t) &=(1-\alpha(t)) R_{i n i}+\alpha(t) R_{f i n}
|
||||
\end{aligned}
|
||||
\end{equation}
|
||||
De manière analogue à la préparation 6 on a les conditions initiales et finales sur les positions et leur dérivées:
|
||||
\[
|
||||
\alpha(0) = 0 ,\quad \alpha(\Delta t) =1, \quad \forall i = 1,2,3\left. \deriv[^i\alpha(t)]{t^i}\right|_{t=0}= 0 \text{ et } \left.\deriv[^i\alpha(t)]{t^i}\right|_{t=\Delta t}= 0
|
||||
\]
|
||||
Pour satisfaire les 8 conditions on choisit un polynome d'ordre 7 :
|
||||
\begin{equation}
|
||||
\alpha(t)=a_{7} t^{7}+a_{6} t^{6}+a_{5} t^{5}+a_{4} t^{4}+a_{3} t^{3}+a_{2} t^{2}+a_{1} t+a_{0}
|
||||
\end{equation}
|
||||
Les conditions initiales imposent $a_0=a_1=a_2=a_3 =0$ et les conditions finales donnent :
|
||||
\begin{equation}
|
||||
\begin{array}{lllllll}
|
||||
\alpha(\Delta t) & =1 & a_7\Delta t^7 & + a_6 \Delta t^6 & + a_5 \Delta t^5 & + a_4 \Delta t^4 & =1 \\
|
||||
\frac{d \alpha(t)}{d t}|t=\Delta t & =0 & 7a_7\Delta t^6 & + 6a_6 \Delta t^5 & 5a_5\Delta t^4 & 4a_4 \Delta t^3 & =0 \\
|
||||
\frac{d^{2} \alpha(t)}{d t^{2}}|_{t=\Delta t} & =0 & 42a_7\Delta t^5 & +30a_6 \Delta t^4 & 20a_5 t^3 & 12a_4\Delta t^2 & =0 \\
|
||||
\frac{d^{3} \alpha(t)}{d t^{3}} |_{t=0} & t=\Delta & 210a_z\Delta t^4 & +120a_6\Delta t^3 & 60a_5 \Delta t^2 & 24a_4\Delta t & =0
|
||||
\end{array}
|
||||
\end{equation}
|
||||
On a donc :
|
||||
\begin{equation}
|
||||
a_{7}=\frac{-20}{\Delta t^{7}}, \quad a_{6}=\frac{70}{\Delta t^{6}}, \quad a_{5}=\frac{-84}{\Delta t^{5}}, \quad a_{4}=\frac{35}{\Delta t^{4}}
|
||||
\end{equation}
|
||||
|
||||
\paragraph{Prépa.12}
|
||||
|
||||
On impose une trajectoire parabolique ainsi,au niveau niveau de l'obstacle :$x_c=x_H \implies z_c=z_H$. On pose donc :
|
||||
\[
|
||||
z_c = a(x_c-x_h)^2+z_h
|
||||
\]
|
||||
En évaluant cette expression à la position initiale on a:
|
||||
\[
|
||||
a = \frac{R_{ini}-z_H}{(D_{ini}-x_H)^2}
|
||||
\]
|
||||
Pour déterminer $x_H$ on utilise la position finale et on a:
|
||||
|
||||
\begin{equation}
|
||||
x_{H}=\frac{D_{i n i}+\sqrt{\frac{R_{i n i}-z_{H}}{R_{i n i}-z_{H}}} D_{f i n}}%
|
||||
{1+\sqrt{\frac{R_{i n i}-z_{H}}{R_{f i n}-z_{H}}}}
|
||||
\end{equation}
|
||||
|
||||
|
||||
|
||||
\end{document}
|
||||
|
||||
%%% Local Variables:
|
||||
%%% mode: latex
|
||||
%%% TeX-master: t
|
||||
%%% End:
|
BIN
424-Systeme_Non_Lineaires/TP2/auto/TP2.elc
Normal file
BIN
424-Systeme_Non_Lineaires/TP2/bouclageLNL.png
Normal file
After Width: | Height: | Size: 34 KiB |
BIN
424-Systeme_Non_Lineaires/TP2/bouclage_modele_L
Normal file
After Width: | Height: | Size: 32 KiB |
BIN
424-Systeme_Non_Lineaires/TP2/bouclage_modele_L.png
Normal file
After Width: | Height: | Size: 32 KiB |
BIN
424-Systeme_Non_Lineaires/TP2/boucleNL.png
Normal file
After Width: | Height: | Size: 46 KiB |
BIN
424-Systeme_Non_Lineaires/TP2/manip6_20.fig
Normal file
BIN
424-Systeme_Non_Lineaires/TP2/manip6_20.png
Normal file
After Width: | Height: | Size: 25 KiB |
BIN
424-Systeme_Non_Lineaires/TP2/manip_5_bode.fig
Normal file
BIN
424-Systeme_Non_Lineaires/TP2/manip_5_bode.png
Normal file
After Width: | Height: | Size: 24 KiB |
BIN
424-Systeme_Non_Lineaires/TP2/manip_5marge.fig
Normal file
BIN
424-Systeme_Non_Lineaires/TP2/manip_5marge.png
Normal file
After Width: | Height: | Size: 42 KiB |
BIN
424-Systeme_Non_Lineaires/TP2/output_bouclage_lin.fig
Normal file
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<MF0 version="1.1" packageUris="http://schema.mathworks.com/mf0/SlCache/19700101">
|
||||
<slcache.FileAttributes type="slcache.FileAttributes" uuid="02b42ec4-8262-4cdf-8404-6ec18ebf6993">
|
||||
<checksum>YrPnK1+qVi+dpkugiky1xg==</checksum>
|
||||
</slcache.FileAttributes>
|
||||
</MF0>
|
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<MF0 version="1.1" packageUris="http://schema.mathworks.com/mf0/SlCache/19700101">
|
||||
<slcache.FileAttributes type="slcache.FileAttributes" uuid="c095d378-44e2-40de-b158-a41c98d691f3">
|
||||
<checksum>LXyRdIdx04BZS3zSK92ryw==</checksum>
|
||||
</slcache.FileAttributes>
|
||||
</MF0>
|
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<MF0 version="1.1" packageUris="http://schema.mathworks.com/mf0/SlCache/19700101">
|
||||
<slcache.FileAttributes type="slcache.FileAttributes" uuid="c7869f89-1547-44ce-8ac9-276c254a63a4">
|
||||
<checksum>D6xWcyOKDYRnjDVQkSZhsg==</checksum>
|
||||
</slcache.FileAttributes>
|
||||
</MF0>
|
BIN
424-Systeme_Non_Lineaires/TP2/traj_plan.fig
Normal file
BIN
424-Systeme_Non_Lineaires/TP2/traj_plan.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
424-Systeme_Non_Lineaires/TP2/traj_plan_d.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
424-Systeme_Non_Lineaires/TP2/traj_plan_r.png
Normal file
After Width: | Height: | Size: 12 KiB |