黃 營,胡浩特,魏 凱,徐 建
(湖北民族大學 信息工程學院,湖北 恩施 445000)
在鄉村振興戰略背景下,農村開展了“廁所革命”,該項工程是民生中的重大工程之一,對進一步改善農村生活群眾的生活質量和居住環境具有重要作用。同樣,在鄉村振興背景下,讓農村的生產生活更加自動化、智能化也是工作重點之一。農村傳統的大門門鎖關鎖比較煩瑣,農村門鎖大多采用掛鎖和老式防盜鎖居多,多使用金屬鑰匙手動進行開啟,鑰匙個體較小容易遺失、手動開啟或關閉比較費力,掛鎖對大門進行關鎖步驟比較煩瑣等問題普遍存在。另外,農村大門沒有統一規格,大部分都是根據需要的尺寸和外觀進行定制的,每個大門的焊接方式多少都會有差異,因此,鎖具的外形構造必須具有普適性和通用性。現在市面上各種智能門鎖種類繁多,功能強大,但大部分都是基于城市樓房進行設計制造的,價格偏高,與農村現狀不適應,文章基于上面情況對農村大門門鎖進行智能化改造。
本設計主控制單片機為STC89C52RC,通過手機App進行操作,通過無線互聯網傳輸到路由器再通過ESP8266將控制信號傳到單片機。指紋模塊在有輸入指紋信息時,對輸入信息和原始指紋信息進行對比,將對比信息傳輸到單片機。單片機收到信號后處理后控制SG90舵機,驅動舵機模塊實現智能開鎖和智能關鎖功能。系統框如圖1所示。

圖1 系統框
本設計使用性價比較優越的STC89C52RC芯片作為控制器[1]。模塊化設計的STC89C52RC是宏晶科技設計研發的,具有接口簡單、運行速度快、能耗低、抗外界干擾能力強、運行電壓低、數字信號處理等特點,運用其開發比較簡單容易,成為中小項目的首選微處理器。
ESP8266無線傳輸模塊是一款傳輸效率高、傳輸信號穩定的低功耗的Wifi芯片,集成度高、體積小、對工作環境適應能力強,特別是溫度范圍較廣(-40℃~125℃)。工作模式分為3種,分別為STA模式、AP模式和STA+AP模式,STA模式:ESP8266模塊需要和路由器互聯,而后路由器和互聯網相連接從而實現信號互通。AP模式:ESP8266相當于熱點,客戶端(手機、電腦)可以連接到“熱點”,從而實現信號互通。STA+AP模式:是兩種模式相互結合,共存模式[2]。本設計使用STA模式,進行產品制作。
本設計使用的指紋識別模塊為MR608電容式指紋模塊,該模塊是集成半導體傳感器和指紋算法芯片一體化的指紋處理模塊。這類指紋模塊反應能力強,對使用者的環境沒有特定的要求,耗能低、體積小、接口簡單、指紋搜索速度快[3]。指紋圖像讀取時,對干濕指紋解鎖比較穩定,可獲得最佳的成像質量,適用人群廣泛。電容式指紋識別性能要優于光學,不論是解鎖速度還是安全性。
SG90舵機模塊作為本設計的驅動,驅動“鎖閂”動作,完成門鎖的打開和關閉動作。SG90舵機體積小,功耗低,價格經濟實惠,且穩定性比較好,性價比超高。通過PWM控制方式控制其轉動角度,占空比大于12.5%,是有機械限位的轉動范圍,轉動角度為0~180度,非常適宜本設計的設計需求。
電源模塊使用的是18 650充電鋰電池,18 650鋰離子電池重量輕,重量為38~47 g。體積小,直徑18 mm,長65 mm。容量大,常規容量為2 200~3 200 mAh。沒有記憶效應,在充電前不必將剩余電量放空,使用方便。18 650電池使用壽命比較長,理論為循環充電1 000次,安全性比較高,不爆炸,不燃燒,無毒,無污染。本設計的應用環境是在室外,環境較惡劣,所以選擇器件時要充分考慮其安全性。
6 W5 V鋼化玻璃太陽能板,晴天正午陽光下電流可達1 A左右[4]。可自動升壓降壓穩壓器使用18 650鋰電池進行充電,保證為該系統提供一個穩定的電源。太陽能充電系統如圖2所示。

圖2 太陽能充電系統
本設計主要包含了5個模塊,包括指紋模塊、ESP8266模塊、SG90舵機驅動模塊、電源模塊等。由手機App發送指令經過路由器,傳輸給ESP8266,然后由ESP8266傳輸給STC89C52RC后控制開鎖。指紋模塊則是通過信號線把信息傳輸給STC89C52RC后控制開鎖。硬件系統如圖 3 所示。

圖3 硬件系統
采用ESP8266模塊實現無線發送數據以及無線接收數據的功能。
3.1.1 發送端
系統將手機App產生的信號數據,由互聯網經過路由器,再經過ESP8266傳送到STC89C52RC單片機收集進行處理。手機App發射端程序框如圖4所示。

圖4 手機App發射端程序
指紋采集系統,將采集到指紋信息經由信號線,把指紋信號數據傳輸到STC89C52RC單片機收集進行處理。指紋模塊發射端程序框如圖5所示。

圖5 指紋模塊發射端程序
3.1.2 接收端
系統接收端采用信號線傳輸,SG90舵機接收到STC89C52RC端口的電位信號,舵機旋轉驅動齒輪,齒輪驅動鎖閂進行開鎖或關鎖,接收端程序框如圖6所示。

圖6 接收端程序
設計中,SG舵機的控制程序用定時器中斷產生PWM信號[5],用查詢方式對“開鎖”和“關鎖”兩種狀態進行定時的查詢,進而改變信號的脈寬,對舵機的轉動進行控制。
sbit SG_PWM=P2^0; //信號控制引腳
unsigned char count=0; //計次 賦初值為0
unsigned char PWM_count=0; //0--0度,2--180度
void main()
{
Timer0_Init();
while(1)
{
PWM_count=1; //舵機轉動0度
Delay(1000);
PWM_count=2; //舵機轉動180度
Delay(1000);
}
}
void Timer0() interrupt 1
{
TL0 = 0x33;
TH0 = 0xFE; //重新賦計數初值為0.5ms
count++; //計次,每500us count+1
count%=40; //周期為20ms
if(count { SG_PWM=1; } else { SG_PWM=0; } } 編程軟件采用KEIL5,首先是硬件進行初始化配置,串口初始化等。然后是指紋錄入,如果有指紋錄入信息,系統會將錄入指紋信息與存儲的解鎖指紋進行對比驗證,驗證成功,系統通過PWM控制SG90舵機運動,驅動鎖閂完成開鎖。驗證失敗,重新進行指紋錄入,指紋錄入超過3次,系統自動進入到手機App解鎖模式。如果沒有指紋錄入,進入手機App,點擊“開鎖”鍵。完成開鎖主程序流程如圖 7 所示。 圖7 主程序流程 本設計是基于STC89C52RC單片機的智能門鎖控制系統,整體上實現了農村大門門鎖的智能化控制,改變了傳統的鑰匙開鎖的方式。本設計采用綠色能源太陽能進行充電,使其更加節省電力能源。壽命長,符合節能、環保的設計要求,成本較低,具有較強的使用價值。3.3 系統主程序設計

4 結語