CN109901413A - 一种可重入虚拟继电器的构架及实现方法 - Google Patents
一种可重入虚拟继电器的构架及实现方法 Download PDFInfo
- Publication number
- CN109901413A CN109901413A CN201910023420.4A CN201910023420A CN109901413A CN 109901413 A CN109901413 A CN 109901413A CN 201910023420 A CN201910023420 A CN 201910023420A CN 109901413 A CN109901413 A CN 109901413A
- Authority
- CN
- China
- Prior art keywords
- delay
- time
- relay
- mark
- ticking
- 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.)
- Granted
Links
Classifications
-
- 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
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S10/00—Systems supporting electrical power generation, transmission or distribution
- Y04S10/20—Systems supporting electrical power generation, transmission or distribution using protection elements, arrangements or systems
Landscapes
- Emergency Protection Circuit Devices (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种可重入虚拟继电器的构架及实现方法,涉及虚拟继电器构架及实现相关技术领域,为解决现有技术中的硬件计时器容易引发系统崩溃,系统主计时器占用中断时间长,系统时间的软件延时无法准确得知延时过程状态的问题。S1、设计一个标准的虚拟延时继电器结构体,用于描述和仿真实体延时继电器的各个要素;S2、根据结构虚拟延时继电器结构体,设计配套操作函数;S3、根据实际工况设计统一的、具备可重入特性的能够实现特定脉冲输出方式的延时实现算法;S4、基于C/C++语言,应用于嵌入式软件的设计,根据应用目标及系统基础不同,可分为高精度延时继电器应用、准精度延时继电器两种应用。
Description
技术领域
本发明涉及虚拟继电器构架及实现相关技术领域,具体为一种可重入虚拟继电器的构架及实现方法。
背景技术
在传统继电保护中主要以实体延时继电器及各种继电器驱动电路来实现继电保护功能从微机型继电保护开始,各种继电器驱动电路由单片机等集成电路及软件算法等配套系统来驱动实体单稳态继电器、双稳态继电器和延时继电器,以实现保护功能。
在现在微机型继电保护装置中,有的是由单片机自带硬件计时器来实现延时功能,由于继电保护功能的复杂性,需要很多独立计时器,而单片机自带硬件计时器数量是有限的,限制了很多继保功能的实现,复用计时器则容易造成功能冲突,而且硬件计时器需要消耗单片机较多中断资源,容易造成中断冲突,引发系统崩溃;也有的微机型继电保护装置中,设计了简易软件延时,主要是为每个延时功能单独配置一个计数变量来简单计量延时时间,由于每个计数变量没有实体计时器的支撑,如果需要准确计时,需要一个统一的实体计时器,所以此设计需要把所有保护功能放置在系统主计时器中断服务程序中,以便准确计时,也造成了系统主计时器中断服务程序设计复杂,占用中断时间长,其他中断响应时间长等问题;也有的微机型继电保护装置中,设计了依托于系统时间的软件延时,为每个延时功能配置了一个起始时间结构体,与系统时间结构体一致,当每次启动延时时,记录当前系统时间,每次运行到该功能延时时,读取当前系统时间与起始时间对比,计算获得延时时长,虽然此功能可以实现,各保护功能延时独立和可重入,且保护功能软件可设计在中断服务程序之外。但是在实际应用中软件操作复杂,因为是基于时间查询模式,只能实现单一的阶跃式延时,而且无法准确得知延时过程的状态;因此市场急需研制一种可重入虚拟继电器的构架及实现方法来帮助人们解决现有的问题。
发明内容
本发明的目的在于提供一种可重入虚拟继电器的构架及实现方法,以解决上述背景技术中提出的硬件计时器容易引发系统崩溃,系统主计时器占用中断时间长,系统时间的软件延时无法准确得知延时过程状态的问题。
为实现上述目的,本发明提供如下技术方案:一种可重入虚拟继电器的构架及实现方法,包括以下步骤:
S1、设计一个标准的虚拟延时继电器结构体,用于描述和仿真实体延时继电器的各个要素;
S2、根据结构虚拟延时继电器结构体,设计配套操作函数;
S3、根据实际工况设计统一的、具备可重入特性的能够实现特定脉冲输出方式的延时实现算法;
S4、基于C/C++语言,应用于嵌入式软件的设计,根据应用目标及系统基础不同,可分为高精度延时继电器应用、准精度延时继电器两种应用。
优选的,所述S1中,标准的虚拟延时继电器结构体包括虚拟继电器的输出标识及运行状态标识、虚拟继电器的整定参数变量和虚拟继电器运行变量,且虚拟继电器的输出标识及运行状态标识包括出口置位标志位、开始延时标识位、延时完成标识位、延时取消标识位和实际出口失败标识位,且虚拟继电器的整定参数变量包括出口置位延时整定时间、出口置位保持整定时间、出口置位延时中抖动滤波整定时间、出口复位延时中抖动滤波整定时间和实际出口失败延时整定时间,且虚拟继电器运行变量包括继电器循环时间计数、继电器复位时间计数、继电器出口置位延时中抖动时间计数和继电器出口复位延时中抖动时间计数。
优选的,所述S2中,配套操作函数包括虚拟继电器整定参数的初始化函数和虚拟继电器的强制复位操作函数,且虚拟继电器整定参数的初始化函数的形参包括出口置位延时整定时间、出口置位保持整定时间、出口置位延时中抖动滤波整定时间、出口复位延时中抖动滤波整定时间和实际出口失败延时整定时间,且虚拟继电器整定参数的初始化函数对虚拟继电器的输出标识及运行状态标识做复位操作、对虚拟继电器的整定参数变量整定和对虚拟继电器运行变量的初始化操作,且虚拟继电器的强制复位操作函数对虚拟继电器的输出标识及运行状态标识做复位操作及对虚拟继电器运行变量的初始化操作。
优选的,所述S3中,特定脉冲输出方式的延时实现算法的操作函数的形式参数包括虚拟继电器结构体的指针、继电器输入状态、继电器置位调用间隔延时和继电器复位调用间隔延时,特定脉冲输出方式的延时实现算法包括可防输入抖动的可设定延时开出及脉冲宽度的脉冲式虚拟延时继电器算法、可防输入抖动的可设定延时开出及可设定延时返回的阶跃式虚拟延时继电器算法和可防输入抖动的可设定延时开出及最小脉冲宽度的阶跃式虚拟延时继电器算法。
优选的,所述S4中,高精度延时继电器在系统每次滴答调用延时实现算法函数一次,主要应用于高精度延时场景、复杂应用系统场景或系统调度间隔无法保证的场景,计时范围根据系统需求修改结构体中变量数据类型,精度延时继电器在应用程序每次激活时调用延时实现算法函数一次,主要应用于准精度延时场景、简单应用系统场景或系统调度间隔可估计的场景。
优选的,可防输入抖动的可设定延时开出及脉冲宽度的脉冲式虚拟延时继电器算法的一种工作方法,包括如下步骤:
S1、开始本次滴答循环;
S2、输入为真时,确认是否开始运行及运行完成,未开始运行则进行置位开始运行标志,运行已完成,则清除防抖计数;
S3、若未运行完成,检查是否开出,未开出时元件开出延时计数累加,并清除防抖计数,待开出延时大于整定值时,置位元件开出标识、清除开出延时计数和清除返回延时计数,结束本次滴答循环,未大于整定值时,结束本次滴答循环;
S4、开出时元件返回延时计数累加,待返回延时大于整定值时,复位元件开出标识、置位运行完成标识、清除返回延时计数和清除防抖计数,结束本次滴答循环,未大于整定值时,结束本次滴答循环;
S5、输入为假时,确认是否开始运行及运行完成,若运行完成,则防抖计数增加,待防抖计数大于整定值时,复位开始运行标识、复位元件开出标识、复位运行完成标识、复位跳闸取消标识、清除开出延时计数、清除返回延时计数和清除防抖计数,结束本次滴答循环,未大于整定值时,结束本次滴答循环;
S6、若运行未完成,检查是否开出,若开出,则元件返回延时计数增加,待返回延时大于整定值时,复位元件开出标识、置位运行完成标识和清除返回延时计数,结束本次滴答循环,未大于整定值时,结束本次滴答循环;
S7、若未开出,待防抖计数大于整定值时,复位元件开出标识、置位跳闸取消标识、清除防抖计数、清除开出延时计数和清除返回延时计数,结束本次滴答循环;
S8、若防抖计数未大于整定值时,防抖计数累加,且元件开出延时计数累加,结束本次滴答循环。
优选的,可防输入抖动的可设定延时开出及可设定延时返回的阶跃式虚拟延时继电器算法的一种工作方法,包括如下步骤:
S1、开始本次滴答循环;
S2、输入为真时,确认是否开始运行,否则进行置位开始运行标志;
S3、若开始运行,检查是否开出,未开出时元件开出延时计数累加,并清除防抖计数,待开出延时大于整定值时,置位元件开出标识、清除开出延时计数和清除返回延时计数,未大于整定值时,结束本次滴答循环;
S4、开出时清除返回延时计数和清除防抖计数,结束本次滴答循环;
S5、输入为假时,确认是否开始运行,若开始运行,则防抖计数增加,待防抖计数大于整定值时,返回延时计数增加,待返回延时大于整定值时,复位开始运行标识、复位元件开出标识、复位跳闸取消标识、置位运行完成标识、清除开出延时计数、清除返回延时计数和清除防抖计数,结束本次滴答循环,未大于整定值时,结束本次滴答循环;
S6、若未开出,待防抖计数大于整定值时,复位开始运行标识、复位元件开出标识、置位跳闸取消标识、清除开出延时计数和清除防抖计数,结束本次滴答循环;
S7、若防抖计数未大于整定值时,防抖计数累加,且元件开出延时计数累加,结束本次滴答循环。
优选的,可防输入抖动的可设定延时开出及最小脉冲宽度的阶跃式虚拟延时继电器算法的一种工作方法,包括如下步骤:
S1、开始本次滴答循环;
S2、输入为真时,确认是否开始运行,否则进行置位开始运行标志;
S3、开始运行时,检查是否运行完成,若运行完成,则清除防抖计数和清除返回延时计数,并检查返回延时是否大于脉冲宽度整定值,若大于脉冲宽度整定值,则复位元件开出标识、置位最小宽度返回标识和清除返回延时计数,结束本次滴答循环,若未大于脉冲宽度整定值,结束本次滴答循环;
S4、若运行未完成,检查是否开出,若未开出,元件开出延时计数累加,并清除防抖计数,检查是否开出延时大于整定值,若大于整定值,置位元件开出标识、清除开出延时计数和清除返回延时计数,结束本次滴答循环,若未大于整定值,结束本次滴答循环;
S5、若开出,元件返回延时计数累加,并检查是否返回延时大于整定值,若大于整定值,复位元件开出标识、置位运行完成标识、清除返回延时计数和清除防抖计数,结束本次滴答循环,若未大于整定值,结束本次滴答循环;
S6、输入为假时,确认是否开始运行,若未开始运行,结束本次滴答循环;
S7、若开始运行,则检查是否运行完成,若运行未完成,检查是否开出,未开出时,检查防抖计数是否大于整定值,大于整定值时,置位开始运行标识、置位跳闸取消标识、清除防抖计数、清除开出延时计数和清除返回延时计数,结束本次滴答循环,若未大于整定值,防抖计数累加,元件开出延时计数累加,结束本次滴答循环;
S8、开出时,元件返回延时计数累加,检查返回延时是否大于整定值,大于整定值时,复位元件开出标识、置位运行完成标识和清除返回延时计数,结束本次滴答循环,若未大于整定值,结束本次滴答循环;
S9、若运行完成,防抖计数累加,检查防抖计数是否大于整定值,大于整定值时,复位开始运行标识、复位元件开出标识、复位运行完成标识、复位最小宽度返回标识、清除开出延时计数、清除返回延时计数和清除防抖计数,结束本次滴答循环,若未大于整定值,结束本次滴答循环。
优选的,所述S4中高精度延时继电器的一种工作方法,包括如下步骤:
S1、虚拟延时继电器结构体定义为全局变量;
S2、首次激活应用程序,应用程序对所有本程序调用的虚拟延时继电器进行初始化,初始化参数是根据系统设定参数转换为系统的滴答数;
S3、应用程序将根据采集到的动态变量判断虚拟延时继电器的输入状态;
S4、在每次系统滴答的中断函数中,调用一次虚拟继电器操作函数,该操作函数是根据应用程序需要的特定脉冲输出方式的延时是否符合上述三种方案之一,若符合上述三种方案中之一则只需在应用程序中调用对应的算法函数,每个结构体只能被一种算法函数调用;
S5、应用程序的延时任务只需查询虚拟延时继电器的出口置位标识的值赋值给实际I/O出口缓存即可时间对实际出口的延时控制。
优选的,所述S4中精度延时继电器的一种工作方法,包括如下步骤:
S1、虚拟延时继电器结构体只需要定义为局部静态变量;
S2、首次激活应用程序,应用程序对所有本程序调用的虚拟延时继电器进行初始化,初始化参数是根据系统设定参数转换为系统的滴答数;
S3、以后每次应用程序激活时统计距上次应用程序激活系统经历的滴答,作为延时间隔参数传送给虚拟继电器操作函数;
S4、应用程序将根据采集到的动态变量判断虚拟延时继电器的输入状态;
S5、根据应用程序需要的特定脉冲输出方式的延时是否符合上述三种方案之一,若符合上述三种方案中之一则只需在应用程序中调用对应的算法函数,每个结构体只能被一种算法函数调用,且每个应用程序中只允许调用一次该虚拟继电器的操作函数;
S6、应用程序的延时任务只需查询虚拟延时继电器的出口置位标识的值赋值给实际I/O出口缓存即可时间对实际出口的延时控制。
与现有技术相比,本发明的有益效果是:
1、该发明简便的实现继电保护中对不同保护功能的整定延时开出的延时开出,简化了继电保护装置系统的开发过程,根据不同的应用部署,最高可实现1个系统滴答的计时精度,延时范围可根据系统需求任意整定;
2、该发明对于不用的保护功能的需要可实现不同脉冲输出方式,修改简便,只需调用对应的可防输入抖动的可设定延时开出及脉冲宽度的脉冲式虚拟延时继电器算法、可防输入抖动的可设定延时开出及可设定延时返回的阶跃式虚拟延时继电器算法和可防输入抖动的可设定延时开出及最小脉冲宽度的阶跃式虚拟延时继电器算法,本发明的防抖动设计可以让继电保护装置在恶劣工况下,准确实现保护开出,不会因为恶劣工况导致采集信号的抖动而抖动;
3、该发明能切实的增加继电保护装置的精确性、稳定性。
附图说明
图1为本发明的一种可重入虚拟继电器的构架及实现方法的系统结构图;
图2为本发明的可防输入抖动的可设定延时开出及脉冲宽度的脉冲式虚拟延时继电器算法的工作流程图;
图3为本发明的可防输入抖动的可设定延时开出及可设定延时返回的阶跃式虚拟延时继电器算法的工作流程图;
图4为本发明的可防输入抖动的可设定延时开出及最小脉冲宽度的阶跃式虚拟延时继电器算法的工作流程图;
图5为本发明的高精度延时继电器的工作步骤图;
图6为本发明的准精度延时继电器的工作步骤图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
请参阅图1-6,本发明提供的一种实施例:一种可重入虚拟继电器的构架及实现方法,包括以下步骤:
S1、设计一个标准的虚拟延时继电器结构体,用于描述和仿真实体延时继电器的各个要素;
S2、根据结构虚拟延时继电器结构体,设计配套操作函数;
S3、根据实际工况设计统一的、具备可重入特性的能够实现特定脉冲输出方式的延时实现算法,本发明中的延时实现算法都具备对输入、输出的抖动控制,且可根据应用场景的抖动特性,修改抖动控制参数,能够有效防止由于抖动输入、间隙式抖动输入对延时继电器输出的误启动、误返回等情况出现,也是实体继电器及其他计时方式无法可靠实现的特性,应用本发明实现特定脉冲输出方式的延时,只需调用对应的算法函数,且每个结构体只能调用一种算法函数;
S4、基于C/C++语言,应用于嵌入式软件的设计,根据应用目标及系统基础不同,可分为高精度延时继电器应用、准精度延时继电器两种应用。
进一步,标准的虚拟延时继电器结构体包括虚拟继电器的输出标识及运行状态标识、虚拟继电器的整定参数变量和虚拟继电器运行变量,且虚拟继电器的输出标识及运行状态标识包括出口置位标志位、开始延时标识位、延时完成标识位、延时取消标识位和实际出口失败标识位,且虚拟继电器的整定参数变量包括出口置位延时整定时间、出口置位保持整定时间、出口置位延时中抖动滤波整定时间、出口复位延时中抖动滤波整定时间和实际出口失败延时整定时间,且虚拟继电器运行变量包括继电器循环时间计数、继电器复位时间计数、继电器出口置位延时中抖动时间计数和继电器出口复位延时中抖动时间计数。
本发明对虚拟延时继电器结构体的具体定义如下:
typedef struct _TIMERELAY//时间继电器结构
{
bool boolTrip; //出口置位标识
bool boolStart; //开始延时标识
bool boolCKOK; //延时完成标识
bool boolCKCANCEL; //延时取消标识
bool boolCKFAILED; //实际出口失败识志
DWORD dTripThreshold; //出口置位延时整定时间
DWORD dRetThreshold; //出口置位保持整定时间
DWORD dTJitThreshold; //出口置位延时中抖动滤波整定时间
DWORD dRJitThreshold; //出口复位延时中抖动滤波整定时间
DWORD dFalThreshold; //实际出口失败延时整定时间
DWORD dTimer; //继电器循环时间计数
DWORD dRetTimer; //继电器返回时间计数
DWORD dTripJitTimer; //继电器出口置位延时中抖动时间计数
DWORD dRetJitTimer; //继电器出口复位延时中抖动时间计数
}TIMERELAY;
进一步,配套操作函数包括虚拟继电器整定参数的初始化函数和虚拟继电器的强制复位操作函数,虚拟继电器整定参数的初始化函数主要用于根据不同工况及需要,对虚拟继电器的整定参数进行初始化,且虚拟继电器整定参数的初始化函数的形参包括出口置位延时整定时间、出口置位保持整定时间、出口置位延时中抖动滤波整定时间、出口复位延时中抖动滤波整定时间和实际出口失败延时整定时间,且虚拟继电器整定参数的初始化函数对虚拟继电器的输出标识及运行状态标识做复位操作、对虚拟继电器的整定参数变量整定和对虚拟继电器运行变量的初始化操作,且虚拟继电器的强制复位操作函数对虚拟继电器的输出标识及运行状态标识做复位操作及对虚拟继电器运行变量的初始化操作。
进一步,特定脉冲输出方式的延时实现算法的操作函数的形式参数包括虚拟继电器结构体的指针、继电器输入状态、继电器置位调用间隔延时和继电器复位调用间隔延时,拟继电器结构体的指针指向需要操作的虚拟延时继电器的结构体、继电器输入状态验证虚拟继电器是否得电、继电器置位调用间隔延时在置位过程中两次调用之间的延时、继电器复位调用间隔延时在复位过程中两次调用之间的延时,特定脉冲输出方式的延时实现算法包括可防输入抖动的可设定延时开出及脉冲宽度的脉冲式虚拟延时继电器算法、可防输入抖动的可设定延时开出及可设定延时返回的阶跃式虚拟延时继电器算法和可防输入抖动的可设定延时开出及最小脉冲宽度的阶跃式虚拟延时继电器算法。
进一步,高精度延时继电器在系统每次滴答调用延时实现算法函数一次,主要应用于高精度延时场景、复杂应用系统场景或系统调度间隔无法保证的场景,计时范围根据系统需求修改结构体中变量数据类型,此种应用部署,计时精度为1个系统滴答,计时范围可以根据系统需求修改结构体中变量数据类型,轻松满足,没有实际限制,精度延时继电器在应用程序每次激活时调用延时实现算法函数一次,主要应用于准精度延时场景、简单应用系统场景或系统调度间隔可估计的场景,此种应用部署,计时最大误差为系统最大调度间隔,计时范围可以根据系统需求修改结构体中变量数据类型,轻松满足,没有实际限制。
进一步,可防输入抖动的可设定延时开出及脉冲宽度的脉冲式虚拟延时继电器算法的一种工作方法,包括如下步骤:
S1、开始本次滴答循环;
S2、输入为真时,确认是否开始运行及运行完成,未开始运行则进行置位开始运行标志,运行已完成,则清除防抖计数;
S3、若未运行完成,检查是否开出,未开出时元件开出延时计数累加,并清除防抖计数,待开出延时大于整定值时,置位元件开出标识、清除开出延时计数和清除返回延时计数,结束本次滴答循环,未大于整定值时,结束本次滴答循环;
S4、开出时元件返回延时计数累加,待返回延时大于整定值时,复位元件开出标识、置位运行完成标识、清除返回延时计数和清除防抖计数,结束本次滴答循环,未大于整定值时,结束本次滴答循环;
S5、输入为假时,确认是否开始运行及运行完成,若运行完成,则防抖计数增加,待防抖计数大于整定值时,复位开始运行标识、复位元件开出标识、复位运行完成标识、复位跳闸取消标识、清除开出延时计数、清除返回延时计数和清除防抖计数,结束本次滴答循环,未大于整定值时,结束本次滴答循环;
S6、若运行未完成,检查是否开出,若开出,则元件返回延时计数增加,待返回延时大于整定值时,复位元件开出标识、置位运行完成标识和清除返回延时计数,结束本次滴答循环,未大于整定值时,结束本次滴答循环;
S7、若未开出,待防抖计数大于整定值时,复位元件开出标识、置位跳闸取消标识、清除防抖计数、清除开出延时计数和清除返回延时计数,结束本次滴答循环;
S8、若防抖计数未大于整定值时,防抖计数累加,且元件开出延时计数累加,结束本次滴答循环。
进一步,可防输入抖动的可设定延时开出及可设定延时返回的阶跃式虚拟延时继电器算法的一种工作方法,包括如下步骤:
S1、开始本次滴答循环;
S2、输入为真时,确认是否开始运行,否则进行置位开始运行标志;
S3、若开始运行,检查是否开出,未开出时元件开出延时计数累加,并清除防抖计数,待开出延时大于整定值时,置位元件开出标识、清除开出延时计数和清除返回延时计数,未大于整定值时,结束本次滴答循环;
S4、开出时清除返回延时计数和清除防抖计数,结束本次滴答循环;
S5、输入为假时,确认是否开始运行,若开始运行,则防抖计数增加,待防抖计数大于整定值时,返回延时计数增加,待返回延时大于整定值时,复位开始运行标识、复位元件开出标识、复位跳闸取消标识、置位运行完成标识、清除开出延时计数、清除返回延时计数和清除防抖计数,结束本次滴答循环,未大于整定值时,结束本次滴答循环;
S6、若未开出,待防抖计数大于整定值时,复位开始运行标识、复位元件开出标识、置位跳闸取消标识、清除开出延时计数和清除防抖计数,结束本次滴答循环;
S7、若防抖计数未大于整定值时,防抖计数累加,且元件开出延时计数累加,结束本次滴答循环。
进一步,可防输入抖动的可设定延时开出及最小脉冲宽度的阶跃式虚拟延时继电器算法的一种工作方法,包括如下步骤:
S1、开始本次滴答循环;
S2、输入为真时,确认是否开始运行,否则进行置位开始运行标志;
S3、开始运行时,检查是否运行完成,若运行完成,则清除防抖计数和清除返回延时计数,并检查返回延时是否大于脉冲宽度整定值,若大于脉冲宽度整定值,则复位元件开出标识、置位最小宽度返回标识和清除返回延时计数,结束本次滴答循环,若未大于脉冲宽度整定值,结束本次滴答循环;
S4、若运行未完成,检查是否开出,若未开出,元件开出延时计数累加,并清除防抖计数,检查是否开出延时大于整定值,若大于整定值,置位元件开出标识、清除开出延时计数和清除返回延时计数,结束本次滴答循环,若未大于整定值,结束本次滴答循环;
S5、若开出,元件返回延时计数累加,并检查是否返回延时大于整定值,若大于整定值,复位元件开出标识、置位运行完成标识、清除返回延时计数和清除防抖计数,结束本次滴答循环,若未大于整定值,结束本次滴答循环;
S6、输入为假时,确认是否开始运行,若未开始运行,结束本次滴答循环;
S7、若开始运行,则检查是否运行完成,若运行未完成,检查是否开出,未开出时,检查防抖计数是否大于整定值,大于整定值时,置位开始运行标识、置位跳闸取消标识、清除防抖计数、清除开出延时计数和清除返回延时计数,结束本次滴答循环,若未大于整定值,防抖计数累加,元件开出延时计数累加,结束本次滴答循环;
S8、开出时,元件返回延时计数累加,检查返回延时是否大于整定值,大于整定值时,复位元件开出标识、置位运行完成标识和清除返回延时计数,结束本次滴答循环,若未大于整定值,结束本次滴答循环;
S9、若运行完成,防抖计数累加,检查防抖计数是否大于整定值,大于整定值时,复位开始运行标识、复位元件开出标识、复位运行完成标识、复位最小宽度返回标识、清除开出延时计数、清除返回延时计数和清除防抖计数,结束本次滴答循环,若未大于整定值,结束本次滴答循环。
进一步,高精度延时继电器的一种工作方法,包括如下步骤:
S1、虚拟延时继电器结构体定义为全局变量;
S2、首次激活应用程序,应用程序对所有本程序调用的虚拟延时继电器进行初始化,初始化参数是根据系统设定参数转换为系统的滴答数;
S3、应用程序将根据采集到的动态变量判断虚拟延时继电器的输入状态;
S4、在每次系统滴答的中断函数中,调用一次虚拟继电器操作函数,该操作函数是根据应用程序需要的特定脉冲输出方式的延时是否符合上述三种方案之一,若符合上述三种方案中之一则只需在应用程序中调用对应的算法函数,每个结构体只能被一种算法函数调用;
S5、应用程序的延时任务只需查询虚拟延时继电器的出口置位标识的值赋值给实际I/O出口缓存即可时间对实际出口的延时控制。
进一步,精度延时继电器的一种工作方法,包括如下步骤:
S1、虚拟延时继电器结构体只需要定义为局部静态变量;
S2、首次激活应用程序,应用程序对所有本程序调用的虚拟延时继电器进行初始化,初始化参数是根据系统设定参数转换为系统的滴答数;
S3、以后每次应用程序激活时统计距上次应用程序激活系统经历的滴答,作为延时间隔参数传送给虚拟继电器操作函数;
S4、应用程序将根据采集到的动态变量判断虚拟延时继电器的输入状态;
S5、根据应用程序需要的特定脉冲输出方式的延时是否符合上述三种方案之一,若符合上述三种方案中之一则只需在应用程序中调用对应的算法函数,每个结构体只能被一种算法函数调用,且每个应用程序中只允许调用一次该虚拟继电器的操作函数;
S6、应用程序的延时任务只需查询虚拟延时继电器的出口置位标识的值赋值给实际I/O出口缓存即可时间对实际出口的延时控制。
工作原理:设计一个标准的虚拟延时继电器结构体,用于描述和仿真实体延时继电器的各个要素,根据结构虚拟延时继电器结构体,设计配套操作函数,对虚拟继电器的输出标识及运行状态标识做复位操作,其中虚拟继电器整定参数的初始化函数对虚拟继电器的整定参数变量整定、对虚拟继电器运行变量的初始化操作,虚拟继电器的强制复位操作函数对虚拟继电器的输出标识及运行状态标识做复位操作及对虚拟继电器运行变量的初始化操作,根据实际工况设计统一的、具备可重入特性的能够实现特定脉冲输出方式的延时实现算法,根据应用目标及系统基础不同,可分为高精度延时继电器应用、准精度延时继电器两种应用,最后应用程序的延时任务只需查询虚拟延时继电器的出口置位标识的值赋值给实际I/O出口缓存即可时间对实际出口的延时控制。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
Claims (10)
1.一种可重入虚拟继电器的构架及实现方法,其特征在于,包括以下步骤:
S1、设计一个标准的虚拟延时继电器结构体,用于描述和仿真实体延时继电器的各个要素;
S2、根据结构虚拟延时继电器结构体,设计配套操作函数;
S3、根据实际工况设计统一的、具备可重入特性的能够实现特定脉冲输出方式的延时实现算法;
S4、基于C/C++语言,应用于嵌入式软件的设计,根据应用目标及系统基础不同,可分为高精度延时继电器应用、准精度延时继电器两种应用。
2.根据权利要求1所述的一种可重入虚拟继电器的构架及实现方法,其特征在于:所述S1中,标准的虚拟延时继电器结构体包括虚拟继电器的输出标识及运行状态标识、虚拟继电器的整定参数变量和虚拟继电器运行变量,且虚拟继电器的输出标识及运行状态标识包括出口置位标志位、开始延时标识位、延时完成标识位、延时取消标识位和实际出口失败标识位,且虚拟继电器的整定参数变量包括出口置位延时整定时间、出口置位保持整定时间、出口置位延时中抖动滤波整定时间、出口复位延时中抖动滤波整定时间和实际出口失败延时整定时间,且虚拟继电器运行变量包括继电器循环时间计数、继电器复位时间计数、继电器出口置位延时中抖动时间计数和继电器出口复位延时中抖动时间计数。
3.根据权利要求1所述的一种可重入虚拟继电器的构架及实现方法,其特征在于:所述S2中,配套操作函数包括虚拟继电器整定参数的初始化函数和虚拟继电器的强制复位操作函数,且虚拟继电器整定参数的初始化函数的形参包括出口置位延时整定时间、出口置位保持整定时间、出口置位延时中抖动滤波整定时间、出口复位延时中抖动滤波整定时间和实际出口失败延时整定时间,且虚拟继电器整定参数的初始化函数对虚拟继电器的输出标识及运行状态标识做复位操作、对虚拟继电器的整定参数变量整定和对虚拟继电器运行变量的初始化操作,且虚拟继电器的强制复位操作函数对虚拟继电器的输出标识及运行状态标识做复位操作及对虚拟继电器运行变量的初始化操作。
4.根据权利要求1所述的一种可重入虚拟继电器的构架及实现方法,其特征在于:所述S3中,特定脉冲输出方式的延时实现算法的操作函数的形式参数包括虚拟继电器结构体的指针、继电器输入状态、继电器置位调用间隔延时和继电器复位调用间隔延时,特定脉冲输出方式的延时实现算法包括可防输入抖动的可设定延时开出及脉冲宽度的脉冲式虚拟延时继电器算法、可防输入抖动的可设定延时开出及可设定延时返回的阶跃式虚拟延时继电器算法和可防输入抖动的可设定延时开出及最小脉冲宽度的阶跃式虚拟延时继电器算法。
5.根据权利要求1所述的一种可重入虚拟继电器的构架及实现方法,其特征在于:所述S4中,高精度延时继电器在系统每次滴答调用延时实现算法函数一次,主要应用于高精度延时场景、复杂应用系统场景或系统调度间隔无法保证的场景,计时范围根据系统需求修改结构体中变量数据类型,精度延时继电器在应用程序每次激活时调用延时实现算法函数一次,主要应用于准精度延时场景、简单应用系统场景或系统调度间隔可估计的场景。
6.根据权利要求4所述的可防输入抖动的可设定延时开出及脉冲宽度的脉冲式虚拟延时继电器算法的一种工作方法,其特征在于,包括如下步骤:
S1、开始本次滴答循环;
S2、输入为真时,确认是否开始运行及运行完成,未开始运行则进行置位开始运行标志,运行已完成,则清除防抖计数;
S3、若未运行完成,检查是否开出,未开出时元件开出延时计数累加,并清除防抖计数,待开出延时大于整定值时,置位元件开出标识、清除开出延时计数和清除返回延时计数,结束本次滴答循环,未大于整定值时,结束本次滴答循环;
S4、开出时元件返回延时计数累加,待返回延时大于整定值时,复位元件开出标识、置位运行完成标识、清除返回延时计数和清除防抖计数,结束本次滴答循环,未大于整定值时,结束本次滴答循环;
S5、输入为假时,确认是否开始运行及运行完成,若运行完成,则防抖计数增加,待防抖计数大于整定值时,复位开始运行标识、复位元件开出标识、复位运行完成标识、复位跳闸取消标识、清除开出延时计数、清除返回延时计数和清除防抖计数,结束本次滴答循环,未大于整定值时,结束本次滴答循环;
S6、若运行未完成,检查是否开出,若开出,则元件返回延时计数增加,待返回延时大于整定值时,复位元件开出标识、置位运行完成标识和清除返回延时计数,结束本次滴答循环,未大于整定值时,结束本次滴答循环;
S7、若未开出,待防抖计数大于整定值时,复位元件开出标识、置位跳闸取消标识、清除防抖计数、清除开出延时计数和清除返回延时计数,结束本次滴答循环;
S8、若防抖计数未大于整定值时,防抖计数累加,且元件开出延时计数累加,结束本次滴答循环。
7.根据权利要求4所述的可防输入抖动的可设定延时开出及可设定延时返回的阶跃式虚拟延时继电器算法的一种工作方法,其特征在于,包括如下步骤:
S1、开始本次滴答循环;
S2、输入为真时,确认是否开始运行,否则进行置位开始运行标志;
S3、若开始运行,检查是否开出,未开出时元件开出延时计数累加,并清除防抖计数,待开出延时大于整定值时,置位元件开出标识、清除开出延时计数和清除返回延时计数,未大于整定值时,结束本次滴答循环;
S4、开出时清除返回延时计数和清除防抖计数,结束本次滴答循环;
S5、输入为假时,确认是否开始运行,若开始运行,则防抖计数增加,待防抖计数大于整定值时,返回延时计数增加,待返回延时大于整定值时,复位开始运行标识、复位元件开出标识、复位跳闸取消标识、置位运行完成标识、清除开出延时计数、清除返回延时计数和清除防抖计数,结束本次滴答循环,未大于整定值时,结束本次滴答循环;
S6、若未开出,待防抖计数大于整定值时,复位开始运行标识、复位元件开出标识、置位跳闸取消标识、清除开出延时计数和清除防抖计数,结束本次滴答循环;
S7、若防抖计数未大于整定值时,防抖计数累加,且元件开出延时计数累加,结束本次滴答循环。
8.根据权利要求4所述的可防输入抖动的可设定延时开出及最小脉冲宽度的阶跃式虚拟延时继电器算法的一种工作方法,其特征在于,包括如下步骤:
S1、开始本次滴答循环;
S2、输入为真时,确认是否开始运行,否则进行置位开始运行标志;
S3、开始运行时,检查是否运行完成,若运行完成,则清除防抖计数和清除返回延时计数,并检查返回延时是否大于脉冲宽度整定值,若大于脉冲宽度整定值,则复位元件开出标识、置位最小宽度返回标识和清除返回延时计数,结束本次滴答循环,若未大于脉冲宽度整定值,结束本次滴答循环;
S4、若运行未完成,检查是否开出,若未开出,元件开出延时计数累加,并清除防抖计数,检查是否开出延时大于整定值,若大于整定值,置位元件开出标识、清除开出延时计数和清除返回延时计数,结束本次滴答循环,若未大于整定值,结束本次滴答循环;
S5、若开出,元件返回延时计数累加,并检查是否返回延时大于整定值,若大于整定值,复位元件开出标识、置位运行完成标识、清除返回延时计数和清除防抖计数,结束本次滴答循环,若未大于整定值,结束本次滴答循环;
S6、输入为假时,确认是否开始运行,若未开始运行,结束本次滴答循环;
S7、若开始运行,则检查是否运行完成,若运行未完成,检查是否开出,未开出时,检查防抖计数是否大于整定值,大于整定值时,置位开始运行标识、置位跳闸取消标识、清除防抖计数、清除开出延时计数和清除返回延时计数,结束本次滴答循环,若未大于整定值,防抖计数累加,元件开出延时计数累加,结束本次滴答循环;
S8、开出时,元件返回延时计数累加,检查返回延时是否大于整定值,大于整定值时,复位元件开出标识、置位运行完成标识和清除返回延时计数,结束本次滴答循环,若未大于整定值,结束本次滴答循环;
S9、若运行完成,防抖计数累加,检查防抖计数是否大于整定值,大于整定值时,复位开始运行标识、复位元件开出标识、复位运行完成标识、复位最小宽度返回标识、清除开出延时计数、清除返回延时计数和清除防抖计数,结束本次滴答循环,若未大于整定值,结束本次滴答循环。
9.根据权利要求1所述S4中高精度延时继电器的一种工作方法,其特征在于,包括如下步骤:
S1、虚拟延时继电器结构体定义为全局变量;
S2、首次激活应用程序,应用程序对所有本程序调用的虚拟延时继电器进行初始化,初始化参数是根据系统设定参数转换为系统的滴答数;
S3、应用程序将根据采集到的动态变量判断虚拟延时继电器的输入状态;
S4、在每次系统滴答的中断函数中,调用一次虚拟继电器操作函数,该操作函数是根据应用程序需要的特定脉冲输出方式的延时是否符合上述三种方案之一,若符合上述三种方案中之一则只需在应用程序中调用对应的算法函数,每个结构体只能被一种算法函数调用;
S5、应用程序的延时任务只需查询虚拟延时继电器的出口置位标识的值赋值给实际I/O出口缓存即可时间对实际出口的延时控制。
10.根据权利要求1所述S4中精度延时继电器的一种工作方法,其特征在于,包括如下步骤:
S1、虚拟延时继电器结构体只需要定义为局部静态变量;
S2、首次激活应用程序,应用程序对所有本程序调用的虚拟延时继电器进行初始化,初始化参数是根据系统设定参数转换为系统的滴答数;
S3、以后每次应用程序激活时统计距上次应用程序激活系统经历的滴答,作为延时间隔参数传送给虚拟继电器操作函数;
S4、应用程序将根据采集到的动态变量判断虚拟延时继电器的输入状态;
S5、根据应用程序需要的特定脉冲输出方式的延时是否符合上述三种方案之一,若符合上述三种方案中之一则只需在应用程序中调用对应的算法函数,每个结构体只能被一种算法函数调用,且每个应用程序中只允许调用一次该虚拟继电器的操作函数;
S6、应用程序的延时任务只需查询虚拟延时继电器的出口置位标识的值赋值给实际I/O出口缓存即可时间对实际出口的延时控制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910023420.4A CN109901413B (zh) | 2019-01-10 | 2019-01-10 | 一种可重入虚拟继电器的构架及实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910023420.4A CN109901413B (zh) | 2019-01-10 | 2019-01-10 | 一种可重入虚拟继电器的构架及实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109901413A true CN109901413A (zh) | 2019-06-18 |
CN109901413B CN109901413B (zh) | 2022-05-24 |
Family
ID=66943600
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910023420.4A Active CN109901413B (zh) | 2019-01-10 | 2019-01-10 | 一种可重入虚拟继电器的构架及实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109901413B (zh) |
Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3987316A (en) * | 1974-08-29 | 1976-10-19 | Westinghouse Electric Corporation | Universal digital time delay relay having a multistate indicator and digitally controlled contacts |
CN1078833A (zh) * | 1992-05-13 | 1993-11-24 | 深圳市敏达电子电源设备厂 | 数字式时间继电器 |
CN2833664Y (zh) * | 2005-05-18 | 2006-11-01 | 成都飞机工业(集团)有限责任公司 | 数字式多功能时间检定仪 |
US20100030509A1 (en) * | 2008-08-04 | 2010-02-04 | Crain Ii Charles E | Synchronizing a Loop Performed by a Measurement Device with a Measurement and Control Loop Performed by a Processor of a Host Computer |
CN201413979Y (zh) * | 2009-04-22 | 2010-02-24 | 南京澳德思电气有限公司 | 数字式电压继电器 |
CN101989073A (zh) * | 2009-07-30 | 2011-03-23 | 鸿富锦精密工业(深圳)有限公司 | 继电器控制电路和继电器控制系统 |
CN202217623U (zh) * | 2011-08-02 | 2012-05-09 | 温州安良电气有限公司 | 多模式lcd显示时间继电器 |
CN103529710A (zh) * | 2013-10-15 | 2014-01-22 | 广东电网公司电力调度控制中心 | 电力系统备自投模型实现方法及其系统 |
JP2014239335A (ja) * | 2013-06-07 | 2014-12-18 | マスプロ電工株式会社 | 中継装置及び中継システム |
CN204203426U (zh) * | 2014-09-28 | 2015-03-11 | 中国石油化工股份有限公司 | Mrr继电器快速校验台 |
CN104599902A (zh) * | 2014-12-25 | 2015-05-06 | 浙江天正电气股份有限公司 | 改进型时间继电器 |
CN105719906A (zh) * | 2016-03-15 | 2016-06-29 | 江苏信息职业技术学院 | 高精度时间继电器及其控制方法 |
WO2016109277A1 (en) * | 2015-01-02 | 2016-07-07 | Systech Corporation | Control infrastructure |
CN106933168A (zh) * | 2017-05-16 | 2017-07-07 | 徐坚 | 继电器控制模块、其控制方法以及继电器控制系统 |
JP2017153305A (ja) * | 2016-02-26 | 2017-08-31 | 三菱電機株式会社 | 保護制御装置 |
CN206835060U (zh) * | 2017-06-15 | 2018-01-02 | 北京中法瑞克核仪器有限公司 | 一种电动阀模拟器 |
CN107991605A (zh) * | 2017-11-16 | 2018-05-04 | 湖南工业大学 | 继电器寿命计数测量方法 |
-
2019
- 2019-01-10 CN CN201910023420.4A patent/CN109901413B/zh active Active
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3987316A (en) * | 1974-08-29 | 1976-10-19 | Westinghouse Electric Corporation | Universal digital time delay relay having a multistate indicator and digitally controlled contacts |
CN1078833A (zh) * | 1992-05-13 | 1993-11-24 | 深圳市敏达电子电源设备厂 | 数字式时间继电器 |
CN2833664Y (zh) * | 2005-05-18 | 2006-11-01 | 成都飞机工业(集团)有限责任公司 | 数字式多功能时间检定仪 |
US20100030509A1 (en) * | 2008-08-04 | 2010-02-04 | Crain Ii Charles E | Synchronizing a Loop Performed by a Measurement Device with a Measurement and Control Loop Performed by a Processor of a Host Computer |
CN201413979Y (zh) * | 2009-04-22 | 2010-02-24 | 南京澳德思电气有限公司 | 数字式电压继电器 |
CN101989073A (zh) * | 2009-07-30 | 2011-03-23 | 鸿富锦精密工业(深圳)有限公司 | 继电器控制电路和继电器控制系统 |
CN202217623U (zh) * | 2011-08-02 | 2012-05-09 | 温州安良电气有限公司 | 多模式lcd显示时间继电器 |
JP2014239335A (ja) * | 2013-06-07 | 2014-12-18 | マスプロ電工株式会社 | 中継装置及び中継システム |
CN103529710A (zh) * | 2013-10-15 | 2014-01-22 | 广东电网公司电力调度控制中心 | 电力系统备自投模型实现方法及其系统 |
CN204203426U (zh) * | 2014-09-28 | 2015-03-11 | 中国石油化工股份有限公司 | Mrr继电器快速校验台 |
CN104599902A (zh) * | 2014-12-25 | 2015-05-06 | 浙江天正电气股份有限公司 | 改进型时间继电器 |
WO2016109277A1 (en) * | 2015-01-02 | 2016-07-07 | Systech Corporation | Control infrastructure |
JP2017153305A (ja) * | 2016-02-26 | 2017-08-31 | 三菱電機株式会社 | 保護制御装置 |
CN105719906A (zh) * | 2016-03-15 | 2016-06-29 | 江苏信息职业技术学院 | 高精度时间继电器及其控制方法 |
CN106933168A (zh) * | 2017-05-16 | 2017-07-07 | 徐坚 | 继电器控制模块、其控制方法以及继电器控制系统 |
CN206835060U (zh) * | 2017-06-15 | 2018-01-02 | 北京中法瑞克核仪器有限公司 | 一种电动阀模拟器 |
CN107991605A (zh) * | 2017-11-16 | 2018-05-04 | 湖南工业大学 | 继电器寿命计数测量方法 |
Non-Patent Citations (5)
Title |
---|
吴裔骞等: "微秒级时间间隔发生及动作装置的研制", 《电测与仪表》 * |
李中伟: "一种新型智能时间继电器的研究", 《低压电器》 * |
李国龙: "延时继电器定时算法研究", 《科研发展》 * |
梁秀霞等: "基于AT89C51单片机的全数字触发器的设计", 《河北工业大学学报》 * |
陈晓龙等: "新型高精度时间继电器电子模块", 《科技信息(科学教研)》 * |
Also Published As
Publication number | Publication date |
---|---|
CN109901413B (zh) | 2022-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Henriksson et al. | TrueTime: Simulation of control loops under shared computer resources | |
EP1538497B1 (en) | Distributed real time operating system | |
Correll et al. | Design considerations for software only implementations of the IEEE 1588 precision time protocol | |
Henriksson et al. | Cyber-physical systems modeling and simulation with Modelica | |
US6633942B1 (en) | Distributed real-time operating system providing integrated interrupt management | |
CN109150355A (zh) | 一种fpga下实现ptp网卡的系统 | |
EP3196717B1 (en) | Emulated industrial control | |
JP3901417B2 (ja) | Plcシミュレータ | |
CN109901413A (zh) | 一种可重入虚拟继电器的构架及实现方法 | |
US7206958B1 (en) | Determining cycle adjustments for static timing analysis of multifrequency circuits | |
CN109407752B (zh) | Rs485通讯中实现时钟同步的gis断路器在线监测系统 | |
WO2022062670A1 (zh) | 计时方法、目视助航设备控制方法及相关装置 | |
CN109245981A (zh) | 一种现场总线通讯的调度方法及系统 | |
CN109782841A (zh) | 基于rtc芯片的实时时钟的实现方法、终端设备及存储介质 | |
US20220210247A1 (en) | Control system, support apparatus, and program for support apparatus | |
CN109617640B (zh) | 一种485总线自组网定时方法 | |
Bertocco et al. | Estimation of the delay of network devices in hybrid wired/wireless real-time industrial communication systems | |
KR101552119B1 (ko) | EtherCAT을 위한 노드간 최적 시간 위상 검색 시스템 | |
CN109256998A (zh) | 控制电机电流高精度采样的方法及系统和伺服电机 | |
KR20170058629A (ko) | 디바이스 간의 시각 동기 정밀도를 향상시키는 방법, 장치, 시스템 및 컴퓨터 프로그램 | |
CN113259081B (zh) | 一种跨时间域的数据同步系统及方法 | |
CN107230490B (zh) | 记忆装置及其重置方法 | |
US20210263777A1 (en) | Real time sense & control architecture | |
Hemingway et al. | Automated synthesis of time-triggered architecture-based TrueTime models for platform effects simulation and analysis | |
CN117472145A (zh) | 时钟校准方法和时钟校准装置 |
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 |