鐘輝宏 何虎 羅堯 何松濤 汪瑩瑩 成都理工大學(xué)
引言:如今隨著生活水平的不斷提高,智能手機(jī)被越來(lái)越多的人使用,幾乎成為了生活必需品,大大改變了人們的生活方式,智能家居技術(shù)也由此而生。人們對(duì)生活用品操作的方便性要求越來(lái)越高,普通的照明技術(shù)已經(jīng)不能滿足廣大消費(fèi)者的需求,因此越來(lái)越關(guān)注智能家居的研究。智能臺(tái)燈是以傳統(tǒng)臺(tái)燈技術(shù)為背景,實(shí)現(xiàn)智能手機(jī)客戶端控制的效果。
本設(shè)計(jì)以STM32單片機(jī)作為控制系統(tǒng)的核心,ESP8266 WIFI模塊作為Android客戶端和單片機(jī)的通信媒介,與STM32進(jìn)行串口通信。Android客戶端用來(lái)實(shí)現(xiàn)用戶需求的界面功能,根據(jù)用戶選擇的功能發(fā)送指令,WIFI用于數(shù)據(jù)傳輸模塊,LED控制端接收指令用于實(shí)現(xiàn)對(duì) LED 燈的基本操作,如開(kāi)燈、關(guān)燈、調(diào)光。圖1.1為基于Android的智能臺(tái)燈系統(tǒng)框圖。
本設(shè)計(jì)采用STM32芯片作為主控芯片,3W LED燈驅(qū)動(dòng)電路來(lái)驅(qū)動(dòng)LED燈,電源電路主要用來(lái)提供12V電壓,7805穩(wěn)壓塊提供5V電壓為單片機(jī)供電,ESP8266-01模塊作為Android客戶端與單片機(jī)響應(yīng)的橋梁。
軟件主要部分包括兩個(gè)終端:?jiǎn)纹瑱C(jī)程序和Android程序。單片機(jī)主程序主要有對(duì)串口及WIFI模塊的初始化,等待外部中斷并且判斷接收的數(shù)據(jù),從而進(jìn)行相應(yīng)操作。把接收的數(shù)據(jù)存儲(chǔ)到單片機(jī)緩存中,單片機(jī)到緩存中讀取,完成這些操作就可實(shí)現(xiàn)控制LED燈。字符判斷的思路是先讀取緩沖器的第一個(gè)字符“:”,提醒單片機(jī)有命令要發(fā)過(guò)來(lái)。單片機(jī)讀取第二字符命令“C”,提示單片機(jī)要數(shù)據(jù)要發(fā)過(guò)來(lái),若接收到的數(shù)據(jù)符合設(shè)置判斷的命令,則單片機(jī)控制LED燈進(jìn)行相關(guān)操作??偝绦蛄鞒虉D如圖1所示。
圖1 總程序流程圖
Android App是在eclipse環(huán)境下開(kāi)發(fā)的,編寫(xiě)Android程序的思路是將每一個(gè)控件都定義不同的字符,當(dāng)控件發(fā)生響應(yīng)時(shí)將其傳送給WIFI模塊,最后由STM32根據(jù)字符來(lái)進(jìn)行判斷作出響應(yīng)。利用串口助手,可看到每個(gè)控件定義的字符成功發(fā)送,說(shuō)明APP正常使用。打開(kāi)控制端APP,利用Socket通信發(fā)送給WIFI模塊,WIFI模塊接收APP傳遞的數(shù)據(jù),分析并向端口發(fā)送指令來(lái)改變其PWM,對(duì)LED燈實(shí)現(xiàn)調(diào)光效果。
本設(shè)計(jì)使用Android APP 與LED驅(qū)動(dòng)電路無(wú)線控制,因此WIFI模塊作為其中間橋梁。首先應(yīng)將CH_PD引腳與VCC引腳相連接,CH_PD是用來(lái)選擇AT指令模式的引腳,只有提前接入高電平,才可以響應(yīng)其AT指令。STM32芯片發(fā)送AT指令對(duì)WIFI模塊進(jìn)行初始化,配置其WIFI賬號(hào)、密碼、波特率等,為APP與單片機(jī)通信做好準(zhǔn)備。
基于Android的智能臺(tái)燈在在未來(lái)生活領(lǐng)域應(yīng)用是很廣泛的。在智能手機(jī)進(jìn)入家家戶戶的今天,正在改變著人們傳統(tǒng)的生活方式,朝向智能化、便利化的方向發(fā)展。本設(shè)計(jì)的APP適用性強(qiáng),可以移植到任何帶有安卓系統(tǒng)的設(shè)備上,只要連接上WIFI,就可以對(duì)LED燈進(jìn)行控制。在隨著人們對(duì)于傳統(tǒng)生活方式的要求越來(lái)越高,未來(lái)智能家居技術(shù)也會(huì)越發(fā)成熟,其應(yīng)用也會(huì)越來(lái)越廣泛。