CN105393180A - 仿真系统、可编程控制器、仿真装置、工程设计工具 - Google Patents
仿真系统、可编程控制器、仿真装置、工程设计工具 Download PDFInfo
- Publication number
- CN105393180A CN105393180A CN201480041282.8A CN201480041282A CN105393180A CN 105393180 A CN105393180 A CN 105393180A CN 201480041282 A CN201480041282 A CN 201480041282A CN 105393180 A CN105393180 A CN 105393180A
- Authority
- CN
- China
- Prior art keywords
- cycle
- user program
- calculation process
- temporary transient
- halted state
- 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
-
- 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/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- G05B19/056—Programming the PLC
-
- 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/10—Plc systems
- G05B2219/13—Plc programming
- G05B2219/13004—Programming the plc
-
- 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/10—Plc systems
- G05B2219/13—Plc programming
- G05B2219/13174—Pc, computer connected to plc to simulate machine
-
- 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/10—Plc systems
- G05B2219/13—Plc programming
- G05B2219/13186—Simulation, also of test inputs
Abstract
可编程控制器(200)具有:命令执行引擎部(219),其执行用户程序而进行运算处理;以及非易失性存储器(215),其储存运算处理的结果,命令执行引擎部(219)在用户程序中的1周期份的运算处理完结的时刻,转换至不进行新的周期份的运算处理的暂时停止状态,并且将1周期份的运算处理的结果储存至非易失性存储器(215),在从仿真装置(100)接收到对暂时停止状态的解除进行指示的停止解除指示命令的情况下,将暂时停止状态解除,并且将储存在非易失性存储器(215)中的1周期份的运算处理的结果发送至仿真装置(100)。
Description
技术领域
本发明涉及仿真系统、可编程控制器、仿真装置、工程设计工具。
背景技术
在对制造装置等进行开发的工序中的使用实际仪器(actualequipment)进行的调试中,由于要求慎重的调整,以不会由于机械的干涉而对设备、加工物造成破损,因此需要大量的开发时间。因此,迫切需要在个人计算机上进行机械的轨道及干涉确认的3DCAD(computeraideddesign)仿真器。在3DCAD仿真器中,能够进行调试而不用担心由于机械的干涉导致的设备、加工物的破损。因此,在3DCAD仿真器中,不需要慎重的调整,能够大幅度地削减调试的时间。
但是,在针对可编程控制器实际仪器的由3DCAD仿真器实现的仿真中,3DCAD仿真器中的每1个周期所对应的可编程控制器实际仪器的周期数是不定的。因此,有时由可编程控制器实际仪器计算出的数据不能反映至3DCAD仿真器的仿真中。上述的数据的反映错误导致仿真的精度下降。
因此,作为使仿真装置的周期和可编程控制器实际仪器的周期相匹配的技术,提出了下述方法,即,例如如果可编程控制器进行了1个周期的扫描时间,则变为等待状态,根据来自仿真装置的指令,执行下一个周期(例如,参照专利文献1)。
专利文献1:日本特开2002-297226号公报
发明内容
但是,根据上述现有技术,为了提高仿真的精度,设计者需要采用对可编程控制器的用户程序进行变更等的应对手段。即,当前,设计者对可编程控制器的用户程序进行修正等,使可编程控制器实际仪器的1个周期的时间和3DCAD仿真器的1个周期的时间同步。但是,上述处理存在下述问题,即,设计者被迫承受多余的负担,设计者的负担大。
本发明就是鉴于上述情况而提出的,其目的在于得到能够进行高精度的仿真、减少开发时间而不给设计者带来负担的仿真系统、可编程控制器、仿真装置、工程设计工具。
为了解决上述课题,实现目的,本发明所涉及的仿真系统具有可编程控制器和仿真装置,该可编程控制器使用用户程序而对被控制装置进行控制,该仿真装置模拟由所述用户程序对所述被控制装置进行控制的动作而进行仿真,该仿真系统的特征在于,所述可编程控制器具有:运算部,其执行所述用户程序而进行运算处理;以及存储部,其储存所述运算处理的结果,所述运算部,在所述用户程序中的1周期份的运算处理完结的时刻,转换至不进行新的周期份的运算处理的暂时停止状态,并且将所述1周期份的运算处理的结果储存至所述存储部,在从所述仿真装置接收到对所述暂时停止状态的解除进行指示的停止解除指示命令的情况下,将所述暂时停止状态解除,并且将储存在所述存储部中的所述1周期份的所述运算处理的结果发送至所述仿真装置,所述仿真装置具有:仿真部,其通过对所述被控制装置的2维形状模型或3维形状模型进行控制,从而模拟对所述被控制装置进行控制的动作而进行仿真;以及停止解除指示命令生成部,其生成所述停止解除指示命令,所述仿真部,基于从所述可编程控制器发送的1周期份的所述用户程序的运算处理的结果,执行1周期份的仿真,在所述1周期份的仿真完结的时刻,转换至不进行新的周期份的仿真的暂时停止状态,并且将所述停止解除指示命令生成部所生成的所述停止解除指示命令发送至所述可编程控制器。
发明的效果
根据本发明,具有下述效果,即,能够进行高精度的仿真、减少开发时间而不给设计者带来负担。
附图说明
图1是表示本发明的实施方式1所涉及的仿真系统的图。
图2是表示本发明的实施方式1所涉及的仿真系统中的仿真的步骤中的、PLC的处理步骤的流程图。
图3是表示本发明的实施方式1所涉及的仿真系统中的仿真的步骤中的、仿真装置的处理步骤的流程图。
图4是说明本发明的实施方式1所涉及的仿真系统的仿真中的处理流程的图。
图5是表示本发明的实施方式2所涉及的工程设计工具的结构的图。
图6是示意性地表示计算机装置的结构的一个例子的框图,该计算机装置实现作为本发明的实施方式所涉及的仿真装置及PLC的功能。
具体实施方式
下面,基于附图,对本发明所涉及的仿真系统、可编程控制器、仿真装置、工程设计工具的实施方式进行详细说明。此外,本发明不限定于以下的记述,在不脱离本发明的主旨的范围内能够适当地进行变更。
实施方式1
图1是表示本发明的实施方式1所涉及的仿真系统的图。本实施方式所涉及的仿真系统具有仿真装置100和可编程控制器(ProgrammableLogicController:PLC)200。仿真装置100基于从PLC200获取到的运算结果,对被控制装置的动作进行仿真并显示。PLC200按照用户程序而进行命令的运算,将运算结果输出至与该PLC200连接的被控制装置(未图示),对该被控制装置的动作进行控制。
仿真装置100具有输入部111、显示部113、非易失性存储器115、易失性存储器117、仿真部119、停止解除指示命令生成部121、数据发送用命令解析部123、通信部125、和控制部127。上述各结构部通过内部总线129而连接。
输入部111是对来自设计者或外部装置等的各种信息进行输入的输入单元。
显示部113是对仿真中的被控制装置的2维形状模型或3维形状模型、程序、其他各种信息进行显示的显示单元,例如是LCD(液晶显示设备)。
非易失性存储器115是具有数据存储器区域131的存储部,该数据存储器区域131对数据发送用命令的解析结果、即根据从PLC200发送的数据发送用命令获取到的PLC200的运算结果133进行储存。另外,在数据存储器区域131中,还储存仿真装置100的处理数据。另外,非易失性存储器115具有对各种程序137进行储存的程序存储器区域135,该各种程序137用于使仿真装置100进行动作,是用于使仿真部119执行仿真的程序等。
易失性存储器117是具有工作区域139的存储部,该工作区域139在仿真装置100的各种处理中使用。在工作区域139中,对标志、命令、数据进行管理,例如对时间同步功能用标志141、停止解除指示命令143等信息进行储存。
仿真部119执行仿真。仿真部119具有仿真运算部145和描绘部147。仿真运算部145基于PLC200的运算结果,进行被控制装置的动作仿真的运算。描绘部147基于仿真运算部145的运算结果,进行用于对被控制装置的2维形状模型或3维形状模型进行描绘的运算,基于运算结果,将2维形状模型或3维形状模型在显示部113上进行描绘。
停止解除指示命令生成部121在将暂时停止模式标志设定作为易失性存储器117的工作区域139中的时间同步功能用标志141的情况下,生成对PLC200的暂时停止状态的解除进行指示的停止解除指示命令。
数据发送用命令解析部123进行从PLC200接收到的数据发送用命令的解析,将该数据发送用命令变换为可在仿真装置100中使用的形式。
通信部125为了在仿真装置100和PLC200之间彼此对数据进行发送和接收,而与PLC200的通信部225之间进行通信。通信部125和PLC200的通信部225通过通信线路149而连接。此外,对与通信部225之间的通信手段不特别地限定。
控制部127对仿真装置100内的处理整体进行控制。
下面,说明PLC200的结构。PLC200具有输入部211、显示部213、非易失性存储器215、易失性存储器217、命令执行引擎部219、数据发送用命令生成部221、接收数据用命令解析部223、通信部225、和控制部227。上述各结构部通过内部总线229而连接。
输入部211是对来自用户或外部装置等的各种信息进行输入的输入单元。
显示部213是对设计者所创建的用户程序、相对于PLC200输入输出的各种信息等进行显示的显示单元,例如是LCD(液晶显示设备)。
非易失性存储器215是具有程序存储器区域231和数据存储器区域235的存储部,该程序存储器区域231对用于使PLC200进行动作的各种程序及用户程序等程序233进行储存,该数据存储器区域235对用户程序的运算结果237进行储存。在这里,作为用户程序的运算结果的具体例子,例如,如果被控制装置是机器人,则能够举出末端执行器的位置、末端执行器的移动速度。另外,例如,如果被控制装置是轮转机,则能够举出转数、旋转速度。另外,例如,如果被控制装置是车间(plant)设备,则能够举出工艺量等。
易失性存储器217具有存储部,该存储部具有在PLC200的各种处理中使用的工作区域239。在工作区域239中,对标志、命令、数据进行管理,例如对时间同步功能用标志241、数据发送用命令243等信息进行储存。
命令执行引擎部219是基于用户程序而执行该用户程序的命令并进行运算的运算部。运算结果成为用于对被控制装置进行控制的控制数据。
数据发送用命令生成部221基于工作区域239内的数据而生成数据发送用命令。
接收数据用命令解析部223进行从仿真装置100接收到的接收数据的解析,将接收数据变换为可在PLC200中使用的形式。
通信部225为了在PLC200和仿真装置100之间彼此对数据进行发送和接收,而与仿真装置100的通信部125之间进行通信。对与通信部125之间的通信手段不特别地限定。
控制部227对PLC200内的处理整体进行控制。
下面,说明仿真系统中的仿真的步骤。图2是表示实施方式1所涉及的仿真系统中的仿真的步骤中的、PLC200的处理步骤的流程图。图3是表示实施方式1所涉及的仿真系统中的仿真的步骤中的、仿真装置100的处理步骤的流程图。图4是说明实施方式1所涉及的仿真系统的仿真中的处理流程的图。在图4中,阴影部分表示仿真装置100中的正在执行用户程序的命令而执行运算处理的时间、或者PLC200中的正在执行仿真的时间。
首先,如果接通仿真装置100及PLC200的电源,则在PLC200中,命令执行引擎部219基于规定的初始数据,以1周期份执行设为仿真对象的用户程序的命令,并进行运算。然后,如果用户程序的1周期份的运算完结,则命令执行引擎部219进行结束处理(步骤S110)。结束处理是与仿真装置100等外部仪器的通信等除了执行命令以外的处理。在该结束处理中,命令执行引擎部219将用户程序的运算结果237储存至非易失性存储器215中的数据存储器区域235。
如果结束处理完结,则数据发送用命令生成部221生成将储存在数据存储器区域235中的用户程序的运算结果237嵌入后的数据发送用命令,并储存至易失性存储器217的工作区域239中而作为数据发送用命令243(步骤S120)。
另外,如果结束处理完结,则命令执行引擎部219将暂时停止模式标志设定作为工作区域239中的时间同步功能用标志241,即,将暂时停止模式标志设为开启(ON)(步骤S130)。由此,命令执行引擎部219转换至暂时停止模式,不进行用户程序的执行、运算,成为暂时停止状态。
该PLC200的时间同步功能用标志241中的暂时停止模式标志是用于对命令执行引擎部219转换至不执行用户程序的命令的暂时停止状态这一情况进行指示的标志。在设定了该暂时停止模式标志的情况下,命令执行引擎部219转换至暂时停止状态。另外,在暂时停止模式标志被解除、即暂时停止模式标志被设为关闭(OFF)的情况下,命令执行引擎部219从暂时停止状态转换至执行用户程序的命令的通常模式。
通过上述暂时停止模式标志的设定而使命令执行引擎部219转换至暂时停止状态的功能例如预先加入至固件等。因此,不需要为了使用如下功能而由设计者进行的用户程序的创建、用户程序的变更等处理,不会给设计者带来负担,该功能是指使命令执行引擎部219成为暂时停止状态。
另一方面,在仿真装置100中,如果接通电源,则仿真部119基于规定的初始数据,以1周期份执行被控制装置的动作的仿真(步骤S210)。即,仿真运算部145基于规定的初始数据而进行被控制装置的动作仿真的运算。然后,描绘部147基于仿真运算部145的运算结果,进行用于对被控制装置的3维形状模型进行描绘的运算,基于运算结果,将3维形状模型在显示部113上进行描绘。此外,在这里,示出了对3维形状模型进行描绘的情况,但2维形状模型的情况下也能够同样地进行描绘。在下面也是相同的。
如果1周期份的仿真完结,则仿真运算部145将暂时停止模式标志设定作为易失性存储器117的工作区域139中的时间同步功能用标志141(步骤S220)。由此,仿真部119转换至暂时停止模式,成为暂时停止状态而不进行仿真。
该仿真装置100的时间同步功能用标志141中的暂时停止模式标志是用于对仿真部119转换至不执行仿真的暂时停止状态这一情况进行指示的标志。在设定了该暂时停止模式标志的情况下,仿真部119转换至暂时停止状态。另外,在暂时停止模式标志被解除、即暂时停止模式标志被设为关闭的情况下,仿真部119从暂时停止状态转换至执行仿真的通常模式。
如果设定了暂时停止模式标志,则停止解除指示命令生成部121生成停止解除指示命令,并储存至易失性存储器117的工作区域139而作为停止解除指示命令143。
如果停止解除指示命令143被储存至易失性存储器117的工作区域139中,则仿真运算部145经由通信部125、通信线路149而将该停止解除指示命令143发送至PLC200的通信部225(步骤S230)。在该时刻,仿真系统中的仿真处理的第1个周期、即周期1完结。
PLC200的通信部225经由通信线路149而对从仿真装置100发送来的停止解除指示命令143进行接收(步骤S140)。PLC200的通信部225将接收到的停止解除指示命令143发送至接收数据用命令解析部223。接收数据用命令解析部223进行停止解除指示命令143的解析,将停止解除指示命令143变换为可在PLC200中使用的形式。然后,接收数据用命令解析部223将已完成解析的停止解除指示命令143发送至命令执行引擎部219。
另外,命令执行引擎部219经由通信部225、通信线路149,将储存在易失性存储器217的工作区域239中的、嵌入了用户程序的运算结果237后的数据发送用命令243,发送至仿真装置100的通信部125(步骤S150)。
另外,命令执行引擎部219如果接收到已完成解析的停止解除指示命令143,则将工作区域239的时间同步功能用标志241的暂时停止模式标志解除(步骤S160)。由此,命令执行引擎部219将暂时停止模式解除。在该时刻,PLC200中的第1个周期、即周期1完结。然后,命令执行引擎部219执行用户程序中的接下来的1周期份、即第2个周期份的用户程序的命令,并进行运算。
此外,通过上述暂时停止模式标志的解除而将命令执行引擎部219的暂时停止状态解除的功能例如预先加入至固件等。因此,不需要为了使用命令执行引擎部219的暂时停止状态的解除功能而由设计者进行的用户程序的创建、用户程序的变更等处理,不会给设计者带来负担。
然后,如果用户程序中的接下来的1周期份的运算完结,则命令执行引擎部219进行结束处理(步骤S170)。在该结束处理中,命令执行引擎部219将新的用户程序的运算结果237储存至非易失性存储器215中的数据存储器区域235。
然后,PLC200针对所期望的作为仿真对象的用户程序,返回步骤S120,重复进行处理。此外,数据发送用命令生成部221生成将储存在数据存储器区域235中的最新的用户程序的运算结果237嵌入后的数据发送用命令,并储存在易失性存储器217的工作区域239中而作为数据发送用命令243。
另一方面,仿真装置100的通信部125经由通信线路149而对从PLC200发送来的数据发送用命令243进行接收(步骤S240)。通信部125如果接收到数据发送用命令243,则将接收到的数据发送用命令243发送至数据发送用命令解析部123。数据发送用命令解析部123进行数据发送用命令243的解析,将数据发送用命令243变换为可在仿真装置100中使用的形式。然后,数据发送用命令解析部123将从数据发送用命令243获取到的PLC200的运算结果储存至非易失性存储器115的数据存储器区域131中而作为PLC200的运算结果133。
如果PLC200的运算结果133被储存至数据存储器区域131,则仿真部119将易失性存储器117的工作区域139的暂时停止模式标志解除(步骤S250)。由此,仿真部119将暂时停止模式解除,基于储存在数据存储器区域131中的PLC200的运算结果133,执行接下来的1周期份的仿真(步骤S260)。即,仿真运算部145基于PLC200的运算结果133,进行被控制装置的动作仿真的运算。然后,描绘部147基于仿真运算部145的运算结果,进行用于对被控制装置的3维形状模型进行描绘的运算,基于运算结果而将3维形状模型在显示部113上进行描绘。
然后,仿真装置100每当从PLC200发送数据发送用命令243,则从步骤S260返回步骤S220,重复进行处理。
在上述的本实施方式所涉及的仿真系统中,PLC200每执行用户程序的1周期份,则在1周期份的完结位置、即结束处理完结的时刻,将命令执行引擎部219中的命令执行处理即运算处理暂时停止,对1周期份的运算处理的结果进行保存。另一方面,在仿真装置100中,在1周期份的仿真处理完结的时刻,仿真部119将仿真处理暂时停止,将停止解除指示命令发送至PLC200。
PLC200的命令执行引擎部219如果接收到停止解除指示命令,则将暂时停止状态解除,将即将变为暂时停止状态前的1周期份的运算处理的结果发送至仿真装置100,并且在执行下一个周期份的用户程序的命令后暂时停止。然后,在仿真装置100中,如果接收到1周期份的运算处理的结果,则将仿真部119的暂时停止状态解除,基于该1周期份的运算处理的结果,开始下一个周期的仿真。然后,在仿真处理完结的时刻,仿真部119将仿真处理暂时停止,将停止解除指示命令发送至PLC200。
通过重复执行上述处理区间,从而能够将PLC200中的周期的开始定时、即用户程序的命令执行开始的定时,和仿真装置100中的周期的开始定时、即仿真的开始的定时匹配为大致同时,使PLC200和仿真装置100这两者的处理周期开始的定时同步。
在PLC200的1个周期中,包含以1周期份执行用户程序的时间、和从用户程序的执行完结而变为暂时停止状态起直至接收到停止解除指示命令而将暂时停止状态解除为止的时间。另一方面,仿真装置100的1个周期包含从开始仿真起直至结束仿真而将停止解除指示命令发送至PLC200为止的时间。
并且,仿真装置100将停止解除指示命令发送至PLC200而结束1个周期的定时、和PLC200通过该停止解除指示命令的接收而将暂时停止状态解除从而结束1个周期的定时大致是同时的,实现了时间同步。另外,如果PLC200将数据发送用命令发送至仿真装置100装置并且开始下一个周期,则与仿真装置100接收该数据发送用命令而开始下一个周期的定时大致是同时的,实现了时间同步。
因此,在本实施方式所涉及的仿真系统中,能够使PLC200的周期和仿真装置100的周期同步。由此,PLC200的运算结果能够逐个周期地、可靠地应用于仿真装置100的仿真。例如由PLC200中的第1个周期的运算得到的数据能够可靠地用于仿真装置100中的第2个周期。另外,例如由PLC200中的第3个周期的运算得到的数据能够可靠地用于仿真装置100中的第4个周期。
由此,仿真装置100在实施新的周期时,使用即将实现同步前的周期中的PLC200的运算结果而进行仿真。因此,能够防止由于PLC200的周期和仿真装置100的周期之间的偏差而在仿真装置100的仿真结果中产生误差,能够提高仿真的精度。
在这里,通过预先在PLC200中设置使PLC200的周期和仿真装置100的周期这两者的1个周期的时间同步的功能、即命令执行引擎部219的暂时停止状态的设定及解除的功能,从而能够消除设计者的负担。即,在本实施方式所涉及的仿真系统中,设计者无需对PLC200的用户程序进行修正等而使PLC200的1个周期的时间和仿真装置100的1个周期的时间同步。因此,在本实施方式所涉及的仿真系统中,无需由设计者进行的用于修正PLC200的用户程序或使其恢复原状的作业,能够实现用户程序的调试处理的工时的减少、PLC的开发工时的减少。
此外,在上述记载中,说明了PLC200的第1个周期和仿真装置100的第1个周期同时开始的情况,但PLC200的第1个周期和仿真装置100的第1个周期并非必须同时开始。在PLC200和仿真装置100的第1个周期在不同的定时开始的情况下,只要PLC200的第1个周期与仿真装置100的第1个周期相比结束得较早,则PLC200在第1个周期完结后变为暂时停止状态,进行与上述相同的处理。由此,从第2个周期起,使PLC200的周期和仿真装置100的周期同步。
因此,根据实施方式1,具有下述效果,即,进行高精度的仿真,能够以短时间进行用户程序的调试处理及PLC200的开发,而不会给设计者带来负担。
实施方式2
在实施方式2中,说明对仿真动作模式和通常动作模式进行切换的功能,在仿真动作模式下,如实施方式1所示,在PLC200的命令执行引擎部219执行用户程序时,以每1个周期为单位进行暂时停止,在通常动作模式下,PLC200的命令执行引擎部219连续地执行用户程序,而不是每实施1个周期则进行暂时停止。
如实施方式1所示,仿真动作模式在进行仿真的情况下使用,在实际的设备的工作时不使用,在该仿真动作模式下,在PLC200执行用户程序时,以每1个周期为单位进行暂时停止。因此,在实际使设备进行工作时,需要将PLC200的动作模式从仿真动作模式切换至通常动作模式。
PLC200的仿真动作模式和通常动作模式之间的切换例如由PLC200中的易失性存储器217的工作区域239的时间同步功能用标志进行管理。在该情况下,作为时间同步功能用标志而对仿真动作模式切换标志进行设置。仿真动作模式切换标志是用于将PLC200的动作模式设定为仿真动作模式的标志。
在工作区域239的时间同步功能用标志中设定了仿真动作模式切换标志的情况下,PLC200以实施方式1所示的仿真动作模式进行动作。另一方面,在未设定有仿真动作模式切换标志的情况下,PLC200以通常的动作模式进行动作。即,命令执行引擎部219在执行用户程序前,对工作区域239的时间同步功能用标志中的仿真动作模式切换标志的设定状态进行检测。然后,在设定有仿真动作模式切换标志的情况下,以仿真动作模式进行动作。另外,在未设定有仿真动作模式切换标志的情况下,命令执行引擎部219以通常的动作模式进行动作。
仿真动作模式切换标志的设定及解除例如能够由工程设计工具300执行,该工程设计工具300用于进行PLC200的用户程序的创建、编辑。图5是表示实施方式2所涉及的工程设计工具300的结构的图。工程设计工具300具有输入部311、显示部313、程序编辑部315、动作模式设定部317、通信部319、存储部321、控制部323。上述各结构部由内部总线325连接。此外,既可以是可运输至PLC200的设置场所的移动式,也可以是设置在例如监视室等中的固定式。
输入部311是对来自设计者或外部装置等的各种信息进行输入的输入单元。
显示部313是对在工程设计工具300中输入输出的各种信息等进行显示的显示单元,例如是LCD(液晶显示设备),上述各种信息是用户程序的创建、编辑用信息以及与仿真动作模式切换标志的设定及解除相关的信息等。
程序编辑部315基于从输入部311输入的信息等,进行用户程序的创建、编辑。
动作模式设定部317进行PLC200的工作区域239中的仿真动作模式切换标志的设定及解除。
通信部319为了在工程设计工具300和PLC200之间彼此对数据进行发送和接收,而与PLC200的通信部225之间进行通信。通信部319和PLC200的通信部225例如通过通信线路327而连接。此外,对与通信部225之间的通信手段不特别地限定。
存储部321对用于使工程设计工具300进行动作的各种程序、由工程设计工具300中的各种处理生成的各种数据等信息进行储存。
控制部323对工程设计工具300内的处理整体进行控制。
在由工程设计工具300进行PLC200的仿真动作模式切换标志的设定的情况下,例如设计者使用输入部311,将对仿真动作模式切换标志的设定进行指示的信息输入至工程设计工具300。控制部323基于该信息,经由通信部319而向PLC200发送对仿真动作模式切换标志的设定进行指示的设定指示命令。
PLC200的通信部225经由通信线路327而对从工程设计工具300发送来的设定指示命令进行接收。PLC200的通信部225将所接收到的设定指示命令发送至接收数据用命令解析部223。接收数据用命令解析部223进行设定指示命令的解析,将设定指示命令变换为可在PLC200中使用的形式。然后,接收数据用命令解析部223将已完成解析的设定指示命令发送至控制部227。
控制部227如果接收到已完成解析的设定指示命令,则基于该设定指示命令而在易失性存储器217的工作区域239的时间同步功能用标志中设定仿真动作模式切换标志。
另外,在由工程设计工具300进行PLC200的仿真动作模式切换标志的解除的情况下,控制部323并非发送设定指示命令,而是经由通信部319向PLC200发送对仿真动作模式切换标志的解除进行指示的解除指示命令。在PLC200中,以与上述相同的过程进行处理,控制部227基于解除指示命令,将易失性存储器217的工作区域239中的时间同步功能用标志的仿真动作模式切换标志解除。
另外,仿真动作模式切换标志的设定及解除例如也可以通过由PLC200对仿真动作模式切换标志的设定及解除用程序进行保存而实施。在该情况下,例如设计者使用输入部211,将对仿真动作模式切换标志的设定进行指示的设定指示信息或对仿真动作模式切换标志的解除进行指示的解除指示信息输入至PLC200。PLC200的控制部227基于该设定指示信息或解除指示信息,对易失性存储器217的工作区域239中的时间同步功能用标志的仿真动作模式切换标志进行设定或解除。
如上所述,在实施方式2中,能够使用保存在工程设计工具300或PLC200中的仿真动作模式切换标志的设定及解除用程序,而容易地将PLC200的动作模式切换为仿真动作模式或通常动作模式。由此,即使是不熟知仿真装置100和PLC200之间的时间同步方法的设计者,也能够容易地将PLC200的动作模式切换为仿真动作模式或通常动作模式。
实施方式3
可以将上述的实施方式所涉及的仿真系统中的仿真装置100及PLC200所执行的仿真方法构成为储存了该仿真方法的处理步骤的程序,通过由如图6所示具有CPU、存储装置等的计算机装置执行该程序而实现该仿真方法。
图6是示意性地表示计算机装置400的结构的一个例子的框图,该计算机装置400实现作为上述实施方式所涉及的仿真装置100及PLC200的功能。如图6所示,计算机装置400具有下述等部件经由内部总线409连接的结构,即:LCD(LiquidCrystalDisplay)等显示装置401;键盘等输入装置402;CPU403,其进行运算;ROM(ReadOnlyMemory)等非易失性存储器404;RAM(RandomAccessMemory)等易失性存储器405;显示用存储器406,其对在显示装置401上显示的显示画面进行存储;外部存储器接口407,其是与闪存存储器等可拆装的外部存储器之间的接口;以及通信接口408,其与外部仪器之间进行通信。
并且,储存在非易失性存储器404中的记述了上述仿真方法的处理步骤的程序被载入至易失性存储器405中,由CPU403执行。该程序也能够记录在硬盘、CD(CompactDisk)、ROM(ReadOnlyMemory)、MO(Magneto-Opticaldisk)、DVD(DigitalVersatileDisk或DigitalVideoDisk)等可由计算机装置进行读取的记录介质中,或者,该程序还能够经由互联网等网络(通信线路)进行发布。在该情况下,将程序从经由通信接口408所连接的信息处理终端储存至非易失性存储器404上。
工业实用性
如上所述,本发明所涉及的仿真系统、可编程控制器、仿真装置、工程设计工具在实施PLC的用户程序的调试处理的情况下是有益的。
标号的说明
100仿真装置,111输入部,113显示部,115非易失性存储器,117易失性存储器,119仿真部,121停止解除指示命令生成部,123数据发送用命令解析部,125通信部,127控制部,129内部总线,131数据存储器区域,133PLC的运算结果,135程序存储器区域,137程序,139工作区域,141时间同步功能用标志,143停止解除指示命令,145仿真运算部,147描绘部,149通信线路,200可编程控制器(PLC),211输入部,213显示部,215非易失性存储器,217易失性存储器,219命令执行引擎部,221数据发送用命令生成部,223接收数据用命令解析部,225通信部,227控制部,229内部总线,231程序存储器区域,233程序,235数据存储器区域,237运算结果,239工作区域,241时间同步功能用标志,243数据发送用命令,300工程设计工具,311输入部,313显示部,315程序编辑部,317动作模式设定部,319通信部,321存储部,323控制部,325内部总线,327通信线路,400计算机装置,401显示装置,402输入装置,403CPU,404非易失性存储器,405易失性存储器,406显示用存储器,407外部存储器接口,408通信接口,409内部总线。
Claims (10)
1.一种仿真系统,其具有可编程控制器和仿真装置,该可编程控制器使用用户程序而对被控制装置进行控制,该仿真装置模拟由所述用户程序对所述被控制装置进行控制的动作而进行仿真,
该仿真系统的特征在于,
所述可编程控制器具有:
运算部,其执行所述用户程序而进行运算处理;以及
存储部,其储存所述运算处理的结果,
所述运算部,
在所述用户程序中的1周期份的运算处理完结的时刻,转换至不进行新的周期份的运算处理的暂时停止状态,并且将所述1周期份的运算处理的结果储存至所述存储部,
在从所述仿真装置接收到对所述暂时停止状态的解除进行指示的停止解除指示命令的情况下,将所述暂时停止状态解除,并且将储存在所述存储部中的所述1周期份的所述运算处理的结果发送至所述仿真装置,
所述仿真装置具有:
仿真部,其通过对所述被控制装置的2维形状模型或3维形状模型进行控制,从而模拟对所述被控制装置进行控制的动作而进行仿真;以及
停止解除指示命令生成部,其生成所述停止解除指示命令,
所述仿真部,
基于从所述可编程控制器发送的1周期份的所述用户程序的运算处理的结果,执行1周期份的仿真,
在所述1周期份的仿真完结的时刻,转换至不进行新的周期份的仿真的暂时停止状态,并且将所述停止解除指示命令生成部所生成的所述停止解除指示命令发送至所述可编程控制器。
2.根据权利要求1所述的仿真系统,其特征在于,
所述运算部在将所述暂时停止状态解除后,执行所述用户程序中的新的周期份的运算处理。
3.根据权利要求1或2所述的仿真系统,其特征在于,
所述仿真部在将所述停止解除指示命令发送至所述可编程控制器后,接收到从所述可编程控制器发送的新的1周期份的所述用户程序的运算处理的结果的情况下,将所述仿真部的暂时停止状态解除,基于所述新的1周期份的所述用户程序的运算处理的结果而执行新的1周期份的仿真。
4.根据权利要求1至3中任一项所述的仿真系统,其特征在于,
具有对第1动作模式和第2动作模式进行切换并设定的功能,该第1动作模式是指,所述运算部每执行所述用户程序的1周期份的运算处理则变为所述暂时停止状态,该第2动作模式是指,所述运算部连续地执行所述用户程序的多个周期份的运算处理,而不变为所述暂时停止状态。
5.一种可编程控制器,其与仿真装置以可进行通信的方式连接而构成仿真系统,该可编程控制器使用用户程序而对被控制装置进行控制,该仿真装置模拟由所述用户程序对所述被控制装置进行控制的动作而进行仿真,
该可编程控制器的特征在于,具有:
运算部,其执行所述用户程序而进行运算处理;以及
存储部,其储存所述运算处理的结果,
所述运算部,
在所述用户程序中的1周期份的运算处理完结的时刻,转换至不进行新的周期份的运算处理的暂时停止状态,并且将所述1周期份的运算处理的结果储存至所述存储部,
在从所述仿真装置接收到对所述暂时停止状态的解除进行指示的停止解除指示命令的情况下,将所述暂时停止状态解除,并且将储存在所述存储部中的所述1周期份的运算处理的结果发送至所述仿真装置。
6.根据权利要求5所述的可编程控制器,其特征在于,
所述运算部在将所述暂时停止状态解除后,执行所述用户程序中的新的周期份的运算处理。
7.根据权利要求5或6所述的可编程控制器,其特征在于,
具有对仿真动作模式和通常动作模式进行切换的切换功能,该仿真动作模式是指,所述运算部每执行所述用户程序的1周期份的运算处理则变为所述暂时停止状态,该通常动作模式是指,所述运算部连续地执行所述用户程序的多个周期份的运算处理,而不变为所述暂时停止状态。
8.一种仿真装置,其与可编程控制器以可进行通信的方式连接而构成仿真系统,该仿真装置进行仿真,该仿真是指模拟由用户程序对被控制装置进行控制的动作,该可编程控制器使用所述用户程序而对所述被控制装置进行控制,
该仿真装置的特征在于,具有:
仿真部,其通过对所述被控制装置的2维形状模型或3维形状模型进行控制,从而模拟对所述被控制装置进行控制的动作而进行仿真;以及
停止解除指示命令生成部,其生成停止解除指示命令,该停止解除指示命令对处于暂时停止状态的所述可编程控制器的所述暂时停止状态的解除进行指示,该暂时停止状态是指不进行新的周期份的运算处理,
所述仿真部,
基于从所述可编程控制器发送的1周期份的所述用户程序的运算处理的结果,执行1周期份的仿真,
在所述1周期份的仿真完结的时刻,转换至不进行新的周期份的仿真的暂时停止状态,并且将所述停止解除指示命令生成部所生成的所述停止解除指示命令发送至所述可编程控制器。
9.根据权利要求8所述的仿真装置,其特征在于,
所述仿真部在将所述停止解除指示命令发送至所述可编程控制器后,接收到从所述可编程控制器发送的新的1周期份的所述用户程序的运算处理的结果的情况下,将所述仿真部的暂时停止状态解除,基于所述新的1周期份的所述用户程序的运算处理的结果,执行新的1周期份的仿真。
10.一种工程设计工具,其特征在于,
具有动作模式设定部,该动作模式设定部针对具有第1动作模式和第2动作模式的可编程控制器,对所述第1动作模式和所述第2动作模式进行切换并设定,该第1动作模式是指,每执行用户程序的1周期份的运算处理则变为不进行新的运算的暂时停止状态,该第2动作模式是指,连续地执行所述用户程序的多个周期份的运算处理,而不变为所述暂时停止状态。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2014/062020 WO2015166563A1 (ja) | 2014-04-30 | 2014-04-30 | シミュレーションシステム、プログラマブルコントローラ、シミュレーション装置、エンジニアリングツール |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105393180A true CN105393180A (zh) | 2016-03-09 |
CN105393180B CN105393180B (zh) | 2017-08-25 |
Family
ID=54200777
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480041282.8A Expired - Fee Related CN105393180B (zh) | 2014-04-30 | 2014-04-30 | 仿真系统、可编程控制器、仿真装置、工程设计工具 |
Country Status (7)
Country | Link |
---|---|
US (1) | US10025286B2 (zh) |
JP (1) | JP5784263B1 (zh) |
KR (1) | KR101641853B1 (zh) |
CN (1) | CN105393180B (zh) |
DE (1) | DE112014002985B4 (zh) |
TW (1) | TWI553497B (zh) |
WO (1) | WO2015166563A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109844659A (zh) * | 2016-10-14 | 2019-06-04 | 三菱电机株式会社 | 仿真装置 |
CN109923483A (zh) * | 2017-09-05 | 2019-06-21 | 三菱电机株式会社 | 仿真装置以及仿真方法 |
CN112119358A (zh) * | 2018-05-17 | 2020-12-22 | 三菱电机株式会社 | 仿真装置及仿真程序 |
CN113722817A (zh) * | 2021-08-08 | 2021-11-30 | 中国航空工业集团公司沈阳飞机设计研究所 | 一种分布式仿真系统运行调度平台 |
CN114407909A (zh) * | 2020-10-09 | 2022-04-29 | 三菱电机株式会社 | 控制装置 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105575212B (zh) * | 2016-02-18 | 2018-02-16 | 南京康尼电气技术有限公司 | 一种用于城市轨道车辆控制系统教学的实训装置及方法 |
CN106198049B (zh) * | 2016-07-15 | 2019-03-12 | 百度在线网络技术(北京)有限公司 | 真实车辆在环测试系统和方法 |
JP2018067148A (ja) * | 2016-10-19 | 2018-04-26 | 東洋電機製造株式会社 | シミュレーションシステム |
CN109032060A (zh) * | 2018-07-27 | 2018-12-18 | 君泰创新(北京)科技有限公司 | 设备调试方法、系统、装置、计算机设备和存储介质 |
EP3874521A4 (en) * | 2018-10-29 | 2022-06-22 | Siemens Industry Software Ltd. | METHOD AND SYSTEM FOR SYNCHRONIZING A FIRST AND SECOND SIMULATION SYSTEM |
US11262964B2 (en) * | 2018-10-31 | 2022-03-01 | Ati Technologies Ulc | Techniques for seamless transition between host display and remote display |
JP7415436B2 (ja) | 2019-10-25 | 2024-01-17 | 横河電機株式会社 | プログラム及び情報処理装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003030251A (ja) * | 2001-07-19 | 2003-01-31 | Fujitsu Ltd | シミュレーションシステム、方法、プログラム及び記録媒体 |
JP2004046675A (ja) * | 2002-07-15 | 2004-02-12 | Yaskawa Electric Corp | 制御装置 |
CN1794202A (zh) * | 2005-10-20 | 2006-06-28 | 上海祥佑数码科技有限公司 | 一种嵌入式微处理器仿真器 |
CN101295173A (zh) * | 2007-04-27 | 2008-10-29 | 欧姆龙株式会社 | 可编程控制器的模拟装置 |
JP2009223588A (ja) * | 2008-03-15 | 2009-10-01 | Omron Corp | Plcシステム |
WO2014046642A1 (en) * | 2012-09-18 | 2014-03-27 | Siemens Aktiengesellschaft | Multiple programmable logic controller simulator |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07117938B2 (ja) | 1987-05-23 | 1995-12-18 | 三菱プレシジョン株式会社 | 計算機間の処理の同期方式 |
JP2002297226A (ja) | 2001-03-29 | 2002-10-11 | Sumitomo Heavy Ind Ltd | 自動搬送システムのシミュレーション装置および自動搬送システムのシミュレーション方法ならびに自動搬送システムのシミュレーションプログラム |
JP4577090B2 (ja) | 2005-05-25 | 2010-11-10 | 日産自動車株式会社 | 車載電装品試験システム及び試験方法 |
JP2007265238A (ja) | 2006-03-29 | 2007-10-11 | Fujitsu Ltd | シミュレーション装置及びシミュレーション方法 |
CN101523317B (zh) * | 2006-08-08 | 2011-09-21 | 西门子工业公司 | 关于plc系统故障的装置、系统和方法 |
DE102006043390B4 (de) * | 2006-09-15 | 2010-05-27 | Dmg Electronics Gmbh | Vorrichtung und Verfahren zur Simulation eines Ablaufs zur Bearbeitung eines Werkstücks an einer Werkzeugmaschine |
JP5422963B2 (ja) * | 2008-10-21 | 2014-02-19 | 株式会社明電舎 | ソフトウェアの開発支援システム、開発支援方法およびプログラム |
EP2309354B1 (de) * | 2009-10-01 | 2013-03-20 | Siemens Aktiengesellschaft | Vorrichtung und Verfahren zur Simulation |
JP5246186B2 (ja) * | 2010-03-15 | 2013-07-24 | オムロン株式会社 | コントローラサポート装置、制御プログラムのシミュレーション方法、コントローラのサポートプログラムおよびコントローラのサポートプログラムを格納したコンピュータ読み取り可能な記憶媒体 |
DE102011105141A1 (de) * | 2011-06-09 | 2012-12-13 | Dmg Electronics Gmbh | Verfahren und system zur simulation eines arbeitsprozesses an einer werkzeugmaschine |
JP5962088B2 (ja) * | 2012-03-15 | 2016-08-03 | オムロン株式会社 | Plcシミュレーションシステム、plcシミュレータ、制御プログラム、および記録媒体 |
-
2014
- 2014-04-30 JP JP2015524272A patent/JP5784263B1/ja active Active
- 2014-04-30 WO PCT/JP2014/062020 patent/WO2015166563A1/ja active Application Filing
- 2014-04-30 DE DE112014002985.8T patent/DE112014002985B4/de active Active
- 2014-04-30 CN CN201480041282.8A patent/CN105393180B/zh not_active Expired - Fee Related
- 2014-04-30 US US14/896,698 patent/US10025286B2/en active Active
- 2014-04-30 KR KR1020167001113A patent/KR101641853B1/ko active IP Right Grant
- 2014-10-06 TW TW103134711A patent/TWI553497B/zh not_active IP Right Cessation
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003030251A (ja) * | 2001-07-19 | 2003-01-31 | Fujitsu Ltd | シミュレーションシステム、方法、プログラム及び記録媒体 |
JP2004046675A (ja) * | 2002-07-15 | 2004-02-12 | Yaskawa Electric Corp | 制御装置 |
CN1794202A (zh) * | 2005-10-20 | 2006-06-28 | 上海祥佑数码科技有限公司 | 一种嵌入式微处理器仿真器 |
CN101295173A (zh) * | 2007-04-27 | 2008-10-29 | 欧姆龙株式会社 | 可编程控制器的模拟装置 |
JP2009223588A (ja) * | 2008-03-15 | 2009-10-01 | Omron Corp | Plcシステム |
WO2014046642A1 (en) * | 2012-09-18 | 2014-03-27 | Siemens Aktiengesellschaft | Multiple programmable logic controller simulator |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109844659A (zh) * | 2016-10-14 | 2019-06-04 | 三菱电机株式会社 | 仿真装置 |
CN109923483A (zh) * | 2017-09-05 | 2019-06-21 | 三菱电机株式会社 | 仿真装置以及仿真方法 |
CN109923483B (zh) * | 2017-09-05 | 2020-01-03 | 三菱电机株式会社 | 仿真装置以及仿真方法 |
CN112119358A (zh) * | 2018-05-17 | 2020-12-22 | 三菱电机株式会社 | 仿真装置及仿真程序 |
CN114407909A (zh) * | 2020-10-09 | 2022-04-29 | 三菱电机株式会社 | 控制装置 |
CN114407909B (zh) * | 2020-10-09 | 2023-10-10 | 三菱电机株式会社 | 控制装置 |
CN113722817A (zh) * | 2021-08-08 | 2021-11-30 | 中国航空工业集团公司沈阳飞机设计研究所 | 一种分布式仿真系统运行调度平台 |
Also Published As
Publication number | Publication date |
---|---|
DE112014002985T5 (de) | 2016-03-10 |
WO2015166563A1 (ja) | 2015-11-05 |
JP5784263B1 (ja) | 2015-09-24 |
KR101641853B1 (ko) | 2016-07-21 |
JPWO2015166563A1 (ja) | 2017-04-20 |
TWI553497B (zh) | 2016-10-11 |
CN105393180B (zh) | 2017-08-25 |
TW201541271A (zh) | 2015-11-01 |
US20160246278A1 (en) | 2016-08-25 |
KR20160011236A (ko) | 2016-01-29 |
US10025286B2 (en) | 2018-07-17 |
DE112014002985B4 (de) | 2019-04-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105393180A (zh) | 仿真系统、可编程控制器、仿真装置、工程设计工具 | |
JP5791792B2 (ja) | 工作機械の工作プロセスをシミュレーションするシミュレーション方法およびシミュレーションシステム | |
US10908591B2 (en) | Machine learning device and machining time prediction device | |
US10761513B2 (en) | Information processing device, information processing method, and non-transitory computer-readable recording medium | |
GB2473129A (en) | Off-line robot teaching method | |
CN103970040A (zh) | 通过机器人程序进行模拟的模拟装置 | |
US10814486B2 (en) | Information processing device, information processing method, and non-transitory computer-readable recording medium | |
JP2005505811A (ja) | 製造設備の建設計画の支援方法及びそのシステム | |
CN113168135A (zh) | 同步控制装置、同步控制系统、同步控制方法和模拟装置 | |
US11467569B2 (en) | Simulation device | |
EP4086046A1 (en) | Processing device and processing method | |
JP2019077011A (ja) | スレーブ装置、マスター装置、および産業用ネットワークシステム | |
CN110109372B (zh) | 用于模拟受控制的机器或设施的设备以及方法 | |
CN109613880B (zh) | 信息处理装置、信息处理方法及其计算机可读记录介质 | |
CN108027602B (zh) | 模拟工业过程、设施或机器的真实控制器的模拟方法和执行该模拟方法的模拟系统 | |
WO2021145124A1 (ja) | 制御装置 | |
JPH11282509A (ja) | ロボット制御装置とその制御方法 | |
JP2017027259A (ja) | 機械制御プログラム作成装置、コンピュータプログラム、機械制御プログラム中のレジスタへの参照の入れ替え方法及びコンピュータにより実行可能な電子データ作成装置 | |
CN118076953A (zh) | 一种修改运动副参数的方法、装置及产线系统 | |
CN111975774A (zh) | 一种电气设备功能调试方法及系统 | |
CN117908401A (zh) | 工业机器人的运行轨迹的仿真方法及系统 | |
CN115291560A (zh) | 一种虚拟仿真系统、方法及终端 | |
JPH02311251A (ja) | 機械制御システムの切換方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170825 Termination date: 20200430 |
|
CF01 | Termination of patent right due to non-payment of annual fee |