0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何快速搭建一個(gè)LoRa?無(wú)線環(huán)境監(jiān)測(cè)系統(tǒng)?WisBlock + RUI3 一鍵實(shí)現(xiàn)!

瑞科慧聯(lián)(RAK) ? 2022-09-19 14:21 ? 次閱讀

環(huán)境監(jiān)測(cè)對(duì)于人類(lèi)來(lái)說(shuō)至關(guān)重要,空氣質(zhì)量、土壤構(gòu)成、環(huán)境噪音、溫濕度等對(duì)我們的農(nóng)業(yè)發(fā)展、城市建設(shè)、日常生活都會(huì)造成影響。以溫濕度為例:溫濕度高低會(huì)影響農(nóng)作物的生長(zhǎng)、影響工程建設(shè)進(jìn)度、影響設(shè)備運(yùn)作,如果我們能夠精確地監(jiān)測(cè)溫濕度數(shù)據(jù)、及時(shí)作出調(diào)整,就能促進(jìn)整個(gè)行業(yè)的高效運(yùn)行。

基于這樣的需求考慮,“如何搭建一個(gè)良好的環(huán)境監(jiān)測(cè)系統(tǒng)”成為了我們需要思考的核心問(wèn)題。

通常來(lái)說(shuō),搭建一個(gè)良好的環(huán)境監(jiān)測(cè)系統(tǒng),最關(guān)鍵的是要建立實(shí)時(shí)的環(huán)境監(jiān)測(cè)預(yù)警系統(tǒng),并保存完整的歷史數(shù)據(jù)。以產(chǎn)品測(cè)試行業(yè)為例,當(dāng)環(huán)境不利于產(chǎn)品測(cè)試時(shí),只有及時(shí)預(yù)警,才能采取有效措施調(diào)節(jié)室內(nèi)環(huán)境,從而避免監(jiān)測(cè)系統(tǒng)損壞。同時(shí)也可以根據(jù)保存下來(lái)的實(shí)時(shí)數(shù)據(jù)進(jìn)行具體分析。

由此可以知道,我們需要的是一套傳輸距離遠(yuǎn)、功耗低、還能實(shí)時(shí)保存數(shù)據(jù)的環(huán)境監(jiān)測(cè)系統(tǒng)。

基于瑞科慧聯(lián)(RAK)的模塊化產(chǎn)品 WisBlock 以及軟件平臺(tái) RUI 3 搭建出來(lái)的 LoRaWAN?無(wú)線環(huán)境監(jiān)測(cè)預(yù)警系統(tǒng),恰好符合這一點(diǎn)。WisBlock + RUI3 的環(huán)境監(jiān)測(cè)預(yù)警系統(tǒng)可以做到全天 24 小時(shí)全面準(zhǔn)確地進(jìn)行環(huán)境監(jiān)測(cè)。該系統(tǒng)也被廣泛地應(yīng)用在實(shí)驗(yàn)室溫濕度環(huán)境監(jiān)測(cè)、辦公區(qū)環(huán)境監(jiān)測(cè)、商超冰柜溫度監(jiān)測(cè)、農(nóng)場(chǎng)大棚溫濕度檢測(cè)等多個(gè)領(lǐng)域。

今天我就帶大家一起學(xué)習(xí)快速地搭建這套 LoRa?無(wú)線溫濕度監(jiān)測(cè)系統(tǒng)。

搭建前的準(zhǔn)備

硬件準(zhǔn)備

  • WisBlock Base(本示例使用 RAK5005-O)
  • WisBlock Core(本示例使用 RAK4631)
  • WisBlock Sensor(本示例使用 RAK1906)
  • LoRa?天線(本示例使用 CN470頻段)
  • 網(wǎng)關(guān)(本示例使用 RAK7268網(wǎng)關(guān))

注意:要保持網(wǎng)關(guān)與傳感器所屬的頻段相同,本案例我使用的頻段均為 CN470。

軟件準(zhǔn)備

  • Arduino IDE
  • RAK4631 BSP
  • Adafruit BME680 庫(kù)
  • SX126x-Arduino 庫(kù)
  • 注冊(cè)好 Gateway的 TTN賬戶
  • DataCake賬戶

