2019电赛总结(一)

文章目录

  • 2019电赛总结(一)
    • 4 那之前
    • 5 电赛初期
    • 6 电赛中期
    • 7 电赛强化练习
    • 8 电赛预热阶段8月初
    • 9 那以后
4 那之前

2019电赛总结(序)

5 电赛初期

6月初,我基本上把PID和STM32调通,配合队友搭建的小车,加上一个超声波的传感器,开始学着调PID。后续也跟进了一些其他的视频,以及文档,把PID理解深化了一些。
其实电机输出无非两种,一种是像风力摆一样,0->工作,另一种是小车一样,常速->变速以实现差速转向,舵机其实也是,90°->其他角度。

但是,问题开始渐渐露出,队友的事情远不止我想的那么少。每个人都有自己的安排,我们无法安排好别人的时间。我一直以为队友在学STM32,事实上,别人在为了保研而努力复习,在为了90还是91而刻苦。对于我而言,80分足以,多余的部分,竞赛加分他不香吗?(其实我并没有保研的希望,只是想在大学里拿下一些奖项,也算无悔的青春)获奖就可以加0.1-0.3的GPA。可他又想竞赛还想拿到很高的成绩加GPA,怎么可能兼得呢!?有那么一刻我的心还是拔凉拔凉的。搞比赛都不能一心一意,何况我们只有三个月不到的时间,不破釜沉舟,我们怎么可能拿到奖励?

我们之间开始有了争执,因为能力实在是太菜,如果提前一年准备电赛,再菜也能慢慢修炼成大佬。可是三个月不到,怎么可能。作为我自己,已然全力以赴,为了这一次想拼一把,但是队友的所作所为让我心里冒起了凉气。

我并非有意冒犯追求成绩的同学。竞赛当然是给成绩锦上添花,可以没有。**但是在找队友的时候,一定要想清楚为何参加比赛,否则,几个人的志向不同,比赛很难做下去。**对于我们三个月零基础上电赛,真的是少见了吧。不得不投入更多的时间去训练。

一开始我打算6月下旬做风力摆,当时已经从网上找到了很多的资料,也认真研读了代码,各种准备,但是,很可惜,直到期末结束,7月中旬,才真真正正做出了风力摆。6月下旬斗志不佳,整个团队都很涣散,所以低迷直到期末考试结束。这期间我基本完成了32和pid的学习,看了一些四元数(欧拉角,MPU6050用到),玩了下陀螺仪(匿名四轴的上位机软件一绝),还看了一些openmv(很遗憾只学了最开始的几节,大致是色块阈值之类,后面串口都不会用)。虽然没有直接上系统,基本上模拟的效果是有的了。建议学习PID练手用霍尔编码电机,有反馈值和pwm输出,刚刚好。

6 电赛中期

由于实验室历年来都有同学参加电赛,我们自然地继承了他们的获奖作品。看着4年前的国一作品。我们心中不胜感慨,那么好的东西,今年落到我们手上了!!!拆!队友开始了中国式学习道路,开始拆国一的硬件。除了轴流风机的线太难分辨,其他都还好。轴流风机的驱动是MOS管放大电流来的,单片机的引脚接到了mos管的栅极(G),mos管大致是12V电压吧,(一般的H桥驱动等对轴流风机驱动能力不是很强,转速略慢)。整个系统的电压来自于监控电源(第一次听说)220->12V直流电。而我成功让电源短路了。一度怀疑人生。几个月内,短路了一个航模电池,短路了监控电源,还让旁边实验室的空开也干掉了。我这辈子怕是不合适学电吧。哎。

实验室的大佬特别抠,自己买了平衡车还不给我们玩。(怕被打,不多说)

7.15-7.19的校赛,由于宣传力度不够,所以参赛人数不多。(很多同学都直接回去了。不过我想说一句,想通过校赛就能参加国赛的同学真的是在做梦。什么都不练习,就算出了校赛,推荐去参加国赛,也是丢脸。要想拿奖,只有踏踏实实地练习,很一丝丝灵感,加上运气)

我们参赛题目就是风力摆。准备了那么久,还是有些小兴奋。我一直建议队友自己焊一块电路驱动,他焊接了,虽然效果不是很好(买的转接口大小不合适,而且仿照国一大佬的电路,焊出来居然不能用)最后不得已还是用了前人的硬件。但是线路老化,于是重新给换了线。(不得不说,焊接也要多练才行,看焊接水平就知道硬件菜如狗)(当然也不是怪队友菜,队友之前也继承了学长的衣钵,有一堆电子器件,自己也花了很多钱在硬件上。但是吧,我就觉得他练习少了,这是真的,硬件就是要多动手)

