System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于plc数据传输,具体涉及一种plc系统及其数据传输方法。
技术介绍
1、plc(可编程控制器)由cpu模块、io模块、电源模块等功能单元组成,根据plc的工作原理,plc与io模块之间的通讯多采用问答模式,plc主控器根据设定的总线周期查询io模块的采集数据。中大型plc具有点数多、存储空间大等特点,往往会通过远程io带大量的io模块,而io模块多数时间并无数据变化,若io模块每次都上送全部数据,势必会造成总线通讯效率过低,影响plc的运行效率。
2、现有授权公告号为cn114791723b的中国专利技术专利公开了一种大型plc系统及其数据压缩方法,该系统包括主站模块(即主机架)和从站模块(即远程机架),该专利技术提出了一种压缩算法,在无数据变化时,不上送数据,在数据变化时,才上送所有数据,提升了总线的工作效率。但是根据plc的应用场景,数字量io一般情况下不会出现大量数据同时变化,模拟量io一般情况下不会出现突变,且在过程控制过程中,模拟量每个周期都有变化,该专利技术在数据变化量少的情况下依然会上送所有数据,在数据传输过程中仍然存在大量冗余数据,降低plc运行效率。
技术实现思路
1、本专利技术的目的在于提供一种plc系统及其数据传输方法,用以解决现有的plc系统通讯过程中仍存在大量的冗余数据,导致plc系统运行效率降低的问题。
2、为解决上述技术问题,本专利技术提供了一种plc系统数据传输方法,发送端向接收端传输有数据且数据类型为数字量或模
3、若传输的信息为数字量,则将数字量信息分组,当需发送的信息与上一次发送的信息存在变化时,若变化的数字量信息所在分组数量小于等于分组数量设定值时,则只发送当前变化的数字量信息所在分组的数字量信息;
4、若传输的信息为模拟量,当需要发送的信息与上次发送的信息存在变化时,若所有通道的模拟量信息的变化量均小于等于第一变化量设定值时,则只发送模拟量信息的变化量,且数据长度比发送全部模拟量信息的数据长度小。
5、进一步地,当所有通道的模拟量信息的变化量小于等于第二变化量设定值时,传输的数据长度比至少一个通道的变化量大于第二变化量设定值且所有通道的变化量均小于等于第一变化量设定值时的数据长度小,第二变化量设定值小于第一变化量设定值。
6、进一步地,当需要发送的数字量信息与上次发送的数字量信息无变化时,不发送数字量信息。
7、进一步地,当变化的数字量信息所在分组数量大于分组数量设定值时,发送全部数字量信息。
8、进一步地,当需要发送的模拟量信息与上次发送的模拟量信息无变化时,不发送模拟量信息。
9、进一步地,所述模拟量信息有至少一个通道的变化量大于第一变化量设定值时,发送全部模拟量信息。
10、进一步地,在发送端发送的数据里设置数据包序号,当发送端为plc系统主机架中的cpu模块或plc系统远程机架中的远程io模块时,若为首次发送,则将数据包序号设置为初始值进行发送,若为非首次发送且判定发送端与接收端之间通讯状态正常,则使数据包序号在上一次接收到的数据包序号的基础上按照设定规则进行变化,并将变化后的数据包序号进行发送;当发送端相应为plc系统主机架中的通用io模块或plc系统远程机架中的通用io模块时,则将接收到的数据包序号进行发送;
11、则判断当前发送端与接收端之间通讯状态是否正常的手段为:当发送端为cpu模块或远程io模块时,且为非首次发送,若接收到的数据包序号与上一次发送的数据包序号一致,则判定通讯正常;当发送端为通用io模块时,且为非首次发送,若接收到的数据包序号与上一次接收到的数据包序号按照所述设定规则变化,则判定通讯状态正常。
12、进一步地,当发送端为cpu模块或远程io模块时,若通讯中断回复时,则发送端向数字量输入io或模拟量输入io发送数据包序号初始值,向数字量输出io或模拟量输出io发送数据包序号初始值和全部数据信息;其中通用io模块的类型包括数字量输入io、模拟量输入io、数字量输出io和模拟量输出io。
13、进一步地,当发送端为cpu模块或远程io模块时,若为非首次发送,接收到的数据包序号与上一次发送的数据包序号不一致,判定通讯异常,则使数据包序号在上一次接收到的数据包序号的基础上按照与上述设定规则存在明显差异的规则进行变化,则发送端向数字量输入io或模拟量输入io发送变化后的数据包序号,向数字量输出io或模拟量输出io发送变化后的数据包序号并发送全部数据信息;其中通用io模块的类型包括数字量输入io、模拟量输入io、数字量输出io和模拟量输出io。
14、进一步地,当发送端为通用io模块时,且为非首次发送,若接收到的数据包序号与上一次接收到的数据包序号没有按照所述设定规则变化,则判定通讯状态异常,数字量输入io或模拟量输入io发送接收到的数据包序号和全部数据信息,数字量输出io或模拟量输出io发送接收到的数据包序号;其中通用io模块的类型包括数字量输入io、模拟量输入io、数字量输出io和模拟量输出io。
15、进一步地,所述设定规则是:在上一次接收到的数据包序号的基础上加1得到变化后的数据包序号。
16、为解决上述技术问题,本专利技术还提供了一种plc系统,包括主机架和远程机架,所述主机架中cpu模块与通用io模块之间的数据传输方法,和/或远程机架中远程io模块与通用io模块之间的数据传输方法为上述的plc系统数据传输方法。
17、本专利技术的有益效果为:本专利技术为改进型专利技术创造,本专利技术不再如现有技术一般只要需发送的数据信息发生变化,就发送全部数据,而是根据数据类型以及相应的数据信息变化情况对需要发送的信息进行优化,选择性发送数据,具体的,当数据类型为数字量,通过分组、设定分组数量设定值对数字量信息进行优化;当数据类型为模拟量时,只发送模拟量信息的变化量,通过设定变化量设定值对模拟量信息进行优化。本专利技术在保留有效数据的同时去掉了在通讯链路中的冗余数据,在不丢失数据细节的同时优化通讯数据,提升了plc系统的运行效率和数据通讯实时性,解决了现有技术中,plc系统通讯过程中仍存在大量的冗余数据,导致plc运行效率降低的问题。
本文档来自技高网...【技术保护点】
1.一种PLC系统数据传输方法,其特征在于,发送端向接收端传输有数据且数据类型为数字量或模拟量,若发送端判定当前发送端与接收端之间通讯状态正常且非首次发送,则发送端向接收端传输优化后的数据,具体方式为:
2.根据权利要求1所述的PLC系统数据传输方法,其特征在于,当所有通道的模拟量信息的变化量均小于等于第二变化量设定值时,传输的数据长度比至少一个通道的变化量大于第二变化量设定值且所有通道的变化量均小于等于第一变化量设定值时的数据长度小,第二变化量设定值小于第一变化量设定值。
3.根据权利要求1所述的PLC系统数据传输方法,其特征在于,当需要发送的数字量信息与上次发送的数字量信息无变化时,不发送数字量信息。
4.根据权利要求1所述的PLC系统数据传输方法,其特征在于,当变化的数字量信息所在分组数量大于分组数量设定值时,发送全部数字量信息。
5.根据权利要求1所述的PLC系统数据传输方法,其特征在于,当需要发送的模拟量信息与上次发送的模拟量信息无变化时,不发送模拟量信息。
6.根据权利要求1所述的PLC系统数据传输方法,其特
7.根据权利要求1~6任一项所述的PLC系统数据传输方法,其特征在于,在发送端发送的数据里设置数据包序号,当发送端为PLC系统主机架中的CPU模块或PLC系统远程机架中的远程IO模块时,若为首次发送,则将数据包序号设置为初始值进行发送,若为非首次发送且判定发送端与接收端之间通讯状态正常,则使数据包序号在上一次接收到的数据包序号的基础上按照设定规则进行变化,并将变化后的数据包序号进行发送;当发送端相应为PLC系统主机架中的通用IO模块或PLC系统远程机架中的通用IO模块时,则将接收到的数据包序号进行发送;
8.根据权利要求7所述的PLC系统数据传输方法,其特征在于,当发送端为CPU模块或远程IO模块时,若通讯中断回复时,则发送端向数字量输入IO或模拟量输入IO发送数据包序号初始值,向数字量输出IO或模拟量输出IO发送数据包序号初始值和全部数据信息;其中通用IO模块的类型包括数字量输入IO、模拟量输入IO、数字量输出IO和模拟量输出IO。
9.根据权利要求7所述的PLC系统数据传输方法,其特征在于,当发送端为CPU模块或远程IO模块时,若为非首次发送,接收到的数据包序号与上一次发送的数据包序号不一致,判定通讯异常,则使数据包序号在上一次接收到的数据包序号的基础上按照与所述设定规则存在明显差异的规则进行变化,则发送端向数字量输入IO或模拟量输入IO发送变化后的数据包序号,向数字量输出IO或模拟量输出IO发送变化后的数据包序号并发送全部数据信息;其中通用IO模块的类型包括数字量输入IO、模拟量输入IO、数字量输出IO和模拟量输出IO。
10.根据权利要求7所述的PLC系统数据传输方法,其特征在于,当发送端为通用IO模块时,且为非首次发送,若接收到的数据包序号与上一次接收到的数据包序号没有按照所述设定规则变化,则判定通讯状态异常,数字量输入IO或模拟量输入IO发送接收到的数据包序号和全部数据信息,数字量输出IO或模拟量输出IO发送接收到的数据包序号;其中通用IO模块的类型包括数字量输入IO、模拟量输入IO、数字量输出IO和模拟量输出IO。
11.根据权利要求7所述的PLC系统数据传输方法,其特征在于,所述设定规则是:在上一次接收到的数据包序号的基础上加1得到变化后的数据包序号。
12.一种PLC系统,包括主机架和远程机架,其特征在于,所述主机架中CPU模块与通用IO模块之间的数据传输方法,和/或远程机架中远程IO模块与通用IO模块之间的数据传输方法为权利要求1~11任一项所述的PLC系统数据传输方法。
...【技术特征摘要】
1.一种plc系统数据传输方法,其特征在于,发送端向接收端传输有数据且数据类型为数字量或模拟量,若发送端判定当前发送端与接收端之间通讯状态正常且非首次发送,则发送端向接收端传输优化后的数据,具体方式为:
2.根据权利要求1所述的plc系统数据传输方法,其特征在于,当所有通道的模拟量信息的变化量均小于等于第二变化量设定值时,传输的数据长度比至少一个通道的变化量大于第二变化量设定值且所有通道的变化量均小于等于第一变化量设定值时的数据长度小,第二变化量设定值小于第一变化量设定值。
3.根据权利要求1所述的plc系统数据传输方法,其特征在于,当需要发送的数字量信息与上次发送的数字量信息无变化时,不发送数字量信息。
4.根据权利要求1所述的plc系统数据传输方法,其特征在于,当变化的数字量信息所在分组数量大于分组数量设定值时,发送全部数字量信息。
5.根据权利要求1所述的plc系统数据传输方法,其特征在于,当需要发送的模拟量信息与上次发送的模拟量信息无变化时,不发送模拟量信息。
6.根据权利要求1所述的plc系统数据传输方法,其特征在于,所述模拟量信息有至少一个通道的变化量大于第一变化量设定值时,发送全部模拟量信息。
7.根据权利要求1~6任一项所述的plc系统数据传输方法,其特征在于,在发送端发送的数据里设置数据包序号,当发送端为plc系统主机架中的cpu模块或plc系统远程机架中的远程io模块时,若为首次发送,则将数据包序号设置为初始值进行发送,若为非首次发送且判定发送端与接收端之间通讯状态正常,则使数据包序号在上一次接收到的数据包序号的基础上按照设定规则进行变化,并将变化后的数据包序号进行发送;当发送端相应为plc系统主机架中的通用io模块或plc系统远程机架中的通用io模块时,则将接收到的数据包序号进行发送;
8.根据权利要求7所述的...
【专利技术属性】
技术研发人员:闫志辉,李宝伟,马赛,冯广杰,阳婕,李旭,王刚,
申请(专利权)人:河南许继继保电气自动化有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。