这篇文章主要是记录一下LTR-390的代码,以及在使用中遇到问题;
这是一款波长在310nm左右的紫外线传感器,优点主要就是价格便宜,缺点就是这个检测波长有点不上不下的,即不靠近UVA也不靠近UVB,其实还是有点鸡肋的。
分辨率可以达到20bit并且带18倍的增益,基本能满足设计需求
一、规格参数
点击链接查看数据手册;不过这一份手册是最基础的,没有介绍传感器的数值计算方式,可以参考《LTR-390UV_Final_ DS_V1 1.pdf》这份文件,也是找了不少资料才发现嘉立创数据手册有缺陷,不知道什么情况.
光谱曲线数据图如下:
从上图可以看到照度数据的波峰大概在600nm,uv数据的波峰大概在310-320nm,
电源参数如下:
这块芯片推荐是3.3V电源,IIC驱动。
二、硬件电路设计
这部分内容见规格书,有推荐的原理图,并且和普通的IIC电路没区别
三、固件程序设计
目前这块芯片主要还是搭配单片机进行设计,主打一个价格优势,所以IIC驱动都是现成。
IIC驱动
驱动地址:0x53;
芯片地址与说明
这部分详细的还是要参考规格书,从规格书中,我认为比较重要的是以下几个寄存器
| 地址 | 含义 |
| :———: | :————————-: |
| 0x00 | 激活芯片与设置工作模式|
| 0x04 | 设置分辨率与采样时间|
| 0x05 | 设置传感器增益|
| 0x0D-0x0F | 照度数据|
| 0x10-0x12 | 紫外线数据|- 计算照度与紫外线数据
这部分内容可以查看《LTR-390UV_Final_ DS_V1 1.pdf》文件的第7节
当然不想看也可以看
* 照度数据的计算即使没有这个公式,自行使用标准源进行校准,其实也是准确的
紫外线计算公式如下
如果需要计算UVI,参考
这里的𝑈𝑉 𝑆𝑒𝑛𝑠𝑖𝑡𝑖𝑣𝑖𝑡𝑦
规格书中是1810,也有2300的,还是推荐使用1810这个值,2300是我在github上找的时候,忘记那篇issue提及了如果需要计算uw/cm^2 ;这部分就需要标准表与标准光源,不过我在国内找了许久,并没有找到价格合适并且带计量报告的标准表,只能使用一个爬宠紫外线照度表加上一个310nm的紫外线光源进行标定,
也买了林上的紫外线照度表,不过他的响应曲线不好,几个购买的表差距都挺大的,难顶。
完整的数据文件,点击下载