陳世海 王軍 代偉 靳文斌
摘要:將Android融入電子信息專(zhuān)業(yè)綜合實(shí)驗(yàn),不僅可以提高學(xué)生的學(xué)習(xí)興趣,而且有利于培養(yǎng)學(xué)生的創(chuàng)新能力,為其從事相關(guān)研發(fā)工作奠定基礎(chǔ)。
關(guān)鍵詞:專(zhuān)業(yè)綜合實(shí)驗(yàn);Android;甲醛檢測(cè)
中圖分類(lèi)號(hào):G642.423 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1674-9324(2018)49-0267-02
電子信息專(zhuān)業(yè)綜合實(shí)驗(yàn)[1]是面向電子信息專(zhuān)業(yè)高年級(jí)學(xué)生開(kāi)設(shè)的綜合性實(shí)踐課程,要求學(xué)生能夠綜合運(yùn)用所學(xué)專(zhuān)業(yè)知識(shí)進(jìn)行電子信息類(lèi)產(chǎn)品的設(shè)計(jì)開(kāi)發(fā)實(shí)踐。該課程對(duì)于培養(yǎng)學(xué)生綜合運(yùn)用專(zhuān)業(yè)知識(shí)的能力,提高其創(chuàng)新意識(shí)具有重要的作用。隨著Android[2]智能手機(jī)的飛速發(fā)展,Android智能平臺(tái)已經(jīng)進(jìn)入普及階段,開(kāi)發(fā)基于Android的綜合實(shí)驗(yàn)案例,不僅能夠提高學(xué)生的學(xué)習(xí)興趣、培養(yǎng)起創(chuàng)新實(shí)踐能力,同時(shí)為學(xué)生以后從事相關(guān)研發(fā)工作打下基礎(chǔ)。實(shí)驗(yàn)案例以Android智能平臺(tái)和STC89C52為軟硬件核心,采用MS1100甲醛傳感器,實(shí)現(xiàn)基于Android智能平臺(tái)的無(wú)線甲醛檢測(cè)系統(tǒng)。
一、系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)硬件框架以STC89C52微處理器為核心控制器,其與MS1100甲醛傳感器電路、HC-05藍(lán)牙、蜂鳴器電路、LCD1602顯示屏、上拉電阻、時(shí)鐘電路、復(fù)位電路等外部設(shè)備連接在一起組成無(wú)線甲醛檢測(cè)系統(tǒng)。MS1100甲醛傳感器、HC-05藍(lán)牙、單片機(jī)等這些功能需要通電才能實(shí)現(xiàn)。在系統(tǒng)設(shè)計(jì)中,由于MS1100甲醛傳感器輸出的信號(hào)是模擬信號(hào),而STC89C52的引腳內(nèi)部沒(méi)有AD轉(zhuǎn)換功能,導(dǎo)致模擬信號(hào)不能直接與單片機(jī)進(jìn)行數(shù)據(jù)傳輸,因此要在兩者之間加上一個(gè)可以轉(zhuǎn)換數(shù)據(jù)模式的AD轉(zhuǎn)換芯片,然后按照各個(gè)模塊引腳的功能以及引腳的連接方式進(jìn)行電路連接。
硬件電路按照數(shù)據(jù)采集電路、蜂鳴器工作電路、串口通信電路的順序進(jìn)行設(shè)計(jì)。數(shù)據(jù)采集電路采用MS1100甲醛傳感器電路和數(shù)模轉(zhuǎn)換芯片ADC0832相連接構(gòu)成數(shù)據(jù)采集電路。其次,設(shè)計(jì)蜂鳴器報(bào)警電路,電路采用蜂鳴器和三極管、電阻組成蜂鳴器電路;LCD1602顯示屏和上拉電阻組成甲醛濃度顯示電路。最后,串口通信電路由HC-05藍(lán)牙與STC89C52相連組成,實(shí)現(xiàn)甲醛濃度通過(guò)藍(lán)牙向手機(jī)端傳輸。
(一)甲醛傳感器
傳感器選取以MS1100為核心的VOC(volatile organic compounds)式傳感器。MS1100是半導(dǎo)體式VOC氣體傳感器,它具有很高的靈敏度,價(jià)格相對(duì)便宜,適合檢測(cè)空氣中的甲醛這種具有揮發(fā)性的有機(jī)化合物。MS1100利用金屬氧化物遇到VOC氣體阻值會(huì)發(fā)生變化這一特性來(lái)檢測(cè)空氣中甲醛的濃度。如圖1所示,該傳感器共有四個(gè)引腳:VCC、GND、AOUT和VCC。其中,VCC和GND分別接的是直流電源5V和GND,AOUT是模擬信號(hào)輸出口。甲醛濃度與輸出電壓的關(guān)系不是簡(jiǎn)單的直線關(guān)系,而是呈現(xiàn)一種log對(duì)數(shù)函數(shù)的關(guān)系,當(dāng)空氣中不含甲醛時(shí),或者說(shuō)甲醛濃度為零時(shí),傳感器的阻值就是無(wú)窮大,電路外接電阻分到的電壓就為零,模擬信號(hào)輸出為零。傳感器電路中,在電源VCC和GND之間加10pf的電容是因?yàn)殡娙菥哂型ń桓糁钡淖饔?,它可以濾掉電路中多余的交流信號(hào),從而使電路中的電壓穩(wěn)定。傳感器AOUT口輸出0-5V的模擬信號(hào),傳感器的模擬信號(hào)接口不能直接與STC89C52微處理器進(jìn)行連接,需要通過(guò)ADC0832將模擬電壓轉(zhuǎn)成數(shù)字量后輸入微處理器。
(二)數(shù)模轉(zhuǎn)換
模數(shù)轉(zhuǎn)換部分采用的是具有8位分辨率的A/D轉(zhuǎn)換芯片ADC0832,其最高分辨可以達(dá)到256級(jí)。DI作為數(shù)據(jù)的輸入端,用以選擇通道功能。設(shè)計(jì)中,采用單通道(CH1)輸入模擬信號(hào)的方式。CS為芯片的選通引腳,當(dāng)芯片通電后CS端通過(guò)單片機(jī)發(fā)送一個(gè)低電平芯片就選通完成,可以開(kāi)始工作。
(三)藍(lán)牙電路
基于藍(lán)牙的無(wú)線通信,通常可以實(shí)現(xiàn)10m范圍內(nèi)的無(wú)線數(shù)據(jù)傳輸,在傳輸中藍(lán)牙有主機(jī)和從機(jī)之分。系統(tǒng)中采用的HC-05藍(lán)牙模塊集主從于一體,既可以作為主動(dòng)搜索其他藍(lán)牙設(shè)備的主機(jī),也可以作為只能被其他設(shè)備搜索的從機(jī)。HC-05既可以接收數(shù)據(jù)也可以發(fā)送數(shù)據(jù),這給系統(tǒng)設(shè)計(jì)帶來(lái)了較大的便利,同時(shí)也降低了實(shí)驗(yàn)中的硬件故障率。
實(shí)驗(yàn)時(shí),首先將藍(lán)牙模塊與USB轉(zhuǎn)串口連接,然后按住藍(lán)牙模塊上的黑色按鈕,并將USB口插入電腦端,如果藍(lán)牙模塊的state燈變?yōu)槁W,則表明藍(lán)牙模塊已經(jīng)進(jìn)入AT模式,打開(kāi)串口調(diào)試助手即可進(jìn)入藍(lán)牙設(shè)置AT模式。功能代碼如表1所示。
如果串口助手返回“OK”就代表藍(lán)牙參數(shù)設(shè)置成功。需要注意的是,設(shè)置指令里的符號(hào)不要在中文狀態(tài)下輸入,否則不會(huì)返回相應(yīng)指令。
二、軟件設(shè)計(jì)
總體軟件設(shè)計(jì)采用模塊式編程,軟件流程如圖2所示。首先是對(duì)設(shè)備進(jìn)行初始化,然后進(jìn)行數(shù)據(jù)采集。數(shù)據(jù)采集軟件主要完成對(duì)MS1100甲醛傳感器輸出的模擬了經(jīng)ADC0832數(shù)模轉(zhuǎn)換芯片轉(zhuǎn)成數(shù)字量后輸送至微處理器;數(shù)據(jù)傳輸部分先將檢測(cè)到的甲醛濃度對(duì)應(yīng)為數(shù)字信號(hào),再通過(guò)藍(lán)牙模塊進(jìn)行傳輸;蜂鳴器報(bào)警程序需要在程序中設(shè)置蜂鳴器的閾值,當(dāng)接收到的甲醛濃度大于閾值時(shí),接蜂鳴器的端口會(huì)置為低電平,蜂鳴器會(huì)報(bào)警。微處理器與藍(lán)牙模塊之間采用串行通信方式,兩者可以互發(fā)信息,實(shí)現(xiàn)數(shù)據(jù)在上位機(jī)的顯示,以及上位機(jī)控制下位機(jī)的蜂鳴器關(guān)閉。
手機(jī)APP通過(guò)調(diào)用手機(jī)本地藍(lán)牙實(shí)現(xiàn)與HC-05藍(lán)牙模塊的連接,從而把與STC89C52微處理器連接的藍(lán)牙數(shù)據(jù)傳輸?shù)绞謾C(jī)APP上并且顯示。當(dāng)甲醛濃度數(shù)據(jù)大于蜂鳴器設(shè)定的閾值,通過(guò)指令發(fā)送給藍(lán)牙再發(fā)送給單片機(jī),STC89C52處理數(shù)據(jù)使蜂鳴器與微處理器的端口重新恢復(fù)到高電平,取消報(bào)警。
手機(jī)端的APP需要在Android開(kāi)發(fā)平臺(tái)完成,目前Android的開(kāi)發(fā)主流平臺(tái)有eclipse和Android studio兩種。這兩個(gè)平臺(tái)均為開(kāi)發(fā)者提供了豐富的系統(tǒng)控件,可以編寫(xiě)漂亮的界面,也可以通過(guò)擴(kuò)展系統(tǒng)控件,常見(jiàn)控件有:TextView、Buttion、EditText、一些布局控件等。實(shí)驗(yàn)案例選用了Eclipse開(kāi)發(fā)軟件進(jìn)行設(shè)計(jì)。設(shè)計(jì)APP時(shí)首先需要將Eclipse的開(kāi)發(fā)環(huán)境配置好,開(kāi)發(fā)環(huán)境搭建好后,即可調(diào)用相應(yīng)的控件完成界面設(shè)計(jì)。編寫(xiě)藍(lán)牙通信程序時(shí),由于Android對(duì)藍(lán)牙設(shè)備的一系列操作方法進(jìn)行了封裝,所以設(shè)計(jì)藍(lán)牙APP只需要調(diào)用封裝的方法即可。
三、總結(jié)
實(shí)驗(yàn)案例綜合應(yīng)用了微處理器應(yīng)用、傳感與檢測(cè)技術(shù)、Android智能平臺(tái)應(yīng)用開(kāi)發(fā)等專(zhuān)業(yè)知識(shí)與技術(shù),案例中設(shè)計(jì)的基于Android的甲醛監(jiān)測(cè)系統(tǒng)不僅可以作為電子信息專(zhuān)業(yè)綜合實(shí)驗(yàn)教學(xué)案例,同時(shí)其自身也具有較好的應(yīng)用價(jià)值。
參考文獻(xiàn):
[1]吳樂(lè)南.用于電類(lèi)專(zhuān)業(yè)綜合創(chuàng)新的教學(xué)實(shí)驗(yàn)平臺(tái)[J].電氣電子教學(xué)學(xué)報(bào),2016,38(05):99-102.
[2]張義紅,李永樂(lè),郝礦榮,韋方.Android物聯(lián)網(wǎng)創(chuàng)新型實(shí)驗(yàn)研究與應(yīng)用[J].實(shí)驗(yàn)室研究與探索,2018,37(01):22-24+37.