基于A(yíng)RM9的交通違章抓拍系統的開(kāi)發(fā)
2.2 檢測電路設計
通常從交通指揮燈信號機中輸出的紅燈信號是220V/50Hz 的工頻交流電, 需要設計一個(gè)整流濾波電路將從信號機輸出的交通指揮燈信號變換為T(mén)TL 電平。交通指揮燈信號檢測部分采用一個(gè)光隔隔離內外電路, 從交通指揮燈信號機輸入至檢測板的是220V/50Hz 的交流電, 通過(guò)二級管全波整流后, 得到大約200V 的直流信號, 再經(jīng)過(guò)電阻分壓, 接著(zhù)使用100uF 的電容平波, 獲得5V 左右的直流電, 加到4N25 光隔輸入端, 輸出經(jīng)過(guò)一個(gè)反向器獲得5VTTL 電平輸出, 轉換電路如圖5 所示。
本系統采用環(huán)形線(xiàn)圈檢測系統, 環(huán)形線(xiàn)圈檢測系統目前國內外使用最廣泛的車(chē)輛檢測系統, 它由3 部分組成: 埋設在路面下的環(huán)形線(xiàn)圈傳感器、信號檢測處理單元( 包括檢測信號放大單元、數據處理單元和通信接口) 及饋線(xiàn)。檢測單元、環(huán)形線(xiàn)圈與饋線(xiàn)線(xiàn)路共同組成一個(gè)LC 調諧電路。此電路中的電感主要決定于環(huán)形線(xiàn)圈的匝數, 環(huán)形線(xiàn)圈是此電路的電感元件; 電容則決定于檢測單元中的電容的大小。當電流通過(guò)環(huán)形線(xiàn)圈時(shí), 在其周?chē)纬梢粋€(gè)電磁場(chǎng), 當車(chē)輛行至線(xiàn)圈上方時(shí), 在金屬車(chē)體中感應出渦流電流, 渦流電流產(chǎn)生與環(huán)路耦合、但方向相反電磁場(chǎng), 即互感, 使環(huán)形線(xiàn)圈電感量隨之降低, 因而引起電路諧振頻率的上升。只要檢測到此頻率隨時(shí)間變化的信號, 就可檢測出是否有車(chē)輛通過(guò)。振蕩電路設計如圖6 所示。
3 軟件平臺的構建和應用程序的開(kāi)發(fā)
3.1 構建軟件平臺
系統的引導過(guò)程包括以下步驟:
( 1) 處理器重新啟動(dòng)以后, 執行ROM啟動(dòng)代碼。
( 2)ROM啟動(dòng)代碼初始化CPU、內存控制器以及片上設備,然后配置存儲映射。隨后執行bootloader.
( 3) bootloader 將內核從閃存解壓到RAM中, 然后跳到內核的第一條指令處執行。
( 4) 內核初始化各種硬件設備, 掛載根文件系統, 然后執行init 進(jìn)程。
( 5) Init 進(jìn)程裝載運行時(shí)共享庫, 讀取配置文件/etc/inittab,執行腳本/etc/rc.d/rcS.
構建嵌入式軟件平臺需要準備以下工作: 制作內核、創(chuàng )建根文件系統和生成啟動(dòng)代碼bootloader.
3.1.1 制作Linux 內核
采用Linux2.6.12 的內核。在Linux2.6 中, 引入了很多非常有利于嵌入式應用的功能。這些新功能包括實(shí)時(shí)性能的增強、更方便的移植性、對大容量?jì)却娴闹С?、支持微控制器和I/O系統的改進(jìn)等。2.6.12 提供了針對S3C2410 的配置, 使用命令make s3c2410_defconfig, 然后配置內核使用命令make menuconfig,配置體系結構( System Type) , 選擇S3C2410 Implementation,配置處理器類(lèi)型, 選擇ARM9T, 接著(zhù)配置通用選項, 支持網(wǎng)絡(luò )、SYSVIPC 機制、支持ELF 文件格式, 選擇根文件系統為JFFS2, 然后再配置網(wǎng)絡(luò ), 選擇網(wǎng)絡(luò )設備支持, 選擇串口支持、選擇文件系統與網(wǎng)絡(luò )文件系統, 配置USB 設備選項, 由于數碼相機是USB 設備, 我們使用libusb0.1.10 版本的驅動(dòng)支持, 所以需要修改內核源碼usb.c 文件, 不把數碼相機作為USB 存儲設備。編譯內核映像使用命令make zImage, 建立模塊使用命令make modules.
3.1.2 創(chuàng )建根文件系統
根文件系統是所有Unix 系統不可或缺的組件, 頂層目錄/bin、/dev、/etc、/lib、/proc、/sbin 和/usr 是必須的。有幾項工作非常重要, 首先是建立安裝GNU C 鏈接庫, glibc 套件包括若干鏈接庫, 比如數學(xué)鏈接庫libm- 2.2.3.so, 共享c 鏈接庫libc- 2.2.3.so.
除了鏈接庫文件, 還要復制動(dòng)態(tài)鏈接庫及其符號連接。再就是建立設備文件, 按照Unix 的傳統, 任何對象都可視為文件, 所有設備節點(diǎn)都放在/dev 目錄下, 包括zero、random、tty0、tty1、ttyS0、tty、console、mem、null, 另外還需要建立必要的符號連接:
fd- >/proc/self/fd, stdin- >fd/0, stdout- >fd/1, stderr- >fd/2.然后選擇主要的系統命令, BusyBox 無(wú)疑是最方便的套件, 成功安裝后, /bin 目錄下會(huì )出現二進(jìn)制文件busybox, 對需要的命令建立對BusyBox 的符號連接。
為根文件系統選擇文件系統是很重要的工作。JFFS2 文件系統的特點(diǎn)是可被寫(xiě)入、具有永久性、斷電可靠性而且可以壓縮。JFFS2 會(huì )為垃圾回收功能維護空間, 提供斷電可靠性和損耗平衡這兩個(gè)對flash 系統非常重要的特性。由于抓拍系統工作在開(kāi)放式的環(huán)境中, 穩定性、可靠性是首先要考慮的, 所以選擇JFFS2.用mkfs.jffs2 工具程序建立文件系統的映像: mkfs.
jffs2- r rootfs/- o images/rootfs- jffs2.image.
評論