军用雷达车状态监测的硬件设计毕业论文
2020-04-08 12:38:57
摘 要
随着各国国防力量的不断进步,现代军事已经由机械化战争转变为机械化与信息化的综合战争。而高技术武器装备是现代信息化军队战斗力生成的重要物质基础,是任何一支强大军队不可忽视的因素。车辆是前线战场和后勤保障的重要装备,车辆智能化是未来军用车辆发展的一个重要方向,它对执行多样化军事任务具有巨大的应用价值,发挥着不可替代的作用。为了有效提高作战效率,本文使用了一种以ARM9处理器和Linux操作系统为软硬件平台,结合USB图像视频采集,LCD显示等多模块设计,完成对雷达车工作状态的监测。并在最后对该嵌入式系统的应用前景进行了分析和总结。
关键词:雷达 嵌入式 Linux
Abstract
With the continuous progress of national defense forces,modern military has changed from mechanized war to mechanized and information-based comprehensive war.High-tech weapon equipment is the important material basis for the formation of modern information-based military combat capability,and it is a factor that cannot be ignored by any strong army.Vehicles is the frontline battlefield and the importance of logistics equipment,intelligent vehicle is an important direction in the development of future military vehicles,it to perform multiple military tasks has great application value and play an irreplaceable role.In order to improve the operational efficiency, this thesis uses a on ARM9 processor and Linux operating system software and hardware platform, combined with USB video image acquisition,LCD display module design,complete the radar monitoring the status of the car.Finally,the application prospect of the embedded system is analyzed and summarized.
Key words: Radar Embedded Linux
目录
第1章 绪论 1
1.1 课题来源及意义 1
1.2 国内外发展现状 1
1.3 本文主要内容及章节安排 1
第2章 相关技术介绍 3
2.1 嵌入式系统 3
2.1.1 嵌入式系统的概念 3
2.1.2 嵌入式系统的特点 3
2.1.3 嵌入式处理器和ARM 3
2.2 Linux操作系统 4
2.3 基于USB的视频捕获技术 5
2.4 X波段测波雷达电磁辐射测量方法 8
2.4.1 峰值功率与平均功率 8
2.4.2 频谱仪测量值与功率密度 8
第3章 系统硬件设计 9
3.1 信号调理电路 9
3.2 视频监测系统硬件结构 10
3.3 S3C2440处理器 11
3.4 系统的硬件电路设计 11
3.4.1 主控器设计 11
3.4.2 电源电路 11
3.4.3 复位电路 12
3.4.4 时钟电路 13
3.4.5 存储器电路 13
3.5 硬件测试 14
第4章 软件设计 16
4.1 总体设计 16
4.2 图像的采集与播放 16
4.2.1 USB摄像头的组成 17
4.2.2 USB主机控制器驱动程序移植流程 17
4.2.3 USB摄像头设备驱动的开发 17
4.2.4 LCD驱动程序设计 21
4.3 软件调试 22
第5章 总结 23
参考文献 24
致谢 25
绪论
课题来源及意义
根据现代战争的突然性、立体性和区域不确定性,攻击和防御的界限变得模糊,战争的方向是多变的,战争形态是复杂的,因此对武器装备提出了新的要求。这些要求是:一要提高远程攻击跨区域作战能力;二要提高精确制导和精确打击能力;三要提高野战环境的适应能力;四要提高机动能力;五要提高联合作战能力;这五种能力都与雷达技术性能息息相关[1]。而雷达车将原本各自为战的武器整合为一个网络,该系统能延长预警时间并优化火力分配,从而显著提升防空作战的效率。为了有效的提高全军的作战效率,需要对军用雷达车进行工作状态的监测。
国内外发展现状
早在18世纪时,雷达(又称“无线电定位”)就首先在军事领域上被运用,主要用于探测目标并测定目标的空间位置。并且随着科技的不断发展,雷达几乎被运用在大多顶级的军用设备、航空航天设备上,如战斗机、地面导弹、潜艇、火箭,在这些设备上,雷达的重要程度相当于我们的“眼睛”。
近年来,随着国防监督渗透和边境冲突的增加,发展中国家的军事支出继续增加,同时恐怖主义和跨国冲突也越来越频繁,这些都是军事雷达市场扩张的主要动因。军事雷达市场由北美主导。
50年来,我国已研制、生产了几百个型号几万部各种陆、海、空军用和军民两用雷达,初步建立了国土防空雷达情报网、航天测量控制网、对海雷达情报网、防空高炮及地空导弹电子系统、雷达敌我识别系统以及气象雷达探测网等。为导弹、卫星等尖端武器和飞机、舰艇、坦克等常规武器配套研制了各种雷达。跟踪国外雷达先进技术的发展,突破了一个个关键技术,研制出新型雷达以满足国防和民用的需要。现还对雷达的“三超”、“四抗”技术积极开展研究,有的已取得明显成果。80年代以后,已有数十种雷达出口,显示了我国雷达技术和雷达工业已接近了世界先进行列。
1.3 本文主要内容及章节安排
本次设计的主要研究内容是,设计合适的嵌入式硬件电路来实现军用雷达车的状态监测。主要分为三个部分,基于雷达工作电流的雷达状态监测、基于图像或视频的道路信息监测以及x波段雷达辐射监测。
本文主要章节安排如下:
(1)第1章绪论部分介绍课题的研究背景及发展现状,提出研究内容。
(2)第2章介绍了系统涉及的技术。
(3)第3章介绍了系统的硬件设计。
(4)第4章介绍了系统的软件设计。
(5)第5章对已完成的系统设计做出总结,并对未来发展提出新的展望。
相关技术介绍
本文主要有三个方面的研究内容,首先是雷达工作状态监测,其次是基于图像或视频的车周围信息监测,最后是x波段的辐射监测。其中车周围信息监测使用了基于嵌入式的USB摄像头进行图像和视频的采集,也是本次设计的主要内容。
2.1 嵌入式系统
2.1.1 嵌入式系统的概念
嵌入式系统(Embedded system)是一种特殊的计算机系统,它被设计成完全嵌入在受控设备中,并为特定的应用而设计[2]。根据英国电气工程师协会(U.K. Institution of Electrical Engineer)的定义,嵌入式系统是工厂运行中使用的控制、监视或辅助设备、机器或设备。与一般的计算机系统(如个人计算机)不同,嵌入式系统通常执行具有特定要求的预定义任务。由于嵌入式系统只针对特定的任务,设计者可以对其进行优化,缩小尺寸,降低成本。嵌入式系统通常进行大规模生产,因此个别的成本节约可以被放大数十万倍的输出。
2.1.2 嵌入式系统的特点
嵌入式设备通常在“特定”的情况下使用,并且具有与“通用”个人计算机相比的以下特征:
(1)软件、硬件可剪裁。
功能、成本、开发效率等条件决定了嵌入式设备选择的多样性,软件、硬件可剪裁,也就是说,当不需要某功能时,可以删除相关的软件和硬件。
(2)对功能、可靠性、成本、体积、功耗严格要求。
功能、可靠性和功耗3个方面是软件开发人员最关心的问题。一个优秀的嵌入式系统已经对硬件系统进行了改进,并对软件进行了调整。有时要花很多时间只是为了几秒钟的启动时间。
2.1.3 嵌入式处理器和ARM
嵌入式处理器有很多种,如ARM、MIPS、PPC等。ARM处理器文档丰富,大多数嵌入式软件(通常首选)支持ARM处理器。
ARM(Advanced RISC Machine)可以被看作是一个公司的名称,或者作为一类微处理器的通用名称,并且可以被看作是技术的名称。ARM是32位嵌入式RISC微处理器技术的领导者。自1990成立以来,基于ARM技术的IP核微处理器销售已超过100亿。
基于ARM的处理器以其高速、低功耗、低价格等优点得到了广泛的应用。可应用于以下领域:
- 为无线通信、消费电子、成像设备等产品提供可运行复杂操作系统的开放应用平台;
- 在海量存储、汽车电子、工业控制和网络应用等领域提供实时嵌入式应用;
- 安全系统,比如信用卡、SIM卡等。
目前ARM微处理器主要有ARM7、ARM9、ARM9E、ARML0E、SururCar、Stand ARM和XStand,其中ARM7、ARM9、ARM9E和ARML0E是4种通用处理器,除了该体系结构的共同特点外,还有自己的特点和应用领域。
ARM7系列处理器是一种低功耗的32位RISC微处理器,主要用于对成本和功耗敏感的产品。最大可达到130MIPS,支持Thumb16位指令集和ARM32位指令集。ARM7系列处理器没有内存管理单元(MMU)。
与ARM7系列相比,ARM9最大的区别是MMU和Cache。与ARM7相比,其指令执行效率大大提高,达到300MIPS。ARM9系列微处理器有ARM920T和ARM922T两种类型,在本系统的设计中选用ARM920T。
2.2 Linux操作系统
Linux是一个自由和自由扩展的UNIX操作系统,一个基于POSIX和UNIX的多用户、多任务、多线程、多CPU的操作系统。它可以运行主要的UNIX工具、应用程序和网络协议。它支持32位和64位硬件。Linux继承了基于网络的UNIX的设计思想,是一个稳定的多用户网络操作系统。
由于Linux是开源的、易于移植、资源丰富、自由等优点,在嵌入式系统领域已经越来越流行。更重要的是,由于嵌入式Linux和PC Linux源于同一套内核代码,只有裁剪的程度不同。这使得许多PC机开发的软件可以重新编译,并可以直接在嵌入式设备上运行,这使得软件资源丰富。
2.3 基于USB的视频捕获技术
USB摄像头使用方便、灵活、价格低廉、性能优良,因此得到了广泛的应用,在雷达监测系统上的USB摄像头主要是提供实时图像、图像信息的采集工具。摄像机可以通过提取车道线来检测车道上的环境,但这种检测由于受光照等因素的限制,只能探测较近距离。雷达可以发现远处的物体,但不能探测车道条件。
Linux内核包含各种USB摄像头驱动程序,最常见的是基于OR511及其兼容芯片。OR511芯片主要包括摄像机接口、DRMA接口、ISOFIFO接口、OMGNES和USB控制器。本设计采用核心公司生产的ZC030X系列相机芯片,在低端市场占有较高的市场份额。Linux系统中的视频子系统Video4linux为视频应用提供了一套统一的API,视频应用程序可以通过调用API来操作各种不同的视频捕获设备,包括电视卡、视频捕获卡和USB摄像机。
(1)摄像头驱动的实现
在终端使用make menuconfig命令打开S3C24401inux内核编译的main menu窗口,并进入“multimedia device”菜单选项,然后将Video for Linux配置为模块,即:
Device driver—Multimedia devices—lt;*gt;Video for linux
返回主菜单,在进入“USB support"菜单选项,然后将USB OV51l camera support设置为模块,即:
SUB suppor一gt;
lt;*gt;USB OV511 camera support
执行以下命令安装视频输入模块:
insmod videodev.o
执行以下命令安装视频输入设备驱动模块:
insmod usbcore.o
insmod usb-ohci-S3C2440.ko
insmod ov511.o
由于该设备是USB接口摄像头,在加载ov511.o模块之前需要USB内核驱动程序和主机控制器驱动程序。
(2)利用Video4linux实现图像采集
安装图像采集设备驱动程序后,只需编译一个视频采集应用程序即可采集视频图像。在Linux系统中,视频文件是设备文件,它可以像普通文件一样被读取和写入。相机文件通常是/dev/v41/video。在进行视频捕获之前,我们需要做一些必要的设置工作[3]。这些设置涉及到如下结构:
Struct video_picture
{
_u16 brightness;//亮度
_u16 hue;
_u16 Colour;
_u16 contrast;//对比度
_u16 whiteness;//黑色和白色
_u16 depth;//颜色深度
_u16 palette;//调色板
};
Struct video_windowr
{
_u32 x,y;//窗体位置
_u32 width,height;//窗体尺寸
_u32 chromakey;
_u32 flags;
Struct video_clip_user*clips;
Int clipeount:
define VIDEO_WINDOW_INTERLACE 1
define VIDEO_WINDOW_CHROMAKEY 16
define VIDEO_CLIP_BITMAP_1
define VIDEO_CLIPMAP_SIZE(128*625)
};
Struct video_capture
{
_u32 x,y;//图像偏移
_u32 width,height;//捕捉区域
_u16 decimation;//采集间隔
_u16 flags;//采集标志
define VIDEO_CAPTUREI_ODD 0
define VIDEO_CAPTURE_EVEN 1
};
V4L下的视频捕获编程必须首先打开视频设备:
Int fd=open(“/dev/v4l/Video”,O_RDONLY);
If (fdlt;0)
return-1;
然后设置摄像机参数。通常,首先通过I/O控制命令读取设备信息,然后修改特定项目。最后,将I/O控制命令保存到内核。
在获得基本信息之后,可以输出显示,也可以通过ioctl系统调用对这些值进行修改。然后调用函数Char*Carmera_get_image(video_device*vd)获得图像数据指针。这一功能更为重要,与图像采集的效率有关。获取图像数据的方法有两种:一种是通过映射驱动视频的数据缓冲器,然后在映射后直接读取缓冲器;二是直接读取设备,调用read函数。下面分别介绍:
(1)read系统调用方式比较简单,只需将前面得到摄像头参数传入read函数中,得到图像数据指针picture_p后返回即可:read(vd一gt;fd,picture_p,width,hight);其中vd一gt;fd为设备文件描述符。
(2)利用map方式先使用ioctl(fd,VIDIOCGMBUF,amp;grab_vm)函数获得摄像头存储缓冲区的帧信息,之后修改voideo_mmap中的设置,例如重新设置图像帧的垂直及水平分辨率、彩色显示格式,使用如下语句:
grab_buf.height=240;
grab_buf.width=320;
grab_buf.format=VIDEO_PALETTE_RGB24;
然后将对应于相机的设备文件映射到存储器区域,具体使grab_data=(unsignedchar*)map(0,grab_vm.size,PROT_READ|PROT_WRITE,MAP _SHARED,grab_fd,0)操作。这样,设备文件的内容被映射到可读和可写的存储器区域,并且可以在不同的进程之间共享。函数在成功时返回指向图像数据的指针,当它失败时,返回值为-1。
2.4 X波段测波雷达电磁辐射测量方法
在电磁辐射测量中,功率密度通常用来测量电磁辐射的强度。功率密度是描述每单位面积电磁波能量的物理量。这是无线电测量的一个重要参数。
2.4.1 峰值功率与平均功率
根据雷达原理,雷达发射机的输出功率可分为峰值功率和平均功率,二者关系为: (2.1)
式(2.1)中,表示脉冲宽度;T表示脉冲重复周期。对于x波段雷达信号其脉冲宽度为,脉冲重复周期为,将上式以分贝(dB)形式表示:
(2.2)