modbus协议范文

时间:2023-12-11 20:16:15

modbus协议

modbus协议篇1

关键词:modbus;一致性测试;自动化;用例生成器

中图分类号:tp393.09文献标识码:a

文章编号:1004-373x(2010)01-171-03

automation of modbus conformance testing

zhao jian

(northwest airtraffic management bureau,xi′an,710082,china)

abstract:the existing modbus protocol conformance testing method has following problem: there is not automatictesting method for it,and this brings negative impact on the effectiveness of test.in order to solve this problem,the architecture of automation method for modbus protocol conformance testing,the architecture includes test case generation and test result analyzer.the automatic conformance testing system based on the architecture is realized.in practice,the system found a number of hidden modbus conformance errors,this proves that the availability and effectiveness of the method.

keywords:modbus;conformance testing;automation;test case generation

0 引 言

modbus协议已经成为一种事实的工业标准,但modbus设备间的一致性、互操作性较差,是制约modbus发展的瓶颈。为了解决modbus协议的一致性和互操作性问题,国内外的研究机构展开了深入的研究并取得了一些成果。

在modbus-ida国际组织的支持下,进行modbus一致性测试的实验室陆续建立。目前,在国外得到modbus-ida国际组织授权的modbus一致性测试实验室仅有两处:一处是位于美国密歇根大学的modbus tcp一致性测试实验室;另一处为设在该课题所在机械工业仪器仪表综合技术经济研究所的modbus serial line/tcp一致性测试实验室,它是独立于产品制造商的第三方测试机构[1,2]。国外其他研究机构对modbus测试系统的研究处于发展阶段,modbus测试系统被应用到火电厂、电力监控系统、控制系统安全认证中,但都未形成一致性和互操作测试标准和自动化方法[3-6]。

在国内对进行modbus一致性和互操作性测试研究的机构主要有:北京交通大学的研究人员开展了modbus串行链路协议一致性测试系统的研发工作[7,8];开普电器检测研究院在modbus协议一致性测试方面有多年的经验,已加入modbus-ida协会[9]。

总得来说,国外在modbus协议的一致性和互操作性测试的研究已经取得了一定的成果,并形成了一些测试系统,但国内用户分享成果的代价较大,并且无法进行modbus设备的互操作性测试,并且尚未形成测试自动化方法;国内的研究已经起步并取得了一些初步研究成果,但在国内尚未形成测试标准和测试自动化方法。

为了克服目前研究中所存在的问题,本文主要研究modbus协议的一致性测试的自动化方法,测试的自动化方法主要包括测试用例的自动生成和测试结果的自动分析两方面,限于篇幅对测试结果的自动分析方法不予展开论述,主要论述测试用例的自动生成方法。

1 一致性测试的基本原理

协议测试理论经过几十年的发展,在许多方面都取得了很大的进展,其中最成熟的是协议一致性测试的理论,主要代表是iso制定的国际标准iso/iec-9646:协议一致性测试的方法和框架。图1是一致性测试的基本示意图。iut(implementation under test)是根据规范的具体实现,是一个内部不可见的实体;规范(speciflcation)以某种形式化语言或者自然语言描述,但不管怎样的描述形式,其根本都是一个扩展自动机模型;测试仪(tester)根据规范为iut产生一组测试序列 (test sequence),然后观察iut的外部行为是否符合规范的描述[7,8]。

图1 一致性测试原理示意图

目前的实际工程测试中,测试序列主要是由少数专家凭借经验制定的。因为原始的规范通常都是自然语言描述的,不同的实现者在使用形式化语言建模的过程中,就可能产生了一个一致性问题:原始规范和形式化规范之间可能在语义上产生偏差。根据这样衍生的形式化描述产生的测试序列不能作为判断是否通过一致性测试的依据。

对于一致性测试的过程,大约需要分五个步骤来完成[8],图2是一致性测试的过程。

图2 一致性测试的过程

第一步,分析测试需求。也就是说,分析相应的标准或规范,从中找出一组测试标准,建立用于实现的一致性描述pics(protocol implement conformance statement)。每个pics应该尽可能的简单并且仅仅集中在一个原子功能上,测试标准之间要做到不相抵触。

第二步,在pics上增加一些用于测试实现的协议实现额外信息pixit(protocol implementation extra information statement),pics和pixit就组成用于测试实现的一致性信息citi(conformanee information for testing the implementation)。

第三步,基于citi,生成一组抽象的测试用例atc(abstract test case)的集合——抽象测试套件ats(abstract test suite)。

第四步,对各atc中的参数选择合适的输入值以及相应的“预测结果”,得到可执行的测试用例etc(executable test case)的集合——可执行的测试套件ets(executable test suite)。当然,生成的可执行测试套件是与所处的测试平台是密切相关的。

第五步,对被测单元uut(unit under test)执行etc的时候,被测单元的测试过程将会产生一个“通过”或“失败”的报告。报告“失败”即未能通过测试则意味着与规范不一致。

2 一致性自动化测试方法

目前测试过程中的“生成ets”、“测试uut”等工作步骤中实现了简单的测试系统,能够对一些工作实现自动化,如根据手工输入的modbus协议的从站号、功能号、地址等参数生成测试用例,能够自动执行测试用例并生成简要测试报告。但这些测试过程存在以下问题:测试用例的生成需要大量的人为干预;另外,测试结果只是简要的测试报告,没有更进一步的分析报告,以帮助用户更容易地确定问题所在。

如图2虚线框部分所示,“生成ets”、“测试uut”等工作步骤可以实现测试自动化。自动化后的体系结构如图3所示。其中可视化用例设计器、测试用例生成器完成测试用例的自动生成工作;测试结果分析器完成测试结果的自动分析工作。限于篇幅对测试结果的自动分析方法不予展开论述,主要论述测试用例的自动生成方法。

图3 一致性测试过程的自动化示意图

通常在一致性测试过程中,测试用例的设计和生成是软件测试的关键任务和难点,据统计,约有40%一致性测试开销用于设计和生成测试用例上。长期以来,测试用例的设计和生成主要依靠手工完成,这意味着要求测试人员具有相当的经验和较高的专业水平。因此,实际工程中的测试用例生成往往带有很大的盲目性,主要依靠直觉经验产生测试用例,这导致测试用例数量多,测试效果差,测试成本居高不下。另外,如何生成最能发现被测系统(或程序)存在问题的测试用例,如何能用最少的测试用例实现足够大的覆盖率,也是测试人员一直追求的目标。这些问题的解决方案就是测试用例的自动生成[10]。

2.1 测试用例的自动生成方法的体系结构

图3中的测试用例自动生成器是测试用例自动生成工作的核心。其体系结构如图4所示。

