当前位置:首页 > 文章中心 > 正文内容

用 Arduino DIY便携式紫外线指数仪

dgx6662周前 (05-26)文章中心11


MAKER:fmarzocca/译:趣无尽 Cherry(转载请注明出处)
本期带大家自制一款便携式紫外线指数仪。不论是皮肤患者还是爱美的小姐姐,这款小仪器真的非常实用。这款紫外线指数测量仪主要是由Arduino Nano rev3,一个UV传感器,一个直流变压器(用以提高3v电池电压),以及一个小型OLED显示屏构成。

我的主要目标是为了方便携带,这样我就可以在任何时间和任何地方轻松了解紫外线指数。

材料清单

1、Arduino Nano rev3
2、ML8511 紫外线传感器
3、128×64 OLED 显示屏(SSD1306)
4、MT3608 DC-DC 变压器
5、CR2电池
6、CR2电池座
7、开关
8、外壳

传感器说明



ML8511是一种紫外线传感器,适用于室内或户外读取紫外线强度。 ML8511内部配有放大器,可根据紫外线强度将光电流转换为电压。这种独特的功能可以为ADC等外部电路提供了简便的接口。在省电模式下,通常待机电流为0.1μA,从而延长电池寿命。

特征:

  • 对UV-A和UV-B敏感的光电二极管
  • 嵌入式运算放大器
  • 模拟电压输出
  • 低电源电流(典型值300μA)和低待机电流(典型值0.1μA)
  • 小而薄的表面封装(4.0mm x 3.7mm x 0.73mm,12引脚 陶瓷封装QFN)

  • 可惜的是,我没有找到任何紫外线透明材料来保护传感器。我测试过的任何一种透明盖子(塑料,玻璃等)都会减弱紫外线测量。更好的选择可能是熔融石英玻璃,但我没有找到合理价位的材料,所以我决定将传感器直接裸露的放在盒子外面。
  • 操作说明


  • 测量紫外线的方式非常简单,只需打开设备并将其指向太阳几秒钟,使其与太阳光线的方向保持一致。然后在显示屏上观察:左侧的指数始终显示瞬时测量值(每个200毫秒一个),而右侧的读取是期间的最大读数:这正是你需要的值。
    在显示器的左下部分,还报告了测量的UV指数程度(低度,中度,高度,非常高,极度的高)。
  • 电池电压和读数

  • 我选择CR2电池是因为它的尺寸和容量(800 mAh)。整个夏天,我都在使用UltraV,电池仍然可以读取2.8V。这个选择我非常满意。
    操作时,电路消耗大约100 mA,但读数测量不会超过几秒钟。当电池额定电压为3v时,我增加了一个DC-DC升压转换器,使电压达到9v时,将其连接到Vin引脚。
    为了在显示器上显示电池电压,我使用了模拟输入(A2)。 Arduino模拟输入可用于测量0到5V之间的直流电压,但这种技术需要校准。校准时,你需要一个万用表。
    1、 首先使用最终选择的电池(CR2)为电路供电,而不是使用计算机的USB电源。
    2、 在稳压器上(在Arduino 5V引脚上找到)测量Arduino上的5V电压。默认情况下,此电压用于Arduino ADC参考电压。现在将测量值放入草图中,如下所示(假设我读取的是5.023):

  • voltage = ((long)sum / (long)NUM_SAMPLES * 5023) / 1024.0;


  • 在草图中,我将电压测量值作为10个样本的平均值。
  • 原理图和接线


  • 软件安装

  • 对于显示器,我使用了U8g2lib,它非常灵活,功能强大,适用于这种OLED显示器,允许多种字体选择和良好的定位功能。
    关于ML8511的电压读数,我使用3.3v Arduino参考引脚(精度在1%以内)作为ADC转换器的基础。因此,通过在3.3V引脚上进行模数转换(将其连接到A1),然后将此读数与传感器的读数进行比较,我们可以推断出真实的读数,无论VIN是什么(只要它高于3.4V)。

  • int uvLevel = averageAnalogRead(UVOUT);
    int refLevel = averageAnalogRead(REF_3V3);
    float outputVoltage = 3.3 / refLevel * uvLevel;


  • 完整代码在文件库自行下载。
    http://make.quwj.com/project/76
  • 外壳设计


  • 我使用CAD应用程设计了外壳,并尽可能地使用最小的尺寸,我将CR2电池安装在外壳的背面(电池盒粘在盒子上)。
    请在文件库中下载STL文件。
    http://make.quwj.com/project/76
  • 组装图片





  • 还需改进的地方

  • 1、使用紫外光谱仪测量各种条件下的实时紫外线指数(紫外光谱仪非常昂贵)。
    2、使用Arduino微控制器同时记录ML8511的输出。
    3、写入算法,在标准的大气条件下实时将ML8511输出与实际UVI值联系起来。
  • 扫描二维码推送至手机访问。

    版权声明:本文由第六芝士网发布,如需转载请注明出处。

    本文链接:http://www.dgx666.com/post/1914.html

    标签: arduino下载
    分享给朋友:

    “用 Arduino DIY便携式紫外线指数仪” 的相关文章

    如何在电脑中安装更多好看的字体

    前段时间分享了一个如何自己动手做一个自己喜欢描红练习贴的视频,好多网友私信问,如何可以像我一样有这么多好看使用的字体。比如我们需要写一份汇报报告,需要的标题就是“方正小标宋简体”,如下图:又例如一些政府部门的正文需要“仿宋_GB2312”还有我之前课件中提到的自己制作的描红贴,一些书法家的字体。还有...

    CAD2007基础入门槽孔图纸绘制 #cad2007

    大家好,今天给大家分享一个简单的入门绘图案例。1. 这是一个八十的距离,这里也是八十,这里是一百六,这里面是一个二十。这个图非常简单。2. 第一步,直接输入矩形的命令 ic,输进去空格,指定第一个角点鼠标点一下。3. 第二步,设置尺寸,所以输入 d 空格,第一个距离八十,输进去空格,八十输进去,然后...

    CAD2007怎么安装?CAD2007中文版的安装教程

    CAD2007是很多从事建筑设计,尤其是结构设计最经常使用的一款专业绘图软件。不少网友下载了CAD2007安装包之后,却不会安装CAD2007,因为他下载的CAD2007的英文版,而一些网友下载了CAD2007中文版的网友,却因为不是在NET2.0以上的安装环境而安装失败。今天,小编就给大家演示一下...

    安装累积更新后 使用DirectX/Direct3D的Windows应用发生崩溃

    微软证实,在安装11月的KB5019980更新后,Windows上有一个新问题导致应用程序崩溃。据该公司称,它影响到过时的英特尔GPU驱动程序,导致使用DirectX或Direct3D的应用程序出现问题。"安装KB5019980后,在使用26.20.100.7463至30.0.101.1190版本的...

    日常生活中事情太多,记录很重要,win10电脑桌面如何添加备忘录

    电脑桌面备忘录Win10如何给桌面添加备忘录?在我们的日常生活中,我们经常记录重要的事情来提醒我们不要忘记。在Win10系统中,我们还可以在桌面上添加备忘录,时刻提醒我们。那么我们该怎么办呢?下面,小编给大家分享一下Win10桌面添加备忘录的具体操作方法。1.点击开始菜单,点击设置图标,进入设置界面...

    桌面便签怎么设置提醒,哪个备忘录便签好?

      2024年终于开工了,第一天上班比较迷茫,不知道做什么比较好,这个时候如果有一款简单好用且可提醒的桌面便签软件该多好。那么,桌面便签怎么设置提醒,哪个备忘录便签好?  桌面便签怎么设置提醒,哪个备忘录便签好?功夫不负有心人,找了好多个终于找到了一款叫好用便签的电脑桌面便签软件,不仅设计简单,而且...