Abstract

The trajectory tracking task in a wheeled mobile robot (WMR) is solved by proposing a three-level hierarchical controller that considers the mathematical model of the mechanical structure (differential drive WMR), actuators (DC motors), and power stage (DC/DC Buck power converters). The highest hierarchical level is a kinematic control for the mechanical structure; the medium level includes two controllers based on differential flatness for the actuators; and the lowest hierarchical level consists of two average controllers also based on differential flatness for the power stage. In order to experimentally validate the feasibility of the proposed control scheme, the hierarchical controller is implemented via a -modulator in a differential drive WMR prototype that we have built. Such an implementation is achieved by using MATLAB-Simulink and the real-time interface ControlDesk together with a DS1104 board. The experimental results show the effectiveness and robustness of the proposed control scheme.

1. Introduction

In recent years, wheeled mobile robots (WMRs) have been widely studied [13]. As a matter of fact, diverse applications of WMRs have been reported in many fields like handling explosives or radioactive materials/waste, planetary and maritime exploration, mining and petrochemical industry, medicine, agriculture, home, and entertainment, among others [47]. On one hand, control of WMRs is not an easy task since their models are nonlinear and are subject to nonholonomic constraints [8, 9]. Despite these difficulties, significant advances have been achieved in the design of controllers solving several problems associated with a WMR: regulation, path following, obstacle avoidance, and trajectory tracking.

Nevertheless, to the best of the authors’ knowledge, any of the control schemes reported with experiments until now have not taken into account the full dynamics of the three subsystems composing, in general, a WMR, that is, (a) mechanical structure, (b) actuators, and (c) power stage. This is because most controllers solving the aforementioned problems have been designed by only taking into account the kinematic/dynamic model of the WMR mechanical structure and just few others have been designed by taking into account the actuators mathematical model. This means that importance of the power stage has been neglected. However, it is stated in [10] that taking into account the power stage dynamics in the design of control algorithms for mechatronic systems leads to important improvements. Moreover, not only dynamics of the power stage but also, if required, dynamics associated with the electric power generation should be considered. This is, by itself, an important current research topic [1119].

One of the main reasons why dynamics associated with power stage and electric power generation are not considered when designing controllers for WMRs is that the resulting mathematical model becomes more complex and, hence, design of the control algorithm also becomes more complex. However, consideration of dynamics associated with these subsystems could lead to new research areas where the power electronics would play an important role with regard to the storage, distribution, and transformation of electrical energy [2028]. Some approximations in this direction are presented in [29, 30], where dynamics associated with actuators, power stage, and electric power generation are considered in mechatronic systems.

The remainder of this paper is organized as follows. Previous works on trajectory tracking for WMRs are reviewed in Section 2, while a discussion on such a literature and contribution of the present paper are given in Section 3. In Section 4, design of a three-level hierarchical controller that solves the trajectory tracking task in a WMR is presented. Some experimental results obtained when controlling a WMR prototype that we have built are shown in Section 5. Finally, conclusions are given in Section 6.

2. Literature Review

With the purpose of underlining contribution of the present paper, an exhaustive review of the more relevant literature on trajectory tracking in differential drive WMRs is presented below. Two main approaches related to the mechanical structure have been proposed: (i) design based on the WMR kinematic model and (ii) design based on the WMR dynamic model. Thus, the state-of-the-art review is based on whether or not dynamics associated with the other two WMR subsystems, that is, the actuators and the power stage, are taken into account.

2.1. Considering Only the Mechanical Structure

This subsection describes previous works related to the trajectory tracking task, where the mathematical model, either kinematic or dynamic, of only the mechanical structure of a differential drive WMR is employed.

2.1.1. Kinematic Model

