• 正文
  • 相关推荐
申请入驻 产业图谱

CW32助力2025电赛之5路循迹模块使用说明(附资料)

07/30 11:25
886
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

马上就要开始正式比赛了,希望各位同学以初心赴赛场,以实力夺国奖!

现在接下来要做的:

1. 根据自己的目标赛道,结合官方给出的设备及器件准备清单,再次检查一下,看有无遗漏的?如果材料还没有到,可以准备个B计划。就算没有B计划,也不要紧张,记住“冷静比急追更有效”,赛场从不缺逆转的可能。

2.今晚,别再对着电路图熬到深夜了。下午5、6点,就可以离开实验室,约上队友去吃顿好的,然后洗个舒服的澡,早点睡觉。充好能量,方能应付接下来高度紧张的4天3夜。

3.明天7点前起床,一般7点多官网就发出题目了。不要等到8点才起来哟~要争分夺秒啊!当题目在官网弹出时,你们有足够的时间拆解需求、比对优势——那些在实验室里练熟的算法、摸透的模块,早已帮你们圈定了“最优解”。

4.看到题目,保持平常心,选择一个有准备的,适合自己的。不管结果如何,4天3夜的过程十分重要!

5.明天,赛场见;之后,国奖见!

什么?你说你还没买到一个好模块?现在下单CW32生态社区的全新5路循迹模块,给你的电赛小车加把劲儿~

一、模块概述

适配广、调节灵、记忆准、好安装

我们基于CW32L010芯片设计的5路智能巡线模块,从实用性出发,解决了传统巡线模块的诸多痛点。

适用各种地图、各种颜色的线:通过可见光发射与光敏极管接收的组合设计,能精准区分黑线、白线、绿线、红线、蓝线......;即使轻微抖动(如手持时),也能稳定识别,避免误判。比赛地图识别率高达95%以上。

一次校准,长期生效:校准后的数据会被模块永久记录,断电再上电无需重复操作。一张地图校准完成后,后续使用全程免校准,省心又高效。

适配所有智能小车自带万能安装孔位结构,支持各种间距的安装,无论你想安装在什么样的小车或是机器人上面,都能轻松胜任。

开源智能硬件原理图开源,程序源代码公开,注释清晰。所有参数清楚明白,可以按自己的需求,随便修改。不但可以当模块使用,还可以当嵌入式开发板来学习。

CW32L010芯片的主要特点:

CW32L010是武汉芯源半导体有限公司推出的基于ARM Cortex-M0+内核的超低功耗MCU,主频高达48MHz,工作电压宽达1.62V~5.5V,适用温度范围-40℃~85℃。其主要特点包括:

存储与性能:集成64KB Flash(数据保持25年)和4KB SRAM,支持高实时性应用。

超低功耗:待机电流仅0.3μA(常温),85℃高温下漏电低至1.2μA,支持Sleep/DeepSleep模式。

高安全性:独创指令总线保护机制,可隔离敏感代码区域,防止黑客通过数据总线窃取核心算法。

12位ADC:2MSPS采样率,16路输入。IO为全ADC口,使用方便。

高级定时器支持6对互补PWM输出及移相功能。

UART(支持LIN/RS485)、SPI、I?C等接口。

高精度RTC(补偿精度0.060ppm) 。

高可靠性:通过±600mA闩锁测试(行业平均3-6倍),增强抗干扰能力 。

二、基本操作说明

模块安装

通过铜螺柱、螺丝、万能安装孔位,安装在小车上,建议安装高度:5路LED灯底部离地图面1~2CM。

传统比较器的模块,对安装高度和水平都有很高要求。我们这个模块,智能识别,对安装无特别要求,螺丝连接拧稳定就好。

安装示意图见模块接线节。

2.模块接线

??(1)模块的供电

为了保持良好的识别效果,建议使用5V供电!

从主板的5V、GND连接到模块H1或H2插头上的5V、GND。

模块内置二极管,接反电源灯不亮,不会烧坏板子。

如果接上电源,LED不发光,请检查电源供电是否正确,接线有没有反?