其中用例设计描述是描述用例特性的文本,根据所选择的算法不同而描述方式也不同:如采用“基于形式规格说明的方法”则用z,vdm,obj,larch [11]等语言来描述,如采用“组合覆盖方法”则用xml脚本来描述。

图4 测试用例自动生成器的体系结构

算法适配器为各种算法提供接口,它向上为描述解析器提供算法支持服务,向下解释各种算法,使得体系结构能够兼容多种算法而增强体系结构的扩展性和适用范围。

描述解析器基于算法适配器来分析用例设计描述,将描述统一转换成用例生成器可识别的内部描述形式,然后传递给用例生成器。

用例生成器获得来自描述解析器的内部描述,并根据描述自动生成可执行测试用例。可执行的测试用例支持多种形式存储,如内存存储、文件存储、数据库存储等,具体的存储格式随用例执行器的需求而变。

2.2 测试用例的自动生成方法的实现

为了验证体系结构的合理性和有效性,基于microsoft vc 6.0 sp6、modbus activex控件、“分类树方法”、cte xl(classification tree editor extended logics)实现了modbus协议一致性测试的自动化系统。

其中cte xl是我们系统中的可视化用例设计器,它是一个语法控制的、可视化、图形化的编辑器。帮助我们更加有效地使用分类树方法进行测试用例的设计。

分类树方法是黑盒测试中的一种部分测试方法,由grochtmann 和grinun 提出,后又由chen 和poon 改进[11],它是一种有效的功能测试方法。分类树方法的基本思想是: 首先逐层划分测试对象的输入域,然后将划分的独立的类结合为无冗余的测试用例,这些测试用例覆盖了整个输入数据域。

算法适配器、描述解析器、用例生成器、分类树方法均使用microsoft vc 6.0 sp6实现。

modbus activex控件用来执行用例并生成测试报告。该控件具有多线程、多任务、多优先级等特性,支持modbus serial line/tcp通信协议,支持rtu和ascii两种通信模式,具有良好的性能。

系统实际使用时,首先用cte xl构建用例设计,也就是生成z语言描述的规格说明,然后描述解析器解析该规格说明并生成测试用例模板(系统内部格式),交由用例生成器生成可执行的测试用例,最后由modbus activex控件用来执行用例并生成测试报告。人工参与的部分只是在第一步,即用cte xl构建用例设计,其余部分均自动完成,大大降低测试人员的工作量,提高了测试工作的效率和客观性。

该实现已经被应用到“山东石油化工厂装车管理系统”中用来测试管理系统和油气批量控制仪之间modbus通信,也被应用到“长庆单井计量信息系统”中用来测试信息系统和plc之间的modbus通信,限于篇幅测试过程不赘述,经过测试发现了一些隐藏的modbus一致性问题并且便于使用,提高了一致性测试有效性和客观性,同时增强了产品的可靠性和可用性,也证明了本文所论述的一致性测试自动化方法的有效性和实用性。

3 结 语

在分析了现有modbus协议一致性测试中存在的问题后,本文提出了一致性测试的自动化方法,基于这个方法设计并实现了一致性测试系统,在实际应用中该系统发现一些隐藏的modbus一致性问题,提高了modbus一致性测试的有效性和客观性,证明了该方法的有效性和实用性。目前该方法的实现基于分类树方法,下一步将研究其他测试用例自动生成方法,使其进一步完善。

编辑整理

参考文献

[1]修为明.现场总线技术及发展[j].电力系统装备,2005(3):78-82.

modbus协议篇2

关键词:Modbus协议;电流检测;转速检测;棉花加工;测控系统

中图分类号:TP277;TS113 文献标识码:A 文章编号:0439-8114(2016)11-2913-04

DOI:10.14088/ki.issn0439-8114.2016.11.052

棉花加工的生产过程是指由原料子棉开始到制成产品皮棉、短绒等的全部劳动过程[1],其工艺主要由子棉预处理、轧花、皮棉清理、集棉、打包、剥绒六个环节组成。在子棉预处理、轧花、皮棉清理和集棉环节,由于棉花喂给不均匀、子棉回潮率大等原因,存在加工设备堵棉、皮带断裂等故障。随着中国近年棉花产量不断提高,传统的继电器与单一的PLC的控制模式,检测信息速度慢且信息量少[2],致使加工设备很难同步协调工作,继而造成加工设备故障率高、故障处理时间长,严重影响了棉花加工的产量与质量。

本研究设计的棉花加工测控系统,根据Modbus协议简单、实施容易等特点,解决棉花加工过程中存在的设备故障率高、故障处理时间长的问题。通过测控系统的使用,降低了棉花加工过程的设备故障率,缩短了故障处理时间,提高了棉花加工产量与质量。

1 Modbus协议及其分析

Modbus协议是应用于电子控制器上的一种通用语言,通过此协议,控制器及相互之间经由网络和其他设备之间可以通信[3-5]。Modbus协议包括ASCII、RTU、TCP等,并没有规定物理层。协议的物理层可以是RS-232、RS-422、RS-485或TCP。与其他总线标准相比,Modbus协议具有协议简单、实施容易、性价比高、可靠性好等优点,在工业自动化领域获得了越来越广泛的应用[6,7]。

Modbus协议采用主从方式定时收发数据。在实际使用中,如果某Slave站点断开后(如故障或关机),Master端可以加以诊断;而当故障修复后,网络又可自动接通。因此,Modbus协议的可靠性较高[8]。在Modbus协议中,有多种协议代码,本研究主要使用以下4种功能代码(表1)。

2 测控系统设计

2.1 测控系统硬件组成

测控系统主要由上位机、触摸屏与控制器、传感器等几部分组成。上位机实现棉花加工数据的存储、统计功能;触摸屏与控制器实现数据分析判断、控制、传输、显示功能;传感器实现数据检测、传输功能;LED显示屏实现车间加工设备运行状态及故障报警功能。棉花加工测控系统组成框图如图1所示。2.2 Modbus传感器设计

Modbus传感器设计包括电流检测装置设计和转速检测装置设计。电流检测装置和转速检测装置主控芯片均采用宏晶科技生产的STC15F2K60S2单片机。

STC15F2K60S2系列单片机是STC生产的单时钟的单片机,是高速、高可靠、低功耗、超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,且速度快8~12倍。内部集成高精度R/C时钟(±0.3%),±1%温飘(-40~+85 ℃),常温下温飘±0.6%(-20~+65 ℃),5 MHz~35 MHz宽范围可设置,可彻底省掉外部昂贵的晶振和外部复位电路[9]。

2.2.1 电流检测装置设计 电流检测装置实时检测加工设备的电流值,并把测得的电流值通过Modbus RTU协议发送给PLC控制器,电流检测装置可实现16路电流的检测。

