您的位置 首页 产品

三分钟看透!ARM9的交通违章抓拍体系的开发

三分钟看透!ARM9的交通违章抓拍系统的开发-1.智能交通系统(ITS)将先进的信息技术、数据通讯传输技术、电子控制技术、计算机处理技术等应用于交通运输行业,从而实现各种运输方式发展规划的现代化、决策的科学化和管理的智能化。

1.智能交通体系(ITS)将先进的信息技能、数据通讯传输技能、电子操控技能、计算机处理技能等运用于交通运送职业,然后完成各种运送方法开展规划的现代化、决议计划的科学化和办理的智能化。数码电子警察是现在运用比较广泛的一种智能交通产品, 运用数码相机技能和相应的车辆检测与操控技能, 主动抓拍闯红灯的车辆。数字化、网络化、小型化和智能化已经成为当时电子警察的首要开展趋势。现在国内的产品多以Windows操作体系和x86 硬件体系为中心构建, 有本钱高、体积大、稳定性短缺的不足之处。

以Linux 操作体系和RAM7 或RAM9 系列芯片为中心构建嵌入式体系是现在最盛行的嵌入式开发战略。Linux 是典型的嵌入式操作体系, 开展最快, 运用最广泛。Linux 是开源的、免费的, 从技能和经济的视点来看都是最佳挑选。S3C2410 是韩国三星( Samsung) 公司规划的32 位RISC 嵌入式处理器。该处理器为手持设备和一般性运用供给了一个高性价比、低功耗、高功用的解决方案。该芯片根据ARM920T 内核, 选用五级流水线和哈佛结构, 供给1.1MIPS/MHz 的功用。arm920T 具有全功用的内存办理单元MMU(Memory Management Unit) 、独立的16KB 指令和数据Cache 以及高速AMBA 总线接口。为了削减运用体系规划的本钱, S3C2410 集成了许多的常用资源, 例如: LCD 操控器、NAND Flash 操控器、SDRAM操控器、体系片选逻辑以及一些常用的通讯接口等资源。

本文针对交通违章抓拍体系的特色, 以S3C2410 为中心合理规划硬件电路, 并供给有必要的USB 接口、串口、网络接口和JTAG 口; 充分考虑抓拍的实时性和准确性, 选用削减的有用的Linux2.6.12 内核, 制造根文件体系, 开发运用程序, 构建软硬件协作的嵌入式体系。

2 硬件规划

三分钟看透!ARM9的交通违章抓拍体系的开发

图1 硬件整体结构图

2.1 根据S3C2410 的电路规划

电路规划如图2 所示。

三分钟看透!ARM9的交通违章抓拍体系的开发

通讯接口部分包含USB 接口、以太网接口、串口。其间串口为常见的接口方法。这儿首要阐明USB 接口和以太网接口。

S3C2410 集成了USB 操控器, 支撑两路USB Host 和一路USB Device.与USB Rev1.1 兼容, 支撑低速和全速USB 设备。

本体系中规划两路USB, 都作为Host 运用。USB 接口接线图如图3 所示。

三分钟看透!ARM9的交通违章抓拍体系的开发

网络接口芯片选用台湾DAVICOM 公司的DM9000,DM9000 是带有通用处理器接口的单片快速以太网MAC 操控器, 并带有10/100M物理层接口, 内部集成4K 字SRAM, 接口支撑8 位、16 位、32 位处理器。接口规划电路规划如图4 所示。

三分钟看透!ARM9的交通违章抓拍体系的开发

图4 Ethernet接口电路规划

2.2 检测电路规划

一般从交通指挥灯信号机中输出的红灯信号是220V/50Hz 的工频交流电, 需求规划一个整流滤波电路将从信号机输出的交通指挥灯信号变换为TTL 电平。交通指挥灯信号检测部分选用一个光隔阻隔表里电路, 从交通指挥灯信号机输入至检测板的是220V/50Hz 的交流电, 经过二级管全波整流后, 得到大约200V 的直流信号, 再经过电阻分压, 接着运用100uF 的电容平波, 取得5V 左右的直流电, 加到4N25 光隔输入端, 输出经过一个反向器取得5VTTL 电平输出, 转化电路如图5 所示。

三分钟看透!ARM9的交通违章抓拍体系的开发

本体系选用环形线圈检测体系, 环形线圈检测体系现在国表里运用最广泛的车辆检测体系, 它由3 部分组成: 埋设在路面下的环形线圈传感器、信号检测处理单元( 包含检测信号扩大单元、数据处理单元和通讯接口) 及馈线。检测单元、环形线圈与馈线线路一起组成一个LC 调谐电路。此电路中的电感首要决定于环形线圈的匝数, 环形线圈是此电路的电感元件; 电容则决定于检测单元中的电容的巨细。当电流经过环形线圈时, 在其周围构成一个电磁场, 当车辆行至线圈上方时, 在金属车体中感应出涡流电流, 涡流电流发生与环路耦合、但方向相反电磁场, 即互感, 使环形线圈电感量随之下降, 因此引起电路谐振频率的上升。只需检测到此频率随时刻改变的信号, 就可检测出是否有车辆经过。振动电路规划如图6 所示。