模块输入电压DC?3.3~5.5V,要求供电侧最大输出功率要达到200mA

模块支持输出TX的LED的电源关断功能,需要自行修改源代码

隐藏彩蛋:TX开关功能,也可以扩展为光通信、光调制等功能,也可以关断发射,采集环境光强,以采取不同的控制判别策略,可有效增强模块的抗干扰能力,需要自行修改源代码

? (2)模块与主控MCU的连接

模块的输出接头H1的CH1~CH5,依次连接到小车控制板或主控MCU的对应IO接口。

对应的探头压在黑线上,是输出高电平

?注意:模块供电是5V时,输出高电平也是5V。连接STM32时,必须连接到5V电平兼容接口!不然要烧主控MCU

隐藏彩蛋:如果连接到不支持5V电平的MCU,请将模块的CH1~CH5通道的IO输出模式配置为OC电极开漏模式)的输出模式。然后在MCU侧的IO配置中,请配置为上拉输入模式

3.第一次使用校准

用户拿到模块,首先参照上面第1、2节安装好模块,并连接好供电线,就可进入第一次使用的校准模式了。

注意:必须要先安装到车体上,再开始校准!不建议用手拿着模块进行校准。

具体操作如下:

模块上电,下面寻线的5颗发射灯发光,中间的五路指示灯开始闪烁,表示模块已经进入校准状态”。

把五路LED灯放在图纸上空白干净的区域(非黑线区),参考第2节模块接线处的图片。

短按一下模块上的校准按键,开始进行校准,校准时,五路指示灯会长亮约1秒,此时请勿触动车体及模块!

校准结束,指示灯快闪2次后熄灭,表示校准完成

可以把CH1~5路灯分别置于黑线上,看对应通道的输出指示灯是否亮起?如果在空白区域灯灭,在黑线区亮起,则校准成功。

如果校准不成功,可以长按校准键,重新校准。(具体操作参见下一节)

4.后续使用的再次校准

当用户采用不同地图时,或者小车所在的光的环境发生了明显的变化,或其他原因,导致循线指示不准确时需要对寻迹模块进行再次校准

在模块上电状态时,长按校准按键(>1秒),五路指示灯开始闪烁,表示模块已经进入“校准状态”。

在指示灯闪烁时,再次长按校准按键,可以退出校准模式。此时原校准数据不会改变。

把五路LED灯放在图纸上空白干净的区域(非黑线区),参考第2节模块接线处的图片。

短按一下模块上的校准按键,开始进行校准,校准时,五路指示灯会长亮约1秒,此时请勿触动车体及模块!

校准结束,指示灯快闪3次后熄灭,表示校准完成

可以把CH1~5路灯分别置于黑线上,看对应通道的输出指示灯是否亮起?如果在空白区域灯灭,在黑线区亮起,则校准成功。

如果校准不成功,可以长按校准键,重新校准。

如果反复校准,均不能准确识别需要循线的线条,请检查地图是否没铺平(有较大折叠),是否有污渍等。如果还是不行,请看下述第章,高级操作。

三、工作原理简介

硬件原理

模块的发射(TX)为高亮度白光LED,接收(RX)为光敏三极管

当模块处在地图的空白区域(通常为白色),TX白光,经过白色区域时,光线几乎都反射到了接收RX,RX光敏三极管几乎全开通,此时对应的CH1~5的测试点位置的电压就较低,接近0.2V。

当经过黑色线条时,线条会吸引大部分光线,RX光敏三极管上接收的光线较少,此时RX几乎不开通,对应的CH1~5的测试点位置的电压就较高,可达2~3V

不同颜色的线吸收白光不一样,测到的电压会有差别。不同工艺制作的地图,反光不一样,测到的电压也会有差别。

另外,环境光强也会影响些电压。当环境光较强时,建议采取遮光措施,或者采取更高级别的控制算法(如:加入调制解调控制,或改变传感器等)。

硬件原理图如下所示:

2.软件算法简介

