上海滬工閥門廠(集團)有限公司
摘要:針對無線通信技術在閥門電動裝置中的應用,分析各種常見的無線通信技術的應用特點,提出基于藍牙技術的解決方案。另外,簡單分析了藍牙協(xié)議棧的 3 種實現形式,選擇嵌入式模型作為藍牙無線通信的實現形式。著重介紹了藍牙手持操作器的硬件系統(tǒng)結構和軟件流程,實現了對帶藍牙通信模塊的閥門電動裝置的無線遙控操作。
關鍵詞:閥門電動裝置;藍牙;KC02
1 藍牙協(xié)議棧實現形式
藍牙協(xié)議規(guī)范遵循開放系統(tǒng)互聯(lián) OSI(Open System Interconnection)模型。
藍牙協(xié)議棧按照封裝方式有 3 種不同的實現模型——寄居式、嵌入式和完全嵌入式,分別針對具有不同功能和資源的產品。
對于嵌入式模型,藍牙協(xié)議棧位于藍牙模塊中,應用程序單獨運行在主機上,通過適配協(xié)議與藍牙模塊通信。嵌入式模型無需主機處理藍牙上層協(xié)議,減少了主機的軟件負荷和代碼長度,降低了開發(fā)難度,對于內存有限的設備是不錯的選擇。本設計在藍牙協(xié)議棧實現形式上選用了嵌入式模型,通過使用南京國春電子技術有限公司的 KC02 藍牙模塊,保證通信可靠性并減少了 CPU 的代碼量。
2 藍牙應用系統(tǒng)設計
在工業(yè)現場使用藍牙無線通信,其系統(tǒng)的硬件設計分為閥門電動裝置和手持操作器兩部分。
2.1 閥門電動裝置
閥門電動裝置實現閥門本體的控制功能。以 LPC2292 為核心構建整個嵌入式系統(tǒng),藍牙模塊采用工業(yè)級 KC02 模塊。
LPC2292 是 NXP 公司基于 ARM7TDMI-S 的一款高性能工業(yè)級微處理器。其處理器內核為 32 位 RISC 體系結構,具有高密度的 16 位指令集及極低的功耗。
KC02 藍牙模塊是可進行數據交換和語音通信的藍牙通信模塊。其體積小,外形尺寸長為 17.8mm,寬為 15.2mm;工作電壓為 3.3V,擁有 UART、SPI 和 USB 串行接口,在本設計中使用處理器的 UART 與藍牙模塊相連。
2.2 手持操作器
手持操作器的功能為搜索從藍牙,并在主從藍牙建立鏈接之后,操作閥門電動裝置,并同步顯示閥門電動裝置屏幕內容。其系統(tǒng)結構以 8 位 AVR 單片機 ATmega128L 為核心,包括按鍵、液晶顯示屏、主藍牙模塊和電源處理 4 個部分。KC02 主藍牙模塊通過串口與單片機相連。手持操作器使用電池,通過電源轉換芯片 AMSI1117 穩(wěn)壓后給整個嵌入式系統(tǒng)供電。
2.3 手持操作器軟件流程
手持操作器復位后首先進行各底層硬件的初始化操作,然后根據接收到的按鍵命令進行相應的操作。
在硬件設計中,將單片機的 PD4 與藍牙模塊的鏈接狀態(tài)端口相連,PD7 口與藍牙模塊的 RESET 引腳相連 。
3 藍牙節(jié)點鏈接過程
處于工業(yè)現場的閥門電動裝置通常為一個陣列,此時正確完成藍牙節(jié)點的查詢以及鏈接是建立手持操作器與閥門電動裝置通信的關鍵。該過程由手持操作器 MCU 通過適配協(xié)議操作主藍牙模塊完成。
由于在工業(yè)現場可能有多臺閥門同時具有藍牙無線通信功能,手持操作器與閥門電動裝置的鏈接分為物理鏈接和邏輯鏈接。其中邏輯鏈接為物理鏈接的一個子集,只有在手持操作器與閥門電動裝置之間建立了物理鏈接,并且手持操作器接收到了確認鏈接的指令后邏輯鏈接才建立。此時手持操作器進入操作閥門電動裝置并同步顯示的狀態(tài)。閥門電動裝置只能被動地接收手持操作器的搜索和鏈接,其上層程序在處理鏈接狀態(tài)時給出提示用于操作者判斷藍牙網絡的鏈接狀態(tài)。
4 系統(tǒng)功能
數據交換功能:手持操作器采用查詢應答的方式采集閥門電動裝置的實時狀態(tài)。每隔 100ms,手持操作器就會發(fā)出 1 次查詢指令,閥門電動裝置將當前狀態(tài)打包為 1 幀 6 字符的數據上傳給手持操作器。由于所傳輸的數據不會包含 0xff 和 0xfe,可以將其作為 1 幀數據的起始和結束標志。
手持操作器通過同樣的數據格式去除掉起始標志和結束標志解析出一幀數據,并同步顯示閥門電動裝置狀態(tài)。在手持操作器和閥門電動裝置進入閥門參數的同步設置狀態(tài)時,數據幀長度不固定,按照書前顯示頁面所需的信息進行數據交換。鏈接斷開提示:當由于外界于擾或距離增加導致手持操作器和閥門電動裝置之間鏈接斷開時,手持操作器給出鏈接斷開提示,閥門電動裝置則跳出藍牙無線操作狀態(tài),恢復到本地操作模式。
結語
針對將藍牙無線技術引入閥門電動裝置中的實際工程需求,本文分析了其可行性,并且實現了實際軟硬件系統(tǒng),對工業(yè)現場的無線技術應用有一定參考價值。