通过以太网传输的嵌入式网关设计毕业设计论文.docx
《通过以太网传输的嵌入式网关设计毕业设计论文.docx》由会员分享,可在线阅读,更多相关《通过以太网传输的嵌入式网关设计毕业设计论文.docx(43页珍藏版)》请在冰豆网上搜索。
通过以太网传输的嵌入式网关设计毕业设计论文
毕业论文
通过以太网传输的嵌入式网关设计
毕业设计(论文)原创性声明和使用授权说明
原创性声明
本人郑重承诺:
所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:
日 期:
指导教师签名:
日 期:
使用授权说明
本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:
按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:
日 期:
摘要
本文是对简易嵌入式网关的设计,我们知道网关在人们的现实工作和生活中有着极其重要的作用。
因此网关的设计具有着许多的现实的意义。
本文的硬件部分采用的是性能相对高于51单片机但是又兼容51单片机特性的P89C668来作为微控制器,用芯片RTL8019AS来作为以太网通信的控制器,这两部分和隔离滤波器PM34一起,就构成了网关设计中的最主要部分。
单片机与RTL8018AS一起将传输的数据通过TCP/IP中的几个固化在单片机里的子协议进行一个传输和解析,通过以太网的传输达到对现场的一个控制监测的效果。
由于单片机中要固化许多的协议和传输数据,所以对它的存储器的空间有较高的要求,因此我们在硬件部分又对单片机进行了存储器的扩展。
最小系统的完整性是单片机能够正常工作的基础。
并且本文还采用了MAX232来构建它的串行通信电路,已达到本设计各方面工作的正常进行。
本文的软件部分则是对软件中的固化的协议进行了一个实现,对TCP/IP协议进行研究分析,以便数据能够正常传输。
关键词:
单片机;网关;TCP/IP;以太网
Abstract
Thisarticleisasimpleandeasydesignoftheembeddedgateway,weknowthatthegatewayintherealworkofpeopleandithasaveryimportantroleinthelife.Sothedesignofthegatewayhasalotofpracticalsignificance.
Hardwarepartofthisarticleisrelativelyhigherthanperformancebutalsocompatiblewith51single-chipmicrocomputer51SCMfeaturesP89C668asmicrocontroller,usingRTL8019ASchipasacontrollerforEthernetcommunication,thetwopartsandisolationfilterPM34,togetherconstitutethemajorpartinthedesignofthegateway.Single-chipmicrocomputerwithRTL8018ASwilltransmitdataviaTCP/IPofafewcuringchildinSCMagreementforatransferandparsing,transmissionthroughEthernettoachievetheeffectofacontrolofon-sitemonitoring.Becauseofthesinglechipmicrocomputertocuringmanyprotocolsanddatatransmission,sothespaceofthememoryofithashigherrequirements,soweinthehardwarepartandMCUfortheextensionofstorage.Theminimumsystemofintegrityisthebasisofthesingle-chipmicrocomputerthatcanworknormally.AndthispaperalsoadoptstheMAX232tobuilditsserialcommunicationcircuit,everyaspecthasreachedthedesignworkontherails.Softwarepartofthispaperisconductedoftheagreementforcuringinsoftwareimplementation,thestudyoftheTCP/IPprotocolanalysis,sothatthedatacanbetransmittedproperly.
Keywords:
singlechipmicrocomputer;Gateway;TCP/IP;Ethernet
第1章绪论
1.1课题来源
互联网的普及,使得实现智程控制不再是人们的梦想。
通过设计一种简易嵌入式网关,用户可以从全球的任何一个角落实现对设备的一个监管,方便了人们的工作生活。
把网关接收到的数据通过以太网的传输到达处理器,再由处理器进行分析、检测、反馈,达到一个远程监控的作用。
本课题所提出的适用于以太网的简易嵌入式网关设计,主要是选择一种性价比较高的微处理器,通过软件编程实现一些基本TCP/IP协议功能,从而实现部分网络通讯协议的功能,且价格较为低廉。
通过与Internet的互联,从而实现“管控一体化”,使管理人员不必深入现场,便可通过Internet联网监测现场设备运行状态,提高工作的灵活性和可靠性,尤其适合无人职守工作站。
可以使其广泛适用于工业控制领域,适合多种工业现场。
1.2国内外研究与应用现状
1.2.1以太网与TCP/IP
以太网不是一种具体的网络,而是一种组网的技术规范。
它在很大程度上取代了其他局域网标准。
以太网络使用的是CSMA/CD(载波监听多路访问及冲突检测)技术,并且符合IEEE802.3标准。
以太网技术具有简单方便、价格低、速度高的优点。
目前它已经在工业企业综合自动化系统中的资源管理层、执行制造层得到了广泛应用,并呈现逐渐向下延伸的趋势,现在已经能够应用在工业的监测。
以太网技术经过多年的发展已经相当的成熟,目前最低的速率为10Mbps,而百兆以太网已经得到了广泛的应用,千兆以太网也在遇见日渐成熟。
在工业控制中,以太网的数据传输并不是所有的工业环境都需要达到微秒级别的时间要求,并且在工业环境中待传输的信息类型包括实时过程控制数据、设备状态、监控数据、系统故障诊断数据、报警数据等,这些数据通常在量上并不大。
在工业控制中,实时的控制能力、信息传输的确定性和操作性非常的重要。
因此结合工业以太网数据量小的特点,又由于TCP/IP协议本身的可靠和稳定性,大多数工业以太网协议都选择了TCP/IP协议来实现。
工业控制网络发展的趋势与要求:
1、工业网络体系的原则——开放性;2、工业控制的方向——与Internet集成;3、高性能工业网络的要求——更高的带宽;4、新的工业网络体系;5、严格的实时性要求。
1.2.2嵌入式系统的概念及发展现状
嵌入式系统有时称为嵌入式计算机系统,指的是专用的计算机系统。
它是随着多种技术的发展而发展起来的。
它已成为现代科技发展的的一个重要组成部分。
由于反应速度快、用途很广,现在嵌入式系统几乎应用于所有的电气设备。
嵌入式系统起源于微型计算机时代,然而虽然计算机集成度在不断的提高,但这也不能彻底地满足嵌入式系统的微小体积、极低价位、高可靠性的要求。
因此,嵌入式系统芯片化是它发展的必然趋势。
而单片机由于具有体积小、功能强、价格低廉和使用灵活的特点,在嵌入式系统发挥着不可或缺的作用。
可以说,随着技术的发展,嵌入式系统无处不在。
虽然嵌入式这个概念很早就已经存在了,但是嵌入式系统真正风靡发展起来却是近几年才开始的,以他的发展情况,大致有了以下四个阶段:
无操作系统阶段:
这一阶段只是初步具备了嵌入式的应用特点,但是它的统结构和功能都不完全,很多方面都还存在缺陷。
但由于嵌入式系统使用起来非常的简单方便、价格相对的便宜,所以已经在工业上得到了广泛的应用。
简单操作系统阶段简
到20世纪80年代,随着微电子技术的不断提高,开始出现各种简单的嵌入式操作系统。
这时候虽然还是比较简单的,但是已经具有了一定的的兼容性,内核也相对精巧而且效率也较高。
实时操作系统阶段:
到20世纪90年代,,嵌入式系统发展迅速。
这时嵌入式的操作系统的实时性得到了很大的改善,并且已经能够逐步的运行在各种不同类型的微处理器上。
这时已经具备了很多的功能,并提供了大量的应用程序接口(API),使得应用软件的开发变得更加简单。
面向Internet阶段
21世纪是一个网络飞速发展的黄金时代,嵌入式系统已经应用到各种网络环境中。
但是现在大多数的嵌入式系统还是孤立于Internet之外,目前来说,嵌入式设备与Internet相结合才是嵌入式技术的真正未来。
同时单片机的在嵌入式系统中的应用是嵌入式系统走进了一个新的时代,单片机的发展经历了SCM,MCU,SOC三大阶段:
SCM即单片微型计算机(SingleChipMicrocomputer)阶段,主要是寻求单片形态嵌入式系统的最佳体系结构。
MCU即微控制器(MicroControllerUnit)阶段,主要的技术发展方向是:
不断扩展满足嵌入式应用,突显其智能化控制能力。
SOC即片上系统(SystemonChip)阶段,是嵌入式系统最新发展趋势。
1.2.3课题发展现状
互联网技术的迅速发展,使得网络技术越来越与人们的日常生活密不可分。
目前随着以太网技术的进一步发展和完善,信息的控制性和可操作性的不断提高,现在将以太网技术应用到工业现场的控制领域已经成为了可能。
从目前的发展趋势来看,以太网的应用己经进入到了远程的程度。
一方面,以太网的远程控制操作大大减少了人力资源的浪费。
另一方面它也降低了一些在工业检测中存在的安全隐患。
通过互联网的互联作用,从而实现“管控一体化”效果。
在一些人力所不及的环境,以太网技术也发挥了它巨大的作用。
而将互联网络延伸至单片机又成为网络在工业领域应用中的另一种的趋势。
时代的快速发展,使得现代的远程监控技术已经走进人们的生活,可以说远程监控系统就是信息网络与控制网络结合的产物,它集现代多种技术为一体,在许多领域有着广泛的应用。
而远程控制的实现,网关是必不可少的一个组成部分,嵌入式网关的应用使得远程控制得到实现。
在这个日益信息化的社会,计算机和网络已经全面渗透到我们生活的每一个领域。
为了实现远程控制,同时满足人们工作生活的多方面行,嵌入式Internet的发展也迫在眉睫。
对于它的研究,国外已经从理论阶段过度到了研发阶段,并且有的公司已经研制出了自己的产品。
至目前为止,大部分的嵌入式系统采用的是8位的微控制器。
但是由于这些系统的硬件资源有限以及成本的敏感性,实现完整的TCP/IP协议比较困难,所以不得不接入到32位的位处理器中,大大增加了成本。
同时从国内外的研究现状上也可以看出,对于嵌入式Internet技术,大部分国外公司的解决方案都是基于高速处理器之上,或者在普通的8位、16位微处理器上实现与Internet接入,并且其费用是非常高的。
因此,如何在单片机上低成本的实现嵌入式Internet,就有很大的前景。
但是,将嵌入式系统与Internet相接入不是一蹴而就的,这中间存在着许多的困难。
要想把这项技术应用到人们的工作以及人们的生活中,就要首先让这些困难得到很好的解决。
首先:
Internet的各种通信协议对存储器的空间以及处理器的运行速度等都有着较高的要求,如果选用32位的处理器的话,成本就会大大提高等。
所以这一系列的问题则要求我们要深入的研究这些问题。
近年来我国的控制与通讯工程师们也开始致力于新型工业以太网的研究工作,其中有代表性的是采用FF制定的快速以太网标准。
1.3本文研究的内容
本课题所提出的适用于以太网的简易嵌入式网关设计,主要是选择一种性价比较高的微处理器,通过软件编程实现一些基本TCP/IP协议功能,从而实现部分网络通讯协议的功能。
课题主要任务是研究单片机在计算机分布式控制系统中与以太网相互通信的实现。
本课题采用51系列单片机P89C668单片机控制以太网接口芯片RTL8019AS实现网桥功能,并提供TCP/IP协议功能。
论文的工作具体如下:
(1)硬件电路设计本课题硬件设计采用51系列P89C668位单片机,RTL8019AS芯片,RS232等接口。
(2)在P89C668单片机上实现TCP/IP协议的子集,包括:
ARP,ICMP,UDP,及TCP等。
(3)采用C语言开发协议处理程序,利用模块化的编程思想,分层实现各个协议,提高程序的可移植性和可读性。
1.4本章小结
本章对课题的现实来源以及它的发展前景进行了一个简单的阐述,并且对以太网的进行了简单地介绍,了解了TCP/IP协议是以太网通信协议中最重要的一部分。
本章还对嵌入式系统的发展历史进行了一个简单地总结,明确了本文所要研究和所要实现的最终目标。
通过对本章的学习可以使读者了解到嵌入式网关设计的现实意义,以及对它所包含的理论知识有了一个大体的了解。
第2章嵌入式网关的理论基础
本文实现的是把以太网作为物理网络的嵌入式网关的设计,以TCP/IP协议实现数据的传输。
以太网应用于工业领域是现代网络发展的一个必然的趋势,在工业中以太网的最主要任务就是实时数据传输。
怎样快速稳定、实时准确的传送数据是我们首先考虑和解决的问题。
通过对数据传输各方面的综合考虑,我们选用以太网的TCP/IP协议。
TCP/IP协议Internet最基本的协议,是国际互联网络的基础。
由于TCP/IP协议自身具有的稳定性和确定性,现在已经在工业等方面广泛的应用。
以太网遵循IEEE802.3标准,TCP/IP协议是它所遵循的一个通讯协议。
现在由于嵌入式系统还在硬件上受到一定的限制,并不能实现整个的TCP/IP协议,因此我们将TCP/IP协议精简了一部分。
本文设计目标为嵌入式网关,实现的相关协议为:
ARP,UDP,TCP,IP,ICMP协议。
2.1以太网技术
2.1.1TCP/IP协议
TCP/IP协议并不是TCP和IP这两个协议的合称,而是指因特网整个TCP/IP协议族。
TCP/IP体系结构模型与OSI模型非常相似,但又不完全一样。
它采用四层结构体系,这四层由高到低分别是:
应用层、传输层、网络层以及网络接口层,其中每一层都完成不同的通信功能,如图2-1所示。
图2-1TCP/IP协议结构
网络接口层有时也被称为网络访问层和数据链路层,它是在TCP/IP协议栈的最底层,是有控制同一物理网络的不同机器间数据传送的底层协议组成。
网络接口层能够对实际的网络媒体进行管理,并且定义如何使用实际网络。
它是负责接收IP数据包并通过网络发送,或者从网络上接收物理帧,抽出IP数据包,交给IP层。
我们知道,如果要从一台IP主机到达位于路由器另一端的一台IP主机,就必须知道信宿主机的IP地址。
因此TCP/IP网络互联使用ARP确定数据包的本地的目标硬件地址。
ARP(AddressResolutionProtocol)是地址解析协议,它主要是把一个IP地址映射成物理地址。
ARP协议就是完成获得对方物理地址的一个协议方法。
网络层负责相邻计算机之间的通信,并且管理网络名称。
网络层执行TCP/IP的三个任务,分段:
即路由器从一种网络携带数据到另一个网络是,网络能够携带的最大的数据块;寻址:
它定义了一种机制,通过这种机制TCP/IP上的所有网络接口必须与逐个标识每个接口,以及接口所属网络的特定的、唯一的位模式相关联;路由:
定义了从发送方转发数据包到接收方的机制,其中涉及大量的中继。
网络层所包含的主要协议有IP协议(网际协议)、ICMP协议(Internet互联网控制报文协议)、ARP(地址解析协议)等。
传输层有时候也被称为主机对主机层,该层涉及从一台主机到另一台主机的移动数据。
它有传输控制协议(TCP)和用户数据报协议(UDP)两种协议。
这两种协议有两个特色:
面向连接和非连接,TCP为面向连接,而UDP为非连接。
TCP是一个可靠的段对段的协议,它在发送数据前协调和保持连接,获得数据传输成功的确认,以及请求重新传输丢失或者错误的数据。
而UDP则尽他最大的传送数据,并不接收信息的查询。
应用层被称为处理层,是协议栈与主机上的应用或者处理程序交界的层,向用户提供一组常用的应用程序。
应用层处于TCP和UDP之上的一组协议,包括HTTP超文本传输协议和FTP文件传输协议等。
2.1.2数据的封装和分用
当数据在网络上传输时都必须经过封装,每一层都在上一层数据基础上加上头部信息包括本地信息和物理信息,逐层传输,直到链路层。
TCP/IP的每一层将传出的数据进行包装识别以便传给下一层。
数据封装结构如图2-2:
图2-2TCP/IP数据封装层次
当目的主机受到一个数据时,数据就开始从协议栈底部向顶部上升,同时去除这个头部信息,并且验证数据的目的地是否是本地,以确定接收数据的上层协议,这就是用到分用,如图2-3所示:
图2-3TCP/IP数据分用过程
2.2以太网协议
2.2.1以太网协议简介
以太网是一个局域网的规范,它在现在的通信中被广泛应用,是现在通用的通信协议的标准。
以太网采用的是CSMA/CD技术,即载波监听多路访问及冲突检测。
以太网与IEEE802·3标准相类似,也就是说它包含于IEEE802.3标准组。
IEEE802.3是CSMA/CD网络,定义了CSMA/CD总线网的MAC子层和物理层的规范。
以太网的功能和性能正在逐步的改善,它有半双工和全双工两种操作模式。
半双工意味着同一媒体的发送和接收是异步进行的。
接收与发送共用一个通道,同一时刻只能发送或只能接收,所以半双工可能会产生冲突。
这样它的传输的有效性和高速性就降低了。
全双工是指接收与发送采用两个相互独立的通道,可同时进行,互不干扰,它有单独的发送和接收通路。
在全双工模式下,发送方和接收方之间采用的是点到点的连接,这就意味着可以得到更高的传输速率。
由于发送数据和接收数据是在不同的电缆线上完成的,因此不会产生冲突。
以太网系统由三个基本单元组成:
1)物理媒体,用于携带计算机之间的以太网信号;2)媒体访问控制规则,嵌入在每个以太网接口处,从而使得多路计算机对共享以太网信道作出正确判断;3)以太帧,由一组系统用于携带数据的标准比特流构成。
每台装备以太网卡的英特网上的计算机都能独立运行,而不需要中心控制器。
连接以太网的所有工作站都接入共享信令系统,又称为媒体。
发送数据时,工作站首先要查看信道,如果信道空闲,即可以以太帧或数据包格式传输数据。
每帧传输完毕之后,网络各站必须公平争取下一帧的传输机会。
共享信道的访问取决于嵌入每个工作站的以太网接口的媒体访问控制机制。
该机制建立在载波监听多路访问/冲突检测(CSMA/CD)基础上。
随着每个以太帧发送到共享信道上,所有以太网接口关注目标地址。
如果帧目标地址与接口地址相匹配,那么该帧就能被全部读取并且被发送到那台计算机的网络软件上。
如果发现目标地址与它们本身的地址不匹配时,所有其它网络接口将停止读帧操作。
2.2.2以太网协议结构
以太网技术的核心是媒体访问控制子层(MAC),它决定了以太网的主要网络性能。
MAC子层通常又可以分为帧的封装/解封和媒体访问控制两个功能模块。
一般以太网采用的是IEEE802.3标准,它的物理传输帧是由七个部分组成的,如表2-1所示:
(1)PR:
同步位,它是帧的前导码,包括了七个字节的二进制,有“0”、“1”交替组成,共56位。
它指示一帧的开始并接收器接收器均能与到达帧同步
(2)SD:
分隔位,这一位仅在IEEE802.3标准里有效,表示接收后面跟随的是帧数据,前6位为1,0交替出现,后两位为11。
(3)DA:
目的地址,表示帧准备发往的目的地,它的地址6个字节.当目的地址出现全地址时,则是广播地址,表示该帧数据可以被任何局域网接收到。
(4)SA:
源地址,48位,表明发送该帧站的地址,即发送端的网卡地址,与DA一样是6个字节。
<1500长度,共占两个字节,表示数据的字节数;>1500则标识帧所携带的长层数据类型。
(5)TYPE:
类型字段,用于标识数据字段中所包含的高层协议,也就是说,该字段告诉接收设备如何归类解释不同的数据字段。
(6)DATA:
数据段,这个数据段的范围是46字节至1500字节之间。
一个完整的以太网传输包最大不能超过1514字节。
(7)PAD:
填充位。
由于一个以太网传输帧的数据包不能小于60字节,由于DA,SA,TYPE为14个字节,所以还必须要另外传输46字节的数据,当额外所传输的数据仍然不足46字节时,后面就补000000.....等。
(8)FCS:
数据校验位.它处在帧尾,共占4个字节,是32位冗余检验码(CRC),这个校验由网卡自动计算生成并检测,在帧尾自动加入。
表2-1IEEE802.3帧结构表
PR
SD
DA
SA
TYPE
DATA
FCS
同步位
分隔位
目的地址
源地址
类型字段
数据段
帧校验序列
7
1
6
6
2
46-1500
4
56位
8位
48位
48位
16位
不超1500字节
32位
除了数据段的长度不定外,其他部分的长度固定不变,数据段的范围是46至1500个字节,一个完整的以太网传输包字节数最大不能超过1514。
其中DA,SA,TYPE为14个字节,而且它的最小字节是不能低于60个字节的。
由于DA、SA、TYPE是14个字节,则需要额外传输46字节的其他数据,当额外所传输的数据仍然不足46字节时则需要填充。
以上所填充的字符个数是在长度字段之外的,如果传输时字节超过1500时,那么就将它需要拆分成多个帧以方便传送。
实际上,以太网控制器能够自动产生数据段,当发送的DA、SA、TYPE填充的数据段不足时。
在接收数据的过程中,PR、SD是直接被跳过的,控制器一旦检测到有效前序字段就认为接收数据开始。
以太网的硬件能够自动执行它的冲突退避算法,因此我们在编写以太网接口程序时就不必担心报文会因为冲突而发不出去。
2.3本章小结
本章从最基本的概念开始,从以太网技术和以太网协议两个方面介绍了嵌入式网关的理论基础。
其中在介绍以太网协议技术时着重的接受了以太网的其中一个通讯协议,即TCP/IP协议。
TCP/IP协议在本文中是实现正常通信的重要部分;同时,本章还对以太网协议进行了一个简单地介绍,对以太网协议的内部结构进行了一个说明。
通过对本章的学习,读者可以学习到关于以太网技术、以太网协议以及TCP/IP