Ameba Arduino: [RTL8722CSM] [RTL8722DM] [RTL8722DM MINI] 上传PM2.5资料到LASS环境感测网路系统

LASS简介
LASS是一套「环境感测器网路系统」,在MakerPro上面有它的 简介.

在实作上,它是基于MQTT的系统,收集各方上传的资料,而需要这些资料的人也可以subscribe top来使用

而它目前的 官方网站 是共笔系统,可以在这边找到更多资讯

材料准备
  • AmebaD [RTL8722DM / RTL8722CSM / RTL8722DM MINI] x 1
  • PlanTower PMS3003 or PMS5003 x1

范例说明

这个范例里,我们会使用到Ameba网站里提到的其它应用,包括:

  • MQTT: 用来连上LASS的MQTT-Broker,其中Client为“FT1_0XXXX”, 后面四位数为Ameba的Wifi Mac后4码,outTopic则是“LASS/Test/Pm25Ameba/clientID ” 后面的clientID为实际上Ameba的MQTT client ID
  • NTP: 上传的资料里需要时间的注记
  • PM2.5: 上传的资料里带有PM2.5的资讯

我们打开这个范例,它在 “File” -> “Examples” -> “AmebaMQTTClient” -> “lass_basic”

10-1

这个范例需要使用到网路, 所以要将ssid, pass填入要连上的AP资讯, 并修改连线的方式。

另外,LASS还需要填入GPS资讯。这个范例里没有加上GPS sensor,所以需要手动填入GPS资讯。我们可以利用google map找到GPS资讯,首先找到要放置Ameba的地方,此时google map的网址列就会出现GPS的经纬度,以图中的例子,可以看到GPS的latitude为24.7814033, longitude为120.9933676。

10-2

我们将GPS的资讯填入gps_lat与gps_lon里

10-3

接着按照UART – PlanTower PMS3003的范例接线方式将sensor接上

RTL8722DM / RTL8722CSM 的接线图如下:

10-4

RTL8722DM MINI 的接线图如下:

10-4

接着编译程式码并上传到Ameba, 按下Reset按钮之后, Ameba就会每一分钟尝试读取PM2.5的资料, 并上传到LASS MQTT-Broker。

打开Serial Monitor,可以看到上传的资讯,包括client id, topic, 目前的pm2.5数值。

10-5

我们也可以使用MQTTlens来看看是否能接收到Ameba上传的资讯,
我们将MQTT-Broker server位置填“gpssensor.ddns.net”,Subscribe的Topic填Serial Monitor看到的“LASS/Test/PM25/live”, 就可以接收资讯了。

里面的资讯里,时间使用UTC格式,而PM2.5的资料放在s_d0的地方,在图中可以看到s_d0=9代表PM2.5的数值是9,代表整个publish/subscribe的流程都成功运作。

10-6

 
Copyrights ©瑞晟微电子(苏州)有限公司 2021. All rights reserved.
请先确认已安装QQ通讯软体