电流检测装置主要由STC15F2K60S2、16路模拟量转换电路、A/D采样、DC/DC降压电路、光耦隔离电路、RS-485电路组成。装置结构图如图2所示。由于电流检测装置安装的配电房存在多种干扰源,为了确保检测装置数据传输的稳定性,在电流检测装置的通讯电路中增加光耦隔离电路,实现RS-485通讯电路的电气隔离。

2.2.2 转速检测装置设计 转速检测装置实时检测加工设备关键部位的转速值,并把所测转速值通过Modbus RTU协议发送给PLC控制器,以供控制器对加工设备工况进行判断。

转速检测装置主要由STC15F2K60S2、脉冲信号检测电路、DC/DC降压电路、数码管显示电路、光耦隔离电路、RS-485电路组成。装置结构图如图3所示。转速检测装置安装在车间加工设备上,为了方便加工人员及时掌握所测加工设备的转速值,设计转速检测装置时增加数码管显示电路,实时显示转速值。同样,为了确保通讯的稳定性,在转速检测装置的通讯电路中,增加光耦电气隔离电路,增强通讯的可靠性。

2.3 测控系统数据分析设计

棉花加工设备在工作过程中,常会出现堵棉、皮带或链条断裂、主轴失稳等故障,通过研究与分析可知,根据电流和转速的变化率,可区分出加工设备不同的工作状态,具体如下。

1)当加工设备正常工作时,其电流和转速变化曲线如图4所示。从图4可以看出,转速曲线和电流曲线几乎为一条直线。因此,在加工设备正常工作时,电流变化率di/dt≈0,转速变化率a≈0。

2)当加工设备出现堵棉现象时,其电流曲线和转速曲线如图5所示。从图5可以看出,转速曲线迅速下降为0,电流曲线迅速上升,达到一定值时保持不变,当加工人员关断加工设备电源后,电流曲线逐渐降低为零。因此,在加工设备电机出现堵转后的有限时间内,电流变化率di/dt0。

3)当加工设备出现皮带或链条断裂现象时,其电流曲线和转速曲线如图6所示。从图6可以看出,转速曲线迅速下降为0,电流曲线缓慢下降,下降到一定值时保持不变。因此,在加工设备电机出现皮带或者链条断裂现象后的有限时间内,电流变化率di/dt

4)当加工设备出现主轴失稳现象时,其转速和电流曲线如图7所示。从图7可以看出,电流曲线和转速曲线呈周期性变化。因此,在加工设备出现主轴失稳现象时,电流变化率|di/dt|>0,转速变化率|a|>0。

通过以上分析可以看出,测控系统控制器通过计算检测的加工设备电机的电流变化率和设备关键部位转速变化率,根据电流变化率和转速变化率的不同,判断出加工设备的工作状态,进行相应的控制和其他处理。

2.4 测控系统控制流程设计

测控系统通过传感器实时采集子棉预处理、轧花、皮棉清理、集棉工艺环节加工设备的电流值与转速值,通过Modbus RTU协议把数据传输给PLC控制器;PLC控制器对检测的电流值与转速值进行综合分析判断,把检测数据和判断结果通过Modbus RTU协议传输给触摸屏,触摸屏显示数据,并通过Modbus TCP协议把数据传输给上位机;上位机软件对数据进行存储和统计,然后把统计结果提供给管理人员。

在子棉预处理环节,当加工设备出现故障时,PLC控制器控制自动喂花机的电机停止工作,停止喂花;在轧花、皮棉清理、集棉环节,当加工设备出现故障时,PLC控制器控制轧花机开合箱电机开箱,停止轧花;在加工设备出现故障时,PLC控制器控制LED屏显示器控制器,实现车间LED显示屏故障报警显示。测控系统控制流程如图8所示。

3 上位机软件设计

上位机软件为测控系统统计软件。软件采用VC6.0开发环境,使用SQL Server 2000数据库。SQL Server 2000数据库功能允许用户透明地查询和操作远程数据库实例的数据,并使应用程序看起来只有一个大型的集中式数据库,用户可以在任何一个场地执行全局应用,具有数据分布透明性和逻辑整体性等特点。

上位机负责统计、存储车间内所有采集的数据;统计车间加工设备故障原因、故障时间、故障率。上位机软件与车间触摸屏通过Modbus TCP协议通讯,把所采集的数据存储在SQL server 2000数据库中,并对数据进行处理。

进入主界面后,可以选择查看所检测加工设备的电流曲线与转速曲线,当加工设备出现故障时,可在故障报警界面查看故障原因、故障处理时间等相关故障信息。

4 小结

基于Modbus协议的棉花加工测控系统,在新疆生产建设兵团第六师新湖总场新旺社区棉花加工厂安装使用,将棉花加工设备的参数检测、分析判断与自动控制相结合,降低棉花加工设备故障率10%,缩短故障处理时间30%,提高了生产效率;基于Modbus协议的棉花加工测控系统,实现了加工过程设备故障率、故障原因统计,为管理人员生产决策提供数据支撑。

随着棉花加工测控系统的进一步完善,以及系统的推广使用,将为棉花加工过程的信息化、智能化生产奠定了基础。

参考文献:

[1] 徐炳炎.棉花加工新工艺与设备[M].北京:机械出版社,2002.

[2] 张 顺,张锦石.机采棉加工微电脑智能控制系统[J].中国棉花加工,2014(2):17-19.

[3] 何凌霄,林凡强.基于MODBUS协议网络的多点火灾测控系统[J].电子科技,2013(9):148-151.

[4] 邓元生. 基于单片机的MODBUS总线协议实现技术研究[D].长沙:中南大学,2009.

[5] 陈 铭.基于MODBUS协议的设备和PLC实现通讯的研究[J].湖南科技学院学报,2009,30(4):60-62.

[6] 张世界,蒋 健,宋 彬.一种基于Modbus协议的多总线工业测控系统[J].今日电子,2012(1):55-57.

[7] 王小鹏,张九强.MODBUS在智能保护装置上的应用[J].煤矿机械,2011(1):190-192.

[8] 王佳承,费敏锐,王海宽.基于Modbus的多现场总线集成测控系统设计[J].自动化仪表,2009,30(6):20-25.

modbus协议篇3

关键词:风电场;远程监控;SCADA;Modbus/TCP;PLC

中图分类号:TP277 文献标识码:A 文章编号:1674-7712 (2014) 02-0000-01

对风力发电机组进行远程监视控制十分必要,而风电厂远程监控系统的软件则是重中之重,它直接决定了整个系统的稳定性和效率。

