PLC模拟系统、PLC模拟器、记录介质以及模拟方法.pdf

上传人:1*** 文档编号:47647 上传时间:2018-01-19 格式:PDF 页数:19 大小:3.93MB
返回 下载 相关 举报
摘要
申请专利号:

CN201380013097.3

申请日:

2013.02.20

公开号:

CN104169819A

公开日:

2014.11.26

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G05B 19/05申请日:20130220|||公开

IPC分类号:

G05B19/05

主分类号:

G05B19/05

申请人:

欧姆龙株式会社

发明人:

成谷文明; 大谷拓; 阪口泰规

地址:

日本京都府京都市

优先权:

2012.03.15 JP 2012-058502

专利代理机构:

隆天国际知识产权代理有限公司 72003

代理人:

朴海今;向勇

PDF下载: PDF下载
内容摘要

在PLC模拟系统(10)中,PLC模拟器(2)和外部模拟器(4)中的至少一方一边确认另一方中的程序的执行状态一边执行处理。例如,PLC模拟器(2)提供有套接字接口,接受来自外部模拟器(4)的各种指令来进行动作。外部模拟器(4)通过使用指令,确认在PLC模拟器(2)中正在通过程序执行处理还是执行完毕。外部模拟器(4)确认PLC模拟器(2)中的程序的运行状态,在对PLC存储器(205b)的访问不会产生冲突的情况下,执行用于对PLC存储器(205b)进行写入等的处理。

权利要求书

1.  一种PLC模拟系统,其特征在于,
所述PLC模拟系统包括以第一周期来周期性地反复进行处理的PLC模拟器和以第二周期来周期性地反复进行处理的外部模拟器;
所述PLC模拟器具有:
存储部,其用于保存用来执行程序的数据,所述PLC模拟器以及所述外部模拟器能够访问该存储部,
第一执行部,其用于执行与对所述存储部的数据输入输出处理相伴的程序;
所述外部模拟器具有第二执行部,该第二执行部用于执行与对所述存储部的数据输入输出处理相伴的程序;
所述第一执行部和所述第二执行部中的至少一方包括检测部,该检测部用于检测另一方已执行完程序;
所述第一执行部或者所述第二执行部,在执行程序后制止执行与访问所述存储部相伴的程序,直至检测到对方已执行完程序为止。

2.
  如权利要求1所述的PLC模拟系统,其特征在于,
所述PLC模拟器具有用于与所述外部模拟器进行通信的套接字接口,从所述外部模拟器接受使所述PLC模拟器执行规定处理的指令;
所述第一执行部按照通过所述套接字接口接受的指令执行处理;
所述指令包括通知指令,该通知指令用于向所述外部模拟器通知所述第一执行部的程序执行状态;
所述第二执行部包括所述检测部,通过使用所述通知指令来检测对方已执行完程序。

3.
  如权利要求1所述的PLC模拟系统,其特征在于,
所述存储部包括计数器;
所述第一执行部和所述第二执行部中的至少一方在执行完程序后更新计数器值;
所述检测部通过检测所述计数器值的更新来检测对方已执行完程序。

4.
  如权利要求1所述的PLC模拟系统,其特征在于,
所述存储部存储标志;
所述第一执行部和所述第二执行部中的至少一方在执行完程序后,将所述标志的值变更为表示执行完毕的值,
所述检测部根据所述标志的值来检测对方已执行完程序。

5.
  一种PLC模拟器,以第一周期来周期性地反复进行处理,其特征在于,
具有:
存储部,其用于保存用来执行程序的数据,所述PLC模拟器以及以第二周期周期性地反复进行处理的外部模拟器能够访问该存储部,
执行部,其用于执行与对所述存储部的数据输入输出处理相伴的程序;
所述执行部包括检测部,该检测部用于检测所述外部模拟器已执行完程序,所述执行部在执行程序后制止执行与访问所述存储部相伴的程序,直至所述检测部检测到所述外部模拟器已执行完程序为止。

6.
  一种PLC模拟器,以第一周期来周期性地反复进行处理,其特征在于,
具有:
接口,其用于与以第二周期来周期性地反复进行处理的外部模拟器收发信息,
存储部,其用于保存用来执行程序的数据,所述PLC模拟器以及所述外部模拟器能够访问该存储部,
执行部,其用于执行与对所述存储部的数据输入输出处理相伴的程序;
所述执行部通过所述接口向所述外部模拟器通知程序的执行状态。

7.
  一种计算机可读记录介质,其特征在于,
在所述计算机可读记录介质中记录有用于控制PLC模拟器的动作的控制程序;
所述PLC模拟器以第一周期来周期性地反复进行处理,其包括存储部,以第二周期来周期性地反复进行处理的外部模拟器能够访问该存储部;
所述控制程序使所述计算机执行如下步骤:
使所述PLC模拟器执行与对所述PLC模拟器的存储部的数据输入输出处理相伴的用户程序,
使所述PLC模拟器检测所述外部模拟器已执行完程序,
在执行所述用户程序后,制止所述PLC模拟器执行与访问所述存储部相伴的用户程序,直至检测到所述外部模拟器已执行完程序为止。

8.
  一种PLC模拟系统中的模拟方法,其特征在于,
所述PLC模拟系统包括以第一周期来周期性地反复进行处理的PLC模拟器和以第二周期来周期性地反复进行处理的外部模拟器,所述PLC模拟器包括存储部,该存储部用于保存用来执行程序的数据,所述PLC模拟器以及所述外部模拟器能够访问该存储部;
所述模拟方法包括如下步骤:
所述PLC模拟器执行与对所述存储部的数据输入输出处理相伴的程序,
所述外部模拟器执行与对所述存储部的数据输入输出处理相伴的程序,
所述PLC模拟器和所述外部模拟器中的至少一方检测另一方已执行完程序,
所述PLC模拟器和所述外部模拟器中的至少一方,在执行完程序后制止执行与访问所述存储部相伴的程序,直至检测到对方已执行完程序为止。

说明书

PLC模拟系统、PLC模拟器、记录介质以及模拟方法
技术领域
本发明涉及通过模拟器对可编程序逻辑控制器(PLC:Programmable Logic Controller,以下也称为“PLC”)以及与PLC通信的各个设备进行模拟的PLC模拟系统以及PLC模拟器,特别是涉及控制PLC和各个设备的数据访问的技术。
背景技术
在PLC的程序开发中,为了提高开发的生产率,通常利用PC(Personal computer:个人计算机)来运行PLC模拟器并调试程序。
在PLC中,存储器存储程序和数据。存储器的内容可由与PLC通信的各个设备而被改写。这种PLC模拟系统被例如下述专利文献1所公开。
日本特开2009-223471号公报(下述专利文献1)公开了一种PLC模拟系统,所述系统为了一边模拟PLC和作为PLC的显示器的可编程终端(PT)协同工作的PLC系统整体,一边调试程序以及PT的显示程序,而具有PLC模拟器和PT模拟器。
根据专利文献1,PT模拟器侧的用户操作也被通知给PLC模拟器。因此,能够调试PT的显示程序及PLC的程序,例如用户能够通过PC执行操作PT的触摸面板时的模拟等。
现有技术文献
专利文献
专利文献1:日本特开2009-223471号公报
发明内容
发明要解决的问题
如上所述,PLC的存储器的内容不仅由PLC访问来读取和写入,还被与PLC通信的外部设备等进行访问来读取和写入。因此,PLC和外部设备对PLC的存储器的访问会产生冲突。其结果,有可能会引起用户不想要发生的 动作。
因此,需要一种通过控制对PLC模拟系统中的PLC的存储器的数据访问以避免访问冲突,从而提高PLC模拟系统的可靠性的技术。
用于解决问题的手段
根据一实施方式的PLC模拟系统,包括以第一周期来周期性地反复进行处理的PLC模拟器和以第二周期来周期性地反复进行处理的外部模拟器;PLC模拟器具有:存储部,其用于保存用来执行程序的数据,PLC模拟器以及外部模拟器能够访问该存储部,第一执行部,其用于执行与对存储部的数据输入输出处理相伴的程序;外部模拟器具有第二执行部,该第二执行部用于执行与对存储部的数据输入输出处理相伴的程序;第一执行部和第二执行部中的至少一方包括检测部,该检测部用于检测另一方已执行完程序;第一执行部或者第二执行部,在执行程序后制止执行与访问存储部相伴的程序,直至检测到对方已执行完程序为止。
优选地,PLC模拟器也可以具有用于与外部模拟器进行通信的套接字接口,从外部模拟器接受使PLC模拟器执行规定处理的指令;第一执行部按照通过套接字接口接受的指令执行处理;指令包括通知指令,该通知指令用于向外部模拟器通知第一执行部的程序执行状态;第二执行部包括检测部,通过使用通知指令来检测对方已执行完程序。
优选地,存储部也可以包括计数器;第一执行部和第二执行部中的至少一方在执行完程序后更新计数器值;检测部通过检测计数器值的更新来检测对方已执行完程序。
优选地,存储部也可以存储标志;第一执行部和第二执行部中的至少一方在执行完程序后,将标志的值变更为表示执行完毕的值,检测部根据标志的值来检测对方已执行完程序。
根据一实施方式的PLC模拟器以第一周期来周期性地反复进行处理,其具有:存储部,其用于保存用来执行程序的数据,PLC模拟器以及以第二周期周期性地反复进行处理的外部模拟器能够访问该存储部,执行部,其用于执行与对存储部的数据输入输出处理相伴的程序;执行部包括检测部,该检测部用于检测外部模拟器已执行完程序,执行部在执行程序后制止执行与访 问存储部相伴的程序,直至检测部检测到外部模拟器已执行完程序为止。
根据一实施方式的PLC模拟器以第一周期来周期性地反复进行处理,其具有:接口,其用于与以第二周期来周期性地反复进行处理的外部模拟器收发信息,存储部,其用于保存用来执行程序的数据,PLC模拟器以及外部模拟器能够访问该存储部,执行部,其用于执行与对存储部的数据输入输出处理相伴的程序;执行部通过接口向外部模拟器通知程序的执行状态。
根据其他实施方式,提供一种计算机可读记录介质。在计算机可读记录介质中记录有用于控制PLC模拟器的动作的控制程序。PLC模拟器以第一周期来周期性地反复进行处理,其包括存储部,以第二周期来周期性地反复进行处理的外部模拟器能够访问该存储部。记录在该记录介质中的控制程序使计算机执行如下步骤:使PLC模拟器执行与对PLC模拟器的存储部的数据输入输出处理相伴的用户程序,使PLC模拟器检测外部模拟器已执行完程序,在执行用户程序后,制止PLC模拟器执行与访问存储部相伴的用户程序,直至检测到外部模拟器已执行完程序为止。
根据其他实施方式,提供一种PLC模拟系统中的模拟方法。PLC模拟系统包括以第一周期来周期性地反复进行处理的PLC模拟器和以第二周期来周期性地反复进行处理的外部模拟器。PLC模拟器包括存储部,该存储部用于保存用来执行程序的数据,PLC模拟器以及外部模拟器能够访问该存储部。模拟方法包括如下步骤:PLC模拟器执行与对存储部的数据输入输出处理相伴的程序,外部模拟器执行与对存储部的数据输入输出处理相伴的程序,PLC模拟器和外部模拟器中的至少一方检测另一方已执行完程序,PLC模拟器和外部模拟器中的至少一方,在执行完程序后制止执行与访问存储部相伴的程序,直至检测到对方已执行完程序为止。
发明效果
根据这种结构,能够提高PLC模拟系统的可靠性。
本发明的上述以及其他目的、特征、技术方案以及优点将通过参照附图来理解的与本发明相关的下面的详细的说明而变得清楚。
附图说明
图1是表示本发明的实施方式的PLC模拟系统10的功能框图。
图2是表示PC11的结构的图。
图3是表示PLC模拟器2的套接字接口中的指令序列的一个例子的图。
图4是表示相关技术中的PLC模拟器的动作的流程图。
图5是表示相关技术中的外部模拟器的动作的流程图。
图6是表示相关技术中的模拟系统的动作例子的图。
图7是表示本实施方式的PLC模拟器2以及外部模拟器4的动作的流程图。
图8是表示外部模拟器4和PLC模拟器2的时间图的图。
图9是利用计数器通知在PLC模拟器2中运行的程序已执行完毕的情况下的时间图。
图10是表示变形例2中的PLC模拟器2的动作的流程图。
图11是表示变形例2中的外部模拟器4的动作的流程图。
具体实施方式
下面,参照附图来说明本发明的实施方式。在下面的说明中,对相同部件赋予相同的附图标记。它们的名称以及功能都是一样的。因此,不再对它们重复进行详细说明。
<1PLC模拟系统10的结构>
图1是表示实施方式的PLC模拟系统10的结构的功能框图。
如该图所示,该模拟系统10包括PLC程序设计工具1、PLC模拟器2、设定工具3和外部模拟器4。
就作为模拟系统10的组件的PLC程序设计工具1、PLC模拟器2、设定工具3以及外部模拟器4而言,通过将专用的计算机程序(PLC程序设计工具软件、PLC模拟器软件、设定工具软件、外部模拟器软件)分别编入计算机(例如,个人计算机(PC))来以软件的方式实现。
在本实施方式中,假设作为上述模拟系统10的组件的PLC程序设计工具1、PLC模拟器2、设定工具3以及外部模拟器4在一台PC中运行来进行说明。
<1.1PLC程序设计工具1的结构>
PLC程序设计工具1是用于调试PLC模拟器2的工具,其接受用户5的操作来控制PLC模拟器2的执行。
PLC程序设计工具1包括图形用户界面(GUI)101、程序管理部102、作为中间设备(middleware)的通信部103和模拟接口(I/F)104。
GUI101具有如下功能:向用户5显示与PLC模拟及调试等相关的各种信息(例如,与PLC模拟的开始、停止等相关的信息),并接受用户5的输入操作。
程序管理部102具有生成及编辑程序的功能。程序管理部102通过GUI101按照用户给予的指示进行处理。具体而言,程序管理部102具有经由通信部103读取存储部205的程序或者写入程序等功能。
通信部103具有与PLC模拟器2的通信部202进行通信的通信接口。
模拟接口(I/F)104具有如下功能:在与PLC模拟器2之间,就与PLC模拟及调试等相关的各种信息(例如,PLC模拟器2的启动、停止、程序执行部203中的程序的启动、停止)进行通信。
<1.2PLC模拟器2的结构>
PLC模拟器2具有PLC的模拟功能,其根据用户5的操作而运行,并与外部模拟器4协同工作来输出模拟结果。
PLC模拟器2向外部模拟器4提供用于使PLC模拟器2和外部模拟器4进行通信的套接字接口(socket interface)。在PLC模拟器2和外部模拟器4在同一PC中运行的情况下,外部模拟器4通过PLC模拟器2的套接字接口向PLC模拟器2给予指示,由此,外部模拟器4能够操作PLC模拟器2。关于该套接字接口,将在后面进行说明。
PLC模拟器2接受来自PLC程序设计工具1的PLC模拟器的启动指令和停止指令,根据指令进行启动动作和停止动作。PLC模拟器2包括程序控制部201、通信部202、程序执行部203、停止条件保存部204和存储部205。
存储部205由RAM(Random Access Memory:随机存取存储器)等实现,具有规定的存储区域。存储部205具有用于存储用户任意生成的程序205a的存储区域和作为用于程序205a进行参照的存储区域的PLC存储器205b(输入输出存储器、数据存储器等)。
程序执行部203响应于来自程序控制部201的规定的启动指令和停止指 令,从存储部205读出并执行程序205a。
存储在存储部205中的程序205a和PLC存储器205b的内容能够通过通信部202而被PLC程序设计工具1监视。而且,PLC存储器205b的内容也能够通过通信部202由外部模拟器4读取或者写入。
通信部202具有读取及写入数据的功能。另外,通信部202对外部模拟器4提供套接字接口。外部模拟器4能够通过使用套接字接口,操作PLC模拟器2。
程序控制部201具有响应于来自PLC程序设计工具1的启动指令和停止指令,控制程序执行部203启动和停止程序205a的功能。
另外,程序控制部201具有如下功能,即,响应于来自PLC程序设计工具1的停止条件设定,将包含于该停止条件设定的“停止条件”保存于停止条件保存部204。
程序控制部201具有如下功能,即,始终监视保存于停止条件保存部204的“停止条件”的成立,只要确认“停止条件”的成立,就立刻使程序执行部203停止执行程序205a。
因此,例如,进行调试的用户通过在停止条件保存部204中设定保存所期望的“停止条件”,就能够在任意时刻停止执行程序。由此,用户5能够利用PLC程序设计工具1和PLC模拟器2来调试程序。
如上所述,停止条件保存部204保存用于停止执行程序205a的条件。
<1.3设定工具3的结构>
设定工具3是用于调试外部模拟器4的工具,接受用户5的操作来控制外部模拟器4的启动及停止。
设定工具3包括图形用户界面(GUI)301和模拟接口(I/F)303。
GUI301具有如下功能,即,对用户5显示与调试等相关的各种信息(例如,涉及与PLC通信的设备的模拟的开始、停止等的信息),通过键盘操作、鼠标操作等,接受用户5所进行的输入操作。
模拟接口(I/F)303具有如下功能,即,在与外部模拟器4之间,就与调试等相关的各种信息进行通信(例如,外部模拟器4的启动、停止等)。
<1.4外部模拟器4的结构>
外部模拟器4是发挥与PLC模拟器2协同工作的设备的模拟功能的程 序。在本实施方式中,外部模拟器4利用PLC模拟器2的套接字接口主导性地对PLC模拟器2发出规定的指示,从而对PLC模拟器2进行操作。
外部模拟器4包括画面显示部401、作为中间设备(middleware)的通信部402和执行部403。
画面显示部401与模拟对象设备的实际设备的操作画面相对应。外部模拟器4具有如下功能,即,当执行部403的执行动作开始时,通过鼠标或键盘接受虚拟地进行的用户5的操作等,并向执行部403交接该操作内容。
执行部403按照规定的程序进行动作,通过通信部402,向PLC模拟器2的PLC存储器205b的相应地址进行写入和读取。执行部403包括检测部404。
检测部404检测在PLC模拟器2中程序执行部203是否正在执行规定的程序。在本实施方式中,检测部404利用后述的套接字接口,检测PLC模拟器2中是否执行完规定的程序。
<1.5PLC模拟系统10的动作环境>
具有上述结构的PLC模拟系统10在PC中以软件的方式被实现。其中,PC11的结构如图2所示。
如图2所示,PC11包括运算部12、ROM(Read Only Memory:只读存储器)13、RAM14、输入部15和输出部16。
运算部12具有CPU(Central Processing Unit:中央处理单元),控制OS(Operating System:操作系统)、PLC模拟器2及外部模拟器4等各个程序的执行。
在ROM13中存储有各种程序。
RAM14是用于执行软件的存储区域,PLC模拟器2等程序被读入RAM14后运行各个程序。
输入部15接受用户5的操作。具体而言,输入部15由键盘、触摸面板等构成。
输出部16输出模拟结果等。具体的而言,由监视器(monitor)等显示部构成。
<2套接字接口>
下面,对PLC模拟器2提供的套接字接口进行说明。
图3是表示PLC模拟器2的套接字接口的指令序列的一个例子的图。
外部模拟器4能够通过套接字接口,使用各个指令来操作PLC模拟器2。
例如,如图所示,“GoOneScan”指令是用于使在PLC模拟器2中运行的程序执行一个周期的指令。外部模拟器4能够通过指定指令的参数(argument)来进行控制,以使在PLC模拟器2中运行的程序执行一个周期后待机规定时间,或者解除待机。此外,使PLC模拟器2待机规定时间后,也可以使PLC模拟器2开始周期性地执行程序的通常的动作。
另外,例如,“CheckPLCState”指令是用于取得PLC模拟器2中运行的程序的执行状态的指令。通过该指令,从PLC模拟器2向外部模拟器4通知PLC模拟器2执行完一个周期后处于待机还是正在执行一个周期,来作为PLC模拟器2中运行的程序的执行状态。
因此,外部模拟器4通过“GoOneScan”指示PLC模拟器2执行一个周期的程序后,通过“CheckPLCState”指令,取得PLC模拟器2中的程序执行状态,从而能够检测PLC模拟器2的处理是否结束。
<3动作>
下面,对PLC模拟系统10的PLC模拟器2的动作和外部模拟器4的动作进行说明。
在本实施方式中,外部模拟器4和PLC模拟器2中的一方把握控制的主导权,把握主导权的一方向另一方发出开始处理的指示并确认处理已被执行。
在该实施方式的例子中,PLC模拟器2具有套接字接口。在外部模拟器4中运行的程序主导性地操作PLC模拟器2。
外部模拟器4中运行的程序通过利用套接字接口执行规定的指令,来检测PLC模拟器2中的程序是否已运行完毕。外部模拟器4中运行的程序在检测到PLC模拟器2中的程序已运行完毕后,根据程序进行输入输出处理等动作。
由此,以对PLC存储器205b的访问不产生冲突的方式执行程序。因此,能够防止PLC存储器205b的数据意外被改变从而进行意想不到的动作。
<3.1相关技术的动作>
在此,为了与本发明进行比较,对访问PLC存储器会产生冲突的模拟系 统的结构进行说明。
图4是表示相关技术中的PLC模拟器的动作的流程图。
如图4所示,相关技术中的PLC模拟器周期性地重复执行处理。即,相关技术中的PLC模拟器每次经过规定的周期(步骤S21中为“是”),对PLC存储器进行数据的输入输出处理(步骤S23),并执行程序(步骤S25)。
图5是表示相关技术中外部模拟器的动作的流程图。
如该图所示,相关技术中的外部模拟器(例如,由PLC控制其动作的检查用的带式运送机的模拟器),每次经过规定的监测周期(步骤S31中为“是”),进行用于对PLC存储器进行数据访问的监测处理(步骤S33),并执行规定的运算处理(步骤S35)。如此,外部模拟器周期性地执行规定的动作。
图6示出了如此进行的相关技术中的模拟系统的动作例子。图6示出了与外部模拟器相比PLC的模拟器的动作周期更短的情况。
如该图所示,在相关技术中,因为PLC模拟器和外部模拟器分别独立动作,所以,PLC模拟器和外部模拟器可能会同时访问PLC存储器。外部模拟器按照规定周期访问PLC存储器来进行规定的动作。在外部模拟器读出PLC存储器的数据以及向PLC存储器写入数据的期间,比外部模拟器的动作周期更短的PLC模拟器执行任务,从而改写PLC存储器的数据(该图中,改写为“A”、“B”、“C”)。
在相关技术中,有可能外部模拟器和PLC模拟器同时访问PLC存储器,会导致进行用户不想要发生的动作。
<3.2PLC模拟器2以及外部模拟器4的动作>
下面,对本实施方式中的PLC模拟器2以及外部模拟器4的动作进行说明。
图7是表示本实施方式的PLC模拟器2以及外部模拟器4的动作的流程图。如该图所示,PLC模拟器2通过套接字接口从外部模拟器4接受指令,从而接受来自外部模拟器4的操作。该图示出了这样的处理:经过套接字的初始化等处理,外部模拟器4通过指令来序列开始操作PLC模拟器2。
外部模拟器4通过使用“GoOneScan”指令,使在PLC模拟器2中运行的程序执行一个周期(步骤S62)。在PLC模拟器2中,通过接收“GoOneScan” 指令,执行一个周期的程序后待机(步骤S68)。
外部模拟器4通过使用“CheckPLCState”指令,确认在PLC模拟器2中是否执行了一个周期(步骤S63)。如果在PLC模拟器2中正在执行一个周期(步骤S63中为“否”),则外部模拟器4一直使用“CheckPLCState”指令,直至从PLC模拟器2接收到用于表示“待机中”的应答为止。
如果PLC模拟器2执行完一个周期并接收到表示“待机中”的应答(步骤S63中为“是”),则外部模拟器4执行向PLC存储器205b的写入数据等规定的写入处理(步骤S64)。
若完成写入处理,则外部模拟器4通过使用“GoOneScan”指令,使在PLC模拟器2中运行的程序执行一个周期(步骤S65)。在PLC模拟器2中,接收“GoOneScan”指令,执行一个周期的程序后待机(步骤S68)。
外部模拟器4通过使用“CheckPLCState”指令,确认在PLC模拟器2中是否执行了一个周期(步骤S66)。
如果PLC模拟器2执行完一个周期并且从PLC模拟器2接收到表示“待机中”的应答(步骤S66中为“是”),则外部模拟器4执行从PLC存储器205b读取数据等规定的读取处理(步骤S67)。然后,外部模拟器4重复步骤S64之后的处理。
如上所述,外部模拟器4通过步骤S65等来主导PLC模拟器2中的程序执行,并通过步骤S66等来确认PLC模拟器2的执行是否完成(处于忙碌(BUSY)状态还是闲置(IDLE)状态)后进行处理(步骤S67等)。
图8表示如此动作的外部模拟器4和PLC模拟器2的时间图。
如图8所示,外部模拟器4和PLC模拟器2交替地运行程序。若外部模拟器4使在PLC模拟器2中运行的程序执行一个周期,则PLC模拟器2进行规定的运算,这一期间处于忙碌状态。
此外,图8中“W”表示写入处理,“R”表示读取处理。外部模拟器4通过使用套接字接口的指令,确认PLC模拟器2的执行状态,在PLC模拟器2变为待机中的状态(闲置状态)后,开始处理。
<3.3变形例>
除此之外,为了使外部模拟器4和PLC模拟器2交替地运行程序而检测一方是否执行完毕的方法有多种方法。即,发挥检测部404的功能的具体的 方法可采用如下方法。
(变形例1)
虽然在上述例子中外部模拟器4依次确认PLC模拟器2的执行状态(使用“CheckPLCState”指令),但是,除此此外,也可以使用规定的存储区域,由外部模拟器4和PLC模拟器2中的一方向另一方通知执行状态已结束。
图9是在使用计数器通知PLC模拟器2中运行的程序已执行完的情况下的时间图。
图9的例子中,外部模拟器4主导性地使PLC模拟器2的程序运行。PLC模拟器2在动作结束后,更新例如存储在存储部205中的计数器值。外部模拟器4根据计数器值的更新来检测PLC模拟器2中的程序运行已结束。此外,在图9中“W”表示写入处理,“R”表示读取处理。
如图9所示,若PLC模拟器2开始处理,则在进行规定的读取处理时获得计数器值,并在进行运算来执行规定的写入处理时更新计数器值。外部模拟器4监视计数器值,若计数器值被更新则开始处理。
(变形例2)
另外,也可以将表示外部模拟器4和PLC模拟器2中的任意一方已完成执行的标志存储在例如存储部205中,来由一方向另一方通知执行状态。
例如,假设在PLC模拟器2中运行的程序以比外部模拟器4更短的运行周期运行。即,在外部模拟器4运行期间,PLC模拟器2能够多次访问PLC存储器205b。
在该情况下,若外部模拟器4完成运行,则将上述标志设为开启(ON),从而向PLC模拟器2通知已完成运行。运行周期比较短的PLC模拟器2在周期到来时,如果标志为关闭(OFF),则认为外部模拟器4的程序的运行未结束,不执行处理而待机。PLC模拟器2在标志为开启(ON)的情况下,检测为外部模拟器4的程序的运行已结束并执行处理。
图10是表示变形例2中的PLC模拟器2的动作的流程图。
PLC模拟器2在规定的运行周期到来的时刻,如果标志不是开启(ON),则待机,不执行程序203a,由此,停止对PLC存储器205b的访问(步骤S91中为“否”)。
若规定的运行周期到来且标志为开启(ON),则PLC模拟器2进行步 骤S93的处理,从而将标志设为关闭(OFF)。
PLC模拟器2执行规定处理,例如,访问PLC存储器205b来对PLC存储器205b进行数据的输入输出处理(步骤S95),使用PLC存储器205b的数据等来执行程序203a(步骤S97)等。
图11是表示变形例2中的外部模拟器4的动作的流程图。
外部模拟器4中运行的程序待机直至规定的运行周期(监测周期)到来(步骤S101中为“否”)为止。若规定的运行周期到来(步骤S101中为“是”),则外部模拟器4中运行的程序执行监测处理(步骤S103)及运算处理(步骤S105)等伴随着对PLC存储器205b的读取以及写入的规定处理。若这些处理结束,则外部模拟器4中运行的程序将标志设为开启(ON)(步骤S107)。外部模拟器4通过将标志设为开启(ON),向PLC模拟器2通知外部模拟器4中运行的程序中的处理已被执行。
如上所述,由于PLC模拟器2的运行周期比外部模拟器4更短,所以,在外部模拟器4的周期性处理的执行时刻再次到来之前,完成PLC模拟器2对PLC存储器205b的访问。因此,在PLC模拟器2和外部模拟器4之间,不会同时访问PLC存储器205b,能够防止在外部模拟器4中用户程序基于不想要访问的的数据而进行误动作。
在实施方式的说明中说明了外部模拟器4通过检测部404来检测PLC模拟器2的程序的是否执行完毕的情况。由上述变形例的说明也可知,也可以由PLC模拟器2侧检测外部模拟器4中的程序的执行状态,来进行制止PLC模拟器2中的程序的执行等控制。即,PLC模拟器2也能够发挥检测部404的功能。
另外,也可以外部模拟器4以及PLC模拟器2彼此发挥检测部404的功能,来检测对方程序是否执行完毕。
也可以将控制上述PLC模拟器2的动作的控制程序记录在计算机可读记录介质中并使记录介质流通,从而分发该控制程序。应理解本次公开的实施方式在所有方面都是例示而非限制。本发明的范围由权利要求书示出,而非由上述说明来示出,包括与权利要求书等同的含义及范围内的全部变更。
产业上的可利用性
本发明能够用于PLC模拟系统。
附图标记说明
1PLC程序设计工具;
2PLC模拟器;
3设定工具;
4外部模拟器;
5用户;
10PLC模拟系统;
11PC;
12运算部;
13ROM;
14RAM;
15输入部;
16输出部;
101GUI;
102管理部;
103通信部;
104模拟I/F;
201控制部;
202通信部;
203程序执行部;
204停止条件保存部;
205存储部;
205a程序;
205b PLC存储器;
301GUI;
303模拟I/F;
401画面显示部;
402通信部;
403执行部。

