基于ESP32模块利用检测线圈检测车模停止时间,室内视觉AI裁判系统
▌01 室内视觉AI裁判系统
1.背景介绍
在 ESP32检测调制激光信号程序优化 以及 测试ESP32S基本模块的功能,并验证是否可以应用在AI智能车竞赛检测激光信号中 中测试了 ESP32串口转WiFi双天线ESP32-S模组 用于 全国大学生智能车竞赛 中的 室内AI视觉组裁判功能。
在 ESP32检测调制激光信号程序优化 中测试了ESP32对于调制激光信号检测方案的性能。现在还生下了使用 传统比赛系统的线圈感应方式 来检测车模在AI视觉组动物标靶前的停留时间(需要停留3秒钟)。
▲ 赛道上目标靶位的检测方式
2.检测方案
(1)参考方案
根据 信标组裁判系统原理与实现 给出的电磁线圈放大方案,它是对于检测线圈给出的感应电动势进行放大之后送入单片机进行检测。
▲ 传统电磁线圈检测放大器方案
(2)方案修改
【Ⅰ.改变偏置电压】
为了 适应ESP32的AD输入通道(衰减6DB,检测范围 0 ~ 2V)电压范围的需要。将上面的电路中的R1,R2R_1 ,R_2R1,R2进行修改,分别修改为:
- R1,R2R_1 ,R_2R1,R2的电阻值:
-
R1=10kR_1 = 10kR1=10k
R2=20kR_2 = 20kR2=20k
这样输出信号的直流电压为1V,是ESP32的AD的检测范围的中间值。
【Ⅱ.增加放大通道】
由于需要检测车模进入以及离开的两个时间,因此将原本双线圈串联模式修改成单独检测模式,这样便可以比较精确进行判断时间间隔了。
将前面的线圈放大LMV321修改成LMV358,整个的线圈放大通道修改成两路。
▌02 信号放大电路
1.电路设计1
如下为实验电路SCH:
▲ 实验电路SCH
下面是 一分钟制版法 所使用的测试电路板PCB图。
▲ 快速制版设计的单面PCB
2.电路板的焊接与调试
下面是焊接后的电路板。
▲ 焊接后的电路板
(1)初步调试
工作电压为3.3V,输入线圈撤离。
- 通道1:静态电压:
-
分压电压:1.0964V
输出电压:0.652V - 通道2:静态电压:
-
分压电压:1.0937V
输出电压:0.674V
上述静态输出电压与PIN+的分压之间相差较大,这主要是因为对应的反馈电阻(10M)太大的原因。将106电阻修改成105(1M),输出电压提升到1.04V左右。
但是,对于1M,放大倍数太小了,折中一下,将电阻修改成5.1M。输出的静态电压变为0.8~0.9V 之间。
(2)增加线圈
- 线圈基本参数:
-
串联电阻:18.85Ω
电感:1.778mH
▲ 磁铁通过感应线圈后引起的输出信号的变化
▌03 使用ESP32采集信号
1.采集到的信号波形
(1)实验电路板
使用ESP32模块采集有放大信号输出的两路感应信号。
▲ ESP32 测试版测试感应信号
(2)采集波形
使用相同的采样率,对于输入到GPIO34,GPIO35两个通道的信号进行AD转换,形成采样后的数据波形。可以看到其中存在着明显的50Hz的干扰(0.5秒内,有25个周期)信号。
▲ 采集到的两路信号波形
(3)实验代码
#------------------------------------------------------------
adc1 = ADC(Pin(36))
adc2 = ADC(Pin(39))
adc3 = ADC(Pin(34))
adc4 = ADC(Pin(35))adc1.atten(ADC.ATTN_6DB)
adc2.atten(ADC.ATTN_6DB)
adc3.atten(ADC.ATTN_6DB)
adc4.atten(ADC.ATTN_6DB)SAMPLE_NUM = const(500)
AVERAGE_NUM = 16
ad1dim = [0] * SAMPLE_NUM
ad2dim = [0] * SAMPLE_NUM
ad3dim = [0] * SAMPLE_NUM
ad4dim = [0] * SAMPLE_NUMsample_point = 0
stop_flag = 0def ADC4Sample(_):global ad1dim,ad2dim,ad3dim,ad4dimglobal sample_pointglobal adc1,adc2,adc3global stop_flagad1dim[sample_point] = adc1.read()ad2dim[sample_point] = adc2.read()ad3dim[sample_point] = adc3.read()ad4dim[sample_point] = adc4.read()sample_point += 1if sample_point >= SAMPLE_NUM:sample_point = 0#------------------------------------------------------------
SAMPLE_PERIOD = 1time0 = Timer(0)
time0.init(period=SAMPLE_PERIOD, mode=Timer.PERIODIC, callback=ADC4Sample)
2.数据滤波
由于存在的干扰为周期(50Hz及其高阶谐波)对于采集到的数据进行平滑滤波。选择平滑数据的窗口为20ms,也就是20个数据取其平均值,这样就可以将50Hz对应的周期滤除。
▲ 使用20ms窗口平滑后的数据
filter1 = array([1/20]*20)
fdata1 = convolve(data1,filter1, 'validate')
fdata2 = convolve(data2,filter1, 'validate')
- 平滑滤波效果:
-
平滑前两个通道数据方差分别为: 8614, 6085
平滑后两个通道数据方差分别为:14.4, 11.26
▲ 使用40ms时间窗口平滑滤波后的数据
- 使用40ms时间窗口平滑滤波:
-
通道一的数据方差:7.94
通道二的数据方差:4.999
▲ 使用100ms时间窗口平滑滤波后的数据
- 使用100ms时间窗口平滑滤波:
-
通道一的数据方差:3.12
通道二的数据方差:1.36
下图是使用50ms对应的时间窗口进行平滑滤波。
▲ 使用50ms时间窗口平滑滤波后的数据
- 使用50ms时间窗口平滑滤波:
-
通道一的数据方差:143.9
通道二的数据方差:99.6
由此可以表面,对于周期造成去除的最好的方法就是采用周期噪声的周数倍数时间平滑。
3.有磁铁经过时采集到的信号波形
(1)原始信号波形
▲ 带有磁铁经过采集数据波形
(2)采用40ms平滑窗口滤波后的波形
▲ 带有磁铁经过时滤波后的采集数据波形
▌实验结论
待补充。
■ 相关文献链接:
- ESP32检测调制激光信号程序优化
- 测试ESP32S基本模块的功能,并验证是否可以应用在AI智能车竞赛检测激光信号中
- ESP32串口转WiFi双天线ESP32-S模组
- 第十六届全国大学智能汽车竞赛竞速比赛规则
- 第十六届全国大学生智能车竞赛竞速组-室内视觉组补充说明
- 信标组裁判系统原理与实现
- 一分钟制版法
线圈放大电路AD工程文件:AD\SmartCar\2021\LaserDetect\CoilSignal2.SchDoc ↩︎
基于ESP32模块利用检测线圈检测车模停止时间,室内视觉AI裁判系统相关推荐
- CV之FR之MTCNN:基于TF框架利用MTCNN算法检测并对齐人脸图像进(人脸识别/人脸相似度)而得出人脸特征向量从而计算两张人脸图片距离案例应用之详细攻略
CV之FR之MTCNN:基于TF框架利用MTCNN算法检测并对齐人脸图像进(人脸识别/人脸相似度)而得出人脸特征向量从而计算两张人脸图片距离案例应用之详细攻略 目录 基于TF框架利用MTCNN算法检测 ...
- 基于Unity引擎利用OpenCV和MediaPipe的面部表情和人体运动捕捉系统
基于Unity引擎利用OpenCV和MediaPipe的面部表情和人体运动捕捉系统 前言 项目概述 项目实现效果 2D面部表情实时捕捉 3D人体动作实时捕捉 补充 引用 前言 之前做的一个项目--使用 ...
- cv dnn识别动作规范 open_[mcj]基于Opencv-DNN模块的YOLOv3目标检测并保存视频(C++)|YOLOV3修改检测物体为特定类别如飞机行人...
在这篇文章中,我们将学习如何使用YOLOv3(一种最先进的物体探测器)与OpenCV. YOLOv3是流行的物体检测算法YOLO的最新变种- 你只看一次.已发布的模型可识别图像和视频中的80个不同对象 ...
- 基于esp32/8266利用c语言、micropython、lua、编写的寝室网络门禁系统
前言 本章所有代码均已上传至github https://github.com/Adancurusul/Bedroom_iot/tree/master/door/mqtt 感觉学习网络模块已经有一段时 ...
- 龙邱 MPU9250 模块接口 | 基于ESP32模块
简 介: 制作了MPU9250的转接接口,并利用舵机带动起旋转测量了模块测量角度功能. 关键词: MPU9250,ESP32 #mermaid-svg-dGY7dbxoXuc3EI5H {font-f ...
- 用启明云端基于ESP32模块的开发板来快速了解天猫精灵
为什么要了解天猫精灵呢? 在物联网时代,单纯的"互联"已经无法满足需求,需要让万物"智联"才能发挥它的应用价值.AI语音的简单.易用特性将成为万物"智 ...
- 基于ESP32的竞赛裁判系统功能调试-计时线圈功能
简 介: 对于智能车竞赛比赛系统中的电磁检测功能进行了调试,设置了程序运行的主要框架. 关键词: 智能车竞赛,比赛系统,计时系统,ESP32,电磁检测 §01 智能车竞赛裁判系统 中间间隔了一段时 ...
- 基于ESP32的竞赛裁判系统功能调试-激光信号调试
简 介: 通过揣进测试了新版的基于ESP32的裁判系统对于激光信号的检测能力. 关键词: 智能车竞赛,125Hz,激光信号 §01 智能车竞赛裁判系统 对于 基于ESP32的智能车竞赛裁判系统 中 ...
- AI视觉组基于ESP32的裁判系统第一版本设计要求
简 介: 面对第十六届全国大学生智能车竞赛中新增加的一些组别的要求,比如室内AI组,对于车模任务增加的检测任务,设计了基于ESP32为核心的比赛系统.本文给出了对于比赛系统功能的要求. 关键词: 比赛 ...
最新文章
- python 虚拟环境 tensorflow GPU
- struts2提交list
- mybatis-spring 项目简介
- 2012年寒假•青年基金【修改后发表】
- jQuery常用选择器有哪些?
- 苹果电脑 默认安装jdk位置_收藏起来你一定用的上!JDK的安装和配置
- ESXi与Linux主机配置syslog日志上传远程服务器
- cstringw转lpctstr_CString 和 LPCTSTR 之间的转换 及 LPSTR、LPWSTR、LPCSTR、LPCWSTR、LPTSTR、LPCTSTR的区分与转化...
- 解决tar.bz2解压报错
- Android插件化实现方案
- 用于黑客渗透测试的 21 个最佳 Kali Linux 工具
- 开发者必看:Google Play应用上架流程(希望你不踩坑!)
- 三星S5P 6818开发板无线使用ADB功能方法
- Attention Rollout
- LayUI实现Checkbox复选框的单选及取消单选,即只能选一个或者全都不选
- 瞬态抑制二极管TVS的基本知识
- 2021支付宝 商户私钥 + 商户公钥 设置教程
- 科学-天文学:天文学百科
- 公司新来了个00后测试工程师,一副毛头小子的样儿,哪想到是新一代卷王...
- 一起享受这场长沙互联网的饕餮盛宴
热门文章
- iptables7层过滤,屏蔽(QQ,MSN,迅雷,PPTV等)
- 京东全球购11·11战报:面膜售出430万片,爽肤水销售额是同期7倍
- 中国人工智能学会通讯——艺术与人工智能的明天——人机信任合作 一、人工智能在艺术上的发展...
- 多个不同的app应用间应该如何进行消息推送呢?
- Okhttp 使用与debug时留的大坑
- img src=/引发的问题
- Linux图形分区编辑器 GParted Live 1.0 Beta 发布
- 搭建zookeeper+kafka集群
- ip and port check 正则
- 《软技能:代码之外的生存指南》一一21.1 为什么博客如此重要