CN113661451A - 程序创建辅助装置、程序创建辅助方法及程序 - Google Patents
程序创建辅助装置、程序创建辅助方法及程序 Download PDFInfo
- Publication number
- CN113661451A CN113661451A CN201980095308.XA CN201980095308A CN113661451A CN 113661451 A CN113661451 A CN 113661451A CN 201980095308 A CN201980095308 A CN 201980095308A CN 113661451 A CN113661451 A CN 113661451A
- Authority
- CN
- China
- Prior art keywords
- memory
- program
- unit
- programmable logic
- logic controller
- 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
- 238000000034 method Methods 0.000 title claims description 14
- 230000015654 memory Effects 0.000 claims abstract description 284
- 230000006870 function Effects 0.000 claims abstract description 18
- 239000000284 extract Substances 0.000 claims abstract description 14
- 238000006243 chemical reaction Methods 0.000 claims abstract description 10
- 238000012545 processing Methods 0.000 description 39
- 238000010586 diagram Methods 0.000 description 18
- 238000004891 communication Methods 0.000 description 15
- 238000005259 measurement Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 230000004931 aggregating effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1652—Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
- G06F13/1657—Access to multiple memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/167—Interprocessor communication using a common memory, e.g. mailbox
-
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/54—Link editing before load time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/454—Multi-language systems; Localisation; Internationalisation
-
- 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
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Programmable Controllers (AREA)
- Stored Programmes (AREA)
Abstract
程序创建辅助装置(1)对由具有刷新功能的可编程逻辑控制器执行的定序程序的创建进行辅助,该可编程逻辑控制器包含:控制单元,其具有第1存储器,对可编程逻辑控制器进行控制;以及网络单元,其具有第2存储器,从控制对象仪器取得数据而储存于第2存储器,该程序创建辅助装置(1)具有:程序提取部(21),其从被变换为可编程逻辑控制器能够理解的形式前的变换前定序程序提取表示向第2存储器的访问的记述;存储部(10),其对表示第1存储器的特定区域和第2存储器的特定区域之间的对应关系的存储器分配设定信息(111)进行存储;以及程序替换部(23),其基于存储器分配设定信息,将变换前定序程序的表示向第2存储器的访问的记述替换为表示向第1存储器的访问的记述。
Description
技术领域
本发明涉及对在可编程逻辑控制器(Programmable Logic Controller,下面称为PLC)中执行的程序的创建进行辅助的程序创建辅助装置、程序创建辅助方法及程序。
背景技术
在FA(Factory Automation)领域中,以往利用使用了PLC的自动控制仪器。通常,PLC包含CPU(Central Processing Unit)单元、以及与CPU单元协作地进行动作的通信用的网络单元。在PLC中,利用网络单元构建通信网络,利用通信网络实现CPU单元和远处的传感器等的通信。
另外,通过在安装CPU单元的基本单元安装多个网络单元,从而也能够针对1台CPU单元,构建包含多个网络的系统。
1个网络是由为了对远处的传感器的值进行收集而远程地设置的网络单元(下面,称为远程站)、和安装于基本单元而与远程站进行通信的网络单元(下面,称为主站)构建的。远程站及主站具有存储器(下面,称为网络侧存储器)。传感器等仪器能够连接于远程站,远程站从所连接的仪器对传感器值等测量值进行收集而通过本身的网络侧存储器进行保存。主站通过在决定好的定时(timing)对由各远程站收集到的测量值进行接收,由本身的网络侧存储器进行保存,从而将由各远程站收集到的测量值汇集起来。CPU单元能够通过取得在主站的网络侧存储器中储存的测量值,从而读取从与各远程站连接的仪器输出的测量值。
这里,构成CPU单元的CPU取得在主站的网络侧存储器中储存的数据的情况下的所需时间比构成CPU单元的CPU取得在CPU单元内的存储器(下面,称为CPU侧存储器)中储存的数据的情况下的所需时间长。原因在于,在CPU单元的CPU取得网络侧存储器的值的情况下,发生经由基本单元进行的单元间的通信。此外,即使并非是CPU单元和网络单元(主站)被安装于基本单元经由基本单元进行通信,而是CPU单元和主站能够直接进行通信的结构,构成CPU单元的CPU取得在主站的网络侧存储器中储存的数据的情况下的所需时间也会更长。
因此,通常,PLC具有使在CPU侧存储器的所指定的区域储存的数据和在网络侧存储器的所指定的区域储存的数据同步的功能。该功能也称为刷新功能。在刷新功能中,以规定好的周期重复执行对在CPU侧存储器的指定区域储存的数据进行复制而转发至网络侧存储器的指定区域的处理。由此,在网络侧存储器的指定区域储存的数据以规定好的周期被更新为与在网络侧存储器的指定区域储存的数据相同的数据(例如,参照专利文献1)。
在专利文献1所记载的发明中,减少了在执行刷新功能时产生的数据转发次数,实现了处理的高速化。
专利文献1:日本特开2003-29809号公报
发明内容
为了使用刷新功能,需要进行存储器分配作业,即,将使CPU侧存储器的哪个区域的值与网络侧存储器的哪个区域的值同步关联起来的作业。另外,对由PLC执行的程序进行创建的作业者需要考虑到存储器分配的状态而进行编程。即,作业者需要考虑将从与远程站连接的哪个仪器输出的值储存于网络侧存储器的哪个区域、及使网络侧存储器的哪个区域的值与CPU侧存储器的哪个区域的值同步而进行编程。因此,存在程序的创建者的作业负荷大这样的问题。
本发明就是鉴于上述问题而提出的,其目的在于得到能够减轻对由PLC执行的程序进行创建的作业者的作业负荷的程序创建辅助装置。
为了解决上述课题,达成目的,本发明为程序创建辅助装置,其对由可编程逻辑控制器执行的定序程序的创建进行辅助,该可编程逻辑控制器包含:控制单元,其在内部具有第1存储器,该控制单元对可编程逻辑控制器整体的动作进行控制;以及网络单元,其在内部具有第2存储器,该网络单元从可编程逻辑控制器的控制对象仪器取得数据而储存于第2存储器,该可编程逻辑控制器具有使第1存储器的特定区域的值与第2存储器的特定区域的值同步的刷新功能,该程序创建辅助装置具有程序提取部,该程序提取部从被变换为可编程逻辑控制器能够理解的形式前的定序程序即变换前定序程序提取表示向第2存储器的访问的记述。另外,程序创建辅助装置具有:存储部,其对表示第1存储器的特定区域和第2存储器的特定区域之间的对应关系的存储器分配设定信息进行存储;以及程序替换部,其基于在存储部中存储的存储器分配设定信息,将变换前定序程序的表示向第2存储器的访问的记述替换为表示向第1存储器的访问的记述。
发明的效果
本发明涉及的程序创建辅助装置取得能够减轻对由PLC执行的程序进行创建的作业者的作业负荷这样的效果。
附图说明
图1是表示利用由本发明涉及的程序创建辅助装置创建的程序的PLC的一个例子的图。
图2是表示实施方式1涉及的程序创建辅助装置的结构例的图。
图3是针对能够实现实施方式1涉及的程序创建辅助装置的硬件,示出其结构例的图。
图4是表示实施方式1涉及的程序创建辅助装置的动作的一个例子的流程图。
图5是表示由实施方式1涉及的程序创建辅助装置创建的CPU程序所包含的程序块的一个例子的图。
图6是表示由实施方式1涉及的程序创建辅助装置创建的存储器分配设定信息的一个例子的图。
图7是表示由实施方式1涉及的程序创建辅助装置创建的CPU程序所包含的程序块的一个例子的图。
图8是表示实施方式2涉及的程序创建辅助装置的结构例的图。
图9是表示实施方式2涉及的程序创建辅助装置的动作的一个例子的流程图。
图10是表示由实施方式2涉及的程序创建辅助装置创建的存储器分配设定信息的一个例子的图。
图11是表示由实施方式2涉及的程序创建辅助装置创建的CPU程序所包含的程序块的一个例子的图。
具体实施方式
下面,基于附图对本发明的实施方式涉及的程序创建辅助装置、程序创建辅助方法及程序进行详细的说明。此外,本发明并不限于该实施方式。
首先,一边参照图1,一边对利用本发明涉及的程序创建辅助装置所创建的程序的PLC进行说明。图1是表示利用由本发明涉及的程序创建辅助装置创建的程序的PLC的一个例子的图。
图1所示的PLC 1000包含:作为控制单元的CPU单元1100,其对PLC 1000整体的动作进行控制;网络单元1200,其形成通信网络;以及基本单元1300,其与CPU单元1100及网络单元1200连接。CPU单元1100及网络单元1200各自安装于基本单元1300的规定安装位置。在基本单元1300上除了CPU单元1100及网络单元1200之外,与用途相匹配地安装输入单元、输出单元等,但这里省略关于CPU单元1100及网络单元1200之外的单元的说明。另外,网络单元1200经由通信线路与在图1中省略了记载的其它网络单元连接。作为PLC 1000的控制对象的仪器与其它网络单元连接。另外,PLC1000具有刷新功能,能够使在CPU侧存储器的所指定的区域储存的数据和在网络侧存储器的所指定的区域储存的数据同步。
CPU单元1100对由梯形图语言等记述的定序程序即CPU程序1101进行保存,通过按照在CPU程序1101记述的程序代码进行动作而实现PLC 1000整体的控制动作。另外,CPU单元1100具有:CPU参数1102,其对省略了图示的CPU的动作进行设定;以及CPU侧存储器1103,其储存按照CPU程序1101进行的运算的结果等。CPU参数1102包含:存储器分配设定信息1121,其是在刷新功能中使用的信息;以及网络结构设定信息1122,其表示由安装于基本单元1300的网络单元1200管理的通信网络上的仪器及能够由CPU单元1100参照的网络侧存储器1201的区域。存储器分配设定信息1121表示CPU侧存储器1103的区域中的通过刷新功能来更新数据的各区域被分配给网络单元1200内的存储器(后述的网络侧存储器1201)的哪个区域。CPU侧存储器1103为PLC 1000的第1存储器。
网络单元1200为主站,具有网络侧存储器1201。在网络侧存储器1201中对上述其它网络单元即远程站从通信网络内的传感器等仪器取得的信息进行汇集。网络侧存储器1201为PLC 1000的第2存储器。
下面,以创建由图1所示的PLC 1000的CPU单元1100执行的CPU程序1101的情况为前提,对本发明涉及的程序创建辅助装置的实施方式进行说明。
实施方式1.
图2是表示实施方式1涉及的程序创建辅助装置的结构例的图。实施方式1涉及的程序创建辅助装置1具有:存储部10,其对CPU参数11及CPU程序12进行保存;以及变更处理部20,其对CPU程序12进行变更。CPU程序12与图1所示的CPU程序1101同样地为定序程序,但其为向能够由PLC 1000的CPU单元1100理解的形式变换前的定序程序。
程序创建辅助装置1从进行编程的作业者对操作进行接收,按照操作内容而创建CPU参数11及CPU程序12。此外,程序创建辅助装置1自动地对CPU参数11的存储器分配设定信息111进行创建。图2所示的CPU程序12为作业者使用梯形图语言等创建出的程序代码,与图1所示的CPU程序1101同样地为定序程序。但是,CPU程序12为执行编译而向能够由CPU单元1100的CPU理解的形式变换前的状态。CPU程序12为变换前定序程序。CPU程序12在进行编译而变换为能够由CPU单元1100的CPU理解的形式后,经由通信线路等被转发至图1所示的PLC 1000的CPU单元1100。CPU单元1100将从程序创建辅助装置1接收到的程序保存为CPU程序1101。此外,在图2中,省略了实现从作业者对操作进行接收而创建CPU程序12的处理的单元、将对CPU程序12进行编译而得到的变换后的程序转发至CPU单元1100的单元等的记载。这些单元与PLC用的定序程序的编程作业所使用的通常的程序创建装置所具有的程序创建单元、编译单元、程序转发单元等相同。对CPU程序12进行创建的程序创建单元也可以存在于程序创建辅助装置1的外部。即,程序创建辅助装置1也可以是从其它装置对由其它装置创建的执行编译前的CPU程序进行接收的结构。
在之后的说明中,程序创建辅助装置1对创建完成后的CPU程序12进行保存。另外,在CPU程序12中包含对向网络侧存储器1201的访问进行指定的命令。
CPU参数11与图1所示的PLC 1000的CPU单元1100所保存的CPU参数1102对应。另外,存储器分配设定信息111与CPU单元1100所保存的存储器分配设定信息1121对应,网络结构设定信息112与CPU单元1100所保存的网络结构设定信息1122对应。存储器分配设定信息111及网络结构设定信息112是针对各个通信网络而创建的。例如,在PLC 1000的网络单元1200连接有3台远程站的情况下,针对3台远程站的每一者,创建存储器分配设定信息111及网络结构设定信息112。CPU参数11与对CPU程序12进行编译而得到的变换后的程序一起被转发至CPU单元1100。
变更处理部20具有程序提取部21、存储器分配部22及程序替换部23。
程序提取部21对CPU程序12进行解析,从CPU程序12中提取记述有如下内容的部位,该内容示出向网络侧存储器1201的访问。
存储器分配部22基于由程序提取部21提取出的部位的记述内容,对存储器分配设定信息111进行更新。此外,在存储器分配设定信息111的更新中,还包含在作为更新对象的存储器分配设定信息111并不存在的情况下新创建存储器分配设定信息111的处理。
程序替换部23基于由存储器分配部22更新后的存储器分配设定信息111,对CPU程序12进行替换。具体而言,程序替换部23将CPU程序12所包含的表示向网络侧存储器1201的访问的记述改写为表示向CPU侧存储器1103的访问的记述。例如,存储器分配设定信息111包含表示网络侧存储器1201的地址B1的区域与CPU侧存储器1103的地址A1的区域相关联的信息。在该情况下,程序替换部23将CPU程序12所包含的表示向网络侧存储器1201的地址B1的区域的访问的记述改写为表示向CPU侧存储器1103的地址A1的区域的访问的记述。
这里,对实现图2所示的结构的程序创建辅助装置1的硬件进行说明。图3是针对能够实现实施方式1涉及的程序创建辅助装置1的硬件,示出其结构例的图。图3所示的硬件例如为个人计算机,具有处理器91、存储器92、显示装置93及输入装置94。处理器91为CPU,也称为中央处理装置、处理装置、运算装置、微处理器、微型计算机、DSP(Digital SignalProcessor)。存储器92是RAM(Random Access Memory)、ROM(Read Only Memory)、闪存、EPROM(Erasable Programmable Read Only Memory)、EEPROM(注册商标)(ElectricallyErasable Programmable Read Only Memory)等非易失性或易失性半导体存储器、磁盘、光盘、高密度盘、迷你盘、DVD(Digital Versatile Disk)等。显示装置93为液晶监视器、显示器等。输入装置94为键盘、鼠标等。
程序创建辅助装置1的存储部10由存储器92实现。程序创建辅助装置1的变更处理部20由处理器91及存储器92实现。即,变更处理部20的程序提取部21、存储器分配部22及程序替换部23通过由存储器92保存有用于实现上述各功能部的功能的程序,由处理器91从存储器92读出而执行该程序来实现。
用于实现变更处理部20的各功能部的上述程序可以是在预先储存于存储器92的状态下提供给用户的方式,也可以是在写入至CD(Compact Disc)-ROM、DVD(DigitalVersatile Disc)-ROM等能够由计算机读取的记录介质的状态下供给用户,由用户安装于存储器92的方式。另外,上述程序也可以经由互联网等通信线路提供给用户。
图4是表示实施方式1涉及的程序创建辅助装置1的动作的一个例子的流程图,具体而言,是表示变更处理部20的动作的一个例子的流程图。如果从CPU程序12的创建者即用户接收到预先规定好的操作,则变更处理部20开始图4所示的动作。预先规定好的操作是对存储器分配设定信息111的创建进行指示的操作、对CPU程序12的编译执行进行指示的操作等。在设为接收到对CPU程序12的编译执行进行指示的操作而开始图4所示的动作的结构的情况下,程序创建辅助装置1在图4所示的动作结束后执行编译。
如果开始动作,则变更处理部20从CPU程序12提取记述有向网络侧存储器1201的访问的部位(步骤S11)。具体而言,程序提取部21从存储部10读出CPU程序12而进行解析,提取表示向网络侧存储器1201的访问的记述。例如,在CPU程序12中包含图5所示的程序块121。图5是表示由实施方式1涉及的程序创建辅助装置1创建的CPU程序12所包含的程序块的一个例子的图。在程序块121中,“J1¥SB0”及“J1¥RX0”这样的记述表示对具有“J1”这样的网络的标识符的网络进行管理的网络单元的内部的存储器(网络侧存储器1201)。因此,程序提取部21提取“J1¥SB0”及“J1¥RX0”这样的记述。“J1¥”之后的“SB0”及“RX0”表示网络侧存储器1201的特定区域。此外,“SB”及“RX”表示在区域中储存的值的类别,也称为设备名。另外,在分配了各设备名的区域中储存的数据的大小是已决定下来的。与CPU侧存储器1103同样地,设备名和数值的组合也表示CPU侧存储器1103的特定区域。程序提取部21通过相同的方法,从CPU程序12的程序块121之外的部分,提取表示向网络侧存储器1201的访问的记述。
接下来,变更处理部20将CPU侧存储器1103分配给与在步骤S11中提取出的部位对应的网络侧存储器1201(步骤S12)。具体而言,存储器分配部22针对由程序提取部21提取出的各记述所示的网络侧存储器1201的每一者的区域,对CPU侧存储器1103的区域进行分配。下面,将该处理称为“存储器分配处理”。存储器分配部22在存储器分配处理中,一边对CPU侧存储器1103的哪个区域已分配给网络侧存储器1201进行存储、一边对CPU侧存储器1103的区域进行分配,以使得不会将CPU侧存储器1103的相同区域重复分配给网络侧存储器1201的不同区域。此外,能够分配给网络侧存储器1201的CPU侧存储器1103的区域(范围)由用户预先指定或由制造商预先指定。在步骤S12中,存储器分配部22从CPU侧存储器1103的所指定的范围中,对没有完成分配的区域进行选择、分配。
接下来,变更处理部20对存储器分配设定信息111进行更新(步骤S13)。具体而言,存储器分配部22使步骤S12中的存储器分配处理的结果反映于存储器分配设定信息111。这里,在针对1台CPU单元1100构建多个通信网络的情况下,存储器分配设定信息111以所构建的网络的数量存在。因此,存储器分配部22对与表示向网络侧存储器1201的访问的记述对应的通信网络的存储器分配设定信息111进行更新。存储器分配部22在存储部10中不存在与表示向网络侧存储器1201的访问的记述对应的通信网络的存储器分配设定信息111的情况下,新创建存储器分配设定信息111。存储器分配设定信息111例如能够设为图6所示的结构的信息。图6是表示由实施方式1涉及的程序创建辅助装置1创建的存储器分配设定信息111的一个例子的图。在图6中“点数”表示区域的大小,在点数“1”的情况下为1位。“起始”是区域的起始地址,“末尾”是区域的末尾地址。图6示出如下情况下的例子,即,在CPU程序12存在3处表示向网络侧存储器1201的访问的记述,其中2处是表示向设备名为SB的区域的访问的记述,剩余1处是表示向设备名为RX的区域的访问的记述。在图6所示的存储器分配设定信息111-1中表示出,针对设备名「SB」的地址“0000~0000”的网络侧存储器1201的区域,分配设备名“M”的地址“0000~0000”的CPU侧存储器1103的区域,针对设备名“SB”的地址“0100~0100”的网络侧存储器1201的区域,分配设备名“M”的地址“0001~0001”的CPU侧存储器1103的区域,针对设备名“RX”的地址“0000~0000”的网络侧存储器1201的区域,分配设备名“M”的地址“0002~0002”的1位的CPU侧存储器1103的区域。在设备名“SW”及“RY”的“起始”及“末尾”处记载的连字符(-)表示在CPU程序12不包含表示向设备名为“SW”以及“RY”的区域的访问的记述,这些记述表示在上述步骤S11中没有提取。
接下来,变更处理部20将CPU程序12内的表示向网络侧存储器1201的访问的记述替换为表示向CPU侧存储器1103的访问的记述(步骤S14)。具体而言,程序替换部23基于由存储器分配部22更新后的存储器分配设定信息111,将CPU程序12内的表示向网络侧存储器1201的访问的记述变更为表示向与该记述所示的区域相关联的CPU侧存储器1103的区域的访问的记述。如果程序替换部23基于图6所示的存储器分配设定信息111-1进行了替换处理,则图5所示的程序块121被变换为图7所示的程序块122。图7是表示由实施方式1涉及的程序创建辅助装置1创建的CPU程序12所包含的程序块的一个例子的图。如图5~图7所示,如果执行了步骤S14的替换处理,则程序替换部23将程序块121所包含的表示向网络侧存储器1201的访问的“J1¥SB0”及“J1¥RX0”这样的记述改写为表示向CPU侧存储器1103的访问的“M0”及“M2”这样的记述,得到图7所示的程序块122。针对CPU程序12内的程序块121之外的部分也同样地,程序替换部23将表示向网络侧存储器1201的访问的记述替换为表示向CPU侧存储器1103的访问的记述。
如上所述,本实施方式涉及的程序创建辅助装置1从CPU程序12中提取表示向网络侧存储器1201的访问的记述,将CPU侧存储器1103的未使用区域分配给提取出的记述所示的区域,生成或更新表示通过刷新功能来更新数据的各区域被分配给网络侧存储器1201的哪个区域的存储器分配设定信息111。而且,程序创建辅助装置1基于存储器分配设定信息111,将CPU程序12内的表示向网络侧存储器1201的访问的记述替换为表示向CPU侧存储器1103的访问的记述。由此,对CPU程序12进行创建的作业者即用户不需要对存储器分配设定信息111进行创建及更新的作业,程序创建的作业负荷减轻。另外,用户不需要考虑存储器分配设定信息111的内容而进行编程。
实施方式2.
图8是表示实施方式2涉及的程序创建辅助装置的结构例的图。实施方式2涉及的程序创建辅助装置1a呈将实施方式1中说明过的程序创建辅助装置1的变更处理部20置换为变更处理部30后的结构。在本实施方式中对与实施方式1不同的部分进行说明。
程序创建辅助装置1a的变更处理部30具有网络结构提取部31、存储器分配部32、程序提取部33及程序替换部34。程序提取部33、程序替换部34各自进行与实施方式1涉及的程序创建辅助装置1的程序提取部21、程序替换部23相同的处理。此外,程序创建辅助装置1a与实施方式1涉及的程序创建辅助装置1同样地,能够由图3所示的硬件实现。
网络结构提取部31为信息取得部。网络结构提取部31从网络结构设定信息112,提取能够由CPU单元1100参照的网络侧存储器1201的指定区域的信息。这里的指定区域是指能够通过刷新功能,将所储存的数据的复本向网络侧存储器1201转发的区域。能够由CPU单元1100参照的网络侧存储器1201的指定区域的信息为可以知晓能够将网络侧存储器1201的哪个区域用作哪个设备名的存储区域的结构的信息。
存储器分配部32与实施方式1涉及的程序创建辅助装置1的存储器分配部22同样地对存储器分配设定信息111进行更新,但通过更新动作执行的处理的内容一部分不同。存储器分配部32基于由网络结构提取部31提取出的上述信息对存储器分配设定信息111进行更新。
图9是表示实施方式2涉及的程序创建辅助装置1a的动作的一个例子的流程图,具体而言,是表示变更处理部30的动作的一个例子的流程图。如果从CPU程序12的创建者即用户接收到预先规定好的操作,则与程序创建辅助装置1的变更处理部20同样地,变更处理部30开始图9所示的动作。
如果开始动作,则变更处理部30从网络结构设定信息112,提取能够由CPU单元1100参照的网络侧存储器1201的区域的信息(步骤S21)。该步骤S21的处理由网络结构提取部31进行。能够由CPU单元1100参照的网络侧存储器1201的区域为上述指定区域。另外,能够由CPU单元1100参照的网络侧存储器1201的区域是作为在网络单元1200取得了CPU单元1100所需要的测量值等数据的情况下储存的区域而确保的区域。能够由CPU单元1100参照的网络侧存储器1201的区域的设定在开始CPU程序12的编程前或编程过程中由用户进行。
接下来,变更处理部30将CPU侧存储器1103分配给与在步骤S21中提取出的信息对应的网络侧存储器1201(步骤S22)。具体而言,存储器分配部32进行针对由网络结构提取部31提取出的信息所示的网络侧存储器1201的区域分配CPU侧存储器1103的区域的存储器分配处理。此外,能够分配给网络侧存储器1201的CPU侧存储器1103的区域由用户预先指定或由制造商预先指定。在步骤S22中,存储器分配部32从CPU侧存储器1103的所指定的范围中对没有完成分配的区域进行选择、分配。
接下来,变更处理部30对存储器分配设定信息111进行更新(步骤S23)。具体而言,存储器分配部32使步骤S22中的存储器分配处理的结果反映于存储器分配设定信息111。图10是表示由实施方式2涉及的程序创建辅助装置1a创建的存储器分配设定信息111的一个例子的图。如图10的存储器分配设定信息111-2所示,存储器分配部32向针对网络侧存储器1201的各个设备名确保的能够由CPU单元1100参照的区域(在图10中为4个区域),对CPU侧存储器1103的区域进行分配。存储器分配设定信息111-2中的、在左侧记载的“网络侧存储器”的“设备名”、“点数”、“起始”及“末尾”各栏的信息是在上述步骤S21中网络结构提取部31从网络结构设定信息112提取的信息。在右侧记载的“CPU侧存储器”的“设备名”、“点数”、“起始”及“末尾”各栏的信息是在上述步骤S22中由存储器分配部32分配的信息。
接下来,变更处理部30从CPU程序12提取记述有向网络侧存储器1201的访问的部位(步骤S24)。该步骤S24的处理为与在实施方式1中说明过的步骤S11相同的处理,由程序提取部33进行。
接下来,变更处理部30将CPU程序12内的表示向网络侧存储器1201的访问的记述替换为表示向CPU侧存储器1103的访问的记述(步骤S25)。该步骤S25的处理为与在实施方式1中说明过的步骤S14相同的处理,由程序替换部34进行。如果程序替换部34基于图10所示的存储器分配设定信息111-2进行了替换处理,则图5所示的程序块121被变换为图11所示的程序块123。图11是表示由实施方式2涉及的程序创建辅助装置1a创建的CPU程序12所包含的程序块的一个例子的图。如图5、图10及图11所示,如果执行了步骤S25的替换处理,则程序替换部34将程序块121所包含的表示向网络侧存储器1201的访问的“J1¥SB0”及“J1¥RX0”这样的记述改写为表示向CPU侧存储器1103的访问的“M0”及“M100”这样的记述,得到图11所示的程序块123。针对CPU程序12内的程序块121之外的部分也同样地,程序替换部34将表示向网络侧存储器1201的访问的记述替换为表示向CPU侧存储器1103的访问的记述。例如,在步骤S24中程序提取部33提取出“J1¥SW10”这样的记述的情况下,程序替换部34将该记述改写为“D10”。
如上所述,本实施方式涉及的程序创建辅助装置1a基于CPU参数11的网络结构设定信息112所包含的能够由CPU单元1100参照的网络侧存储器1201的区域的信息,对存储器分配设定信息111进行生成或更新。而且,程序创建辅助装置1a基于存储器分配设定信息111,将CPU程序12内的表示向网络侧存储器1201的访问的记述替换为表示向CPU侧存储器1103的访问的记述。本实施方式涉及的程序创建辅助装置1a能够取得与实施方式1涉及的程序创建辅助装置1相同的效果。
以上实施方式所示的结构表示的是本发明的内容的一个例子,也可以与其它的公知技术进行组合,在不脱离本发明的主旨的范围内,也可以省略、变更结构的一部分。
在各实施方式中,以图1所示的结构的PLC 1000,即包含CPU单元1100及网络单元1200的各种单元被安装于基本单元1300的PLC 1000为前提进行了说明,但基本单元1300不是必备的。即使是将各单元彼此直接连接而构成的PLC,也能够应用在各实施方式中说明过的发明。
标号的说明
1、1a程序创建辅助装置,10存储部,11、1102CPU参数,12、1101CPU程序,20、30变更处理部,21、33程序提取部,22、32存储器分配部,23、34程序替换部,31网络结构提取部,111、111-1、111-2、1121存储器分配设定信息,112、1122网络结构设定信息,121、122、123程序块,1000PLC,1100CPU单元,1103CPU侧存储器,1200网络单元,1201网络侧存储器,1300基本单元。
Claims (10)
1.一种程序创建辅助装置,其对由可编程逻辑控制器执行的定序程序的创建进行辅助,该可编程逻辑控制器包含:控制单元,其在内部具有第1存储器,该控制单元对可编程逻辑控制器整体的动作进行控制;以及网络单元,其在内部具有第2存储器,该网络单元从所述可编程逻辑控制器的控制对象仪器取得数据而储存于所述第2存储器,该可编程逻辑控制器具有使所述第1存储器的特定区域的值与所述第2存储器的特定区域的值同步的刷新功能,
该程序创建辅助装置的特征在于,具有:
程序提取部,其从被变换为所述可编程逻辑控制器能够理解的形式前的定序程序即变换前定序程序提取表示向所述第2存储器的访问的记述;
存储部,其对表示所述第1存储器的所述特定区域和所述第2存储器的所述特定区域之间的对应关系的存储器分配设定信息进行存储;以及
程序替换部,其基于在所述存储部中存储的所述存储器分配设定信息,将所述变换前定序程序的表示向所述第2存储器的访问的记述替换为表示向所述第1存储器的访问的记述。
2.根据权利要求1所述的程序创建辅助装置,其特征在于,
所述存储器分配设定信息表示所述第1存储器的区域中的通过所述刷新功能对值进行更新的各区域被分配给所述第2存储器的哪个区域。
3.根据权利要求1或2所述的程序创建辅助装置,其特征在于,
具有存储器分配部,该存储器分配部对由所述程序提取部提取出的各记述所示的所述第2存储器的各个区域分配所述第1存储器的区域而生成所述存储器分配设定信息。
4.根据权利要求1或2所述的程序创建辅助装置,其特征在于,具有:
信息取得部,其取得所述第2存储器的区域中的能够由所述控制单元参照的区域的信息;以及
存储器分配部,其对由所述信息取得部取得的信息所示的所述第2存储器的区域分配所述第1存储器的区域而生成所述存储器分配设定信息。
5.根据权利要求3或4所述的程序创建辅助装置,其特征在于,
所述可编程逻辑控制器具有多个所述网络单元,
所述存储器分配部针对各个所述网络单元而生成存储器分配设定信息。
6.根据权利要求3至5中任一项所述的程序创建辅助装置,其特征在于,
所述第1存储器的所述特定区域及所述第2存储器的所述特定区域由多个区域构成,
所述存储器分配部以如下方式生成所述存储器分配设定信息,即,不使构成所述第1存储器的所述特定区域的各区域重复分配给构成所述第2存储器的所述特定区域的多个区域。
7.根据权利要求3至6中任一项所述的程序创建辅助装置,其特征在于,
所述存储器分配部从所述第1存储器的区域中的由用户预先指定的范围选择所述第1存储器的所述特定区域而与所述第2存储器的所述特定区域相关联。
8.根据权利要求3至6中任一项所述的程序创建辅助装置,其特征在于,
所述存储器分配部从所述第1存储器的区域中的由所述可编程逻辑控制器的制造商预先指定的范围选择所述第1存储器的所述特定区域而与所述第2存储器的所述特定区域相关联。
9.一种程序创建辅助方法,其对由可编程逻辑控制器执行的定序程序的创建进行辅助,该可编程逻辑控制器包含:控制单元,其在内部具有第1存储器,该控制单元对可编程逻辑控制器整体的动作进行控制;以及网络单元,其在内部具有第2存储器,该网络单元从所述可编程逻辑控制器的控制对象仪器取得数据而储存于所述第2存储器,该可编程逻辑控制器具有使所述第1存储器的特定区域的值与所述第2存储器的特定区域的值同步的刷新功能,
该程序创建辅助方法的特征在于,包含如下步骤:
程序提取部从被变换为所述可编程逻辑控制器能够理解的形式前的定序程序即变换前定序程序提取表示向所述第2存储器的访问的记述;
存储部对表示所述第1存储器的所述特定区域和所述第2存储器的所述特定区域之间的对应关系的存储器分配设定信息进行存储;以及
程序替换部基于由所述存储部存储的所述存储器分配设定信息,将所述定序程序的表示向所述第2存储器的访问的记述替换为表示向所述第1存储器的访问的记述。
10.一种程序,其对由可编程逻辑控制器执行的定序程序的创建进行辅助,该可编程逻辑控制器包含:控制单元,其在内部具有第1存储器,该控制单元对可编程逻辑控制器整体的动作进行控制;以及网络单元,其在内部具有第2存储器,该网络单元从所述可编程逻辑控制器的控制对象仪器取得数据而储存于所述第2存储器,该可编程逻辑控制器具有使所述第1存储器的特定区域的值与所述第2存储器的特定区域的值同步的刷新功能,
特征在于,使计算机执行如下步骤:
程序提取部从被变换为所述可编程逻辑控制器能够理解的形式前的定序程序即变换前定序程序提取表示向所述第2存储器的访问的记述;
存储部对表示所述第1存储器的所述特定区域和所述第2存储器的所述特定区域之间的对应关系的存储器分配设定信息进行存储;以及
程序替换部基于由所述存储部存储的所述存储器分配设定信息,将所述定序程序的表示向所述第2存储器的访问的记述替换为表示向所述第1存储器的访问的记述。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2019/016329 WO2020213059A1 (ja) | 2019-04-16 | 2019-04-16 | プログラム作成支援装置、プログラム作成支援方法およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113661451A true CN113661451A (zh) | 2021-11-16 |
CN113661451B CN113661451B (zh) | 2022-11-25 |
Family
ID=69146555
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980095308.XA Active CN113661451B (zh) | 2019-04-16 | 2019-04-16 | 程序创建辅助装置、程序创建辅助方法及计算机可读取的记录介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220155746A1 (zh) |
JP (1) | JP6628951B1 (zh) |
CN (1) | CN113661451B (zh) |
WO (1) | WO2020213059A1 (zh) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1241272A (zh) * | 1996-09-26 | 2000-01-12 | 全斯美达有限公司 | 赋予高级微处理器内存储器数据别名的方法和装置 |
JP2003029809A (ja) * | 2001-07-19 | 2003-01-31 | Omron Corp | Cpuユニット並びにプログラマブルコントローラ |
CN101030360A (zh) * | 2006-03-03 | 2007-09-05 | 株式会社瑞萨科技 | 显示控制半导体集成电路 |
CN101861572A (zh) * | 2007-11-19 | 2010-10-13 | 国际商业机器公司 | 控制对数据库的访问的技术 |
CN101944011A (zh) * | 2010-06-29 | 2011-01-12 | 北京中星微电子有限公司 | 运行程序的装置、芯片和方法 |
CN103019873A (zh) * | 2012-12-03 | 2013-04-03 | 华为技术有限公司 | 一种存储器故障单元的替换方法及装置、数据存储系统 |
CN104503905A (zh) * | 2014-12-15 | 2015-04-08 | 北京兆易创新科技股份有限公司 | 一种嵌入式系统的调试方法及调试系统 |
CN105027425A (zh) * | 2013-04-30 | 2015-11-04 | 富士电机株式会社 | 控制装置和映射文件变换装置 |
CN105792751A (zh) * | 2013-11-27 | 2016-07-20 | 雅培糖尿病护理公司 | 用于修正基于永久rom的编程的系统和方法 |
CN106575208A (zh) * | 2014-07-29 | 2017-04-19 | 三菱电机株式会社 | 显示操作系统 |
JP2017215652A (ja) * | 2016-05-30 | 2017-12-07 | 株式会社キーエンス | デバイスモニタ装置、デバイスモニタ方法、デバイスモニタシステム、及びデバイスモニタ装置で実行することが可能なコンピュータプログラム |
CN108027754A (zh) * | 2015-08-13 | 2018-05-11 | 高通股份有限公司 | 在计算机处理系统中存储器子系统维护期间减少系统停机时间 |
CN108572628A (zh) * | 2017-03-14 | 2018-09-25 | 欧姆龙株式会社 | 从机装置、从机装置的控制方法以及非易失性存储媒体 |
-
2019
- 2019-04-16 CN CN201980095308.XA patent/CN113661451B/zh active Active
- 2019-04-16 US US17/434,012 patent/US20220155746A1/en active Pending
- 2019-04-16 WO PCT/JP2019/016329 patent/WO2020213059A1/ja active Application Filing
- 2019-04-16 JP JP2019554570A patent/JP6628951B1/ja active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1241272A (zh) * | 1996-09-26 | 2000-01-12 | 全斯美达有限公司 | 赋予高级微处理器内存储器数据别名的方法和装置 |
JP2003029809A (ja) * | 2001-07-19 | 2003-01-31 | Omron Corp | Cpuユニット並びにプログラマブルコントローラ |
CN101030360A (zh) * | 2006-03-03 | 2007-09-05 | 株式会社瑞萨科技 | 显示控制半导体集成电路 |
CN101861572A (zh) * | 2007-11-19 | 2010-10-13 | 国际商业机器公司 | 控制对数据库的访问的技术 |
CN101944011A (zh) * | 2010-06-29 | 2011-01-12 | 北京中星微电子有限公司 | 运行程序的装置、芯片和方法 |
CN103019873A (zh) * | 2012-12-03 | 2013-04-03 | 华为技术有限公司 | 一种存储器故障单元的替换方法及装置、数据存储系统 |
CN105027425A (zh) * | 2013-04-30 | 2015-11-04 | 富士电机株式会社 | 控制装置和映射文件变换装置 |
CN105792751A (zh) * | 2013-11-27 | 2016-07-20 | 雅培糖尿病护理公司 | 用于修正基于永久rom的编程的系统和方法 |
CN106575208A (zh) * | 2014-07-29 | 2017-04-19 | 三菱电机株式会社 | 显示操作系统 |
CN104503905A (zh) * | 2014-12-15 | 2015-04-08 | 北京兆易创新科技股份有限公司 | 一种嵌入式系统的调试方法及调试系统 |
CN108027754A (zh) * | 2015-08-13 | 2018-05-11 | 高通股份有限公司 | 在计算机处理系统中存储器子系统维护期间减少系统停机时间 |
JP2017215652A (ja) * | 2016-05-30 | 2017-12-07 | 株式会社キーエンス | デバイスモニタ装置、デバイスモニタ方法、デバイスモニタシステム、及びデバイスモニタ装置で実行することが可能なコンピュータプログラム |
CN108572628A (zh) * | 2017-03-14 | 2018-09-25 | 欧姆龙株式会社 | 从机装置、从机装置的控制方法以及非易失性存储媒体 |
Also Published As
Publication number | Publication date |
---|---|
JP6628951B1 (ja) | 2020-01-15 |
JPWO2020213059A1 (ja) | 2021-04-30 |
US20220155746A1 (en) | 2022-05-19 |
WO2020213059A1 (ja) | 2020-10-22 |
CN113661451B (zh) | 2022-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110249274B (zh) | 工业用控制器的程序开发系统和其数据共享方法 | |
US8433827B2 (en) | Method for configuring fieldbus stations | |
JPWO2002042853A1 (ja) | プログラミング装置及びプログラミング方法 | |
KR102258542B1 (ko) | 프로그래머블 컨트롤러, 관리 장치 및 제어 시스템 | |
US8793417B2 (en) | Integration of field devices in a distributed system | |
US11165745B2 (en) | Control system, controller, and control method | |
CN111142466A (zh) | 工程装置、工程装置的控制方法和存储介质 | |
EP3702852B1 (en) | Control device, control method for control device, information processing program, and recording medium | |
CN113661451B (zh) | 程序创建辅助装置、程序创建辅助方法及计算机可读取的记录介质 | |
JP2009157533A (ja) | プログラマブルコントローラシステム | |
JP6292096B2 (ja) | プログラマブルコントローラシステム、その支援装置 | |
JP2006190202A (ja) | データ処理装置、設定データ生成装置、並びに、それらのプログラムおよび記録媒体 | |
JP4366575B2 (ja) | ツール | |
US20210064275A1 (en) | Control System, Development Assistance Device, and Development Assistance Program | |
JP5025562B2 (ja) | プログラマブルコントローラシステム | |
JP2005301520A (ja) | プログラミングシステム | |
CN116909678A (zh) | 一种容器化plc的实现方法及系统、管理服务器 | |
JP2015005224A (ja) | プログラマブルコントローラシステム、その支援装置、プログラマブルコントローラ、プログラム | |
JP6252269B2 (ja) | 制御装置、制御システム、データトレース方法、及びプログラム | |
JP6723493B1 (ja) | 生産支援装置、生産システム及びプログラム | |
JP5079166B1 (ja) | シンボルテーブル生成方法、周辺機器との通信方法およびプログラマブルロジックコントローラ | |
CN114008601B (zh) | 命令变换装置、方法及记录介质 | |
JP5978775B2 (ja) | プログラマブルコントローラ、その支援装置、プログラム、プログラム転送方法 | |
CN110637263B (zh) | 监视辅助装置、监视辅助方法及记录介质 | |
CN113254020A (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 |