Why use Add-On Instructions (AOIs) instead of a traditional teach pendant or proprietary robot software? In this lesson, Tim Wilborne and Chris Elston from YRG Inc. demonstrate the game-changing advantages of controlling a Yamaha Scara robot directly inside Rockwell Automation Studio 5000 and a PanelView HMI making point touch-ups fast and accessible for maintenance technicians.
Start your hands-on training: Industrial Robotics & IO-Link Trainer
The Power of PLC-Based Robot Control
In a typical factory environment, touching up robot points often requires connecting a laptop, retrieving a specialized teach pendant, and navigating robot-specific software. Integrating the robot into Allen-Bradley PLCs using Add-On Instructions (AOIs) eliminates these extra tools by storing positional data and executing moves directly inside the Logix controller.
Key Benefits of AOI Integration:
HMI-Based Touch-ups: Maintenance personnel can recalibrate and teach positions using an HMI/PanelView without taking the robot offline or using a teach pendant.
Direct TCP Command Moves: Programmers can command precise Tool Center Point (TCP) positions directly in millimeters and degrees straight from ladder logic.
Centralized Data Storage: Positional arrays are saved inside PLC Controller Tags rather than locked inside the robot controller.
Direct Position Motion with Move MM Blocks
Using the Move_MM Add-On Instruction, you can send absolute coordinates directly to a 400 mm Scara robot without pre-teaching positions in the robot controller.
Executing Direct Moves:
Enable the Move_MM instruction block in your Studio 5000 ladder logic routine.
Enter target values for the TCP:
X Axis: Linear distance forward (e.g., 0 mm or 200 mm).
Y Axis: Linear lateral distance (e.g., 400 mm or 200 mm).
Z Axis: Vertical height displacement.
R Axis: Tool rotation angle (e.g., 45 degrees).
Trigger the move command to drive the robot to the specified coordinates.
Toggle arm orientation (such as Right-Hand vs. Left-Hand configuration) directly within the instruction parameters.
Storing Robot Points in PLC Controller Tags
To manage multi-point sequences, positional data is structured into User-Defined Data Types (UDTs) and stored as Controller Tag arrays within Studio 5000.
Point Array Structure:
An array tag (e.g., Robot_Points[X]) stores full coordinate data for each point location:
X / Y / Z: Cartesian location values (in mm).
R: Tool orientation angle (in degrees).
Comment: Text string identifying the point (e.g., "Home", "Pick Position", "Place Position").
Rapid Point Teaching via PanelView HMI
By setting the robot controller to a free state with servo motors unpowered, technicians can manually position the arm and record real-time TCP coordinates directly into the PLC tag array.
Step-by-Step Point Teaching Workflow:
Free the Robot: Disable servo power to allow manual movement of the arm.
Read Real-Time TCP Data: Enable Get Positions on the PanelView to stream real-time motor feedback to the HMI display.
Teach Positions: Manually move the arm to each sequence location and press Teach to write TCP coordinates into the respective array index:
Index 0 (Home Position): Set the default rest position and press Teach.
Index 1 (Pick Position): Move the gripper to the physical pick point and press Teach.
Index 2 (Above Pick Position): Raise the Z-axis straight up to establish clearance and press Teach.
Index 3 (Above Place Position): Move to the drop-off area, adjust the R-axis rotation, and press Teach.
Index 4 (Place Position): Lower the arm into the target location and press Teach.
Replaying the Taught Sequence
Once points are saved into the PLC tag array, restore servo power to test and cycle through the taught locations:
Re-enable servo power from the HMI.
Step through the sequence using the PanelView replay interface:
Execute move to Home Position.
Advance to Pick Position.
Retract to Above Pick Position.
Traverse to Above Place Position.
Lower to Place Position.
Return to Home Position.
Knowledge Check Quiz
-
What is the primary advantage of using PLC Add-On Instructions (AOIs) and an HMI for robot control over traditional teach pendants?
Click to reveal answer
It allows maintenance technicians to teach and touch up robot points directly inside the PLC from an HMI without needing a laptop or specialized teach pendant software.
-
How does the Move_MM instruction command the robot's motion?
Click to reveal answer
It allows you to type Tool Center Point (TCP) values (X, Y, Z in millimeters and R in degrees) directly into the instruction block in ladder logic without pre-teaching points in the robot controller.
-
Where is the positional point data stored when using PLC AOI integration?
Click to reveal answer
Inside Studio 5000 Controller Tags as User-Defined Data Type (UDT) arrays.
-
What state must the robot be in to manually move the arm and teach positions using the PanelView HMI screen?
Click to reveal answer
The robot servo motors must be turned off to free the arm so it can be moved by hand while real-time TCP values are streamed via the "Get Positions" function.
-
What parameters are included within each index of the robot point tag array?
Click to reveal answer
Cartesian coordinates (X, Y, Z), tool rotation angle (R), and a descriptive point comment.