找回密码
 立即注册
查看: 791|回复: 2

国二,2023国赛(E题),中山大学-基因拟态酶队 | 证明已开

[复制链接]

该用户从未签到

1

主题

1

回帖

63

积分

注册会员

积分
63
发表于 2023-9-7 15:18:28 | 显示全部楼层 |阅读模式
本帖最后由 基因拟态酶 于 2023-11-27 09:48 编辑

61961aa31b1f4343619caaccb75e74e.jpg

这次国赛我为了打造亮点,全部方案都选择国产、性价比高的,同时用了STC32屠龙刀、SSD202D、ESP32这三个芯片,SSD202D移植OPENCV做图像处理,STC32控制舵机,ESP32做激光点定位。方案是没问题的,但是由于舵机精度不够,卡了两天时间调节,最终没有完全做完,只拿到国二,辜负了姚总的期望!
电赛报告、STC32程序贴在附件里~放几张电赛作品的照片(略丑)


图片1.png
图片2.png

绕框走效果

绕框走效果
微信图片_20230907144403.jpg

舵机调节上位机

舵机调节上位机

屠龙刀

屠龙刀

作品

作品

作品

作品

SSD202D控制台

SSD202D控制台



硬件部分:
①硬件总体方案:(全国产低成本)
1)红色激光器:由全球第一STC32G12K128作为主控芯片,通过串口连接SSD202D移植Opencv负责图像处理,最终通过STC32高级PWM做两轴舵机云台控制。
2)绿色激光器:全球第一STC32G12K128作为主控芯片,连接ESP32芯片驱动OV2640进行图像处理,最终通过STC32高级PWM做两轴舵机云台控制。

②硬件原理图:
(1)红色激光器:
截图202311270923592527.jpg

截图202311270925136921.jpg

截图202311270925234822.jpg

截图202311270925339094.jpg

截图202311270925439242.jpg

截图202311270925493157.jpg

截图202311270925576957.jpg

(2)绿色激光器:



截图202311270926192423.jpg


截图202311270926261755.jpg


截图202311270926344855.jpg

截图202311270926419566.jpg

截图202311270926533195.jpg

截图202311270926587510.jpg

截图202311270927062995.jpg

截图202311270927104202.jpg

截图202311270927203990.jpg

截图202311270927287136.jpg

截图202311270927342688.jpg

截图202311270927403474.jpg

软件部分:
①简易UART协议
由于STC32与另外两个外设芯片之间通过UART通信,为了设计方便,定义一种简单的UART通信协议:
截图202311270928041352.jpg
②红色激光部分,STC32与图像识别模块的通信指令表:
(1)STC32发送给图像识别模块
动作
指令
数据
1
自动五点校准
0x01
五个字节,第一个字节表示目前进行到第几个点(0为第一个点),第二个到第五个字节为一个坐标,表示当前校准位置在屏幕坐标系下的坐标。(浮点值乘以一千倍取整,高位在前,例:(0.250.2)表示为[0,250,0,200]))
2
进行矩形检测,并请求获取A4靶标的四个顶点图像坐标
0x02
(2)图像识别模块发送给STC32
动作
指令
数据
1
返回校准结果的透视矩阵
0x01
透视矩阵的9个浮点数。(浮点值乘以一千倍取整,高位在前,例:(0.250.2)表示为[0,250,0,200]))
2
返回矩形顶点在图像中的坐标
0x02
四个坐标(每个数值用两个字节,高位在前)

