当前位置: 首页 > wzjs >正文

网站admin密码今日最火的新闻

网站admin密码,今日最火的新闻,日本人做的招聘网站,wordpress自动变化文字平面机械臂运动学分析 一 整体概述二 正向三 逆向 一 整体概述 研究步骤: 1 正向:根据所读取的关节处角度,立刻计算出末端坐标,可随时计算得出当前末端坐标值,方便用于计算。 2 逆向:根据末端坐标&#…

平面机械臂运动学分析

  • 一 整体概述
  • 二 正向
  • 三 逆向

一 整体概述

研究步骤:

1 正向:根据所读取的关节处角度,立刻计算出末端坐标,可随时计算得出当前末端坐标值,方便用于计算。

2 逆向:根据末端坐标,计算出关节角度的值,已知终点坐标,计算出各关节角度写入,以到达指定位置。

3 规划路径曲线点,设置曲线路径,使各关节移动丝滑,稳定、快速的到达指定位置。

4 误差补偿,通过PID等算法,补偿摩擦力重力等环境因素带来的影响,优化精度。


二 正向

1 简介:根据已知角度杆长,计算得出机械臂末端位置的位置变化,角度可由传感器采集。

2 效果:输入各个关节的角度值,可以计算出机械臂末端执行器的位置和姿态。

3 几何分析 :

在这里插入图片描述

4 计算方法
在这里插入图片描述

5 matlab 模拟测试

在这里插入图片描述
matlab测试代码:

function forward_direction
%----------------------1 初始参数设置---------------------------l1=50; l2=50; l3=50; %已知信息:臂长degree1 = deg2rad(0);%各关节角度degree2 = deg2rad(0);degree3 = deg2rad(0);%求出4个点坐标bx = l1*sin(degree1); % B点坐标,A为(0,0)by = l1*cos(degree1);cx = bx+l2*sin(degree1+degree2);% C点坐标cy = by+l2*cos(degree1+degree2);dx = cx+l3*sin(degree1+degree2+degree3);% D点坐标dy = cy+l3*cos(degree1+degree2+degree3);
%-----------------------2初始图像设置---------------------------x = linspace(0, 150, 1500);  % X轴范围包含所有分段y = zeros(size(x));         % 初始化Y数组figure('Position', [0 0 600 600]);axe = axes('Position', [0.1 0.3 0.8 0.6]);sport_plot = plot(x,y,'.', 'LineWidth', 2);update();%计算初始参数点,设置分段函数set(sport_plot, 'YData', y);axis('equal',[0 200 -150 150]); % 设置坐标轴范围 [x1,x2],[y1,y2]title('正向运动学分析'); % 标题xlabel('X坐标'); % x轴标签ylabel('Y坐标'); % y轴标签grid on; % 显示网格
%-------------------------3 更新参数点,设置分段函数----------------function [] =update()bx = l1*sin(degree1); % B点坐标,A为(0,0)by = l1*cos(degree1);cx = bx+l2*sin(degree1+degree2);% C点坐标cy = by+l2*cos(degree1+degree2);dx = cx+l3*sin(degree1+degree2+degree3);% D点坐标dy = cy+l3*cos(degree1+degree2+degree3);y = zeros(size(x));%x = linspace(0, dx, 1500);idx1 = (x >= 0 ) & (x <= bx);idx2 = (x >= bx) & (x <=cx); idx3 = (x >= cx) & (x <=dx);idx4 = x >dx;y(idx1) = tan(pi/2-degree1)*x(idx1);         % 注意使用 .^y(idx2) = tan(pi/2-degree1-degree2)*(x(idx2)-bx)+by;    % 线性计算y(idx3) = tan(pi/2-degree1-degree2-degree3)*(x(idx3)-cx)+cy;y(idx4) = 999;title(axe, ['末端坐标(x,y)=(', num2str(dx), ',', num2str(dy), ')']);end
%--------------------------4 滑块-----------------------------------------% 添加degree1滑块uicontrol('Style', 'slider', ...'Position', [190 110 200 20], ...'Min', 0, 'Max', 180, 'Value', degree1, ...'Callback', @updatedegree1);uicontrol('Style', 'text', ...'Position', [140 110 42 15], ...'String', 'degree1');% 回调函数1function updatedegree1(hObj, ~)tem = hObj.Value; degree1=deg2rad(hObj.Value);%更新角度update();set(sport_plot, 'YData', y);uicontrol('Style','text','String',num2str(tem),'Position',[400 110 40 15]);end% 添加degree2滑块uicontrol('Style', 'slider', ...'Position', [190 60 200 20], ...'Min', 0, 'Max', 180, 'Value', degree2, ...'Callback', @updatedegree2);uicontrol('Style', 'text', ...'Position', [140 60 42 15], ...'String', 'degree2');% 回调函数1function updatedegree2(hObj, ~)tem = hObj.Value; degree2=deg2rad(hObj.Value);%更新角度update();set(sport_plot, 'YData', y);uicontrol('Style','text','String',num2str(tem),'Position',[400 60 40 15]);end% 添加degree3滑块uicontrol('Style', 'slider', ...'Position', [190 13 200 20], ...'Min', 0, 'Max', 180, 'Value', degree3, ...'Callback', @updatedegree3);uicontrol('Style', 'text', ...'Position', [140 13 42 15], ...'String', 'degree3');% 回调函数1function updatedegree3(hObj, ~)tem = hObj.Value; degree3=deg2rad(hObj.Value);%更新角度update();set(sport_plot, 'YData', y);uicontrol('Style','text','String',num2str(tem),'Position',[400 13 40 15]);end
%------------------------------5 文本框输入------------------------------uicontrol('Style', 'text', ...'Position', [450 430 100 20], ...'String', 'set 1:');uicontrol('Style', 'edit', ...'Position', [450 400 100 30], ...'String', '0', ...'Callback', @setdegree1);% 定义回调函数function setdegree1(src, ~)% 获取输入值input_str = get(src, 'String');input_num = str2double(input_str);% 验证输入if isnan(input_num)errordlg('请输入有效数字!', '输入错误');return;end% 更新全局变量degree1 = deg2rad(input_num);update();set(sport_plot, 'YData', y);enduicontrol('Style', 'text', ...'Position', [450 370 100 20], ...'String', 'set 2:');uicontrol('Style', 'edit', ...'Position', [450 340 100 30], ...'String', '0', ...'Callback', @setdegree2);% 定义回调函数function setdegree2(src, ~)% 获取输入值input_str = get(src, 'String');input_num = str2double(input_str);% 验证输入if isnan(input_num)errordlg('请输入有效数字!', '输入错误');return;end% 更新全局变量degree2 = deg2rad(input_num);update();set(sport_plot, 'YData', y);enduicontrol('Style', 'text', ...'Position', [450 310 100 20], ...'String', 'set 3:');uicontrol('Style', 'edit', ...'Position', [450 280 100 30], ...'String', '0', ...'Callback', @setdegree3);% 定义回调函数function setdegree3(src, ~)% 获取输入值input_str = get(src, 'String');input_num = str2double(input_str);% 验证输入if isnan(input_num)errordlg('请输入有效数字!', '输入错误');return;end% 更新全局变量degree3 = deg2rad(input_num);update();set(sport_plot, 'YData', y);endend

