没有合适的资源?快使用搜索试试~ 我知道了~
毕业论文-MODBUS通信协议在TCP-IP上的实现.doc
0 下载量 13 浏览量
2023-06-28
03:01:48
上传
评论
收藏 467KB DOC 举报
温馨提示
试读
34页
毕业论文-MODBUS通信协议在TCP-IP上的实现.doc
资源推荐
资源详情
资源评论
MODBUS 通信协议在 TCP/IP 上的实现
摘要: 伴随着批评家的鄙夷和使用者的称赞, MODBUS/TCP 的确已不再是新生事物。
更何况对于自 1979 年就开始使用的 MODBUS 协议,为其增加基于以太网 TCP/IP 的传输
技术是绝对由必要的。MODBUS 协议本身的 MODBUS 服务和对象模式在 MODBUS /TCP
中都没有改变,并简单地采用 TCP/IP 作为数据传输协议。这使得 MODBUS 拥有了一系列
协议,目前包括传统的 MODBUS -RTU 、 MODBUS -Plus 和 MODBUS -TCP 。所有这些
协议都使用相同的应用层协议-规定了统一的用户数据和通讯服务。分析 MODBUS/TCP 协
议构成,通过采用套接字与多线程技术,设计出基于 MODBUS /TCP 协议的工业以太网通
信网络,分析出客户端/服务器的通信模式的主要特性,并给出其具体实现过程。所构建的
基于 MODBUS /TCP 与 MODBUS 的工业以太网可实现工业现场数据采集、处理及通信等功
能,为工业自动化领域的实时网络化通信提供了一种有效的解决方案。
关键词:MODBUS/TCP 、以太网 、 套接字、 工业 、 TCP/IP
MODBUS protocol implementate in the TCP/IP
Abstract: With the contempt of critics and users praise, MODBUS / TCP is indeed
no longer a novelty. Moreover, since 1979 began to use the MODBUS protocol, for
increase in Ethernet-based TCP / IP transmission technology is absolutely the
necessary. MODBUS protocol itself and the object model service MODBUS / TCP
were not changed, and simply use TCP / IP as a data transfer protocol. This makes the
MODBUS have a series of agreements, currently including traditional
MODBUS-RTU, MODBUS-Plus and MODBUS-TCP. All these protocols use the
same application layer protocol - provides a unified user data and communication
services. Analysis of MODBUS / TCP protocol composition, through the use of
socket and multi-threading technology, designed based on MODBUS / TCP protocol
Ethernet communications network, analyze the client / server model of the main
characteristics of the communication, and gives specific implementation process.
Constructed based on MODBUS / TCP and MODBUS industrial Ethernet can achieve
industrial data acquisition, processing and communications functions for industrial
automation, real-time communication network provides an effective solution.
Keywords: MODBUS / TCP、 Ethernet 、sockets 、industry 、TCP / IP
第 1 章 引言
1.1 研究背景
在现代化工业控制中, 由于被控对象、测控装置等物理设备的地域分散性,
以及控制与监控等任务对实时性的要求, 不同设备之间现场交互性信息的传递越
来越多。但传统的工业控制系统软件存在着一些问题。不具备开放性,各个部分
的联系过于紧密,使系统过于复杂。这样使系统的更新、扩展和升级变得非常困
难,对系统任何一部分的修改都有可能对其它部分造成影响,从而导致大量且烦
琐的软件和硬件的修改。传统的工业控制软件开发中出现的另一个主要问题是软
件的重复开发,软件不能够复用,资源不能共享,造成大量的人力与物力资源的
浪费。虽然使用高级语言函数库让我们可以利用面向对象的继承等方法大量重用
源代码,但这些复用只是对源代码级的复用而不是对可执行文件级的复用。
由于传统工业控制系统的带来的不便, 造成形成了大量的“信息孤岛”,但
是,对于工业控制而言,各站点之间不是孤立的,它们必须互相配合、协调才能
保证产品质量和实现连续生产,这就需要各站点能互通讯息。另外,上级管理网
也需要与子站交互数据,以实现全局的监控和优化。然而,子站是采用不同开发
平台、不同通讯协议组成的异构系统,可能由不同的厂家和个为开发。要为每种
协议写一个转换接口或驱动是比较繁琐的,特别是在站点和协议较多的时候。因
此,怎样有效集成数据,避免信息孤岛的出现,是工业控制领域中常遇到难点问
题之一。
比较好的方法是各站点都采用标准协议进行数据通讯,而不必为每一种协议
开发一个通讯接口。目前这方面的协议比较多,MODBUS 就是其中的一种。
MODBUS是一种全开放, 免费提供,非常容易理解和实施的协议, 从70 年代诞生
以来,在制造业、电力、水电、冶金、矿山、交通、基础设施的工业领域中的数
据采集和过程控制得到了广泛应用, 形成了一种事实上的工业标准。同时, 随着
计算机网络技术的迅速发展, 信息技术已逐步进入工业自动化领域, 以太网技术
以高速率、低成本、应用广泛等优势, 促进了它在工控领域的应用, 形成了当前
的工业以太网技术。它允许MODBUS协议与以太网TCP/IP 结合, 在TCP 帖中
嵌MODBUS信息帧, 成为MODBUS TCP/IP, 在工业自动化领域中, 具有很高的
性能价格比, 是一种真正开放的理想解决方案。
1.2 国内外发展现状
目前在 全 球 范 围 内 已 经 安 装 了 8,000,000 套 MODBUS 串行链路设备 和
800,000 套 MODBUS TCP/IP 设备,基于 MODBUS TCP/IP 和 Web 技术的“透明
就绪”的广泛应用可以被归类到三大市场:能源与基础设施,工业,以及建筑行
业。
◆ 在能源与基础设施市场,机场、隧道、数字通讯、电信、水处理、油
气、能源等行业大大得益于“透明就绪”的远程控制能力
◆ 在工业市场,食品与饮料、微电子、制药、汽车等行业则高度的受益于
“透明就绪”中从 IT 系统贯通到车间层 TCP/IP 以太网的统一全局网络架构
◆ 在建筑市场,医疗机构、公用建筑、民用住宅、船舶等行业在“透明就
绪”中使用他们原有的 TCP/IP 以太网网络,从而大大的降低了实施费用
1.3 主要技术路线
MODBUS/TCP 协议是在 MODBUS 协议的基础上发展而来的。为了尽量地
使用已有成果,MODBUS / TCP 协议的实现是在不改变原有 MODBUS 协议的基
础上,只是将它的传输层协议简单的移植到 TCP/IP 上。因此在 TCP/IP 网络中
MODBUS /TCP 使用传输控制协议(TCP)进行 MODBUS 应用协议的数据传输。
参数和数据使用封装的方法嵌入到 TCP 报文的用户数据容器中进行传送。另外
地址和校验在 MODBUS /TCP 中也由底层的 TCP 协议来完成。由于传输层以上
遵循 MODBUS 协议,所以采用 C/S 结构,在数据传输前进行之前,需要在客户
和服务器之间建立一个 TCP/IP 连接。服务器使用端口 502 作为 MODBUS /TCP
连接的端口。连接的建立通常由 TCP/IP 的 Socket 接口的软件协议自动实现的,
因此对应用完全透明。
一旦客户和服务器之间的 TCP/IP 连接建立,同样的连接可以根据要求的方
向用来传输任意数量的用户数据。客户和服务器还可以同时建立多个 TCP/IP 连
接,最大的连接数量取决于 TCP/IP 接口的规范。在输入输出数据循环传输的情
况下,永久的连接通常维持在客户和服务器之间,只有在发生特殊事件而有必要
传送参数和诊断报文时,连接才能在每一次数据传送后被关闭,需要时再次建立。
这也是 MODBUS /TCP 在工业以太网中采用 TCP 作为为传输层协议而不采用速
度更快的 UDP 协议的原因所在。
虽然 MODBUS /TCP 由于在传输层采用 TCP 协议,而使其不得不在传输层
协议以下的诸层采取更有效的实时性策略。但与 IDA 方案相比,MODBUS /TCP
在其开放性、简单和稳定的性能上具有优势,是一个具有较高的性能价格比的工
业以太网方案。
1.4 本文的工作
本文主要告诉读者该课题的实现过程。在看到一个用软件编程实现的课题时,
应该有的一些思路,需要掌握的一些知识。在拿到一个课题时,首先需要为课题
的实现构建一个模型,对于该课题而言,应想到怎样在一台设备上实现 MODBUS
协议,同时,该课题是实现通信,那么就必然不只一台设备,继而想到两台设备
间的通信模型,最后到多台设备的通信结构。建构好模型后,就应该查找相关的
理论知识。本文涉及到的理论知识主要包括 MODBUS 协议结构以及套接字的原
理。掌握原理后,接下来就应该设计实现流程。对于软件开发而言,编程环境和
编程语言很重要,这会对工作的复杂程度带来很大的影响。选择好编程工具后,
就要想着怎样实现课题,应构思一个流程。本文首先需要将 TCP/IP 应用层以下
作为一个整体,而这个整体和上层的接口即是套接字接口。再将套接字接口与应
用层 MODBUS 协议联系,即可实现该课题的要求。摘取程序中最重要的部分进
行分析。能够让读者清楚的认识到整个编程实例的精髓。最后对整个课题的实现
进行一个总结,带给读者一个实现该课题的基本框架,以及在实现该课题过程中
自己的一些见解以、疑问及学到的知识和技术。提出自己对该项技术的展望,以
及这项技术的发展前景。
1.5 论文的结构安排
本论文共分五章,各章主要内容如下:
第一章: 介绍本论文所研究的背景,即该课题的实际应用价值。
第二章: 构建了实现课题的模型,从一台设备上实现MODBUS协议,到两
台设备通信,最后构建多台设备的整体通信结构。
第三章:为该课题建立理论基础。该课题涉及到的理论主要包括MODBUS
协议结构及套接字,分析它们之间的关系所在。
剩余33页未读,继续阅读
资源评论
xinkai1688
- 粉丝: 335
- 资源: 8万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功