基于异构多核体系的汽车远程监控系统设计

发布者:数字之舞最新更新时间:2011-12-06 关键字:异构多核  Nios  Sobel  运动目标检测  JPEG  通用无线分组业务 手机看文章 扫描二维码
随时随地手机看文章

0 引言
    随着汽车日益家庭化,汽车被盗事件屡屡发生,据不完全统计,我国每年汽车被盗数目达十万之多。针对现有汽车监控防盗系统存在的噪声污染、误报率高、不稳定、功耗高等缺点,本设计提出一种基于异构多核体系的汽车远程监控系统,采用两块Nios II软核作为主处理器构成双核系统,将硬件DSP处理IP作为双核系统的协处理器,构成异构多核的嵌入式系统。采用高精度CMOS摄像头采集被监控区域的视频图像,通过VGA实时进行输出监控,同时对图像数据进行一系列处理,判断监控区域是否有异物闯入。从而降低误报率的同时,进一步提高了监控系统的稳定性和实时性。

1 设计方案
    系统采用Altera公司提供的DEl开发平台,检测传感器组包括:震动、加速度倾角传感器,完成对汽车监控系统中的加速度、倾角、震动能量参数的测量。CMOS图像传感器完图像的采集工作,经FPGA图像预处理后于VGA口实时监控,经JPEG编码器将图像进行压缩。采用双核Nios II进行系统控制和图像处理运动目标检测。射频模块完成GPRS无线通信,将图像数据以及监控信息通过GPRS网络发送到监控中心和用户手机。其系统硬件框图如图l所示。

2 系统硬件设计
2.1 异构多核体系
    在设计中,由于有大量的实时图像数据运算,一块CPU的计算速度无法满足要求,甚至出现错误结果,这里采用两块NIOS II构成双核系统,同时设计硬件DSP处理IP作为双核系统的协处理器,共同完成任务。[page]

    Nios II Corel作为主控核,运行UCOS II操作系统,管理所有任务的调度工作,完成汽车传感器的采集、加速度倾角震动的计算、短信彩信的发送等。Nios II Core2作为辅助核,完成采集连续两帧的视频图像,并进行实时运动目标检测算法。双核之间的通信通过Mailbox IP核共享On Chip Memory实现。同时设计Sobel算子边界检测硬件图像预处理模块和JPEG图像压缩IP作为双核系统的协处理器,构成异构多核的嵌入式系统。结构框图如图2所示。由于SDRAM作为视频图像的缓存,这里将Corel运行于SRAM。Core2运行于Flash,读写数据和堆栈存储于SRAM中。


2.2 汽车传感器采集板设计
    汽车传感器信号采集板采用AD公司的加速度传感器ADXL202AQC,用于对汽车的X/Y方向加速度、倾角以及震动值进行测量,传感器采集系统框图如图3所示。ADXL202AQC采用MEMS工艺制作,是一种低价格、低功耗、单芯片集成双轴加速度传感器,3~5.25V单电源供电,工作电流小于6mA,可以测量0~5kHz、±2g范围内的动态或静态加速度,60Hz时分辨率为2mg,可以数字、模拟信号形式输出。


    ADXL202AQC采集双轴加速度值,通过Xout、Yout输出数字量,以和加速度值对应的不同占空比方波输出,将这两路数字信号通过PIO口采集入SOPC系统,通过Timer X、Timer Y定时器计算出精确的加速度值,NiosII Corel对两个加速度值和重力加速度值确定三维空间的加速度倾角值。
    同时通过Xfilt、Yfilt输出加速度的模拟信号量,通过带通滤波器将信号范围控制在10~200Hz,微小的震动量可以通过,经放大、ADC转换通过PIO口采集入SOPC系统,处理器对这些值进行计算,得到震动幅值。
2.3 图像的采集、处理与压缩
    系统的图像采集用Terasic公司的TRDB-D5M摄像头,实际像素2592H×1944V,颜色阵列为RGB(红绿蓝)模式,最大数据传送速度为96MHz时钟下96Mb/s,VGA(640×480)输出帧率可达70f/s,内置12位ADC转换器,3.3V单电源供电,I/O口电压范围1.7~3.1v。完全满足系统要求,系统将摄像头采集的信号经过Soble算子边缘检测预处理,同时通过VGA口实时监控,然后将图像数据送Nios IICore2进行运动目标检测,当监控区域内检测到运动目标后,对图像进行JPEG压缩便于GPRS的数据发送。下面对各模块加以介绍。
