1. 滚球控制系统系统简介

1.1 题目要求

作为一名合格的研发人员,面对系统,首先要看的当然是需求,来看看需求长什么样。

图1-1 题目要求

看到 65cm*65cm 我觉得当年的参赛师兄师姐都已经哭了,这个系统对比往年的倒立摆、风力摆大得多,大就会有一个问题,细节将会被放大,特别是硬件结构的细节,我后面会详细说(只针对我选得材料,其他材料还未验证)。

1.2 硬件选取

首先当然是 65cm*65cm的板子选取 ,选的是雪弗板,当时是参考别人的方案的,有优点也有缺点吧。优点就是轻,加工比较容易,裁剪和后期想挖坑的话还是比较好操作的。同时不够硬又有一个缺点,易变形,怎么一个易变形,板子到处是坑,那种肉眼看不见,但是滚球能感受的到的坑,还有就是四周容易下垂,导致变成一个山形,雪弗板这个变形特性也是给我们带来很大的麻烦了。

其次是传动结构的选取,万向节和轴承肯定是缺不了的了,具体的会在下面说到。

最后是主控和识别传感器,先说识别的传感器,有人推荐用电容板,博主知识盲区,放弃了,选择了大多数人选择的摄像头,摄像头选择的是原子的OV2640,200W像素,SVGA 可达 30 帧,当初选择OV2640的原因很简单,只会32,只有原子接口的板子,还有就是没钱去买openmv啊,其实做滚球的话,也足够了,帧数也还可以,当然使用这个摄像头的话基本就告别了图像滤波,不然帧数就更低了,有经费的同学也可以上手openmv,对于识别小球这个简单物体是非常简单的,不用自己搞驱动,开窗控制也十分简单,寻找色块也就一条语句搞定,最重要的是,帧数更高,这个直接决定了你的PID参数好不好调。

2. 机械结构设计

滚球控制系统对于机械结构搭建要求还是比较高的,博主采用的是正交的结构,所谓的正交,也就是将板球切分为XY,舵机分别控制XY,中间加个万向节保证系统可任意沿XY翻转,舵机连接板的结构可以通过舵臂加轴承实现,上图吧。

图2-1 结构图一

图2-1 结构图二

此处有几个设计错误,首先是舵机垫高以及固定的地方,可以说是严重错误,但是当时身边没什么材料,就割了几块雪弗板作为坐垫,加上角码固定,导致系统运行时震动过大,调PID调到发吐。接着就是舵臂到平板的连接结构,使用亚克力板其实效果不好,亚克力板切成条之后刚性不足也会导致系统运行时系统震动。

对于挖不挖坑,官方是允许挖坑的,当时我还是建议先不挖坑,这个系统不震动的话,帧数够高的话,不挖坑也可以把小球稳定在目标范围,但是挖坑有个好处就是,入坑之后放弃控制就可以把小球留在坑中,不过,有坑的话控制也不是那么好,小球下坑会失控。

3. 软件算法设计

3.1 采用两套PID

软件算法设计,我觉得PID应该采用两套,在远离目标点和靠经目标点可以采用不同的PID参数,特别是针对挖坑的同学。

3.2 设置缓冲区

因为我们采用的是单级的PID控制,仅仅针对目标位置进行控制,对于轨迹基本上是无法控制的,但是我们可以设置缓冲区的方式拟合方式控制轨迹。针对画圆,我当时还未想出如何设计,也是通过缓冲区拟合的,后来做了风力摆就知道怎么一回事了,大家可以看看我的风力摆分享博客,找找思路。

图3-1 缓冲区设置

3.3 设置不同的初始位置

所谓的初始位置,其实就是,小球在每一个目标点静止不动是舵机的转动角度,使用这种方式可以更好的实现小球静止以解决平板变形的问题。

4. 踩坑经历

使用OV2640很麻烦的一点是,STM32内部SRAM大小只有192KB, 储存像素点的数据大小有限制,开窗不能太大,所以架子需要架得老高,虽然说可以设置输出图像大小,但是好像找不到对应的初始化序列,原子提供的接口也不管用。

使用STM32F4摄像头接口采集一帧数据会有帧中断,我们PID计算应该紧跟帧中断中,不能边获取图像边计算PID,会导致顺序混乱。

我们可以设计一些GUI方便调试参数,每次参数变动都得下载效率太低,这里推荐移植emWin设计GUI。

