人工神经网络作业MATLAB仿真

上传人:风*** 文档编号:60040109 上传时间:2022-03-06 格式:DOC 页数:27 大小:638.50KB
收藏 版权申诉 举报 下载
人工神经网络作业MATLAB仿真_第1页
第1页 / 共27页
人工神经网络作业MATLAB仿真_第2页
第2页 / 共27页
人工神经网络作业MATLAB仿真_第3页
第3页 / 共27页
资源描述:

《人工神经网络作业MATLAB仿真》由会员分享,可在线阅读,更多相关《人工神经网络作业MATLAB仿真(27页珍藏版)》请在装配图网上搜索。

1、精选优质文档-倾情为你奉上人工神经网络仿真作业(3篇)人工神经网络仿真作业1:三级倒立摆的神经网络控制人工神经网络仿真作业2:基于模型整体逼近的机器人RBF网络自适应控制人工神经网络仿真作业3:基于RBF的机械手无需模型自适应控制研究神经网络仿真作业1:三级倒立摆的神经网络控制摘要:建立了基于人工神经网络改进BP算法的三级倒立摆的数学模型,并给出了BP网络结构,利用Matlab软件进行训练仿真,结果表明,改进的BP算法控制倒立摆精度高、收敛快,在非线性控制、鲁棒控制等领域具有良好的应用前景。1.引言倒立摆系统的研究开始于19世纪50年代,它是一个典型的非线性、高阶次、多变量、强耦合和绝对不稳定

2、系统.许多抽象的控制概念,如系统的稳定性、可控性、系统的收敛速度和抗干扰能力都可以通过倒立摆直观地表现出来。随着现代控制理论的发展,倒立摆的研究对于火箭飞行控制和机器人控制等现代高科技的研究具有重要的实践意义。目前比较常见的倒立摆稳定控制方法有线性控制,如LQR,LQY等;智能控制,如变论域自适应模糊控制,遗传算法,预测控制等。2.系统的数学模型2.1三级倒立摆的模型及参数三级倒立摆主要由小车,摆1、摆2、摆3组成,它们之间自由链接。小车可以在水平导轨上左右平移,摆杆可以在铅垂平面内运动,将其置于坐标系后如图1 所示:规定顺时针方向的转角和力矩均为正。此外,约定以下记号:为外界作用力,为小车位

3、移,(=1,2,3)为摆与铅垂线方向的夹角, 分别为摆的链接点位置。其它的系统参数说明如下:- 小车系统等效质量; - 二摆质心至旋转轴之间的距离;- 一摆质量; - 三摆质心至旋转轴之间的距离;- 二摆质量; - 一、二摆之间的距离;- 三摆质量; - 二、三摆之间的距离;- 一摆对其质心处转动惯量; - 小车系统的摩擦系数;- 二摆对其质心处转动惯量; - 一摆转轴处的摩擦阻力矩系数;- 三摆对其质心处转动惯量; - 二摆转轴处的摩擦阻力矩系数;- 一摆质心至旋转轴之间的距离; - 三摆转轴处的摩擦阻力矩系数。2.2三级倒立摆的非线性模型为:其中 , 3.神经网络控制器的设计3.1 BP神

4、经网络人工神经网络(ANN)由于具有信息的分布存储、并行处理以及自学习能力等优点,在信息处理、模式识别、智能控制及系统建模等领域得到越来越广泛的应用。近年来,已有多种ANN模型被提出并得以深入研究。其中,80%90%的人工神经网络模型是采用BP网络或它的改进形式,它是前向网络的核心部分,体现了网络最精华的部分。标准的BP网络是根据WidrowHoff规则,采用梯度下降算法,主要由信息信号的正向传播和误差信号的反向传播两部分组成。BP神经网络在未经任何训练的情况下,不能作为系统控制器使用。训练样本数的多少对训练结果有很大影响。样本数越多,网络训练结果越精确,但运行时间加长,计算成本也增加,所以合