MCU不断地采集CH1~5的接收管(光敏三极管)亮度的ADC数值,并不断地与存储的校准数据相比较,如果它们的差值大于COMPARE_VALUE的设定值,则认为此通道压在线条上,对应通道(CHX)输出高电平。

四、高级操作说明

如果反复校准,均不能准确识别需要循线的线条,那可能是因为寻迹模块当前程序里的设定参数适配不了您的实际环境。

这时,您可以通过修改源代码或者配合万用表测试进行调试,以实现灵活的需求,程序源码链接放在了此文最末尾。

程序中阀值(比较值)的修改

根据地图和环境条件可以更改地图空白部分和识别线的线的比较条件(COMPARE_VALUE)这里默认为200ADC采集的代码值),对应电压约为0.24V

循线的线条识别算法为MCU不断地采集接收管(光敏三极管)亮度的ADC数值,并不断地与存储的校准数据相比较,如果它们的差值大于COMPARE_VALUE的设定值,则认为此通道压在线条上,对应通道(CHX)输出高电平。

COMPARE_VALUE的设定值越小,识别灵敏度越高太小容易误动作,如:地图上的一点异物或车体的抖动,都有可能识别为黑线值越大,识别灵敏度越低,抗干扰能力会强,但太大,又会导致无法区分黑线和白线

COMPARE_VALUE的值应该设置多大合适呢?需要结合第2节的万用表测试来定。(200是我们的经验值,一般地图环境都合适。但如果光照强或地图反光严重,可能要调小!

下列图展示了如何在程序中找到COMPARE_VALUE,并修改的设定值的过程。

2.如何使用万用表测试

当地图比较反光、或环境光线变化大、或需要寻线的线条是红色等情况下,可能需要使用万用表,分别测试地图空白区域的接收管电压,以及寻线线条上的电压,并分别记录下来。进行分析,得到合适的参数。

先把小车及模块放在地图空白区域:黑表笔插在GND孔,红表笔分别测量CH1~CH5的5路接收管电压测试口,记录下空白区域的电压值V1。(一般地图在0.2V左右)

再把模块对应的CHX压在地图的线条上:黑表笔插在GND孔,红表笔分别测量CH1~CH5的5路接收管电压测试口,记录下压在线条的电压值V2。(一般黑线可达2~3V,绿线、蓝线在1~2V;红线在0.5V左右)

计算电压差:Vs=V2-V1;根据电压差值Vs/2(取Vs/2是为了提高抗干扰能力),去调整软件中COMPARE_VALUE参数。

示例:假设测得V1=0.2V;V2=1.8V;Vs=V2-V1=1.6V;Vs/2=0.8V。

0.8V约对应655个代码值;(按5V对应12位ADC的代码值为4095计算,1.2mV对应1个代码值。)

此时,COMPARE_VALUE参数建议设为600(保守一点可设400)。这时可以获得较好的灵敏度及较强的抗干扰能力。

模块放在地图空白区域时,CH1的电压值,如下图所示:

模块对应的CHX压在地图的线条上,黑线的电压值,如下图所示:

模块对应的CHX压在地图的线条上,绿线的电压值,如下图所示:

模块对应的CHX压在地图的线条上,蓝线的电压值,如下图所示:

模块对应的CHX压在地图的线条上,红线的电压值,如下图所示:

五、资料下载及链接

淘宝采购连接

https://item.taobao.com/item.htm?ft=t&id=947297771993&skuId=5857250908485&spm=a21dvs.23580594.0.0.1d292c1bJWpEzn

2.百度云盘资料下载链接

https://pan.baidu.com/s/1QaPHRhB0Qrbj22XuxJwKEw?pwd=CW32

提取码: CW32

相关推荐

登录即可解锁
  • 海量技术文章
  • 设计资源下载
  • 产业链客户资源
  • 写文章/发需求
立即登录

以开放、共享、互助为理念,致力于构建武汉芯源半导体CW32系列MCU生态社区。无论是嵌入式MCU小自还是想要攻破技术难题的工程师,亦或是需求解决方案的产品经理都可在CW32生态社区汲取营养、共同成长。