Modbus/TCP协议目前应用广泛,绝大多数厂商的PLC都支持Modbus/TCP协议,其具有良好的通用性,因此基于Modbus/TCP协议开发客户端程序已成为风电远程监控系统一种行之有效的方法。

一、Modbus/TCP协议

Modbus/TCP协议以一种非常简单的方式将Modbus帧嵌入到TCP帧中,使其成为工业以太网应用层协议,Modbus协议层在TCP之上,其主要完成的任务为:在服务器端,负责解译来自客户端的Modbus帧,执行相应的请求[1]。

Modbus TCP协议的帧格式如表1所示。应用协议报头分为4个部分,数据标识符用来标识Modbus帧的次序,每多发送一个Modbus帧,该值加1;协议标识符用来确认是不是Modbus协议,如果是Modbus协议用1表示,其他协议用0表示;接下来2个字节用来表示后续字节数,即从单元标识符开始一直到数据域结束的字节数,单元标识符用来标识Modbus串行线上的某个设备单元,由于风机都是网络结构,所以这一字节并没有实际意义,填0x0或0xFF即可。功能码的含义如表2所示。数据域则添加要发送的数据,如果是向PLC发送读请求的话,数据域为要读取的寄存器起始地址和要读取的寄存器个数,如果是向PLC发送写请求,则数据域为要写入的寄存器起始地址和要写入的寄存器个数、需要写入的字节数以及需要写入的数据。

一、运用C#编程实现通讯

C#是微软公司设计的一种编程语言,是从C和C++派生来的一种简单、现代、面向对象和类型安全的编程语言,并且能够与.NET框架完美结合[2]。

为了简化网络编程复杂度,.NET对套接字又进行了封装,封装后的类就是.Sockets命名空间下的TcpListener类和TcpClient类。但是要注意,TcpListener和TcpClient只支持标准协议编程。如果希望编写非标准协议的程序,只能使用套接字来实现[3]。

核心代码

值得一提的是,由于PLC与计算机的数据存储方式可能不同,因此需要进行大小端判断及转换,转换可以采用Reverse()方法。软件界面的设计如图2所示,通过该界面可以实现对风机进行启停控制,功率调节,数据采集,绘制图表,查看故障等功能,可满足风电场远程监控系统的绝大部分需求。

三、结束语

实践表明,该软件通过Modbus TCP协议与风力发电机组实现了数据交互,可通过上位机对机组进行启动、停机、复位、限定功率等控制,查看机组各传感器反馈数据,查看故障代码,运行稳定,操作简单,具有实际价值。

参考文献:

[1]郝晓弘,祖守圆,徐维涛.基于VC的Modbus/TCP协议模型通信测试软件的实现[J].微计算机信息,2006.

[2]明日科技.C#从入门到精通[M].北京:清华大学出版社,2012(09).

modbus协议篇4

【关键词】Modbus 协议;Honeywell pks;S7-300 PLC;串口通讯

随着计算机、通信及自动控制等技术的发展,对企业自动化设备工作状况进行远程监测和控制,不仅可随时了解设备工作状态,设备出现异常时报警,便于及时发现,提高工作性能,在实际现场应用中,需要把不同厂家控制系统的数据进行共享互联。某甲醇厂60万吨/年甲醇项目的主控制系统采用了美国先进的控制系统Honeywell pks,而现场低压煤浆泵、氮压机、磨煤机的装置系统的控制系统为各自独立配置SIEMENS S7-300 PLC控制系统。为了有效的监控这些设备的运行参数,采用Modbus协议来实现控制系统与SIEMENS S7-300控制系统之间的串口通讯。

一、Modbus协议简介

Modbus 协议是应用于电子控制器上的一种通用语言。通过此协议可使控制器相互之间、控制器经由网络和其它设备之间进行通信。它已经成为一通用工业标准。可以把不同厂商生产的控制设备连成工业网络,进行集中监控。Modbus协议是一种适用于工业控制领域的主从式串口通讯协议,它采用查询通讯方式进行主从设备的信息传输,可寻址1-247个设备地址范围。协议包括广播查询和单独设备查询两种方式,二者区别就是广播查询不需要从设备回应信息。

标准的Modbus口是使用一RS-232C兼容串行接口,它定义了连接口的针脚、电缆、信号位、传输波特率、奇偶校验。控制器能直接或经由 Modem组网。

控制器通信使用主—从技术,即仅一设备(主设备)能初始化传输(查询)。其它设备(从设备)根据主设备查询提供的数据作出相应反应。典型的主设备:主机和可编程仪表。典型的从设备:可编程控制器。主设备可单独和从设备通信,也能以广播方式和所有从设备通信。如果单独通信,从设备返回一消息作为回应,如果是以广播方式查询的,则不作任何回应。Modbus协议建立了主设备查询的格式:设备(或广播)地址、功能代码所有要发送的数据、一错误检测域。从设备回应消息也由Modbus协议构成,包括确认要行动的域、任何要返回的数据、和一错误检测域。如果在消息接收过程中发生一错误,或从设备不能执行其命令,从设备将建立一错误消息并把它作为回应发送出去。

二、PKS 系统的通讯功能

PKS 系统是Honeywell公司推出得基于批处理、过程控制、 SCADA应用的开放的混合控制系统。它通过串行口(Serial)和第三方控制器或PLC通讯。它支持多种类型的控制器通讯,并可以灵活的采用多种连接方式。控制器带网络接口控制工程网权,可以直接接入到网络上,如果控制器带串口控制工程网权,可以通过modbus协议终端服务连接到网络上来。一个modbus协议终端服务允许多个控制器同时连接到网路上来,并提供多种连接接口RS-232、RS-422、RS-485。利用Modbus 协议配置方式实现兖州煤业榆林能化甲醇厂60万吨/年甲醇项目Honeywell PKS 控制系统与SIEMENS S7-300 PLC控制系统控制器之间的串口通讯。

1.硬件介绍

串行接口卡件(SIM)是安装在PKS系统标准卡槽上的双宽度I/O卡件,它的功能是实现通过现场端子板FTA连接串行接口卡件的现场设备与PKS控制器之间的通讯桥梁。串行接口卡件可以提供与单FTA 电源适配器连接的两个FTA 通讯的两个串口的双向通讯接口控制工程网权,它不存储和保持任何现场I/O设备的组态数据和实时数据,它只在与它相连的现场设备与控制器之间传输数据参数。

FTA采用插接卡件根据现场设备的需要选用指定的串行接口控制工程网权,共有两种标准的FTA 产品。一种是MU-TSIMI2 Modbus型FTA提供点对点RTU EIA-232(RS-232)或EIA-422/485(RS-422、485)多点通讯接口。另一种是MU-TSIAI2 Allen-Bradley(A-B)型FTA提供一个EIA-232(RS-232)通讯接口用于DF1通讯协议的A-BPLC-2等现场设备。

