4周PADS强化班 HOT
林超文手把手教你学!
张飞暑期特训班
教你1000种电路设计思路
年度IP:PFC电源
张飞硬件电路之PFC全集
30天AD项目众筹
参与免费送VIP+原创视频
最全模电系列教程 NEW
运放、ADC、电磁兼容

[创意DIY] 基于Arduino MKR FOX 1200的移动物联网气象站 含代码

[复制链接]

管理员

发表于 2018-5-10 20:59:45   434 查看 0 回复 显示全部楼层 倒序浏览
分享
基于Arduino MKR FOX 1200的移动物联网气象站

与Sigfox连接的Arduino MKR FOX 1200将微控制器的使用推向了物联网和云端。

基于这款微处理器,我在任何地方建立了一个用于UV,压力和温度测量的移动气象站这款小巧的设备每三分钟可以自动收集15分钟的环境信息,使用三节AA电池,几乎可以在世界任何地方使用。



该设备最终被放置在西班牙帕尔玛的海滩上所以你现在可以在下面的链接中看到紫外线辐射指数,温度和大气压力:https : //thingspeak.com/channels/365024

这个项目将通过移动设备实时收集您的手机上基本的天气信息,您可以在世界的大部分地区“放弃”移动设备。

物联网概念

物联网是一种通过互联网进行通信的互联设备网络,它们可以自动进行机器对机器的操作,而无需人工干预。

第一次参考物联网是在1982年,当时卡内基梅隆大学的研究人员开发出了世界上第一台支持物联网的焦炭机器。Mark Weiser在90年代初进一步发展了这个概念; 凯文阿什顿在1999年左右创造了“物联网”这个术语。

所有物联网架构都由5个组件构建而成。我将列出这些组件,说明我为构建此设备所做的实现。

传感器

世界可以用大量的传感器来选择。今天,它们无形且节能,同时保持较高的测量精度。我用这些:

  • ML8511 紫外线传感器
  • BMP180 温度和压力传感器


连接

一旦我们有了感觉,我们需要将其可靠地连接到互联网。但是现在,无线连接对物联网的成功至关重要。这里Sigfox为连接其他技术(如3 / 4G,GSM或Wifi)的无法访问区域打开了大门。它使用的免费频段在欧洲为868 MHz,在美国为915 MHz。这是一种窄带连接,可实现非常低的能耗。传输限制是每天140条消息,不超过24个字节。如果我们每天24小时之间划分140条消息,我们必须每隔10.2分钟发送一条消息。这是一个发送帧的例子:

Frame:                          4b594e40|0e|00fa|314204740Decoded values:  3.2242|14|1018|3.111333  Battery|Temperature|Presure|UV

此外,它还提供基于设备最可能位置的专有概率计算的本地化服务。这种方法允许首次发布的服务具有以km为单位的准确度(80%的设备在1km到10km之间),具体取决于设备所在的基站密度。由于机器学习的进一步发布,这种精度将得到提高。

这是sigfox网络的全球覆盖:



在我的圣诞假期中,我有机会尝试了我访问过的不同城市的设备:马德里,萨拉曼卡,华沙和克拉科夫。此外,这是在Sierra de Tramuntana(马略卡岛)1000米以上的几天。收集的所有信息可在以下网址找到:(https://github.com/McOrts/MKRFOX1200_mobile-weather-station/tree/master/MKRFOX1200_mobile-weather-station_report-data)



平台

第三,收集的数据需要存储和处理。被称为物联网平台,这些平台通常是基于云的基础设施,其中:

  • 通过称为API的标准化接口接收和发送数据;
  • 存储数据;
  • 处理数据。

对于这个项目我选择了ThingSpeak。平台。一个免费帐户允许您存储多达8个字段,只要不超过3000个字节的限制,每年最多300万条消息。

Analytics(分析)

一些数据分析需要应用于数据,因为该值不在原始位和字节中,而是在从他们收集的洞察中。



ThingSpeak 不仅可以显示您的数据图表。也可以使用MATLAB编程来分析您的数据。例如,根据温度和湿度计算露点。

  1. % Humidity and temperature are read from a ThingSpeak channel to calculate% dew point.% Channel ID to read data fromreadChannelID = 365024;% Humidity Field IDHumidityFieldID = 2;% Temperature Field IDTemperatureFieldID = 3;% Channel Read API Key readAPIKey = 'UTVU9A464TKW6UQ5';% TODO - Replace the [] with channel ID to write data to:writeChannelID = 365024;% TODO - Enter the Write API Key between the '' below:writeAPIKey = '****************';tempF = thingSpeakRead(readChannelID, 'Fields', TemperatureFieldID, 'ReadKey', readAPIKey);% Get latest humidity data from the MathWorks Weather Station channelhumidity = thingSpeakRead(readChannelID, 'Fields', HumidityFieldID, 'ReadKey', readAPIKey);% Convert temperature from Fahrenheit to CelsiustempC = (5/9)*(tempF-32);% Calculate dew point% Specify the constants for water vapor (b) and barometric (c) pressure.b = 17.62;c = 243.5;% Calculate the intermediate value 'gamma'gamma = log(humidity/100) + b*tempC ./ (c+tempC);% Calculate dew point in CelsiusdewPoint = c*gamma ./ (b-gamma);% Convert to dew point in FahrenheitdewPointF = (dewPoint*1.8) + 32;display(dewPointF, 'Dew point')% Write the dew point value to another channel specified by the% 'writeChannelID' variablethingSpeakWrite(writeChannelID, dewPointF, 'Writekey', writeAPIKey);
复制代码

另外,ThingSpeak允许你通过触发twitter消息等事件来处理数据。

用户界面

一个重要的组成部分是数据如何呈现给最终用户。有吸引力的用户界面,基于网络以及基于智能手机或平板电脑。

我选择了一个在iOS中提供小部件的应用程序:








原理图和连接

我将原型的所有部件组装在MKR Proto大型盾牌上。这是面包板:




建筑

该设备收集环境数据并每隔15分钟以离散无线数据包的形式发送信息。无线电网络通过rest-api调用摄取互联网上的数据。最后,网站和移动应用程序可以处理和显示信息。



原理图
MKRFOX1200_mobile天气站基于Arduino MKRFOX1200的移动气象站通过Sigfox网络连接,用于任何地方的UV,压力和温度测量




MKRFOX1200_mobile-weather-station-master.zip (4.75 MB, 下载次数: 3)
标签:Arduino
高级模式
您需要登录后才可以回帖 登录 | 注册

4周PADS强化班 HOT
林超文手把手教你学!
张飞暑期特训班
教你1000种电路设计思路
年度IP:PFC电源
张飞硬件电路之PFC全集
30天AD项目众筹
参与免费送VIP+原创视频
最全模电系列教程 NEW
运放、ADC、电磁兼容
关闭

站长推荐 上一条 /9 下一条

快速回复 返回顶部 返回列表
-

推荐专区

技术干货集中营

专家问答

方案交易

用户帮助┃咨询与建议┃版主议事

工程师杂谈

项目|工程师创意

招聘|求职}工程师职场

论坛电子赛事

社区活动专版

发烧友活动

-

嵌入式论坛

ARM技术论坛

Android论坛

Linux论坛

单片机/MCU论坛

MSP430技术论坛

FPGA|CPLD|ASIC论坛

STM32/STM8技术论坛

NXP MCU 技术论坛

PIC单片机论坛

DSP论坛

瑞萨单片机论坛

嵌入式系统论坛

-

电源技术论坛

电源技术论坛

无线充电技术

-

硬件设计论坛

PCB设计论坛

电路设计论坛

电子元器件论坛

控制|传感

总线技术|接口技术

-

测试测量论坛

LabVIEW论坛

Matlab论坛

测试测量技术专区

仪器仪表技术专区

-

EDA设计论坛

multisim论坛

PADS技术论坛

Protel|AD|DXP论坛

Allegro论坛

proteus论坛|仿真论坛

EasyEDA-中国人自已的EDA工具

Orcad论坛

-

综合技术与应用

电机控制

智能电网

光电及显示

工程资源中心

汽车电子技术论坛

医疗电子论坛

-

开源硬件

-

无线通信论坛

无线通信技术专区

天线|RF射频|微波|雷达技术

-

IC设计论坛

芯片测试与失效分析

Mixed Signal/SOC[数模混合芯片设计]

Analog/RF IC设计

设计与制造封装测试

-

厂商专区

TI论坛

TI Deyisupport社区

-

检测技术与质量

电磁兼容(EMC)设计与整改

安规知识论坛

检测与认证

-

消费电子论坛

手机技术论坛

平板电脑/mid论坛

音视/视频/机顶盒论坛

-

电子论坛综合区

聚丰众筹官方社区

新人报道区

聚丰供应链

-

论坛服务区

-

供求信息发布

供需广告

电子展览展会专区

芯片求购|供应发布区