0% found this document useful (0 votes)
43 views13 pages

Engproc 70 00020

The document discusses the programming of industrial robots using the Fanuc ROBOGUIDE environment, detailing various CARC systems available for different manufacturers. It proposes a methodology for off-line programming that includes stages such as robot selection, end-effector selection, and program development, culminating in the implementation of a control program for a Fanuc LR Mate 200 iD/7L robot. The paper emphasizes the importance of simulation and optimization in ensuring the effectiveness of the developed programs.

Uploaded by

bvladimirov85
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
43 views13 pages

Engproc 70 00020

The document discusses the programming of industrial robots using the Fanuc ROBOGUIDE environment, detailing various CARC systems available for different manufacturers. It proposes a methodology for off-line programming that includes stages such as robot selection, end-effector selection, and program development, culminating in the implementation of a control program for a Fanuc LR Mate 200 iD/7L robot. The paper emphasizes the importance of simulation and optimization in ensuring the effectiveness of the developed programs.

Uploaded by

bvladimirov85
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 13

Proceeding Paper

Programming Industrial Robots in the Fanuc


ROBOGUIDE Environment †
Boryan Vladimirov *, Stiliyan Nikolov and Stanislav Tsolov

Faculty of Mechanical Engineering, Technical University of Sofia, 1000 Sofia, Bulgaria;


st_nikolov2@tu-sofia.bg (S.N.); st.tsolov90@gmail.com (S.T.)
* Correspondence: bvladimirov@tu-sofia.bg; Tel.: +359-886-839-018
† Presented at the International Conference on Electronics, Engineering Physics and Earth Science (EEPES’24),

Kavala, Greece, 19–21 June 2024.

Abstract: Descriptions of the main CARC environments for programming industrial robots are
given, describing the main used programming environments for various robot manufacturers such
as ROBOGUIDE developed by FANUC Robotics, KUKA Sim and Kuka Work Visual developed
by KUKA ROBOTICS, Robot Studio developed by ABB Robotics, K-ROSET and K-ROSET LITE
developed by Kawasaki Robotics, Visual Component, DELMIA ROBOTICS of Dassault Systems,
Tecnomatix Robotics & Automation Simulation of SIEMENS PLM Software/Simatic Robot Integrator,
Visual Components, etc. A methodology describing the main stages, when working with computer
systems, of off-line programming of industrial robots is proposed. The features characterizing
the implementation of the stages defined in the methodology have been specified. The created
methodology has been applied when working with the Fanuc ROBOGUIDE computer system. When
using the given example of the Fanuc ROBOGUIDE, the emphasis is also on expanding the working
space of the robot (Robot Envelope) by adding a 7th axis. The general software options that are added
when performing this task are described, and two sample programs are given for the implementation
of the given example—and a 3D simulation is made for moving a part (box). A control program
has been generated for an industrial robot Fanuc LR Mate 200 iD/7L that shall perform “Pick and
Place” operations and shall service a conveyor for the transportation of cartons and their arrangement
on pallets.

Keywords: industrial robots; off-line programming; computer programming systems; robotic pro-
duction systems; Fanuc ROBOGUIDE

Citation: Vladimirov, B.; Nikolov, S.;


Tsolov, S. Programming Industrial
Robots in the Fanuc ROBOGUIDE 1. Introduction
Environment. Eng. Proc. 2024, 70, 20. Industrial robots are increasingly used in modern industry. They are the basis for
https://doi.org/10.3390/ bringing the manufacturing equipment in compliance with the requirements of Industry
engproc2024070020 4.0 [1]. As a result of that, the range of tasks performed by industrial robots has surged and
Academic Editor: Grigor Mihaylov is thus reflected on the complexity of the programs executed by them.
The increased complexity of programs executed by industrial robots and their inclu-
Published: 1 August 2024 sion in various robotic manufacturing systems creates prerequisites for the widespread
introduction in the engineering practice of specialized computer systems for the program-
ming of industrial robots. These include CARC (Computer-Aided Robot Control) [2–7]
Copyright: © 2024 by the authors.
systems, also known as OLPE (Off-line Programming Environments), which incorporate
Licensee MDPI, Basel, Switzerland. the latest achievements in the field of computing technology and engineering computer
This article is an open access article graphics. CARC systems employ industrial robots’ 3D models and other manufacturing
distributed under the terms and equipment that enable the construction of robotic manufacturing systems, simulate and
conditions of the Creative Commons analyze their operations, and generate control programs for the industrial robots included
Attribution (CC BY) license (https:// in them.
creativecommons.org/licenses/by/ Currently, all industry leaders offer users CARC systems for the programming of their
4.0/). industrial robots: ROBOGUIDE developed by FANUC Robotics, KUKA Sim and Kuka

Eng. Proc. 2024, 70, 20. https://doi.org/10.3390/engproc2024070020 https://www.mdpi.com/journal/engproc


Eng. Proc. 2024, 70, 20 2 of 13

