0% found this document useful (0 votes)
7 views

Multi-Platforms_Integration_in_Robotics_Simulating_Robots_Using_CoppeliaSim_Choregraphe_and_Matlab

This conference paper discusses the integration of multiple platforms in robotics, specifically using CoppeliaSim, Choregraphe, and Matlab for simulating robotic systems. It details the simulation of the ABB IRB 120 and NAO robots, emphasizing the effectiveness of CoppeliaSim in kinematic analysis and real-time data collection. The findings demonstrate improved adaptability and control in robotic simulations, which are beneficial for researchers and developers in the field.

Uploaded by

akrout amal
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views

Multi-Platforms_Integration_in_Robotics_Simulating_Robots_Using_CoppeliaSim_Choregraphe_and_Matlab

This conference paper discusses the integration of multiple platforms in robotics, specifically using CoppeliaSim, Choregraphe, and Matlab for simulating robotic systems. It details the simulation of the ABB IRB 120 and NAO robots, emphasizing the effectiveness of CoppeliaSim in kinematic analysis and real-time data collection. The findings demonstrate improved adaptability and control in robotic simulations, which are beneficial for researchers and developers in the field.

Uploaded by

akrout amal
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/388469769

Multi-Platforms Integration in Robotics: Simulating Robots Using CoppeliaSim,


Choregraphe and Matlab

Conference Paper · November 2024


DOI: 10.1109/ICRAE64368.2024.10851498

CITATIONS READS
0 27

2 authors:

Oussama El Salibi Mustafa Kemal Uyguroğlu


Eastern Mediterranean University Eastern Mediterranean University
1 PUBLICATION 0 CITATIONS 34 PUBLICATIONS 616 CITATIONS

SEE PROFILE SEE PROFILE

All content following this page was uploaded by Oussama El Salibi on 07 February 2025.

The user has requested enhancement of the downloaded file.


2024 9th International Conference on Robotics and Automation Engineering

Multi-Platforms Integration in Robotics: Simulating


Robots Using CoppeliaSim, Choregraphe and Matlab
2024 9th International Conference on Robotics and Automation Engineering (ICRAE) | 979-8-3315-1830-1/24/$31.00 ©2024 IEEE | DOI: 10.1109/ICRAE64368.2024.10851498

Oussama El Salibi Mustafa Kemal Uyguroğlu


Electrical and Electronic Engineering Electrical and Electronic Engineering
Eastern Mediterranean University Eastern Mediterranean University
Famagusta, Northern Cyprus Famagusta, Northern Cyprus
[email protected] [email protected]

