PROFIBUS现场总线的通信原理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
PROFIBUS 现场总线的通信原理
1. 引言
PROFIBUS 是一种国际性的开放式现场总线标准,是唯一的全集成H1(过程)和H2(工厂自动化)现场总线解决方案[1],它不依赖于产品制造商,不同厂商生产的设备无须对其接口进行特别调整就可通信,因此它广泛应用于制造加工、楼宇和过程自动化等自动控制领域。它包括3个兼容版本,Profibus-DP(H2)、Profibus-PA(H1)、Profibus-FMS 。DP 是经过优化的高速、廉价的通信接口,专为自动控制系统和设备级分散I/O 之间通信设计,可取代24V 或0~20mA 并行信号线。也可用于分布式控制系统的高速数据传输。FMS 用于车间级通用性中等传输速度的循环和非循环通信,适用于传感器、执行器、PLC 等一般自动控制系统。PA 是专为过程自动化设计的标准本质安全传输技术,满足IEC1158-2中规定的通信规程,适用于安全性要求高以及由总线供电的场合。PROFIBUS 可使分散式数字化控制器从现场底层到车间级网络化,总线系统分为主站和从站,主站决定总线的数据通信,从站仅对接收到的信息给予确认或当主站发出请求时向它发送信息[2]。
2. PROFIBUS 的协议结构
PROFIBUS 的协议结构是根据ISO7498国际标准化开发式互联网络(OSI )作为参考模型,具体结构如图1所示。
图1 PROFIBUS 协议结构图
PROFIBUS-DP 使用了第1、2层和用户接口,这样确保了数据传输快速和有效地进行,直接数据链路映像(DDLM )使用户接口易于进入第2层。PROFIBUS-FMS 对第1、2、7层均加以定义。应用层包括现场总线信息规范(FMS )和底层接口(LLI )。FMS 包括了应
物理(1数据链路(2(3)~(6(7.
..
用协议并向用户提供可广泛选用的通信服务;LLI 协调不同通信关系并保证FMS 不依赖设备访问第二层,第二层(FDL )提供总线访问控制并保证数据的可靠性。PROFIBUS-PA 的数据传输采用扩展的PROFIBUS-DP 协议,另外还使用了PA 行规。这种传输技术可确保其本征的安全性并可通过总线为现场设备供电[1,2]。
3. PROFIBUS 总线存取协议
三种PROFIBUS (DP 、FMS 和PA )均使用一致的总线存取协议,该协议是通过OSI 参考模型的第2层来实现的,它包括数据的可靠性以及传输协议和报文的处理。其总线存取协
议如图2所示。
图2 PROFIBUS 总线存取协议
在PROFIBUS 中,第二层称为现场总线数据链路层(FDL ),介质存取控制(MAC )具体控制数据传输的程序。MAC 必须确保在任何一个时刻只能有一个站点发送数据,PROFIBUS 总线存取协议包括主站之间的令牌传递方式和主站与从站之间的主从方式。在图2中,首先由PROFIBUS 总线上的主站(不一定全部)组成逻辑环,让一个令牌在逻辑环中按一定方向依次流动。凡获得令牌的站就获得了总线的控制权,并获得批准的令牌持有时间,在这段时间内,该站就成为整个网络的主站,执行主站工作,可依照主-从关系表与所有从站通信,也可依照主-主关系表与所有主站通信,这就是所谓令牌控制主站浮动。根据这一定义,总线有三种控制方式:N :M 方式(总线共有M 个站,其中N 个主站,N 令牌环是所有主站的组织链,按照它们的地址构成逻辑环。在这个环中,令牌(总线存取权)在规定的时间内按照次序(地址的升序)在各主站中依次传递。在总线系统初建时,主站介质存取控制制定总线上的站点分配并建立逻辑环。在总线运行期间,断电或损坏的主站必须从环中删除,新上电的主站必须加入逻辑环。总线存取控制保证令牌按地址升序依次在各主站间传送,各主站的令牌保持时间长短取决于该令牌配置的循环时间。另外,PROFIBUS 介质存取控制还可监测传输介质及收发器是否有故障,检查站点地址是否出错(如地址重复)以及令牌错误(如多个令牌或令牌丢失)。下面重点介绍令牌在逻辑环中的传递和逻辑环的维护。 3.1 令牌的传递 在逻辑环中的每一个站内都存放着一张LAS 表,在LAS 表中列出PS 、TS 、NS 。在正常情况下,每一个站都按LAS 表进行令牌传递。对于具体某个站而言,令牌一定是从它的PS 传来,传到它的NS 去,图2中各站的LAS 表如表1所示。 当一个站把令牌传递给自己的下一个站后,它还应当监听一个时间片(Slot time ),看下一站是否收到令牌。当下一站收到令牌,无论是发送数据还是再向它的下一站传递令牌,都令牌流动主站从站123456 789PS ,TN ,NS PS ,TN ,NS PS ,TN ,NS PS ,TN ,NS ... 将在帧的SA 段填入监听站的NS 。若监听不到则再次向自己的NS 发令牌,若连试两次仍 表1 PROFIBUS 的LAS 表 收不到SA 等于自己NS 的帧,则表明自己的下一站NS 出了故障。于是此站应向再下一站传递令牌。若找到新的下一站,则令牌绕过故障站继续流动;若失败,则再向下找一站。如果一直没有找到下一站,则表明现有令牌持有站是逻辑环上唯一的站,必须重新建立逻辑环。 3.2 逻辑环的建立 PROFIBUS 协议首先人为设定逻辑环中地址最小的主站为环首,环首首先自己给自己发一令牌帧,这一特殊的令牌帧用来通知其它主站要开始建立逻辑环了,然后环首用“Request FDL Status”,按地址增大顺序发给自己的下一站。若下一站用“Not Ready”或者“Passive ”应答,则首环把此站地址登记到GAPL 表中;若下一站用“Ready for the Logical ring ”应答,则环首把此站地址登记到LAS 表中,这样逻辑环就建立起来了。 3.3 站的增减 在逻辑环上的站,必须在LAS 表上登记增加的新站或者删去退出的站,同时LAS 表随着站的增减而变化。在逻辑环上从本站到自己的下站这段地址空间叫GAP ,GAP 的状态表叫GAPL 表,逻辑环上的每个站都要对自己的GAP 进行检查,检查和应答的方式同3.2节中的描述,如果主站退出逻辑环,则相应的GAPL 表应相应修改。例假若图2中主站4退出逻辑环,则站2的GAPL 表变成表2的形式。逻辑环中主站的增减是通过周期性询问GAP 后,对LAS 以及GAPL 表修改实现的。 表2 站2的GAPL 表 3.4 主从方式的优先级调度[4,5] 在PROFIBUS 总线协议中,一旦某主站获得了令牌,它就按主从方式控制和管理全网,并按优先级进行调度。首先进行逻辑环维护,这段时间不计入令牌持有时间。然后处理高优先级任务,最后处理低优先级任务。高优先级服务即使超过了令牌持有时间,也应全部处理完。在处理完高优先级任务后,再根据所剩的令牌持有时间对低优先级任务进行调度。优先级的高低是由主站提出通信要求,用户进行选择的,选择高服务优先级,则该任务为高优先级任务;反之为低优先级任务。这类由主站随机提出的通信任务,采用非周期发送请求方式传输数据。如果通信任务是由用户预先在每个主站中输入一张轮询表(Polling list ),该表定义了此主站获得令牌后应轮询的从站及其他主站,并规定此主站与轮询表中各站按周期发送/请求方式传输数据。对于这类任务,PROFIBUS 一律按低优先级任务调度,即:当处理完2468结束2468结束2468结束2468结束TS TS TS TS NS NS NS NS PS PS PS PS 站2 LAS 表站4 LAS 表站6 LAS 表站8 LAS 表....Passi ve Passi ve ? 345结束....