<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 分析基于A(yíng)RM 的紅外光汽車(chē)速度管理系統

分析基于A(yíng)RM 的紅外光汽車(chē)速度管理系統

作者: 時(shí)間:2012-01-04 來(lái)源:網(wǎng)絡(luò ) 收藏

近來(lái)市場(chǎng)出現了一種叫“電子狗”的反雷達測速裝置,這種裝置在接近雷達測速區時(shí),能夠提前捕捉到雷達測速的信息并發(fā)出報警,使違章車(chē)輛逃脫處罰,事故隱患非常嚴重。本文的以光傳感器、 為核心部件的新型測速系統測速時(shí)不會(huì )被“電子狗”所發(fā)現,不僅能識別V 的大小,還能測出其超過(guò)上限(Vmax)的量值(+△V)或低于下限速度(Vmin)的量值(—△V)等信息,據該信息酌情驅動(dòng)取證系統工作,能夠有效地提高交通管制的力度。

本文引用地址:http://dyxdggzs.com/article/149894.htm

1 系統工作原理

系統由調制式光傳感器、飛利浦公司的LPC2294 嵌入式處理器,帶觸摸屏的彩色液晶顯示器以及報警攝像等系統構成,如圖1 所示。圖1 中M、N 兩點(diǎn)是路旁一側護欄上的兩點(diǎn),分別安裝著(zhù)可發(fā)射38KHz 的發(fā)光管,一直向外發(fā)射調制式紅外光。調制式紅外光被另一側護欄上相應的兩點(diǎn)M’、N’處安放的光電接收器接收,共同組成一個(gè)光控測速區。當達到N 點(diǎn)時(shí),第二個(gè)光電探測器N-N’將光信號轉換為電信號經(jīng)信號調理電路送至 處理器使計數器停止計數,t 的值就確定了。由M、N 兩點(diǎn)間的距離L 除以t 便得到速度V。如果計算得到的V 值在設定的安全速度范圍之內,顯示屏則顯示當前安全速度值,攝像、報警電路就不工作;如果V 值超出設定范圍之外,則計算速度偏移量△V =Vmax—V,同時(shí)顯示該車(chē)輛超速行駛,并讓攝像、報警電路啟動(dòng)工作。同理,若車(chē)輛以V《Vmin 的低速狀態(tài)通過(guò)光控測速區時(shí),照相及報警系統亦啟動(dòng)工作,顯示屏顯示超速信息,提示此時(shí)車(chē)輛處于超低速行駛狀態(tài)。

2 系統硬件設計

2.1 光電發(fā)射接收系統

光電發(fā)射接收系統原理如圖2 所示。振蕩器產(chǎn)生頻率為38KHz 的信號, 驅動(dòng)紅外發(fā)光管發(fā)光。光電接收器則接收紅外發(fā)光管射出的光脈沖,接收到的光脈沖信號經(jīng)調節電位器連接到檢測器的輸入端。將接收到的調制式光脈沖信號送入放大器進(jìn)行放大,經(jīng)閾值檢測后變成與同步振蕩器同步輸出的邏輯電平脈沖,再通過(guò)脈沖同步解調,得到與車(chē)輛運動(dòng)狀態(tài)相關(guān)的光電信號,并經(jīng)緩沖輸出。

2.2 信號接收與定時(shí)器工作

如圖3 所示,在沒(méi)有車(chē)輛經(jīng)過(guò)光控測速區時(shí),M’、N’兩點(diǎn)一直能接收到38KHz 的調制紅外光,均輸出高電平,暫穩態(tài)電路均處在穩態(tài)。門(mén)G 的輸出為邏輯1,UL 始終為高電平。當有車(chē)輛通過(guò)光控測速區時(shí),M 點(diǎn)發(fā)出的光線(xiàn)首先被阻斷,UM 由高電平先變?yōu)榈碗娖?,暫穩態(tài)電路1 被觸發(fā)而進(jìn)入暫穩態(tài),如圖4 中的t1 時(shí)刻之后所示。

2.3 ARM 核心板及觸摸顯示系統

系統核心板采用DEVICEARM2200 工控板, 其內嵌飛利浦公司的LPC2294ARM7TDMI-S 嵌入式處理器,最高頻率60MHz,并帶有8M PSRAM 存儲器和16M NANDFlash,性能完全滿(mǎn)足高速車(chē)速測量系統的要求。由于其較小的封裝、極低的功耗,可使用電池供電,因此十分適合于野外無(wú)外接電源的情況下工作。電路連接如圖 5 所示:顯示屏選用320×240 彩色液晶屏,將液晶控制器S1D13503 的AB0 至AB16 與LPC2294 的地址總線(xiàn)A1 至A17 相連,以16 位總線(xiàn)方式操作;S1D13503的數據總線(xiàn)DB0 至DB7 接LPC2294 的外部存儲器數據線(xiàn)D0 至D7, DB8 至DB15 接VDD,實(shí)現與LPC2294 的8 位數據總線(xiàn)連接;其硬件配置由兩片高速CMOS 靜態(tài)存儲器IS61C1024對S1D13503 的VD0 至VD15 來(lái)完成。四線(xiàn)電阻式觸摸屏可檢測到觸摸信號并通過(guò)觸摸屏控制器FM7843 將模擬信號轉換為位置坐標數據,傳遞給LPC2294 進(jìn)行處理。