Work Visual developed by KUKA ROBOTICS, Robot Studio developed by ABB Robotics,
K-ROSET and K-ROSET LITE developed by Kawasaki Robotics, etc. [7].
The main advantage of these systems is that they include the algorithms used by the
real controllers of the industrial robots offered by the specific company, which minimizes
the possibility of errors when the industrial robot executes the programs generated by
the system.
There are also CARC systems created by companies that specialize in the development
of software products, but these companies, such as Robot master, Robot Interface Robo
DK, etc. [8], are not directly involved in the manufacturing of industrial robots. The said
systems use a post-processor to generate a program for a specific industrial robot. The
post-processor produces a program (code), considering the specifics of the robot controller.
In this case, the chance of any errors emerging while the generated program is being
executed by the industrial robot depends on the post-processor’s settings and the extent to
which the algorithms embedded in the post-processor correspond to the ones used by the
robot’s controller, which are a company secret.
With the introduction of the engineering practice of PLM (Product Lifecycle Manage-
ment) systems, CARC systems were also integrated into their structure, which, in addition
to programming, can also be used in the design of robotic cells and robotic manufacturing
systems. Such systems include DELMIA ROBOTICS of Dassault Systems, Tecnomatix
Robotics & Automation Simulation of SIEMENS PLM Software/Simatic Robot Integrator,
SIMIT, Visual Components, etc. [9,10].
Regardless of the variety of CARC systems currently offered, the main steps in the
operation of these systems largely overlap. The present document proposes a methodology
that describes the CARC systems’ basic work stages necessary for the creation of a control
program for an industrial robot.

2. Materials and Methods


The core stages in the creation of a control program for an industrial robot, no matter
what CARC system is being used, can be defined in the following manner.

2.1. Selection of an Industrial Robot


At this stage, the user must select the industrial robot and the controller for which the
control program will be generated. An industrial robot is selected from the system’s library
containing 3D models of industrial robots. If necessary, a 3D model for an industrial robot
with no existing data in the system could be developed. This is most often achieved by
using a CARC system developed by an independent software company, as the company’s
CARC system libraries support 3D models of the industrial robots being produced.
When creating new 3D models, one should meet the requirements of the CARC system.
Three-dimensional models may be produced by employing a CAD system, following which
they shall be imported into the CARC system in consideration of the file formats supported
by it.
The controller is selected from the system’s library, considering the characteristics of
the real robot controller. In the case of CARC systems developed by independent software
companies, a post-processor matching the respective controller shall be picked up. Post-
processors may be developed or modified to maximize the generated code’s compliance
with the requirements of the industrial robot’s controller. When designing or editing the
post-processors, the applicable rules must be followed.
The selected industrial robot shall be positioned in the graphic area of the system,
but its position can be changed when adding extra equipment during the design of a
robotic system.

2.2. Selection of End-Effector


Depending on the operation performed by the industrial robot, at this stage there
shall be an end-effector selected, with which the robot will be working. When choosing an
Eng. Proc. 2024, 70, 20 3 of 13

end-effector, the considerations made in the first stage of selecting 3D models for industrial
robots shall be valid. Some CARC systems support parameterized 3D models of the
end-effector, which allow the user to enter, in dialog mode, the real end-effector’s exact
characteristics the robot will be working with.
The proper selection of an end-effector and its connection to the industrial robot’s
3D model are extremely important because they determine the position of the gripper’s
endpoint or the central point of the tool TCP (Tool Center Point), for which the generated
program will set positions in the work area and will define trajectories with a certain speed.
At this stage, one should consider the end-effector’s compatibility with the industrial
robot’s controller to secure the program control of its functions.

2.3. Choosing Additional Equipment


The system’s graphic area shall now be supplemented with 3D models of additional
equipment to be used by the industrial robot or equipment that falls within its operational
zone and needs to be considered during the development of the control program to avoid
any collisions in the robot’s work. At the same time, the considerations made in the first
stage of selecting 3D models for industrial robots shall be valid.
The additional equipment’s 3D models shall be positioned towards the industrial
robot already selected. The accuracy of this positioning must correspond to the actual
location to ensure trouble-free operation of the system. It is possible to add equipment
to add additional mobility to the selected industrial robot to expand its working area. At
this stage, one must also check if the additional equipment’s control is compatible with the
industrial robot’s controller to ensure the program control of its functions.

2.4. Development of Control Program


The robotic system’s 3D model developed in the previous stages will now be used for
the off-line programming of the industrial robot. During this programming, the gripper’s
endpoint or the central point of the tool provided by the CARC systems shall be positioned
in the desired locations, and the end-effector shall be oriented towards the preferred poses.
The information about the industrial robot’s configurations in desired locations is saved
in the system. The set of tools provided by the CARC systems shall set the gripper’s
endpoint or the instrument’s central point movement between memorized poses. The
robot’s preferred poses may be reached under each of the following methods:
• Direct guiding of the robot’s 3D model in the system’s graphic area;
• Direct setting of robot’s joint coordinates;
• Direct setting of coordinates in any of the robot’s coordinate systems;
• Controlling the robot from a virtual console (Teach pendant), a copy of the real one.
When using CARC systems developed by manufacturers of industrial robots, a robot
can be controlled through a code entered by the user directly into the system.

