2.1. AHP Analysis for the Actuation Solution
The approach in this work was to develop a low-cost, yet efficient, autonomous mobile robot, suited for industrial applications. Thus, the developed platform will move inside a controlled environment, transferring parts between workplaces. Consequently, the paths are fixed, and the possibilities of obstacle occurrence are rather small. Therefore, path planning, trajectory accuracy, and obstacle avoidance are not so important for the proposed autonomous mobile robot.
In order to select the actuation solution for the proposed platform, a multi-criteria decision-making method, based on the analytic hierarchy process (AHP) [
28,
29,
30], was used.
Three actuation solutions were considered:
DCSERVO—a system using either a brushed or a brushless DC servomotor, with closed-loop control. This system includes main position feedback and secondary velocity feedback, with position and speed sensors. The control is based on PID algorithms (or more advanced ones), and the system controllers can be tuned by the user to optimize the behavior of the system;
DCPWM—a system using a brushed DC motor, commanded through variable-width voltage pulses, by means of the pulse with modulation (PWM) method. This system does not include any feedback, and it allows the variation of the motor speed in a discrete manner (between standstill and maximum speed), without the possibility of setting a velocity profile;
STEPPER—a system using a stepping motor, commanded by means of voltage pulses. The system does not include feedback devices, but allows the user to control both the position of the motor shaft (by controlling the number of pulses) and the speed (by controlling the pulse frequency).
The actuation solutions described above were analyzed using the following criteria:
C1—control performance: This criterion considers the possibilities of compensating the system errors while the system is working (feedback), the overall accuracy of the system and how the user can improve it by tuning the system parameters, as well as the possibility of programming the velocity profiles in order to avoid high acceleration and to reduce the jerk phenomenon;
C2—ease of implementation: This criterion considers the complexity of the system (how many components are required, how complex the control software is, how much expertise is required for implementation, and how much time is required for implementation);
C3—costs: This criterion is self-explanatory; it considers the overall costs of the system;
C4—energy efficiency: This criterion considers how much energy each actuation system requires during operation.
The AHP method involves the pairwise comparison of the selected criteria with each other. The judgement scale proposed in [
28] was used for the comparisons: 1—equally important; 3—weakly more important; 5—strongly more important; 7—demonstrably more important; 9—absolutely more important. The values in between (2, 4, 6, and 8) represent compromise judgements.
Table 1, also called according to the AHP methodology the preference matrix, gives the results of the comparisons.
For example, in
Table 1, on the first line, the control performance (C1) was considered weakly more important than the ease of implementation (C2) and the costs (C3), while the same criterion (C1) was considered as slightly equal, but somewhat less than the criterion related to the energy efficiency.
Here, we considered the fact that mobile robots used for industrial applications are mostly used for the interoperation transfer of parts (moving parts form one workstation to another), along known (and mostly unchanged) trajectories; thus, the control performance of the mobile platform is not so important in this context.
Following the AHP methodology, it is necessary to normalize matrix A and transform it into matrix
B, using the following relation:
After that, the eigenvector
w = [
wi] has to be calculated according to the following:
Matrix
B is presented in
Table 2, where, in the last column, the eigenvector w was introduced.
The pairwise comparisons have to be checked for consistency by calculating the maximum eigenvalue [
23,
24,
25]:
where
λmax is the matrix’s largest eigenvalue and
CI the consistency index.
The following step involves the calculation of the consistency ratio, using
Table 3, which is called the random consistency index table [
28]. It can be noticed that for a 4-dimensional matrix, one has to choose 0.89 for the
r coefficient.
According to Relation (4), where
CR is smaller than 10%, the consistency of the pairwise comparisons is confirmed. The next step of the AHP process involves the evaluation of the three actuation solutions with respect of the four proposed criteria. The result of the evaluation is presented in
Table 4,
Table 5,
Table 6 and
Table 7. Each of the tables from 4 to 7 also gives in the last column the eigenvector values.
In
Table 4, on the first line, considering the control performance (C1 criterion), the DCPWM solution is strongly more important than the DCPWM solution and weakly more important than the STEPPER solution. Remember that DCSERVO includes feedback loops and tunable controllers, which allow a much higher degree of control of the motor speed and position than DCPWM situation. Furthermore, the STEPPER solution allows the user to continuously command the speed and position of the motor by changing the frequency and number of voltage pulses fed to the motor, a solution not so performant as DCSERVO, but significantly better than DCPWM, from the control performance point of view.
In
Table 5, on the first line, taking into consideration the ease of implementation (C2 criterion), the DCPWM solution is demonstrably more important than the DCSERVO solution and strongly more important than the STEPPER solution. Consider that DCSERVO is a much more complex solution, with a significantly higher number of components (due to the feedback loops), and its implementation requires, among others, the tuning of the controllers. Similarly, the STEPPER solution, while not so complex as DCSERVO, also requires an implementation process that is much complex than the one required by the DCPWM solution.
Using the data from
Table 4,
Table 5,
Table 6 and
Table 7, the C matrix was built. In its columns, the C matrix gives the eigenvectors of the pairwise comparisons of the proposed actuation solutions. It is here noticeable that the order of the columns of matrix C is imposed by the order of the criteria resulting from
Table 2: C2, C3, C4, and C1. After building matrix
C, it is multiplied by the preference vector
w, thus obtaining the preference vector
x of the actuation solutions:
By analyzing Relation (5), the results of the AHP process indicate that DCPWM is the most advantageous solution, followed by DCSERVO and STEPPER.
Finally, again, the main purpose of the considered mobile robot is for industrial applications, a factor that favored the prevalence of a low-cost actuation solution.
2.2. The Mobile Robot
A mobile robot platform with Mecanum wheels was developed for this research and is presented in
Figure 1.
Each wheel can be actuated independently using DC motors commanded through variable-width voltage pulses, by means of the pulse with modulation (PWM) method.
DCX 22 L DC motors from Maxon (Maxon Motor AG, Sachseln, Switzerland) were used as the actuation motors. Two Arduino Mega 2560 boards (Arduino AG, Italy) were used to handle the generation of the variable-width voltage pulses for the actuation motors. Two motor drivers dual, VNH5019, were used to command the drive motors of the wheels (Pololu, Las Vegas, NV, USA).
The platform was also equipped with various sensors, such as ultrasonic distance sensors and an infrared sensor module for obstacle avoidance, but these sensors were not used during the tests presented in this paper
2.4. Simulation
The Matlab software package (The MathWorks Inc., Natick, MA, USA), with the Simulink and Simscape Multibody modules, was used for the simulations. The Simscape Multibody module allows the user to integrate the 3D CAD model into the dynamic simulation of the system.
Consequently, the 3D model of the mobile robot, given in
Figure 4, was built using the Solidworks software package (Dassault Systemes, Vélizy-Villacoublay, France).
The next step involved the exporting of the 3D CAD model (structured as an assembly of parts) of the mobile robot from Sollidworks to Simscape, by using the Simscape Multibody Link Plug-In provided by Mathworks and installed in the external CAD application (Solidworks). The result of this operation was an xml file, which was further imported into the Simscape Multibody, generating a combined Simulink/Simscape simulation diagram.
The simulation diagram of the mobile robot, considering the four-wheel Mecanum kinematic solution, is presented in
Figure 5. The diagram also uses the block from the Mobile Robotics Simulation Toolbox [
32] within Matlab. The mechanical dependencies between forces acting on the chassis of the robot and torques acting on the wheels, also considering the harmonic drive gear ratio of the motor/wheel, were introduced in the simulation diagram.
Table 8 presents the values of the physical parameters of the system used for the simulation.
Figure 6 presents the simulation diagram for the differential drive kinematic solution.
The Matlab function “Jacobian” transpose from the diagram presented in
Figure 6 was introduced in order to calculate the torques acting on the mobile robot wheels, according to the relations presented below.
The overall force acting at the level of the planar joint can be expressed in the following matrix form:
where
Fx and
Fy are the forces acting on the X and Y axis and
M is the torque acting around the Z axis of the planar joint.
Thus, the transposed Jacobian matrix can be defined as:
where
Rw is the radius of the wheel,
L the wheelbase, and
θ the orientation angle of the mobile robot.
Thus, the following relation can be written:
where
Mt is the overall torque acting on the mobile robot.
Taking into consideration that
Mt is distributed on the wheels, on the left side and on the right side, the following relation can also be written:
where
Ml stands for the torque on the left-side wheels (wheels 1 and 3) and
Mr stands for the torque on the right-side wheels (wheels 2 and 4). The 1/2 factor was introduced because the mobile platform has four wheels, instead of two.