来源:TSNLAB 微信公众号
在《TSN六问——你误解了几个》这篇文章的“TSN门控需要网络各节点之间配合,所以需要精准时间同步?”问题中,我们举了一个工业自动化中多轴同步运动控制的例子。这是对控制精度要求非常高的一种场景。简单举例理解:
控制器要在同一时刻让设备A控制机械运动到位置a、让设备B控制机械运动到位置b。而在实际操作中,控制器指令发出的时间可能有差异(发包先后之分)、传输路径可能有长短之别、设备收到指令后到执行所花费的时间也会受设备自身的周期任务调度的影响,最终要保证机械A和B尽量同时执行这次指令,并不简单——这是需求A。
同时,如果控制的要求比较精细,或者涉及反馈控制,那么控制器可能需要以很高的频率(例如1ms或500us)接收输入信号,然后以很高的频率周期性地下发新的位置指令。指令下发到被执行的这个过程的时间显然不能太长——这是需求B。
目前常用的工业以太网方案中,因具体应用场景需求的不同,有不同的应对思路。但基本可以对号入座到以下总结的三种应对思路上。用尽可能简单方式来讲,分别是:
1、用户设备侧时间同步,网络传输有绝对时限要求。
2、用户设备侧时间同步,网络传输有确定边界就行。
3、用户设备侧随意,网络传输有确定边界就行。
对应这三种思路,流量的行为特征也不同。IEC/IEEE 60802(TSN用于工业自动化)标准文稿中(取自文稿2.0版本)将其定义为三种流量类型:Isochronous(等时同步)、Cyclic-synchronous(周期同步)、Cyclic-asynchronous(周期异步)。

对应上述两类需求、三种应对思路和流量类型,我们整理出这个表格,也是本文的重点:

从数量级的角度,需求A要求严格时,往往通过PTP(1588v2)或类似的时间同步技术,实现用户设备侧10ns-1us级别的时间同步精度。而需求B要求严格时,任务周期也很少会降低到250us以下,折合成对于网络传输时延上限的要求,一般在100us-10ms级别。所以这两者是有数量级上的差异的。因此,表格中也没有写需求A要求宽松而需求B要求严格的情况。
TSN技术集可以提供ns级的时间同步和us-ms级的有界(低)时延,刚好可以通过组合使用,匹配上述需求场景。
下图就是需求A和需求B都要求比较严格的场景。采用应对思路一:通过精准的时间同步,保障设备A和B任务周期执行的边界(或者说相位)一致,这个边界对齐的精度在ns级别。而一次任务周期常常在百微秒或毫秒级,此时网络需要保障us或ms级别的有界(低)时延,即需在下一次周期开始前的一段时间把数据传到接收端。

对于需求A要求严格,需求B要求相对宽松的场景,这时,要么任务周期本身比较长,如达到10ms或以上,要么允许网络传输的时间多于一个周期(比如3个周期)——这时就可以使用应对思路二,即网络要支持端设备实现精准时间同步,保障有界时延,但对低时延的要求就会降低一些。
而如果需求A、B都相对宽松,网络也不再需要支持精准时间同步,保障有界时延即可——应对思路三。