2.5. Simulating the Developed Program


At this stage, the robot’s work and the entire robotic system shall be simulated with
the purpose of detecting collisions and singularities during the implementation of the
developed program. Any issues that have been established shall be fixed by returning to
the previous level to change the end-effector’s poses or movement trajectories.
After eliminating all issues, one should use the set of tools provided by the CARC
system to analyze the created program and eventually optimize it in a way that shall reduce
the time necessary for the performance of required operations.

2.6. Implementation of the Developed Program


Once the detected problems have been dealt with and the program has been optimized
at the previous stage, the CARC systems’ program, developed by independent software
companies, will have to be post-processed to produce a code executable by the robot’s
Eng. Proc. 2024, 70, x 4 of 12

2.6. Implementation of the Developed Program


Eng. Proc. 2024, 70, 20 Once the detected problems have been dealt with and the program has been 4opti- of 13
mized at the previous stage, the CARC systems’ program, developed by independent soft-
ware companies, will have to be post-processed to produce a code executable by the ro-
bot’s controller.
controller. Company
Company CARC CARC
systems systems
will will automatically
automatically generate
generate the code,
the code, takingtaking
into
into consideration
consideration the industrial
the industrial robotrobot controller
controller selected
selected at theatfirst
the first
stage. stage.
The
The executable
executable code
code shall
shall be
be uploaded
uploaded in in the
the controller
controller of of the
the actual
actual robot
robot through
through
some
some of the ports
portssupported
supportedby byit.it.The
Theindustrial
industrial robot
robot cancan
thenthen
startstart executing
executing the pro-
the program.
gram. The methodology
The methodology developed
developed will be will
usedbeforused for the programming
the programming of an industrial
of an industrial robot in ro-
the
bot in the ROBOGUIDE
ROBOGUIDE environment.
environment.
ROBOGUIDE is an
ROBOGUIDE anin-house
in-houseCARC CARCsystem
systemdeveloped
developed bybyFANUC
FANUC for for
the the
programming
program-
of FANUC
ming industrial
of FANUC robots.robots.
industrial The system provides
The system the ability
provides thetoability
assist in
to the design
assist of design
in the robotic
systems
of roboticand is alsoand
systems capable of creating
is also capable multiple
of creating3D multiple
simulations. Fanuc ROBOGUIDE
3D simulations. Fanuc RO- can
exchange IGES,
BOGUIDE STL, OBJ,
can exchange and STL,
IGES, otherOBJ,files.and
Data movement
other thought
files. Data movementthe different
thoughtstages of
the dif-
the system’s
ferent stages operation is shown
of the system’s in Figure
operation 1 (the gray
is shown arrows).
in Figure 1 (theThe main
gray systemThe
arrows). modules
main
neededmodules
system to create needed
a virtualtorobot
createare markedrobot
a virtual with are
* inmarked
the Figure 1. * in the Figure 1.
with

Figure
Figure 1.
1. Data
Dataprocessing
processing in
in Fanuc
Fanuc ROBOGUIDE.
ROBOGUIDE.

3. Results
3. Results
Fanuc ROBOGUIDE
Fanuc ROBOGUIDEshallshallbe
be used
used to
to program
program an an industrial
industrial robot
robot performing
performing “Pick
“Pick
and Place” operations in the servicing of a conveyor for the transportation of boxes, sizing
and Place” operations in the servicing of a conveyor for the transportation of boxes, sizing
150 ××150
150 150×× 150
150 mmmm and
and weighing
weighing 5 kg,
5 kg, and
and theirarrangement
their arrangementononpallets.
pallets.

3.1. Stage 1—Robot Selection


3.1. Stage 1—Robot Selection
A Fanuc LR Mate 200 iD/7L [11] robot was selected to service the conveyor. The robot
A Fanuc LR Mate 200 iD/7L [11] robot was selected to service the conveyor. The robot
was selected through the menu in Figure 2.
was selected through the menu in Figure 2.
Eng. Proc. 2024, 70, 20 5 of 13

Eng. Proc. 2024, 70, x 5 of 12


Eng. Proc. 2024, 70, x 5 of 12

Figure2.2.Robo
Figure Roboguide—robot
guide—robotselection
selectionmenu.
menu.
Figure 2. Robo guide—robot selection menu.

