(a)
(b)
(c)
(d)
Bifurcation of system states: (a) $\phi_{st}$, (b) $\phi_{sw}$, (c) $\dot{\phi}_{st}$, (d) $\dot{\phi}_{sw}$
Jun 13, 2020
Compass-gait bipedal walkers have been studied extensively as a fundamental model in robotics and locomotion. Their kinematics are motivated by the pendular efficiencies of human walking.
For this project, I modeled a compass-gait walker as a passive system. Its movement, thus, relies solely on gravity and the resulting pendular motion of its legs.
The focus of this project is to model the equations of motion, derived using a combination of Newton-Euler and Lagrangian mechanics (TMT-method, presented by Vallery and Schwab[1]). Additionally, after the walker is modeled, its interaction with the incline surface can be observed. From these simulations, we are able to observe limit cycles, bifurcation, and eventually, chaos!
The system is modeled and simulated entirely within MATLAB computing environment.
The biped robot features two legs connected at the hip. Each leg is rectangular with a rounded foot. It is allowed to walk down a sloped surface defined by road grade \(\gamma\), relying solely on gravity and no external control inputs.
As the legs swing, one leg is denoted "stance leg" and the other as "swing leg". Corresponding states of the system are denoted by subscripts \(st\) and \(sw\), respectively.
Additionally, Each leg of the robot has a center of mass (CoM) located by an offsets \(B\) and \(C\). The rounded feet are defined by radius \(R\), allowing the walker to roll their feet along the ground upon impact.
Finally, the states of the system are defined by the vector:
\begin{bmatrix} \phi_{st} & \phi_{sw} & \dot{\phi} _{st} & \dot{\phi} _{sw} \end{bmatrix}Below is a sketch of the system.
Contact and collision in the system is characterized by non-slip and no-bounce contact. Under such definition, translational momentum at the point of contact is not conserved. This simplification is reasonable for most low road grade simulations, where impact is relatively low. In this project, the system is necessarily operated at low road grades, because beyond a certain angle \(\gamma\), it is not possible to keep the walker from falling over. Furthermore, it allows us to reduce the number of states to simulate, as the position and translational velocities of the legs become coupled with the angle and angular velocities of the legs. As such, the system is completely described by the states \(\begin{bmatrix} \phi_{st} & \phi_{sw} & \dot{\phi} _{st} & \dot{\phi} _{sw} \end{bmatrix}\)
In order to observe bifurcation of the system, the walker should be maintained such that it does not fall over. If the robot were to fall over, its corresponding states likely do not belong to a limit-cycle we are interested in.
To aid in observing its limit cycles, the walker begins its simulated walk at an inital state close to one of its attractors. Doing so helps to
It typically takes some number of steps before the system begins to settle towards its attractors; and that to observe bifurcation, many more additional steps are required to observe their periodic orbits. According to Strogatz, observing bifurcation requires on the order of a few hundred cycles (~300) per parameter value[2]. Consequently, producing a bifurcation diagram over a range of values for a system variable (in this case, \(\gamma\)) quickly becomes computationally intensive, as each cluster of points on the diagram requires hundreds of simulation steps.
For the following orbit diagrams, I simulated the system across approximately 10,000 increments of \(\gamma\). At each value of \(\gamma\), the walker completed 600 steps, and the system states at the moment of impact were recorded and plotted against the corresponding road grade. The resulting diagrams clearly demonstrate that the system states exhibit bifurcation and chaotic behavior.
An animation of the walker, created by plotting the system states over time in MATLAB, provides a visual confirmation of the model's behavior. This sanity check helps verify that the equations of motion and impact model were implemented correctly.