Abstract—This study describes the development and Robotics simulators enable engineers to quickly and
simulation of two robotic systems with CoppeliaSim, Matlab, and affordably build, prototype, and test robots in a controlled
Choregraphe, for which CoppeliaSim is the primary robotic environment, eliminating the need for actual equipment [2].
software. Firstly, the stationary ABB IRB 120 Robot is designed
and simulated in CoppeliaSim, which analyzes and optimizes its Recent, advancements have led to a variety of simulation
motion using both forward and inverse kinematics. This is tools for robot dynamics, including CoppeliaSim, Gazebo,
accompanied by a dynamic simulation of the NAO mobile robot, Webots, Morse, and others. A new study aims to objectively
which was accomplished through the seamless integration of compare these programs for mobile robots using real-world data
CoppeliaSim and Choregraphe, resulting in improved control and from a Husky A200 robot driving across different terrains. Each
interaction skills. Furthermore, the ABB IRB 120 Robot simulator's 3D mobile robot model was tested in identical
undergoes an additional simulation phase that involves the simulation environments. CoppeliaSim emerged as the most
integration of Matlab and CoppeliaSim, with an emphasis on effective simulator based on weighted metrics comparing
sophisticated kinematic analysis and sensor data collecting. This simulation outputs with actual results [3].
study shows how combining different platforms improves the
adaptability of robotic simulations, enabling more complicated CoppeliaSim , previously known as V-REP, was developed
real-time data collecting and control tactics. The findings are by Coppelia Robotics in Zurich, Switzerland [4], and is
useful for academics and developers dealing with various robotics commonly used for educational purposes. Its flexible design
systems platforms and control techniques. allows users to develop 2D or 3D simulations quickly. The
integrated development environment (IDE) is based on a
Keywords—CoppeliaSim, ABB IRB 120 Robot, NAO Robot, networked and programmable architecture, enabling scripts to
kinematics, Real-Time Data Collection be executed on multiple scene objects simultaneously.
I. INTRODUCTION CoppeliaSim, offers various examples, robot models,
Simulation is commonly used in robotics to test ideas on sensors, and actuators for building and interacting with virtual
virtual robots before implementing them on actual environments in real-time. Users can also create new models for
robots. Nevertheless, once robots became an accessible tailored simulation experiments [5-6]. In addition, CoppeliaSim
commodity for research groups in the late 1980s and early 1990s, offers a flexible framework allowing easy creation of unique
it became difficult to share results gained entirely through robots without coding. Scientists and engineers can customize
simulation; consequently, simulation fell out of preference and robots for specific purposes and settings effortlessly. With drag-
was primarily used in specific areas such as swarm robotics and and-drop features, parts assembly, sensor and actuator setup, and
robot learning. However, throughout the last decade, simulation specifying robot actions become simple through graphical
in robotics has received renewed interest. Computing power has interfaces. A custom 7-degree-of-freedom robotic arm was
increased, allowing for the execution of computationally created using this ease [7].
complex algorithms on personal devices rather than specialized Section I introduces the importance of simulation in robotics
gear. Another explanation is the gaming industry's focus on and compares CoppeliaSim based on previous related works
creating realistic virtual worlds in computer games. Creating with other simulators to justify its selection. It provides an
virtual environments demands a significant amount of computer overview of CoppeliaSim's features for both mobile and
power for graphics visualization and physics computations. As stationary robots and sets the central idea of the study. Section
a result, the gaming industry created software engines that, in II expands on kinematics, demonstrating how CoppeliaSim
theory, appear capable of offering high-quality physics applies these concepts in real-world scenarios using forward and
modeling and rendering software in the robotics area. Since the inverse kinematics. Section III explores integrating Choregraphe
aims of computer gaming and robotics simulations are relatively and CoppeliaSim with the NAO robot enabling the coding and
similar—creating an accurate virtual equivalent of a real-life operation of the NAO robot in a realistic virtual environment.
application case—robotics simulators can utilize these This allows for the safe and successful testing of robot actions
computation and graphics processors and benefit from the boost and applications before actual deployment and also discusses
in processing power [1]. some interesting features in Choregraphe such as building up a
customized box for NAO robot control, while Section IV

979-8-3315-1830-1/24/$31.00 ©2024 IEEE 100


Authorized licensed use limited to: ULAKBIM UASL - DOGU AKDENIZ UNIV. Downloaded on February 03,2025 at 16:58:00 UTC from IEEE Xplore. Restrictions apply.
discusses the integration of Matlab and CoppeliaSim for the The ABB IRB 120 robot has been successfully imported into
ABB IRB 120 robot simulation and also shows some of the CoppeliaSim as revealed in Figure 2, using the .stl file format
benefits of this integration by reading sensor data from commonly used for Computer Aided Design (CAD) purposes.
CoppeliaSim into Matlab at real-time. The conclusion in Currently, the robot cannot perform any movement or tasks
Chapter V summarizes achievements and suggests future because no joints or actuators are allocated to it. The next step
directions for robotic simulation. Finally, references are involves assigning the necessary joints for the robot to function
available at the end of this study for ethical considerations. properly. The ABB120 robot is a 6-degree-of-freedom robot
with 6 revolute joints placed between each pair of links in
II. COPPELIASIM SIMULATIONS various shapes [8].
A. ABB IRB 120 Robot Implementation
The ABB120 robot initially imported into CoppeliaSim
faced compatibility issues. To resolve this, necessary joints and
parts were added to ensure smooth functionality in CoppeliaSim.
Refinements were made to enhance the robot's efficiency in the
simulation environment. This section discusses the process of
importing, developing, and simulating the robot.

Fig. 1. Robots Importing into Coppeliasim

Figure 1 illustrates the process of importing a robot into


