《嵌入式智能水文信息采集及网络控制系统》由会员分享,可在线阅读,更多相关《嵌入式智能水文信息采集及网络控制系统(35页珍藏版)》请在金锄头文库上搜索。
1、 设计课题:嵌入式智能水文信息采集及网络控制系统制作人:等前言: 我国水文信息采集系统包括水情信息采集系统、工情信息 采集系统和旱情信息采集系统,它是国家防汛决策系统的基础. 水文信息采集系统主要完成水情、工情、旱情、灾情信息的采 集和报送.其中,水情信息的采集由基层报汛站完成,并负责以数 据通信方式把采集到的原始数据输入水文分站的计算机系统,由 水文分站负责完成数据的预处理,包括话传信息的数据化和形成 传真文件;工情信息的采集由基层防汛部门和工程管理单位负责 完成,并负责以传真、话传和数据通信方式,把采集到信息输入 地市防办的计算机系统,由地市防办负责完成信息的汇集、整理 和话传信息的数据化
2、;旱情信息的采集、报送,除水雨情信息仍由 水情部门负责完成信息的采集和报送外,土壤墒情、地下水动态 等旱情信息,原则上应由县级抗旱部门负责完成管辖区内的信息 收集并报送给地市防汛抗旱部门,由地市防汛抗旱部门负责完成 信息的汇集、整理和输入计算机系统.1.系统需求及技术指标1.1 系统需求 一般水文信息采集系统包括多个水文数据采集站,它承 担的主要任务是实时采集、存储、传输各采集站的水 位、流量、日降水量、水库水位、入库流量、蓄水量等 信息,实现水文信息采集和长期存储的数字化处理,并 将实时采集的数据通过嵌入式控制器经GPRS空中接口 接入无线网络,并由移动服务商转接到Internet,最终 通
3、过各种网关和路由到达统一的数据处理中心工作站, 其功能框图如图所示。1.1系统框图:图 1-1 嵌入式水文信息采集系统框图系统实物图1.2技术要求:要研究和设计的嵌入式控制器需满足以下几个方 面的技术要求:1控制器应具有数字量、模拟量I/O读写功能, 能很好地读取底端的水文信息采集传感器(如流量 计、水位计等)的数据并能控制各执行器动作; 2控制器应具有现场水文信息实时显示、数据查 询的功能;3控制器应具有良好的有线和无线通信的功能, 能将现场采集到的数据发送到服务器;4控制器应具有很好的实时处理能力,将得到的 水文数据进行分析后分组打包,按照设定的协议 将数据传送到数据中心。2. 系统硬件平
4、台总体设计方案通常的嵌入式设备的硬件架构是以嵌入式微处理器为核心 ,通过CPU扩展接口以及平台硬件的支持,把众多的外设 单元集到整个系统中,并通过CPLD等逻辑转换器件和其 它硬件电路完成对外设模块进行读写和控制操作。 本智能终端采用了S3C2410处理器,利用S3C2410出色 的内核性能和丰富的外部接口构造一个嵌入式系统平台, 其硬件框图如图2-2所示。图2-2嵌入式水文信息采集智能终端硬件构架各部份基本功能如下:1处理器采用S3C2410,该芯片基于ARM920T 内核,采用五级流水线 和哈佛结构,提供1.1M IPS/MHz 的性能,是高性能和低功耗的硬宏单 元。2电源电路为5V到3.
5、3V、3.3V到1.8V的DC-DC转换器,给S3C2410及其 他需要3.3V电源的外围电路供电。 3采用12MHz晶振为S3C2410芯片提供系统时钟,通过S3C2410芯片内 部集成的时钟控制逻辑可以产生系统所需的不同频率的时钟信号。4NAND FLASH存储器存放Bootloader、嵌入式操作系统、应用程序和 其它在系统掉电后需要保存的用户数据等。5SDRAM存储器作为系统运行时的主要区域,系统及用户数据、堆栈 均位于SDRAM存储器中。 61OM/1OOM以太网接口为系统提供以太网接入的物理通道,通过该接 口,系统可以10M或1OOMbps的速率接入以太网。 7JTAG接口可对芯片
6、内部的所有部件进行访问,通过该接口可对系统进 行调试、编程等。8系统通过一个RS232串口接一GPRS模块,实现无线数据传输功能。 9系统通过SPI接口扩展IO模块,负责数字量和模拟量的输入输出。图 2-3 嵌入式水文信息采集智能终端核心板原理图图 2-3 嵌入式水文信息采集智能终端核心板原理图2.2.1 核心板硬件设计2.2.1.1 CPU S3C2410功能概述S3C2410是基于ARM920T内核的,最大工作频率能达到203MHz;可支持基本的外设接口,如彩色TFT LCD、USB、IIC、IIS、SPI、UART等,并支持MMC和SD等标准的外部插卡。S3C2410能支持NAND FL
7、ASH启动,具有很高的性价比,另外S3C2410在市场上已有很多成熟的应用,因此作者选用了S3C2410作为基于GPRS的嵌入式水文信息采集智能终端的应用处理器,下面是对S3C2410功能的简要说明:S3C2410芯片是韩国三星电子公司推出的一款基于ARM920T内核的16/32位RISC嵌入式微处理器,作为S3C2410芯片的CPU内核,16/32位ARM920T RISC微处理器采用0.18um CMOS标准单元结构。ARM920T内核由ARM9TDM1存储管理单元(MMU)和高速缓存三部分组成。其中MMU可以管理虚拟内存,高速缓存由独立的16KB地址和16KB数据高速Cache组成。S3
8、C2410芯片集成了一个LCD控制器(支持STN和TFT液晶显示屏)、NAND FL-ASH控制器、SDRAM控制器、3个通道的UART、4个通道的DMA, 4个具有PWM(脉冲宽度调制)功能的计时器和一个内部时钟、8通道的10位ADC。S3C2410还有很多丰富的外部接口,如触摸屏接口、I2C总线接口、I2S总线接口、两个USB主机接口、一个USB设备接口、两个SPI接口、SD接口和MMC卡接口。在时钟方面S3C2410也有突出的特点,该芯片集成了一个具有日历功能的RTC(实时控制)和具有PLL(M-PLL和UPLL)的芯片时钟发生器。MPLL产生主时钟,能够使处理器工作频率最高达到203M
9、Hz。这个工作频率能够使处理器轻松运行WinCE, Linu等操作系统以及进行较为复杂的数据处理。2.2.2.1 电源电路设计在该系统中,需要使用5V和3.3V的直流稳压电源,其中 ,S3C2410及部分外围器件需3.3V电源,另外部分器件 需5V电源,5V直流电源通过DC-DC转换成3.3V,由于 ARM内核需要1.8V的电源,因此需要将3.3V再转换成 1.8V,系统电源电路如图2-6所示:图 2-6 电源电路图图 2-6 电源电路图2.2.2.3 串口电路设计及GPRS模块几乎所有的微控制器和PC都提供串行接口,使用电子工 业协会(EIA)推荐的RS-232-C标准,这是一种很常用的串
10、行数据传输总线标准。要完成最基本的串行通信功能, 实际上只需要RD,TD和GND即可,在本系统中用到 RS232转换芯片MA3232CSA在本系统中,通过RS232接一个GPRS模块,通过GPRS模块把数据 发送到GPRS网中。由于GPRS网与互联网都是基于IP协议的,且是 互相连接的,所以只要主站监控管理中心可以通过任意方式上网,终端数据就可以通过GPRS网络透明地传送到主站监控管理中心。 监控管理中心的查询命令或控制命令也可以通过互联网和GPRS网 发送到GPRS模块中,再由GPRS模块传送给各个终端模块,对它们 进行操作。通过GPRS,终端检测控制部分可以直接访问互联网, 所以在主站管理
11、监控中心并不需要购置GPRS模块,中心只需通过 宽带、ISDN或ADSL上网即可。 本系统采用的是西门子公司的MC35i GPRS模块。这个先进的 GPRS模块接收速率可以达到86.20kbps,发送速率可以达到 21.5kbps,当然最大的数据吞吐量还依赖于GPRS网络的支持,支持 GSM900和GSM1800双频网络14。它为远程测量和监控提供了一 个理想的解决方案,实现了完整的PPP协议及上层TCP/IP协议,可 以通过简单的串口通信实现接入Internet。 GPRS模块电路原理图主要分为三个部份,一部份为MC35i模块接 口(40针),一部份为SIM卡接口电路(8针),还有一部份为串
12、口电路 的设计,整个电路如图2-9所示。图 2-9 GPRS模块电路原理图图 2-9 GPRS模块电路原理图2.2.2.4 SPI接口电路及IO扩展模 块的设计 S3C2410有一个SPI系统,它是一个同步串行外围接口,允许MCU与各种外围设备以串行方式进行通信,可使用SPI来扩展各种接口芯片,这是一种最方便的扩展方法。它的最大优点是只需3-4根数 据和控制线即可扩展各种接口器件。本系统采用SPI扩展IO模块,IO模块的主要功能是扩展DI、DO、AI、AO,通过这些模块实现与下 端的传感器相连,这些传感器如水位计、流量计、雨量计等等,从而实现通过SPI来读取下端传 感器的数据。SPI接口电路使
13、用四个I/O脚,它们是串行时钟SPICLK;主机输入/从机输出数据线SPIMISO;主机输出/从机输入数据线SPIMOSI和低有效的从机选择线nSS_SPI,电路如图2-10所示。图 2-10 SPI接口电路图图 2-10 SPI接口电路图2.2.2.5 TFT LCD接口及触摸屏电 路设计S3C2410内部已经集成了LCD控制器,因此可以很方便地去控制各种类型的LCD屏, 例如STN和TFT屏,S3C2410 LCD控制器的特性。 对于TFT屏的主要特性有16: 支持单色、4级灰度、256色的调色板显示模式; 支持64K和16M色非调色板显示模式; 支持分辩率为640*480,320*240
14、及其它多种规格的LCD。 对于控制TFT屏来说,除了要给它送视频资料(VD23:0)以外,还有以下一些信号 是必不可少的,分别是:VSYNC(VFRAME):帧同步信号;HSYNC(VLINE): 行同步信号;VCLK :像数时钟信号;VDEN(VM):数据有效标志信号。 S3C2410内置1个8信道的10bit模数转换器(ADC),该ADC能以500Ksps的采样速度 将外部的模拟信号转换为10bit分辩率的数字量。同时ADC部分能与CPU的触摸屏控制 器协同工作,完成对触摸屏绝对地址的测量,主要特性有:分辩率:10bit; 相信误差:/- 2LSB; 最大转换速率:500Ksps; 模拟量
15、输入范围:03.3V; 分步/Y坐标测量模式; 自动/Y坐标测量模式; 中断等待模式其LCD接口及触摸屏电路图如图2-11所示。图 2-11 TFT LCD接口及触摸屏电路图图 2-11 TFT LCD接口及触摸屏电路图图 5-1 系统应用软件程序总体框 图图 5-1 系统应用程序总体框图GPRS数据收发模块主要负责数据的收发,即系统的通 信部份。GUI模块是系统的人机界面部份,通过GUI 模块调用其它应用程序来显示和设置整个系统,关于 这一部份将在下一节作详细的分析。应用程序数据采 集模块是用来完成通过IO扩展模块采集各传感器的数 据的,并将数据保存到数据库中以便其他程序调用。 系统还有其它
16、一些应用程序如系统时钟设置、关机、 重启、用户设置等等。3.2 系统驱动程序开发3.2.1 嵌入式Linu驱动程序概述 系统调用是操作系统内核与应用程序之间的接口,设备驱动程序是操作系统内核与硬件之间的接口。设备驱动程序为应用程序屏蔽了硬件的细节,这样在应用程序看来,硬件设备只是一个设备文件,应用程序可以像操作普通文件一样对硬件设备进行操作,对硬件设备进行打开、关闭、读写等操作,它主要完成以下功能:1对设备初始化和释放;2把数据从内核传送到硬件和从硬件读取数据;3读取应用程序传送给设备文件的数据和回送应用程序请求的数据;4检测和处理设备出现的错误。Linu系统支持三种类型的硬件设备:字符设备、块设 备和网络设备。字符设备以字节为单位进行数据处 理,一般不使用缓存技术,如打印机、键盘等;块 设备允许随机访问,而且常常使用缓存技术,如软盘、硬盘、光盘等;网络设备在Linu系统中有专门 的处理,主要是通过BSD套接字进行访问。与字符