某甲醇厂60万吨/年甲醇项目采用了第一种FTA标准。一个SIM卡带两个FTA接线端子板(FTA A,FTA B),由单独电源模块供电,每个FTA 接线端子板通过屏蔽双绞通讯线与第三方设备连接。各通讯设备以总线方式接入,当通讯距离超过100米或者干扰很强时两端均加上120欧姆电阻,连接第三方通讯设备到FTA端子的最大接线长度不超过300米,如果超过300米采用信号信号中继器或者放大器,每个FTA接线端子板最多可接的设备15个。

某甲醇厂60万吨/年甲醇项目的低压煤浆泵、磨煤机S7-300控制装置离主控室Honeywell PKS控制装置有600多米,采用了S7-300 的Modbus 485转换成光信号,通过光纤送至PKS控制装置控制室通讯柜内,然后通过光电转换成Modbus 485 信号接入PKS 通讯网中,实现数据通讯。而合成压缩机、丙烯压缩机采用ITCC控制系统与Honeywell PKS控制装置距离只有30米,直接采用Modbus 485屏蔽双绞通讯线进行连接通讯,进行数据共享。

2.组态介绍:(以SINUMARRCH功能块为例)

每个SIM卡有32个通道,其中0-15通道与连接在FTA A板上的第三方设备的进行通讯,而16-31通道与连接在FTA B板上的第三方设备进行通讯。当只有1个FTA板时,那么这块FTA板必须配置成FTA A使用,即将FTA 接到Power Adapter的Channel A上,而且只能使用0-15通道。

Control Builder中SI通讯功能块有三种:对于一个软通道SINUMARR CH功能块可以接收/发放最多16个32位浮点数或整型数。

组态画面中:

Serial Link Device Address:为设备地址,即Modbus ID;

Starting Element lndex:为接收/发送数据的起始地址。此为第三方厂家提供的,是Modbus通讯寄存器首地址,1个寄存器地址存储一个16位二进制数;

Number of Numeric Value:接收/发送数据的个数。

一个SINUMARR CH功能块只能设置为一个数据类型,而且接收/发送数据的地址必须是连续的。Number of Numeric Value项中设置的值是从起始地址开始存储数据的个数;如果第三方设备发送/接收数据的Modbus 存储地址是放在不连续的几个地址段上,那么就必须用多个SINUMARR CH功能块来接收不同地址段的数据。

三、结束语

目前甲醇等煤化工项目装置中,DCS、PLC等多个控制系统同时使用的情况很普遍,把多个控制系统融合为一个整体,能在中央控制室中的DCS中监视、控制。就涉及控制系统之间的通讯问题。而Modbus串行通讯技术有着实现简便、系统集成费用低以及通讯距离远(RS485/422)等特点,所以Modbus串行通讯技术的运用在DCS与PLC之间通讯将会保持广泛的应用。

参考文献

[1]Honeywell.Experion PKS Serial interface Module implementation Guide.EP-DCXI43,R210,2004,10:18-45.

[2]黄能把,骆仕添.基于Modbus协议的siemens PLC应用系统[J].微计算机信息,2004(7):26.

modbus协议篇5

论文关键词:智能开关柜,协议,上位机,控件

引言

我国智能发电和智能输电网的建设与发达国家基本同步,但是智能配电网的建设则相对滞后。随着国家低碳经济、节能减排和新能源战略的实施,智能配电网的建设必然受到越来越多的重视。现代计算机技术和通信技术的飞速发展,促进了智能配电系统的发展和完善,而开关柜的智能化就是智能配电网的重要基础。

智能开关柜是在以模拟仪表、继电器为监测、控制设备的普通开关柜基础上,与新型的智能仪表(网络电力仪表、智能配电监控/保护模块、网络I/0等)进行配合,通过其网络通讯接口与中央控制室的计算机系统联网,从而可以实现对各供配电回路的电压、电流、有功功率、无功功率、功率因数、频率、电度量等电参数以及断路器的分合闸状态、故障信息、开关柜的温湿度信息进行监测,对断路器的分合闸状态和开关柜的温湿度进行控制,并可以配合远程监控软件实现“四遥”。

本课题采用高性能AVR单片机设计的开关柜智能操控装置提供RS485通讯接口,可进行串口通信。本文根据Modbus通讯协议的定义以及智能开关柜操控装置采集信息的种类和特点,完整地设计了该类智能开关柜操控装置与上位机通讯的Modbus-RTU通信协议,并采用VC++程序设计语言实现了该通讯协议。

1智能开关柜Modbus-RTU通讯协议设计

1.1Modbus-RTU通讯协议简介

Modbus通讯协议是由Modicon公司开发且已是工业领域全球最流行的通讯协议。此协议支持传统的RS-232、RS-422、RS-485和以太网设备。

Modbus协议规定了消息、数据的结构、命令和应答的方式。数据通讯采用Maser/Slave方式,Master端发出数据请求消息,Slave端接收到正确消息后就可以发送数据到Master端以响应请求。Master端也可以直接发消息修改Slave端的数据,实现双向读写。

Modbus协议在一根通讯线上使用主从应答式连接(半双工),这意味着在一根单独的通讯线上信号沿着相反的两个方向传输。首先,主计算机的信号寻址到一台唯一的终端设备(开关柜),然后,终端设备发出的应答信号以相反的方向传输给主机。Modbus协议只允许在主机和终端设备之间通讯,而不允许独立的终端设备之间的数据交换,这样各终端设备不会在它们初始化时占据通讯线路,而仅限于响应到达本机的查询信号。

Modbus通讯规约包括RTU协议和ASCII协议。RTU(RemoteTerminalUnit)通讯方式采用8位二进制数据传输命令或数据,数据校验采用CRC循环冗余校验,通讯速度较快;ASCII通讯方式采用7位二进制表示的ASCII码进行通讯,数据校验采用奇偶校验或LRC逻辑冗余校验,通讯速度较慢。在一个通讯系统中,只能选用一种通讯方式。

在RTU模式下,帧中的每个字节直接用于传输,这样在同样的波特率下,可比ASCII模式传输更多的数据。与绝大多数电力自动化仪表一致,本仪表采用Modbus-RTU通讯模式。

1.2字节格式

智能开关柜操控装置Modbus-RTU通讯协议中的数据结构以及数据传输遵循以下规则:

编码形式:二进制;

字节位:每个传输序列包含11位串行数据,其中1位起始位、8位数据位D0~D7、2位停止位;

发送方式:数据位传输时,先传低位,后传高位,如图1所示。

图1字节传输序列(RTU模式)

