設計中的關鍵技術操作系統
Linux內核的配置
配置Linux內核的步驟如下:
首先,進入系統的源代碼目錄/Linux-2.4.18,運行menuconfig命令,系統就自動進入配置界面。界面很直觀,這里,需要分別對串口、網卡和攝像頭進行配置。
1.網卡和串口的配置
內核映像的下載需要用到串口和網卡,必須對串口和網卡驅動進行修改,以保證能夠順利完成移植工作。為了使內核支持串口,在進行內核配置時,對串口必須要有以下的配置選項:
[*] ARM AMBA PLOT! serial port support
[*]Support for console on AMBA serial port
對網卡必須要有以下的內核配置選項:
*)Ethernet (10 or 100M)
Generic Media independent Interface device support
[*]SMC 91C9x/91Clxxx support
串口驅動程序位于源碼樹的///drivers/serial/amba.c,網卡驅動程序位于linux/drivers/net/ann /smc9lx.c和linux/drivers/net/arm/smc9lx.h.網卡的Memory map要比串口的簡單。
2. USB系統的配置
要啟用USB系統,首先進入USB support一節并啟用Support for USB選項(對應模塊為usbcore.o)。接著,需要選擇USB主控制器驅動程序。選項是EHCI(對應模塊為ehci-hcd.o)、UHCI(對應模塊為usb-uhci.o)和OHCI(對應模塊為usb-ohci.o )。
每塊支持插入USB設備的主板都需要有USB主機控制器芯片。這個特別的芯片與插入系統的USB設備進行交互操作,并負責處理允許USB設備與系統其他部分通信所必需的所有低層次細節。
啟用了USB support和USB主機控制器驅動程序后,接下來應該啟用Preliminary USB devicefilesystem,然后啟用USB外圍設備的驅動程序。例如,為了啟用對USB攝像頭的支持,應該啟用USB Camera support.
一旦用新的內核重新引導后,目錄//proclbus/usb下應該有相應的USB設備信息。如若沒有信息,應輸入以下命令,將USB設備文件手動掛裝到//proc/bus/usb.
#mount-t usbdevfs none /proc/bus/usb
3.攝像頭
本車載終端使用cam301p攝像頭,所以,在配制Linux系統內核時要選擇cam301p這一項。
Multimedia devices——》
Video For Linux
Video For Linux——》
[*]V4L information in proc filesystem
USB support——》
USB cam301p Camera support
編譯新內核
配置好內核后,進入//usr/src/linux-2.4.18目錄下執行以下步驟:
1. $make dep,以正確設置所有的依賴關系。
2. $make clean,清除所有己存在的目標文件。如果忘記做這一步,生成的內核將會非常龐大。
3. $make zImage,生成一個經過壓縮的內核。
4.運行make modules和make modules_install.
5. make install.
一旦為目標系統編譯了內核,通過使用引導裝載程序(bootloader),內核就被裝入到目標系統的內存。通過使用串口,引導裝載程序與主機通信,將內核傳送到目標機的DRAM中。將內核完全裝入目標機后,引導裝載程序將控制權交給內核。
圖像報警技術
圖像報警是系統的關鍵技術,也是系統的難點,通過對監視圖像的分析和控制,實現報警和警情處理。該技術中融合了傳感器、數字化處理、攝像與圖像處理技術。報警流程圖如圖2所示。
圖2報警流程圖
由于傳感器是一種微弱信號檢測設備,很容易受外界因素的影響而導致誤報警,有些通過用戶的努力是可以避免的;有些從原理上講是不可以避免的,如小動物和電磁波干擾引起的誤報警。為了盡量降低誤報率,該系統采用了一種數字化處理技術,即對模擬信號直接進行數字化處理,通過對各種入侵情況和干擾情況的綜合分析,在MCU上預先設定報警閾值。經傳感器采集到的信號送至MCU處理,超過報警閾值時,MCU啟動報警;在報警閾值以下則判為干擾信號,不報警。
結語
本設計以嵌入式系統為平臺,結合傳感器、數據采集、圖像處理和無線通信技術實現了對汽車的遠程監控和防盜功能,有效減少了汽車報警系統的誤報。在理論和實踐上實現了對汽車全天候的圖像監控。由于受網絡狀態的影響,報警信息可能會有延遲,隨著網絡和通信技術的發展,相信這些問題都會得到完美的解決。
評論
查看更多