Papers that take into account the kinematic model of a differential drive WMR when designing control algorithms are considered here. Kanayama et al. [31] proposed a stable tracking control strategy to determine the linear and rotational velocities of a vehicle. They have also shown through numerical simulations that their controller is still effective when there are small disturbances. Samson and Ait-Abderrahim [32] introduced a feedback controller designed on the basis of a virtual reference for position and orientation. Murray and Sastry [33] reported a methodology to represent a WMR in chained form. They have also succeeded to track a preestablished trajectory by using sinusoids as control inputs. A robust controller based on sliding modes was proposed by Chacal and Sira-Ramírez [34], where the system differential flatness property is used and stochastic perturbation signals are considered. Walsh et al. [35] designed an exponentially stable control law. Jiang and Nijmeijer [36] introduced two controllers based on backstepping, a local one and a global one. Both controllers achieve exponential convergence. Kim and Oh [37] developed a modified input-output linearization controller for nonsquare systems, where the three state variables are considered as outputs. Jiang and Nijmeijer [38] focused on a recursive technique to solve the trajectory tracking and path following tasks when the system is represented in a chained form. This was carried out through a coordinate transformation. Dixon et al. [39] implemented a differentiable kinematic control law that uses a damped dynamic oscillator, which achieves the exponential convergence of the tracking and regulation errors to a neighborhood of the origin. Another work introduced by Dixon et al. [40] dealt with a differentiable kinematic control law that allows simultaneously solving the trajectory tracking and regulation problems, exponentially for the first one and asymptotically for the second one. Additionally, Dixon et al. [41] elaborated a variable structure-like tracking controller that is robust under parametric uncertainty, also with exponential convergence of the tracking and regulation errors to the origin. In [42], Lee et al. solved the trajectory tracking and regulation problems via a backstepping control. By using polar coordinates, Chwa [43] designed a pair of discontinuous controllers to asymptotically stabilize the trajectory tracking errors in position and in the heading direction. Thus, the trajectory tracking and stabilization problems were solved. Klančar and Škrjanc [44] proposed a model-predictive trajectory tracking control, where the linearized tracking error dynamics is used to predict the behavior of a WMR. Another solution of the trajectory tracking task was carried out by Tsai et al. [45], where a robust visual tracking control to track a dynamic moving object was considered. Lee et al. [46] carried out a sliding mode control by using an RFID sensor space to estimate the position of a WMR. Recently, Scaglia et al. [47] suggested a linear interpolation based methodology to design control algorithms. It is assumed that the evolution of the system can be approximated by a linear interpolation. Hence, the tracking errors can be reduced by decreasing the sampling time. Cheng et al. [48] suggested a feedback control law via Lyapunov’s direct method and backstepping, achieving global asymptotic stability. Lastly, Chwa [49] studied a fuzzy adaptive tracking controller by considering the slippage between the wheels and the surface. Other relevant papers concerning the controller design by using only the kinematic model of the mechanical structure are [5059].

2.1.2. Dynamic Model

One of the first papers where the dynamic model of a WMR was taken into account for the design of a controller was by d’Andréa-Novel et al. [60], who obtained the WMR dynamic model through the Euler-Lagrange formulation. In addition, they introduced a control law based on static state feedback. Fierro and Lewis [61] elaborated a kinematic/torque control law using backstepping to solve the trajectory tracking, path following, and stabilization problems. Yang and Kim [62] suggested a sliding mode controller, which is robust to bounded external disturbances. Dong et al. [63] developed an adaptive robust controller that does not require exactly knowing the WMR physical parameters. Dixon et al. [64] dealt with a visual servoing controller that adapts to the parametric uncertainty associated with the camera and with the mechanical parameters of the WMR dynamic model. Likewise, Pourboghrat and Karlsson [65] elaborated a robust adaptive controller to solve the trajectory tracking and stabilization problems. Dong and Kuhnert [66] focused on the design of an adaptive neural network control that is robust to parametric uncertainty. Chen et al. [67] proposed a kinematic control to generate the desired velocity profiles for the wheels. They also formulated an adaptive sliding mode controller that allows the real velocities to reach the desired ones. Solea et al. [68] presented a robust sliding mode controller when there are external disturbances and parametric uncertainty in the WMR. Recently, Cao et al. [69] developed an adaptive kinematic controller (based on the backstepping method) and a dynamic adaptive controller. The latter allows reaching the desired velocity profiles imposed by the former. Shojaei et al. [70] designed a control algorithm, robust under parametric and nonparametric uncertainty, which combines an inverse dynamics control and an adaptive robust PID control. Finally, other contributions that employ the dynamic model only of the WMR mechanical structure in the control design can be found in [7180].

2.2. Considering the Mechanical Structure and Actuators

It has not been common to take into account the dynamics of the actuators in research related to WMRs. However, it is important to highlight that the exclusion of this dynamics can cause degradation in the performance of a robot [81] and even can produce system instability [8284]. Few papers have incorporated such dynamics into the control algorithms when the kinematic or dynamic model of the WMR is considered. This subsection reviews the research that has employed the mathematical model of both the mechanical structure and the actuators in the trajectory tracking control design for differential drive WMRs.