硬件安裝

  1. 將 LoRa?天線接口對(duì)準(zhǔn)并放置在 RAK4631 模塊的 LoRa?天線接口搭接處,輕輕按壓 LoRa?天線接口,完成安裝。
  2. 將 RAK4631 模塊上的連接器插頭對(duì)準(zhǔn) RAK5005-O CUP 插槽上的連接器插座。保持連接器間平行,并將其輕放在插座連接器相應(yīng)的搭接處。
  3. 將傳感器模塊 RAK1906 上的連接器插頭對(duì)準(zhǔn) RAK5005-O 插槽的連接器插座。保持連接器間平行,將其輕放在插座連接器相應(yīng)的搭接處。
  4. 組裝過(guò)程示意圖如下:

pYYBAGMgLQSAToJFAAUGj2TrJag743.pngpoYBAGMgJ32AYyOtAAYFT621vPU955.png

pYYBAGMgJ4yAa433AACFLmmwFEs496.pngpYYBAGMgJ5KAe1YfAABWHBWhR5g352.png

軟件配置

在 Arduino IDE中添加 RAK4631-R 開(kāi)發(fā)板

1、打開(kāi) Arduino IDE,進(jìn)入“文件 > 首選項(xiàng)”

pYYBAGMgJ6uAB2azAABWya5p9Kw502.png

打開(kāi) Arduino IDE

2、單擊圖中圖標(biāo),修改“附加開(kāi)發(fā)板管理器網(wǎng)址”選項(xiàng),將 RAK4631-R WisBlock Core 添加中 Arduino 開(kāi)發(fā)板管理器中。

poYBAGMgJ7uAZC0wAACMG3hqEbo791.png

在 Arduino IDE上修改“附加開(kāi)發(fā)板管理器網(wǎng)址”

3、現(xiàn)在復(fù)制下方 URL并粘貼至下圖所示區(qū)域。如果已存在其他鏈接,將上述鏈接粘貼至新的一行。完成后,單擊“好”。

https://raw.githubusercontent.com/RAKWireless/RAKwireless-Arduino-BSP-Index/main/package_rakwireless.com_rui_index.json?

poYBAGMgJ8-AfEvhAACCCQgtfWQ691.png

在Arduino IDE上粘貼復(fù)制好的URL

4、重啟 Arduino IDE。進(jìn)入“工具 > 開(kāi)發(fā)板:“RAK4631” > 開(kāi)發(fā)板管理器”。

pYYBAGMgJ92AIL0GAABiWTkso2U254.png

重啟Arduino IDE并執(zhí)行操作

5、在搜索框中輸入“RAK”,窗口會(huì)自動(dòng)出現(xiàn)可用的 RAKwireless WisBlock Core Boards,選擇“RAKwireless RUI nRF Boards”并安裝。

pYYBAGMgJ-2Ab9l4AABS3825nXA261.png

選擇并安裝 RAKwireless RUI nRF Boards

6、BSP 安裝完成后,根據(jù)圖中路徑選擇 RAKwireless WisBlock Core模塊。

poYBAGMgJ_yAct_TAABtlrDI45Q838.png

選擇 RAKwireless WisBlock Core 模塊

7、代碼燒錄

/**
   @file Environment_Monitoring ino
   @author rakwireless com
   @brief This sketch demonstrate how to get environment data from BME680
      and send the data to lora gateway 
   @version 0 1
   @date 2020-07-28
   @copyright Copyright (c) 2020
**/
#include 
#include 
#include  // Click to install library: http://librarymanager/All#Adafruit_BME680

Adafruit_BME680 bme;
/*************************************

   LoRaWAN band setting:
     RAK_REGION_EU433
     RAK_REGION_CN470
     RAK_REGION_RU864
     RAK_REGION_IN865
     RAK_REGION_EU868
     RAK_REGION_US915
     RAK_REGION_AU915
     RAK_REGION_KR920
     RAK_REGION_AS923

 *************************************/
#define OTAA_BAND     (RAK_REGION_CN470)
#define OTAA_DEVEUI   {0x20, 0x17, 0x06, 0x15, 0x0E, 0x00, 0x00, 0x15}
#define OTAA_APPEUI   {0x20, 0x17, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00}
#define OTAA_APPKEY   {0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88, 0x99, 0x00, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF}


// Might need adjustments
#define SEALEVELPRESSURE_HPA (1010.0)
uint8_t buffer[13]="";

