CN117492405B - 一种基于现场总线的风电机组控制系统校验方法 - Google Patents
一种基于现场总线的风电机组控制系统校验方法 Download PDFInfo
- Publication number
- CN117492405B CN117492405B CN202410001683.6A CN202410001683A CN117492405B CN 117492405 B CN117492405 B CN 117492405B CN 202410001683 A CN202410001683 A CN 202410001683A CN 117492405 B CN117492405 B CN 117492405B
- Authority
- CN
- China
- Prior art keywords
- verification
- check
- equipment
- array
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012795 verification Methods 0.000 title claims abstract description 214
- 238000000034 method Methods 0.000 title claims abstract description 69
- 238000010248 power generation Methods 0.000 claims description 4
- 238000004891 communication Methods 0.000 abstract description 28
- 230000005540 biological transmission Effects 0.000 description 17
- 230000000977 initiatory effect Effects 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0428—Safety, monitoring
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24024—Safety, surveillance
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02E—REDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
- Y02E10/00—Energy generation through renewable energy sources
- Y02E10/70—Wind energy
- Y02E10/72—Wind turbines with rotation axis in wind direction
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Selective Calling Equipment (AREA)
Abstract
本发明公开了一种基于现场总线的风电机组控制系统校验方法,包括以下步骤:校验流程:校验启动、生成初始校验数组、初始校验数组传输、校验数组运算、运算值校验数组传输、校验数组匹配、完成校验,其中,在整个校验流程中,校验请求设备两次向校验响应设备发送校验信息的时间间隔之间,还向校验响应设备发送有控制指令或反馈信息。在特定通道中传输包含校验信息数据的方式,对通过现场总线通讯的设备进行强随机的算法校验,以确认通讯设备的合法性,保证风电机组的正常工作和安全。
Description
技术领域
本发明涉及风力发电机组控制系统技术领域,尤其是一种基于现场总线的风电机组控制系统校验方法。
背景技术
主控系统和变桨系统是风力发电机组的两个核心控制系统,主控系统作为变桨控制系统的上位机,两者之间通过现场总线进行通讯,其中,现场总线包括但不限于CANopen、RS485、RS232、PROFINET、EtherCAT等通讯方式。其通讯内容包含控制指令、状态信息反馈、数字模拟量等。现场总线的通讯规约是通用的,但两个系统之间的通讯协议(即传输的内容)是私有的。通讯双方按通讯协议配置匹配即可实现两个系统的通讯,通讯协议是各厂商/系统的核心商密。
但目前有很多技术手段,例如通过CAN分析仪等设备对现场总线的报文进行抓取分析,进而破解其传输内容,导致一方面存在私有协议泄漏风险,另一方面存在未经授权的非法设备接入系统,危害机组安全的可能。例如,对于变桨系统,若非法设备控制变桨系统非正常调桨,会引发机组飞车甚至倒机等重大安全事故;对于主控系统,若非法设备接入,主控系统无法正确判断各子系统状态,严重影响机组发电量且存在巨大安全风险。
发明内容
本发明的发明目的在于:针对上述存在的基于现场总线的风力发电机组控制系统之间的控制信息采用明文传输,安全性差,无法对控制系统之间的私有通讯协议进行保护的问题,提供一种基于现场总线的风电机组控制系统校验方法,在特定通道中传输包含校验信息数据的方式,对通过现场总线通讯的设备进行强随机的算法校验,以确认通讯设备的合法性,保证风电机组的正常工作和安全。
本发明采用的技术方案如下:
一种基于现场总线的风电机组控制系统校验方法,主控设备作为校验请求设备,子设备作为校验响应设备;或者,子设备作为校验请求设备,主控设备校验作为校验响应设备;
包括以下步骤:校验流程:
步骤1、校验启动:
步骤1.1、校验请求设备满足校验条件时,发起校验流程,给出校验请求;
步骤1.2、校验响应设备收到校验请求,解析校验指令,返回响应信息,进入响应等待状态;
步骤1.3、校验请求设备解析响应信息,确认对方收到信息正确,进入下一步骤;
步骤2、生成初始校验数组:校验请求设备调用随机算法R生成校验数据,并存入校验数组A;
步骤3、初始校验数组传输:
步骤3.1、校验请求设备发送校验数组A;
步骤3.2、校验响应设备收到校验数组A,保存到接收数组B中,并反馈所收到的校验数组B;
步骤3.3、校验请求设备确认对方收到的信息正确,校验数组A发送完毕,进入下一步骤;
步骤4、校验数组运算:
步骤4.1、校验请求设备将A作为输入调用校验算法X,计算得到校验数组C,进入等待接收校验数组状态;
步骤4.2、校验响应设备将B作为输入调用校验算法X,计算得到校验数组D;
步骤5、运算值校验数组传输:
步骤5.1、校验响应设备发送校验数组D;
步骤5.2、校验请求设备收到校验数组D,保存到接收数组E中,并反馈所收到的校验数组E;
步骤5.3、校验响应设备确认对方收到的信息正确,校验数组D发送完毕,进入下一步骤;
步骤6、校验数组匹配:校验请求设备对比校验数组C和校验数组E,若完全相同,置校验结果为校验通过;否则,置校验结果为未通过;
步骤7、完成校验:
步骤7.1、校验响应设备接收校验结果,退出校验流程;
步骤7.2、校验请求设备接收到退出消息,退出校验流程;
其中,在整个校验流程中,校验请求设备两次向校验响应设备发送校验信息的时间间隔之间,还向校验响应设备发送有控制指令或反馈信息。
按已有的通讯协议,没有更多的通道用来传输校验信息,而本方法采用现有通道进行通道复用,能够提高通信效率,降低通信成本,减少通信中的资源浪费。进一步的,主控设备通向子设备的方向具有多条传输通道,其中,控制命令通道的数据量相对较少,主要包括一些指令和参数等控制信息,而其余通道数据量较大。本方案中,主控设备通过控制指令通道传输校验信息至子设备。因此,采用控制命令通道进行复用能够减少其受到干扰的可能性,提高了系统的可靠性和稳定性。并且,控制命令通道作为控制子设备的通道,与随机算法所生成的校验数据进行通道复用,所传输的数据是无序的,没有可预测的模式或规律可循,攻击者无法利用已知的数据模式或规律去破解系统,进而避免其他设备非法接入主控系统控制子系统动作,保证机组的安全。同样的,子设备通向主控设备方向也具有多条传输通道,优选采用实时数据或状态信息通道进行校验信息的传输。
此外,校验功能被开发成对称的功能块库文件,主控设备和子设备调用相同的功能块,均能分别作为校验请求设备以及校验响应设备。完成校验流程后给出校验通过标志位或校验不通过标志位,用以识别对方是否获得授权而不是非法设备,从而保证风电机组的安全。
具体的,校验信息与控制指令或实时数据在特定通道采用分时发送方式。例如,主控设备采用控制指令通道进行交互,当前时刻发送校验信息,下一时刻发送控制指令,再下一时刻发送校验信息,在主控设备和子设备的程序中将收到的信息解析为校验信息或控制信息。其中,某一时刻仅执行一次校验信息或者控制指令的发送,相邻时刻之间的间隔即为主控设备的程序执行周期。当成功完成校验之后,不再继续进行校验流程,仅进行控制指令的发送。同样的,在反馈校验响应设备中的校验信息时也是分时发送的。同样的,子设备当前时刻发送校验信息,下一时刻发送实时数据或状态信息,再下一时刻发送校验信息,其中原理与前文相同,此处不再赘述。
其中,校验信息被划分为3部分:
校验指令:用来区分指令类型,并且保证校验字位于校验数据范围;
索引:作为数据的索引,用于传递多个字节数据;
数据:单个字节的数据区。
可供选择的,校验流程中,还包括步骤0、校验准备:对主控设备和子设备设置优先级别;
步骤1.3中,校验请求设备解析响应信息,确认对方收到信息正确且未发出更高优先级校验请求,进入下一步骤。
为了防止主控设备和子设备同时发送校验请求,通过调整设备的优先级,能够用以进行优先级仲裁。进一步的,默认主控系统的优先级更高,当其与子设备同时发起校验请求时,以主控系统作为校验请求设备。
可供选择的,步骤2中,随机算法R以控制器ip地址,程序版本以及系统时间为输入,多次循环,基于不同的计数值和唯一时序生成包含校验信息的校验数组A。
可供选择的,步骤2中,随机算法R包括以下步骤:
Ra、获取IP地址ip以及程序版本v;
Rb、获取系统时间t以及计数值n=n+1;
Rc、命令time=t&&a;
date=t&&b>>c;
Rd、生成随机数种子r=((((time⊕ip)<<f)⊕date)>>g+n)⊕v;
Re、命令r=(h×r+j)%max(1,k);
q=r÷max(1,k);
i=i+1;
Rf、取q的低32位赋值给数组A[i]=@(q,p);
Rg、判断i>u是否成立,若是,则输出校验数组A;若否,则回到步骤Rb。
其中,&&为二进制取与;⊕为二进制按位异或;%为取余;<<为二进制左移;>>为二进制右移;a,b,c,d,e,f,g,h,j,k,p,u为特定常数;i初始值为0;q为特定长度浮点数;@表示从q中取特定p位长度的整型数据;n为计数值,每10ms更新一次;A为发送给被校验设备的校验数组。
可供选择的,所述步骤3中,
步骤3.1、校验数组A共n组,n≥8,校验请求设备发送校验字节A[x];
步骤3.2、校验响应设备收到校验字节A[x],保存到接收数组B中,并反馈所收到的校验字节B[x];
步骤3.3、校验请求设备确认对方收到的信息正确,即A[x]=B[x],则执行x=x+1;否则,x不变,并返回步骤3.1,直至x=n,校验数组A发送完毕,进入下一步骤。
其中,x初始值为0。
由于校验信息的长度较长且有随机性,可能有4个byte或者8个byte甚至更长,其中一个byte为8个bit,而数据通道一次最多可以传输两个byte或16个bit,并且根据校验信息的划分规则,只有其中一个byte或者几个bit能够用于发送校验信息,其他的则为一些校验信息的特征值。而校验信息较长,单次无法完全传输,因此采用分组传输,在发起校验的设备中将校验信息分多组发送,被校验设备将收到的完整检验数组按相同规则解析为与校验发起设备中相同校验信息。
可供选择的,步骤4中,校验算法X包括以下步骤:
Xa、读取校验数组A;
Xb、命令L’=len(A);
Xc、判断0<L’<a’是否成立,若是,进入下一步骤;若否,则回到步骤Xa;
Xd、命令X’=b’;
Xe、命令i’=i’+1;
Xf、命令j’=(A[i’]⊕X’&&c’)⊕(X’>>d’);
Xg、命令X’=table[j’];
C[i’]=X’⊕e’;
Xh、判断i’>L’是否成立,若是,则输出校验数组C;若否,则回到步骤Xe。
其中,&&为二进制取与;⊕为二进制按位异或;>>为二进制右移;a’,b’,c’,d’,e’为特定常数;i’初始值为0;j’为索引;table为常数数组;len()为取数组长度操作;C为校验数组。
可供选择的,所述步骤5中,
步骤5.1、校验数组D共m组,m≥8,校验响应设备发送校验码D[y];
步骤5.2、校验请求设备收到校验码D[y],保存到接收数组E中,并反馈所收到的校验字节E[y];
步骤5.3、校验响应设备确认对方收到的信息正确,即D[y]=E[y],则执行y=y+1;否则,y不变,并返回步骤5.1,直至y=m,校验数组D发送完毕,进入下一步骤。
其中,y初始值为0。
可供选择的,所述控制指令包括驱动指令以及非驱动指令;
当完成校验流程后,校验通过,校验通过标志位为真时,子设备可正常响应主控设备的下发的所有控制指令;主控设备可进入系统初始化流程,待各子部套均就绪后启机发电;
当完成校验流程前;或者,当完成校验流程后,校验未通过,校验失败标志位为真时,子设备进入自锁状态,无法响应主控设备下发的驱动指令;主控设备无法完成系统初始化流程。
具体的,驱动指令指能够控制变桨电机驱动叶片调桨的指令。若校验通过,对于主控系统,能够顺利完成初始化流程,判定所有子系统处于正常可控状态,进而能够控制风机启机运行发电;对于子系统,即变桨系统,若校验通过,则执行其上位机,即主控系统的指令无安全风险,进而能够响应主控系统的所有控制指令。若校验不通过,对于主控系统,则表示存在子系统或被控设备未就绪,下发指令无法正确执行,则会一直处于初始化流程中,不具备启机发电的条件;对于变桨系统,则判定上位机是未经授权的非法设备,若全部响应上位机的指令存在飞车倒机等安全性风险,因此在该情况下变桨系统不响应主控的驱动指令,即不会执行控制变桨电机驱动叶片调桨动作,叶片始终处于收桨状态的安全位置,但是可以响应上位机下发的“故障复位”等不需要变桨电机转动以外的其他所有控制指令。进而能够保证风电机组安全性的同时避免影响其余操作。
可供选择的,在校验流程的任一步骤,当校验请求设备超时未收到校验响应设备发送的校验信息时;或者,当校验响应设备超时未收到校验请求设备发送的校验信息时,退出校验流程,等待重新发起校验流程。
具体的,退出有两种可能,若校验通过,程序则给出校验通过标志位,整个系统可以正常工作,在除设备断电重启以外的其他情况下不会再发起校验流程。若未校验通过,在中途退出,未校验通过的设备会等待发起下一次校验,直到通过,否则一直处于初始化状态,每隔一定时间间隔发起一次校验。
可供选择的,在t1时刻时,主控设备向子设备发送校验信息;
在t2时刻时,主控设备向子设备发送控制指令;
在t3时刻时,当主控设备正确接收到子设备的反馈时,发送下一校验信息;当主控设备未正确接收到子设备的反馈时,重复发送t1时刻的校验信息,并累计重复发送次数,当重复发送次数大于规定次数时,判定校验超时,退出校验流程,等待重新发起校验流程;
或者,在t1时刻时,子设备向主控设备发送校验信息;
在t2时刻时,子设备向主控设备发送反馈信息;
在t3时刻时,当子设备正确接收到主控设备的反馈时,发送下一校验信息;当子设备未正确接收到主控设备的反馈时,重复发送t1时刻的校验信息,并累计重复发送次数,当重复发送次数大于规定次数时,判定校验超时,退出校验流程,等待重新发起校验流程。
以步骤3进行举例,若仅传输一次校验信息,则可能因为通讯延时、控制器时钟不同步等原因,导致校验响应设备未收到校验请求设备发的A[x],进而无法反馈B[x]。因此校验请求设备在超时时间内持续发送同一组信息,直至收到校验响应设备反馈正确的当前信息发送下一组。具体的,校验请求设备t1时刻发出A[x]后,在t3时刻仍然是继续发送A[x]。此外,算法中设置计数器,每个执行周期加1,更新传输的校验信息时清0,校验请求设备第一次传输A[x]后,若一直未收到B[x],计数值进行累计,当超过设定上限时判定当前步骤超时,退出校验流程。若在规定时间内收到B[x],并且与A[x]吻合,则计数值置为0,发送A[x+1],重新开始计时,以此类推。同样的,当校验响应设备在某时刻发送B[x]后,未收到校验请求设备发送的A[x+1]时,在下下时刻仍然是继续发送B[x],并累计计数,直至收到A[x+1],则计数值置为0,发送B[x+1]。当计数值超过设定上限时判定当前步骤超时,退出校验流程。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
1、本发明所提供的一种基于现场总线的风电机组控制系统校验方法,在传输通道内增加校验信息,采用通道复用方式的总线通讯,单个通道轮流传输校验信息和控制指令或实时数据,不改变已有通讯规约,仅需在PLC程序中植入校验算法即可实现;避免非法接入主控系统或非法控制变桨系统动作,保证机组的安全。
2、本发明所提供的一种基于现场总线的风电机组控制系统校验方法,采用强随机校验方法,传输内容中包含校验信息,不会呈现明显规律,保证传输数据的私密性、安全性。
附图说明
本发明将通过例子并参照附图的方式说明,其中:
图1是校验流程的流程图。
图2是随机算法R的流程图。
图3是校验算法X的流程图。
具体实施方式
下面结合附图,对本发明作详细的说明。
本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。
本说明书中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
下面以主控设备作为校验请求设备,变桨设备作为校验响应设备,进行校验流程的举例。同时,在步骤3和5中,对穿插发送校验信息与控制指令或反馈信息的详细过程进行举例,其他步骤为防止赘述不进行详细说明。但值得说明的是,对于本领域的普通技术人员而言,可以根据具体情况理解在校验流程的所有步骤中,主控设备两次向子设备发送校验信息之间,都穿插有控制指令的发送,并且,子设备两次向主控设备发送校验信息之间,也同样穿插有反馈信息的发送。
一种基于现场总线的风电机组控制系统校验方法,如图1-图3所示,包括以下步骤:
初始状态,变桨设备能够响应主控设备下发的非驱动指令,无法响应驱动指令。
步骤0、校验准备:设置主控设备优先级别高于变桨设备。
步骤1、校验启动:
步骤1.1、主控设备满足校验条件时,发起校验流程,给出校验请求;
步骤1.2、变桨设备收到校验请求,解析校验指令,返回响应信息,进入响应等待状态;
步骤1.3、主控设备解析响应信息,确认对方收到信息正确且未发出更高优先级校验请求,进入下一步骤。
步骤2、生成初始校验数组:主控设备调用随机算法R生成校验数据,并存入校验数组A;
随机算法R包括以下步骤:
Ra、获取IP地址ip以及程序版本v;
Rb、获取系统时间t以及计数值n=n+1;
Rc、命令time=t&&a;
date=t&&b>>c;
Rd、生成随机数种子r=((((time⊕ip)<<f)⊕date)>>g+n)⊕v;
Re、命令r=(h×r+j)%max(1,k);
q=r÷max(1,k);
i=i+1;
Rf、取q的低32位赋值给数组A[i]=@(q,p);
Rg、判断i>u是否成立,若是,则输出校验数组A;若否,则回到步骤Rb。
步骤3、初始校验数组传输:
步骤3.1、校验数组A共n组,n≥8,主控设备发送校验字节A[x];
步骤3.2、变桨设备收到校验字节A[x],保存到接收数组B中,并反馈所收到的校验字节B[x];
步骤3.3、主控设备确认对方收到的信息正确,即A[x]=B[x],则执行x=x+1;否则,x不变,并返回步骤3.1,直至x=n,校验数组A发送完毕,进入下一步骤。
以下从主控设备角度,对通信接收时间短、长以及通信异常分3种情况举例:
示例一、通信接收时间短
(t0时刻)主控设备发送校验字节A[1];
(t1时刻)主控设备向变桨设备发送控制指令;
(t2时刻)主控设备确认变桨设备收到的信息正确,即A[1]=B[1],发送校验字节A[2];
(t3时刻)主控设备向变桨设备发送控制指令;
……
直至x=n,校验数组A发送完毕,进入下一步骤;
示例二、通信接收时间长
(t0时刻)主控设备发送校验字节A[1];
(t1时刻)主控设备向变桨设备发送控制指令;
(t2时刻)主控设备未收到B[1],或者,A[1]≠B[1],回到步骤3.1,重新发送校验字节A[1];
(t3时刻)主控设备向变桨设备发送控制指令;
(t4时刻)主控设备确认变桨设备收到的信息正确,即A[1]=B[1],发送校验字节A[2];
(t5时刻)主控设备向变桨设备发送控制指令;
……
直至x=n,校验数组A发送完毕,进入下一步骤;
示例三、通信异常导致超时退出
(t0时刻)主控设备发送校验字节A[1];
(t1时刻)主控设备向变桨设备发送控制指令;
(t2时刻)主控设备未收到B[1],或者,A[1]≠B[1],重新发送校验字节A[1];
(t3时刻)主控设备向变桨设备发送控制指令;
(t4时刻)主控设备未收到B[1],或者,A[1]≠B[1],则回到步骤3.1,重新发送校验字节A[1];
(t5时刻)主控设备向变桨设备发送控制指令;
……
重复发送次数大于规定次数时,退出校验流程,等待重新发起校验流程。
步骤4、校验数组运算:
步骤4.1、主控设备将A作为输入调用校验算法X,计算得到校验数组C,进入等待接收校验数组状态;
步骤4.2、变桨设备将B作为输入调用校验算法X,计算得到校验数组D;
校验算法X包括以下步骤:
Xa、读取校验数组A;
Xb、命令L’=len(A);
Xc、判断0<L’<a’是否成立,若是,进入下一步骤;若否,则回到步骤Xa;
Xd、命令X’=b’;
Xe、命令i’=i’+1;
Xf、命令j’=(A[i’]⊕X’&&c’)⊕(X’>>d’);
Xg、命令X’=table[j’];
C[i’]=X’⊕e’;
Xh、判断i’>L’是否成立,若是,则输出校验数组C;若否,则回到步骤Xe。
步骤5、运算值校验数组传输:
步骤5.1、校验数组D共m组,m≥8,变桨设备发送校验码D[y];
步骤5.2、主控设备收到校验码D[y],保存到接收数组E中,并反馈所收到的校验字节E[y];
步骤5.3、变桨设备确认对方收到的信息正确,即D[y]=E[y],则执行y=y+1;否则,y不变,并返回步骤5.1,直至y=m,校验数组D发送完毕,进入下一步骤。
以下从变桨设备角度,对通信接收时间短、长以及通信异常分3种情况举例:
示例一、通信接收时间短
(t0时刻)变桨设备发送校验字节D[1];
(t1时刻)变桨设备向主控设备发送反馈信息;
(t2时刻)变桨设备确认主控设备收到的信息正确,即D[1]=E[1],发送校验字节D[2];
(t3时刻)变桨设备向主控设备发送反馈信息;
……
直至y=m,校验数组D发送完毕,进入下一步骤;
示例二、通信接收时间长
(t0时刻)变桨设备发送校验字节D[1];
(t1时刻)变桨设备向主控设备发送反馈信息;
(t2时刻)变桨设备未收到E[1],或者,D[1]≠E[1],回到步骤3.1,重新发送校验字节D[1];
(t3时刻)变桨设备向主控设备发送反馈信息;
(t4时刻)变桨设备确认主控设备收到的信息正确,即D[1]=E[1],发送校验字节D[2];
(t5时刻)变桨设备向主控设备发送反馈信息;
……
直至y=m,校验数组D发送完毕,进入下一步骤;
示例三、通信异常导致超时退出
(t0时刻)变桨设备发送校验字节D[1];
(t1时刻)变桨设备向主控设备发送反馈信息;
(t2时刻)变桨设备未收到E[1],或者,D[1]≠E[1],重新发送校验字节D[1];
(t3时刻)变桨设备向主控设备发送反馈信息;
(t4时刻)变桨设备未收到E[1],或者,D[1]≠E[1],则回到步骤3.1,重新发送校验字节D[1];
(t5时刻)变桨设备向主控设备发送反馈信息;
……
重复发送次数大于规定次数时,退出校验流程,等待重新发起校验流程。
步骤6、校验数组匹配:主控设备对比校验数组C和校验数组E,若完全相同,置校验结果为校验通过;否则,置校验结果为未通过。
步骤7、完成校验:
步骤7.1、变桨设备接收校验结果,退出校验流程;
步骤7.2、主控设备接收到退出消息,退出校验流程。
其中,所述控制指令包括驱动指令以及非驱动指令;
当完成校验流程后,校验通过,校验通过标志位为真时,变桨设备可正常响应主控设备的下发的所有控制指令;主控设备可进入系统初始化流程,待各子部套均就绪后启机发电;
或者,当完成校验流程后,校验未通过,校验失败标志位为真时,变桨设备进入自锁状态,无法响应主控设备下发的驱动指令。
本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。
Claims (9)
1.一种基于现场总线的风电机组控制系统校验方法,其特征在于:主控设备作为校验请求设备,子设备作为校验响应设备;或者,子设备作为校验请求设备,主控设备校验作为校验响应设备;包括以下步骤:校验流程:
步骤1、校验启动:
步骤1.1、校验请求设备满足校验条件时,发起校验流程,给出校验请求;
步骤1.2、校验响应设备收到校验请求,解析校验指令,返回响应信息,进入响应等待状态;
步骤1.3、校验请求设备解析响应信息,确认对方收到信息正确,进入下一步骤;
步骤2、生成初始校验数组:校验请求设备调用随机算法R生成校验数据,并存入校验数组A;
步骤3、初始校验数组传输:
步骤3.1、校验请求设备发送校验数组A;
步骤3.2、校验响应设备收到校验数组A,保存到接收数组B中,并反馈所收到的校验数组B;
步骤3.3、校验请求设备确认对方收到的信息正确,校验数组A发送完毕,进入下一步骤;
步骤4、校验数组运算:
步骤4.1、校验请求设备将A作为输入调用校验算法X,计算得到校验数组C,进入等待接收校验数组状态;
步骤4.2、校验响应设备将B作为输入调用校验算法X,计算得到校验数组D;
其中,校验算法X包括以下步骤:
Xa、读取校验数组A;
Xb、命令L’=len(A);
Xc、判断0<L’<a’是否成立,若是,进入下一步骤;若否,则回到步骤Xa;
Xd、命令X’=b’;
Xe、命令i’=i’+1;
Xf、命令j’=(A[i’]⊕X’&&c’)⊕(X’>>d’);
Xg、命令X’=table[j’];
C[i’]=X’⊕e’;
Xh、判断i’>L’是否成立,若是,则输出校验数组C;若否,则回到步骤Xe;
其中,&&为二进制取与;⊕为二进制按位异或;>>为二进制右移;a’,b’,c’,d’,e’为特定常数;i’初始值为0;j’为索引;table为常数数组;len()为取数组长度操作;C为校验数组;
步骤5、运算值校验数组传输:
步骤5.1、校验响应设备发送校验数组D;
步骤5.2、校验请求设备收到校验数组D,保存到接收数组E中,并反馈所收到的校验数组E;
步骤5.3、校验响应设备确认对方收到的信息正确,校验数组D发送完毕,进入下一步骤;
步骤6、校验数组匹配:校验请求设备对比校验数组C和校验数组E,若完全相同,置校验结果为校验通过;否则,置校验结果为未通过;
步骤7、完成校验:
步骤7.1、校验响应设备接收校验结果,退出校验流程;
步骤7.2、校验请求设备接收到退出消息,退出校验流程;
其中,在整个校验流程中,校验请求设备两次向校验响应设备发送校验信息的时间间隔之间,还向校验响应设备发送有控制指令或反馈信息。
2.如权利要求1所述的基于现场总线的风电机组控制系统校验方法,其特征在于:校验流程中,还包括步骤0、校验准备:对主控设备和子设备设置优先级别;
步骤1.3中,校验请求设备解析响应信息,确认对方收到信息正确且未发出更高优先级校验请求,进入下一步骤。
3.如权利要求1所述的基于现场总线的风电机组控制系统校验方法,其特征在于:步骤2中,随机算法R以控制器ip地址,程序版本以及系统时间为输入,多次循环,基于不同的计数值和唯一时序生成包含校验信息的校验数组A。
4.如权利要求3所述的基于现场总线的风电机组控制系统校验方法,其特征在于:步骤2中,随机算法R包括以下步骤:
Ra、获取IP地址ip以及程序版本v;
Rb、获取系统时间t以及计数值n=n+1;
Rc、命令time=t&&a;
date=t&&b>>c;
Rd、生成随机数种子r=((((time⊕ip)<<f)⊕date)>>g+n)⊕v;
Re、命令r=(h×r+j)%max(1,k);
q=r÷max(1,k);
i=i+1;
Rf、取q的低32位赋值给数组A[i]=@(q,p);
Rg、判断i>u是否成立,若是,则输出校验数组A;若否,则回到步骤Rb;
其中,&&为二进制取与;⊕为二进制按位异或;%为取余;<<为二进制左移;>>为二进制右移;a,b,c,d,e,f,g,h,j,k,p,u为特定常数;i初始值为0;q为特定长度浮点数;@表示从q中取特定p位长度的整型数据;n为计数值;A为发送给被校验设备的校验数组。
5.如权利要求1所述的基于现场总线的风电机组控制系统校验方法,其特征在于:所述步骤3中,
步骤3.1、校验数组A共n组,n≥8,校验请求设备发送校验字节A[x];
步骤3.2、校验响应设备收到校验字节A[x],保存到接收数组B中,并反馈所收到的校验字节B[x];
步骤3.3、校验请求设备确认对方收到的信息正确,即A[x]=B[x],则执行x=x+1;否则,x不变,并返回步骤3.1,直至x=n,校验数组A发送完毕,进入下一步骤。
6.如权利要求1所述的基于现场总线的风电机组控制系统校验方法,其特征在于:所述步骤5中,
步骤5.1、校验数组D共m组,m≥8,校验响应设备发送校验码D[y];
步骤5.2、校验请求设备收到校验码D[y],保存到接收数组E中,并反馈所收到的校验字节E[y];
步骤5.3、校验响应设备确认对方收到的信息正确,即D[y]=E[y],则执行y=y+1;否则,y不变,并返回步骤5.1,直至y=m,校验数组D发送完毕,进入下一步骤。
7.如权利要求1所述的基于现场总线的风电机组控制系统校验方法,其特征在于:所述控制指令包括驱动指令以及非驱动指令;
当完成校验流程后,校验通过,校验通过标志位为真时,子设备可正常响应主控设备的下发的所有控制指令;主控设备可进入系统初始化流程,待各子部套均就绪后启机发电;
当完成校验流程前;或者,当完成校验流程后,校验未通过,校验失败标志位为真时,子设备进入自锁状态,无法响应主控设备下发的驱动指令。
8.如权利要求1所述的基于现场总线的风电机组控制系统校验方法,其特征在于:在校验流程的任一步骤,当校验请求设备超时未收到校验响应设备发送的校验信息时;或者,当校验响应设备超时未收到校验请求设备发送的校验信息时,退出校验流程,等待重新发起校验流程。
9.如权利要求8所述的基于现场总线的风电机组控制系统校验方法,其特征在于:
在t1时刻时,主控设备向子设备发送校验信息;
在t2时刻时,主控设备向子设备发送控制指令;
在t3时刻时,当主控设备正确接收到子设备的反馈时,发送下一校验信息;当主控设备未正确接收到子设备的反馈时,重复发送t1时刻的校验信息,并累积重复发送次数,当重复发送次数大于规定次数时,退出校验流程,等待重新发起校验流程;
或者,在t1时刻时,子设备向主控设备发送校验信息;
在t2时刻时,子设备向主控设备发送反馈信息;
在t3时刻时,当子设备正确接收到主控设备的反馈时,发送下一校验信息;当子设备未正确接收到主控设备的反馈时,重复发送t1时刻的校验信息,并累积重复发送次数,当重复发送次数大于规定次数时,退出校验流程,等待重新发起校验流程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410001683.6A CN117492405B (zh) | 2024-01-02 | 2024-01-02 | 一种基于现场总线的风电机组控制系统校验方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410001683.6A CN117492405B (zh) | 2024-01-02 | 2024-01-02 | 一种基于现场总线的风电机组控制系统校验方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117492405A CN117492405A (zh) | 2024-02-02 |
CN117492405B true CN117492405B (zh) | 2024-03-08 |
Family
ID=89669449
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410001683.6A Active CN117492405B (zh) | 2024-01-02 | 2024-01-02 | 一种基于现场总线的风电机组控制系统校验方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117492405B (zh) |
Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102262572A (zh) * | 2011-07-19 | 2011-11-30 | 浙江大学 | 一种带crc校验功能的iic总线接口控制器 |
CN102738809A (zh) * | 2012-06-25 | 2012-10-17 | 山东大学 | 计及风功率分布规律的风电场无功补偿容量优化控制方法 |
CN103324122A (zh) * | 2013-06-21 | 2013-09-25 | 中山市拓维电子科技有限公司 | 基于can总线的数字式自动找平控制系统 |
CN203425717U (zh) * | 2013-08-20 | 2014-02-12 | 甘肃富民生态农业科技有限公司 | 一种改善公共场所空气质量的装置 |
CN104863798A (zh) * | 2014-02-25 | 2015-08-26 | 常州铠甲智能科技有限公司 | 基于分布式存储的风电机组状态监测系统及其监测方法 |
CN112578692A (zh) * | 2019-09-27 | 2021-03-30 | 北京东土科技股份有限公司 | 工业总线通信方法、装置、计算机设备及存储介质 |
CN113064640A (zh) * | 2021-03-12 | 2021-07-02 | 山东英信计算机技术有限公司 | 一种bios选项校验方法、系统及介质 |
CN113535322A (zh) * | 2020-04-15 | 2021-10-22 | 北京沃东天骏信息技术有限公司 | 一种表单校验方法和装置 |
CN113700603A (zh) * | 2021-10-28 | 2021-11-26 | 东方电气风电有限公司 | 风电机组双编码器校验控制双驱变桨系统及方法 |
CN114252764A (zh) * | 2021-11-30 | 2022-03-29 | 南方电网科学研究院有限责任公司 | 一种断路器断流能力的校验方法、装置、设备及介质 |
CN115081429A (zh) * | 2022-07-07 | 2022-09-20 | 北京微纳星空科技有限公司 | 一种指令校验方法、装置、设备和存储介质 |
CN115328533A (zh) * | 2022-07-19 | 2022-11-11 | 润阳能源技术有限公司 | 一种风电机组软件架构的确定方法及系统 |
WO2023020110A1 (zh) * | 2021-08-19 | 2023-02-23 | 飞天诚信科技股份有限公司 | 一种数据处理方法、装置及计算机可读存储介质 |
CN115774837A (zh) * | 2022-06-29 | 2023-03-10 | 惠州市德赛西威汽车电子股份有限公司 | 一种信号校验方法、装置、设备、介质、程序产品及车辆 |
CN116049109A (zh) * | 2023-01-03 | 2023-05-02 | 重庆长安汽车股份有限公司 | 一种基于过滤器的文件校验方法、系统、设备和介质 |
CN116611244A (zh) * | 2023-05-19 | 2023-08-18 | 华能陈巴尔虎旗风力发电有限公司 | 基于自适应滑动窗口划分的风速仪故障预警方法及设备 |
CN116701367A (zh) * | 2023-05-29 | 2023-09-05 | 中国银行股份有限公司 | 基于布隆过滤器的数据重复性校验方法、装置及设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7948103B2 (en) * | 2009-09-03 | 2011-05-24 | General Electric Company | Method and system for verifying wind turbine operation |
US9992261B2 (en) * | 2014-03-13 | 2018-06-05 | Canon Information And Imaging Solutions, Inc. | System and method for forwarding a file |
US20230208638A1 (en) * | 2021-12-29 | 2023-06-29 | International Business Machines Corporation | Future asset reclamation via blockchain |
-
2024
- 2024-01-02 CN CN202410001683.6A patent/CN117492405B/zh active Active
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102262572A (zh) * | 2011-07-19 | 2011-11-30 | 浙江大学 | 一种带crc校验功能的iic总线接口控制器 |
CN102738809A (zh) * | 2012-06-25 | 2012-10-17 | 山东大学 | 计及风功率分布规律的风电场无功补偿容量优化控制方法 |
CN103324122A (zh) * | 2013-06-21 | 2013-09-25 | 中山市拓维电子科技有限公司 | 基于can总线的数字式自动找平控制系统 |
CN203425717U (zh) * | 2013-08-20 | 2014-02-12 | 甘肃富民生态农业科技有限公司 | 一种改善公共场所空气质量的装置 |
CN104863798A (zh) * | 2014-02-25 | 2015-08-26 | 常州铠甲智能科技有限公司 | 基于分布式存储的风电机组状态监测系统及其监测方法 |
CN112578692A (zh) * | 2019-09-27 | 2021-03-30 | 北京东土科技股份有限公司 | 工业总线通信方法、装置、计算机设备及存储介质 |
CN113535322A (zh) * | 2020-04-15 | 2021-10-22 | 北京沃东天骏信息技术有限公司 | 一种表单校验方法和装置 |
CN113064640A (zh) * | 2021-03-12 | 2021-07-02 | 山东英信计算机技术有限公司 | 一种bios选项校验方法、系统及介质 |
WO2023020110A1 (zh) * | 2021-08-19 | 2023-02-23 | 飞天诚信科技股份有限公司 | 一种数据处理方法、装置及计算机可读存储介质 |
CN113700603A (zh) * | 2021-10-28 | 2021-11-26 | 东方电气风电有限公司 | 风电机组双编码器校验控制双驱变桨系统及方法 |
CN114252764A (zh) * | 2021-11-30 | 2022-03-29 | 南方电网科学研究院有限责任公司 | 一种断路器断流能力的校验方法、装置、设备及介质 |
CN115774837A (zh) * | 2022-06-29 | 2023-03-10 | 惠州市德赛西威汽车电子股份有限公司 | 一种信号校验方法、装置、设备、介质、程序产品及车辆 |
CN115081429A (zh) * | 2022-07-07 | 2022-09-20 | 北京微纳星空科技有限公司 | 一种指令校验方法、装置、设备和存储介质 |
CN115328533A (zh) * | 2022-07-19 | 2022-11-11 | 润阳能源技术有限公司 | 一种风电机组软件架构的确定方法及系统 |
CN116049109A (zh) * | 2023-01-03 | 2023-05-02 | 重庆长安汽车股份有限公司 | 一种基于过滤器的文件校验方法、系统、设备和介质 |
CN116611244A (zh) * | 2023-05-19 | 2023-08-18 | 华能陈巴尔虎旗风力发电有限公司 | 基于自适应滑动窗口划分的风速仪故障预警方法及设备 |
CN116701367A (zh) * | 2023-05-29 | 2023-09-05 | 中国银行股份有限公司 | 基于布隆过滤器的数据重复性校验方法、装置及设备 |
Non-Patent Citations (1)
Title |
---|
永磁直驱式风力发电机弧光保护研究;胡唐超;中国优秀硕士学位论文全文数据库工程科技Ⅱ辑;20200315(第03期);C042-264 * |
Also Published As
Publication number | Publication date |
---|---|
CN117492405A (zh) | 2024-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5048014A (en) | Dynamic network reconfiguration technique for directed-token expanded-address LAN | |
Van Herrewege et al. | CANAuth-a simple, backward compatible broadcast authentication protocol for CAN bus | |
US6021495A (en) | Method and apparatus for authentication process of a star or hub network connection ports by detecting interruption in link beat | |
RU2597501C2 (ru) | Способ и устройство для последовательной передачи данных с гибким размером сообщений и переменной длительностью бита | |
BR112015014861B1 (pt) | Método e dispositivo para a troca de dados entre assinantes | |
EP3142290A1 (en) | Transmission device, reception device, transmission method, and reception method | |
EP0862296B1 (en) | Data communication system and electronic control unit used therein | |
EP2454864B1 (de) | Vermeidung von maskerade durch verwendung von kennungssequenzen | |
JP6121563B2 (ja) | プロトコル例外状態を用いたデータ伝送プロトコル | |
King | Investigating and securing communications in the Controller Area Network (CAN) | |
EP3096504A1 (en) | Method for inlining message authentication code in data field in can-frames by transceiver | |
CA1267233A (en) | Method and circuit arrangement for the transmission of data signals between control devices connected to one another via a loop system | |
CN108894915B (zh) | 一种风力发电远程监控系统及其工作方法 | |
CN117492405B (zh) | 一种基于现场总线的风电机组控制系统校验方法 | |
US10581609B2 (en) | Log message authentication with replay protection | |
CN107070573A (zh) | 监测基于以太网的网络中的时钟同步状态 | |
WO2022085057A1 (ja) | 中継装置、通信ネットワークシステム及び通信制御方法 | |
CN113542265B (zh) | 局部网络安全管理、装置、计算机设备及存储介质 | |
RU2602353C2 (ru) | Способ и устройство для последовательной передачи данных с гибким размером сообщений и переменной длительностью бита | |
EP1645080B1 (en) | Communication system and method for sequential data transmissions in a fire detection network | |
CN112291125A (zh) | 一种can总线多节点自动识别方法及装置 | |
JP2020061655A (ja) | 通信システム | |
CN114043053B (zh) | 一种等离子切割系统的控制方法和装置 | |
CN110224794B (zh) | 通信数据传输方法及系统 | |
KR102064684B1 (ko) | Can 통신을 이용한 프로그램 업데이트의 기밀성을 보장하기 위한 데이터 통신 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |