Difference between revisions of "MC-Basic:IDNVALUEARRAY"
| (20 intermediate revisions by 4 users not shown) | |||
| Line 6: | Line 6: | ||
IdnValueArray (''<drive address>, <IDN>, <element>, <long_type_array_name>,{<ring>}, {<connection>} | IdnValueArray (''<drive address>, <IDN>, <element>, <long_type_array_name>,{<ring>}, {<connection>} | ||
'') | '') | ||
| − | |AVAILABILITY= | + | |AVAILABILITY= Since Version 4.7.12 for SERCOS III |
|DESCRIPTION= | |DESCRIPTION= | ||
| − | This function | + | This function works only for IDNs containing more than one Long Type value in array method . |
| + | It fills the preliminary declared Long Type Array by IDN data, and returns the number of IDN values introduced into the array. | ||
|TYPE= | |TYPE= | ||
| − | '' | + | <''returned value''>: Long (number of IDN values introduced into the array ). |
|RANGE= | |RANGE= | ||
| − | '' | + | <''drive address''>: 1 to 254<br> |
| − | '' | + | <''IDN''>: 1 to 65536<br> |
| − | '' | + | <''element''>: 1 to 7<br> |
| − | '' | + | <''ring''>:1<br> |
| − | '' | + | <''connection''>:0 to 2 for normal systems (0 = chose automatically, 1 = first AT connection, 2 = first MDT connection) |
|UNITS= | |UNITS= | ||
| Line 33: | Line 34: | ||
|LIMITATIONS= | |LIMITATIONS= | ||
| − | Read | + | *Read only |
| − | + | *Executed only in SERCOS communication phases 2, 3 and 4. | |
| − | The IDN must be defined | + | *The IDN must be defined |
| − | Array | + | *The Long Type Array should be declared preliminary, its size should be enough to contain the IDN data. |
| − | + | *Not supported in EtherCAT system | |
|EXAMPLE= | |EXAMPLE= | ||
| Line 48: | Line 49: | ||
? IDNVALUEARRAY (<drive>, <idn>, <element>, <long_type_array_name>, <ring>, <connection>) | ? IDNVALUEARRAY (<drive>, <idn>, <element>, <long_type_array_name>, <ring>, <connection>) | ||
| + | |||
| + | Example For Bosch Rexroth drive : | ||
| + | |||
| + | -->?istr(Ax1.dadd,0x8000+1120,7) | ||
| + | |||
| + | 1 3 6 5 | ||
| + | |||
| + | -->common shared VelFilterType[10] as long | ||
| + | |||
| + | |||
| + | -->? IDNVALUEARRAY (Ax1.dadd, 0x8000+1120, 7, VelFilterType) | ||
| + | |||
| + | 4 | ||
| + | |||
| + | -->?VelFilterType[1] | ||
| + | |||
| + | 1 | ||
| + | |||
| + | -->?VelFilterType[2] | ||
| + | |||
| + | 3 | ||
| + | |||
| + | -->?VelFilterType[3] | ||
| + | |||
| + | 6 | ||
| + | |||
| + | -->?VelFilterType[4] | ||
| + | |||
| + | 5 | ||
| Line 53: | Line 83: | ||
|SEE ALSO= | |SEE ALSO= | ||
| − | * [[ | + | * [[MC-Basic:IDNSTATE|IDNSTATE]] |
| − | * [[ | + | * [[MC-Basic:WRITEIDNSTRING|WRITEIDNSTRING]] |
| − | * [[ | + | * [[MC-Basic:WRITEIDNVALUE|WRITEIDNVALUE]] |
| − | * [[ | + | * [[MC-Basic:IDNVALUE|IDNVALUE]] |
| − | * [[ | + | * [[MC-Basic:IDNVALUEARRAYDOUBLE|IDNVALUEARRAYDOUBLE]] |
| + | |||
| + | [[Category:Obsolete|IDNVALUEARRAY]] | ||
}} | }} | ||
Latest revision as of 09:19, 22 May 2014
This function works only for IDNs containing more than one Long Type value in array method .
It fills the preliminary declared Long Type Array by IDN data, and returns the number of IDN values introduced into the array.
Short form
IVALA
Syntax
IdnValueArray (<drive address>, <IDN>, <element>, <long_type_array_name>,{<ring>}, {<connection>} )
Availability
Since Version 4.7.12 for SERCOS III
Type
<returned value>: Long (number of IDN values introduced into the array ).
Range
<drive address>: 1 to 254
<IDN>: 1 to 65536
<element>: 1 to 7
<ring>:1
<connection>:0 to 2 for normal systems (0 = chose automatically, 1 = first AT connection, 2 = first MDT connection)
Scope
Configuration, Task or Terminal
Limitations
- Read only
- Executed only in SERCOS communication phases 2, 3 and 4.
- The IDN must be defined
- The Long Type Array should be declared preliminary, its size should be enough to contain the IDN data.
- Not supported in EtherCAT system
Examples
? IDNVALUEARRAY (<drive>, <idn>, <element>, <long_type_array_name>)
? IDNVALUEARRAY (<drive>, <idn>, <element>, <long_type_array_name>, <ring>)
? IDNVALUEARRY (<drive>, <idn>, <element>, <long_type_array_name>, , <connection>) --> Translator note: Ring number is zero
? IDNVALUEARRAY (<drive>, <idn>, <element>, <long_type_array_name>, <ring>, <connection>)
Example For Bosch Rexroth drive :
-->?istr(Ax1.dadd,0x8000+1120,7)
1 3 6 5
-->common shared VelFilterType[10] as long
-->? IDNVALUEARRAY (Ax1.dadd, 0x8000+1120, 7, VelFilterType)
4
-->?VelFilterType[1]
1
-->?VelFilterType[2]
3
-->?VelFilterType[3]
6
-->?VelFilterType[4]
5