基于IP的網絡傳感器監(jiān)視器可以通過微型互聯網接口(MxTNI)的組合輕松創(chuàng)建?) 平臺、1-Wire 傳感器和相應的 Java??軟件。MxTNI平臺提供TCP/IP網絡堆棧和設計基于IP的網絡傳感器所需的本地控制功能。內置的Java運行時環(huán)境和1-Wire外設接口庫,允許使用1-Wire器件輕松控制和通信。
本應用筆記演示了基于IP的網絡溫度監(jiān)測器,以及可在支持Java的瀏覽器中執(zhí)行的可下載小程序控制界面。它采用MxTNI驗證模塊和DS1920 i按鈕或DS1820 1-Wire溫度傳感器。小程序控制傳感器并顯示采集的時間和溫度樣本。通過瀏覽到 MxTNI 的 IP 地址自動下載小程序,并使用 MxTNI 運行時環(huán)境提供服務。
介紹
ADI公司的微型網絡接口(MxTNI)平臺提供設計基于IP的網絡傳感器所需的TCP/IP網絡堆棧和本地控制功能。內置的Java運行時環(huán)境和1-Wire外設接口庫,允許使用1-Wire器件輕松控制和通信。本應用筆記演示了基于IP的網絡溫度監(jiān)測器,以及可在支持Java的瀏覽器中執(zhí)行的可下載小程序控制界面。它采用MxTNI驗證模塊和DS1920 i按鈕或DS1820 1-Wire溫度傳感器。小程序控制傳感器并顯示采集的時間和溫度樣本。通過瀏覽到 MxTNI 的 IP 地址自動下載小程序,并使用 MxTNI 運行時環(huán)境提供服務。
系統概述
此應用程序使用 TINIm390 或 TINIm400 驗證模塊。DS1920連接到MxTNI的外部1-Wire總線。MxTNI提供以太網連接,并用作1-Wire主站。
MxTNI 1線接口庫
MxTNI運行時環(huán)境的API支持1-Wire器件,包括適配器庫和1-Wire特定容器,公開其各自的功能。該應用使用DSPortAdapter和OneWireContainer10,其中包含與DS1920通信所需的方法。要開始1-Wire通信,MxTNI請求默認適配器:
DSPortAdapter ourAccess = OneWireAccessProvider.getDefaultAdapter();
接下來,MxTNI針對1-Wire器件(本例中為0x10)所需的族碼,并接收對其容器的引用。
ourAccess.targetFamily(0x10); ourAccess.findFirstDevice(); OneWireContainer10 tc = ( OneWireContainer10 ) ourAccess.getDeviceContainer();
使用參考的容器,MxTNI現在可以訪問DS1920的所有功能。i按鈕的功能使用以下方法向應用程序公開。
readDevice(); writeDevice(); doTemperatureConvert(byte[] state); getTemperature(byte[] state); setTemperatureAlarm(int alarmType, double alarmValue, byte[] state); isAlarming(); (inherited from OneWireContainer)
要感知溫度,請使用readDevice讀取i按鈕的狀態(tài)信息,然后通過調用doTemperatureConvert,然后調用getTemperature來讀取轉換后的溫度來執(zhí)行溫度測量。
DS1920內置高低溫報警功能,可通過編程方式設置,當測得的溫度值超出設定范圍時通知主機。要使用溫度警報,請使用 setTemperatureAlarm 方法設置它們,該方法傳遞TemperatureContainer.ALARM_HIGH或TemperatureContainer.ALARM_LOW作為參數,以及新的警報值和狀態(tài)。通過在容器上調用 isAlarming 方法,可以監(jiān)視設置的警報的狀態(tài)。
在此應用程序中,ButtonControl.java處理溫度樣本,而AlarmMonitor.java檢查警報。
MxTNI服務器軟件
MxTNI為傳入的HTTP請求實現了一個簡單的Web服務器。圖 1 顯示了客戶端和服務器之間的交互。它分為四個線程,顯示 MxTNI 溫度服務器的各個部分。它通過包含嵌入式小程序的簡單 HTML 索引頁提供連接。此小程序由客戶端下載并用于控制溫度采樣和顯示數據。Web 服務器由 TempButtonHost.java 實現。
MxTNI還維護一個等待入站連接的服務器套接字。建立連接后.java SockListen會解密命令并調用TempCommand.java來執(zhí)行它。TempCommand 調用所需的方法來執(zhí)行命令,并在必要時利用 AppletComm.java將信息發(fā)送回客戶端。
圖1.小程序和MxTNI軟件流程圖。
圖2.Applet和MxTNI流程圖繼續(xù)。
MxTNI 樣品緩沖液
MxTNI使用SampleHold.java維護一個時間和溫度緩沖區(qū),該緩沖區(qū)在MxTNI的文件系統中存儲多達300個樣本,因此樣本數據是持久的。SampleHold使用RandomAccessFile來保存檢索時間和溫度采樣應用程序所需的所有信息。
溫度 i按鈕控制小程序
顯示的控制小程序如圖3所示。小程序的主要用途是控制DS1920的采樣,并以有意義的格式顯示采樣。圖表概述了紅色、藍色和黑色之間的變化,具體取決于當前的報警條件。MxTNI的當前溫度顯示在圖表下方;華氏和攝氏刻度都可用。該圖可沿溫度軸和時間軸進行縮放,以使采樣數據更易于解釋。當范圍正確時,高跳變點和低跳變點都顯示在圖表上,高點和低跳變點顯示為紅色,低點顯示為藍色。這些是從圖形右側的控件調整的。小程序還可以控制在給定時間段內要采集的樣本數量。它還提供用于啟動和停止采樣、清除緩沖區(qū)和關閉溫度服務器的控件。如果收到關閉命令,則會保存所有小程序配置數據,以便小程序可以跨會話維護狀態(tài)。
圖3.溫度控制小程序。
小程序由幾個類組成:
TempApplet.java是實現AWT內容的主要類。
TempGraph.java實現了溫度與時間的關系圖。
TiniComm.java,TiniListen.java在MxTNI和小程序之間進行通信。
結論
使用MxTNI運行時環(huán)境和1-Wire庫,可以輕松創(chuàng)建復雜的溫度采樣器件。此應用程序展示了如何將 MxTNI 最好地用作遠程接口設備,用于采集和存儲樣本并將此數據提供給客戶端,以處理顯示數據的計算密集型任務。
審核編輯:郭婷
-
傳感器
+關注
關注
2560文章
52104瀏覽量
761182 -
溫度傳感器
+關注
關注
48文章
3007瀏覽量
157365 -
1-Wire
+關注
關注
0文章
55瀏覽量
21514
發(fā)布評論請先 登錄
相關推薦
4G藍牙網關M1000功能及產品介紹
桂花網藍牙溫度監(jiān)測方案:實現穩(wěn)定可靠的無線溫度監(jiān)測
KZB-PC電動機主要軸承溫度及振動監(jiān)測裝置

#硬聲創(chuàng)作季 超簡單的物聯網遠程溫度監(jiān)測,支持溫度自動化任務和手機遠程通知。#物聯網 #智能新時代 #智能家

虹科Comet溫度記錄儀,在線監(jiān)測貨物的溫度波動,保護貨物免受溫度變化而損壞 #冷鏈 #物流運輸 #溫度監(jiān)測
【Tisan物聯網申請】礦井提升機無線溫度監(jiān)測
基于物聯網的多點溫度監(jiān)控系統(WeMOS D1 WIFI ESP8266 開發(fā)板)相關資料分享
不使用云平臺的情況下怎樣才能實現溫度的遠程監(jiān)測?
基于工業(yè)物聯網的溫度監(jiān)測系統在鋼鐵行業(yè)的應用

聯網溫度監(jiān)測

基于MQTT發(fā)布/訂閱模式的物聯網溫度監(jiān)測系統

評論