Professional Documents
Culture Documents
Comparison Between Line-Followers and Free Movement Robots in Tasks Execution in A Simulated Environment
Comparison Between Line-Followers and Free Movement Robots in Tasks Execution in A Simulated Environment
Comparison Between Line-Followers and Free Movement Robots in Tasks Execution in A Simulated Environment
145
Authorized licensed use limited to: BEIHANG UNIVERSITY. Downloaded on April 15,2023 at 01:37:11 UTC from IEEE Xplore. Restrictions apply.
many technologies. It can use an infrared ray sensor to follow a For the angular controller, the error is the difference between
line made with tape on the ground or use a magnetic sensor to the current angle of the robot and its desired angle facing the
follow a magnetic line [4]. The free movement robots are more target point. This can be achieved by Equation 3.
intelligent and use odometry from sensors like accelerometers,
gyroscopes, inertial measurement units, LIDAR, among others, θ = atan2(y2 − y1 , x2 − x1 ) (3)
to locate themselves [5]. Where θ is the angular error and atan2 is an arc-tangent
This work compares the usage of robots applying a line- function that takes the quadrants of (x, y) into consideration.
follower method to complete tasks with fewer robots utilizing (x2 , y2 ) is the target point, and (x1 , y1 ) the robot position.
a free movement strategy, regarding their idle times, the tasks’ An avoid obstacles Fuzzy Logic controller is designed and
wait times, and how many tasks each machine was able to switched from the PID when necessary. Fuzzy Logic allows
complete, using a simulated environment. representing uncertainty and vagueness. A fuzzy controller
The structure of this work is in such a way that Section uses linguistic variables and consists of three steps: fuzzify
II deals with the used methodology and concepts, while the inputs by associating them with the membership functions,
Section III contains aspects related to the development and apply the previously specified rules to calculate the outputs,
the simulation. In sequence, Section IV presents the results and de-fuzzify those outputs to get the final values [10].
obtained, concluding in Section V that also contains the future A TITO (Two Inputs and Two Outputs) fuzzy controller
work. is applied for obstacle avoidance control. The first input
II. M ETHODOLOGY is the distance to the closest obstacle, encompassing four
sets: “VeryClose”, “Close”, “Far” and “VeryFar”. The second
The comparison is carried out in a simulated environment
input is the angle to closest obstacle, encompassing five sets:
built into V-REP (Virtual Robot Experimentation Platform)
“VeryRight”, “Right”, “Center”, “Left” and “VeryLeft”. Figure
[6]. All codes are developed using Python language [7] and
1 shows the membership functions for both sets.
ROS (Robot Operating System) framework [8].
A. Criteria
The comparison between line-followers and free-movement
robots is based on their capabilities in completing tasks. Thus,
the criteria used for the comparison are idle time per robot,
maximum and average wait time per task, and the number of
tasks completed. The idle time is considered any time that
the robot is not doing a task nor in route to start one. The
wait time for the tasks is defined as the time passed between
that task being ready to be executed and one robot starting it. Fig. 1: Membership functions for distance and for angle to the
Other data, like traveled distance and route time for the free- closest obstacle (fuzzy controller inputs)
movement robots are also collected. These values, associated
with their respective experiments, can be seen in Section IV. For the outputs, the first one is the angular velocity, encom-
passing five sets: “VeryClock”, “Clock”, “Center”, “Anticlock”
B. Navigation and Control and “VeryAnticlock”. This output corresponds to the correc-
The free-movement robot utilizes two PID controllers [10] tion in the angular movement that should be applied so that the
to navigate around the scene. The first one controls linear robot can avoid the detected obstacle. Finally, the last output
speed and the other the angular speed. PID controllers are is the linear velocity, encompassing three sets: “VerySlow”,
mathematically given by “Slow” and “Normal”. The idea is, the closer the robot is to
Z t the obstacle, slower it will get, so it will have time to avoid
de(t) it. The membership functions of both outputs are shown in
u(t) = K p e(t) + Ki e(t)dt + Kd (1)
0 dt Figure 2.
Where u(t) is the control output, e(t) is the error between The rules generally make the robot motion slower the closest
the controlled variable and its set-point, K p is the proportional it is to the obstacle but also increase the angular velocity so
gain, Ki is the integral gain and Kd is the derivative gain. that the robot can easily do the deviant maneuver. Likewise, it
The linear speed error is calculated as the linear distance boosts the angular velocity if the obstacle is closer to the center
between the current robot position in the scene and the target of the robot from an angular standpoint. To avoid collision
point. The linear distance is the euclidean distance given by between two robots, the rule for a center obstacle is to “go
Equation 2. left”.
q III. D EVELOPMENT
d = (x2 − x1 )2 + (y2 − y1 )2 (2) A. Tasks
Where d is the linear distance, (x2 , y2 ) is the target point, The tasks comprehended collecting the load, going to
and (x1 , y1 ) is the robot’s current point. another location, and then delivering it, corresponding to a
146
Authorized licensed use limited to: BEIHANG UNIVERSITY. Downloaded on April 15,2023 at 01:37:11 UTC from IEEE Xplore. Restrictions apply.
Fig. 2: Membership functions for angular and linear velocity
Fig. 3: Robot used for line-follower and free-movement navi-
(fuzzy controller outputs)
gation approaches
147
Authorized licensed use limited to: BEIHANG UNIVERSITY. Downloaded on April 15,2023 at 01:37:11 UTC from IEEE Xplore. Restrictions apply.
between all parts, the simulation, and the scripts. For lack of a The second one, built in a 15m x 15m platform, represents a
better name, this unit of time will be referenced as “simulation more realistic situation, with more tasks and possible obstacles
time” or simply “st” in this work. in the path described by the cupboards. In this scene, there are
four tasks: Task 1 is the right one, Task 2 is the top one, Task
3 is on the left, and, finally, Task 4 is on the bottom side.
These nomenclatures will be used in Section III-E.
The paths, marked as black tape in both scenes, are only
used by the line-followers robots. The free movement ones
do not have any restrictions in their movements, but, in the
second scene, it is necessary to do some obstacle dodging.
Fig. 4: Simulation time loop [14]
E. Experiments
In total, four experiments were run, one with the first scene
D. Scenes and three with the second scene. As seen in Section III-C,
The simulated environment has two scenes created using V- the values presented are in “st”, and do not correspond to real
REP (Virtual Robot Experimentation Platform). The first one seconds.
is a simple scene to serve more as a “proof of concept”, while For the first experiment, the values used by the tasks to
the second scene is more complex and offers more challenges be ready are presented in Table I. The “Initial time” can be
for the robots, being a light simulation of a possible space interpreted as if the time count already starts at this value,
in a warehouse. The first scene is shown in Figure 5, while and “Time to be ready” is the target count in which the task
the second one is present in Figure 6. Although both scenes will be ready to be completed. As soon as the task is ready,
illustrate the line-following robots, the scenes with the free the timer goes to zero and another counting is initiated. This
movement ones are the same, with the robot starting in the means that the initial timer, as the name says, only counts the
center. first call of the task. This experimentran for 830st.
148
Authorized licensed use limited to: BEIHANG UNIVERSITY. Downloaded on April 15,2023 at 01:37:11 UTC from IEEE Xplore. Restrictions apply.
In the fourth and last experiment, another free movement next ones, maintain the same format as the previous ones but
robot was added, seeking to decrease the wait time for the are in a more concise format, using abbreviations to facilitate
tasks. The initial location of both is right at the center, with the view.
robot one dislocated 3 meters up and robot two 3 meters down. Here, we can see the same pattern of the first experiment.
This experiment used the same time values as experiment Even after adding 275.75st equivalent to the route time (re-
three, seen in Table III, and was also run for 700st. sulting in 365.7st), it represents only 22.9% of the idle time
of the line-followers, indicating that there is too much free
IV. R ESULTS
time for them. Regarding the task times, the relatively high
Table IV contains the results for experiment 1, having the difference between the maximum wait time and the average
idle time, the number of tasks completed and the traveled one can be explained by the many different paths the free
distance for each robot, as well as a sum for easy comparison movement robot can take to each task, which sometimes can
between all line-followers and the one free movement. Table be closer than others. Also, the situation of a task being ready
V contains the maximum and average wait time for each while the robot is still finishing another task is much more
task and the average time to complete the task. To make the present here. However, no process is unattended; hence the
tables easier to read, the line-follower robots are abbreviated number of completed tasks is the same.
to “Line”, while the free movement ones are abbreviated to
“Free”. TABLE VI: Results for the second experiment
TABLE IV: Results for the first experiment Line 1 Line 2 Line 3 Line 4 Total Free
Idle(st) 368.15 405.9 366.45 453.25 1593.75 86.95
Line 1 Line 2 Total Line Free Comp. 2 6 2 4 14 14
Idle time (st) 458.65 409.35 868 97.85 Dist.(m) 81.9 69.87 46.28 46.67 243.72 215.62
Tasks completed 7 8 15 15
Travelled distance (m) 88.08 93.13 181.21 229.53
149
Authorized licensed use limited to: BEIHANG UNIVERSITY. Downloaded on April 15,2023 at 01:37:11 UTC from IEEE Xplore. Restrictions apply.
TABLE IX: Task related results for the third experiment and other approximations. In a real-world setting, the behavior
observed could differ from the one presented here since several
Task 1 Task 2 Task 3 Task 4
Max. wait (st) 229.9 303.75 291.2 354.05
variables are not considered in a simulation.
Avg. wait (st) 124.1 166.46 218.63 202.64
R EFERENCES
[1] A. Berg, E. F. Buffie and L. Zanna, “Robots, growth, and inequality”.
Finance & Development, vol. 53, n. 3, 2016, pp. 10-13.
In the last experiment, we add a second free movement [2] S. Vaidya, P. Ambad and S. Bhosle, “Industry 4.0–a glimpse”. Procedia
robot. The results are shown in Table X, while Table XI manufacturing, vol. 20, 2018, pp. 233-238.
[3] P. Baker, Z. Halim, “An exploration of warehouse automation implemen-
contains task related results. The tables show that it is possible tations: cost, service and flexibility issues”. Supply Chain Management:
to fix the situation presented in experiment three using two An International Journal, 2007.
free-movement robots. However, the idle times indicate that [4] K. M. Hasan, Abdullah-Al-Nahid and A. Al Mamun, “Implementation
of autonomous line follower robot”, 2012 International Conference on
there is not much room left. The total number of tasks suggests Informatics, Electronics & Vision (ICIEV), 2012, pp. 865-869, doi:
that the free movement robots are keeping up with the line- 10.1109/ICIEV.2012.6317486.
followers, but the maximum wait time presented at Task 4, [5] S. A. S. Mohamed, M. -H. Haghbayan, T. Westerlund, J. Heikkonen,
H. Tenhunen and J. Plosila, “A Survey on Odometry for Autonomous
112.85st, shows that there are some times that the tasks Navigation Systems”, in IEEE Access, vol. 7, pp. 97466-97486, 2019,
accumulate. Even so, this experiment shows that the free doi: 10.1109/ACCESS.2019.2929133.
movement robots can mostly handle the situation at almost [6] COPPELIA ROBOTICS, “Coppelia Sim”. Available at:
https://www.coppeliarobotics.com/coppeliaSim. Acessed in: May
full capacity. 18, 2022.
[7] PYTHON SOFTWARE FOUNDATION, “Python Language
TABLE X: Results for the fourth experiment Site: Documentation, 2020”. Documentation page. Available at:
https://www.python.org/doc/. Accessed in: May 18, 2022.
Line 1 Line 2 Line 3 Line 4 T. Line Free 1 Free 2 T.Free [8] OPEN ROBOTICS, “ROS - Robot Operating System”. Available at:
Idle(st) 37.5 169.6 192.15 150.9 550.15 75.95 67.8 143.75 https://www.ros.org/. Accessed in: May 18, 2022.
Comp. 3 10 4 11 28 14 14 28 [9] M. Quigley, et al., “ROS: an open-source Robot Operating System.”
Dist.(m) 163.61 127.05 103.79 130.48 524.93 217.23 251.8 469.03
ICRA workshop on open source software, vol. 3. No. 3.2. 2009.
[10] K.M. Passino, “Fuzzy control”, Addison-Wesley, 1998.
[11] M. Song, T. -J. Tarn and N. Xi, “Integration of task scheduling, action
planning, and control in robotic manufacturing systems”, in Proceedings
TABLE XI: Task related results for the fourth experiment of the IEEE, vol. 88, no. 7, 2000, pp. 1097-1107, doi: 10.1109/5.871311
[12] HOKUYO, “Scanning Laser Range Finder URG-04LX-UG01”. Avail-
Task 1 Task 2 Task 3 Task 4 able at: https://hokuyo-usa.com/application/files/5115/8947/8197/URG-
Max. wait (st) 65.1 82.7 60.3 112.85 04LX-UG01 Specifications Catalog.pdf. Accessed in: May 18, 2022.
Avg. wait (st) 43.44 39.47 47.35 48.95 [13] S. K. Malu and J. Majumdar. “Kinematics, Localization and Control
of Differential Drive Mobile Robot”, Global Journal of Research In
Engineering, [S.l.], 2014. ISSN 2249-4596.
[14] COPPELIA ROBOTICS, “Simulation”. Available at:
V. CONCLUSIONS https://www.coppeliarobotics.com/helpFiles/en/simulation.htm.
Accessed in: May 18, 2022.
The result analysis points to the advantage of using fewer,
more intelligent robots to do tasks instead of just assigning a
line-follower robot to each process. By having free-movement
robots, it is possible to take advantage of their idle time to
move them to other places and keep them busy, maximizing
the investment to acquire it and do the necessary infrastructure
changes.
However, it is important to keep the wait time of each task
in mind. An inherent delay is always associated with the free
movement robot since it must drive through the initial place
of each process. Also, the time each task takes to become
available is critical, as it can overload the free movement
robots, as seen in experiment three.
For future works, other types of navigation systems will
be compared, such as robots running with only a Fuzzy
controller, without PID. Also, the complexity of the scenes
can be increased, adding more robots, more tasks, dynamic
obstacles, etc. Moreover, the scheduler can consider aspects
other than only distance. Finally, the power supply can be also
analyzed, simulating the consumption and creating a region
and a wait time for recharging.
As a final consideration, this work has used a simulated
environment, including measurements from free-error sensors
150
Authorized licensed use limited to: BEIHANG UNIVERSITY. Downloaded on April 15,2023 at 01:37:11 UTC from IEEE Xplore. Restrictions apply.