我们是来自中北大学的参赛队伍(焦道坤,赵之岑,李炳金),同时参加了智能车和电赛,并在2019年全国电子设计竞赛H题组获得国一的成绩,感谢达尔闻邀约。
应标题,我的答案是:智能车——
虽然连续两年做智能车都没取得满意的成绩,但是我还是力推,因为今年电赛国一的成绩离不开做车2年的“磨练”。在2019电赛中用到的所有的硬件知识,都得益于智能车的经验。有人说智能车是情怀,电赛是经历,作为两赛都参加的选手,这一点感触颇深。所以我将全部心得写在文末,给不知道参加什么比赛的同学一些建议。

由于是刚做完智能车直接参加电赛,因此采纳的是NXP的平台,建议大家时间充裕可以多学学STM32,资料丰富,第三方支持多,价格便宜。

系统方案

本系统包括MK66FX1M0VLQ18单片机,MT9V032摄像头模块,线圈式电磁炮,升压模块,高压大容量电容,两轴舵机云台,电磁继电器模块。高速摄像头配合单片机实时采集头像,寻找引导标识,在通过激光雷达获取距离,解算发射角度与发射电压,达到最准精度,并设计了简单的人机交互界面,实时调试参数。装置整体结构简洁、系统稳定,能够实现预期任务要求。

1、系统结构
模拟曲线电磁炮系统是一个高压的,高精度的控制系统,通过控制舵机云台转动与电磁炮的电压来控制射击精度,因此安全与稳定同样重要。稳定机械结构是提升射击精度稳定的基础,因此我们使用机械臂改装云台,铁质底座与双轴大扭矩舵机保证了炮弹在发射时机械结构的稳定,并使用两个电磁继电器模块将整个电路强电与弱电隔离,既保护操作人员也保护微控制器。

2、方案选择
(1) 电磁炮的结构
我在这次比赛总共是见过三种方案:
方案一:轨道炮:弹丸速度快,射程远,但耗能较大,成本比较高,效率低不易搭建。
方案二:升压线圈炮:模型简单易建,效率高。通过一个升压模块把12V升到200-300V达到发射所需要的能量。
方案三:两级加速的线圈炮:在两级之前加光电传感器,这样就不需要进行升压,直接通过市电220V就可以满足要求,但是根据最后测试结果来看,误差还是比较大的。
最开始没想那么多,就查了一份电路图,淘宝上的模型就是升压线圈炮,就一个方案一直这样做下去了。
(2) 舵机云台
我们这次是使用的舵机,在比赛过程中我也遇见了使用步进电机的,其实两个都差不多,我们是觉得步进电机程序好写,手上正好准备了舵机云台。大家做的时候随便选一个就行了。
做控制就是越简单越好,我们用舵机云台,找一个角度对应关系就可以了。
3、控制方案

线圈炮的控制策略就两种方案,要么控制电压,要么控制俯仰角,要么你两个都用,不过不推荐两个都用,多一个参数,曲线更难拟合,用一个就行了。

方案一:通过控制电容的充电电压来控制发射距离,假定电容所储存的能量全部传递给了炮弹,由电容的能量计算公式E=1/2*C*U²=1/2*m*v²和距离公式x=V²*sin2θ可得,发射距离x与充电电压U为二次方的的关系,但由于电解电容会有自放电的特性,导致每一次发射时的电压并不完全相同,还会随着电容寿命减少而使误差变大。
方案二:通过控制发射角度来控制发射距离,假定电容所储存的能量全部传递给了炮弹,由距离公式x=V²*sin2θ可得,发射距离x与发射角度θ为正弦函数关系,并且由于题目要求发射距离较远为2m—3m,所以发射距离与发射角度几乎为线性关系。在使用舵机的过程中,我们发现舵机转动的角度与给定的PWM波的占空比几乎是线性关系,在电压不变的情况下,角度又与发射的距离呈现线性关系。
所以我们的控制方案为控制发射角度构造拟合函数,从而实现电磁炮精准发射。还有一点比较重要,电磁炮的精准度和电容有很大关系,我们实验室另外一组就是选的电容就很不好,自放电速度特别快,同样电压同样角度,两次发射出去能差十几厘米,这样就没办法拟合曲线。
所以大家在选电容的时候要尽量测一测选一个好电容,能省去很多麻烦。
还有一个问题是炮弹的选择,在发炮的过程中由于强磁场的关系,炮弹会有磁化现象,所有大家选炮弹的时候尽量选一个强磁材料,我们用的就是多功能螺丝刀套装盒里的螺丝刀头,它基本上不怎么会被磁化,可以打几个小时才冲一下磁,我见其他几组有好多用钢球的,同样电压同样角度打出去两次都有较大误差或者打几次就得换弹,我们每次都打同一个螺丝刀头,省了很多事。并且螺丝刀头上的条纹也使炮弹的稳定性大大增强。
理论分析与计算
1、电容容量计算与选择
由于我们使用高压大容量电容对线圈进行快速充放电,使用升压模块对电容充电后,利用电容对线圈瞬间放电产生的强磁场,驱动电磁材料进行发射,若忽略线圈内部损耗,炮弹初始能量为:

E=1/2*C*U^2=1/2*Li*i²
可得,电容的电压和容值越大,炮弹的初始能量越大,经过反复实验,我们测得450V/220uf电容能够较好的满足我们的需求。
2、炮弹射程计算
在对曲线电磁炮建立物理和数学模型后,参考相关文献后,我们发现炮弹在炮筒内为直线运动,离开炮管后的运动曲线为抛物线。

电路与程序设计

1、电路的设计

我们就是直接用飞卡的板子改装的,删掉了电机接口,增加了ADC和舵机接口,大家不要学我们,该学STM32还是得学,恩智浦的芯片做嵌入式还是有很多缺点的。

主控系统总体设计

电磁炮子系统电路原理图

2、程序结构与设计

(1)程序功能描述与设计思路
由于引导标识与靶标之间的位置关系固定,所以,可以通过确定引导标识位置来换算出靶标位置。由灰度摄像头返回其所拍到图像区的灰度值,区分并计算引导标识与其背景的间类均方差值,从而拟合出引导标识边缘,及其相对背景的水平角度参数信息,再由激光测距传感器,返回其与炮台间的垂直距离,经拟合的运动曲线及欧拉空间角转换,精确得到靶标位置。
(2)程序流程图

主程序流程图

电磁炮子系统流程图
心得体会

1)还是我一直强调的,做控制很多时候都不是在做控制而是做结构,做电赛更是,第一天就是搭结构,从上上届的风力摆,上届的板球系统都可以看出来,没有好的结构是肯定做不出来的。

2)关于电赛我们准备的也不多,就是智能车华北赛回来做了做前年的板球,如果非要让我给小白指导的话,我就推荐大家做智能车,我所有的硬件知识都是在智能车中学到的(虽然比了两年就拿了个华北赛区的三等奖,哭唧唧),做完智能车你真的就会觉得国赛这都是小菜一碟,再难调能有车难调?再心态爆炸也没有比赛时一道上帝之光爆炸。
3)最后就是四天三夜的比赛让我感到电赛就是比的一个坚持和耐力,在这么短的时间里解决一个前所未有的难题真的是什么问题都会遇到,我们调的第二天连烧两块核心板都感觉自己肯定凉了,最后我拖着我队友一直做下去才会有最后的成绩,所以希望大家在学习和作比赛的过程中一定不要放弃。
4)我看还有很多同学对要不要提前画板子有疑问,我觉得可以画,我就是提前画好,反正每年控制都是那几个器件,把adc,舵机,电机,iic,屏幕口都画好,题目下来了直接搭配就行了,也免得用杜邦线,感觉挺不稳定的。电赛要搬来搬去,稳定才是最重要的。
最后祝大家学习生活都能顺心如意,各种大赛能够拿奖拿到手软。
END

往期电赛文章合集

 

//end
若觉得文章不错,转发分享,也是我们继续更新的动力。
5T资源大放送!包括但不限于:C/C++,Linux,Python,Java,PHP,人工智能,PCB、FPGA、DSP、labview、单片机、等等
在公众号内回复「更多资源」,即可免费获取,期待你的关注~长按识别图中二维码关注

