一种基于I/O总线的数据发送优化方法与流程

文档序号:11250184阅读:593来源:国知局
一种基于I/O总线的数据发送优化方法与流程

本发明应用于工业自动化技术领域,提出一种基于i/o总线的数据发送优化方法。



背景技术:

i/o总线在工业自动化等领域有很广阔的应用,在工业现场i/o总线各类节点当中,ai节点由于其数据连续变化的特性,上送的数据量相对较大,易造成i/o总线数据帧冲突。为尽可能避免此类冲突,降低i/o总线发生数据冲突和仲裁机率,提高工业现场i/o总线数据发送稳定性,提出一种基于i/o总线的数据发送优化方法。



技术实现要素:

本发明的目的,在于提供一种总线数据的发送方法,通过对各类型数据发送方式和时机的控制,减少了多个i/o节点同时工作时的数据帧冲突,降低了i/o总线发生仲裁机率,提高工业现场i/o总线数据发送稳定性。

为了达成上述目的,本发明的解决方案是:一种基于i/o总线的数据发送优化方法,其特征在于包括如下步骤:

步骤一,在工业现场i/o总线的应用场合中,现场采集单元由iolink与各类i/o节点组成,各i/o节点与iolink之间采用总线传输数据;

步骤二,iolink通过i/o总线与各i/o节点完成时钟同步,保证各i/o节点同一时刻的时间标记相同;

步骤三,i/o节点数据按照类型进行分类,分别使用不同策略或独享不同时间片经i/o总线向iolink发送数据;

步骤四,di节点采用变位结合周期分时上送的方式,当数字量通道产生变位之后,立即上送该变位信号,否则以一定周期(秒级)分时上送所有通道数字量信号;

步骤五,ai节点采用周期分时发送方式,在同一时刻只有其中的一个节点向i/o总线发送数据。

上述步骤一中,i/o节点包括数字量输入节点、模拟量输入节点。

上述步骤二中,各i/o节点均能够识别自身的通讯地址,并保证一个iolink管理下的各个i/o节点地址唯一,进而结合同步时钟产生固定的时间递增序列从而为各i/o节点划分独立时间片。

上述步骤三中,iolink对各i/o节点运行状态的查询数据可利用iolink所在节点的时间片完成发送。

上述步骤四中,各i/o节点的数据处理和主动发送任务由各节点自身处理完成而不依赖于iolink。

本方案的有益效果为:采用上述方法后,减少了现场i/o采集单元中多个i/o节点同时工作时的数据帧冲突,降低了i/o总线发生仲裁机率,提高了工业现场i/o总线数据发送稳定性,相对于常规i/o总线数据收发方式,不增加硬件成本,实现过程简单,并且能够满足一般工业现场实时性要求。

附图说明

图1本发明数据发送方案示意图;

图2本发明中ai节点数据发送判断流程示意图。

具体实施方式

下面结合具体实施例对本发明做进一步的详细说明。

图1描述了本发明数据发送方案,现场i/o采集单元由i/o管理节点(iolink)和各类i/o节点组成,各i/o节点与iolink之间采用总线传输数据并完成时钟同步;i/o节点数据按照类型进行分类,分别使用不同策略或独享不同时间片经i/o总线向iolink发送数据;数字量输入(di)节点采用变位结合周期分时上送的方式;模拟量输入(ai)节点采用周期分时发送方式,在同一时刻时仅有一个ai节点向i/o总线发送数据。

以现场i/o采集单元为例,每块卡件作为一个i/o节点,iolink卡件通讯地址为1,各类i/o卡件通讯地址依次增加,i/o总线带宽按照1mbps计算,一块i/o卡件的通道数按照8计算,一个通道数据为16bit,发送完成时间小于1ms,考虑可靠发送,单块卡件发送时间按照3ms(ts)考虑,每块卡件的发送延时计算方法如下:

发送延时(单位ms)=(通讯地址–2)*3;

若该i/o采集单元最多容纳14块i/o卡件,按照满配ai卡件计算,轮循周期为14×3ms=42ms,则由此得出每块卡件的发送周期(t)需大于等于42ms,考虑裕量按照50ms设置,iolink卡件的查询报文时间片可利用其中剩余空闲的8ms完成。在图2中,针对ai卡件,当每次数据采集任务结束后进入步骤201的数据发送任务,在数据发送前需要满足步骤202的条件:

同步时间标识(单位ms)%50=(通讯地址–2)*3;

满足上述条件后,进入步骤203进行数据发送,不满足则不进行数据发送。

从实现效果来看:每一轮发送周期开始后,通讯地址为2的ai卡件延时0ms发送,通讯地址为3的ai卡件延时3ms发送,通讯地址为4的ai卡件延时6ms发送,依次类推……直到完成一轮所有ai卡件的数据发送,等待下一周期发送开始。

由于工业现场数字量信号与模拟量信号变化特性不同,数字量信号动作频率较低,采用变位结合秒级周期分时发送方式,兼顾信号上送实时性和i/o总线负荷;而模拟量信号实时发生变化,数据量较大,无论是采用定周期上送还是采用变化上送的方式,卡件均是各自为阵,发送数据无序不定,而采用上述方法后,同一时刻所有ai卡件中仅有一块向i/o总线发送数据;类似的,di卡件周期性发送数据也参照上述过程。相较现有做法而言,该优化方法减少了多个i/o卡件同时工作时的数据帧冲突,在保证数据发送实时性的同时,降低了i/o总线发生仲裁机率,提高了工业现场i/o总线数据发送稳定性。

以上实施例仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内。



技术特征:

技术总结
本发明提供了一种基于I/O总线的数据发送优化方法,在工业现场I/O总线的应用场合中,现场I/O采集单元由I/O管理节点(IOLINK)和各类I/O节点组成,各I/O节点与IOLINK之间采用总线传输数据并完成时钟同步;I/O节点数据按照类型进行分类,分别使用不同策略或独享不同时间片经I/O总线向IOLINK发送数据;数字量输入(DI)节点采用变位结合周期分时上送的方式;模拟量输入(AI)节点采用周期分时发送方式,在同一时刻时仅有一个AI节点向I/O总线发送数据,便于减少多个I/O节点同时工作时的数据帧冲突,降低了I/O总线发生仲裁机率,提高了工业现场I/O总线数据发送稳定性,该方案相对于常规I/O总线数据收发方式,不增加硬件成本,实现过程简单,能够满足一般工业现场实时性要求。

技术研发人员:徐深;徐卫峰;臧峰;吴波;牛洪海
受保护的技术使用者:南京南瑞继保电气有限公司;南京南瑞继保工程技术有限公司
技术研发日:2017.06.26
技术公布日:2017.09.15
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1