2.3.1 Sobel算子边缘检测预处理
    图像边缘往往携带一幅图像的大部分信息,是图像最基本的特征之一。图像边缘检测是图像处理、图像分析、模式识别以及计算机视觉的基本步骤,其结果的正确性和可靠性将直接影响到机器视觉系统对客观事物的理解。本系统采用经典的Sobel算子边缘检测算法,将图像像素的左右、上下领域的灰度加权,根据在边缘点处达到极值这一原理进行边缘检测。该算法处理的数据量大,通过软件程序实现将比较慢,无法满足实时性要求,本系统用Verilog设计硬件模块实现该功能。将CMOS摄像头采集的图像进行预处理,其边缘检测结果送VGA实时监控(如图4所示),同时图像数据交NiosⅡCore2进行计算。设计中需要3×3的像素块和大量乘加运算,这里用到Altem公司的Megafuncation)库,如ALTSHIFT_TABS移位寄存器对三行像素进行缓冲,然后将各条缓冲线送入ALTMULT ADD乘加块。

[page]

2.3.2 运动目标检测模块
    视频图像是三维图像的二维投影,当三维图像发生变化时二维图像也会发生相应的变化,通过对连续帧间的变化进行实时计算,当有运动目标时会引起帧差。系统中采用10级帧差法,可以根据对检测灵敏度的要求设置报警级别,同时对监控区的不同范围采用不同的权值,以提高运动目标的判断准确度。由于实行帧差算法要求很高的实时性,对连续采集的大量图像信号要即时处理,否则影响测试结果,系统中用处理器NIOS II Core2单独完成这份工作。用SDRAM作为摄像头采集的图像信号缓存,这里采用Teraisc公司提供的4 PortsSDRAM Controller-IP核,将CMOS摄像头采集经转换的RGB信号以16位存储于SDRAM中。在SDRAM中存储连续的两帧图像信号,通过4 Ports SDRAM Controller IP的两个输出Port(端口)同时传输给NIOS II Core2处理。其中的一个输出Port再接VGA口。图像存储关系如图5所示。


2.3.3 JPE6图像压缩IP核设计
    为了便于GPRS的图像传输,需要对图像进行压缩,这里采用JPEG压缩标准对图像进行压缩,用Verflog设计JPEG图像压缩DSP模块作为系统的协处理器,并挂接于系统Avalon总线。JPEG标准中压缩算法的步骤包括二维DCT、量化、熵编码等。其编码过程框图如图6所示。


    在设计编码器时先对图像进行分块,对RGB信号进行YCbCr转换,YCbCr信号进行2D-DCT转换并同时进行ZigZag扫描将二维数据转换为系数连续相关的一维数据,根据JPEG组织提供的量化表对数据进行量化压缩,最后对量化结果进行VLC编码和Haffman编码得到压缩结果。其中核心的部分是2D-DCT转换,这里介绍其设计过程:离散余弦变换是一种正交变换,2D-DCT的变换公式如下:

    系统采用矩阵乘法,查找系数表和矩阵转置的方法实现2D-DCT。在设计过程中多次用到Altera提供的Megafuncation库:ALTMULT_ADD乘加运算、LPM_ADD_SUB交替加减运算、ALTSHIFT_TABS移位寄存器等加速设计。这里以《Image and Video CompressionStandard))中给出的测试矩阵RAW作为输入,MATLAB的计算结果和Modelsim的时序仿真结果如图7所示,结果表明误差在l左右,完全满足系统要求。
    图7 2D-DCT_Z的MATLAB计算结果和Modelsim时序仿真结果比较


2.4 GPRS无线通信模块
    GPRS是一种基于GSM的新型移动分组数据承载业务,其最高速率可达到170kb/s。GPRS允许业务用户在端到端分组转移模式下发送和接收数据,而不需要利用电路交换模式的网络资源,能够确保分组模式数据应用的成本效益和网络资源的有效利用。系统通过GPRS无线通信模块发送中文短信和彩信,采用SIMCOM公司的SIM300Z芯片。当系统检测的加速度倾角或震动能量超过所设定的阈值时,将计算值以短信发送给用户。当系统检测到运动目标时,先发送短信提示,随后将压缩的JPG图片以彩信发送到客户端。

[page]