参加智能车大赛还是电赛?在做电磁炮中我找到了答案相关推荐

  1. “大一新生如何参加智能车比赛”帖子回复

      在论坛水了两三年了,见到了不少大佬非常厉害的开源设计,也算是这个论坛( ZNCZZ )的忠实受益者之一.   这篇帖子是搬运我在知乎一个问题,"大一新生如何参加智能车比赛"下面 ...

  2. 智能车大赛AI视觉组培训第一弹——基础篇

    智能车大赛AI视觉组培训第一弹: ▌基础篇 1.培训简介 ■时间安排: 2021年03月18日 14:00 ■内容简介: 由恩智浦赞助的AI视觉组,今年由于把人工智能应用在智能车竞赛中,使得难度提升了 ...

  3. 智能车大赛AI视觉组参考答案

      礼让动物采摘水果--最近, 智能车大赛AI视觉组 的题目已经发布,我们先为大家探探路.   前一期,逐飞科技给大家带来了一篇开幕大作: 智能车竞赛,AI视觉组赛题浅析 ,对该组别的核心赛题任务进行 ...

  4. 恩智浦智能车大赛2020_内蒙古科技大学第九届智能车大赛校内公开赛总决赛

    为了激发学生的创新意识,提高学生的动手能力,培养团队合作意识,秉承"实践源于真知,创新放飞梦想"的思想.2020年12月6日,内蒙古科技大学第九届智能车大赛总决赛如约而至.本次大赛 ...

  5. 恩智浦智能车大赛2020_我院第十三届“恩智浦”杯智能车校内选拔赛宣讲会顺利举行...

    2020年11月28日9:00,第十三届"恩智浦"杯智能车校内选拔赛宣讲会在长安大学北校区明远2201教室成功举行. 到场嘉宾 本次活动由我院大学生科技创新创业协会智能车部承办.本 ...

  6. 智能车大赛ROS仿真和基于yolo识别物体(仿真实现2019年室外光电创意组比赛)

    目录 一.准备工作 1.创建racecar_ws和src文件夹 2.初始化工作空间 3.克隆程序并编译 二.开始仿真 1.建立地图 2.启动仿真 三.开始导航 1.启动导航和环境地图 2.启动rviz ...

  7. 听说你是参加智能车比赛的?

    问:我想问问,你们参加智能车竞赛同学都是学什么专业的? 答:什么专业都有,但基本上都和"自动化"有关系. 像什么电气自动化.机械自动化.化工自动化.仪器仪表自动化.设计自动化.说白 ...

  8. 2019年大学生智能车大赛室外光电组+在ROS下搭建仿真模拟环境,编程控制小车完成定位导航仿真

    2019年大学生智能车大赛室外光电组+在ROS下搭建仿真模拟环境,编程控制小车完成定位导航仿真 一.前言 二.准备工作 1.创建工作空间 2.下载racecar源代码包,并编译工程 三.启动仿真 1. ...

  9. 2019年大学生智能车大赛室外光电组+在ROS下搭建仿真模拟环境,编程控制小车,按照给定赛道完成比赛

    大学生智能车大赛室外光电组,在ROS下搭建仿真模拟环境 一.前言 二.效果图 三.准备工作 [1.在Ubuntu上安装ROS Kinetic](https://blog.csdn.net/qq_425 ...

最新文章

  1. python——全局变量和局部变量
  2. Oozie JMS通知消息实现--根据作业ID来过滤消息
  3. 创建QT项目只有一个pro文件
  4. java-JSON: Expected value at 1:0 错误
  5. mysqldump备份(全量+增量)
  6. cython加密代码python_python通过cython加密代码
  7. MySql(四):备份与恢复
  8. 隐马尔可夫模型通俗导论
  9. 如何把Access中数据导入Mysql中 (转)
  10. Scala基本类型及操作、程序控制结构
  11. cie色度图matlab,带你解读 CIE1931色度图
  12. mac10.15切换大小写指示灯不亮
  13. mmdetection中使用训练好的模型单张图片推理并保存到文件夹
  14. [预推免]——中科院计算所
  15. 第一章概述-------第一节--1.3互联网的组成
  16. 基于飞桨实现高光谱影像和全色影像融合
  17. 【基于动态内存+文件操作】通讯录管理系统
  18. V-Play 跨平台Game、App开发框架
  19. 解决TypeError:Cannot read properties of undefined并深入解读TypeError错误类型
  20. 动态规划-- 数组最大不连续递增子序列

热门文章

  1. 如何获取Javascript module metadata的parent module
  2. S/4HANA Product edit button - draft node
  3. CRM Fiori pipeline应用的背景色问题
  4. Enterprise search - Build Search dropdown list - cache issue
  5. Java static initialization研究
  6. SAP CRM HANA report模型的数据库存储表
  7. 找出SAP OData service出错根源的小技巧
  8. python requests库api_Python+requests库发送接口入参为xml格式的接口请求
  9. 不同平台上安装python是一样的吗_python3 在不同操作系统安装第三方库方法
  10. esp8266是linux系统吗,ESP8266 Linux开发环境搭建