Model { Name "interdig_elec_v" Version 5.0 SaveDefaultBlockParams on SampleTimeColors off LibraryLinkDisplay "none" WideLines off ShowLineDimensions off ShowPortDataTypes off ShowLoopsOnError on IgnoreBidirectionalLines off ShowStorageClass off ExecutionOrder off RecordCoverage off CovPath "/" CovSaveName "covdata" CovMetricSettings "dw" CovNameIncrementing off CovHtmlReporting on covSaveCumulativeToWorkspaceVar on CovSaveSingleToWorkspaceVar on CovCumulativeVarName "covCumulativeData" CovCumulativeReport off DataTypeOverride "UseLocalSettings" MinMaxOverflowLogging "UseLocalSettings" MinMaxOverflowArchiveMode "Overwrite" BlockNameDataTip off BlockParametersDataTip off BlockDescriptionStringDataTip off ToolBar on StatusBar on BrowserShowLibraryLinks off BrowserLookUnderMasks off Created "Fri Feb 21 22:37:59 2003" Creator "yongshi" UpdateHistory "UpdateHistoryNever" ModifiedByFormat "%" LastModifiedBy "skendig" ModifiedDateFormat "%" LastModifiedDate "Mon Mar 01 14:49:58 2004" ModelVersionFormat "1.%" ConfigurationManager "none" SimParamPage "Diagnostics" LinearizationMsg "none" Profile off ParamWorkspaceSource "MATLABWorkspace" AccelSystemTargetFile "accel.tlc" AccelTemplateMakefile "accel_default_tmf" AccelMakeCommand "make_rtw" TryForcingSFcnDF off ExtModeMexFile "ext_comm" ExtModeBatchMode off ExtModeTrigType "manual" ExtModeTrigMode "normal" ExtModeTrigPort "1" ExtModeTrigElement "any" ExtModeTrigDuration 1000 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 off BufferReuse on RTWExpressionDepthLimit 5 SimulationMode "normal" Solver "ode15s" SolverMode "Auto" StartTime "0.0" StopTime "1e-3" MaxOrder 5 MaxStep "auto" MinStep "auto" MaxNumMinSteps "-1" InitialStep "auto" FixedStep "auto" RelTol "3e-14" AbsTol "3e-14" OutputOption "RefineOutputTimes" OutputTimes "[]" Refine "1" LoadExternalInput off ExternalInput "[t, u]" LoadInitialState off InitialState "xInitial" SaveTime on TimeSaveName "tout" SaveState off StateSaveName "xout" SaveOutput on OutputSaveName "yout" SaveFinalState off FinalStateName "xFinal" SaveFormat "Array" Decimation "1" LimitDataPoints on MaxDataPoints "1000" SignalLoggingName "sigsOut" ConsistencyChecking "error" ArrayBoundsChecking "none" AlgebraicLoopMsg "warning" BlockPriorityViolationMsg "warning" MinStepSizeMsg "warning" InheritedTsInSrcMsg "warning" DiscreteInheritContinuousMsg "warning" MultiTaskRateTransMsg "error" SingleTaskRateTransMsg "none" CheckForMatrixSingularity "none" IntegerOverflowMsg "warning" Int32ToFloatConvMsg "warning" ParameterDowncastMsg "error" ParameterOverflowMsg "error" ParameterPrecisionLossMsg "warning" UnderSpecifiedDataTypeMsg "none" UnnecessaryDatatypeConvMsg "none" VectorMatrixConversionMsg "none" InvalidFcnCallConnMsg "error" SignalLabelMismatchMsg "none" UnconnectedInputMsg "warning" UnconnectedOutputMsg "warning" UnconnectedLineMsg "warning" SfunCompatibilityCheckMsg "none" RTWInlineParameters off BlockReductionOpt off BooleanDataType off ConditionallyExecuteInputs on ParameterPooling on OptimizeBlockIOStorage on ZeroCross on AssertionControl "UseLocalSettings" ProdHWDeviceType "Microprocessor" ProdHWWordLengths "8,16,32,32" RTWSystemTargetFile "grt.tlc" RTWTemplateMakefile "grt_default_tmf" RTWMakeCommand "make_rtw" RTWGenerateCodeOnly off RTWRetainRTWFile off TLCProfiler off TLCDebug off TLCCoverage off TLCAssertion off RTWOptions "-aExtMode=0 -aForceParamTrailComments=0 -aInlineInv" "ariantSignals=0 -aLocalBlockOutputs=1 -aLogVarNameModifier=\"rt_\" -aRTWVerbo" "se=1 -aRollThreshold=5 -aShowEliminatedStatements=1" BlockDefaults { Orientation "right" ForegroundColor "black" BackgroundColor "white" DropShadow off NamePlacement "normal" FontName "Helvetica" FontSize 10 FontWeight "normal" FontAngle "normal" ShowName on } BlockParameterDefaults { Block { BlockType Constant Value "1" VectorParams1D on ShowAdditionalParam off OutDataTypeMode "Inherit from 'Constant value'" OutDataType "sfix(16)" ConRadixGroup "Use specified scaling" OutScaling "2^0" } Block { BlockType Fcn Expr "sin(u[1])" } Block { BlockType Gain Gain "1" Multiplication "Element-wise(K.*u)" ShowAdditionalParam off ParameterDataTypeMode "Same as input" ParameterDataType "sfix(16)" ParameterScalingMode "Best Precision: Matrix-wise" ParameterScaling "2^0" OutDataTypeMode "Same as input" OutDataType "sfix(16)" OutScaling "2^0" LockScale off RndMeth "Floor" SaturateOnIntegerOverflow on } Block { BlockType Inport Port "1" PortDimensions "-1" SampleTime "-1" ShowAdditionalParam off LatchInput off DataType "auto" OutDataType "sfix(16)" OutScaling "2^0" SignalType "auto" SamplingMode "auto" Interpolate on } Block { BlockType Integrator ExternalReset "none" InitialConditionSource "internal" InitialCondition "0" LimitOutput off UpperSaturationLimit "inf" LowerSaturationLimit "-inf" ShowSaturationPort off ShowStatePort off AbsoluteTolerance "auto" ZeroCross on } Block { BlockType Outport Port "1" OutputWhenDisabled "held" InitialOutput "[]" } Block { BlockType Product Inputs "2" Multiplication "Element-wise(.*)" ShowAdditionalParam off InputSameDT on OutDataTypeMode "Same as first input" OutDataType "sfix(16)" OutScaling "2^0" LockScale off RndMeth "Floor" SaturateOnIntegerOverflow on } Block { BlockType Scope Floating off ModelBased off TickLabels "OneTimeTick" ZoomMode "on" Grid "on" TimeRange "auto" YMin "-5" YMax "5" SaveToWorkspace off SaveName "ScopeData" LimitDataPoints on MaxDataPoints "5000" Decimation "1" SampleInput off SampleTime "0" } Block { BlockType Step Time "1" Before "0" After "1" SampleTime "-1" VectorParams1D on ZeroCross on } Block { BlockType SubSystem ShowPortLabels on Permissions "ReadWrite" RTWSystemCode "Auto" RTWFcnNameOpts "Auto" RTWFileNameOpts "Auto" SimViewingDevice off DataTypeOverride "UseLocalSettings" MinMaxOverflowLogging "UseLocalSettings" } Block { BlockType Sum IconShape "rectangular" Inputs "++" ShowAdditionalParam off InputSameDT on OutDataTypeMode "Same as first input" OutDataType "sfix(16)" OutScaling "2^0" LockScale off RndMeth "Floor" SaturateOnIntegerOverflow on } } AnnotationDefaults { HorizontalAlignment "center" VerticalAlignment "middle" ForegroundColor "black" BackgroundColor "white" DropShadow off FontName "Helvetica" FontSize 10 FontWeight "normal" FontAngle "normal" } LineDefaults { FontName "Helvetica" FontSize 9 FontWeight "normal" FontAngle "normal" } System { Name "interdig_elec_v" Location [52, 145, 787, 685] Open on ModelBrowserVisibility off ModelBrowserWidth 212 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" ReportName "simulink-default.rpt" Block { BlockType Scope Name "Displacement" Ports [1] Position [555, 339, 585, 371] Location [507, 635, 1086, 1006] Open off NumInputPorts "1" List { ListType AxesTitles axes1 "%" } List { ListType SelectedSignals axes1 "" } TimeRange "0.001" YMin "2e-006" YMax "5e-006" SaveToWorkspace on DataFormat "Array" MaxDataPoints "10000" SampleTime "1e-5" } Block { BlockType SubSystem Name "Subsystem" Ports [1, 2] Position [370, 308, 410, 372] TreatAsAtomicUnit off MaskPromptString "plate thickness (m)|source resistance (ohm)|fin" "ger length (m)|number of fingers|initial gap|permittivity|h|spring constant (" "N/m)|damping coefficient (N-s/m)" MaskStyleString "edit,edit,edit,edit,edit,edit,edit,edit,edit" MaskTunableValueString "on,on,on,on,on,on,on,on,on" MaskCallbackString "||||||||" MaskEnableString "on,on,on,on,on,on,on,on,on" MaskVisibilityString "on,on,on,on,on,on,on,on,on" MaskToolTipString "on,on,on,on,on,on,on,on,on" MaskVarAliasString ",,,,,,,," MaskVariables "t=@1;R=@2;l=@3;n=@4;g0=@5;e0=@6;h=@7;k=@8;b=@9;" MaskIconFrame on MaskIconOpaque on MaskIconRotate "none" MaskIconUnits "autoscale" MaskValueString "200e-6|50|100e-6|200|5e-6|8.854e-12|5e-6|1e3|5e" "-3" System { Name "Subsystem" Location [801, 293, 1415, 959] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" Block { BlockType Inport Name "Voltage" Position [200, 88, 230, 102] } Block { BlockType Fcn Name "Invert" Position [350, 345, 410, 375] Orientation "left" NamePlacement "alternate" Expr "1/u" } Block { BlockType Fcn Name "Invert1" Position [350, 400, 410, 430] Orientation "left" NamePlacement "alternate" Expr "u^2" } Block { BlockType Fcn Name "Invert2" Position [135, 375, 195, 405] Orientation "left" NamePlacement "alternate" Expr "1/u" } Block { BlockType Fcn Name "Invert3" Position [30, 80, 90, 110] Orientation "down" NamePlacement "alternate" ShowName off Expr "u^2" Port { PortNumber 1 Name "x1^2" TestPoint off LinearAnalysisOutput off LinearAnalysisInput off RTWStorageClass "Auto" DataLogging off DataLoggingNameMode "SignalName" DataLoggingDecimateData off DataLoggingDecimation "2" DataLoggingLimitDataPoints off DataLoggingMaxPoints "5000" } } Block { BlockType Fcn Name "Invert4" Position [285, 150, 345, 180] Expr "1/u" } Block { BlockType Product Name "Product" Ports [2, 1] Position [160, 315, 205, 350] Orientation "left" NamePlacement "alternate" } Block { BlockType Product Name "Product1" Ports [2, 1] Position [49, 410, 96, 445] Orientation "down" } Block { BlockType Product Name "Product2" Ports [2, 1] Position [395, 106, 440, 139] ShowAdditionalParam on InputSameDT off } Block { BlockType Constant Name "R" Position [235, 150, 265, 180] Value "R" } Block { BlockType Sum Name "Sum" Ports [3, 1] Position [155, 437, 170, 493] ShowName off Inputs "---" } Block { BlockType Sum Name "Sum1" Ports [2, 1] Position [450, 600, 465, 655] Orientation "left" NamePlacement "alternate" ShowName off Inputs "+-" Port { PortNumber 1 Name "x2-g0" TestPoint off LinearAnalysisOutput off LinearAnalysisInput off RTWStorageClass "Auto" DataLogging off DataLoggingNameMode "SignalName" DataLoggingDecimateData off DataLoggingDecimation "2" DataLoggingLimitDataPoints off DataLoggingMaxPoints "5000" } } Block { BlockType Sum Name "Sum2" Ports [2, 1] Position [325, 80, 340, 135] NamePlacement "alternate" ShowName off Inputs "+-" } Block { BlockType Sum Name "Sum3" Ports [2, 1] Position [450, 345, 465, 400] Orientation "left" NamePlacement "alternate" ShowName off Inputs "+-" Port { PortNumber 1 Name "l-x2" TestPoint off LinearAnalysisOutput off LinearAnalysisInput off RTWStorageClass "Auto" DataLogging off DataLoggingNameMode "SignalName" DataLoggingDecimateData off DataLoggingDecimation "2" DataLoggingLimitDataPoints off DataLoggingMaxPoints "5000" } } Block { BlockType Gain Name "divided by mass, m" Position [195, 441, 270, 489] Gain "1/4.66e-7" } Block { BlockType Integrator Name "get position, x2=g\nInitial condition = go" Ports [1, 1] Position [400, 450, 430, 480] InitialCondition "g0" Port { PortNumber 1 Name "x2" TestPoint off LinearAnalysisOutput off LinearAnalysisInput off RTWStorageClass "Auto" DataLogging off DataLoggingNameMode "SignalName" DataLoggingDecimateData off DataLoggingDecimation "2" DataLoggingLimitDataPoints off DataLoggingMaxPoints "5000" } } Block { BlockType Integrator Name "get velocity, x3" Ports [1, 1] Position [305, 450, 335, 480] Port { PortNumber 1 Name "x3" TestPoint off LinearAnalysisOutput off LinearAnalysisInput off RTWStorageClass "Auto" DataLogging off DataLoggingNameMode "SignalName" DataLoggingDecimateData off DataLoggingDecimation "2" DataLoggingLimitDataPoints off DataLoggingMaxPoints "5000" } } Block { BlockType Constant Name "go" Position [510, 625, 540, 655] Orientation "left" Value "g0" } Block { BlockType Integrator Name "integrate to get charge" Ports [1, 1] Position [510, 91, 540, 129] Port { PortNumber 1 Name "x1=Q" TestPoint off LinearAnalysisOutput off LinearAnalysisInput off RTWStorageClass "Auto" DataLogging off DataLoggingNameMode "SignalName" DataLoggingDecimateData off DataLoggingDecimation "2" DataLoggingLimitDataPoints off DataLoggingMaxPoints "5000" } } Block { BlockType Constant Name "length l" Position [510, 345, 540, 375] Orientation "left" Value "l" } Block { BlockType Gain Name "multiply \n4.permitivity.t/h" Position [220, 371, 290, 409] Orientation "left" Gain "4*e0*t*n/h" ShowAdditionalParam on } Block { BlockType Gain Name "multiply B \nto get damper force" Position [334, 530, 376, 570] Orientation "down" NamePlacement "alternate" Gain "b" Port { PortNumber 1 Name "bx3" TestPoint off LinearAnalysisOutput off LinearAnalysisInput off RTWStorageClass "Auto" DataLogging off DataLoggingNameMode "SignalName" DataLoggingDecimateData off DataLoggingDecimation "2" DataLoggingLimitDataPoints off DataLoggingMaxPoints "5000" } } Block { BlockType Gain Name "multiply times \nh/(2.permitivity.t)" Position [235, 309, 325, 361] Orientation "left" NamePlacement "alternate" Gain "h/(2*e0*t*n)" } Block { BlockType Gain Name "multiply times K \nto get spring force" Position [340, 610, 380, 650] Orientation "left" NamePlacement "alternate" Gain "k" Port { PortNumber 1 Name "k(x2-g0)" TestPoint off LinearAnalysisOutput off LinearAnalysisInput off RTWStorageClass "Auto" DataLogging off DataLoggingNameMode "SignalName" DataLoggingDecimateData off DataLoggingDecimation "2" DataLoggingLimitDataPoints off DataLoggingMaxPoints "5000" } } Block { BlockType Outport Name "Out1" Position [280, 38, 310, 52] } Block { BlockType Outport Name "Out5" Position [510, 458, 540, 472] Port "2" } Line { Name "x3" SrcBlock "get velocity, x3" SrcPort 1 Points [0, 0; 15, 0] Branch { Labels [1, 0] DstBlock "get position, x2=g\nInitial condition = g" "o" DstPort 1 } Branch { DstBlock "multiply B \nto get damper force" DstPort 1 } } Line { Name "x2" Labels [0, 0] SrcBlock "get position, x2=g\nInitial condition = go" SrcPort 1 Points [0, 0; 45, 0] Branch { Labels [1, 0] DstBlock "Out5" DstPort 1 } Branch { DstBlock "Sum1" DstPort 1 } Branch { Labels [1, 0] DstBlock "Sum3" DstPort 2 } } Line { SrcBlock "divided by mass, m" SrcPort 1 DstBlock "get velocity, x3" DstPort 1 } Line { SrcBlock "Sum" SrcPort 1 DstBlock "divided by mass, m" DstPort 1 } Line { SrcBlock "go" SrcPort 1 DstBlock "Sum1" DstPort 2 } Line { Name "bx3" Labels [2, 1] SrcBlock "multiply B \nto get damper force" SrcPort 1 Points [-215, 0] DstBlock "Sum" DstPort 3 } Line { Name "k(x2-g0)" Labels [2, 0] SrcBlock "multiply times K \nto get spring force" SrcPort 1 Points [-210, 0; 0, -165] DstBlock "Sum" DstPort 2 } Line { SrcBlock "Voltage" SrcPort 1 Points [30, 0] Branch { DstBlock "Sum2" DstPort 1 } Branch { DstBlock "Out1" DstPort 1 } } Line { SrcBlock "Sum2" SrcPort 1 Points [35, 0] DstBlock "Product2" DstPort 1 } Line { SrcBlock "Product2" SrcPort 1 Points [15, 0; 0, -15] DstBlock "integrate to get charge" DstPort 1 } Line { Name "l-x2" Labels [1, 0] SrcBlock "Sum3" SrcPort 1 Points [-20, 0] Branch { DstBlock "Invert" DstPort 1 } Branch { DstBlock "Invert1" DstPort 1 } } Line { SrcBlock "Invert" SrcPort 1 Points [0, -25] DstBlock "multiply times \nh/(2.permitivity.t)" DstPort 1 } Line { SrcBlock "multiply times \nh/(2.permitivity.t)" SrcPort 1 Points [0, 5] DstBlock "Product" DstPort 2 } Line { SrcBlock "Product" SrcPort 1 Points [-25, 0; 0, -215] DstBlock "Sum2" DstPort 2 } Line { SrcBlock "Invert1" SrcPort 1 Points [0, -25] DstBlock "multiply \n4.permitivity.t/h" DstPort 1 } Line { SrcBlock "multiply \n4.permitivity.t/h" SrcPort 1 DstBlock "Invert2" DstPort 1 } Line { SrcBlock "Invert2" SrcPort 1 Points [-45, 0] DstBlock "Product1" DstPort 2 } Line { Name "x1^2" Labels [-1, 0] SrcBlock "Invert3" SrcPort 1 DstBlock "Product1" DstPort 1 } Line { SrcBlock "Product1" SrcPort 1 Points [0, 10; 35, 0; 0, -15] DstBlock "Sum" DstPort 1 } Line { Name "x1=Q" SrcBlock "integrate to get charge" SrcPort 1 Points [40, 0] Branch { Labels [1, 0; 2, 1] Points [0, -85; -525, 0] DstBlock "Invert3" DstPort 1 } Branch { Points [0, 115; -365, 0] DstBlock "Product" DstPort 1 } } Line { Name "x2-g0" Labels [0, 0] SrcBlock "Sum1" SrcPort 1 DstBlock "multiply times K \nto get spring force" DstPort 1 } Line { SrcBlock "length l" SrcPort 1 DstBlock "Sum3" DstPort 1 } Line { SrcBlock "R" SrcPort 1 DstBlock "Invert4" DstPort 1 } Line { SrcBlock "Invert4" SrcPort 1 Points [10, 0; 0, -35] DstBlock "Product2" DstPort 2 } Annotation { Position [220, 110] } } } Block { BlockType Step Name "Voltage" Position [310, 325, 340, 355] Time "1e-4" After "100" SampleTime "0" } Block { BlockType Scope Name "Voltage\nsource" Ports [1] Position [555, 269, 585, 301] Location [515, 174, 1019, 562] Open off NumInputPorts "1" List { ListType AxesTitles axes1 "%" } List { ListType SelectedSignals axes1 "" } TimeRange "0.001" YMin "95" YMax "105" SaveName "ScopeData1" DataFormat "StructureWithTime" SampleTime "1e-5" } Line { SrcBlock "Subsystem" SrcPort 1 Points [25, 0; 0, -40] DstBlock "Voltage\nsource" DstPort 1 } Line { SrcBlock "Subsystem" SrcPort 2 DstBlock "Displacement" DstPort 1 } Line { SrcBlock "Voltage" SrcPort 1 DstBlock "Subsystem" DstPort 1 } Annotation { Position [788, 374] } Annotation { Name "Notes on use:\n\n1) To see the actual model, ri" "ght click on the subsystem block and select \"Look under mask\"\n2) To enter " "in the parameters for the simulation (e.g., voltage, spring constant, etc.) " "\n double-click on the subsystem block. A window will open up allowing y" "ou to enter the \n parameters\n3) Double-click on the \"voltage source\" " "and \"displacement\" oscilloscopes to view the output" Position [238, 448] HorizontalAlignment "left" } } }