®
COSIMIR  
Educational  
User’s Guide  
5
0
36501 EN  
6/2003  
Order no.  
526501  
Description:  
Designation:  
Manual  
D:HB-COSIMIR-EDUNET-EN  
Revision level:06/2003  
Authors:  
Layout:  
Ulrich Karras, IRF University Dortmund  
18.06.2003, Beatrice Huber  
©
Festo Didactic GmbH & Co. KG, 73770 Denkendorf, Germany, 2003  
Internet: www.festo.com/didactic  
e-mail: did@festo.com  
The copying, distribution and utilization of this document as well as the  
communication of its contents to others without expressed  
authorization is prohibited. Offenders will be held liable for the payment  
of damages. All rights reserved, in particular the right to carry out  
patent, utility model or ornamental design registration.  
Contents  
1
1
1
1
1
1
1
.
Introduction ________________________________________5  
®
The COSIMIR3DSimulationSystem ____________________6  
.1  
.2  
.3  
.4  
.5  
.6  
What’s new?________________________________________7  
Notation ___________________________________________9  
System Requirements_______________________________10  
Installation ________________________________________11  
Special Notes______________________________________27  
®
The COSIMIREducationalConcept___________________29  
2
2
2
2
2
.
.1  
.2  
.3  
.4  
Didactic Concept____________________________________ 29  
Approach andLearningGoals_________________________30  
Learning via Virtual Workcells _________________________ 32  
The Workcells ______________________________________ 40  
®
Working with COSIMIR_____________________________49  
®
3
3
3
3
3
.
.1  
.2  
.3  
.4  
COSIMIR Help_____________________________________50  
®
The COSIMIRAssistant______________________________51  
®
The COSIMIRUserInterface__________________________54  
Window Types_____________________________________55  
4
4
4
4
4
.
Programming ______________________________________ 63  
Teach-In __________________________________________63  
Example: Programming a Workcell_____________________66  
Automatic Trajectory Generation_______________________ 74  
Download tothe Mitsubishi Robot Controller____________76  
.1  
.2  
.3  
.4  
5
5
5
5
5
5
.
Simulation ________________________________________77  
Settings___________________________________________ 77  
Example: WorkcellSimulation________________________77  
Sensor Simulation__________________________________80  
PLC Simulation _____________________________________ 80  
Process Simulation__________________________________ 81  
.1  
.2  
.3  
.4  
.5  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
3
Contents  
6
6
6
6
6
.
Modelling_________________________________________ 83  
Model Hierarchy ____________________________________ 83  
Model Libraries_____________________________________ 84  
Model Explorer _____________________________________ 85  
Modelling inaWorkcell______________________________90  
.1  
.2  
.3  
.4  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
4
1
. Introduction  
®
Welcome tothenew4.1 release of COSIMIREducational.  
®
COSIMIR Educationalprovides you with avirtuallearningenvironment  
in the field of robotics. Step by step, you’ll be able to advance  
independently from very simple robotics applications right through to  
highly complex workcells in a highly realistic, simulated 3D work  
environment.  
The virtual learning environment consists of:  
Programming and simulation environment for predefined robotic  
workcells that represent typical industrial applications  
The Robotics Assistant online tutorial offering comprehensive  
robotics knowledge via multimedia presentations  
The Robotics Assistant is not a CBT (computer based training), but  
rather a multimedia information system that provides teachers with  
support in designing courses of study, and that can be used by trainees  
for autodidactic learning.  
You decide yourself how you’ll proceed with your course of study. With  
®
its integrated library of workcells, COSIMIREducationalprovidesyou  
with an introduction to robotics covering various degrees of complexity.  
The library of workcells encompasses innumerable examples of typical  
industrial robotic workcells, including appropriate function descriptions  
and technical documentation. A sample application is included for each  
workcell, and instructions are provided for implementing each  
respective application. You can decide whether or not you’d like to  
install the sample solutions while installing the software. Of course  
you’ll also have the opportunity of developing and solving a host of  
other tasks for any or all of the predefined robotic workcells.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
5
1
. Introduction  
®
The COSIMIREducationalleaningenvironmentprovidesyouwithuser  
®
help in a number of ways. TheCOSIMIRonlinehelpfunction isbased  
on the standard HTML Windows help format. The Microsoft Internet  
explorer (version 3.0 or higher) is required in order to use the help  
function.  
This new release incorporates many of the comments and suggestions  
®
we have received from COSIMIREducationalusers. Inorderto  
®
continue improvingCOSIMIREducational,weinvite all futureusersto  
send us their comments, suggestions and criticism as well. We would  
also be happy to answer any questions that might arise regarding  
®
COSIMIR Educational.  
Just send us an e-mail at: dka@festo.com  
You can also contact us by calling our telephone hotline should you  
®
experience problems while installingorusing COSIMIREducational.  
®
COSIMIR isan industrial 3D simulation system for PC basedoperating  
1
.1  
®
The COSIMIR3D  
simulation system  
® ®®  
systems including Windows 95and98,as well as Windows NT,  
®
®
®
2000 andXP.COSIMIRfacilitatesthe planningofroboticworkcells,  
testing the reach ability of all required positions, the development of  
robotics and control programs, and layout optimisation. All motion  
sequences and handling operations can be simulated in order to rule  
out the possibility of collision, and to optimise cycle times.  
Work-cells can be created using library components such as machines,  
robots, tools, assembly lines, loaders and more with the help of  
®
COSIMIR modelexpansion modules.Youcan also createyourown  
workcell components, and import part models and workpieces from  
®
other CAD systems such as AutoCAD.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
6
1
. Introduction  
®
We’ve integrateda hostof newworkcellsinto COSIMIREducational:  
1
.2  
What’s new?  
A simple introductory workcell with Mitsubishi RV-M1 and RV-2AJ  
robots  
Robotic workcells from the “Basic Robotics” workbook (BP70)  
furnished to our initial robot customers, for taking advantage of  
®
existing learning scenarios in COSIMIREducational  
®
All roboticworkcellsfrom our newversionC of MPS:  
Robot station  
Robot station with assembly  
Robot station with assembly and hydraulic punch  
including comprehensive documentation of the sample programs.  
Control panels are also made available as highly realistic 3D objects.  
Festo handling systems  
Robotic welding station, which is also offered as part of our  
CIM/FMS system  
Manual” feeding of workpieces is accomplished by means of simple,  
supplementary buttons. It’s no longer necessary to import workpieces  
as new models.  
The following methodology has been utilised for the workcell sample  
programs:  
All sample programs for Mitsubishi robots use the Melfa Basic IV  
programming language if supported by the utilised controller.  
Otherwise, MRL is used (Movemaster Command).  
All programs for workcells that do not include any Mitsubishi robots  
have been written in universal IRL (industrial robot language).  
However, Mitsubishi’s Melfa Basic IV programming language can  
also be used with these workcells, although not all of the special  
Mitsubishi functions can be used in this case.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
7
1
. Introduction  
A graphic representation of the I/O assignment list for the workcell’s  
sensors/actuators and the inputs and outputs at the robot controller  
can be additionally selected in the model explorer. New connections can  
be established by means of drag and drop within this display. Input and  
output statuses are displayed online by mean of colour codes in the  
simulation mode.  
The integrated S5 soft PLC has been replaced with an S7 soft PLC.  
Program modules can be displayed online in the STL mode, and can be  
run in single-step operation. This provides for a much more clear-cut  
representation of strictly specified PLC functionality in several of the  
sample workcells.  
®
You’re not only able to modify the layout with the new COSIMIR  
Educational release, you can also import new designs which have been  
®
®
created usingCOSIMIRIndustrialorCOSIMIRProfessional.However,  
the import function does not support I/O connections, which must be  
set up manually after import.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
8
1
. Introduction  
1
.3  
Certain types of notation are used for texts, key combinations  
(shortcuts) and key sequences, making it easier to locate and identify  
different types of information.  
Notation  
Text formats  
The following text formats are used:  
Text Format  
Bold  
Used for  
Names of commands, menus and  
dialogue boxes  
Cursive  
Place holder: text must be specified for  
elements using cursive formatting.  
CAPITALS  
Acronyms, folder names and file names:  
lower case letters can also be used when  
entering these names.  
Quotation marks”  
Command options: quotation marks are  
also used to highlight chapter titles  
included as references within body text.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
9
1
. Introduction  
Notation for key  
Key combinations (shortcuts) and key sequences are written as follows:  
combinations (shortcuts)  
and key sequences  
Notation  
Meaning  
Key 1 + Key 2  
A plus sign (+) between the names of the  
two keys means that both keys are  
activated simultaneously.  
Key 1 - Key 2  
A minus sign (-) between the names of  
the two keys means that they are  
activated one after the other.  
1
.4  
Minimum Configuration  
System Requirements  
Processor  
Pentium II, 300 MHz or higher  
RAM  
128 MB  
850 MB  
Hard disk space  
Operating system  
Graphic card  
®
®
®
®
Windows 95,98;NT,2000orXP  
®
3D acceleration and support for OpenGL,  
32 MB RAM  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
1
0
1
. Introduction  
Recommended Configuration  
Processor  
Pentium IV, 1 GHz  
RAM  
256 MB  
650 MB  
Hard disk space  
Operating system  
Graphic card  
® ®  
Windows NT,2000orXP  
®
3D acceleration and support for OpenGL,  
64 MB RAM  
Monitor  
17" screen with resolution of 1024 x 768  
pixels  
®
A CD and this user’s guide are supplied with COSIMIREducational.The  
software can be installed in two different ways:  
1
.5  
Installation  
Network installation  
Installation with online activation  
Installation with  
Getting started:  
online activation  
Switch on your PC and start Microsoft Windows.  
®
Insert the COSIMIREducationalCD ROM into theCDdiskdrive.  
Click Run in the start menu.  
Enter d:setup.exe to the entry field in the dialogue box which then  
appears. Acknowledge your entry by clicking the OK button.  
If your CD ROM disk drive has a designation other than “d:”, the  
letter “d” must be replaced with the appropriate designation.  
The installation program’s initial window appears:  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
11  
1
. Introduction  
Follow the instructions that appear at the screen. If you are uncertain  
about how you should answer any given question, click either Back or  
Next.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
1
2
1
. Introduction  
The Festo Didactic license agreement is displayed first. You must accept  
the license agreement in order to continue installing the software. Click  
Agree, and then click the Next button.  
Now you are provided with the option of installing the software for a  
single, currently logged on user only.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
13  
1
. Introduction  
This dialogue box prompts you to enter your product ID. The product ID  
is a 12-place character string which is printed on the back of the CD  
sleeve.  
If the product ID is entered incorrectly, a message appears prompting  
you to enter a valid product ID.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
1
4
1
. Introduction  
®
You can select the folder to which COSIMIREducationalwillbe  
installed in the Directory path dialogue box.  
C:\Programs\didactic\CosimirEducationalGB appears automatically as  
a default directory path. If you would like to install the software to  
another folder, click the Browse button.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
15  
1
. Introduction  
Note  
In any case, you should select a folder that does not contain any other  
®
versions ofCOSIMIR.  
You are also provided with the option of selecting a program group to  
®
which the COSIMIREducationalicons can be saved. FestoDidactic  
appears automatically as a default program group, which you can of  
course rename if you wish.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
1
6
1
. Introduction  
®
COSIMIR Educationalis now readyto beinstalled. ClicktheNext  
button in order to start installation.  
®
Installing COSIMIR  
®
The initial window for the COSIMIREducationalinstallationprogram  
appears.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
17  
1
. Introduction  
®
COSIMIR Educationalcanbeinstalledalongwith twosupplementary  
options, which can be selected in the following dialogue box:  
We recommend to use the default settings. Click the Option button of  
®
COSIMIR Kernel.Followingdialog boxwillappear:  
The examples include predefined robotic workcells with  
comprehensively described tasks. Click the OK button. You will be  
asked to confirm following selection:  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
1
8
1
. Introduction  
The corresponding solutions can also be installed.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
19  
1
. Introduction  
®
A message appears indicating that COSIMIREducationalhasbeen  
installed successfully. Click the Finish button.  
Software installation has now been completed. Now you’ll need to  
decide whether you want to activate your license immediately, or later.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
2
0
1
. Introduction  
Online activation  
Various options are available for enabling your license. We recommend  
using the direct online activation option. Indirect online activation can  
be executed from a separate PC, or you can request your activation code  
on the phone.  
However, this telephone service is only available from  
Monday through Friday, from 8 a.m. to 10 p.m. central European time.  
If you decide to use the direct, online activation option:  
You are prompted to establish a connection with the Internet, after  
which your license is enabled automatically.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
21  
1
. Introduction  
The following dialogue box appears if your PC is equipped with a  
firewall that prevents incoming communication via the Internet:  
Your activation key appears in the display shown above. Select this  
number and copy it to the clipboard with the key combination Ctrl+C,  
®
and then paste it totheCOSIMIRactivationdialogue box with thekey  
combination Ctrl+V. Click the Finish button in order to complete license  
enabling.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
2
2
1
. Introduction  
Indirect activation  
The following dialogue box appears if you select the indirect online  
activation option for inquiring at a separate PC:  
Access the website at the specified web address from a separate PC.  
The following display appears:  
Copy the license key into the appropriate entry field and click the  
Generate enable code button.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
23  
1
. Introduction  
The activation code appears. Copy this code and enter it in the  
appropriate field at the PC to which the software has been installed.  
Telephone inquiry  
If you decide to request your enable code on the phone:  
Call the phone number shown in the above dialogue box. You’ll be  
asked for the license key.  
You may save the license key. Click the Print/Copy… button. Following  
options will be offered:  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
2
4
1
. Introduction  
You’ll receive your enable code in return, which must be entered to the  
appropriate field. Click the Finish button in order to enable your license.  
Multiple License  
If you’ve purchased a multiple license, each installation must be  
enabled separately. Each time an installation is enabled, a message  
appears indicating how many licenses can still be issued with the  
specified product ID.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
25  
1
. Introduction  
Network installation  
Most importantly, the term network installation makes reference to  
software licensing which is executed via a network from a central  
license server. A green license dongle is required for network  
installation. Licensing of the individual installations is executed  
dynamically, and licenses can be requested from any workstation within  
the network until the ordered number of licenses has been allocated.  
The license server is a PC within the network that executes the licensing  
procedure. The license dongle must be plugged into the parallel port of  
the license server, and must be accessible to all licensed workstations  
at all times.  
Single workstation  
Single workstations can also be licensed locally. Start installation as  
described above, and the following initial window appears:  
Select the second option in order to license a single workstation.  
Proceed with installation as described above.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
2
6
1
. Introduction  
®
After installation has been completed, additional COSIMIRprogram  
components can be installed with the help of the Change components  
option.  
License server  
If you want to licence a workstation via a licenser server, carefully read  
the included network installation instructions first.  
1
.6  
When you access a model for the first time from the help function, a  
dialogue box appears for downloading files. Notes on working with this  
dialogue box can be displayed by clicking the (Special Note) link in the  
model help window:  
Special Notes  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
27  
1
. Introduction  
Known conflicts with other programs:  
Winamp  
As a standard function, Winamp registers file types with the “.mod”  
extension in a protected mode. This makes it impossible to open models  
from the help function. If Winamp has already been installed on your PC,  
it must first be deinstalled, and then reinstalled with a different option  
setting. Click the (Special Note) link to this end. A display appears which  
includes a further link: (Known Conflicts). Click the (Known Conflicts)  
link for a complete description of the correct option settings required for  
Winamp.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
2
8
®
. The COSIMIREducationalConcept  
2
®
COSIMIR Educationalsoftwareisbased upon the concept of anopen  
2
.1  
Didactic Concept  
learning environment.  
Open learning environment means:  
An open approach to learning characterised by constructivism, i.e.  
various tools including basic knowledge, a lexicon and simulations  
are made available which can be combined and utilised as desired in  
accordance with your own learning objectives.  
This open concept has also been implemented in organising the basic  
knowledge. The central topic is robotics, which is why we call it the  
Robotics Assistant”. It’s not laid out as a CBT or a WBT, but rather as  
an interactive, multimedia knowledge and information system. The  
contents of the program are presented as individual information  
modules including:  
Texts (concepts, explanations, regulations, examples etc.)  
Graphics  
Videos and animations  
The information modules are interconnected by means of hyperlinks.  
The Robotics Assistant provides you with various options for accessing  
information in a targeted fashion:  
Searches for keywords or topics  
Tree structure navigator  
List of selected topics  
Selected information can also be printed out at any time.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
29  
®
. The COSIMIREducationalConcept  
2
Why have we selected this open concept for imparting knowledge?  
We do not perceive the acquisition of knowledge and information as  
an end unto itself, but rather as a necessity for solving problems.  
The project task or the problem to be solved are at the heart of our  
concept, resulting in the need to acquire new knowledge in order to  
solve the problem at hand.  
Acquiring knowledge and information with modern methods based  
on software technology is one of the central learning tasks in  
today’s technological society.  
A further didactic concept is the provision of virtual work environments  
in the form of simulated robotic workcells. These are represented in 3  
dimensions in order to create as realistic an image as possible.  
Options for experimenting with the workcells effectively place the  
trainee in a close relationship to the object under study. Knowledge  
is tested and reinforced.  
Realistic experience provided by the workcell gives rise to a new  
quality of knowledge: theoretical knowledge is transformed into  
practical application and skills.  
The workcells promote learning by discovery at different levels of  
difficulty (it works, it doesn’t work, it works more efficiently etc.).  
2
.2  
Robotics is a fascinating, but at the same time highly complex and  
intricate technology. We restrict ourselves here to the field of industrial  
robotic systems, and the area of mobile robotics will not be addressed  
at all.  
Approach and Learning  
Goals  
Target groups and  
prerequisites  
Our approach is aligned to vocational training in the following areas:  
Mechatronics  
Various technical qualifications for metalworking and electrical  
engineering  
Information technology  
Our approach is aligned to technical colleges and universities. We also  
assume that you, the trainee, are familiar with the Windows PC  
environment.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
3
0
®
. The COSIMIREducationalConcept  
2
Trainees must be equipped with certain basic knowledge in order to get  
started in the field of robotics. The Robotics Assistant provides  
comprehensive basic knowledge on the subject of industrial robots (see  
chapter 2.1 above). The Robotics Assistant makes it possible for the  
trainee to:  
Acquire basic knowledge independently, and in a targeted fashion  
Prepare for problem solving tasks  
Retrieve, and if necessary print out additional information during the  
problem solving stage  
We also provide teachers with the opportunity of using the Robotics  
Assistant as a multimedia supplement to their own course. Thus  
®
COSIMIR Educationalassists you in organising the basics foryour  
projected learning approach in a highly flexible way right from the  
beginning of the introductory phase. We recommend covering at least  
the following subjects with the Robotics Assistant for introductory  
courses:  
Definition of robots including characteristic values  
Robot design with subchapters covering hardware, different types of  
robots and work safety  
Robot programming languages  
That which has been read or heard can then be subjected to practical  
testing, analysed and implemented by the trainee in his work with the  
numerous virtual robotic workcells. Of course we are aware of the fact  
that a virtual workcell is not capable of imparting all of the many  
aspects of this technology. Problems associated with drive technology,  
accuracy and dynamics are not taken into consideration in the  
simulations. For this reason, we also offer the respective hardware  
environments for several of the workcells:  
BP70  
®
MPS RobotStation  
®
MPS RobotAssemblyStation  
®
MPS PunchingStation  
FMS-MachineAssembly  
RobWeld  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
31  
®
. The COSIMIREducationalConcept  
2
An ideal learning environment can be created with these workcells by  
fulfilling the following basic requirements:  
At least one real robotic workcell  
®
One workstation (learning station)witha COSIMIRIndustrial(or  
®
COSIMIR Professional)license  
®
Each traineehastheir own COSIMIREducationallicense  
In this way, each trainee has the opportunity of downloading their  
program to the robot controller at the real workcell, and can start up  
and run their own solution to the specified problem at the actual  
system.  
2
.3  
The virtual workcells create an experimental environment for trainees,  
allowing them to experience and grasp the required basic knowledge. At  
the same time, they are a point of departure for the examination of new  
questions and problems, i.e. for building upon existing knowledge.  
Learning via  
Virtual Workcells  
The educational portion supplies you with descriptions of all of the  
robotic workcells, and the graphic navigator (see figure 2.1) provides  
you with direct access to all applications. The descriptions of each of  
the respective workcells can be opened by clicking the image of the  
appropriate models in the graphic navigator:  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
3
2
®
. The COSIMIREducationalConcept  
2
Figure 2.1: Model description  
An animation is started by clicking the model image, and the respective  
workcell is demonstrated by means of a simulation sequence. The  
trainee is thus provided with visual support in addition to the workcell’s  
function description. The following additional information can be  
displayed:  
Learning objectives (know how):  
Here we’ve listed the typical learning objectives that can be realised  
with the respective workcell as examples. Of course it is also  
possible to establish additional objectives with the selected robotic  
workcell, depending upon the specified tasks.  
Description of the workcell:  
This section provides a function description of the workcell, creating  
the basis for the generation of one’s own tasks.  
Components of the workcell:  
This section contains a brief technical documentation of the most  
significant components included in the respective workcell.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
33  
®
. The COSIMIREducationalConcept  
2
I/O connections:  
Here you’ll find a commentated list of I/O assignments for the robot  
controller, as well as for the PLC if included.  
Programming:  
The structure of the sample program is explained, and helpful  
hyperlinks and tips are provided for program writing.  
In addition to, and independent of the included hyperlinks, you can also  
access any explanations of terminology and basic theory which you  
deem necessary for your problem solving task at any time with the help  
of the assistant explorer or the index and search functions.  
Introductory workcell  
Which workcell should you start with? If you have no previous robotics  
knowledge, we recommend beginning with the “First Steps” and “Next  
Steps” models. In the First Steps workcell, simple rectangular  
workpieces can be picked up from a table, moved to a pallet, and finally  
positioned on a second pallet. A glass plate is located between the two  
pallets in the Next Steps workcell, and an alternate position must thus  
be added to the pick & place sequence in order to avoid possible  
collision.  
Work-cells with either the Mitsubishi RV-2AJ robot or the RV-M1  
predecessor model can be selected. The RV-2AJ can be programmed  
with the modern, high-level Melfa Basic IV robot language, whereas the  
simple command language, Movemaster Command (MRL), must be  
used with the older RV-M1. We only recommend the model with the RV-  
M1 robot if your hardware environment also includes RV-M1 robots.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
3
4
®
. The COSIMIREducationalConcept  
2
Before writing a robot program, you must first learn to move the robot  
and actuate its gripper. The robot can be moved within various  
coordinate systems:  
Joint coordinates  
World coordinates  
Tool coordinates  
The various coordinate systems can be visualised in the workcell  
window. Robots can be set into motion with a so-called teach panel. A  
universal control module is also replicated in the simulation by means  
of the teach-in window and can also be used to move the robot. For  
example, attempt to move the robot by simply changing the axis  
coordinates such that it is able to securely grasp a workpiece with its  
gripper.  
Three-dimensional  
navigation  
Three-dimensional navigation within the workcell presents you with an  
additional problem. The representation of the workcell changes  
depending upon the point of view:  
From the top left or top right  
From the front or the back  
From up close or far away  
At least two different views are required for trouble-free, three  
®
dimensional orientation.With COSIMIREducational,thenumberof  
views is only limited by the performance characteristics of your PC.  
Robot motion  
You’ll discover that it’s quite advantageous to make use of motion  
within the other coordinate systems in order to grasp a workpiece. On  
the other hand, each movement executed by the robot is the result of  
coordinated motion of the individual joints. These can be viewed in the  
status window, for example in order to observe the means by which  
axes must be moved in order to advance the gripper along the X-axis in  
the world coordinate system. In order to execute the gripping operation,  
the gripper must be appropriately oriented. Consider whether or not  
restrictions would result in this area through the use of a 5-axis  
articulated robot?  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
35  
®
. The COSIMIREducationalConcept  
2
The position list  
Now that you’ve brought the robot into a position from which it can  
grasp the workpiece with its gripper, you can save this point to the  
position list. The position list contains all of the points to which the  
robot must move directly for a given program, as well as important  
ancillary points for moving along a path (mid-point, diverging point  
etc.). Why is a position list so important? One could argue that as long  
as the cell is known, any desired point can be calculated. Why, then,  
should the robot first move to certain teaching points? The answer is  
quite simple: As a rule, industrial robots demonstrate very good  
repetition accuracy, but their absolute positioning accuracy is entirely  
inadequate for most applications. Further details are included in the  
Robotics Assistant.  
One of the main tasks during commissioning of a robotics application is  
testing the position list, i.e. positions established in the simulation are  
tested via the real system, and are modified if necessary. It is thus  
extremely important for trainees to become well acquainted with the  
teach-in procedure in the simulation.  
Each workcell has its own position list which you can take advantage of  
in order to reduce the time required for teaching in all of the positions.  
As is also the case with the teach-in procedure, two different types of  
motion commands are also used for programming robot motion:  
The first robot program  
Movement from a starting point to an end point, which is known as  
point-to-point movement (abbreviated PTP). The actual path to the  
robot’s end point is not defined, because all axes travel to their end-  
positions independent of one another.  
Movement of the robot to the end point via a predefined path (for  
example along a straight line).  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
3
6
®
. The COSIMIREducationalConcept  
2
Sample task  
The blue workpiece in the First Steps model must first be set onto the  
middle section of the first pallet. After a waiting period of 2 seconds, it  
must then be sorted into the bottom section of the second pallet.  
Sequence plan  
First, a sequence plan is created for the program:  
1
2
.
.
The robot’s gripper is open.  
The robot moves the gripper to the gripping position (blue  
workpiece) with a PTP movement.  
3
.
.
The gripper is closed.  
4
The robot moves the gripper to the middle section of the first pallet  
with a PTP movement.  
5
6
7
8
.
.
.
.
The gripper is opened.  
The robot moves linearly back to a point above the first pallet.  
2 second waiting period  
The robot moves the gripper back to the middle section of the first  
pallet (linear movement).  
9
1
.
The gripper is closed.  
0. The robot moves the gripper to a point above the final position with  
a PTP movement (for safety reasons).  
1
1
1
1
1. The robot moves the gripper to the final position (linear movement).  
2. The gripper is opened.  
3. The robot returns to its initial position with a PTP movement.  
4. End  
Of course the robot’s controller is unable to understand this text, which  
must be translated step by step into, for example, the Melfa Basic IV  
programming language:  
1
2
0 HOPEN 1  
0 MOV P1, -30 “P1=gripping position”  
etc.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
37  
®
. The COSIMIREducationalConcept  
2
The sequence plan should be laid out such that each step can be  
implemented by means of a command or a subprogram. At the same  
time, the sequence plan provides you with ideal documentation of your  
program. Details regarding Mitsubishi programming languages can be  
®
found inthe“Programming” chapter includedinthe COSIMIRhelp  
function.  
Downloading to  
The program has now been created, and must be downloaded to the  
®
robot controller. This procedure can be replicated in COSIMIR  
the robot controller  
Educational, because the simulation includes a fully fledged robot  
controller. The downloading procedure is completed in two steps:  
Compile the program, i.e. the syntax of the programming language is  
checked and is translated into universal IRDATA machine code.  
The machine code is downloaded to the robot controller, i.e. the  
code is linked to the controller.  
Any errors that might occur are displayed. The details for this procedure  
are presented in chapter 4.2.  
Simulation  
The program has now been downloaded without error to the robot  
controller. Start the program and observe the 3D motion sequence. You  
can select either the  
automatic mode  
or the  
single step mode,  
and you’re able to determine whether or not the sequence is executed  
in a logically and functionally correct fashion.  
Collision detection  
If the sequence is error-free, you should then check to see if any  
undesired collisions occur. The Next Steps model is used to illustrate  
this procedure, which includes an additional glass plate between the  
two pallets. Start collision detection (see chapter 5.2), and then start  
the above described program. If a collision occurs, the robot’s path  
must be suitably changed. Check to see whether or not any other  
collisions might occur during the sequence. Why, for example, does the  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
3
8
®
. The COSIMIREducationalConcept  
2
robot move to a point above the final position for safety reasons in the  
above represented sequence plan? Check the other movements and  
gripping positions with this in mind.  
Flexibility in  
Various problems can be posed for each of the workcells. The layout of  
any given workcell can be readily changed with the help of the model  
explorer (see chapter 6.3), for example the pallets or the workpieces in  
the First Steps model can be repositioned. Can the tasks still be  
completed after repositioning? Additional components can also be  
imported to the workcell (see also chapter 6.4).  
designing tasks  
If you use a Kuka, an ABB or a Fanuc robot in your laboratory  
environment, you can use the ABB Pick & Place, FANUC Pick & Place and  
KUKA Pick & Place models as alternative introductory workcells.  
The IRL programming  
language  
Robot systems from various manufacturers use different programming  
languages, although there is a standardised, universal robot  
programming language known as IRL (industrial robot language). We  
®
have selectedthe following didactic solution for COSIMIREducational:  
We offer the Melfa Basic IV high-level programming language or the  
simple MRL command language for all robotic workcells with  
Mitsubishi robots.  
If the workcell does not include any Mitsubishi robots, we offer the  
standardised IRL language. Please note that the robots in these cells  
can also be programmed with Melfa Basic IV, but not all of the  
language’s attributes will be supported in this case.  
Keep in mind that IRL is a significantly more complex language than  
®
Melfa Basic IV. Details regarding IRLareincluded intheCOSIMIRhelp  
function under “Programming”.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
39  
®
. The COSIMIREducationalConcept  
2
Sensor technology  
A robot can only be used flexibly if it is capable of communicating with  
its work environment. The analysis of sensor signals is utilised to this  
end. We have provided numerous workcells for this purpose. We  
®
recommend the BP70 model,andin particular the MPSRobotStation,  
for getting started with this subject matter. In this workcell, the  
positions of objects are detected by the robot in an elementary way, and  
are evaluated for further processing. You can make use of a simulation  
box with 8 inputs and outputs that are connected to the robot’s  
controller in the BP70 workcell.  
2
.4  
The sequence in which the workcells are laid out is organised such that,  
as a rule, knowledge gained in working with previous workcells is very  
helpful in solving the problems posed by subsequent workcells.  
However, if the trainee has prepared himself adequately, the workcells  
can be processed in any other desired order. In any case, before you  
begin work with any given workcell, you should carefully examine the  
respective video animation, as well as instructions regarding  
programming and I/O connections, and included component  
descriptions.  
The Workcells  
FirstSteps/NextSteps  
These robotic workcells have already been described in detail in chapter  
2
.3. They are available with RV-2AJ and RV-M1 robots. The sample  
programs for the RV-2AJ have been created with Melfa Basic IV, and for  
the RV-M1 with MRL.  
PickandPlaceABB.mod  
The PickandPlaceABB.mod workcell includes a very simple handling  
task with a type 2400-16 ABB robot, which serves as a basis for all  
further tasks. Simple examination of the working space can be executed  
with this workcell by repositioning the robot and the pick & place library  
component. For the purpose of introduction, this workcell is also  
available for Fanuc S700 and Kuka KR125Z robots. Please note that it is  
very easy to replace the robot included in the workcell with any other  
robot from the robot library (see also chapter 6.4). The sample  
programs are written in IRL.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
4
0
®
. The COSIMIREducationalConcept  
2
PickandPlaceFesto  
A similar handling task is implemented with this workcell using a Festo  
2-axis pneumatic linear system. This model is also available with  
sensors that detect the objects to be handled. The sample program is  
written in IRL.  
Festo linear gantry  
The linear gantry in this workcell is equipped with a double gripper  
system. It is thus capable of simultaneously removing two crankshafts  
from different workpiece holders, and transferring them to different  
destinations. The sample program is written in IRL.  
FESTO Linear gantry with  
conveyor belt  
This workcell additionally includes two conveyor belts. Two crankshafts  
are removed from a container. However, the container is closed and the  
gantry system must wait until it has been opened. The two crankshafts  
are then removed and each is transferred to a conveyor belt, by means  
of which they are taken away.  
BP70  
This workcell is available with the Mitsubishi RV-M1 robot, as well as  
the RV-2AJ. It additionally includes two workpiece holders, one tool  
holder with tool, a pallet with workpieces and a simulation box with 8  
inputs and outputs. A large number of different tasks can thus be  
executed with the workcell:  
Handling task  
Machining task  
Palletising task  
The tasks section in our “Basic Robotics” workbook includes concrete  
task suggestions. This was the first robotic workcell offered by Festo as  
®
part of the MPSproductrange.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
41  
®
. The COSIMIREducationalConcept  
2
®
MPS RobotStation  
®
This workcell is a simulation of thenewMPSRobotStation,andis  
equipped with the RV-2AJ robot. Geometric data are based upon a CAD  
import of the associated design engineering data. The station performs  
the following task sequence:  
Determine the material characteristics of a workpiece held by the  
robot’s gripper with the help of a sensor.  
Remove workpieces from the seat in a chute after a signal has been  
generated.  
Detect the position of workpieces and set them down correctly  
orientated at an assembly point.  
Sort workpieces into magazines according to material  
characteristics.  
®
This is the standard MPSroboticworkcell. The sampleprogramis  
written in Melfa Basic IV.  
®
MPS RobotHandling  
®
The MPSRobotHandling.modworkcellis a simulationof theMPS  
®
Robot Handling” Station from Festo Didactic. It was the predecessor of  
the above described station. Different types of housings must be sorted  
into magazines using this workcell. The housings are either on a pallet  
or in a storage bin. If the robot is to remove a housing from a storage  
bin, the housing has to be added first by means of the import function.  
The sample program is written in Melfa Basic IV.  
®
MPS RobotAssembly  
®
®
The MPSRobotAssembly.modworkcell is a simulation of theMPS  
Robot Assembly” station from Festo Didactic. It is available with the 6-  
axis Mitsubishi RV-E2 robot, as well as the new 5-axis Mitsubishi RV-  
AJ. It is the task of the robot to completely assemble various cylinders  
2
from individual parts. The appropriate cylinder housing must be fed to  
the robot to this end by importing the respective model from the  
Import” folder. The sample programs are written in Melfa Basic IV for  
the RV-2AJ, and in MRL for the RV-E2.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
4
2
®
. The COSIMIREducationalConcept  
2
®
®
This workcell is a simulation of a combination including the new MPS  
MPS  
RobotAssemblyStation  
“Robot” and “Assembly” stations. The combination replaces the above  
described assembly station. The “Assembly” station is controlled by a  
simulated S7 PLC, or by the robot controller. A comprehensively  
documented sample program is available for both variants. The  
programs are identical to the respective programs for the real robotic  
workcells. The task consists of assembling model cylinders from the  
following components:  
Cylinder housing  
Piston  
Spring (piston return spring)  
Cylinder cap  
Through the use of various cylinder housings (red, black and silver), it is  
possible to assemble various cylinders with different piston diameters  
(
identified by the colours black and silver).  
®
MPS  
This workcell is a virtual representation of a combination including the  
®
three MPSstations“Robot”, “Assembly” and“Hydraulic Punch”.As  
RobotPunchingStation  
before, the “Assembly” station is controlled by a simulated S7 PLC or  
the robot controller. The hydraulic punch is controlled by a simulated S7  
PLC. The hydraulic punch produces the cylinder caps in this combination  
station. Blank caps are fed to the punch from a cap magazine. The hole  
for the piston rod is then punched into the cylinder cap and the cap is  
set into a tray.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
43  
®
. The COSIMIREducationalConcept  
2
PalletAssembly  
LabAutomation  
Packaging  
The PalletAssembly.mod workcell includes a Mitsubishi RV-2AJ robot,  
that has the task of filling a pallet with workpieces. This is also a  
handling task, but robot movements take place to calculated positions  
as well as to predefined positions in this case. For this task, it is also  
useful to introduce the programming of loops. Feeding workpieces from  
a magazine necessitates additional I/O interrogations. The sample  
program is written in Melfa Basic IV.  
Gripper changeover systems must be taken into consideration with the  
LabAutomation.mod workcell. It must be determined whether or not a  
new TCP needs to be calculated. Various tasks must be executed with  
the various gripper systems, which have to be organised via I/O  
communication. It is useful to elucidate the use of subprograms and  
counters for the programming of this workcell. 6-axis Mitsubishi RV-E2  
robots are used. The sample program is written in MRL.  
A SCARA robot equipped with a vacuum gripper is utilised in the  
Packaging.mod workcell. Beyond this, a conveyor belt and the creation  
of additional packages must also be controlled. Removing packages  
from the conveyor belt is controlled by means of I/O communication.  
The sample program is written in the standardised IRL robotics  
language. The integrated programming assistant can be exploited,  
which provides considerable help in creating an initial program.  
Disassembly  
The bolts must be removed from an automobile wheel using a Reis RV-  
1
6 robot in the Disassembly.mod workcell. An inductive sensor is used  
to determine whether or not the robot is using the right socket wrench  
to remove the bolts. Programming must be written in IRL. Knowledge of  
procedural and modular programming must be acquired. Sensor  
interrogations must also be incorporated into the communications  
sequence in this workcell.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
4
4
®
. The COSIMIREducationalConcept  
2
Disktest  
Hard disks are tested at four different stations with the Disktest.mod  
workcell. The test stations perform a surface inspection of the metal  
coatings on the disks. This task can be expanded with a requirement for  
calculating the Cartesian coordinates of the disks, and corresponding  
organisation of generated workcell data into data structures as part of  
the programming.  
Mitsubishi-S7  
A Mitsubishi RH-5AH55 SCARA robot communicates with a PLC in this  
workcell. The robot must execute simple handling tasks based upon PLC  
commands. The robot and the PLC are connected to one another via  
digital inputs and outputs to this end. The sample program is written in  
Melfa Basic IV.  
FMS-MachineAssembly  
The FMS-MaschineAssembly.mod workcell simulates a Festo Didactic  
FMS system. Four different processes can be executed. Depending upon  
the process, a given workpiece holder is fed to the workcell on a  
conveyor belt. The workpiece holder must be added to the model by  
clicking the appropriate button. The following points outline the most  
important new learning content included in this workcell:  
Accurate teach-in of difficult to access positions  
Collision-free path planning in very tight spaces  
Control of the functional units included in an EMCO CNC milling  
machine  
Complex I/O communication  
Initialisation of robot subprograms based upon sensor detection of  
the type of workpiece fed to the system  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
45  
®
. The COSIMIREducationalConcept  
2
Press linking is accomplished by means of two type KUKA KR 125  
industrial robots and a simulated S7 PLC in the PressAutomation.mod  
workcell. In addition to communication with the PLC via digital inputs  
and outputs, the work procedures of two robots must be synchronised  
as an additional challenge in this case. The sample program is written in  
IRL.  
PressAutomation  
RobWeld  
This workcell simulates the actual Festo Didactic FMS welding station.  
Welding is performed by a Kawasaki FS03N robot. The gripper system  
consists of a pneumatic 3-finger gripper and a welding torch, which is  
connected to the robot flange via a collision-shutdown device for safety  
reasons. The task is to weld three raw metal components together into a  
cylinder housing. This can be accomplished by means of spot welding or  
path welding. The sample program is written in IRL, and executes a spot  
welding sequence. A glass shield for the prevention of electro-  
ophthalmia must be brought into position during welding for safety  
reasons. The welding torch must be cleaned after welding.  
TablePainting  
A robot must paint the surface of a table with the help of a spray gun in  
the TablePainting.mod workcell. This painting sequence can also be  
simulated (see also chapter 5.5). As an initial exercise, you should first  
test the painting sequence in teach-in mode in order to gain a bit of  
experience with painting quality. The tool for automatic trajectory  
generation can also be used in order to calculate the robot’s paths for  
execution of the painting sequence (see also chapter 4.3). The effects of  
the parameter settings must be determined in this case.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
4
6
®
. The COSIMIREducationalConcept  
2
CarPainting  
The goal of the CarPainting.mod workcell is to paint a car hood. Due to  
the fact that the hood is a freeform surface, it is very difficult to create a  
painting sequence without the help of automatic trajectory generation.  
Nevertheless, an attempt should be made to complete some of the  
calculations with the help of teach-in points, in order to gain a better  
understanding of the problem.  
PCBMounting  
The PCBMounting.mod workcell is highly demanding, and is well suited  
for project work. It simulates a PCB production line which consists of 6  
work stations:  
Station for inserting ICs  
Station for soldering ICs  
Station with three robots which position the PCB holder  
Station for assembling the PCB to the holder  
Station for screwing the PCB to the holder  
The individual robot programs must be created. Finally, master controls  
must be developed which coordinate the individual actions.  
PlantSimulation  
The PlantSimulation.mod workcell simulates an entire production  
facility that consists of several manufacturing cells:  
The AGV workcell includes an automated guided vehicle system  
(AGVS) that interconnects the individual manufacturing cells within  
the entire production facility. The AGVS receives picking orders  
which it fulfils autonomously. The workcell consists of the AGVS, a  
robot and various workpiece carrier trays with sensors.  
The Workshop workcell consists of two Mitsubishi robots, one of  
which is mounted to an additional linear axis. The robots must  
execute simple handling tasks in a work-order related fashion.  
The Storage workcell controls automated warehousing. It is linked  
to the AGVS by means of a conveyor belt.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
47  
®
. The COSIMIREducationalConcept  
2
The Production workcell consists of a robot, an injection moulding  
machine, a press, a laser labelling unit and a conveyor belt which  
links it to the AGVS. A ventilator fan base is produced in this  
workcell.  
The ventilator fan base must be painted in the Paintshop workcell,  
which consists of a robot, a rotary table, a gripper changeover  
module for grippers with various paint spray guns for different  
colours, and a conveyor belt which links it to the AGVS.  
The individual parts of the ventilator are then assembled in the  
Assembly workcell. This workcell consists of two robots and a  
conveyor system.  
The ventilator is inspected and packaged in the CheckPack workcell.  
It consists of a robot, packaging materials and a conveyor belt which  
links it to the AGVS.  
The individual workcells are available as separate cell models, so that  
each workcell can initially be processed alone. Integration can then be  
accomplished in the form of a large project.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
4
8
®
. Working with COSIMIR  
3
®
After starting COSIMIREducational,youcan directly accessthe  
®
COSIMIR Assistant:  
Figure 3.1: Graphic navigation in the library of workcells  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
49  
®
3
. Working with COSIMIR  
®
The COSIMIRhelpfunction issubdivided into threeparts:  
3
.1  
®
COSIMIR Help  
®
Online help for working with COSIMIR  
®
The COSIMIRRoboticsAssistant  
®
COSIMIR Educationalwhich providesacomprehensive libraryof  
predefined robotic workcells  
The menu bar  
The menu bar provides access to functions like those of a standard  
Internet browser. You can scroll forwards and backwards. You can  
display or hide the navigation bar. You can select a home page, as well  
as other options for Internet connections. You can print out any selected  
topics that serve your needs.  
Figure 3.2: The menu bar  
Additional index cards  
You also have the option of conveniently navigating within the  
®
COSIMIR helpfunction usingadditionalindex cards includingcontents,  
index, search and favourites.  
The Contents index card displays the entire contents of the  
®
COSIMIR helpfunction inan explorer layout,which canbe  
navigated just like the Microsoft explorer.  
The Index displays all of the keywords used by the entire help  
function, by means of which information can also be accessed.  
The Search function facilitates full-text retrieval using all of the  
®
terms that occur within theentireCOSIMIRhelpfunction.  
®
You can create your own explorer structure for the COSIMIRhelp  
function with the Favourites index card.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
5
0
®
. Working with COSIMIR  
3
Figure 3.3: Help function index cards  
®
The COSIMIRAssistantprovides youwithan onlinelearning  
3
.2  
®
The COSIMIRAssistant  
environment for robotics applications in the field of automation  
technology. The assistant is subdivided into two parts:  
®
The COSIMIRRoboticsAssistant  
®
COSIMIR Educational  
The educational part provides you with a description of all of the robotic  
workcells. All applications can be accessed directly via the graphic  
navigator (see also chapter 2.3).  
Figure 3.4: Start-up information dialogue box  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
51  
®
. Working with COSIMIR  
3
The dialogue box is opened by clicking the Start-up info function in the  
Help menu. The graphic display of the robot model appears here under  
the directory path used during installation. You can activate or  
®
deactivate the display of this file eachtimeCOSIMIREducationalis  
started. Acknowledge your setting with the OK button. You can also  
select another directory path by clicking the Browse button, and display  
it immediately using the Open file button, or select it as a start-up  
information file.  
®
Now it’s time to finally getstarted witha robotic workcell in COSIMIR.  
You need only click the button shown in the screenshot on the left, and  
®
the correspondingworkcellmodel is openedinCOSIMIR:  
®
Figure 3.5: Work-cell in COSIMIREducational  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
5
2
®
. Working with COSIMIR  
3
The opened workcell includes a display of all of the windows that are  
required for solving the assigned problem. If you chose not to install the  
solutions during installation, the position list and the programming  
window are empty, but they are set up such that you can begin work.  
®
The basic procedures for working withCOSIMIRaredescribed inthe  
following pages.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
53  
®
3
. Working with COSIMIR  
3
.3  
®
The COSIMIR  
User Interface  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
5
4
®
3
. Working with COSIMIR  
®
The most important windowtypesused in the COSIMIRuserinterface  
3
.4  
Window Types  
are described below.  
The Toolbar  
Additional tools can be selected for inclusion in the toolbar with the  
menu function Extras  Settings  Adjust. We recommend the  
following tools in any case:  
Collision detection  
Model explorer  
Project management  
Renumber & sort  
The Workcell Window  
A graphic representation of the currently selected workcell is displayed  
in the workcell window. Additional views can be opened in the workcell  
window with the menu function View  New, allowing you to observe  
different perspectives simultaneously. The three dimensional  
representation of the workcell is dependent upon the selected point of  
view.  
Click the button shown in the toolbar screenshot on the left (Ctrl + shift).  
The mouse pointerappearsin the form of this button,andcanthenbe  
used to enlarge or reduce the display by moving the mouse.  
Click the button shown in the toolbar screenshot on the left (shift). The  
mouse pointer appears in the formof thisbutton,andcan then beused  
to move the display by moving the pointer along the coordinate axis.  
The display can be rotated around the individual coordinate axes with  
the help of this button (Ctrl).  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
55  
®
. Working with COSIMIR  
3
You can also select various predefined standard views. Use the menu  
function View  Standard to this end. A dialogue box appears which  
includes various options:  
Preset  
(O)  
(V)  
(U)  
(A)  
(L)  
Front view  
Rear view  
Top view  
Left-hand side view  
Right-hand side view(R)  
The desired view appears after clicking one of the above options, as  
long as the workcell window is open. This can also be accomplished by  
simply activating the corresponding keyboard keys.  
Joint Coordinates  
Press the F7key or select the menu function Extras  Robot position  

