找回密码
 立即注册
查看: 845|回复: 14

国二,使用STC32完成E题获得国二!

[复制链接]

该用户从未签到

1

主题

9

回帖

35

积分

新手上路

积分
35
发表于 2023-8-29 17:14:58 | 显示全部楼层 |阅读模式
大家好,这里是西安建筑科技大学参赛队,在本届电赛中选择E题并获得国二,很荣幸这次能在STC官方论坛讲述我们的参赛经验。当然我们的作品中还有很多不足之处,请大家多多包涵。
本作品为两架二维电动云台,完成运动目标控制和自动追踪系统的实现。云台通过K210图像处理模块识别运动轨迹和捕捉目标,通过步进电机控制云台运动进行控制目标的沿轨迹运动及目标追踪。控制系统使用STC32G12K128为主控制器,K210图像处理模块作为轨迹识别和目标检测的视觉模块,A4988模块作为步进电机驱动模块。轨迹识别算法使用K210和中位极值滤波进行目标检测,脉冲控制算法进行云台运动控制。机械结构采用双轴步进电机云台结构,两个步进电机形成双轴联动控制,辅以三脚架式结构作为装置支撑。测试表明,在题目所给环境中,二维电动云台可以控制目标按题目要求移动,并在规定时间内完成目标追踪,且用时较短,运动精确,符合题目要求。
使用STC32完成E题获得国二!-1.png 使用STC32完成E题获得国二!-2.png


在本次设计中,使用主控制器STC32G12K128完成运动目标控制和自动追踪系统的实现。系统由电源模块、按键模块、稳压模块、声光模块、电机驱动模块、磁编码器模块、激光模块、光电传感模块、OLED显示模块和图像识别模块组成。电机驱动模块控制云台运动,图像识别模块完成黑色矩形和光斑识别, OLED模块显示必要信息。

使用STC32完成E题获得国二!-3.png


本次设计采用的主控芯片为STC32G12K128,具有32个可用I/O口。步进电机驱动模块采用具有过温,过压保护功能的A4988步进电机驱动器,其输出电流可通过可变电阻调节。电源采用12V航模电池供电,使用TPS5450为核心的稳压模块,降压为5V,为单片机及其他模块供电。OLED模块,蜂鸣器模块,旋转编码器模块共同组成人机交互部分,以便于进行程序的调试和现象的展示。由于单片机I/O口驱动能力有限,因此设计三极管开关电路驱动激光笔。K210通过串口与主控芯片相连,将识别到的目标坐标返回给主控芯片。
使用STC32完成E题获得国二!-1.png


程序设计上, 本次系统软件设计采取了顺序控制的设计方法,根据每个任务的需要完成的步骤,按步设计相应函数,完成控制任务。首先对各个外设进行初始化,保证其能够完成相应任务,之后图像处理模块采集和处理,运动控制云台根据任务的不同执行不同的运动指令,完成控制任务。目标追踪云台启动后,通过K210识别出屏幕内的红色激光光斑,并控制云台运动将红色激光光斑置于图像模块显示中心,由于图像模块的摄像头与绿色激光处于同一水平线上,并同时运动,即可实现绿色光斑追踪红色光斑的效果。
使用STC32完成E题获得国二!-4.png










回复 送花

使用道具 举报

该用户从未签到

2

主题

5

回帖

43

积分

新手上路

积分
43
发表于 2023-8-29 17:48:13 | 显示全部楼层
xd,  组委会证明咋开,我在电赛官网找的电话,打过去人家说STC没有和组委会联系,不给盖章。你们怎么解决?
回复 支持 反对 送花

使用道具 举报

该用户从未签到

2

主题

5

回帖

43

积分

新手上路

积分
43
发表于 2023-8-29 18:25:52 | 显示全部楼层
xd,留个联系方式,交流一下怎么盖章。qq2357502822
回复 支持 反对 送花

使用道具 举报

该用户从未签到

550

主题

9235

回帖

1万

积分

管理员

积分
13946
发表于 2023-8-29 18:39:33 | 显示全部楼层
省组委会盖章=====这个还是方便的
截图202309081953304628.jpg

回复 支持 反对 送花

使用道具 举报

该用户从未签到

2

主题

5

回帖

43

积分

新手上路

积分
43
发表于 2023-8-29 21:02:02 | 显示全部楼层
神农鼎 发表于 2023-8-29 18:39
省组委会盖章=====这个还是方便的

我打电赛官网的电话,那边说STC没有和他们交流过,不给盖
回复 支持 反对 送花