2.2.1. Kinematic Model

By considering both the mechanical structure and the actuators, Espinosa et al. [85] designed an adaptive optimal controller in the drive control loop and an optimal-fuzzy control for the trajectory tracking task for a wheelchair when there are obstacles in the workspace. Silva-Ortigoza et al. [86] designed a two-stage controller where the first stage corresponds to a control based on input-output linearization for the mechanical structure and the second stage refers to a controller based on differential flatness for the actuators. Recently, Zuo et al. [87] described a control strategy that integrates a kinematic control and an adaptive wavelet neural network, which is robust to disturbances. Lastly, Silva-Ortigoza et al. [88] proposed a robust hierarchical controller where the high-level control is based on input-output linearization for the mechanical structure and the low-level control is based on a PI control for the actuators.

2.2.2. Dynamic Model

Taking into account both the dynamic model of the mechanical structure and the mathematical model of the actuators during the control design stage for the WMR is not easy, since control design becomes more complex. However, it allows designing controllers that solve the trajectory tracking problem more effectively. This can be observed when the WMR is moving at high speeds or when its mass is variable [89]. Motivated by these facts, Anupoju et al. [90] designed three adaptive controllers, the first one for the kinematic model of the mechanical structure, the second one for the dynamic model of that same mechanical structure, and the third one for the actuators. Das and Kar [91] formulated an adaptive fuzzy logic-based controller. Hou et al. [92] proposed a robust adaptive controller via backstepping and a fuzzy logic approach. More recently, Luo et al. [93] elaborated an adaptive neural network dynamic surface controller based on a disturbance observer, where uncertain parameters were taken into account. Lastly, other contributions that take into account the dynamic model of the mechanical structure and the dynamics of the actuators in the control design are reported in [94103].

2.3. Considering the Mechanical Structure, Actuators, and Power Stage

Few controllers have considered the mathematical models of the three subsystems that compose a WMR. In such controllers, only the kinematic model of the WMR has been used.

2.3.1. Kinematic Model

Ortigoza et al. in [104] presented a trajectory tracking controller by considering an input-output linearization-based controller for the mechanical structure, a controller based on differential flatness for the actuators, and a sliding mode plus PI controller for the power stage. In [105], Sánchez et al. proposed a kinematic controller for the WMR, a controller based on differential flatness for the actuators, and a differential flatness-based controller for the power stage. Controllers reported in [104, 105] were tested only via numerical simulations.

3. Discussion and Contribution

After carrying out the review of the literature associated with design of controllers for the trajectory tracking task in differential drive WMRs, it was found that, generally, this task has been solved in three directions: (a) by only using the kinematic or dynamic model of the mechanical structure [3180], (b) by employing the kinematic/dynamic model of the mechanical structure along with the dynamics of the actuators [85103], and (c) by considering the kinematic model of the mechanical structure along with the dynamics of the actuators and power stage [104, 105]. In the last direction, contributions that have carried out interesting efforts are [106114]. However, those papers only focus on the design of the power stage without considering the other dynamics.

Motivated by the aforementioned ideas, the hierarchical control approach in mobile robotics (see [86, 104, 105, 115]), and use of DC/DC converter-DC motor systems (see [116, 117]), the purpose of the present paper is threefold. First, it aims, to introduce a three-level hierarchical controller that considers dynamics of the three subsystems that compose a WMR to solve, in a more complete way, the trajectory tracking task. Second, it aims, to experimentally validate the proposed controller by implementing it in a WMR prototype that we have built, where the experimental results show the effectiveness and robustness of the designed hierarchical controller. Third, it aims, to experimentally compare to results associated with a controller that neglects dynamics of the power stage. After an assessment of the results, it is observed that the performance of the WMR with the hierarchical controller is better than, or at least similar to, the one achieved with the control that neglects the dynamics of the power stage.

4. Hierarchical Trajectory Tracking Control via -Modulator Considering the Dynamics of All the WMR Subsystems