他研究好了电路,我这边也给出了单片机的程序,我记得是四路PWM输出(对于风机来说,单个风机即时制动是不可能的,要靠对向风机的反转制动),加上mpu6050的I2C输出(PB10,11,源码如是没有改过)。

我在别人的代码上修改以适应我们自己的电路系统(国一硬件+国二代码+菜鸡修改=风力摆),后来我感觉别人的代码不够好(代码变量值得学习,但是分类就很鸡肋了,而且还带着上位机回传的串口通信??有些忘掉了,总之对于500000的波特率很方,于是我删掉了上位机回传,把波特率改成115200,舒服多了。)

但是删这个过程中很麻烦,简单的删掉后,欧拉角的数据该从哪里获取呢(原来是在主函数里获取)?我最后把采样数据包装成函数,然后被定时器调用。这个修改的过程还是很难受的,出了很多bug,导致代码一度不能用。MPU6050有一个dmp模式,需要初始化。还有就是,extern 变量这个问题。一个变量aaaa在一个c文件里被声明并且extern之后,其他地方使用aaaa时就不必再定义了(全局、局部定义这个变量aaaa都是不合法的)

雄关漫道,渐渐也有了自己的风格,喜欢把东西分类,有了面向对象的感觉。

7 电赛强化练习

一个风力摆怎么能满足比赛呢。我又物色了17年的控制类题目,滚球控制系统,拿来练手。这时候已经没有什么可以直接用的物资了。去淘宝上定制了一块40x40cm的黑色亚克力板(如果想练手,建议不要用亚克力,边上容易形变,另外不要用黑色的,容易反光,摄像头把光当成小球误读数据)。别说,蛮贵的,这就花了40块。(预算电赛花个1000多,三个人平摊一下,还能接受,后面真香)

俩天才队友在亚克力板上用AB胶粘万向节的时候,把万向节方向搞反了(苦笑不得),于是浪费了俩天重新做这个部分。底座部分直接取实验室的木板,在边上粘上俩舵机(控制xy方向),连接好亚克力板、万向节和细杆、舵机。另外一边就是支架,上面放一个摄像头(openmv,采集小球位置,串口传输返回给STM32)。电源是220V降24V(因为便宜,而且有现成的),再降压稳压到5V给单片机供电。注意:舵机和单片机的电源要分开给,最好单片机先上电初始化,再打开舵机(就是在舵机的回路上加开关)。

板球结构基本上是这样了,过程中遇到的最大的问题就是舵机电压不稳,这一点一直影响到了省赛。(如上加粗,一定要分开给电源)另外就是摄像头采集的图像不是平面的而是有弧度的(鱼眼镜头??)这个需要纠正。摄像头采集的对象尽量减少干扰,(我们用白球,和白色的反光就很配,而且不建议用白色作为目标,一旦天气变化,可能颜色的阈值就变化了,采集不到目标)另外需要注意一下,安装舵机的时候,尽量让它在中值(偏转90°)的部分,差一点没关系,可以单片机软件调参到平衡。

其实对于控制小球来说,不过就是球的位移需要一个速度和时间,等效成加速度和时间,继续推导就是亚克力板对小球受到的合力(重力,支撑力)的影响,所以就是亚克力板的角度问题咯,最后就是舵机来决定角度。

再多的理论分析不如调一下,让小球稳定在亚克力板上。(当然前期很难受,球很滑一下子就掉下去了)对于PID算法,还是很容易控制小球的,只要舵机响应时间和范围匹配PID计算的结果。(提前预算好舵机每20ms能移动多大角度,PID调的值范围和这PWM是否匹配,PWM影响占空比进而控制舵机角度)其实一般来说舵机完全能控制到位的,建议不要把舵机移动的角度设置太大,其实亚克力板能在X\Y方向偏移10度完全就足够了。(需要换算成舵机角度,我有些忘了)

只要能定到板子上,后面基本很好做了,就是不停的设置新的目标点,让小球很稳的到达这个点。

板球练习基本上就结束了,时间也来到8月,没有时间再练习倒立摆了,很遗憾。但是我认为,个人完成了板球的思考,还是很不错的。

8 电赛预热阶段8月初

这段时间完成了简单的滤波器(平滑滤波,中位值滤波等),以及把PID从简单的变成了指针式,可以方便调用。同时完成了最后的一版,电赛模板,把电赛的OLED显示等都作了优化,写了自己的UI设计,虽然,这个设计,最后没能用上(因为比赛最后那晚,电脑炸了。被电感感人的炸了。代码全没了。PCIE去哪儿读取。。哎)

9 那以后

2019电赛总结(二)