几何法正向分析比较简单,且此处仅以二维为例


三 逆向

(待补充)

http://www.dtcms.com/wzjs/384155.html

相关文章:

  • 企业网站推广属于付费推广吗服务器ip域名解析
  • 小说网站防盗做的最好的是小程序开发软件
  • 请简述网站建设的一般流程谷歌浏览器引擎入口
  • 如何把字体导入wordpressseo+网站排名
  • 福田做商城网站建设哪家公司靠谱免费发布广告信息网
  • 网站建设费用是多少钱怎样做一个产品营销方案
  • 免费建立网站论坛青岛seo博客
  • 衡水专业网站制作微信朋友圈广告投放价格表
  • 中小学做课题研究的网站新媒体运营怎么自学
  • 网站建设与管理 教材网站搭建免费
  • 网站构造百度智能建站平台
  • 广告网站建设及推广百度竞价推广方案范文
  • 网站建设最新签约下载app到手机上并安装
  • 政府网站集约化建设情况报告看广告收益的正规平台
  • asp服装商城网站源码高端品牌网站建设
  • 制作网站的程序seo交互论坛
  • 房地产门户百度seo2022新算法更新
  • wap手机网站制作郑州seo排名优化公司
  • 湛江赤坎孵化器网站建设招聘新手小白怎么做跨境电商
  • 做英文网站需要多长时间上海的重大新闻
  • 课程网站建设总体情况企业培训系统app
  • 建湖网站设计推广手段
  • 创建网站用什么语言b2b网站
  • HTML可以做彩票网站吗快速优化关键词排名
  • 买表的网站seo是什么意思啊
  • net网站开发环境青岛百度网站排名优化
  • 安徽六安职业技术学院衡阳seo外包
  • 网站地图样本什么是软文推广
  • 和平网站建设优化seo福建省人民政府
  • 东莞专业网站设计专业服务广点通和腾讯朋友圈广告区别