基于AS7341的室内可见光定位实验:1.AS7341试用与方案设计

2020-11-284747
AI 快速预览详细 收起
本文介绍了基于AS7341传感器的室内可见光定位实验。首先进行了常规测试,获取了10个光通道的数据。然后提出了实验方案,通过设置红、黄、蓝三种LED光源,利用三角定位法计算位置。解决了环境光干扰和测量光源距离的难题。
感谢这次主办方提供试用Gravity:AS7341的机会。
闲话不说,首先是(伪)开箱。包装很简单,一个传感器+ 一条连接线。

基于AS7341的室内可见光定位实验:1.AS7341试用与方案设计图1

然后是常规测试,产品维库  里写的很详细。
简单来说就是下载库文件 DFRobot_AS7341-master,按照 Readme.md 中的描述,放到 \Arduino\libraries\ 下面,再随便打开example\ 下面任意一个文件,就可以测试了。

我这里选的是 getData,获取10个光通道数据的sample:

基于AS7341的室内可见光定位实验:1.AS7341试用与方案设计图2

测试结果一(黑暗环境):

基于AS7341的室内可见光定位实验:1.AS7341试用与方案设计图3

测试结果二(开手机LED灯):

基于AS7341的室内可见光定位实验:1.AS7341试用与方案设计图4

可以看到F3(红)、F4(橙)、F5(黄)、F7(蓝)的通道数据明显上升。

本来还想测试50/60Hz闪烁频率的,但是手头暂时只有一块主控,没办法测。

----------------------------------------

试用就到这里,接下来说下实验方案。

基本设想很简单,就是在一定区域内设置若干LED光源,测量AS7341与各光源之间的距离,通过三角定位法计算出所在位置。
根据测试结果,AS7341能够分辨不同波长的光,因此可以在实验中设置红、黄、蓝三种LED光源,用于定位。
不过这里的难题有两个,一是如何避免环境光的干扰。我想这个可以在先测定初始状态下的环境光强度,然后再开启LED灯。
二是如何测量光源距离,这个问题查了不少解决方案,但好像都不太适合。目前我打算采用最笨的方法,预先测量出不同距离下的LED光源数值,获得一张光强-距离表,然后再用实验中得到的数据倒推距离。

大概设想就是这样,也欢迎大家指点更好的方案。

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(0)
- 没有更多了 -