matleap-master的使用(3)

1、前记:上接matleap-master的使用(1)matleap-master的使用(2),继续使用leap motion控制在MATLAB环境下的机器人                    模型。其实思路也是一样的,将leap motion获得的手掌空间坐标传递给机器人逆运动学公式中。

2、问题:

      1)leap motion的坐标系怎么转换到机器人坐标系中,这一部分我没有细致的去看开发者文档,文档中可能有更好的方式。                    另外matleap-master的使用(2)中的坐标变化也很粗略,没有很正确的去使用变换。

      2)第三篇其实是我最早接触MATLAB做机器人的一个实例,可以在附加功能中下载学习。是很好的一篇可以学习机器人正逆运动学的例子,从中也可以接触到GUI的一些设计和MATLAB如何将CAD数据(PUMA 762三维模型)可视化的。其实我之前一直不明白正逆运动学是如何控制机器人的,都是在学习了这个例子才有所顿悟的。像MATLAB简单机器人视觉控制(仿真2)中的逆运动学代码也是直接来源于该例子,值得下载来看看学习!

      3)下载方式,打开附加功能选项,输入PUMA然后下载如下。

3、后记:最后回到用leap motion来控制PUMA762 机器人。方式编写一个按钮控件,点击时回调以下代码。

     控件代码:

LeapR = uicontrol(fig_1,'String','LeapMotion控制','callback',@Leap_Motion_button_press,...
    'Position',[530 5 100 20]);

 

    回调代码:

%%Leap Motion 控制
function Leap_Motion_button_press(h,dummy)
    while 1
  metaData =  matleap(1);                       %Get data
  if ~isempty(metaData.pointables)              %Check data
      x=metaData.pointables(1).position(1);
      y=metaData.pointables(1).position(2);
      z=metaData.pointables(1).position(3);
      x = round(x);                             %Rounding x,y,z
      y = round(y);
      z = round(z);
            Px=z;
            Py=x;
            Pz=y+500; 
    [theta1,theta2,theta3,theta4,theta5,theta6] = PumaIK(Px,Py,Pz,0,0,0,0,0,0);
    pumaANI(theta1,theta2,theta3-180,theta4,theta5,theta6,20,'y')  
    
  end              
    end
end

  效果:

  

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JianRobSim

嘤嘤其名,求其友声!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值