Show joint coordinates.  
The Joint coordinates window displays the individual positions of each  
of the robot’s joints. Position is specified in degrees for rotary axes, and  
in millimetres for linear axes. The Set joint coordinates dialogue box  
can be accessed by double clicking this window.  
World Coordinates  
Activate the shift+F7key combination or select the menu function  
Extras  Robot position  Show world coordinates.  
The World coordinates window displays the position and orientation of  
the TCP (tool centre point) in world coordinates. In addition to position  
and orientation, the robot’s configuration appears in the bottommost  
line in the window. The Set world coordinates dialogue box can be  
accessed by double clicking this window:  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
5
6
®
. Working with COSIMIR  
3
Teach-In  
Activate the F8key or select the menu function Extras  Teach-in. In  
addition to the designations of the robot’s joints, the window that now  
appears includes two small buttons which can be used to advance the  
robot’s individual joints. The performance of a real robot is simulated  
when these buttons are activated. The robot is accelerated to the preset  
speed (override) if one of these buttons is pressed and held. The preset  
speed is then held constant, and braking to a speed of 0 ensues when  
the button is released, controlled by means of a acceleration ramp.  
By clicking the corresponding option, teach-in can be performed using  
world coordinates or tool coordinates.  
Further details are included in chapter 4.1.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
57  
®
. Working with COSIMIR  
3
Display Coordinate Systems  
Various types of coordinates systems can be displayed for support.  
Select the menu Extras  Coordinate systems to this end (Ctrl + K):  
Show tool centre point (The path of the TCP is recorded when this  
option is selected.)  
Show world coordinate system (coordinate axes are displayed in  
colour)  
Show basic coordinate system (robot coordinate system)  
Show object coordinate system  
Show gripping points  
Inputs/Outputs  
Press the F9key, activate the Ctrl+F9key combination or select the  
menu function Extras  Inputs/outputs  Show inputs or Show  
outputs.  
The Inputs window shows which signals are being applied to the inputs  
of the simulated controller. 0 signals are displayed in red, and 1 signals  
in green. If the input signal is forced, this is indicated by the fact that the  
input value appears in angle brackets, e.g. <1>. If the input is linked to  
an output, the input value appears in brackets, e.g. [1]. the same  
applies to output displays.  
Controller Selection  
®
Select the menu function Execute  Controller selection. COSIMIR  
Educational includes workcells with several controllers, for example one  
PLC and two robot controllers, which work together simultaneously in  
the simulation mode. However, if a procedure is to be taught into a  
robot, the teach panel must be first allocated to the desired robot. This  
task is executed by the controller selection window. It is used to display  
and select a master, and to activate and/or deactivate individual  
controllers. The display of robot positions, the display of inputs and  
outputs, and teach-in are only possible for the robot that has been  
selected as a master.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
5
8
®
. Working with COSIMIR  
3
Robot Program  
Click the menu function File  Open and select the desired file type, i.e.  
*
.MB4 (Melfa Basic IV), *.MRL (Movemaster Command) or *.IRL  
(
industrial robot language). Or create a new program with the menu  
function File  New and select the desired window type, i.e. IRL  
program, Movemaster Command program or MELFA BASIC IV program.  
The screenshot shown on the left contains a robot program in high-level  
language using the native language of the respective robot. The name  
of the associated object is specified in the header.  
Position List  
Click the menu function File  Open and select the desired file type, i.e.  
*
.POS (for Mitsubishi robot) or *.PSL (for industrial robot language).  
Alternatively, create a new position list with the menu function File   
New and select the desired window type, i.e. MRL position list  
(
Mitsubishi robot) or position list.  
The screenshot shown on the left contains a position list for a robot. The  
name of the associated object is specified in the header.  
The New function in the File menu can also be accessed with the button  
shown in the screenshot on the left, or with the Ctrl + N key  
combination.  
User Input/Output  
The User Input/Output window appears automatically if the robot  
program contains commands with which data can be read in or read out,  
for example via the serial interface at the robot controller.  
Due to the fact that the robot controller is only replicated in the  
simulation, data are not transmitted via the serial interface, but rather  
via the User Input/Output window.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
59  
®
. Working with COSIMIR  
3
Camera Cruise  
Camera cruise can be activated or deactivated with the menu function  
Execute  Camera cruise. The first toolbar button shown in the  
screenshot on the left can be used to access this function as well.  
When a simulation is started, movement is initialised to the stored  
points of view, one after the other. Linear interpolation is utilised  
between the views, assuring smooth motion from one to the next.  
After clicking the menu function Extras  Settings  Camera cruise, a  
dialogue box appears which allows you to store various views of your  
workcell window:  
Select the desired point of view for your workcell window and click the  
Add button, in order to add the current view to the list. Existing views  
can also be removed from the list. If you want to change the settings for  
a view, select the respective view and click the Properties button:  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
6
0
®
. Working with COSIMIR  
3
You can name the selected view, assign a dwell time and a zoom time,  
and change the point of view manually.  
Creating an Animation  
You can create an animation of your simulation with the help of the  
camera cruise function. The animation is saved as an AVI file. Trainees  
can use this file for their own presentation purposes, or can submit it as  
the result of their project.  
To create an animation of your simulation:  
1
.
Configure a camera cruise sequence and test it in combination with  
your simulation.  
2
.
In order to create an animation, start simulation and recording of the  
camera cruise sequence with the second toolbar button shown in  
the screenshot on the left.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
61  
®
. Working with COSIMIR  
3
3
.
.
Recording is stopped by clicking the last toolbar button shown in the  
screenshot on the left.  
4
The animation can then be played back with the third button and  
stopped with the last button.  
It is advisable to configure the recording after completion, in order to  
optimise the animation file:  
®
Details regarding configurationareincluded in the COSIMIRhelp  
function under Advanced  Camera cruise  Configuring camera  
cruise  Settings dialogue box – Video. Further helpful support is  
®
provided bythe Camera cruise video in the COSIMIRhelpfunction  
under Examples  Operating.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
6
2
4
. Programming  
®
The following programming languages can be used in COSIMIR  
Educational for programming robots:  
Mitsubishi MELFA Basic IV robot programming language  
Mitsubishi MRL robot programming language  
Standardised industrial robot language (IRL DIN 66312)  
We have proceeded as follows in creating sample programs for the  
models:  
All Mitsubishi robots have been programmed using MELFA Basic IV, as  
long as this language is supported by the respective controller. MRL has  
been used for all other Mitsubishi robots. Other types of robots have  
been programmed using IRL.  
The “Robot Programming” section of the Robotics Assistant includes  
comprehensive information regarding the programming of robots.  
Details regarding the programming languages are contained in the  
®
chapter entitled “Programming Languages” in the COSIMIRhelp  
function.  
4
.1  
In order to create a robot program, certain positions must be defined to  
which the robot travels under certain conditions. Generally speaking, a  
robot can be advanced with the help of a manually operated control  
Teach-In  
®
panel inordertoteach suchpositions. COSIMIRprovidesuserswith  
two different methods for advancing the robot manually:  
With the mouse  
In the teach-In window  
Click in close proximity to the gripper end point with the left mouse key.  
A voxel (pixel in 3D space) is marked at the clicked point. If you double  
click the voxel, the robot moves to the selected point, if it lies within its  
working range. The robot can be advanced in a much more targeted way  
with the universal teach panel. The teach panel can be accessed via the  
Teach-in function in the Extras menu (F8).  
Select the “Joint coordinates” mode from the teach-in window.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
63  
4
. Programming  
Figure 4.1: Teach panel with joint coordinates  
Select one of the robots six joints and click one of the corresponding  
arrow buttons: The robot moves around the selected joint in the  
corresponding direction. Speed can be selected with the override slider.  
After clicking the Set Joint coordinates button, a dialogue box appears  
to which joint coordinate values can be explicitly entered.  
The robot’s current position can be transferred to the respective  
position list by clicking the Current Position  Pos. List button.  
The gripper can be closed by clicking the Close gripper button, after  
which the button is renamed as Open gripper.  
Select the “World coordinates” mode in the teach-in window in order to  
move the robot within the Cartesian coordinate system:  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
6
4
4
. Programming  
Figure 4.2: Teach panel with world coordinates  
The robot can be moved along the world coordinate axes, and the  
gripper can be rotated around these axes by clicking the corresponding  
®
arrow buttons. Further details are included intheCOSIMIRhelp  
function under Operating  How to ...  How to move and position the  
robot in COSIMIR.  
Select the “Tool coordinates” mode in the teach-in window in order to  
move the robot within the tool coordinate system. The tool coordinate  
system is the robot’s basic coordinate system, but the zero point has  
been shifted to the robot’s TCP.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
65  
4
. Programming  
Figure 4.3: Teach panel with tool coordinates  
As described above, the robot can be moved along the tool coordinate  
axes and the gripper can be rotated around these axes by clicking the  
corresponding arrow buttons. Note that the TCP remains unchanged.  
How can this be double checked?  
4
.2  
This example necessitates the creation of a program for the Mitsubishi  
RV-2AJ robot that solves the sample task posed in section 2.3 for the  
First Steps workcell.  
Example: Programming a  
Workcell  
Open the First Steps RV-2AJ workcell with the help of the graphic  
navigator, or open the FirstSteps RV-2AJ.mod file (directory path:  
.
..\Models\FirstSteps\Model) with the menu function File  Open.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
6
6
4
. Programming  
Figure 4.4: FirstSteps RV-2AJ.mod  
Sample task  
As a reminder, the blue workpiece must first be set onto the middle  
section of the first pallet. After a waiting period of 2 seconds, it must  
then be sorted into the bottom section of the second pallet.  
Creating a position list  
We’ve already created the sequence plan in chapter 2.3. Now we’ll need  
to create a position list. First, delete the contents of the predefined MRL  
position list and save it under the following new name:  
FirstStepsTest.pos”.  
Add the robot’s initial position as the first entry to the position list.  
Click the Current Position  Pos. List button in the teach-in window  
to this end.  
The second position (P2) is the gripping position for the blue  
workpiece. A line in the position list is highlighted after clicking  
underneath the first position. Click the Current Position  Pos. List  
button in the teach-in window once again. As an exercise, position  
P2 will be edited manually. Select position entry P2 to this end.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
67  
4
. Programming  
Figure 4.5: Position list entry  
The Position list entry dialogue box can be accessed with the menu  
function Edit  Properties (Alt+Enter). Edit the displayed position  
data as follows:  
Positions (X, Y, Z)=(167.00, -185.00, 240.00)  
Orientation (roll=A/P, pitch=B/R)=(-90.0, 180.0)  
Move the robot to the new P2 position by double clicking the  
position list entry.  
Close the gripper by clicking the Close gripper button in the teach-in  
window.  
Use the world coordinate system in order to position the robot such  
that the blue workpiece is set into the middle section of the first  
pallet.  
Tip  
The coordinate axes can be displayed for improved orientation: Extras  
Coordinate systems  Show world coordinate system  