5、理选择样本数据非常重要。在实际仿真过程中,经过试探训练样本数为5000时结果较为合理,此时样本数据能够反映系统的基本特征,可以得到预期的仿真结果。3.2控制程序整个的程序设计如下:p=x3_1;x3_2;x3_3;x3_4;x3_5;x3_6;x3_7;x3_8;u=x_u;%初始化训练数据net=newff(minmax(p),8,1,tansig,purelin,trainlm);%生成一个两层的神经网络,第一层的传递函数为,第二层的传递函数为net.trainParam.goal=0.;%设置与网络训练相关的数据,包括训练精度和最大训练次数net.trainParam.epochs=50

6、00;net=init(net);%初始化网络net=train(net,p,u);%根据前面的数据和设置的参数对网络进行训练y=sim(net,p)%对已经训练好的网络进行仿真,检查所得的网络是否符合要求plot(u,r)hold on;plot(y,*)%将训练所用数据和神经网络仿真的数据画在同一张图上,进行对比gensim(net,-1)%如果所得到的网络符合要求,则将得到的网络生成一个simulink模块,替代原来的反馈矩阵对倒立摆模型进行控制采用LQR方法对系统进行建模生成系统传递函数程序如下所示:clc clear m0= 1.32822; m1= 0.2200; m2= 0.22

7、00; m3= 0.1870; J1= 0.; J2= 0.; J3 = 0.; d1= 0.304; d2= 0.304; d3= 0.226; D1= 0.49; D2= 0.49; f0= 22.9147; f1= 0.; f2= 0.; f3= 0.; g= 9.81; M=m0+m1+m2+m3 m1*d1+m2*D1+m3*D1 m2*d2+m3*D2 m3*d3; m1*d1+m2*D1+m3*D1 J1+m1*d1*d1+m2*D1*D1+m3*D1*D1 m2*d2*D1+m3*D1*D2 m3*d3*D1; m2*d2+m3*D2 m2*d2*D1+m3*D1*D2 J2+

8、m2*d2*d2+m3*D2*D2 m3*d3*D2; m3*d3 m3*d3*D1 m3*d3*D2 J3+m3*d3*d3M=1.95522 0.26631 0.15851 0.; 0.26631 0. 0. 0.; 0.15851 0. 0. 0.; 0. 0. 0. 0.F=-f0 0 0 0; 0 -f1-f2 f2 0; 0 f2 -f2-f3 f3; 0 0 f3 -f3F= -22.9147 0 0 0; 0 -0. 0. 0; 0 0. -0. 0.; 0 0 0. -0. G=11.88;0;0;0;Nb=0 0 0 0; 0 m1*d1+m2*D1+m3*D1 0 0;

9、0 0 m2*d2*g+m3*D2*g 0; 0 0 0 m3*d3*gNb= 0 0 0 0; 0 0.26631 0 0; 0 0 1. 0; 0 0 0 0. A22=inv(M)*FA21=inv(M)*NbB2=inv(M)*GA21=inv(M)*NbA22=inv(M)*FB2=inv(M)*GT0=1 0 0 0 ; 0 1 0 0; 0 -1 1 0; 0 0 -1 1;%T0=eye(4,4)A21=T0*A21*inv(T0);A22=T0*A22*inv(T0);B2=T0*B2;A=zeros(4,4) eye(4,4); A21 A22B= zeros(4,1);

