MC_GearInPos
Parameters
| * | Parameter | Data Type | Description | Default |
|---|---|---|---|---|
| VAR_IN_OUT | ||||
| B | Master | AXIS_REF | A logical reference to the master axis. | |
| B | Slave | AXIS_REF | A logical reference to the slave axis. | |
| VAR_INPUT | ||||
| B | Execute | BOOL | Upon the rising edge, all other function block inputs are read and the function is initiated. To modify an input, change the value and re-trigger the execute input. | FALSE |
| B | RatioNumerator | DINT | Gear ratio numerator. | DINT#0 |
| B | RatioDenominator | DINT | Gear ratio denominator. | DINT#1 |
| B | MasterSyncPosition | LREAL | Master Position by which the axes will be synchronized. | LREAL#0.0 |
| B | SlaveSyncPosition | LREAL | Slave position at which the axes are synchronized. | LREAL#0.0 |
| E | SyncMode | INT | Not supported; reserved for future use. | INT#0 |
| E | MasterStartDistance | LREAL | Master Distance for synchronization procedure. See Note Below | LREAL#0.0 |
| E | Velocity | LREAL | Maximum Velocity allowed by the slave during 'StartSync' to the 'InSync' event | LREAL#0.0 |
| E | Acceleration | LREAL | Acceleration limit while attempting to Engage | LREAL#0.0 |
| E | Deceleration | LREAL | Deceleration limit while attempting to Engage | LREAL#0.0 |
| E | Jerk | LREAL | Not supported; reserved for future use. Value of the jerk in [user units / second^3]. | LREAL#0.0 |
| E | BufferMode | MC_BufferMode |
|
MC_BufferMode#Aborting |
| VAR_OUTPUT | ||||
| E | StartSync | BOOL | The slave has started to synchronize, but not yet synchronized with the master. | |
| B | InSync | BOOL | Set high when the axis first reaches the specified gear ratio (function is complete). The output will remain high and only go low when an MC_Stop or MC_GearOut function block is executed. | |
| E | Busy | BOOL | Set high upon the rising edge of the Execute input, and reset when Done, CommandAborted, or Error is true. In the case of a function block with an Enable input, a Busy output indicates the function is operating, but not ready to provide Valid information. (No Error) | |
| E | Active | BOOL | For buffered modes, this output is set high at the moment the block takes control of the axis. For non buffered modes, the outputs Busy and Active have the same value. | |
| B | CommandAborted | BOOL | Set high if motion is aborted by another motion command or MC_Stop. This output is cleared with the same behavior as the Done output. | |
| B | Error | BOOL | Set high if an error has occurred during the execution of the function block. This output is cleared when 'Execute' or 'Enable' goes low. | |
| E | ErrorID | UINT | If Error is true, this output provides the Error ID. This output is reset when 'Execute' or 'Enable' goes low. | |
Error Description
See the Function Block ErrorID List.
Notes
- If the master is stationary when the MC_GearInPos function is executed, it will remain busy until motion occurs.
- Only one SyncMode is supported: MC_SyncMode#Acc_Vel_Dec uses the input parameters Acceleration, Velocity, & Deceleration to make a move to the SlaveSyncPosition. The slave may attain synchronization early if these parameters are set higher than optimally required. If these parameters will not allow the slave to engage by the time the master reached the MasterSyncPosition, an error will result.
- MasterStartDistance and MasterSyncPosition are in units of the specified master.
- MasterDistance is a relative distance from the desired synchronization point. The slave will start the synchronization process when the master is within this range of the MasterSyncPosition.
Usage Matrix Chart
Examples
Scenario 1: Master Axis moving at constant velocity of 5 revolutions/second. The Slave Axis, starting from stationary, will sync with the Master using MC_GearInPosition with a gear ratio of 2:1 at the Master position of 0.6 and the Slave position of 0.0.
The Logic Analyzer trace of the Slave Axis syncing with the Master Axis using the program shown above is shown below:
Scenario 2: Master Axis moving at constant velocity of 5 revolutions/second. The Slave Axis, starting from motion in the opposite direction, will sync with the Master using MC_GearInPosition with a gear ratio of 1:1 at the Master position of 0.0 and the Slave position of 0.0.
The Logic Analyzer trace is shown below:
Timing Diagram