Fig.1Bytetransmissionsequence(RTUmode)

1.3数据帧格式

帧是传送信息的基本单元,Modbus协议中主机与从机采用相同的帧格式。

RTU帧以至少4个字节的停顿时间开始,同样以至少4个字节的停顿时间标志帧的结束。整个帧必须作为连续的流传送,RTU数据帧格式如表1所示。

表1Modbus-RTU协议的帧格式

Tab.1FrameformatofModbus-RTUprotocol

帧开始 地址码 功能码 数据区 校验码 帧结束

4字节

停顿时间

1字节 1字节 N字节 2字节

4字节

modbus协议篇6

关键词:Modbus TCP/IP;制冷机组;套接字

中图分类号:TP393文献标识码:A文章编号:1009-3044(2008)30-0553-02

Based on The Mobus TCP/IP Protocol Realization

WANG Ke-peng

(Tongji University, Shanghai 201804, China)

Abstract: Based on the combination of the Modbus protocol and TCP/IP protocol, remote network communication was realized. Due to adopting technology of socket and multithread, it makes information of Modbus protocol to be transmited in Internet via TCP/IP protocol, more expanded application of Modbus protocol, and realized remote network communication in Modbus network that is made up of the controller and related chiller devices.

Key words: modbus TCP/IP; chiller; socket

1 引言

Modbus是一种通讯协议,是基于客户机端和服务器端方式连设备,实现设备间的数据交换。基于Modbus应用协议族的工业以太网解决方案已经逐渐应用于各种现场测控领域。而工业以太网的领先者Modbus TCP/IP也正逐渐成为一种自动化控制的通信协议标准,在我们的风洞监控系统中的子系统制冷机组的监控功能就是利用Modbus TCP/IP 协议来实现了对远程制冷机组的数据提取和数据传输从而达到监控目的。

2 Modbus TCP/IP协议简介

Modbus/TCP报文服务采用客户端/服务器的模式交换实时信息,该模式基于以下四种类型的报文:Modbus请求、Modbus确认、Modbus指示和Modbus响应。(如图1)

请求(Request):客户端为开始事物处理而发出的信息。

指示(Indication):服务器端接收到的请求信息。

响应(Response):由服务器端发出的响应信息。

确认(Confirmation):客户端接收到响应信息。

3 Modbus TCP/IP协议结构

常用的Modbus报文格式由附加地址、功能代码、数据域组成,与通常的Modbus不同,在Modbus/TCP报文不再需要CRC-16或LRC校验域。因为TCP/IP协议和以太网的链路层校验机制保证了数据包传递的正确性。报文的具体格式(如图2)。

另外,报文中增加的专用的MAPH头(Modbus Application Protocol Header),用以识别Modbus应用数据单元ADU(Application Data Unit),该头的具体组成及含义如表1所示。

Modbus TCP功能代码概要:功能代码划分:按应用深浅,可分为3个类别。

类别0,对于客户机/服务器最小的可用子集:读多个保持寄存器(fc.3);写多个保持寄存器(fc.16)。

类别1,可实现基本互易操作的常用代码:读线圈(fc.1);读开关量输入(fc.2);读输入寄存

(fc.4);写线圈(fc.5);写单一寄存器(fc.6)。

类别2,用于人机界面、监控系统的例行操作和数据传送功能:强制多个线圈(fc.15);读通用寄存器(fc.20);写通用寄存器(fc.21);屏蔽写寄存器(fc.22);读写寄存器(fc.23)

4 结合Modbus TCP/IP在风洞监测系统的应用

涉及到Modbus TCP/IP通信的模块流程:其中该模块用到的Modbus的功能代码为写线圈(fc.5)、读多个保持寄存器(fc.3)。

该模块对象在风动系统中为chiller,其中封装了写线圈(fc.5)和读多个保持寄存器(fc.3),在模块对象chiller的接口分别为

ForeceSingleCoils(int _transaction, int _protocolIdentifier, int _length, byte _unitId, byte _function, int _dataAddress, int _inputData)

ReadHoldingRegister(int _transaction, int _protocolIdentifier, int _length, byte _unitId, byte _function, int _dataAddress, int _numUnit)

在服务端有两台制冷机组 compressor F1,compressor F2

1) 开关控制步骤:其中A1为对compressor F1的开关控制,A2为对compressor F2的开关控制

首先向server发送连接请求进行基于tcp的以太网的连接,如果连接成功,则做A1到F1的连接,起动过程如下:

由B判断是否与Server连接成功,如果未连接成功,则转向继续想Server请求连接,如果连接成功,则转向C调用chiller.ForceSingleCoils()再到D调用Assemble()返回封装好的buffer,最后到E调用m_Socket.SendData().,其中compressor1_ID是compressor F1的unitId。

发命令:chiller.ForceSingleCoils(1, 0, 6, compressor1_ID, 5, 61, 1))->

SubSystemSocket.m_Socket.SendData(Assemble(1, 0, 6, compressor1_ID, 5, 61, 1))(其中Assemble()是根据Modbus tcp规定对数据进行封装的过程,并返回一个数据块buffer供套接字作参数发送到server再根据其中的unitId找到对应的compressor,并将其设置为开启状态,如果开启成功,则返回原命令,如果开启不成功,则把5+80作为functioncode的值返回。

2) 监测compressor各参数数值步骤:

当发送一个读取数据的命令时由B判断是否与compressor F1连接成功,如果未连接成功,则转向继续向compressor F1请求连接,如果连接成功,则转向C调用chiller.ReadHoldingRegitsters再到D调用Assemble()返回封装好的buffer,最后到E调用m_Socket.SendData().,其中compressor1_ID是compressor F1的unitId)

发命令:chiller.ReadHoldingRegisters(1, 0, 6, compressor1_ID, 3, 62, 5))->

SubSystemSocket.m_Socket.SendData(Assemble(1, 0, 6, compressor1_ID, 3, 62, 5))其中Assemble()是根据Modbus tcp规定对数据进行封装的过程,并返回一个数据块buffer供套接字作参数发送到server再根据其中的unitId找到对应的compressor,并读取从_dataAddress开始的连续_numUnit个值,如果读取成功,则返回值,如果读取不成功,则把3+80作为functioncode的值返回。

如下为Assemble()的封装源码(其中的封装顺序是由Modbus文档规定的):

modbus协议篇7

关键词:MODBUS/UDP协议;实时性;智能控制;数据传输

前言

