1 MMS概述
MMS是由3(3PP(Third Generation Partnership Project,3G伙伴計(jì)劃)和WAP Forum(Wireless Application Protocol Forum,無(wú)線應(yīng)用協(xié)議論壇)制定的一種手機(jī)消息業(yè)務(wù),是短信業(yè)務(wù)和圖片信息的進(jìn)一步發(fā)展。MMS系統(tǒng)主要包括多媒體信息中心(MMSC)、WAP網(wǎng)關(guān)、數(shù)據(jù)庫(kù)服務(wù)器和增值服務(wù)系統(tǒng)等。它的實(shí)現(xiàn)方式有2種:基于WAP和基于IP。目前,GPRS網(wǎng)絡(luò)采用基于WAP的方式發(fā)送和接收MMS彩信,其具體實(shí)現(xiàn)方式如圖1所示。
從圖1中可以看出,MMS業(yè)務(wù)是以WAP為載體來(lái)傳送信息的,可見(jiàn)WAP技術(shù)在多媒體消息服務(wù)中扮演了重要的角色。WAP(Wireless Applica-tion Protocol,無(wú)線應(yīng)用協(xié)議)是開(kāi)發(fā)移動(dòng)網(wǎng)絡(luò)上類似Internet應(yīng)用的一系列協(xié)議的組合,實(shí)現(xiàn)了Internet和移動(dòng)通信網(wǎng)的互聯(lián)。在WAP體系結(jié)構(gòu)中,WTP協(xié)議與WSP協(xié)議起到核心作用。WSP協(xié)議層在會(huì)話服務(wù)中提供了一致的接口,并針對(duì)無(wú)線網(wǎng)絡(luò)通信進(jìn)行了優(yōu)化,而WTP協(xié)議為互動(dòng)式瀏覽(請(qǐng)求/應(yīng)答)提供服務(wù)。
在GPRS網(wǎng)絡(luò)中,使用MMS PDU(協(xié)議數(shù)據(jù)單元)對(duì)MMS信息進(jìn)行發(fā)送和接收,并采用多媒體郵件擴(kuò)展(MIME)協(xié)議進(jìn)行打包。MMS PDU由MMS Header和MMS Body兩部分組成。Header描述了PDU的特定信息。Body包括了SMIL表述,用來(lái)設(shè)定多媒體片段的位置、播放時(shí)間等。當(dāng)用戶終端發(fā)送MMS信息時(shí),會(huì)將MMS PDU作為WAP協(xié)議的數(shù)據(jù)單元進(jìn)行封裝,并在移動(dòng)網(wǎng)絡(luò)中尋址、存儲(chǔ)和轉(zhuǎn)發(fā),最終傳遞給接收用戶。
2 系統(tǒng)總體架構(gòu)
為了全面、詳細(xì)地掌握現(xiàn)場(chǎng)情況,本系統(tǒng)所采集的信息包括溫度、濕度、煙霧濃度、圖像數(shù)據(jù),以滿足人們?cè)谏a(chǎn)和生活中的需求。系統(tǒng)的總體架構(gòu)如圖2所示。
由圖2可知,本系統(tǒng)主要包括控制模塊、傳感器模塊、圖像采集模塊、報(bào)警模塊、GPRS模塊以及存儲(chǔ)器模塊等部分。各個(gè)模塊的主要功能如下:
?、倏刂颇K是整個(gè)系統(tǒng)的核心部分。運(yùn)行系統(tǒng)的主控程序,完成設(shè)備的初始化工作;通過(guò)對(duì)圖像采集模塊的控制,完成對(duì)圖像信息的采集、編碼以及存儲(chǔ)等工作;通過(guò)傳感器模塊,采集遠(yuǎn)程終端的溫度、濕度、煙霧濃度,并將這些信息轉(zhuǎn)換成ASCII碼;完成MMS信息的封裝、發(fā)送任務(wù)。
?、?font class="f14">傳感器模塊主要完成對(duì)現(xiàn)場(chǎng)信息的采集,包括溫度、濕度、煙霧濃度,實(shí)現(xiàn)非電信號(hào)向電信號(hào)的轉(zhuǎn)換。
?、蹐D像采集模塊實(shí)現(xiàn)對(duì)原始圖像信息的采集、數(shù)據(jù)的傳送等功能。
?、蹽PRS模塊通過(guò)PPP協(xié)議連接到GPRS無(wú)線網(wǎng)絡(luò),可實(shí)現(xiàn)對(duì)MMS信息的發(fā)送,以及對(duì)來(lái)自終端用戶SMS(短信息)的接收。
⑤存儲(chǔ)器模塊主要用于存儲(chǔ)經(jīng)過(guò)編碼處理的圖像信息。
⑥當(dāng)現(xiàn)場(chǎng)溫度、濕度或煙霧濃度超過(guò)預(yù)設(shè)報(bào)警值時(shí),報(bào)警模塊產(chǎn)生報(bào)警信號(hào),提示工作人員及時(shí)處理現(xiàn)場(chǎng)發(fā)生的事故。
監(jiān)控系統(tǒng)的工作原理:當(dāng)系統(tǒng)正常工作時(shí),微控制器模塊會(huì)定時(shí)采集現(xiàn)場(chǎng)的溫度和煙霧濃度,并與預(yù)設(shè)的報(bào)警值進(jìn)行對(duì)比。當(dāng)溫度或煙霧濃度高于此值時(shí),微控制器模塊將會(huì)控制圖像采集模塊采集現(xiàn)場(chǎng)圖像,并將采集到的數(shù)據(jù)進(jìn)行編碼和處理,作為MMS消息的圖片數(shù)據(jù)進(jìn)行存儲(chǔ);同時(shí),通過(guò)傳感器模塊采集現(xiàn)場(chǎng)的溫濕度、煙霧濃度,并作為MMS消息的文字部分進(jìn)行存儲(chǔ)。而后將這兩部分?jǐn)?shù)據(jù)進(jìn)行封裝,以MMS消息的形式傳遞到終端用戶。在完成發(fā)送任務(wù)的同時(shí),系統(tǒng)會(huì)驅(qū)動(dòng)報(bào)警模塊產(chǎn)生報(bào)警信號(hào),達(dá)到報(bào)警的目的。
用戶也可以通過(guò)向系統(tǒng)發(fā)送短信息(SMS)的形式,要求監(jiān)控終端發(fā)送現(xiàn)場(chǎng)的溫度、濕度、圖像等信息,以實(shí)現(xiàn)用戶對(duì)現(xiàn)場(chǎng)的遠(yuǎn)程監(jiān)控。
3 系統(tǒng)硬件設(shè)計(jì)
3.1 控制模塊的設(shè)計(jì)
為了使遠(yuǎn)程監(jiān)控系統(tǒng)可以穩(wěn)定、持續(xù)、高效地工作,并能對(duì)突發(fā)事件做出迅速反應(yīng),控制模塊采用嵌入式微處理器S3C6410。該處理器是基于16/32位ARM11版本內(nèi)核的低成本、低功耗、高性能微處理器,廣泛應(yīng)用于移動(dòng)電話和其他便攜式應(yīng)用。為了給2.5G和3G移動(dòng)通信業(yè)務(wù)提供最佳的硬件性能,S3C6410采用64/32位內(nèi)部總線結(jié)構(gòu),內(nèi)部集成了多個(gè)功能強(qiáng)大的硬件加速器,如移動(dòng)圖像處理、顯示控制和圖像縮放。其內(nèi)部集成的JPEG編解碼器,支持對(duì)YCbCr4:2:2/YCbCr4:2:0格式的圖像進(jìn)行編碼,輸出的圖像文件尺寸可滿足MMS信息對(duì)圖片大小的要求。除此之外,S3C6410還具備相機(jī)接口,該接口支持ITU R BT-656/601 8位模式,最大輸入尺寸可為4096×4096像素,支持YCbCr4:2:2格式的數(shù)據(jù)作為輸入,可生成RGB 16/18/24位格式和YCbCr4:2:2/YCbCr4:2:0格式的圖像,這一特點(diǎn)可降低系統(tǒng)對(duì)圖像采集模塊的要求。
3.2 傳感器模塊的設(shè)計(jì)
系統(tǒng)的傳感器模塊由兩部分組成,分別是溫濕度傳感器和煙霧濃度傳感器。溫濕度傳感器采用廣州奧松公司的高性能AM2301電容式數(shù)字溫濕度傳感器。該傳感器具有超快響應(yīng)、抗干擾能力強(qiáng)、性價(jià)比高、溫濕度測(cè)量范圍大、分辨率高等優(yōu)點(diǎn),可應(yīng)用于各類環(huán)境中,甚至在條件極為惡劣的場(chǎng)合也可正常工作。AM2301是一種單總線器件,其數(shù)據(jù)格式:40位數(shù)據(jù)=16位濕度數(shù)據(jù)16位溫度數(shù)據(jù)8位校驗(yàn)和。在本系統(tǒng)中,通過(guò)S3C6410的引腳GPE1并加上拉電阻與控制模塊進(jìn)行通信,使系統(tǒng)集成變得更為簡(jiǎn)易快捷,節(jié)省了引線數(shù)量,降低了產(chǎn)品成本。
煙霧濃度傳感器采用MQ-2作為感應(yīng)器件。MQ-2是一種電阻性的傳感器,對(duì)天然氣、液化石油氣、氫氣等煙霧具有很高的靈敏度,可長(zhǎng)期穩(wěn)定地工作,抗干擾性強(qiáng)。通過(guò)測(cè)量其輸出電阻,可以檢測(cè)現(xiàn)場(chǎng)的煙霧濃度。
3.3 圖像采集模塊的設(shè)計(jì)
圖像采集模塊采用美國(guó)Omnivision公司生產(chǎn)的OV7650。它是一款高集成度、高分辨率的CMOS圖像傳感器,支持YCbCr4:2:2數(shù)據(jù)輸出格式,可完全滿足系統(tǒng)的設(shè)計(jì)要求。其輸入輸出接口與S3C6410的相機(jī)接口具備良好的兼容性,為系統(tǒng)的開(kāi)發(fā)提供極大的便利。
3.4 GPRS模塊的設(shè)計(jì)
系統(tǒng)采用Simcom公司的SIM300z作為GPRS模塊。它利用GPRS技術(shù)與GSM移動(dòng)通信網(wǎng)絡(luò)作為傳輸介質(zhì),可為用戶提供快速的無(wú)線GPRS連接以及較高的數(shù)據(jù)傳輸速率。該模塊有較寬的工作溫度范圍,可滿足監(jiān)控系統(tǒng)對(duì)惡劣條件的要求。SIM300z與S3C6410通過(guò)串口通信,能及時(shí)處理S3C6410發(fā)出的AT指令。對(duì)于S3C6410傳遞的數(shù)據(jù),SIM300z也可及時(shí)轉(zhuǎn)發(fā),滿足監(jiān)控系統(tǒng)對(duì)數(shù)據(jù)傳送的要求。
4 系統(tǒng)軟件設(shè)計(jì)
完成硬件的設(shè)計(jì)只是實(shí)現(xiàn)系統(tǒng)功能的第一步,良好的軟件設(shè)計(jì)才是系統(tǒng)能夠穩(wěn)定運(yùn)行的關(guān)鍵,下面將詳細(xì)介紹監(jiān)控系統(tǒng)的軟件結(jié)構(gòu)和重要的軟件模塊。
4.1 嵌入式操作系統(tǒng)的移植
嵌入式操作系統(tǒng)是一種用途廣泛的系統(tǒng)軟件,負(fù)責(zé)遠(yuǎn)程監(jiān)控系統(tǒng)的全部軟件硬件資源的分配、調(diào)度等工作,是整個(gè)系統(tǒng)的基礎(chǔ)。Linux因其內(nèi)核完全開(kāi)放、可以靈活配置等特性,被選為本系統(tǒng)的操作系統(tǒng)。其移植過(guò)程如下:
①在PC機(jī)上利用虛擬機(jī),建立交叉編譯環(huán)境GNU;
?、诟鶕?jù)系統(tǒng)需要選擇TCP/IP等模塊,編譯生成Linux內(nèi)核;
?、劬幾g生成根文件系統(tǒng)rootdisk;
?、芟虻讓佑布螺dBootloader映像,Bootloader的主要作用是初始化硬件,引導(dǎo)Linux內(nèi)核啟動(dòng);
?、轃龑?xiě)Linux內(nèi)核和rootdisk映像。
4.2 GPRS連網(wǎng)模塊的設(shè)計(jì)
在Linux下通過(guò)GPRS上網(wǎng),必須使用PPP協(xié)議進(jìn)行撥號(hào),而移植到ARM中的Linux沒(méi)有提供PPP協(xié)議,需要在內(nèi)核編譯時(shí)配置網(wǎng)絡(luò)設(shè)備支持PPP協(xié)議。在此基礎(chǔ)上,利用pppd源碼包,使用“ATD*99***1#”進(jìn)行撥號(hào)連接,即可登錄中國(guó)移動(dòng)的GPRS網(wǎng)絡(luò)。在撥號(hào)過(guò)程中,需要進(jìn)行如下設(shè)置:
?、僭O(shè)置串口速率為115 200 bps,校驗(yàn)位為NONE,數(shù)據(jù)位為8,停止位為1,并取消硬件流控制;
?、谟脩裘c密碼為空;
?、凼褂?ldquo;ATCGDCONT=1,“IP”,“CMNET””指令,設(shè)置接入點(diǎn)為CMNET。
4.3 信息采集模塊的設(shè)計(jì)
信息的采集包括兩部分:一部分是圖像信息的采集,另一部分是溫濕度、煙霧濃度的采集。由于S3C6410具備相機(jī)接口和強(qiáng)大的JPEG編解碼器作為硬件支持,可直接調(diào)用Linux函數(shù)完成圖像的采集和編碼工作,極大地縮短了開(kāi)發(fā)周期。
溫濕度的采集通過(guò)AM2301模塊進(jìn)行,在其上電后,需等待1s以越過(guò)不穩(wěn)定狀態(tài),在此期間不能發(fā)送任何指令。AM2301與S3C6410之間采用單總線數(shù)據(jù)格式進(jìn)行通信和同步,一次通信時(shí)間大約5 ms。
微控制器S3C6410采集溫濕度流程如下:通信開(kāi)始時(shí)S3C6410拉低總線DATA,500μs后釋放總線,延時(shí)20~40 μs后S3C6410開(kāi)始檢測(cè)AM230 1的響應(yīng)信號(hào)。AM2301的響應(yīng)信號(hào)是一個(gè)80μs左右的低電平,隨后AM2301再拉高總線80μs左右代表其即將進(jìn)入數(shù)據(jù)傳送狀態(tài)。而后AM2301傳遞40位的有效數(shù)據(jù),當(dāng)最后一位數(shù)據(jù)傳送完畢后,AM2301將再次拉低總線50μs左右,最后釋放總線,并由上拉電阻拉高。
煙霧濃度的采集過(guò)程:感應(yīng)器件MQ-2將煙霧信息轉(zhuǎn)變成電信號(hào),經(jīng)放大電路后再進(jìn)行A/D轉(zhuǎn)換,最終傳遞給S3C6410進(jìn)行存儲(chǔ)。
4.4 MMS發(fā)送模塊的設(shè)計(jì)
當(dāng)系統(tǒng)成功連接到GPRS網(wǎng)絡(luò)后,需要通過(guò)WAP協(xié)議發(fā)送MMS信息。在此過(guò)程中,WAP網(wǎng)關(guān)的IP設(shè)置為10.0.0.172,端口為9201。發(fā)送MMS信息的具體過(guò)程如下:
①微處理器向WAP網(wǎng)關(guān)發(fā)送會(huì)話建立連接請(qǐng)求,發(fā)送的數(shù)據(jù)為0E 00 00 12 01 10 00 00(8字節(jié))。前4字節(jié)為WTP invoke PDU,后4字節(jié)為WSP協(xié)議數(shù)據(jù)單元,代表WSP Connect PDU。
②服務(wù)器返回連接確認(rèn),其數(shù)據(jù)為13 80 00 02 92 C7 59 0E…(30字節(jié))。前3字節(jié)為WTP Result PDU,其余為WSP協(xié)議數(shù)據(jù)單元,代表WSP ConnectReply PDU。
?、畚⑻幚砥靼l(fā)送WTP確認(rèn)(WTP Acknowledgement PDU),完成會(huì)話連接,發(fā)送的數(shù)據(jù)為18 00 00。
④微處理器發(fā)送WTP、WSP和MMS包,主要包括WTP Invoke PDU、WSP Post PDU和M-send.req PDU。
?、菥W(wǎng)關(guān)返回事務(wù)操作結(jié)果,微處理器發(fā)送WTP確認(rèn)(WTP Acknowledgement PDU)完成會(huì)話,發(fā)送的數(shù)據(jù):18 00 01。
5 系統(tǒng)測(cè)試
經(jīng)過(guò)多次測(cè)試,由監(jiān)控終端發(fā)送的MMS信息,其絕大部分都能在發(fā)送5 s后由終端接收,即使不發(fā)送WTP確認(rèn)也可以被接收,能夠滿足監(jiān)控系統(tǒng)對(duì)實(shí)時(shí)性的要求。系統(tǒng)測(cè)試如圖3所示。
結(jié)語(yǔ)
本文詳細(xì)介紹了基于ARM11和MMS的遠(yuǎn)程監(jiān)控系統(tǒng)。系統(tǒng)具有較好的穩(wěn)定性,可以適應(yīng)不同的工作環(huán)境。所采用的MMS技術(shù)可以傳送圖片、聲音、文字和視頻等信息,通過(guò)該技術(shù)實(shí)現(xiàn)遠(yuǎn)程監(jiān)控已成為當(dāng)今的一大熱點(diǎn)。隨著嵌入式技術(shù)的不斷發(fā)展、GPRS網(wǎng)絡(luò)的逐步成熟,以及3G網(wǎng)絡(luò)的迅速發(fā)展,通過(guò)MMS的方式實(shí)現(xiàn)遠(yuǎn)程監(jiān)控必定成為流行趨勢(shì)。相信在不久的將來(lái),人們不出家門,就可以實(shí)時(shí)對(duì)遠(yuǎn)程場(chǎng)景進(jìn)行監(jiān)控,及時(shí)處理突發(fā)事件。