A hierarchical trajectory tracking controller for a differential drive WMR is presented in this section, which is designed by considering dynamics of all of the subsystems that integrate a WMR. The system under study is shown in Figure 1, where the three subsystems can be seen, that is, mechanical structure (differential drive WMR), actuators (DC motors), and power stage (DC/DC Buck power converters). In such a figure, and in the remainder of this paper, the parameters, components, and variables associated with the right Buck converter-DC motor and left Buck converter-DC motor are distinguished by the subscripts and , respectively. The design of the hierarchical controller is carried out as follows:(1)At the highest hierarchical level, a kinematic controller for the mechanical structure delivers the desired DC motor angular velocities and . If velocities of wheels reach these values, then the WMR tracks the desired trajectory; that is, .(2)At the medium level, two flatness-based controllers deliver and , the desired voltage profiles that the Buck converters output voltages have to track. If these desired voltages are reached, then the angular velocities of the DC motors track the desired angular velocity profiles; that is, .(3)At the lowest level, two flatness-based average controllers deliver and which ensure that the Buck converters output voltages track the desired voltage profiles; that is, .

In order to accomplish the trajectory tracking task for the WMR, the controllers designed in are interconnected using a hierarchical approach. The switched implementation of the resulting controller is performed at the Buck converters by using the -modulator [118].

4.1. Control at the Highest Hierarchical Level: Mechanical Structure

In this subsection, a kinematic controller that solves the trajectory tracking task in a WMR is presented.

The kinematic model of a differential drive WMR, which moves without slipping on the plane, is given by [119]with the inputswhere is the position of the midpoint of the axis which joins the wheels and is the orientation of the WMR. Also, is radius of the driving wheels and is distance between them, while and are the right and left angular velocities of the wheels, respectively. Lastly, is the straight line velocity and is the angular velocity, both of the WMR (see Figure 1). In these equations, and in the remainder of this paper, the derivative with respect to time will be denoted by a “dot” or by .

The control objective is tracking of the following reference robot:where and represent the pose and orientation, respectively, of the reference robot, whereas and are its reference inputs. Thus, in accordance with [98], the following error signals are defined:with and being positive constants. In (4), the matrix is globally nonsingular because its determinant is equal to . The time derivative of (4) is given aswhere (1) and (3) have been used. The following control inputs have been retaken from [71]:with and being positive constants. In [98], the following positive function was defined:Through the analysis of its time derivative, , along trajectories (5), when (6) are considered as control inputs, it was shown that the error dynamics (5) is asymptotically stable; that is, , since matrix in (4) is nonsingular. This fact implies that system (1) in closed loop with (6) achieves that when . Likewise, according to the stability analysis carried out in [98], it was shown that and must be greater than .

Lastly, by substituting (6) in (2), after some mathematical manipulation, the controls are transformed into the right and left angular velocities to be used as inputs. That is,

4.2. Control at the Medium Level: Actuators

The objective of this subsection is to design a controller ensuring that the actual angular velocities of the DC motors track the desired angular velocity profiles imposed by the WMR kinematic control ; that is, .

The mathematical model of a DC motor expressed in terms of the angular velocity [119], , is given bywhere is the input voltage of the motor, is the armature current, is the counterelectromotive force constant, is the motor torque constant, is the armature inductance, is the armature resistance, is the moment of inertia of the rotor and motor load, and is the viscous friction coefficient of the motor.

Since the aforementioned parameters are required for control design and manufacturer does not provide them, in this paper such parameters are obtained via the experimental characterization of the DC motor. For such an aim, a first-order approximation of (10) is considered by assuming that armature inductance may be neglected [120]. That is,whereIn order to get the numerical values of the parameters and , an experimental characterization must be done. The corresponding values of and associated with the right motor characterization areand for the left motorIn this manner, using (11), (12), (14), and (15), the first-order dynamic models of the DC motors are given byfor the right motor andfor the left motor.

On the other hand, with the intention to achieve , a differential flatness-based control [119, 121, 122] is proposed for the first-order linear system (11). To this end, the dynamics (11) is rewritten in terms of the flat output , asIf the control input is chosen asand it is replaced in (18), then the tracking problem related to the angular velocity of the DC motor is reduced to control the following system:where is an auxiliary control. In order to ensure that when , a proper selection for iswith being the desired angular velocity, that is, either or for the right or the left motor, respectively, and positive constants. Once (21) is replaced in (20), the tracking error is defined as , and the derivative with respect to time of the resulting expression is calculated. Then, the following tracking error dynamics is obtained:whose characteristic polynomial isBy equating (23) with a Hurwitz polynomial defined bywhere , not only is achieved, but also the gains and are found. That is,

4.3. Control at the Lowest Hierarchical Level: Power Stage

