李翔宇,馬夕然,葉奕風
(1. 天津工業大學 計算機科學與軟件學院,天津 300387;2. 天津工業大學 電子信息與工程學院,天津 300387;3. 天津工業大學 機械學院,天津 300387)
近幾年來,隨著物聯網的不斷發展,多種新興科學技術也開始得到了應用。在物聯網領域中,由于藍牙技術的不斷成熟,使其得到更多的應用擁有更重要的作用。本部分主要介紹基于單片機的家長端與孩子端藍牙互聯。本文基本用STC89C52RC這種型號的單片機作為主要控制端,在大概規定距離內,因藍牙模塊的無線互聯使得設備的小燈閃耀,當距離過遠,通過蜂鳴器報警,兩個單片機通過內部程序實現實時連接和斷開,從而完成家長端和孩子端的互聯。
首先,距離大約20米內,HC-05主從機一體藍牙模塊互聯,信號通過無線傳送到另一HC-05藍牙上,經該單片機處理后紅色LED燈閃爍。超過大約20米距離,HC-05主從機一體藍牙模塊信號中斷,再經該單片機處理,實現兩蜂鳴器報警,同時紅色LED燈常亮。
當藍牙模塊距離較近,互相接收到藍牙信號時,燈會一直閃爍,此時蜂鳴器不會報警。反而距離過遠,使得信號中斷,會引起兩端的蜂鳴器同時進行報警。為了取消報警,縮短兩設備的距離,這時候自動恢復紅燈閃爍且不報警的狀態。

圖2 系統組成框圖Fig.2 System block diagram
當佩戴好設備的同時,可以自動檢測到藍牙的連接情況,給出相應的提示,因此可明顯看到互連情況。這樣在便捷的情況下,使得設備提示達到最佳效果。下圖為設備工作流程圖。

圖3 工作流程圖Fig.3 work flow chart
硬件電路有最主要的單片機最小系統;外圍電路有 HC05藍牙模塊,蜂鳴器模塊以及電源。其中蜂鳴器和LED燈,分別起到報警和提示作用。如圖為總體電路圖。
主要包括STC89C52RC芯片、復位模塊和晶振模塊。最小系統電路原理圖如圖5所示。
STC89C52RC是STC的低功耗,高性能CMOS 8位微控制器,具有 8K字節的系統可編程閃存。STC89C52在采用 MCS-51內核的同時做出了很多方面的改進,使得芯片具有傳統的51微控制器不具備的功能。在單芯片上,采用智能8位CPU和可編程閃存系統,使STC89C52可為許多嵌入式控制應用提供高度靈活,超高效的解決方案。指令代碼完全兼容于傳統的8051微控制器,可以任選12個時鐘/機器周期和6個時鐘/機器周期。

圖4 總體電路圖Fig.4 Overall circuit diagram
該控制器主要特點如下,第一,采用增強型8051單片機;第二,可在6個時鐘/機器周期和12個時鐘/機器兩個周期中任意選擇,且指令代碼和傳統8051相同;第三,工作電壓為5.5V~3.3 V(5 V微控制器)/3.8 V~2.0 V(3 V微控制器);第四,工作頻率范圍為 0~40 MHz,相當于普通 8051 0~80MHz的一半,且實際工作頻率高達48MHz。用戶應用程序空間為8 K字節,片內集成512字節RAM。通用端口為I/O端口,復位后為P1/P2/P3/P4準雙向拉出,端口0為漏極開路輸出,作為總線擴展,因為 I/O口需要上拉電阻,所以此處無需上拉電阻。ISP(在系統可編程)/IAP(在應用程序可編程)中,無需專業編程器和專用仿真器,通過串口(RxD/P3.0,TxD/P3.1)可直接下載用戶程序。具有看門狗功能的功能。也就是說,定時器T0,T1,T2。此外,下拉模式可通過外部中斷觸發低電平中斷模式。工作溫度范圍為-40~+85℃(工業級)/0~75℃(商業級)。

圖5 單片機最小系統電路Fig.5 Minimum system circuit of single chip microcomputer
系統的可靠性在一定程度上靠微控制器的復位電路來保證。復位的基本功能是在系統上實時提供復位信號,直到整個系統穩定時,信號允許被撤銷。51單片機采用地是高電平復位,復位電平必須大于復位有效時兩個機器周期的持續時間,其具體值可以通過 RC電路時間常數計算。復位模式使用手動復位:如果在運行期間按下按鈕,電容器將放電,VCC通過復位引腳達到高電平狀態,然后通過電阻器對電容器進行反向充電,保持一段時間的達到高電平的單片機復位,此段時間過后,復位引腳變為0 V,微控制器進入正常工作狀態。
51微控制器包含反相放大器的高增益,并且外部XTAL1和XTAL2引腳跨越石英晶體和兩個微調電容器,構成穩定的自激振蕩器。其中,兩個電容器不僅可以穩定頻率,還可以調節頻率的作用,通常在5~30 pF的范圍內。要的,其作用是為系統提供基本的時鐘信號。一般來說,為了保持系統的每個部分的同步將共享一個晶體,并且在晶體的有序執行的所有順序基于建立在晶體時鐘頻率中提供。微控制器的速度取決于時鐘頻率的速度(見圖2)
該模塊所使用的單片機的輸入引腳與模塊的串行數據輸入端連接,輸出引腳與對應輸出端連接。這樣達到了程序數據的傳輸,使得藍牙信號可以根據程序設定進行互連或中斷。與此同時,藍牙模塊的其他兩個引腳state和en設置為懸空。

