Units¶
Robotics mixes units, and PAROL6's software converts between them at several places. The rule is: the interfaces speak degrees and millimetres, the firmware speaks motor steps, and the maths in between is in radians and metres.
| Quantity | At the interface (commander GUI, RBTscript, Python API) | Inside the software | At the firmware |
|---|---|---|---|
| Joint angle | degrees | radians | motor steps (microsteps) |
| Position | millimetres | metres | — |
| Orientation | degrees (three angles) | rotation matrices, radians | — |
| Joint speed | commander: percent of the maximum; API: a fraction of the maximum in (0, 1] | rad/s | steps per second |
| Tool speed | commander: percent; API: a fraction | m/s, rad/s | — |
| Acceleration | percent, or a fraction | rad/s², m/s² | steps/s² |
| Time | seconds | seconds | 10 ms cycles; the timing counter in 1.422 µs ticks |
| Gripper position | commander: 0 to 255; API: a fraction 0 to 1 | 0 to 255 | |
| Gripper current | commander: milliamps; API: a fraction of the tool's current range | milliamps |
Steps¶
The firmware knows nothing but steps: 200 full steps per motor turn, 32 microsteps each, 6400 per turn, times the joint's gear ratio for a turn of the joint (Drives, ratios and resolution). The PC software converts with the two constants it keeps in its robot model:
Speed fractions¶
The Python API's speed and accel are fractions of the robot model's maxima, in (0, 1], not percentages: a
speed=0.5 joint move runs the leading joint at half its maximum speed, and the others proportionally so that
all finish together. A duration above zero overrides the speed: the move takes that long, whatever the speed
fraction says. The commander's speed slider is a percentage applied to its own, lower, maxima.
Angles wrap¶
Joint 3 reports about 105° to 295° and joint 6 0° to 360°, both with the standby at 180°; joints 1, 2, 4 and 5 report signed angles. Orientation angles wrap at ±180°: a pose with Rz = 179° and one with Rz = −181° are the same, and a program that compares angles must take that into account.
Comments
Found a mistake on this page? Edit it on GitHub · Report it · Get help · This page as Markdown · llms.txt · The whole manual as PDF