开源数据记录器的制作教程

电子说

1.2w人已加入

描述

步骤1:汇编

数据记录器

数据记录器

数据记录器

数据记录器

数据记录器

数据记录器

数据记录器

数据记录器屏蔽可以轻松堆叠在Arduino Uno板上。该屏蔽提供数据记录功能(计时和数据存储)。盾牌必须堆叠。必须将CR1220纽扣电池插入所提供的圆形插槽中,以便即使在Arduino断电时也能保持时钟运行。必须将SD存储卡插入提供的板载卡插槽中。通过使用RJ-9连接器母针和Arduino屏蔽堆叠头来开发独特的定制屏蔽。适当的接头焊接在适当的位置,以便屏蔽完全适合Arduino板。 Arduino一侧有18个引脚,另一侧有14个引脚。具有相同数量引脚的接头使用与Arduino相同的间距(相隔18个引脚)。标头附近的剩余额外空间用于放置RJ-9连接器。

标头是使用所需引脚的最佳方式,同时使它们仍然可用于其他组件。使用的传感器遵循I2C通信协议,该协议需要Arduino的4个引脚,即:SDA(也可用作A4),SCL(也可用作A5),3.3V和GND。从RJ-9连接器出来的四根电线焊接到这四个插头引脚中。所需的RJ-9连接器数量取决于传感器的数量。在这个项目中,使用了3个RJ-9连接器(两个用于BME280,一个用于TSL2561)。从RJ-9连接器出来的四根电线是彩色编码的,每条彩色电线都被指定为所有RJ-9连接器的特定引脚。必须注意的是,颜色代码可能因不同的RJ-9件而异。在这种情况下,必须注意连接器上导线的位置。焊接后,RJ-9连接器使用Feviqwik粘贴在矢量板上,使其固定在表面上。可以使用万用表上的连续性模式验证这些连接。在连续模式下,万用表应显示零电阻。将万用表的一个探头连接到焊接引脚,将另一个探头连接到RJ-9连接器内的引脚。万用表应发出音调,这意味着焊点是正确的,并且连接已正确。如果没有发出音调,请检查焊点。同样,用相同的导线焊接RJ-9连接器,连接到传感器分线板上的相同针孔,即A4,A5,3.3V和GND。 BME280传感器支持两个I2C地址,这意味着两个BME280传感器可以同时连接到同一个控制器。在这样做时,必须通过桥接传感器上的焊盘来改变其中一个传感器的地址。 ESP-01无线连接芯片需要与Arduino进行以下连接。

ESP-01 --------- Arduino Uno

10 -------------------- TX

11 -------------------- RX

Vcc ------------- --- CH_PD

Vcc ------------------- Vcc

GND ---------- ------- GND

注意: - Arduino Uno上的多个LED被移除以改善电池寿命。通过加热焊点并用镊子推动LED来移除电源指示灯LED,RX和TX LED。

步骤2:设置IDE和库

在进行任何编程之前,必须下载Arduino IDE(集成开发环境)。编程是在这个平台上完成的。需要不同的库与OPENSDL的不同组件进行交互。以下库用于给定组件。

组件-------------------------------- -------------------------------图书馆

BME280温度和相对湿度传感器--------------------------------- Cactus_io_BME280_I2C.h

光传感器----------------------------------------------- ----------------- SparkFun TSL2561.h

实时时钟------------------- ----------------------------------------- RTClib.h

SD卡插座---------------------------------------------- -------------- SD.h

I2C连接------------------------ ------------------------------------- Wire.h

一个单独的图书馆因为在Arduino上传的代码具有AT命令,所以发送到串行监视器,ESP-01从那里获取指令,因此不需要与ESP01通信。因此,基本上,ESP01运行的AT命令被打印到串行监视器中,这些命令被ESP-01视为输入命令。要安装这些库,请在下载后打开Arduino IDE,转到Sketch - 》 Include Library - 》 Add .Zip库,然后选择下载的库。

步骤3:编程系统

数据记录器

在编程OPENSDL之前,将Arduino与笔记本电脑连接。连接后,转到工具 - 》端口,然后选择连接OPENSDL的COM端口。此外,请确保在工具 - 》板下选择Arduino Uno。

开发OPENSDL以在两种模式下工作。在第一种模式下,它将数据存储在数据记录器屏蔽上的SD卡上。在第二种模式下,它通过使用ESP-01 Wi-Fi芯片将数据通过互联网发送到网站。这两种模式的程序是不同的。这些代码行可以直接复制并粘贴到Arduino IDE编辑器中,并直接使用。进入代码后,我们需要根据需要进行一些自定义:

手动更改代码末尾的delay(1000)值以更改记录间隔。值1000表示以毫秒为单位的间隔。

编辑代码行,其中显示mySensorData = SD.open(“Logged01.csv”,FILE_WRITE);并使用所需文件名的文件名替换Logged01。也可以通过在文件名后面修改.csv扩展名来更改文件的扩展名。

通过查找主/参考传感器和BME280之间的相关性来实现的校准公式将随每个传感器而变化。将此行代码替换为校准传感器的公式:Serial.print((1.0533 * t2)-2.2374) - 对于具有默认地址(0x77)的传感器,其中t2是从温度传感器读取的值。

已经提供了一个单独的程序来编程OPENSDL的第二种可用模式,即无线系统。必须根据步骤#2中说明的连接将ESP-01连接到OPENSDL。完成连接后,将Arduino连接到笔记本电脑,并在Arduino中上传空白草图。将ESP-01置于更新模式,并将固件更新为最新的可用更新。更新后,确保将Arduino的复位引脚与3.3V引脚相连,该引脚绕过Arduino引导程序

步骤4:制作

数据记录器

数据记录器

数据记录器

数据记录器

数据记录器

为保护创建了OPENSDL的外壳并提高了美感。外壳采用PLA材料通过3D打印开发,微控制器的外壳通过激光切割MDF板并将这些部件粘合在一起而开发出来。 3D打印模型采用SketchUp软件开发,激光切割2D dxf图纸采用AutoCAD创建。

对于3D打印,使用SketchUp生成的STL文件在Ultimaker Cura 3.2.1软件中打开并检查。确保使用PLA材料,并且所用打印机的喷嘴用于0.4mm打印。 3D打印机的构建板可能需要胶水来粘贴3D打印物体。但是当打印完成后,胶水会在打印物体和底板之间产生强烈的粘合力。

步骤5:代码

代码( .ino文件)可以在Arduino IDE软件中使用。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分