Ameba Arduino: [RTL8195] [RTL8710] 上傳PM2.5資料到LASS環境感測網路系統

LASS簡介

LASS是一套「環境感測器網路系統」,在MakerPro上面有它的簡介

在實作上,它是基於MQTT的系統,收集各方上傳的資料,而需要這些資料的人也可以subscribe top來使用

而它目前的官方網站是共筆系統,可以在這邊找到更多資訊

材料準備

  • Ameba x 1
  • PlanTower PMS3003 (or PMS5003) x 1

範例說明

這個範例裡,我們會使用到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接上

10-4

RTL8710 的接線圖如下:

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