圖6 藍牙電路圖Fig.6 Bluetooth circuit diagram
為了實現設備最小化,可以對原有基礎上的主控端進行了改進,為節省空間使用更小芯片。圖 7為STC89C52RC-LQFP44芯片原理圖。

圖7 單片機芯片原理圖Fig.7 The principle diagram of single chip
由于更改上一款的直插式芯片,將該芯片變成貼片式,從而可以實現模塊縮小,同時也便于操作和提高效率。
下載程序之前,在電腦上安裝 USB轉串口CH340驅動,然后安裝對應單片機的燒錄工具,本次安裝的程序下載軟件是 stc-isp-15xx-v6.85H自動下載,可以通過此軟件將寫好的程序下載到STC89C52RC芯片中。
軟件設計的主要內容是:判斷藍牙是否接收到數據,接收到信號控制LED燈閃爍,距離過遠接收不到信號,蜂鳴器響LED燈常亮。首先對串口進行初始化,定時器初始化,串口發送字符串,接著等待中斷,當產生中斷時進入串口中斷服務程序,然后對蜂鳴器和LED進行控制。
在這一階段,要首先完成微控制器的初始化,該階段包括每個端口的定義、功能聲明、變量定義和宏定義,然后要進行單片機的串口初始化,包括定時器工作模式選擇、串口工作模式選擇、波特率設置、開放串行中斷等。當系統產生中斷時,進入串行中斷服務程序,中斷程序包含例如控制功能等諸多功能。最后在各種功能的實現的基礎上控制LED燈顯示和蜂鳴器。
系統主程序工作流程如圖8所示。

圖8 主程序流程圖Fig.8 Main program flow chart
通過對模塊的多次重復實驗可知,手環發出警報距離主要分布在20米-30米左右,結束警報距離主要分布在10米-20米左右,結束警報距離遠小于發出警報距離,使孩子只有在離家長更近的位置,即基本能觀測到孩子的地方時,才結束蜂鳴,符合家長心理預期。
本文對配合商場互聯網報警系統進行工作的家長端和孩子端手環的藍牙部分進行了從總體方案到硬件、軟件等幾方面的設計。除此之外,也對該模塊的各種測試結果進行了簡單說明。從最后的各項測試結果上顯示,該手環藍牙模塊的設計從總體上基本達到了預期設計要求。

圖9 警報距離統計圖Fig.9 Alarm distance statistics chart
實驗的30個數據如下:如今的藍牙技術尚且處于發展階段,各項技術水平還有相當大的改善空間。該智能手環藍牙模塊的設計僅是在當前所有的特定條件下。相信在未來隨著藍牙技術的提升,本部分的開發環境也將會得到顯著改善,而在大幅優化開發環境后的成果也終將可以更好地實現本設計的初衷。

表1 警報具體統計表Tab.1 Alarm distance statistics table 單位:米
[1] 譚振興. 基于BLE技術的智能防丟器設計與實現[D]. 山東:山東大學信息科學與工程學院, 2015.
[2] 李立鵬, 田園, 董志祥, 周楠, 吳林麗. 基于MCU的物流狀態監測裝置的研究與設計[J]. 天津科技, 2017(2): 62-63.
[3] 鄒春宇, 張仁永, 陳敬穆. 基于STM32L152V8的預警手環設計[J]. 電子世界, 2017(9): 82-83.
[4] 楊婷, 黃韜, 謝亮. 基于STM32微控制器的智能手環的設計[J]. 科技廣場, 2016(8): 190-192.
[5] 張群, 楊絮, 張正言, 陸起涌. 藍牙模塊串口通信的設計與實現[J]. 實驗室研究與探索, 2012, 31(03): 79-82.
[6] 楊悅, 劉超, 陳永泰. 藍牙技術及其原理[J]. 電信快報,2002(02): 17-20.
[7] 黎卓芳. 藍牙技術在物聯網中的應用研究[J]. 現代電信科技, 2012, 42(12): 61-66.
[8] 盧少軍. 基于可穿戴設備和物聯網技術的獨居老人監護系統的設計與實現[D]. 華中師范大學, 2016.
[9] 焦凱. 基于藍牙技術的無線局域網系統的研究與實現[D].南京理工大學, 2005.
[10] 蕭暐, 楊濤. 藍牙核心技術[J]. 電信科學, 2001(01):18-22.