Introduction
The OMRON FB library for position controllers provides a collection of function blocks developed for simple open loop axis positioning.
Most of the FBs share the same interface (I/O) regardless of the output device employed for positioning (CJ1M, CPUs, CP1H or NC Units).
All the FBs rely on the functionalities built-in the CPUs and NC units.
None of the functions employ the feedback from an encoder for positioning.
Function Description
- When the Start (Execute) turns ON, the axis of the specified Axis No. (Axis) starts operating at the specified Speed command_1 (Velocity_1) and Acceleration (Acceleration).
- When the Interrupt input selection (InterruptSelect) turns on during the positioning operation, an interrupt feeding will be performed (the axis is moved from the Interrupt position (InterruptPosition) for the Interrupt feed distance (Distance) at a speed and acceleration specified with the Speed command (Velocity_2) and Acceleration (Acceleration).
- The interrupt feeding is executed using the pulse output selected with the Pulse output method (OutPulseSelect).
- The Positioning completed (Done) will be turned ON when the interrupt feeding operation for this FB is completed (i.e., when the axis finishes traveling for the Interrupt feed distance (Distance)).
- The Error flag (Error) will be turned ON and the Error Code (ErrorID) will be output if an error occurs for this FB.These statuses will be reset when the Start (Execute) turns OFF.
- If the Start (Execute) turns OFF before completion of a positioning operation, the statuses will be set at least for one cycle when a corresponding condition occurs.
Example
Basic function | Move the axis for a specified distance after an interrupt input turns ON |
Symbol | |
File name | Lib\FBL\omronlib\PositionController\NC-CPU(CJ1MCPU2x)\_NCCPU111_MoveInterrupt_DINT10.cxf |
Applicable models | CPU Unit CJ1M-CPU21/22/23 Unit version 3.0 or higher |
CX-Programmer Version 5.0 or higher |
Variable Tables
Input variables
Name | Variable name | Data type | Default | Range | Desctiption |
EN | EN | BOOL | 1(ON): Starts FB
0(OFF): Does not start FB |
||
Axis No. | Axis | INT | &0 | &0 to &1 | &0: PulseOutput 0
&1: PulseOutput 1 |
Start | Execute | BOOL | 0(OFF) | Starts interrupt feeding operation | |
Interrupt input selection | InterruptSelect | BOOL | 0(OFF) | Specify a bit corresponding to the interrupt task to be used | |
Interrupt position | InterruptPosition | DINT | +0 | Specify the same address as the first destination address set for teh PRV instruction in the interrupt task | |
Interrupt feed distance | Relative | DINT | +0 | -2,147,483,647 to +2,147,483,648 | Specify a distance that the axis travels after an interrupt input (Unit: Pulse) The sign indicates the direction of the operation (+ CW, - CCW) |
Speed command 1 | Velocity_1 | DINT | +1 | -100000 to -1, +1 to 100000 | Specify the target speed before an interrupt feeding operation starts (Unit: Hz) The sign indicates the direction fo the operation (+ CW, - CCW) |
Speed command 2 | Velocity_2 | DINT | +1 | +1 to 100000 | Specify the speed for an interrupt feeding operation (Hz) |
Acceleration rate | Acceleration | INT | &1 | &1 to &65535 | Specify the acceleration rate Unit: Hz/4ms (increase (Hz) in pulse frequency per Pulse Control period (4ms)) |
Deceleration rate | Deceleration | INT | &1 | &1 to &65535 | Specify the deceleration rate Unit: Hz/4ms (increase (Hz) in pulse frequency per Pulse Control period (4ms)) |
Pulse method output | OutPulseSelect | INT | &0 | &0 to &1 | &O: CW/CCW Output
&1: Pulse + direction output |
Output variables
Name | Variable name | Data type | Range | Description |
ENO | ENO | BOOL | 1(ON): Starts FB 0(OFF): Does not start FB |
|
Positioning completed | Done | BOOL | 1(ON) indicates that positioning has been completed | |
Status | Status | INT | 0: Start (Execute) = OFF or Positioning Completed (Done) = 1 1: Waiting for interrupt input 2: Interrupt feeding operation in progress |
|
Error flag | Error | BOOL | 1(ON) indicates that an error has occurred in the FB | |
Error code (may be omitted) | ErrorID | WORD | The error code of the error in the FB will be output.For details of the errors refer to the sections of the manuals listed in the manuals mentioned above. When Unit No. or Axis No. is out of the range 0000 will be output. |
*Combinations of interrupt input signals and interrupt tasks on the CJ1M CPU Units are shown below:
Input Signal | Address | Interrupt Task No. |
Interrupt input signal 00 | CIO2960.00 | 140 |
Interrupt input signal 01 | CIO2960.01 | 141 |
Interrupt input signal 02 | CIO2960.02 | 142 |
Interrupt input signal 03 | CIO2960.03 | 143 |
*Combinations of interrupt input signals and interrupt tasks on the CJ1W-INT01 interrupt Units are shown below:
Slot No. | Input Signal | Address | Interrupt Task No. |
0 | Interrupt input signal 00 | CIO0000.00 | 100 |
-- | -- | -- | |
Interrupt input signal 15 | CIO0000.15 | 115 | |
1 | Interrupt input signal 00 | CIO0001.00 | 116 |
-- | -- | -- | |
Interrupt input signal 15 | CIO0001.15 | 131 |