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