Gain file format
P D
8000 100
8000 100
8000 100
8000 100
8000 100
8000 100
Angle format
Time Joint 1 Joint 2 ........................
0 0.00E+00 -3.60E-02 0 7.85E-02 -4.25E-02
0.002 0.00E+00 -3.60E-02 0 7.85E-02 -4.25E-02
Velocity format is similar to angle.
Friday, July 17, 2009
Thursday, March 12, 2009
Digest of paper and Simulation
I read the paper regarding ZMP control and did the Matlab M file to testify some equations combined with my concerns. The program is shown bellow. After the simulation, I have a better, deeper understanding=)
function trajectory_avs
offset=0; g=9.8; Zc=500
t=0:0.1:(2*pi);
a=0.5*sin(t);
for i=1:length(a)
v(i)=sum(a(1:i));
end
for j=1:length(v)
Xcom(j)=sum(v(1:j));
end
Xcom=Xcom+offset;
figure(1);
subplot(3,1,1); plot(a);
subplot(3,1,2); plot(v);
subplot(3,1,3); plot(Xcom);
coe=a/g;
for k=1:length(Xcom)
Xzmp(k)=Xcom(k)-coe(k)*Zc;
end
figure(2); plot(Xzmp,'r'); hold on; plot(Xcom,'b+');
end
% 仿真结果表明,用sine曲线规划加速度肯定无法避免ZMP的超调。同时,同样的加速度轨迹下,超调量与重心的高度直接相关。这个也符合常理的认知,一个人在不改变支撑面的情况下,
% 单纯增加双脚高度自然增加了行走的困难,一点过多的加速度就可以导致前倾或者后倾。所以,目前研究人员用控制理论的方法得到传递函数进行控制,能达到更好的控制效果和性能。
% 因为本文的这种在a v 底层进行简单的sine曲线规划是远远不够的。用控制理论的方法,得到的加速度曲线,如果画出来的话将是一个非线性高阶的曲线,这样的加速度控制得到的最后结
% 果是良好的速度,位置控制轨迹,是以性能为衡量标准的。这样的加速度曲线也更为复杂!本文也只是探索性质,看来这个课题没有这么简单说是用什么曲线规划加速
% 度或者速度就能达到良好的指标,这种单纯的想法、简单的控制根本没有动态适应性。
So this is the reason why so many researchers apply complicated control methods in order to solve the balancing control algorithms=)
function trajectory_avs
offset=0; g=9.8; Zc=500
t=0:0.1:(2*pi);
a=0.5*sin(t);
for i=1:length(a)
v(i)=sum(a(1:i));
end
for j=1:length(v)
Xcom(j)=sum(v(1:j));
end
Xcom=Xcom+offset;
figure(1);
subplot(3,1,1); plot(a);
subplot(3,1,2); plot(v);
subplot(3,1,3); plot(Xcom);
coe=a/g;
for k=1:length(Xcom)
Xzmp(k)=Xcom(k)-coe(k)*Zc;
end
figure(2); plot(Xzmp,'r'); hold on; plot(Xcom,'b+');
end
% 仿真结果表明,用sine曲线规划加速度肯定无法避免ZMP的超调。同时,同样的加速度轨迹下,超调量与重心的高度直接相关。这个也符合常理的认知,一个人在不改变支撑面的情况下,
% 单纯增加双脚高度自然增加了行走的困难,一点过多的加速度就可以导致前倾或者后倾。所以,目前研究人员用控制理论的方法得到传递函数进行控制,能达到更好的控制效果和性能。
% 因为本文的这种在a v 底层进行简单的sine曲线规划是远远不够的。用控制理论的方法,得到的加速度曲线,如果画出来的话将是一个非线性高阶的曲线,这样的加速度控制得到的最后结
% 果是良好的速度,位置控制轨迹,是以性能为衡量标准的。这样的加速度曲线也更为复杂!本文也只是探索性质,看来这个课题没有这么简单说是用什么曲线规划加速
% 度或者速度就能达到良好的指标,这种单纯的想法、简单的控制根本没有动态适应性。
So this is the reason why so many researchers apply complicated control methods in order to solve the balancing control algorithms=)
Friday, February 13, 2009
Friday, February 6, 2009
Website of openHRP3
Link gives an over view and introduction
Last Update
(2005.10.12) a bit old
http://www.is.aist.go.jp/humanoid/openhrp/English/indexE.html
Official web Latest one
http://www.openrtp.jp/openhrp3/en/index.html
Last Update
(2005.10.12) a bit old
http://www.is.aist.go.jp/humanoid/openhrp/English/indexE.html
Official web Latest one
http://www.openrtp.jp/openhrp3/en/index.html
Download OpenHRP3
Download OpenHRP3
Thank you for agreeing with Software license.
Please download OpenHRP3, using following links;
OpenHRP3 Source Archive (Common for Linux and Windows)
version 3.0.3 (28/11/2008)
What`s new in version 3.0.3
version 3.0.2 (19/09/2008)
What`s new in version 3.0.2
Not easy, speed quite slow ya......... Jam
Thank you for agreeing with Software license.
Please download OpenHRP3, using following links;
OpenHRP3 Source Archive (Common for Linux and Windows)
version 3.0.3 (28/11/2008)
What`s new in version 3.0.3
version 3.0.2 (19/09/2008)
What`s new in version 3.0.2
Not easy, speed quite slow ya......... Jam
Monday, January 19, 2009
Ultimate Research Assistant
http://ultimate-research-assistant.com
A good website for mining the internet resources=)
A good website for mining the internet resources=)
Sunday, January 18, 2009
Curve Fitting Sample Code For Christian
% first the data of knee is stored as txt file
kneef=load('knee_abstract.txt');
%%%% curve fitting
x=1:length(kneef); x=x';
% knee
a = POLYFIT(x,kneef,18);
t=1:(( length(kneef))/250): length(kneef);
z=polyval(a,t);
%%%%%%%%%%%%%%
plot(kneef,'r*');hold on;
plot(z,'b+');hold on;
legend('Original','Processed');
kneef=load('knee_abstract.txt');
%%%% curve fitting
x=1:length(kneef); x=x';
% knee
a = POLYFIT(x,kneef,18);
t=1:(( length(kneef))/250): length(kneef);
z=polyval(a,t);
%%%%%%%%%%%%%%
plot(kneef,'r*');hold on;
plot(z,'b+');hold on;
legend('Original','Processed');
Subscribe to:
Posts (Atom)