haoDIY创好电子音响电脑科技DIY小制作发明移动版

主页 > 电子DIY > 译文美国DIY综合制作 >

用光子粒子温度远程报警

用光子粒子温度远程报警

这是我的第一个命令,所以请忽略错误,大多数人似乎是显而易见的。我会学习,我走。

背景

我从一个朋友谁拥有在科罗拉多山区的一个比较偏远的地方,小屋里有个要求,在零下的温度在冬季严重是常见的。他的小屋不是那么遥远,它没有电或电话,或最重要的是,DSL网络。每年冬天,他会担心电力会出去或电基板加热器会失败,造成室内降到零度以下,最终导致他的供水遭受严重损伤。他的要求被以某种方式在丹佛他的小屋用他现有的互联网和WiFi的温度和电源监控。由于我是并仍然是试图了解微处理器中,我试图设计解决方案。

该项目完成后,将监测舱内温度和功率和发送电子邮件时,要么成为一个问题,再加上触发电话所以深夜断电不被忽视,直到为时已晚。要完成这一切,我需要访问“云”和报警系统会发送电子邮件和打电话。

为解决发展缓慢我研究问题的思路。从这里- Instructables许多选项来找我。我找到了一个完美的微控制器与无线的板和廉价的光子的粒子。我的两个主要要求解决!它是相当小,足够的电力来运行电池足够长的呼救。加上免费订阅的光子云,我爱那“F”字。和顶部它关闭,光子和IFTTT(如果这样那)联手还免费提供一些框架的应用程序,不做通知。其他的处理器,可能做的工作是Raspberry Pi的,但在一个较高的初始价格和更高的功率要求,并没有直接访问云(我知道的),它会在另一个项目上。(只是注意到Raspberry Pi释放PI零WiFi -超级便宜。哇。)

微粒

我用一粒光子P0板(的<em>装置</em>)这是一个免费的云订阅。这使得事件在我的代码是“发表”,或<em>发送</em>到云,然后触发某些应用程序提供的IFTTT /粒子打电话和发送电子邮件警报。电话和警报是至关重要的元素,因为他们通知可能需要立即关注的问题房主。在这种特殊情况下,房主将有检查机舱附近的常驻居民接触的关键。

除了公布事件的云也允许变量的代码进行监控。例如,当前温度和电池电压总是可用的任何代码,想看他们<u>从</u>云。在我的情况下我使用一些HTML代码运行在浏览器中显示温度,报警状态、电池电压、报警信息等工作,加上在另一个方向,所以我可以调整触发温度从浏览器或掀起一个邮件测试。非常好用的东西,但这需要一个人坐在电脑前而不是公布事件午夜突发事件的价值。

IFTTT

