![background image](http://html1.mh-extra.com/html/omron/r88a-mcw151-drt-e/r88a-mcw151-drt-e_operation-manual_742243104.webp)
89
Motion Execution
Section 5-3
>> VR(0)=$FF
>> PRINT VR(0)
255.0000
A value can be printed in hexadecimal by using the HEX function. Negative
values result in the 2’s complement hexadecimal value (24-bit). Valid range is
from -8388608 to 16777215. Example:
>> TABLE(0,-10,65536)
>> PRINT HEX(TABLE(0)),HEX(TABLE(1))
FFFFF6 10000
Positioning
For positioning, the Unit will round up if the fractional encoder edge distance
calculated exceeds 0.9. Otherwise the fractional value will be rounded down.
The internal measured and demanded position of the axes, represented by
the MPOS and DPOS axis parameters, have 32-bit counters. Note that print-
ing the MPOS and DPOS parameters will give the 24-bit integer value (see
above description).
Floating point comparison
The comparison functions considers small difference between values as
equal to avoid unexpected comparison results. Therefore any two values for
which the difference is less than
are considered equal.
Precedence
The precedence of the operators is given below:
Unary Minus, NOT
^
/ *
MOD
+ -
= <> > >= <= <
AND OR XOR
Left to Right
The best way to ensure the precedence of various operators is through the
use of parentheses.
5-3
Motion Execution
Every task on the MC Unit has a set of buffers that holds the information from
the motion commands given. The motion commands include MOVE, MOVE-
ABS, MOVEMODIFY, MOVECIRC, FORWARD, REVERSE, MOVELINK,
CONNECT, CAM and CAMBOX. Refer to 6-2-1 Motion Control Commands
for details on specific commands.
Motion Generator
The motion generator, a background process that prepares and runs moves,
has a set of two motion buffers for each axis. One buffer holds the Actual
Move, which is the move currently executing on the axis. The MTYPE axis
parameter contains the identity number of this move. For example the MTYPE
will have value 10 if currently the FORWARD move is executed. The other
buffer holds the Next Move, which is executed after the Actual Move has fin-
ished. The NTYPE axis parameter contains the identity number of this next
move.
The BASIC programs are separate from the motion generator program, which
controls moves for the axes. The motion generator has separate functions for
each axis, so each axis is capable of being programmed with its own axis
parameters (for example speed, acceleration) and moving independently and
simultaneously or they can be linked together using special commands.
When a move command is processed, the motion generator waits until the
move buffers for the required axes are empty and then loads these buffers
with the move information.
1.19 10
6
–
⋅