File →New.
File→ New.
File → New.
Next
Next→ → Step11Create
→Step
Step Create anew
newrobot
robotwith
withthe
thedefault
defaultHandlingPro
HandlingProconfig
config
Next 1 Create aanew robot with the default HandlingPro config
Next→
Next →Step
Step22Robot
RobotSoftware
SoftwareVersion
Version→ →select
select amethod.
method.
Next → Step 2 Robot Software Version → select aamethod.
Next→
Next →Step
Step33Robot
RobotApplication/Tool
Application/Tool → → Handling Tool(H552)
Tool(H552)
Next → Step 3 Robot Application/Tool → Handling Tool(H552)
Next→
Next →Step
Step44Group
Group11Robot
RobotModel
Model→ →LR LRMate
Mate200iD/7L
200iD/7L
Next → Step 4 Group 1 Robot Model → LR Mate 200iD/7L
Next→
Next →Step
Step55Additional
AdditionalMotion
MotionGroup
Group→ →Empty
Empty
Next → Step 5 Additional Motion Group → Empty
Next
Next→ → Step
→Step 6 Robot
Step66Robot Option
RobotOption
Option- - -
Next
• Extended Axis Control(J518)
•• Extended
ExtendedAxis
AxisControl(J518)
Control (J518)
•• Multi-Group
Multi-GroupMotion
Motion(J601)
(J601)
• Multi-Group Motion (J601)
The general appearance
The general appearance of actual
the actual robot and its 3Dprovided
model provided by RO-
The appearanceofofthethe robot
actual and its
robot and3Dits
model by ROBOGUIDE
3D model provided by RO-
BOGUIDE
are shownareareFigure
on shown on Figure 3.
BOGUIDE shown 3. on Figure 3.

(a) (b)
(a) (b)
Figure 3. Fanuc LR Mate 200 iD/7L [11]: (a) actual robot; (b) 3D model provided by ROBOGUIDE.
Figure
Figure3.3.Fanuc
FanucLR
LRMate
Mate200
200iD/7L
iD/7L[11]:
[11]:(a)(a)
actual
actualrobot;
robot;(b)
(b)3D
3Dmodel
modelprovided
providedbybyROBOGUIDE.
ROBOGUIDE.
3.2.Stage
3.2. Stage2—Selection
2—SelectionofofEnd-Effector
End-Effector
3.2. Stage 2—Selection of End-Effector
InROBOGUIDE
In ROBOGUIDE[12], [12],the
thevacuum
vacuumgripper
grippershall
shallbe
be selected
selected from
from the
the following
following menu:
menu:
In ROBOGUIDE [12], the vacuum gripper shall be selected from the following menu:
Library
Library→ → gripper
→gripper
gripper→ → vacuum01.
→vacuum01.
vacuum01.
Library
Setting the vacuum gripper’s size based on the dimensions of the processed work-
Setting the vacuum gripper’s size based on the dimensions of the processed work-
piece and its generated 3D model are shown in Figure 4.
piece and its generated 3D model are shown in Figure 4.
Eng. Proc. 2024, 70, 20 6 of 13

Setting the vacuum gripper’s size based on the dimensions of the processed workpiece
and its generated 3D model are shown in Figure 4.
Eng. Proc. 2024, 70, x
Eng. Proc. 2024, 70, x 6 of 12

(a) (b)
(a) (b)
Figure 4. Vacuum gripper: (a) 3Dby
model provided by ROBOGUIDE; (b) dialogoffor the sele
Figure4.4.Vacuum
Figure Vacuumgripper:
gripper: (a)
(a)3D
3Dmodel
modelprovided
provided byROBOGUIDE;
ROBOGUIDE;(b) (b)dialog
dialogfor
forthe
theselection
selection of
gripper’s gripper’s parameters.
gripper’sparameters.
parameters.

Figure Figure 5 shows in


the dialog used an
in the setting of an end point vacuum
for the selected v
Figure55shows
showsthethedialog
dialogused
used inthe
thesetting
settingof
of anend
endpoint
pointfor
forthe
theselected
selected vacuum
gripper, gripper, there
for which point there shall be assigned positions inand
the workspace and mo
gripper,for
forwhich
whichpoint
point thereshall
shallbe
beassigned
assignedpositions
positionsininthe
theworkspace
workspace andmovement
movement
trajectories. trajectories.
trajectories.

Figure 5. Setting the gripper’s end point.


Figure5.5.Setting
Figure Settingthe
thegripper’s
gripper’s end
endpoint.
point.

3.3. 3.3. Stage 3—Selection of Additional Equipment


3.3.Stage
Stage3—Selection
3—SelectionofofAdditional
AdditionalEquipment
Equipment
Using Using the ROBOGUIDE libraries, the following shall be added for the creat
UsingthetheROBOGUIDE
ROBOGUIDE libraries,
libraries, the
the following
following shall
shall be
be added
added for
forthe
thecreation
creationofofaa
robotic robotic cell’s 3D model to the 3D model picked up for the industrial robot.
roboticcell’s
cell’s3D
3Dmodel
modeltotothethe3D
3Dmodel
modelpicked
pickedup upfor
forthe
theindustrial
industrialrobot.
robot.
3.3.1. Manipulated Workpiece
3.3.1. Manipulated Workpiece
Bearing in mind the shape, dimensions, and weight of boxes the robot will b
Bearing in mind the shape, dimensions, and weight of boxes the robot will be work-
ing with by employing the ROBOGUIDE toolkit, a new 3D model shall be gener
ing with by employing the ROBOGUIDE toolkit, a new 3D model shall be generated, as
shown in Figure 6.
shown in Figure 6.
Eng. Proc. 2024, 70, 20 7 of 13

