?

基于B/S架構的磁致伸縮位移傳感器手操器設計

2022-11-28 09:28楊昌群
自動化技術與應用 2022年10期
關鍵詞:瀏覽器調試界面

楊昌群

(國家石油天然氣管網集團有限公司華南分公司,廣東 廣州 510180)

1 引言

磁致伸縮位移傳感器是一種利用TOF(Time of Flight)法來測量物體絕對位移的非接觸式傳感器,具有精度高、重復性好、穩定可靠、無需定期標定等優勢[1-2],因而被廣泛應用于石油、化工、冶金等行業中的位置檢測與控制系統[3],如火箭和導彈發射臺架控制系統、液壓控制系統、輥壓機的壓下機構等。

作為檢測與控制系統的重要一環,為滿足現場安裝的空間限制以及位移檢測的實時性、可靠性和穩定性要求,磁致伸縮位移傳感器自身舍棄了顯示操作功能以減小電子倉體積和故障發生率。而在正式應用前,為了確保測量準確性,傳感器的工作參數必須根據現場的實際條件進行確定[4],如零點位置、測量方向、通訊參數等,因此需要配合手操器或工控機完成調試工作。目前市面上常見的手操器大多采用按鍵復用和數碼管實現人機交互,使用十分不便,而采用傳統C/S架構的工控機調試軟件依賴于運行環境,易于出現兼容性問題[5]。并且由于傳感器大多應用于具有沖擊振動、污染等惡劣條件下的工業現場,調試人員不宜靠近安裝工位,此時將傳感器接入調試設備還需長距離布線,不利于調試工作的快速開展。

鑒于上述問題,本文設計了一種基于B/S 架構的磁致伸縮位移傳感器手操器。用戶通過手機、平板、移動PC 等便攜式設備接入手操器的Wi-Fi 網絡后即可使用Web 進行遠程操作。相較于傳統調試工具,無需預先安裝調試程序,軟件兼容性更好,可實現即連即用,并且通過無線通信和Web 技術以一種更加友好的方式實現交互,對磁致伸縮位移傳感器的現場調試具有積極意義。

2 整體方案設計

手操器需要具備遠程操作以及良好的人機交互功能,以便于對應用于工業現場的磁致伸縮位移傳感器進行快速調試,因此采用B/S架構并結合Web 技術以提供更加簡便高效的操作方式,整體方案如圖1所示。手操器采用RS485 接口與磁致伸縮位移傳感器進行通信,其內部運行Web 服務器,用于接收來自便攜式設備的前端請求并通過CGI(Common Gateway Interface)[6]和HTML實現請求響應和數據可視化。其中,Web 前端所需的資源文件均存儲于本地,在用戶首次訪問后統一上傳。通過Wi-Fi 模塊將手操器拓展為無線網絡接入點,使用戶接入該網絡后即可通過瀏覽器完成磁致伸縮位移傳感器的現場調試。

3 手操器設計

3.1 硬件選型及設計

手操器以ARM芯片為核心,硬件按功能可劃分為最小系統電路、RS485接口模塊、存儲拓展模塊和無線通信模塊等,如圖2所示。ARM 芯片的型號為STM32F429,主頻180M,自帶1M的FLASH和256K的SRAM,具有SD、SPI、USART 等多種外設接口。由于片內存儲器大小無法滿足系統需求,分別拓展了128M 的NOR FLASH 用于存儲Web資源文件以及32M的SDRAM充當發送與接收緩沖區。無線通信模塊選用型號為AP6181 的Wi-Fi模塊,符合IEEE 802.11 b/g/n標準,啟動后以AP模式工作,負責手操器與便攜式設備之間的無線數據傳輸,該模塊的外圍電路設計如圖3所示。RS485 接口則作為手操器的外部接口,負責與磁致伸縮位移傳感器進行通信。

3.2 手操器軟件設計

為降低不同功能模塊之間的耦合度并提高實時性,手操器采用FreeRTOS 操作系統。FreeRTOS 是一款開源且實現多任務調度的輕量級實時操作系統[7],因此可將手操器整體功能劃分為各個子任務并進行靈活調度。為滿足手操器與瀏覽器之間的通信協議標準,在手操器中移植輕量級TCP/IP協議棧LWIP[8]并根據HTTP協議規范實現應用層數據解析及封裝。根據需求分析,最終將整體功能劃分為五個任務,分別為主程序、DHCP服務程序、HTTP 服務程序、無線通信程序和傳感器通信程序,任務之間通過FreeRTOS 提供的消息郵箱和消息量實現協作。

主程序負責完成硬件初始化和任務創建,待所有任務進入就緒狀態后,開啟搶占式任務調度,此時程序的執行邏輯由操作系統根據各任務的優先級和阻塞狀態決定。DHCP服務程序為每個接入無線網絡的便攜式設備分配臨時的IP地址。HTTP服務程序阻塞監聽本機IP地址上的80端口,判斷是否有HTTP請求到達,根據協議規范解析請求并執行URL對應的CGI程序,然后按協議格式封裝消息并返回。傳感器通信線程負責按Modbus-RTU標準協議與傳感器進行數據交換,根據響應碼解析數據并生成相應信息。無線通信程序負責控制無線通信模塊的底層數據發送和接收,通過消息郵箱與LWIP協議棧進行網絡數據包傳遞。

傳感器在調試過程中的位移實時檢測需要Web前端不斷向手操器發送請求并根據響應數據更新圖表信息。若請求到達HTTP 服務程序后再與傳感器進行通信,則該線程的阻塞時間將在較大程度上取決于傳感器的響應時間,導致單次通信所耗費的時間延長。為了提高通信效率,本文采用生產者、消費者設計模式,將數據生產和消費任務分別交由傳感器通信程序和HTTP服務程序完成,使數據在生產和消費速率不一致的情況下實現高效率的共享[9]。傳感器通信程序負責將傳感器數據按固定格式加工為對應的消息并投遞至數據緩沖區,HTTP 服務程序則根據請求中攜帶的URL 直接從該緩沖區中取出指定類型的消息并返回給Web 前端,兩者之間的數據緩沖區采用基于FIFO隊列的消息郵箱。通過這種方式,HTTP服務線程在響應請求時可直接從郵箱中取出消息而無需在此期間等待傳感器響應,實現了程序的進一步解耦,執行流程如圖4所示。

3.3 Web前端設計

Web前端負責在瀏覽器中控制和顯示傳感器的操作界面,由HTML、CSS 和JS 文件組成。Web 前端和手操器之間采用HTTP 協議進行通信并以JSON 作為數據交換格式。

SPA(Single-page Web Application)是指通過單個HTML界面完成用戶交互與動態更新的應用程序。SPA的優勢在于構建Web 界面所需的資源僅需加載一次,其后通過JS腳本和少量的數據交互即可完成頁面內容的更新,從而提高了Web 界面的響應速度[10]。本文根據SPA規范設計了Web前端并使用AJAX(Asynchronous JavaScript and XML)完成數據的異步更新[11]及界面的局部刷新[12]。當便攜式設備接入無線網絡并訪問指定IP地址后,手操器將存儲其中的Web 資源上傳并在瀏覽器成功加載后開始運行其中的JS 腳本。為了滿足Web 界面與傳感器的交互需求,JS腳本實現了以下幾個功能:1)將Web 界面中的各個按鈕與CGI 對應的URL 綁定。2)以固定頻率向手操器發送位移請求,并將該請求對應的響應包作為心跳包以判斷便攜式設備與手操器的連接狀態。3)根據協議規范解析響應包并通過DOM 操作調整Web 界面的顯示內容。4)發生指定異常時,通過瀏覽器的彈窗顯示異常信息,異常分類如表1所示。JS腳本的具體執行流程如圖5所示。

表1 異常信息分類

由于接入設備的屏幕分辨率存在差異,采用單一頁面布局可能會導致Web 頁面在某些分辨率下出現內容缺失、顯示比例不協調、無法正常操作等問題,對此采用Bootstrap開源框架對網頁布局進行響應式設計,其原理為采用媒體查詢(@media)控制網頁的CSS樣式。當設備的屏幕尺寸滿足@media 中設置的尺寸范圍時即采用對應的布局樣式,使Web 頁面在不同尺寸的屏幕中均可正常顯示。為減小存儲占用和傳輸耗時,對Bootstrap進行裁剪,僅保留柵格系統以實現適配功能。

4 功能測試

為測試手操器的各項功能,以RS485 總線連接手操器和傳感器,將便攜式設備接入無線網絡,通過瀏覽器訪問指定IP 地址后顯示手操器的Web 界面,如圖6所示。通過該界面,用戶可查看磁致伸縮位移傳感器的運行狀態并對其工作參數進行調整,如方向、分辨率、平滑次數等。其中,曲線圖負責實時展示傳感器的位移輸出值。當模擬表1所示的指定異常后,瀏覽器中也可及時出現攜帶相應異常信息的彈窗警告。

將電腦接入手操器的無線網絡中并通過Chrome 瀏覽器記錄Web 前端與手操器通信時所產生的HTTP 報文,然后根據其生成的HAR文件[13]分析Web應用性能并統計通信的延時情況。在一段時間內對手操器進行連續測試,測試條件為手操器以每秒20 次的頻率采集傳感器的位移值并進行存儲,然后由Web 前端以0.5 s 為間隔定時向手操器發送請求以獲取位移數據,延時大小以從瀏覽器發出請求到接收響應包之間的時間差為準。測試結果如下:測試期間,Web 前端共發送8119 次HTTP請求,成功返回8015個響應包,丟包率約為1.3%,平均延時約為37.6 ms,具體情況如圖7所示。由此可見,該手操器在測試期間運行較為穩定,延時大小可滿足現場調試的需求。

5 結束語

本文基于B/S架構設計了一種應用于磁致伸縮位移傳感器的手操器,以ARM 作為控制核心進行拓展,選用Wi-Fi作為無線通信方式并結合一系列Web技術完成數據可視化,使人機交互性能得到較大提升。最后對所設計的儀器進行功能測試,驗證了該方案的可行性,為相關手操器的開發提供了一種設計思路。

猜你喜歡
瀏覽器調試界面
不同截面類型鋼管RPC界面粘結性能對比研究
高溫氣冷堆示范工程TSI系統安裝及調試
微重力下兩相控溫型儲液器內氣液界面仿真分析
電氣儀表自動化安裝與調試分析
調試新設備
國企黨委前置研究的“四個界面”
調試機械臂
微軟發布新Edge瀏覽器預覽版下載換裝Chrome內核
反瀏覽器指紋追蹤
瀏覽器
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合