文章目录

  • 前言
  • 一、比赛内容分析
  • 二、作品的机械设计
    • 作品介绍
    • 模型分享
  • 三、电路设计
    • 单片机选择与引脚分配
    • 拓展板的PCB设计
    • 外部电路设计
    • 材料清单
  • 四、代码分享
  • 五、工作过程视频
  • 总结

前言

在完成了第六届起重机大赛之后,有了一些收获,我一直想要把它记录下来。一是为了纪念自己的比赛经历,二是为了给后来的同门留下一点积累。本来想着快些写完,结果一拖再拖,拖了大半年。估计第七届的比赛应该快开始了,也是时候把它完成了。


一、比赛内容分析

举办方在通知里面对比赛内容做了如下描述:设计、制作一台起重机器人(以下简称作品),基于机器视觉, 对固定取物区具有特定颜色及形状标识的搬运物品进行识别,通过自主有序的控制方式将物品从取物区按通行规则搬运到堆码区。

  • 与往届不同,此次比赛要求自主有序,意味着起重机大赛规则再次升级,将不再允许遥控车的存在
  • 机器视觉一词可大可小,最低只要满足识别的要求即可,最高可以用作导航的一部分来实现作品的自主有序

二、作品的机械设计

作品介绍

在经历小型作品的失败之后,决定参考门式起重机的结构,做一个基于轨道的大型作品,力求结构简单,控制方便。最终作品实物如图:

模型分享

1.作品模型文件链接:https://share.weiyun.com/2pI5BKcr

  • 模型装配是使用的SOLIDWORKS2020建立的,采用的是活动装配,可在起重机装配文件下拖动查看。

2.作品整体结构比较简单,复杂部分主要集中在大梁上的子装配动力滑环装配体上,对其做两点说明:下面提到的零件或者子装配命名来源于文件,全部加粗显示

  • 作为一个大型的比赛作品,手臂在大梁(红色箭头所指)上的行程太长,如果使用同步带加上轨道的方式,滑轨不但成本太高,而且还重。搞机械的兄弟想到了一个巧妙的办法,将同步带(文件中绿色部分梁上皮带)平铺拉紧且两端用铆钉(黄色箭头所指)铆接在大梁上,和手臂上的带轮组成齿轮齿条(实际是带轮带条)的结构,再使用一个打印件滑环套住大梁形成局部的轨道,成功省下了轨道的成本和重量,以及一半的同步带长度。

    蓝色部分是由很多个零件使用ab胶粘接起来的滑环装配体,红色箭头和黄色箭头处粘接了M3的螺母。整体的装配关系如爆炸图所示:
  • 手臂上提升的电机特地选择了蜗轮蜗杆电机,因为其自锁的特性,可以轻易将1.1kg的货物保持在某个位置不下落

三、电路设计

单片机选择与引脚分配

此次选择arduino的mega2560作为控制板,理由是上手简单,非官方板售价便宜,各种库还多。引脚功能在开发板正面有简单标记,其他更多功能也可以参照:https://www.xpstem.com/article/10065.

控制板的引脚分配:

  1. 单个编码器减速直流电机+L298N驱动板占用5个引脚,以motor0为例(见下表),引脚26、27、4(4是调速)连接驱动板,引脚2、22采集编码器的数据
  2. 为了缩小拓展板的空间,舵机与行程开关接口通用
  3. 除了串口0全部引出
  4. 为了方便调试,也仍旧引出了遥控器ps2接口
功能 引脚
motor0 26、27、4、2、22
motor1 28、29、5、3、23
motor2 30、31、6、20、24
motor3 32、33、7、21、25
servo(0-5) 8、9、10、11、12、13
uart1 19(RX)and 18(TX)
uart2 17(RX)and 16(TX)
uart3 15(RX)and 14(TX)
PS2 43、45、47、49

拓展板的PCB设计

因为需要用的模块有很多,使用杜邦线接线和故障排查费时费力。某宝现成的拓展板也不完全符合使用要求,而且还很贵,又恰逢嘉立创免费打样活动,于是自己画了一个arduino mega2560拓展板:https://oshwhub.com/tydd1/qi-zhong-ji-tai-sai-zhuan-jie-ban_copy_copy_copy/.

  • 拓展板上只有插在arduino mega2560的排针是在反面焊接,其他的接口、排针、排母都焊接在图示的正面:

  • 四路L298N需要先处理一下,加热拔掉蓝色的电机输出接口和控制电机的所有排针,并在反面全部换成排针重新焊接上,焊接后的反面如图示:

  • 大多数的焊盘都是排针和排母,所以多买一些较长的单排针和单排母剪开使用比买固定规格的要划算

外部电路设计

  • 上半部分是底盘的控制电路,下半部分是手臂的控制电路,手臂使用的两个电机是不同的,一个是普通的减速电机,另一个是蜗轮蜗杆减速电机,由于接口一样所以没做区分。
  • 天蓝色的粗线是简略的画法(例如其中一个限位开关详细的画出,其他的几个就简略了),而电机是有接口的,没必要去单根连线,所以也简略画出
  • OpenMV使用拓展板5V供电,但是实际调试过程中arduino接收数据时缓慢且断断续续,从拓展板引出arduino提供的3.3V引脚飞线过来解决了此问题(实在是不想重新设计pcb了)。

材料清单

控制部分的材料清单链接:https://share.weiyun.com/dJfwkBJQ

  • 不包含用到的各种线材,因为都是从往届遗留中找出来的,也比较好买,就没放进去
  • 也不包含气泵用到的软管和四通,也很好买,就不放进去了

四、代码分享