void bme680_get()
{
  Serial.print("Temperature = ");
  Serial.print(bme.temperature);
  Serial.println(" C");

  Serial.print("Pressure = ");
  Serial.print(bme.pressure / 100.0);
  Serial.println(" hPa");

  Serial.print("Humidity = ");
  Serial.print(bme.humidity);
  Serial.println(" %");

  Serial.print("Gas = ");
  Serial.print(bme.gas_resistance / 1000.0);
  Serial.println(" KOhms");

  Serial.println();


  uint16_t t = bme.temperature * 100;
  uint32_t pre = bme.pressure / 100.0 * 100;
  uint16_t h = bme.humidity * 100;
  uint32_t gas = bme.gas_resistance;
  
  uint32_t i = 0;
  //result: T=28.25C, RH=50.00%, P=958.57hPa, G=100406 Ohms
   buffer[i++] = 0x01;
   buffer[i++] = (uint8_t)(t >> 8);
   buffer[i++] = (uint8_t)t;
   buffer[i++] = (uint8_t)(h >> 8);
   buffer[i++] = (uint8_t)h;
   buffer[i++] = (uint8_t)((pre & 0xFF000000) >> 24);
   buffer[i++] = (uint8_t)((pre & 0x00FF0000) >> 16);
   buffer[i++] = (uint8_t)((pre & 0x0000FF00) >> 8);
   buffer[i++] = (uint8_t)(pre & 0x000000FF);
   buffer[i++] = (uint8_t)((gas & 0xFF000000) >> 24);
   buffer[i++] = (uint8_t)((gas & 0x00FF0000) >> 16);
   buffer[i++] = (uint8_t)((gas & 0x0000FF00) >> 8);
   buffer[i++] = (uint8_t)(gas & 0x000000FF);
    /** Send the data package */
  if (api.lorawan.send(sizeof(buffer), (uint8_t *)buffer, 2, true, 1))
  {
    Serial.println("Sending is requested");
  } 
  else 
  {
    Serial.println("Sending failed");
  }
}
void init_bme680()
{
  Wire.begin();

  if (!bme.begin(0x76)) {
    Serial.println("Could not find a valid BME680 sensor, check wiring!");
    return;
  }

  // Set up oversampling and filter initialization
  bme.setTemperatureOversampling(BME680_OS_8X);
  bme.setHumidityOversampling(BME680_OS_2X);
  bme.setPressureOversampling(BME680_OS_4X);
  bme.setIIRFilterSize(BME680_FILTER_SIZE_3);
  bme.setGasHeater(320, 150); // 320*C for 150 ms
}
void lora_init()
{
  // OTAA Device EUI MSB first
  uint8_t node_device_eui[8] = OTAA_DEVEUI;
  // OTAA Application EUI MSB first
  uint8_t node_app_eui[8] = OTAA_APPEUI;
  // OTAA Application Key MSB first
  uint8_t node_app_key[16] = OTAA_APPKEY;
  
  if (!api.lorawan.appeui.set(node_app_eui, 8)) {
    Serial.printf("LoRaWan OTAA - set application EUI is incorrect! \r\n");
    return;
  }
  if (!api.lorawan.appkey.set(node_app_key, 16)) {
    Serial.printf("LoRaWan OTAA - set application key is incorrect! \r\n");
    return;
  }
  if (!api.lorawan.deui.set(node_device_eui, 8)) {
    Serial.printf("LoRaWan OTAA - set device EUI is incorrect! \r\n");
    return;
  }
  
  if (!api.lorawan.band.set(OTAA_BAND)) {
    Serial.printf("LoRaWan OTAA - set band is incorrect! \r\n");
    return;
  }
  if (!api.lorawan.deviceClass.set(RAK_LORA_CLASS_A)) {
    Serial.printf("LoRaWan OTAA - set device class is incorrect! \r\n");
    return;
  }
  if (!api.lorawan.njm.set(RAK_LORA_OTAA))  // Set the network join mode to OTAA
  {
    Serial.printf
  ("LoRaWan OTAA - set network join mode is incorrect! \r\n");
    return;
  }
  if (!api.lorawan.join())  // Join to Gateway
  {
    Serial.printf("LoRaWan OTAA - join fail! \r\n");
    return;
  }
  
  /** Wait for Join success */
  while (api.lorawan.njs.get() == 0) {
    Serial.print("Wait for LoRaWAN join...");
    api.lorawan.join();
    delay(10000);
  }
  
  if (!api.lorawan.adr.set(true)) {
    Serial.printf
  ("LoRaWan OTAA - set adaptive data rate is incorrect! \r\n");
    return;
  }
  if (!api.lorawan.rety.set(1)) {
    Serial.printf("LoRaWan OTAA - set retry times is incorrect! \r\n");
    return;
  }
  if (!api.lorawan.cfm.set(1)) {
    Serial.printf("LoRaWan OTAA - set confirm mode is incorrect! \r\n");
    return;
  }
  
  /** Check LoRaWan Status*/
  Serial.printf("Duty cycle is %s\r\n", api.lorawan.dcs.get()? "ON" : "OFF"); // Check Duty Cycle status
  Serial.printf("Packet is %s\r\n", api.lorawan.cfm.get()? "CONFIRMED" : "UNCONFIRMED");  // Check Confirm status
  uint8_t assigned_dev_addr[4] = { 0 };
  api.lorawan.daddr.get(assigned_dev_addr, 4);
  Serial.printf("Device Address is %02X%02X%02X%02X\r\n", assigned_dev_addr[0], assigned_dev_addr[1], assigned_dev_addr[2], assigned_dev_addr[3]);  // Check Device Address
  Serial.println("");

}