Fig. 3. Joints Representations for the ABB IRB 120 Robot
CoppeliaSim. Choosing the mesh option during import is
recommended for a more realistic representation of the robot,
Figure 3 shows the required representation for each of the
providing detailed geometry and facilitating collision detection
revolute joints created in CoppeliaSim to have a smooth
between its links or parts.
simulation of the robot.
To have the robot imported into CoppeliaSim, first, navigate
to the CoppeliaSim directory and locate the CAD_Robots file
containing various industrial robots in .stl format. Each robot
part is selected individually, and upon pressing the open button,
all parts mesh together to form the complete robot representation
in CoppeliaSim. It's crucial to ensure that the selected links
belong to the same robot to avoid any meshing issues. Usually,
the robot's name is mentioned along with the link to prevent such
problems.

Fig. 4. Final Representation of the ABB IRB 120 Robot

Figure 4 demonstrates the final representation of the ABB


IRB 120 robot after allocating all necessary joints and attaching
the end effector as well.
B. ABB IRB 120 Robot Simulation in CoppeliaSim Using
Forward Kinematics
The ABB IRB 120 robot is fully prepared in CoppeliaSim,
with all necessary joints positioned accurately and the end
Fig. 2. ABB IRB 120 Robot Imported into CoppeliaSim effector attached seamlessly. Through meticulous calibration
and strategic linkages, it represents a perfect blend of precision

101
Authorized licensed use limited to: ULAKBIM UASL - DOGU AKDENIZ UNIV. Downloaded on February 03,2025 at 16:58:00 UTC from IEEE Xplore. Restrictions apply.
engineering and creative planning. It is now more than just which will open up a wide range of possible applications in a
hardware and software; it serves as a gateway for curiosity, variety of fields, from autonomous navigation systems to
productivity, and creativity, responding gracefully and sophisticated manufacturing processes. Beyond just a
efficiently to commands in CoppeliaSim. To emphasize the theoretical idea, inverse kinematics is essential to improving the
importance of the ABB IRB 120 in industrial applications and effectiveness, accuracy, and adaptability of robotic systems in a
its efficiency in various tasks, a simulated environment has been range of industrial settings. Through inverse kinematics,
created in CoppeliaSim. This virtual environment allows engineers can enable robots to carry out intricate tasks with
scientists, engineers, and manufacturers to refine tactics and precision and agility, transforming industrial processes in
procedures while gaining valuable insights into its potential. It various industries. Let's examine its importance and real-world
demonstrates the critical role of virtual simulations in fostering applications in more detail.
innovation and improving efficiency in factories [9] that serves
to improve the quality of life based on many aspects such as
avoiding harm that might face workers especially when doing
some repetitive or handling tasks. Increasing productivity to
satisfy all of the community's needs and diving further for
serving to reach one of the sustainable development goals that
raise the community in various fields and aspects.

Fig. 6. Pick and Place Process Using Inverse Kinematics

Figure 6 shows the complete criteria of the pick and place


process, where the robot end effector reaches the desired
location for placing the object. Instead of returning to the initial
control point after placing the object, the robot moves back to
the pick location to save energy. Once all objects are
Fig. 5. Pick and Place Process Using Forward Kinematics successfully picked and placed, the robot moves to the home
position as the proximity sensor detects no objects.
Figure 5 illustrates the complete process of picking and
placing all available objects from the conveyor using forward D. NAO Robot Simulation in CoppeliaSim
kinematics. A proximity sensor is placed at the end of the NAO, developed by Aldebaran in 2008 and later acquired by
conveyor such that as long as the sensor is not detecting any Softbank Robotics, is a popular humanoid robot widely used in
object the conveyor keeps working at a 20 m/s speed and as soon human-robot interaction research. It is autonomous,
as the sensor detects any object the speed of the conveyor is set programmable, and extensively utilized in various applications
to 0 m/s and the pick and place process starts. Objects are for children, adults, and the elderly. With over 13,000 NAO
stacked vertically in pairs, and the robot repeats the process for robots operating in more than 70 countries worldwide [10],
each new column of objects. This process continues iteratively. recent studies have explored their potential. NAO's ability to
C. ABB IRB 120 Robot Simulation in CoppeliaSim Using replicate human gestures and recognize emotions qualifies it as
a socially assistive robot (SAR) [11-12] serving to enhance the
Inverse Kinematics
quality of life.
In this section, inverse kinematics is used to precisely
coordinate the motions of a robotic system along a predefined In this section, simulation results of the NAO Robot in the
path. The use of this advanced approach makes flexibility and CoppeliaSim environment are presented, investigating various
accuracy the primary goals for controlling the robot's mobility. aspects such as movement, manipulation, and interaction with
Every precisely determined change in joint angle enables the surroundings through detailed modeling and accurate physics
robot to navigate its surroundings with ease and follow the simulations. The goal is to provide comprehensive knowledge
intended path precisely. This endeavor is a critical step in of the NAO Robot's performance and capabilities in this virtual
enhancing the robotic platform's flexibility and autonomy,