三分钟看透!ARM9的交通违章抓拍体系的开发

3 软件渠道的构建和运用程序的开发

3.1 构建软件渠道

体系的引导进程包含以下过程:

( 1) 处理器重新发动今后, 履行ROM发动代码。

( 2)ROM发动代码初始化CPU、内存操控器以及片上设备,然后装备存储映射。随后履行bootloader.

( 3) bootloader 将内核从闪存解压到RAM中, 然后跳到内核的第一条指令处履行。

( 4) 内核初始化各种硬件设备, 挂载根文件体系, 然后履行init 进程。

( 5) Init 进程装载运行时同享库, 读取装备文件/etc/inittab,履行脚本/etc/rc.d/rcS.

构建嵌入式软件渠道需求预备以下作业: 制造内核、创立根文件体系和生成发动代码bootloader.

3.1.1 制造Linux 内核

选用Linux2.6.12 的内核。在Linux2.6 中, 引入了许多十分有利于嵌入式运用的功用。这些新功用包含实时功用的增强、更便利的移植性、对大容量内存的支撑、支撑微操控器和I/O体系的改善等。2.6.12 供给了针对S3C2410 的装备, 运用指令make s3c2410_defconfig, 然后装备内核运用指令make menuconfig,装备体系结构( System Type) , 挑选S3C2410 ImplementaTIon,装备处理器类型, 挑选arm9T, 接着装备通用选项, 支撑网络、SYSVIPC 机制、支撑ELF 文件格局, 挑选根文件体系为JFFS2, 然后再装备网络, 挑选网络设备支撑, 挑选串口支撑、挑选文件体系与网络文件体系, 装备USB 设备选项, 因为数码相机是USB 设备, 咱们运用libusb0.1.10 版别的驱动支撑, 所以需求修正内核源码usb.c 文件, 不把数码相机作为USB 存储设备。编译内核映像运用指令make zImage, 树立模块运用指令make modules.

3.1.2 创立根文件体系

根文件体系是一切Unix 体系不可或缺的组件, 顶层目录/bin、/dev、/etc、/lib、/proc、/sbin 和/usr 是有必要的。有几项作业十分重要, 首先是树立装置GNU C 链接库, glibc 套件包含若干链接库, 比方数学链接库libm- 2.2.3.so, 同享c 链接库libc- 2.2.3.so.

除了链接库文件, 还要仿制动态链接库及其符号衔接。再就是树立设备文件, 依照Unix 的传统, 任何目标都可视为文件, 一切设备节点都放在/dev 目录下, 包含zero、random、tty0、tty1、ttyS0、tty、console、mem、null, 别的还需求树立必要的符号衔接:

fd- 》/proc/self/fd, stdin- 》fd/0, stdout- 》fd/1, stderr- 》fd/2.然后挑选首要的体系指令, BusyBox 无疑是最便利的套件, 成功装置后, /bin 目录下会呈现二进制文件busybox, 对需求的指令树立对BusyBox 的符号衔接。

为根文件体系挑选文件体系是很重要的作业。JFFS2 文件体系的特色是可被写入、具有永久性、断电可靠性并且能够紧缩。JFFS2 会为废物收回功用保护空间, 供给断电可靠性和损耗平衡这两个对flash 体系十分重要的特性。因为抓拍体系作业在开放式的环境中, 稳定性、可靠性是首先要考虑的, 所以挑选JFFS2.用mkfs.jffs2 东西程序树立文件体系的映像: mkfs.

jffs2- r rootfs/- o images/rootfs- jffs2.image.

3.1.3 Bootloader 代码。

Bootloader 首要担任加载内核, 虽然它在体系发动期间履行的时刻很短, 可是十分重要的体系组件, 对嵌入式体系来说是一件特别的作业。Bootloader 是严峻依赖于硬件而完成的, 现在以arm为根底的体系还没有规范的Bootloader, 针对本体系的硬件特性, 在ppcboot 的根底上加以修正, 生成合适本体系的发动代码。

3.2 运用程序的开发

程序首要完成以下功用: 现场红灯和线圈信号的收集; 操控相机摄影、保存参数、传输相片和删去相片; 处理按键信息并送数码管显现; 经过以太网长途下载相片, 也能够用U 盘本地下载相片。运用程序的整体结构如图7 所示。

三分钟看透!ARM9的交通违章抓拍体系的开发

体系软件的规划首要是操控相机的USB 通讯模块的编写、网络传输模块的编写、信号收集模块的编写和串口通讯模块的编写。其间USB 通讯模块是要害, 需求严格遵守数码相机的通讯协议; 网络传输选用客户机服务器方法, 本机作为客户机, 工控中心设置为服务器。检测信号模块首要是读取并口信息, 并口的操作运用端口I/O, 简略、操作性强。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/xinpin/chanpin/101933.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部