void setup()
{
  //Initialize the built in LED
  pinMode(LED_BUILTIN, OUTPUT);
  digitalWrite(LED_BUILTIN, LOW);
  // Initialize Serial for debug output
  Serial.begin(115200);
  time_t serial_timeout = millis();
  while (!Serial)
  {
    if ((millis() - serial_timeout) < 5000)
    {
      delay(100);
      digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));
    }
    else
    {
      break;
    }
  }
  delay(1000);
  Serial.println("=====================================");
  Serial.println("Welcome to RAK4630 LoRaWan!!!");
  lora_init();
  init_bme680();

} 



void loop()
{
  if (! bme.performReading()) {
    Serial.println("Failed to perform reading :(");
    return;
  }
  bme680_get();
  delay(10000);
}

連接傳感器節(jié)點(diǎn)至 TTN

本節(jié)為將傳感器節(jié)點(diǎn)連接至 TTN(The Things Network)平臺(tái)的操作過(guò)程。

登錄到 TTN 平臺(tái)

登錄TTN網(wǎng)站,將會(huì)看到以下頁(yè)面:

pYYBAGMgKCKAU6r1AAC0iyN2dsk407.png

TTN 網(wǎng)站的控制臺(tái)頁(yè)面

創(chuàng)建新的應(yīng)用程序

進(jìn)入添加 Application 界面,注冊(cè)相關(guān)信息后,單擊頁(yè)面底部的“Create application”。

poYBAGMgKDqAfF9GAAB_2ArJJdc971.png

添加應(yīng)用

進(jìn)入應(yīng)用程序概述頁(yè)面,單擊右下角“Add end devices”,在 TTN平臺(tái)注冊(cè)新設(shè)備。

poYBAGMgKEeAWJWLAACkMu5FMRE929.png

應(yīng)用程序概述頁(yè)面

注冊(cè)新設(shè)備

在“Register end device”頁(yè)面中,單擊“Manually”頁(yè)簽。

配置 Frequency plan、LoRaWAN version、Regional Parameters version,并添加設(shè)備 DevEUI、AppEUI、AppKey。

poYBAGMgKFqAS37VAAFg53ZQqEY222.png

注冊(cè)設(shè)備

設(shè)備頻段應(yīng)與網(wǎng)關(guān)頻段相同。

DevEUI、AppEUI、AppKey請(qǐng)?jiān)?strong>傳感器示例代碼中獲取,切記需要?jiǎng)h除各個(gè)數(shù)字前的“0x”以及“,”。

poYBAGMgKHKAa_QRAAHPLkE-5mw255.png

獲取 DevEUI、AppEUI、AppKey

單擊"Register and device",完成設(shè)備注冊(cè),注冊(cè)結(jié)果將匯總?cè)缦聢D所示。

poYBAGMgKIeAA6e6AAG5Tv0o3nU932.png

設(shè)備信息

重啟設(shè)備后,設(shè)備自動(dòng)入網(wǎng)并定時(shí)向服務(wù)器傳輸實(shí)時(shí)監(jiān)測(cè)數(shù)據(jù)。單擊See all activity→,查看傳輸數(shù)據(jù)。

pYYBAGMgKWKAQNBWAAETAiTiX9I791.png

環(huán)境監(jiān)測(cè)數(shù)據(jù)獲取

添加 Datacake集成到 TTN

具體可參考:https://docs.datacake.de/lorawan/lns/thethingsindustries

poYBAGMgKXGAbtTxAABAqmU8N8s214.png

在 Datacake中配置設(shè)備

在這里,我假設(shè)已經(jīng)設(shè)置 Datacake帳戶,創(chuàng)建好了應(yīng)用程序,并準(zhǔn)備添加設(shè)備。如果大家沒(méi)有創(chuàng)建好賬戶,可以通過(guò)Datacake 文檔了解創(chuàng)建步驟。

