i-Series to e-Series Cobra robot program conversion
Introduction
This document assists in reusing an iSeries robot program in an e Series robot. It will explain good practice for the structuring of the new program and show how to create the Auto Start file auto.v2
Prerequisites
Familiarity with the ACE Robot programming IDE is essential.
Further Reading
Please refer to the ACE Users Guide for the different versions of ACE being used such as OMRON Adept iSeries robots and OMRON Adept Technologies eSeries robots.
ACE 3.6 is used for the uploading of the program from the old robot.
ACE 3.8 is used for the eCobra robot as it supports the Ethernet connected current generation of robots.
Note ACE3.6 and ACE3.8 have compatible import/export file formats however these formats are incompatible with ACE v4.x which is the current version.
Preliminary Knowledge
Outputs 9,10,11 and 12 exist in an iSeries Cobra robot and are for the built in solenoid control. These are 3001 to 3004 in an e-Series Cobra robot and will need to be changed in the new program conversion, otherwise a run time error will occur.
In iCobra, the auto() program work differently. All application programs are loaded into memory from NVRAM & auto-start is defined as auto() program which will executed in task #3. The auto() program behaves like normal program which doesn’t require an “MC” instruction. In sCobra or eCobra, auto-start will load auto() program from the file d:\auto.v2. This auto() program will performs what you normally do at monitor window during startup (load file, execute program, en po, cal, etc). Therefore, the auto() program require “MC” instructions.
It is good practice is to have 2 files, namely “auto.v2” + “main.v2”
- auto.v2 will have only one program, which is auto() program
- main.v2 will a header program named a.main(), all other programs (except auto) will be associated to this module. a.main() is a blank program doing nothing, it is created when creating the main.v2 program
Procedure
- Using ACE3.6, connect to the robot via a serial connection. The pin out of the cable required is shown in Appendix A.
- Once connected and synchronised, note this takes approx. 5-10 minutes to read programs and variables due to the slow serial connection, save the project.
- Create project in ACE 3.8 by selecting Connect to Controller and tick Simulation option in order to use offline from a robot.
- Add a robot V+ program by right clicking and adding New V+ Program. Name this a.main
- Drag the V2 file from the file explorer and drop onto V+ User Modules. Now move all modules from this V+ program to the a.main folder.
- Before moving old programs into a.main:
- After moving old programs into a.main:
- Now delete the old and empty V+ user program
- You should have all the programs in one folder.
- Rename auto program as main:
- Drag any saved locations and variables files into the new project as per the following, for example Locations.LC, Reals.rv files.
- Now select the Smart Controller item in the explorer and click on the editing button on the right of the Save Configuration. Make the following settings.
- Save the project. This will now create an auto.v2 file, which is stored in the root directory of the micro SD card (drive d:\) and is located under V+ User modules as per below.
Viewing the contents of the auto program will show the following code. Note the eCobra uses only MC commands in the auto program. The older generation robots could have V+ code in the auto program. So now the new auto program loads the programs and variables from file and executes main (the old auto program) on task 3. Note the older robots automatically ran auto on task 3 so this will be the same functionality.
Note that all programs located under a.main will be loaded from file by the command MC load d:\archive\main.pg.
All variables will be loaded by command MC load d:\archive\globals.var
Make sure you test the project at reduced speed to ensure that the program behaves as expected. Normal robot commissioning processes should be performed, such as safety commissioning, slow speed test running etc.