基于Qt的遠程監(jiān)控系統(tǒng)的設(shè)計方案
1. 方案總體設(shè)計
1.1 設(shè)計主要模塊
遠程視頻監(jiān)控系統(tǒng)為軟件系統(tǒng)和硬件系統(tǒng)兩個部分,其中軟件系統(tǒng)包括在Windows系統(tǒng)上使用軟件Qt開發(fā)的人機交互界面,第三方的OpenCV庫,硬件系統(tǒng)包括S3C2410板卡,servfox采集工具(使用Linux系統(tǒng)編譯),中星微攝像頭。其整體模塊設(shè)計框圖如圖1所示:
Qt人機交互界面在本系統(tǒng)屬于軟件部分,主要是通過Qt設(shè)計的界面來處理從終端傳過來的視頻圖像。
OpenCV在本系統(tǒng)中也是屬于軟件部分,主要讓Qt導(dǎo)入OpenCV的庫文件,通過OpenCV提供的一些接口在Qt中來實現(xiàn),這樣就可以順利的顯示從終端傳過來的視頻圖像。
TCP/IP協(xié)議是目前最為流行和常用的網(wǎng)絡(luò)傳輸協(xié)議,在本系統(tǒng)中,通過TCP/IP協(xié)議將系統(tǒng)的軟件部分和硬件部分連接在一起,即將終端采集到的視頻信息通過網(wǎng)線傳遞到客戶端電腦上,只要ping通兩端的網(wǎng)絡(luò)地址即可實現(xiàn)傳送。
S3C2410板卡在本系統(tǒng)中處于硬件部分,并且也是硬件部分的核心,通過S3C2410板卡的USB端口連接攝像頭,接受攝像頭采集到的視頻信息,將采集到的視頻信息通過網(wǎng)線往外傳送。
servfox在本系統(tǒng)中屬于硬件部分,其主要是通過移植到S3C2410平臺上,在檢測到了攝像頭之后,通過指令來啟動servfox完成采集視頻信息的任務(wù),而就具體視頻信息在硬件部分交由S3C2410處理。
中星微攝像頭在硬件部分是連接在S3C2410的USB端口,完成視頻畫面采集。
1.2 系統(tǒng)設(shè)計總體結(jié)構(gòu)
如圖2所示,總體結(jié)構(gòu)上分為終端和客戶端兩大部分,客戶端主要是Qt的人機交互界面,通過調(diào)用第三方的庫實現(xiàn)的顯示,而具體的照相,關(guān)閉,開始操作則交給人機交互界面完成。
在終端最主要的是S3C2410板卡,圍繞板卡連接了中星微攝像頭來采集終端的視頻,通過移植到板卡操作系統(tǒng)中的servfox工具來完成對視頻流的發(fā)送。終端和客戶端的連接主要是通過網(wǎng)線將其連接,終端發(fā)送視頻信息,客戶端接受視頻信息的同時進行處理,這樣使其成為一個整體。
2.系統(tǒng)硬件設(shè)計
2.1 電源接口電路
板卡的電源接口的電路圖如圖3所示:
板卡電源電壓為DC5V,5V電壓通過LDO芯片AS1117-3.3V、AS1117-1.8V分別得到3.3V,1.8V的工作電壓,其中1.8V是供給板卡內(nèi)核使用的。另外1.8V電壓經(jīng)過一個肖特基二極管后給板卡處理器內(nèi)部RTC供電,RTC電源VCCRTC也引到擴展插座,需要的話外部可以接電池。
2.2 USB接口電路
板卡的USB接口的電路圖如圖4所示:
板卡具備一個USB主口和一個USB從口,電路中主要是上下拉電阻。USB從口可以檢測電纜插入動作,并可以引起INT10中斷。在本次設(shè)計中主要是用到了板卡的USB主口來連接攝像頭。
2.3 RS232串口電路
板卡的串口接口的電路圖如圖5所示:
應(yīng)S3C2410的UART0和UART1,用MAX3232芯片做TTL-RS232電平轉(zhuǎn)換。其中UART0對應(yīng)的RS232串口用DB9插座引出,方便調(diào)試。UART1對應(yīng)RS232串口從擴展插座引出。擴展插座上還有UART2(TTL電平)。在本次設(shè)計中主要是用DB9插座連接到電腦,這樣方便調(diào)試板卡。
2.4 板卡的NandFlash芯片
板卡的NandFlash芯片的原理圖如圖6所示。
K9F1208是三星公司的NandFlash芯片,而S3C2410板卡內(nèi)部具有Nand控制器,所以K9F1208直接和S3C2410連接,并可以從NandFlash引導(dǎo)。
2.5 中星微攝像頭
在終端中選用的是中星微公司生產(chǎn)的ZC301型號的攝像頭,之所以選擇這款攝像頭,是因為S3C2410本來就支持這種型號,不需要再重新配置,只是需要在S3C2410中加載該攝像頭的驅(qū)動即可,該驅(qū)動在Centos系統(tǒng)中可以找到,這個目錄下的zc0301.ko即為驅(qū)動,將其復(fù)制到S3C2410下,執(zhí)行insmod zc0301.ko即可。
3.系統(tǒng)軟件設(shè)計
在上文中完整的介紹了系統(tǒng)的整體設(shè)計,但是系統(tǒng)所有的設(shè)計都需要程序的設(shè)計來支撐,圖7所示是程序設(shè)計的流程圖。
4.結(jié)語
本文所介紹的基于S3C2410和Qt的遠程監(jiān)控系統(tǒng)的設(shè)計方案的設(shè)計的程序設(shè)計部分嚴格按照上圖的流程,在網(wǎng)絡(luò)連接的情況下才可以繼續(xù)進行視頻的傳遞,其余的操作主要是集中在人機交互界面上。方案中設(shè)計的遠程監(jiān)控系統(tǒng)不僅可以實時顯示終端的視頻狀態(tài),還可以撲捉任意時刻的圖像并將獲取的圖像實時存儲到本地,而且圖像清晰,便于監(jiān)控。并且,還可應(yīng)用到多種場合:工廠的倉庫管理、手機、PDA等小型或手持型嵌入式設(shè)備。