3 系統軟件設計

3.1 uclinux 系統移植

雖然當前 uclinux 已經(jīng)支持無(wú)MMU 的ARM 體系結構,但由于具體使用的ARM 處理器芯片存儲系統不同、片內的外設不同、中斷系統也不同,因此需添加或修改LPC2294 芯片相關(guān)的具體代碼。

3.2 設備驅動(dòng)程序設計

由于uclinux 2.4.x內核為非搶占式,進(jìn)程時(shí)間片為10ms,本身實(shí)時(shí)性并不高。設備信息結構體用來(lái)描述該設備的open、release、read等操作方法:其中,在系統和應用程序首次使用此定時(shí)器時(shí),首先執行timer1_open(struct inode *inode, struct file *filp) 方法調用request_irq(IRQ_timer1, timer1_irq_handle, SA_INTERRUPT, “my” DEVICE_NAME, NULL)函數進(jìn)行中斷響應函數注冊,配置定時(shí)器T1IR、T1PR、T1TC、T1TCR等寄存器完成定時(shí)器初始化,使用中斷開(kāi)關(guān)函數local_irq_save()和local_irq_restore()來(lái)控制臨界區;最終由uclinux系統接收硬件中斷并調用中斷服務(wù)程序;當系統和應用程序不再使用該定時(shí)器時(shí)調用timer1_release(struct inode *inode, struct file *filp)進(jìn)行關(guān)閉和釋放。中斷服務(wù)程序timer1_irq_handle(int irq,void *dev_id,struct pt_regs *regs)完成清除中斷源、定時(shí)器計數器復位以及通過(guò)uclinux提供的宏inl(T1CR)讀取捕獲寄存器中計數器的值并調用系統函數copy_to_usr()將數據從內核空間拷貝至用戶(hù)空間。最后,將設備驅動(dòng)程序timer1. c復制到linux-2.4.x/driver/char目錄下,在timer1.c中加入函數timer1_init()完成設備的注冊。在mem.c文件中添加timer1_init()外部函數說(shuō)明,在chr_dev_init()函數添加timer1_init()調用,編譯得到新內核。

3.3 MiniGUI 移植

MiniGUI 為實(shí)現其跨平臺特性,采用GAL(圖形抽象層)和IAL(輸入抽象層)將MiniGUI上層和操作系統隔離開(kāi)。因此,首先創(chuàng )建lcdgal.c 文件,參考native 圖形引擎數據結構和Framebuffer 驅動(dòng)程序按照GAL 接口編寫(xiě)接口函數;然后將液晶驅動(dòng)程序lcddriver.clcddriver.h 及LPC2294 的頭文件lpc2294.h 放在libminigui 下的/src/gal/native 目錄下并修改Makefile.am 文件。在libminigui 的/src/ial 目錄下添加ialinput.h 和 ialinput.c 編寫(xiě)IAL 接口函數,并添加觸摸屏控制器驅動(dòng)程序fm7843.c、fm7843.h 到/src/ial 目錄,同時(shí)修改Makefile.am文件。加入MINIGUI 擴展庫libmgext 支持,以Threads 模式交叉編譯并將得到的MiniGUI靜態(tài)鏈接庫與交叉編譯后的用戶(hù)應用程序進(jìn)行鏈接,生成可在目標板上運行的目標文件,最后在移植好的uclinux 系統上安裝運行MiniGUI 所需的資源文件。

3.4 用戶(hù)界面設計

用戶(hù)界面主要包括一個(gè)主窗體用來(lái)顯示速度信息以及一個(gè)為車(chē)輛速度報警而設定的對話(huà)框。以MniniGUIMain( int argc, const char* argv[ ] ) 為入口,定義顯示區域,使用CreateThreadForMainWindow( )函數創(chuàng )建了兩個(gè)并發(fā)的線(xiàn)程,定義線(xiàn)程的入口函數地址并返回線(xiàn)程標識符;在主線(xiàn)程中配置完成對timer1 的初始化操作,通過(guò)hMainWnd =CreateMainWindow( Createinfo ) 創(chuàng )建主窗體并配置Createinfo 的各項屬性, 調用ShowWindows( hMainWnd, SW_SHOWNORMAL )函數顯示窗體作為用戶(hù)主界面,最終進(jìn)入消息循環(huán)。監視線(xiàn)程和主線(xiàn)程同時(shí)啟動(dòng),此后,監視線(xiàn)程在后臺對車(chē)速信息數據進(jìn)行實(shí)時(shí)監控,并通過(guò)SendMessage( )向主線(xiàn)程發(fā)送相應的消息。消息的處理與超速報警判定可在主窗體窗口過(guò)程函數SpeedWinProc( )中實(shí)現。

4 結語(yǔ)

調制式紅外光汽車(chē)速度識別系統,不僅能準確測出汽車(chē)車(chē)速狀況,其測速信息還能避開(kāi)“電子狗”式的反測速裝置捕捉,對提高交通管制的質(zhì)量、消除事故隱患、保證人民群眾的生命財產(chǎn)安全具有重要作用,并可用于其他測速場(chǎng)合,應用前景好。系統采用ARM 嵌入式處理器、uclinux 操作系統以及觸摸屏,不但人機交互性好,而且升級與擴展能力強,工作穩定,具有強大的應用前景。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>