藍牙無線手操器的設計與開發(fā)
1.引言
工業(yè)現(xiàn)場設備的工作環(huán)境復雜多變,有些地方工作人員甚至難以接近,特別是一些工業(yè)環(huán)境禁止使用電纜(如超凈或真空封閉的房間)或者很難使用電纜來傳送數(shù)據(jù)(如高速旋轉的設備、高空設備、不適于布線的強腐蝕惡劣環(huán)境),這時采用藍牙等無線通信技術來對現(xiàn)場設備進行數(shù)據(jù)采集與參數(shù)設置能有效解決上述問題。為此本文設計了基于藍牙無線通信協(xié)議的手操器,該手操器具有體積小、操作方便、性能完善和組網(wǎng)靈活等特點,目前已獲得實用新型專利,并有效應用于工業(yè)現(xiàn)場的數(shù)據(jù)采集和控制系統(tǒng)中。
2 總體設計
2.1 功能分析
2.2 系統(tǒng)設計
圖1 數(shù)據(jù)采集系統(tǒng)拓撲結構圖
本文設計藍牙手操器現(xiàn)應用于圖1所示的無線監(jiān)控系統(tǒng)中。整個系統(tǒng)分為兩部分:藍牙無線手操器作為主設備,而其他的四個現(xiàn)場設備作為從設備。從設備負責信號轉換、數(shù)據(jù)采集和數(shù)據(jù)傳輸。信號轉換,這一部分電路的作用是把相應的物理信號量轉換為電壓信號,然后對其進行放大和濾波處理,處理的結果作為數(shù)據(jù)采集電路的輸入信號;數(shù)據(jù)采集,把信號轉換電路輸出的模擬信號轉換為數(shù)字信號(數(shù)字序列),然后把數(shù)字信號輸出給CPU,以便進行相應的處理;數(shù)據(jù)傳輸,在控制系統(tǒng)中,智能傳感器采集并整理好的數(shù)據(jù),需要傳輸給系統(tǒng)的監(jiān)控系統(tǒng),在本系統(tǒng)中所有的藍牙協(xié)議都固化在芯片中,芯片通過UART接口與應用系統(tǒng)相連接。由于片內嵌入了CPU,所以,嵌入式藍牙系統(tǒng)實際上是一個智能終端,適合于任何具有CPU器件的系統(tǒng)。本系統(tǒng)中的智能傳感器和藍牙無線手操器都是通過增加一個單芯片藍牙器件,以組成一個以藍牙為通信方式的設備。
藍牙手操器作為便攜式監(jiān)控設備通信是系統(tǒng)的一個主要功能,除此之外還需要實現(xiàn)系統(tǒng)的其他功能如菜單顯示、鍵盤輸入以及數(shù)據(jù)處理等功能。由于CPU串行結構的特點,當系統(tǒng)需要同時啟用通信功能和其它重要功能時(如實施數(shù)據(jù)處理等操作), 就需要使用適當?shù)姆椒ㄟM行協(xié)調。在本設計中采用了UC/OS-II操作系統(tǒng),通過該系統(tǒng)來建立多個任務進程,各個任務之間的切換通過操作系統(tǒng)的調度功能來完成。其次,對于現(xiàn)場的智能傳感器來說,傳輸數(shù)據(jù)量一般不是很大(如壓力、溫度等傳感器),因此藍牙手操器并不需要很大的存儲容量,但必須考慮用于設備維護和數(shù)據(jù)處理的存儲空間,所以本文設計了兩套數(shù)據(jù)存儲系統(tǒng),一種是針對動態(tài)數(shù)據(jù)(如發(fā)送和接收的數(shù)據(jù))使用片內RAM,另一種則針對工程人員需要掉電保存的重要資料,該部分由非易失性數(shù)據(jù)存儲空間來實現(xiàn)。再者,由于藍牙手操器作為主設備其藍牙模塊的配置與現(xiàn)場設備不同,手操器的藍牙模塊必須設置成主動鏈接單元,并能在其覆蓋范圍內自動搜尋其他帶有藍牙模塊的現(xiàn)場設備,若有,則通過了鑒權和認證后建立鏈接,實現(xiàn)藍牙現(xiàn)場設備之間的數(shù)據(jù)通信。最后,為了使現(xiàn)場操作人員能觀察系統(tǒng)的運行情況,采用一塊小型液晶屏以顯示各模塊的工作狀態(tài),并可通過鍵盤輸入控制命令。
以下將從軟件硬件兩方面具體闡述實現(xiàn)方案。
3 藍牙無線手操器的開發(fā)
3.1 硬件設計
.3.1.1 微處理器C8051F020
.C8051F020 系列單片機是Cygnal 公司新推出的一種混合信號系統(tǒng)級單片機。其含有64kB 片內Flash 程序存儲器,4352B 的RAM、8 個I/O 端口共64 根I/O 口線、5 個16 位通用定時器、看門狗定時器等部分。與以前的51 系列單片機相比,C8051F020增添了許多功能,同時其可靠性和速度也有了很大提高。本系統(tǒng)中,F(xiàn)lash、RAM 及顯示屏共用數(shù)據(jù)總線,地址總線Flash 和RAM 分別共用。各個芯片的片選信號用P0 口的高位接口。
.3.1.2 藍牙模塊
.藍牙通信模塊型號為BCM04, 通信距離是10 米。藍牙模塊本身帶有微處理器及EEPROM、ROM 和RAM, 整個模塊有四個接口分別是AUD、SPI、URAT、PIO口和天線接口。本文采用藍牙模塊進行通信時,其工作電壓為3.3V, 藍牙的通信方式為異步串行通信(URAT), 可與處理器的串口直接連接,對應的處理器管腳為P00 和P01, 通用串口(UART)波特率設置成38400b ps。
.3.1.3 顯示屏
.設計中采用的顯示屏是由北京蓬遠公司生產(chǎn)的液晶屏顯示屏PDA32024 0A。PDA320240A 液晶顯示屏是一種精度高的點陣顯示器,具有體積小、重量輕和顯示靈活等優(yōu)點。它具有兩種顯示方式:文本顯示和圖形顯示。為了向用戶提供更為簡單的操作界面,許多顯示屏的輔助功能塊都已經(jīng)集成化,對于PDA320240A 只需要對18 根信號線進行操作,就可以完成相應得顯示功能。
.3.1.4 鍵盤模塊
.鍵盤采用4* 6矩陣式鍵盤,其接口引腳與處理器的P2 和P3 口相連。鍵盤共設有22 個按鍵,10 個數(shù)字鍵0~9、4 個方向鍵及確定、刪除等8 個其他按鍵,通常,矩陣鍵盤在判斷有無按鍵動作時,有中斷和查詢兩種方式,本文采用查詢方式實現(xiàn)。如有按鍵動作則進行行列掃描后計算鍵值,并通過鍵值映射表查找出對應的功能處理函數(shù)進行處理。
3.2 軟件設計 軟件結構框圖如圖3 所示,軟件部分主要分為三部分:操作系統(tǒng),通信,菜單顯示。
藍牙手操器的硬件結構框圖如圖2 所示,包括微控制器C8051F020、藍牙通信模塊、液晶屏顯示模塊、鍵盤。電源選用電池供電,該電源經(jīng)過電平轉換,為微處理器、存儲器、
藍牙通信模塊等提供所需的+3.3V 和+1.8V 電源。下面將對各個模塊分別介紹。
除底層硬件的驅動程序外,整個軟件程序建立在UC/OS 操作系統(tǒng)上,該操作系統(tǒng)具有足夠的穩(wěn)定性和安全性。根據(jù)系統(tǒng)功能要求建立了六個用戶任務,即串口任務,藍牙接收和發(fā)送任務,菜單顯示任務,鍵盤任務。每個任務由三個組成部分構成:任務程序代碼、任務堆棧和任務控制塊。其中,任務控制塊用來保存任務屬性;任務堆棧用來保存任務工作環(huán)境;任務程序代碼是任務的執(zhí)行部分。在建立任務的時候需要為任務堆棧分配堆??臻g和任務優(yōu)先級。各個任務之間的數(shù)據(jù)傳遞采用消息郵箱和消息隊列實現(xiàn)。
通信部分涉及到單片機串口和藍牙模塊之間的通信。手操器啟動后,需要向藍牙模塊發(fā)送HCI(主機控制器接口)指令以便初始化藍牙模塊,這些指令包括藍牙通信接口波特率設置、數(shù)據(jù)接收準備、設備查詢、藍牙鏈路連接等指令。處理器對藍牙的操作和控制主要是通過串口通信方式來完成。當確定藍牙信息接收完畢后,解出有效數(shù)據(jù)存放在已經(jīng)開辟好的循環(huán)緩沖區(qū)內。這些數(shù)據(jù)分為數(shù)據(jù)信息和事件信息。數(shù)據(jù)信息,則存放在相應設備的消息隊列中以便顯示菜單調用。事件信息,清除該信息不作處理。
在顯示界面中設置了兩級菜單,手操器啟動后,會自動搜索周圍的其他藍牙設備并獲得對方藍牙地址從而建立鏈接,此后需要在手操器中建立一個臨節(jié)點列表,并通過主菜單顯示周圍存在的藍牙設備。在主菜單中工程人員可以根據(jù)具體需要選擇被監(jiān)控設備,而子菜單中則設置了讀寫設備參數(shù)選項,每個設備對應的參數(shù)不同,所以需要對不同的設備參數(shù)設置不同的控制命令。
4 藍牙手操器應用實例
圖4 藍牙手操器應用實例圖
如圖4 所示,以藍牙閥門定位器作說明示例。藍牙閥門定位器由我校與四聯(lián)集團共同研發(fā)(采用總線供電),在閥門定位器中的藍牙通信卡設置為被動鏈接模式,設備啟動后閥門定位器會周期性的采集閥位值并存儲在該設備的緩沖區(qū)內,當藍牙手操器搜索到閥門定位器后向閥門定位器發(fā)送鏈接指令,建立鏈接后,藍牙手操器將獲得一個鏈接句柄。此后進入如圖5 所示的監(jiān)控界面,可以執(zhí)行讀閥位值、閥位上限、以及寫上限三項功能。每項功能在執(zhí)行時,都由手操器發(fā)送一條控制指令,該指令由串口發(fā)給藍牙模塊,其中包括藍牙鏈接句柄、功能代碼(0x01-0x03 分別針對以上的三項功能)以及CRC 校驗域。閥門定位器收到控制指令后先判斷鏈接句柄,判斷是否接收該指令,其后根據(jù)功能代碼分別執(zhí)行對應的任務。圖4 中為通過藍牙手操器讀取的閥門定位器的閥位值。此外,該手操器還可對藍牙電磁流量計,藍牙溫度變送器等設備進行操作。
5 結論
經(jīng)過現(xiàn)場測試表明,本文設計的藍牙手操器系統(tǒng)穩(wěn)定、使用方便、實用性強,有一定的抗干擾能力,可根據(jù)需要進行軟件升級,能有效地與工業(yè)現(xiàn)場設備進行無線互聯(lián),實現(xiàn)對工業(yè)現(xiàn)場數(shù)據(jù)采集和處理功能,為工程人員監(jiān)控現(xiàn)場設備提供了一種新方法。本文作者創(chuàng)新點: 本文介紹了基于藍牙通信協(xié)議的手操器在工業(yè)現(xiàn)場的設計與應用。該藍牙手操器使用新華龍C8051F020 芯片和BCM04 藍牙模塊為主要功能結構模塊,與現(xiàn)場藍牙設備建立一對一或一對多的通信系統(tǒng),并可通過該手操器采集和處理現(xiàn)場數(shù)據(jù)以及校正現(xiàn)場設備的功能參數(shù)。