I am looking for support regarding my final project at technical college.
My project team and I are trying to implement a dynamic process application using a 4-axis SCARA robot combined with a linear axis. The application simulates a sealing process.
The SCARA robot should follow the contour of a workpiece (square or circle) that is mounted on the linear axis while the linear axis is moving continuously. In our setup, this is simulated using a pen mounted on the SCARA.
In other words:
The linear axis moves continuously, while the SCARA follows the contour relative to the moving workpiece. The goal is a clean and synchronized coordinated motion between both systems (axis coupling).
Does anyone have experience with coupling a robot to an additional linear axis or implementing such coordinated motion using mappMotion?
Currently used software:
Automation Studio 4.12.6.106
Automation Runtime Q4.93
mappMotion 5.29.1
SCARA controlled via MpScara4Axis
Linear axis controlled via MpAxisBasic
Any advice or suggestions would be highly appreciated.
If your Kinematic should follow an external movement, there are 2 possibilities. MC_BR_OnlinePathInfluence_N is a simple API which allows to add/overlap an external movment to your active AxesGroupPath. This is was intendet to use for Distance Control but can be used for othere UseCases as well.
The use Case you descriped is typicaly what we at B&R understand as a Tracking-Application and for this we have a dedicated Tracking functionality for the AxesGroup.
In contrast to the PLCopen Functionblock the Tracking must be supported by the Kinematic so you have to check in the AS-Help.
Please note that i used the latest versions, so please duble check for your Installed Versions. But in case it is not available i would recommend to upgrade.
As we can see the SCARA 4Ax Kinematik should support the Tracking, so you can continue to read this chapter in AS-Help.
Thank you for your fast help.
I followed the instructions for Tracking: Configured Tracking Path, Object Hierarchy, Feature Tracking, and in the ST Program: Create Frame, Get Frames, Delete Frames.
Now my question is: how do I start the tracking process? Is it right to use TrackObject()?
When using TrackObject(), I get the failure: Calling a function block requires a variable with the data type of the function block.
Where do you get this error message. I think this sounds like a message from the AS-Compiler. If possible please try to add a picture of the message in future, it helps to get more context.
If you followed the Steps in the Getting Started they show here to create the ST-Motion Programm. ST-Motion Programm
It is important that a ST-Motion Programm is not and ST-Task.
It is basicaly only a Text file which could also be created outside of Automation Studio.
The ST-Motion File ist started via a MC_MoveProgram Command and interpreted by the AxesGroup.
There is no special Toolbox Element for the ST-Motion File in the Toolbox.
It is typicaly expected to have this outside of Automation Studio.
If you want to have a File in logical View you can Copy paste any text file and rename it.
You can also move Text Files from Windows via Drag&Drop to the Logical View.
If you use a CNC-Program from the Toolbox it is used as a B&R-Module and Transfered via the Standard Transfer in the section of Nc-Datamodules. It is not a Text-File.
If you want to use a Data-Module with ST-Motion it is possible by Setting the Default Language to ST, or you use the _ST suffix at the Datamodule.