当您日复一日打开信箱,却发现里面空空如也,这会不会让您有种被「耍」的感觉?在本文所述的项目中,我们将创建一个简单的LPWAN(低功耗广域网)应用,将您的信箱连接到云,并且借助Arduino MKR FOX 1200开发板和Sigfox网络,实现每收到一封信件时发送通知。下面的视频展现了这个项目的构建过程和实际演示:
在这个项目中,我们将会用到以下产品和技术:
下面我们来具体了解一下它们。
Arduino MKR FOX 1200开发板提供了一种实用且经济高效的解决方案,让用户能够在项目中轻松添加Sigfox连接。它基于Microchip SAMD21 32位Arm® Cortex®-M0+微控制器和Atmel ATA8520单片Sigfox射频收发器。MKR FOX 1200提供了丰富的I/O接口,支持低功耗Sigfox通信功能,并采用简单易用的Arduino软件集成开发环境(IDE)进行代码开发和编程,这些都使MKR FOX 1200开发板成为了紧凑型电池供电物联网(IoT)项目的理想选择。MKR FOX 1200开发板只需两节AA(五号)或AAA(七号)电池即可满足供电需求,通常情况下可以连续运行长达六个月时间而无需更换电池。
Sigfox是一种低功耗广域网(LPWAN)网络,可为物联网(IoT)提供连接。Sigfox网络非常适合用于只需低频度发送少量数据的应用。用户每天可发送140条消息,每条消息可携带12字节的有效载荷。作为一种LPWAN网络,Sigfox功耗非常低,因此非常适合电池供电的应用。Arduino MKR FOX 1200自带了1年的Sigfox网络免费订阅。
下面,就让我们开始动手吧!
通过贸泽网站上的这份项目物料清单,您可以一次买齐以下必需组件: (该清单包含一个锂电池组和一个干电池盒,这两者只需购买其一即可。本文中使用安装了两节AA电池的电池盒为开发板供电。)
本节中,我们将指导您组装该项目的所有硬件:
图1:硬件组装电路图(图源:贸泽电子)
如果您是第一次使用Arduino MKR FOX 1200,必须先配置该开发板,并将其注册到Sigfox网络。如果您已经做过这些操作,则可以直接跳到后面的「代码概览」部分继续阅读。
图2:Arduino开发板的ID和PAC(图源:贸泽电子)
下一步,我们需要将开发板注册到Sigfox网络。在浏览器中访问Sigfox后台(需要登录),按照其中的步骤注册您的开发板。该过程需要输入上一步中复制的ID和PAC编号。
图3:在Sigfox后端注册开发板(图源:贸泽电子)
现在,所有安装和准备工作都已完成,可以刷入贸泽GitHub仓库中提供的smart_mailbox.ino代码了。这些代码会指示Arduino进入睡眠模式,直到发生需要处理的事件为止,该事件只要信箱投递口被打开即会触发。在我们提供的代码中,主要有下面几个要点:
图4:代码片段 - 电压计算(图源:贸泽电子)
图5:代码片段 - 调试模式(图源:贸泽电子)
注意:本文提供的代码会使Arduino模块进入睡眠状态,这会导致COM串口上无法检测到开发板,因而刷板时需要按两下「RST」按钮,串口上才能检测到开发板。
下一步中,我们需要创建一个回调函数。该回调函数会将接收自MKR FOX 1200开发板的数据传输到您的电子邮箱地址。
图6:设备设置(图源:贸泽电子)
图7:设备设置 - 下行模式(图源:贸泽电子)
图8:设备设置 - 自定义回调(图源:贸泽电子)
图9:回调函数设置(图源:贸泽电子)
整个项目的最后一步,就是将所有组件和零件都安装到信箱上。把所有组件都固定在信箱门内侧,并将电磁接触开关固定到投递口上,然后将天线固定到信箱外面(建议尽可能不要把天线贴在金属表面上)。
图10:将所有组件都安装到信箱上(图源:贸泽电子)
本项目创建了一个简单的LPWAN应用,从而将传统的信箱转变为智能信箱。借助Arduino MKR FOX 1200可以非常轻松地连接到Sigfox网络并将数据发送到云端。此外,本项目还可以实现自我供电,只需在信箱上安装太阳能电池板并将其连接到充电电路即可。
Rafik Mitry于2019年取得慕尼黑工业大学电气工程硕士学位后加入贸泽电子,他在该所大学中还从事过三年能源收集领域的研究工作。作为贸泽的技术营销工程师,Rafik撰写的内容独特而富含技术性,反映电子行业当前和未来技术趋势。除了紧跟最新技术趋势外,Rafik还是航空和网球的狂热爱好者