找回密码
 立即注册
搜索
查看: 3041|回复: 1

机械臂逆运动学代码问题

[复制链接]

1

主题

1

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2022-3-28 20:32:19 | 显示全部楼层 |阅读模式
本帖最后由 redmin 于 2022-3-29 10:57 编辑
  1. /****************************************************************
  2. 函数功能:数学模型
  3. 入口参数:末端执行器位姿态
  4. 返回 值:无
  5. **************************************************************/
  6. void Kinematic_Analysis(float x,float y,float Beta,float Alpha)
  7. {
  8. float m,n,k,a,b,c,theta1,theta2,theta3,s1ps2;
  9. m=l2*cos(Alpha)-x;
  10. n=l2*sin(Alpha)-y;
  11. k=(l1*l1-l0*l0-m*m-n*n)/2/l0;
  12. a=m*m+n*n;
  13. b=-2*n*k;
  14. c=k*k-m*m;
  15. theta1=(-b+sqrt(b*b-4*a*c))/2/a;
  16. theta1=asin(theta1)*180/PI;
  17. if(theta1>90)theta1=90;
  18. if(theta1<-90)theta1=-90;
  19. k=(l0*l0-l1*l1-m*m-n*n)/2/l1;
  20. a=m*m+n*n;
  21. b=-2*n*k;
  22. c=k*k-m*m;
  23. s1ps2=(-b-sqrt(b*b-4*a*c))/2/a;
  24. 4
  25. s1ps2=asin(s1ps2)*180/PI;
  26. if(s1ps2>90)theta2=90;
  27. if(s1ps2<-90)theta2=-90;
  28. theta2=s1ps2-theta1;
  29. if(theta2>90)theta2=90;
  30. if(theta2<-90)theta2=-90;
  31. theta3=Alpha*180/PI-theta1-theta2;
  32. if(theta3>90)theta3=90;
  33. if(theta3<-90)theta3=-90;
  34. Target1 = 750-(Beta)*Ratio;
  35. Target2 = 735+(theta1-90)*Ratio;
  36. Target3 = 717-(theta2)*Ratio;
  37. Target4 = 702-(theta3)*Ratio;;
  38. Target5 = 750;
  39. }
复制代码

Target1 = 750-(Beta)*Ratio;Target2 = 735+(theta1-90)*Ratio;
Target3 = 717-(theta2)*Ratio;
Target4 = 702-(theta3)*Ratio;;file:///C:\Users\17462\Documents\Tencent Files\1746285938\Image\C2C\$}6%K(BT79YZOM5NMMA%R6G.png
Target5 = 750
请问这几行代码什么意思?beta和ratio都是什么值?

回复

使用道具 举报

2

主题

428

帖子

1307

积分

金牌会员

Rank: 6Rank: 6

积分
1307

论坛元老

发表于 2022-3-31 08:58:33 | 显示全部楼层
机械臂逆解过程的详细推导在资料包中的这个位置会有文档详细说明,你所问的这个函数就在这个文档中
9B8BF706-473F-4eab-A720-473D6B0B4A28.png
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

粤ICP备20017043号|小黑屋|手机版|Archiver|轮趣科技(东莞)有限公司  

GMT+8, 2024-5-3 02:06 , Processed in 0.059234 second(s), 25 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表