[/size][/backcolor][/color]
clear;
clc;
global pi m11 m12 l11 l12 m21 m22 l21 l22 m31 m32 l31 l32 m4 g d1 d2 d3 fa a21 a23
m11=1;m12=0.1;l11=1;l12=1.044;m21=1;m22=0.2;l21=1;l22=0.938;m31=1;m32=0.3;l31=1;l32=0.917;m4=1;%参数输入
g=9.8;d1=0.7;d2=0.5;d3=0.3;a21=0.1;a23=0.2;pi=3.1415926;fa=(2/3)*pi;%参数输入
syms w1 w2 w3
q1=acos((l11.^2-l12.^2+(w1).^2+(w2).^2+(w3-d1).^2)./(2*l11*((w1).^2+(w2).^2).^(1/2)))+atan(w2./w1);
q2=atan((w2-l11*sin(q1))./(w1-l11*cos(q1)));
q3=atan(sqrt((w1-l11*cos(q1)).^2+(w2-l11*sin(q1)).^2))./(w3-d1);
q7=-acos(((w1).^2+(w2).^2+(w3-d3-a21).^2+(l31-a23).^2-l32.^2)./(2*(l31-a23)*sqrt((w1).^2+(w2).^2)))-atan(w2./w1);
q8=atan((w2+a23*sin(q7)-l31*sin(q7))./(w1+a23*cos(q7)-l31*cos(q7)));
q9=atan(sqrt((w1-(l31-a23)*cos(q7)).^2+(w2-(l31-a23)*sin(q7)).^2)./(w3-a21-d3));
q4=acos(((w1+a23*cos(q7+fa)).^2+(w2+a23*sin(q7+fa)).^2+(w3-d2-a21).^2+l21.^2-l22.^2)./(2*l21*((w1+a23*cos(q7+fa)).^2+(w2+a23*sin(q7+fa)).^2).^(1/2)))+atan((w2+a23*sin(q7+fa))./(w1+a23*cos(q7+fa)));
q5=atan((w2+a23*sin(q7+fa)-l21*sin(q4))./(w1+a23*cos(q7+fa)-l21*cos(q4)));
q6=atan(sqrt((w1+a23*cos(q7+fa)-l21*cos(q4)).^2+(w2+a23*sin(q7+fa)-l21*sin(q4)).^2)./(w3-a21-d2));
q10=w1;
q11=w2;
q12=w3;
J=jacobian([q1;q2;q3;q4;q5;q6;q7;q8;q9;q10;q11;q12],[w1 w2 w3]); %雅克比矩阵,12*3矩阵
syms t
w1=1;
w2=0.4*sin(pi*t/3);
w3=0.4;
qd=[w1 w2 w3]';
dqd=diff(qd,t); %qd对t求导数
dq=J*dqd; %12*3的矩阵J乘3*1的矩阵
dJ=diff(J,t); %J对时间求导数
ddqd=diff(dqd,t); %dqd对t求导数
ddq=dJ*dqd+J*ddqd; %得到一个新的12行1列矩阵
[color=#999999][backcolor=rgb(242, 242, 242)][size=12px]