3.3.1. Manipulated Workpiece


Bearing in mind the shape, dimensions, and weight of boxes the robot will be working
with by employing the ROBOGUIDE toolkit, a new 3D model shall be generated, as shown
Eng.Proc.
Eng. Proc.2024,
2024,70,
70,xx in Figure 6. 77 of
of 12
12

Figure6.
Figure
Figure 6.6.Dialog
Dialogfor
Dialog forthe
for thegeneration
the generationof
generation ofaaa3D
of 3Dmodel
3D modelof
model ofthe
of themanipulated
the manipulatedworkpiece.
manipulated workpiece.
workpiece.

3.3.2. Pallet
3.3.2.Pallet
3.3.2. Pallet
A
A 3D
3D model
A 3D of
of aaaPlastic
model of
model Plastic Pallet
Plastic L1000_W1000
Pallet L1000_W1000
Pallet L1000_W1000 H130H130 in
H130 in Figure
in Figure 7a
Figure 7a has
7a has been
has been added
been added to
added to
to
arrange
arrange the
thecartons
cartonsin
in the
the 3D
3D model
model of
ofthe
therobotic
robotic
arrange the cartons in the 3D model of the robotic cell. cell.
cell.

(a)
(a) (b)
(b)
Figure7.
Figure
Figure 7.7.Three-dimensional
Three-dimensionalmodels
Three-dimensional modelsembedded
models embeddedin
embedded inthe
in therobotic
the roboticcell:
robotic cell:(a)
cell: (a)pallet;
(a) pallet;(b)
pallet; (b)conveyor.
(b) conveyor.
conveyor.

3.3.3.Conveyor
3.3.3. Conveyor
The robot
The robot will
willservice
serviceconveyor
service conveyorMakitech
conveyor MakitechMMC-DR57-P75_W500_2P4
Makitech MMC-DR57-P75_W500_2P4 [13].
MMC-DR57-P75_W500_2P4 Its
[13]. Its
Its 3D
3D
modelembedded
model embeddedin the3D
inthe 3Dmodel
modelof
ofthe
therobotic
roboticcell
cellisisshown
shownon
onFigure
Figure7b.
Figure 7b.
7b.

3.3.4. Mobile
3.3.4.Mobile
3.3.4. Platform
MobilePlatform
Platform
The robot’s
Therobot’s
The working
robot’sworking
workingareaarea will
willhave
areawill haveto
have to
tobe
beexpanded
be expandedgiven
expanded giventhe
given thereal
the realdistance
real distancebetween
distance between
between
the conveyor
theconveyor
the conveyorandand the
andthe pallet
thepallet station.
palletstation. Therefore,
station.Therefore, the
Therefore,the selected
theselected robot
selectedrobot will
robotwillbe
willbeplaced
beplaced onon
placed aonmobile
aamo-
mo-
platform
bile [14–16].
bileplatform
platform[14–16].
[14–16].
The following
Thefollowing
The function
functionwill
followingfunction willbe
will beused
be usedfor
used forthis
for thispurpose:
this purpose:
purpose:
Tools
Tools→
Tools → Rail
→Rail Unit
RailUnit Creator
Creator→
UnitCreator → Rail
→Rail Unit
RailUnit Creator
CreatorMenu
UnitCreator Menu
Menu
The
Thedialogue
The dialoguefor
dialogue forthe
for thecreation
the creationof
creation ofthe
of themobile
the mobileplatform’s
mobile platform’s3D
platform’s 3Dmodel
3D model
model isisis
shown
shown
shown ininFigure
in 8.
Figure
Figure
The result from this stage is a 3D model of the robotic cell used for the cartons’ unloading
8.8.The
Theresult
resultfrom
fromthis
thisstage
stageisisaa3D
3Dmodel
modelof ofthe
therobotic
roboticcell
cellused
usedfor
forthe
thecartons’
cartons’unload-
unload-
from the conveyor and their arrangement on pallets is shown in Figure 9.
ingfrom
ing fromthetheconveyor
conveyorand andtheir
theirarrangement
arrangementon onpallets
palletsisisshown
shownin inFigure
Figure9.9.
Thecell’s
The cell’sworking
workingcycle
cycleisisas
asfollows:
follows:
1.1. Theindustrial
The industrialrobot
robottakes
takesaabox
boxororaapackage
packagefrom
fromthe
theconveyor;
conveyor;
2.2. Theindustrial
The industrialrobot
robotmoves
movesto tothe
thepallet
palletstation
stationvia
viathe
themobile
mobileplatform
platformononwhich
whichitit
isismounted;
mounted;
3.3. Theindustrial
The industrialrobot
robotplaces
placesthe
thebox
boxon onthe
thepallet,
pallet,starting
startingfrom
fromthe
theoutermost
outermostpallet
pallet
(positionon
(position onFigure
Figure9);
9);
4.4. Theindustrial
The industrialrobot
robotmoves
movesback
backto tothe
theconveyor.
conveyor.
Eng. Proc. 2024, 70, 20 8 of 13