3 系统软件设计
3.1 系统的软件层
    系统的驱动程序都是基于HAL层的方式编写,包括:GPRS通信模块的驱动、检测传感器驱动、DMA驱动、JPEG编码器驱动、CCD控制器驱动。主核NlOS II Corel上运行UC/OS II完成多任务的调度,PPP协议栈完成网络传输功能。所有应用程序在操作系统的管理下工作,包括对检测传感器信号的采集应用程序、GPRS通信功能、图像传感器配置与采集、图像数据处理分析存储等。其软件层图如图8所示。


3.2 UC/OS ll操作系统的多任务设计
    为保证系统软件的实时性,在Nios II Corel上运行UCOSⅡ实时操作系统,同时方便地管理系统多任务运行。这里设计7个任务和两个中断,任务以及中断间的通信通过信号量、邮箱、全局变量等实现。任务及中断间的关系如图9所示。


Taskl:X/Y方向加速度、倾角信号采集计算及判断;
Task2:震动能量信号的采集计算及判断:
Fask3:运动目标检测结果采集;
Task4:X/Y方向加速度、倾角提示短信发送:
Task5:震动能量提示短信发送;
Task6:运动目标检测结果短信发送;
Task7:JPG彩信发送:
ISR1:Nios II Core2发送来检测到运动目标消息;
ISR2:JPEG编码完成:

4 结束语
    本方案通过汽车传感器采集板采集信号,计算出X/Y方向加速度、倾角、震动能量,当超过所设定阈值时通过GPRS无线模块发送信息给客户端。CMOS摄像头D5M完成视频图像的采集,做Sobel算子边缘检测图像预处理,通过VGA实时输出监控。对连续两帧的信号做运动目标检测,当检测到运动异物时以短信提示用户,同时拍摄下此时的照片,对照片进行JPEG图像压缩,进行GPRS彩信发送与客户端。其设计特点为实时性强、误报率低、传输速度快、稳定性好等,具有很好的实用性。

 

 

关键字:异构多核  Nios  Sobel  运动目标检测  JPEG  通用无线分组业务 引用地址:基于异构多核体系的汽车远程监控系统设计

上一篇:汽车12V至正负20V的转换器电路 (音频放大器电源电路)
下一篇:电动汽车走热 超级电容或进入暴力时代

推荐阅读最新更新时间:2024-05-02 21:45

