资源描述:
《matlab实现puma机器人工作空间》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、实用标准文案matlab实现PUMA机器人的工作空间PUMA机器人的工作空间主要有前3个关节决定,后3个关节决定姿态。程序编写好了,请看运行结果!步长为20度步长为10度文档实用标准文案步长为5度步长为3度步长为2度文档实用标准文案步长为5度时的XY平面步长为5度时的XZ,YZ平面文档实用标准文案编写时的界面,为运行源代码如下:functionvarargout=mypuma(varargin)gui_Singleton=1;gui_State=struct('gui_Name',mfilename,...'gui_Singleton',gui_Singleton,..
2、.文档实用标准文案'gui_OpeningFcn',@mypuma_OpeningFcn,...'gui_OutputFcn',@mypuma_OutputFcn,...'gui_LayoutFcn',[],...'gui_Callback',[]);ifnargin&&ischar(varargin{1})gui_State.gui_Callback=str2func(varargin{1});endifnargout[varargout{1:nargout}]=gui_mainfcn(gui_State,varargin{:});elsegui_mainfcn(gu
3、i_State,varargin{:});endhandles.output=hObject;guidata(hObject,handles);functionvarargout=mypuma_OutputFcn(hObject,eventdata,handles)varargout{1}=handles.output;%步长为20度时的工作空间,2个for循环就搞定functionpushbutton1_Callback(hObject,eventdata,handles)holdoff;fora=(-160:20:160)*pi/180文档实用标准文案forb=(-
4、225:20:45)*pi/180x=431.8*cos(b)*cos(a)-149.09*sin(a);y=431.8*cos(b)*sin(a)+cos(a)*149.09;z=-431.8*sin(b);plot3(x,y,z,'b.');holdon;gridon;endendtitle('PUMA56020deg08S008103');%步长10度时的工作空间,2个for循环就搞定functionpushbutton2_Callback(hObject,eventdata,handles)holdoff;a2=431.8;d2=149.09;fora=(-16
5、0:10:160)*pi/180forb=(-225:10:45)*pi/180x=431.8*cos(b)*cos(a)-149.09*sin(a);y=431.8*cos(b)*sin(a)+cos(a)*149.09;z=-431.8*sin(b);plot3(x,y,z,'r.');holdon;gridon;文档实用标准文案endendtitle('PUMA56010deg08S008103');%步长为5度时的工作空间,2个for循环就搞定functionpushbutton3_Callback(hObject,eventdata,handles)holdo
6、ff;a2=431.8;d2=149.09;fora=(-160:5:160)*pi/180forb=(-225:5:45)*pi/180x=431.8*cos(b)*cos(a)-149.09*sin(a);y=431.8*cos(b)*sin(a)+cos(a)*149.09;z=-431.8*sin(b);plot3(x,y,z,'g.');holdon;gridon;endendtitle('PUMA5605deg08S008103');%步长为3度时的工作空间,2个for循环就搞定functionpushbutton7_Callback(hObject,eve
7、ntdata,handles)holdoff;文档实用标准文案fora=(-160:3:160)*pi/180forb=(-225:3:45)*pi/180x=431.8*cos(b)*cos(a)-149.09*sin(a);y=431.8*cos(b)*sin(a)+cos(a)*149.09;z=-431.8*sin(b);plot3(x,y,z,'b.');holdon;gridon;endendtitle('PUMA5603deg08S008103');%步长为2度时的工作空间,2个for循环就搞定functionpushbut