在 Datacake 應(yīng)用程序中,單擊“設(shè)備”以查看設(shè)備的概述。單擊“添加設(shè)備”按鈕開(kāi)始。

pYYBAGMgKYOAIROHAAEjYsowrSw280.png

在下一個(gè)屏幕中,選擇LoRaWAN New device并點(diǎn)擊“Next”

poYBAGMgKZKAUEG2AACziGNVVO4957.png

選擇New product并寫(xiě)入Product Name

pYYBAGMgKaGAZ1eRAAEHpZaSzis741.png

然后,向下滾動(dòng)窗口,直到看到該部分。在此處選擇“TTN V3”,選擇它,然后單擊“下一步”按鈕。

poYBAGMgKdWAbg5cAADRjVbE22Q364.png

在下一步中,我們必須輸入節(jié)點(diǎn)的 Dev EUI 和名稱。Dev EUI 必須與之前在 TTN V3應(yīng)用程序中選擇的節(jié)點(diǎn)匹配。輸入信息后,再次點(diǎn)擊“下一步”按鈕。

pYYBAGMgKeCAG4w9AADmmSBkpvU042.png

根據(jù)我們?cè)?Datacake上的帳戶,以及已經(jīng)注冊(cè)的設(shè)備數(shù)量,在不同的支付選項(xiàng)之間進(jìn)行選擇。完成此處選擇后,按“添加1個(gè)設(shè)備”按鈕。

poYBAGMgKfCAPJymAAC4lH871rs098.png

現(xiàn)在,可以在 Datacake的概述屏幕中看到新設(shè)備。

pYYBAGMgKfqAYC_pAAFIxnJPg3E433.png

在 Datacake 中為傳感器節(jié)點(diǎn)創(chuàng)建數(shù)據(jù)解析器和數(shù)據(jù)字段

要完成設(shè)備的配置,請(qǐng)?jiān)诟攀鲋袉螕羲?。在下一個(gè)窗口中,選擇 。Configuration

pYYBAGMgKkKAPLdGAAFlphpN9zo791.png

在配置中,向下滾動(dòng),直到看到該部分。在這里,必須要輸入我們的自定義有效負(fù)載解碼器才能獲取到達(dá)的數(shù)據(jù)。正如圖中所示,解碼器返回一個(gè)嵌套的 JSON 數(shù)組,其中每個(gè) JSON 條目都有兩個(gè)字段。之后會(huì)轉(zhuǎn)發(fā)到可視化界面,就能讓傳感器進(jìn)行數(shù)據(jù)傳輸了。Payload Decoderfieldvaluefieldvalue

poYBAGMgKkuAOnjxAADGmVpyO3U234.png

為了使事情變得更容易,我準(zhǔn)備了一個(gè)有效負(fù)載解碼器,它將會(huì)與此示例配合使用,而且它也可以輕松擴(kuò)展與我們其他的WisBlock 解決方案一起使用。

為了節(jié)省時(shí)間,我將代碼放在這里。使用以下內(nèi)容覆蓋示例負(fù)載解碼器:

function Decoder(payload, port) {
if(payload[0] === 0x01) {
return [
{
field: "TEMPERATURE",
value: (payload[1] << 8 | payload[2]) / 100
},
{
field: "HUMIDITY",
value: (payload[3] << 8 | + payload[4]) / 100
},
{
field: "PRESSURE",
value: (payload[8] | (payload[7] << 8) | (payload[6] << 16) | (payload[5] << 24)) / 100
},
{
field: "GAS",
value: payload[12] | (payload[11] << 8) | (payload[10] << 16) | (payload[9] << 24)
},
];
}
}

pYYBAGMgKl2AWtRLAADxeCr-pI8941.png

現(xiàn)在,我們檢查解碼器是否正常工作。向下滾動(dòng)并點(diǎn)擊“保存”按鈕以更新解碼器。

poYBAGMgKmWAAWyKAABcoHcbe0U384.png

然后,一直向上滾動(dòng)并選擇選項(xiàng)卡。如果此時(shí)設(shè)備處于聯(lián)機(jī)狀態(tài)并且已發(fā)送數(shù)據(jù),那么就可以 .DebugDebug Log。

poYBAGMgKnKAdVpEAADx1u8aG1o163.png

如果這有效,接下來(lái)就要做更多的工作了。Datacake 使用字段為可視化查找正確的數(shù)據(jù),但必須要先定義所有字段。