如果这样,(https://ifttt.com)有数以百计的预建的应用程序与各种服务和硬件。粒子提供了一系列的程序监控其云变量和事件IFTTT(其他类)允许用户(你和我)选择合适的触发。我可以,例如,使用一个应用程序的IFTTT粒子监测温度为某一特定值时,发出警报,如果舱内低于这个值。然而,我选择让我的光子代码(C++)进行监测和发送(发布)适时的事件。粒子的IFTTT应用程序能够响应事件,然后发表发送电子邮件或拨打手机的一个预先录制的消息。

也有一些限制的事件发表多少数据(64字节),经常派人到云(每秒一次)。另一方面,监测变量似乎有更少的限制以来,他们根据需要访问。在我的代码,我将建立长字符串,传达有用的信息,浏览但不需要触发警报。例如,我会说:“在过去的24小时的最低温度是48度,在13是3月2日”。这是信息的房主可能或不可能的,想在休闲的基础上的观点,或者在一个自动化的电话,通知他一个断电。

备用电池

为了获得一个电源故障,需要有一个工作光子器件(只是<em>装置</em>在未来)和工作WiFi。WiFi将在商业UPS。该设备将被连接到一个6伏电池(4节AA可充电电池),电池充电器和一个“壁疣”(砖)电源。我用一对设备的数字引脚监视电压来自壁疣,表明如果交流电源上。我用一个装置模拟引脚监测电池电压,如果电池越来越弱我可以把设备进入低功耗模式,所以它醒来定期或当电源恢复。电池充电与小25毫安,即使电池完全是一个安全的充电涓流充电。这样一个小的充电的缺点是,耗尽电池需要一天左右的补给。另一种虽然更昂贵的-会一直使用锂电池和智能充电器,可为这类微处理器但记得我花美元的厌恶。

传感器

好吧,你不能有一个温度计,无传感器。有许多不同类型的选择,我不会在所有的选择。我选了Adafruit mcp9808突破板由于采用了I2C(i-squared-c),因为它被精确到0.25摄氏度我爱的准确性!加Adafruit提供一个工作的C++库和我喜欢玩I2C。最后,价格是正确的-在5美元的课程-。

足够的背景让严重…

步骤1:框图。

用光子粒子温度远程报警

有6子块在这个框图,用红色标出。我将讨论每一个然后把整个包。

电源电压采样器(图像# 2部分)

这需要投入9至16 VDC和下降到规定的2,它使用一对电阻限制电流,再从泄漏声光引脚时,(如果)输入电压变为零。绿色的LED提供了一个齐纳二极管的作用在2 V和视觉指示,输入电压存在。声光销只能处理最大3.3伏特的光子模拟引脚的休息,和LED作为上限。2伏的电压连接到我们用来决定如果交流电源可用引脚,它是连接到类别将唤醒引脚光子从省电睡眠。(更多的省电当我们讨论光子。)

LM317恒流调节器和电池组(图像# # 2和3部分)

电池组包括4-AA镍氢电池。他们将提供4.8和5.8伏的充电时间。一个LM317恒流稳压器是用来充电的镍氢电池包在一个恒定的25毫安无论输入电压。我拿起25马因为电池数据表表明,是一个长期的安全充电率。然而,如果电池完全放电需要一天或两天充值。在我们的应用程序并不着急。电池组可断开一个开关的电路,当设备在长期不用。取出一个电池会做同样的事情。

该LM317恒流调节器的细节是有据可查的在网络上,但总之,LM317稳压器的输出引脚和调整销连接一个50欧姆的电阻。50欧姆来自R = 1.25 /解决。025,其中1.25是在调整引脚电压。025是目前想在放大器。没有一个50欧姆的电阻在100欧姆的电阻并联的两只手我。

降压型DC-DC开关电源(图像# 4)

这个方便的电源可以在亚马逊和易趣网的几元钱购。如果你做了这些项目,你可能会想要10包降低到几乎没有成本。他们都是可调的,以宽输入电压范围和容易供应调节放大器或更多。我设定输出电压为3.3 V的电压由光子需要接受。

电池电压采样(图像# 2部分)

这是一个简单的分压器,降低了电池的最大电压降,或稍低于的A-1引脚的限制(3V3和所有其它引脚)。电压的结果然而在一些古怪的电阻值的比值。例如,1000 / 1350的工作,如将2200 / 2700。但第二电阻(S)不是标准值。一个简单的解决方法是使用一个可调节的1k锅沿两侧各有一对夫妇的500欧姆的电阻,测量输出电压保持接近或略低于3v3与5v8输入。或者找一个对电阻接近,你可以调整校正代码到一个精确的数。选择和他们没有很多是非常关键的,你不可以实验一下。

mcp9808温度传感器(部分1和部分6张照片可见)

这个小小的宝石来自Adafruit(也可能是易趣网或亚马逊)5美元。它发送数据是由一个简单的I2C和Adafruit提供的C++库,将编码解码部分的讨论。它以同样的3V3电源供应的光子。钩了SDA引脚的光子D0和SCL引脚D1引脚,它只是工作!(仅供参考,SDA =数据,SCL为时钟)。在其他9808个引脚,可如果你要使用多个传感器用来改变I2C地址。在最后的施工温度传感器将安装在箱外的其他部分减少加热的影响。

粒子光子P0开发板(图像# 5)

我把最好的留在最后。19美元你收到一个微处理器和一个像这样一个简单的项目WiFi芯片和固件的内存足够。它有一个内置的短天线和外部天线的标准连接器。我没有测试,无论是限制我的路由器在我的脚下。粒子可以访问Web IDE(集成开发环境-读“代码编辑器”和图书馆)。或者你可以下载一个版本到您的计算机和本地保存的一切,这是我做的。实际的编译器驻留在粒子所以你需要的所有的发展以及运营互联网连接。颗粒也提供了访问他们的云版本。还有你可以发送多少数据限制,但他们更适合这个项目。

电力消耗是也许我们需要担心最关键的规范。记住,我们不能如果设备没有电源或如果你的路由器/调制解调器已经下发关于断电信息。光子P0使用约80马在正常WiFi模式和1毫安时的WiFi是关闭的,没有处理正在进行。这是一种睡眠模式,粒子提供,和一个我认为是最有用的。的4-AA电池供电可为数小时的装置(未)如果断电持续较长的设备会监视电池电压并进入睡眠模式,如果电压降的太低(如低于4.8v)。然后醒来在您的代码和检查电源接通,使循环通过代码来报告当前的温度,然后去睡觉。它还可以监视电压上升WKP引脚醒来立即。其他的深度睡眠模式耗电较少但不监视任何引脚和不保留当前值-但它肯定可以安然入睡的周。

杂项部分(主要是图像# 2)

有几个肖特基二极管直接功率流的方向是正确的。它是然而放大器和电压额定值在该应用程序中不使用它们的重要关键。无论是使用最便宜的。同时,在使用一些像敏感引脚A0,A1和去耦电容,LM317的输入。典型值是01微法,而是用你手边的任何。不是所有的电容器的框图表示。

现在大家一起…

这是如何走到一起?在我看来很容易。没有危险的电压或电流过大,没有很高的频率,没有微观的信号电平,与部分用人的手指容易处理。所以,它们组装一一约束板的点到点线路,在线路板上跳线,甚至只是焊锡部分。我用面包板实验,并将部分和线匹配的PCB板。

接下来的代码!