Dear All
I have problem of reading the encoder input signal via pdcom.
I was able to run pdcom example code on my machine. The output are as
following:
(Note: I add few codes to print out all the obtained variables.). The
Simulink model is also attached.
Connecting to 192.168.0.105:2345...
Connected.
<2> MSR Protocol handler recognises the protocol.
<2> Waiting for <connected> tag.
<2> Autodetected MSR Protocol.
<2> <connected> tag arrived.
clientInteraction()
Username=meka
Hostname=meka-mist
Application=pdcom example
<2> Logging in as "m...@meka-mist"
<2> Requesting parameter list.
<2> Message from process at 1290633249.891519: (0) Adminmode filp: 5
<2> Found 10 parameters.
<2> Requesting channel list.
<2> Found 17 channels.
<2> Protocol initialisation finished.
/single_motor_pos/Data Type Conversion
/single_motor_pos/Derivative
/single_motor_pos/Gain
/single_motor_pos/Gain1
/single_motor_pos/Gain2
/Taskinfo/Abtastfrequenz
/single_motor_pos/Gain/Gain
/single_motor_pos/Gain1/Gain
/single_motor_pos/Gain2/Gain
/single_motor_pos/Gear/Gain
/single_motor_pos/Integrator/InitialCondition
/single_motor_pos/Saturation/UpperLimit
/single_motor_pos/Saturation/LowerLimit
/single_motor_pos/Signal Generator/Amplitude
/single_motor_pos/Signal Generator/Frequency
/single_motor_pos/Gear
/single_motor_pos/Integrator
/single_motor_pos/Saturation
/single_motor_pos/ENC_0
/single_motor_pos/Signal Generator
/single_motor_pos/Add
/single_motor_pos/Sum
/Time
/Taskinfo/0/TaskTime
/Taskinfo/0/ExecTime
/Taskinfo/0/Period
/Taskinfo/0/Overrun
notify(): /single_motor_pos/Integrator 0
notify():/single_motor_pos/Integrator 0
Finished.
It seems like Pdcom could only recognize parameters such as
constant/value or gain/gain in Simulink model but not signal.
Can anyone tell me how to get access to the signals? In the end, thanks
for everyone of you effort. So I can make etherlab + pdcom run on my
computer quickly. I also attached my system setting here FYI.
linux: 2.6.32.11
rtai:3.8.1
etherlab: 1.3-pre
matlab: 7.4.0.336
realtime workshop: 6.6
Look forward to your answer!
Jayson
--
------------------------------------------------------
Jayson(Jienan) Ding, Research Engineer
Meka Robotics LLC.
Address:
1240 Pennsylvania Ave,
San Francisco, CA, 94107
Tel: 415-206-0131
Fax: 415.206.0247
Web:
http://www.mekabot.com/
Model {
Name "single_motor_pos"
Version 6.6
MdlSubVersion 0
GraphicalInterface {
NumRootInports 0
NumRootOutports 0
ParameterArgumentNames ""
ComputedModelVersion "1.134"
NumModelReferences 0
NumTestPointedSignals 0
}
SavedCharacterEncoding "UTF-8"
SaveDefaultBlockParams on
SampleTimeColors off
LibraryLinkDisplay "none"
WideLines off
ShowLineDimensions off
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
InitFcn "gear_ratio = 2*pi/500;"
Created "Mon Nov 22 13:45:46 2010"
Creator "meka"
UpdateHistory "UpdateHistoryNever"
ModifiedByFormat "%<Auto>"
LastModifiedBy "meka"
ModifiedDateFormat "%<Auto>"
LastModifiedDate "Wed Nov 24 13:13:31 2010"
ModelVersionFormat "1.%<AutoIncrement:134>"
ConfigurationManager "None"
SimulationMode "normal"
LinearizationMsg "none"
Profile off
ParamWorkspaceSource "MATLABWorkspace"
AccelSystemTargetFile "accel.tlc"
AccelTemplateMakefile "accel_default_tmf"
AccelMakeCommand "make_rtw"
AccelVerboseBuild off
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 off
BufferReuse off
ProdHWDeviceType "32-bit xPC Target (Intel Pentium)"
ShowModelReferenceBlockVersion off
ShowModelReferenceBlockIO off
Array {
Type "Handle"
Dimension 1
Simulink.ConfigSet {
$ObjectID 1
Version "1.2.0"
Array {
Type "Handle"
Dimension 8
Simulink.SolverCC {
$ObjectID 2
Array {
Type "Cell"
Dimension 1
Cell "SolverType"
PropName "DisabledProps"
}
Version "1.2.0"
StartTime "0.0"
StopTime "inf"
AbsTol "auto"
FixedStep "0.001"
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 "SingleTasking"
Solver "ode1"
SolverName "ode1"
ZeroCrossControl "UseLocalSettings"
AlgebraicLoopSolver "TrustRegion"
SolverResetMethod "Fast"
PositivePriorityOrder off
AutoInsertRateTranBlk off
SampleTimeConstraint "Unconstrained"
RateTranMode "Deterministic"
}
Simulink.DataIOCC {
$ObjectID 3
Array {
Type "Cell"
Dimension 8
Cell "LoadExternalInput"
Cell "LoadInitialState"
Cell "SaveTime"
Cell "SaveState"
Cell "SaveOutput"
Cell "SaveFinalState"
Cell "SignalLogging"
Cell "LimitDataPoints"
PropName "DisabledProps"
}
Version "1.2.0"
Decimation "1"
ExternalInput "[t, u]"
FinalStateName "xFinal"
InitialState "xInitial"
LimitDataPoints off
MaxDataPoints "1000"
LoadExternalInput off
LoadInitialState off
SaveFinalState off
SaveFormat "Array"
SaveOutput off
SaveState off
SignalLogging off
InspectSignalLogs off
SaveTime off
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.2.0"
BlockReduction off
BooleanDataType on
ConditionallyExecuteInputs off
InlineParams off
InlineInvariantSignals off
OptimizeBlockIOStorage off
BufferReuse off
EnforceIntegerDowncast on
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 off
OptimizeModelRefInitCode off
LifeSpan "inf"
BufferReusableBoundary on
}
Simulink.DebuggingCC {
$ObjectID 5
Version "1.2.0"
RTPrefix "error"
ConsistencyChecking "none"
ArrayBoundsChecking "none"
SignalInfNanChecking "none"
ReadBeforeWriteMsg "UseLocalSettings"
WriteAfterWriteMsg "UseLocalSettings"
WriteAfterReadMsg "UseLocalSettings"
AlgebraicLoopMsg "warning"
ArtificialAlgebraicLoopMsg "warning"
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"
}
Simulink.HardwareCC {
$ObjectID 6
Array {
Type "Cell"
Dimension 1
Cell "ProdHWDeviceType"
PropName "DisabledProps"
}
Version "1.2.0"
ProdBitPerChar 8
ProdBitPerShort 16
ProdBitPerInt 32
ProdBitPerLong 32
ProdIntDivRoundTo "Zero"
ProdEndianess "LittleEndian"
ProdWordSize 32
ProdShiftRightIntArith on
ProdHWDeviceType "32-bit xPC Target (Intel Pentium)"
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.2.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 "RetainRTWFile"
PropName "DisabledProps"
}
Version "1.2.0"
SystemTargetFile "etherlab.tlc"
GenCodeOnly off
MakeCommand "make_rtw"
GenerateMakefile on
TemplateMakefile "etherlab_kmod.tmf"
PostCodeGenCommand "etherlab_postprocess(modelName,buildInfo)"
Description "EtherLab Real-Time Target"
GenerateReport off
SaveLog off
RTWVerbose on
RetainRTWFile on
ProfileTLC off
TLCDebug off
TLCCoverage off
TLCAssert off
ProcessScriptMode "Default"
ConfigurationMode "Optimized"
ProcessScript "etherlab_make_rtw_hook"
ConfigAtBuild off
IncludeHyperlinkInReport off
LaunchReport off
TargetLang "C"
IncludeBusHierarchyInRTWFileBlockHierarchyMap off
IncludeERTFirstTime 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.2.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
PrefixModelToSubsysFcnNames on
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
}
Simulink.STFCustomTargetCC {
$BackupClass "Simulink.TargetCC"
$ObjectID 10
Array {
Type "Cell"
Dimension 15
Cell "IncludeMdlTerminateFcn"
Cell "CombineOutputUpdateFcns"
Cell "SuppressErrorStatus"
Cell "ERTCustomFileBanners"
Cell "GenerateSampleERTMain"
Cell "GenerateTestInterfaces"
Cell "ModelStepFunctionPrototypeControlComp"
"liant"
Cell "MultiInstanceERTCode"
Cell "PurelyIntegerCode"
Cell "SupportNonFinite"
Cell "SupportComplex"
Cell "SupportAbsoluteTime"
Cell "SupportContinuousTime"
Cell "SupportNonInlinedSFcns"
Cell "PortableWordSizes"
PropName "DisabledProps"
}
Version "1.2.0"
TargetFcnLib "ansi_tfl_tmw.mat"
TargetLibSuffix ""
TargetPreCompLibLocation ""
GenFloatMathFcnCalls "ANSI_C"
UtilityFuncGeneration "Auto"
GenerateFullHeader on
GenerateSampleERTMain off
GenerateTestInterfaces off
IsPILTarget off
ModelReferenceCompliant off
IncludeMdlTerminateFcn on
CombineOutputUpdateFcns off
SuppressErrorStatus off
IncludeFileDelimiter "Auto"
ERTCustomFileBanners off
SupportAbsoluteTime on
LogVarNameModifier "rt_"
MatFileLogging off
MultiInstanceERTCode off
SupportNonFinite on
SupportComplex on
PurelyIntegerCode off
SupportContinuousTime on
SupportNonInlinedSFcns on
EnableShiftOperators on
ParenthesesLevel "Nominal"
PortableWordSizes off
ModelStepFunctionPrototypeControlCompliant off
SystemTargetFile "etherlab.tlc"
DialogCategory 0
Array {
Type "Handle"
Dimension 1
Simulink.GRTTargetCC {
$BackupClass "Simulink.TargetCC"
$ObjectID 11
Array {
Type "Cell"
Dimension 17
Cell "IncludeMdlTerminateFcn"
Cell "CombineOutputUpdateFcns"
Cell "SuppressErrorStatus"
Cell "ERTCustomFileBanners"
Cell "GenerateSampleERTMain"
Cell "GenerateTestInterfaces"
Cell "ModelStepFunctionPrototypeControl"
"Compliant"
Cell "MultiInstanceERTCode"
Cell "PurelyIntegerCode"
Cell "SupportNonFinite"
Cell "SupportComplex"
Cell "SupportAbsoluteTime"
Cell "SupportContinuousTime"
Cell "SupportNonInlinedSFcns"
Cell "PortableWordSizes"
Cell "RTWCAPISignals"
Cell "RTWCAPIParams"
PropName "DisabledProps"
}
Version "1.2.0"
TargetFcnLib "ansi_tfl_tmw.mat"
TargetLibSuffix ""
TargetPreCompLibLocation ""
GenFloatMathFcnCalls "ANSI_C"
UtilityFuncGeneration "Auto"
GenerateFullHeader on
GenerateSampleERTMain off
GenerateTestInterfaces off
IsPILTarget off
ModelReferenceCompliant off
IncludeMdlTerminateFcn on
CombineOutputUpdateFcns off
SuppressErrorStatus off
IncludeFileDelimiter "Auto"
ERTCustomFileBanners off
SupportAbsoluteTime on
LogVarNameModifier "rt_"
MatFileLogging off
MultiInstanceERTCode off
SupportNonFinite on
SupportComplex on
PurelyIntegerCode off
SupportContinuousTime on
SupportNonInlinedSFcns on
EnableShiftOperators on
ParenthesesLevel "Nominal"
PortableWordSizes off
ModelStepFunctionPrototypeControlCompliant off
ExtMode off
ExtModeStaticAlloc off
ExtModeTesting off
ExtModeStaticAllocSize 1000000
ExtModeTransport 0
ExtModeMexFile "noextcomm"
ExtModeIntrfLevel "Level1"
RTWCAPISignals on
RTWCAPIParams on
RTWCAPIStates off
GenerateASAP2 off
}
PropName "Components"
}
CustomProperty {
DataType "int32"
Name "BufferTime"
Value 10
}
CustomProperty {
DataType "int32"
Name "OverrunCount"
Value 1
}
CustomProperty {
DataType "int32"
Name "StackSize"
Value 2000
}
CustomProperty {
DataType "int32"
Name "ETLDecimation"
Value 1
}
CustomProperty {
DataType "slbool"
Name "VerboseBuild"
Value off
}
CustomProperty {
DataType "string"
Name "ModulePayload"
Value "single_motor_pos.mdl "
}
}
PropName "Components"
}
}
hdlcoderui.hdlcc {
$ObjectID 12
Description "HDL Coder custom configuration component"
Version "1.2.0"
Name "HDL Coder"
Array {
Type "Cell"
Dimension 1
Cell ""
PropName "HDLConfigFile"
}
HDLCActiveTab "0"
}
PropName "Components"
}
Name "Configuration"
CurrentDlgPage "Real-Time Workshop/EtherLab C code generation o"
"ptions"
}
PropName "ConfigurationSets"
}
Simulink.ConfigSet {
$PropName "ActiveConfigurationSet"
$ObjectID 1
}
BlockDefaults {
Orientation "right"
ForegroundColor "black"
BackgroundColor "white"
DropShadow off
NamePlacement "normal"
FontName "Lucida Bright"
FontSize 10
FontWeight "normal"
FontAngle "normal"
ShowName on
}
BlockParameterDefaults {
Block {
BlockType DataTypeConversion
OutDataTypeMode "Inherit via back propagation"
OutDataType "sfix(16)"
OutScaling "2^0"
LockScale off
ConvertRealWorld "Real World Value (RWV)"
RndMeth "Zero"
SaturateOnIntegerOverflow on
SampleTime "-1"
}
Block {
BlockType Derivative
LinearizePole "inf"
}
Block {
BlockType Gain
Gain "1"
Multiplication "Element-wise(K.*u)"
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
SampleTime "-1"
}
Block {
BlockType Integrator
ExternalReset "none"
InitialConditionSource "internal"
InitialCondition "0"
LimitOutput off
UpperSaturationLimit "inf"
LowerSaturationLimit "-inf"
ShowSaturationPort off
ShowStatePort off
AbsoluteTolerance "auto"
IgnoreLimit off
ZeroCross on
ContinuousStateAttributes "''"
}
Block {
BlockType Saturate
UpperLimit "0.5"
LowerLimit "-0.5"
LinearizeAsGain on
ZeroCross on
SampleTime "-1"
}
Block {
BlockType "S-Function"
FunctionName "system"
SFunctionModules "''"
PortCounts "[]"
}
Block {
BlockType SignalGenerator
WaveForm "sine"
TimeSource "Use simulation time"
Amplitude "1"
Frequency "1"
Units "Hertz"
VectorParams1D 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
OutDataTypeMode "Same as first input"
OutDataType "sfix(16)"
OutScaling "2^0"
LockScale off
RndMeth "Floor"
SaturateOnIntegerOverflow on
SampleTime "-1"
}
}
AnnotationDefaults {
HorizontalAlignment "center"
VerticalAlignment "middle"
ForegroundColor "black"
BackgroundColor "white"
DropShadow off
FontName "Lucida Bright"
FontSize 10
FontWeight "normal"
FontAngle "normal"
UseDisplayTextAsClickCallback off
}
LineDefaults {
FontName "Lucida Bright"
FontSize 9
FontWeight "normal"
FontAngle "normal"
}
System {
Name "single_motor_pos"
Location [410, 356, 1094, 623]
Open on
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"
ReportName "simulink-default.rpt"
Block {
BlockType Reference
Name "AOUT_0"
Ports [2]
Position [575, 75, 655, 115]
BackgroundColor "yellow"
SourceBlock "etherlab_lib/EtherCAT/Beckhoff/AOUT_0"
SourceType "EL4xxx"
master "0"
index "1"
model "EL4132"
input_type "Separate Inputs"
scale "[]"
tsample "-1"
debug "0"
}
Block {
BlockType Sum
Name "Add"
Ports [3, 1]
Position [445, 89, 475, 121]
Inputs "+++"
CollapseMode "All dimensions"
InputSameDT off
OutDataTypeMode "Inherit via internal rule"
OutScaling "2^-10"
SaturateOnIntegerOverflow off
}
Block {
BlockType DataTypeConversion
Name "Data Type Conversion"
Position [125, 188, 200, 222]
OutDataTypeMode "double"
RndMeth "Floor"
SaturateOnIntegerOverflow off
}
Block {
BlockType Derivative
Name "Derivative"
Position [360, 155, 390, 185]
}
Block {
BlockType Reference
Name "ENC_0"
Ports [0, 1]
Position [30, 185, 110, 225]
BackgroundColor "yellow"
SourceBlock "etherlab_lib/EtherCAT/Beckhoff/ENC_0"
SourceType "EL5101"
master "0"
index "3"
reload off
reset off
fwdcount off
gate "None"
freqwin "100"
reloadvalue "65535"
control off
preset off
dtype "Double"
value on
latch off
freq off
period off
window off
status off
tsample "-1"
debug "0"
}
Block {
BlockType Gain
Name "Gain"
Position [320, 25, 350, 55]
Gain "0.01"
ParameterDataTypeMode "Inherit via internal rule"
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "Gain1"
Position [300, 90, 330, 120]
Gain "0"
ParameterDataTypeMode "Inherit via internal rule"
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "Gain2"
Position [300, 155, 330, 185]
Gain "0.005"
ParameterDataTypeMode "Inherit via internal rule"
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Gain
Name "Gear"
Position [215, 160, 245, 190]
Orientation "up"
Gain "gear_ratio"
ParameterDataTypeMode "Inherit via internal rule"
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Reference
Name "Generate Code"
Ports []
Position [541, 160, 644, 200]
BackgroundColor "lightBlue"
ShowName off
FontName "Arial"
FontSize 12
FontWeight "bold"
SourceBlock "etherlab_lib/Generate Code"
SourceType ""
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"
}
Block {
BlockType Integrator
Name "Integrator"
Ports [1, 1]
Position [355, 90, 385, 120]
IgnoreLimit off
}
Block {
BlockType Saturate
Name "Saturation"
Position [510, 90, 540, 120]
}
Block {
BlockType SignalGenerator
Name "Signal\nGenerator"
Ports [0, 1]
Position [155, 90, 185, 120]
Amplitude "180/180*pi"
}
Block {
BlockType Sum
Name "Sum"
Ports [2, 1]
Position [220, 95, 240, 115]
ShowName off
IconShape "round"
Inputs "|+-"
CollapseMode "All dimensions"
InputSameDT off
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
Port {
PortNumber 1
Name "test_sig"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Line {
Name "test_sig"
Labels [0, 0]
SrcBlock "Sum"
SrcPort 1
Points [25, 0]
Branch {
Points [0, 0]
Branch {
DstBlock "Gain1"
DstPort 1
}
Branch {
Points [0, 65]
DstBlock "Gain2"
DstPort 1
}
}
Branch {
Labels [2, 0]
Points [0, -65]
DstBlock "Gain"
DstPort 1
}
}
Line {
Labels [0, 0]
SrcBlock "Gear"
SrcPort 1
DstBlock "Sum"
DstPort 2
}
Line {
SrcBlock "Gain"
SrcPort 1
Points [50, 0; 0, 55]
DstBlock "Add"
DstPort 1
}
Line {
SrcBlock "Integrator"
SrcPort 1
DstBlock "Add"
DstPort 2
}
Line {
SrcBlock "Derivative"
SrcPort 1
Points [10, 0; 0, -55]
DstBlock "Add"
DstPort 3
}
Line {
SrcBlock "Add"
SrcPort 1
DstBlock "Saturation"
DstPort 1
}
Line {
SrcBlock "Gain1"
SrcPort 1
DstBlock "Integrator"
DstPort 1
}
Line {
SrcBlock "Gain2"
SrcPort 1
DstBlock "Derivative"
DstPort 1
}
Line {
SrcBlock "Saturation"
SrcPort 1
DstBlock "AOUT_0"
DstPort 2
}
Line {
SrcBlock "ENC_0"
SrcPort 1
DstBlock "Data Type Conversion"
DstPort 1
}
Line {
SrcBlock "Signal\nGenerator"
SrcPort 1
DstBlock "Sum"
DstPort 1
}
Line {
SrcBlock "Data Type Conversion"
SrcPort 1
DstBlock "Gear"
DstPort 1
}
Annotation {
Name "angle[rad]"
Position [228, 216]
}
}
}
_______________________________________________
etherlab-users mailing list
etherlab-users@etherlab.org
http://lists.etherlab.org/mailman/listinfo/etherlab-users