Delta Tau GEO BRICK LV Reference Manual

Page of 760
Turbo PMAC/PMAC2 Software Reference
 
Turbo PMAC Program Command Specification 
 446 
 
{expression} is a mathematical expression representing the value to be assigned to this M-
variable. 
This command sets the value of the specified M-variable to that of the expression on the right side of the 
equals sign.   
Note: 
In a motion program, the assignment is done as the line is processed, not 
necessarily in order with the actual execution of the move commands on either side 
of it.  If it is in the middle of a continuous move sequence, the assignment occurs 
one or two moves ahead of its apparent place in the program (because of the need 
to calculate ahead in the program). 
To have the actual assignment of the value to the variable to be synchronous with the beginning of the 
next move, use the synchronous M-variable assignment command M{constant}=={expression} 
instead. 
Examples: 
M1=1 
M102=$00FF 
M161=P161*I108*32 
M20=M20 & $0F 
See Also: 
How Turbo PMAC Executes a Motion Program, Synchronous Variable Assignment (Writing and 
Executing Motion Programs) 
Program Commands I{data}=P{data}=Q{data}=M{data}==
M{data}=={expression}  
Function: 
Synchronous M-Variable Value Assignment 
Type: 
Motion program 
Syntax: 
M{data}=={expression} 
where: 
 
{data} is a constant, or an expression in parentheses, for an integer value from 0 to 8191 
representing the M-variable number; 
 
{expression} is a mathematical expression representing the value to be assigned to this M-
variable. 
This command allows the value of an M-variable to be set synchronously with the start of the next move 
or dwell.  This is useful especially with M-variables assigned to outputs, so the output changes 
synchronously with beginning or end of the move.  Non-synchronous calculations (with the single =) are 
fully executed ahead of time, during previous moves. 
Note:
 
This command may not be used with any of the thumbwheel-multiplexer forms of 
M-variables (TWB, TWD, TWR, TWS). 
In this form, the expression on the right side is evaluated just as for a non-synchronous assignment, but 
the resulting value is not assigned to the specified M-variable until the start of the actual execution of the 
following motion command. 
Note: 
If using this M-variable in further expressions before the next move in the program 
is started, the value assigned in this statement will not be received.