智能手势体感机械臂(基础一)

 一、前言  

 最近在做一款基于手势控制的抓取机械臂,目前完成了一小部分 即用mpu6050 蓝牙控制机械臂实现三自由度运动 ,后续会更新K210目标拾取(基于三位运动学逆解)

二、基本原理

2.1、上位机 

   这里上位机时用的C8T6f103单片机和一块mpu六轴6050和一块蓝牙发送模块,首先在cubemx里面配置,开启串口1,PA8和PB12 作为两个红外传感器,一个用来控制其抓取目标,另一块用来控制其整体的开始和关闭(但是由于我事先没有考虑好硬件部分的分布,所以这两个功能在暂时没加上去,只有简单的手势控制) ,PB9设置pull-up输出连接MPU6050的DSA ,PB8连接mpu6050的SCL

如图:

2.2、代码部分

      这里首先读取mpu6050的各个角的状态 ,如 然后根据读取到的值当yaw小于-30时,用串口传输字符'1',大于30时发送字符'2',roll小于-30时发送'4'大于30发送'5',pitch同理 发送'5'和 '6' ,这个就是代码的核心,省略的数据包传送的麻烦调试 ,直接在上位机上进行处理 ,,但这里需要提醒,串口发送的时候 不能使用重定向printf(),(电脑能显示,但是达不到控制效果)我也不知道为什么,只能用 Transmit函数 ,如图是代码

 2.3、下位机部分

 下位机用的是ZGT6f407,这里用cubemx配置串口,开启串口中断(用于接受上位机传输的数据) ,然后开启了定时器1的三个通道,用于输出pwm波 ,开启了PA4,PA5,PA6三个引脚来输出高低电平,如图

 2.4、代码部分

 这里的核心思路是,根据传输来的信息,来进行不同的反应,比如 当接受到串口的数据'1'时让定时器1的通道1(这里即PE9)输出pwm 通道2(PE11)和通道3(PE13)屏蔽pwm信号,同时PA4输出高电平   当接受的到'2'时就输出低电平,这样就做到了控制一个自由度的方向 其它两个自由度的方向同理 ,如图

 三、视频演示部分

体感机械臂 基础部分

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值