|
在本篇文章中,我们将向您展示如何使用Arduino UNO开发板、OLED显示屏(SSD1306)和BH1750传感器模块制作一款照相曝光计。
如果您使用胶卷相机拍摄照片,那么可以使用本文介绍的方法来制作自己的曝光计,以便随身携带在相机包中。该曝光计还可用于人像摄影,因为您需要良好的光线才能最好地拍摄。 BH1750传感器的结果可能不是100%准确的,但价格便宜。
什么是照相曝光计? 在模拟照相中,人们一直都在使用曝光计来测量与其胶片ISO相对应的光线。
对于当今的数码单反相机,这些都是数字的并且是内置的。曝光计基本上是用于测量落在物体上或从物体反射的光量的仪器。该传感器收集数据,并将测量结果转换为可用信息,然后通知快门速度和拍摄好照片所需的光圈大小。
常见的曝光计示例
曝光计广泛用于风景设计和摄影领域,以设置场景的最佳照明。它们还用于建筑照明设计中,如果您想用适量的光来种植非季节性植物,它们会派上用场。
BH1750数字光传感器 BH1750数字光传感器通过I2C总线接口工作。它主要用于手机中,以自动调整LCD和键盘背光。该传感器的感应范围为1至65535 lx。
BH1750数字光传感器。
BH1750规格 ● 小电流消耗 ● 50hz-60hz噪声抑制功能 ● I2C通讯 ● 亮度至数字转换器 ● 宽范围和高分辨率(1-65535 lx)
自制曝光计功能 数字曝光计在市场上确实很昂贵,而模拟曝光计不是很精确,使用起来很不方便。自制的这款成本不到7美元,可以使用普通的电池组供电。该仪表可以执行以下操作: ● 环境光感应 ● ND滤镜校正 ● 光圈优先 ● ISO范围从8到4000000 ● 读取Lux单位的亮度 ● 手电筒测光 ● 显示曝光值,EV ● 光圈范围从1.0到3251 ● 快门速度范围为1/10000至133秒 ● 快门速度优先 ● ND滤镜范围ND2 – ND8192
所需的硬件 ● Arduino UNO开发板 ● 按钮 ● 面包板 ● SSD1306 SPI OLED ● BH1750模块
所有必需的硬件。
硬件接线 如下面的Fritzing图所示,对所有组件进行接线。如果您使用的是其他版本的Arduino,请按照实际的引脚信息进行连接。
正确连接所有硬件后,您的项目应类似于下图所示的构建。
所有硬件都连接好。
必备软件 ● BH1750库 ● SSD1306库 ● Adafruit GFX库
从上面的链接下载Arduino IDE和所有必需的库。如果您是初学者,请按照Arduino IDE入门指南来帮助您在计算机上设置Arduino IDE。
要将下载的库添加到Arduino,请转到Sketch-> Include Library-> Add. Zip Library。对所有库重复此步骤。
添加库之后,将Arduino开发板与计算机连接。然后转到Tools-> Board-> 选择Arduino UNO开发板。 现在转到Tools-> Port-> 选择COM PORT。本例中串口号是COM3。 将项目代码复制并粘贴到Arduino IDE中,然后单击上载按钮。
上传代码后,启动Arduino。您应该看到OLED显示信息。用户界面中有六个按钮,它们可以执行以下操作: ● 按钮1 - 测光 ● 按钮2 - +值 ● 按钮3 - -值 ● 按钮4 - 测光模式 ● 按钮5 - 菜单 ● 按钮6 - 优先级(ISO /无过滤器)
本文使用的完整代码如下:
lightmeter.zip
(6.11 KB, 下载次数: 16)
|