102
Authorized licensed use limited to: ULAKBIM UASL - DOGU AKDENIZ UNIV. Downloaded on February 03,2025 at 16:58:00 UTC from IEEE Xplore. Restrictions apply.
environment. Due to the complexity of programming individual 2 allows users to arrange actions visually, with entry boxes on
motions with the NAO Robot's many degrees of freedom, the left and output boxes on the right. Sequential or parallel
Choregraphe is combined with CoppeliaSim to overcome this actions are linked from the entry box to the output box. By
challenge. Choregraphe's intuitive interface and advanced selecting the "play" button, these actions can be executed on
control features enhance the simulation process by providing a NAO if connected via Wi-Fi, or on the 3D graphical NAO in
natural framework for coordinating robot movements region 3 if an actual robot is unavailable. Region 4, the script
graphically or schematically. This integration improves editor, allows for editing the Python code in each pre-
efficiency and accuracy in programming and simulation to get programmed box to modify actions or behaviors.
the best simulation outcomes.
III. INTEGRATION OF CHOREGRAPHE AND COPPELIASIM
A. Controlling NAO Robot In CoppeliaSim Using
Choregraphe and Record Joints Angles
Each version or item in CoppeliaSim, including the NAO
robot, may be managed via remote APIs that are accessible from
many programs. The CoppeliaSim API framework enables
manipulation of a simulation or the simulator itself from an
external program that is, a software program that runs in a
separate process or from remote devices, such as an actual robot
or a distant computer [13].
One general function and around one hundred particular
functions make up the remote API. These functions may be
called from a Lua script, a Matlab or Octave software, a Java app,
a C/C++ integration, and others. Through port connectivity (or,
potentially, common memory), the remote API can
communicate with CoppeliaSim [13].

Fig. 7. NAO Robot in CoppeliaSim

Figure 7 displays the simulation results of the NAO robot in


CoppeliaSim which demonstrates how well its actions and
motions were replicated. These outcomes highlight how well the
simulation approach captures the abilities of the NAO robot in
the virtual environment that has been chosen. In the simulation,
an instructor is present while the NAO robot pretends to be a
pupil. After being placed at a predetermined location, the robot
moves to welcome the instructor and then moves to sit down as
revealed. This could be explained as a training process for junior
teachers.

Fig. 9. NAO Robot in Choregraphe and CoppeliaSim

Figure 9 presented shows how smooth is the integration


between Choregraphe and CoppeliaSim, for which as revealed
the NAO Robot in Choregraphe and CopeliaSim is set to have
the same behavior by doing the same actions and movements. At
the current stage viewed in Figure 9, Choregraphe is simulated
first, and due to success in integration between it and
CoppeliaSim, the simulation in CoppeliaSim would run as well.
During the simulation, CoppeliaSim will be recording the NAO
Fig. 8. NAO Robot in Choregraphe
Robot joint Movements from Choregraphe in an Excel file that
The Flow Diagram in Choregraphe is used to assemble will be generated in the same path where both scenes are saved.
actions for the NAO robot by dragging and dropping icons from Later on, when the simulation ends, the same simulation can be
region 1 (box library) to region 2 (workspace). Region 1 includes done once again in CoppeliaSim without the need for the
categories such as Animation, Speech, LEDs, Multimedia, and interference of Choregraphe since the robot joints have been
Movement, and is located at the bottom left of Figure 8. Region already recorded.

