PROFINET支持多种传输介质,如铜缆、光纤以及无线。
工业现场采用无线通信,有的是因为灵活方便 ,有的则可能是由于必须采用无线通信。无线通信技术有很多,如通过运营商的远程无线通信、WirelessHART, WLAN,蓝牙等。 对于PROFINET的应用来讲,主要的无线通信手段是WLAN。
首先通过下面的小视频来了解下。
PROFINET无线通信技术简介
下面重点介绍工业无线局域网(IWLAN)相关技术
首先解释下三个相关概念:WLAN、IEEE802.11和Wi-Fi。WLAN(无线局域网)是指采用无线电波作为数据传输介质的本地网络,是一种网络类型。IEEE802.11则是电气电子工程师学会制定的一系列最为通用的无线局域网标准族,如当前广泛应用的802.11g,802.11a,802.11n等。而我们常说的Wi-Fi,它其实是一个叫做Wi-Fi联盟的组织所持有的商标,目的是改善基于IEEE 802.11标准的无线网路产品之间的互通性。也就是说电气电子工程师协会IEEE制定了WLAN的标准,基于这些标准生产出来的硬件则由Wi-Fi联盟进行测试认证,保证其互联互通。Wi-Fi联盟的认证并不是硬性要求(厂商得掏钱),但这可以让消费者放心,特别是在标准和产品发布的早期。
在一般语境下,Wi-Fi这个概念通常就指无线局域网及其相关技术,尤其指能连接到Internet的无线局域网。而WIFI对我们的生活影响有多大呢,据说新时代的马斯洛需求理论都变成如下构成了。
那么家用和商用的WIFI和咱们工业的WIFI有什么样的区别呢?大部分人会认为工业环境比较恶劣,所以工业用的设备应该更“皮实”,也就是硬件的物理特性更加坚固,如抗冲击、抗振动,抗EMC干扰,满足较高的机械特性,有较高的防护等级,较宽的工作温度等等。没错,这都是必须的。不过,除了“硬件”上要适合工业要求外,“软件”上也得适应工业应用的要求。打个比方,当你在咖啡厅上网的时候,网页不能即时打开,你可能需要等几秒或者刷新一下,这并不会造成多少损失;但是在工业生产上,如果数据不能及时送达,则可能导致设备停机,或者出现生产错误,使得生产效率降低,甚至造成设备或人员损失。也就是说工业应用通常都对通信的实时性要求非常高,那如何保证数据的实时性的呢?那我们从名词解析“DCF和PCF”开始。
DCF(Distributed Coordination Function)分布式协调功能
在802.11协议中,DCF是最基本的媒体访问方法。DCF协议使用两种机制进行帧的传输:基本访问机制和RTS/CTS机制。基本访问机制就是把CSMA/CA(载波侦听多路访问/冲突辟免)和确认(ACK)结合起来。帧传输后,如果在SIFS(短帧间隔)内没有收到确认帧(ACK),则认为该帧丢失或碰撞,按照二进制退避算法进行退避和重传。RTS/CTS机制规定,发送端在发送数据帧之前,首先发送一个RTS帧来预约信道,接收端回发一个CTS帧,之后开始进行数据帧的发送和ACK确认,实质上是一种四次握手机制。RTS/CTS机制解决发送长帧时易发生碰撞从而导致信道利用率急剧下降的问题和解决“隐藏终端”问题。
DCF机制有点像在开一个没有主持人的民主生活会,大家随意发言。一开始没人发言,甲一看没人说话,在别人说话之前打开麦克开始说,开口第一句就是“我讲三分钟,下面是内容…balabala…”。其它人听到甲说要讲三分钟后,把到嘴边的话咽了回去,等一会吧。三分钟过后,其它有话说的人再等待一个随机时间后又开始抢麦克。这就是CSMA/CA。如果甲的话是对乙说的(其实大家都听到了),那么甲说完后,如果乙听到了,乙会立马回复“收到”,如果乙没回复或乙的回复甲没收到,那甲还得找机会把刚才的话重说一遍。这是ACK和重传机制。如果甲说话的时候,丙坐在甲的对角,离甲最远,没听到甲在说,以为没人说话,打开自己的麦克也开始对坐在中间的乙提意见,结果乙就傻傻听不清了。这是隐藏终端和碰撞。这种情形下,甲可以选择在开始的时候先说“乙,我要和你讲三分钟。”乙听到后回复说“下面三分钟你就讲吧。”丙虽然听不见甲说话,但听见了乙的这句,知道有人要与乙说三分钟,那它就在这三分钟内不说话。这是RTS/CTS。
DCF简单方便,但是当客户端数量较多,环境复杂时,冲突碰撞不可避免,随机避让机制使得通信效率极大降低,也无法保证数据的实时性。因此,DCF适用于节点数量不确定,通信数据随机性较强,对实时性要求不高的场合。绝大多数家用和商用的无线节点使用的都是DCF机制。
PCF(Point Coordination Function)点协调功能
与DCF不同,PCF是一种中心控制访问机制,节点之间不再是平等的地位。各站点对介质的访问权由接入点AP来协调。就像有了主持人的会议一样,进入会议的人先到主持人那登记领表,主持人按登记表顺序指定每一个与会者轮流发言。而且主持人说的话是会议室里所有人都听得到的。这样就避免了冲突,提高了效率。
接下来,看看西门子无线交换机SCALANCEW是如何做的?
西门子的SCALANCE W支持DCF的机制,为了以满足工业应用的特殊要求,又在PCF的基础上开发了iPCF功能,并且针对PROFINET通信,提供进一步的优化,同时提供快速漫游功能。
不激活PNIO优化时的iPCF
这种情况下,AP会以固定的顺序依次轮询连接到自己的客户端,AP与每台客户端有约2ms的时间进行数据传输;此时在发送缓存区的数据包没有优先级别的差别。在每个客户端通信结束后的轮询间隙会有一个短暂的时间,可用来发送广播包(如果需要的话)。
图像化的时序表示如下:
激活PNIO优化功能时的iPCF
在通信周期开始, AP会以固定的顺序轮询连接到自己的客户端;每台客户端大概需要2 ms的时间进行数据传输;此时在发送缓存区的数据包具有优先级别,优先级高的数据会优先传输;当所有的客户端都轮询完后,可以发送广播报文,到下一周期开始,AP又开始轮询客户端。
图像化的时序表示如下:
ps:在这里8ms循环时间仅用于帮助理解这个过程,在实际使用中需根据具体情况调整
数据包优先级别如下表:
从上面的图中可以看到,PNIO的实时报文具有最高的优先级,当发送缓冲区中具有多种类别的数据时,PNIO实时报文会被优先转发。
iPCF条件下的快速漫游
漫游是指客户端在移动过程中从前一个相连的AP断开,连接到另一个AP的过程。在这个切换过程中,数据是不能进行传输的,所以漫游时间是越短越好。民用或商业通信对漫游切换时间没有要求,以“秒”为单位,这对工业应用是不可接受的。iPCF功能针对漫游的行为做了优化,可以实现快速漫游,漫游时间可以缩短至50ms.
下面我们就来计算一下在iPCF状态下的漫游时间,并据此确定PNIO的刷新时间。
假设一个客户端需要在两个信道间漫游,以此为例计算扫描切换时间Tscan
•西门子漫游阀值tRT = 12 ms (low) / 20 ms (medium) / 50 ms (high),这三个值是固定的
•切换时间 tswitchover= 2.5 ms
•每个信道的扫描时间tchannelscan = 10 ms (iPCF only)
•AP注册时间 tlogin = 5 ms
公式是:TScan=tRT+(Anzchannel*(tswitchover+tchannelscan))+tlogin
在采用medium漫游阀值带入数值后:TScan=20ms+(2*(2.5ms+10ms))+5ms=50ms
当使用iPCF时,计算出的扫描切换时间需要低于两倍组态的PNIO刷新时间,所以PNIO刷新时间应选择32ms。
即:50ms的扫描周期 < 2* 32 ms 更新时间
正是有了iPCF这一秘籍,在那些客户端较多或者客户端需要在不同接入点间漫游的工业应用场合,SCALANCE W也才能从容应对……