The purpose of this subsection is to propose a controller that allows the actual output voltages of the Buck converters to track the desired voltage profiles imposed by controllers of the DC motors; that is, .

According to [118], the average dynamics of a Buck converter are given aswhere is electric current through the inductor , is the output voltage of the converter associated with the capacitor , is the load resistance, and is voltage of the converter power supply. Variable represents the switch position, which is an average signal that satisfies . It is important to mention that the switched model of the Buck converter is obtained when is replaced by in (26), with being a signal that takes values in the discrete set .

In order to design a differential flatness-based controller for the converter [119, 123125], the dynamics (26) is represented in terms of the flat output , as follows:with the suitable definition of , given byAfter replacing (28) in (27), the tracking problem, associated with the output voltage of the Buck converter, is reduced to control the system given byIn order to achieve that when , with being the desired voltage profile at the converter output, that is, either or for the right or left Buck converters, respectively, a convenient proposal of isWhen (30) is substituted into (29) and after defining the tracking error as , the following tracking error dynamics is obtained:whose characteristic polynomial iswhich is forced to be stable by equating it with a Hurwitz polynomial to achieve , defined bywith , , and . Hence, the gains , , and are determined by

4.4. Hierarchical Tracking Control

In this subsection, controllers designed in Sections 4.1, 4.2, and 4.3 are integrated using a hierarchical approach (see [86, 104, 105, 115117]) to solve the trajectory tracking task for a differential drive WMR when dynamics associated with each one of subsystems composing the WMR are considered (see Figure 1).

Using the kinematic models associated with a differential drive WMR (1) and a reference robot (3), it was found that velocity profiles and , ensuring , are given by (8) and (9), respectively. On the other hand, profiles of voltages and that applied to DC motors ensure are given, according to (19) and (21), aswith the auxiliary controls and defined by where

Likewise, since each DC motor is driven by a Buck converter, it is found from (28) and (30) that the actual voltages at the converters outputs are ensured to converge to their desire profiles; that is, , if the converter transistors are commuted according to and , which are given aswith the auxiliary controls and defined by where

Finally, since controllers (40) and (41) have been designed on the basis of average models of the Buck converters, the corresponding switched implementations, and , are achieved using a -modulator [118]. Hence, both signals and only take values in the discrete set . Thus, synthesis of the average controllers (40) and (41) via a -modulator is given as

In summary, the switched controllers (45)-(46) ensure that , so that . In consequence, the control objective for the WMR is attained; that is, . The integration of the hierarchical controller is shown in the block diagram presented in Figure 2.

5. Experimental Results

In this section, some experiments are presented intended to evaluate performance achieved by the hierarchical controller that has been designed. Controller (8)-(9), (35)-(36), and (45)-(46) has been tested on the WMR prototype shown in Figure 3. This prototype has, as power stage, two DC/DC Buck power converters. Controller reported in [98] is also tested for comparison purposes. Since controller in [98] is designed without taking into account the power stage dynamics, another WMR prototype is employed, which possesses H-bridges instead of DC/DC Buck power converters. See Figure 4.

5.1. Experimental Results of the Hierarchical Controller

Implementation of the hierarchical controller was carried out in the differential drive WMR prototype shown in Figure 3, which was designed and built at the Mechatronics Laboratory of CIDETEC-IPN.

The WMR prototype shown in Figure 3 is  m in length,  m in width, and  m in height, and its total mass is  kg. Parameters related to the wheels used in controls (8) and (9) are given byBoth wheels of the prototype are actuated by brushed DC motors GNM3150+G2.6 (24 V, 55 W) which are provided with a 20:1 gearbox, whose angular velocities are measured via Autonics E50S8-1000 incremental encoders. Parameters associated with DC motors, used in (35) and (36), areLikewise, each motor is driven by a DC/DC Buck power converter, whose voltages and currents are measured by Tektronix P5200A voltage probes and Tektronix A622 current probes, respectively. Parameters associated with Buck converters, used in switched controls (45), areFigure 3 also shows connections of the WMR prototype to the DS1104 board, Matlab-Simulink, and ControlDesk.

On the other hand, gains of the high-level controller (8) and (9) were selected as while gains associated with the medium-level controllers (35) and (36) were obtained by selecting their parameters as follows: Lastly, gains of the low-level controllers (45) were proposed by choosing the following parameters:

