Difference between revisions of "CPRog Examples"
(→Demo) |
(Added link to Structured Programming article) |
||
Line 14: | Line 14: | ||
== Matrix Motion == | == Matrix Motion == | ||
[[File:CPRogMatrix.JPG|500px|thumb|left|The matrix motion in CPRog]] | [[File:CPRogMatrix.JPG|500px|thumb|left|The matrix motion in CPRog]] | ||
− | In order to grip work pieces form a rectangular tray | + | In order to grip work pieces form a rectangular tray one has to control the robot so that it moves a new position and then operates the gripper. The motions have to be carried out multiple times for multiple items on the matrix. To simplify setting up such a motion, CPRog can handle ''loops and subprograms''. In this case once would program two loops: one that increment the x and y of the target position and a second loop that controls the gripping motion. Here some example code that accomplishes this task: |
<br clear="all"/> | <br clear="all"/> | ||
===Program Files=== | ===Program Files=== | ||
Line 25: | Line 25: | ||
Please refer to the command reference for further information on the commands and variables: [http://www.cpr-robots.com/download/CPRog/CPR_CommandReference.pdf Command Reference] | Please refer to the command reference for further information on the commands and variables: [http://www.cpr-robots.com/download/CPRog/CPR_CommandReference.pdf Command Reference] | ||
+ | |||
+ | === Structured programming using Sub-Programs and Matrix Motion === | ||
+ | The article [[Structured_Programming]] gives a short introduction on how to use sub-programs and the matrix command. A pick-and-place example can be downloaded there as well. | ||
===Troubleshooting=== | ===Troubleshooting=== |
Revision as of 11:37, 25 November 2020
This page shows an example program for the CPRog software v980-10-XXX
Demo - First Program
Here a video in which we demonstrate the programming and control of a robolink DCi roboter. The DCi is a compact roboter with integrated electronics and a linux single board computer, so that once the program is written in CPRog on an external PC, the DCi can operate and run a program without any connection to an external PC: Robolink DCi Programming in CPRog. Programming of other robolink robots is identical but requires the external PC to remain connected during execution of the program.
Matrix Motion
In order to grip work pieces form a rectangular tray one has to control the robot so that it moves a new position and then operates the gripper. The motions have to be carried out multiple times for multiple items on the matrix. To simplify setting up such a motion, CPRog can handle loops and subprograms. In this case once would program two loops: one that increment the x and y of the target position and a second loop that controls the gripping motion. Here some example code that accomplishes this task:
Program Files
- Download the following xml files (right click, save as) and save both of them in the directory
C:\CPRog\Data\Programs
.- The main program testMatrix.xml
- The gripping sub program sub_matrixGrip.xml
- Load the
test.matrix.xml
program in CPRog by clicking on the folder symbol in the menu ribbon at the top right.
Always first test any program in a simulation, i.e. with the robot disconnected in software. The starting positions of the example code may have to be adapted to your specific set up!
Please refer to the command reference for further information on the commands and variables: Command Reference
Structured programming using Sub-Programs and Matrix Motion
The article Structured_Programming gives a short introduction on how to use sub-programs and the matrix command. A pick-and-place example can be downloaded there as well.
Troubleshooting
- If the robot does not perform the complete pattern, please check if the motion might exceed the motion limits. This is shown in the log messages tab on the bottom of CPRog.
- Take a look at the variables in the "variables" tab on the bottom of CPRog. This often helps to find problems.
- Precision: If the real robot approaches the positions with offsets it might be necessary to perform a fine calibration. Please have a look at the according page Define the zero position offsets or get in contact!
For questions please get in contact