由于開發(fā)人員需要等待新設(shè)備的硬件實現(xiàn)可用才能開始開始工作,因此嵌入式應(yīng)用開發(fā)項目通常會出現(xiàn)延遲。工業(yè)物聯(lián)網(wǎng) (IIoT) 應(yīng)用開發(fā)面臨類似的瓶頸,需要等待傳感器數(shù)據(jù)才開始像工業(yè)預(yù)見性維護(hù)系統(tǒng)或設(shè)施自動化系統(tǒng)之類基于機(jī)器學(xué)習(xí)方法的應(yīng)用的開發(fā)。本系列文章由兩部分組成,將探討哪些替代方法能提供所需的早期數(shù)據(jù)流,以加速工業(yè)物聯(lián)網(wǎng)應(yīng)用開發(fā)。第 1 部分介紹了如何使用模擬方法生成這些數(shù)據(jù)流。本文是第 2 部分,將會討論有哪些選擇方案可用來快速進(jìn)行傳感器系統(tǒng)原型開發(fā),以幫助生成數(shù)據(jù)。
大規(guī)模工業(yè)物聯(lián)網(wǎng) (IIoT) 應(yīng)用從根本上依賴于對目標(biāo)環(huán)境中所部署傳感器網(wǎng)絡(luò)產(chǎn)生的數(shù)據(jù)流的分析和響應(yīng)。如果在開發(fā)初期不能隨時獲得這些數(shù)據(jù)流,則工業(yè)物聯(lián)網(wǎng)應(yīng)用可能會落后于緊迫的工期或低于公司的預(yù)期。
盡管模擬方法可以滿足許多應(yīng)用的數(shù)據(jù)要求,但有些應(yīng)用可能需要與目標(biāo)環(huán)境精確匹配的數(shù)據(jù)。對于這些應(yīng)用,要想獲得有效的模擬結(jié)果,所需的投入可能不切實際。而使用現(xiàn)成的傳感器和網(wǎng)關(guān)裝置提供了一個可能更容易的快速數(shù)據(jù)交付途徑。這些裝置專為工業(yè)環(huán)境而設(shè)計,支持各種傳感器類型和連接選項,幾乎不需用戶花費什么精力。
本文是關(guān)于加速工業(yè)物聯(lián)網(wǎng)應(yīng)用開發(fā)的兩部分系列文章中的第二部分,將會介紹多種預(yù)配置型工業(yè)物聯(lián)網(wǎng)傳感器和網(wǎng)關(guān),用于生成加速工業(yè)物聯(lián)網(wǎng)應(yīng)用開發(fā)所需的數(shù)據(jù)。
工業(yè)物聯(lián)網(wǎng)數(shù)據(jù)模擬的局限性
傳感器數(shù)據(jù)是工業(yè)物聯(lián)網(wǎng)應(yīng)用的核心,但完整的應(yīng)用部署同時依賴于能提供這些數(shù)據(jù)的傳感器系統(tǒng),以及將這些數(shù)據(jù)轉(zhuǎn)換為有用信息的軟件系統(tǒng)是否現(xiàn)成可用。對于某些工業(yè)物聯(lián)網(wǎng)應(yīng)用,模擬可能無法提供足夠有用的數(shù)據(jù)。如果不仔細(xì)注意模擬的參數(shù),則模擬的數(shù)據(jù)流可能會展現(xiàn)出將應(yīng)用偏向特定工作曲線的屬性。
例如,若數(shù)據(jù)模擬配置為在 -40°C 至 +125°C 范圍內(nèi)提供均勻分布的隨機(jī)溫度,則可能會使應(yīng)用偏向極端溫度,超出目標(biāo)環(huán)境的實際溫度范圍。此外,這種簡單的模擬提供的溫度數(shù)據(jù)還可能容易從一個測量期到下一個測量期一下跳過幾十度。在典型的工業(yè)物聯(lián)網(wǎng)應(yīng)用中,此類不切實際的大幅溫度變化可能會對過程控制回路和其他應(yīng)用結(jié)果造成混亂。
如果應(yīng)用預(yù)期要嵌入機(jī)器學(xué)習(xí)推斷模型,則數(shù)據(jù)質(zhì)量及其對真實情況的體現(xiàn)程度尤其值得關(guān)注。數(shù)據(jù)科學(xué)家們都知道,采用糟糕數(shù)據(jù)進(jìn)行訓(xùn)練的推斷模型也會提供同樣糟糕的結(jié)果。因此,為了構(gòu)造這些模型所需的有效數(shù)據(jù)模擬,投入水平可能會迅速攀升。
對于大多數(shù)工業(yè)物聯(lián)網(wǎng)項目而言,將應(yīng)用開發(fā)推遲到傳感器系統(tǒng)部署完成后,這根本不現(xiàn)實。事實上,當(dāng)需要執(zhí)行軟件應(yīng)用來提供所需的信息,甚至來驗證能否全面部署時,等待傳感器部署甚至都不可行。例如,數(shù)據(jù)科學(xué)家可能需要復(fù)雜算法的結(jié)果來確定是否需要更高分辨率、更快更新速率,甚至不同類型的傳感器數(shù)據(jù),來解決結(jié)果中的不明確性,或在其他方面優(yōu)化應(yīng)用。
由于所有這些原因,組織可能不情愿地決定延遲工業(yè)物聯(lián)網(wǎng)應(yīng)用的開發(fā),因為相比使用對目標(biāo)工業(yè)過程和環(huán)境表現(xiàn)不佳的模擬數(shù)據(jù)來開發(fā)應(yīng)用,這是更好的選擇。幸運的是,隨著預(yù)置工業(yè)物聯(lián)網(wǎng)傳感器系統(tǒng)和相關(guān)網(wǎng)關(guān)設(shè)備的不斷增多,組織至少能夠快速部署應(yīng)用開發(fā)所需的一組最關(guān)鍵的傳感器。
快速部署傳感器網(wǎng)絡(luò)
工業(yè)物聯(lián)網(wǎng)傳感器將傳感器、處理器和連接接口組合在一個封裝中,以承受典型的工業(yè)環(huán)境壓力。除了用于溫度、振動、壓力和濕度的單個傳感器,開發(fā)人員還可以找到可用的多傳感器裝置,這些裝置封裝了特定應(yīng)用功能(如預(yù)見性維護(hù))所需的傳感器組合。
預(yù)見性維護(hù)方法會監(jiān)測起著設(shè)備潛在故障指示作用的特性。例如,在電機(jī)中,振動頻率和溫度的特定變化能可靠地指出電機(jī)中非常具體的故障類型。工業(yè)物聯(lián)網(wǎng)傳感器設(shè)計用于捕獲這些數(shù)據(jù),例如 National Control Devices (NCD) 的 PR55-20A 預(yù)見性維護(hù)傳感器,它將所需的傳感器與低功耗微控制器和 DigiMesh 無線網(wǎng)狀網(wǎng)絡(luò)連接組合在一起。
為了加速工業(yè)物聯(lián)網(wǎng)應(yīng)用的開發(fā),開發(fā)人員可以輕松地將專用傳感器(例如 NCD 預(yù)見性維護(hù)傳感器)與其他傳感器(例如 NCD PR49-24G 無線環(huán)境傳感器)組合使用。NCD PR49-24G 采用由兩節(jié) AA 電池供電的工業(yè)封裝,并集成了溫度、濕度和氣體傳感器。
除了各種特定的傳感器類型,工業(yè)物聯(lián)網(wǎng)傳感器制造商還提供了預(yù)置的通信網(wǎng)關(guān)裝置,旨在簡化傳感器到本地連接網(wǎng)絡(luò)的集成。實際上,開發(fā)人員可以找到一些可用的網(wǎng)關(guān)裝置,需要預(yù)先配置成連接特定的商業(yè)云或支持常用于連接物聯(lián)網(wǎng)云平臺的通信協(xié)議。
針對其 DigiMesh 無線傳感器,NCD PR55-21 網(wǎng)關(guān)系列使用 Wi-Fi 連接來連接到特定的云服務(wù),包括 Microsoft Azure IoT (PR55-21_AZURE)、Amazon Web Services IoT (PR55-21_AWS) 或 Losant IoT 平臺 (PR55-21_LOSANT)。此外,PR55-21_MQTT 網(wǎng)關(guān)還支持與使用 ISO 標(biāo)準(zhǔn) MQ 遙測傳輸 (MQTT) 協(xié)議的任何主機(jī)進(jìn)行通信。與 PR55-21 系列的其他成員一樣,PR55-21_MQTT 網(wǎng)關(guān)將低功耗工業(yè)微控制器與子系統(tǒng)相結(jié)合,以實現(xiàn)本地 DigiMesh 無線連接以及與本地或遠(yuǎn)程 MQTT 服務(wù)器的加密 Wi-Fi 回程連接。
開發(fā)人員可以使用通過網(wǎng)關(guān)的嵌入式 Web 服務(wù)器提供的菜單式工具,快速配置 DigiMesh 本地網(wǎng)絡(luò)和 MQTT Wi-Fi 連接。
DigiMesh 網(wǎng)狀網(wǎng)絡(luò)提供了一種有效的方法,用于擴(kuò)展電池供電型傳感器系統(tǒng)中所需的低功率收發(fā)器的有效范圍。當(dāng)然,這只是工業(yè)環(huán)境中可能遇到的多種連接選項之一,制造商針對其中許多連接提供了類似的傳感器和網(wǎng)關(guān)組合。例如,Laird 的 Sentrius RS1xx 系列包括專用于支持藍(lán)牙和 LoRaWAN 連接的工業(yè)傳感器。該公司的 Sentrius RG1xx 系列包括互補性網(wǎng)關(guān),用于支持 LoRaWAN 部署的區(qū)域頻率要求。此外,這些網(wǎng)關(guān)還支持本地藍(lán)牙連接和 Wi-Fi 回程 Internet 連接。
在某些應(yīng)用中,強(qiáng)電磁干擾 (EMI) 源會降低無線通信中的信號完整性。對于這些情況,若能夠?qū)鞲衅髋c通信功能分開,這可是重要的優(yōu)勢。除了自家公司的無線工業(yè)傳感器,Banner Engineering 還提供了能通過 RS-485 或單線串行接口連接至單獨無線節(jié)點的傳感器。因此,操作人員可以將無線通信節(jié)點與連接至強(qiáng) EMI 源(例如高速電機(jī))的傳感器相距一定距離放置。
為支持這種配置,Banner Engineering 的 DX80N9Q45VTP 無線節(jié)點設(shè)計成與該公司的 QM30VT1 單線振動和溫度傳感器連接,而 DX80N9Q45TH 無線節(jié)點則與 M12FTH4Q 單線溫度和濕度傳感器連接。為了滿足更廣泛的傳感器接口要求,該公司的 DX80N9Q45U 可用作通用的單線無線節(jié)點,同時該公司的 DX80G9M6S 系列無線節(jié)點支持 RS-485 傳感器連接到多跳網(wǎng)絡(luò)。
本地處理
即使能快速部署工業(yè)物聯(lián)網(wǎng)傳感器網(wǎng)絡(luò),開發(fā)人員也可能需要預(yù)期進(jìn)行一定程度的本地處理,以減少數(shù)據(jù)量或減輕下游資源的處理負(fù)載。實際上,先進(jìn)的工業(yè)傳感器(例如 Banner Engineering 的 QM30VT2 振動和溫度傳感器)能夠讓用戶將測得的振動頻率分成多達(dá) 20 個頻段。此功能在預(yù)見性維護(hù)應(yīng)用中尤為重要,在這些應(yīng)用中,通過確定不同頻段內(nèi)的變化可確定特定類型的故障。
除了由傳感器進(jìn)行預(yù)處理外,在早期部署傳感器網(wǎng)絡(luò)時,也可能會產(chǎn)生一系列本地處理要求。Banner Engineer 的 DXM700 控制器和網(wǎng)關(guān)提供了此功能。DXM700 的尺寸僅為 70 x 86 x 55 毫米 (mm),可提供多個本地?zé)o線和有線連接以及到主機(jī)服務(wù)器的以太網(wǎng)回程連接。
當(dāng)從本地傳感器網(wǎng)絡(luò)接收數(shù)據(jù)時,該控制器可以執(zhí)行用 ScriptBasic 編寫的程序,來檢查輸入數(shù)據(jù),根據(jù)輸入數(shù)據(jù)激活輸出,或執(zhí)行簡單的數(shù)據(jù)轉(zhuǎn)換。Banner Engineering 說明文檔中包括了一些 ScriptBasic 示例,用于說明像響應(yīng)傳感器數(shù)據(jù)變化這樣的典型操作 。
副本
...'Function to read the T/H sensor FUNCTION GetTempHumidityData LastValueTempC = TempC LastValueHumidity = Humidity Humidity =GETREG(SensorHumidity_reg, TH_SID, MBtype) TempC = GETREG(SensorTempC_reg, TH_SID, MBtype) IF Humidity > 65535 or TempC > 65535 THEN PRINT "Read Error - humidity / temp reading...", Humidity," ",TempC,"/n/r" END IF WrErr = SETREG (Humidity_reg, Humidity, LocalRegSID, MBtype) WrErr = SETREG (TempC_reg, TempC, LocalRegSID , MBtype) FUNCTION StateMachine 'State machine definitions for the periodic reading of temp/humidity ' TH_State = 0 current state of the state machine ' TH_Idle= 0 initial state ' TH_Wait= 1 wait time between samples ' TH_Sample= 2 get samples from remote sensor ' TH_Error= 3 error state - unknown condition LOCAL StartState StartState = TH_State WrErr = SETREG (SM_reg, TH_State, LocalRegSID, MBtype) IF TH_State = TH_Idle THEN StartTime = NOW TH_State = TH_Wait ELSEIF TH_State = TH_Wait THEN IF NOW >= (StartTime + WaitTime) THEN TH_State = TH_Sample ELSE TH_State = TH_Wait END IF ELSEIF TH_State = TH_Sample THEN GetTempHumidityData TH_State = TH_Idle ELSE TH_State = TH_Error END IF IF StartState <> TH_State THEN PRINT "/r/n Time ",NOW," SM Started-> ",THState[StartState]," End->",THState[TH_State]," /r/n" END IF END FUNCTION FUNCTION LED_driver IF LastValueTempC < TempC THEN ? ?WrErr = SETREG (TempGoingUp_LED2_reg,1,DisplaySID, MBtype) ? ?ELSE ? ? ? WrErr = SETREG (TempGoingUp_LED2_reg,0,DisplaySID, MBtype) ? ?END IF ? ? ? IF LastValueTempC > TempC THEN WrErr = SETREG (TempGoingDown_LED3_reg,1,DisplaySID, MBtype) ELSE WrErr = SETREG (TempGoingDown_LED3_reg,0,DisplaySID, MBtype) END IF IF (Humidity > 65535 ) OR (TempC > 65535) THEN WrErr = SETREG (CommsError_LED4_reg,1,DisplaySID, MBtype) ELSE WrErr = SETREG (CommsError_LED4_reg,0,DisplaySID, MBtype) END IF IF GETREG(ScriptRunnning_LED1_reg, DisplaySID, MBtype) THEN WrErr = SETREG (ScriptRunnning_LED1_reg,0,DisplaySID, MBtype) ELSE WrErr = SETREG (ScriptRunnning_LED1_reg,1,DisplaySID, MBtype) END IF END FUNCTION ‘Main program loop BEGIN: PRINT "Script Starting/r/n" ITERATE: 'PRINT "/r/n Time = ",NOW," /r/n" StateMachine LED_driver Sleep(1) GOTO ITERATE END
清單 1:此 ScriptBasic 代碼段來自 Banner Engineering,展示了開發(fā)人員如何對 Banner Engineering 的 DXM700 進(jìn)行編程,以在本地對傳感器數(shù)據(jù)作出響應(yīng)。在此例中,通過打開和關(guān)閉 LED 來響應(yīng)溫度和濕度傳感器數(shù)據(jù)的變化。(代碼來源:Banner Engineering)
Multi-Tech Systems 的 MTCAP-Lxxx 系列等網(wǎng)關(guān)為本地處理提供了更大的靈活性。此系列專用于滿足各種連接要求,可支持傳感器側(cè)的本地 LoRaWAN 連接,以及回程信道的以太網(wǎng)和可選寬帶 LTE 連接。針對其工作環(huán)境,此網(wǎng)關(guān)系列基于開源的 Multi-Tech Linux (mLinux) 操作系統(tǒng)。因此,開發(fā)人員可以使用熟悉的開發(fā)環(huán)境來創(chuàng)建本地處理軟件例程。此外,這些網(wǎng)關(guān)還支持 Node-RED,這是一種需要很少代碼的開發(fā)選項,對于事件驅(qū)動型應(yīng)用(例如工業(yè)物聯(lián)網(wǎng))非常有用。關(guān)于 Node-RED 的更多信息請參閱后文。
低代碼快速原型開發(fā)
通過快速部署物理傳感器網(wǎng)絡(luò),在全面設(shè)計、開發(fā)和調(diào)試傳感器網(wǎng)絡(luò)之前就能提供早期的關(guān)鍵數(shù)據(jù)來源,從而幫助加速工業(yè)物聯(lián)網(wǎng)應(yīng)用的開發(fā)。如果快速部署帶來了大量附帶的軟件開發(fā)要求,則可能會妨礙進(jìn)行部署。在很多情況下,前述預(yù)配置型工業(yè)物聯(lián)網(wǎng)的傳感器和網(wǎng)關(guān)都可以避免這種情況,但若超出即用型傳感器和網(wǎng)關(guān)功能的獨特數(shù)據(jù)要求,則可能會帶來相關(guān)的軟件要求。
為了滿足獨特的數(shù)據(jù)要求,快速原型設(shè)計平臺(例如 Arduino 和 Raspberry Pi)提供了各種各樣的專用傳感器和執(zhí)行器作為擴(kuò)展板。通過混合搭配這些擴(kuò)展板,開發(fā)人員可以快速構(gòu)建幾乎滿足任何傳感器數(shù)據(jù)要求的原型設(shè)計。
對于物聯(lián)網(wǎng)應(yīng)用來說,制造商通過發(fā)布多傳感器板來簡化應(yīng)用的原型設(shè)計,這些多傳感器板設(shè)計具有應(yīng)用通常需要的最小尺寸和功能。諸如 ON Semiconductor 的 RSL10-SENSE-GEVK 評估套件或 STMicroelectronics 的 STEVAL-STLKT01V1 SensorTile 開發(fā)套件之類開發(fā)板,則將高性能處理器與可穿戴設(shè)備和物聯(lián)網(wǎng)設(shè)備通常需要的各種各樣傳感器集成在一起。例如,SensorTile 就組合了 STMicroelectronics 的 STM32L4 處理器、STMicroelectronics 的 BLUENRG-MS 收發(fā)器和一個傳感器陣列,而傳感器陣列則包括了該公司的 LPS22HBTR 微機(jī)電系統(tǒng) (MEMS) 壓力傳感器、帶加速計和陀螺儀的 LSM6DSMTR MEMS 慣性測量裝置 (IMU) 以及帶線性加速和磁傳感器的 LSM303AGRTR MEMS 電子羅盤。
作為流行的低代碼開發(fā)環(huán)境,Node-RED 允許開發(fā)人員通過繪制連接功能元件(節(jié)點)的圖形(流程),來對這些板卡和其他硬件系統(tǒng)(例如 NCD 設(shè)備和 Multi-Tech 網(wǎng)關(guān))進(jìn)行編程。這些流程與節(jié)點之間的交互相對應(yīng),而這些節(jié)點又對應(yīng)于一些特定的功能,包括讀取傳感器數(shù)據(jù)、對數(shù)據(jù)執(zhí)行操作、將數(shù)據(jù)傳輸?shù)狡渌δ茉ㄈ缭凭W(wǎng)關(guān))以及顯示數(shù)據(jù)。
在開源的 Node-RED 流程存儲庫中有超過 225,000 個模塊可用,該環(huán)境提供了一個可用于開發(fā)事件驅(qū)動型應(yīng)用的豐富生態(tài)系統(tǒng),例如采集傳感器數(shù)據(jù)并傳輸?shù)皆?。盡管 Node-RED 提供了在生產(chǎn)應(yīng)用中集成結(jié)果流程的方法,但它對 Node.js 的依賴可能不適用于某些應(yīng)用或生產(chǎn)環(huán)境。
Digi-Key 的 DK IoT Studio 提供了另一個低代碼開發(fā)環(huán)境,大幅消除了對手動軟件開發(fā)的需求,同時仍提供 C 語言源代碼。通過使用 DK IoT Studio,開發(fā)人員可以在 DK IoT Studio 畫布上拖放與 SensorTile 的每個功能關(guān)聯(lián)的組件,從而創(chuàng)建所需的功能。
除了支持特定的硬件組件外,該環(huán)境還提供了類似的可拖放功能組件,這些組件代表了云數(shù)據(jù)傳輸或云資源操作。在繪制描述數(shù)據(jù)流和操作的圖表后,開發(fā)人員可以下載生成的代碼,以上傳到 SensorTile。在構(gòu)建典型原型時,此過程幾乎或完全不需要額外的代碼開發(fā)。有關(guān)這一快速原型開發(fā)流程的更多信息,請閱讀“快速部署電池供電型藍(lán)牙 5 認(rèn)證多傳感器物聯(lián)網(wǎng)設(shè)備”。
總結(jié)
大規(guī)模工業(yè)物聯(lián)網(wǎng)應(yīng)用的開發(fā)主要依賴能否獲得如實呈現(xiàn)目標(biāo)環(huán)境的數(shù)據(jù)。正如本系列文章的第 1 部分所述,盡管模擬方法可以滿足許多應(yīng)用的數(shù)據(jù)要求,但有些應(yīng)用可能需要與目標(biāo)環(huán)境精確匹配的數(shù)據(jù)。對于這些應(yīng)用,要想獲得有效的模擬結(jié)果,所需的投入可能不切實際。而使用現(xiàn)成的傳感器和網(wǎng)關(guān)裝置,則提供了一種更加簡單的快速數(shù)據(jù)交付解決方案。
如第 2 部分(本文)所述,這些裝置支持各種傳感器類型和連接選項,幾乎不需要用戶花費什么精力。使用這些產(chǎn)品,開發(fā)人員可以快速部署傳感器網(wǎng)絡(luò),從而能夠交付加速工業(yè)物聯(lián)網(wǎng)應(yīng)用開發(fā)所需的數(shù)據(jù)。
審核編輯 黃宇
-
傳感器
+關(guān)注
關(guān)注
2553文章
51407瀏覽量
756657 -
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2914文章
44939瀏覽量
377100 -
IOT
+關(guān)注
關(guān)注
187文章
4230瀏覽量
197636
發(fā)布評論請先 登錄
相關(guān)推薦
工業(yè)物聯(lián)網(wǎng)(IIoT)
互聯(lián)網(wǎng)與工業(yè)物聯(lián)網(wǎng)之間的區(qū)別與聯(lián)系
安森美半導(dǎo)體開發(fā)方案助力客戶快速開發(fā)及部署物聯(lián)網(wǎng)設(shè)備
工業(yè)物聯(lián)網(wǎng)技術(shù)
工業(yè)物聯(lián)網(wǎng)的現(xiàn)況如何
什么是物聯(lián)網(wǎng)的心臟?傳感器是關(guān)鍵
【科普向】工業(yè)物聯(lián)網(wǎng)的路該怎么走
5G是如何助力工業(yè)物聯(lián)網(wǎng)?
產(chǎn)業(yè)物聯(lián)網(wǎng)的關(guān)鍵傳感器有哪些?
消費物聯(lián)網(wǎng)與工業(yè)物聯(lián)網(wǎng)的差異是什么?
工業(yè)物聯(lián)網(wǎng)和物聯(lián)網(wǎng)的區(qū)別是什么?
快速工業(yè)物聯(lián)網(wǎng)傳感器是怎么部署的?
工業(yè)物聯(lián)網(wǎng)網(wǎng)關(guān)是什么?工業(yè)物聯(lián)網(wǎng)網(wǎng)關(guān)有什么作用?
物聯(lián)網(wǎng)的演變,物聯(lián)網(wǎng)的過去、現(xiàn)在和未來
SmartMesh IP 的軟件開發(fā)套件加速了無線傳感器工業(yè)物聯(lián)網(wǎng)應(yīng)用的開發(fā)
![SmartMesh IP 的軟件<b class='flag-5'>開發(fā)</b>套件<b class='flag-5'>加速</b>了無線<b class='flag-5'>傳感器</b><b class='flag-5'>工業(yè)</b><b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>應(yīng)用的<b class='flag-5'>開發(fā)</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評論