从通信的角度理解现场总线
工业控制的应用离不开经典控制理论,随着计算机技术在工业控制中的广泛应用,反馈控制的要求体现在控制指令如何到达执行器,而控制效果如何通过传感器发回控制系统。在复杂的工业环境中,现场总线能够正确、快速、稳定的通信,从而保证工业控制系统既能得到及时、准确的现场数据,经过高效处理后,又能快速、精确的发出执行命令。
1通信的基本模型
通信就是将信息从一个点传送到另一个点,比如说电话、广播和电视。工业通信系统也是如此,也需要发送器、接收器以及和通信链路。链路类型包括双绞线、同轴电缆、光纤、无线和微波。发送端解调器调制数据,接收端调制解调器解调信号以再现原始数据,而其中的通信规则称为协议。
图通信系统的基本模型
概念 |
说明 |
|
数据 |
data |
运送消息的实体 |
信号 |
signal |
数据的电气或电磁表现 |
模拟 |
analogous |
消息取值是连续的 |
数字 |
digital |
消息取值是离散的 |
码元 |
code |
使用时域波形表示数字信号时,代表不同离散数值的基本波形 |
2.工业通信的特殊要求
工业通信与一般通信相比有一些特殊的要求,比如说工业环境就不同于办公室环境。
|
办公室环境 |
工业环境 |
温度 |
适中,波动范围小 |
严酷,波动范围大 |
湿度 |
不潮湿或无水 |
潮湿 |
粉尘 |
低 |
高 |
振动 |
不靠近振动源 |
可能会有振动源 |
电磁干扰 |
弱 |
强 |
化学危险 |
无 |
油污或有害气体 |
紫外线 |
无 |
强 |
放射性 |
无 |
可能有 |
工业通信主要是过程数据、状态变量、维护等,数据分类如下表所示:
工业通信的数据 |
|||||
状态 |
事件 |
其它数据 |
|||
输入、输出、内部变量 |
状态发生变化 |
文件下载 |
请求 |
响应 |
站点管理 |
通信中和时间相关的特征有实时性、频率、抖动、生命周期、响应时间、同步、时间和空间的相关性或一致性。工业通信往往要求保证通信的实时性,也就是说响应时间是否满足时间限制。
特征 |
说明 |
实时性 |
所有操作、数据以及动态系统组件的时间特性 |
频率 |
数据的更新快慢 |
抖动 |
通信周期的变化 |
生命周期 |
变量维持在内存中的时间 |
响应时间 |
请求和响应之间的时延 |
同步 |
在同一时间或者很短的一段时间内,发生多个操作或事件 |
时间一致性 |
在给定的时间窗口中发生了几个事件 |
3.现场总线如何满足工业通信的要求
OSI模型定义了一个框架物理层通常与如电缆、连接器、网络接口卡、无线传输硬件等物理介质相混淆。物理层不仅定义了物理介质及其正确连接的接口要求,物理层定义编码方式、校验方法、带宽、频谱、载波、波特率、电、光、无线电信号、流入异步串行通信控制、电缆类型、连接器的机械设计。信号通过传输介质从发送端到接收端。通信介质的机械和电气特性。
而数据链路层负责创建、传输和接收数据包,现场总线对于数据链路层有细分为LLC和MAC两层,前者提供接口网络层协议,并控制与其对等体的逻辑通信,后者提供对特定物理编码的访问和传输。
应用层规定了交互数据的方式,并定义了设备的各种信息、状态和参数。
现场总线的通信数据一般分为标识数据和通用消息。标识数据是指控制器与传感器、控制器与执行器以及控制器之间传输过程变量。通用消息在系统组态和维护阶段,用于文件的下载和上传。
现场总线通信数据分类 |
|||||
标识数据 |
通用消息 |
||||
传感器的输入数据、执行器的输出数据 |
应用之间通信 |
||||
出版者/订阅者 |
生产者/消费者 |
||||
实时 |
非实时 |
实时 |
非实时 |
||
周期 |
非周期 |
- |
周期 |
非周期 |
- |
3.1替代4-20mA的接线方案
过去工业通信采用模拟信号,就是广为人知的4-20mA技术,后来现场总线使用数字通信体现出抗噪声、减少电缆、诊断功能等诸多的优点。因此现场总线会取代4-20mA。
|
4-20mA |
现场总线 |
信号 |
模拟 |
数字 |
抗干扰性 |
差 |
强 |
OSI |
物理层 |
物理层、数据链路层、应用层 |
诊断 |
少 |
完整 |
安装费用 |
高 |
低 |
单个设备成本 |
地 |
高 |
采用现场总线的关键要求之一是分布式智能。为了访问现场总线,智能的传感器和执行器需要具备计算能力、数字通信、协议标准,因此设备成本相对就高。
3.2RS-232与RS-485电气标准
有人会把RS-232和RS-485当成总线,其实两者是一种接口的标准。接口标准主要从电气特性(信号)、机械特性(DB9)、管脚功能进行描述。两者的主要区别就是逻辑如何表示,前者是电压表示01,后者是电压差表示01。具体的比较如表所示。
RS |
232 |
485 |
信号特点 |
电压 |
差分 |
通信模型 |
点对点 |
多点 |
接线方式 |
发送管脚连接收管脚 |
所有DATA+连一块,所有DATA-连一块 |
通信方式 |
发送管脚工作不影响接收管脚,所以是全双工 |
两个管脚同时工作才能实现发或收,所以是半双工 |
因为RS-232只能实现点对点通信(双机互联),无法联网(多机),而RS-485能够连成总线型网络,而且很多现场总线基于RS-485标准,所以有人会理解成485总线,但是严格来说485总线不是一种现场总线,只是有些现场总线是使用了RS-485作为其物理层定义,因此现场总线和485不是一个层次上的概念。
3.3曼彻斯特编码、编码、码元的概念
电缆和连接器的引脚分配。引脚分配取决于电缆的类型以及所使用的网络架构。电信号的格式。用于信号0和1的编码,值或模拟中的特定值传输取决于所使用的网络架构。大多数现场总线使用曼彻斯特编码通信。
将时钟同步信号就隐藏在数据波形中,每个码元包含一个跳变,低到高或者高到低表示一个码元。先理解码元、比特、波特率、比特率,码元就相当于单词,而比特就是字母,单位时间内的传输的码元就是波特率,而单位时间传输的比特就是比特率。单词可以由一个字母组成,也可以由几个字母组成,也就是说码元数是比特数的倍数,这时波特率也就是比特率的倍数关系。我们都有背单词的经历,比如说我们每天都要记住10个单词,假设每个单词都是4个字母组成,那么波特率就是每天记住的单词数,而比特率就是每天记住所有单词的字母数目。
3.4通信介质
现场总线一般使用有线连接,原理是使用电磁波在通信介质传输中传播,通信介质有双绞线、同轴电缆和光纤,如图所示。随着工业现场对接线要求的不断变化,以及无线技术的快速发展,如今现场总线开始越来越多的使用无线连接。
3.5通信模型
通信模式是指两个或多个应用程序之间交互对象的方式,分为客户端/服务器和生产者/消费者(出版者/订阅者)两类模式。
3.5.1客户端/服务器模式
图显示了客户端/服务器模式,该模式更适合传输状态数据。当客户端发出读请求后,服务器就回复。客户端/服务器模式的通信过程一般细分为请求、指示、响应和确认四个步骤,其中指示是指服务器收到了一个请求事件,确认说明客户端收到了响应。响应服务有不同的意思,有的响应表示收到消息,有的表示开始服务或返回结果。对于一个读服务,读出对象的值包含在响应中,读请求包含对象名称,并根据寻址机制访问本地对象,响应要么返回结果,要么返回执行失败的原因,以及响应时间。对象可以是先验、简单变量或一个复杂的结构体。
符合这种模式中的协议大多从制造信息规范(MMS)发展而来,应用层基于MMS模型管理各种对象,如任务(创建、取消、启动、恢复和停止)、变量(读写)、域(下载和上传)。MMS通常只会有一个服务子集。整个操作细分成请求、执行、响应三个部分,与MAC层处理时间和服务执行时间有关。
WorldFIP、ROFIBUS-FMS、PROFIUBUS-DP、INTERBUS、AS-I、P-NET等现场总线都是使用客户端/服务器的通信模型。而BatiBus是一种特殊的客户端/服务器模型,因为其中没有回复和确认。
3.5.2发布者/订阅者模式
包含一个发布者应用和若干用户应用,分为“推”和“拉”两种模式。对于拉模式来说,发布者管理器发送一个请求,发布者通过广播(或多播)响应;而对于推模式来说,一个订阅者发送请求,发布者先响应这个请求,然后发送广播(或多播)数据。如图所示,推模式多了一次步骤。
发布者/订阅者模型非常适合于传输事件数据,可用于“事件通知”的要求和提示、MMS信息定义的提示。发布者/订阅者模型用于缓冲区之间通信(读写服务)。WorldFIP、CAN、LonWorks、EIBus、ControlNet、SWIFTNET和FF使用了发布者/订阅者模型。
3.6通信机制
通信机制包括周期性通信、、应答机制和触发机制。
周期性通信源于自动控制和事件检测的基础——采样理论。大多数标记数据作为控制算法的输入或输出,要求周期性传输,主要应用在集中式控制系统进行周期性的查询操作。不同数据的通信周期可能不同,会产生抖动,那么通信协议就是要尽量消除抖动。这些系统基于状态通信,有时也称为“时间触发系统”。
图显示了一个周期性通信的例子,每个基本周期都有C和D,每两个周期有B和E,每三个周期有F,因此总线周期(大周期)等于所有周期的最小公倍数(LCM),而节拍(小周期)是一个时间间隔等于最大公约数(HCD)。有的现场总线所有数据都通过周期型通信,但网络负载太大了,因此某些数据会采用非周期的传输,比如说一些状态变量可以在发生变化后再传送。
协议引入应答机制,接收机通知发射机一个消息是否已正确接收。在现场总线应用中,非周期通信需要应答机制,而周期性通信则不需要,因为在周期性通信中如果出现错误,接收方会忽略错误并等待后续正确数据。
除了周期性和非周期性通信之外还有时间、事件触发。大多数现场总线都倾向于一种时间触发系统,一些还会结合事件触发,由周期性服务器管理事件。
3.7错误控制与流量控制
错误管理、恢复机制要在用户控制中,即应用程序进程中。错误检测或通信控制要么由发送方实现,要么由接收方实现。在现场总线中,两种情况都有,现场总线通常会提供两种通信机制。
控制方 |
说明 |
发送方 |
在通信开始时或当消息有一个事件的语义时进行控制。发送方传送,接收方在收到消息后得到通知。发送方等待接收方的应答来控制传输 |
接收方 |
在通信开始时或当消息有一个事件的语义时进行控制,与时间触发或事件触发模式无关。通信开始后,接收方等待一个周期型的时间触发系统或者响应一个请求,作为负责传输控制的接收方 |