103
Authorized licensed use limited to: ULAKBIM UASL - DOGU AKDENIZ UNIV. Downloaded on February 03,2025 at 16:58:00 UTC from IEEE Xplore. Restrictions apply.
B. Creating a Customized Box in Choregraphe An integration between Matlab and CoppeliaSim platform is
Choregraphe's timeline box enables users to create a custom used to realistically imitate the behavior of the ABB IRB 120
box and include time control into the programming process to robot with its considered features, taking into consideration the
determine the time required for each action. Accessing a fundamental ideas of stationary robots.
timeline box opens a new window similar to Choregraphe's high-
level interface.

Fig. 11. Integration of Matlab and CoppeliaSim for Applying Forward


Kinematics
Fig. 10. Custom Movement Created Within a Specific Timeline
Figure 11 demonstrates controlling the ABB IRB 120 robot
When the "Whole body" option is selected in Choregraphe
using Matlab while it is simulated in CoppeliaSim to perform a
under the “Store joints in keyframe " menu, a new red interval
pick and place process via forward kinematics. The cooperation
appears at the beginning of the timeline. To control the robot's
between Coppeliasim and Matlab is straightforward due to pre-
movements, the autonomous mode is turned off by selecting the
existing Matlab scripts in the CoppeliaSim directory that
heart symbol above the robot view. The robot will move to sleep
facilitate their connection. The upper left part of Figure 11 shows
mode and can be woken up by clicking the cloud symbol. Users
that the scenes and scripts must share the same path for
can then select any part of the robot, such as the right hand, and
successful simulation. When the CoppeliaSim scene stops, the
control its movement. The inspector bar shows all joints within
Matlab scene also stops, indicating a lost signal because
the selected part. By manually adjusting the joints' positions, the
CoppeliaSim is no longer running.
movements are stored in the keyframe. The red interval is
adjusted to the desired stopping point for the movement. When
the simulation runs, the robot performs the customized
movement from the green interval to the red interval.
Similarly, if the robot is required to do other actions within
the same simulation, then the process is repeated, the violet
interval now would be moved to the same location as the red
interval and this will be the starting point for the next frame,
which means that when the first movement ends, the robot will
move to apply the second customized movement as discussed
before.
After finalizing all of the required actions, the robot
movement can be tested by pressing the play button within the
motion option that can be found at the upper left directly next to
the green interval as shown in Figure 10.
IV. INTEGRATION OF MATLAB AND COPPELIASIM Fig. 12. Real-Time Data Collection from CoppeliaSim to Matlab

A. Implementing Sensor Data Monitoring and Figure 12 shows the connection between Matlab and
Communication Between Matlab and CoppeliaSim for the CoppeliaSim, highlighting the Sensor Trigger Data readings.
ABB IRB 120 Robot The command window displays proximity sensor data from
The integration with CoppeliaSim is not only possible CoppeliaSim at each robot iteration. A reading of -1 indicates
through Choregraphe as previously discussed in Chapter III. the sensor's initial state, 0 means no object is detected, and 1
Developing, testing, and verifying robotic computations and means an object is detected and ready to be picked up. Once the
control systems is made possible also by the integration of object is picked up, the reading returns to 0. The Matlab display
Matlab and CoppeliaSim for real-time simulations. This mirrors these values from the CoppeliaSim proximity sensor.
cooperation makes use of CoppeliaSim's sophisticated robotics
simulation environment and Matlab's analytical and simulation
powers.