The desired trajectory that is imposed on the WMR is generated from the reference velocities and determined by the following Bézier polynomials:where and are the initial and final times of the given trajectory. Pairs and represent the constant linear and angular velocities which are joined smoothly through and , respectively, over the time interval . Function is a polynomial given by The reference velocities and were generated using (53) according to Table 1. Thus, by using (3), the trajectory to be tracked by the WMR in the plane, that is, , is depicted in subfigures (a) and (b) associated with Figures 59.

Figure 5 shows performance achieved under the variations given in Table 2 for the loads of the Buck converters. Figure 6 presents results when the abrupt variations defined in Table 3 are considered for the power supplies. Lastly, Figure 7 depicts results when the abrupt changes presented in Table 4 are considered for the inductances-capacitances of the Buck converters.

According to experimental results in Figures 57, the control objective is successfully achieved; that is, . Furthermore, it can also be seen that the hierarchical controller is robust with respect to abrupt variations in the system parameters.

5.2. Experimental Results When the Power Stage Dynamics Is Neglected

The experimental implementation of controller reported in [98] is carried out in this section. The aim is to show that performance achieved with the hierarchical controller introduced in the present paper is better than, or at least similar to, performance achieved with controllers that do not consider the dynamics of the power stage [31103]. For such an aim, the differential drive WMR prototype depicted in Figure 4 was employed. It is stressed that power stage of this prototype is composed by H-bridges instead of Buck converters. The physical characteristics of this WMR prototype are similar to those of the WMR prototype shown in Figure 3. Controller gains as well as trajectory to be tracked by the WMR prototype shown in Figure 4 are the same as those used in Section 5.1.

When the power supplies are subject to variations defined in Table 3, the WMR shown in Figure 4 behaves as shown in Figure 8. When the abrupt variations defined in Table 5 are considered now for the power supplies, the WMR behaves as depicted in Figure 9. As observed in Figure 8, controller fails when solving the trajectory tracking task if variations in power supplies are large enough (see Table 3). However, if the variations are much smaller (see Table 5), the control successfully solves such a task; that is, . See Figure 9.

6. Conclusions

A hierarchical controller solving the trajectory tracking task in a differential drive WMR has been introduced in this paper. This control scheme is composed by a kinematic controller at the highest hierarchical level intended for the mechanical structure. Two differential flatness-based controllers are designed at the medium level intended for the WMR actuators (DC motors). Two average differential flatness-based controllers are employed at the lowest hierarchical level intended for the power stage (Buck power converters). Hence, this is the first time that a trajectory tracking controller is designed for WMRs by taking into account the power stage dynamics during the design stage.

The closed-loop switched practical implementation was performed via -modulation in a differential drive WMR that was designed and built for such an aim. The experimental results confirm that the control objective is achieved; that is, , even when large, abrupt, and simultaneous changes appear in the system parameters. Additionally, the proposed controller was compared experimentally to a control scheme that neglects the power stage dynamics. According to experimental results, the proposal in the present paper achieves better performances.

Although the control objective is shown above to be achieved, the solution presented here only considers the unidirectional trajectory tracking task. Concerning this task, it is shown in [126] that this does not necessarily imply that robot is limited when tracking complex trajectories.

Future research will be focused on solving other control problems, such as obstacle avoidance and path-following, by using a similar approach to the one presented in this work. It would be convenient, however, that the robot power stage be redesigned in order to perform bidirectional trajectory tracking [127129].

It is worth mentioning that recent important contributions on WMRs reported in the literature within the past few months do not take into account dynamics of the three subsystems composing a WMR (see [130150]). In this respect, consideration of such dynamics in the design of controllers may lead to new research areas where power electronics would play a very important role.

Conflicts of Interest

The authors declare that the research was conducted in the absence of any commercial, financial, or personal relationships that could be construed as potential conflicts of interest.

Acknowledgments

This work was supported by Secretaría de Investigación y Posgrado del Instituto Politécnico Nacional, México. The work of José Rafael García-Sánchez, Salvador Tavera-Mosqueda, Celso Márquez-Sánchez, and Mayra Antonio-Cruz was supported by CONACYT-México, and BEIFI scholarships. Ramón Silva-Ortigoza and Hind Taud acknowledge financial support from the IPN programs EDI and SIBE and from SNI-México. Lastly, Victor Manuel Hernández-Guzmán and Gilberto Silva-Ortigoza acknowledge SNI-México, for financial support.