PLC模拟系统、PLC模拟器、记录介质以及模拟方法.pdf_第1页
第1页 / 共19页
PLC模拟系统、PLC模拟器、记录介质以及模拟方法.pdf_第2页
第2页 / 共19页
PLC模拟系统、PLC模拟器、记录介质以及模拟方法.pdf_第3页
第3页 / 共19页
点击查看更多>>
资源描述

《PLC模拟系统、PLC模拟器、记录介质以及模拟方法.pdf》由会员分享,可在线阅读,更多相关《PLC模拟系统、PLC模拟器、记录介质以及模拟方法.pdf(19页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN104169819A43申请公布日20141126CN104169819A21申请号201380013097322申请日20130220201205850220120315JPG05B19/0520060171申请人欧姆龙株式会社地址日本京都府京都市72发明人成谷文明大谷拓阪口泰规74专利代理机构隆天国际知识产权代理有限公司72003代理人朴海今向勇54发明名称PLC模拟系统、PLC模拟器、记录介质以及模拟方法57摘要在PLC模拟系统10中,PLC模拟器2和外部模拟器4中的至少一方一边确认另一方中的程序的执行状态一边执行处理。例如,PLC模拟器2提供有套接字接口,接受来自外部。

2、模拟器4的各种指令来进行动作。外部模拟器4通过使用指令,确认在PLC模拟器2中正在通过程序执行处理还是执行完毕。外部模拟器4确认PLC模拟器2中的程序的运行状态,在对PLC存储器205B的访问不会产生冲突的情况下,执行用于对PLC存储器205B进行写入等的处理。30优先权数据85PCT国际申请进入国家阶段日2014090986PCT国际申请的申请数据PCT/JP2013/0541642013022087PCT国际申请的公布数据WO2013/136931JA2013091951INTCL权利要求书2页说明书9页附图7页19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书9页附图7。

3、页10申请公布号CN104169819ACN104169819A1/2页21一种PLC模拟系统,其特征在于,所述PLC模拟系统包括以第一周期来周期性地反复进行处理的PLC模拟器和以第二周期来周期性地反复进行处理的外部模拟器;所述PLC模拟器具有存储部,其用于保存用来执行程序的数据,所述PLC模拟器以及所述外部模拟器能够访问该存储部,第一执行部,其用于执行与对所述存储部的数据输入输出处理相伴的程序;所述外部模拟器具有第二执行部,该第二执行部用于执行与对所述存储部的数据输入输出处理相伴的程序;所述第一执行部和所述第二执行部中的至少一方包括检测部,该检测部用于检测另一方已执行完程序;所述第一执行部或。

4、者所述第二执行部,在执行程序后制止执行与访问所述存储部相伴的程序,直至检测到对方已执行完程序为止。2如权利要求1所述的PLC模拟系统,其特征在于,所述PLC模拟器具有用于与所述外部模拟器进行通信的套接字接口,从所述外部模拟器接受使所述PLC模拟器执行规定处理的指令;所述第一执行部按照通过所述套接字接口接受的指令执行处理;所述指令包括通知指令,该通知指令用于向所述外部模拟器通知所述第一执行部的程序执行状态;所述第二执行部包括所述检测部,通过使用所述通知指令来检测对方已执行完程序。3如权利要求1所述的PLC模拟系统,其特征在于,所述存储部包括计数器;所述第一执行部和所述第二执行部中的至少一方在执行。

5、完程序后更新计数器值;所述检测部通过检测所述计数器值的更新来检测对方已执行完程序。4如权利要求1所述的PLC模拟系统,其特征在于,所述存储部存储标志;所述第一执行部和所述第二执行部中的至少一方在执行完程序后,将所述标志的值变更为表示执行完毕的值,所述检测部根据所述标志的值来检测对方已执行完程序。5一种PLC模拟器,以第一周期来周期性地反复进行处理,其特征在于,具有存储部,其用于保存用来执行程序的数据,所述PLC模拟器以及以第二周期周期性地反复进行处理的外部模拟器能够访问该存储部,执行部,其用于执行与对所述存储部的数据输入输出处理相伴的程序;所述执行部包括检测部,该检测部用于检测所述外部模拟器已。

6、执行完程序,所述执行部在执行程序后制止执行与访问所述存储部相伴的程序,直至所述检测部检测到所述外部模拟器已执行完程序为止。6一种PLC模拟器,以第一周期来周期性地反复进行处理,其特征在于,具有权利要求书CN104169819A2/2页3接口,其用于与以第二周期来周期性地反复进行处理的外部模拟器收发信息,存储部,其用于保存用来执行程序的数据,所述PLC模拟器以及所述外部模拟器能够访问该存储部,执行部,其用于执行与对所述存储部的数据输入输出处理相伴的程序;所述执行部通过所述接口向所述外部模拟器通知程序的执行状态。7一种计算机可读记录介质,其特征在于,在所述计算机可读记录介质中记录有用于控制PLC模。

7、拟器的动作的控制程序;所述PLC模拟器以第一周期来周期性地反复进行处理,其包括存储部,以第二周期来周期性地反复进行处理的外部模拟器能够访问该存储部;所述控制程序使所述计算机执行如下步骤使所述PLC模拟器执行与对所述PLC模拟器的存储部的数据输入输出处理相伴的用户程序,使所述PLC模拟器检测所述外部模拟器已执行完程序,在执行所述用户程序后,制止所述PLC模拟器执行与访问所述存储部相伴的用户程序,直至检测到所述外部模拟器已执行完程序为止。8一种PLC模拟系统中的模拟方法,其特征在于,所述PLC模拟系统包括以第一周期来周期性地反复进行处理的PLC模拟器和以第二周期来周期性地反复进行处理的外部模拟器,。

8、所述PLC模拟器包括存储部,该存储部用于保存用来执行程序的数据,所述PLC模拟器以及所述外部模拟器能够访问该存储部;所述模拟方法包括如下步骤所述PLC模拟器执行与对所述存储部的数据输入输出处理相伴的程序,所述外部模拟器执行与对所述存储部的数据输入输出处理相伴的程序,所述PLC模拟器和所述外部模拟器中的至少一方检测另一方已执行完程序,所述PLC模拟器和所述外部模拟器中的至少一方,在执行完程序后制止执行与访问所述存储部相伴的程序,直至检测到对方已执行完程序为止。权利要求书CN104169819A1/9页4PLC模拟系统、PLC模拟器、记录介质以及模拟方法技术领域0001本发明涉及通过模拟器对可编程。

9、序逻辑控制器PLCPROGRAMMABLELOGICCONTROLLER,以下也称为“PLC”以及与PLC通信的各个设备进行模拟的PLC模拟系统以及PLC模拟器,特别是涉及控制PLC和各个设备的数据访问的技术。背景技术0002在PLC的程序开发中,为了提高开发的生产率,通常利用PCPERSONALCOMPUTER个人计算机来运行PLC模拟器并调试程序。0003在PLC中,存储器存储程序和数据。存储器的内容可由与PLC通信的各个设备而被改写。这种PLC模拟系统被例如下述专利文献1所公开。0004日本特开2009223471号公报下述专利文献1公开了一种PLC模拟系统,所述系统为了一边模拟PLC和。

10、作为PLC的显示器的可编程终端PT协同工作的PLC系统整体,一边调试程序以及PT的显示程序,而具有PLC模拟器和PT模拟器。0005根据专利文献1,PT模拟器侧的用户操作也被通知给PLC模拟器。因此,能够调试PT的显示程序及PLC的程序,例如用户能够通过PC执行操作PT的触摸面板时的模拟等。0006现有技术文献0007专利文献0008专利文献1日本特开2009223471号公报发明内容0009发明要解决的问题0010如上所述,PLC的存储器的内容不仅由PLC访问来读取和写入,还被与PLC通信的外部设备等进行访问来读取和写入。因此,PLC和外部设备对PLC的存储器的访问会产生冲突。其结果,有可能。

11、会引起用户不想要发生的动作。0011因此,需要一种通过控制对PLC模拟系统中的PLC的存储器的数据访问以避免访问冲突,从而提高PLC模拟系统的可靠性的技术。0012用于解决问题的手段0013根据一实施方式的PLC模拟系统,包括以第一周期来周期性地反复进行处理的PLC模拟器和以第二周期来周期性地反复进行处理的外部模拟器;PLC模拟器具有存储部,其用于保存用来执行程序的数据,PLC模拟器以及外部模拟器能够访问该存储部,第一执行部,其用于执行与对存储部的数据输入输出处理相伴的程序;外部模拟器具有第二执行部,该第二执行部用于执行与对存储部的数据输入输出处理相伴的程序;第一执行部和第二执行部中的至少一方。

12、包括检测部,该检测部用于检测另一方已执行完程序;第一执行部或者第二执行部,在执行程序后制止执行与访问存储部相伴的程序,直至检测到对方已执行完程序为止。0014优选地,PLC模拟器也可以具有用于与外部模拟器进行通信的套接字接口,从外部说明书CN104169819A2/9页5模拟器接受使PLC模拟器执行规定处理的指令;第一执行部按照通过套接字接口接受的指令执行处理;指令包括通知指令,该通知指令用于向外部模拟器通知第一执行部的程序执行状态;第二执行部包括检测部,通过使用通知指令来检测对方已执行完程序。0015优选地,存储部也可以包括计数器;第一执行部和第二执行部中的至少一方在执行完程序后更新计数器值。

13、;检测部通过检测计数器值的更新来检测对方已执行完程序。0016优选地,存储部也可以存储标志;第一执行部和第二执行部中的至少一方在执行完程序后,将标志的值变更为表示执行完毕的值,检测部根据标志的值来检测对方已执行完程序。0017根据一实施方式的PLC模拟器以第一周期来周期性地反复进行处理,其具有存储部,其用于保存用来执行程序的数据,PLC模拟器以及以第二周期周期性地反复进行处理的外部模拟器能够访问该存储部,执行部,其用于执行与对存储部的数据输入输出处理相伴的程序;执行部包括检测部,该检测部用于检测外部模拟器已执行完程序,执行部在执行程序后制止执行与访问存储部相伴的程序,直至检测部检测到外部模拟器。

14、已执行完程序为止。0018根据一实施方式的PLC模拟器以第一周期来周期性地反复进行处理,其具有接口,其用于与以第二周期来周期性地反复进行处理的外部模拟器收发信息,存储部,其用于保存用来执行程序的数据,PLC模拟器以及外部模拟器能够访问该存储部,执行部,其用于执行与对存储部的数据输入输出处理相伴的程序;执行部通过接口向外部模拟器通知程序的执行状态。0019根据其他实施方式,提供一种计算机可读记录介质。在计算机可读记录介质中记录有用于控制PLC模拟器的动作的控制程序。PLC模拟器以第一周期来周期性地反复进行处理,其包括存储部,以第二周期来周期性地反复进行处理的外部模拟器能够访问该存储部。记录在该记。

15、录介质中的控制程序使计算机执行如下步骤使PLC模拟器执行与对PLC模拟器的存储部的数据输入输出处理相伴的用户程序,使PLC模拟器检测外部模拟器已执行完程序,在执行用户程序后,制止PLC模拟器执行与访问存储部相伴的用户程序,直至检测到外部模拟器已执行完程序为止。0020根据其他实施方式,提供一种PLC模拟系统中的模拟方法。PLC模拟系统包括以第一周期来周期性地反复进行处理的PLC模拟器和以第二周期来周期性地反复进行处理的外部模拟器。PLC模拟器包括存储部,该存储部用于保存用来执行程序的数据,PLC模拟器以及外部模拟器能够访问该存储部。模拟方法包括如下步骤PLC模拟器执行与对存储部的数据输入输出处。

16、理相伴的程序,外部模拟器执行与对存储部的数据输入输出处理相伴的程序,PLC模拟器和外部模拟器中的至少一方检测另一方已执行完程序,PLC模拟器和外部模拟器中的至少一方,在执行完程序后制止执行与访问存储部相伴的程序,直至检测到对方已执行完程序为止。0021发明效果0022根据这种结构,能够提高PLC模拟系统的可靠性。0023本发明的上述以及其他目的、特征、技术方案以及优点将通过参照附图来理解的与本发明相关的下面的详细的说明而变得清楚。说明书CN104169819A3/9页6附图说明0024图1是表示本发明的实施方式的PLC模拟系统10的功能框图。0025图2是表示PC11的结构的图。0026图3是。

17、表示PLC模拟器2的套接字接口中的指令序列的一个例子的图。0027图4是表示相关技术中的PLC模拟器的动作的流程图。0028图5是表示相关技术中的外部模拟器的动作的流程图。0029图6是表示相关技术中的模拟系统的动作例子的图。0030图7是表示本实施方式的PLC模拟器2以及外部模拟器4的动作的流程图。0031图8是表示外部模拟器4和PLC模拟器2的时间图的图。0032图9是利用计数器通知在PLC模拟器2中运行的程序已执行完毕的情况下的时间图。0033图10是表示变形例2中的PLC模拟器2的动作的流程图。0034图11是表示变形例2中的外部模拟器4的动作的流程图。具体实施方式0035下面,参照附。

18、图来说明本发明的实施方式。在下面的说明中,对相同部件赋予相同的附图标记。它们的名称以及功能都是一样的。因此,不再对它们重复进行详细说明。00360037图1是表示实施方式的PLC模拟系统10的结构的功能框图。0038如该图所示,该模拟系统10包括PLC程序设计工具1、PLC模拟器2、设定工具3和外部模拟器4。0039就作为模拟系统10的组件的PLC程序设计工具1、PLC模拟器2、设定工具3以及外部模拟器4而言,通过将专用的计算机程序PLC程序设计工具软件、PLC模拟器软件、设定工具软件、外部模拟器软件分别编入计算机例如,个人计算机PC来以软件的方式实现。0040在本实施方式中,假设作为上述模拟。

19、系统10的组件的PLC程序设计工具1、PLC模拟器2、设定工具3以及外部模拟器4在一台PC中运行来进行说明。00410042PLC程序设计工具1是用于调试PLC模拟器2的工具,其接受用户5的操作来控制PLC模拟器2的执行。0043PLC程序设计工具1包括图形用户界面GUI101、程序管理部102、作为中间设备MIDDLEWARE的通信部103和模拟接口I/F104。0044GUI101具有如下功能向用户5显示与PLC模拟及调试等相关的各种信息例如,与PLC模拟的开始、停止等相关的信息,并接受用户5的输入操作。0045程序管理部102具有生成及编辑程序的功能。程序管理部102通过GUI101按照。

20、用户给予的指示进行处理。具体而言,程序管理部102具有经由通信部103读取存储部205的程序或者写入程序等功能。0046通信部103具有与PLC模拟器2的通信部202进行通信的通信接口。0047模拟接口I/F104具有如下功能在与PLC模拟器2之间,就与PLC模拟及调试说明书CN104169819A4/9页7等相关的各种信息例如,PLC模拟器2的启动、停止、程序执行部203中的程序的启动、停止进行通信。00480049PLC模拟器2具有PLC的模拟功能,其根据用户5的操作而运行,并与外部模拟器4协同工作来输出模拟结果。0050PLC模拟器2向外部模拟器4提供用于使PLC模拟器2和外部模拟器4进。

21、行通信的套接字接口SOCKETINTERFACE。在PLC模拟器2和外部模拟器4在同一PC中运行的情况下,外部模拟器4通过PLC模拟器2的套接字接口向PLC模拟器2给予指示,由此,外部模拟器4能够操作PLC模拟器2。关于该套接字接口,将在后面进行说明。0051PLC模拟器2接受来自PLC程序设计工具1的PLC模拟器的启动指令和停止指令,根据指令进行启动动作和停止动作。PLC模拟器2包括程序控制部201、通信部202、程序执行部203、停止条件保存部204和存储部205。0052存储部205由RAMRANDOMACCESSMEMORY随机存取存储器等实现,具有规定的存储区域。存储部205具有用于。

22、存储用户任意生成的程序205A的存储区域和作为用于程序205A进行参照的存储区域的PLC存储器205B输入输出存储器、数据存储器等。0053程序执行部203响应于来自程序控制部201的规定的启动指令和停止指令,从存储部205读出并执行程序205A。0054存储在存储部205中的程序205A和PLC存储器205B的内容能够通过通信部202而被PLC程序设计工具1监视。而且,PLC存储器205B的内容也能够通过通信部202由外部模拟器4读取或者写入。0055通信部202具有读取及写入数据的功能。另外,通信部202对外部模拟器4提供套接字接口。外部模拟器4能够通过使用套接字接口,操作PLC模拟器2。。

23、0056程序控制部201具有响应于来自PLC程序设计工具1的启动指令和停止指令,控制程序执行部203启动和停止程序205A的功能。0057另外,程序控制部201具有如下功能,即,响应于来自PLC程序设计工具1的停止条件设定,将包含于该停止条件设定的“停止条件”保存于停止条件保存部204。0058程序控制部201具有如下功能,即,始终监视保存于停止条件保存部204的“停止条件”的成立,只要确认“停止条件”的成立,就立刻使程序执行部203停止执行程序205A。0059因此,例如,进行调试的用户通过在停止条件保存部204中设定保存所期望的“停止条件”,就能够在任意时刻停止执行程序。由此,用户5能够利。

24、用PLC程序设计工具1和PLC模拟器2来调试程序。0060如上所述,停止条件保存部204保存用于停止执行程序205A的条件。00610062设定工具3是用于调试外部模拟器4的工具,接受用户5的操作来控制外部模拟器4的启动及停止。0063设定工具3包括图形用户界面GUI301和模拟接口I/F303。0064GUI301具有如下功能,即,对用户5显示与调试等相关的各种信息例如,涉及与PLC通信的设备的模拟的开始、停止等的信息,通过键盘操作、鼠标操作等,接受用户5所进行的输入操作。说明书CN104169819A5/9页80065模拟接口I/F303具有如下功能,即,在与外部模拟器4之间,就与调试等相。

25、关的各种信息进行通信例如,外部模拟器4的启动、停止等。00660067外部模拟器4是发挥与PLC模拟器2协同工作的设备的模拟功能的程序。在本实施方式中,外部模拟器4利用PLC模拟器2的套接字接口主导性地对PLC模拟器2发出规定的指示,从而对PLC模拟器2进行操作。0068外部模拟器4包括画面显示部401、作为中间设备MIDDLEWARE的通信部402和执行部403。0069画面显示部401与模拟对象设备的实际设备的操作画面相对应。外部模拟器4具有如下功能,即,当执行部403的执行动作开始时,通过鼠标或键盘接受虚拟地进行的用户5的操作等,并向执行部403交接该操作内容。0070执行部403按照规。

26、定的程序进行动作,通过通信部402,向PLC模拟器2的PLC存储器205B的相应地址进行写入和读取。执行部403包括检测部404。0071检测部404检测在PLC模拟器2中程序执行部203是否正在执行规定的程序。在本实施方式中,检测部404利用后述的套接字接口,检测PLC模拟器2中是否执行完规定的程序。00720073具有上述结构的PLC模拟系统10在PC中以软件的方式被实现。其中,PC11的结构如图2所示。0074如图2所示,PC11包括运算部12、ROMREADONLYMEMORY只读存储器13、RAM14、输入部15和输出部16。0075运算部12具有CPUCENTRALPROCESSI。

27、NGUNIT中央处理单元,控制OSOPERATINGSYSTEM操作系统、PLC模拟器2及外部模拟器4等各个程序的执行。0076在ROM13中存储有各种程序。0077RAM14是用于执行软件的存储区域,PLC模拟器2等程序被读入RAM14后运行各个程序。0078输入部15接受用户5的操作。具体而言,输入部15由键盘、触摸面板等构成。0079输出部16输出模拟结果等。具体的而言,由监视器MONITOR等显示部构成。00800081下面,对PLC模拟器2提供的套接字接口进行说明。0082图3是表示PLC模拟器2的套接字接口的指令序列的一个例子的图。0083外部模拟器4能够通过套接字接口,使用各个指。

28、令来操作PLC模拟器2。0084例如,如图所示,“GOONESCAN”指令是用于使在PLC模拟器2中运行的程序执行一个周期的指令。外部模拟器4能够通过指定指令的参数ARGUMENT来进行控制,以使在PLC模拟器2中运行的程序执行一个周期后待机规定时间,或者解除待机。此外,使PLC模拟器2待机规定时间后,也可以使PLC模拟器2开始周期性地执行程序的通常的动作。0085另外,例如,“CHECKPLCSTATE”指令是用于取得PLC模拟器2中运行的程序的执行状态的指令。通过该指令,从PLC模拟器2向外部模拟器4通知PLC模拟器2执行完一个周期后处于待机还是正在执行一个周期,来作为PLC模拟器2中运行。

29、的程序的执行状态。说明书CN104169819A6/9页90086因此,外部模拟器4通过“GOONESCAN”指示PLC模拟器2执行一个周期的程序后,通过“CHECKPLCSTATE”指令,取得PLC模拟器2中的程序执行状态,从而能够检测PLC模拟器2的处理是否结束。00870088下面,对PLC模拟系统10的PLC模拟器2的动作和外部模拟器4的动作进行说明。0089在本实施方式中,外部模拟器4和PLC模拟器2中的一方把握控制的主导权,把握主导权的一方向另一方发出开始处理的指示并确认处理已被执行。0090在该实施方式的例子中,PLC模拟器2具有套接字接口。在外部模拟器4中运行的程序主导性地操作。

30、PLC模拟器2。0091外部模拟器4中运行的程序通过利用套接字接口执行规定的指令,来检测PLC模拟器2中的程序是否已运行完毕。外部模拟器4中运行的程序在检测到PLC模拟器2中的程序已运行完毕后,根据程序进行输入输出处理等动作。0092由此,以对PLC存储器205B的访问不产生冲突的方式执行程序。因此,能够防止PLC存储器205B的数据意外被改变从而进行意想不到的动作。00930094在此,为了与本发明进行比较,对访问PLC存储器会产生冲突的模拟系统的结构进行说明。0095图4是表示相关技术中的PLC模拟器的动作的流程图。0096如图4所示,相关技术中的PLC模拟器周期性地重复执行处理。即,相关。

31、技术中的PLC模拟器每次经过规定的周期步骤S21中为“是”,对PLC存储器进行数据的输入输出处理步骤S23,并执行程序步骤S25。0097图5是表示相关技术中外部模拟器的动作的流程图。0098如该图所示,相关技术中的外部模拟器例如,由PLC控制其动作的检查用的带式运送机的模拟器,每次经过规定的监测周期步骤S31中为“是”,进行用于对PLC存储器进行数据访问的监测处理步骤S33,并执行规定的运算处理步骤S35。如此,外部模拟器周期性地执行规定的动作。0099图6示出了如此进行的相关技术中的模拟系统的动作例子。图6示出了与外部模拟器相比PLC的模拟器的动作周期更短的情况。0100如该图所示,在相关。

32、技术中,因为PLC模拟器和外部模拟器分别独立动作,所以,PLC模拟器和外部模拟器可能会同时访问PLC存储器。外部模拟器按照规定周期访问PLC存储器来进行规定的动作。在外部模拟器读出PLC存储器的数据以及向PLC存储器写入数据的期间,比外部模拟器的动作周期更短的PLC模拟器执行任务,从而改写PLC存储器的数据该图中,改写为“A”、“B”、“C”。0101在相关技术中,有可能外部模拟器和PLC模拟器同时访问PLC存储器,会导致进行用户不想要发生的动作。01020103下面,对本实施方式中的PLC模拟器2以及外部模拟器4的动作进行说明。0104图7是表示本实施方式的PLC模拟器2以及外部模拟器4的动。

33、作的流程图。如该图所示,PLC模拟器2通过套接字接口从外部模拟器4接受指令,从而接受来自外部模拟器说明书CN104169819A7/9页104的操作。该图示出了这样的处理经过套接字的初始化等处理,外部模拟器4通过指令来序列开始操作PLC模拟器2。0105外部模拟器4通过使用“GOONESCAN”指令,使在PLC模拟器2中运行的程序执行一个周期步骤S62。在PLC模拟器2中,通过接收“GOONESCAN”指令,执行一个周期的程序后待机步骤S68。0106外部模拟器4通过使用“CHECKPLCSTATE”指令,确认在PLC模拟器2中是否执行了一个周期步骤S63。如果在PLC模拟器2中正在执行一个周。

34、期步骤S63中为“否”,则外部模拟器4一直使用“CHECKPLCSTATE”指令,直至从PLC模拟器2接收到用于表示“待机中”的应答为止。0107如果PLC模拟器2执行完一个周期并接收到表示“待机中”的应答步骤S63中为“是”,则外部模拟器4执行向PLC存储器205B的写入数据等规定的写入处理步骤S64。0108若完成写入处理,则外部模拟器4通过使用“GOONESCAN”指令,使在PLC模拟器2中运行的程序执行一个周期步骤S65。在PLC模拟器2中,接收“GOONESCAN”指令,执行一个周期的程序后待机步骤S68。0109外部模拟器4通过使用“CHECKPLCSTATE”指令,确认在PLC模。

35、拟器2中是否执行了一个周期步骤S66。0110如果PLC模拟器2执行完一个周期并且从PLC模拟器2接收到表示“待机中”的应答步骤S66中为“是”,则外部模拟器4执行从PLC存储器205B读取数据等规定的读取处理步骤S67。然后,外部模拟器4重复步骤S64之后的处理。0111如上所述,外部模拟器4通过步骤S65等来主导PLC模拟器2中的程序执行,并通过步骤S66等来确认PLC模拟器2的执行是否完成处于忙碌BUSY状态还是闲置IDLE状态后进行处理步骤S67等。0112图8表示如此动作的外部模拟器4和PLC模拟器2的时间图。0113如图8所示,外部模拟器4和PLC模拟器2交替地运行程序。若外部模拟。

36、器4使在PLC模拟器2中运行的程序执行一个周期,则PLC模拟器2进行规定的运算,这一期间处于忙碌状态。0114此外,图8中“W”表示写入处理,“R”表示读取处理。外部模拟器4通过使用套接字接口的指令,确认PLC模拟器2的执行状态,在PLC模拟器2变为待机中的状态闲置状态后,开始处理。01150116除此之外,为了使外部模拟器4和PLC模拟器2交替地运行程序而检测一方是否执行完毕的方法有多种方法。即,发挥检测部404的功能的具体的方法可采用如下方法。0117变形例10118虽然在上述例子中外部模拟器4依次确认PLC模拟器2的执行状态使用“CHECKPLCSTATE”指令,但是,除此此外,也可以使。

37、用规定的存储区域,由外部模拟器4和PLC模拟器2中的一方向另一方通知执行状态已结束。0119图9是在使用计数器通知PLC模拟器2中运行的程序已执行完的情况下的时间图。0120图9的例子中,外部模拟器4主导性地使PLC模拟器2的程序运行。PLC模拟器2说明书CN104169819A108/9页11在动作结束后,更新例如存储在存储部205中的计数器值。外部模拟器4根据计数器值的更新来检测PLC模拟器2中的程序运行已结束。此外,在图9中“W”表示写入处理,“R”表示读取处理。0121如图9所示,若PLC模拟器2开始处理,则在进行规定的读取处理时获得计数器值,并在进行运算来执行规定的写入处理时更新计数。

38、器值。外部模拟器4监视计数器值,若计数器值被更新则开始处理。0122变形例20123另外,也可以将表示外部模拟器4和PLC模拟器2中的任意一方已完成执行的标志存储在例如存储部205中,来由一方向另一方通知执行状态。0124例如,假设在PLC模拟器2中运行的程序以比外部模拟器4更短的运行周期运行。即,在外部模拟器4运行期间,PLC模拟器2能够多次访问PLC存储器205B。0125在该情况下,若外部模拟器4完成运行,则将上述标志设为开启ON,从而向PLC模拟器2通知已完成运行。运行周期比较短的PLC模拟器2在周期到来时,如果标志为关闭OFF,则认为外部模拟器4的程序的运行未结束,不执行处理而待机。。

39、PLC模拟器2在标志为开启ON的情况下,检测为外部模拟器4的程序的运行已结束并执行处理。0126图10是表示变形例2中的PLC模拟器2的动作的流程图。0127PLC模拟器2在规定的运行周期到来的时刻,如果标志不是开启ON,则待机,不执行程序203A,由此,停止对PLC存储器205B的访问步骤S91中为“否”。0128若规定的运行周期到来且标志为开启ON,则PLC模拟器2进行步骤S93的处理,从而将标志设为关闭OFF。0129PLC模拟器2执行规定处理,例如,访问PLC存储器205B来对PLC存储器205B进行数据的输入输出处理步骤S95,使用PLC存储器205B的数据等来执行程序203A步骤S。

40、97等。0130图11是表示变形例2中的外部模拟器4的动作的流程图。0131外部模拟器4中运行的程序待机直至规定的运行周期监测周期到来步骤S101中为“否”为止。若规定的运行周期到来步骤S101中为“是”,则外部模拟器4中运行的程序执行监测处理步骤S103及运算处理步骤S105等伴随着对PLC存储器205B的读取以及写入的规定处理。若这些处理结束,则外部模拟器4中运行的程序将标志设为开启ON步骤S107。外部模拟器4通过将标志设为开启ON,向PLC模拟器2通知外部模拟器4中运行的程序中的处理已被执行。0132如上所述,由于PLC模拟器2的运行周期比外部模拟器4更短,所以,在外部模拟器4的周期性。

41、处理的执行时刻再次到来之前,完成PLC模拟器2对PLC存储器205B的访问。因此,在PLC模拟器2和外部模拟器4之间,不会同时访问PLC存储器205B,能够防止在外部模拟器4中用户程序基于不想要访问的的数据而进行误动作。0133在实施方式的说明中说明了外部模拟器4通过检测部404来检测PLC模拟器2的程序的是否执行完毕的情况。由上述变形例的说明也可知,也可以由PLC模拟器2侧检测外部模拟器4中的程序的执行状态,来进行制止PLC模拟器2中的程序的执行等控制。即,PLC模拟器2也能够发挥检测部404的功能。0134另外,也可以外部模拟器4以及PLC模拟器2彼此发挥检测部404的功能,来检测说明书C。

42、N104169819A119/9页12对方程序是否执行完毕。0135也可以将控制上述PLC模拟器2的动作的控制程序记录在计算机可读记录介质中并使记录介质流通,从而分发该控制程序。应理解本次公开的实施方式在所有方面都是例示而非限制。本发明的范围由权利要求书示出,而非由上述说明来示出,包括与权利要求书等同的含义及范围内的全部变更。0136产业上的可利用性0137本发明能够用于PLC模拟系统。0138附图标记说明01391PLC程序设计工具;01402PLC模拟器;01413设定工具;01424外部模拟器;01435用户;014410PLC模拟系统;014511PC;014612运算部;014713。

43、ROM;014814RAM;014915输入部;015016输出部;0151101GUI;0152102管理部;0153103通信部;0154104模拟I/F;0155201控制部;0156202通信部;0157203程序执行部;0158204停止条件保存部;0159205存储部;0160205A程序;0161205BPLC存储器;0162301GUI;0163303模拟I/F;0164401画面显示部;0165402通信部;0166403执行部。说明书CN104169819A121/7页13图1说明书附图CN104169819A132/7页14图2图3说明书附图CN104169819A143/7页15图4图5说明书附图CN104169819A154/7页16图6说明书附图CN104169819A165/7页17图7说明书附图CN104169819A176/7页18图8图9说明书附图CN104169819A187/7页19图10图11说明书附图CN104169819A19。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 控制;调节


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1