2019电赛总结(一)相关推荐

  1. 2019电赛纸张计数仪分析——————致敬“谢谢惠顾”

    2019电赛国赛还没出结果,但我感觉我应该是"成功参与"了. 就不给大家讲讲我们的方案----进行一波反思. 先看传感器我们用的fdc2214,没什么问题.问题出在了主控板上,我现 ...

  2. 2019电赛--OpenMV学习笔记

    此文章在我的博客链接:https://sublimerui.top/archives/f10b0e1a.html NOTES:2019电赛结束啦~辛辛苦苦4天后,现已经写成了针对题目的OpenMV总结 ...

  3. 2019电赛总结(序)

    2019电赛总结(序) 文章目录 2019电赛总结(序) 1 序 2 嵌入式与单片机省赛落败 3 电赛启航 4 PID简述 5 那之后 电赛的一些经验 1 序 鄙人于某工大集成电路设计专业就学,但电子 ...

  4. 2019电赛--无人机题目OpenMV总结

    此文章在我的博客链接:https://sublimerui.top/archives/d508d500.html NOTES:上一篇相关博文,准备阶段OpenMV学习笔记链接: https://blo ...

  5. 2019电赛 H题-电磁炮 视觉部分

    2019电赛-H题-电磁炮-视觉自瞄部分; 硬件平台: Jetson Nano, Realsense D435 实现功能:识别到引导标志反馈坐标及距离,串口输出 #include <iostre ...

  6. 2019电赛----模拟电磁曲射炮

    1.吐槽电赛 2019.TI杯8月2号电赛号角其实已经吹响,虽然仅仅是清单公布,但是淘宝上早已经腥风血雨,特别是带处理器的摄像头openmv.大功率舵机以及云台一售而空,作为只会控制题的本小白,当然不 ...

  7. 2019电赛复测测试题

    对于这个2019的题目,刚好适合在电赛前练练手,对于这个复测要求在五个小时内,三个人一起完成,时间还是比较紧的,需要极强的心理素质和能力.所以在这里提供我的思路. 原理:通过振荡电路产生方波,通过可调 ...

  8. 模拟电磁炮国一设计资料【2019电赛H题国一作品】

    经历重重测试,从初赛杀进综测再到去上海复测,真是一路坎坷啊!回顾电赛准备阶段,在实验室基地的我们熬了多少个夜,废寝忘食的学习-仅仅是为了能更有信心的面对电赛:在电赛的四天三夜中我们经历了太多,我们将近 ...

  9. 2019电赛D题方案:简易电路特性测试仪

    一.题目 二.评分标准 三.题目分析与测量原理 此题设计两部分电路,一个是由S9013组成的基本放大电路,另一个是电路特性测试仪.前者是被测对象,涉及一个输入测试信号(1KHz,Vpp=10mV)和一 ...

最新文章

  1. 技术图文:C#语言中的泛型 I
  2. 全球及中国本质安全校准器行业销售前景与竞争规模预测报告2022-2027年
  3. idea代码提示插件_IDEA 插件推荐 —— 让你写出好代码的神器!
  4. Linus Torvalds:回顾Linux20年
  5. 第三次学JAVA再学不好就吃翔(part51)--String类的转换功能
  6. Leetcode 771. Jewels and Stones
  7. Jenkins 流水线 获取git 分支列表_基于Jenkins的DevOps流水线实践教程
  8. 笔记本电脑如何保养_锂电池保养技术 锂电池使用注意事项 锂电池技术培训
  9. matlab的和操作
  10. python编程 书籍_Python编程十大最佳书籍
  11. Atitit .html5刮刮卡的gui实现总结
  12. 论文翻译(上):Deep Learning Based Semantic Labelling of 3D Point Cloud in Visual SLAM
  13. word操作技巧总结--图片无法显示复制、空格、字体无法修改等
  14. 《机器人操作系统ROS原理与应用》——2.3 大数据制度和流程规范
  15. 大数据年代,我们的思想已被算法剥夺
  16. 工程师如何对待开源 | 一个老工程师的肺腑之言
  17. 水果(map的二维应用)
  18. A股全市场个股涨停板明细来袭!—股票数据远程下载服务升级
  19. COMPUTEX直击:戴尔笔记本新品迭出
  20. 正则表达式总结(待续)

热门文章

  1. 英特尔i9或重燃核心大战 VR淡出电脑展
  2. MIPS系统网络的配置
  3. 电力电子转战数字IC20220629day35——路科实验2b
  4. tensorflow运行mnist例程第99次迭代cuda出错
  5. 2.7、信息系统项目典型生命周期模型
  6. android对文件的MD5验证
  7. Unity之文字提示动画
  8. 知云文献翻译打不开_PDF翻译/PDF边划边译,最好的PDF翻译软件
  9. 摄影后期软件darktable介绍、汉化、使用说明(Lightroom免费替代品)
  10. 如何用C语言输出一个等腰三角形