电赛入坑----2017年电赛国赛真题滚球控制系统相关推荐

  1. 2017全国大学生电子设计竞赛个人总结--B题滚球控制系统

    本人有幸参加2017年全国大学生电子设计大赛,并在西安通过努力进入到优秀作品展示,虽然与瑞萨杯失之交臂,但是感觉从比赛中学到了许多知识和临场发挥的经验,这些经验和进步必将伴随我的未来. 首先来说说组队 ...

  2. 【Arduino】2017年电子设计大赛B题 滚球控制系统|板球系统

    **本文由@ray 出品,转载请注明出处. ** **文章链接: ** http://blog.csdn.net/wz22881916/article/details/78161080 今年电赛我们队 ...

  3. 【蓝桥杯】写给零基础入坑蓝桥杯的同学(历届真题解析)

    文章目录 初识:本期专栏想干个啥? 科普:官方介绍就是通过比赛平台提高自我能力的同时提供人才岗位机遇咯 白话分析:参加这个到底有啥好的? 含金量: 技能提升: 机遇: 福利退费: 文末福利 蓝桥杯历届 ...

  4. 电赛滚球控制系统树莓派代码

    电赛滚球控制系统树莓派代码 基础加发挥部分 图像二值化后,提取最大色块获得坐标即为小球坐标 只提取图像中间部分,避免外界非平板部分干扰 串口通信用的ttyUSB0口,直接一根数据线和stm32的串口1 ...

  5. 数模国赛计算机要学什么,数学建模国赛经验分享

    作为二本A类的院校,参加2014的国赛能够拿到广东省赛区的省一等奖我们队的成员已经很高兴.数学建模比赛个人认为实力是一方面,另外就是团队成员之间能够密切配合.能够了解彼此的想法,最重要的一点就是在大家 ...

  6. 备战电设 滚球控制系统——机械结构

    我的演示视频在这里 目前我也在备战19 年电设哈,所以先拿17 年的题目来积累积累经验,我这次做的就是控制类的题目--滚球控制系统 滚球控制系统 这是我的最终成品,我们做的是缩小版的,30*30cm ...

  7. 【系统分析师之路】2017年系统分析师下午案例分析真题

    [系统分析师之路]2017年系统分析师下午案例分析真题 系统分析师下午案例分析真题 [系统分析师之路]2017年系统分析师下午案例分析真题 2017年系统分析师下午案例分析第一题(系统设计) 我的解答 ...

  8. 武汉理工计算机专考研专业课,2017武汉理工大学计算机考研专业课真题

    2017武汉理工大学计算机考研专业课真题本站小编 福瑞考研网/2017-05-06 2017年武汉理工大学初试/复试真题(回忆版) [2017初试852题目]: 一. 选择题(1-4个正确选项,每个2 ...

  9. 2017计算机考研题型,2017年考研计算机统考408真题.doc

    2017 年考研计算机统考 408 真题 一.单项选择题 1.下列函数的时间复杂度是1. int func(int n) {int i = 0; sum = 0; while( sum < n) ...

  10. 计算机统考408真题text,2017年考研计算机统考408真题

    指导参考范例 2017 年考研计算机统考408 真题 一.单项选择题 1.下列函数的时间复杂度是 1 . int func(int n) { int i = 0; sum = 0; while( su ...

最新文章

  1. zts在c语言中的意思,C语言入门-全局变量 - osc_wna7tzts的个人空间 - OSCHINA - 中文开源技术交流社区...
  2. 输入控件tagsinput
  3. NLog源码解读——StringBuilderPool
  4. [react-router] React-Router怎么获取URL的参数?
  5. linux磁盘调度算法
  6. 深度学习图像分类(十四): EifficientNet系列(V1, V2)
  7. python发邮件被认定为垃圾邮件_Python:脚本发送的邮件被Gmail标记为垃圾邮件
  8. 箱线图(Boxplot)
  9. 光遇服务器修复暴风眼刷新了吗,光遇暴风眼怎么进 光遇暴风眼刷新时间
  10. APP 合规讲堂 - 收集使用个人信息的目的、方式、范围发生变化时,是否以适当方式通知用户(五)
  11. R语言使用lightgbm包构建多分类的LightGBM模型、caret包的confusionMatrix函数输出多分类混淆矩阵(包含:准确率及其置信区、p值、Kappa、特异度、灵敏度等)
  12. 用NDK交叉编译pixman-0.34
  13. 计算机的录像功能在哪里找,电脑自带录屏软件在哪?一键开启视频录制的方法...
  14. mysql 去除逗号,MySQL查询删除字符串中最后一个逗号后的所有字符?
  15. MySQL批量修改表的编码和字符集
  16. HTML中overflow的作用
  17. cocos2dx 更改帧频
  18. 使用themeleaf模板,background-image: url()中的图片链接如何写?
  19. eclipse中创建jsp页面报错
  20. 函数中的声明和变量的定义

热门文章

  1. Saber 基本操作学习-Buck仿真实例
  2. 19108期计算机开机号,排列三19108期藏机图诗汇总
  3. Word转换PDF技巧之通过虚拟打印机生成pdf格式文件
  4. 鲁大师2022半年报电脑排行:RTX 3090 Ti继任“卡皇”,顶级笔记本开始拼颜值!
  5. 计算机技术为我们带来的影响,计算机技术对社会发展的影响探析
  6. 【JavaScript】支持js代码的博客有…
  7. ipxspx协议linux,win7\win10 IPX协议自动安装器
  8. 红警安装中出现的问题 win10,黑屏和无法联机对战(缺少ipx协议)的问题。
  9. 闲聊企业数字化转型(1)-供应链数字化
  10. window10c语言下载,[下载备用]Windows 10多国语言包和独立语言包下载