基于ARM的以太网网关设计与实现.doc

上传人:h**** 文档编号:101297 上传时间:2018-07-06 格式:DOC 页数:36 大小:5.22MB
下载 相关 举报
基于ARM的以太网网关设计与实现.doc_第1页
第1页 / 共36页
基于ARM的以太网网关设计与实现.doc_第2页
第2页 / 共36页
基于ARM的以太网网关设计与实现.doc_第3页
第3页 / 共36页
基于ARM的以太网网关设计与实现.doc_第4页
第4页 / 共36页
基于ARM的以太网网关设计与实现.doc_第5页
第5页 / 共36页
点击查看更多>>
资源描述

1、 大连海事大 学 毕业论文 二一四年六月 装订线基于 ARM 的以太网网关 设计与实现 专业班级: 通信工程 3 班 姓 名: 计平元 指导教师: 毕 胜 信息科学技术学院 I 摘 要 CAN 总线作为现场总线的一种,与一般的通信总线相比,具有突出的可靠性、实时性和灵活性。以太网作为构筑互连网的一种最普及的局域网技术,具有较好的稳定性和传输数据的高效性等特点,还能够支持互连网络 的远程访问。 但是它不能直接和工业设备相连进行通信。 将两种不同适用范围的网络进行 连接以利用各自的优点实现对工业生产的监控和管理, 就 需要 通过网关来实 现 。 本文在深入的研究了 CAN2.0 协议、 TCP/I

2、P 协议的特点及实现原理 后 ,提出了一种以太网和 CAN 总线互联的网关模型 。 以 SBC6845ARM 开发板 ( 搭载内核为 ARM9的 AT91SAM9G45 处理器 )为硬件平台,以嵌入式 Linux 为软件平 台, 利用 GEDIT 工具 进行 软件设计, 采用 4 个线程分别处理上行数据和下行数据的存储和转发, 对 CAN总线协议和 TCP/IP 协议进行转 换, 实现 了 以太网与 CAN 总线的互联。从而允许在控制室内对现场中的设备进行访问、 监控与管理。 测试结果表明,本设计实现了系统设计功能。 关键词: Linux; CAN 总线;以太网;网关 II ABSTRACT

3、CAN bus as a fieldbus, has outstanding reliability, timeliness and flexibility, compared with the general communication bus. Ethernet Internet constructed as one of the most popular LAN technology, has not only high efficiency and good stability characteristics of the transmission data, but also the

4、 interconnection network for remote access. But it can not be directly connected to industrial equipment to communicate. Connectting the scope of application of two different network in order to exploit their advantages to achieve industrial production monitoring and management, we need to realize t

5、hrough the gateway. In this paper, in-depth study of the CAN2.0 agreement and implementation of the principle characteristics of TCP/IP protocol, it has made an Ethernet and CAN bus interconnection gateway model. With the hardware platform of SBC6845ARM development board (equipped with the AT91SAM9G

6、45 ARM9 processor kernel) and and the software platform of embedded Linux, using GEDIT tools for software design, using four threads to process store and forward data uplink and downlink data, converting CAN bus protocol and TCP / IP protocol, it achieves the interconnection of Ethernet and CAN bus.

7、 Thus, we can visit the field equipment, monitor and manage it in the control room. The test results show that the design of the system achieves design function. Keywords: Linux, CAN BUS, Ethernet, Gateway III 目 录 第 1 章 绪论 . 1 1.1 课题研究的背景及意义 . 1 1.2 CAN 总线和以太网技术的研究现状 . 1 1.2.1 CAN 总线的研究现状 . 1 1.2.2

8、以太网的研究现状 . 2 1.3 本文的主要工作 . 2 第 2 章 CAN 总线和以太网简介 . 3 2.1 CAN 总线简介 . 3 2.2 以太网简介 . 8 第 3 章 系统硬件设计 . 9 3.1 硬件总体方案设计 . 9 3.2 硬件电路设计 . 11 3.2.1 核心处理器 . 11 3.2.2 CAN 总线电路 . 12 3.2.3 以太网电路 . 13 第 4 章 系统软件设计 . 16 4.1 嵌入式系统特点及开发流程 . 16 4.2 CAN 总线模块软件设计 . 17 4.3 以太网模块软件设计 . 17 4.3.1 TCP 客户端建立连接 . 18 4.3.2 以太网