,x 8 of 12
,x 8 of 12

Figure 8. Dialog generating


Figure 8. the mobile
Dialog platform’s
generating 3D model
the mobile with
platform’s 3Daamodel
length of 4a length
with m.
Figure 8. Dialog generating the mobile platform’s 3D model with length of 4 m. of 4 m.

Figure 9. Three-dimensional model of the robotic cell.


Figure 9. Three-dimensional model of the robotic
Figure 9. Three-dimensional modelcell.
of the robotic cell.

3.4.
3.4. Stage
Stage 4—Development
4—Development The of the
cell’s
of Control
theworking Program
Control cycle is as follows:
Program
When
When developing1.
developing the
The industrial
theindustrial
industrial robot’s
robot takes anecessary
robot’s control
box or a package
necessary control program,
from the
the coordinates
the conveyor;
program, coordinates
shall 2. The industrial robot moves to the pallet station via the mobile platform on which it is
shall be
be directly
directly set
set in one
one of
inmounted; of the
the robot’s
robot’s coordinate
coordinate systems
systems and and inin the
the Teach
Teach pendant
pendant
virtual console in Figure
virtual console in Figure 10.10.
3. The industrial robot places the box on the pallet, starting from the outermost pallet
(position on Figure 9);
4. The industrial robot moves back to the conveyor.

3.4. Stage 4—Development of the Control Program


When developing the industrial robot’s necessary control program, the coordinates
shall be directly set in one of the robot’s coordinate systems and in the Teach pendant
virtual console in Figure 10.

(a)
(a) (b)
(b)
Figure 10. Tools for the development of a control program: (a) setting coordinates in program sim-
Figure 9. Three-dimensional model of the robotic cell.

3.4. Stage 4—Development of the Control Program


When developing the industrial robot’s necessary control program, the coordinates
Eng. Proc. 2024, 70, 20 9 of 13
shall be directly set in one of the robot’s coordinate systems and in the Teach pendant
virtual console in Figure 10.

(a) (b)
Figure 10.
Figure 10. Tools
Toolsfor
forthe
thedevelopment
development ofof
a control program:
a control (a) setting
program: coordinates
(a) setting in program
coordinates sim-
in program
ulation editor; (b) Teach pendant virtual console—including 7th (-J7/+j7) and 8th (J8/+J8) axes in the
simulation editor; (b) Teach pendant virtual console—including 7th (−J7/+j7) and 8th (J8/+J8) axes
controller.
in the controller.

3.4.1. Control of the Mobile Platform—7th Axes on the Robot Programming/Creating


Controlling the additional seventh axis [14–16] (the movement of the mobile platform
on which the robot is mounted) requires the following software options:
1A05B-2600-J518—Extended Axis Control (J518)
1A05B-2600-J601—Multi-Group Motion (J601)
Provided these options are available, the MASTER functions shall need the following
variables—SYSTEM Variable.
$DMR_GRP
1 [1] DMR_GRP_T
2 [2] DMR_GRP_T
By using a sub-variable:
$MASTER_COUN → $DMR_GRP [1].$MASTER_COUN
It is possible to increase the robot’s controllable axes from 6 up to 9 (six robot axes and
up to three additional controllable axes).

3.4.2. Example Program—Two Variants


First version:
The program generated is as follows:
UFRAME_NUM [1]—frame of the conveyor
UFRAME_NUM [2]—frame of pallet 1
UFRAME_NUM [3]—frame of pallet 2
UTOOL [1]—TCP of the instrument (the vacuum gripper)
/UFRAME—USER FRAME; UTOOL—USER TOOL/
Program for the movement of a single workpiece:
1. UTOOL [1]
2. UFRAME_NUM = 1
3. PAYLOAD [1]
4. J P [1] 40% FINE
5. J P [2] 40% FINE
6. L P [3] 2400 mm/s FINE
7. Pickup (‘BOX’) From (‘Makitech_MMC-DR57_W500_2P4’)
With (‘GP:1-UT:1(Eoat1)’)// RO [1] = ON
8. L P [4] 2400 mm/s FINE
9. J P [5] 40% FINE
10. UTOOL [1]
11. UFRAME_NUM = 2
Eng. Proc. 2024, 70, 20 10 of 13

12. L P [6] 2400 mm/s FINE