返回到配置選項(xiàng)卡并向下滾動(dòng),直到看到該部分。到達(dá)那里后,單擊添加字段按鈕。Fields

poYBAGMgKnuAOUIFAABS8LZ56o8900.png

在窗口中,選擇數(shù)據(jù)類(lèi)型、字段名稱和單位。Add Field

注意:這里必須與負(fù)載解碼器中分配的字段名稱匹配。因此,對(duì)于“溫度”,正確的字段名稱是“溫度”。Identifier。

輸入所有信息后,點(diǎn)擊“添加字段”按鈕。

poYBAGMgKoiABrsCAADKtZixm9M934.png

必須重復(fù)此步驟,直到定義了將包含傳感器數(shù)據(jù)的所有四個(gè)字段。最后,應(yīng)該如下所示:Fields

pYYBAGMgKpWAeQ-xAACjbtovr2g795.png

到這里,我們就完成所有的準(zhǔn)備工作。現(xiàn)在,我們用一些漂亮的圖表來(lái)顯示數(shù)據(jù)。

設(shè)置儀表板以可視化傳入的傳感器數(shù)據(jù)

返回設(shè)備概述并打開(kāi)選項(xiàng)卡。目前,它是空的。需要添加新的微件,單擊右側(cè)的小編輯圖標(biāo)。Dashboard

poYBAGMgKqWASVXfAABAd1yRjtk603.png

現(xiàn)在,我們會(huì)看到一個(gè)添加小部件按鈕。單擊它開(kāi)始。

pYYBAGMgKseAMHdsAAAvaPIbmEM604.png

在下一個(gè)屏幕中,會(huì)看到一系列不同的可視化選項(xiàng)。我選擇了這里。Chart

pYYBAGMgKtOAA0HBAADne9hDM9U551.png

下一個(gè)窗口有四個(gè)選項(xiàng)卡。從選項(xiàng)卡開(kāi)始。就可以在此處輸入圖表標(biāo)題。Basic

pYYBAGMgKt2AWkknAABxL_Zhyiw284.png

Field選項(xiàng)卡中,選擇Temperature

pYYBAGMgKuWAZGRVAABjRUkRNiI825.png

現(xiàn)在,它將顯示帶有溫度數(shù)據(jù)的第一個(gè)小部件。我們可以使用微件右下角的小箭頭調(diào)整大小。

pYYBAGMgKvKAAn4kAAAo5K16eoo751.png

對(duì)其他字段重復(fù)這些步驟后,就可以看到包含接收數(shù)據(jù)的圖表。主要要單擊旁邊的黃色圖標(biāo)保存你的操作,然后返回主儀表板視圖。HumidityPressureAir QualityUnsaved changes

poYBAGMgKvuAJgI0AAGctfJ2Zns179.png

現(xiàn)在,來(lái)自環(huán)境傳感器的數(shù)據(jù)以一個(gè)很好的可視化效果呈現(xiàn)出來(lái)了,我們可以從任何地方訪問(wèn)和查看。

添加Rules

這里我們可以對(duì)由設(shè)備測(cè)量值引起的事件執(zhí)行操作。它們?cè)试S設(shè)置不同的觸發(fā)器和警報(bào),例如:

1、通過(guò)電子郵件或短信發(fā)送通知消息

2、通過(guò)網(wǎng)絡(luò)掛鉤調(diào)用外部服務(wù)

3、將下行鏈路發(fā)送到 LoRa?設(shè)備

pYYBAGMgKwmAM6xyAAD1WqqiA1c461.png

這里可以從工作區(qū)的側(cè)邊欄菜單創(chuàng)建和訪問(wèn)規(guī)則。與設(shè)備相關(guān)的規(guī)則(一個(gè)或多個(gè)條件引用設(shè)備)還會(huì)顯示在設(shè)備的“規(guī)則”選項(xiàng)卡中。

通過(guò)單擊右上角的“添加規(guī)則”按鈕創(chuàng)建第一個(gè)規(guī)則。

poYBAGMgKxCAN1z9AAB3lu8qmNk303.png

我們?cè)谶@里通過(guò)設(shè)置溫度的告警值通過(guò)郵件的方式提醒

poYBAGMgKxuAMGBNAAGcWGcbIxA852.png

當(dāng)溫度高于 26℃ 時(shí),Datacake將會(huì)通過(guò)郵件的方式通知,而且顯示當(dāng)前的溫度

poYBAGMgKyWAYxI0AAAk9x-NuVo986.png

