毕业设计(论文)-基于TCPIP的机房多点告警传输与控制系统.doc

上传人:wj 文档编号:4853754 上传时间:2023-05-07 格式:DOC 页数:13 大小:146KB
下载 相关 举报
毕业设计(论文)-基于TCPIP的机房多点告警传输与控制系统.doc_第1页
第1页 / 共13页
毕业设计(论文)-基于TCPIP的机房多点告警传输与控制系统.doc_第2页
第2页 / 共13页
毕业设计(论文)-基于TCPIP的机房多点告警传输与控制系统.doc_第3页
第3页 / 共13页
毕业设计(论文)-基于TCPIP的机房多点告警传输与控制系统.doc_第4页
第4页 / 共13页
毕业设计(论文)-基于TCPIP的机房多点告警传输与控制系统.doc_第5页
第5页 / 共13页
毕业设计(论文)-基于TCPIP的机房多点告警传输与控制系统.doc_第6页
第6页 / 共13页
毕业设计(论文)-基于TCPIP的机房多点告警传输与控制系统.doc_第7页
第7页 / 共13页
毕业设计(论文)-基于TCPIP的机房多点告警传输与控制系统.doc_第8页
第8页 / 共13页
毕业设计(论文)-基于TCPIP的机房多点告警传输与控制系统.doc_第9页
第9页 / 共13页
毕业设计(论文)-基于TCPIP的机房多点告警传输与控制系统.doc_第10页
第10页 / 共13页
毕业设计(论文)-基于TCPIP的机房多点告警传输与控制系统.doc_第11页
第11页 / 共13页
毕业设计(论文)-基于TCPIP的机房多点告警传输与控制系统.doc_第12页
第12页 / 共13页
毕业设计(论文)-基于TCPIP的机房多点告警传输与控制系统.doc_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

毕业设计(论文)-基于TCPIP的机房多点告警传输与控制系统.doc

《毕业设计(论文)-基于TCPIP的机房多点告警传输与控制系统.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)-基于TCPIP的机房多点告警传输与控制系统.doc(13页珍藏版)》请在冰点文库上搜索。

毕业设计(论文)-基于TCPIP的机房多点告警传输与控制系统.doc

毕业设计

基于TCP/IP的机房多点告警传输与控制系统——告警数据的采集及网络传输的实现

学院通信工程学生姓名指导教师

摘要随着嵌入式系统的广泛应用,赋予嵌入式系统Internet网络接入功能已经成为一种需要,也是嵌入式应用领域的研究热点之一。

本课题用应用最广泛的MCS-51系列单片机作为嵌入式系统的核心,自行设计和开发了一套适合该类嵌入式系统的精简TCP/IP协议栈,实现了低成本嵌入式系统的Internet接入。

基于该系统,设计了一套完整、灵活、可扩展性强的机房监控设备。

该设备适用于各种无人机房的远程监控,实现了远程监控的网络化。

[关键词]单片机RTL8019AS精简TCP/IPC51

ABSTRACTWiththewidespreadapplicationoftheembeddedsystems,endowingtheembeddedsystemswithnetwork-accessfunctionhasbecomenecessaryandoneoftheresearchfocusofembeddedsystemapplicationfield.ThispaperdesignsatinyTCP/IPstackssuitableforembeddedsystemswiththewidelyusedMCS-51seriesMCUasitsCPU,whichmakesthelow-costembeddedsystemsaccessingtheInternetcometrue.Acompleteremote-supervisedevicehasbeendesignedusingthisembeddedsystem.Itisanintegrated,flexibleandwellexpandabledevicethatcanbeusedinvariousnon-personmachineroom,realizingthenetworkforremotesupervision.

Keyword:

MCURTL8019ASTinyTCP/IPC51

1、系统总体概述

系统分为硬件设计和软件编程两个部分。

其中,硬件部分包括三个功能模块:

数据采集模块、汇集器模块和网络通信模块。

三个模块各负其责但又协调统一,共同完成告警数据的采集、汇集及网络传输。

图1给出了总体结构示意图。

软件部分包括各功能模块的控制程序及精简TCP/IP协议栈的开发。

整套系统具有多路数据采集,多路数据汇集以及网络TCP、UDP传输的功能;并且成本低,局域网传输稳定可靠。

采集器1

采集器2

采集器8

……

数据汇集器

网络通信模块

Internet

图1总体结构图

监控中心

2、数据采集模块的设计

此模块的设计分为两个部分:

数据采集卡和母板控制器。

两者之间用DB37接口连接。

数据采集卡负责采集数据,母板控制器负责数据的处理和传输。

其中,数据采集卡前端使用光电偶合器,将设备的地信号和本系统的地信号分开,以免影响系统的稳定工作且起保护作用。

母板的设计采用了8个LS244芯片作缓冲器,使用单片机的P2口进行片选,通过轮询的方式采集数据,并由单片机处理,形成自定义串行通信协议的数据帧格式,然后将该数据帧以RS232通信方式发送给下一级汇集器模块。

为了此模块具有灵活性和通用性,在设计时加入了3位的拨码开关,连接到单片机的P0口,可以通过设定开关的不同状态来区分不同的设备以及使用采集卡的数量,方便用户。

硬件总体结构如下图所示:

数据线

控制线

片选

片选

片选

多路数据采集

缓存器0

缓存器1

缓存器7

AT89C52

串口通信

拨码开关

P0口

MAX232

图2数据采集模块总体硬件结构图

数据采集模块程序的编写,采用汇编语言,简单且运行效率高,程序的总体流程图如下:

开始

初始化

1分钟定时?

读取开关状态

比较数据

N

轮询采集卡

是否有变化?

刷新发送数据

计算校验和

形成数据帧

发送

Y

N

接受数据

根据不同数据做出相应动作

中断入口

中断返回

图3采集模块的软件总体流程图

3、汇集器模块的设计

多路汇集模块的主要功能是将多路(最多八路)串口过来的告警数据,汇集成一路数据,发送给网络通信模块;或是将网络通信模块过来的控制数据准确的分路给各个串口,实现双向通信。

自定义的通信协议,除了很好的识别各路告警数据外,还具有线路自检功能,监控中心可根据数据帧中内容,知道各模块之间的连接是否正常,各数据采集卡的工作状态是否正常等,大大增强了整个系统的可靠性。

硬件设计上采用了77E58单片机控制两片TL16C554四串口异步通信芯片来完成该模块数据汇集的功能。

总体结构及接口如下图:

TL16C554

串口1

串口2

串口3

串口4

控制总线

77E58

通信口

P0口

地址锁存器

74LS573

P2口

3-8译码器发

地址总线

数据总线

读/写

RD/WR

P3.5

复位

MAX

232

MAX

232

MAX

232

MAX

232

数据采集模块1

数据采集模块2

数据采集模块3

数据采集模块4

MAX

232

网络通模块

图4汇集器模块的硬件结构及接口

此处使用77E58单片机是因为其内部有1K的SRAM可以用来暂存各路的数据,从而就不必外挂RAM,简化了硬件结构。

控制程序的主要思路是采用寄存器查询方式进行数据收发,然后根据通信协议对数据进行相应处理,并配合定时器来达到线路的自检功能,流程图如下:

开始

77E58的初始化

各路串口的初始化

是否有数据?

接受并校验数据

处理数据

发送至网络通信模块

Y

N

无误

错误

复位定时器

定时中断

2分钟定时到?

发送失效信息

中断返回

N

Y

复位定时器

串口中断

发送中断?

发送下一数据?

发送完成?

接受数据

分析数据并分

路给指定串口

中断返回

N

Y

Y

N

图5汇集模块软件总体流程图

4、网络通信模块的设计

网络通信模块是本系统设计的重点也是难点所在。

主要功能是实现数据的网络传输。

主要包括对数据进行TCP/IP的打包或解包以及对网络控制器的控制与操作。

设计中,为了降低系统成本,采用的是8位微处理器AT89C55WD单片机和10M以太网络控制器RTL8019AS。

4.1硬件的设计

网络通信模块大致可以分为四个部分:

主CPU、存贮器(包括IS62C25632K的RAM和24C02I2C总线的EEPROM)、网络控制器RTL8019AS和串口通信部分。

各个部分在单片机AT89C55WD的协调控制下,各尽所能,共同完成网络通信的任务。

总体逻辑结构如图6所示。

地址锁存器

P0.0~P0.7

数据总线

P2.0~P2.6

地址总线

P2.7

片选

读/写

RD/WR

62256

AT89C55WD

RTL8019AS

P3.5

隔离变压器

数据总线

地址总线

复位

读/写

网络通信口

网络

接口

MAX232

通信串口

汇集器模块

网络

图6网络通信模块的硬件结构和接口

24C02

P1.6~P1.7

EEPROM

其中,设计的重点是网络控制器RTL8019AS的硬件设置和与单片机的接口设计。

RTL8019AS的硬件设置包括三个内容:

工作模式的设定、I/O基址与数据总线模式的设置以及网络接口的设置,这些硬件设置都是网络控制器正常工作的前提。

针对本课题所应用8位单片机为主CPU,对RTL8019AS进行相应的硬件设置。

方法如下:

工作模式设定为跳线方式,将管脚JP(第65脚)通过10K电阻上拉接VCC即可;I/O基址设定为300H,故需将引脚IOS3、IOS2、IOS1、IOS0悬空(RTL8019AS中,管脚悬空相当于接低电平,因为内部有下拉电阻);数据总线模式为8位模式,相应管脚第96脚IOCS16接低电平;网络接口设置为自检方式,将引脚PL0、PL1(第74、77脚)悬空即可。

AT89C55WD单片机对RTL8019AS进行读写和控制操作,是通过设计两者之间的接口实现的,这也是硬件设计的重点内容。

接口设计主要包括:

数据和地址总线、读写线和复位线的接口设计。

如总体结构图6所示,RT8019AS的读写线,连接到单片机对应的读写线(RD和WR);第33脚复位引脚RESDRV与单片机的P3.5相连,通过控制P3.5的输出来达到复位RT8019AS的目的。

根据前面的设置,RTL8019AS采用了8位的数据总线模式,故将起低8位数据总线接单片机的P0端口。

RTL8019AS共有20根地址线,为SA0~SA19,可寻址的输入输出地址共32个,地址偏移量为00H-1FH,根据前述设置,RTL8019AS的基址定为300H,所以寻址的地址为:

300H~31FH。

从地址对应表1中可以看出,地址线的SA19-SA5都是固定的值000000000011000,因此设计中将SA5-SA7和SA10-SA19都接地,而将SA0-SA4接到单片机P2端口的P2.0~P2.4,将SA8、SA9接P2口的P2.7。

表1地址对应表

SA19~SA10

SA9

SA8

SA7

SA6

SA5

SA4

SA3

SA2

SA1

SA0

300H

0

1

1

0

0

0

0

0

0

0

0

0

1

1

0

0

0

X

X

X

X

X

31FH

0

1

1

0

0

0

1

1

1

1

1

上述设计表明,当单片机外部寻址0x8000时,即可寻址到以太网控制偏移量为0的基址0x300,这也是以太网控制器的命令寄存器的访问地址。

由此,完成了单片机与RTL8019AS的接口设计。

存储器部分可以分成两块:

一块是32K的外挂RAM62256,用于存放数帧、协议参数等信息,与单片机之间采用并行总线方式接口。

另一块是EEPROM24C02,用于上电复位时,初始化系统参数。

采用的IIC总线是一种串行模式,通过软件模拟实现的。

4.2软件的设计

网络通信模块的软件程序主要由下面几个部分组成:

网络控制器的驱动程序、精简的嵌入式TCP/IP协议栈、串口驱动、中断服务程序和IIC驱动以及应用函数。

其中设计的重点和难点是网络控制器RTL8019AS的驱动和精简的嵌入式TCP/IP协议栈的实现。

(1)RTL8019AS的驱动

RTL8019AS的驱动过程包括四个步骤,分别为复位操作、内部寄存器的初始化、接收数据包服务程序的设计和发送数据包服务程序的设计。

其中,复位操作是对RTL8019AS的复位引脚RSTDRV(此处连到了单片机的P3.5脚上),施加一个1us以上的高电平就可以复位;然后初始化内部寄存器,根据设计的工作方式,参照使用手册对其必要的寄存器进行配置,使RTL8019AS能按照所要求的工作。

接下来就是RTL8019AS的两个主要功能,即数据的接收和发送。

首先,读取内部的寄存器BNRY和CURR,一个是指向最后一个已经读取的页的读指针,另一个指向当前正在写的页的下一页的指针,通过判断两个寄存器之间的关系可以判断是否有新的数据包,当CURR≠BNRY+1时,说明有新的数据包,这时,程序就开始接收所收到且暂存于缓冲区中的数据。

与接收相比,数据的发送过程相对简单,将待发送的数据,通过远程DMA通道送到RTL8019AS中的发送缓存区,然后发出传送命令,完成帧的发送。

(2)精简TCP/IP协议栈的实现

考虑到我们要在嵌入式系统中实现TCP/IP协议栈,且主要是应用于远程监控等领域,其特点是数据流量较小,但可靠性要求比较高。

针对这样的需求,对TCP/IP协议栈进行一定的裁减,只实现必要的一些协议即可。

本设计中,精简的TCP/IP协议栈主要实现了6个基本协议的主要部分,包括ETH、ARP、ICMP、IP、UDP和TCP。

其中,以太网协议(ETH)负责网络接口数据帧的收发以及向上层提供服务;ARP协议实现IP地址和以太网物理地址之间的转换;ping程序用来检测服务器是否可达;IP协议、TCP协议、UDP协议负责为数据传输提供服务;TCP协议和UDP协议均为运输层协议,但是它们分别具有不同的特点,适用于不同的场合。

所有程序用C51语言编程实现,并采用Keil公司的KeilC51编译器进行编译。

下面给出精简的TCP/IP协议栈的工作流程:

总体初始化

有无串口告警数据?

有无网络数据包?

ARP包?

本地IP包?

是TCP包、UDP包、还是ICMP包?

处理TCP包发生

处理UDP包发生

处理ICMP包发生

处理ARP包发生

TCP发送还是UDP发送

TCP处理

UDP处理

丢弃该包

Y

Y

Y

Y

N

网络发送

N

N

N

图7TCP/IP的总体流程图

此外,网络通信模块的主程序——这里我们其为“守护程序”,顾名思义做的是“值班员”的工作。

它的主要工作就是查询RTL8019AS是否有数据到达;查询事件状态字是否有相应事件发生,如果有则转到相应的处理程序进行处理。

主程序以事件触发方式为主要设计思路。

下面给出网络通信模块总体的软件运行流程图:

开始

初始化

读取24C02配置参数

驱动8019

查询网络是否有数据包到达

重新配置8019

串口中断

接受数据?

发送数据?

Y

Y

N

N

接受并且分析数据

发送

中断返回

定时中断

ARP地址超时?

ARP重传超时?

TCP重传超时?

Y

Y

N

N

N

Y

中断返回

标记事件

标记事件

标记事件

告警数据?

配置数据?

标记发送事件

标记配置事件

Y

Y

N

N

接受数据事件?

ARP高速缓存事件?

ARP超时重传事件?

TCP超时重传事件?

N

Y

Y

Y

Y

N

N

N

发送数据事件?

8019重配置事件?

N

Y

Y

接受并处理

接受并处理

接受并处理

处理并发送

接受并处理

删超时地址

处理并发送

接受并处理

重传处理

重传处理

N

图8网络通信模块软件总体流程图

其中事件状态字定义如下:

#defineEVENT_ETH_ARRIVED0x01//有网络数据包到达

#defineEVENT_AGE_ARP_CACHE0x02//ARP高速缓存事件

#defineEVENT_ARP_RESEND0x04//ARP重传事件

#defineEVENT_TCP_RESEND0x08//TCP重传事件

#defineEVENT_DATA_SEND0x10//网络数据发送事件

#defineEVENT_CONFIG 0x20//RTL8019AS配置事件

5、结束语

本课题对局域网环境下TCP/IP的嵌入式应用进行了较为深入分析和研究,讨论了在这种特定条件下的系统整体的设计与实现方案,重点包括对以太网控制器RTL8019AS的配置和操作,链路层上以太网数据帧的收发以及精简TCP/IP协议栈的开发等,并最终完成了由低成本的51系列单片机构成了嵌入式系统的Internet接入,而且应用此设计的远程监控系统,经局域网实验测试,运行稳定,传输可靠,平均丢包率为1‰。

主要参考文献

[1]、胡汉才编著.单片机原理及其接口技术(第2版).北京:

清华大学出版社.2004

[2]、李朝青著.PC机及单片机数据通信技术.北京:

北京航空航天大学出版社.2000

[3]、W77E588-bitmicrocontroller.WINBONDELECTRONICSCORP.

[4]、TL16C554AsynchronousCommunicationsElement.TIINCORPORATE

[5]、RTL8019ASRealtekFull-DuplexEthernetControllerwithPlugandPlayFunction(RealPNP).REALTEKSEMI-CONDUCTORCO.LTD.

[6]、RTL8019AS如何接收一个数据包.

[7]、RTL8019AS如何读写网卡的RAM.

[8]、[日]井口信和著.TCP/IP网络工具篇.北京:

科学出版社.2003

[9]、[日]村山公保著.TCP/IP网络实验程序篇.北京:

科学出版社.2003

[10]、W.RichardStevens著,范建华等译.TCP/IP详解卷1:

协议.北京:

机械工业出版社.2000

[11]、GARYR.Wright著,陆雪莹蒋慧等译.TCP/IP详解卷2:

实现.北京:

机械工业出版社.2000

[12]、赵亮,侯国锐编著.单片机C语言编程与实例.北京:

人民邮电出版社.2004

[13]、徐爱钧,彭秀华著.KeilCx51V7.0单片机高级语言编程与μVision2应用实践.北京:

电子工业出版社.2004

13

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2