13. Drop(‘BOX’) From(‘GP:2-UT:1(Eoat1)’)
On (‘PlasticPallet_L1000_W1000_H130_1’) // RO [1] = OFF
14. L P [7] 2400 mm/s FINE
15. J P [8] 40% FINE
Second version
The controller’s program—the program recorded on the controller consists of the
following sub-programs:
1. Sending the robot to the starting position.
--------------------------Program HOME-------------------------------------
1: L P [1] 4500 mm/s FINE
2: L P [2] 4500 mm/s FINE
3: CALL CONVEYOR
4: L P [2] 4500 mm/s FINE
5: L P [3] 1800 mm/s FINE
6: L P [4] 1800 mm/s FINE
7. CALL PALLET1 or PALLET2
8. L P [4] 1800 mm/s FINE
9. L P [1] 4500 mm/s FINE
2. Control of the conveyor.
------------------Program CONVEYOR--------------------------------------
1: L P [1] 1500 mm/s FINE
2: L P [2] 1500 mm/s FINE
3: Pickup Pickup(‘BOX’) From (‘Makitech_MMC-DR57_W500_2P4’)
With (‘GP:1-UT:1(Eoat1)’) / RO [1] = ON
4: L P [3] 1500 mm/s FINE
3. Placing the box on pallets.
-----------Program PALLET1/UF2/ and PALLET2/UF3/----------------
P [1] GP2 (UF2 and UF3) UT1
J1 0.000 mm
Position Detail
1: L P [1] 1500 mm/s FINE
2: Drop(‘BOX’) From(‘GP:2-UT:1(Eoat1)’)On (‘PlasticPallet_L1000_W1000_H130_1’)/
RO [1] = OFF
3: L P [1] 1500 mm/s FINE

3.5. Types of Box Configurations on the Pallet with Some Coordinates


In total, 18 boxes measuring 150 × 150 × 150 mm can be placed on one pallet. An
example layout is presented (shown) in Figures 11–14 (below), with coordinates of the
location of the end boxes.
ROL [1]
3: = OFF
P [1] 1500 mm/s FINE
3: L P [1] 1500 mm/s FINE
3.5. Types of Box Configurations on the Pallet with Some Coordinates
3.5. Types of Box Configurations on the Pallet with Some Coordinates
In total, 18 boxes measuring 150 × 150 × 150 mm can be placed on one pallet. An
Eng. Proc. 2024, 70, 20 In total,
example layout18 is
boxes measuring
presented 150 in
(shown) × 150 × 15011–14
Figures mm (below),
can be placed of11the
on one pallet.
with coordinates of 13
An
exampleof
location layout
the endis presented
boxes. (shown) in Figures 11–14 (below), with coordinates of the
location of the end boxes.

Figure 11.
Figure 11. First
First left
left box
box on
on pallet
pallet with
with example
example coordinates.
coordinates.
Figure 11. First left box on pallet with example coordinates.

Figure 12. First right box on pallet with example coordinates.


Figure12.
Figure 12. First
First right
right box
box on
on pallet
pallet with
with example
example coordinates.
coordinates.
Eng. Proc. 2024, 70, x 11 of 12

Figure13.
Figure 13. Third
Third left
left box
box on
on pallet
pallet with
with example
example coordinates.
coordinates.
Eng. Proc. 2024, 70, 20 12 of 13

Figure 13. Third left box on pallet with example coordinates.

Figure 14.
Figure 14. Third
Third right
right box
box on
on pallet
pallet with
with example
example coordinates.
coordinates.

3.6. Stage
3.6. Stage 6—Simulation
6—Simulation of the Developed
Developed Program
Program
The ROBOGUIDE
The ROBOGUIDE toolkit hashas been
been used
used to
to simulate
simulatehow
howthe
therobotic
roboticcell
celloperates
operatesinin
accordance with
accordance with the
the generated program. No
No collisions
collisionsand
andsingularities
singularitieshave
havebeen
beenfound
found
whilesimulating
while simulating operation
operation under the generated program.
program.

4.
4. Conclusions
Conclusions
The proposed methodology,
The proposed methodology,describing
describing thethe main
main steps
steps in operation
in the the operation
of CARCof CARC
sys-
systems, which
tems, which areare needed
needed to to generate
generate a control
a control program
program for
for ananindustrial
industrialrobot,
robot,isisuniversal
universal
and
and can
can be
be used
used when
when working with various
various CARC
CARC systems.
systems.
The
The defined
defined individual stages
stages are
are interconnected,
interconnected,and andthetheresults
resultsobtained
obtainedfrom fromthe
the
simulation
simulation ofof the developed program may
developed program mayrequire
requirechanging
changingthe thedecisions
decisionstaken
takenatatprevi-
previ-
ous
ous stages.
stages.
The
The functionality
functionality of the proposed
proposed methodology
methodology isis proven
provenby bythe
thecontrol
controlprogram
program
generated for a Fanuc LR
generated for a Fanuc LR Mate Mate 200 iD/7L industrial robot performing “Pick
iD/7L industrial robot performing “Pick and Place” and Place”
operations
operations inin the
the servicing of a conveyor
conveyor for
for the
the transportation
transportationof ofboxes
boxesororpackages
packagesand and
their
their arrangement
arrangement on on pallets.
Simulating
Simulating the work of robotic systems
systems byby using
usingtheir
their3D3Dmodels
modelscreated
createdininaaCARC
CARC
system
system environment
environment allows us not only to to detect
detect possible
possiblecollisions
collisionsand
andsingularities,
singularities,butbut
also to obtain data
also to obtain data onon the systems’ technical and functional characteristics.
and functional characteristics.

