Difference between revisions of "Point Redundancy"
m (in construction) |
m (in construction) |
||
Line 84: | Line 84: | ||
* [[MC-Basic:PRINTUSING|PrintU]] | * [[MC-Basic:PRINTUSING|PrintU]] | ||
* [[MC-Basic:PrintPoint|PrintPoint]] | * [[MC-Basic:PrintPoint|PrintPoint]] | ||
− | * [[MC-Basic: | + | * [[MC-Basic:PrintPointUsing|PrintPointU]] |
* [[MC-Basic:robot.ARMCMD|robot.ARMCMD]] | * [[MC-Basic:robot.ARMCMD|robot.ARMCMD]] | ||
* [[MC-Basic:COMMON SHARED or DIM SHARED or DIM ... AS LOCATION OF ...|COMMON SHARED or DIM SHARED or DIM ... AS LOCATION OF ...]] | * [[MC-Basic:COMMON SHARED or DIM SHARED or DIM ... AS LOCATION OF ...|COMMON SHARED or DIM SHARED or DIM ... AS LOCATION OF ...]] | ||
}} | }} |
Latest revision as of 13:14, 13 August 2019
Language: | English |
---|
Point Redundancy is a flag that indicates the type of solution calculated by the Motion Controller to reach a specific point in space.
If a point was declared, for example; DIM SHARED PNT AS LOCATION OF XYZR, then the following sub-fields exists;
PNT.ARM, PNT.ELBOW, PNT.WRIST, PNT.TURN1, ..., PNT.TURN6
There are 3 ways to obtain Point Redundancy:
1. By using the property PNT.ARM (for SCARA only):
- 0 - Auto (closest solution), the default value
- 1 - Lefty (J2.PCMD < 0)
- 2 - Righty (J2.PCMD > 0)
2. Assignments:
- PNT = Scara.HERE or PNT = Scara.SETPOINT
- In that case, flags are automatclly set during the assignment.
3. Constant Assignment:
- PNT = #{X,Y,Z,R;<'flag'>} by using the ";" separator between the location and the flag.
- Note: in the previous format, all flags were set to zero (for more information refer to 'SEE ALSO' section).
Syntax
Dim Shared PNT as Location Of XYZR
PNT = #{X,Y,Z,R;<'flag'>}
Availability
- FirmWare 0.4.20.1 and newer
Type
- long
Range
- 0-2
Default
- 0 - Auto flag
Scope
- Read/Write, Configuration, Task, Terminal
Limitations
1. There are no flags used when declaring location as a joint point (DIM SHARED JPNT AS JOINT OF XYZR).
2. Expressions are only allowed when all flags are equal or one of them is non-AUTO;
- for example, if A = #{X1,Y1,Z1;1} and B = #{X2,Y2,Z2;1}, the expression PNT = A+B is valid
Examples
move to a specific location with point redundancy flag = 1
move to the same location using point redundancy flag = 2
If the following point is declared;
- common shared PNT as location of XYZR
- PNT = #{0,0,0,0;1}
The usage of Print or "?" commands prints the previous format:
- -->Print PNT
- -->#{0 , 0 , 0 , 0}
The usage of PrintPoint command prints the new format;
- -->PrintPoint PNT
- -->#{0 , 0 , 0 , 0 ; 1}
The usage of PrintPointU command prints a formatted output;
- -->PrintPointU "#.##"; PNT
- -->#{0.00 , 0.00 , 0.00 , 0.00 ; 1}
When the flag or separator are omitted, the following formats are equivalent:
- PNT = #{0,0,0,0}
- PNT = #{0,0,0,0;}
- PNT = #{0,0,0,0;0}