
2025-E题国一-简易自行瞄准装置
简介
本系统主要以MSPM0系列MCU作为控制核心,结合stm32系列MCU,设计制作了一套高效稳定运行的寻迹及自行瞄准系统。系统还通过按键及LED灯实现良好的人机交互,进行模块化的转化。
简介:本系统主要以MSPM0系列MCU作为控制核心,结合stm32系列MCU,设计制作了一套高效稳定运行的寻迹及自行瞄准系统。系统还通过按键及LED灯实现良好的人机交互,进行模块化的转化。开源协议
:GPL 3.0
描述
一、团队介绍
我们是来自南昌大学(恩吸优)的天健老兵队
我们组的分工是以电控、视觉、硬件三人各司其职,互相合作
荣获2025年全国电赛江西赛区一等奖以及全国总决赛一等奖
二、题目要求

三、题目分析
本次的控制题不同于我们队之前所训练的题目,属于24年的小车题和23年的E题的结合,从题目中可见一斑。
基础第一问就是小车指定圈数循迹,基础二三问就是云台旋转寻找矩形框并打靶。
而发挥题就考验两个系统的耦合度,在小车运动时,云台系统必须要有前馈以提前做出调整,否则调参的工作量是难以想象的。
但相应的,发挥题只要能协调好两个系统,发挥一二问就能迎刃而解,拿下大部分分数。
本题还有一个雷点是结构的要求,务必要求在有限的高度下尽可能的将各个模块集成在一起,以避免尺寸超限。
最终我们现场发挥的结果是基础题部分满分,发挥题脱靶。
四、系统设计框图

五、作品主要构成模块
小车部分:主控采取嘉立创的地猛星M0G3507开发板,巡线为感为科技的无MCU八路巡线模块,车模为3D打印自制,电机为MG513X。

八路灰度寻迹模块:这里没找到当时购买的无MCU灰度的图片,用带MCU的替代。

云台部分主控采取的是嘉立创天猛星STM32F407VGT6开发板,并以K230开发板作为该系统的瞄准模块,云台电机采用的张大头电机,而云台结构则是自己3D打印的。


激光模组使用我们组内自己焊接的MOS管驱动电路来控制激光的开关。

六、解题思路
基础题第一问:
程序框图:

第一问采用8路灰度传感器进行循迹检测,通过加权平均和一阶低通滤波算法计算小车相对于黑线的偏差,结合霍尔编码器实时检测左右轮的速度(通过单位时间内脉冲数计算),采用位置式PID控制器对左右电机进行独立的速度闭环控制。
正常行驶时目标速度设为25cm/s,通过差速转向实现自动纠偏,当检测到拐角点(多个传感器同时检测到黑线)时切换到预设的转弯模式。
对于指定圈数控制,首先先通过交互式按键控制预定圈数,通过LED灯的亮灭展示当前预定圈数,当检测到的拐角数达到目标圈数对应的所有拐角时,停止系统运行,从而实现小车快速稳定地完成指定圈数的正方形轨迹运行。
测试结果与分析:
|
小车行驶圈数 |
小车行驶时间/s |
是否符合题目要求 |
|
1 |
16.5 |
是 |
|
2 |
35.3 |
是 |
|
3 |
52.7 |
是 |
|
4 |
69.2 |
是 |
|
5 |
85.7 |
是 |
经过多次测试,小车每次指定圈数行驶均能满足题目要求。
基础题二三问:
程序框图:

基础题二三问的解题思路是相同的,我们将摄像头和激光笔尽可能的贴近且放在同一水平线,这样就可以尽可能的使得激光点位于摄像头视野中某个设定点。
我们的启动按键设置了向左旋转和向右旋转两种模式,分别控制云台X轴左右定速转动,带动K230摄像头模块扫视周围寻找靶纸,且按键触发时Y轴回零,使得靶纸始终保持摄像头视角内,与此同时我们给激光云台的Y轴设置了限位,这样能确保摄像头尽可能快的识别靶纸从而定位到中心点。
当靶纸出现在摄像头范围内时,X轴定速运动停止,转而通过PID算法将摄像头像素坐标中心和假定的激光点坐标进行插值计算,分别输入给云台X、Y轴步进电机,当误差小于一定范围时,认为瞄准成功,此时通过MOS控制激光模块启动,从而实现4s内自动瞄准发射激光击中靶心。
测试结果与分析:
1、自定方向命中靶心测试结果:
|
测试次数 |
击中时间/s |
光斑痕迹距靶心 |
是否符合 |
|
1 |
0.9 |
1.7 |
是 |
|
2 |
1.4 |
1.6 |
是 |
|
3 |
1.1 |
0.5 |
是 |
2、任意方向命中靶心测试结果:
|
测试次数 |
击中时间/s |
光斑痕迹距靶心 |
是否符合 |
|
1 |
3.2 |
1.9 |
是 |
|
2 |
1.7 |
1.4 |
是 |
|
3 |
2.8 |
1.8 |
是 |
经过多次测试,自定方向和任意方向瞄准的时间指标和光斑痕迹距靶心最大距离指标均能满足题目要求。
七、作品图片
下面是我们队小车一些实拍照片
瞄准模块图:

小车正侧面图:



八、视频演示
见附件。
九、视觉的话
由于赛前并未专门训练过小车有关的题目,因此当赛题出来的时候,急急匆匆的搭小车的结构就花费了一天,并且最终的成品小车也不尽人意,还可以有许多改进之处。
比如说云台的结构可以采取滑轮以代替绕线,避免在发挥题运行时造成卡线的情况,以及灰度传感器可以放置在车前,以避免车身阴影对巡线造成干扰。
并且视觉模块采取轻量化、性能强并且易连接电源的产品,上述的改进措施都可以极大程度的减小本题硬件上的限制并规避许多隐性bug,从而有更多的时间去优化代码,实现更好的效果。
我们组之前训练过23年E题和24年E题,可以发现电赛对于视觉和图像处理的要求是越来越高的。
基础题中23问关于矩形框的识别看似简单,只需要在扫描中找到矩形框就行,但是在实际中的扫描过程中,会有环境的因素干扰。
比如说有人穿黑裤子,墙上的窗户等等都可能会误识别为矩形,这就对系统的鲁棒性提出了很高的要求。
另外在搭建作品的实验室场地和实际测试的场地存在很大的区别,因此作品中因具有可以实时调节参数的功能。
而在发挥题中,由于小车是在沿着轨迹不断运动,摄像头和靶纸的相对距离和角度也在不断的变化,因此必须使用透视变化对识别到的矩形进行重构,找到准确的中心点,具体的原理就不展开讲。
感兴趣的可以自己找资料学习,使用树莓派或者jetson进行图像处理更具优势,其可以使用opencv函数进行图像的透视变换,采取算力更高的硬件设备对未来的备战E题是一个必然趋势。
十、硬件的话
本题对于硬件的要求较高,之前没有试过云台、视觉和小车的结合,大部分是比赛时的即兴发挥。
这块车板是比赛开始之前打出来的板,不幸的是,比赛开始之后打印机堵头了,后面打的车板都不能用,好在之前预开孔能与其他部件适配,整个结构稍显简陋。
云台部分中间有一条缝,刚好被用来放线,没有考虑到用电滑环的结构,等想到已经来不及了(悲),后面自己把云台的支撑板用电磨开孔,把线扎在一起绕在缝里,极限可以满足3圈的自旋。
整车接线都在比赛测试接近完成之后逐渐完全由杜邦线过渡到自己压接的XH254排线。
本题的电路部分采用了三块板的结构,最上面的洞洞板是临时焊接的,当时赶不上LC加急打板的截单时间,就只能亲自动手了。
后面来看,这样反而稍稍方便一些,TI的最小系统板部分GPIO存在问题,没办法使用,我们用洞洞板反而更好换IO口(悲)。
下面两块板是比赛前一个礼拜临时设计出来的,以为只准备使用一块407来应对就足够。
上板用来放系统板、LED、按键和屏幕等等,除此之外还留了一些焊接点,作为人机交互层;
下板用来存放大部分的对外接口,上面大部分的接口都有电压等级选择以及GPIO开漏控制的短接点,还有自锁开关来控制接口。
上下板之间的的电源连接用了XH的接口,只传输5V等级的电压,信号传输用排针和杜邦线来选择IO口。
额外粘在板后的两块板是降压模块和MOS开关电路,因为TI板子的驱动能力不是很强,并且这部分和云台部分是联动的,因此只能另外设计。
只能说,一切都是那么的刚刚好(乐)。
十一、附件内容
1、K230端视觉处理代码
2、基础第一问演示视频
3、基础二三问演示视频
4、地猛星ti板卡小车循迹代码
5、天空星stm32f4云台追踪代码
6、控制板电路设计图
设计图
未生成预览图,请在编辑器重新保存一次BOM
暂无BOM
克隆工程知识产权声明&复刻说明
本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。
请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。


评论