104
Authorized licensed use limited to: ULAKBIM UASL - DOGU AKDENIZ UNIV. Downloaded on February 03,2025 at 16:58:00 UTC from IEEE Xplore. Restrictions apply.
REFERENCES
[1] M. Reckhaus, N. Hochgeschwender, J. Paulus, A. Shakhimardanov, and G.
K. Kraetzschmar, "An overview about simulation and emulation in
robotics," Proceedings of SIMPAR, pp. 365–374, 2010.
[2] A. Afzal, D. S. Katz, C. L. Goues, and C. S. Timperley, "A study on the
challenges of using robotics simulators for testing," arXiv preprint
arXiv:2004.07368, 2020.
[3] Farley, A., Wang, J., & Marshall, J. A. (2022). How to pick a mobile robot
simulator: A quantitative comparison of CoppeliaSim, Gazebo, MORSE
and Webots with a focus on accuracy of motion. Simulation Modelling
Practice and Theory, 120, 102629.
[4] Rohmer, E., Singh, S. P., & Freese, M. (2013, November). V-REP: A
versatile and scalable robot simulation framework. In 2013 IEEE/RSJ
international conference on intelligent robots and systems (pp. 1321-
Fig. 13. Integration of Matlab and CoppeliaSim for Applying Inverse
1326). IEEE.
Kinematics
[5] Fabregas, E., Farias, G., Peralta, E., Vargas, H., & Dormido, S. (2016,
September). Teaching control in mobile robotics with V-REP and a
Figure 13 demonstrates the ABB IRB 120 robot being Khepera IV library. In 2016 IEEE conference on Control Applications
controlled by Matlab and simulated in CoppeliaSim, showing (CCA) (pp. 821-826). IEEE.
the smooth connection between the two platforms. For inverse [6] Farias, G., Torres, E., Fabregas, E., Vargas, H., Dormido-Canto, S., &
kinematics simulation, object handles such as the gripper name, Dormido, S. (2018, October). Navigation control of the Khepera IV model
target dummy, and waypoints (Idle, Pick, and Place) were with OpenCV in V-REP simulator. In 2018 IEEE International
passed to Matlab to ensure the robot followed the correct track Conference on Automation/XXIII Congress of the Chilean Association of
Automatic Control (ICA-ACCA) (pp. 1-6). IEEE.
or target. Without this, the robot cannot determine the specific
path to follow. [7] Jahn, U., Heß, D., Stampa, M., Sutorma, A., Röhrig, C., Schulz, P., & Wolff,
C. (2020). A taxonomy for mobile robots: Types, applications, capabilities,
implementations, requirements, and challenges. Robotics, 9(4), 109.
V. CONCLUSIONS AND FUTURE WORKS
[8] Yang, Y., Haghighi, A., & Li, L. (2018). Energy Consumption Study for 6-
This study demonstrates CoppeliaSim's effectiveness in Axis Hybrid Additive-Subtractive Manufacturing Process. In IIE Annual
modeling and controlling both mobile and stationary robots. Conference. Proceedings (pp. 1019-1024). Institute of Industrial and
Integration with Choregraphe and Matlab enhances simulation Systems Engineers (IISE).
capabilities for precise robotic system development. The [9] Hosseinpour, F., & Hajihosseini, H. (2009). Importance of simulation in
manufacturing. World Academy of Science, Engineering, and Technology,
research establishes a solid foundation for future robotic 51(3), 292-295.
simulation studies, emphasizing the importance of kinematic [10] Amirova A, Rakhymbayeva N, Yadollahi E, Sandygulova A, Johal W. 10
knowledge and software compatibility. The insights provided Years of Human-NAO Interaction Research: A Scoping Review. Front
are expected to significantly advance robotic simulations, Robot AI. 2021 Nov 19;8:744526.
benefiting researchers and engineers in the field. [11] De Carolis, B., Ferilli, S., & Palestra, G. (2017). Simulating empathic
behavior in a social assistive robot. Multimedia Tools and Applications,
Future work on modeling robots using CoppeliaSim offers 76, 5073-5094.
significant opportunities for advancing robotic technology. [12] De Carolis B, Ferilli S, Palestra G, Carofiglio V (2015) Modeling and
Integrating AI and machine learning can enhance autonomy, simulating empathic behavior in social assistive robots. In: Proceedings of
while real-time control systems with sensor fusion will improve the 11th biannual conference on Italian SIGCHI chapter. ACM, pp 110–
accuracy and adaptability. Coordinating multiple robots and 117.
creating more complex environments will refine operational [13] Gena, C., Mattutino, C., Maltese, W., Piazza, G., & Rizzello, E. (2021,
August). Nao_prm: an interactive and affective simulator of the nao robot.
strategies. Exploring human-robot interaction can make In 2021 30th IEEE international conference on robot & human interactive
collaborative robotics more realistic. communication (RO-MAN) (pp. 727-734). IEEE.

105
Authorized licensed use limited to: ULAKBIM UASL - DOGU AKDENIZ UNIV. Downloaded on February 03,2025 at 16:58:00 UTC from IEEE Xplore. Restrictions apply.

View publication stats

You might also like