基于NiosⅡ处理器的TFT-LCD图形显示设计
随着工艺技术的发展与市场的需要,超大规模、高速、低功耗的FPGA不断推出,并且被广泛地应用在高速、高密度的数字电路设计领域。SoPC (SystemonaProgrammableChip)是一种基于FPGA的SoC设计方案,它将FPGA及微处理器的核心嵌在同一芯片上,构成一个可编程的SoPC系统框架,具有高度的集成能力,很大程度上减小了产品体积以及外部信号对系统的干扰,大大增加了系统的可靠性、稳定性和灵活性。本文介绍一种基于NiosⅡ软核处理器实现对LCD控制显示图形的方法。在设计中,利用Altera的FPGA的SoPCBuilder定制NiosⅡ软核处理器及其与显示功能相关的“软”硬件模块,来协同实现控制显示的软硬件设计。 1系
[嵌入式]
基于TinySwitch II芯片开关电源的应用设计
TinySwitch II系列产品可广泛用于23W以下小功率、低成本的高效开关电源。例如,IC卡付费电度表中的小型化开关电源模块,手机电池恒压/恒流充电器,电源适配器(Powersupplyadapter),微机、彩电、激光打印机、录像机、摄录像机等高档家用电器中的待机电源(Standbypowersupply),也适用于ISDN及DSL网络终端设备。   使用TinySwitch II便于实现开关电源的优化设计。由于其开关频率提高到132kHz,因此高频变压器允许采用EE13或EF12.6小型化磁芯,并达到很高的电源效率。TinySwitch II具有频率抖动特性,仅用一只电感(在输出功率小于3W或可接受的较低效率时,还可用两个
[电源管理]
基于TinySwitch <font color='red'>II</font>芯片开关电源的应用设计
基于NiosⅡ软核处理器的七段数码管动态显示
SOPC(System On Programmable Chip)技术是美国Altera公司于2000年最早提出的,并同时推出了相应的开发软件Quartus II。SOPC是基于FPGA解决方案的SOC(System On Chip),构成SOPC的方案也有多种。第一种是基于FPGA嵌入IP硬核的SOPC系统,即在FPGA中事先植入嵌入式系统处理器,目前最常用的嵌入式处理器大多采用了含有ARM的32位知识产权处理器核的器件。第二种是基于FPGA嵌入IP软核的SOPC系统,目前最有代表性的软核处理器分别是Altera公司的Nios II核,以及Xilinx公司的MicroBlaze核。第三种是基于HardCopy技术的SOPC系统,
[应用]
μC/OS-II实时内核下的A/D驱动程序设计
摘要:详细分析在μC/OS-II实时内核下驱动程序读取A/D的三种方法;阐述C8051F015单片机的A/D转换器的配置、转换特点及其驱动程序读取A/D采用的方法;针对C8051F015单片机分析A/D驱动程序设计的方法和思想。这些方法和思想为在μC/OS-II下访问其它类型的A/D提供了很好的借鉴。 关键词:μC/OS-II A/D 驱动程序 C8051F015 A/D转换是单片机数据采集系统的重要组成部分,实时内核下A/D驱动程序的实现过程主取决于A/D转换器的转换时间。本文首先比较和分析μC/OS-II下A/D采样数据的三种方法;其次介绍C8051F015单片机A/D模数转换器配置及特点;最后,在μC/OS-II内核移
[嵌入式]
基于NiosII的光栅细分电路系统设计
1 概述   目前,光栅的电子细分技术是提高光栅位移传感器分辨率的主要途径,可分为软件细分法和硬件细分法。软件细分法虽然可以达到较高的细分数,但由于受到A/D器件转换精度和转换时间的限制,一定程度上影响了测量的实时性。硬件细分法一般用在细分数不太高的场合,而且随着细分数的提高,电路会变得更加复杂。本文使用专用插值芯片(IC-NV)对前端输出的正交信号进行插值细分,利用FPGA对插值细分后的信号进行二次细分;同时利用QuartusII中的Component Editor工具设计了二次细分辨向组件、测速组件及LCD控制组件,并通过Avalon总线与NiosII软核处理器进行连接,实现了系统的集成和模块化。 2 莫尔条纹及四倍频直接
[安防电子]
基于<font color='red'>Nios</font>II的光栅细分电路系统设计
uCOS-II在MSP430上的移植1——准备工作
学习uC/OS-II有一段时间了,下了上百兆的资料。网上可以找到很多移植好的工程,参考别人的,稍微修改下,编译调试通过了,用起来始终觉得不是很踏实,毕竟不知道别人修改了哪些地方。静心整理了下思路,决定自己动手,从最原始的文件修改,把uCOS-II移植到MSP430F169上。 一、准备工作 (1)μC/OS-II中文教程.CHM ——《嵌入式实时操作系统uC/OS-II(第2版)邵贝贝译》一书的电子版。也可在网上查找相关的电子文档。作为工具手册,在移植过程中碰到不理解的可以随时查看. (2)μC/OS-II操作系统的源代码,版本为V2.86。 官方下载地址: http://www.micrium.com/pro
[单片机]
ucos-ii学习笔记——信号量的原理及使用
Created on: 2012-10-7 Author: zhang bin 学习笔记 for ucos-ii PC redesigned by zhang bin 2012-10-7 versions :V-0.1 All Rights Reserved #include INCLUDES.h #define TASK_STK_SIZE 512 char *s1= MyTask ; char *s2= YouTask ; INT8U err; //定义一个错误信息 INT8U y=0; OS_EV
[单片机]
基于ARM和μC/OS-II的车载定位终端的设计
  为了达到节省能源、降低排放的目标,电子控制技术在货车、工程车以及农用车的柴油机上得到快速发展和应用。随着机车电控化技术发展,车载定位终端的数据采集交互速度以及运行的稳定性已成为衡量该设备的一个重要指标。为进一步提升车载定位终端的实时性和稳定性,文中设计了一种基于ARM处理器和 C/OS II操作系统的车载定位终端。应用ARM处理器实现数据交互的高速性,应用 C/OS II操作系统解决程序运行的稳定性问题。   1 、车载终端整体结构及功能介绍   车载定位终端主要由CPU(包括S3C44BOX芯片,2MbyteNorFlash和8MByteSDRAM),GPS卫星数据接收电路,GPRS无线数据上传电路和CAN控制器及数据收发模
[单片机]
基于ARM和μC/OS-<font color='red'>II</font>的车载定位终端的设计
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved