Saturday, March 23, 2013

Underactuated Robotics theory. Optimal control. First steps




With initial experience and basic level of knowledge of the dynamics and stability, we will try to take the first steps of an elementary virtual robot. Robot, which took in account own dynamics, and, if possible, use it to good use.

But before proceed to apply existing knowledge, I will try to expand the list of theories to help us in the way of understanding the dynamics of walking robots.

In additional, here we will try addressing some of the real conditions to be encountered during implementation of mathematical model in real world.
One of the major challenges that must be considered when synthesizing of the walking robot's control system is stability.

I began to tell about stability in the previous post. Naturally, the problem of the stability of the dynamical system is very extensive, as well as the number of approaches to the problem itself. Here I note that for the consideration of the dynamics of a walking robot, to standard list of essential aspects of the theory of stability should be added such as the periodicity of the process dynamics and nonlinearity within one period/step.

For the consideration of the stability of periodic dynamical systems should look at such things as the "Limit Cycle", "Poincare Map", for the understanding of the nonlinear dynamics have to look at such things as "Hybrid Systems", and consider how is possible to integrate the differential equation? Of course, I have assumed that ordinary students already known such concepts as the equation of motion, the angular momentum, the law of conservation of energy.

By the way, one of the simplest testing methods of realized theories is the Law of Conservation of Energy. Suppose you have had hundreds of lines of code in MATLAB, and behaviour is plausible, but something about it does not give you rest. Errors can be anywhere, including in the implementation of the functions that draws state of the system. Ensure the passivity of the system (turn off the control system and damping, excluding any impact from the outside) and check the changes its total energy in time. If the energy is permanent, the system is described correctly.

While here I am doing the emphasis on ease of understanding of the necessary theory for the creation of walking robots, I want to highlight - the more you'll know all sorts of theories, the better you can describe a mathematical model of the mechanism. The more knowledge you apply, the more perfect will be your model.

Stability and nonlinearity are very interesting and important concepts to understand the dynamics that are only enhanced the understanding and the "reliability" of the control system, but today I would like to draw your attention to another important concept - Optimal Control.



Optimal Control

In the practice of implementation some products, developed system usually has some limitations.


  • Actuator’s power is not infinite;
  • Time to make a decision is limited;
  • Energy of battery with a given weight set by the manufacturer;
  • The budget for the production is limited;

If such restrictions take in account, mathematical model will be more plausible and easily constructed in reality.

Anyway, although with some restrictions, the problem of ACS synthesizing can be solved.

The particular case of the optimal control is the Trajectory Optimization.


Trajectory Optimization 


Simple example of the trajectory optimization can be a task to find the optimal way of moving from one point of room to another point, bypassing obstacles and optimal in the sense of the required time or energy used or combination of time and energy. In this case, the state space of the system is 2D or 3D space of the room.

But problem may be much more difficult. The dimension of the state space may be twenty or hundred-dimensional. The transition from one point to another in such space is the same, as is the case with the room. Note: transition with limitations and optimization by some sense.

There are many techniques and implementations for solving the trajectory optimization problem. I will say that there have found their application follow:

  • Neural networks ("BackPropagation Through Time", "Real Time Recurrent Learning");
  • Finite Element Method ("Value Iteration");
  • Variational Theory ("Direct Collocation");
  • Sequential quadratic programming ("SNOPT");

But not to be afraid, I suggest to remember that all these theories are intended only to solve a simple task - to find a way from one point of room to another point. Note: the room with all kinds of obstacles, at the same time minimizing variables such as required time, energy, or a combination thereof.

It is interesting to note that in addition to robotics, trajectory optimization problem found its use in the economy. Obviously, in achieving any purpose, minimized function can be a savings or cost of implementation.

In the process of exploring these themes I encountered with trendy and new concept - "Chaos Theory." It turns out that science does not stand still, and in the way the study of issues related to complex dynamic systems, the scientists have formulated a new direction, which enables us to study more deeply the processes unexplored until now.


Examples



Rimless Wheel



This is the simplest example of a dynamic system, which is fully consistent with the of walking robot's system.

Here control action is torque on the supporting leg. Here was synthesized simple ACS configured to maintain the wheel speed regardless of the slope angle of the supporting surface.




Compass Gait



Next example - walking biped robot without joints in the legs "Compass Gait". This is a fairly common example of which is well known and as "Rimless Wheel" is quite simple.

Control actions are the torque in the standing leg and torque between the legs. ACS has been configured to maintain the speed and choice of a suitable angle to the next step, so as not to fall into the pit.

In this example, the technology of trajectory optimization has been implemented, in particular - the preservation of the kinetic energy in each step, the observance of the angle between the legs during contact with the ground to the specified value, in accordance with the results of the preliminary analysis of the way, minimizing the impact on the system of the control torques.



It should be noted that the implemented ACS in "Compass Gait" is not the best. This is due to the fact that the trajectory optimization was performed only for one step. For a competent optimization, system must take into account the required energy for the next step. To account for such items must be applied more improved methods of prediction. It should be a topic for a separate post.


No comments:

Post a Comment