目前,从工业控制的发展趋势来看、不难发现以太网将会成为通信领域的主流技术,因其在性能和速度方面都有很大的提高,并且在全球范围内得到了广泛的应用。虽然它在工控领域得到了迅猛发展,但现有的以太网技术不能完全满足对数据确定实时的要求,因此,现场总线基金会和一些从事工控方面的公司都采用了多种方法来改进以太网。人们设想直接修改以太网MAC协议方式,但它却有着自身的不足一一成本太高。另外,还有的研究人员想通过在数据链路层增加实时调度层的方式来提高实时性,再有就是采用以太网与TCP/IP相结合的方法,在本文中主要是采用MODBUS/UDp协议来减少网络时延的方式来达到对数据实时性的要求。

在智能建筑行业中有很多监控方面的智能仪表,来达到对监控对象的实时监控,由于各种智能仪表的型号、通讯接口、通讯协议不同,无法直接进行网联。随着信息化网络化的需求不断提升,对监控对象数据的实时采集、精确控制和远程协调提出了更高的要求。本文介绍了(1)在已有的以太网络技术基础上实现现场智能仪表的联网,(2)利用MODBUS/UDP协议来进行对数据的准确可靠的实时传输和控制。如何将检测到的数据上传到检测中心,检测中心又如何将各种控制命令下发到各现场机,有多种方法,如利用GSM或CDMA等无线传输方法、DDNTM等数据专线、IP网络。在这些传输方案中,利用IP网络无疑是理想的方法。

监测系统的组成

该系统基于互联网技术,并采用B/S软件构架,即Browser/Server(浏览器/服务器)结构,是随着Luternet技术的兴起,对c/s结构的一种变化后改进的结构,在这种结构下,用户界面完全通过WWW浏览器实现,一部分事物在前端实现,但是主要事物逻辑在服务器端实现,随着Windows 98/Windows 2000将浏览器技术植入操作系统内部,这种结构更成为当今应用软件的首选体系结构。

设计出了一个基于以太网构架的建筑监测系统。如图1所示。

系统由监控中心(服务器PC机)、TCP/IP传输网络、传输设备(机顶盒、多串口设备等)、现场机等组成。监控中心有权通过传输网络与各监控设备连接,采集其检测数据,或者发出控制指令。同时还可以分析、处理、查询、存储相关数据、是检测系统的核心。

现场机安装在需要监测的控制点,用于监控、监测电能使用情况,并完成与上位机的数据通讯。在图1中所应用的就是一种集RS485总线接口、MODBUS通讯接口和存储于一体的智能仪表。根据RS485标准,数据传输率在100kbit/s时通信距离可达1200米,选择带有RS485接口的另一原因就是在目前市场中这种智能仪表的成本较低,而且它完全能满足在工控中对监测和数据传输的要求。

机顶盒通过嵌入式网络监控编码器实现本地数据压缩并将监测数据通过网络传送到监控中心,提供各种接口与PC机相连,能将RS485口转换成10/100M口,实现数据的网络化并上传监控,采用lO/100M接口实现TCP/IP网络管理和监控,更有利于监控的IP网络化管理。

MODBUS/UDP协议

在目前的建筑控制系统中使用最广泛的是MODBUS/TCP通讯协议,但在实际的应用中我们会发现MODBUS/TCP协议确实达到了数据传输的可靠性要求,在建立网络连接时首先要进行三次握手,对数据进行封装、传输,当监控中心收到信息时再返回一个确认信息,在这一系列过程中,MODBUS/TCP协议花费了大量的时间,因此也无法达到人们对数据的实时性传输的要求。针对建筑环境通信的特点和以上问题,本文中采用MoDBUS/UDP协议。MODBUS/UDP协议,是将MODBUS协议与以太网UDP协议结合形成的,UDP协议是面向非连接的,其实时性高,通信效果好。UDP的实时性主要是在一个完整的周期通讯中,报文总的传输延迟减小,网络的利用率提高,节点的响应速度也就随之得到了提升,因此能完成数据的实时传输。对于协议的可靠性、虽然不能从协议本身进行改进,但通过编写好上层软件,依然可以弥补MODBUS/UDP协议的不足。UDP具有TCP所望尘莫及的速度优势,尽管TCP协议中有各种安全保障功能,但是在实际执行的过程中占用了大量的系统资源,从而对传输速度产生严重影响。

将一组数据从传感器传输到控制器或从控制器传输到执行器,导致数据延时的因素主要有数据的封装等待时延Twsit,从传感器到控制器的网络时延Tsc,控制器到执行器的网络时延Tca。也就是总时延T=Twsit+Tsc+Tca,假若在网络不拥堵的情况下,对比UDP和TCP的数据传输时延,我们会发现TCP所用的时间要比UDP的长,主要是因为在封装数据时TCP协议要在数据中添加以太网帧头和以太网帧尾,这就延长了Twsit的时间。在MODBUS协议中具有读写线圈、读写寄存器、读写异常等功能,因此我们就可以省去诊断、读取记录、编程等设备控制码,节省了时间,使得传输过程的总时延减小,提高了控制中对实时性的要求。

MODBUS协议定义了一个与基础通信层无关的PDU(协议数据单元)。特定总线或网络上的MODBUS协议映射能够在ADU(应用数据单元)上引入附加域。

标准的MODBUS报文协议帧的地址域为1字节大小,为了能在网络控制总线上采用令牌总线的方式来使得每个站点都有均等的机会来发送数据,采用隐性令牌的方式来避免介质访问引发的冲突,将1字节的地址域扩大为2字节,地址域分为1字节的目的地址和1字节的源地址,1字节的功能码变为2字节。改进后的帧格式如图3所示。

目的地址是该帧的接受地址:源地址是发送帧的地址:状态位则用来表示发送的帧是否被接收。网络管理者给每个节点分配一个眭一的地址。每个站点监视收到的每个报文帧的源地址,并为接收到的源地址设置一个 隐h生令牌寄存器,让隐性令牌寄存器的值为收到的源地址加1、若隐性令牌寄存器的值与哪个站点的介质访问控制MAC地址相同时、该站点则发送数据,若没有数据可发送则发送一个空帧,在网络中没有真正的令牌帧在网络中传输,而是将令牌隐含在普通的数据中。UDP上的MODBUS的请求/响应格式如图4所示。

另外,报文中要加上专业的MAPH头(Modbus Application ProtocolHeader),以达到识别MODBUS应用数据单元ADU的目的。报文头为7个字节长度、包括:事务处理标识符(Transaction Identifier)、协议标识符(Protocol Identifier)、长度(Length Field)、单元标识符(UnitIdentifier)。

事务处理标识符:用于事务处理配对。在响应中、MODBUS服务器复制请求的事务处理标识符。

协议标识符:用于系统内的多路复用。通过值0识别MODBUS协议。

长度:长度域是下一个域的字节数,包括单元标识符和数据域。

单元标识符:专门用于以太网TCP/IP网络和MODBUS串行链路之间的网关对MODBUS或MODBUS+串行链路从站的通信。

