羽毛球机器人

项目介绍

  粤港机器人学院是由计算机、自动化、信息工程,机械制造及其自动化,应用数学、工业设计六个专业联合创办的特色学院。在这个学期里,我们做出了四个机器人,分别是四足机器人、爬行机器人、四轮抛兽骨机器人和羽毛球机器人。
  我参与的是羽毛球机器人项目,并担任了本项目的项目负责人。我们团队一共七个人,分设机械组,视觉组,硬件电路组和软件电控组。经过一个学期的工作与配合, 最后期末考核的时候我们的机器人达到了击球10中9的命中率,获得了100分的评分,很高兴最后我们团队做出来的机器人成功地完成各项指标。

以下是我们团队和机器人的合影展示:

机器人学院合影

在这里插入图片描述

羽毛球机器人3D立体效果图

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

调试与演示视频

定位

挥拍

运动

击球

遇到的问题


羽毛球拍角度定位问题:

问题描述:
  由于用于挥拍的RM3508电机通过can通讯中断反馈回来的角度值(0-8191)只是减速之前的转子机械位置,但是这个电机具有约19:1的减速比,也就是说,电机要转19.2圈球拍才转一圈。问题是如何根据仅有的一个转子反馈角度值,来判断球拍实时的位置呢?
解决方案:
  方案一:在球拍的转轴切面加一个绝对式编码器,可以做到反馈实时位置。
  方案二:在can中断函数里对反馈回来的角度值进行判断处理,算出减速之后的角度。
  (我们采用方案二,能用算法解决的事情就不用机械和硬件解决,哈哈)
具体做法:
  ① 开机前手动将球拍转至固定角度,以单片机上电瞬间球拍所在的转面的角度值为0。
  ② 设置电调的角度反馈的CAN中断函数触发周期为1ms(实际场景需要这么快实时性才好)。
  ③ 对比前后两次的角度反馈值,即可知道两次角度的增减量是多少了。(基于一个事实:一个can中断收发函数的周期内(1ms左右),以rm3508转子的最大瞬时转速8000转/分钟算,一个can收发周期电机转子角度值变化范围应是在-2/158192至2/158192里)
  ④ 采用增量式的算法,累加累加上上次的角度值和这次的角度值的变化,就可以做到实时记录球拍的位置了。
在这里插入图片描述
优缺点评估:
  这个挥拍的定位方法算法比较麻烦,需要在can中断中不断执行较多的逻辑运算,比较浪费软件资源,另外在初始化的时候需要人手去辅助定位,比较麻烦。但是所用硬件资源少,成本低,并且能达到预期的定位效果。

总结

  1. 在这个项目中,我主要负责嵌入式软件电控部分工作,包括程序的系统框架、羽毛球机器人的定位、运动、还有通讯等各个模块的功能实现。主要涉及到的内容如下:

  ① 基于STM32F407旗舰开发板+FreeRTOS实时操作系统驱动控制各模块。
  ② 用ESP8266 wifi模块与上位机通讯,实现实时收发双目视觉算得的羽毛球落点时间坐标数据。
  ③ 基于六轴加速度传感器和正交编码器的全场定位模块,实现机器人精确定位。
  ④ 用CAN总线与电机电调通讯,采用双闭环PID控制算法使电机快速达到预想速度。
  ⑤ 构建三轮底盘的运动学数学模型,优化坐标系算法,使机器人精确运动至击球点。

  1. 整个项目下来我的收获还是很大的。除了知识能力的提升,我还学习到了如何与团队成员沟通合作、如何更加有效率地去执行安排的任务,我觉得这是一段非常宝贵的经验。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值