首页 > 评测 > VL6180X距离、光线传感器上手体验

VL6180X距离、光线传感器上手体验

VL6180X   距离   光线   传感器   ST   ToF   
  • 作者:liuluqqzj
  • 来源:21ic
  • [导读]
  • 意法半导体出品的VL6180X是一款专业、精准的传感器模块,不论是距离检测还是环境光检测,其稳定、可靠性要远远 高于普通的超声波模块及光传感器)。因此,其上手难度也高于一般的传感器模块。
123123.PNG

图7. 检测金属物体时的阈值设置

环境光传感器模式

VL6180X模块可以在一个相当宽泛的范围内测量所接收到的环境光,其测量的原理为计算单位时间 (100ms)内光孔所接收到的光量,至于为啥是100ms,因为大多数应用都是这么设置的(嗯,手册上说 的)。因此,若要测量不同的光强度,推荐设置模块的测量量程,而不是修改采样时间。

此外模块接收到的实际光量值会受模块光孔的角度影响,如图8所示:模块接收光量的最佳范围在一个 圆锥体内,超过该圆锥体,测量的实际值也会受到较大的影响,整体的值也呈现一个正态分布的效果。

QQ截图20160826194953.png

图8. 光孔位置及接收角度示意图

对于偏移校准及串扰补偿方法,此处不再过多详述,始终铭记这是评测,这是评测,不是教程,打住。

Demo上手测试

为试验VL6180X的实际测量效果,此处使用STM32F0308-Discovery开发板驱动该模块,如图9所示:

123456.jpg

图9. 评估板测试准备

选好板子连好线后,首先需要建立一个新工程,因此需要去ST官网下载STM32F0308-Discovery的软 件支持包en.stm32cubef0.zip及VL6180X模块的软件支持包ja.STSW-IMG003。为加快测试效率,可以直接 把STM32F0308-Discovery的I2C例程搬过来修改,这样就不用从零开始配置环境了。

完成第一步之后将VL6180X软件支持包中的相关文件导入进工程,这里我们需要添加的文件如图10所示:

234143.PNG

图10. 工程文件结构

其中vl6180x_app.x、vl6180x_i2c.x及vl6180x_gpio.x是额外创建的新文件,这几个文件与平台有关, 针对不同的处理器,需要做对应的移植修改。将相应文件添加进来后,再配置工程的头文件路径,完成后 的工程如图xx所示:

接下来要做的就是移植vl6180x到f0308平台,这也是测试过程中的主要工作,描述代码的过程始终觉 得是比较蛋疼的一件事,简单的说,就是:1. 照着例程依葫芦画瓢的修改了I2C的底层驱动代码以及引脚配 置的一些代码;2. 额外增加了一个vl6180x_app.c文件,用于实现4个小demo中的一些打印信息函数及模 块初始化函数。感兴趣的同学可以直接访问我的代码库获取该工程:测试Demo URL

完成上述工作后,编译-烧写-调试-打印,距离测试的打印结果如下:

log1.png

  • 本文系21ic原创,未经许可禁止转载!

网友评论