使用道具 举报

该用户从未签到

1

主题

9

回帖

35

积分

新手上路

积分
35
 楼主| 发表于 2023-10-10 11:37:28 | 显示全部楼层
本帖最后由 suye 于 2023-10-10 11:39 编辑

2023电赛E题国二作品开源(文末附核心代码)
大家好,这里是西安建筑科技大学参赛队,在本届电赛中选择E题并获得国二,很荣幸这次能在STC官方论坛讲述我们的参赛经验。当然我们的作品中还有很多不足之处,请大家多多包涵。
本作品为两架二维电动云台,完成运动目标控制和自动追踪系统的实现。云台通过 K210 图像处理模块识别运动轨迹和捕捉目标,通过步进电机控制云台运动进行控制目标的 沿轨迹运动及目标追踪。 控制系统使用 STC32G12K128 为主控制器,K210 图像处理模块作为轨迹识别和目标检测 的视觉模块,A4988 模块作为步进电机驱动模块。轨迹识别算法使用 K210 和中位极值滤波 进行目标检测,脉冲控制算法进行云台运动控制。机械结构采用双轴步进电机云台结构,两 个步进电机形成双轴联动控制,辅以三脚架式结构作为装置支撑。测试表明,在题目所给环 境中,二维电动云台可以控制目标按题目要求移动,并在规定时间内完成目标追踪,且用时 较短,运动精确,符合题目要求。
截图202310101137459606.jpg

机械结构设计与搭建
对于机械结构的设计,采取了三脚架式支撑结构,三脚架式支撑结构具有较高稳定性,在云 台运动时不易发生位移或颤动,可以提高控制的准确率。两台驱动电机通过同步带间接控制云台 转动,具有更高的精确度。整体结构设计有效可靠,符合本次任务需要。 运动控制云台将 K210 图像识别模块架于激光发射器后方,使摄像头能覆盖整块屏幕的同时, 也与激光的射线具有相似的轨道,更加便于激光光斑的控制。 运动控制云台的总体机械结构模型如图 2 所示。

目标追踪云台将 K210 图像识别模块架于激光发射器上方,并与激光发射器共同运动,使得该 云台的激光光斑能够一直处于 K210 图像的中间位置,有利于云台进行目标追踪。 目标追踪云台的总体机械结构模型如图 3 所示。
截图202310101138027849.jpg

图像识别模块
本次设计要求云台控制激光光斑沿着任意位置的 A4 靶纸进行移动,并使绿色激光光斑追踪红 色激光光斑,因此需要用到图像处理模块。在本次设计中,选择了 K210 视觉模块作为图像处理的 平台,通过 K210 视觉模块的摄像头捕捉屏幕画面,并对画面进行矩形和光斑的搜索,将搜索到的 结果以坐标形式输送给主控制器,以此完成 A4 靶纸和激光光斑的识别功能,如图 4 所示。
截图202310101138208472.jpg

运动目标控制原理
控制激光在屏幕上移动,需要将移动的信息换算成控制电机旋转的脉冲和方向信号。将屏幕 位置以二维坐标系表示,并以屏幕的中心为原点,向上为 Y 轴正方向,向右为 X 轴正方向,则激 光在屏幕上的任意一个位置都可以以一个数对(x,y)表示,如图 5 所示。
截图202310101138437971.jpg