Author Contributions: B.V., S.N. and S.T. were involved in the full process of producing this paper,
including conceptualization, methodology, modeling, validation, visualization, and preparing the
manuscript. All authors have read and agreed to the published version of the manuscript.
Funding: This work was supported by Scientific and research sector of Technical University of
Sofia Contract No. 241ΠД0024-06 Examination the possibilities of programming industrial robots
using API.
Institutional Review Board Statement: Not applicable.
Informed Consent Statement: Not applicable.
Data Availability Statement: Data are displayed in the article.
Acknowledgments: The authors wish to thank Scientific and research sector of Technical University
of Sofia.
Conflicts of Interest: The authors declare no conflict of interest.
Eng. Proc. 2024, 70, 20 13 of 13

References
1. Totev, D.; Dimitrova, R.; Dimitrov, S. Main Steps in the Process of Upgrade of Existing Systems for Automation and Control of
Industrial and Manufacturing Processes in Order to Fulfill the Requirements of the Concept “Industry 4.0”, EEPES 2023. AIP
Conf. Proc. 2024, 63, 060007. [CrossRef]
2. Novak, J.; Kuzmiakova, M. Computer Aided Production Engineering. In Proceedings of the International Conference on
Manufacturing Systems—ICMaS, Bucharest, Romania, 5–6 November 2009; University Politehnica of Bucharest, Machine and
Manufacturing Systems Department: Bucharest, Romania, 2009; Volume 4, pp. 311–314.
3. Computer-Aided Design of Robot Controller Handling and Real-Time Control. Available online: https://www.semanticscholar.
org/paper/Computer-Aided-Design-of-Robot-Controller-Handling-Simon-Espiau/da1567ba85474382766d01eaf4fa4285775
5f78f (accessed on 12 March 2024).
4. Computer-Aided Design of a Generic Robot Controller Handling Reactivity and Real-Time Control Issues. Available online:
https://ipn.elsevierpure.com/en/publications/computer-aided-design-of-a-generic-robot-controller-handling-reac (accessed
on 12 March 2024).
5. Design of Intelligent Robot Control System Based on Human–Computer Interaction. Available online: https://link.springer.com/
article/10.1007/s13198-021-01267-9 (accessed on 22 March 2024).
6. Application of the Virtual Reality Modelling Language to Computer Aided Robot Control System ROANS. Available on-
line: https://www.semanticscholar.org/paper/Application-of-the-Virtual-Reality-Modelling-to-Novak-Marcincin-Doli%C3
%A1k/0389d7a146df141ab0e9a60f5d442ff0f48db79b (accessed on 12 April 2024).
7. Wu, H.; Deng, H.; Yang, C.; Guan, Y.; Zhang, H.; Li, H. A Robotic Off-line Programming System Based on SolidWorks. In
Proceedings of the 2015 IEEE Conference on Robotics and Biomimetics, Zhuhai, China, 6–9 December 2015; pp. 1711–1716.
8. Novak-Marcincin, J.; Brazda, P.; Janak, M.; Kocisko, M. Application of Virtual Reality Technology in Simulation of Automated
Workplaces. Tech. Gaz. 2011, 18, 577–580.
9. Dimitrova, R.; Dimitrov, S.; Totev, D.; Bahchevanov, B. Electrical Control, Program Code and Experimental Studies of the
Gauss Curve in a Specialized Automated Mechatronic System. In Proceedings of the 2023 4th International Conference on
Communications, Information, Electronic and Energy Systems (CIEES), Plovdiv, Bulgaria, 23–25 November 2023; pp. 1–7.
[CrossRef]
10. Saaksvuori, A.; Immonen, A. Product Lifecycle Management, 2nd ed.; Springer: Berlin/Heidelberg, Germany, 2005.
11. Industrial Robot Fanuc LR Mate 200iD/7L. Available online: https://www.fanuc.eu/se/en/robots/robot-filter-page/lrmate-
series/lrmate-200id-7l (accessed on 9 April 2024).
12. Fanuc Roboguide, Operator Manual, B-83234EN/03. Available online: https://kupdf.net/download/roboguide-operator-
manual-b-83234en-02_5d32fb49e2b6f5b75a4c0937_pdf (accessed on 23 January 2024).
13. Conveyor Makitech MMC-DR57-P75. Available online: https://www.makitech.co.jp/conveyor/4/mmc-dr.html (accessed on 9
April 2024).
14. Global 7-Axis Robot Market Insights, Forecast to 2029. Available online: https://www.industryresearch.co/global-7-axis-robot-
market-25770153 (accessed on 12 April 2024).
15. World’s First Composite Concrete 7th Axis Used for the First Time in Series Production at Car Manufacturer. Available
online: https://www.roboticstomorrow.com/article/2019/07/worlds-first-composite-concrete-7th-axis-used-for-the-first-time-
in-series-production-at-car-manufacturer/13885 (accessed on 9 April 2024).
16. Collaborative Synchronization of a 7-Axis Robot. Available online: https://www.researchgate.net/publication/338091284_
Collaborative_Synchronization_of_a_7-Axis_Robot (accessed on 9 April 2024).

Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual
author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to
people or property resulting from any ideas, methods, instructions or products referred to in the content.

You might also like