Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
初级会员
注册日期: 2020-08-31
帖子: 1
声望力: 0 ![]() |
![]()
各位老师,我在做机械臂导纳控制仿真的时候,要求期望的力是5N,环境位置固定在Xe=0.1(水平面),机械臂末端的初始点在Xc=0.2(环境上方),按照论文里的仿真结果,应该是在仿真开始的时候机械臂向下运动,接触环境面,但是我在仿真的时候出现了先向上运动的情况,想问下是哪里出错了
参考轨迹的程序: 代码:
function [sys,x0,str,ts] = reference_trajectory(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=[]; otherwise error(['Unhandled flag = ',num2str(flag)]); end function [sys,x0,str,ts]=mdlInitializeSizes sizes = simsizes; sizes.NumContStates = 0; sizes.NumDiscStates = 0; sizes.NumOutputs = 3;%环境位置\一阶导数\二阶导数 sizes.NumInputs = 0; sizes.DirFeedthrough = 1; sizes.NumSampleTimes = 1; sys = simsizes(sizes); x0 = []; str = []; ts = [0 0]; function sys=mdlOutputs(t,x,u) xe=0.1;%参考位置% dxe=0;%参考速度% ddxe=0;%参考加速度% sys(1)=xe; sys(2)=dxe; sys(3)=ddxe; |
![]() |
![]() |