代码链接:https://share.weiyun.com/QYn7sYry

  • 代码中包括的内容很多就不在这篇写了,我打算另写一篇对代码的思路进行详细的说明,先留个坑。

五、工作过程视频

视频链接:https://www.bilibili.com/video/BV1954y1f7FW/


总结

在此特别感谢本组除了电控什么都行的付同学,建模效率高,想法多,最重要的是活好。
所有资料链接:https://share.weiyun.com/1vzRjFxG
arduino mega2560拓展板:https://oshwhub.com/tydd1/qi-zhong-ji-tai-sai-zhuan-jie-ban_copy_copy_copy/.

【第六届起重机创意大赛国一作品——资料分享】相关推荐

  1. 恭喜筑智建在“第六届建设工程BIM大赛”中,再获两项国家级BIM大奖

    近日,中国建筑业协会公布了"第六届建设工程BIM大赛"结果名单,其中,由筑智建提供BIM咨询的金科照母山项目和化龙桥超高层项目成功获得BIM单项二类成果奖. 本次比赛由中国建筑业协 ...

  2. 物联计算机大赛,“翼灵杯”第七届物联网创意大赛成功举办

    筹备近一个月的"翼灵杯"第七届物联网创意大赛在2019年12月20日晚明理楼B区B306落下帷幕.本次大赛由计算机科学学院学生科技团队--翼灵物联工作室举办,比赛历经20天,大赛初 ...

  3. 第六届蓝桥杯大赛个人赛决赛(C/C++大学B组)

    第六届蓝桥杯大赛个人赛决赛(C/C++大学B组) 第一题 积分之迷(15分) 小明开了个网上商店,卖风铃.共有3个品牌:A,B,C. 为了促销,每件商品都会返固定的积分. 小明开业第一天收到了三笔订单 ...

  4. 第六届蓝桥杯大赛个人赛省赛Java B组真题

    文章目录 第六届蓝桥杯大赛个人赛省赛Java B组真题 1. 三角形面积(结果填空) 2. 立方自变身(结果填空) 3. 三羊献瑞(结果填空) 4. 循环节长度(代码填空) 5. 九数组分数(代码填空 ...

  5. “中能融合杯”第六届工控大赛线上赛部分题总结与复现

    前言 "中能融合杯"第六届工控大赛线上赛已经结束,题目只有杂项题(包括工控题)和逆向题.作为一名Web狗,就只能去做杂项了,杂项题挺容易的,好多都是以前的原题.关卡4的3个题发现应 ...

  6. 第六届“智慧杯“大赛编程思维(C++普及组)赛后解析(详细)

    预计阅读时间:30分钟 前言 第六届"智慧杯"大赛就在前不久结束了,很多人都取得了很好的成绩.当然,由于题目难度每年都在增加,本次大赛有很多人都觉得难,或者发挥失常.后面是我对本次 ...

  7. 【蓝桥杯】第六届蓝桥杯大赛个人赛省赛(软件类) Java大学C组 -题目与答案

    第六届蓝桥杯大赛个人赛省赛(软件类) Java大学C组 -题目与答案 1.结果填空(满分3分) 2.结果填空(满分5分) 3.结果填空(满分9分) 4.代码填空(满分11分) 5.代码填空(满分15分 ...

  8. 第十六届智能车竞赛国赛队伍中节能信标组无线电能接收方案

    §01 无线充电 在 第十六届智能车竞速赛 中,有一组"节能信标组".该组别的队伍车模允许自行设计,并且需要设计无线充电电路,从 比赛信标系统中 获取车模运行所需要的电能. 由于节 ...

  9. 计算机应用设计大赛获奖信息,北京大学第六届“计算机应用设计大赛”圆满落幕...

    6月6日下午,北京大学创新创意系列赛事颁奖典礼在英杰交流中心月光厅举行,会上颁发了计算机应用设计大赛."挑战杯"系列竞赛.数学建模与计算机应用竞赛和"禁毒教育" ...

最新文章

  1. 程序江湖:第十四章 离开让男人成长
  2. c++ char数组和char*
  3. 淘宝文件系统文件映射原理及实现
  4. SRT协议应用于直播CDN,实现200ms以下的低延时、弱网传输
  5. 【Processing日常2】群星1
  6. PHP7内核基础知识之变量类型
  7. 约会安排HDU - 4553
  8. jquery api中文手册
  9. 电容补偿柜容量计算发放
  10. Duckduckgo搜索引擎
  11. 程序员撩妹指南-抖音爆火3D相册
  12. python删除空值的行_python删除列为空的行的实现方法
  13. 数学界“诺奖”阿贝尔奖揭晓,颁给数学与计算机交叉学科,奖金约合575万元...
  14. kettle实现数据增量同步方案
  15. FlyAI小课堂:深度学习论文翻译解析(4):Support Vector Method for Novelty Detection
  16. 人工神经网络原理及应用,人工神经网络详解图
  17. aws cloud services亚马逊云服务分类
  18. metasploit初识|外围情报搜索
  19. 微信小程序 超市购物页面
  20. 设计模式-责任链模式

热门文章

  1. who显示已登录用户信息
  2. C语言 根据经纬度如何获取日落日出时间
  3. 安全合规--47--基于国内法律法规的企业数据合规体系建设经验总结(五)
  4. Linux服务器常见运维性能测试(1)综合跑分unixbench、superbench
  5. EasyRecovery数据恢复软件 恢复了我两年前的照片视频数据
  6. SSRS地图图例嵌入自定义图像显示解决
  7. 【音乐生成】乐谱生成
  8. 名词解释第五讲:ICO众筹
  9. 数字图像处理笔记 第二章 数字图像基础 第一节 人眼视觉特性
  10. java 获取图片的媒体属性,以大疆无人机照片为例