Model { Name "testElServo_vxmount12" Version 7.0 MdlSubVersion 0 GraphicalInterface { NumRootInports 0 NumRootOutports 20 Outport { BusObject "" BusOutputAsStruct "off" Name "DACSignal" } Outport { BusObject "" BusOutputAsStruct "off" Name "Out2" } Outport { BusObject "" BusOutputAsStruct "off" Name "AbsoluteEncoderValue" } Outport { BusObject "" BusOutputAsStruct "off" Name "Vel2gui" } Outport { BusObject "" BusOutputAsStruct "off" Name "guiCommand" } Outport { BusObject "" BusOutputAsStruct "off" Name "guiMode" } Outport { BusObject "" BusOutputAsStruct "off" Name "EastTape" } Outport { BusObject "" BusOutputAsStruct "off" Name "WestTape" } Outport { BusObject "" BusOutputAsStruct "off" Name "VelError" } Outport { BusObject "" BusOutputAsStruct "off" Name "VelEstimate" } Outport { BusObject "" BusOutputAsStruct "off" Name "PosError" } Outport { BusObject "" BusOutputAsStruct "off" Name "SimWind" } Outport { BusObject "" BusOutputAsStruct "off" Name "DisturbanceEstimate" } Outport { BusObject "" BusOutputAsStruct "off" Name "ObserverError" } Outport { BusObject "" BusOutputAsStruct "off" Name "ExcitationSignal" } Outport { BusObject "" BusOutputAsStruct "off" Name "ChirpFreqs" } Outport { BusObject "" BusOutputAsStruct "off" Name "TestingValue" } Outport { BusObject "" BusOutputAsStruct "off" Name "PositionDemand" } Outport { BusObject "" BusOutputAsStruct "off" Name "Out1" } Outport { BusObject "" BusOutputAsStruct "off" Name "Out3" } ParameterArgumentNames "" ComputedModelVersion "1.342" NumModelReferences 0 NumTestPointedSignals 0 } SavedCharacterEncoding "windows-1252" SaveDefaultBlockParams on SampleTimeColors off LibraryLinkDisplay "none" WideLines off ShowLineDimensions on ShowPortDataTypes off ShowLoopsOnError on IgnoreBidirectionalLines off ShowStorageClass off ShowTestPointIcons on ShowViewerIcons on SortedOrder off ExecutionContextIcon off ShowLinearizationAnnotations on ScopeRefreshTime 0.035000 OverrideScopeRefreshTime on DisableAllScopes off DataTypeOverride "UseLocalSettings" MinMaxOverflowLogging "UseLocalSettings" MinMaxOverflowArchiveMode "Overwrite" BlockNameDataTip off BlockParametersDataTip off BlockDescriptionStringDataTip off ToolBar on StatusBar on BrowserShowLibraryLinks off BrowserLookUnderMasks off Created "Wed Jan 10 23:22:16 2007" Creator "dclark" UpdateHistory "UpdateHistoryNever" ModifiedByFormat "%" LastModifiedBy "dclark" ModifiedDateFormat "%" LastModifiedDate "Fri Aug 22 14:01:25 2008" RTWModifiedTimeStamp 0 ModelVersionFormat "1.%" ConfigurationManager "None" 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 covSaveCumulativeToWorkspaceVar on CovSaveSingleToWorkspaceVar on CovCumulativeVarName "covCumulativeData" CovCumulativeReport off CovReportOnPause on 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 off ShowModelReferenceBlockVersion off ShowModelReferenceBlockIO off Array { Type "Handle" Dimension 1 Simulink.ConfigSet { $ObjectID 1 Version "1.3.0" Array { Type "Handle" Dimension 7 Simulink.SolverCC { $ObjectID 2 Version "1.3.0" StartTime "0.0" StopTime "270.2" AbsTol "auto" FixedStep "auto" InitialStep "auto" MaxNumMinSteps "-1" MaxOrder 5 ConsecutiveZCsStepRelTol "10*128*eps" MaxConsecutiveZCs "1000" ExtrapolationOrder 4 NumberNewtonIterations 1 MaxStep "auto" MinStep "auto" MaxConsecutiveMinStep "1" RelTol "1e-3" SolverMode "MultiTasking" Solver "FixedStepDiscrete" SolverName "FixedStepDiscrete" ZeroCrossControl "UseLocalSettings" AlgebraicLoopSolver "TrustRegion" SolverResetMethod "Fast" PositivePriorityOrder off AutoInsertRateTranBlk on SampleTimeConstraint "Unconstrained" RateTranMode "Deterministic" } Simulink.DataIOCC { $ObjectID 3 Version "1.3.0" Decimation "1" ExternalInput "[t, u]" FinalStateName "xFinal" InitialState "xInitial" LimitDataPoints on MaxDataPoints "1000" LoadExternalInput off LoadInitialState off SaveFinalState off SaveFormat "Array" SaveOutput on SaveState off SignalLogging on InspectSignalLogs off SaveTime on StateSaveName "xout" TimeSaveName "tout" OutputSaveName "yout" SignalLoggingName "logsout" OutputOption "RefineOutputTimes" OutputTimes "[]" Refine "1" } Simulink.OptimizationCC { $ObjectID 4 Array { Type "Cell" Dimension 5 Cell "ZeroExternalMemoryAtStartup" Cell "ZeroInternalMemoryAtStartup" Cell "InitFltsAndDblsToZero" Cell "OptimizeModelRefInitCode" Cell "NoFixptDivByZeroProtection" PropName "DisabledProps" } Version "1.3.0" BlockReduction off BooleanDataType on ConditionallyExecuteInputs on InlineParams off InlineInvariantSignals off OptimizeBlockIOStorage off BufferReuse off EnforceIntegerDowncast off ExpressionFolding off ExpressionDepthLimit 2147483647 FoldNonRolledExpr on LocalBlockOutputs off RollThreshold 5 SystemCodeInlineAuto off StateBitsets off DataBitsets off UseTempVars off ZeroExternalMemoryAtStartup on ZeroInternalMemoryAtStartup on InitFltsAndDblsToZero on NoFixptDivByZeroProtection off EfficientFloat2IntCast on OptimizeModelRefInitCode off LifeSpan "inf" BufferReusableBoundary on SimCompilerOptimization "Off" AccelVerboseBuild off } Simulink.DebuggingCC { $ObjectID 5 Version "1.3.0" RTPrefix "error" ConsistencyChecking "none" ArrayBoundsChecking "none" SignalInfNanChecking "none" SignalRangeChecking "none" ReadBeforeWriteMsg "UseLocalSettings" WriteAfterWriteMsg "UseLocalSettings" WriteAfterReadMsg "UseLocalSettings" AlgebraicLoopMsg "warning" ArtificialAlgebraicLoopMsg "warning" SaveWithDisabledLinksMsg "warning" SaveWithParameterizedLinksMsg "none" CheckSSInitialOutputMsg on 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" 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" ModelReferenceSimTargetVerbose off UnknownTsInhSupMsg "warning" ModelReferenceDataLoggingMessage "warning" ModelReferenceSymbolNameMessage "warning" ModelReferenceExtraNoncontSigs "error" StateNameClashWarn "warning" StrictBusMsg "Warning" LoggingUnavailableSignals "error" } Simulink.HardwareCC { $ObjectID 6 Version "1.3.0" ProdBitPerChar 8 ProdBitPerShort 16 ProdBitPerInt 32 ProdBitPerLong 32 ProdIntDivRoundTo "Zero" ProdEndianess "LittleEndian" ProdWordSize 32 ProdShiftRightIntArith on ProdHWDeviceType "32-bit xPC Target (AMD Athlon)" 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.3.0" UpdateModelReferenceTargets "IfOutOfDateOrStructuralChange" CheckModelReferenceTargetMessage "error" ModelReferenceNumInstancesAllowed "Multi" ModelReferencePassRootInputsByReference on ModelReferenceMinAlgLoopOccurrences off } Simulink.RTWCC { $BackupClass "Simulink.RTWCC" $ObjectID 8 Array { Type "Cell" Dimension 2 Cell "IncludeHyperlinkInReport" Cell "GenerateTraceInfo" PropName "DisabledProps" } Version "1.3.0" SystemTargetFile "xpctarget.tlc" GenCodeOnly off MakeCommand "make_rtw" GenerateMakefile on TemplateMakefile "xpc_default_tmf" Description "xPC Target" GenerateReport off SaveLog off RTWVerbose on RetainRTWFile off ProfileTLC off TLCDebug off TLCCoverage off TLCAssert off ProcessScriptMode "Default" ConfigurationMode "Optimized" ProcessScript "xpctarget_make_rtw_hook" ConfigAtBuild off IncludeHyperlinkInReport off LaunchReport off TargetLang "C" IncludeBusHierarchyInRTWFileBlockHierarchyMap off IncludeERTFirstTime off GenerateTraceInfo off RTWCompilerOptimization "Off" Array { Type "Handle" Dimension 2 Simulink.CodeAppCC { $ObjectID 9 Array { Type "Cell" Dimension 16 Cell "IgnoreCustomStorageClasses" 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 "CustomSymbolStrBlkIO" Cell "CustomSymbolStrTmpVar" Cell "CustomSymbolStrMacro" PropName "DisabledProps" } Version "1.3.0" ForceParamTrailComments off GenerateComments on IgnoreCustomStorageClasses on 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" 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 } xpctarget.xpcTargetCC { $BackupClass "Simulink.TargetCC" $ObjectID 10 Array { Type "Cell" Dimension 15 Cell "IncludeMdlTerminateFcn" Cell "CombineOutputUpdateFcns" Cell "SuppressErrorStatus" Cell "ERTCustomFileBanners" Cell "GenerateSampleERTMain" Cell "GenerateTestInterfaces" Cell "MultiInstanceERTCode" Cell "PurelyIntegerCode" Cell "SupportNonFinite" Cell "SupportComplex" Cell "SupportAbsoluteTime" Cell "SupportContinuousTime" Cell "SupportNonInlinedSFcns" Cell "ModelStepFunctionPrototypeControlCompliant" Cell "PortableWordSizes" PropName "DisabledProps" } Version "1.3.0" TargetFcnLib "ansi_tfl_tmw.mat" TargetLibSuffix "" TargetPreCompLibLocation "" GenFloatMathFcnCalls "ANSI_C" UtilityFuncGeneration "Auto" GenerateFullHeader on GenerateSampleERTMain off GenerateTestInterfaces off IsPILTarget off ModelReferenceCompliant on CompOptLevelCompliant off IncludeMdlTerminateFcn on CombineOutputUpdateFcns off SuppressErrorStatus off IncludeFileDelimiter "Auto" ERTCustomFileBanners off SupportAbsoluteTime on LogVarNameModifier "rt_" MatFileLogging on MultiInstanceERTCode off SupportNonFinite on SupportComplex on PurelyIntegerCode off SupportContinuousTime on SupportNonInlinedSFcns on EnableShiftOperators on ParenthesesLevel "Nominal" PortableWordSizes off ModelStepFunctionPrototypeControlCompliant off RL32ModeModifier "Real-Time" ExtMode on ExtModeMexFile "ext_xpc" ExtModeIntrfLevel "Level2 - Open" ExtModeArmWhenConnect off RL32LogTETModifier off RL32LogBufSizeModifier "10000000" RL32IRQSourceModifier "Timer" xPCIRQSourceBoard "None/Other" xPCIOIRQSlot "-1" xpcDblBuff off xpcObjCom off xPCGenerateASAP2 off xPCGenerateXML off RL32ObjectName "tg" xPCisDownloadable on xPCisDefaultEnv on } PropName "Components" } } PropName "Components" } Name "Configuration" ExtraOptions "-aGenerateTraceInfo=0 " CurrentDlgPage "Real-Time Workshop/xPC Target options" } PropName "ConfigurationSets" } Simulink.ConfigSet { $PropName "ActiveConfigurationSet" $ObjectID 1 } WSMdlFileData "DataTag0" BlockDefaults { Orientation "right" ForegroundColor "black" BackgroundColor "white" DropShadow off NamePlacement "normal" FontName "Arial" FontSize 10 FontWeight "normal" FontAngle "normal" ShowName on } BlockParameterDefaults { Block { BlockType DataTypeConversion OutMin "[]" OutMax "[]" OutDataTypeMode "Inherit via back propagation" OutDataType "fixdt(1,16,0)" OutScaling "[]" LockScale off ConvertRealWorld "Real World Value (RWV)" RndMeth "Zero" SaturateOnIntegerOverflow on SampleTime "-1" } Block { BlockType DiscreteIntegrator IntegratorMethod "Integration: Forward Euler" gainval "1.0" ExternalReset "none" InitialConditionSource "internal" InitialCondition "0" InitialConditionMode "State and output" SampleTime "1" OutMin "[]" OutMax "[]" OutDataTypeMode "Inherit via internal rule" OutDataType "fixdt(1,16,0)" OutScaling "[]" LockScale off RndMeth "Floor" SaturateOnIntegerOverflow off LimitOutput off UpperSaturationLimit "inf" LowerSaturationLimit "-inf" ShowSaturationPort off ShowStatePort off IgnoreLimit off StateMustResolveToSignalObject off RTWStateStorageClass "Auto" } Block { BlockType DiscreteStateSpace A "1" B "1" C "1" D "1" X0 "0" SampleTime "1" StateMustResolveToSignalObject off RTWStateStorageClass "Auto" Realization "auto" } Block { BlockType DiscreteTransferFcn Numerator "[1]" Denominator "[1 0.5]" SampleTime "1" StateMustResolveToSignalObject off RTWStateStorageClass "Auto" Realization "auto" } Block { BlockType EnablePort StatesWhenEnabling "held" ShowOutputPort off ZeroCross on } Block { BlockType From IconDisplay "Tag" } Block { BlockType Fcn Expr "sin(u[1])" SampleTime "-1" } Block { BlockType Gain Gain "1" Multiplication "Element-wise(K.*u)" ParamMin "[]" ParamMax "[]" ParameterDataTypeMode "Same as input" ParameterDataType "fixdt(1,16,0)" ParameterScalingMode "Best Precision: Matrix-wise" ParameterScaling "[]" OutMin "[]" OutMax "[]" OutDataTypeMode "Same as input" OutDataType "fixdt(1,16,0)" OutScaling "[]" LockScale off RndMeth "Floor" SaturateOnIntegerOverflow on SampleTime "-1" } Block { BlockType Goto IconDisplay "Tag" } Block { BlockType Ground } Block { BlockType Inport Port "1" UseBusObject off BusObject "BusObject" BusOutputAsStruct off PortDimensions "-1" SampleTime "-1" OutMin "[]" OutMax "[]" DataType "auto" OutDataType "fixdt(1,16,0)" OutScaling "[]" SignalType "auto" SamplingMode "auto" LatchByDelayingOutsideSignal off LatchByCopyingInsideSignal off Interpolate on } Block { BlockType Logic Operator "AND" Inputs "2" IconShape "rectangular" AllPortsSameDT on OutDataTypeMode "Logical (see Configuration Parameters: Optimization)" LogicDataType "uint(8)" SampleTime "-1" } Block { BlockType Math Operator "exp" OutputSignalType "auto" SampleTime "-1" OutMin "[]" OutMax "[]" OutDataTypeMode "Same as first input" OutDataType "fixdt(1,16,0)" OutScaling "[]" LockScale off RndMeth "Floor" SaturateOnIntegerOverflow on } Block { BlockType MultiPortSwitch Inputs "4" zeroidx off InputSameDT on OutMin "[]" OutMax "[]" OutDataTypeMode "Inherit via internal rule" OutDataType "fixdt(1,16,0)" OutScaling "[]" LockScale off RndMeth "Floor" SaturateOnIntegerOverflow on SampleTime "-1" } Block { BlockType Mux Inputs "4" DisplayOption "none" UseBusObject off BusObject "BusObject" NonVirtualBus off } Block { BlockType Outport Port "1" UseBusObject off BusObject "BusObject" BusOutputAsStruct off PortDimensions "-1" SampleTime "-1" OutMin "[]" OutMax "[]" DataType "auto" OutDataType "fixdt(1,16,0)" OutScaling "[]" SignalType "auto" SamplingMode "auto" OutputWhenDisabled "held" InitialOutput "[]" } Block { BlockType Product Inputs "2" Multiplication "Element-wise(.*)" CollapseMode "All dimensions" CollapseDim "1" InputSameDT on OutMin "[]" OutMax "[]" OutDataTypeMode "Same as first input" OutDataType "fixdt(1,16,0)" OutScaling "[]" LockScale off RndMeth "Zero" SaturateOnIntegerOverflow on SampleTime "-1" } Block { BlockType RandomNumber Mean "0" Variance "1" Seed "0" SampleTime "-1" VectorParams1D on } Block { BlockType RateLimiter RisingSlewLimit "1" FallingSlewLimit "-1" SampleTimeMode "continuous" InitialCondition "0" LinearizeAsGain on } Block { BlockType RateTransition Integrity on Deterministic on X0 "0" OutPortSampleTime "-1" } Block { BlockType Reference } Block { BlockType SignalSpecification Dimensions "-1" SampleTime "-1" OutMin "[]" OutMax "[]" DataType "auto" OutDataType "fixdt(1,16,0)" OutScaling "[]" SignalType "auto" SamplingMode "auto" } Block { BlockType "S-Function" FunctionName "system" SFunctionModules "''" PortCounts "[]" } Block { BlockType Step Time "1" Before "0" After "1" SampleTime "-1" VectorParams1D on ZeroCross on } Block { BlockType SubSystem ShowPortLabels "FromPortIcon" Permissions "ReadWrite" PermitHierarchicalResolution "All" TreatAsAtomicUnit off SystemSampleTime "-1" RTWFcnNameOpts "Auto" RTWFileNameOpts "Auto" RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" SimViewingDevice off DataTypeOverride "UseLocalSettings" MinMaxOverflowLogging "UseLocalSettings" } Block { BlockType Sum IconShape "rectangular" Inputs "++" CollapseMode "All dimensions" CollapseDim "1" InputSameDT on OutMin "[]" OutMax "[]" OutDataTypeMode "Same as first input" OutDataType "fixdt(1,16,0)" OutScaling "[]" LockScale off RndMeth "Floor" SaturateOnIntegerOverflow on SampleTime "-1" } Block { BlockType Switch Criteria "u2 >= Threshold" Threshold "0" InputSameDT on OutMin "[]" OutMax "[]" OutDataTypeMode "Inherit via internal rule" OutDataType "fixdt(1,16,0)" OutScaling "[]" LockScale off RndMeth "Floor" SaturateOnIntegerOverflow on ZeroCross on SampleTime "-1" } Block { BlockType ToWorkspace VariableName "simulink_output" MaxDataPoints "1000" Decimation "1" SampleTime "0" FixptAsFi off } Block { BlockType Terminator } Block { BlockType UnitDelay X0 "0" SampleTime "1" StateMustResolveToSignalObject off RTWStateStorageClass "Auto" } Block { BlockType Abs ZeroCross on SampleTime "-1" OutMax "[]" OutDataTypeMode "Same as input" OutDataType "fixdt(1,16,0)" OutScaling "[]" LockScale off RndMeth "Floor" SaturateOnIntegerOverflow on } Block { BlockType Constant Value "1" VectorParams1D on SamplingMode "Sample based" OutMin "[]" OutMax "[]" OutDataTypeMode "Inherit from 'Constant value'" OutDataType "fixdt(1,16,0)" ConRadixGroup "Use specified scaling" OutScaling "[]" SampleTime "inf" FramePeriod "inf" } Block { BlockType RelationalOperator Operator ">=" InputSameDT on LogicOutDataTypeMode "Logical (see Configuration Parameters: Optimization)" LogicDataType "uint(8)" ZeroCross on SampleTime "-1" } Block { BlockType Saturate UpperLimit "0.5" LowerLimit "-0.5" LinearizeAsGain on ZeroCross on SampleTime "-1" OutMin "[]" OutMax "[]" OutDataTypeMode "Same as input" OutDataType "fixdt(1,16,0)" OutScaling "[]" LockScale off RndMeth "Floor" } } AnnotationDefaults { HorizontalAlignment "center" VerticalAlignment "middle" ForegroundColor "black" BackgroundColor "white" DropShadow off FontName "Arial" FontSize 10 FontWeight "normal" FontAngle "normal" UseDisplayTextAsClickCallback off } LineDefaults { FontName "Arial" FontSize 9 FontWeight "normal" FontAngle "normal" } System { Name "testElServo_vxmount12" Location [26, 253, 1017, 580] Open on ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "B" PaperUnits "inches" TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000] TiledPageScale 1 ShowPageBoundaries off ZoomFactor "100" ReportName "simulink-default.rpt" Block { BlockType SubSystem Name "5-tap Median Filter" Ports [1, 1] Position [835, 510, 895, 570] MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "5-tap Median Filter" Location [374, 93, 1018, 534] 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 "Input" Position [50, 83, 80, 97] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Reference Name "Median" Ports [1, 1] Position [405, 67, 465, 113] DialogController "dspDDGCreate" DialogControllerArgs "DataTag1" SourceBlock "dspstat3/Median" SourceType "Median" sortAlg "Quick sort" additionalParams "off" allowOverrides "off" outputMode "Same as accumulator" outputWordLength "16" outputFracLength "15" accumMode "Same as product output" accumWordLength "32" accumFracLength "30" prodOutputMode "Same as input" prodOutputWordLength "32" prodOutputFracLength "30" roundingMode "Floor" overflowMode "off" LockScale "off" } Block { BlockType SignalSpecification Name "Signal Specification" Position [255, 76, 350, 104] Dimensions "[1 5]" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Reference Name "Tapped Delay" Ports [1, 1] Position [160, 63, 215, 117] SourceBlock "simulink/Discrete/Tapped Delay" SourceType "Tapped Delay Line" vinit "0.0" samptime "-1" NumDelays "5" DelayOrder "Oldest" includeCurrent "off" } Block { BlockType Outport Name "Output\n" Position [570, 83, 600, 97] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "Input" SrcPort 1 DstBlock "Tapped Delay" DstPort 1 } Line { SrcBlock "Median" SrcPort 1 DstBlock "Output\n" DstPort 1 } Line { SrcBlock "Tapped Delay" SrcPort 1 DstBlock "Signal Specification" DstPort 1 } Line { SrcBlock "Signal Specification" SrcPort 1 DstBlock "Median" DstPort 1 } } } Block { BlockType Reference Name "65Hz Notch" Ports [1, 1] Position [675, 1999, 760, 2031] DialogController "dspdialog.DigitalFilter" DialogControllerArgs "DataTag2" SourceBlock "dsparch4/Digital Filter" SourceType "Digital Filter" TypePopup "IIR (poles & zeros)" IIRFiltStruct "Direct form II transposed" AllPoleFiltStruct "Direct form" FIRFiltStruct "Direct form" CoeffSource "Specify via dialog" NumCoeffs "[1 2]" DenCoeffs "[1 0.1]" BiQuadCoeffs "[1 0.3 0.4 1 0.1 0.2]" LatticeCoeffs "[0.2 0.4]" denIgnore on FiltPerSampPopup "One filter per frame" IC "0" ICnum "0" ICden "0" additionalParams off allowOverrides on showCoeff off firstCoeffMode "Same word length as input" firstCoeffWordLength "16" firstCoeffFracLength "15" secondCoeffMode "Same as numerator" secondCoeffWordLength "16" secondCoeffFracLength "15" thirdCoeffMode "Same as input" thirdCoeffWordLength "16" thirdCoeffFracLength "15" showOut off outputMode "Same as accumulator" outputWordLength "16" outputFracLength "15" showAcc off accumMode "Same as product output" accumWordLength "32" accumFracLength "30" showMpy off prodOutputMode "Same as input" prodOutputWordLength "32" prodOutputFracLength "30" showMem off memoryMode "Same as accumulator" memoryWordLength "16" memoryFracLength "15" roundingMode "Floor" overflowMode off ScaleValues "1" scaleValueFracLength "14" tapSumMode "Same as input" tapSumWordLength "32" tapSumFracLength "30" stageIOMode "Same as input" stageIOWordLength "16" stageInFracLength "15" stageOutFracLength "15" LockScale off FilterSource "dfilt object" dfiltObjectName "Hn65" multiplicandMode "Same as output" multiplicandWordLength "32" multiplicandFracLength "30" } Block { BlockType Reference Name "65Hz Notch1" Ports [1, 1] Position [675, 2059, 760, 2091] DialogController "dspdialog.DigitalFilter" DialogControllerArgs "DataTag3" SourceBlock "dsparch4/Digital Filter" SourceType "Digital Filter" TypePopup "IIR (poles & zeros)" IIRFiltStruct "Direct form II transposed" AllPoleFiltStruct "Direct form" FIRFiltStruct "Direct form" CoeffSource "Specify via dialog" NumCoeffs "[1 2]" DenCoeffs "[1 0.1]" BiQuadCoeffs "[1 0.3 0.4 1 0.1 0.2]" LatticeCoeffs "[0.2 0.4]" denIgnore on FiltPerSampPopup "One filter per frame" IC "0" ICnum "0" ICden "0" additionalParams off allowOverrides on showCoeff off firstCoeffMode "Same word length as input" firstCoeffWordLength "16" firstCoeffFracLength "15" secondCoeffMode "Same as numerator" secondCoeffWordLength "16" secondCoeffFracLength "15" thirdCoeffMode "Same as input" thirdCoeffWordLength "16" thirdCoeffFracLength "15" showOut off outputMode "Same as accumulator" outputWordLength "16" outputFracLength "15" showAcc off accumMode "Same as product output" accumWordLength "32" accumFracLength "30" showMpy off prodOutputMode "Same as input" prodOutputWordLength "32" prodOutputFracLength "30" showMem off memoryMode "Same as accumulator" memoryWordLength "16" memoryFracLength "15" roundingMode "Floor" overflowMode off ScaleValues "1" scaleValueFracLength "14" tapSumMode "Same as input" tapSumWordLength "32" tapSumFracLength "30" stageIOMode "Same as input" stageIOWordLength "16" stageInFracLength "15" stageOutFracLength "15" LockScale off FilterSource "dfilt object" dfiltObjectName "Hn65" multiplicandMode "Same as output" multiplicandWordLength "32" multiplicandFracLength "30" } Block { BlockType MultiPortSwitch Name "AbsOrTape" Ports [3, 1] Position [1270, 447, 1300, 493] Inputs "2" zeroidx on InputSameDT off OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Reference Name "Absolute Encoders" Ports [0, 4] Position [20, 123, 215, 277] BackgroundColor "yellow" SourceBlock "CustomBlocks/Absolute Encoders" SourceType "ipModule_sbs_ip-unidig-24" carrierId "1" carrierSlot "D" sampleTime "Ts" } Block { BlockType Sum Name "Add" Ports [2, 1] Position [1735, 1382, 1765, 1413] CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^-10" SaturateOnIntegerOverflow off } Block { BlockType Reference Name "Buffer" Ports [1, 1] Position [1945, 600, 1995, 650] SourceBlock "dspbuff3/Buffer" SourceType "Buffer" N "100" V "0" ic "0" } Block { BlockType Reference Name "Byte Reversal" Ports [3, 3] Position [1325, 2005, 1405, 2055] SourceBlock "xpclib/UDP/Byte Reversal" SourceType "xpcreverseendian" numInp "3" } Block { BlockType Reference Name "Byte Reversal1" Ports [3, 3] Position [1535, 1795, 1615, 1845] SourceBlock "xpclib/UDP/Byte Reversal" SourceType "xpcreverseendian" numInp "3" } Block { BlockType SubSystem Name "CPP/ no FIR Filter" Ports [2, 1] Position [1350, 69, 1475, 156] BackgroundColor "[0.647059, 0.745098, 0.596078]" MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "CPP/ no FIR Filter" Location [257, 296, 917, 518] 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 "Cmd\n" Position [25, 48, 55, 62] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Inport Name "Initial" Position [30, 103, 60, 117] Port "2" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType SubSystem Name "CPP" Ports [2, 1] Position [145, 42, 270, 98] BackgroundColor "[0.635294, 0.619608, 0.368627]" MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "CPP" Location [-14, 247, 998, 673] 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 "Command " Position [270, 163, 300, 177] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Inport Name "Start Pos" Position [270, 203, 300, 217] Port "2" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType SubSystem Name "Enabled\nPre-processor" Ports [2, 1, 1] Position [555, 149, 665, 231] TreatAsAtomicUnit on MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "Enabled\nPre-processor" Location [330, 287, 828, 587] 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 "In1" Position [85, 108, 115, 122] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Inport Name "In2" Position [85, 148, 115, 162] Port "2" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType EnablePort Name "Enable" Ports [] Position [235, 20, 255, 40] } Block { BlockType SubSystem Name "Command Pre-processor" Ports [2, 1] Position [190, 97, 320, 173] BackgroundColor "green" MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "Command Pre-processor" Location [20, 176, 1023, 608] 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 "Command" Position [25, 33, 55, 47] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Inport Name "Xzero" Position [25, 78, 55, 92] Port "2" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType RateLimiter Name "Acceleration\n Limit" Position [590, 25, 620, 55] NamePlacement "alternate" RisingSlewLimit "0.1" FallingSlewLimit "-0.1" SampleTimeMode "inherited" } Block { BlockType UnitDelay Name "Derivative\nDelay" Position [105, 105, 140, 145] SampleTime "Ts" } Block { BlockType DiscreteIntegrator Name "Discrete-Time\nIntegrator" Ports [2, 1] Position [705, 25, 755, 85] IntegratorMethod "Integration: Forward Euler" gainval "1" ExternalReset "none" InitialConditionSource "external" InitialConditionMode "State only (most efficient)" SampleTime "Ts" OutDataType "sfix(16)" OutScaling "2^0" ICPrevOutput "DiscIntNeverNeededParam" ICPrevScaledInput "DiscIntNeverNeededParam" Port { PortNumber 1 Name "Processed Command" RTWStorageClass "Auto" DataLoggingNameMode "SignalName" } } Block { BlockType SubSystem Name "Ki Block" Ports [1, 1] Position [300, 170, 350, 230] MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off Port { PortNumber 1 Name "Ki Block Out" RTWStorageClass "Auto" DataLoggingNameMode "SignalName" } System { Name "Ki Block" Location [362, 363, 930, 647] 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 "Ei" Position [25, 33, 55, 47] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Abs Name "Abs" Position [100, 175, 130, 205] } Block { BlockType Gain Name "Beta" Position [190, 160, 240, 220] Gain "-100" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "Kvar" Position [155, 98, 215, 132] Gain "10" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "Kzero" Position [155, 23, 210, 57] Gain "0.2" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Math Name "Math\nFunction" Ports [1, 1] Position [275, 174, 305, 206] OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Product Name "Product" Ports [2, 1] Position [375, 166, 420, 199] CollapseMode "All dimensions" InputSameDT off OutDataType "sfix(16)" OutScaling "2^0" RndMeth "Floor" } Block { BlockType Sum Name "Sum1" Ports [2, 1] Position [440, 30, 460, 50] ShowName off IconShape "round" Inputs "|++" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "Evar" Position [490, 33, 520, 47] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "Kzero" SrcPort 1 DstBlock "Sum1" DstPort 1 } Line { SrcBlock "Abs" SrcPort 1 DstBlock "Beta" DstPort 1 } Line { SrcBlock "Beta" SrcPort 1 DstBlock "Math\nFunction" DstPort 1 } Line { SrcBlock "Math\nFunction" SrcPort 1 DstBlock "Product" DstPort 2 } Line { SrcBlock "Product" SrcPort 1 Points [25, 0] DstBlock "Sum1" DstPort 2 } Line { SrcBlock "Ei" SrcPort 1 Points [0, 0; 15, 0] Branch { DstBlock "Kzero" DstPort 1 } Branch { Points [0, 75] Branch { Points [0, 75] DstBlock "Abs" DstPort 1 } Branch { DstBlock "Kvar" DstPort 1 } } } Line { SrcBlock "Sum1" SrcPort 1 DstBlock "Evar" DstPort 1 } Line { SrcBlock "Kvar" SrcPort 1 Points [140, 0] DstBlock "Product" DstPort 1 } } } Block { BlockType Reference Name "N-Sample\nSwitch" Ports [2, 1] Position [190, 93, 235, 137] SourceBlock "dspswit3/N-Sample\nSwitch" SourceType "N-Sample Switch" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData "off" RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" N "10" reset "off" TriggerType "Rising edge" Ts "0.001" } Block { BlockType Sum Name "Sum" Ports [2, 1] Position [200, 30, 220, 50] ShowName off IconShape "round" Inputs "|+-" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "Sum1" Ports [2, 1] Position [425, 30, 445, 50] ShowName off IconShape "round" Inputs "|++" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "Sum2" Ports [2, 1] Position [65, 190, 85, 210] ShowName off IconShape "round" Inputs "+|-" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Saturate Name "Velocity\nLimit" Position [500, 25, 530, 55] NamePlacement "alternate" UpperLimit "1" LowerLimit "-1" SampleTime "0.001" } Block { BlockType Outport Name "Out1" Position [895, 48, 925, 62] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "Sum2" SrcPort 1 DstBlock "Ki Block" DstPort 1 } Line { Name "Ki Block Out" Labels [0, 0] SrcBlock "Ki Block" SrcPort 1 Points [80, 0] DstBlock "Sum1" DstPort 2 } Line { SrcBlock "Sum" SrcPort 1 DstBlock "Sum1" DstPort 1 } Line { SrcBlock "Sum1" SrcPort 1 DstBlock "Velocity\nLimit" DstPort 1 } Line { Name "Processed Command" Labels [0, 0] SrcBlock "Discrete-Time\nIntegrator" SrcPort 1 Points [105, 0] Branch { DstBlock "Out1" DstPort 1 } Branch { Points [0, 240; -790, 0] DstBlock "Sum2" DstPort 2 } } Line { SrcBlock "Velocity\nLimit" SrcPort 1 DstBlock "Acceleration\n Limit" DstPort 1 } Line { SrcBlock "Acceleration\n Limit" SrcPort 1 DstBlock "Discrete-Time\nIntegrator" DstPort 1 } Line { SrcBlock "Command" SrcPort 1 Points [0, 0; 15, 0] Branch { DstBlock "Sum" DstPort 1 } Branch { Points [0, 85] Branch { DstBlock "Derivative\nDelay" DstPort 1 } Branch { DstBlock "Sum2" DstPort 1 } } } Line { SrcBlock "Xzero" SrcPort 1 Points [100, 0] Branch { Points [0, -15] DstBlock "Discrete-Time\nIntegrator" DstPort 2 } Branch { Points [0, 20] DstBlock "N-Sample\nSwitch" DstPort 1 } } Line { SrcBlock "Derivative\nDelay" SrcPort 1 DstBlock "N-Sample\nSwitch" DstPort 2 } Line { SrcBlock "N-Sample\nSwitch" SrcPort 1 Points [40, 0; 0, -30; -70, 0] DstBlock "Sum" DstPort 2 } } } Block { BlockType Outport Name "Out1" Position [410, 128, 440, 142] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "In1" SrcPort 1 DstBlock "Command Pre-processor" DstPort 1 } Line { SrcBlock "In2" SrcPort 1 DstBlock "Command Pre-processor" DstPort 2 } Line { SrcBlock "Command Pre-processor" SrcPort 1 DstBlock "Out1" DstPort 1 } } } Block { BlockType Reference Name "Init Delay" Ports [0, 1] Position [500, 73, 545, 117] SourceBlock "dspswit3/N-Sample\nEnable" SourceType "N-Sample Enable" N "8" ActiveLevel "High (1)" reset "off" TriggerType "Rising edge" Ts "0.001" DataType "Logical" } Block { BlockType Saturate Name "Position\nLimiter" Position [390, 155, 420, 185] NamePlacement "alternate" UpperLimit "P_limit_upper" LowerLimit "P_limit_lower" } Block { BlockType Outport Name "Out1" Position [780, 183, 810, 197] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "Command " SrcPort 1 DstBlock "Position\nLimiter" DstPort 1 } Line { SrcBlock "Position\nLimiter" SrcPort 1 DstBlock "Enabled\nPre-processor" DstPort 1 } Line { SrcBlock "Init Delay" SrcPort 1 Points [60, 0] DstBlock "Enabled\nPre-processor" DstPort enable } Line { SrcBlock "Start Pos" SrcPort 1 DstBlock "Enabled\nPre-processor" DstPort 2 } Line { SrcBlock "Enabled\nPre-processor" SrcPort 1 DstBlock "Out1" DstPort 1 } } } Block { BlockType Outport Name "Out1" Position [355, 63, 385, 77] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "CPP" SrcPort 1 DstBlock "Out1" DstPort 1 } Line { SrcBlock "Cmd\n" SrcPort 1 DstBlock "CPP" DstPort 1 } Line { SrcBlock "Initial" SrcPort 1 Points [30, 0; 0, -25] DstBlock "CPP" DstPort 2 } } } Block { BlockType SubSystem Name "Chirp Block" Ports [0, 2, 1] Position [90, 1550, 235, 1630] TreatAsAtomicUnit on MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "Chirp Block" Location [263, 234, 761, 534] 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 EnablePort Name "Enable" Ports [] Position [235, 20, 255, 40] } Block { BlockType Reference Name "Special Chirp Source" Ports [0, 2] Position [90, 94, 270, 201] SourceBlock "CustomBlocks/Special Chirp Source" SourceType "sfunction" StartFreq "0.5" EndFreq "100" StepSize "0.1" CyclesPerFreq "5" SampleTime "0.001" } Block { BlockType Outport Name "ChirpWave" Position [365, 113, 395, 127] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "ChirpFreq" Position [365, 168, 395, 182] Port "2" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "Special Chirp Source" SrcPort 1 DstBlock "ChirpWave" DstPort 1 } Line { SrcBlock "Special Chirp Source" SrcPort 2 DstBlock "ChirpFreq" DstPort 1 } } } Block { BlockType Reference Name "Compare\nTo Constant" Ports [1, 1] Position [900, 945, 930, 975] SourceBlock "simulink/Logic and Bit\nOperations/Compare\nTo Constant" SourceType "Compare To Constant" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData off RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" relop "~=" const "3.0" LogicOutDataTypeMode "boolean" ZeroCross off } Block { BlockType Reference Name "Compare\nTo Constant1" Ports [1, 1] Position [1945, 1270, 1975, 1300] SourceBlock "simulink/Logic and Bit\nOperations/Compare\nTo Constant" SourceType "Compare To Constant" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData off RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" relop "==" const "3.0" LogicOutDataTypeMode "uint8" ZeroCross off } Block { BlockType Constant Name "Constant" Position [805, 315, 835, 345] Value "70" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Reference Name "DDMode" Ports [2, 1] Position [2105, 902, 2135, 938] SourceBlock "simulink/Signal\nRouting/Manual Switch" SourceType "Manual Switch" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData off RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" sw "0" action "0" varsize off } Block { BlockType Saturate Name "DacOutLim" Position [2730, 235, 2760, 265] UpperLimit "DacLim" LowerLimit "-DacLim" } Block { BlockType DataTypeConversion Name "Data Type Conversion2" Position [680, 246, 735, 274] OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Reference Name "Davenport Spectral Filter" Ports [1, 1] Position [1530, 1287, 1625, 1323] SourceBlock "cstblocks/LTI System" SourceType "LTI Block" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData off RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" sys "TFWindd" IC "[]" } Block { BlockType Reference Name "Difference" Ports [1, 1] Position [1715, 607, 1775, 643] SourceBlock "simulink/Discrete/Difference" SourceType "Difference" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData off RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" ICPrevInput "0.0" OutMin "[]" OutMax "[]" OutDataTypeStr "Inherit: Inherit via internal rule" OutputDataTypeScalingMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^-10" LockScale off RndMeth "Floor" DoSatur off } Block { BlockType Reference Name "Digital Filter2" Ports [1, 1] Position [2260, 1323, 2345, 1377] DialogController "dspdialog.DigitalFilter" DialogControllerArgs "DataTag4" SourceBlock "dsparch4/Digital Filter" SourceType "Digital Filter" TypePopup "IIR (poles & zeros)" IIRFiltStruct "Direct form II transposed" AllPoleFiltStruct "Direct form" FIRFiltStruct "Direct form" CoeffSource "Specify via dialog" NumCoeffs "[1 2]" DenCoeffs "[1 0.1]" BiQuadCoeffs "[1 0.3 0.4 1 0.1 0.2]" LatticeCoeffs "[0.2 0.4]" denIgnore on FiltPerSampPopup "One filter per frame" IC "0" ICnum "0" ICden "0" additionalParams off allowOverrides on showCoeff off firstCoeffMode "Same word length as input" firstCoeffWordLength "16" firstCoeffFracLength "15" secondCoeffMode "Same as numerator" secondCoeffWordLength "16" secondCoeffFracLength "15" thirdCoeffMode "Same as input" thirdCoeffWordLength "16" thirdCoeffFracLength "15" showOut off outputMode "Same as accumulator" outputWordLength "16" outputFracLength "15" showAcc off accumMode "Same as product output" accumWordLength "32" accumFracLength "30" showMpy off prodOutputMode "Same as input" prodOutputWordLength "32" prodOutputFracLength "30" showMem off memoryMode "Same as accumulator" memoryWordLength "16" memoryFracLength "15" roundingMode "Floor" overflowMode off ScaleValues "1" scaleValueFracLength "14" tapSumMode "Same as input" tapSumWordLength "32" tapSumFracLength "30" stageIOMode "Same as input" stageIOWordLength "16" stageInFracLength "15" stageOutFracLength "15" LockScale off FilterSource "dfilt object" dfiltObjectName "Hlp5" multiplicandMode "Same as output" multiplicandWordLength "32" multiplicandFracLength "30" } Block { BlockType DiscreteTransferFcn Name "Discrete\nNotch Filter @ 5.56 Hz" Position [1580, 802, 1640, 838] Orientation "left" Numerator "[numn1d]" Denominator "[denn1d]" SampleTime "Ts" } Block { BlockType DiscreteIntegrator Name "Discrete-Time\nIntegrator1" Ports [3, 1] Position [1035, 896, 1090, 964] IntegratorMethod "Accumulation: Trapezoidal" gainval "Ts" ExternalReset "sampled level" InitialConditionSource "external" SampleTime "Ts" OutDataType "sfix(16)" OutScaling "2^0" ICPrevOutput "DiscIntNeverNeededParam" ICPrevScaledInput "DiscIntNeverNeededParam" } Block { BlockType Reference Name "DisturbReject" Ports [1, 1] Position [615, 1280, 645, 1310] SourceBlock "simulink/Logic and Bit\nOperations/Compare\nTo Constant" SourceType "Compare To Constant" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData off RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" relop "==" const "2" LogicOutDataTypeMode "uint8" ZeroCross off } Block { BlockType Reference Name "DocBlock" Ports [] Position [207, 25, 247, 64] ShowName off UserDataPersistent on UserData "DataTag5" SourceBlock "simulink/Model-Wide\nUtilities/DocBlock" SourceType "DocBlock" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData off RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" DocumentType "Text" } Block { BlockType SubSystem Name "Elevation Axis Controller - VXWORKS type" Ports [3, 1] Position [1845, 191, 2120, 309] MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "Elevation Axis Controller - VXWORKS type" Location [8, 101, 1020, 702] 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 "Position command \nDegreesFF" Position [55, 53, 85, 67] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Inport Name "Position command \nDegrees" Position [55, 223, 85, 237] Port "2" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Inport Name "Motor Position\nDegrees\n" Position [70, 428, 100, 442] Port "3" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType SubSystem Name "Enabled\nSubsystem" Ports [1, 1, 1] Position [375, 414, 475, 456] TreatAsAtomicUnit on MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "Enabled\nSubsystem" Location [447, 350, 945, 650] 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 "In1" Position [105, 98, 135, 112] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType EnablePort Name "Enable" Ports [] Position [240, 20, 260, 40] } Block { BlockType DiscreteTransferFcn Name "Discrete\nDifferentiator" Position [215, 87, 275, 123] Numerator "[numdd]" Denominator "[dendd]" SampleTime "Ts" } Block { BlockType Outport Name "Out1" Position [360, 98, 390, 112] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "In1" SrcPort 1 DstBlock "Discrete\nDifferentiator" DstPort 1 } Line { SrcBlock "Discrete\nDifferentiator" SrcPort 1 DstBlock "Out1" DstPort 1 } Annotation { Position [9, 240] } } } Block { BlockType SubSystem Name "Flexible Mode\nCompensation" Ports [1, 1] Position [1480, 253, 1640, 307] MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "Flexible Mode\nCompensation" Location [6, 236, 1018, 511] 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 "Unfiltered CMD" Position [90, 93, 120, 107] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Reference Name "Digital Filter1" Ports [1, 1] Position [760, 188, 845, 242] DialogController "dspdialog.DigitalFilter" DialogControllerArgs "DataTag6" SourceBlock "dsparch4/Digital Filter" SourceType "Digital Filter" TypePopup "IIR (poles & zeros)" IIRFiltStruct "Direct form II transposed" AllPoleFiltStruct "Direct form" FIRFiltStruct "Direct form" CoeffSource "Specify via dialog" NumCoeffs "[1 2]" DenCoeffs "[1 0.1]" BiQuadCoeffs "[1 0.3 0.4 1 0.1 0.2]" LatticeCoeffs "[0.2 0.4]" denIgnore "on" FiltPerSampPopup "One filter per frame" IC "0" ICnum "0" ICden "0" additionalParams "off" allowOverrides "on" showCoeff "off" firstCoeffMode "Same word length as input" firstCoeffWordLength "16" firstCoeffFracLength "15" secondCoeffMode "Same as numerator" secondCoeffWordLength "16" secondCoeffFracLength "15" thirdCoeffMode "Same as input" thirdCoeffWordLength "16" thirdCoeffFracLength "15" showOut "off" outputMode "Same as accumulator" outputWordLength "16" outputFracLength "15" showAcc "off" accumMode "Same as product output" accumWordLength "32" accumFracLength "30" showMpy "off" prodOutputMode "Same as input" prodOutputWordLength "32" prodOutputFracLength "30" showMem "off" memoryMode "Same as accumulator" memoryWordLength "16" memoryFracLength "15" roundingMode "Floor" overflowMode "off" ScaleValues "1" scaleValueFracLength "14" tapSumMode "Same as input" tapSumWordLength "32" tapSumFracLength "30" stageIOMode "Same as input" stageIOWordLength "16" stageInFracLength "15" stageOutFracLength "15" LockScale "off" FilterSource "dfilt object" dfiltObjectName "Hlp" multiplicandMode "Same as output" multiplicandWordLength "32" multiplicandFracLength "30" } Block { BlockType DiscreteTransferFcn Name "Discrete\nNotch Filter @ 161 Hz" Position [655, 197, 715, 233] Numerator "[numn161d]" Denominator "[denn161d]" SampleTime "Ts" } Block { BlockType DiscreteTransferFcn Name "Discrete\nNotch Filter @ 35 Hz" Position [620, 82, 680, 118] Numerator "[numn35d]" Denominator "[denn35d]" SampleTime "Ts" } Block { BlockType DiscreteTransferFcn Name "Discrete\nNotch Filter @ 5.56 Hz" Position [350, 197, 410, 233] Numerator "[numn1d]" Denominator "[denn1d]" SampleTime "Ts" } Block { BlockType DiscreteTransferFcn Name "Discrete\nNotch Filter @ 85 Hz" Position [505, 197, 565, 233] Numerator "[numn85d]" Denominator "[denn85d]" SampleTime "Ts" } Block { BlockType Ground Name "Ground" Position [100, 205, 120, 225] } Block { BlockType Reference Name "HOswitch" Ports [2, 1] Position [880, 62, 910, 98] SourceBlock "simulink/Signal\nRouting/Manual Switch" SourceType "Manual Switch" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData "off" RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" sw "1" action "0" varsize "off" } Block { BlockType Reference Name "LTI System" Ports [1, 1] Position [410, 82, 505, 118] SourceBlock "cstblocks/LTI System" SourceType "LTI Block" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData "off" RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" sys "notch20b" IC "[]" } Block { BlockType Reference Name "LTI System1" Ports [1, 1] Position [165, 197, 260, 233] SourceBlock "cstblocks/LTI System" SourceType "LTI Block" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData "off" RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" sys "notch6b" IC "[]" } Block { BlockType SubSystem Name "Newest HO Filter" Tag "FilterWizardSubSystem" Ports [1, 1] Position [760, 120, 835, 160] MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "Newest HO Filter" Location [104, 87, 684, 386] 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 "Input" Position [80, 68, 110, 82] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Reference Name "Delay1(1)" Ports [1, 1] Position [605, 120, 635, 150] Orientation "down" ShowName off SourceBlock "dspsigops/Delay" SourceType "Delay" dly_unit "Samples" delay "1" ic_detail "off" dif_ic_for_ch "off" dif_ic_for_dly "off" ic "0" reset_popup "None" } Block { BlockType Reference Name "Delay1(2)" Ports [1, 1] Position [1555, 120, 1585, 150] Orientation "down" ShowName off SourceBlock "dspsigops/Delay" SourceType "Delay" dly_unit "Samples" delay "1" ic_detail "off" dif_ic_for_ch "off" dif_ic_for_dly "off" ic "0" reset_popup "None" } Block { BlockType Reference Name "Delay1(3)" Ports [1, 1] Position [2505, 120, 2535, 150] Orientation "down" ShowName off SourceBlock "dspsigops/Delay" SourceType "Delay" dly_unit "Samples" delay "1" ic_detail "off" dif_ic_for_ch "off" dif_ic_for_dly "off" ic "0" reset_popup "None" } Block { BlockType Reference Name "Delay1(4)" Ports [1, 1] Position [3455, 120, 3485, 150] Orientation "down" ShowName off SourceBlock "dspsigops/Delay" SourceType "Delay" dly_unit "Samples" delay "1" ic_detail "off" dif_ic_for_ch "off" dif_ic_for_dly "off" ic "0" reset_popup "None" } Block { BlockType Reference Name "Delay1(5)" Ports [1, 1] Position [4405, 120, 4435, 150] Orientation "down" ShowName off SourceBlock "dspsigops/Delay" SourceType "Delay" dly_unit "Samples" delay "1" ic_detail "off" dif_ic_for_ch "off" dif_ic_for_dly "off" ic "0" reset_popup "None" } Block { BlockType Reference Name "Delay2(1)" Ports [1, 1] Position [605, 220, 635, 250] Orientation "down" ShowName off SourceBlock "dspsigops/Delay" SourceType "Delay" dly_unit "Samples" delay "1" ic_detail "off" dif_ic_for_ch "off" dif_ic_for_dly "off" ic "0" reset_popup "None" } Block { BlockType Reference Name "Delay2(2)" Ports [1, 1] Position [1555, 220, 1585, 250] Orientation "down" ShowName off SourceBlock "dspsigops/Delay" SourceType "Delay" dly_unit "Samples" delay "1" ic_detail "off" dif_ic_for_ch "off" dif_ic_for_dly "off" ic "0" reset_popup "None" } Block { BlockType Reference Name "Delay2(3)" Ports [1, 1] Position [2505, 220, 2535, 250] Orientation "down" ShowName off SourceBlock "dspsigops/Delay" SourceType "Delay" dly_unit "Samples" delay "1" ic_detail "off" dif_ic_for_ch "off" dif_ic_for_dly "off" ic "0" reset_popup "None" } Block { BlockType Reference Name "Delay2(4)" Ports [1, 1] Position [3455, 220, 3485, 250] Orientation "down" ShowName off SourceBlock "dspsigops/Delay" SourceType "Delay" dly_unit "Samples" delay "1" ic_detail "off" dif_ic_for_ch "off" dif_ic_for_dly "off" ic "0" reset_popup "None" } Block { BlockType Reference Name "Delay2(5)" Ports [1, 1] Position [4405, 220, 4435, 250] Orientation "down" ShowName off SourceBlock "dspsigops/Delay" SourceType "Delay" dly_unit "Samples" delay "1" ic_detail "off" dif_ic_for_ch "off" dif_ic_for_dly "off" ic "0" reset_popup "None" } Block { BlockType From Name "SectIn1" Position [1065, 68, 1125, 82] ShowName off GotoTag "Sect1" } Block { BlockType From Name "SectIn2" Position [2015, 68, 2075, 82] ShowName off GotoTag "Sect2" } Block { BlockType From Name "SectIn3" Position [2965, 68, 3025, 82] ShowName off GotoTag "Sect3" } Block { BlockType From Name "SectIn4" Position [3915, 68, 3975, 82] ShowName off GotoTag "Sect4" } Block { BlockType Goto Name "SectOut1" Position [1040, 68, 1095, 82] ShowName off GotoTag "Sect1" TagVisibility "local" } Block { BlockType Goto Name "SectOut2" Position [1990, 68, 2045, 82] ShowName off GotoTag "Sect2" TagVisibility "local" } Block { BlockType Goto Name "SectOut3" Position [2940, 68, 2995, 82] ShowName off GotoTag "Sect3" TagVisibility "local" } Block { BlockType Goto Name "SectOut4" Position [3890, 68, 3945, 82] ShowName off GotoTag "Sect4" TagVisibility "local" } Block { BlockType Sum Name "SumA21" Ports [2, 1] Position [320, 60, 350, 90] ShowName off IconShape "round" Inputs "|+-" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "SumA22" Ports [2, 1] Position [1270, 60, 1300, 90] ShowName off IconShape "round" Inputs "|+-" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "SumA23" Ports [2, 1] Position [2220, 60, 2250, 90] ShowName off IconShape "round" Inputs "|+-" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "SumA24" Ports [2, 1] Position [3170, 60, 3200, 90] ShowName off IconShape "round" Inputs "|+-" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "SumA25" Ports [2, 1] Position [4120, 60, 4150, 90] ShowName off IconShape "round" Inputs "|+-" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "SumA31" Ports [2, 1] Position [430, 60, 460, 90] ShowName off IconShape "round" Inputs "|+-" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "SumA32" Ports [2, 1] Position [1380, 60, 1410, 90] ShowName off IconShape "round" Inputs "|+-" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "SumA33" Ports [2, 1] Position [2330, 60, 2360, 90] ShowName off IconShape "round" Inputs "|+-" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "SumA34" Ports [2, 1] Position [3280, 60, 3310, 90] ShowName off IconShape "round" Inputs "|+-" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "SumA35" Ports [2, 1] Position [4230, 60, 4260, 90] ShowName off IconShape "round" Inputs "|+-" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "SumB21" Ports [2, 1] Position [760, 60, 790, 90] ShowName off IconShape "round" Inputs "|++" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "SumB22" Ports [2, 1] Position [1710, 60, 1740, 90] ShowName off IconShape "round" Inputs "|++" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "SumB23" Ports [2, 1] Position [2660, 60, 2690, 90] ShowName off IconShape "round" Inputs "|++" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "SumB24" Ports [2, 1] Position [3610, 60, 3640, 90] ShowName off IconShape "round" Inputs "|++" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "SumB25" Ports [2, 1] Position [4560, 60, 4590, 90] ShowName off IconShape "round" Inputs "|++" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "SumB31" Ports [2, 1] Position [870, 60, 900, 90] ShowName off IconShape "round" Inputs "|++" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "SumB32" Ports [2, 1] Position [1820, 60, 1850, 90] ShowName off IconShape "round" Inputs "|++" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "SumB33" Ports [2, 1] Position [2770, 60, 2800, 90] ShowName off IconShape "round" Inputs "|++" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "SumB34" Ports [2, 1] Position [3720, 60, 3750, 90] ShowName off IconShape "round" Inputs "|++" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "SumB35" Ports [2, 1] Position [4670, 60, 4700, 90] ShowName off IconShape "round" Inputs "|++" CollapseMode "All dimensions" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "a(2,1)" Position [510, 159, 540, 191] Orientation "left" Gain "-1.0714680349992194" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "a(2,2)" Position [1460, 159, 1490, 191] Orientation "left" Gain "-1.5456006425916522" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "a(2,3)" Position [2410, 159, 2440, 191] Orientation "left" Gain "-1.7796949495985039" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "a(2,4)" Position [3360, 159, 3390, 191] Orientation "left" Gain "-1.8819352062893109" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "a(2,5)" Position [4310, 159, 4340, 191] Orientation "left" Gain "-1.9360470180601386" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "a(3,1)" Position [510, 259, 540, 291] Orientation "left" Gain "0.32120675863960513" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "a(3,2)" Position [1460, 259, 1490, 291] Orientation "left" Gain "0.67723598996970558" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "a(3,3)" Position [2410, 259, 2440, 291] Orientation "left" Gain "0.8544789988971333" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "a(3,4)" Position [3360, 259, 3390, 291] Orientation "left" Gain "0.93442399131598086" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "a(3,5)" Position [4310, 259, 4340, 291] Orientation "left" Gain "0.98075403075671552" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "b(2,1)" Position [695, 159, 725, 191] Gain "-0.67012066314606944" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "b(2,2)" Position [1645, 159, 1675, 191] Gain "-1.7766628742891879" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "b(2,3)" Position [2595, 159, 2625, 191] Gain "-1.904813250331264" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "b(2,4)" Position [3545, 159, 3575, 191] Gain "-1.939517806548595" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "b(2,5)" Position [4495, 159, 4525, 191] Gain "-1.950640147644068" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "b(3,1)" Position [695, 259, 725, 291] Gain "0.99999999999999878" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "b(3,2)" Position [1645, 259, 1675, 291] Gain "0.99999999999999933" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "b(3,3)" Position [2595, 259, 2625, 291] Gain "0.99999999999999989" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "b(3,4)" Position [3545, 259, 3575, 291] Gain "1.0000000000000022" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "b(3,5)" Position [4495, 259, 4525, 291] Gain "0.99999999999999989" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "s(1)" Position [195, 60, 225, 90] Gain "0.06835314745957749" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "Output" Position [4945, 68, 4975, 82] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "a(3,5)" SrcPort 1 Points [-60, 0] DstBlock "SumA35" DstPort 2 } Line { SrcBlock "a(2,5)" SrcPort 1 Points [-170, 0] DstBlock "SumA25" DstPort 2 } Line { SrcBlock "b(3,5)" SrcPort 1 Points [155, 0] DstBlock "SumB35" DstPort 2 } Line { SrcBlock "Delay2(5)" SrcPort 1 Points [0, 0] Branch { Points [0, 20] DstBlock "a(3,5)" DstPort 1 } Branch { Points [0, 20] DstBlock "b(3,5)" DstPort 1 } } Line { SrcBlock "b(2,5)" SrcPort 1 Points [45, 0] DstBlock "SumB25" DstPort 2 } Line { SrcBlock "Delay1(5)" SrcPort 1 Points [0, 0] Branch { Points [0, 20] DstBlock "a(2,5)" DstPort 1 } Branch { Points [0, 20] DstBlock "b(2,5)" DstPort 1 } Branch { DstBlock "Delay2(5)" DstPort 1 } } Line { SrcBlock "SumB35" SrcPort 1 DstBlock "Output" DstPort 1 } Line { SrcBlock "SumB25" SrcPort 1 DstBlock "SumB35" DstPort 1 } Line { SrcBlock "SumA35" SrcPort 1 Points [0, 0] Branch { DstBlock "SumB25" DstPort 1 } Branch { Points [155, 0] DstBlock "Delay1(5)" DstPort 1 } } Line { SrcBlock "SumA25" SrcPort 1 DstBlock "SumA35" DstPort 1 } Line { SrcBlock "SectIn4" SrcPort 1 DstBlock "SumA25" DstPort 1 } Line { SrcBlock "a(3,4)" SrcPort 1 Points [-60, 0] DstBlock "SumA34" DstPort 2 } Line { SrcBlock "a(2,4)" SrcPort 1 Points [-170, 0] DstBlock "SumA24" DstPort 2 } Line { SrcBlock "b(3,4)" SrcPort 1 Points [155, 0] DstBlock "SumB34" DstPort 2 } Line { SrcBlock "Delay2(4)" SrcPort 1 Points [0, 0] Branch { Points [0, 20] DstBlock "a(3,4)" DstPort 1 } Branch { Points [0, 20] DstBlock "b(3,4)" DstPort 1 } } Line { SrcBlock "b(2,4)" SrcPort 1 Points [45, 0] DstBlock "SumB24" DstPort 2 } Line { SrcBlock "Delay1(4)" SrcPort 1 Points [0, 0] Branch { Points [0, 20] DstBlock "a(2,4)" DstPort 1 } Branch { Points [0, 20] DstBlock "b(2,4)" DstPort 1 } Branch { DstBlock "Delay2(4)" DstPort 1 } } Line { SrcBlock "SumB34" SrcPort 1 DstBlock "SectOut4" DstPort 1 } Line { SrcBlock "SumB24" SrcPort 1 DstBlock "SumB34" DstPort 1 } Line { SrcBlock "SumA34" SrcPort 1 Points [0, 0] Branch { DstBlock "SumB24" DstPort 1 } Branch { Points [155, 0] DstBlock "Delay1(4)" DstPort 1 } } Line { SrcBlock "SumA24" SrcPort 1 DstBlock "SumA34" DstPort 1 } Line { SrcBlock "SectIn3" SrcPort 1 DstBlock "SumA24" DstPort 1 } Line { SrcBlock "a(3,3)" SrcPort 1 Points [-60, 0] DstBlock "SumA33" DstPort 2 } Line { SrcBlock "a(2,3)" SrcPort 1 Points [-170, 0] DstBlock "SumA23" DstPort 2 } Line { SrcBlock "b(3,3)" SrcPort 1 Points [155, 0] DstBlock "SumB33" DstPort 2 } Line { SrcBlock "Delay2(3)" SrcPort 1 Points [0, 0] Branch { Points [0, 20] DstBlock "a(3,3)" DstPort 1 } Branch { Points [0, 20] DstBlock "b(3,3)" DstPort 1 } } Line { SrcBlock "b(2,3)" SrcPort 1 Points [45, 0] DstBlock "SumB23" DstPort 2 } Line { SrcBlock "Delay1(3)" SrcPort 1 Points [0, 0] Branch { Points [0, 20] DstBlock "a(2,3)" DstPort 1 } Branch { Points [0, 20] DstBlock "b(2,3)" DstPort 1 } Branch { DstBlock "Delay2(3)" DstPort 1 } } Line { SrcBlock "SumB33" SrcPort 1 DstBlock "SectOut3" DstPort 1 } Line { SrcBlock "SumB23" SrcPort 1 DstBlock "SumB33" DstPort 1 } Line { SrcBlock "SumA33" SrcPort 1 Points [0, 0] Branch { DstBlock "SumB23" DstPort 1 } Branch { Points [155, 0] DstBlock "Delay1(3)" DstPort 1 } } Line { SrcBlock "SumA23" SrcPort 1 DstBlock "SumA33" DstPort 1 } Line { SrcBlock "SectIn2" SrcPort 1 DstBlock "SumA23" DstPort 1 } Line { SrcBlock "a(3,2)" SrcPort 1 Points [-60, 0] DstBlock "SumA32" DstPort 2 } Line { SrcBlock "a(2,2)" SrcPort 1 Points [-170, 0] DstBlock "SumA22" DstPort 2 } Line { SrcBlock "b(3,2)" SrcPort 1 Points [155, 0] DstBlock "SumB32" DstPort 2 } Line { SrcBlock "Delay2(2)" SrcPort 1 Points [0, 0] Branch { Points [0, 20] DstBlock "a(3,2)" DstPort 1 } Branch { Points [0, 20] DstBlock "b(3,2)" DstPort 1 } } Line { SrcBlock "b(2,2)" SrcPort 1 Points [45, 0] DstBlock "SumB22" DstPort 2 } Line { SrcBlock "Delay1(2)" SrcPort 1 Points [0, 0] Branch { Points [0, 20] DstBlock "a(2,2)" DstPort 1 } Branch { Points [0, 20] DstBlock "b(2,2)" DstPort 1 } Branch { DstBlock "Delay2(2)" DstPort 1 } } Line { SrcBlock "SumB32" SrcPort 1 DstBlock "SectOut2" DstPort 1 } Line { SrcBlock "SumB22" SrcPort 1 DstBlock "SumB32" DstPort 1 } Line { SrcBlock "SumA32" SrcPort 1 Points [0, 0] Branch { DstBlock "SumB22" DstPort 1 } Branch { Points [155, 0] DstBlock "Delay1(2)" DstPort 1 } } Line { SrcBlock "SumA22" SrcPort 1 DstBlock "SumA32" DstPort 1 } Line { SrcBlock "SectIn1" SrcPort 1 DstBlock "SumA22" DstPort 1 } Line { SrcBlock "a(3,1)" SrcPort 1 Points [-60, 0] DstBlock "SumA31" DstPort 2 } Line { SrcBlock "a(2,1)" SrcPort 1 Points [-170, 0] DstBlock "SumA21" DstPort 2 } Line { SrcBlock "b(3,1)" SrcPort 1 Points [155, 0] DstBlock "SumB31" DstPort 2 } Line { SrcBlock "Delay2(1)" SrcPort 1 Points [0, 0] Branch { Points [0, 20] DstBlock "a(3,1)" DstPort 1 } Branch { Points [0, 20] DstBlock "b(3,1)" DstPort 1 } } Line { SrcBlock "b(2,1)" SrcPort 1 Points [45, 0] DstBlock "SumB21" DstPort 2 } Line { SrcBlock "Delay1(1)" SrcPort 1 Points [0, 0] Branch { Points [0, 20] DstBlock "a(2,1)" DstPort 1 } Branch { Points [0, 20] DstBlock "b(2,1)" DstPort 1 } Branch { DstBlock "Delay2(1)" DstPort 1 } } Line { SrcBlock "SumB31" SrcPort 1 DstBlock "SectOut1" DstPort 1 } Line { SrcBlock "SumB21" SrcPort 1 DstBlock "SumB31" DstPort 1 } Line { SrcBlock "SumA31" SrcPort 1 Points [0, 0] Branch { DstBlock "SumB21" DstPort 1 } Branch { Points [155, 0] DstBlock "Delay1(1)" DstPort 1 } } Line { SrcBlock "SumA21" SrcPort 1 DstBlock "SumA31" DstPort 1 } Line { SrcBlock "s(1)" SrcPort 1 DstBlock "SumA21" DstPort 1 } Line { SrcBlock "Input" SrcPort 1 DstBlock "s(1)" DstPort 1 } } } Block { BlockType Terminator Name "Terminator" Position [925, 205, 945, 225] } Block { BlockType DiscreteTransferFcn Name "notch at 5.67 Hz" Position [255, 82, 330, 118] Numerator "[numd_n5p6]" Denominator "[dend_n5p6]" SampleTime "Ts" } Block { BlockType Outport Name "Filtered CMD" Position [980, 88, 1010, 102] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "Discrete\nNotch Filter @ 85 Hz" SrcPort 1 DstBlock "Discrete\nNotch Filter @ 161 Hz" DstPort 1 } Line { SrcBlock "Discrete\nNotch Filter @ 35 Hz" SrcPort 1 Points [50, 0] Branch { Points [0, 40] DstBlock "Newest HO Filter" DstPort 1 } Branch { Points [0, -30] DstBlock "HOswitch" DstPort 1 } } Line { SrcBlock "Discrete\nNotch Filter @ 161 Hz" SrcPort 1 DstBlock "Digital Filter1" DstPort 1 } Line { SrcBlock "Ground" SrcPort 1 DstBlock "LTI System1" DstPort 1 } Line { SrcBlock "Discrete\nNotch Filter @ 5.56 Hz" SrcPort 1 DstBlock "Discrete\nNotch Filter @ 85 Hz" DstPort 1 } Line { SrcBlock "LTI System" SrcPort 1 DstBlock "Discrete\nNotch Filter @ 35 Hz" DstPort 1 } Line { SrcBlock "LTI System1" SrcPort 1 DstBlock "Discrete\nNotch Filter @ 5.56 Hz" DstPort 1 } Line { SrcBlock "Unfiltered CMD" SrcPort 1 DstBlock "notch at 5.67 Hz" DstPort 1 } Line { SrcBlock "notch at 5.67 Hz" SrcPort 1 DstBlock "LTI System" DstPort 1 } Line { SrcBlock "Digital Filter1" SrcPort 1 DstBlock "Terminator" DstPort 1 } Line { SrcBlock "Newest HO Filter" SrcPort 1 Points [10, 0; 0, -50] DstBlock "HOswitch" DstPort 2 } Line { SrcBlock "HOswitch" SrcPort 1 Points [0, 15] DstBlock "Filtered CMD" DstPort 1 } } } Block { BlockType From Name "From" Position [225, 356, 265, 384] GotoTag "Reset" TagVisibility "global" } Block { BlockType Goto Name "Goto" Position [1030, 420, 1160, 450] GotoTag "VelocityEstimate" TagVisibility "global" } Block { BlockType Goto Name "Goto1" Position [1350, 165, 1455, 195] GotoTag "TorqueCommand" TagVisibility "global" } Block { BlockType Goto Name "Goto2" Position [1100, 155, 1215, 185] GotoTag "VelocityCommand" TagVisibility "global" } Block { BlockType Reference Name "N-Sample\nEnable" Ports [1, 1] Position [320, 348, 365, 392] SourceBlock "dspswit3/N-Sample\nEnable" SourceType "N-Sample Enable" N "10" ActiveLevel "High (1)" reset "on" TriggerType "Non-zero sample" Ts "Ts" DataType "Logical" } Block { BlockType SubSystem Name "Position Controller" Ports [2, 1] Position [715, 205, 890, 305] MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "Position Controller" Location [-31, 93, 960, 656] 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 "Position CMD (deg)" Position [75, 208, 105, 222] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Inport Name "Position (deg)" Position [75, 303, 105, 317] Port "2" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Abs Name "Abs" Position [595, 550, 625, 580] SaturateOnIntegerOverflow off } Block { BlockType Reference Name "Compare\nTo Constant" Ports [1, 1] Position [650, 549, 690, 581] SourceBlock "simulink/Logic and Bit\nOperations/Compare\nTo Constant" SourceType "Compare To Constant" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData "off" RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" relop ">=" const "0.2" LogicOutDataTypeMode "uint8" ZeroCross "off" } Block { BlockType DiscreteTransferFcn Name "Discrete\nDifferentiator" Position [645, 97, 705, 133] Numerator "[numdd]" Denominator "[dendd]" SampleTime "Ts" } Block { BlockType DiscreteIntegrator Name "Discrete-Time\nIntegrator1" Ports [2, 1] Position [760, 294, 820, 336] IntegratorMethod "Integration: Forward Euler" ExternalReset "level" InitialConditionSource "internal" SampleTime "Ts" OutDataType "sfix(16)" OutScaling "2^0" UpperSaturationLimit "DacLim/Ki" LowerSaturationLimit "-DacLim/Ki" ICPrevOutput "DiscIntNeverNeededParam" ICPrevScaledInput "DiscIntNeverNeededParam" } Block { BlockType From Name "From" Position [370, 236, 410, 264] GotoTag "Reset" TagVisibility "global" } Block { BlockType From Name "From1" Position [615, 335, 680, 365] GotoTag "IntReset" TagVisibility "global" } Block { BlockType From Name "From2" Position [655, 611, 695, 639] GotoTag "Reset" TagVisibility "global" } Block { BlockType From Name "From22" Position [300, 412, 395, 438] CloseFcn "tagdialog Close" GotoTag "CommandValue" TagVisibility "global" } Block { BlockType From Name "From23" Position [295, 457, 390, 483] CloseFcn "tagdialog Close" GotoTag "Feedback" TagVisibility "global" } Block { BlockType Gain Name "Gain" Position [325, 114, 370, 156] Gain "3600" ParameterDataTypeMode "Inherit via internal rule" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType SubSystem Name "Gain-scheduled Ki" Ports [1, 1] Position [735, 385, 840, 465] MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "Gain-scheduled Ki" Location [180, 230, 844, 537] 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 "Error_sig" Position [35, 133, 65, 147] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Abs Name "Abs1" Position [175, 125, 205, 155] } Block { BlockType Gain Name "Beta" Position [250, 110, 300, 170] Gain "-0.02" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Constant Name "Constant" Position [345, 23, 395, 57] Value "Ki" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Constant Name "Constant1" Position [345, 76, 395, 104] Value "Ki * 0.3" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "Gain" Position [95, 122, 140, 158] Gain "360" ParameterDataTypeMode "Inherit via internal rule" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Math Name "Math\nFunction1" Ports [1, 1] Position [365, 124, 395, 156] OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Product Name "Product" Ports [2, 1] Position [450, 116, 495, 149] CollapseMode "All dimensions" InputSameDT off OutDataType "sfix(16)" OutScaling "2^0" RndMeth "Floor" } Block { BlockType Sum Name "Sum2" Ports [2, 1] Position [500, 30, 520, 50] ShowName off IconShape "round" Inputs "|++" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "Ki_Var" Position [565, 33, 595, 47] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "Abs1" SrcPort 1 DstBlock "Beta" DstPort 1 } Line { SrcBlock "Beta" SrcPort 1 DstBlock "Math\nFunction1" DstPort 1 } Line { SrcBlock "Product" SrcPort 1 Points [10, 0] DstBlock "Sum2" DstPort 2 } Line { SrcBlock "Constant1" SrcPort 1 Points [20, 0; 0, 35] DstBlock "Product" DstPort 1 } Line { SrcBlock "Constant" SrcPort 1 DstBlock "Sum2" DstPort 1 } Line { SrcBlock "Math\nFunction1" SrcPort 1 DstBlock "Product" DstPort 2 } Line { SrcBlock "Error_sig" SrcPort 1 DstBlock "Gain" DstPort 1 } Line { SrcBlock "Sum2" SrcPort 1 DstBlock "Ki_Var" DstPort 1 } Line { SrcBlock "Gain" SrcPort 1 DstBlock "Abs1" DstPort 1 } } } Block { BlockType Goto Name "Goto2" Position [450, 118, 515, 152] GotoTag "PosErr" TagVisibility "global" } Block { BlockType Goto Name "Goto3" Position [840, 557, 920, 593] GotoTag "IntReset" TagVisibility "global" } Block { BlockType Ground Name "Ground" Position [390, 175, 410, 195] } Block { BlockType Gain Name "Integral gain" Position [920, 299, 970, 331] Gain "Ki" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Constant Name "Ki mode" Position [920, 253, 980, 277] Value "KiModeSel" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Logic Name "Logical\nOperator" Ports [2, 1] Position [760, 557, 790, 588] Operator "OR" AllPortsSameDT off OutDataTypeMode "boolean" } Block { BlockType MultiPortSwitch Name "Multiport\nSwitch" Ports [3, 1] Position [1030, 292, 1060, 338] Inputs "2" InputSameDT off SaturateOnIntegerOverflow off } Block { BlockType Reference Name "N-Sample\nSwitch1" Ports [3, 1] Position [475, 193, 520, 237] SourceBlock "dspswit3/N-Sample\nSwitch" SourceType "N-Sample Switch" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData "off" RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" N "11" reset "on" TriggerType "Non-zero sample" Ts "Ts" } Block { BlockType Product Name "Product" Ports [2, 1] Position [920, 362, 950, 393] CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Gain Name "Proportional gain" Position [850, 198, 905, 232] Gain "Kp" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "Sum" Ports [2, 1] Position [225, 205, 245, 225] ShowName off IconShape "round" Inputs "|+-" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "Sum1" Ports [3, 1] Position [1060, 205, 1080, 225] ShowName off IconShape "round" Inputs "+++" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "Sum2" Ports [2, 1] Position [460, 415, 480, 435] ShowName off IconShape "round" Inputs "|+-" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Gain Name "derivative gain" Position [780, 99, 830, 131] Gain "Kd" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "Velocity CMD (rad)" Position [1230, 208, 1260, 222] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "Discrete-Time\nIntegrator1" SrcPort 1 Points [45, 0] Branch { DstBlock "Integral gain" DstPort 1 } Branch { Points [0, 55] DstBlock "Product" DstPort 1 } } Line { SrcBlock "Sum1" SrcPort 1 DstBlock "Velocity CMD (rad)" DstPort 1 } Line { SrcBlock "Position CMD (deg)" SrcPort 1 DstBlock "Sum" DstPort 1 } Line { SrcBlock "Position (deg)" SrcPort 1 Points [125, 0] DstBlock "Sum" DstPort 2 } Line { SrcBlock "Proportional gain" SrcPort 1 DstBlock "Sum1" DstPort 2 } Line { SrcBlock "derivative gain" SrcPort 1 Points [235, 0] DstBlock "Sum1" DstPort 1 } Line { SrcBlock "Discrete\nDifferentiator" SrcPort 1 DstBlock "derivative gain" DstPort 1 } Line { SrcBlock "N-Sample\nSwitch1" SrcPort 1 Points [25, 0] Branch { Points [60, 0] Branch { Points [-5, 0] DstBlock "Proportional gain" DstPort 1 } Branch { Points [0, -100] DstBlock "Discrete\nDifferentiator" DstPort 1 } Branch { Points [0, 90] DstBlock "Discrete-Time\nIntegrator1" DstPort 1 } } Branch { Points [0, 350] DstBlock "Abs" DstPort 1 } } Line { SrcBlock "From" SrcPort 1 Points [20, 0; 0, -20] DstBlock "N-Sample\nSwitch1" DstPort 3 } Line { SrcBlock "Sum" SrcPort 1 Points [30, 0] Branch { Points [0, -80] DstBlock "Gain" DstPort 1 } Branch { DstBlock "N-Sample\nSwitch1" DstPort 2 } } Line { SrcBlock "Ground" SrcPort 1 Points [10, 0; 0, 15] DstBlock "N-Sample\nSwitch1" DstPort 1 } Line { SrcBlock "From1" SrcPort 1 Points [0, -25] DstBlock "Discrete-Time\nIntegrator1" DstPort 2 } Line { SrcBlock "Compare\nTo Constant" SrcPort 1 DstBlock "Logical\nOperator" DstPort 1 } Line { SrcBlock "Logical\nOperator" SrcPort 1 DstBlock "Goto3" DstPort 1 } Line { SrcBlock "From2" SrcPort 1 Points [25, 0; 0, -45] DstBlock "Logical\nOperator" DstPort 2 } Line { SrcBlock "Abs" SrcPort 1 DstBlock "Compare\nTo Constant" DstPort 1 } Line { SrcBlock "Gain" SrcPort 1 DstBlock "Goto2" DstPort 1 } Line { SrcBlock "Multiport\nSwitch" SrcPort 1 Points [5, 0] DstBlock "Sum1" DstPort 3 } Line { SrcBlock "Integral gain" SrcPort 1 DstBlock "Multiport\nSwitch" DstPort 2 } Line { SrcBlock "Ki mode" SrcPort 1 Points [30, 0] DstBlock "Multiport\nSwitch" DstPort 1 } Line { SrcBlock "Product" SrcPort 1 Points [60, 0] DstBlock "Multiport\nSwitch" DstPort 3 } Line { SrcBlock "Gain-scheduled Ki" SrcPort 1 Points [25, 0; 0, -40] DstBlock "Product" DstPort 2 } Line { SrcBlock "From22" SrcPort 1 DstBlock "Sum2" DstPort 1 } Line { SrcBlock "From23" SrcPort 1 Points [75, 0] DstBlock "Sum2" DstPort 2 } Line { SrcBlock "Sum2" SrcPort 1 DstBlock "Gain-scheduled Ki" DstPort 1 } Annotation { Name "Position Error" Position [337, 204] } } } Block { BlockType SubSystem Name "SlowStart" Ports [1, 1] Position [635, 414, 735, 456] MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "SlowStart" Location [469, 241, 967, 541] 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 "In1" Position [15, 23, 45, 37] ShowName off IconDisplay "Signal name" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Constant Name "Constant" Position [25, 45, 55, 75] OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType DiscreteIntegrator Name "Discrete-Time\nIntegrator" Ports [2, 1] Position [135, 56, 170, 89] IntegratorMethod "Integration: Forward Euler" gainval "0.5" ExternalReset "level" InitialConditionSource "internal" SampleTime "Ts" OutDataType "sfix(16)" OutScaling "2^0" LimitOutput on UpperSaturationLimit "1.0" LowerSaturationLimit "0.0" ICPrevOutput "DiscIntNeverNeededParam" ICPrevScaledInput "DiscIntNeverNeededParam" } Block { BlockType From Name "From" Position [25, 116, 65, 144] GotoTag "Reset" TagVisibility "global" } Block { BlockType Product Name "Product" Ports [2, 1] Position [385, 27, 415, 58] CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Saturate Name "Saturation2" Position [275, 50, 305, 80] UpperLimit "1" LowerLimit "0" } Block { BlockType Outport Name "Output" Position [455, 38, 485, 52] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "In1" SrcPort 1 Points [320, 0] DstBlock "Product" DstPort 1 } Line { SrcBlock "Product" SrcPort 1 DstBlock "Output" DstPort 1 } Line { SrcBlock "Constant" SrcPort 1 Points [30, 0; 0, 5] DstBlock "Discrete-Time\nIntegrator" DstPort 1 } Line { SrcBlock "From" SrcPort 1 Points [30, 0; 0, -50] DstBlock "Discrete-Time\nIntegrator" DstPort 2 } Line { SrcBlock "Saturation2" SrcPort 1 Points [30, 0; 0, -15] DstBlock "Product" DstPort 2 } Line { SrcBlock "Discrete-Time\nIntegrator" SrcPort 1 Points [40, 0; 0, -10] DstBlock "Saturation2" DstPort 1 } } } Block { BlockType SubSystem Name "SlowStart1" Ports [1, 1] Position [1330, 259, 1430, 301] MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "SlowStart1" Location [236, 246, 734, 546] 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 "In1" Position [15, 23, 45, 37] ShowName off IconDisplay "Signal name" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Constant Name "Constant" Position [30, 55, 60, 85] OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType DiscreteIntegrator Name "Discrete-Time\nIntegrator" Ports [2, 1] Position [115, 56, 150, 89] IntegratorMethod "Integration: Forward Euler" gainval "0.2" ExternalReset "level" InitialConditionSource "internal" SampleTime "Ts" OutDataType "sfix(16)" OutScaling "2^0" LimitOutput on UpperSaturationLimit "1" LowerSaturationLimit "0" ICPrevOutput "DiscIntNeverNeededParam" ICPrevScaledInput "DiscIntNeverNeededParam" } Block { BlockType From Name "From" Position [30, 161, 70, 189] GotoTag "Reset" TagVisibility "global" } Block { BlockType Product Name "Product" Ports [2, 1] Position [385, 27, 415, 58] CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Saturate Name "Saturation2" Position [305, 50, 335, 80] UpperLimit "1" LowerLimit "0" } Block { BlockType Outport Name "Out1" Position [455, 38, 485, 52] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "Saturation2" SrcPort 1 Points [15, 0; 0, -15] DstBlock "Product" DstPort 2 } Line { SrcBlock "Product" SrcPort 1 DstBlock "Out1" DstPort 1 } Line { SrcBlock "In1" SrcPort 1 Points [320, 0] DstBlock "Product" DstPort 1 } Line { SrcBlock "Constant" SrcPort 1 Points [35, 0] DstBlock "Discrete-Time\nIntegrator" DstPort 1 } Line { SrcBlock "From" SrcPort 1 Points [10, 0; 0, -95] DstBlock "Discrete-Time\nIntegrator" DstPort 2 } Line { SrcBlock "Discrete-Time\nIntegrator" SrcPort 1 Points [65, 0; 0, -10] DstBlock "Saturation2" DstPort 1 } } } Block { BlockType Sum Name "Sum1" Ports [2, 1] Position [935, 245, 955, 265] ShowName off IconShape "round" Inputs "++|" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType SubSystem Name "Velocity Controller" Ports [2, 1] Position [1075, 230, 1250, 330] MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "Velocity Controller" Location [31, 138, 900, 424] 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 "Velocity CMD (deg/s)" Position [45, 88, 75, 102] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Inport Name "Velocity Estimate (deg)" Position [50, 343, 80, 357] Port "2" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType DiscreteIntegrator Name "Discrete-Time\nIntegrator1" Ports [2, 1] Position [425, 175, 460, 215] IntegratorMethod "Integration: Forward Euler" ExternalReset "level" InitialConditionSource "internal" SampleTime "Ts" OutDataType "sfix(16)" OutScaling "2^0" ICPrevOutput "DiscIntNeverNeededParam" ICPrevScaledInput "DiscIntNeverNeededParam" } Block { BlockType From Name "From" Position [275, 191, 345, 219] GotoTag "IntReset" TagVisibility "global" } Block { BlockType Goto Name "Goto4b" Position [475, 21, 555, 49] GotoTag "VelocityError" TagVisibility "global" } Block { BlockType Reference Name "LTI System" Ports [1, 1] Position [425, 257, 520, 293] SourceBlock "cstblocks/LTI System" SourceType "LTI Block" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData "off" RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" sys "lead_z" IC "[]" } Block { BlockType Sum Name "Sum1" Ports [3, 1] Position [775, 102, 805, 168] ShowName off Inputs "|+++" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "Sum2" Ports [2, 1] Position [195, 85, 215, 105] ShowName off IconShape "round" Inputs "|+-" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "Velocity Controller\nIntegral gain" Position [535, 177, 605, 213] Gain "Kvi" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "Velocity Controller\nIntegral gain1" Position [570, 257, 640, 293] Gain "Kvd" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "Velocity Controller\nProportional gain" Position [495, 77, 570, 113] Gain "Kvp" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "Velocity gain" Position [176, 195, 234, 275] Orientation "up" NamePlacement "alternate" Gain "Kv_damp" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "TorqeCommand" Position [930, 98, 960, 112] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "Discrete-Time\nIntegrator1" SrcPort 1 DstBlock "Velocity Controller\nIntegral gain" DstPort 1 } Line { SrcBlock "Velocity Controller\nIntegral gain" SrcPort 1 Points [45, 0; 0, -85] DstBlock "Sum1" DstPort 2 } Line { SrcBlock "Velocity Controller\nProportional gain" SrcPort 1 Points [185, 0] DstBlock "Sum1" DstPort 1 } Line { SrcBlock "Velocity Estimate (deg)" SrcPort 1 Points [120, 0] DstBlock "Velocity gain" DstPort 1 } Line { SrcBlock "Velocity CMD (deg/s)" SrcPort 1 DstBlock "Sum2" DstPort 1 } Line { SrcBlock "Sum2" SrcPort 1 Points [55, 0] Branch { Points [105, 0] Branch { DstBlock "Velocity Controller\nProportional gain" DstPort 1 } Branch { Points [0, 90] Branch { DstBlock "Discrete-Time\nIntegrator1" DstPort 1 } Branch { Points [0, 90] DstBlock "LTI System" DstPort 1 } } } Branch { Points [105, 0; 0, -60] DstBlock "Goto4b" DstPort 1 } } Line { SrcBlock "Sum1" SrcPort 1 Points [0, -30] DstBlock "TorqeCommand" DstPort 1 } Line { SrcBlock "Velocity gain" SrcPort 1 DstBlock "Sum2" DstPort 2 } Line { SrcBlock "From" SrcPort 1 DstBlock "Discrete-Time\nIntegrator1" DstPort 2 } Line { SrcBlock "LTI System" SrcPort 1 DstBlock "Velocity Controller\nIntegral gain1" DstPort 1 } Line { SrcBlock "Velocity Controller\nIntegral gain1" SrcPort 1 Points [65, 0; 0, -150] DstBlock "Sum1" DstPort 3 } Annotation { Name "Velocity Error" Position [258, 85] } Annotation { Position [718, 361] } } } Block { BlockType Gain Name "rateff gain" Position [515, 41, 610, 79] Gain "Krff" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "Motor command (DAC volts)" Position [1775, 273, 1805, 287] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "Flexible Mode\nCompensation" SrcPort 1 DstBlock "Motor command (DAC volts)" DstPort 1 } Line { SrcBlock "Position Controller" SrcPort 1 DstBlock "Sum1" DstPort 2 } Line { SrcBlock "Sum1" SrcPort 1 Points [50, 0] Branch { DstBlock "Velocity Controller" DstPort 1 } Branch { Points [0, -85] DstBlock "Goto2" DstPort 1 } } Line { SrcBlock "Position command \nDegreesFF" SrcPort 1 DstBlock "rateff gain" DstPort 1 } Line { SrcBlock "rateff gain" SrcPort 1 Points [330, 0] DstBlock "Sum1" DstPort 1 } Line { SrcBlock "Motor Position\nDegrees\n" SrcPort 1 Points [65, 0] Branch { Points [0, -155] DstBlock "Position Controller" DstPort 2 } Branch { DstBlock "Enabled\nSubsystem" DstPort 1 } } Line { SrcBlock "N-Sample\nEnable" SrcPort 1 Points [55, 0] DstBlock "Enabled\nSubsystem" DstPort enable } Line { SrcBlock "From" SrcPort 1 DstBlock "N-Sample\nEnable" DstPort 1 } Line { SrcBlock "Position command \nDegrees" SrcPort 1 DstBlock "Position Controller" DstPort 1 } Line { SrcBlock "SlowStart" SrcPort 1 Points [210, 0] Branch { Points [0, -130] DstBlock "Velocity Controller" DstPort 2 } Branch { DstBlock "Goto" DstPort 1 } } Line { SrcBlock "Velocity Controller" SrcPort 1 Points [35, 0] Branch { DstBlock "SlowStart1" DstPort 1 } Branch { Points [0, -100] DstBlock "Goto1" DstPort 1 } } Line { SrcBlock "SlowStart1" SrcPort 1 DstBlock "Flexible Mode\nCompensation" DstPort 1 } Line { SrcBlock "Enabled\nSubsystem" SrcPort 1 DstBlock "SlowStart" DstPort 1 } } } Block { BlockType Reference Name "FreezeCmd" Ports [1, 1] Position [575, 1348, 610, 1382] SourceBlock "simulink/Logic and Bit\nOperations/Interval Test" SourceType "Interval Test" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData off RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" IntervalClosedRight on uplimit "3.1" IntervalClosedLeft on lowlimit "1.9" LogicOutDataTypeMode "boolean" } Block { BlockType From Name "From" Position [690, 525, 780, 555] GotoTag "RealAbsolute" } Block { BlockType From Name "From1" Position [1140, 1960, 1205, 1990] GotoTag "Feedback" TagVisibility "global" } Block { BlockType From Name "From10" Position [865, 793, 935, 827] GotoTag "Poscmd" } Block { BlockType From Name "From11" Position [835, 895, 905, 925] GotoTag "Velcmd" } Block { BlockType From Name "From12" Position [795, 946, 850, 974] GotoTag "Mode" } Block { BlockType From Name "From13" Position [1570, 610, 1670, 640] GotoTag "Feedback" TagVisibility "global" } Block { BlockType From Name "From14" Position [2435, 531, 2535, 559] GotoTag "VelocityError" TagVisibility "global" } Block { BlockType From Name "From15" Position [2435, 576, 2535, 604] GotoTag "VelocityEstimate" TagVisibility "global" } Block { BlockType From Name "From16" Position [2435, 623, 2500, 657] GotoTag "PosErr" TagVisibility "global" } Block { BlockType From Name "From17" Position [2210, 286, 2295, 314] GotoTag "DacSum" } Block { BlockType From Name "From18" Position [1355, 895, 1445, 925] GotoTag "TapeFdbk" } Block { BlockType From Name "From19" Position [2085, 803, 2160, 837] Orientation "left" GotoTag "DacSignal" } Block { BlockType From Name "From2" Position [1150, 2015, 1205, 2045] GotoTag "Vel" } Block { BlockType From Name "From20" Position [1835, 1271, 1890, 1299] GotoTag "Mode" } Block { BlockType From Name "From21" Position [2215, 340, 2285, 370] GotoTag "WindInput" TagVisibility "global" } Block { BlockType From Name "From22" Position [1505, 1067, 1600, 1093] CloseFcn "tagdialog Close" GotoTag "CommandValue" TagVisibility "global" } Block { BlockType From Name "From23" Position [1500, 1112, 1595, 1138] CloseFcn "tagdialog Close" GotoTag "Feedback" TagVisibility "global" } Block { BlockType From Name "From24" Position [1135, 370, 1230, 400] CloseFcn "tagdialog Close" GotoTag "TestSignal" TagVisibility "global" } Block { BlockType From Name "From25" Position [1375, 219, 1480, 251] CloseFcn "tagdialog Close" GotoTag "CommandSource" TagVisibility "global" } Block { BlockType From Name "From26" Position [2505, 184, 2610, 216] CloseFcn "tagdialog Close" GotoTag "ClosedOrOpen" TagVisibility "global" } Block { BlockType From Name "From27" Position [2210, 395, 2305, 425] CloseFcn "tagdialog Close" GotoTag "TestSignal" TagVisibility "global" } Block { BlockType From Name "From28" Position [2440, 679, 2555, 711] CloseFcn "tagdialog Close" GotoTag "VelocityCommand" TagVisibility "global" } Block { BlockType From Name "From29" Position [2440, 734, 2555, 766] CloseFcn "tagdialog Close" GotoTag "TorqueCommand" TagVisibility "global" } Block { BlockType From Name "From3" Position [1165, 2067, 1220, 2093] GotoTag "PosErr" TagVisibility "global" } Block { BlockType From Name "From30" Position [1130, 1631, 1220, 1669] CloseFcn "tagdialog Close" GotoTag "ToModel" } Block { BlockType From Name "From31" Position [2355, 184, 2460, 216] CloseFcn "tagdialog Close" GotoTag "TorkDistTest" } Block { BlockType From Name "From32" Position [1970, 1661, 2060, 1689] CloseFcn "tagdialog Close" GotoTag "PosCommand" } Block { BlockType From Name "From33" Position [1970, 1701, 2050, 1729] CloseFcn "tagdialog Close" GotoTag "Feedback" TagVisibility "global" } Block { BlockType From Name "From34" Position [1140, 256, 1240, 284] NamePlacement "alternate" CloseFcn "tagdialog Close" GotoTag "HoldCommand" } Block { BlockType From Name "From35" Position [1365, 382, 1460, 408] CloseFcn "tagdialog Close" GotoTag "FreezeFdbk" TagVisibility "global" } Block { BlockType From Name "From36" Position [1365, 425, 1455, 455] CloseFcn "tagdialog Close" GotoTag "LatchedAbs" } Block { BlockType From Name "From37" Position [1970, 1746, 2075, 1774] CloseFcn "tagdialog Close" GotoTag "VelocityCommand" TagVisibility "global" } Block { BlockType From Name "From38" Position [1975, 1790, 2070, 1820] CloseFcn "tagdialog Close" GotoTag "TorqueCommand" TagVisibility "global" } Block { BlockType From Name "From39" Position [1975, 1835, 2060, 1865] CloseFcn "tagdialog Close" GotoTag "ToModel" } Block { BlockType From Name "From4" Position [1150, 75, 1250, 105] GotoTag "CommandValue" TagVisibility "global" } Block { BlockType From Name "From40" Position [1975, 1881, 2070, 1909] CloseFcn "tagdialog Close" GotoTag "ModelOut" } Block { BlockType From Name "From41" Position [1980, 1931, 2050, 1959] CloseFcn "tagdialog Close" GotoTag "TestType" } Block { BlockType From Name "From42" Position [1980, 1976, 2055, 2004] CloseFcn "tagdialog Close" GotoTag "TestSignal" TagVisibility "global" } Block { BlockType From Name "From43" Position [505, 2001, 595, 2029] CloseFcn "tagdialog Close" GotoTag "EastTapeHW" } Block { BlockType From Name "From44" Position [695, 463, 775, 497] CloseFcn "tagdialog Close" GotoTag "TapeFdbk" } Block { BlockType From Name "From5" Position [505, 2061, 590, 2089] GotoTag "WestTapeHW" } Block { BlockType From Name "From6" Position [1150, 117, 1245, 153] GotoTag "LatchedAbs" } Block { BlockType From Name "From7" Position [1685, 274, 1770, 306] GotoTag "Feedback" TagVisibility "global" } Block { BlockType From Name "From8" Position [895, 659, 950, 691] GotoTag "Mode" } Block { BlockType From Name "From9" Position [895, 735, 970, 765] GotoTag "LatchedAbs" } Block { BlockType Gain Name "Gain" Position [935, 895, 965, 925] ParameterDataTypeMode "Inherit via internal rule" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off SampleTime "Ts" } Block { BlockType SubSystem Name "Gain-scheduled Kdd" Ports [1, 1] Position [1735, 1040, 1840, 1120] MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "Gain-scheduled Kdd" Location [180, 230, 844, 537] 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 "Error_sig" Position [35, 133, 65, 147] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Abs Name "Abs1" Position [175, 125, 205, 155] } Block { BlockType Gain Name "Beta" Position [250, 110, 300, 170] Gain "-0.02" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Constant Name "Constant" Position [345, 23, 395, 57] Value "KddMin" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Constant Name "Constant1" Position [345, 76, 395, 104] Value "KddMax" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "Gain" Position [95, 122, 140, 158] Gain "360" ParameterDataTypeMode "Inherit via internal rule" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Math Name "Math\nFunction1" Ports [1, 1] Position [365, 124, 395, 156] OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Product Name "Product" Ports [2, 1] Position [450, 116, 495, 149] CollapseMode "All dimensions" InputSameDT off OutDataType "sfix(16)" OutScaling "2^0" RndMeth "Floor" } Block { BlockType Sum Name "Sum2" Ports [2, 1] Position [500, 30, 520, 50] ShowName off IconShape "round" Inputs "|++" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "KddVar" Position [565, 33, 595, 47] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "Abs1" SrcPort 1 DstBlock "Beta" DstPort 1 } Line { SrcBlock "Beta" SrcPort 1 DstBlock "Math\nFunction1" DstPort 1 } Line { SrcBlock "Product" SrcPort 1 Points [10, 0] DstBlock "Sum2" DstPort 2 } Line { SrcBlock "Constant1" SrcPort 1 Points [20, 0; 0, 35] DstBlock "Product" DstPort 1 } Line { SrcBlock "Constant" SrcPort 1 DstBlock "Sum2" DstPort 1 } Line { SrcBlock "Math\nFunction1" SrcPort 1 DstBlock "Product" DstPort 2 } Line { SrcBlock "Error_sig" SrcPort 1 DstBlock "Gain" DstPort 1 } Line { SrcBlock "Sum2" SrcPort 1 DstBlock "KddVar" DstPort 1 } Line { SrcBlock "Gain" SrcPort 1 DstBlock "Abs1" DstPort 1 } } } Block { BlockType Gain Name "Gain1" Position [1830, 590, 1895, 660] Gain "1/Ts" ParameterDataTypeMode "Inherit via internal rule" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off SampleTime "Ts" } Block { BlockType Gain Name "Gain2" Position [380, 1833, 415, 1867] Gain "-1" ParameterDataTypeMode "Inherit via internal rule" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Gain Name "Gain3" Position [380, 1889, 415, 1921] Gain "-1" ParameterDataTypeMode "Inherit via internal rule" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Goto Name "Goto" Position [920, 316, 1005, 344] GotoTag "FakeAbsolute" TagVisibility "local" } Block { BlockType Goto Name "Goto1" Position [1700, 1790, 1740, 1820] GotoTag "Mode" TagVisibility "local" } Block { BlockType Goto Name "Goto10" Position [2260, 610, 2300, 640] GotoTag "Vel" TagVisibility "local" } Block { BlockType Goto Name "Goto11" Position [500, 1831, 600, 1869] GotoTag "EastTapeHW" TagVisibility "local" } Block { BlockType Goto Name "Goto12" Position [2245, 185, 2325, 215] GotoTag "DacSignal" TagVisibility "local" } Block { BlockType Goto Name "Goto13" Position [2475, 1334, 2550, 1366] GotoTag "WindInput" TagVisibility "global" } Block { BlockType Goto Name "Goto14" Position [710, 1279, 810, 1311] GotoTag "TorkDistTest" TagVisibility "local" } Block { BlockType Goto Name "Goto15" Position [785, 1594, 885, 1636] GotoTag "TestSignal" TagVisibility "global" } Block { BlockType Goto Name "Goto16" Position [705, 1220, 805, 1250] GotoTag "ClosedOrOpen" TagVisibility "global" } Block { BlockType Goto Name "Goto17" Position [710, 1426, 820, 1454] GotoTag "CommandSource" TagVisibility "global" } Block { BlockType Goto Name "Goto18" Position [2885, 326, 2980, 364] GotoTag "ToModel" TagVisibility "local" } Block { BlockType Goto Name "Goto19" Position [1655, 1630, 1730, 1670] GotoTag "ModelOut" TagVisibility "local" } Block { BlockType Goto Name "Goto2" Position [1700, 1835, 1770, 1865] GotoTag "Poscmd" TagVisibility "local" } Block { BlockType Goto Name "Goto20" Position [900, 243, 1005, 277] GotoTag "RealAbsolute" TagVisibility "local" } Block { BlockType Goto Name "Goto21" Position [715, 1348, 815, 1382] GotoTag "HoldCommand" TagVisibility "local" } Block { BlockType Goto Name "Goto22" Position [715, 1158, 810, 1192] GotoTag "FreezeFdbk" TagVisibility "global" } Block { BlockType Goto Name "Goto23" Position [1760, 359, 1855, 391] GotoTag "PosCommand" TagVisibility "local" } Block { BlockType Goto Name "Goto24" Position [750, 1477, 820, 1503] GotoTag "TestType" TagVisibility "local" } Block { BlockType Goto Name "Goto25" Position [970, 1909, 1070, 1941] GotoTag "TapeFdbk" TagVisibility "local" } Block { BlockType Goto Name "Goto3" Position [1705, 1886, 1765, 1914] GotoTag "Velcmd" TagVisibility "local" } Block { BlockType Goto Name "Goto4" Position [500, 1888, 605, 1922] GotoTag "WestTapeHW" TagVisibility "local" } Block { BlockType Goto Name "Goto5" Tag "reset" Description "reset" Position [2040, 115, 2080, 145] GotoTag "Reset" TagVisibility "global" } Block { BlockType Goto Name "Goto6" Position [2620, 913, 2685, 947] GotoTag "DacSum" TagVisibility "local" } Block { BlockType Goto Name "Goto7" Position [1605, 408, 1685, 442] GotoTag "Feedback" TagVisibility "global" } Block { BlockType Goto Name "Goto8" Position [1360, 511, 1440, 539] GotoTag "LatchedAbs" TagVisibility "local" } Block { BlockType Goto Name "Goto9" Position [1310, 745, 1425, 775] GotoTag "CommandValue" TagVisibility "global" } Block { BlockType Ground Name "Ground" Position [1915, 1340, 1935, 1360] } Block { BlockType Ground Name "Ground1" Position [530, 1560, 550, 1580] NamePlacement "alternate" } Block { BlockType Ground Name "Ground2" Position [2375, 975, 2395, 995] } Block { BlockType Gain Name "Gust Scaling" Position [1560, 1345, 1615, 1385] Gain "0.125" ParameterDataTypeMode "Inherit via internal rule" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Reference Name "IP-Quadrature" Ports [0, 4] Position [90, 1861, 195, 1979] BackgroundColor "yellow" SourceBlock "CustomBlocks/IP-Quadrature" SourceType "ipModule_sbs_ip-quadrature" carrierId "1" carrierSlot "C" channel "[1 2 3 4]" mode "[4 4 4 4]" sampleTime "Ts" Port { PortNumber 2 Name "W tape 50X" RTWStorageClass "Auto" DataLoggingNameMode "SignalName" } } Block { BlockType Gain Name "Kdd" Position [1965, 886, 2025, 934] Gain "Kdd" ParameterDataTypeMode "Inherit via internal rule" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Reference Name "LTI System" Ports [1, 1] Position [1365, 1632, 1460, 1668] SourceBlock "cstblocks/LTI System" SourceType "LTI Block" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData off RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" sys "NewElss3" IC "[]" } Block { BlockType Logic Name "Logical\nOperator" Ports [1, 1] Position [650, 1349, 680, 1381] Operator "NOT" AllPortsSameDT off OutDataTypeMode "boolean" } Block { BlockType Reference Name "LoopInSrc" Ports [1, 1] Position [625, 1425, 655, 1455] SourceBlock "simulink/Logic and Bit\nOperations/Compare\nTo Constant" SourceType "Compare To Constant" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData off RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" relop "~=" const "0" LogicOutDataTypeMode "uint8" ZeroCross off } Block { BlockType Saturate Name "MainLoopLim" Position [2150, 235, 2180, 265] UpperLimit "DacLim*2" LowerLimit "-DacLim*2" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Reference Name "Manual Switch" Ports [2, 1] Position [2530, 912, 2560, 948] SourceBlock "simulink/Signal\nRouting/Manual Switch" SourceType "Manual Switch" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData off RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" sw "1" action "0" varsize off } Block { BlockType Reference Name "Mean" Ports [1, 1] Position [2060, 605, 2115, 645] DialogController "dspDDGCreate" DialogControllerArgs "DataTag7" SourceBlock "dspstat3/Mean" SourceType "Mean" run off reset_popup "None" additionalParams off allowOverrides on outputMode "Same as accumulator" outputWordLength "32" outputFracLength "30" accumMode "Same as input" accumWordLength "32" accumFracLength "30" roundingMode "Floor" overflowMode off LockScale off } Block { BlockType MultiPortSwitch Name "Multiport\nSwitch" Ports [5, 1] Position [1140, 737, 1170, 783] zeroidx on InputSameDT off SaturateOnIntegerOverflow off SampleTime "Ts" } Block { BlockType MultiPortSwitch Name "Multiport\nSwitch1" Ports [3, 1] Position [2045, 1327, 2075, 1373] Inputs "2" zeroidx on InputSameDT off OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Mux Name "Mux" Ports [8, 1] Position [2260, 1674, 2300, 1781] ShowName off Inputs "8" DisplayOption "bar" } Block { BlockType Reference Name "N-Sample\nEnable" Ports [0, 1] Position [1630, 128, 1675, 172] SourceBlock "dspswit3/N-Sample\nEnable" SourceType "N-Sample Enable" N "10" ActiveLevel "High (1)" reset off TriggerType "Rising edge" Ts "Ts" DataType "Logical" } Block { BlockType Reference Name "N-Sample\nEnable1" Ports [0, 1] Position [30, 1473, 75, 1517] SourceBlock "dspswit3/N-Sample\nEnable" SourceType "N-Sample Enable" N "10e3" ActiveLevel "High (1)" reset off TriggerType "Rising edge" Ts "Ts" DataType "Logical" } Block { BlockType Reference Name "Observer" Ports [1, 1] Position [1705, 802, 1800, 838] Orientation "left" SourceBlock "cstblocks/LTI System" SourceType "LTI Block" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData off RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" sys "AltElRef" IC "[]" } Block { BlockType SubSystem Name "Observer Compensator" Ports [1, 1] Position [1760, 891, 1850, 929] MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "Observer Compensator" Location [43, 94, 605, 443] 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 "In1" Position [25, 133, 55, 147] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType DiscreteTransferFcn Name "Discrete\nTransfer Fcn" Position [160, 27, 220, 63] Numerator "[numdd]" Denominator "[dendd]" SampleTime "-1" } Block { BlockType DiscreteIntegrator Name "Discrete-Time\nIntegrator1" Ports [1, 1] Position [155, 220, 190, 260] IntegratorMethod "Integration: Forward Euler" ExternalReset "none" InitialConditionSource "internal" SampleTime "Ts" OutDataType "sfix(16)" OutScaling "2^0" ICPrevOutput "DiscIntNeverNeededParam" ICPrevScaledInput "DiscIntNeverNeededParam" } Block { BlockType Gain Name "Okd" Position [265, 29, 315, 61] Gain "Kod" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "Oki" Position [265, 224, 315, 256] Gain "Koi" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "Okp" Position [200, 123, 255, 157] Gain "Kop" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Sum Name "Sum3" Ports [3, 1] Position [355, 130, 375, 150] ShowName off IconShape "round" Inputs "+++" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "Out1" Position [465, 133, 495, 147] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "Discrete\nTransfer Fcn" SrcPort 1 DstBlock "Okd" DstPort 1 } Line { SrcBlock "Okd" SrcPort 1 Points [45, 0] DstBlock "Sum3" DstPort 1 } Line { SrcBlock "Oki" SrcPort 1 Points [45, 0] DstBlock "Sum3" DstPort 3 } Line { SrcBlock "Okp" SrcPort 1 DstBlock "Sum3" DstPort 2 } Line { SrcBlock "In1" SrcPort 1 Points [55, 0] Branch { Points [0, 100] DstBlock "Discrete-Time\nIntegrator1" DstPort 1 } Branch { DstBlock "Okp" DstPort 1 } Branch { Points [0, -95] DstBlock "Discrete\nTransfer Fcn" DstPort 1 } } Line { SrcBlock "Sum3" SrcPort 1 DstBlock "Out1" DstPort 1 } Line { SrcBlock "Discrete-Time\nIntegrator1" SrcPort 1 DstBlock "Oki" DstPort 1 } } } Block { BlockType Reference Name "OpenLoop" Ports [1, 1] Position [615, 1220, 645, 1250] SourceBlock "simulink/Logic and Bit\nOperations/Compare\nTo Constant" SourceType "Compare To Constant" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData off RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" relop "==" const "3" LogicOutDataTypeMode "uint8" ZeroCross off } Block { BlockType Reference Name "PCI-60A " Ports [] Position [15, 21, 123, 77] BackgroundColor "yellow" DropShadow on SourceBlock "CustomBlocks/PCI-60A " SourceType "ipCarrier_sbs_pci60a_pci" carrierId "1" pciSlot "-1" } Block { BlockType Reference Name "PCI-DAC6703 DA" Ports [1] Position [2845, 220, 2950, 280] BackgroundColor "yellow" SourceBlock "xpcmeasurementcomputinglib/D//A/PCI-DAC6703 DA" SourceType "dac6703_da" channel "[1]" reset "[1]" initValue "[0]" sampletime "Ts" slot "-1" } Block { BlockType Reference Name "Pack" Ports [3, 1] Position [1450, 2005, 1530, 2055] SourceBlock "xpclib/UDP/Pack" SourceType "xpcany2byte" datatypes "{'double','double','double'}" byteAlign "1" } Block { BlockType SubSystem Name "Position Encoder Handler" Ports [2, 3] Position [1005, 493, 1150, 557] MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "Position Encoder Handler" Location [274, 229, 987, 566] 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 "80" Block { BlockType Inport Name "Encoder In" Position [145, 83, 175, 97] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Inport Name "Abs In" Position [140, 218, 170, 232] Port "2" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "K1" Position [225, 73, 280, 107] ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "K2" Position [220, 206, 270, 244] ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" Port { PortNumber 1 Name "AbsEnc" RTWStorageClass "Auto" DataLoggingNameMode "SignalName" } } Block { BlockType Reference Name "N-Sample\nEnable" Ports [0, 1] Position [335, 128, 380, 172] SourceBlock "dspswit3/N-Sample\nEnable" SourceType "N-Sample Enable" N "6" ActiveLevel "High (1)" reset "off" TriggerType "Rising edge" Ts "Ts" DataType "Logical" } Block { BlockType Reference Name "Sample\nand Hold" Ports [1, 1, 0, 1] Position [440, 204, 490, 246] SourceBlock "dspsigops/Sample\nand Hold" SourceType "Sample and Hold" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData "off" RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" trig "Rising edge" initCond "0" latchinput "off" } Block { BlockType Sum Name "Sum" Ports [2, 1] Position [595, 80, 615, 100] ShowName off IconShape "round" Inputs "|++" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" Port { PortNumber 1 Name "AbsPlusTape" RTWStorageClass "Auto" DataLoggingNameMode "SignalName" } } Block { BlockType Switch Name "Switch" Position [560, 220, 590, 250] Threshold "0.5" InputSameDT off Port { PortNumber 1 Name "InitialAbsEnc" RTWStorageClass "Auto" DataLoggingNameMode "SignalName" } } Block { BlockType Outport Name "Position Out" Position [710, 83, 740, 97] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "Latched Abs" Position [705, 228, 735, 242] Port "2" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "Filtered Abs" Position [710, 283, 740, 297] Port "3" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "Abs In" SrcPort 1 DstBlock "K2" DstPort 1 } Line { SrcBlock "Encoder In" SrcPort 1 DstBlock "K1" DstPort 1 } Line { SrcBlock "N-Sample\nEnable" SrcPort 1 Points [0, 0; 75, 0] Branch { Points [5, 0] DstBlock "Sample\nand Hold" DstPort trigger } Branch { Points [75, 0; 0, 85] DstBlock "Switch" DstPort 2 } } Line { SrcBlock "Sample\nand Hold" SrcPort 1 DstBlock "Switch" DstPort 1 } Line { Name "InitialAbsEnc" Labels [0, 0] SrcBlock "Switch" SrcPort 1 Points [0, 0; 10, 0] Branch { DstBlock "Latched Abs" DstPort 1 } Branch { DstBlock "Sum" DstPort 2 } } Line { Name "AbsEnc" Labels [0, 0] SrcBlock "K2" SrcPort 1 Points [0, 0; 55, 0] Branch { DstBlock "Sample\nand Hold" DstPort 1 } Branch { Points [0, 65; 205, 0] Branch { DstBlock "Filtered Abs" DstPort 1 } Branch { Points [0, -45] DstBlock "Switch" DstPort 3 } } } Line { SrcBlock "K1" SrcPort 1 DstBlock "Sum" DstPort 1 } Line { Name "AbsPlusTape" Labels [0, 0] SrcBlock "Sum" SrcPort 1 DstBlock "Position Out" DstPort 1 } } } Block { BlockType Product Name "Product" Ports [2, 1] Position [1675, 1297, 1705, 1328] CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Product Name "Product1" Ports [2, 1] Position [2010, 1057, 2040, 1088] CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType SubSystem Name "Rate Feed Forward" Ports [1, 1, 1] Position [1700, 189, 1800, 231] TreatAsAtomicUnit on MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "Rate Feed Forward" Location [421, 301, 919, 601] 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 "In1" Position [105, 98, 135, 112] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType EnablePort Name "Enable" Ports [] Position [235, 20, 255, 40] } Block { BlockType DiscreteTransferFcn Name "Discrete\nDifferentiator" Position [190, 87, 250, 123] Numerator "[numdd]" Denominator "[dendd]" SampleTime "Ts" } Block { BlockType Outport Name "Out1" Position [400, 98, 430, 112] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "In1" SrcPort 1 DstBlock "Discrete\nDifferentiator" DstPort 1 } Line { SrcBlock "Discrete\nDifferentiator" SrcPort 1 DstBlock "Out1" DstPort 1 } } } Block { BlockType RateTransition Name "Rate Transition" Position [1300, 1799, 1340, 1841] } Block { BlockType RateTransition Name "Rate Transition1" Position [1580, 2009, 1620, 2051] } Block { BlockType RateTransition Name "Rate Transition2" Position [1915, 1379, 1945, 1421] } Block { BlockType Reference Name "Receive" Ports [0, 2] Position [1145, 1807, 1225, 1858] SourceBlock "xpclib/UDP/Receive" SourceType "xpcudpbytereceive" ipAddress "0.0.0.0" ipPort "54321" width "24" sampletime "Ts * 200" } Block { BlockType "S-Function" Name "S-Function Builder Encoder\nSynchronizer" Ports [2, 1] Position [470, 178, 630, 342] CopyFcn "set_param(gcbh,'LinkStatus','none')" OpenFcn "sfunctionwizard(gcbh)" FunctionName "encoder_sync" SFunctionModules "encoder_sync_wrapper " MaskType "S-Function Builder" MaskInitialization "val = [[.9 0.75 0.75 1 1 .9 .9 1]',[1 1 0.75 0.75 .9 .9 1 .9]'];\nsys = get_param(gcbh,'FunctionName');" MaskDisplay "plot(val(:,1),val(:,2))\ndisp(sys)\nport_label('input',1,'res_in')\nport_label('input',2,'ind_in')\nport_label('output',1,'enc_out')" MaskIconFrame on MaskIconOpaque on MaskIconRotate "none" MaskIconUnits "normalized" } Block { BlockType Saturate Name "Saturation1" Position [1210, 745, 1240, 775] UpperLimit "85" LowerLimit "15" SampleTime "Ts" } Block { BlockType Saturate Name "Saturation2" Position [2355, 905, 2385, 935] UpperLimit "DacLim" LowerLimit "-DacLim" SampleTime "Ts" } Block { BlockType Fcn Name "Scale to Torque" Position [1820, 1385, 1880, 1415] Expr "(0.0352 * (u^2)) * 1/15 * 3.75" } Block { BlockType Reference Name "Send" Ports [1] Position [1675, 2005, 1755, 2055] SourceBlock "xpclib/UDP/Send" SourceType "xpcudpbytesend" ipAddress "128.196.100.86" ipPort "1234" localPort "-1" sampletime "Ts * 200" } Block { BlockType Step Name "Step" Position [1915, 115, 1945, 145] Time "0.25" Before "1" After "0" SampleTime "0.001" } Block { BlockType Sum Name "Sum" Ports [2, 1] Position [2295, 240, 2315, 260] ShowName off IconShape "round" Inputs "|+-" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Sum Name "Sum1" Ports [2, 1] Position [2365, 240, 2385, 260] ShowName off IconShape "round" Inputs "|++" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Sum Name "Sum2" Ports [2, 1] Position [1665, 1070, 1685, 1090] ShowName off IconShape "round" Inputs "|+-" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Sum Name "Sum3" Ports [2, 1] Position [1505, 900, 1525, 920] ShowName off IconShape "round" Inputs "-+|" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Sum Name "Sum4" Ports [2, 1] Position [1900, 810, 1920, 830] Orientation "left" ShowName off IconShape "round" Inputs "|++" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Sum Name "Sum5" Ports [2, 1] Position [1280, 330, 1300, 350] ShowName off IconShape "round" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Sum Name "Sum6" Ports [2, 1] Position [2420, 275, 2440, 295] ShowName off IconShape "round" Inputs "|++" CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType MultiPortSwitch Name "SwCmd" Ports [3, 1] Position [1585, 227, 1615, 273] Inputs "2" zeroidx on InputSameDT off OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType MultiPortSwitch Name "SwDAC" Ports [3, 1] Position [2670, 227, 2700, 273] Inputs "2" zeroidx on InputSameDT off OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType MultiPortSwitch Name "SwFdbk1" Ports [3, 1] Position [1390, 290, 1420, 350] NamePlacement "alternate" Inputs "2" zeroidx on InputSameDT off OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType MultiPortSwitch Name "SwFdbk2" Ports [3, 1] Position [1515, 402, 1545, 448] NamePlacement "alternate" Inputs "2" zeroidx on InputSameDT off OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType MultiPortSwitch Name "SwTD" Ports [3, 1] Position [2505, 227, 2535, 273] Inputs "2" zeroidx on InputSameDT off OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType MultiPortSwitch Name "TapeHdSel" Ports [5, 1] Position [865, 1876, 900, 1974] zeroidx on InputSameDT off OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Constant Name "TapeHeadSel" Position [715, 1853, 770, 1887] Value "0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Constant Name "TapeOrAbs" Position [1065, 420, 1095, 450] OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType SubSystem Name "Ten Second Ramp" Ports [1, 1] Position [2180, 899, 2280, 941] MinAlgLoopOccurrences off RTWSystemCode "Auto" FunctionWithSeparateData off System { Name "Ten Second Ramp" Location [469, 241, 967, 541] 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 "In1" Position [15, 23, 45, 37] ShowName off IconDisplay "Signal name" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Constant Name "Constant" Position [25, 50, 55, 80] Value "0.1" OutDataType "sfix(16)" OutScaling "2^0" SampleTime "Ts" } Block { BlockType DiscreteIntegrator Name "Discrete-Time\nIntegrator" Ports [2, 1] Position [170, 56, 205, 89] IntegratorMethod "Integration: Forward Euler" gainval "0.5" ExternalReset "level" InitialConditionSource "internal" SampleTime "Ts" OutDataType "sfix(16)" OutScaling "2^0" LimitOutput on UpperSaturationLimit "1.0" LowerSaturationLimit "0.0" ICPrevOutput "DiscIntNeverNeededParam" ICPrevScaledInput "DiscIntNeverNeededParam" } Block { BlockType From Name "From" Position [25, 116, 65, 144] GotoTag "Reset" TagVisibility "global" } Block { BlockType Product Name "Product" Ports [2, 1] Position [385, 22, 415, 53] CollapseMode "All dimensions" InputSameDT off OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Saturate Name "Saturation2" Position [270, 60, 300, 90] UpperLimit "1" LowerLimit "0" } Block { BlockType Outport Name "Output" Position [455, 33, 485, 47] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "In1" SrcPort 1 DstBlock "Product" DstPort 1 } Line { SrcBlock "Product" SrcPort 1 DstBlock "Output" DstPort 1 } Line { SrcBlock "Constant" SrcPort 1 DstBlock "Discrete-Time\nIntegrator" DstPort 1 } Line { SrcBlock "From" SrcPort 1 Points [30, 0; 0, -50] DstBlock "Discrete-Time\nIntegrator" DstPort 2 } Line { SrcBlock "Saturation2" SrcPort 1 Points [35, 0; 0, -30] DstBlock "Product" DstPort 2 } Line { SrcBlock "Discrete-Time\nIntegrator" SrcPort 1 DstBlock "Saturation2" DstPort 1 } } } Block { BlockType Terminator Name "Terminator1" Position [280, 130, 300, 150] } Block { BlockType Terminator Name "Terminator2" Position [275, 170, 295, 190] } Block { BlockType Terminator Name "Terminator3" Position [1315, 1860, 1335, 1880] } Block { BlockType Terminator Name "Terminator4" Position [245, 1925, 265, 1945] } Block { BlockType Terminator Name "Terminator5" Position [245, 1965, 265, 1985] } Block { BlockType Constant Name "TestModeConstant" Position [390, 1425, 475, 1455] Value "0" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType MultiPortSwitch Name "TestSrcSelect" Ports [6, 1] Position [605, 1525, 675, 1705] Inputs "5" zeroidx on InputSameDT off OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Reference Name "Thru PID" Ports [1, 1] Position [615, 1160, 645, 1190] SourceBlock "simulink/Logic and Bit\nOperations/Compare\nTo Constant" SourceType "Compare To Constant" ShowPortLabels "FromPortIcon" SystemSampleTime "-1" FunctionWithSeparateData off RTWMemSecFuncInitTerm "Inherit from model" RTWMemSecFuncExecute "Inherit from model" RTWMemSecDataConstants "Inherit from model" RTWMemSecDataInternal "Inherit from model" RTWMemSecDataParameters "Inherit from model" relop "==" const "4" LogicOutDataTypeMode "uint8" ZeroCross off } Block { BlockType Fcn Name "To Deg Conversion" Position [790, 245, 850, 275] Expr "180 - (u * (360 / (2^25))) + 29.76160884" } Block { BlockType ToWorkspace Name "To Workspace" Position [2365, 1715, 2425, 1745] VariableName "modelsim" MaxDataPoints "inf" SampleTime "-1" SaveFormat "Array" } Block { BlockType Gain Name "ToArcsec" Position [390, 1548, 440, 1592] Gain "0.007" ParameterDataTypeMode "Inherit via internal rule" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Gain Name "ToSmall" Position [390, 1671, 435, 1709] Gain "1e-3" ParameterDataTypeMode "Inherit via internal rule" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Gain Name "ToVolts" Position [390, 1611, 435, 1649] Gain "0.2" ParameterDataTypeMode "Inherit via internal rule" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType Reference Name "Unbuffer" Ports [1, 1] Position [2165, 601, 2215, 649] SourceBlock "dspbuff3/Unbuffer" SourceType "Unbuffer" ic "0" } Block { BlockType UnitDelay Name "Unit Delay" Position [1615, 893, 1650, 927] SampleTime "Ts" } Block { BlockType UnitDelay Name "Unit Delay1" Position [1990, 803, 2025, 837] Orientation "left" SampleTime "Ts" } Block { BlockType UnitDelay Name "Unit Delay2" Position [1550, 1633, 1585, 1667] SampleTime "0.001" } Block { BlockType Reference Name "Unpack" Ports [1, 3] Position [1390, 1795, 1470, 1845] SourceBlock "xpclib/UDP/Unpack" SourceType "xpcbyte2any" dimensions "{1, 1, 1}" datatypes "{'double','double','double'}" byteAlign "1" } Block { BlockType Gain Name "Wind" Position [2130, 1323, 2210, 1377] Gain "WindGain * 0" ParameterDataTypeMode "Inherit via internal rule" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataTypeMode "Inherit via internal rule" OutDataType "sfix(16)" OutScaling "2^0" SaturateOnIntegerOverflow off } Block { BlockType RandomNumber Name "Wind Gust\nSource" Position [1455, 1290, 1485, 1320] SampleTime "Tw" } Block { BlockType Constant Name "Wind Speed,\nm/s" Position [1455, 1390, 1485, 1420] Value "10" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Gain Name "tape2deg" Position [315, 1890, 345, 1920] Gain "(1 / 364007) * -1 " ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" SampleTime "Ts" } Block { BlockType Gain Name "tape2deg1" Position [315, 1835, 345, 1865] Gain "1 / 364007" ParameterDataType "sfix(16)" ParameterScaling "2^0" OutDataType "sfix(16)" OutScaling "2^0" SampleTime "Ts" } Block { BlockType Outport Name "DACSignal" Position [2835, 168, 2865, 182] IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "Out2" Position [1640, 468, 1670, 482] Port "2" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "AbsoluteEncoderValue" Position [1215, 538, 1245, 552] Port "3" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "Vel2gui" Position [1955, 683, 1985, 697] Port "4" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "guiCommand" Position [1350, 703, 1380, 717] Port "5" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "guiMode" Position [1350, 668, 1380, 682] Port "6" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "EastTape" Position [555, 1793, 585, 1807] Port "7" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "WestTape" Position [540, 1948, 570, 1962] Port "8" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "VelError" Position [2590, 538, 2620, 552] Port "9" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "VelEstimate" Position [2590, 583, 2620, 597] Port "10" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "PosError" Position [2585, 633, 2615, 647] Port "11" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "SimWind" Position [2475, 1293, 2505, 1307] Port "12" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "DisturbanceEstimate" Position [2640, 868, 2670, 882] Port "13" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "ObserverError" Position [1795, 963, 1825, 977] Port "14" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "ExcitationSignal" Position [825, 1543, 855, 1557] Port "15" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "ChirpFreqs" Position [265, 1603, 295, 1617] Port "16" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "TestingValue" Position [615, 1123, 645, 1137] Port "17" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "PositionDemand" Position [1815, 323, 1845, 337] Port "18" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "Out1" Position [2590, 688, 2620, 702] Port "19" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Block { BlockType Outport Name "Out3" Position [2590, 743, 2620, 757] Port "20" IconDisplay "Port number" OutDataType "sfix(16)" OutScaling "2^0" } Line { SrcBlock "Absolute Encoders" SrcPort 1 DstBlock "Terminator1" DstPort 1 } Line { SrcBlock "Absolute Encoders" SrcPort 2 DstBlock "Terminator2" DstPort 1 } Line { SrcBlock "Absolute Encoders" SrcPort 3 DstBlock "S-Function Builder Encoder\nSynchronizer" DstPort 1 } Line { SrcBlock "Absolute Encoders" SrcPort 4 Points [70, 0; 0, 40] DstBlock "S-Function Builder Encoder\nSynchronizer" DstPort 2 } Line { SrcBlock "S-Function Builder Encoder\nSynchronizer" SrcPort 1 DstBlock "Data Type Conversion2" DstPort 1 } Line { SrcBlock "Data Type Conversion2" SrcPort 1 DstBlock "To Deg Conversion" DstPort 1 } Line { SrcBlock "IP-Quadrature" SrcPort 1 Points [50, 0; 0, -25] DstBlock "tape2deg1" DstPort 1 } Line { Name "W tape 50X" Labels [0, 0] SrcBlock "IP-Quadrature" SrcPort 2 DstBlock "tape2deg" DstPort 1 } Line { SrcBlock "IP-Quadrature" SrcPort 3 DstBlock "Terminator4" DstPort 1 } Line { SrcBlock "IP-Quadrature" SrcPort 4 Points [25, 0; 0, 10] DstBlock "Terminator5" DstPort 1 } Line { SrcBlock "Position Encoder Handler" SrcPort 3 DstBlock "AbsoluteEncoderValue" DstPort 1 } Line { SrcBlock "5-tap Median Filter" SrcPort 1 Points [45, 0] Branch { DstBlock "Position Encoder Handler" DstPort 2 } Branch { Points [0, -70] DstBlock "AbsOrTape" DstPort 2 } } Line { SrcBlock "Unpack" SrcPort 1 DstBlock "Byte Reversal1" DstPort 1 } Line { SrcBlock "Unpack" SrcPort 2 DstBlock "Byte Reversal1" DstPort 2 } Line { SrcBlock "Unpack" SrcPort 3 DstBlock "Byte Reversal1" DstPort 3 } Line { SrcBlock "Byte Reversal1" SrcPort 1 DstBlock "Goto1" DstPort 1 } Line { SrcBlock "Byte Reversal1" SrcPort 2 Points [30, 0; 0, 30] DstBlock "Goto2" DstPort 1 } Line { SrcBlock "Byte Reversal1" SrcPort 3 Points [20, 0; 0, 65] DstBlock "Goto3" DstPort 1 } Line { SrcBlock "Receive" SrcPort 1 DstBlock "Rate Transition" DstPort 1 } Line { SrcBlock "Rate Transition" SrcPort 1 DstBlock "Unpack" DstPort 1 } Line { SrcBlock "Receive" SrcPort 2 Points [35, 0; 0, 25] DstBlock "Terminator3" DstPort 1 } Line { SrcBlock "Byte Reversal" SrcPort 1 DstBlock "Pack" DstPort 1 } Line { SrcBlock "Byte Reversal" SrcPort 2 DstBlock "Pack" DstPort 2 } Line { SrcBlock "Byte Reversal" SrcPort 3 DstBlock "Pack" DstPort 3 } Line { SrcBlock "From2" SrcPort 1 DstBlock "Byte Reversal" DstPort 2 } Line { SrcBlock "From3" SrcPort 1 Points [40, 0; 0, -35] DstBlock "Byte Reversal" DstPort 3 } Line { SrcBlock "From1" SrcPort 1 Points [55, 0; 0, 40] DstBlock "Byte Reversal" DstPort 1 } Line { SrcBlock "Pack" SrcPort 1 DstBlock "Rate Transition1" DstPort 1 } Line { SrcBlock "Rate Transition1" SrcPort 1 DstBlock "Send" DstPort 1 } Line { SrcBlock "Rate Feed Forward" SrcPort 1 DstBlock "Elevation Axis Controller - VXWORKS type" DstPort 1 } Line { SrcBlock "N-Sample\nEnable" SrcPort 1 Points [70, 0] DstBlock "Rate Feed Forward" DstPort enable } Line { SrcBlock "tape2deg" SrcPort 1 DstBlock "Gain3" DstPort 1 } Line { SrcBlock "Position Encoder Handler" SrcPort 2 DstBlock "Goto8" DstPort 1 } Line { SrcBlock "From7" SrcPort 1 DstBlock "Elevation Axis Controller - VXWORKS type" DstPort 3 } Line { SrcBlock "From6" SrcPort 1 Points [40, 0] Branch { DstBlock "CPP/ no FIR Filter" DstPort 2 } Branch { Points [0, 165] Branch { DstBlock "Sum5" DstPort 1 } Branch { Points [35, 0; 0, 20] DstBlock "SwFdbk1" DstPort 2 } } } Line { SrcBlock "From8" SrcPort 1 Points [90, 0] Branch { Points [0, 65] DstBlock "Multiport\nSwitch" DstPort 1 } Branch { DstBlock "guiMode" DstPort 1 } } Line { SrcBlock "From9" SrcPort 1 DstBlock "Multiport\nSwitch" DstPort 2 } Line { SrcBlock "From10" SrcPort 1 Points [45, 0] Branch { Points [60, 0; 0, -40] Branch { Points [0, -10] DstBlock "Multiport\nSwitch" DstPort 3 } Branch { DstBlock "Multiport\nSwitch" DstPort 4 } } Branch { Points [0, 140] DstBlock "Discrete-Time\nIntegrator1" DstPort 3 } } Line { SrcBlock "From11" SrcPort 1 DstBlock "Gain" DstPort 1 } Line { SrcBlock "Gain" SrcPort 1 DstBlock "Discrete-Time\nIntegrator1" DstPort 1 } Line { SrcBlock "Discrete-Time\nIntegrator1" SrcPort 1 Points [15, 0; 0, -150] DstBlock "Multiport\nSwitch" DstPort 5 } Line { SrcBlock "Multiport\nSwitch" SrcPort 1 DstBlock "Saturation1" DstPort 1 } Line { SrcBlock "Saturation1" SrcPort 1 Points [30, 0] Branch { DstBlock "Goto9" DstPort 1 } Branch { Points [0, -50] DstBlock "guiCommand" DstPort 1 } } Line { SrcBlock "Compare\nTo Constant" SrcPort 1 Points [70, 0; 0, -30] DstBlock "Discrete-Time\nIntegrator1" DstPort 2 } Line { SrcBlock "From12" SrcPort 1 DstBlock "Compare\nTo Constant" DstPort 1 } Line { SrcBlock "From13" SrcPort 1 DstBlock "Difference" DstPort 1 } Line { SrcBlock "Difference" SrcPort 1 DstBlock "Gain1" DstPort 1 } Line { SrcBlock "tape2deg1" SrcPort 1 DstBlock "Gain2" DstPort 1 } Line { SrcBlock "Gain2" SrcPort 1 Points [45, 0] Branch { DstBlock "Goto11" DstPort 1 } Branch { Points [0, -50] DstBlock "EastTape" DstPort 1 } } Line { SrcBlock "Gain3" SrcPort 1 Points [45, 0] Branch { DstBlock "Goto4" DstPort 1 } Branch { Points [0, 50] DstBlock "WestTape" DstPort 1 } } Line { SrcBlock "From14" SrcPort 1 DstBlock "VelError" DstPort 1 } Line { SrcBlock "From15" SrcPort 1 DstBlock "VelEstimate" DstPort 1 } Line { SrcBlock "From16" SrcPort 1 DstBlock "PosError" DstPort 1 } Line { SrcBlock "From" SrcPort 1 DstBlock "5-tap Median Filter" DstPort 1 } Line { SrcBlock "From4" SrcPort 1 DstBlock "CPP/ no FIR Filter" DstPort 1 } Line { SrcBlock "DacOutLim" SrcPort 1 Points [25, 0] Branch { Points [0, -75] DstBlock "DACSignal" DstPort 1 } Branch { Points [0, 95] DstBlock "Goto18" DstPort 1 } Branch { DstBlock "PCI-DAC6703 DA" DstPort 1 } } Line { SrcBlock "Gain1" SrcPort 1 Points [15, 0] Branch { DstBlock "Buffer" DstPort 1 } Branch { Points [0, 65] DstBlock "Vel2gui" DstPort 1 } } Line { SrcBlock "Buffer" SrcPort 1 DstBlock "Mean" DstPort 1 } Line { SrcBlock "Mean" SrcPort 1 DstBlock "Unbuffer" DstPort 1 } Line { SrcBlock "Unbuffer" SrcPort 1 DstBlock "Goto10" DstPort 1 } Line { SrcBlock "Step" SrcPort 1 DstBlock "Goto5" DstPort 1 } Line { SrcBlock "Elevation Axis Controller - VXWORKS type" SrcPort 1 DstBlock "MainLoopLim" DstPort 1 } Line { SrcBlock "From17" SrcPort 1 Points [5, 0] DstBlock "Sum" DstPort 2 } Line { SrcBlock "Observer Compensator" SrcPort 1 Points [55, 0] Branch { DstBlock "Sum4" DstPort 2 } Branch { DstBlock "Kdd" DstPort 1 } Branch { Points [0, 155] DstBlock "Product1" DstPort 1 } } Line { SrcBlock "Wind Gust\nSource" SrcPort 1 DstBlock "Davenport Spectral Filter" DstPort 1 } Line { SrcBlock "Davenport Spectral Filter" SrcPort 1 DstBlock "Product" DstPort 1 } Line { SrcBlock "Gust Scaling" SrcPort 1 Points [35, 0; 0, -45] DstBlock "Product" DstPort 2 } Line { SrcBlock "Wind Speed,\nm/s" SrcPort 1 Points [40, 0] Branch { Points [0, -40] DstBlock "Gust Scaling" DstPort 1 } Branch { DstBlock "Add" DstPort 2 } } Line { SrcBlock "Product" SrcPort 1 Points [10, 0] DstBlock "Add" DstPort 1 } Line { SrcBlock "Add" SrcPort 1 DstBlock "Scale to Torque" DstPort 1 } Line { SrcBlock "Scale to Torque" SrcPort 1 DstBlock "Rate Transition2" DstPort 1 } Line { SrcBlock "Multiport\nSwitch1" SrcPort 1 DstBlock "Wind" DstPort 1 } Line { SrcBlock "From20" SrcPort 1 DstBlock "Compare\nTo Constant1" DstPort 1 } Line { SrcBlock "Compare\nTo Constant1" SrcPort 1 Points [20, 0; 0, 50] DstBlock "Multiport\nSwitch1" DstPort 1 } Line { SrcBlock "Ground" SrcPort 1 DstBlock "Multiport\nSwitch1" DstPort 2 } Line { SrcBlock "Rate Transition2" SrcPort 1 Points [55, 0; 0, -35] DstBlock "Multiport\nSwitch1" DstPort 3 } Line { SrcBlock "Wind" SrcPort 1 DstBlock "Digital Filter2" DstPort 1 } Line { SrcBlock "Sum" SrcPort 1 DstBlock "Sum1" DstPort 1 } Line { SrcBlock "From21" SrcPort 1 Points [85, 0] DstBlock "Sum1" DstPort 2 } Line { SrcBlock "From19" SrcPort 1 DstBlock "Unit Delay1" DstPort 1 } Line { SrcBlock "Unit Delay" SrcPort 1 Points [50, 0] Branch { DstBlock "Observer Compensator" DstPort 1 } Branch { Points [0, 60] DstBlock "ObserverError" DstPort 1 } } Line { SrcBlock "Unit Delay1" SrcPort 1 DstBlock "Sum4" DstPort 1 } Line { SrcBlock "From22" SrcPort 1 DstBlock "Sum2" DstPort 1 } Line { SrcBlock "From23" SrcPort 1 Points [75, 0] DstBlock "Sum2" DstPort 2 } Line { SrcBlock "Sum2" SrcPort 1 DstBlock "Gain-scheduled Kdd" DstPort 1 } Line { SrcBlock "Gain-scheduled Kdd" SrcPort 1 DstBlock "Product1" DstPort 2 } Line { SrcBlock "DDMode" SrcPort 1 DstBlock "Ten Second Ramp" DstPort 1 } Line { SrcBlock "Kdd" SrcPort 1 DstBlock "DDMode" DstPort 1 } Line { SrcBlock "Product1" SrcPort 1 Points [35, 0; 0, -145] DstBlock "DDMode" DstPort 2 } Line { SrcBlock "Digital Filter2" SrcPort 1 Points [60, 0] Branch { DstBlock "Goto13" DstPort 1 } Branch { Points [0, -50] DstBlock "SimWind" DstPort 1 } } Line { SrcBlock "N-Sample\nEnable1" SrcPort 1 Points [80, 0] DstBlock "Chirp Block" DstPort enable } Line { SrcBlock "SwCmd" SrcPort 1 Points [40, 0] Branch { Points [0, -40] DstBlock "Rate Feed Forward" DstPort 1 } Branch { DstBlock "Elevation Axis Controller - VXWORKS type" DstPort 2 } Branch { Points [0, 80] Branch { DstBlock "PositionDemand" DstPort 1 } Branch { Points [0, 45] DstBlock "Goto23" DstPort 1 } } } Line { SrcBlock "From25" SrcPort 1 DstBlock "SwCmd" DstPort 1 } Line { SrcBlock "CPP/ no FIR Filter" SrcPort 1 Points [50, 0; 0, 135] DstBlock "SwCmd" DstPort 2 } Line { SrcBlock "SwDAC" SrcPort 1 DstBlock "DacOutLim" DstPort 1 } Line { SrcBlock "From26" SrcPort 1 Points [15, 0; 0, 35] DstBlock "SwDAC" DstPort 1 } Line { SrcBlock "Chirp Block" SrcPort 1 Points [95, 0] Branch { DstBlock "ToArcsec" DstPort 1 } Branch { Points [0, 60] Branch { Points [0, 60] DstBlock "ToSmall" DstPort 1 } Branch { DstBlock "ToVolts" DstPort 1 } } } Line { SrcBlock "Chirp Block" SrcPort 2 DstBlock "ChirpFreqs" DstPort 1 } Line { SrcBlock "From28" SrcPort 1 DstBlock "Out1" DstPort 1 } Line { SrcBlock "From29" SrcPort 1 DstBlock "Out3" DstPort 1 } Line { SrcBlock "Observer" SrcPort 1 DstBlock "Discrete\nNotch Filter @ 5.56 Hz" DstPort 1 } Line { SrcBlock "SwTD" SrcPort 1 DstBlock "SwDAC" DstPort 2 } Line { SrcBlock "Sum1" SrcPort 1 Points [10, 0] Branch { DstBlock "SwTD" DstPort 2 } Branch { Points [0, 35] DstBlock "Sum6" DstPort 1 } } Line { SrcBlock "From27" SrcPort 1 Points [120, 0] Branch { DstBlock "Sum6" DstPort 2 } Branch { Points [205, 0; 0, -145] DstBlock "SwDAC" DstPort 3 } } Line { SrcBlock "To Deg Conversion" SrcPort 1 DstBlock "Goto20" DstPort 1 } Line { SrcBlock "Constant" SrcPort 1 DstBlock "Goto" DstPort 1 } Line { SrcBlock "Sum6" SrcPort 1 Points [20, 0; 0, -20] DstBlock "SwTD" DstPort 3 } Line { SrcBlock "From31" SrcPort 1 Points [10, 0; 0, 35] DstBlock "SwTD" DstPort 1 } Line { SrcBlock "SwFdbk2" SrcPort 1 Points [25, 0] Branch { DstBlock "Goto7" DstPort 1 } Branch { Points [0, 50] DstBlock "Out2" DstPort 1 } } Line { SrcBlock "From35" SrcPort 1 Points [20, 0; 0, 15] DstBlock "SwFdbk2" DstPort 1 } Line { SrcBlock "From36" SrcPort 1 DstBlock "SwFdbk2" DstPort 3 } Line { SrcBlock "SwFdbk1" SrcPort 1 Points [105, 0; 0, -55] DstBlock "SwCmd" DstPort 3 } Line { SrcBlock "From24" SrcPort 1 Points [55, 0] DstBlock "Sum5" DstPort 2 } Line { SrcBlock "Sum5" SrcPort 1 DstBlock "SwFdbk1" DstPort 3 } Line { SrcBlock "From34" SrcPort 1 Points [95, 0; 0, 30] DstBlock "SwFdbk1" DstPort 1 } Line { SrcBlock "TestModeConstant" SrcPort 1 Points [55, 0] Branch { DstBlock "LoopInSrc" DstPort 1 } Branch { Points [0, -75] Branch { DstBlock "FreezeCmd" DstPort 1 } Branch { Points [0, -70] Branch { DstBlock "DisturbReject" DstPort 1 } Branch { Points [0, -60] Branch { DstBlock "OpenLoop" DstPort 1 } Branch { Points [0, -65] Branch { Points [0, -40] DstBlock "TestingValue" DstPort 1 } Branch { Points [0, 5] DstBlock "Thru PID" DstPort 1 } } } } } Branch { Points [0, 50] Branch { Points [0, 50] DstBlock "TestSrcSelect" DstPort 1 } Branch { DstBlock "Goto24" DstPort 1 } } } Line { SrcBlock "Ground1" SrcPort 1 DstBlock "TestSrcSelect" DstPort 2 } Line { SrcBlock "TestSrcSelect" SrcPort 1 Points [65, 0] Branch { DstBlock "Goto15" DstPort 1 } Branch { Points [0, -65] DstBlock "ExcitationSignal" DstPort 1 } } Line { SrcBlock "LoopInSrc" SrcPort 1 DstBlock "Goto17" DstPort 1 } Line { SrcBlock "FreezeCmd" SrcPort 1 DstBlock "Logical\nOperator" DstPort 1 } Line { SrcBlock "Logical\nOperator" SrcPort 1 DstBlock "Goto21" DstPort 1 } Line { SrcBlock "DisturbReject" SrcPort 1 DstBlock "Goto14" DstPort 1 } Line { SrcBlock "OpenLoop" SrcPort 1 DstBlock "Goto16" DstPort 1 } Line { SrcBlock "ToArcsec" SrcPort 1 Points [55, 0; 0, 30] DstBlock "TestSrcSelect" DstPort 3 } Line { SrcBlock "ToSmall" SrcPort 1 DstBlock "TestSrcSelect" DstPort 6 } Line { SrcBlock "ToVolts" SrcPort 1 Points [60, 0] Branch { DstBlock "TestSrcSelect" DstPort 4 } Branch { Points [0, 30] DstBlock "TestSrcSelect" DstPort 5 } } Line { SrcBlock "From30" SrcPort 1 DstBlock "LTI System" DstPort 1 } Line { SrcBlock "LTI System" SrcPort 1 DstBlock "Unit Delay2" DstPort 1 } Line { SrcBlock "Thru PID" SrcPort 1 DstBlock "Goto22" DstPort 1 } Line { SrcBlock "Mux" SrcPort 1 DstBlock "To Workspace" DstPort 1 } Line { SrcBlock "From32" SrcPort 1 DstBlock "Mux" DstPort 1 } Line { SrcBlock "From33" SrcPort 1 Points [15, 0; 0, -25] DstBlock "Mux" DstPort 2 } Line { SrcBlock "From37" SrcPort 1 Points [5, 0; 0, -55] DstBlock "Mux" DstPort 3 } Line { SrcBlock "From38" SrcPort 1 Points [30, 0; 0, -85] DstBlock "Mux" DstPort 4 } Line { SrcBlock "From39" SrcPort 1 Points [65, 0; 0, -115] DstBlock "Mux" DstPort 5 } Line { SrcBlock "From40" SrcPort 1 Points [85, 0; 0, -145] DstBlock "Mux" DstPort 6 } Line { SrcBlock "From41" SrcPort 1 Points [135, 0; 0, -180] DstBlock "Mux" DstPort 7 } Line { SrcBlock "Ground2" SrcPort 1 Points [55, 0; 0, -45] DstBlock "Manual Switch" DstPort 2 } Line { SrcBlock "Manual Switch" SrcPort 1 Points [15, 0] Branch { DstBlock "Goto6" DstPort 1 } Branch { Points [0, -55] DstBlock "DisturbanceEstimate" DstPort 1 } } Line { SrcBlock "From42" SrcPort 1 Points [160, 0; 0, -210] DstBlock "Mux" DstPort 8 } Line { SrcBlock "Unit Delay2" SrcPort 1 DstBlock "Goto19" DstPort 1 } Line { SrcBlock "Position Encoder Handler" SrcPort 1 Points [25, 0; 0, -20] DstBlock "AbsOrTape" DstPort 3 } Line { SrcBlock "AbsOrTape" SrcPort 1 Points [175, 0; 0, -45] DstBlock "SwFdbk2" DstPort 2 } Line { SrcBlock "TapeHeadSel" SrcPort 1 Points [45, 0; 0, 15] DstBlock "TapeHdSel" DstPort 1 } Line { SrcBlock "TapeOrAbs" SrcPort 1 Points [65, 0; 0, 20] DstBlock "AbsOrTape" DstPort 1 } Line { SrcBlock "Discrete\nNotch Filter @ 5.56 Hz" SrcPort 1 Points [-60, 0] DstBlock "Sum3" DstPort 1 } Line { SrcBlock "From18" SrcPort 1 DstBlock "Sum3" DstPort 2 } Line { SrcBlock "Sum3" SrcPort 1 DstBlock "Unit Delay" DstPort 1 } Line { SrcBlock "Sum4" SrcPort 1 DstBlock "Observer" DstPort 1 } Line { SrcBlock "Ten Second Ramp" SrcPort 1 DstBlock "Saturation2" DstPort 1 } Line { SrcBlock "Saturation2" SrcPort 1 DstBlock "Manual Switch" DstPort 1 } Line { SrcBlock "From5" SrcPort 1 Points [45, 0] Branch { DstBlock "65Hz Notch1" DstPort 1 } Branch { Points [0, -150] DstBlock "TapeHdSel" DstPort 3 } } Line { SrcBlock "From43" SrcPort 1 Points [15, 0] Branch { DstBlock "65Hz Notch" DstPort 1 } Branch { Points [0, -110] DstBlock "TapeHdSel" DstPort 2 } } Line { SrcBlock "65Hz Notch" SrcPort 1 Points [25, 0; 0, -70] DstBlock "TapeHdSel" DstPort 4 } Line { SrcBlock "65Hz Notch1" SrcPort 1 Points [45, 0; 0, -110] DstBlock "TapeHdSel" DstPort 5 } Line { SrcBlock "TapeHdSel" SrcPort 1 DstBlock "Goto25" DstPort 1 } Line { SrcBlock "From44" SrcPort 1 Points [130, 0; 0, 30] DstBlock "Position Encoder Handler" DstPort 1 } Line { SrcBlock "MainLoopLim" SrcPort 1 Points [15, 0] Branch { DstBlock "Sum" DstPort 1 } Branch { Points [0, -50] DstBlock "Goto12" DstPort 1 } } Annotation { Name "P7" Position [213, 1858] } Annotation { Name "P8" Position [219, 1889] } Annotation { Name "README FOR TIPS" Position [226, 78] } Annotation { Name "Chirp signal in various flavors" Position [961, 1607] } Annotation { Name "TRUE if Open" Position [2633, 185] } Annotation { Name "Mode == 3" Position [2405, 171] } } } MatData { NumRecords 8 DataRecord { Tag DataTag7 Data " %)30 . 8 8 ( 0 % \" $ ! 0 . , 8 ( ! % \" $ $ 0 0 0 365A;@" } DataRecord { Tag DataTag6 Data " %)30 . , 8 ( ! % \" $ \" 0 0 ( 6UT " } DataRecord { Tag DataTag5 Data " %)30 . X P 8 ( @ % \" $ ! 0 % 0 \" $ 0 =F5R2!E87)L:65R('=O2P@82!D:7-T=7)B86YC92UD96-O=7!L:6YG(&EN<'5T(&)A0T*(\" @(%=I;F1'86EN(#T](# [(%=I;F0@9&ES='5R8F%N8V4@:6YP=70@9V%I;BX@4V5T('1O(#$@9F]R(&9U;&P@=VEN9\"!L;V%D+@T*(\" @($MI36]D95-E;\" ]/2 Q.R!&:7AE9\"!I;G1E9W)A;\"!G86EN(\"A+:2DN#0H@(\" @(\" @(\" @(\" @(#T](#([(%9AF5R;RP@=')A8VL@870@+3@@87)C2!R=6YN:6YG#0IT:&4@8V]N=')O;&QE0T*9&ES='5R8F%N8V4@9&5C;W5P;&EN9RDN(%=E)VQL(')E<&5A=\"!T:&ES('=I=&@@=&AE($1$1V%I;B!S970@=&\\@,2PU+\"!A;F0-\"C$P(\"AH:6=H+6%U=&AO2DL('-T86)I;&ET>2!L:6UI=',@86QL;W=I;F0T*,B!O8G-EBP@8V]L;&5C=\"!R97-P;VYS92!W:71H(&)O=&@@=F5R6YA;6EC0!4_*''6/LLYTCY?N:_ 37VBP 5O77MPS($__2Q^\",(0^[[Q-TM\\76ZJOYZOCAUNVT! L7&'N^[Y[S]_5]V(27;P0/KBZW9SL_>_(3],=GL62#^H=8:1](7W/Q<(*YZ[N3 _E&L_[=O:%SXQ]!.//57?OUGMK\\6Z2\\<^%3!Q &120;[UB&ZH=>KPOA2N+TA39Y$_6LB632=?4#__CWY4Y_Y 0*+^%(>Q\\^\\_;<*TEAO*K#[@A2SQ7AU(*XT) P'&77QK,A3(_0NX6J;Q>4#^SDH'T$/+O/PX !@ !@ @ & 4 ( !@ $ ! D P +!,N>Y 6F3^\"^\\C,V]: /KC^2A@)@$A RSW\\I=)Q,#\\BU_3,I/NIOAD:)_\"^7UF_#@ & & \" 8 !0 @ ! !@ $ \"0 # \"X\\9%\\&AMN/WS2#\")@:\\,_<;EB:(Y$LS[)4YWFB P4/\\V16AEOOL*_OEA]OKTN$[\\. . 8 ( !@ % \" $ ! 0 ) \" (%3:D[+YAP_#@ # & \" 8 !0 @ $ \"0 . > $ 8 ( 0 % \" 8 ! 0 . , 8 ( ! % \" 0 0 X P !@ @ $ 4 ( ! ! #@ # & \" 0 !0 @ $ $ . , 8 ( ! % \" 0 0 X P !@ @ $ 4 ( ! ! #@ # & \" 0 !0 @ $ $ . . 8 ( !@ % \" $ ! 0 ) \" !A #@ \"@# & \" , !0 @ ! 0 $ 0 H !D>6YA;6ECF5R &YC;V5F9G, 34%43$%\"(&%R\\_ ;Y@RU\"%%<#'Y*\"ZO(DH0!^QOOPK=JE*$!AXYY?KMTMP-:CSI.Z9\"1 WB6H?%;##<\"YBV;T!R+B/PX P !@ @ & 4 ( ! D #@ # & \" 8 !0 @ $ \"0 . , 8 ( !@ % \" 0 ) X !( !@ @ - 4 ( !0 $ ! 8 4 W0( ! 0 ( #@ #@ & \" 0 !0 @ ! !@ $ $ 8 !D;W5B;&4 X P !@ @ & 4 ( ! D #@ #@ & \" 0 !0 @ ! !P $ $ < !&;F]T8V@R X ! \" !@ @ 1 $ 0 8 !H86YD;&4 $ * 9&9I;'0N9&8R= X #X!P !@ @ ! 4 ( ! $ ! X X 0 !@ @ ) 4 ( \" $ $ ! ( ( 0 0 4 !8 B * #H $ @! &1F:6QT &1F,G0 9FEL=&5R<75A;G1I>F5R &YC;V5F9G, 34%43$%\"(&%R;,T NJDE*YE1!P,5!61*P2$- E_L0M4VN.\\\": \\LJ( XI0 W1FFC*+ K &-JT3STOV#\\. > 8 ( !@ % \" $ ) 0 ) 2 / _R@.STH1)&\\!LW.?&77FID' ,B!C_=TI0T!;^D7B=M@ZP$&>6304MR= H\"XCKF0M\", :MSHN.F5R &YC;V5F9G, 34%43$%\"(&%R)$#NO;/,!Z<03-?\"PK0(1[\"!JAA0W ?6+)FV9.W#\\. > 8 ( !@ % \" $ ) 0 ) 2 / _R@.STH1)&\\!LW.?&77FID' ,B!C_=TI0T!;^D7B=M@ZP$&>6304MR= H\"XCKF0M\", :MSHN.F5R &YC;V5F9G, 34%43$%\"(&%RNH1(K*4#U+ICS3A@N0$*33D(W_C% EB49M.*#-4#H^5/.484Y0)YY?YZ@93U M0\"2,9A /D\"*,@NS0J$^0!R/EU0@V#Y L5A,>,3[/D K+VUY_10_0+.V]L[P)S] G)X-(-0V/T#,K'FX\\$(_0 Z%E8<333] D+\\A^\\)5/T /7 P@6UT_0$4U>5(=9#] Q>D>>3EJ/T\"TGT6TTV\\_0+6N-0$(=3] @#V]H^QY/T\"C>E'-DWX_0.0)O\\@,@S] '34MUF2'/T W5HG3IXL_0&8%R#)MCS] 4+%6O.\"//T\"5A9M%&I0_0.'5N?I>F#] TS*3^+FL>.>&[/T!DNMC)M\\(_0']+U%9JRC] ,[;!D3S3/T AZ_$ICMT_0.?QT7/KZ3] [W!@=BOY/T#TYDWU5 9 0&%?X8E@$T! BUQP\\?,E0$\".3$#?X$) 0$T!9*#6=D! [JF_Y'2^0$!<,)2A5^Y 0/*+--*/#4% [>('3;4C04\"(3Q]\"8#1!0#TXH]A\\04% X$:F5\"I,04 P MC9&U5!0 \\(JAK'7$% LB-IRGQC04\"8TK)&=FE!0/*+(:7=;D% TX-@JM)S04#$^N'X;7A!0'@4H\"W#?$% Q[(+4^* 04 R!#HV(1!0/&_:Z&RB$% CJ7A_7F,04#S*AM/E8]!0*^N@;DXD$% IL.%2OB304 Y?-\\4PI=!0\"<%1?:?FT% T4Y/F9R?04#5K'3UPZ-!0!9JG>DCJ$% ,[!7!\\VL04#.2Q6IT[%!0!^FV7Q1MT% 2T_0QF>]04 E*P_.0L1!0)-^'ST?S$% <4'0ZE+504 0>7SA6^!!0-4>E8G[[4% &KW9,VO_04 X&!W'RA9\"0\"SJ&YDE.$) '::W>T!L0D\"^: 1G6,I\"0!& 3.S.JD- :7KZXQW^14 NJ* Y-TQ*0,J0OU(K[$U @@/!)$X03T\"C:%C+*Y)/0'U\"F'(=W$] P:L\"BQX&4$#<9D<9*Q=00,4TXC3](U! :RYV;A$N4$\"5$;>>13900#/DP_HC/5! 3-I'/@=#4$!2E$Z5+4A00'X.@\"O#3%! S_I.9.A04$\"4ZNBOM5100-/$DO\\]6%! [F5^9I!;4$!&OY$WN5Y00(\\B[<_\"85! R1NR*[9D4$#T;OU7FV=00/MX6D,3:E! ,ZRXRGEJ4$#U/!S&6&U00*^9T'@_<%! 5! T?%6]GE.[U9 64 8@8D'GN%:0/9SVF%9$F! J8]94KPW8T 3MJWKQOIF0-EIMYM5>FM S_#XJ:=M<$ QZTXBZJ1S0**F-^U3?7= U,(PS' 6?$!\\RRBK_,J 0.VCJ36$%(1 6_SBG,8\"B$#TG_[9 K:,0 0(] %=]D2R<0%0 TKYDC)Q M+JUFCKAG$\" @M,WC2V=0/1SW8(W0,S\"R7>%R)Y 4Y42%9?[GD![A>TXHBJ?0(.J)W9]+I] ]M+4A;=AGT#\\) 5)QY6?0!HTU6DWRY] JZG%A% !H$#1JS*'61Z@0,:(9;X=/:! 3F!+ AI>H$!%DFB^Z8&@0)3,<8=3J:! 8JVOSUO5H$#S%A>D80>A0)RT*W5,0:% -4-8&-B%H4!CLLXK&=FA0+1=@F!Q0:) >%K+5'/)HD 0\">K1:&\"C0'(:MJ7!!:1 SBN\">1JKI$ P/4Y-2R^+J$!0D812+XNH0+G!U5@OBZA +5[G7B^+J$\"G>,MD+XNH0+;()VHOBZA #I1*<\"^+J$ . B_T[^UQ03.>ZK3OS2/UP(JC-._Z&:)ZG!AT[];Q?0,FR73O['OYJ\"#TM*_0C';\\O[^*1.[N'FVYOT#8JZ6>I[._58*'8\\&IK;\\\"+>)5-/&EOU1C4J9$\\I^_/U3XD4_VEK^!]Y61-U:0OQO$'K4(#(>_QH,S2>(@@+^97V6\"3M]XORFQA2$28W:_ZY*1QQ7#;K]R#^-$8M9DOZSY? R$EEN_5$$HT3YW4;_(^_T>\\CI$O]46T<0@5S&_Y!OIT*L!)[_HU=%Q54 AO_=9P\\\\$;V3Y 7F*(@*#B/I\" C^,B_^@^N!69L]# [SYP:+%_QX#S/G\"Z''4R>'5;T03\\).3[K+>=)/[V,;33_L-;_Z\"UYH[TQ#O]!X]P>M@$N_RL9'R3:D4;^?6\\YFF#Y5O_\\LI0]G?5B_1CHN:5-06[\\38#P0(ZE=OS0UV\\KU>U^_=%U4)[]?8+^![R\",EK9@OZ2C%.6EP&\"_OSL1HX-]8+^,IS_F9=Q?OR;!C\"DE*EZ_.VC.ZW3K6[]02;!%>\"E9OSL!GM]*[E6_['9?];I\"4K]YY_9F_4Y,OPJYX>P[[T*_+Y)GEBG],[^I>/#8=FL?ORI R\\K:V06_U#!@0 C0^+YT3>T#/RSQOAA4)QL,!>J^R+XBC4R]Y+YP2JO3XP_AOK#,3T-MJ=R^H & SW]HV+Y0;N*UT_C4ON#Y3 CC'-*^@%#Y,GY9S[Y 90'BF1K+OB !6\\GD5L>^@%R\\AH[RP[Z@9=Z^O=C O@!I99C&\\KN^ #<9I)>/MKZ 9!#H3'.QOH!.85)6&:F^ (5BW'DSG[X ($WSQ36)O@#H5LA4N6D^ /R!GAD>=SX VG+#.HK\"Q/\"/H\"J&+>J%\\4^@)X>9?I@R#X QM[G!0+,/O\"U(]/\\\"= ^P+[838A2+F!<_?M2CX@F,'#]3PCB(%5D?/Q<&_\"=F62(_=D@5V= 2,3\\_7WY.C;\\Q/S-##IWS!3(_@ZQ,@-*X,C]\\)YPY B4S/XU$?8,#_:V2H7Q1_XOPK4T?[*+]4$R^3'K@IO[3-.%:3V2F_KIK+J,Y?*;^H3QT<.4XHORC*U3J'JR:_'CQ;,\\J!)+\\8A?LXF-XAOU$,JK[RIAV_!\\L\\&1?N%K]%19 T3 $1OUX#@)F;#@B_)MD )H*) +]LP-!37,#UOECH;P QSO D&N\\ !H8[P \"!:O 8%\"\\ ! 0KP , PO !B\\ ^+L) & @ )\".Z+5HY!' #NL:- ._$<#5N%+\\NIX-P#7TH?B%L@C FJ&'(!:1!,#SU5HTI1@!P#Y?59O46?R_JW]?$7ML][_8BJY;ST'SO_SM*RQG]*_^\"=X993]RK_];H'9.AK#OTWW6<.Y,+J_=W<^ZP=IL;_E81L268*FOUU)W9]E:)R_P5[) F62D;^55H&2:F2%OWG0W$QXMGF_Q3U( LV6;K_J?IEE=@EBOX<;M6\"!&56_[W]3-2>?3+][_%:N]'A(O\\>LJG=A%SR_,T'QD?3(+[] *60[2)8AOVN>(-(0,&ZJO)_;YN<1E&[U;_OG O^&.Y20\"_-_TKE<7) +^&&HY3K3,!O_3B4' PC0&_Z/&)]UW: ;_J/ W7'1X\"OQGNH]N/6@*_,BE^;C!4> [\\Q.%'QSD<#OS *C'#E;P._,H8Y-,Z6 [_1I:XI\\KP#O[9L/XZRX@._=:VZV&P(!+\\@3OKM8RH$OW8C&PY^+@2_%O^TPT=5!+^)1F8W,7T$O]#%=:6NI@2_NF(H>T72!+_!<+[DDP %OU3;/J5:,@6_F5GXX(IH!;\\0\\8,06J0%O_B;8:QV![_QI8NIR1@(O_BBP)%G[0B_E'1PVCP3\"K^W6\\4U>,<+OPC/.,_LE@Z_20WM\\*H+$K_>.2C53I,9OZ;U!92EG\">_H.L&+!GZ,[]TZ!OF^RX^O[Q-7GG\\&T6_\"VOXW0SL2[\\Y,-I7O+)1OXKC :ALL56_FA'\\BR+>6;\\+Y!/\\!R1>OTBR]O?E-F&_S%A9UP538[]$T_-JWEMEOX?&Z.U*1V>_\\'=C=[D+:;^F]G*76J!JO]0'>#!-_6N_RGVFL,4;;;\\#UNGF+_9MOV%DK.38)+]-U8D-I&42OR[A._\\W!_J^P&>]/%7BX[XG'.,,A![7OL8@U316\"]2^O01 <<'ATK[B)@OKLD32OEGC.)SXXM&^3O\"\".L:?T;X>8YPL5&[1OLJC>>P82-&^&_='-6,IT;[:PN53] _1OCA(O$]:^M\"^?Q7GO)OGT+ZZOZO;\"=?0OG4-31PFR-\"^9:./%)*ZT+Z#\\FQ@!:[0OEV\\@@)'HM\"^FSCBZ\"B7T+[1-QS+A(S0OH/W#^8Y@M\"^FW]]1RMXT+[S+XZ4H&_0OB%@'(0^;M\"^385#45IDT+Y\\L]<09EK0OGQF1TE(4-\"^QM0ZY.5%T+X :B;S(#O0OO;S^C_7+]\"^^((S=. CT+YQ;5F<\"Q?0OH*!^*X;\"=\"^.D#I$(7SS[[ )#O=,M'/OOKH= ,KJL^^0JZJ:^I\\S[X6F5:J0D?/OKFDNOCL!<^^BB/D8[ZSSKXR $KG#$C.ODTU<-X>L\\V^R@]N,RG5S+XXKE(W\"&/+OO9 M.LB^>H)'+;;*Q;ZI\"^0S] ^%-#SKY_F]+?/S[3ON>%JR^F,=B^>^NV/S(BZ^[+ZI&MH:? ;ROF4:[8EI O>^J\\*.,E5+_KZ\"*,UK\"8X!OWA\\$)M<% 6_3-(:#P5=\"K]/4^K;J:T3OT1\"/+M^Y1J_U.!U<>T8(+]'0D)L15XAOX'P@7A\\B\"6_=$25X!G>*;\\VZ-(#:4HNOQP OK'Z6S&__] I0XN(,[\\B;::[-J UOW07VY^LF#>_,K23<^O\\O)+]^R#8'DJ4@OZH.4KJ1R1F_@/FI&!< $[\\G%W 'Y2,*OW2G4E34/0\"_PNZ9C59)\\[[Z75$D\":3EOC:2KXJ[G=>^5D-AHQMAR+XW.M+[8M6VOOBD4EX9!:*^X$^80BQCA+X;C!P .=93O@\" Z5-)2PN\\ &\"VQSI+\"[P &4GM03 NP ]S?&!,\"[ \"\\[],EF[L - 60\"6;NP J.&F-8.[ !H\"Z4U@[L $!$2EUQNP R/Q:77&[ \" RZ >%H X+H #8[@G0N@ \" &=KRZ 8)=OI+H @] :+N@ $\"]-/,X#@ % ( & \" 8 !0 P ! 0 ,! 0 ) & @ /RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E __*GQTDUB4#_\\J?'236)0/_RI\\=)-8E _#@ # & \" 8 !0 @ $ \"0 . , 8 ( !@ % \" 0 ) X X !@ @ $ 4 ( 0 4 ! ! % 3$ X !@ !@ @ ! 4 ( 0 $ ! X P !@ @ $ 4 ( ! ! #@ & & \" $ !0 @ ! 0 $ #@ # & \" 0 !0 @ $ $ . * 8 ( 0 % \" 0 . , 8 ( !@ % \" 0 ) X X !@ @ & 4 ( 0 $ ! D ( \\#\\. & $ 8 ( @ % \" $ ! 0 % 0 !P $ . 8W)E871E &QAKXX=;MM 0+%QA[ON^>\\_?U?=B$EV\\$#ZXNMV<[/WOR$_3'9[%D@_J'6&D?2%]S\\7\"\"N>N[DP/Y1K/^W;VA<^,?03CSU5W[]9[:_%NDO'/A4P<0!D4D&^]8ANJ'7J\\+X4KB](4V>1/UK(EDTG7U __X]^5.?^0$\"B_A2'L?/O/VW\"M)8;RJP^X(4L\\5X=7#^P99\"I3D5 P(+[ %154Q\\_F@8NHUW'[\\#0E@A489?./^0L4&8O^N\\_%J305MBV]K_3SLS1RZ:0OV,ZF[29]X(^^@'B\"N-\"0,!QEU\\:S(4R/T+N%JF\\7E _LY*!]!#R[S\\. . 8 ( ! % \" $ & 0 0 !@ &)?96Q?9 #@ & & \" 8 !0 @ & 0 $ \"0 # !7#U@O#1*4/[.8#JY?\\7H^^?X[X*\"90T!X_/EOMT\\J/X$2]Z-0R:2^$T@?P)A,5+\\. . 8 ( ! % \" $ & 0 0 !@ &-?96Q?9 #@ & & \" 8 !0 @ ! !@ $ \"0 # \"X\\9%\\&AMN/WS2#\")@:\\,_<;EB:(Y$LS[)4YWFB P4/\\V16AEOOL*_OEA]OKTN$[\\. . 8 ( ! % \" $ & 0 0 !@ &1?96Q?9 #@ #@ & \" 8 !0 @ ! 0 $ \"0 @ #-0H@+\"1\\7/PX P !@ @ $ 4 ( 0 ( ! ! @!4

\\_ ;Y@RU\"%%<#'Y*\"ZO(DH0!^QOOP.>7Z[=+<#6H\\Z3NF0D0-XEJ'Q6PPW N8MF] )$#NO;/,!Z<03-?\"PK0(1[\"!JAA0W ?6+)FV9.W#\\. . 8 ( ! % \" $ ' 0 0 !P &1E;FXX-60 #@ '@ & \" 8 !0 @ ! \"0 $ \"0 $@ #P/\\H#L]*$21O ;-SGQEUW-$ P\"O4'IJ9!P#(@8_W=*4- 6_I%XG;8.L!!GEDT%+;,T NJDE*YE1!P,5!61*P2$- E_L0M4VN.\\\": \\LJ( XI0 W1FFC*+ K &-JT3STOV#\\. . 8 ( ! % \" $ ' 0 0 !P &1E;FXS-60 #@ '@ & \" 8 !0 @ ! \"0 $ \"0 $@ #P/\\H#L]*$21O ;-SGQEUW-$ P\"O4'IJ9!P#(@8_W=*4- 6_I%XG;8.L!!GEDT%+):A\\5L,-P+F+9O0'(N(_#@ #@ & \" 0 !0 @ ! !@ $ $ 8 !N=6UR;V0 X !H !@ @ & 4 ( 0 < ! D X K1)K8%VDLC\\P >$7SJ[0O[GCQ$V-V]$_9#'-<&O'J#\\XY*O(4&W3OV4@#_7%*\\L_YW><8XRZJ+\\. . 8 ( ! % \" $ & 0 0 !@ &1E;G)O9 #@ &@ & \" 8 !0 @ ! !P $ \"0 #@ #P/]92/3ECO!7 !(U>K=JE*$!AXYY?KMTMP-:CSI.Z9\"1 WB6H?%;##<\"YBV;T!R+B/PX X !@ @ $ 4 ( 0 4 ! ! % 2VQO;W . . 8 ( !@ % \" $ ! 0 ) \" / _#@ # & \" 0 !0 @ ! @ $ $ \" $MP . . 8 ( !@ % \" $ ! 0 ) \" ,W,S,S,\\'I #@ # & \" 0 !0 @ ! @ $ $ \" $MI . . 8 ( !@ % \" $ ! 0 ) \" H(E #@ # & \" 0 !0 @ ! @ $ $ \" $MV . . 8 ( !@ % \" $ ! 0 ) \" / _#@ # & \" 0 !0 @ ! @ $ $ \" $MD . . 8 ( !@ % \" $ ! 0 ) \" (>_)FO40Z0_#@ #@ & \" 0 !0 @ ! !@ $ $ 8 !N=6UN,F0 X !X !@ @ & 4 ( 0 D ! D !( _&/G-7\\M[3^W+::7=( 9P.W\"C9)VV#K 09Y9-!2W)T\"@+B.N9\"T(P!JW.BXYR]4_#@ # & \" 0 !0 @ ! 0 $ $ ! &$ . 2 8 ( !@ % \" $ # 0 ) & / _X_=1$Q>(_[^(DVN>LIGO/PX P !@ @ $ 4 ( 0 $ ! ! 0!B #@ $@ & \" 8 !0 @ ! P $ \"0 !@ #$R35/V_A% ]3JI813_)X(FL6[@SOR2(=E3H/0T_7-U#[5?[23^W1[YKZ8 I/[N'#J/A9QQ_#\"[-2^N-@/)5[4US[*-HK;/C:UOCQ(YLF<^;L^^6T(\"%'Q=;Y -P=>L(68/O)M.]V/^Z6^'+MA/_+\"HSZ1%JS\"RM\"1OL.\\I[!0Q6D^B(#>C[^OGKZ%NN?NHE?'/F+[((?WC]Z^P:VHVN!;YCX-M.K\"^L;COAX4= M?,-4^MI2.>$Z N;X,!6P%3J&*/@KD B.A JZ^3$81PC.VV#X1L?G^LF_QOO6\\'AQ#5OL^'!>\\3,\"W^;YFD>%!80KM/A/%G@^?.=*^U@25N>V=HSZ\\'OMI&<\"XOH20O42Q4\\<^')Z2;3_< CU\"5A/#/PJQB84T[;(^S&0.:*2Q$S_2/)Y\"=6G\"ORLEX,'&UQ*_LVQ$JV-W9#]M&((?F&Z'OT5\\&77\"A)4_@J?T C]'W,,^^ #@ #@ & \" 0 !0 @ ! !@ $ $ 8 !+<%]696P X X !@ @ & 4 ( 0 $ ! D ( /$ . . 8 ( ! % \" $ & 0 0 !@ $MI7U9E; #@ #@ & \" 8 !0 @ ! 0 $ \"0 @ ]\"M>C<#W:/PX X !@ @ $ 4 ( 0 4 ! ! % 2U]21D8 . . 8 ( !@ % \" $ ! 0 ) \" '63& 16#LT_#@ #@ & \" 0 !0 @ ! !@ $ $ 8 !+9%]696P X X !@ @ & 4 ( 0 $ ! D ( T#\\. 0 8 ( ! % \" $ - 0 0 #0 %!?;&EM:71?=7!P97( . . 8 ( !@ % \" $ ! 0 ) \" %1 #@ $ & \" 0 !0 @ ! #0 $ $ T !07VQI;6ET7VQO=V5R #@ #@ & \" 8 !0 @ ! 0 $ \"0 @ T0 X X !@ @ $ 4 ( 0 8 ! ! & 1&%C3&EM . . 8 ( !@ % \" $ ! 0 ) \" !1 #@ # & \" 0 !0 @ ! ! $ $ $ $MP7W . . 8 ( !@ % \" $ ! 0 ) \" X&5 #@ # & \" 0 !0 @ ! ! $ $ $ $MI7W . . 8 ( !@ % \" $ ! 0 ) \" \"1 #@ # & \" 0 !0 @ ! ! $ $ $ $MV7W . . 8 ( !@ % \" $ ! 0 ) \" #1 #@ #@ & \" 0 !0 @ ! !P $ $ < !%;&XT7, X H\"P !@ @ 1 $ 0 8 !H86YD;&4 $ . ;'1I<&%C:RYS ( \"P ( $ \"@! &QT:7!A8VL 8 ( 0 % \" $ ! 0 . 2 8 ( #0 % \" 4 ! 0 & % -T\" 0 $ ! X !0 0 !@ @ \" 4 ( 0 $ ! 4 ! ) 0 \"0 !);G!U= !/=71P=70 !)3P !);G1E:[ROGJUT:X3[&\"^CD0]Z.(C1#Y&!CM-Y#,A/FK!+:54[^R]J* R=:-H+W17U-<;3!EO6H :3FJ?O(\\U28/I^F=E#Q^%0FL^I7-/\\982O86YN\\_C^ES.#UX&S\\B1K/C3US5OH&Q/ZAWAG\"^M_!%0 V^8CZ$@?37\\1<@OG[!%H';I]\\]^QD#,:95CSUO+1(6ZQ\\PO?*, K/JNZV_5QP3?4Y*X+_Y](D>Z\\GO/Y#G\"V\\UQXT_$JTZP*>=[SZB1.W[5NVCOE\"OE)^,X(H^J2V(]M*[+;XCX\\3S';#JO3UF$>BSPHL]J7B.B(#UUS]-J:U5O.S(/[V5>J,81^F_!\\.,C[\"T[S\\\"7F-M2 =S/RP^=Q9A^= NMK[L\\8LW81-C\"@I-VS]X(?^G=DKQOP+\"6F'MWN\\_6,ER'LU):#\\AES\"CR@+Q/NV1XN<&=*B^QR,T5M-J4;Y7*PR2H+>H/:H_=FH2].4_-$VK)XXTZC];/83_7]KTOY2]7MMPY.<_N[^^M@1J]K]\"W'AE2LOO/UVRQVO6[74_\\W,\\GV^@UKXP@U>>SXV@OCB?_#GKP54^TD,2\"SW;[;^U&$>&LP;[OP/XF0@/!/H_U[J?ETPP_[\\XZBF_#/CR/YT2,=,N/7.YFAP@_&^+3TKC H[ZU2[GL?1']OZ(V'5=+- ; DT(A\\PQ@\"D#]6CK('P(3YERO6DP= K4(IYH+=_+]:.S[P(Z$ 0#@Q]8_RWN\\_XJ= @J5Q4[^;;W<[QMOE/LFJ$WB.,70,W%C*[NOQ? QL?^]:$9%$ 56K\"N&.D0P(@C,MYL*01 \\!LN@&_& T\"+6]92&=KN/SLS9\"S_&V<_H7H\\8QRA'$#+F4,5^\\HF0*=EACP? K1N2]%K,[S\\. @ 8 ( !@ % \" H ! 0 ) 4 !XX:%85*AR_>O93*/Z]_+ZNK2:U6,/OOD-+&.7*KI*^$NSI/(D>A3X[!\\NGO0E(/H-<0?=Q1_>](V#7)!QCOCTA!7JXSS$YO?)KM)Y=6 (]#@ ( & \" 8 !0 @ ! \"@ $ \"0 % OU\\)$,&K0O_@U/T\"]]MH_XNGE^:GAW3^[J=)XPO;XP:]D_K>188^CFTS]E7<\\1^'[,/Y4B:5IH0L*_/DLCL?NAM3^M,:J'EV*F/PX X !@ @ & 4 ( 0 $ ! D ( . , 8 ( !@ % \" 0 ) X !8 @ !@ @ ! 4 ( \"@ $ ! X P !@ @ $ 4 ( 0 ( ! ! @!X,0 #@ # & \" 0 !0 @ ! @ $ $ \" '@R . , 8 ( ! % \" $ \" 0 0 ( >#, X P !@ @ $ 4 ( 0 ( ! ! @!X- #@ # & \" 0 !0 @ ! @ $ $ \" '@U . , 8 ( ! % \" $ \" 0 0 ( >#8 X P !@ @ $ 4 ( 0 ( ! ! @!X-P #@ # & \" 0 !0 @ ! @ $ $ \" '@X . , 8 ( ! % \" $ \" 0 0 ( >#D X P !@ @ $ 4 ( 0 , ! ! P!X,3 #@ #@ & \" 8 !0 @ ! 0 $ \"0 @ 80 X H P !@ @ # 4 ( 0 $ ! $ * 9'EN86UI8W-Y

3$ X X !@ @ \" 4 ( 0 $ ! 4 ! ! 0 . . 8 ( @ % \" $ ! 0 % 0 0 $ #@ # & \" 0 !0 @ $ $ . * 8 ( 0 % \" 0 . , 8 ( !@ % \" 0 ) X X !@ @ & 4 ( 0 $ ! D ( &$ . , 8 ( !@ % \" 0 ) X X !@ @ $ 4 ( 0 4 ! ! % 16QA X 8 ( P % \" $ ! 0 ! ( 6YA;6EC0!4(L>0.2UL2FSY0A C1'WH ^#&,#S969).?#XOT2KN:>0=!E O7IN3-&R#L\"]M/=!DY3H/P / _ \\#\\ #P/P / _ \\#\\ #P/P / _ \\#\\ X !X !@ @ & 4 ( \"0 $ ! D !( W %R%Z^+6[\\-[1-\"K@&,/^6\\+%19ZZB_3;TPLEY8N3^A:\"SPIAW O[50U8SA/;H_DJCK:V:WJK_.LIV-21F//[/P8 ZOL%^_#@ '@ & \" 8 !0 @ ! \"0 $ \"0 $@ #P/P . . 8 ( !@ % \" $ ! 0 ) \" #@ # & \" 8 !0 @ $ \"0 . ( ( 8 ( 0 % \" D ! 0 . , 8 ( ! % \" $ \" 0 0 ( >#$ X P !@ @ $ 4 ( 0 ( ! ! @!X,@ #@ # & \" 0 !0 @ ! @ $ $ \" '@S . , 8 ( ! % \" $ \" 0 0 ( >#0 X P !@ @ $ 4 ( 0 ( ! ! @!X-0 #@ # & \" 0 !0 @ ! @ $ $ \" '@V . , 8 ( ! % \" $ \" 0 0 ( >#< X P !@ @ $ 4 ( 0 ( ! ! @!X. #@ # & \" 0 !0 @ ! @ $ $ \" '@Y . . 8 ( !@ % \" $ ! 0 ) \" !A #@ \"@# & \" , !0 @ ! 0 $ 0 H !D>6YA;6EC7, X \"P! !@ @ 1 $ 0 8 !H86YD;&4 $ . ;'1I<&%C:RYT9F1A=&$ X !H! !@ @ ! 4 ( !@ $ ! X 8 0 !@ @ ) 4 ( Z $ ! ( #H 0 8 !( : ' \"@ X .@ &QT:7!A8VL =&9D871A $1E;&%Y %1S &YU;0!D96X $ \" $ ! ! , ! 0 ! 0 4 ! @ 8 ! P X !X !@ @ ! 4 ( 0 $ ! X !( !@ @ - 4 ( !0 $ ! 8 4 W0( ! 0 $ #@ %@! & \" ( !0 @ ! 0 $ !0 $ D ! ) $EN<'5T $]U='!U= $E/ $EN=&5R;F%L . . 8 ( !@ % \" $ ! 0 ) \" #@ #@ & \" 8 !0 @ ! 0 $ \"0 @ X X !@ @ & 4 ( 0 $ ! D ( . , 8 ( !@ % \" ! 0 ) X X !@ @ & 4 ( 0 $ ! D ( _*GQTDUB4#\\. > 8 ( 0 % \" $ ! 0 . 2 8 ( !@ % \" $ # 0 ) & ,3)-4_9S.\\_X_=1$Q>(_[_$R35/V\\_#@ #@ & \" 8 !0 @ ! 0 $ \"0 @ 80 X H P !@ @ # 4 ( 0 $ ! $ * 9'EN86UI8W-Y

0 #@ #@ & \" 8 !0 @ ! 0 $ \"0 @ $!_0 X P !@ @ $ 4 ( 0 ( ! ! @!F

\\_#@ #@ & \" 0 !0 @ ! !@ $ $ 8 !F:6QT-FX X H\"0 !@ @ # 4 ( 0 $ ! $ @!T9@ !0 $ D ! $@ %9A7, X \"P! !@ @ 1 $ 0 8 !H86YD;&4 $ . ;'1I<&%C:RYT9F1A=&$ X !H! !@ @ ! 4 ( !@ $ ! X 8 0 !@ @ ) 4 ( Z $ ! ( #H 0 8 !( : ' \"@ X .@ &QT:7!A8VL =&9D871A $1E;&%Y %1S &YU;0!D96X $ \" $ ! ! , ! 0 ! 0 4 ! @ 8 ! P X !X !@ @ ! 4 ( 0 $ ! X !( !@ @ - 4 ( !0 $ ! 8 4 W0( ! 0 $ #@ %@! & \" ( !0 @ ! 0 $ !0 $ D ! ) $EN<'5T $]U='!U= $E/ $EN=&5R;F%L . . 8 ( !@ % \" $ ! 0 ) \" #@ #@ & \" 8 !0 @ ! 0 $ \"0 @ X X !@ @ & 4 ( 0 $ ! D ( . , 8 ( !@ % \" ! 0 ) X X !@ @ & 4 ( 0 $ ! D ( _*GQTDUB4#\\. > 8 ( 0 % \" $ ! 0 . 2 8 ( !@ % \" $ # 0 ) & (S;281N9^\\_)KVL!,QF_[^,VTF$;F?O/PX !X !@ @ ! 4 ( 0 $ ! X !( !@ @ & 4 ( 0 , ! D 8 \\#\\FO:P$S&;_OQBWDPC=SNX_#@ #@ & \" 8 !0 @ ! 0 $ \"0 @ 80 X H P !@ @ # 4 ( 0 $ ! $ * 9'EN86UI8W-Y

\\_ ;Y@RU\"%%<#'Y*\"ZO(DH0!^QOOP7, X #P! !@ @ 1 $ 0 8 !H86YD;&4 $ . ;'1I<&%C:RYT9F1A=&$ X \"H! !@ @ ! 4 ( !@ $ ! X 8 0 !@ @ ) 4 ( Z $ ! ( #H 0 8 !( : ' \"@ X .@ &QT:7!A8VL =&9D871A $1E;&%Y %1S &YU;0!D96X $ \" $ ! ! , ! 0 ! 0 4 ! @ 8 ! P X !X !@ @ ! 4 ( 0 $ ! X !( !@ @ - 4 ( !0 $ ! 8 4 W0( ! 0 $ #@ %@! & \" ( !0 @ ! 0 $ !0 $ D ! ) $EN<'5T $]U='!U= $E/ $EN=&5R;F%L . . 8 ( !@ % \" $ ! 0 ) \" #@ #@ & \" 8 !0 @ ! 0 $ \"0 @ X X !@ @ & 4 ( 0 $ ! D ( . , 8 ( !@ % \" ! 0 ) X X !@ @ & 4 ( 0 $ ! D ( _*GQTDUB4#\\. F 8 ( 0 % \" $ ! 0 . : 8 ( !@ % \" $ ' 0 ) . %4Z#.D$@>\\_ ;Y@RU\"%%<#'Y*\"ZO(DH0!^QOOPK=JE*$!AXYY?KMTMP-:CSI.Z9\"1 WB6H?%;##<\"YBV;T!R+B/PX X !@ @ & 4 ( 0 $ ! D ( &$ . * , 8 ( P % \" $ ! 0 ! \"@ &1Y;F%M:6-S>7, % 0 # $ !L 26YP=71.86UE 3W5T<'5T3F%M90 26YP=71'6YA;6ECO3 V^_E */.-Y>;[_>JZN1R?UNOY0Q<-7%D_D^/R8SR=#]Y>M83],YR/Q#04B._PV\\_UCXW(<%E:#\\*2\"XA@%!?/\\I$2O/-T48_A$_*%V[61+\\O6'DM;=-@O^-VFH>DSVR_=4UR^69I=+]54-+^!$MT58$)MOS2\\D6C ^$J_\"W(A'T/I8C_N1P];J[!W/\\=BZ,5IDX,_OP+J?.'.BS^ED&@MP#22/]_U&$FJGY8_6MW)C785FS\\?9O:%.\\K#^8%&OR$T:L/SZHELW%@ZL_H\\3MM\"1YJC\\'%OR17)!5NA(:_<;RJV_D!A[^60904O[^&OYBT3^*SSX6_/G65<^5(A+]TE('#&D*\"O])'X%+2JW^_55#7'S<[>K]U37+Y9FETO^-VFH>DSVR_+UAY+6W38+^$3\\H7;M9$O\\I$2O/-T48_\"D@N(8!07S_6/C7K6$_3.E(@J=#^TI\"T6O!9R/T$?]I\"W'F\\_!'Q<-7%D_\",>4<%&&2#]+.G(1O\\ !OU4PB$*&C4F_KCMQO1806+_F;B1*71AAO_69-HX_=66_]<\\+X-@0:;_XU1^E.]UKOY0O3 V^_!Z7, X \"P! !@ @ 1 $ 0 8 !H86YD;&4 $ . ;'1I<&%C:RYT9F1A=&$ X !H! !@ @ ! 4 ( !@ $ ! X 8 0 !@ @ ) 4 ( Z $ ! ( #H 0 8 !( : ' \"@ X .@ &QT:7!A8VL =&9D871A $1E;&%Y %1S &YU;0!D96X $ \" $ ! ! , ! 0 ! 0 4 ! @ 8 ! P X !X !@ @ ! 4 ( 0 $ ! X !( !@ @ - 4 ( !0 $ ! 8 4 W0( ! 0 $ #@ %@! & \" ( !0 @ ! 0 $ !0 $ D ! ) $EN<'5T $]U='!U= $E/ $EN=&5R;F%L . . 8 ( !@ % \" $ ! 0 ) \" #@ #@ & \" 8 !0 @ ! 0 $ \"0 @ X X !@ @ & 4 ( 0 $ ! D ( . , 8 ( !@ % \" ! 0 ) X X !@ @ & 4 ( 0 $ ! D ( _*GQTDUB4#\\. > 8 ( 0 % \" $ ! 0 . 2 8 ( !@ % \" $ # 0 ) & ,\"'\"A!0?.\\_ZJ@A4H)V_[_ APH04'SO/PX !X !@ @ ! 4 ( 0 $ ! X !( !@ @ & 4 ( 0 , ! D 8 \\#_JJ\"%2@G;_OX /%2\"@^.X_#@ #@ & \" 8 !0 @ ! 0 $ \"0 @ 80 X H P !@ @ # 4 ( 0 $ ! $ * 9'EN86UI8W-Y

@ X \"0\" !@ @ # 4 ( 0 $ ! $ P!L=&D !0 $ L ! (0 $1A=&$ 5F5R6YA;6EC0!4 8 ( 0 % \" $ ! 0 . 2 8 ( #0 % \" 4 ! 0 & % -T\" 0 $ ! X !8 0 !@ @ \" 4 ( 0 $ ! 4 ! ) 0 \"0 !);G!U= !/=71P=70 !)3P !);G1E9^OZ_V$U'=1XW[S\\. > 8 ( 0 % \" $ ! 0 . 2 8 ( !@ % \" $ # 0 ) & / _+&3/1YGZ_K^PFX[J/&[N/PX X !@ @ & 4 ( 0 $ ! D ( &$ . * , 8 ( P % \" $ ! 0 ! \"@ &1Y;F%M:6-S>7, % 0 # $ !L 26YP=71.86UE 3W5T<'5T3F%M90 26YP=71'6YA;6EC ( \"P ( $ \"@! &QT:7!A8VL 8 ( 0 % \" $ ! 0 . 2 8 ( #0 % \" 4 ! 0 & % -T\" 0 $ ! X !0 0 !@ @ \" 4 ( 0 $ ! 4 ! ) 0 \"0 !);G!U= !/=71P=70 !)3P !);G1E 8 ( 0 % \" $ ! 0 . 2 8 ( #0 % \" 4 ! 0 & % -T\" 0 $ ! X X !@ @ & 4 ( 0 $ ! D ( &$ . @ < 8 ( @ % \" $ ! 0 % 0 % $ $ 0 8VQACZ_[]$LS>@.?G_O\\X'2C2@^_^_;A;/_(;X_[]< _K,*_S_OS88S5F'_/^_8APG12'X_[^T7S,ZM/S_OP8 / _ P \\#_K_______O/P$ / _#0 \\#_N_______O/_O______^\\_$@ \\#\\$ #P/P / _ \\#\\ #P/P / _ \\#\\ #P/P / _ \\#\\ #P/ZR>4-3%NO^_P$>#YER^_[_D*\\C%\\<#_OPK=!R/\\R/^_[%G38S'1_[\\5M1^<*]?_OSA\\SLUMYO^_&2'/:B'I_[^T$SICK/7_O]BH/8TN\\_*LG[I;?D[S]0OG@K]/#O/PX \" !@ @ & 4 ( \"@ $ ! D !0 *2@HT?>G[C\\ #P/P / _ \\#\\ #P/P / _ \\#\\ #P/P / _ \\#\\. , 8 ( !@ % \" 0 ) X P !@ @ & 4 ( ! D #@ # & \" 8 !0 @ $ \"0 . 2 8 ( #0 % \" 4 ! 0 & % -T\" 0 $ \" X X !@ @ $ 4 ( 0 8 ! ! & 9&]U8FQE . , 8 ( !@ % \" 0 ) X P !@ @ $ 4 ( 0 0 ! ! ! !F=F5C#@ ( & \" 8 !0 @ ! \"@ $ \"0 % \":F9F9F9FY/YJ9F9F9F?$_S$_#@ #@ & \" 0 !0 @ ! !0 $ $ 4 !+:4UA> X X !@ @ & 4 ( 0 $ ! D ( 9F9F9F;F(D . 0 8 ( ! % \" $ ) 0 0 \"0 $MI36]D95-E; . . 8 ( !@ % \" $ ! 0 ) \" ! #@ #@ & \" 0 !0 @ ! !@ $ $ 8 !$1$=A:6X X X !@ @ & 4 ( 0 $ ! D ( #D . . 8 ( ! % \" $ & 0 0 !@ $MD9$UA> #@ #@ & \" 8 !0 @ ! 0 $ \"0 @ #X/PX X !@ @ $ 4 ( 0 8 ! ! & 2V1D36EN . . 8 ( !@ % \" $ ! 0 ) \" 'L4KD?A>H0_#@ # & \" 0 !0 @ ! P $ $ # $MD9 . . 8 ( !@ % \" $ ! 0 ) \" /@_#@ #@ & \" 0 !0 @ ! \" $ $ @ !!;'1%;%)E9@X \"P\"0 !@ @ # 4 ( 0 $ ! $ P!Z<&L !0 $ X ! *@ $1I@!P &L ! @ ! 0 4 # 0 $ 0 $ % 0 ( & 0 , ' 0 0 X !X !@ @ ! 4 ( 0 $ ! X !( !@ @ - 4 ( !0 $ ! 8 4 W0( ! 0 $ #@ %@! & \" ( !0 @ ! 0 $ !0 $ D ! ) $EN<'5T $]U='!U= $E/ $EN=&5R;F%L . . 8 ( !@ % \" $ ! 0 ) \" #@ #@ & \" 8 !0 @ ! 0 $ \"0 @ X X !@ @ & 4 ( 0 $ ! D ( . , 8 ( !@ % \" ! 0 ) X X !@ @ & 4 ( 0 $ ! D ( _*GQTDUB4#\\. : 8 ( 0 % \" $ ! 0 . . 8 ( !@ % \" $ ! 0 ) \" #3U5=61\"=L_#@ ' & \" $ !0 @ ! 0 $ #@ $ & \" 8 !0 @ \" 0 $ \"0 ! \"W@ML4I__O/]3B/G+MZ.\\_#@ #@ & \" 8 !0 @ ! 0 $ \"0 @ !VLBE]/IVR/@X X !@ @ & 4 ( 0 $ ! D ( &$ . * , 8 ( P % \" $ ! 0 ! \"@ &1Y;F%M:6-S>7, % 0 # $ !L 26YP=71.86UE 3W5T<'5T3F%M90 26YP=71'6YA;6EC\\WICB- 2)@\\BQ;Q(T\"8POU(0U,D0.CLO@9PM21 .!> Q)P7)4\"(04&\"R7DE0-AK D#VVR5 *9;#_2(^)D!YP(2[3Z F0,GJ17E\\ B= &14'-ZED)T!I/\\CTU<8G0+EIB;(\"*2A \"91*<\"^+*$!:O@LN7.TH0*KHS.N(3RE ^A*.J;6Q*4!*/4]GXA,J0)IG$\"4/=BI ZI'1XCO8*D ZO)*@:#HK0(OF4UZ5G\"M VQ 5',+^*T K.];9[F L0'MEEY<;PRQ RX]854@E+4 ;NAD3=8\\WICC- ( -<+ # ,T!(F#R+%O$S0' M'>HL(C1 F,+]2$-3-$# 5]ZG680T0.CLO@9PM31 $(*?98;F-$ X%X#$G!<\"$NT^@-D\"A564:9M$V0,GJ17E\\ C= \\7\\FV)(S-T 9%05CU &[H9$W6'/4!#3_IQB[@]0&SDVM\"AZ3U E'F[+[@:/D\"\\#IR.SDL^0.2C?.WD?#Y ##E=3/NM/D TSCVK$=\\^0%QC'@HH$#] A/C^:#Y!/T\"LC=_'5'(_0-0BP\"9KHS] _+>@A8'4/T\"2ID#RRP) 0\";QL\"%7&T! NCLA4>(S0$!.AI& ;4Q 0.+0 ;#X9$! =AMRWX-]0$ *9N(.#Y9 0)ZP4CZ:KD! ,OO\";27'0$#&13.=L-] 0%N0H\\P[^$! []H3_,8004\"#)80K4BE!0!=P]%K=04% J[IDBFA:04 _!=6Y\\W)!0--/1>E^BT% 9YJU& JD04#[Y\"5(E;Q!0(\\OEG<@U4% (WH&IZOM04\"WQ';6-@9\"0$L/YP7\"'D) WUE7-4TW0D!SI,=DV$]\"0 ?O-Y1C:$) FSFHP^Z 0D OA!CS>9E\"0,/.B\"(%LD) 5QGY49#*0D#K8VF!&^-\"0'^NV;\"F^T) $_E)X#$40T\"G0[H/O2Q#0#N.*C](14- S]B:;M-=0T!C(PN>7G9#0/AM>\\WICD- C+CK_'2G0T @ UPL ,!#0+1-S%N+V$- 2)@\\BQ;Q0T#HL(D1 !'B-&;@Z1$\"8POU(0U-$0\"P-;GC.:T1 P%?>IUF$1$!4HD[7Y)Q$0.CLO@9PM41 ?# Q)P714#,8?#S)S!%0&\"L8\".S2$5 ]/;04CYA14\"(04&\"R7E%0!R,L;%4DD5 L-8AX=^J14!$(9(0:\\-%0-AK D#VVT5 ;+9R;X'T14 >.># U&0)5+4\\Z7)49 *9;#_2(^1D\"]X#,MKE9&0%$KI%PY;T9 Y744C,2'1D!YP(2[3Z!&0 T+]>K:N$9 H55E&F;11D UH-5)\\>E&0,GJ17E\\ D= 736VJ <;1T#Q?R;8DC-'0(7*E@<>3$= &14'-ZED1T\"M7W=F-'U'0$&JYY6_E4= U?17Q4JN1T!I/\\CTU<9'0/V).\"1AWT= D=2H4^SW1T E'QF#=Q!(0+EIB;(\"*4A 3;3YX8U!2$#A_FD1&5I(0'5)VD\"D24 6GER\\_39)0*KHS.N(3TE /C,]&Q1H24#2?:U*GX!)0&;('7HJF4E ^A*.J;6Q24\".7?[80,I)0\"*H;@C,XDE MO+>-U?[24!*/4]GXA-*0-Z'OY9M+$I S2]J\\U+0$?&I.PVYDM VQ 5',+^2T!O6X5+31=,0 .F]7K8+TQ E_!EJF-(3$ K.];9[F!,0+^%1@EZ>4Q 4]\"V. 623$#G&B=HD*I,0'MEEY<;PTQ #[ 'QZ;;3$\"C^G?V,?1,0#=%Z\"6]#$U RX]854@E34!?VLB$TSU-0/,D.;1>5DU AV^IX^EN34 ;NAD3=8=-0*\\$BD( H$U 0T_Z<8NX34#7F6JA%M%-0&SDVM\"AZ4U \"]+ \"T\"3D\"4>;LON!I.0\"C$*U]#,TY O Z.[L''\"53D ,.5U,^ZU.0*\"#S7N&QDY -,X]JQ'?3D#(&*[:G/=.0%QC'@HH$$] \\*V..;,H3T\"$^/YH/D%/0!A#;YC)64] K(W?QU1R3T . D!0 8 ( !@@ % # $ ! 10$ ! D H\"@ DQM,W$+#\\3]DA]ZQ];KQ/R;^+J8,M/$_A)\"9?5VM\\3][2ZKJ?*7Q/RR;J#C$FO$_M2< KDR+\\3^(\\$X7^'3Q/]*AE6V35?$_\"U*B01@K\\3_=:ON@!/3P/RY\\&?.OK_ _P*'WJW=>\\#_DF>(>IP'P/RS&YL<\\-N\\__(Y 9,59[C\\SB!(3H7'M/W]K;*P@@>P_:ET,3X2+ZS^F&:4?9Y3J/TY=VN/>G^D_(*SZ7\".RZ#]@*FNDWL[G/U#-+DQ_^.8_E=N:MN4OYC^'=V=%DW3E/]( .#@_Q>0_/M#*/8D@Y#^K#\"0??H7C/R6U'DW!\\^(_C62,>5QKXC]7J-T)8.SA/]B>)EN1=N$_=QY5(%4)X3_(A+':W*/@/]XMJ%-V1> _\"D9+AI7;WS_7LA3(T#G?/_2$R3\\CIMX_(Z?Y-]L@WC^#VDU:C:G=/P@>?DWX/MT_SGL'ZV#?W#]5EX=[,(GN;V3^#+RR\\.B;9/\\0/7D?XG]@_Y&T(7D$\"V#]?& YVN$#7/\\@KHEW:2=8_J2.W,9<(U3^\\UG3*I&;3/\\2_3]383M$_OZ6#ZP%>S3^KY DH(/+&/[N.I/R C[X_^%NU.19@J3^+/EU*UJ^>OP(@42J$4[Z_LYP8[>MUR[_\\N*7>(#O4O]4/-S. Z-J_\\<[F>@S'X+]'=+6?K?GCO^5D1]/2\\.:_3!A2SL:4Z;]NZ+\"28M/KOPGXHE3[H.V_O'Q,'E+X[K\\\\@QG,UMGOOWYXBY!5)?\"_@]&SS]LI\\+_$G'>&= #PO_J$-\"!Y8.^_!:+';A6\"[K] LAC5T77MO[0-O$H 2^R_J.U7ABB_+R:><&]6Y[\\.4RJ ZRKFOX:ZZ*N##>6_2_7^#G3_X[_J*;:;20'COR&.=7L/$^*_,EQN>V8TX;_V#JG_BOT'9$_KUK_\\_:_+@_+5O_G D!DF!=6_1.288^ CU+]A/SE'(D_3OY2A.1%ZAM*_4.%/R4?(T;_W\\D_P_!'1OZ R50KA8-\"_ZS08YB9FS[^6%,,\"I1#.O\\=X9\"\\?Q,R_\\\\A@#$F%R[_V)*H[_%?*ORBS/)31/,F_KRM&<38PR+^.?KL;=2O'OY*=ZY]6)\\:_\"/C05V,?Q;\\;#N1N413$OR0M9OLK#,._:\"A5L*X/PK^A]U&' B;!OR8V])T@4<\"_S0G1Z#T9O[]S^JR*<)Z]O]W%A%JA'+R_.[7B-ZJ$NK_[?XX%\\=2XO^R1KIO)&[>_A(P/$!!RM;^I:&\"9U.^SOY;V\"$5\\H;*_)TVUMBR#L;_UE_NV<8.POXFO\\UR@%*^_%;K.![8#K;]L)\"Q VKRJOY_ONW-W2*B_/87WRX_-I;\\P=!3-Y8\"COW'I8&,XC*&_3C#\"':WYG[]'4,1%$82=OW1WI\"Z+:K^@+\\8!LU#5]MZOR[;G3\\R/W:_MV>PR6Q5<[^_?.#RSQ=QOS_5+PD!+VV__49!??IE9K],\"PU+&AU;O__-H93Z=#V_J=NHWB7G0S]DI'<9/5M3/^M#-E8GIU _9*&A2_:A\\#Y<0M/?.5Y=OPL=/(5YWG&_O!A:DJZC?[]ET?6YF:\"(OWI_)AV[[)&_%A'L&7'[F+_L9R)O$,.@OT-R_SH[DJ6_3=>C:-1MJK]_B(B/T:FNOPGP[Z8FU[\"_@ 2.4AV9L;_S-*8 0*&QO\\3<,-8X#[&_ #'EY7L'L+\\6_4^TUDZMO[4;.C4;!:J_=64C[TI+IK^#P3@B?#JBOU;=6&;O]IN_T'/ %VJDD[_U-1%G?V\"(O\\MS]-,)^WB_A4DSS@G_8+\\Z-A9M?7(R/QD;/>O!8E8_!!UF?U, 6S_DR01D43^%QIGO.EQ0/SL<_1*K?5(_E.V7+_WK5S^(;R+?,!!@/]QRQHMBZ60_3Q-[^&.*:3^!MR=8L.EL/UM8JHM21VX_\"@>)=@=C;3^K(+I$Z&UJ/R1FV\\2$UV4_>9P%/!PB8#_V9!,Y-II3/UYX68=_=CH_$:'@UZEM-[\\;%TDO0!M1OV'REHLOH5J_X\":9+)L>8;_N[V!6Y!-DO[YO\">.$@F:_)E;Q^O;B:+]SVF%;B+1KOT3GN?NT6&^_6^9!_XW\\<;\\\"&*V>',%TOV0P AH5V7>_'D^2''<9>[]DBT'I%%M^OV]##F.UPH\"_1 XI;P%*@K]>6A41GLJ#OW#O)[-O486_RRGXLF'KAK]KK-:*?I^(OZMR-ZR>:HJ_8,D+]/(&]HN#.1OZRL[T>BU)&_5T1Z;_I_DK\\AIH&?/T&3OY_&:>$D&)2__N9I:FSUE+\\>O]4S?+V5O[#EK^HY! &3ZB6OW[\"2P; B9:_1@O3R:5GEK\\JJO3@+UN6OY67VU?;99:_Y14; O]UEK_G[Y%\\87>6OP.7KA^;8I:_QN+E3$E!EK\\?OCG\">B:6OX&\"Z73B():_MKT3/8 MEK])?A2SS3&6OQR8J_$=!9:_;:%CY2>+E;^B2M_IZ=\"4O]K OO-L$)2_7.^&9W*/D[_V)\"%:8VZ3O_C\"L.+NBI._VU?)OGJ+D[_H4XA$R Z3O^^:S9 -Y)&_+\"3/5N$ID+\\O<@SS?8J,OPLKG(\"I=8F_:3E?@3;XA[]OD:F$MF:(O\\NP_N.U-XJ_N G@S9X)C+^&#A!A&SZ,OTJS8>6P]XF_*K:+$B>PA;^M.=\"6J_DL1=$>X_8+]\\^OBWG7XNO[;5Z72R\"6$__!D'-A3:^6/VV'A!X1JY(_N=-@Y:#ICS_F6K&Y@'&//\\?Y,A+5%9(_TFR Z150EC^Z0YENC R;/VZG?VD%PYX_93ZZ:^,\"?/_51NVSGZIT_12$S?#X:G#\\@-=.=-@6;/U<6,RTTIYH_^S6>T_NBZL._].7ZL$[M%SH-6_W9B)_*ZSU[\\XV_/GU=C9O^[&GQ$=_MN_/VJ+_Q 2WK]DTGY0,P/@OZ7(M%UZWX;_2'>V<'&[BOS7?N\\,##>._UK,!*%^4X[]XL_EXQP3DOQG#[B=V7^2_-15(?)>FY+_ G4/R3MWDOZUE'MA5!^6_>>!E&E8HY;^!C]KI0D/EOW1KF$WM6>6_!?BWC_=LY;]6EH$U*'SEOX/;<('^AN6_5[T2D%6-Y;_1:M 3WH_EOV3P,H5%D.6_.>=T!P\"1Y;^$R#_YRI3EOUR28SH3GN6_LE)!9FZNY;]$W%+J3<;EOY66WEX$Y>6_>_V#Y\"()YK\\;CF5<'#'FOVY]P^D!7.:_JDG,,Y/GOYS:43-M^>>_7[?K#\"-RZ+_LW3BL3OWHOQ6I:X8*FNF_R,_K&4!'ZK\\C9OV>: 3KO\\7CF6,>TNN_UHG_5$FR[+_L=B8)TZ?MOZ0U7O'UM>Z_JA(:ZF #UO]+:[4(PH/6_B57NA88@]K]L%8,$@GCVOS(P?,,FH/:_%XCFHT21]K])P8\\@_T?VOV\\T!(0>P_6_B<2A_R0$];]'OT3:*P_TO^\\)4ZO*_\\;_QYE0HX#3POR=+@O');^V_[N*@EQEEZK^I-N<5'%_GOT6OZ]*K<>2_*&X$4\\>MX;^!7K[9TD#>O^P$V.Z4H]F_6[CU28J*U;_PW;:CU_/1OS 0#ER,KLV_*,:$&<51R+]X74^IO+;#OS*G5C@%A[^_&-\\;E![!N+]Y^/QK3?*ROS&:5T *[*N_V6O(WI=7H[^6M@#*W-N7OR=?+>@B^(6_I-7)+4'H+S\\L^TL^@2J$/Z*GE<$-LY(_PLQ^C2H_FC]T>^ \"+VZ@/PVX.P2O5J,_DA+$.Q3JI3^,M;AS+#>H/URF\"^YF2*H_JG3U=[HBK#\\9#:#OD<:M/PV>6Z2>,J\\_4;=\\Y*@SL#\\<<>@#I[2P/^GKJ5+3(+$_ YQ2S>E]L3_DJKWO(-&Q/\\)$J,Q^';(_\"5>ZX )CLC\\T&Z5 ()^R/R5+P%5BSK(_\\VA_O6WNLC]#F?[Y6_^R/[W>Q9G: [,_R\\P/G1T LS^7MD1J*/BR/Z=<72<<[K(_U4CSB3WALC^3*P?5-,ZR/X>/#\\:!L+(_K14XIFJ$LC^X?%2O9TBR/Z\\(?TI[_;$_6G&N[9>FL3]3&.5UBT>Q/_*8CIS];[Q+NX:ZE/T0\\&@$;/Z0_AZ!Q&S#=HC_A*8F?.8RA/U&_8U?,2* _)/J!TFP5GC]^+&&[,8^;/_>4+!U)ZI@_B$\\<2A06EC_U_;K1B@J3/[?CS-S(FH\\_W\"3T[LCHB#^K]\\@#V3^\"/RC>.E5.MW<_+C*AZQ5A9S_W$1\\8AIX3/QCP2\"$3K66_3HH>0]99=K^LBV$B'WF!O[H#^.'GJ(B_8:&O([)[D+^2:7M.NBV5OWS+E2C&H/#_Z._E*^P;TJLO[7:1++WV:V_^I8!*GP,K[\\6VJA6PWROO_>AU]VRQZZ_=0.+#\\>^K+]^XSSA#(>IOX'H;DP2AZ6_UW1H\\IDTH;];&2#@[=:9OYW*>?D%PI&_7]SHL_OX.UV2@^C3^LFXN)3[*+/_?^7ZX$9H<_^]DJB;5&@3^I()L&?H-T/SFT4SPS*5@_3BF,EGXO8+^:\"!V43XYUOS3%DE=[)8&_J@3L2>(RA[^ITZ-:-06-O[R9Z>D_6I&_H_W0]48HE+^/DPW/F>F6OQJD5P&UBYF_ N9H'@3QF[_%/I\\E9/Z=OT%X(J0JJ)^_R5RR9:MZH+^S*'=EX_R@OU;]53P:9Z&_FT[A.S7%H;__>G5)&\"&BO^@3><;G@:*_#T-V3ISKHK_*YX9 Q5ZCO^!A]J.BV*._#3+\\P>%3I+].JQ&!)LJDOZ9IB_4<-J6_/^\"]0DN5I;^XMN<*N>BEO_L[\\&L$-*:_;Y_S3E5[IK_HRS,_+L&FO\\B3H)@1!:>_PX=4W(-#I[^5N.;\\:W>GO]\"SL5U0G*>_,]2 LH:PI[]T5_AC4;:GOX>*>Y%'LZ>_B2S'#2BNI[_S\\B>)\\JNGOX6!&AA_K:>_'3@^4+ZNI[^\\ @][3*BGOU6RJ4OJDJ>_5[T2OPUKI[\\P?\\/65S*GO[ONA LW[J:_=E&Z)R:EIK_)WC.BJERFOY&35HT6&::_U5Y8=7#>I;\\50;\"9XK\"EOY]B70H\\DZ6_[JZ@PZF#I;\\ORR?_*'FEOZ8/CHT+9:6_NW%\"=&4YI;^U^OZ'S?\"DO^$K[J^HD:2_=-\\:H@XJI+^'2^[=!,>COXT?[9[?;*._=1,'T^,4H[\\DL%%-ZK\"BO[Q(LC7B,Z*_* %/B=N%]$H+]RDCR<\\U:@OXP%I6V&H*\"_R5X$8B'RH+\\K4]BAI1ZAOU_6ZMW!$*&_3)Q(SU31H+\\6Z,-)U'N@OXG>#.-@*:\"_@_UB%R; G[]!/2S1=1Z?O\\M :9'N,IZ_PI3WBK[2G+\\VQBW#$!2;OUT<\\9^*:)F_U;ZQZX]WF+\\3\\KJXP;28OWHNZN:5_IF_\"CD8.(&@F[] WB!CZKFYJ9OVXSH)9E?)>__U7Q&;.UE;]M_[M[?)Z4OWX0E8 \\892_'(MX @H)E;]R94SO[(R6OY_?>R($R)B_6/!TH7]9F[],CCM-*YJ=ORNY^7^MYIZ_?]D'%$#SGK^,E(3;\",.=OVJUX_)9A)N_VTI.\\\".0F+]=;@7?2G\"5O[X/:)F]QI*_YOC\"(_X3D;_+#\"FE;GZ0OP\\^\\VG7OI\"_ S[]\\6X^D;_2C*RG5U^1OQCQH%0VW)\"_^184];P'D+_%_,FK-SJ/OZD/OV-D+I\"_,4O%)!:[D;]M,LN.<<\"3OX_ID$\"MBI6_8''7/IU_EK_N=\\/?45.6OQ+68LVS*I6_Z-LG@A.>D[\\7*%H(A(.2OPG?=7+_AI*_.8MJ^;S'D[\\S?/I-O+R5OYNZV!H_?)>_-1F5N^)-F+_Z>HW]CBV8O^:LTSTXP9>_#@ #@ & \" 8 !0 @ ! 0 $ \"0 @ 80 X H P !@ @ # 4 ( 0 $ ! $ * 9'EN86UI8W-Y

6YA;6EC0!4 8 ( 0 % \" $ ! 0 . 2 8 ( #0 % \" 4 ! 0 & % -T\" 0 $ ! X !8 0 !@ @ \" 4 ( 0 $ ! 4 ! ) 0 \"0 !);G!U= !/=71P=70 !)3P !);G1E@!P &L ! @ ! 0 4 # 0 $ 0 $ % 0 ( & 0 , ' 0 0 X !X !@ @ ! 4 ( 0 $ ! X !( !@ @ - 4 ( !0 $ ! 8 4 W0( ! 0 $ #@ %@! & \" ( !0 @ ! 0 $ !0 $ D ! ) $EN<'5T $]U='!U= $E/ $EN=&5R;F%L . . 8 ( !@ % \" $ ! 0 ) \" #@ #@ & \" 8 !0 @ ! 0 $ \"0 @ X X !@ @ & 4 ( 0 $ ! D ( . , 8 ( !@ % \" ! 0 ) X X !@ @ & 4 ( 0 $ ! D ( _*GQTDUB4#\\. R 8 ( 0 % \" $ ! 0 . F 8 ( !@@ % \" 8 ! 0 ) , #3U5=61\"=L_QF*C[PH[O/PD P #TU@UVCO/^Q1N!Z%Z^\\_[%&X'H7K[S^D))@H2EOO/PD X >F P809-P#]Z8#!A!DW OP 5%*NKI_NA/Q44JZNG^Z&_ . . 8 ( !@ % \" $ ! 0 ) \" (JYJUJW\">H^#@ #@ & \" 8 !0 @ ! 0 $ \"0 @ 80 X H P !@ @ # 4 ( 0 $ ! $ * 9'EN86UI8W-Y

@ X \" \" !@ @ # 4 ( 0 $ ! $ P!L=&D !0 $ L ! (0 $1A=&$ 5F5R6YA;6EC0!4 8 ( 0 % \" $ ! 0 . 2 8 ( #0 % \" 4 ! 0 & % -T\" 0 $ ! X !8 0 !@ @ \" 4 ( 0 $ ! 4 ! ) 0 \"0 !);G!U= !/=71P=70 !)3P !);G1E6YA;6EC0!4 8 ( 0 % \" $ ! 0 . 2 8 ( #0 % \" 4 ! 0 & % -T\" 0 $ ! X !8 0 !@ @ \" 4 ( 0 $ ! 4 ! ) 0 \"0 !);G!U= !/=71P=70 !)3P !);G1E@ . & D 8 ( P % \" $ ! 0 ! ( =&8 4 ! ) 0 !( !687)I86)L90!L=&D . , 8 ( ! % \" $ ! 0 0 $ >@ X \" \" !@ @ # 4 ( 0 $ ! $ P!L=&D !0 $ L ! (0 $1A=&$ 5F5R6YA;6EC0!4 8 ( 0 % \" $ ! 0 . 2 8 ( #0 % \" 4 ! 0 & % -T\" 0 $ ! X !8 0 !@ @ \" 4 ( 0 $ ! 4 ! ) 0 \"0 !);G!U= !/=71P=70 !)3P !);G1E^_#@ #@ & \" 8 !0 @ ! 0 $ \"0 @ 80 X H P !@ @ # 4 ( 0 $ ! $ * 9'EN86UI8W-Y

@ X \"P\" !@ @ # 4 ( 0 $ ! $ P!L=&D !0 $ L ! (0 $1A=&$ 5F5R6YA;6EC0!4 8 ( 0 % \" $ ! 0 . 2 8 ( #0 % \" 4 ! 0 & % -T\" 0 $ ! X !8 0 !@ @ \" 4 ( 0 $ ! 4 ! ) 0 \"0 !);G!U= !/=71P=70 !)3P !);G1EI0_#@ (@ & \" $ !0 @ ! 0 $ #@ %@ & \" 8 !0 @ ! !0 $ \"0 \"@ &:KO&.&1<0_:7<>HN 8V+\\[^8=OUV'1/_@.*-.Z7:N_#@ (@ & \" $ !0 @ ! 0 $ #@ %@ & \" 8 !0 @ ! !0 $ \"0 \"@ #P/RJ>V@L.]@? [M5?C/JV\"$#X/(N_'/P9Z_'/[,A%03JC+D_3#A@G-C/ES]J4YUXP&22OV**JOQ;W)B_WL)R(-\\@C;\\. , 8 ( !@ % \" 0 ) X P !@ @ & 4 ( ! D #@ # & \" 8 !0 @ $ \"0 . 2 8 ( #0 % \" 4 ! 0 & % -T\" 0 $ \" X X !@ @ $ 4 ( 0 8 ! ! & 9&]U8FQE . , 8 ( !@ % \" 0 ) X P !@ @ $ 4 ( 0 0 ! ! ! !(;' U#@ @( & \" !$ 0 ! !@ &AA;F1L90 0 P !D9FEL=\"YD9C)S;W, #@ , ' & \" $ !0 @ $ 0 $ #@ $ ! & \" D !0 @ 0 0 0 $ @ ! ! ! !0 & \"0 J / ( 0 $ $ 9&9I;'0 9&8R0 0 ( $ $ # $ % 0 $ ! ! \" 0 $ $ 0 X !X !@ @ ! 4 ( 0 $ ! X !( !@ @ - 4 ( !0 $ ! 8 4 W0( ! 0 $ #@ #@ & \" 8 !0 @ ! 0 $ \"0 @ 80 X \"(!0 !@ @ \" 4 ( 0 $ ! 4 ! 4 0 0! !C;&%S

0 !.=6U386UP;&5S4')O8V5S=6RX_[^;B?HN%UC_OUC9P^'I=.\\_]^L@_#*T[C\\. 2 8 ( !@ % \" , ! 0 ) & ,__Q F> !<_[V8*Z+BZ)C^#\"@ #P/PX P !@ @ & 4 ( ! D #@ # & \" 8 !0 @ $ \"0 . , 8 ( !@ % \" 0 ) X !( !@ @ - 4 ( !0 $ ! 8 4 W0( ! 0 ( #@ #@ & \" 0 !0 @ ! !@ $ $ 8 !D;W5B;&4 X P !@ @ & 4 ( ! D #@ #@ & \" 0 !0 @ ! \" $ $ @ !7:6YD1V%I;@X X !@ @ & 4 ( 0 $ ! D ( \\#\\. . 8 ( ! % \" $ % 0 0 !0 &]B6YA;6EC7, X \"@! !@ @ 1 $ 0 8 !H86YD;&4 $ . ;'1I<&%C:RYT9F1A=&$ X !8! !@ @ ! 4 ( !@ $ ! X 8 0 !@ @ ) 4 ( Z $ ! ( #H 0 8 !( : ' \"@ X .@ &QT:7!A8VL =&9D871A $1E;&%Y %1S &YU;0!D96X $ \" $ ! ! , ! 0 ! 0 4 ! @ 8 ! P X !X !@ @ ! 4 ( 0 $ ! X !( !@ @ - 4 ( !0 $ ! 8 4 W0( ! 0 $ #@ %@! & \" ( !0 @ ! 0 $ !0 $ D ! ) $EN<'5T $]U='!U= $E/ $EN=&5R;F%L . . 8 ( !@ % \" $ ! 0 ) \" #@ #@ & \" 8 !0 @ ! 0 $ \"0 @ X X !@ @ & 4 ( 0 $ ! D ( . , 8 ( !@ % \" ! 0 ) X X !@ @ & 4 ( 0 $ ! D ( . < 8 ( 0 % \" $ ! 0 . 0 8 ( !@ % \" $ \" 0 ) $ TB$S?WS9,D . < 8 ( 0 % \" $ ! 0 . 0 8 ( !@ % \" $ \" 0 ) $ / _TB$S?WS9,D . . 8 ( !@ % \" $ ! 0 ) \" !A #@ \"@# & \" , !0 @ ! 0 $ 0 H !D>6YA;6EC$,0(8_5Y^-D/_:CS]\\V>Q_(JJ5/QV#3MU?,IP_MKPL#\":EH3]@4=R(<%\"E/V<(3,Z*ZJ@_V?M]8;X^K#\\M[$7M6!BO/TBZSD8 I+ _]H=,\"@14L3]OX:4H\"Y\"Q/_:'3 H$5+$_2+K.1@\"DL#\\M[$7M6!BO/]G[?6&^/JP_9PA,SHKJJ#]@4=R(<%\"E/[:\\+ PFI:$_'8-.W5\\RG#]\\V>Q_(JJ5/U>?C9#_VH\\_N,4UX0Q AC]&?5.XM#A]/\\XKE(B\\O7$_US\\=I7-78S_G@'6R^-A4/PX P !@ @ & 4 ( ! D #@ # & \" 8 !0 @ $ \"0 . , 8 ( !@ % \" 0 ) X !( !@ @ - 4 ( !0 $ ! 8 4 W0( ! 0 ( #@ #@ & \" 0 !0 @ ! !@ $ $ 8 !D;W5B;&4 X P !@ @ & 4 ( ! D #@ #@ & \" 0 !0 @ ! !@ $ $ 8 !L<&9?>C$ X 8\"0 !@ @ # 4 ( 0 $ ! $ @!T9@ !0 $ D ! $@ %9A7, X \"@! !@ @ 1 $ 0 8 !H86YD;&4 $ . ;'1I<&%C:RYT9F1A=&$ X !8! !@ @ ! 4 ( !@ $ ! X 8 0 !@ @ ) 4 ( Z $ ! ( #H 0 8 !( : ' \"@ X .@ &QT:7!A8VL =&9D871A $1E;&%Y %1S &YU;0!D96X $ \" $ ! ! , ! 0 ! 0 4 ! @ 8 ! P X !X !@ @ ! 4 ( 0 $ ! X !( !@ @ - 4 ( !0 $ ! 8 4 W0( ! 0 $ #@ %@! & \" ( !0 @ ! 0 $ !0 $ D ! ) $EN<'5T $]U='!U= $E/ $EN=&5R;F%L . . 8 ( !@ % \" $ ! 0 ) \" #@ #@ & \" 8 !0 @ ! 0 $ \"0 @ X X !@ @ & 4 ( 0 $ ! D ( . , 8 ( !@ % \" ! 0 ) X X !@ @ & 4 ( 0 $ ! D ( >Q2N1^%ZE#\\. < 8 ( 0 % \" $ ! 0 . 0 8 ( !@ % \" $ \" 0 ) $ =85MZMD9U#\\. < 8 ( 0 % \" $ ! 0 . 0 8 ( !@ % \" $ \" 0 ) $ / _13W)\"A/SY;\\. . 8 ( !@ % \" $ ! 0 ) \" !A #@ \"@# & \" , !0 @ ! 0 $ 0 H !D>6YA;6EC@!P &L ! @ ! 0 4 # 0 $ 0 $ % 0 ( & 0 , ' 0 0 X !X !@ @ ! 4 ( 0 $ ! X !( !@ @ - 4 ( !0 $ ! 8 4 W0( ! 0 $ #@ %@! & \" ( !0 @ ! 0 $ !0 $ D ! ) $EN<'5T $]U='!U= $E/ $EN=&5R;F%L . . 8 ( !@ % \" $ ! 0 ) \" #@ #@ & \" 8 !0 @ ! 0 $ \"0 @ X X !@ @ & 4 ( 0 $ ! D ( . , 8 ( !@ % \" ! 0 ) X X !@ @ & 4 ( 0 $ ! D ( _*GQTDUB4#\\. R 8 ( 0 % \" $ ! 0 . F 8 ( !@@ % \" 8 ! 0 ) , .3,OIMB]N^_4%4+EK/@[S]050N6L^#O/]\"&!:A^^^\\_T(8%J'[[[S\\S5'_^XF'O/PD P A=RSGXGS\\-Z%W+.?B?OP #@ -@ & \" $ !0 @ ! 0 $ #@ *@ & \" 8( !0 @ ' 0 $ \"0 #@ #P/P / _L'A89T.G[S^P>%AG0Z?O/YHN!AHL]>\\_FBX&&BSU[S\\W-N>JO'CO/PD X **H[^Q=9< _HJCO[%UEP+\\0M\\O\\POZA/Q\"WR_S\"_J&_ . . 8 ( !@ % \" $ ! 0 ) \" %IFF+.'/ZP^#@ #@ & \" 8 !0 @ ! 0 $ \"0 @ 80 X X P !@ @ # 4 ( 0 $ ! $ * 9'EN86UI8W-Y

;#O/PX ! !@ @ $ 4 ( 0 D ! ! ) 9&5N9%]N-7 V X !( !@ @ & 4 ( 0 , ! D 8 \\#]H7(+LC;+_OR+B>#-I;^\\_#@ # & \" 0 !0 @ ! ! $ $ $ $MV<#$. . 8 ( !@ % \" $ ! 0 ) \" / _#@ # & \" 0 !0 @ ! ! $ $ $ $MV:3$. . 8 ( !@ % \" $ ! 0 ) \" #@ # & \" 0 !0 @ ! ! $ $ $ $MV9#$. . 8 ( !@ % \" $ ! 0 ) \" #@ #@ & \" 0 !0 @ ! !P $ $ < !+=E]D86UP X X !@ @ & 4 ( 0 $ ! D ( F9F9F9FY34 . , 8 ( ! % \" $ # 0 0 , 2W8Q X X !@ @ & 4 ( 0 $ ! D ( \\#\\. , 8 ( ! % \" $ $ 0 0 0 2&XV-0X # !P !@ @ 1 $ 0 8 !H86YD;&4 $ , 9&9I;'0N9&8R 8 ( 0 % \" $ ! 0 . 2 8 ( #0 % \" 4 ! 0 & % -T\" 0 $ ! X X !@ @ & 4 ( 0 $ ! D ( &$ . 0 4 8 ( @ % \" $ ! 0 % 0 % $ $ 0 8VQA