Optimal control: non-zero target control

Click For Summary

Discussion Overview

The discussion revolves around the optimal control of a robotic arm with two joints (elbow and shoulder) aimed at reaching a specific position of the wrist. Participants explore the implications of maintaining a non-zero target control signal even when the target position is achieved, particularly in the context of real-world factors such as friction and system dynamics.

Discussion Character

  • Exploratory
  • Technical explanation
  • Debate/contested
  • Mathematical reasoning

Main Points Raised

  • One participant describes a cost function for optimal control that includes both target position and target control, suggesting that the non-zero control signal complicates achieving the desired wrist position.
  • Another participant questions the nature of the non-zero target control signal, asking whether it results from insufficient or excessive control input.
  • A participant provides details on the measurement and control implementation, noting the use of relative encoders and artificial muscles, and mentions potential delays in control signal generation.
  • One participant expresses confusion regarding the mathematical expressions used, requesting clarification on the terms and derivations involved.

Areas of Agreement / Disagreement

The discussion does not reach a consensus, as participants express varying levels of understanding and propose different aspects of the control problem without agreeing on a solution or approach.

Contextual Notes

Participants highlight potential issues such as the influence of friction, the dynamics of the arm when hanging, and the effects of delays in control signal generation, which may affect the performance of the control system.

diminho
Messages
3
Reaction score
0
Dear all,

I am building an arm with 2 joints(elbow, shoulder) and want to optimally control it to a particular position(wirst). The examples I saw so far(e.g. acrobot) have a target control signal [itex]u(t_f)[/itex] which becomes zero when reaching the target [itex]x_{target}[/itex] in the final time step [itex]t_f[/itex].
In my case, the target control signal is not zero when reaching the target which can be any point in the horizontal plane within the range of the wrist(the arm is hanging down). My idea was to specify the target control as well as the target position which should be reached. So, the cost function
[tex]J=\frac{1}{2}x(t_f)^TS_fx(t_f)+\frac{1}{2}\int^{t_f}_{t_0}(x(t)^TQx(t)+u(t)^TRu(t))dt[/tex]
becomes
[tex]J=\frac{1}{2}(x(t_f)-x_{target}^T)S_f(x(t_f)-x_{target})+\frac{1}{2}\int^{t_f}_{t_0}((x(t)-x_{target})^TQ(x(t)-x_{target})+(u(t)-u_{target})^TR(u(t)-u_{target}))dt[/tex]
(see scholarpedia->optimal control for notation)
As I am building a real system with friction the target control [itex]u_{target}[/itex] does not always lead to the same position. The position where the wrist ends up depends in which state the arm was before the target control is applied.
So, although the wrist is at the correct position it gets penalized for not having the "correct" controls.

Does anyone of you have an idea how to formulate this problem?

PS: x contains the angles of the joints and the angle velocities.
 
Engineering news on Phys.org
Does no one have any idea? I really need helkp here:/
 
Have you identified the reason the target control signal is not zero when the target is reached. Is it too little or too much?

How are you implementing this control. How is X(t) measured? How is U(tf) generated? Are you using a microcomputer to solve the function? Could you be getting digitization errors?
 
The reason why there is nearly for all positions non-zero target control is that the arm is currently hanging down. I also put it in the horizontal plane, but the tendons pull the arm for some positions, too.

x(t)=[elbow, shoulder, elbowVelocity, shouldervelocity] is measured using rel. encoder with 333 steps/degree-> very precise. The control is generated using artificial muscles. I am using a Simulink and a PCI card to generate the signals. There might be some delay between setting the control and the generation of the torque using the muscles.
 
I'm sorry but I do not understand your expressions. Would you be able to go through one or the other and explain each term and how you arrived at it?

Thanks.
 

Similar threads

Replies
6
Views
3K
  • · Replies 8 ·
Replies
8
Views
3K
  • · Replies 1 ·
Replies
1
Views
3K
Replies
2
Views
1K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 78 ·
3
Replies
78
Views
7K
  • · Replies 3 ·
Replies
3
Views
3K
  • · Replies 6 ·
Replies
6
Views
4K
  • · Replies 7 ·
Replies
7
Views
6K
  • · Replies 0 ·
Replies
0
Views
2K