Abstract
It is usually a common task that walking on irregular terrain for a hexapod robot. This paper treats the problem of control of a hexapod robot that has been developed in a collaborative project of the Departments of Mechanical Engineering and Automation at Shanghai Jiao Tong University. We derive the hexapod robot’s kinematics and dynamics models, which are non-periodic, nonlinear, hybrid and open-loop unstable. In order to solve this challenge, we compute a transverse linearization about the desired motion which is a linear impulsive system. The real environment, where the robot performs tasks, are usually unstructured and dynamic, it is always difficult to know the size of obstacles the robot strikes on. In order to reduce its reliance on terrain information for locomotion control to the minimum, taking account of physical constraints, we propose a constrained model predictive controller for stabilization of non-periodic trajectories of the hexapod robot walking over irregular terrain. We prove the stability of the proposed controller theoretically. In the end we perform several simulations and experiments to verify the effectiveness of the control algorithm we proposed.
Similar content being viewed by others
Explore related subjects
Discover the latest articles and news from researchers in related subjects, suggested using machine learning.References
Fallon, M.F., Kuindersma, S., Karumanchi, S., Antone, M., Schneider, T., Dai, H., D’Arpino, C., Deits, R., DiCicco, M., Fourie, D., Koolen, T., Marion, P., Posa, M., Valenzuela, A., Yu, K., Shah, J., Iagnemma, K., Tedrake, R., Teller, S.: An Architecture for Online Affordance-based Perception and Whole-body Planning. J. Field Rob. 32(2), 229–254 (2015)
Kuindersma, S., Deits, R., Fallon, M., Valenzuela, A., Dai, H., Permentere, F., Koolen, T., Marion, P., Tedrake, R.: Optimization-based locomotion planning, estimation, and control design for the atlas humanoid robot. Auton. Robot. 40(3), 429–455 (2016)
Hamed, K., Grizzle, J.: Event-based stabilization of periodic orbits for underactuated 3D bipedal robots with left-right symmetry. IEEE Trans. Robot. 30(2), 365–381 (2014)
Raibert, M., Blankespoor, K., Nelson, G., Playter, R.: The BigDog team BigDog, the rough-terrain quadruped robot. In: Proc. of 17Th IFAC World Congress, pp 10822–10825 (2008)
Kolter, J.Z., Ng, A.Y.: The Stanford LittleDog: a learning and rapid replanning approach to quadruped locomotion. Int. J. Robot. Res. 30(2), 150–174 (2011)
Murphy, M.P., Saunders, A., Moreira, C., Rizzi, A.A., Raibert, M.: The LittleDog robot. Int. J. Robot. Res. 30(2), 145–149 (2010)
Nonami, K., Huang, Q., Komizo, D., Fukao, Y., Asai, Y., Shiraishi, Y., Fujimoto, M., Ikedo, Y.: Development and control of mine detection robot COMET-II and COMET-III. JSME Int. J., Ser. C 46(3), 881–890 (2003)
Li, Y., Xu, Q.: Kinematic analysis of a 3-PRS parallel manipulator. Robot. Comput. Integr. Manuf. 23(4), 395–408 (2007)
Tian, X., Gao, F., Chen, X., Qi, C.: Mechanism design and comparison for quadruped robot with parallel-serial leg. Journal Of Mechanical Engineering 49(6), 81–88 (2013)
Park, H., Ramezani, A., Grizzle, J.: A Finite-State machine for accommodating unexpected large Ground-Height variations in bipedal robot walking. IEEE Trans. Robot. 29(2), 331–345 (2013)
Raibert, M., Blankespoor, K., Nelson, G., Playter, R., et al.: Bigdog, the Rough-Terrain quadruped robot. In: Proceedings of the 17Th World Congress, pp 10823–10828 (2008)
Shiriaev, A., Freidovich, L., Manchester, I.: Periodic motion planning and analytical computation of transverse linearizations for hybrid mechanical systems. In: Proc. 47Th IEEE conference on decision and control, Cancun, pp 4326–4331 (2008)
Byl, K., Tedrake, R.: Metastable walking machines. Int. J. Robot. Res. 28(8), 1040–1064 (2009)
Spong, M.W., Bullo, F.: Controlled symmetries and passive walking. IEEE Trans. Autom. Control 50(7), 1025–1031 (2005)
Grizzle, J.W., Abba, G., Plestan, F.: Asymptotically stable walking for biped robots: Analysis via systems with impulse effects. IEEE Trans. Autom. Control 46(1), 51–64 (2001)
Westervelt, E.R., Grizzle, J.W., Koditschek, D.E.: Hybrid zero dynamics of planar biped walkers. IEEE Trans. Autom. Control 48(1), 42–56 (2003)
Westervelt, E.R., Grizzle, J.W., Chevallereau, C., Choi, J.H., Morris, B.: Feedback control of dynamic bipedal robot locomotion. Advanced Robotics CRC press, Boca Raton (2007)
Freidovich, L., Shiriaev, A., Manchester, I.R.: Stability Analysis and Control Design for an Underactuated Walking Robot via Computation of a Transverse Linearization. In: Proc. 17Th IFAC World Congress, Seoul, pp 10166–10171 (2008)
Yang, T., Westervelt, E.R., Serrani, A., Schmiedeler, J.P.: A framework for the control of stable aperiodic walking in underactuated planar bipeds. Auton. Robot. 27(3), 277–290 (2009)
Shkolnik, A., Levashov, M., Manchester, I.R., Tedrake, R.: Bounding on rough terrain with the LittleDog robot. Int. J. Robot. Res. 30(2), 192–215 (2011)
Manchester, I.R., Mettin iida, U.F., Tedrake, R.: Stable dynamic walking over uneven terrain. Int. J. Robot. Res. 30(3), 265–279 (2011)
Chestnutt, J., Lau, M., Cheung, G., Kuffner, J., Hodgins, J., Kanade, T.: Footstep planning for the Honda ASIMO Humanoid. In: IEEE international conference on robotics and automation (ICRA) (2005)
LaValle, S.M.: Planning algorithms. Cambridge University Press, Cambridge (2006)
Spong, M.W., Vidyasagar, M.: Robot dynamics and control, Wiley.com (2008)
Deits, R., Tedrake, R.: Footstep planning on uneven terrain with mixed-integer convex optimization. In: 14Th IEEE-RAS international conference on humanoid robots, pp 279–286 (2014)
Belter, D., Skrzypczynski, P.: Rough terrain mapping and classification for foothold selection in a walking robot. J. Field Rob. 28(4), 497–528 (2011)
Norouzi, M., Miro, J.V., Dissanayake, G.: Planning stable and efficient paths for reconfigurable robots on uneven terrain. J. Intell. Robot. Syst. 87(2), 231–246 (2017)
Nguyen, P.D.H., Recchiuto, C.T., Sgorbissa. A.: Real-Time path generation and obstacle avoidance for multirotors: a novel approach. J. Intell. Robot. Syst., 1–23 (2017). https://doi.org/10.1007/s10846-017-0478-9
Urabe, M.: Nonlinear autonomous oscillations. Academic Press, New York (1967)
Hale, J.K.: Ordinary differential equations, malabar FL: Krieger (1980)
Hauser, J., Chung, C.C.: Converse Lyapunov function for exponential stable periodic orbits. Syst. Control Lett. 23(1), 27–34 (1994)
Mayne, D.Q., Rawlings, J.B., Rao, C.V., Scokaert, P.O.M.: Constrained model predictive control: stability and optimality. Automatica 36(6), 789–814 (2000)
Xu, Y., Gao, F., Pan, Y., Chai, X.: Method for Six-Legged robot stepping on obstacles by indirect force estimation. Chinese Journal Of Mechanical Engineering 29(4), 669–679 (2016)
Jin, Z., Zhang, J., Gao, F.: A firefighting six-legged robot and its kinematics analysis of leg mechanisms. China Mechanical Engineering 27(7), 865–871 (2016)
Garcia, C.E., Prett, D.M., Morari, M.: Model predictive control: theory and practice-a survey. Automatica 25(3), 335–348 (1989)
Muske, K.R., Rawlings, J.B.: Model predictive control with linear models. A.I.Ch.E. J 39(2), 262–287 (1993)
Genceli, H., Nikolaou, M.: Robust stability analysis of constrained \(l_{i},\) norm model predictive control. A.I.Ch.E. J 39(12), 1954–1965 (1993)
Zafiriou, E., Marchal, A.L.: Stability of SISO quadratic dynamic matrix control with hard output constraints. A.I.Ch.E. J 37(10), 1550–1560 (1991)
Campo, P.J., Morari, M.: \(\infty \)-Norm formulation of model predictive control problems. In: American control conference (1986)
Hu, N., Li, S., Huang, D., Gao, F.: Crawling gait planning for a quadruped robot with high payload walking on irregular terrain. In: The 19th IFAC World Congress, pp 2153–2158 (2014)
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
This work is supported by National Basic Research Program of China (973 Program-2013CB035500), and the National Nature Science Foundation of China (61590924, 61521063).
Appendices
Appendix A: Kinematic parameters derivation
Basic coordinate system \(O_{0} x_{0} y_{0} z_{0}\) is fixed on the base as shown in Fig. 3a, while \(O_{0}\) is the midpoint of \(R_{D1}R_{D2}\), \(x_{0}\) axis is coincident with \(R_{D1}R_{D2}\) and from \(R_{D2}\) to \(R_{D1}\); \(z_{0}\) axis is vertically upward; \(y_{0}\) axis satisfies the right-hand rule. The coordinate system \(U_{i} x_{i} y_{i} z_{i}\) and Uieifigi(i = 1, 2, 3) are built at the joint \(U_{i}\), \(x_{i}\) axis is coincident with axis of rotation of \(U_{i}\) and vertical to \(R_{Di} U_{i}\), \(y_{i}\) is parallel to the \(R_{Di} U_{i}\), \(z_{i}\) axis satisfies the right-hand rule, \(f_{i}\) axis is coincident with axis of rotation of \(U_{i}\) and vertical to \(U_{i} S_{i}\), \(g_{i}\) axis is coincident with \(U_{i} S_{i}\), \(e_{i}\) axis is satisfies the right-hand rule. The coordinate system \(H x_{4} y_{4} z_{4}\) is built at the joint H, \(y_{4}\) is coincident with \(y_{0}\), \(x_{4}\) is vertical to parallelogram \(R_{1} R_{2} R_{5} R_{3}\), \(z_{4}\) satisfies the right-hand rule.
Based on the analysis of leg structure and the building of the coordinate system, we know that the coordinate system \(U_{i} x_{i} y_{i} z_{i}\) is gotten by rotating O0x0y0z0 by \(\theta _{pi}\) about the \(x_{0}\) axis. the coordinate system \(U_{i} e_{i} f_{i} g_{i}\) can be gotten by rotating the coordinate system \(U_{i} x_{i} y_{i} z_{i}\) twice, the first rotation is by the angle \(\alpha _{ti}\) about the \(x_{i}\) axis, and the second rotation is by the angle \(\beta _{i}\) about the \(f_{i}\) axis. So we can get the attitude matrix of UiSi with the following equation.
where \( {e}_{i}\), \( {f}_{i}\) and \( {g}_{i}\) is unit vector of \(e_{i}\), \(f_{i}\) and \(g_{i}\).
Then we can get the posture angle of \(U_{i} S_{i}\) as follows.
We let revolute joint \(R_{Di}(i = 1,2,3)\) as driven input point, \(m_{i}(i = 1,2,3)\) as the length of \(R_{Di}U_{i}\), and \({n}_{i}\) as the unit vector of \(R_{Di}U_{i} (i = 1,2,3)\), we have
Where \( {n}_{i}=(0,\cos \theta _{pi},\sin \theta _{pi})^{T}\), \(\theta _{pi}\) is the angular displacement of the \(R_{Di}\), \( {l}_{RDiUi}\) is the vector of \(R_{Di}U_{i}\) in the basic coordinate system.
For Driving mechanism in Fig. 3a, we choose G as our reference point, and set \(G=(x_{0},y_{0},z_{0})^{T}\) in the basic coordinate system , based on the geometric conditions of the mechanism, we have
where \( {u}_{i}(i = 1,2,3)\) is the vector of \(U_{i}\), \( {L}_{i}(i = 1,2)\) and \( {L}_{3}\) is the vector of \(U_{i} S_{i}(i = 1,2)\) and \(U_{3} G\) respectively, \(l_{i}(i = 1,2)\) and \(l_{3}\) is the length of \(U_{i} S_{i}(i = 1,2)\) and \(U_{3} G\) respectively, \( {a}_{0i}\) and \( {a}_{i}\) is the vector of \(S_{i}\) in the coordinate system \(U_{i} x_{i} y_{i} z_{i}\) and \(O_{0} x_{0} y_{0} z_{0}\), respectively. \({R}_{D3}\) and \( {R}_{Di}\) is the vector of \({R}_{D3}\) and \({R}_{Di}\) in the coordinate system \(O_{0} x_{0} y_{0} z_{0}\), respectively.
Take the norm of both sides of the Eq. 37, we obtain
Take the norm of both sides of the Eq. 38, we obtain
From Eq. 33 to 47, we can get the relationship between vector \( {G}\) and \({R}_{Di}\) as follows.
Then we can get angular displacement \((\theta _{p1},\theta _{p2},\theta _{p3})\). of \({R}_{Di}\) as follows.
For walking mechanism in Fig. ??a, let the vector of C and S be \( {C}_{0}=(x_{C_{0}},y_{C_{0}},z_{C_{0}})^{T}\) and \( {S}_{0}=(x_{r_{0}},y_{r_{0}},z_{r_{0}})^{T}\) in the coordinate system \(H x_{4} y_{4} z_{4}\), respectively. Based on the geometric conditions of the mechanism the following equations are obtained.
where \(\theta _{1}\) and \(\theta _{2}\) is the angle by rotating \(l_{4}\) and \(l_{6}\) about \(x_{4}\) axis, respectively.
Hx4y4z4 is gotten by rotating \(O_{0} x_{0} y_{0} z_{0}\) about the \(y_{4}\) axis, and the posture matrix is given as follows.
From Eq. 15, the relationship between \( {C}_{0}\) and \( {S}_{0}\) in the basic coordinate system is given as follows.
where \( {S}\), \( {C}\) and \( {H}\) is the vector of S, C and H in the basic coordinate system, respectively.
Based on Eq. 46, we can obtain the following equation.
where f represents the mapping relationships between \( {C}_{0}\) and \( {S}_{0}\).
From Eqs. 47 and 50, the relationship between S and C is given as follows.
The relationship between S and G is given in the following equation.
where \( {S}_{G}\) and \( {L}_{8}\) is the vector of S and GS in the moving and basic coordinate system, respectively.
From Eqs. 51 and 52, we can get the relationship between vector \( C\) and \( G\) as follows.
Substituting Eqs. 53 into 43 and 44, we can get relationship between vector \( C\) and \( {R}_{Di}\), then from Eq. 45, we can get the relationship between the vector \( C\) and angular displacement \((\theta _{p1},\theta _{p2},\theta _{p3})\).
Appendix B: Design of non-periodic gait trajectory
As the gait trajectory of the robot walking over irregular terrain is non-periodic, we give the design of non-periodic gait trajectory below.
If the foot of the hexapod robot doesn’t touch the obstacles, this situation of which is the same as robot walking on even terrain, the gait trajectory of the robot is periodic. Once the foot of the robot touches the obstacles, the gait trajectory will change into non-periodic. So we design the non-periodic gait trajectory with two parts.
Periodic part
During the period of the robot doesn’t touch the obstacles, we design the periodic trajectory with B\(\acute {e}\)zier polynomials in Eq. 24. Each period includes active and passive movement phase. In active movement phase, since we have six constraints in (24) to design the joint trajectory, we use a Bezier curve of order 5 to define the joint trajectory. The joint trajectory from Eq. 24 is specified as follows.
We let the T be the time of one walking period and set the duty factor here is 0.5 which means a joint will take only \(0.5T\) to complete its own active motion. Equation 54 is subject to the following constraints.
where \(q_{0}\) and \(q_{T/2}\) are initial position value and end position value of joint q, respectively. \(\dot {q}_{0}\) and \(\dot {q}_{T/2}\) are initial velocity value and end velocity value, respectively. \(\ddot {q}_{0}\) and \(\ddot {q}_{T/2}\) are the corresponding initial acceleration value and end acceleration value, respectively. We can get the coefficient \(P_{0}\) to \(P_{5}\) from (55). Here, we let \(\dot {q}_{0}=\dot {q}_{T/2}= 0\), \(\ddot {q}_{0}=\ddot {q}_{T/2}= 0\). Then we get the polynomials \(F_{a}\) as the trajectory of active movement phase. Similarly, we can get polynomials \(F_{p}\) as the trajectory of passive movement phase. The desired trajectory curve of angular displacements is shown in Fig. 11.
Non-periodic part
Once the foot of the robot touches the obstacles, the gait trajectory will change into non-periodic. The touches always happen in active movement phase. During one walking period, before a touch happens, we use \(F_{a}\) in above paragraph as the trajectory of active movement phase. When a touch happens, we record the time \({\Delta } t\) (Δt < 0.5T), the position \(q_{{\Delta } t}\) of the joint, which can be detected by the sensors installed on the robot. After the touch happens, the passive movement phase of the joint happens. The trajectory \(F_{p}^{\prime }\) of passive movement phase is subject to the following constraints.
Then we get the polynomials \(F_{p}^{\prime }\) as the trajectory of passive movement phase.
In the following walking period. The trajectory \(F_{a}^{\prime }\) of active movement phase is subject to the following constraints.
Then we get the polynomials \(F_{a}^{\prime }\) as the trajectory of active movement phase. If there is no touch in the active movement phase, we use \(F_{p}\) we designed in periodic part as trajectory of passive movement phase. If another touch happens, we update \(F_{p}^{\prime \prime }\) using the method we used in the previous period. The desired trajectory curve of angular displacements is shown in Fig. 13a.
Rights and permissions
About this article
Cite this article
Hu, N., Li, S., Zhu, Y. et al. Constrained Model Predictive Control for a Hexapod Robot Walking on Irregular Terrain. J Intell Robot Syst 94, 179–201 (2019). https://doi.org/10.1007/s10846-018-0827-3
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10846-018-0827-3