③坐标处理算法
(1)寻找PWM占空比与屏幕坐标的关系
通过简单几何建模,使得红色激光点可以停留在屏幕上任意指定的坐标位置,从而实现回原点、绕着屏幕边框走的要求。简单几何建模,确定舵机角度值与激光点在屏幕上的坐标值的一一对应关系:
截图202311270928247720.jpg
截图202311270928301643.jpg
截图202311270928343000.jpg
截图202311270928392214.jpg
其中,参数ωa33等于 1,通过透视变换后得到屏幕坐标xy
截图202311270928512973.jpg
④红色激光器部分工作流程与实现方法:
1)用户按下与STC32连接的[回原点按键,STC32立刻调整PWM占空比,使得云台带动激光点落在屏幕正中央。(此时的占空比为提前手动测量并保存的定值,由于红色激光部分与屏幕之间的位置关系固定,因此可以这么做)。
2)用户按下与STC32连接的[校准按键,STC32立即进入校准模式,动作如下:
1STC32通过调整PWM占空比,使得云台带动激光点落在(-0.2,0.45)坐标,并通过UART向图像处理模块发送[自动五点校准命令,附带参数为:当前校准第1个点,坐标为(-0.2,0.45
2STC32通过调整PWM占空比,使得云台带动激光点落在(0.2,0.45)坐标,并通过UART向图像处理模块发送[自动五点校准命令,附带参数为:当前校准第2个点,坐标为(0.2,0.45
3STC32通过调整PWM占空比,使得云台带动激光点落在(0.2,0.05)坐标,并通过UART向图像处理模块发送[自动五点校准命令,附带参数为:当前校准第3个点,坐标为(0.2,0.05
4STC32通过调整PWM占空比,使得云台带动激光点落在(-0.2,0.05)坐标,并通过UART向图像处理模块发送[自动五点校准命令,附带参数为:当前校准第4个点,坐标为(-0.2,0.05
5STC32通过调整PWM占空比,使得云台带动激光点落在(-0.010.25)坐标,并通过UART向图像处理模块发送[自动五点校准命令,附带参数为:当前校准第5个点,坐标为(-0.010.25
6、图像处理模块自发计算透视矩阵M[3*3],并通过UARTSTC32发送。STC32接收后将其储存。
3)用户按下与STC32连接的[绕屏运行按键,STC32立刻调整PWM占空比,使得云台带动激光点绕着屏幕边框运动。由于红色激光部分与屏幕之间的位置关系固定,只需提前手动测量并储存屏幕边框四个点的坐标,即可通过简单插值让激光点绕着屏幕边框运动。
4)用户按下与STC32连接的[绕靶标运行按键,STC32通过UART向图像处理模块发送[进行矩形检测,并请求获取A4靶标的四个顶点图像坐标命令,图像处理模块识别矩形并通过UARTSTC32发送[返回矩形顶点在图像中的坐标命令,附带参数为:四个顶点在摄像头视角下的坐标值。STC32接收到之后,将坐标值与透视矩阵进行矩阵乘法运算,得到A4靶标的四个顶点在屏幕坐标系下的坐标,并立刻调整PWM占空比,使得云台带动激光点绕着A4靶标边框运动。

⑤图像识别模块发送给STC32UART指令





动作
指令
数据
1
红激光坐标
0x01
坐标(每个数值用两个字节,高位在前)
2
绿激光坐标
0x02
坐标(每个数值用两个字节,高位在前)


⑤绿色激光器部分工作流程与实现方法:
用户按下与STC32连接的[开始按键,STC32立刻进入[寻找模式,调整PWM占空比,使得云台带动绿色激光点快速在屏幕上扫描运动。图像识别模块不停地检测摄像头画面中的红色、绿色激光点并且将其坐标值通过UARTSTC32汇报。一旦STC32发现画面中出现了红色激光点,则立刻转入[跟踪模式,此时STC32会通过PID算法调整PWM占空比,使得绿色激光器跟随红色激光器;同时,STC32控制有源蜂鸣器发声,控制LED亮起,做到声光提示。








番外篇:由于这次电赛成绩比较菜,没太多好分享的经验。那就讲讲我与stc的故事,放一些我从第一次接触stc开始做过的一些小玩意吧~

小白阶段:

初二的时候,我偶然(真的太偶然,毕竟谁会看QQ资讯)通过QQ资讯看到螃蟹王国的一篇文章,是一个摇摇棒的制作教学,第一次接触到单片机这个词,淘宝一搜第一个就是STC89C52开发板(当时被这个芯片吓到了,以为所有单片机都这么大,长度达到5.5cm)。然后我速速下单了开发板和单片机,晶振啥的,纯手工飞线做了一个摇摇棒,把自己乐坏了。
be68c585aeddca2fd3a7f863b9d9495.jpg f33a62d238491b4daf63e97ea773203.jpg 3edc9cac3c68d781d5b548fe1e9a0ab.jpg c4cfff59c333a375525fa61f64e74d5.jpg

那个时候还不知道啥是c语言,只知道易语言,所以只能直接cv别人的程序。后来为了修改显示内容,就学了C基本语法,用易语言生成字模的C文件。再后来又用STC89c52等顺手做了旋转LED,
微信图片_20230907144410.jpg 微信图片_20230907144410_1.jpg 微信图片_20230907144409_5.jpg 微信图片_20230907144409_4.jpg 微信图片_20230907144407_4.jpg

写字机器,
微信图片_20230907144409_2.jpg 18ef5656d1418d8fa0b742d36852114.jpg 微信图片_20230907144406_2.jpg 微信图片_20230907144405_3.jpg
无线空中鼠标,
微信图片_20230907144407_1.jpg 微信图片_20230907144406_3.jpg 微信图片_20230907144407.jpg
激光雕刻机,
e2cc5f0519ad4d8f08d0d9ff1b27ab5.jpg cf5a2d17d5d6c3bae027ee09431c965.jpg 微信图片_20230907144405_2.jpg 微信图片_20230907144405_4.jpg 微信图片_20230907144406.jpg 微信图片_20230907144406_1.jpg

红外逻辑分析仪
微信截图_20230907150537.png

等等。那个时候我对STC特别好奇,因为官网很有特色,特别是那个大火炉,好像说是每个芯片出厂前都烤够8小时(不知道是不是这个意思)。有时候官网还会悬赏20万破解芯片加密,当时我还自不量力地去学了一段时间了单片机解密。还研究了一下STC-ISP,发现了几个彩蛋,比如软件标题说这个软件售价6000元,我还以为我免费下载到了是赚了6000。有的芯片如果设置了过高的内部振荡器频率,软件会让用户输入一个电话号码作为确认,那个电话号码我怀疑是姚总的。

进阶阶段:
2020年高三疫情居家,偶然看到淘宝推送2块多一个的全新热敏打印机芯,很好奇为啥这么便宜,可能是倒闭工厂的余料之类的。
93303b6ea45cb9777470efe8282bf3a.jpg

虽然便宜,但是没有任何资料,于是我花了五天时间全网搜资料,但是只搜到一个原厂类似产品的data sheet。在确认的引脚定义后就尝试用STC15W408AS,结果真的成功了,于是就做了一个错题打印机(网课时截屏直接打印知识点,真的太方便)。
微信图片_20230907144409_3.jpg 微信图片_20230907144408_1.jpg 微信图片_20230907144407_2.jpg 微信图片_20230907144408_2.jpg 微信图片_20230907144408.jpg

之后就一发不可收拾,每天我都会在淘宝找这种廉价全新的零件,然后疯狂找资料去用STC驱动。后面又陆续做了20块钱成本的针式打印机,
微信图片_20230907144407_3.jpg 4235965a673805925c9f063b24ef66a.jpg d52b67726ee3571de17ed5c1ede90a2.jpg a95ab68410a5275f7333ade9e6eee69.jpg dc8b803240eede0f9d6a6da3739d719.jpg d490b12a25588de989e0525c94b2b70.jpg

成本2块钱的加湿器,成本25块钱的可以打电话的计时器
微信图片_20230803135438.jpg 微信图片_20230907144409.jpg 微信图片_20230907144409_1.jpg

,成本5块钱的疝气强光灯等等。大学后我才知道原来这种人群被定义为垃圾佬。

大学后,我开始意识到8051的局限性,就开始用全志、星宸、瑞芯微、ESP32等较为高端的方案了,但是只要涉及到串口调试,我都习惯使用STC-ISP,因为STC ISP能够自动显示有效的串口号和设备名,而其他几乎所有串口软件都不支持显示设备名。大二的时候参加了广东省电赛,第一次用到屠龙刀,用于破解宿舍空调码,最终整个作品获得省一,拿到了姚总的1K赞助,从此爱上STC32,放个省赛作品视频


总之,STC真的帮我实现了很多想法,直到现在我还拖着五十多片STC15L104W和STC15W408AS,只要有一些比较简单的控制我都会想到它们两个(可惜STC15L104W没有UART,但是奈何体积小,很多时候还是用的它)。
最后的最后的最后,期待宏晶的175℃大火炉越烧越旺,薪火相传,蒸蒸日上!更期待STC推出可以跑linux(uCLinux)的soc!












截图202310221804416899.jpg
截图202310221804516658.jpg
截图202310221805011607.jpg
截图202310221805124006.jpg
截图202310221805216736.jpg

资料汇总.rar

9 MB, 下载次数: 7

资料汇总(源代码、原理图、视频介绍、图文介绍)

回复 送花

使用道具 举报

该用户从未签到

550

主题

9234

回帖

1万

积分

管理员

积分
13942
发表于 2023-9-8 19:44:44 | 显示全部楼层
开心,中山大学 来报道了 !
当年中山大学吴老师推荐,中山大学建设了 4个 STC实验室


广东省组委会也给力,证明也开了


回复 支持 反对 送花

使用道具 举报

该用户从未签到

1

主题

33

回帖

109

积分

注册会员

积分
109
发表于 2023-10-9 15:17:12 | 显示全部楼层
卧槽,大佬,中间那个介绍互联网+PPT既视感
回复 支持 反对 送花

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-29 06:47 , Processed in 0.070021 second(s), 40 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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