10、B2 C = eye(4,4) zeros(4,4) D = zeros(4,1) %LQR%Q=diag(100 1 1 1 1 1 1 1);R = 0.01;K = lqr(A,B,Q,R)Ac = (A-B*K);Bc = B;Cc = C;Dc = D;T = 0:0.01:10;U = ones(size(T);sys_c=ss(Ac,Bc,Cc,Dc);Y,T,X=lsim(sys_c,U,T);figure(1)plot(T,Y)gridxlabel(time(s);legend(Cart,PendulumDown,PendulumMiddle,PendulumUp)Nbar=

11、 K(1);Cn = 1 0 0 0 0 0 0 0; %sys = ss(A,B,Cn,0);sys_cl = ss(Ac,Bc*Nbar,Cc,Dc);Y,T,X = lsim(sys_cl,U,T);figure(2)plot(T,Y)gridxlabel(time(s);legend(Cart,PendulumDown,PendulumMiddle,PendulumUp)%全维观测器P = -40 -41 -42 -43 -44 -45 -46 -47;L = place(A,C,P)Ace = A-B*K B*K; zeros(size(A) (A-L*C); eig(Ace)Bce

12、 = B*Nbar; zeros(size(B);Cce = Cc zeros(size(Cc);Dce = 0;0;0;0;est_cl = ss(Ace,Bce,Cce,Dce);Y,T,X = lsim(est_cl,U,T);figure(3)plot(T,Y)gridxlabel(time(s);legend(Cart,PendulumDown,PendulumMiddle,PendulumUp)采用Simulink和S函数进行控制系统的设计,系统仿真程序如下所示:图2 Simulink仿真图functionsys,x0,str,ts=dot2(t,x,u,flag)switch f

13、lag case 0, sys,x0,str,ts=mdlInitializeSizes; case 1, sys=mdlDerivatives(t,x,u); case 3, sys=mdlOutputs(t,x,u); case 2,9 sys=; otherwise error(Unhandled flag = ,num2str(flag); endfunction sys,x0,str,ts=mdlInitializeSizes sizes = simsizes;sizes.NumContStates = 8;sizes.NumDiscStates = 0;sizes.NumOutpu

14、ts = 8;sizes.NumInputs = 1;sizes.DirFeedthrough = 0;sizes.NumSampleTimes = 1;sys = simsizes(sizes);%x0=0.05,0.08,0.008,0.009,0,0,0,0;x0=0.05,0.08,0.001,0.008,0,0,0,0;str=;ts=0 0;function sys=mdlDerivatives(t,x,u)tao=-11.88*u;0;0;0;D=-1.95522 -0.26631*cos(x(2) -0.15851*cos(x(3) -0.*cos(x(4); -0.26631

15、*cos(x(2) -0. -0.*cos(x(3)-x(2) -0.*cos(x(4)-x(2); -0.15851*cos(x(3) -0.*cos(x(3)-x(2) -0. -0.*cos(x(4)-x(3); -0.*cos(x(4) -0.*cos(x(4)-x(2) -0.*cos(x(4)-x(3) -0.;H=-22.947*x(5)+0.26631*sin(x(2)*x(6)2+0.15851*sin(x(3)*x(7)2+0.*sin(x(4)*x(8)2; -0.*x(6)+0.*x(7)+0.*sin(x(3)-x(2)*x(7)2+0.*sin(x(4)-x(2)*

16、x(8)2+2.*sin(x(2); 0.*x(6)-0.*sin(x(3)-x(2)*x(6)2-0.*x(7)+0.*x(8)+0.*sin(x(4)-x(3)*x(8)2+1.*sin(x(3); -0.*sin(x(4)-x(2)*x(6)2+0.*x(7)-0.*sin(x(4)-x(3)*x(7)2-0.*x(8)+0.*sin(x(4);sys=x(5); x(6); x(7); x(8); -inv(D)*H+inv(D)*tao;function sys=mdlOutputs(t,x,u)E=1 0 0 0 0 0 0 0; 0 1 0 0 0 0 0 0; 0 -1 1 0

17、 0 0 0 0; 0 0 -1 1 0 0 0 0; 0 0 0 0 1 0 0 0; 0 0 0 0 0 1 0 0; 0 0 0 0 0 -1 1 0; 0 0 0 0 0 0 -1 1;sys=E*x;图3结果仿真图4.小结通过对一级倒立摆数学模型分析,进行了倒立摆小车改进BP算法的控制系统仿真实验。仿真表明该BP算法收敛性好、计算量小, BP神经网络从理论上可以逼近任意非线性函数,所以它特别适合控制像倒立摆这样的严重非线性、多变量系统。神经网络仿真作业2:基于模型整体逼近的机器人RBF网络自适应控制摘要:本文研究一类机器人力臂神经网络自适应控制的设计方法,采用RBF网络逼近的方法对四

18、自由度机械手进行轨迹跟踪仿真,本文设计控制器对对象整体逼近,结果表明此控制器有很好的鲁棒性。关键词:机械手;神经网络;RBF1 引言机器人是二十世纪人类最伟大的发明之一,人类对于机器人的研究由来已久。上世纪70年代之后,计算机技术、控制技术、传感技术和人工智能技术迅速发展,机器人技术也随之进入高速发展阶段,成为综合了计算机、控制论、机构学、信息和传感技术、人工智能、仿生学等多门学科而形成的高新技术。其本质是感知、决策、行动和交互四大技术的综合,是当代研究十分活跃,应用日益广泛的领域。机器人应用水平是一个国家工业自动化水平的重要标志。机器人技术的研究在经历了第一代示教再现型机器人和第二代感知型机

19、器人两个阶段之后进入第三代智能机器人的发展阶段。机械手是在自动化生产过程中使用的一种具有抓取和移动工件功能的自动化装置,它是在机械化、自动化生产过程中发展起来的一种新型装置。近年来,随着电子技术特别是电子计算机的广泛应用,机器人的研制和生产已成为高技术领域内迅速发展起来的一门新兴技术,它更加促进了机械手的发展,使得机械手能更好地实现与机械化和自动化有机结合。机械手能代替人类完成危险、重复枯燥的工作,减轻人类劳动强度,提高劳动生产率。机械手越来越广泛地得到了应用,在机械行业中它可用于零部件组装 ,加工工件的搬运、装卸,特别是在自动化数控机床、组合机床上使用更普遍。目前,机械手已发展成为柔性制造系

20、统FMS和柔性制造单元FMC中一个重要组成部分。把机床设备和机械手共同构成一个柔性加工系统或柔性制造单元,它适应于中、小批量生产,可以节省庞大的工件输送装置,结构紧凑,而且适应性很强。当工件变更时,柔性生产系统很容易改变,有利于企业不断更新适销对路的品种,提高产品质量,更好地适应市场竞争的需要。2 基于RBF神经网络逼近的控制器2.1 问题的提出设n关节机械手方程为: (2.1)其中M(q)为阶正定惯性矩阵,为阶惯性矩阵,其中G(q)为阶惯性向量,为摩擦力,d为未知外加干扰,为控制输入。跟踪误差为:定义误差函数为: (2.2) 其中,则 (2.3)其中.在实际工程中,模型不确定项为未知,为此,

21、需要对不确定项进行逼近。采用RBF网络逼近,根据的表达式,网络输入取: 设计控制律为: (2.4)其中为RBF网络对的估计值。2.2控制器的设计采用RBF网络逼近,则RBF神经网络的输出为: (2.5)取 ,设计控制律为: (2.6)其中为用于克服神经网络逼近误差的鲁棒项。将控制律式(2.6)带入式(2.5),得: (2.7)其中。3 系统仿真及结果选二关节机器人机械臂系统,其动力学模型为: (3.1)其中 , , , 取。RBF网络高斯基函数参数的取值对神经网络控制的作用很重要,如果参数取值不合适,将使高斯基函数无法得到有效的映射,从而导致RBF网络无效。故按网络输入值的范围取值,取,网络的

22、初始权值取零,网络输入取 。采用Simulink和S函数进行控制系统的设计,系统仿真程序如下所示:图3-1 Simulink主程序位置指令子程序:functionsys,x0,str,ts= spacemodel(t,x,u,flag)switch flag,case 0, sys,x0,str,ts= mdlInitializeSizes;case 1, sys=mdlDerivatives(t,x,u);case 3, sys=mdlOutputs(t,x,u);case2,4,9 sys=;otherwise error(Unhandled flag=,num2str(flag);end

23、 functionsys,x0,str,ts= mdlInitializeSizessizes=simsizes;sizes.NumContStates =0;sizes.NumDiscStates =0;sizes.NumOutputs =6;sizes.NumInputs =0;sizes.DirFeedthrough =0;sizes.NumSampleTimes =1;sys=simsizes(sizes);x0=;str=;ts=0 0; function sys=mdlOutputs(t,x,u)qd1=0.1*sin(t);d_qd1=0.1*cos(t);dd_qd1=-0.1

24、*sin(t);qd2=0.1*sin(t);d_qd2=0.1*cos(t);dd_qd2=-0.1*sin(t); sys(1)=qd1;sys(2)=d_qd1;sys(3)=dd_qd1;sys(4)=qd2;sys(5)=d_qd2;sys(6)=dd_qd2; 总体逼近控制器子程序(部分):% From robot2_rbfnn_sim.mdlfunctionsys,x0,str,ts= spacemodel(t,x,u,flag)switch flag,case 0, sys,x0,str,ts= mdlInitializeSizes;case 1, sys=mdlDerivat

25、ives(t,x,u);case 3, sys=mdlOutputs(t,x,u);case2,4,9 sys=;otherwise error(Unhandled flag=,num2str(flag);end functionsys,x0,str,ts= mdlInitializeSizesglobal node c b Fai MM=1;node=7;c=0.1*-1.5 -1 -0.5 0 0.5 1 1.5;-1.5 -1 -0.5 0 0.5 1 1.5;-1.5 -1 -0.5 0 0.5 1 1.5;-1.5 -1 -0.5 0 0.5 1 1.5;-1.5 -1 -0.5 0

26、 0.5 1 1.5;b=10;Fai=5*eye(2); sizes=simsizes;sizes.NumContStates =2*node;sizes.NumDiscStates =0;sizes.NumOutputs =3;sizes.NumInputs =11;sizes.DirFeedthrough =1;sizes.NumSampleTimes =0;sys=simsizes(sizes);x0=0.1*ones(1,2*node);str=;ts=;function sys=mdlDerivatives(t,x,u);global node c b Fai M%tol=Kv*r

27、; % Only PD Controlsys(1)=tol(1);sys(2)=tol(2);sys(3)=fn_norm;被控对象子程序(部分):functionsys,x0,str,ts= spacemodel(t,x,u,flag)switch flag,case 0, sys,x0,str,ts= mdlInitializeSizes;case 1, sys=mdlDerivatives(t,x,u);case 3, sys=mdlOutputs(t,x,u);case2,4,9 sys=;otherwise error(Unhandled flag=,num2str(flag);en

28、d functionsys,x0,str,ts= mdlInitializeSizesglobal p gsizes=simsizes;sizes.NumContStates =4;sizes.NumDiscStates =0;sizes.NumOutputs =5;sizes.NumInputs =3;sizes.DirFeedthrough =0;sizes.NumSampleTimes =0;sys=simsizes(sizes);x0=0.09 0 -0.09 0;str=;ts=; q1=x(1);d_q1=dq(1);q2=x(3);d_q2=dq(2);q=q1;q2;e1=qd

29、1-q1;e2=qd2-q2;de1=d_qd1-d_q1;de2=d_qd2-d_q2;e=e1;e2;de=de1;de2;Fai=5*eye(2);dqd=d_qd1;d_qd2;dqr=dqd+Fai*e;ddqd=dd_qd1;dd_qd2;ddqr=ddqd+Fai*de;f=M*ddqr+V*dqr+G+F;f_norm=norm(f); sys(1)=x(1);sys(2)=x(2);sys(3)=x(3);sys(4)=x(4);sys(5)=f_norm;绘图子程序:close all; figure(1);subplot(211);plot(t,x1(:,1),r,t,x

30、1(:,2),b);xlabel(time(s);ylabel(position tracking of link 1);subplot(212);plot(t,x2(:,1),r,t,x2(:,2),b);xlabel(time(s);ylabel(position tracking of link 2); figure(2);subplot(211);plot(t,tol1(:,1),r);xlabel(time(s);ylabel(control input of link 1);subplot(212);plot(t,tol2(:,1),r);xlabel(time(s);ylabel

31、(control input of link 2); figure(3);plot(t,f(:,1),r,t,f(:,2),b);xlabel(time(s);ylabel(f and fn);仿真结果如下:图3-2关节1及关节2的位置跟踪图3-3 关节1及关节2的控制输入图3-4关节1及关节2的及其逼近神经网络仿真作业3:基于RBF的机械手无需模型自适应控制研究 一、摘要针对机械手存在的扰动等未知模型,提出了基于RBF神经网络的自适应控制策略。采用RBF神经网络对机械手动力学模型在线学习,并根据Lyapunov稳定性理论建立了网络权值自适应学习律,确保了网络逼近误差的收敛及系统的稳定。以四自

32、由度机械手轨迹跟踪为例进行仿真,结果表明该方法能够有效低补偿建模误差,实现了无需模型的机械手自适应控制,提高了系统的控制性能及对外部不确定扰动的鲁棒性,对实际工业机械手的自适应控制具有一定的可操作性。二、对四自由度机械手模型RBF仿真2.1 机械手动力学模型设n关节机械手方程为: (1)式中:q关节角位移,;阶正定惯性矩阵;科氏力及向心力向量;阶重力向量;摩擦力;未知外部干扰;控制输入。定义跟踪误差为:式中:关节目标角位移向量。定义误差函数为:,其中, 则: (2) (3) (4)在实际工程中,模型不确定项为未知,为此,需要对不确定项进行逼近。2.2 基于RBF神经网络逼近的控制器设计采用RB

33、F网络逼近,则RBF神经网络的输出为: (5)取,则设计的控制律为: (6)式中:用于克服神经网络逼近误差的鲁棒项。将控制律式(6)代入式(3),得: (7)式中:三、仿真程序及结果3.1 Matlab程序:程序1 ctrl.mfunction sys,x0,str,ts = spacemodel(t,x,u,flag)switch flag,case 0, sys,x0,str,ts=mdlInitializeSizes;case 1, sys=mdlDerivatives(t,x,u);case 3, sys=mdlOutputs(t,x,u);case 2,4,9 sys=;otherw

34、ise error(Unhandled flag = ,num2str(flag);endfunction sys,x0,str,ts=mdlInitializeSizesglobal c b kv kpsizes = simsizes;sizes.NumContStates = 10;sizes.NumDiscStates = 0;sizes.NumOutputs = 6;sizes.NumInputs = 8;sizes.DirFeedthrough = 1;sizes.NumSampleTimes = 1;sys = simsizes(sizes);x0 = 0.1*ones(1,10)

35、;str = ;ts = 0 0;%c=0.60*ones(4,5);c= -2 -1 0 1 2; -2 -1 0 1 2; -2 -1 0 1 2; -2 -1 0 1 2;b=3.0*ones(5,1);alfa=3;kp=alfa2 0; 0 alfa2;kv=2*alfa 0; 0 2*alfa;function sys=mdlDerivatives(t,x,u)global c b kv kpA=zeros(2) eye(2); -kp -kv;B=0 0;0 0;1 0;0 1;Q=50 0 0 0; 0 50 0 0; 0 0 50 0; 0 0 0 50;P=lyap(A,Q

36、);eig(P);qd1=u(1);d_qd1=0.2*0.5*pi*cos(0.5*pi*t);qd2=u(2);d_qd2=0.2*0.5*pi*sin(0.5*pi*t);q1=u(3);dq1=u(4);q2=u(5);dq2=u(6);e1=q1-qd1;e2=q2-qd2;de1=dq1-d_qd1;de2=dq2-d_qd2;th=x(1) x(2) x(3) x(4) x(5);x(6) x(7) x(8) x(9) x(10);xi=e1;e2;de1;de2;h=zeros(5,1);for j=1:1:5 h(j)=exp(-norm(xi-c(:,j)2/(2*b(j)

37、*b(j);endgama=20;M1=1;if M1=1 % Adaptive Law S=gama*h*xi*P*B;elseif M1=2 % Adaptive Law with UUB k1=0.001; S=gama*h*xi*P*B+k1*gama*norm(x)*th;endS=S;for i=1:1:5 sys(i)=S(1,i); sys(i+5)=S(2,i); endfunction sys=mdlOutputs(t,x,u)global c b kv kpqd1=u(1);d_qd1=0.2*0.5*pi*cos(0.5*pi*t);dd_qd1=-0.2*(0.5*p

38、i)2*sin(0.5*pi*t);qd2=u(2);d_qd2=0.2*0.5*pi*sin(0.5*pi*t);dd_qd2=0.2*(0.5*pi)2*cos(0.5*pi*t);dd_qd=dd_qd1;dd_qd2;q1=u(3);dq1=u(4);q2=u(5);dq2=u(6);ddq1=u(7);ddq2=u(8);ddq=ddq1;ddq2;e1=q1-qd1;e2=q2-qd2;de1=dq1-d_qd1;de2=dq2-d_qd2;e=e1;e2;de=de1;de2;v=13.33;q01=8.98;q02=8.75;g=9.8;D0=v+q01+2*q02*cos(q

39、2) q01+q02*cos(q2); q01+q02*cos(q2) q01;C0=-q02*dq2*sin(q2) -q02*(dq1+dq2)*sin(q2); q02*dq1*sin(q2) 0;G0=15*g*cos(q1)+8.75*g*cos(q1+q2); 8.75*g*cos(q1+q2);dq=dq1;dq2;tol1=D0*(dd_qd-kv*de-kp*e)+C0*dq+G0;d_D=0.2*D0;d_C=0.2*C0;d_G=0.2*G0;d1=2;d2=3;d3=6;d=d1+d2*norm(e1,e2)+d3*norm(de1,de2);%d=20*sin(2*t

40、);20*sin(2*t);f=inv(D0)*(d_D*ddq+d_C*dq+d_G+d);xi=e1;e2;de1;de2;h=zeros(5,1);for j=1:1:5 h(j)=exp(-norm(xi-c(:,j)2/(2*b(j)*b(j);endM=3;if M=1 %Nominal model based controller tol=tol1; elseif M=2 %Modified computed torque controller tol2=-D0*f; tol=tol1+tol2;elseif M=3 %RBF compensated controller th=

41、x(1) x(2) x(3) x(4) x(5);x(6) x(7) x(8) x(9) x(10); fn=th*h; tol2=-D0*fn;tol=tol1+1*tol2;sys(1)=tol(1);sys(2)=tol(2);sys(3)=f(1);sys(4)=fn(1);sys(5)=f(2);sys(6)=fn(2);end程序2 plot.mclose all;figure(1);plot(t,x1(:,1),r,t,x1(:,2),b);xlabel(time(s);ylabel(position tracking for link 1);figure(2);plot(t,x2(:,1),r,t,x2(:,2),b);xlabel(time(s);ylabel(position tracking for link 2);figure(3);plot(t,tol1(:,1),r);xlabel(time(s);ylabel(control input of link 1);3.2 仿真结果:专心-专注-专业

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!