实验结果分析

在LABVEIW软件平台上进行了模拟实验,对MODBUS/UDP传输数据流进行检测,MODBUS/UDP协议进行数据传输时的数据流量在242Kbps到250Kbps之间。其原理图与结果如图5和图6所示。

当发送端的连接建立起来后,将正弦信号输入数据类型转换器,将转换后的数据发送到UDP端口,UDPwrite根据所设置的传输端口对数据进行传输。在接收端UDP read根据主机端口号读取数据、在读取数据过程中为能监控到数据的传输流量,在接收处的传输末端使用框图来显示对数据的监控情况。

为了进行比较,对同一组随机数据的传输也使用了MODBUS/TCP协议。流量监控数据在236Kbps在245Kbps之间,我们不难发现MODBUS/TCP的传输速率明显要比MODBUS/UDP低。导致这种现象的原因在第三部分已经给出了分析,在LABVEIW上进行模拟仿真不存在现实中Tsc和Tca时延的问题,因此进一步证明了MODBUS/UDP在封装部分时间短,占用网络资源少,能快速对采集到的数据进行传输。

结果表明,上位机使用MODBUS/UDP协议对测控终端进行查询并读取终端的数据,MODBUS/UDP具有更好的实时性,因此对于有大量数据进行传输时会减少堵塞问题的出现,因此使用MODBUS/UDP能实现数据高效和实时的传输。

结语

modbus协议篇8

【关键词】总线技术;低压开关柜;数据通信

引言

ABB公司开发的基于现场总线技术的新一代MNS iS智能化低压开关柜系统自投入使用以来,由于其采用的一体化解决方案,并在开关设备运行监测、功能配置及系统通信等方面实现了更高层次的安全可靠和支撑控制,极大的方便了低压电柜在工业现场的使用和拓展。它拥有完善的网络通信,除了支持 ModBus-RTU,ProfiBus-DP等现场总线通信协议外,还支持OPC。本文将对其支持的总线技术做一一探讨。

1、Modbus-RTU

Modbus协议最初由Modicon公司开发出来,在1979年末该公司成为施耐德自动化(Schneider Automation)部门的一部分,现在Modbus已经是工业领域全球最流行的协议。此协议支持传统的RS-232、RS-422、RS-485和以太网设备。许多工业设备,包括PLC,DCS,智能仪表等都在使用Modbus协议作为他们之间的通讯标准。有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控。当在网络上通信时,Modbus协议决定了每个控制器须要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行动。如果需要回应,控制器将生成应答并使用Modbus协议发送给询问方。 Modbus协议包括ASCII、RTU、TCP等,并没有规定物理层。此协议定义了控制器能够认识和使用的消息结构,而不管它们是经过何种网络进行通信的。标准的Modicon控制器使用RS232C实现串行的Modbus。Modbus的ASCII、RTU协议规定了消息、数据的结构、命令和就答的方式,数据通讯采用Maser/Slave方式,Master端发出数据请求消息,Slave端接收到正确消息后就可以发送数据到Master端以响应请求;Master端也可以直接发消息修改Slave端的数据,实现双向读写。Modbus协议需要对数据进行校验,串行协议中除有奇偶校验外,ASCII模式采用LRC校验,RTU模式采用16位CRC校验,但TCP模式没有额外规定校验,因为TCP协议是一个面向连接的可靠协议。另外,Modbus采用主从方式定时收发数据,在实际使用中如果某Slave站点断开后(如故障或关机),Master端可以诊断出来,而当故障修复后,网络又可自动接通。因此,Modbus协议的可靠性较好。对于Modbus的ASCII、RTU和TCP协议来说,其中TCP和RTU协议非常类似,我们只要把RTU协议的两个字节的校验码去掉,然后在RTU协议的开始加上5个0和一个6并通过TCP/IP网络协议发送出去即可。

MNS iS智能化低压开关柜支持的是RTU传输模式,当控制器设为在Modbus网络上以RTU(远程终端单元)模式通信,在消息中的每个8Bit字节包含两个4Bit的十六进制字符。这种方式的主要优点是:在同样的波特率下,可比ASCII方式传送更多的数据。代码系统8位二进制,十六进制数0...9,A...F消息中的每个8位域都是一个两个十六进制字符组成每个字节的位1个起始位,8个数据位,最小的有效位先发送,1个奇偶校验位,无校验则无,1个停止位(有校验时),2个Bit(无校验时) 错误检测域 CRC(循环冗长检测)

2、ProfiBus

ProfiBus是过程现场总线的缩写,于1989年正式成为现场总线的国际标准。目前在多种自动化的领域中占据主导地位,全世界的设备节点数已经超过2000万。它由三个兼容部分组成,即ProfiBus-DP(Decentralized Periphery).ProfiBus-PA(Process Automation).ProfiBus -FMS(Fieldbus Message Specification)。主要使用主-从方式,通常周期性地与传动装置进行数据交换。

ProfiBus协议结构是根据ISO7498国际标准,以开放式系统互联网络(Open System Interconnection-OSI)作为参考模型的。该模型共有七层。(1)ProfiBus-DP:定义了第一.二层和用户接口。第三到七层未加描述。用户接口规定了用户及系统以及不同设备可调用的应用功能,并详细说明了各种不同ProfiBus-DP设备的设备行为。 (2)ProfiBus-FMS:定义了第一.二.七层,应用层包括现场总线信息规范(Fieldbus Message Specification-FMS)和低层接口(Lower Layer Interface-LLI)。FMS包括了应用协议并向用户提供了可广泛选用的强有力的通信服务。LLI协调不同的通信关系并提供不依赖设备的第二层访问接口。(3)ProfiBus-PA:PA的数据传输采用扩展的ProfiBus-DP协议。另外,PA还描述了现场设备行为的PA行规。根据IEC1158-2标准,PA的传输技术可确保其本征安全性,而且可通过总线给现场设备供电。使用连接器可在DP上扩展PA网络。注:第一层为物理层,第二层为数据链路层,第三-六层末使用,第七层为应用层。

与其它现场总线系统相比,ProfiBus的最大优点在于具有稳定的国际标准EN50170作保证,并经实际应用验证具有普遍性。目前已应用的领域包括加工制造.过程控制和自动化等。PROFIBUS开放性和不依赖于厂商的通信的设想,已在10多万成功应用中得以实现。市场调查确认,在德国和欧洲市场中ProfiBus占开放性工业现场总线系统的市场超过40%。ProfiBus有国际著名自动化技术装备的生产厂商支持,它们都具有各自的技术优势并能提供广泛的优质新产品和技术服务。

上一篇:robots协议范文 下一篇:snmp协议范文