基于嵌入式技术的远程战场监控系统
时间:2023-09-29 10:36来源: 作者: 点击: 次600)makesmallpic(this,600,1800);" border=0>
时趋于小型化外围设备是嵌入式系统中用于完成存储、通信、调试、显示等辅助功能的其他部件日前常用的嵌入式外围设备按功能可以分为存储设备(如R、M,SR、M,Flash等)、通信设备( RS- 232接口、SPI接口、以太网接口等)和显示设备(如显示屏等)3类
嵌入式操作系统是从嵌入式系统发展到第3阶段才开始引入的嵌入式操作系统不仅具有通用操作系统的一般功能,如向上提供对用户的接口(如图形界而、库函数API等),向下提供与硬件设备交勺_的接口(硬件驱动程序等),管理复杂的系统资源它还在系统实时性、硬件依赖性、软件固化性和应用专用性等方而具有更加鲜明的特点。
应用软件是针对特定应用领域,基于某一固定的硬件平台,用来达到用户预期日标的计算机软件由于嵌入式系统自身的特点,决定了嵌入式应用软件不仅要求满足准确性、安全性和稳定性等方而的需要,而且还要尽可能地进行代码优化,以减少对系统资源的消耗,降低硬件成本[‘一z}
嵌入式系统具有系统内核小、专用性强、系统比较精简,但嵌入式系统要求操作系统软件的实时性较强,嵌入式软件的开发要求向标准化发展,嵌入式系统的开发需要专门的开发环境和开发工具。
2监控系统硬件结构设计
在硬件设计上,整个监控系统的核心是嵌入式控制器嵌入式控制器是以高速为核心,由高速和其他芯片协同上作来控制的电子设备或装置,能够完成监视、控制等各种自动化处理任务嵌入式控制器的系统硬件结构如图2所示
600)makesmallpic(this,600,1800);" border=0>
电源电压为SV,输出电压分别为3. 3 V和1.8V,每路电源的最大输出电流为750 xnA
2. 2接口电路设计
1)模拟量输入接口模拟量输入通适采用了TI公司生产的TLV2544芯片,当与DSP芯片连接时,可用一个帧同步信号FS来控制一个串行数据帧的开始采用TMS320VC5402提供高速、双向、多通适带缓冲串行端口MCBSP,可用来与串行A/ D转换器直接连接
2)以太网扩展接口实现嵌入式战场的系统,首要的问题就是要让远程监控设备具有以太网接口台湾Realtek公司生产的RTL8019AS以太网接口芯片可以让嵌入式控制器具有通用计算机的网络接口
3) RS- 232串行接口设计RS- 232- C并未定义连接器的物理特性,因此存在DB- 25, DB- 15和DB- 9等多种类型的连接器DSP为了同现场监控设备的串口相连,我们用MAXIM公司的MAX3111来完成EL1到TTL电路之间的电平和逻辑关系的转换
4) RS- 485串行通信接口RS- 485是为了适应远距离、分布式控制系统的需要而制定的一种串行通信总线标准它支持多竹点、远距离传输RS- 485标准采用平衡式发送,差分式接收的数据收发器来驱动总线为了扩展终端连接设备的数量,本设计增加了邵一485接口DSP与RS- 485串口的连接使用MAXIM公司的MAX3140UART通信芯片来完成
2. 3程序存储器的扩展
Flash存储器与EPROM相比,具有更高的性能价格比,而且体积小,功耗低,可电擦写,使用方便,并且3. 3 V的Flash可以直接与DSP芯片连接因此,采用Flash作为程序存储器存储程序和一些固定数据是一种比较好的选择本系统的程序存储器选用了1片AT29LV020 Flash存储器此芯片有256KX8的存储空间,最快读取速度为100 ns所以在读取程序时,要使卞频低于10 MHz
3系统软件设计
根据系统控制要求,将系统软件的模块划分为6个模块:卞控模块、初始化模块、协议封装模块、协议拆包重组模块、网络接口模块和应用层应用模块图4是各模块之间的逻辑关系
600)makesmallpic(this,600,1800);" border=0>
31卞控模块设计
卞控模块中通常包含一些变量的定义和函数的调用另外一些重要的I/ 0端口定义也放在卞控函数中在卞控模块中定义了延时信号函数、端口设置函数、同步串口设置函数、中断服务函数等系统上作时程序从卞控模块的main()函数开始运行,首先是调用DSP及RTL8019AS的初始化程序,完成初始化之后,卞程序以一个无条件循环进入上作状态
3. 2初始化模块设计
系统软件在运行的时候首先要调用初始化程序,对系统的各资源进行初始化,然后才能正常上作初始化模块包括了4个初始化函数,分别是net_ init( ) , dsp5402_ init( ) ,interrupt_ init(),nic_ atl_ init()
3. 3协议封装模块设计
协议封装部分的作用是将数据进行分组,并以不同的协议打包封装使其成为符合TCP/ IP协议规范的分组数据在设计中,对于不同协议的封装,分别由不同的函数实现在本系统中,监控终端系统需要对位于网络层的IP协议、位于传输层的TCP协议进行封装封装顺序是先传输层协议TCP封装,后网络层协议IP封装之后传入网络接口模块发送出去
3. 4协议拆包重组模块设计
本模块的上作过程是这样的,数据从以太网上被接收下来之后,首先会放在网卡芯片的内存当中,由DSP即网络接口模块将其读入后进行协议分解,根据协议的内容进行相应处理,如果是UDP封装的数据则将其放入系统的接收缓冲区由DSP根据协议中序列号字段的值对数据包重新分组排队,然后将数据拆包、合并,形成连续的数据流,传送到应用层作进一步处理
4嵌入式TCP/ IP协议栈设计
嵌入式设备实现网络勺_联,一般都需要在嵌入式设备上实现以太网通信的有关协议,其中一个重要问题就是如何实现嵌入式TCP/ IP协议栈日前使用)‘一泛的TCP/ IP协议栈有LWIP .uIP Z,inux IP等,这些协议栈具有一定的通用}h},包含的协议内容比较全,也比较复杂为了满足军用嵌入式系统接入网络的要求,需要进行嵌入式TCP/ IP协议的精简工作。
军用嵌入式系统接入网络要求数据传输能够保持安全稳定,这里卞要考虑数据传输的情况为确保正常的数据传输,嵌入式TCP/ IP协议族应至少包括IP .ICMP .ARP .TCP .UDP等基本协议,协议栈的结构如图5所示
通过研究和具体编程,在Keil C laVision2开发环境下实现了一个简单的嵌入式TCP/ IP协议栈,各协议的基本实现过程如下
4. 1 IP协议的实现
IP协议是TCP/ IP协议族中最为核心的协议IP报头的标准长度为20字竹,标准以太网帧数据域为1 500字节,除去IP头之外还有1 480字竹可以为上层协议提供有效就数据载荷IP协议将上一层传下来的报文加上IP首部和II校验合并发往下一层,并且对下一层传上来的报文进行校验和检查,将校验正确的去掉IP首部,送往上一层一般可以不考虑数据报分段的问题,即不允许数据报超出IP包就有效载荷,这样简化可以省去软件处理IP数据分段和重组的开销,可以提高系统数据传输的实时性[a{为了便于ihi试,需要实现PING程序,在收到I(1VIP的回显请求包后拉照格式组装一个ICMP的回显应答包并发送相关的、函数有:
600)makesmallpic(this,600,1800);" border=0>
4. 3 UDP协议的实现
UDP的数据传输是无连接的、不可靠的,具有对网络资源开销较小、数据处理速度快的优点U DP协议属于简单端到端的数据传输协议,报头只有8字y具体实现时要对应用层传下来的数据包加上U DP首部和UDP校验发往下一层,对下一层传上来的数据包进行校验和检查,如果正确则去掉U DP首部,提出数据送给应用层需注意的是要产生一个伪首部用于U DP数据检验和计算涉及的卞要函数有:
600)makesmallpic(this,600,1800);" border=0>
600)makesmallpic(this,600,1800);" border=0>
5结束语
阐明了嵌入式控制器的硬件和软件的设计和实现过程,包括微系统硬件设计和实现、监控设备的接口模块实现TCP/ IP协议栈的精简和实现等嵌入式远程战场监控系统的成功实现将有很大实际应用价值它不仅可以用于战场环境的远程监控,而且可应用于边防哨所等无人值守的地方,可以有效降低对人力物力的需求,增强对人员安全的保障。