9、发送和接收数据 . 18 4.4 网关应用程序设计 . 18 4.4.1 双循环缓冲机制 . 19 4.4.2 网关多线程设计 . 20 4.4.3 网关协议转换程序设计 . 21 第 5 章 系统测试 . 24 5.1 网口连接测试 . 24 5.2 网关工作状态测试 . 24 IV 第 6 章 结论及展望 . 28 参考文献 . 29 致 谢 . 30 基于 ARM 的以太网网关 设计与实现 1 基于 ARM 的以太网网关 设计与实现 第 1章 绪论 1.1 课题研究的背景及意义 现场总线是应用在生产现场、在微机化测量控制设备之间实现双向串行多节点数字通信的系统,也被称为开放式、数 字化、

10、多点通信的底层控制网络。现场总线是当今自动化技术发展的热点之一,被誉为自动化领域的计算机局域网。 CAN 总线作为现场总线的一种,由于采用了许多新技术及独特的设计,与一般的通信总线相比, CAN 总线的数据通信具有突出的可靠性、实时性和灵活性 1。 以太网 ( Ethernet) 作为 互连网的一种最普及的局域网技术,具有较好的技术稳定性和传输数据的高效性等特点,此外,以太网还可以方便的与干线网络连接,整个控制系统还能够支持互连网络的远程访问。因此,使用以太网作为工业控制的上层网络有着十分明显的优势。 本文设计并实 现了一种基于嵌入式平台的 CAN 总线和以太网互联的网关,有效解决了底层现场总

11、线与上层控制系统的互联问题。 1.2 CAN 总线和以太网 技术 的 研究 现状 1.2.1 CAN 总线的研究现状 现场总线技术包含范围比较广泛,并不只是指单一的通信总线,而是指一个整个的系统,系统中包含智能化生产设备,将现场总线应用到这些设备中,使原本简单的普通设备升级成数字通信智能设备。现在的工业现场总线控制网络技术已经发展的比较成熟,在各个领域也都得到了广泛的应用,虽然没有统一的标准,但是几种著名的总线都已经做的比较成熟能够适应工业生产的 需要,在和以太网技术共同应用时,将现场信息经网关传到以太网上然后再传递到控制室,实现对生产现场的监控与管理 2。 现场总线的当前发展状况:多种总线共

12、存、总线的应用领域不断拓展、各种总线以企业为支撑、各种总线相继成为自己国家或地区标准、以太网成为新的热点。 本文正是针对现场总线及以太网的当前发展趋势,市场 上 CAN 和以太网基于 ARM 的以太网网关 设计与实现 2 互联的产品还不是很成熟的状况提出来的。 1.2.2 以太网的研究现状 以太网作为一种应用广泛的局域网已经成为了我们生活中必不可少的一部分,它以其自身的高可靠性、方便易用等优点获得了广大用户的青 睐。 工业以太网是一个新的概念,它指的是在复杂的生产现场中应用以太网技术,这就要求针对工业现场的环境的恶劣性对现有的网络进行适当的改进,主体部分不动,针对工业控制系统的特点对以太网技术

13、做出改进,使之既能够适应物理上复杂恶劣的现场环境,又能够满足工业控制在通信实时性、数据安全等方面的要求。当然,现阶段的技术还无法将网络直接连接到现场的智能化仪表与设备上,因为设备的种类太多,各自遵循的标准也不统一,而以太网技术的最初的发展也不是针对工业控制来设计的,所以在现阶段情况下,还是要将以太网通过网关与适用于工业控制的控 制局域网总线连接起来实现以太网与工业设备之间的数据通信,实现到对生产现场进行监控和管理的目的。 以太网现在已经应用很广泛,技术方面也很成熟,然而在工业控制中,现场总线的种类和技术标准却有很多,并且各种总线之间一般情况下无法相互兼容,每一个开发厂商都有自己的标准,这种情况

14、导致了如果一个客户选择了某一种总线用在工业控制系统中就很难改变,很难再用另一种现场总线来代替,对设备及控制系统的升级不利,有可能会影响到生产效益 3。因此,针对这种情况,有必要提出一种新的技术标准,就是基于以太网技术,并且将这种技术扩展到工 业中使之在将来能够发展成为适用于工业现场生产环境的统一的技术标准。现在,国际上相关组织也开始着手做这项工作,制定出了一些工业以太网的标准,在未来直接将以太网技术应用到工业生产现场,取代现在的现场总线技术,这是一个必然的趋势,在这方面需要做的工作还有很多。现阶段的现场仪表设备之间的通信还是离不开现场总线,还是需要将以太网通过网关转换连接进来与设备仪表进行通信

