Robotics - Site under construction

Here I will post some of what I know about robotics. For info about my own robot that I am trying to build scroll down.

Biped gait

Phases of gait

Biped gait is very easy for us humans, but very hard for robots. Some robot companies have made robots that walks, such as the Asimo robot and Atlas from boston dynamics. I am nowhere near doing anything like that, but if you need some basic info about how robot gait read on.
Robot that tries to mimic human gait can learn from humans. We can divide gait into basic phases: Double support phase (DSP), Single Support Phase (SSP) and impact phase. Later on we will see that these phases can be subdivided but for now they will make do. The DSP is when the robot is standing on both legs. both feet are on the ground. The SSP is when one leg is on the ground and one leg is lifted. The impact phase is when the foot that was lifted impacts with the ground, hence the transition from SSP to DSP.
If we where to make a running or jumping robot we would also need a Flight Phase where both feet are of the ground but let us start with just a walking robot.


When we humans walk we very rarely fall over. We balance. We can have two kinds of balance when talking about things. Static and dynamic balance. Static balance is the easy one. As long as the Center Of Mass (COM) is within the support area of the structure we have static balance. A table forexample have a support area between the points where the legs of the table touches the ground.
Dynamic balance is harder. Some might disagree on how i see dynamic balance but I will try to explain how i see it. To have something that is dynamic is to have some sort of motion. Meaning that dynamic balance includes motion. The way i see it a segway is using dynamic balance as it is balancing while in motion. This is actually an inverted pendulum.
Static gait is almost the same as static balance as the COM is always within the support area even though we are in motion. This kind of movement will only work for somewhat slow moving things or things with many legs.
Dynamic gait is when we include the dynamics of the whole system and the COM does not have to be within the support area. So how do we define dynamic gait. I define it as making sure that the reaction forces underneath the feet behave a certain way. This can be done using the socalled Zero Moment Point (ZMP) theory but I will try to explain it with my own words.
To start explaining this lets look at a robot with point feet. That is a robot where the feets are only a single point that is in contact with the ground. It is obvius that these feet cannot transfer any torque from the ground to the foot. Furthermore let's assume we are in SSP. We do not want the foot to leave the ground as this would put us in flight phase and we do not want that. But since there is no glue to keep the foot on the ground we can onlly have vertical reaction forces in one direction. Namely where the ground pushes on the foot. If at any time the reaction force would point in the opposite direction the foot would lift from the ground which is unwanted.
The horisontal reaction force is limited by the vertical one times the static coefficient of friction between the foot and the ground. The direction of this force does not matter.
In the case of having a real foot and not a point foot we need to limit the torque in the ankle joint. The torque is limited by the reaction forces and the point underneath the feet where the reaction forces are. This point has to be underneath the foot and not outside the foot support area. If it is the foot will tilt.
For my walking robot i will assume that the torque in the ankle joints has to be zero. I will also assume that the robot has point feet even though it does have real feet.

Hardware and specifications of my own biped robot

Here i will post information about the robot i am trying to build.

The robot is based of a lynxmotion scout robot. I was not able to get my hands on a complete kit so i bought the parts and therefore my robot is not exactly the same as a biped scout.
I wanted the robot to be able to walk around 25 cm per second becouse i want to participate in the Robocup competition held by the Technical University of Denmark. One of the requirements for this competition is that the speed of the robot is around 25 cm per second. I did some crude calculations on the torque and speed of the servoes needed for this speed. If I remember correctly i assumed that the robot weighed 1.5 Kg. I found the Goteck GS-5515DMG servo to be adequate. These came at an affordable price.
Feet size: 127.1x71.1x1.55 mm
Link to cad files of parts: Cad files Many of these can also be found in the google sketchup warehouse.
Link to servo info Goteck GS-5515DMG
For drawing the robot I used google sketchup as it was the only CAD program i had acces to. I initially wanted to calculate the mass moments of inertia using the CAD program but google sketchup was not able to do this so i guess i have to do it by hand. On second thought enter PTC Creo Elements/Direct This program is able to calculate the mass moments of inertia of parts. I just hope it also can do it for assemblies.

Images and CAD of robot

The Lynxmotion biped scout Mountain View Crude Google sketchup CAD
Mountain View Leftfoot.pk2


Set up the DH-parameters of the robot. Calculate the dynamics of the robot. Make a trajectory of one step. You can save as a .stl file in PTC Creo and use blender to convert it to a .dae file which gazebosim can use. Gazebosim import cad file Create a cpp program that can control the joints in the robot in gazebosim. Or look into pygazebo and see if it finally works. Test the trajectory in gazebosim before using the real robot.

Designet by
MSc Morten Michael Lindahl