希望這個(gè)教程能夠?qū)Υ蠹矣兴鶐椭?,如果大家有任何?wèn)題,也可以留言告訴我們。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    LORA無(wú)線溫濕度監(jiān)測(cè)系統(tǒng)

    LORA無(wú)線溫濕度監(jiān)測(cè)系統(tǒng),作為現(xiàn)代環(huán)境監(jiān)測(cè)技術(shù)的重要組成部分,正日益受到各行各業(yè)的廣泛關(guān)注和應(yīng)用。 L
    的頭像 發(fā)表于 11-07 16:57 ?167次閱讀

    如何用LORA模塊進(jìn)行環(huán)境監(jiān)測(cè)

    隨著物聯(lián)網(wǎng)技術(shù)的發(fā)展,環(huán)境監(jiān)測(cè)變得越來(lái)越智能化和自動(dòng)化。LORA(Long Range)模塊作為種新興的無(wú)線通信技術(shù),因其長(zhǎng)距離傳輸和低功耗特性,在
    的頭像 發(fā)表于 11-01 09:17 ?212次閱讀

    LoRa無(wú)線一鍵報(bào)警安防建設(shè)系統(tǒng)

    及就醫(yī)人員安全,必須有套完善的醫(yī)療安防系統(tǒng)。 ? 適用于重大緊急事件的LoRa無(wú)線一鍵報(bào)警安防建設(shè)已成為構(gòu)建安全就醫(yī)
    發(fā)表于 09-25 17:08

    一鍵斷電開(kāi)關(guān)的種類(lèi)有哪些

    一鍵斷電開(kāi)關(guān)的種類(lèi)主要可以從其功能和實(shí)現(xiàn)方式上進(jìn)行分類(lèi)。以下是些常見(jiàn)的一鍵斷電開(kāi)關(guān)種類(lèi): 1. 繼電器式一鍵斷電開(kāi)關(guān) 定義 :這種開(kāi)關(guān)通過(guò)
    的頭像 發(fā)表于 09-13 16:45 ?645次閱讀

    變電站一鍵順控系統(tǒng)和開(kāi)關(guān)柜一鍵順控有區(qū)別嗎?

    變電站一鍵順控系統(tǒng)和開(kāi)關(guān)柜一鍵順控技術(shù)雖然都涉及到“一鍵順控”的概念,但它們?cè)趹?yīng)用范圍和具體實(shí)現(xiàn)上有所不同,因此變電站
    的頭像 發(fā)表于 07-31 13:34 ?402次閱讀
    變電站<b class='flag-5'>一鍵</b>順控<b class='flag-5'>系統(tǒng)</b>和開(kāi)關(guān)柜<b class='flag-5'>一鍵</b>順控有區(qū)別嗎?

    智能開(kāi)關(guān)柜能如何實(shí)現(xiàn)“可視化一鍵順控”?

    智能開(kāi)關(guān)柜能如何實(shí)現(xiàn)“可視化一鍵順控”和“開(kāi)關(guān)柜健康狀態(tài)管理”?蜀瑞創(chuàng)新推出智能開(kāi)關(guān)柜一鍵順控測(cè)解決方案。建設(shè)主要包括柜內(nèi)無(wú)線溫度監(jiān)測(cè)、斷路
    的頭像 發(fā)表于 07-08 09:45 ?383次閱讀
    智能開(kāi)關(guān)柜能如何<b class='flag-5'>實(shí)現(xiàn)</b>“可視化<b class='flag-5'>一鍵</b>順控”?

    致遠(yuǎn)新LoRa終端如何實(shí)現(xiàn)一鍵組網(wǎng)?

    GLCOM-NODE-100是新代的高性能LoRa終端采集器,支持5KM超遠(yuǎn)距離傳輸,低功耗指定節(jié)點(diǎn)喚醒,快速自組網(wǎng)和一鍵組網(wǎng)功能,本期文章將帶大家了解這款終端的
    的頭像 發(fā)表于 06-18 08:25 ?479次閱讀
    致遠(yuǎn)新<b class='flag-5'>一</b>代<b class='flag-5'>LoRa</b>終端如何<b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>一鍵</b>組網(wǎng)?

    環(huán)境監(jiān)測(cè)的革新者:UWB模塊在環(huán)境監(jiān)測(cè)系統(tǒng)中的應(yīng)用研究

    的核心組成部分,在環(huán)境監(jiān)測(cè)系統(tǒng)中具有重要作用,可以實(shí)現(xiàn)對(duì)環(huán)境參數(shù)(如溫度、濕度、氣體濃度等)的高精度監(jiān)測(cè)和實(shí)時(shí)數(shù)據(jù)傳輸,為
    的頭像 發(fā)表于 04-12 15:03 ?368次閱讀

    景區(qū)環(huán)境監(jiān)測(cè)方案監(jiān)測(cè)參數(shù)與功能

    和集中管理的應(yīng)用需求,利用物聯(lián)網(wǎng)技術(shù)、數(shù)據(jù)通訊技術(shù)、地理信息技術(shù)等。針對(duì)景區(qū)環(huán)境監(jiān)測(cè)設(shè)計(jì)搭建套或多套在景區(qū)生態(tài)區(qū)域環(huán)境觀測(cè)大氣、水體等方面數(shù)據(jù)的
    的頭像 發(fā)表于 04-11 17:24 ?407次閱讀

    LoRa ZWS云應(yīng)用(5)-環(huán)境監(jiān)測(cè)系統(tǒng)組態(tài)篇

    云端平臺(tái)的實(shí)時(shí)數(shù)據(jù)流,實(shí)現(xiàn)業(yè)務(wù)流閉環(huán),需要依賴于IoT平臺(tái)、數(shù)據(jù)分析平臺(tái)、應(yīng)用系統(tǒng)整套的數(shù)字化設(shè)施做支撐,大部分的中小型環(huán)境監(jiān)測(cè)企業(yè)無(wú)力承擔(dān)
    的頭像 發(fā)表于 02-19 12:10 ?636次閱讀
    <b class='flag-5'>LoRa</b> ZWS云應(yīng)用(5)-<b class='flag-5'>環(huán)境監(jiān)測(cè)</b><b class='flag-5'>系統(tǒng)</b>組態(tài)篇

    LoRa ZWS云應(yīng)用(4)-環(huán)境監(jiān)測(cè)設(shè)備接入篇

    環(huán)境監(jiān)測(cè)系統(tǒng)中,要將監(jiān)測(cè)設(shè)備接入物聯(lián)網(wǎng)云平臺(tái),才能進(jìn)行對(duì)環(huán)境數(shù)據(jù)實(shí)現(xiàn)實(shí)時(shí)監(jiān)測(cè)、統(tǒng)計(jì)分析等操作。
    的頭像 發(fā)表于 01-26 08:25 ?716次閱讀
    <b class='flag-5'>LoRa</b>  ZWS云應(yīng)用(4)-<b class='flag-5'>環(huán)境監(jiān)測(cè)</b>設(shè)備接入篇

    基于樹(shù)莓派的環(huán)境監(jiān)測(cè)系統(tǒng)

    作為環(huán)境監(jiān)測(cè)系統(tǒng)的核心 樹(shù)莓派是款低成本的單片機(jī)計(jì)算機(jī),支持各種操作系統(tǒng),如Linux等。它具有強(qiáng)大的處理能力和豐富的輸入輸出接口,使得它成為
    的頭像 發(fā)表于 01-04 15:15 ?1591次閱讀

    基于ZWS云和LoRa網(wǎng)關(guān)的環(huán)境監(jiān)測(cè)“1+1&amp;gt;2”方案

    環(huán)保部門(mén)在治理環(huán)境污染問(wèn)題時(shí),面臨的個(gè)重要挑戰(zhàn)是如何實(shí)時(shí)掌握不同地區(qū)的環(huán)境情況。為了解決這問(wèn)題,本文將介紹
    的頭像 發(fā)表于 12-22 08:24 ?656次閱讀
    基于ZWS云和<b class='flag-5'>LoRa</b>網(wǎng)關(guān)的<b class='flag-5'>環(huán)境監(jiān)測(cè)</b>“1+1&amp;gt;2”方案

    一鍵動(dòng)態(tài)切換IP腳本

    T*o*r*Proxy一鍵搭建動(dòng)態(tài)代*理,通過(guò)利用T*o*r搭建Socks5代*理,最終實(shí)現(xiàn)動(dòng)態(tài)切換IP的效果。
    的頭像 發(fā)表于 12-08 10:25 ?1004次閱讀
    <b class='flag-5'>一鍵</b>動(dòng)態(tài)切換IP腳本

    室內(nèi)無(wú)線LORA溫濕度傳感器介紹

    無(wú)線LORA溫濕度監(jiān)測(cè)系統(tǒng)種基于LORA無(wú)線通信
    的頭像 發(fā)表于 11-17 13:56 ?693次閱讀