Saturday, 27 November 2021

Quadruped-Gait-Analysis

 

About the project:-


As its name suggests, quadruped robots have four legs or limbs and follow the gait patterns of quadruped animals. They are faster and more stable than biped robots. Depending on their legs structure, they can be broadly classified into two categories, mammal-type and Sprawling type. The aim of this project is to perform teleoperations(keyboard), forward simulation, obstacle avoidance, turning and reverse motion of a quadruped in ROS/ROS2 using Gazebo Simulator.

 

Overview:- 

  • Quadruped robots can be made to walk on planes as well as on rough surfaces. They have the most stable configurations amongst the multi-legged robots.
  • They can be used for transportation on small scale like household purposes as well as in factories.

Technology used: -

  • ROS:- The Robot Operating System, or ROS, is a framework for writing robot software. It is a collection of tools of creating complex and robust robot behavior across a wide variety of robotic platforms. ROS is used here to simulate the robot.
  • Gazebo:- Gazebo is an open source 3D robotic simulator. It provides a realistic 3D environment to simulate a robot. Here it is used to provide a world and to simulate quadruped robot in it.
Introduction:- Our main idea is to find a suitable urdf file for a quadruped robot, setup the urdf by adding plugins and xacro commands into it, find the forward and inverse kinematics equations for the robot and build the code, plan gait patterns for its movements and perform the movements in 3D world in Gazebo simulator with the help of teleop_twist_keyboard/cmd_vel. 

Basic Domains:-

  • Forward and inverse kinematics
  • Gait analysis of quadruped robot.
  • Mapping in Ros.
  • Configurations of planners and controllers.
  •  Ros.
  • Simulation(Gazebo)
Theory:- A Quadruped robot is a 4 legged robot which basically consists of a plane torso and 4 legs which have a revolute joint between them. In our case, the degree of freedom of the robot is 8. Quadruped robot simulation includes the detailed study of gaits and gait patterns. To make a quadruped robot move, we have to study about the gaits and plan the gaits for our tobot. It also includes the study of forward and inverse kinematics. Equations of forward and inverse kinematics are to be found for determination of position and configuration of legs. After the gait planning and implementation of forward and inverse kinematics, the robot is made to simulate in Gazebo simulator with the help of Ros.


Gait:- A quadruped robot can walk with statically and dynamically stable gaits. In the statically stable gait, each leg of the robot is lifted up and down sequentially, and there are three stance legs at the least at any moment. This type of gait is named creeping gaits. One gait cycle can be divided into eight different periods of movement. At the beginning of walking, the initial equivalent where four legs are in the stance phase. When one of the legs is lifted, it is transferred to the swing phase; we call this period the step forward stage. In this stage, the equivalent mechanism is. From this, the leg falls and is in contact with the ground until the next leg lifts off; this period is called the switching stage. The equivalent mechanism at this moment exhibits the same configuration as that of the initial period; however, the legs contain different position parameters with the initial period. Four legs of the quadruped robot repeat the motion individually in a certain order from the stance phase to the swing phase, to achieve walking using creeping gait. The step forward stage and switching stage occur alternately while the robot walks. The locomotion of the quadruped robot can be regarded as the movement of these series equivalent mechanisms. The figure below shows the sequence of equivalent mechanisms in one gait cycle. The efficiency of this gait is low because its minimum duty factor is 3/4.






Kinematics:- The Forward and Inverse Kinematics Solutions for the designed 2 DOF leg of a quadruped robot is derived by using the Denavit-Hartenberg Convention. These solutions will be applied to simulate and control the robot’s movement. Four DH parameters  are used to determine the Kinematics and Inverse Kinematics Solution for each leg. In order to define relative position and orientation of two fixed axes (axes which do not move), link length (also link distance or common normal) (a) and link twist (a) are required. If there are more than two fixed axes, the neighboring common normals in general case will not intersect the common axis at the same point. Hence, a new parameter called link offset (d) is necessary. The angles of the joint (T) will be determined using the Inverse Kinematics Solutions. Only one of these four parameters will be variable for a single link and others will remain constant.

As mentioned earlier, the joint angles are defined as t1 for hip joint rotation and t2 for knee joint rotation and, a1 and a2 are the length of thigh and leg respectively. Since the structure uses only revolute joints, in this case only the joint angles (T) are variable. Since the structure has no prismatic joint, link offset (d) for both the links are zero. Also, the Z-axis of the second link is 90 degree twisted with respect to the Z-axis of the first link which is the value of link twist (a) for the first link. To represent the equations in an easier way, cosðt1Þ and cosðt2Þ are defined as c1 and c2, also s1 and s2 represent sinðt1Þand sinðt2Þ respectively. Equations, x, y, and z are the final coordinates of the corresponding axes of the endpoint for Quadruped’s leg. The base motor situated on the origin of Fig. 1 rotates the leg on the Yaw axis/Z axis. Transformation matrix T is used to determine the Inverse Kinematics Solutions. The first three values of the fourth column represent the value of x, y, and z respectively. The Kinematics solutions for the Inverse Kinematics equations (Equations. (7)e(8)) are necessary because they describe the necessary angles for the motors to change the position of the end of the leg to any desired point.

Working:-



Conclusions:- We learnt about Gaits, gait pattern, creeping gaits, trotting gates, straight gaits, turning gaits, gait tuning. We also learnt the basics of forward and inverse kinematics and how to find DH parameters for a robotic arm. We also learnt about teleoperations of a robot in the gazebo, concept of xacro and working on a urdf file by adding plugins, materials and giving velocities to joints. 













No comments:

Post a Comment