通过公式 1 将位置数对转换为脉冲数对。
𝐴𝑁𝐺𝑥 = atan ( 𝑥 1000) ∗ 1528 (1)
其中𝑥为位置参数,𝐴𝑁𝐺𝑥为转换后的脉冲参数。对得到的脉冲参数进行进一步处理,通过公 式 2 与公式 3 分别计算出 X 轴电机与 Y 轴电机的脉冲比例。
𝑆𝐹𝑥 = { 1, |𝐴𝑁𝐺𝑥 − 𝑂𝐴𝑁𝐺𝑥 | ≥ |𝐴𝑁𝐺𝑦 − 𝑂𝐴𝑁𝐺𝑦| |𝐴𝑁𝐺𝑥−𝑂𝐴𝑁𝐺𝑥| |𝐴𝑁𝐺𝑦−𝑂𝐴𝑁𝐺𝑦| , |𝐴𝑁𝐺𝑥 − 𝑂𝐴𝑁𝐺𝑥 | < |𝐴𝑁𝐺𝑦 − 𝑂𝐴𝑁𝐺𝑦| (2)
𝑆𝐹𝑦 = { |𝐴𝑁𝐺𝑦−𝑂𝐴𝑁𝐺𝑦| |𝐴𝑁𝐺𝑥−𝑂𝐴𝑁𝐺𝑥| , |𝐴𝑁𝐺𝑥 − 𝑂𝐴𝑁𝐺𝑥 | ≥ |𝐴𝑁𝐺𝑦 − 𝑂𝐴𝑁𝐺𝑦| 1, |𝐴𝑁𝐺𝑥 − 𝑂𝐴𝑁𝐺𝑥 | < |𝐴𝑁𝐺𝑦 − 𝑂𝐴𝑁𝐺𝑦| (3)
其中𝑆𝐹𝑛为 n 轴电机的脉冲比例,𝐴𝑁𝐺𝑛为根据目标坐标转换的脉冲参数,𝑂𝐴𝑁𝐺𝑛激光当前坐 标的脉冲参数(𝑛取𝑥, 𝑦)。将转换后的脉冲数对与当前位置的脉冲数对进行比较,确定旋转量较 大的轴为主旋转轴,并将其对应的电机脉冲比例设置为 1,而对于旋转量较小的电机,根据脉冲 数对计算出相应的脉冲比例。
追踪性能分析
对于 A4 靶纸的黑色矩形轨道的追踪,由 K210 矩形识别和中位数极值滤波法共同完成。先通 过 K210 矩形识别函数识别出 A4 靶纸的黑色矩形轨道,并将矩形四个角的坐标传回主控制器。由 于矩形识别存在不稳定性,因此需要多次测量数据,并通过极值滤波去除极端值,也就是识别失 败数据带来的影响。中位数不受极值影响,具有良好的稳定性,具有一组相似数据的代表性,且 计算方便,因此采用中位数极值滤波法处理数据。 使 K210 传回十组数据,每组数据由四个二元数对,即四个角的坐标值组成,每组共八个数据, 对十组数据的八类数据分别进行排序,并求出每类数据的中位数,得到一组中位数数据,如公式 4 所示。
𝑃𝐶[𝑚][𝑛] = 𝑃𝐷[ 𝑘 2 ][𝑚][𝑛]+𝑃𝐷[ 𝑘 2 +1][𝑚][𝑛] 2 (4)
其中𝑃𝐶为处理后的中位数数据,𝑚为四个角下标(取值为 0—3),𝑛为 X,Y 轴,𝑘为数据数量, 此处为 10,PD 为测量数据。经过处理后的数据,可以有效排除由识别错误带来的误差,使之成为 稳定且可靠的矩形数据。 经过中位数极值滤波的数据,通过公式 5 进行 K210 与屏幕的坐标换算,以方便后续电机进行 控制。
𝑛 = (𝑃𝐶 − 𝑙 2 ) ∗ ℎ𝑛 + 𝑓𝑛 (5)
其中𝑛为取值 X,Y 的坐标值,PC 为经过极值滤波处理的中位数数据,𝑙为 K210 相应轴的长度, ℎ𝑛为对应坐标轴的放大系数,𝑓𝑛为对应坐标轴的偏差值。
电路设计
本次设计采用的主控芯片为 STC32G12K128,具有 32 个可用 I/O 口。步进电机驱动模块采用 具有过温,过压保护功能的 A4988 步进电机驱动器,其输出电流可通过可变电阻调节。电源采用 12V 航模电池供电,使用 TPS5450 为核心的稳压模块,降压为 5V,为单片机及其他模块供电。 OLED 模块,蜂鸣器模块,旋转编码器模块共同组成人机交互部分,以便于进行程序的调试和现象 第 5 页 的展示。由于单片机 I/O 口驱动能力有限,因此设计三极管开关电路驱动激光笔。K210 通过串口 与主控芯片相连,将识别到的目标坐标返回给主控芯片,总体电路图见图 6。
截图202310101139041004.jpg

程序设计
本次系统软件设计采取了顺序控制的设计方法,根据每个任务的需要完成的步骤,按步设计 相应函数,完成控制任务。首先对各个外设进行初始化,保证其能够完成相应任务,之后图像处 理模块采集和处理,运动控制云台根据任务的不同执行不同的运动指令,完成控制任务,程序流 程图如图 7 所示
截图202310101139217540.jpg


回复 支持 反对 送花

使用道具 举报

该用户从未签到

1

主题

9

回帖

35

积分

新手上路

积分
35
 楼主| 发表于 2023-10-10 11:39:54 | 显示全部楼层
2023电赛备赛滚轴控制系统训练第一篇
大家好,这里是西安建筑科技大学参赛队,在本届电赛中选择E题并获得国二,很荣幸这次能在STC官方论坛讲述我们的参赛经验。当然我们的作品中还有很多不足之处,请大家多多包涵。
这篇帖子主要是分享电赛备赛的一些经历和经验以供大家学习参考。水平有限,如有不对,请大家见谅。

本篇内容包括滚轴控制系统的任务要求分析,主控系统的选择。
滚轴控制任务要求分析
任务及要求
设计一滚轴控制系统,由轨道和滚轴组成,轨道长度30-100cm,轨道上标识20个刻度,一端从0开始至另一端为20,轨道能使得滚轴在轨道上自由滚动,设计相关机构使得轨道倾斜角度可调,通过检测滚轴位置实现对滚轴的控制,完以下任务。
基本要求:
1.        系统能通过屏幕显示轨道上是否存在滚轴并显示滚轴当前处于轨道的相对位置0-20(显示字体高度大于8mm)。
2.        初始将轨道水平,滚轴放于轨道中间位置10,要求滚轴放置后不发生自主滚动,并至少维持5秒。
3.        初始将轨道水平,滚轴位于轨道位置0,一键启动系统,控制系统可使滚轴滚动至轨道另一端20位置并停止,滚轴不能脱离轨道。
4.        初始将轨道水平,滚轴初始放于轨道位置0,一键启动系统,滚轴控制系统可在30秒内控制滚轴位置处于轨道中点位置10处并保持至少10秒,位置误差小于3刻度。
发挥部分:
1.        初始将轨道水平,滚轴放于轨道中间位置10,一键启动系统,滚轴控制系统可在20秒内控制滚轴处于轨道位置15处并保持至少10秒,位置误差小于1刻度。
2.        初始将轨道水平,滚轴初始放于轨道中间位置10,一键启动系统,滚轴系统可使滚轴往返于轨道1/4处和3/4处,两端位置误差3刻度,要求100秒内完成3次往返,最后回到中间位置10。
3.        初始将轨道水平,滚轴初始放于轨道中间,一键启动系统,滚轴系统可使滚轴先前往轨道1/4处直到静止,位置误差小于1刻度,随后开始前往轨道3/4处,从开始滚动计时,直道第一次经过3/4处停止计时,要求时长10s±1s。
主控系统方案
在本设计中,采取STC32系列单片机STC32G12K128-Beta(如图1—1)为主控控制器,STC32G 系列单片机是不需要外部晶振和外部复位的单片机,是以超强抗干扰/超低价/高速/低功耗为特点的 32 位 8051 单片机,在相同的工作频率下,STC32G 系列单片机比传统的 8051 约快 70 倍。
截图202310101140167511.jpg


STC32G 系列单片机是 STC 生产的单时钟(1T)的单片机,是宽电压/高速/高可靠/低功耗抗静电较强抗干扰的新一代32 位 8051 单片机,超级加密。有 268 条强大的指令,包含 32 位加减法指令和 16 位乘除法指令。硬件扩充了32 位硬件乘除单元 MDU32,对比传统51单片机,STC32G 系列单片机技术成熟,硬件齐全,故选用STC32G12K128-Beta作为主控控制器。


回复 支持 反对 送花

使用道具 举报

该用户从未签到

1

主题

9

回帖

35

积分

新手上路

积分
35
 楼主| 发表于 2023-10-10 11:40:46 | 显示全部楼层
本帖最后由 suye 于 2023-10-10 11:42 编辑

2023电赛备赛滚轴控制系统训练第二篇
大家好,这里是西安建筑科技大学参赛队,在本届电赛中选择E题并获得国二,很荣幸这次能在STC官方论坛讲述我们的参赛经验。当然我们的作品中还有很多不足之处,请大家多多包涵。
这篇帖子主要是分享电赛备赛的一些经历和经验以供大家学习参考。水平有限,如有不对,请大家见谅。

本篇内容包括滚轴控制系统的测距模块的选择。
测距模块
方案一:超声波测距
超声波是一种频率高于20000Hz的声波。具有频率高、波长短、绕射现象小,特别是方向性好、能够成为射线而定向传播等特点。超声波测距类似于回声定位。
截图202310101141074357.jpg


                 图1—2超声波测距模块
在超声波测距模块(如图1—2)的应用中,单片机控制超声波测距模块的超声波探头发送超声波,同时利用单片机开始计数,超声波在空气中传播遇到障碍物时便会反射回来,当超声波接收探头接收到此信号时,就立即停止计数。单片机把计得的时间差进行运算,以此来计算车与障碍物的距离。
1.2.2方案二:激光测距
相位式激光测距仪(如图1—3与图1—4)是用无线电波段的频率,对激光束进行幅度调制并测定调制光往返测线一次所产生的相位延识,再根据调制光的波长,换算此相位延迟所代表的距离。即用间接方法测定出光经往返测线所需的时间。相位式激光测距仪一般应用在精密测距中。
图1—3激光测距模块
截图202310101141237917.jpg

图1—4激光测距模块参数表


截图202310101141379352.jpg

激光测距相比超声波测距,具有更加高的精度,且受环境影响较小,因此在设计中选择了激光测距作为测距手段。


回复 支持 反对 送花

使用道具 举报

该用户从未签到

1

主题

9

回帖

35

积分

新手上路

积分
35
 楼主| 发表于 2023-10-10 11:42:33 | 显示全部楼层
2023电赛备赛滚轴控制系统训练第三篇
大家好,这里是西安建筑科技大学参赛队,在本届电赛中选择E题并获得国二,很荣幸这次能在STC官方论坛讲述我们的参赛经验。当然我们的作品中还有很多不足之处,请大家多多包涵。
这篇帖子主要是分享电赛备赛的一些经历和经验以供大家学习参考。水平有限,如有不对,请大家见谅。

本篇内容包括滚轴控制系统的轨道设计和滚轴设计。

轨道设计
在轨道设计上,选取两根半径4mm玻璃纤维管作为轨道主体,使用3D打印件作为轨道两端支撑(如图1—6与图1—7)。其中左端支撑连接舵机,舵机转轴连接一支撑杆,通过舵机转动带动支撑杆上下运动以控制架设其上的轨道的角度调整。右端架设激光测距模块,使得激光测距始终与轨道平行。
截图202310101142532275.jpg

滚轴设计
在设计过程中经过多次试验,最终采取了柱锥体滚轴(如图1—8)设计。
                        图1—8 柱锥体滚轴
截图202310101143061793.jpg

柱锥体滚轴没有了两侧的限位槽设计,增大了滚轴与轨道接触面的角度使其可以在轨道上顺滑的滚动而不发生旋转,卡死等现象,并且减少了滚轴内部填充的密度,减轻了滚轴的质量使其更加容易控制。

回复 支持 反对 送花

使用道具 举报

该用户从未签到

1

主题

9

回帖

35

积分

新手上路

积分
35
 楼主| 发表于 2023-10-10 11:43:53 | 显示全部楼层
本帖最后由 suye 于 2023-10-10 11:44 编辑

2023电赛备赛滚轴控制系统训练第四篇
大家好,这里是西安建筑科技大学参赛队,在本届电赛中选择E题并获得国二,很荣幸这次能在STC官方论坛讲述我们的参赛经验。当然我们的作品中还有很多不足之处,请大家多多包涵。
这篇帖子主要是分享电赛备赛的一些经历和经验以供大家学习参考。水平有限,如有不对,请大家见谅。

本篇内容包括滚轴控制系统的显示模块设计和旋转编码器开关模块设计。

显示模块设计
常用的显示屏幕模块大体分为两类LCD屏幕和OLED屏幕,LCD的有LCD1602,LCD12864等OLDE屏幕有0.96寸OLED,1.54寸OLED等,本次设计选取了0.96寸OLED屏幕(如图1—9),既能满足题目显示要求字体大于8mm的要求,又节省空间,并且价格较低性价比高。
截图202310101144159479.jpg

(a)                                       (b)

图1—9 0.96寸OLED

旋转编码器开关模块设计
旋转编码开关(如图1—10)又称小型旋转编码器,是指具有一组有规律且严格时序脉冲的开关电子元器件,通过与IC的配合,起到递增、递减、翻页等功能,例:鼠标的翻页,菜单的选择,音响的声音与调节,频率的调节,温度的调节,医用器械的频率调节等。
按结构可将其分为机械式旋转编码开关和光电式旋转编码开关。所谓机械式旋转编码开关,是指通过信号配合零件的规律转动(或移动)形成触点接触而产生规律脉冲的编码产品,其寿命具有较大的局限性;光电式旋转编码开关,是指通过光源耦合,形成的无接触点接触而产生规律脉冲的编码产品,其寿命极长。
截图202310101144483105.jpg

本次设计中采用了机械式旋转编码开关,以此完成一键启动的需求同时又能实现多个任务之间的切换


回复 支持 反对 送花

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2024-4-29 14:39 , Processed in 0.075687 second(s), 70 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表