®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
6
8
4
. Programming  
Gripper settings  
The gripper settings dialogue box can be opened with the menu  
function Extras  Settings  Gripper.  
Figure 4.6: Gripper settings  
All outputs are included in the Teach-in gripper control drop-down list,  
which are assigned to objects capable of executing gripping tasks. This  
output is activated whenever you click the Close gripper button in the  
teach-in window. You can also choose to have possible warnings  
displayed for gripper operations.  
Three dimensional  
navigation  
It is helpful to open a second workcell window to facilitate three  
dimensional navigation (see also 3.4).  
After moving to the desired position has been successfully  
completed, add this position to the position list as point P3.  
P4 is the final position in the second pallet.  
Video (help function)  
Videos entitled “Teach-In”, “Position list” and “Working with Positions”  
®
are included in theCOSIMIRhelpfunction under Examples  
Operating, which address the subjects of robot teach-in procedures and  
working with the position list in the simulation.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
69  
4
. Programming  
Creating the program  
Click into the programming window in order to activate it. Delete its  
contents and save it as a Melfa Basic IV program under the name of the  
position list: “FirstStepsTest.mb4”. The names of the program and the  
associated position list must be identical!!!  
The MELFA Basic IV programming language is a dialect of Basic, and  
each program line must thus be numbered. However, numbering has  
been automated. First create the program lines without any numbering.  
Now click the button shown in the toolbar screenshot on the left (Extras  

Settings  Renumber).  
Implement the sequence plan from chapter 2.3 step by step in order to  
create the program.  
Sequence Plan  
The robot’s gripper is open.  
10 HOPEN 1  
The robot moves the gripper to the gripping position with a PTP movement.  
The gripper is closed.  
20 MOV P2  
30 HCLOSE 1  
40 MOV P3  
50 HOPEN 1  
60 MVS P3,-40  
70 DLY 2  
The robot moves the gripper to the intermediate position with a PTP movement.  
The gripper is opened.  
The robot executes linear travel back to a point above the intermediate position.  
2
second waiting period  
The robot moves the gripper to the intermediate position (linear travel).  
The gripper is closed.  
80 MVS P3  
90 HCLOSE 1  
1
1
1
1
1
00 MOV P4,-40  
10 MVS P4  
20 HOPEN 1  
30 MOV P1  
40 END  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
7
0
4
. Programming  
Note  
Add an empty line at the end of the program!  
For assistance during programming, execute a right click inside the  
programming window. You are then provided with a list of the most  
important function calls, and the corresponding function commands are  
edited in the programming window via mouse click.  
Comprehensive, structured documentation of all Melfa Basic IV  
programming commands can be accessed in the Robotics Assistant  
under Programming robots  Robot programs  Basic course. Save  
your program after it has been completed.  
Melfa Basic IV Project  
Before compiling your program for the first time, you’ll have to create a  
project. The project includes all of the associated programs and their  
respective position lists. Select the Project management function in the  
Execute menu, or click the  
button shown in the toolbar screenshot on the left.  
The following project management configuration window appears:  
Figure 4.7: Project management  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
71  
4
. Programming  
In order to create a new project, select the MELFA-BASIC IV projects  
entry and click Add project in the context menu.  
Figure 4.8: Project entry  
Enter a project name and acknowledge your entry with the Open button.  
Select the Files register card and click the button shown in the  
screenshot on the left. You are then prompted to open the program file.  
The project name then appears in the right hand portion of the project  
management window. Click the empty entry at the bottom, and the  
corresponding line is selected. Now add the associated position list by  
selecting the “MELFA BASIC IV position list (*.POS)” file type in the file  
selection window.  
Due to the fact that a multitasking system is utilised, you’ll have to  
establish which program is the main program. In this example, your  
program is of course the main program. Select your program entry in the  
project management window to this end, and select Main program from  
the Compiler mode properties drop-down list.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
7
2
4
. Programming  
Figure 4.9: Creating a new project  
Now, activate your project. Select your project entry and click Set as  
Active Project in the context menu. Acknowledge your project entry by  
clicking the OK button.  
You can now download your project to the internal robot controller.  
Activate the program window and click the Compile & link function in  
the Execute menu (Ctrl+F9), or click the button shown in the screenshot  
on the left.  
Utilised program and system modules, as well as the number of errors  
and warnings, appear in the Messages window.  
If error messages appear, the corresponding program line can be  
highlighted in the program window by double clicking the respective  
error message.  
Caution!  
As a result of cause and effect, it is entirely possible that a different line  
will be highlighted which appears underneath the actually faulty  
program line.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
73  
4
. Programming  
If program syntax is error-free, you can start analysing the program  
sequence with the help of the simulation function.  
®
This advanced COSIMIRfunctionforautomatic,surfaceoriented  
4
.3  
Automatic Path  
Generation  
trajectory generation provides programmers of robots used for coating  
and deburring tasks with support by automatically generating robot  
paths, and the corresponding robot programs. Time involved in offline  
robot programming can thus be minimised, and process results can be  
optimised at the same time.  
A table must be painted by a robot in the “Table Painting” sample  
workcell. You can create the required trajectories by means of suitable  
teach-in positions, or you can use the trajectory generating tool. In this  
example, “Table” must be selected from the object folder in the model  
explorer (see also 6.3), after which trajectory generation is started with  
the menu function Execute Surface  trajectories.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
7
4
4
. Programming  
Figure 4.10: Surface trajectory generation  
The dialogue box shown above is opened before automatic generation  
of the paths’ intermediate positions. Additional parameters can be  
entered here, in order to optimise the generating process.  
A comprehensive representation of this method is included in the  
®
COSIMIR helpfunction under Extensions  Surfaceoriented  
trajectory generation. In addition to this, a video dealing with actual  
use of this method can be found under Examples  Operating.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
75  
4
. Programming  
4
.4  
All of the programs you create in the Movemaster Command or MELFA  
Basic IV languages can be downloaded to a Mitsubishi controller via  
Download to the  
Mitsubishi Robot  
Controller  
®
®
COSIMIR Industrialor COSIMIRProfessional.Openanew projectin  
®
COSIMIR tothis end withthe Newproject function in the Filemenu,  
select the appropriate robot and set up the communications link. Open  
®
your program and your position list, and resave the files to COSIMIR  
®
Industrial or COSIMIRProfessional!Establish communication withthe  
robot and download the robot program and the position list.  
Caution!  
Execute the following tests before starting the program after it has been  
successfully downloaded:  
Are all teach-in points correct?  
Have all inputs and outputs been correctly wired?  
Has the TCP been set correctly?  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
7
6
5
. Simulation  
The simulation of programs that have been written offline using  
®
COSIMIR isdescribed in the followingpages.  
5
.1  
Use the menu function Execute  Simulation for configuration.  
Settings  
Simulation  
The simulation rate determines how frequently the graphic  
representation is refreshed. The motion display becomes smoother, but  
also slower, as the selected value for the simulation rate is reduced.  
The control rate is used to calculate intermediate positions for robot  
controllers, and serves as a cycle time for stored program controllers.  
The control rate determines the various possible simulation rate  
settings.  
If you have selected the Real-time option, the simulation rate is  
adjusted automatically. In the event of inadequate PC performance  
characteristics, a real-time link may not be possible, resulting in a  
continuous increase of the simulation rate. This effect can be limited by  
specifying a Maximum simulation rate. The Control parameters option  
is only available if the Real-time checkbox has been activated. This  
parameter establishes which constant is utilised to control the  
relationship between simulation time and real-time.  
5
.2  
Open the First Steps RV-2AJ workcell with the First Steps Test project  
from the proceeding chapter. Start the simulation with the Start  
function in the Execute menu, or click the button shown in the toolbar  
screenshot on the left. The program is simulated step by step.  
Simulation time is displayed in the Status line. The program line that is  
currently being simulated is highlighted in the program window. At first,  
you can execute each program step individually with the help of the  
button shown in the toolbar screenshot on the left.  
Example:  
Workcell Simulation  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
77  
5
. Simulation  
If you want to start a new simulation cycle, it is advisable to return the  
robotic workcell to its initial position. Use the menu function Edit   
Reset Workcell to this end.  
Simulation serves to check your program for two important criteria:  
Is the functional sequence correct?  
Can run time be further optimised?  
We’ll concentrate here on the first question, i.e.  
Is the logical sequence correct?  
Are there any collisions?  
You should be able to answer the first question on your own.  
Collision detection  
Example  
As regards collision detection, you should first decide which  
components are to be examined for possible collisions.  
Consider our sample program to this end. The first critical point is  
certainly the transfer of the blue workpiece to the first pallet. The task in  
this case is to specify that these two objects will be examined for  
possible collision.  
Use the menu function Extras  Settings  Collision detection to this  
end. Click the Selection index card  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
7
8
5
. Simulation  
Figure 5.1: Object selection for collision detection  
The index card displays a list of all of the objects included in the  
workcell. Box3 is the blue workpiece. Select Box3 and Pallet1.Pallet as  
you would in the Windows explorer. Select the Selected objects against  
each other option, in order to determine whether or not the selected  
objects collide with each other.  
Click the button shown in the toolbar screenshot on the left in order to  
activate collision detection, or select the Collision detection function in  
the Execute menu. Start the simulation once again. Notice that the blue  
workpiece turns red during transfer before it is set down onto the first  
pallet. This indicates that a collision has occurred. This collision  
persists, because the workpiece is set down onto the pallet. How can  
we eliminate this collision before the workpiece is set down?  
Recommended solution: Replace line 40 with the following:  
4
4
4
0 MVS P2,-30  
1 MOV P3,-30  
2 MVS P3  
For a more detailed visualisation of collision detection use your sample  
program in the slightly modified NextSteps RV-2AJ.mod workcell, and  
test for collisions with the glass plate.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
79  
5
. Simulation  
Video (help function)  
A video that demonstrates how to set up the collision detection function  
®
is includedinthe COSIMIRhelpfunction under Examples  
Operating.  
®
5
.3  
The sensor simulation functions expand the capabilities of COSIMIR  
Sensor Simulation  
such that complete robotic workcells can be simulated. Many of the  
sensors utilised in manufacturing automation can be realistically  
configured and simulated. Visualisation of sensor measuring ranges,  
which is not possible in real applications, provides additional help in  
avoiding design errors during the planning stages. Sensors are utilised  
®
in numerous workcells, for example intheMPSRobotStation,for  
detecting objects and materials. The characteristics of these sensors  
can be analysed with the model explorer (see also chapter 6.3).  
®
The COSIMIRS7simulator interpretsexecutable S7programs.Each  
5
.4  
PLC simulation  
workcell may include several stored program controllers. Each PLC is  
controlled by an S7 program. It is not possible to change the S7  
®
program furnishedwithCOSIMIREducational.  
An overview of the S7 controllers and the installed S7 programs can be  
accessed with the S7 Program Manager function in the Execute menu.  
Presented in a clear-cut tree structure, the S7 program administration  
window displays the name and elucidates the structure of the PLC  
programs that have been installed to each of the controllers within the  
selected workcell. Programs may consist of the following elements:  
Organisational modules  
Function modules  
Data modules  
Functions  
System functions  
The contents of each type of element can be displayed by double  
clicking the respective element.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
8
0
5
. Simulation  
Your S7 programs can be displayed in the STL programming language.  
All modules, organisational modules, function modules and functions  
are displayed in tabular form. Modules that cannot be represented in  
STL syntax are excluded, for example system functions and system  
function modules.  
®
Further detailsareincludedinthe COSIMIRhelpfunctionunder  
Programming  S7 simulator.  
5
.5  
Process simulations for coating and deburring operations make it  
possible for robotics programmers to optimise the manufacturing  
sequence at an early stage during program creation and, at the same  
time, qualitatively evaluate processing results. This eliminates the  
necessity for time consuming testing of motion sequences with test  
objects, and the expense of offline programming is minimised while  
improving process results.  
Process Simulation  
Process simulation is used, for example, in the Table Painting sample  
workcell. In order to activate process simulation, select the desired  
object from the model explorer (see also chapter 6.3), and start  
simulation with the Process simulation function in the Execute menu.  
Figure 5.2: Process simulation settings  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
81  
5
. Simulation  
You are provided with the opportunity of configuring additional  
parameters for simulating the painting process.  
The program can then be started, and you can observe the painting  
process at the same time.  
®
A video entitled “Process Simulation”isincluded in the COSIMIRhelp  
Video (help function)  
function under Examples  Operating, which provides you with  
application support.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
8
2
6. Modelling  
®
Although new workcells cannot be saved to COSIMIREducational,you  
are provided with numerous modelling functions within the workcells  
that allow you to change layouts, and to analyse alternatively  
configured problems.  
®
Various tools are made availablebyCOSIMIRformodellingrobot  
controlled workcells, for example model libraries and the model  
explorer. We’ll help you get acquainted with the modelling function  
using the example provided in the chapter on programming.  
®
The following types of elements areincludedin the COSIMIRmodel  
6
.1  
Model Hierarchy  
hierarchy:  
Objects  
Objects are at the top of the model hierarchy.  
Example: A robot is an object.  
Groups  
Groups are assigned to objects. Each group may enjoy a given degree of  
freedom, and can thus be moved relative to the previous group.  
Example: A robot joint is a group.  
Components  
Components are assigned to groups and determine the graphic  
representation.  
Example: Surfaces, cuboids and polyhedrons are components.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
83  
6
. Modelling  
Gripper Points  
A gripper point is assigned to a group included in the gripping object, so  
that one object can grip another.  
Example: A gripper point is located on the flange of a robot’s sixth  
axis.  
Gripping Points  
A gripping point is assigned to a group included in the object to be  
gripped, so that one object can be gripped by another.  
Example: A workpiece that is gripped has a gripping point.  
®
6
.2  
COSIMIR includescomprehensive modellibraries,some ofwhichare  
optional. Objects or model components can be added to a workcell from  
these libraries.  
Model Libraries  
Click the menu function Execute  Model Libraries, or the button  
shown in the toolbar screenshot on the left.  
The following model libraries are available:  
ABB robots  
Fanuc robots  
KUKA robots  
Mitsubishi robots  
Reis robots  
Stäubli robots  
Siemens S5/S7 SPC  
Various grippers  
Various basic forms  
Various LEDs  
Various materials  
Various mechanisms  
Various robots  
Various sensors  
Various controllers  
Various textures  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
8
4
6
. Modelling  
6
.3  
All of the elements included in a workcell can be accessed via the model  
explorer. In addition to objects and their subordinate elements, this also  
applies to materials, libraries, illumination settings and all I/O  
connections.  
The Model Explorer  
The model explorer is opened by clicking the menu function Execute   
Model Explorer (Ctrl+T), or the button shown in the toolbar screenshot  
on the left.  
Figure 6.1: Model Explorer  
The model explorer window is subdivided into two sections:  
A tree structure used for navigation appears in the left-hand section  
including folders for the individual workcell elements.  
The element list included in the right-hand side of the window displays  
the elements included in the folder that has been selected in the tree  
structure. Elements can be accessed by clicking the desired element in  
the tree structure (if it appears there), or in the element list.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
85  
6
. Modelling  
An element selection context menu containing the most important  
commands can be displayed by double clicking an element or an  
element folder.  
The Objects folder contains all of the workcells components. We make  
reference to this folder name in the workcells function descriptions.  
Example  
Solution  
You want to determine the exact position of the green workpiece in the  
First Steps workcell expressed in world coordinates.  
1. ActivatetheeditingmodeusingtheEditmode function inthe  
Execute menu (Ctrl + E), and open the model explorer. Click the  
green workpiece. The object is then selected and the associated  
object coordinate system is displayed. The “Objects” file is selected  
in the tree structure, as well as the appropriate component, i.e.  
Box2”, in the display window. The desired allocation has now been  
established.  
2
.
Click the “Box2” object in the tree structure and select Properties  
from the context menu. The Object properties dialog box appears,  
from which the Position index card must now be selected.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
8
6
6
. Modelling  
Figure 6.2: Object properties  
The Cartesian coordinates of the zero point from the object coordinate  
system are displayed here, as well as the orientation of the object  
relative to the world coordinate system (roll: rotation around the Z-axis,  
pitch: rotation around the Y-axis, yaw: rotation around the X-axis).  
Changing object properties  
We want to expand our sample task by requiring that the cell is changed  
such that the green workpiece is approximately at the centre of the  
table, turned 45° relative to the world coordinate system:  
Solution  
1. Thedisplay of Cartesian coordinates and orientation values inthe  
Object properties dialogue box can be directly overwritten, or you  
can change the displayed values using the arrow buttons in steps  
according to the selected increment. The workpiece is immediately  
moved to its new position.  
2
.
Change the Y coordinate and the roll angle accordingly.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
87  
6
. Modelling  
The Object properties dialogue box includes additional parameters that  
are contained in the General, Dimension, Visualisation index cards etc.  
Except for display colour, it is not possible to change these additional  
Note  
®
object propertieswith COSIMIREducational.  
Library elements  
Objects in a workcell can also be grouped together as library elements.  
The goal is to assure that the included objects are always arranged in a  
fixed geometric constellation in relation to one another. Library  
elements are recognised by means of their designation. Library  
elements always have two-part names:  
Library_name.Object_name  
Example: (First Steps workcell): Pallet1.Pallet  
Only the properties of the corresponding library element can be  
changed. For example, if you want to change the position of the first  
pallet, you must click the “Pallet1” object in the Library folder included  
in the tree structure, and open the Properties dialogue box from the  
context menu.  
®
Video (help function)  
A video entitled “Working with Objects” is included in the COSIMIR  
help function under Examples  Operating, which explains how to  
work with objects in the model explorer.  
I/O connections  
After clicking I/O connections in the tree structure, an overview of all  
input-output assignments is displayed, and the designation of the  
associated object is shown for each input and output.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
8
8
6
. Modelling  
Figure 6.3: List of I/O connections  
This overview is also included in the documentation for the workcell.  
You would also like to know which input bit is allocated to the symbolic  
®
“Part_AV” input attherobot controllerinthe “MPSRobotStation.mod”  
workcell.  
Solution  
Open the folder for the RV-2AJ object and select the inputs subfolder. All  
input bits are then displayed in the right-hand window.  
You can now see that the input in question is allocated to input  
bit no. 8.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
89  
6
. Modelling  
6
.4  
In chapter 6.3 you learned how to change object properties, enabling  
you to easily modify the workcell layout.  
Example: Modelling  
in a Workcell  
There are numerous other possibilities of remodelling your workcell in a  
®
sensible fashionin COSIMIREducational.  
Illumination  
You wish to change the illumination in the graphic representation.  
Illumination consists of ambient light and up to 7 additional light  
sources. Open the Illumination folder and select the “Ambient light”  
object. Open the properties dialogue box from the context menu. The  
intensity and colour of the light can be changed.  
You wish to find out which light sources are turned on in the sample  
workcell, and what effect they have on the workcell.  
Select, for example, light source 1 with a left click. The orientation of the  
light source is graphically represented in the workcell window by means  
of a light beam, and the associated object properties window is opened.  
Light sources can be turned on and off, and their orientation, intensity  
and colour can be changed.  
Robot selection  
You want to replace the robot in a given workcell with a different robot,  
®
for example you would like to replace the RV-2AJ robot in the MPS  
Robot Station with the 6-axis Mitsubishi RV-1A robot. Open the model  
explorer and select the name of the respective workcell,  
RobotStation”. Open the properties dialogue box via the context menu  
and select the libraries index card:  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
9
0
6
. Modelling  
Figure 6.4: Work-cell properties  
Select the “Exchange active robot” option. A line appears at the bottom  
prompting you to acknowledge the change. Select “Yes” and then close  
the dialogue box. Now open the model library dialogue box and select  
the RV-1A from the Mitsubishi robots folder. Add this robot to the  
process model. A dialogue box appears indicating that the operation  
cannot be undone. Acknowledge with “Yes”. The old robot is now  
replaced with the new one, and all I/O connections are updated as well.  
Note  
The name of the robot listed in the model explorer remains unchanged  
(
RV-2AJ)! Don’t forget that all teach-in points must be updated.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
91  
6
. Modelling  
Importing new  
components  
Task  
You want to set up a partition between the two pallets in the First Steps  
workcell, in order to demonstrate a collision problem.  
Solution  
The model library does not include a partition, but the Next Steps  
®
workcell does. Open the Next Steps workcell withCOSIMIRIndustrial  
®
or COSIMIRProfessionaland select the “Wall” component inthe  
model explorer from the workcell’s object folder. Save the object as  
wall.mod via the context menu. This file can now be imported to any  
®
workcell in COSIMIREducationalwiththehelpof the menufunction  
File  Import.  
Gripping point  
Create a rectangular workpiece with a side length of 45 mm in  
®
®
COSIMIR Industrialor COSIMIRProfessional.OpentheFirstSteps  
®
workcell in COSIMIREducationaland importthe newcomponent  
named “Box4”. Position the component at the centre of the table. Teach  
the robot to grasp the new workpiece. What happens? Select the menu  
function Extras  Settings  Grip for troubleshooting assistance. Then  
select the “Gripper warnings” option in the configuration window.  
A warning now appears when the gripper is closed: “No object”. Why  
does this warning appear?  
Solution  
Compare the structure of the Box3 and Box4 workpieces in the model  
explorer. As you can see, Box4 does not have a gripping point, which  
means that the gripper does not recognise it as a graspable object.  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
9
2
Proceed as follows in order to create a gripping point:  
1.  
2.  
3.  
4.  
Select the Basic subfolder for the Box4 object.  
Select New and Gripping point from the context menu.  
A gripping point appears in the right-hand window.  
Select the gripping point and open the properties dialogue box from  
the context menu.  
5
6
.
.
Select the object coordinate system and position the gripping point  
at the centre of the workpiece.  
A gripping point range can then be created in the “General” index  
card.  
In addition to this, you can import any of the workcells and elements  
included in the model library. However, you must keep in mind that  
existing I/O connections are not imported. You’ll have to set up the I/O  
connections again after import. This process can be easily elucidated:  
Creating I/O connections  
Open the BP70 workcell and the model explorer. Select the SimuBox  
object and the inputs subfolder in the LED_0 object for the SimuBox. A  
display appears in the right window indicating that the “On” input is  
connected to the “OUT0” output. Click the “On” input and select the  
function Edit  Remove Connection in the context menu.  
Task  
Connect the “On” input at LED_0 to the “OUT0” output at the robot  
controller.  
Solution  
Position the mouse pointer at the “On” input for LED_0 in the display  
window. Press and hold the left mouse key. Move the mouse pointer to  
the “OUT0” output at the robot controller in the navigation window of  
the model explorer, and then release the key (connect by means of drag  
and drop). The connection to the selected output appears in the display  
window.  
®
Festo Didactic GmbH & Co. KG • COSIMIREducational  
©
93  
®
© Festo Didactic GmbH & Co. KG • COSIMIREducational  
9
4