2018全国大学生电子竞赛D题代码和心得

2018年全国大学生电子竞赛D题代码。
又参加了一年大学生电子竞赛,结果很痛苦,拿了个成功参赛。来分享成功参赛的心得。
今年控制题只有四轴,因为平常没怎么练过,所以就选择了手势识别。可以说很简单了这道题目,所以我们早早的就做完了。但这道题也很坑爹,比前没有说怎么放手势才算是个正确的。三四题到底是谁来放还有放的那个人是否公正公平不怎么太有主观情绪。所以我们考虑要增大容错率。
开始的理解是纯测面积。第一次采用了四块板子如图:

2018全国大学生电子竞赛D题代码和心得_第1张图片
这样就可以检测到从哪个区域进入还有累加就是总值。在做一二俩题的时候也可以投机取巧,因为有四块区域可以用某几块来进行独立判断。到了比赛结束前俩天我们发现虽然能够做出来但是准确率不高因为人的手势贴近面积是会变化的。万一俩次放入贴近面积大小不同,是很容易检测失败的。在这硬件基础上我们是无法改进的。PS(天知道最后是选定队友测,那不是谁手放的一模一样就好了,这要求很高啊,因为1,2,3手势很接近)。所以我们从手势上入手,如何提高准确度。在实验中2,3是最容易出问题的。所以我们做了下一块板子。
2018全国大学生电子竞赛D题代码和心得_第2张图片
如果所示手在拳头状态贴在黑色上,用于判断手是否放上。1则是食指,2是食指中指,3是大拇指,食指,中指,4是食指,中指,无名指,小拇指,5则是所有手指。 左右俩边区域则是用来判断大拇指是否放入的。经过试验大概可以倾斜60度也能够准确检测。然后我们附加题是显示6(在我们这块板子上太简单了,就只是顺手一做,最后也没加分1)。
控制板上我们选择了MSP430F5529(可以加分据说)和STM32F4ZGT6(因为题目简单,所以就想让老师看的舒服点,能够所以LCD触摸屏)。MSP430接受FDC2214数据发送给STM32。
经过使用FDC2214发现,数据会进行轻微的飘动,并持续下去。长时间下会对判断出现较大的误差,因为测入数据是还没飘的。所以我进行了数据的补足,使其永远在初始条件下。这行代码在STM32接受数据函数中编写。
比赛开始第一天(我们是第二天检测),同学都取得了挺好的成绩,所以晚上我们就去取经,据了解,有些同学会被要求倾斜40度,有些同学不会,有些会被要求左右手(这在我们板子中还是较容易实现的,当时心中暗喜)。当天晚上预感无敌了,因为第二块板子在这种情况下基本上是能够全部成功的,当时就选择了第二块(俩块板子代码都写在了单片机了可以自己选题)。
到了第二天,四点多爬起来去比赛,比赛前是有三十分钟的时间复原的。我们第二块板子基本是OK的。我们就叫老师来了。然后坑爹的事情发生了,第三题开始,老师非要我们倾斜九十度,一百八十度,我们当然不同意啦,我们给老师演示了一下是大概可以倾斜六七十度的。但评测老师就是不干就是要九十度,最后老师让我们正常演示,当然演示结果全部正确啦,但三四题后被加上了限定区域。虽然觉得很亏(第一天去的同学都没有)。但想想不管怎么样省二总还是有的。等完全结束才知道第二天所有同学都被加上了限定区域这几个字而且都错了很多。心里很明白,大概第一天成绩都太好了,第二天要打压了。
最后成绩出来了成功参赛奖。大概就是因为限定区域吧,第二天同学全军覆没。(要是知道那么严重,我们就拿第一块板子了。吃了套路)
比赛心得:谋事在人,成事在老师啊。
然后就是代码了。代码有点乱。别嫌弃啊。额。好像不能只能单独上传。。。那就单独上传啦。

你可能感兴趣的:(2018全国大学生电子竞赛D题代码和心得)