15、,实现上层监控网络和现场控制网络的一体化。 1.3 本文的主要 工作 本文的主要任务是以嵌入式 Linux 为软件平台,以 ATMEL 公司的AT91SAM9G45 芯片为微 处理器,以深圳市天漠科技有限公司的 SBC6845ARM 开发板为硬件平台,在对 CAN 总线、以太网工作原理深入分析的基础上设计 嵌入式CAN-Ethernet 网关转换器,实现 CAN 总线和以太网的互联 通信。 本文中 ,前两章 概述了国内外 CAN 总线和以太网的发展现状 并 简要的介绍了这两种通信协议及其特点 ;第三章介绍了系统的硬件结构及原理;在第四章中,着重阐明了系统的软件设计方案;第五章展示了系统的测试过

16、程及结果。 基于 ARM 的以太网网关 设计与实现 3 第 2章 CAN 总线和以太网 简介 2.1 CAN 总线简介 CAN 是 Controller Area Network 的缩 写(以下称为 CAN),是 ISO 国际标准化的串行通信协议。在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。为适应 “减少线束的数量 ”、 “通过多个 LAN,进行大量数据的高速通信 ”的需要, 1986 年德国电气商博世公司开发出面向汽车的

17、CAN 通信协议。此后, CAN 通过 ISO11898 及 ISO11519 进行了标准化,现在在欧洲已是汽车网络的标准协议 4。 现在, CAN 的高性能和可靠性已被认同,并被广泛地应用于工业自动化、船舶、医疗设备、工业设备等方面。现场总线是当今自动化领域技术发展的热点之一,被誉为自动化领域的计算机局域网。它的出现为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持。 CAN 控制器根据两根线上的电位差来判断总线电平。总线电平分为显性电平和隐性电平,二者必居其一。发送方通过使总线电平发生变化,将消息发送给接收方。 CAN 协议具有以下特点: 1)多主控制。在总线空闲时,

18、所有单元都可以发送消息(多主控制),而两个以上的单元 同时开始发送消息时,根据标识符( Identifier 以下称为 ID)决定优先级。 ID 并不是表示发送的目的地址,而是表示访问总线的消息的优先级。两个以上的单元同时开始发送消息时,对各消息 ID 的每个位进行逐个仲裁比较。仲裁获胜(被判定为优先级最高)的单元可继续发送消息,仲裁失利的单元则立刻停止发送而进行接收工作。 2)系统的柔软性。与总线相连的单元没有类似于 “地址 ”的信息。因此在总线上增加单元时,连接在总线上的其它单元的软硬件及应用层都不需要改变。 3)通信速度较快,通信距离远。最高 1Mbps(距离小于 40M), 最远可达

19、10KM(速率低于 5Kbps)。 4)具有错误检测、错误通知和错误恢复功能。所有单元都可以检测错误(错误检测功能),检测出错误的单元会立即同时通知其他所有单元(错误通知功能),基于 ARM 的以太网网关 设计与实现 4 正在发送消息的单元一旦检测出错误,会强制结束当前的发送。强制结束发送的单元会不断反复地重新发送此消息直到成功发送为止(错误恢复功能)。 5)故障封闭功能。 CAN 可以判断出错误的类型是总线上暂时的数据错误(如外部噪声等)还是持续的数据错误(如单元内部故障、驱动器故障、断线等)。由此功能,当总线上发生持续数据错误时,可将引起此故障 的单元从总线上隔离出去。 6)连接节点多。

20、CAN 总线是可同时连接多个单元的总线。可连接的单元总数理论上是没有限制的。但实际上可连接的单元数受总线上的时间延迟及电气负载的限制。降低通信速度,可连接的单元数增加;提高通信速度,则可连接的单元数减少。 正是因为 CAN 协议的这些特点,使得 CAN 特别适合工业过程监控设备的互连,因此,越来越受到工业界的重视,并已公认为最有前途的现场总线之一,并且得到了极大的发展。 CAN 协议经过 ISO 标准化后有两个标准: ISO11898 标准和 ISO11519-2 标准。其中 ISO11898 是针对通信速率为 125Kbps1Mbps 的高速通信标准,而 ISO11519-2是针对通信速率为 125Kbps 以下的低速通信标准 5。 本章,我们针对 ISO11898 标准,阐述该标准的物理层特征。 CAN 协议是通过以下 5 种类型的帧进行的: 数据帧 遥控帧 错误帧 过载帧 帧间隔 另外,数据帧和遥控帧有标准格式和扩展格式两种格式。标准格式有 11 个位的标识符 ID,扩展格式有 29 个位的 ID。各种帧的用途如 下 表所示: 表 2.1 CAN 总线帧类型及用途 帧类型 帧用途 数据帧 用于发送单元向 接收单元传送数据的帧 遥控帧 用于接收单元向具有相同 ID 的发送单元请求数据的帧 错误帧 用于当检测出错误时向其它单元通知错误的帧

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。