單片機典型案例開(kāi)發(fā)(一)
一、基于GPRS和單片機的彩信報警系統設計方案
本文引用地址:http://dyxdggzs.com/article/171405.htm摘要:設計一種基于GPRS 和51 單片機的彩信報警系統。利用單片機技術(shù)、帶彩信協(xié)議GPRS 無(wú)線(xiàn)通信模塊、圖像捕獲和圖像壓縮編碼功能模塊,實(shí)現原理圖設計到電路板設計開(kāi)發(fā)。用單片機根據seNSor 控制串口攝像頭圖像采集和壓縮處理,采集圖像通過(guò)彩信的格式發(fā)送到用戶(hù)手機,同時(shí)可以通過(guò)短信命令隨時(shí)查看系統狀態(tài),或者攝像頭采集圖像,監控現場(chǎng)情況。
國內傳統的電子防盜報警系統方案往往是在用戶(hù)端通過(guò)電子設備檢測到盜竊等報警信息, 然后通過(guò)通訊器經(jīng)電話(huà)線(xiàn)將信號自動(dòng)傳到報警中心來(lái)完成報警過(guò)程。這種報警中心往往存在很多局限。例如:報警中心地點(diǎn)和人員需固定,報警通信速度慢,反向查詢(xún)、控制等操作困難而專(zhuān)業(yè),電話(huà)線(xiàn)斷線(xiàn)問(wèn)題難以解決,通信費用、尤其是遠程通信費用較高,不利于組建遠程網(wǎng)絡(luò ),通信帶寬太小,加載信息量少,音視頻信號的技術(shù)手段應用困難, 很難應用于家庭安防市場(chǎng)等等。
而彩信業(yè)務(wù)自中國移動(dòng)從2002 年9 月正式推出以來(lái),隨著(zhù)彩信網(wǎng)絡(luò )工程的建立和不斷地優(yōu)化,彩信逐漸進(jìn)入了高速發(fā)展和穩定應用階段。所以人們越來(lái)越關(guān)注于依托中國移動(dòng)網(wǎng)絡(luò )、基于彩信業(yè)務(wù)來(lái)發(fā)展現代的電子防盜報警系統, 從而能在此系統上發(fā)揮其隨時(shí)隨地監控、網(wǎng)絡(luò )涵蓋范圍大、查詢(xún)控制等操作簡(jiǎn)便、費用低、報警通信速度快、音視頻應用簡(jiǎn)易等眾多優(yōu)勢,使其能廣泛應用于家庭、辦公、工廠(chǎng)、商鋪等等各種場(chǎng)所。
1 系統硬件設計
1.1 系統總線(xiàn)設計
本彩信報警系統以普通AT89C52 單片機和帶有彩信功能的無(wú)線(xiàn)模塊GPRS,前端設備可以根據控制攝像頭采集圖片,發(fā)送到用戶(hù)手機上,同時(shí)用戶(hù)可以通過(guò)短信命令隨時(shí)查看系統狀態(tài), 或者控制前端攝像頭采集圖像,監控現場(chǎng)情況。采用此方案設計的產(chǎn)品操作簡(jiǎn)單,為了降低成本,在最小硬件設計的基礎上,系統的功能盡可能用軟件程序來(lái)實(shí)現,以達到降低成本,滿(mǎn)足市場(chǎng)需求。
設計的硬件電路主要由三部分組成: 圖像捕獲和圖像壓縮編碼部分通過(guò)串口攝像頭實(shí)現; 主控制器處理圖像數據和任務(wù)控制用AT89C52 單片機實(shí)現;帶彩信協(xié)議GPRS 模塊無(wú)線(xiàn)部分。在設計中使用電路圖,在設計的過(guò)程中,首先設計了硬件的結構框圖,如圖1 所示:
圖1 系統硬件結構框圖
采用單片機AT89C52 為核心組成彩信報警系統,AT89C52 具有快速8051 內核、8kBFlashE2PROM、256BIDATARAM,符合該硬件要求;彩信報警功能,采用GPRSModule 的MC55 芯片,帶彩信協(xié)議棧MMS 功能;利用串口攝像頭實(shí)現現場(chǎng)捕獲和圖像壓縮存儲功能。
1.2 單片機接口設計
AT89C52 單片機接口中, 作為只要一組串口,GM8123 可以將一個(gè)全雙工的標準串口擴展成3 個(gè)標準串口,并能通過(guò)外部引腳控制串口擴展模式。該芯片母串口和子串口的工作波特率可由軟件調節,而不需要修改外部電路和晶振頻率, 它的外部控制少,應用靈活,編程使用簡(jiǎn)單,適用于大多數有串口擴展需求的系統。所以利用GM8123 為AT89C52擴展出3 組串口, 可以與串口攝像頭和GPRS 模塊進(jìn)行連接通信。如圖2 所示。
圖2 單片機接口電路設計
1.3 GPRS 數據傳輸模塊硬件設計
由于現場(chǎng)圖片需要以彩信的形式發(fā)送, 所以選用了帶有彩信功能的無(wú)線(xiàn)模塊, 這里選用的GPRS模塊是西門(mén)子的MC55[5].GPRS 模塊和單片機之間的數據通信主要是通過(guò)端口TXD0 與TXD1 之間,RXD0 與RXD1 之間的數據傳輸來(lái)完成。其中GPRS模塊上的TXD0 口是用于接收從單片機傳來(lái)的數據, 而單片機上的擴展TXD2 端口是用于向GPRS模塊傳送數據的。GPRS 模塊上的RXD0 口是用于向單片機發(fā)送數據, 單片機的擴展RXD2 口則是用于接收從GPRS 模塊傳輸來(lái)的數據。
GPRS 數據傳輸模塊硬件部分的電路原理圖如圖3 所示。
圖3 GPRS 數據傳輸模塊電路設計
1.4 串口攝像頭
ZSV-01P 串口攝像頭是一款具有視頻采集和圖像壓縮功能的攝像頭,具有130 萬(wàn)像素CMOS 攝像頭,最大分辨率可達到1 280×960,是一個(gè)內含有拍攝控制、視頻捕捉、圖像數據采集、圖像JPEG 壓縮、串口通訊等功能的齊全的工業(yè)用圖像采集設備,最大串口通訊速率可達115.2kbs[6]。本設計采用的帶有串口的攝像頭, 主機通過(guò)串口以約定的協(xié)議對攝像頭進(jìn)行控制。主機與相機是一種主從關(guān)系,相機的操作命令由主機發(fā)出,主機可以控制相機的輸出格式、分辨率,相機向主機發(fā)送響應消息。具體參數:
?。?)接口:主機與相機之間為RS-232 標準接口,波特率為57 600,8 位數據位,無(wú)校驗,1 位停止位。
?。?)圖像格式:相機輸出的圖像格式為JPEG.
?。?) 圖像分辨率可以是:640×480、320×240、160×120、352×288、176×144.圖像分辨率越高,則圖像數據量越大。圖4 表示分包傳輸時(shí)一幅完整圖片采集流程。
圖4 串口攝像頭采集流程
2 軟件設計
2.1 模塊軟件設計
軟件采用標準的C 語(yǔ)言構造,由Keil C51 編譯器編譯。系統軟件設計包括兩部分:一是單片機對各個(gè)功能芯片的控制字的寫(xiě)入和單片機串口擴展程序;二是GPRS 數據接收發(fā)程序設計。
2.1.1 單片機與GPRS 無(wú)線(xiàn)模塊
程序這個(gè)程序主要是完成GPRS 模塊與單片機之間的數據傳輸,單片機有51 系列的,設定的單片機串行口工作方式為模式1,8 位UART, 數據傳輸率為可變;定時(shí)器1 的工作方式為模式2,數據傳輸率設置為9 600 b/s,晶振為11.059 2 MHz.我們傳輸的主要是AT 指令, 包括所撥的號碼,DNS 服務(wù)的IP 地址,GPRS 服務(wù)提供商的密碼, 接入GPRS 服務(wù)的APN.當然還需要建立一個(gè)TCP 通訊,此服務(wù)的客戶(hù)內容包括IP、地址以及遠方主機的TCP 端口號等所傳輸的信息。
該程序的主程序是對AT 指令進(jìn)行發(fā)送和接收,在完成發(fā)送和接收數據時(shí)是分別調用數據發(fā)送子程序和數據接收子程序,而這里共包括3 個(gè)子程序:數據發(fā)送子程序、數據接收子程序以及延時(shí)子程序。
2.1.2 單片機攝像頭的控制過(guò)程。
主機獲取攝像頭圖像時(shí)操作:(1) 打開(kāi)串口;(2)開(kāi)始采集圖像,設置圖像分辨率;(3) 獲取圖像數據;(4) 結束采集圖像;(5) 關(guān)閉串口。步驟(3) 獲取圖像可以循環(huán)執行。如果重新設置圖像分辨率應重新執行步驟(2)。
2.1.3 單片機串口擴展程序設計
與之相關(guān)聯(lián)的各端口狀態(tài)和含義為:
?。?)sbit MS=P3^6; //GM8123 工作模式控制
?。?)sbit RESET=P3^7; //GM8123 復位引腳控制
?。?)unsigned char SendBuff[5]={ 0x67,0xbc,0xc9};// 需要三個(gè)子串口
主程序中定義:
TMOD = 0x20; // 指定定時(shí)器1 工作在方式2
IE = 0x90; // 開(kāi)串行口中斷
SCON=0xc0; // 串行口工作在方式3
TH1 = 0xf8; // 裝入定時(shí)器1 初值,設置主機工作波特率為7 200bs
P1=0x00; // 置GM8123 命令字地址
SBUF=Contr_data; // 設置GM8123 子串口波特率為19 200bs,母串口波特率為11 5200bs
因此,整個(gè)控制過(guò)程是:定義和初始化各個(gè)元器件的控制字和端口,然后單片機發(fā)送命令通過(guò)串口來(lái)檢查和控制各個(gè)Sensor 和串口攝像頭及MCC55 的工作。
2.2 程序流程
系統上電后首先初始化單片機, 設置串行口的波特率和定時(shí)器;然后初始化GM8123、各種Sensor傳感器;接著(zhù)執行MC55 上電,然后初始化MC55.
系統程序流程如圖5所示。
圖5 系統程序流程圖
3 結語(yǔ)
本設計選擇中深微電子公司的串口攝像頭實(shí)現了圖像捕獲和圖像壓縮編碼于一體, 簡(jiǎn)化了電路的復雜性, 帶彩信協(xié)議GPRS 模塊無(wú)線(xiàn)部分選用SIEMENS 公司的MC55,該模塊性能穩定、可靠、操作方便。通過(guò)實(shí)驗驗證該報警系統運行效果良好,用戶(hù)可以隨時(shí)隨地用手機遠程遙控, 拍攝現場(chǎng)的照片并發(fā)送到指定手機或者電子郵箱里??梢酝饨佣喾N無(wú)線(xiàn)傳感器報警,例如煙感、無(wú)線(xiàn)門(mén)磁、紅外人體感應器、煤氣傳感器等,實(shí)現多種觸發(fā)方式的報警,并具有圖像移動(dòng)偵測功能, 能對移動(dòng)的物體自動(dòng)觸發(fā)報警,具有一定的實(shí)用價(jià)值。
二、基于A(yíng)T89C52的超聲波測距儀的設計方案
摘要:基于提高測量精度的目的,設計了具有溫度補償的超聲波測距系統。該系統采用DS18B20溫度傳感器對現場(chǎng)溫度進(jìn)行檢測,并通過(guò)軟件計算實(shí)現溫度補償。實(shí)驗結果表明:此系統具有測量精度高的優(yōu)點(diǎn)。
測距技術(shù)在物位檢測、醫療探傷、汽車(chē)防撞等民用、工業(yè)領(lǐng)域應用廣泛,由于超聲波的速度相對于光速要小的多,其傳播時(shí)間就比較容易檢測,并且易于定向發(fā)射,方向性好,發(fā)射強度好控制,且不受電磁干擾影響,因而利用超聲波測距是一種有效的非接觸式測距方法。但超聲波在不同環(huán)境溫度下傳播速度不同,如忽略溫度影響,將影響最終測量精度。本文介紹的超聲波測距儀采用渡越時(shí)間檢測法,使用了DS1 8B20溫度傳感器對現場(chǎng)溫度進(jìn)行檢測,并通過(guò)軟件計算實(shí)現波速的溫度補償,消除了溫度對測量結果的影響,使測量誤差降低。
1 系統工作原理
超聲波測距原理如圖1所示。
圖1 超聲波測距原理
式中c--超聲波波速:t--從發(fā)射出超聲波到接收到回波所用時(shí)間。
限制該系統的最大可測距離存在4個(gè)因素:超聲波的幅度、反射的質(zhì)地、反射和入射聲波之間的夾角以及接收換能器的靈敏度。接收換能器對聲波脈沖的直接接收能力將決定最小的可測距離。為了增加所測量的覆蓋范圍、減小測量誤差,可采用多個(gè)超聲波換能器分別作為多路超聲波發(fā)射/接收的設計方法。
由于超聲波屬于聲波范圍,其波速c與溫度有關(guān),經(jīng)過(guò)測量得出超聲波的波速與溫度的關(guān)系,如表1所示。
表1 聲速與溫度的關(guān)系表
將測量的速度數據與溫度數據進(jìn)行一階擬合得出:
c=331.6+0.6107xT (2)
式中T--當地溫度。
在測距時(shí),可通過(guò)溫度傳感器自動(dòng)探測環(huán)境溫度、確定其時(shí)的波速c.波速確定后,只要測得超聲波往返的時(shí)間t,即可求得距離H,這樣能較精確地得出該環(huán)境下超聲波經(jīng)過(guò)的路程,提高了測量精確度。
本設計方案中使用渡越時(shí)間檢測法,測距儀工作原理為:在由單片機發(fā)出驅動(dòng)信號的同時(shí),開(kāi)啟單片機中的計時(shí)器,開(kāi)始計時(shí)。發(fā)射探頭發(fā)射出超聲波,在由接收探頭接收到第一回波的同時(shí)停止單片機計時(shí)器的計時(shí),由于超聲波在空氣中的速度已知,根據公式即可求得探頭與待測目標之間的距離。而且,可以在較短時(shí)間內多次發(fā)出超聲波測量,完成后計算平均值然后顯示。
超聲波在相同的傳播媒體里(大氣條件)傳播速度相同,即在相當大的頻率范圍內聲速不隨頻率變化,但其頻率越高,衰減得越厲害,傳播的距離也越短??紤]實(shí)際工程測量要求,在設計超聲波測距儀時(shí),選用頻率f=40kHz的超聲波,波長(cháng)為0.85cm.
2 系統硬件設計
本系統采用AT89C52單片機作為主控制器,使用3位數碼管作為系統顯示屏,超聲波發(fā)射驅動(dòng)需要的40 kHz脈沖由單片機P0.0發(fā)出,使用定時(shí)器進(jìn)行計時(shí)和控制,超聲波接收使用CX20106A作為接收主控芯片,使用DS18B20作為溫度傳感器進(jìn)行溫度校正。超聲波測距器的系統原理圖如圖2所示。
圖2 系統設計原理圖
2.1 超聲波的發(fā)射電路設計
超聲波發(fā)送模塊是由超聲波發(fā)射探頭組成的,單片機的P0.0端口直接發(fā)送40 kHz的信號,使用9012三極管做為驅動(dòng)放大,驅動(dòng)壓電晶片超聲波換能器產(chǎn)生超聲波,超聲波發(fā)射電路如圖3所示。超聲波發(fā)射子程序的流程是,發(fā)射時(shí)首先裝填計時(shí)器,并且開(kāi)始計時(shí),當超聲波發(fā)射完畢時(shí),定時(shí)器計時(shí)完畢,并且重新裝填等待下次發(fā)射。
圖3 超聲波發(fā)射電路
2.2 超聲波接收電路設計
在接收電路中使用了紅外線(xiàn)接收處理芯片CX20106A,因為它處理的是38 kHz的紅外信號,而40 kHz的超聲波信號和它比較接近,并且CX20106A芯片具有很強的抗干擾能力,這個(gè)芯片的外圍電路很簡(jiǎn)單而且通過(guò)外圍電阻調節它的中心處理頻率,通過(guò)改變外圍電路電容的大小也可以改變接收電路靈敏度和抗干擾能力。
經(jīng)過(guò)試驗后發(fā)現用單片機發(fā)40 kHz信號與使用CX20106A的電路搭配更加簡(jiǎn)單合理,使得時(shí)間的計算更為精確。
該系統的超聲波接收模塊是由超聲波接收探頭和紅外線(xiàn)接收處理芯片CX20106A組成。如圖4所示。超聲波接收子程序的流程是,利用INT0中斷檢測回波信號,若有回波信號(INT0口低電平)就關(guān)閉外部中斷,同時(shí)停止計時(shí)器的計時(shí),將測距成功標志位標記為1(測距成功),同時(shí)提取時(shí)間值,計算待測距離,保存最終結果后打開(kāi)外部中斷,等待下次測量。
圖4 超聲波接收電路
2.3 超聲波測距顯示電路
在顯示模塊選擇時(shí)有兩種,一種是用液晶顯示屏,其具有輕薄短小,分辨率高,可顯示漢字等各種符號的優(yōu)點(diǎn)。但一般需要利用控制芯片創(chuàng )建字符庫,編程工作量大;一種則是選用數碼管,數碼管具有低電耗、壽命長(cháng)、易于維護的特點(diǎn),同時(shí)精度比較高,稱(chēng)量快,精確可靠,編程容易,操作簡(jiǎn)單。缺點(diǎn)是不能實(shí)現漢字及多數據多行顯示。綜合考慮本次設計中選擇了3位數碼管顯示。用PNP型三極管驅動(dòng)數碼管,并連接到單片機AT89C52的P0口上作位選。雖然顯示上沒(méi)有液晶顯示屏那么完全,但是也能夠完整直觀(guān)地顯示出需要的結果。圖5為超聲波測距硬件設計的顯示電路。
手機電池相關(guān)文章:手機電池修復
單片機相關(guān)文章:單片機教程
單片機相關(guān)文章:單片機視頻教程
單片機相關(guān)文章:單片機工作原理
霍爾傳感器相關(guān)文章:霍爾傳感器工作原理
霍爾傳感器相關(guān)文章:霍爾傳感器原理 晶振相關(guān)文章:晶振原理 脈沖點(diǎn)火器相關(guān)文章:脈沖點(diǎn)火器原理
評論