JP6664563B1 - Program creation support device, program creation support method, and program creation support program - Google Patents
Program creation support device, program creation support method, and program creation support program Download PDFInfo
- Publication number
- JP6664563B1 JP6664563B1 JP2019552927A JP2019552927A JP6664563B1 JP 6664563 B1 JP6664563 B1 JP 6664563B1 JP 2019552927 A JP2019552927 A JP 2019552927A JP 2019552927 A JP2019552927 A JP 2019552927A JP 6664563 B1 JP6664563 B1 JP 6664563B1
- Authority
- JP
- Japan
- Prior art keywords
- program
- component
- circuit
- common
- common logic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 18
- 238000012790 confirmation Methods 0.000 claims description 13
- 239000000284 extract Substances 0.000 abstract description 14
- 230000006870 function Effects 0.000 description 15
- 238000006243 chemical reaction Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000463 material Substances 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Automation & Control Theory (AREA)
- Programmable Controllers (AREA)
- Stored Programmes (AREA)
Abstract
プログラム作成支援装置(1)は、シーケンスプログラム内の回路全体から共通のロジック部分を抽出し、抽出した共通のロジック部分に含まれる回路部品について、同じ位置の回路部品に対するデバイス割付が全ての共通のロジック部分で一致しているか否かを示す付属情報を生成する共通判定部(13)と、共通のロジック部分と付属情報とに基づいてプログラムコンポーネントを生成するプログラムコンポーネント生成部(プログラム部品登録部(17))と、シーケンスプログラム内の共通のロジック部分の各々を、プログラムコンポーネントとプログラムコンポーネントの入出力引数に接続する回路部品とで置き換える置換部(部品化処理部(19))と、を備え、プログラムコンポーネント生成部は、同じ位置の回路部品に対するデバイス割付が全ての共通のロジック部分で一致している回路部品については、ユーザが入出力引数を生成するか否かを選択することができる。The program creation support apparatus (1) extracts a common logic part from the entire circuit in the sequence program, and regarding circuit parts included in the extracted common logic part, device allocations for circuit parts at the same position are common to all. A common determination unit (13) that generates ancillary information indicating whether or not the logic parts match each other, and a program component generator (a program component registration unit (a program component registration unit ( 17)) and a replacement unit (componentization processing unit (19)) for replacing each common logic part in the sequence program with a program component and a circuit component connected to an input / output argument of the program component, The program component generator is for the circuit components at the same position. The circuit component device assignment is consistent with all common logic part, the user can select whether to generate an output arguments.
Description
本発明は、シーケンスプログラムの作成を支援するプログラム作成支援装置、プログラム作成支援方法およびプログラム作成支援プログラムに関する。 The present invention relates to a program creation support device, a program creation support method, and a program creation support program that support creation of a sequence program.
プログラマブルロジックコントローラ(PLC:Programmable Logic Controller)は、シーケンスプログラムに従って動作を行い、工場などに設置されている被制御機器を制御する制御装置である。 A programmable logic controller (PLC: Programmable Logic Controller) is a control device that operates according to a sequence program and controls a controlled device installed in a factory or the like.
シーケンスプログラムの主要な記述言語としてラダー言語がある。ラダー言語は、リレー回路を模したグラフィカルな表現によるプログラミング言語であり、接点およびコイルといった制御信号を伝搬する回路部品を配置し、それらの接続関係を指定することによって、プログラムを作成できる。なお、制御信号はPLCの内部メモリに割り付けられるが、この内部メモリは「デバイス」と呼ばれる。また、ラダー言語で記述されたシーケンスプログラムはラダープログラムと呼ばれる。ラダープログラムにおいては、XおよびYといった記号と数値とを組み合わせてデバイスを表現し、接点およびコイルのそれぞれにデバイスを割り付けることで信号伝搬を表現している。 There is a ladder language as a main description language of a sequence program. The ladder language is a programming language based on a graphical representation simulating a relay circuit. A program can be created by arranging circuit components such as contacts and coils for transmitting control signals and designating a connection relationship between them. The control signal is allocated to an internal memory of the PLC, and this internal memory is called a “device”. A sequence program described in a ladder language is called a ladder program. In a ladder program, a device is represented by combining symbols such as X and Y and a numerical value, and signal propagation is represented by allocating the device to each of a contact and a coil.
ここで、近年、生産設備の大規模化が進んでおり、これに伴いPLCが制御する被制御機器の数が増加し、シーケンスプログラムも大規模化している。そのため、シーケンスプログラムを効率良く作成できるようにするための技術が提案されている。 Here, in recent years, the scale of production equipment has been increased, and accordingly, the number of controlled devices controlled by the PLC has increased, and the sequence program has also been increased in scale. Therefore, techniques for efficiently creating a sequence program have been proposed.
例えば、特許文献1に記載の発明では、1つのシーケンスプログラムにおいて同じ回路パターンが複数回使用されることに着目し、シーケンスプログラムを効率良く作成できるようにしている。具体的には、特許文献1に記載の発明では、作成済みのシーケンスプログラムから共通の回路パターンを抽出して部品化を行い、部品化された回路パターンであるプログラム部品をその後のシーケンスプログラムの作成などで再利用できるようにしている。 For example, in the invention described in Patent Document 1, attention is paid to the fact that the same circuit pattern is used a plurality of times in one sequence program, and a sequence program can be efficiently created. More specifically, according to the invention described in Patent Document 1, a common circuit pattern is extracted from a created sequence program to make a component, and a program component that is a componentized circuit pattern is created in a subsequent sequence program. And so on.
特許文献1に記載の発明では、プログラム部品の定義、すなわち入出力引数の定義を、自動的に決定する。具体的には、共通の回路パターン内の回路部品(接点、コイル等)に対する全てのデバイス割付が、入出力引数から渡されるものとして、プログラム部品の入出力引数が定義される。よって、例えば、共通回路パターン内に接点が5個、コイルが3個存在する場合、当該共通回路パターンから生成したプログラム部品は、入力引数が5個(=接点数)、出力引数が3個(=コイル数)となる。 In the invention described in Patent Literature 1, the definition of the program component, that is, the definition of the input / output argument is automatically determined. Specifically, the input / output arguments of the program component are defined as all the device assignments to the circuit components (contacts, coils, etc.) in the common circuit pattern are passed from the input / output arguments. Therefore, for example, when there are five contacts and three coils in the common circuit pattern, the program component generated from the common circuit pattern has five input arguments (= the number of contacts) and three output arguments (= the number of contacts). = Coil number).
ところで、共通回路パターンの抽出元となる複数の回路において、デバイス割付が同じ回路部品については、引数として外部からデバイス割付を渡す必要が無く、プログラム部品の引数を省略することが可能である。また、シーケンスプログラムにおいては、使用するプログラム部品の入出力引数の数が少ないほど、可読性および保守性が高くなり、また、プログラム容量を削減することが可能である。しかしながら、特許文献1に記載の発明では、プログラム部品の入出力引数の数を削減すること、すなわち、シーケンスプログラムの可読性および保守性の改善について考慮されていないという問題があった。 By the way, in a plurality of circuits from which a common circuit pattern is extracted, for circuit components having the same device assignment, it is not necessary to pass the device assignment from the outside as an argument, and the argument of the program component can be omitted. In a sequence program, as the number of input / output arguments of a program component to be used is smaller, readability and maintainability are improved, and the program capacity can be reduced. However, the invention described in Patent Literature 1 has a problem in that the number of input / output arguments of a program component is reduced, that is, improvement in readability and maintainability of a sequence program is not considered.
本発明は、上記に鑑みてなされたものであって、シーケンスプログラムの可読性および保守性を高めることが可能なプログラム作成支援装置を得ることを目的とする。 The present invention has been made in view of the above, and an object of the present invention is to provide a program creation support device capable of improving the readability and maintainability of a sequence program.
上述した課題を解決し、目的を達成するために、本発明にかかるプログラム作成支援装置は、シーケンスプログラム内の回路全体から共通のロジック部分を抽出し、抽出した共通のロジック部分に含まれる回路部品について、同じ位置の回路部品に対するデバイス割付が全ての共通のロジック部分で一致しているか否かを示す付属情報を生成する共通判定部、を備える。また、プログラム作成支援装置は、共通判定部が抽出した共通のロジック部分と付属情報とに基づいてプログラムコンポーネントを生成するプログラムコンポーネント生成部と、シーケンスプログラム内の共通のロジック部分の各々を、プログラムコンポーネントとプログラムコンポーネントの入出力引数に接続する回路部品とで置き換える置換部と、を備える。プログラムコンポーネント生成部は、同じ位置の回路部品に対するデバイス割付が全ての共通のロジック部分で一致している回路部品である第1の回路部品の中のユーザに指定された第1の回路部品に対してデバイス割付を行う入出力引数と、第1の回路部品に該当しない回路部品である第2の回路部品にデバイス割付を行う入出力引数と、を有するプログラムコンポーネントを生成する。 In order to solve the above-described problems and achieve the object, a program creation support device according to the present invention extracts a common logic portion from the entire circuit in a sequence program, and includes circuit components included in the extracted common logic portion. And a common determination unit that generates additional information indicating whether or not the device assignment to the circuit component at the same position is the same in all common logic parts. In addition, the program creation support device includes a program component generation unit that generates a program component based on the common logic part and the attached information extracted by the common determination unit, and a common logic part in the sequence program. And a replacement unit that replaces with a circuit component connected to the input / output argument of the program component. Program component generating section, the first circuit component designated by the user in the first circuit component is a circuit component device assignment for the circuit components of the same position is consistent with all common logic part A program component having an input / output argument for performing device assignment and an input / output argument for performing device assignment to a second circuit component, which is a circuit component not corresponding to the first circuit component, is generated .
本発明にかかるプログラム作成支援装置は、シーケンスプログラムの可読性および保守性を高めることができるという効果を奏する。 The program creation support device according to the present invention has an effect that readability and maintainability of a sequence program can be improved.
以下に、本発明の実施の形態にかかるプログラム作成支援装置、プログラム作成支援方法およびプログラム作成支援プログラムを図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。 Hereinafter, a program creation support device, a program creation support method, and a program creation support program according to an embodiment of the present invention will be described in detail with reference to the drawings. The present invention is not limited by the embodiment.
以下の実施の形態において、「共通回路パターンG」と「共通のロジック部分H」とを以下のように区別して説明を行う。
・共通回路パターンG:シーケンスプログラムに共通して現れるロジックのパターン。
・共通のロジック部分H:共通回路パターンGが現れるシーケンスプログラムの箇所(領域)。
以下の説明では、プログラム作成支援装置が取り扱うシーケンスプログラムがラダープログラムであるものとする。In the following embodiments, the “common circuit pattern G” and the “common logic part H” will be separately described as follows.
A common circuit pattern G: a logic pattern commonly appearing in a sequence program.
A common logic portion H: a portion (region) of the sequence program where the common circuit pattern G appears.
In the following description, it is assumed that the sequence program handled by the program creation support device is a ladder program.
実施の形態.
まず、本実施の形態にかかるプログラム作成支援装置の動作の概要について説明する。本実施の形態にかかるプログラム作成支援装置は、少なくとも以下に示す2つの機能を有し、これらの機能を用いて、ユーザによるシーケンスプログラムの作成を支援する。Embodiment.
First, an outline of the operation of the program creation support device according to the present embodiment will be described. The program creation support device according to the present embodiment has at least the following two functions, and uses these functions to assist a user in creating a sequence program.
第1の機能は、シーケンスプログラムの回路全体から部品化可能な共通のロジック部分Hを検索して表示する機能である。シーケンスプログラムであるラダープログラムは、接点またはコイルに相当する命令と、数値演算などに相当する応用命令とで構成されている。したがって、プログラム作成支援装置は、接点に相当する命令である接点相当命令、コイルに相当する命令であるコイル相当命令、および数値演算などに相当する応用命令のロジックのみで共通している共通回路パターンGと、プログラム箇所(共通のロジック部分H)とを検索し表示する。検索された共通回路パターンGが、プログラムコンポーネントであるプログラム部品(マクロ、サブルーチンなど)の候補である。 The first function is a function of searching for and displaying a common logic part H that can be made into components from the entire circuit of the sequence program. A ladder program, which is a sequence program, includes instructions corresponding to contacts or coils and application instructions corresponding to numerical operations and the like. Therefore, the program creation support device uses a common circuit pattern that is common only to the logic of a contact equivalent command, which is an instruction equivalent to a contact, a coil equivalent instruction, which is an instruction equivalent to a coil, and an application instruction equivalent to a numerical operation. G and a program location (common logic portion H) are searched and displayed. The searched common circuit pattern G is a candidate for a program component (macro, subroutine, etc.) which is a program component.
第2の機能は、第1の機能で検索した共通回路パターンGの何れかがユーザによって選択されると、選択された共通回路パターンGをプログラム部品に変換(部品化を実行)して登録する機能である。また、第2の機能は、第1の機能で検索した共通のロジック部分Hを、登録したプログラム部品のインスタンスで置き換えることで、シーケンスプログラムを自動的に部品化する。 The second function is that when any one of the common circuit patterns G searched by the first function is selected by the user, the selected common circuit pattern G is converted (executed into components) into program components and registered. Function. The second function automatically converts the sequence program into a component by replacing the common logic part H retrieved by the first function with an instance of the registered program component.
ここで、上記の第1の機能において共通のロジック部分Hを検索する際、プログラム作成支援装置は、回路中の接点およびコイルといった各回路部品に対するデバイス割付が一致するかどうかという情報を保持しておく。つまり、抽出した共通回路パターンGにおいて、その元となる共通のロジック部分Hの全てで、同じ座標に配置された回路部品に対するデバイス割付が一致するかどうかを付属情報として保持しておく。ここでの座標は、回路部品の回路パターン内の位置を示す。よって、同じ座標に配置された回路部品とは、共通回路パターンG内の同じ場所に配置された回路部品である。 Here, when searching for the common logic part H in the first function described above, the program creation support device holds information indicating whether or not device assignments to respective circuit components such as contacts and coils in the circuit match. deep. That is, in the extracted common circuit pattern G, whether or not the device assignments to the circuit components arranged at the same coordinates match in all of the original common logic parts H is stored as additional information. The coordinates here indicate the position of the circuit component in the circuit pattern. Therefore, the circuit components arranged at the same coordinates are the circuit components arranged at the same position in the common circuit pattern G.
また、上記の第2の機能においてプログラム部品を生成する際、プログラム作成支援装置は、第1の機能で共通のロジック部分Hを検索する際に保持しておいた付属情報に基づいて、プログラム部品の引数を決定する。具体的には、プログラム作成支援装置は、共通のロジック部分Hの間で、同じ座標に配置されているがデバイス割付が一致しない回路部品が存在する場合、この回路部品にデバイスを割付けるための引数を有するプログラム部品を生成する。 Further, when the program function is generated in the second function, the program creation support device uses the program component based on the attached information held when searching for the common logic part H in the first function. Determine the argument of Specifically, when there is a circuit component that is arranged at the same coordinates but does not have the same device assignment between the common logic parts H, the program creation support device assigns a device to this circuit component. Generate a program part having arguments.
これにより、プログラム作成支援装置が生成するプログラム部品の入出力引数が必要以上に多くなるのを防止することができ、シーケンスプログラムの可読性および保守性を高めることができる。また、シーケンスプログラムの容量を削減することができる。 As a result, it is possible to prevent the number of input / output arguments of the program components generated by the program creation support device from becoming unnecessarily large, and to improve the readability and maintainability of the sequence program. Further, the capacity of the sequence program can be reduced.
図1は、実施の形態にかかるプログラム作成支援装置によるプログラム部品の生成動作の概要を示す図である。 FIG. 1 is a diagram illustrating an outline of a program component generation operation performed by the program creation support device according to the embodiment.
図1のフェーズ(A)に示すように、プログラム作成支援装置は、シーケンスプログラム内から共通のロジック部分Hを抽出する。ここでは、プログラム作成支援装置は、回路ブロック2a〜4aの配置されているブロックを共通のロジック部分Hとして抽出する。 As shown in phase (A) of FIG. 1, the program creation support device extracts a common logic part H from within a sequence program. Here, the program creation support device extracts a block in which the circuit blocks 2a to 4a are arranged as a common logic part H.
さらに、図1のフェーズ(B)に示すように、プログラム作成支援装置は、回路ブロック2a〜4aのロジックに基づいて、部品化可能な共通回路パターンGを設定する。換言すると、プログラム作成支援装置は、回路ブロック2a〜4aに共通なロジックを共通回路パターンGに設定する。これにより、プログラム作成支援装置は、回路ブロック2a〜4aを共通回路パターンGとして扱う。 Further, as shown in phase (B) of FIG. 1, the program creation support device sets a common circuit pattern G that can be made into components based on the logic of the circuit blocks 2a to 4a. In other words, the program creation support device sets the logic common to the circuit blocks 2a to 4a in the common circuit pattern G. Thus, the program creation support device treats the circuit blocks 2a to 4a as the common circuit pattern G.
このとき、プログラム作成支援装置は、抽出した回路ブロック2a〜4aにおいて、同じ座標の回路部品に対するデバイス割付が一致するかどうかを確認し、確認結果を示す情報(デバイス割付が一致するか否かを示す情報)を保持する。図1に示した例では、回路ブロック2a〜4aの左上に位置する回路部品の座標を(0,0)とし、この部品の右隣に位置する回路部品の座標を(1,0)、さらに右隣に位置する回路部品の座標を(2,0)としている。また、左上に位置する回路部品の一つ下に位置する回路部品の座標を(0,1)、この部品の右隣に位置する回路部品の座標を(1,1)、さらに右隣に位置する回路部品の座標を(2,1)としている。なお、各回路部品の位置を示す座標の決め方はこれに限定されない。また、各回路部品の配置を座標で示すことは必須ではない。回路ブロック内の各回路部品の配置が分かるのであれば座標以外の情報を用いて各回路部品の配置を示してもよい。 At this time, in the extracted circuit blocks 2a to 4a, the program creation support device confirms whether or not the device assignments to the circuit components having the same coordinates match, and information indicating the confirmation result (whether or not the device assignments match). Information). In the example shown in FIG. 1, the coordinates of the circuit component located on the upper left of the circuit blocks 2a to 4a are (0, 0), the coordinates of the circuit component located on the right of this component are (1, 0), and The coordinates of the circuit component located on the right side are (2, 0). Also, the coordinates of the circuit component located immediately below the circuit component located at the upper left are (0, 1), the coordinates of the circuit component located on the right of this component are (1, 1), and the coordinates of the circuit component located on the right are further located on the right. The coordinates of the circuit component to be executed are (2, 1). The method of determining the coordinates indicating the position of each circuit component is not limited to this. It is not essential to indicate the arrangement of each circuit component by coordinates. If the arrangement of each circuit component in the circuit block is known, the arrangement of each circuit component may be indicated using information other than the coordinates.
図1に示した例では、座標が(0,0)および(1,1)の回路部品に対するデバイス割付が回路ブロック2a〜4aの間で一致しておらず、その他の座標の回路部品に対するデバイス割付は回路ブロック2a〜4aの間で一致している。そのため、プログラム作成支援装置は、フェーズ(B)において、座標が(0,0)および(1,1)の回路部品に対するデバイス割付が回路ブロック2a〜4aの間で一致しておらず、座標が(1,0)、(2,0)、(0,1)および(2,1)の回路部品に対するデバイス割付が回路ブロック2a〜4aの間で一致していることを示す情報を生成して保持する。なお、これ以降の説明では、必要に応じて、デバイス割付が全ての共通のロジック部分H(図1では回路ブロック2a〜4a)の間で一致している回路部品を第1の回路部品と称し、第1の回路部品に該当しない回路部品を第2の回路部品と称する。 In the example shown in FIG. 1, the device allocation for the circuit components having the coordinates (0, 0) and (1, 1) does not match among the circuit blocks 2a to 4a, and the devices for the circuit components having the other coordinates are different. The assignment is the same among the circuit blocks 2a to 4a. Therefore, in the phase (B), the program creation support device does not match the device allocation to the circuit components having the coordinates (0, 0) and (1, 1) among the circuit blocks 2a to 4a, and Generating information indicating that device assignments to the circuit components of (1, 0), (2, 0), (0, 1), and (2, 1) match among the circuit blocks 2a to 4a; Hold. In the following description, a circuit component having the same device assignment among all the common logic portions H (the circuit blocks 2a to 4a in FIG. 1) will be referred to as a first circuit component, if necessary. A circuit component that does not correspond to the first circuit component is referred to as a second circuit component.
次に、図1のフェーズ(C)に示すように、プログラム作成支援装置は、フェーズ(B)で生成して保持している情報に基づいて、プログラム部品の入出力引数の生成指定画面である画面101を表示装置に表示させる。そして、プログラム作成支援装置は、入出力引数を生成する回路部品の選択をユーザから受け付ける。ここで、デバイス割付が不一致の回路部品、すなわち、デバイス割付が回路ブロック2a〜4aの間で完全には一致していない第2の回路部品については、必ず入出力引数を生成することとする。そのため、図1に示した画面101では、座標が(0,0)の回路部品および座標が(1,1)の回路部品については入出力引数を必ず生成することがユーザに分かるような表示を行い、ユーザによる選択操作を受け付けない構成としている。
Next, as shown in phase (C) of FIG. 1, the program creation support device is a screen for specifying the input / output argument of the program component based on the information generated and held in phase (B). The
プログラム作成支援装置は、入出力引数を生成する第1の回路部品のユーザによる選択が終了すると、フェーズ(D)に移行する。すなわち、プログラム作成支援装置は、入出力引数を生成する第1の回路部品の選択を終了する操作をユーザから受け付けると、プログラム部品への置き換え後のイメージ確認画面である画面102を表示装置に表示させる。図1に例示した画面102では、プログラム部品への置き換えを行う前のシーケンスプログラムを左側に表示し、プログラム部品への置き換えを行った後のシーケンスプログラムを右側に表示する構成としている。また、画面102では、どの回路ブロックがプログラム部品に置き換えられたのかが分かるように、プログラム部品と回路ブロックとを対応付けた表示内容としている。画面102の右側の表示内容は、フェーズ(C)においてユーザから受け付けた操作内容に従う。図1に例示した画面102では、座標が(2,0)の回路部品であるコイルに対する引数の生成がユーザにより選択された場合のプログラム部品が表示されている。
Upon completion of the user's selection of the first circuit component for generating the input / output argument, the program creation support device proceeds to phase (D). That is, when receiving from the user an operation of ending the selection of the first circuit component for generating the input / output argument, the program creation support device displays the
ユーザは、画面102を確認後、プログラム部品の生成および回路ブロックのプログラム部品への置き換えを行う場合、画面102の右下の「OK(実行)」ボタンを押下する。また、ユーザは、画面102を確認後、入出力引数を生成する回路部品の選択を再度行う場合、画面102の右下の「キャンセル」ボタンを押下する。「キャンセル」ボタンが押下されると、プログラム作成支援装置は、フェーズ(C)に戻る。
After confirming the
プログラム作成支援装置は、画面102の「OK(実行)」ボタンが押下されると、図1のフェーズ(E)に移行してプログラム部品であるFB(Function Block)を生成する。このとき、プログラム作成支援装置は、フェーズ(D)で表示装置に表示させた画面102の右側に示された構成のプログラム部品を生成する。
When the “OK (execute)” button on the
そして、プログラム部品の生成が終了すると、プログラム作成支援装置は、図1のフェーズ(F)に移行し、フェーズ(A)で抽出した回路ブロック2a〜4aを、フェーズ(E)で生成したプログラム部品に置き換えて回路ブロック2b〜4bとする。 Then, when the generation of the program component is completed, the program creation support device proceeds to the phase (F) in FIG. 1 and replaces the circuit blocks 2a to 4a extracted in the phase (A) with the program component generated in the phase (E). And circuit blocks 2b to 4b.
このような手順により、プログラム作成支援装置は、シーケンスプログラムからプログラム部品を生成し、さらに、シーケンスプログラムの回路ブロックのうち、生成したプログラム部品に置き換えが可能な回路ブロックをプログラム部品に置き換える。また、プログラム作成支援装置は、生成したプログラム部品を保持しておき、他のシーケンスプログラムの編集、他のシーケンスプログラムの開発などを行う際に使用できるようにする。 According to such a procedure, the program creation support device generates a program component from the sequence program, and further, among the circuit blocks of the sequence program, replaces a circuit block that can be replaced with the generated program component with the program component. In addition, the program creation support device holds the generated program component so that it can be used when editing another sequence program, developing another sequence program, and the like.
図2は、実施の形態にかかるプログラム作成支援装置を含んで構成されるプログラム作成システムの構成を示す図である。プログラム作成システム100は、プログラム作成支援装置1、シーケンスプログラム作成装置2、シーケンスプログラム編集装置3および表示装置5を備える。なお、本実施の形態では、プログラム作成支援装置1、シーケンスプログラム作成装置2、シーケンスプログラム編集装置3および表示装置5が個別の装置であるものとして説明を行うが、これらの各装置が有する各機能を1つの装置、例えばパーソナルコンピュータなどの計算機システムで実現するようにしてもよい。
FIG. 2 is a diagram illustrating a configuration of a program creation system including the program creation support device according to the embodiment. The
プログラム作成支援装置1は、上述したように、シーケンスプログラムから共通のロジック部分Hを抽出し、ユーザからの指示に従いプログラム部品を生成する。 As described above, the program creation support device 1 extracts the common logic part H from the sequence program, and generates a program component according to an instruction from the user.
シーケンスプログラム作成装置2は、シーケンサとも呼ばれるPLC(Programmable Logic Controller)システムなどで動作させるシーケンスプログラムを作成する装置である。シーケンスプログラム作成装置2は、作成したシーケンスプログラムをプログラム作成支援装置1に入力する。
The sequence
シーケンスプログラム編集装置3は、プログラム作成支援装置1でプログラム部品に置き換えられたシーケンスプログラムを用いてシーケンスプログラムの編集を行う装置である。表示装置5は、液晶モニタなどであり、プログラム作成支援装置1からの指示に従って、シーケンスプログラム、共通回路パターンG、プログラム部品などを表示する。 The sequence program editing device 3 is a device that edits a sequence program using the sequence program replaced by the program component in the program creation support device 1. The display device 5 is a liquid crystal monitor or the like, and displays a sequence program, a common circuit pattern G, a program component, and the like in accordance with an instruction from the program creation support device 1.
プログラム作成支援装置1は、プログラム入力部11と、プログラム格納部12と、共通判定部13と、検索結果記憶部14と、検索結果表示処理部15と、指示入力部16と、プログラム部品登録部17と、プログラム部品格納部18と、部品化処理部19と、出力部20と、部品定義表示処理部21と、部品化イメージ表示処理部22とを備えている。
The program creation support device 1 includes a program input unit 11, a
プログラム入力部11は、シーケンスプログラム作成装置2から入力されるシーケンスプログラムを受け取り、受け取ったシーケンスプログラムをプログラム格納部12に送る。
The program input unit 11 receives a sequence program input from the sequence
プログラム格納部12は、共通のロジック部分Hが検索されるシーケンスプログラム(部品化対象のプログラム)を記憶しておくメモリなどである。プログラム格納部12は、プログラム入力部11からシーケンスプログラムを受け取ると、受け取ったシーケンスプログラムを保持する。また、プログラム格納部12は、シーケンスプログラム編集装置3から要求を受けるなどした場合、要求されたシーケンスプログラムを出力部20へ出力する。出力部20へ出力されたシーケンスプログラムは、出力部20からシーケンスプログラム編集装置3に受け渡される。また、プログラム格納部12は、保持しているシーケンスプログラムを構成している回路ブロックのうち、プログラム部品の生成に用いられた回路ブロックが後述する部品化処理部19によってプログラム部品に置き換えられる処理である置換処理が行われた場合、置換処理後のシーケンスプログラムを保持する。
The
共通判定部13は、プログラム格納部12に格納されているシーケンスプログラムを読み込んで、その中に共通のロジック部分Hがあるか否かを判定する。共通判定部13は、共通のロジック部分Hがある場合、共通のロジック部分Hにおける共通のロジックを共通回路パターンGとして抽出する。換言すると、共通判定部13は、共通のロジック部分Hに配置されている回路パターンに共通して現れるロジックのパターンを共通回路パターンGとして抽出する。なお、プログラム作成支援装置1は、シーケンスプログラムに共通のロジック部分Hが存在しているかを判定する際、公知のコードクローン検出手法などを利用する。コードクローン検出手法とは、プログラムを表すソースコードの中から、類似しているコード片を探し出す方法である。ソースコードを構成している、類似しているコード片がコードクローンと呼ばれる。
The common determination unit 13 reads a sequence program stored in the
また、共通判定部13は、共通のロジック部分H全てで、同じ座標に配置された回路部品に対するデバイス割付が一致するかどうかを確認し、確認結果を示す情報として、共通回路パターンGの付属情報を生成する。共通判定部13は、複数の共通のロジック部分Hに含まれる複数の回路部品のそれぞれについて、デバイス割付が全ての共通のロジック部分Hで一致しているか否かを確認し、確認結果を示す付属情報を生成する。付属情報は、共通のロジック部分Hに含まれる複数の回路部品のそれぞれについての確認結果を示す。例えば、共通のロジック部分Hが4つの回路部品#1〜回路部品#4を含む場合、付属情報は、回路部品#1に対するデバイス割付が全ての共通のロジック部分Hで一致しているか否かの情報と、回路部品#2に対するデバイス割付が全ての共通のロジック部分Hで一致しているか否かの情報と、回路部品#3に対するデバイス割付が全ての共通のロジック部分Hで一致しているか否かの情報と、回路部品#4に対するデバイス割付が全ての共通のロジック部分Hで一致しているか否かの情報と、を含んで構成される。
Further, the common determination unit 13 checks whether or not the device assignments to the circuit components arranged at the same coordinates match in all the common logic parts H, and as the information indicating the check result, the additional information of the common circuit pattern G Generate The common determination unit 13 confirms whether or not the device assignment is the same for all of the plurality of circuit components included in the plurality of common logic parts H in all the common logic parts H, and indicates the confirmation result. Generate information. The attached information indicates a confirmation result for each of the plurality of circuit components included in the common logic part H. For example, when the common logic portion H includes four circuit components # 1 to # 4, the attached information indicates whether the device assignment to the circuit component # 1 is the same for all the common logic portions H. The information indicates whether the device assignment to the
検索結果記憶部14は、共通判定部13が抽出した共通回路パターンGの情報および付属情報を、検索結果として記憶しておくメモリなどである。すなわち、検索結果記憶部14は、共通判定部13で共通回路パターンGが抽出されると、抽出された共通回路パターンGの構成を示す情報と付属情報とを受け取り、受け取った各情報を検索結果として保持する。以下、共通回路パターンGの構成を示す情報を構成情報と称する。
The search
検索結果表示処理部15は、検索結果記憶部14が保持している検索結果を、一覧形式で表示装置5に表示させる。検索結果表示処理部15は、表示中の検索結果内からユーザによって部品化する共通回路パターンGが選択されると、選択された共通回路パターンGの構成情報および付属情報を、共通回路パターンGに関する情報として部品定義表示処理部21に送る。
The search result
指示入力部16は、ユーザによって入力される指示を受け取り、指示内容を示す情報を検索結果表示処理部15、部品定義表示処理部21および部品化イメージ表示処理部22の一部または全てに出力する。ユーザによる指示は、検索に関する指示である検索指示、部品化に関する指示である部品指定指示、引数生成要否指示および部品化確定指示、または出力に関する指示である出力指示、などである。
The
検索指示は、シーケンスプログラム内から共通回路パターンGを検索させる指示であり、指示入力部16から共通判定部13に送られる。部品指定指示は、検索結果の中から部品化する共通回路パターンGを指定する指示であり、指示入力部16から検索結果表示処理部15に送られる。引数生成要否指示は、共通回路パターンGに対するプログラム部品の入出力引数の生成要否を指定する指示であり、指示入力部16から部品定義表示処理部21に送られる。部品化確定指示は、シーケンスプログラム内の一部の回路ブロックをプログラム部品に置き換えた後のイメージの確認結果を基に、部品化を確定するかキャンセルするかを指定する指示である。部品化確定指示は、指示入力部16から部品化イメージ表示処理部22に送られる。出力指示は、シーケンスプログラムを外部装置であるシーケンスプログラム編集装置3などに出力させる指示であり、指示入力部16から出力部20に送られる。
The search instruction is an instruction to search the common circuit pattern G from within the sequence program, and is sent from the
プログラム部品登録部17は、後述する部品化イメージ表示処理部22からプログラム部品の定義情報が送られてくると、送られてきた定義情報に基づいて、共通回路パターンGをプログラム部品に変換して部品化を行う。すなわち、プログラム部品登録部17は、共通回路パターンGおよび定義情報に基づいてプログラムコンポーネントであるプログラム部品を生成するプログラムコンポーネント生成部である。また、プログラム部品登録部17は、生成したプログラム部品をプログラム部品格納部18に登録する。
Upon receiving the program component definition information from the componentized image
プログラム部品格納部18は、プログラム部品登録部17からの指示に従ってプログラム部品を格納するメモリなどである。プログラム部品格納部18は、プログラム部品登録部17から受け取ったプログラム部品を保持する。プログラム部品格納部18は、部品化処理部19がシーケンスプログラムの回路ブロックをプログラム部品に置換する処理を行う際、保持しているプログラム部品を部品化処理部19に出力する。
The program
部品化処理部19は、プログラム格納部12に格納されているシーケンスプログラムの中の共通のロジック部分Hを、プログラム部品格納部18が保持しているプログラム部品に置き換える。部品化処理部19は、置換後のシーケンスプログラムをプログラム格納部12に記憶させる。
The
出力部20は、指示入力部16から出力指示が送られてきた場合、出力指示で指定されたシーケンスプログラムをプログラム格納部12から読み出して外部装置であるシーケンスプログラム編集装置3に出力する。シーケンスプログラム編集装置3に加えて他の外部装置が出力部20に接続されている場合、出力部20は、出力指示で指定されたシーケンスプログラムを、出力指示で指定された外部装置に出力する。
When an output instruction is sent from the
部品定義表示処理部21は、検索結果表示処理部15から送られてきた共通回路パターンGに関する情報に基づき、プログラム部品の入出力引数の生成指定画面(図1に示した画面101に相当)を表示装置5に表示させる。部品定義表示処理部21は、プログラム部品の入出力引数の生成指定画面を表示させた状態で、生成する入出力引数の指定をユーザより受け付ける。部品定義表示処理部21は、生成する入出力引数のユーザによる指定が終了すると、ユーザによる指定結果に基づいてプログラム部品の定義情報を生成し、生成した定義情報を部品化イメージ表示処理部22に送る。
The component definition
部品化イメージ表示処理部22は、部品定義表示処理部21から送られてきたプログラム部品の定義情報に基づき、共通のロジック部分Hをプログラム部品に置換後のシーケンスプログラムのイメージ(確認用画面)を作成し、表示装置5に表示させる。具体的には、部品化イメージ表示処理部22は、図1に示した画面102に相当する画面を表示装置5に表示させる。また、部品化イメージ表示処理部22は、置換後のシーケンスプログラムの確認用画面を表示装置5に表示させた状態で、実際に置換を行うか否かの判断結果の入力をユーザより受け付ける。部品化イメージ表示処理部22は、置換を行うことを示す判断結果の入力を受け付けると、部品定義表示処理部21から受け取ったプログラム部品の定義情報をプログラム部品登録部17に送る。一方、部品化イメージ表示処理部22は、置換を行わないことを示す判断結果の入力を受け付けると、判断結果を部品定義表示処理部21に通知する。通知を受けた部品定義表示処理部21は、プログラム部品の入出力引数の生成指定画面を表示装置5に再度表示させて、生成する入出力引数の指定をユーザより受け付ける。
The componentized image
図3は、実施の形態にかかるプログラム作成支援装置1の動作の一例を示すフローチャートである。図3のフローチャートは、プログラム作成支援装置1が、シーケンスプログラムからプログラム部品を作成し、共通のロジック部分Hをプログラム部品に置き換えたシーケンスプログラムを生成する場合の処理手順を示す。 FIG. 3 is a flowchart illustrating an example of an operation of the program creation support device 1 according to the embodiment. The flowchart of FIG. 3 shows a processing procedure when the program creation support apparatus 1 creates a program part from a sequence program and generates a sequence program in which the common logic part H is replaced with the program part.
プログラム作成支援装置1は、シーケンスプログラムをプログラム格納部12で保持しているものとする。すなわち、プログラム作成支援装置1のプログラム入力部11が、シーケンスプログラム作成装置2からシーケンスプログラムを受け取り、受け取ったシーケンスプログラムをプログラム格納部12に格納する処理が完了しているものとする。
It is assumed that the program creation support device 1 holds a sequence program in the
プログラム作成支援装置1は、共通のロジック部分Hの検索指示を受け付けて、プログラム部品化処理を開始する(ステップS1)。すなわち、ユーザによって、指示入力部16から共通回路パターンG(共通のロジック部分H)の検索指示が入力されると、検索指示は、指示入力部16から共通判定部13に送られる。これにより、プログラム作成支援装置1はプログラム部品化処理を開始する。
The program creation support device 1 receives a search instruction for the common logic part H, and starts a program componentization process (step S1). That is, when the user inputs a search instruction for the common circuit pattern G (common logic part H) from the
共通判定部13は、指示入力部16から検索指示を受け取ると、プログラム格納部12が保持しているシーケンスプログラムから共通回路パターンGを抽出する。共通判定部13は、例えば、シーケンスプログラムから共通のロジック部分Hを抽出し、この共通のロジック部分Hに配置されている回路ブロック(図1に示した回路ブロック2a〜4aなど)から共通回路パターンGを抽出する(ステップS2)。また、共通判定部13は、抽出した共通のロジック部分Hを構成する各回路部品について、回路部品に対するデバイス割付が全ての共通のロジック部分Hで一致しているか否かを確認し、確認結果を示す付属情報を生成する。付属情報は、共通のロジック部分Hを構成する回路部品のそれぞれが、第1の回路部品および第2の回路部品のどちらに該当するかを示す情報である。
When receiving the search instruction from the
共通判定部13は、共通回路パターンGの抽出および付属情報の生成が終了すると、抽出した共通回路パターンGの構成情報および付属情報と、この共通回路パターンGの件数とを対応付けして検索結果記憶部14に格納する(ステップS3)。 When the extraction of the common circuit pattern G and the generation of the additional information are completed, the common determination unit 13 associates the extracted configuration information and the additional information of the common circuit pattern G with the number of the common circuit patterns G and associates the search result. It is stored in the storage unit 14 (step S3).
また、共通判定部13は、共通のロジック部分Hの場所と、共通のロジック部分Hが抽出されたシーケンスプログラムを識別する情報であるプログラム識別情報とを対応付けして部品化処理部19に送る。共通のロジック部分Hの場所は、たとえば、ラダープログラムの行番号である。
In addition, the common determination unit 13 associates the location of the common logic part H with program identification information that is information for identifying a sequence program from which the common logic part H has been extracted, and sends it to the
検索結果記憶部14は共通判定部13から情報を受け取ると、受け取った情報を記憶する。検索結果表示処理部15は、共通判定部13から出力された情報が検索結果記憶部14に格納されると、検索結果記憶部14が保持している情報に基づいて、共通判定部13により抽出された共通回路パターンGの構成および件数を表示装置5に一覧表示させる。表示装置5は、例えば、図1に示した共通回路パターンGと、その件数(図1では3件)を表示する(ステップS4)。共通判定部13から出力された情報が検索結果記憶部14に格納されたか否かは、例えば、検索結果表示処理部15が検索結果記憶部14の状態を定期的に確認することにより把握する。なお、共通判定部13が、情報を検索結果記憶部14に格納したことを検索結果表示処理部15に通知してもよい。
When receiving the information from the common determination unit 13, the search
ステップS4を実行後、プログラム作成支援装置1は、ユーザによって、部品化する共通回路パターンGが選択されるのを待つ。指示入力部16は、部品化する共通回路パターンGの選択をユーザより受け付けると(ステップS5)、選択された共通回路パターンGを示す部品指定指示を生成して検索結果表示処理部15に送る。検索結果表示処理部15は、部品指定指示が示す共通回路パターンGの構成情報および付属情報を検索結果記憶部14から読み出して、部品定義表示処理部21に送る。
After executing step S4, the program creation support device 1 waits for the user to select the common circuit pattern G to be made into a component. When receiving the selection of the common circuit pattern G to be made into a component from the user (step S5), the
部品定義表示処理部21は、共通回路パターンGの構成情報および付属情報を検索結果表示処理部15から受け取ると、受け取った情報に基づいて、ステップS5でユーザに選択された共通回路パターンGに対応するプログラム部品の入出力引数の生成指定画面を表示装置5に表示させる(ステップS6)。部品定義表示処理部21は、ステップS6において、例えば、図4に示した内容の画面をプログラム部品の入出力引数の生成指定画面として表示装置5に表示させる。図4は、プログラム部品の入出力引数の生成指定画面の一例を示す図である。プログラム部品の入出力引数の生成指定画面は、プログラム部品の入出力引数として生成する引数をユーザに指定させる場合に表示される。すなわち、プログラム作成支援装置1は、プログラム部品の入出力引数として生成する引数の指定をユーザから受け付ける場合にプログラム部品の入出力引数の生成指定画面を表示装置5に表示させる。図4に例示したプログラム部品の入出力引数の生成指定画面(以下、画面101と記載する)は、「座標」、「回路記号」、「デバイス割付の一致・不一致」および「入出力引数の生成要否」を含む。「座標」は、共通回路パターンGに含まれる各回路部品の共通回路パターンGにおける位置を示す。「回路記号」は、同じ行の「座標」が示す位置に存在する回路部品の種類を示す。「デバイス割付の一致・不一致」は、同じ行の「座標」が示す位置に存在する回路部品に対するデバイス割付が、共通のロジック部分Hの全てにおいて一致しているか否かを示す。すなわち、「デバイス割付の一致・不一致」は、同じ行の「座標」が示す位置に存在する回路部品が第1の回路部品および第2の回路部品のどちらに該当するのかを示す。「デバイス割付の一致・不一致」が「一致」となっている回路部品(第1の回路部品)については、回路部品に割付けられているデバイスを合わせて表示するようにしている。例えば、座標が(1,0)の回路部品に割付けられているデバイスは「M2」である。「入出力引数の生成要否」は、同じ行の「座標」が示す位置に存在する回路部品にデバイスを割付けるための入出力引数を生成するか否かを示す。ユーザは、表示装置5に画面101が表示されている状態のときに、マウスなどの入力装置を操作して「入出力引数の生成要否」の項目にチェックを入れる、またはチェックを外すことで、生成する入出力引数の指定を変更する。ただし、「デバイス割付の一致・不一致」が「不一致」となっている回路部品(第2の回路部品)については入出力引数の生成が必須である。そのため、プログラム作成支援装置1は、「デバイス割付の一致・不一致」が「不一致」となっている回路部品の「入出力引数の生成要否」はチェックが入った状態で固定とし、ユーザによるチェックを外す操作を受け付けることはしない。
When the component definition
ステップS6を実行後、プログラム作成支援装置1は、図4に示した画面101を表示装置5に表示させた状態で、ユーザによって、プログラム部品の生成する入出力引数が選択され、選択操作が終了するのを待つ。指示入力部16は、ユーザによる選択操作が終了すると、すなわち、生成する入出力引数の選択をユーザより受け付けると(ステップS7)、選択された入出力引数を示す引数生成要否指示を生成して部品定義表示処理部21に送る。指示入力部16は、例えば、図4では記載を省略している選択操作終了ボタンがユーザにより押下された場合、引数生成要否指示を生成する。ここでは、図4に示した画面101の内容に従って引数生成要否指示を生成するものとして説明を続ける。すなわち、ユーザが、座標(2,0)のコイルに対してデバイスを割付けるための入出力引数の生成を指定したものとして説明を続ける。この場合、引数生成要否指示は、座標(0,0)のa接点、座標(2,0)のコイルおよび座標(1,1)のb接点にそれぞれに対してデバイスを割付けるための入出力引数の生成を指定する情報を含む。なお、上記のステップS6およびS7を実行する部品定義表示処理部21および指示入力部16は、第1の回路部品の中から、共通のロジック部分Hがプログラム部品に置き換えられた後に入出力引数を用いたデバイス割付が必要な第1の回路部品をユーザに選択させる選択受付部を構成する。
After executing step S6, the program creation support device 1 selects the input / output argument to be generated by the program component with the
部品定義表示処理部21は、引数生成要否指示を受け取ると、受け取った引数生成要否指示と、検索結果表示処理部15から受け取って保持している共通回路パターンGの構成情報とを、部品化イメージ表示処理部22に送る。
When receiving the argument generation necessity instruction, the component definition
部品化イメージ表示処理部22は、部品定義表示処理部21から引数生成要否指示と、共通回路パターンGの構成情報とを受け取ると、受け取った情報を保持する。また、部品化イメージ表示処理部22は、部品定義表示処理部21から受け取った情報と、プログラム格納部12で保持されているシーケンスプログラムとに基づいて、共通のロジック部分Hをプログラム部品に置き換えた後のシーケンスプログラムの確認用画面を表示装置5に表示させる(ステップS8)。部品化イメージ表示処理部22は、ステップS8において、例えば、図5に示した内容の画面を置換処理実行後のシーケンスプログラムの確認用画面として表示装置5に表示させる。図5は、置換処理実行後のシーケンスプログラムの確認用画面の一例を示す図である。置換処理実行後のシーケンスプログラムの確認用画面は、共通のロジック部分Hがプログラム部品で置き換えられた後のシーケンスプログラムの構成を確認するための画面である。すなわち、部品化イメージ表示処理部22は、プログラム部品で置き換えられた後のシーケンスプログラムの構成を確認するための画面を表示装置5に表示させる確認表示処理部である。図5に示した置換処理実行後のシーケンスプログラムの確認用画面(以下、画面102と記載する)は、置換前のシーケンスプログラムと、置換後のシーケンスプログラムとを横に並べた構成である。画面102の左側が、共通のロジック部分Hをプログラム部品に置き換える前のシーケンスプログラム(置換前のプログラム)、画面102の右側が、共通のロジック部分Hをプログラム部品に置き換えた後のシーケンスプログラム(置換後のプログラム)である。部品化イメージ表示処理部22は、置換前のシーケンスプログラムのサイズおよび置換後のシーケンスプログラムのサイズを計算して画面102に表示させてもよい。この場合、共通のロジック部分Hをプログラム部品に置換することによるプログラムサイズの削減効果をユーザが事前に知ることが可能となり、置換を実行するか否かの判断材料とすることができる。図5では、1つの共通のロジック部分Hについて、プログラム部品に置き換えた後のシーケンスプログラムの構成を表示する画面の例を示したが、複数の共通のロジック部分Hについて、プログラム部品に置き換えた後のシーケンスプログラムの構成を表示するようにしてもよい。また、部品化イメージ表示処理部22は、ユーザからの操作に従い画面102の表示を上下にスクロールさせ、共通のロジック部分Hのすべてについて、プログラム部品に置き換えた後のシーケンスプログラムの構成をユーザが確認できるようにしてもよい。
When the componentized image
ステップS8を実行後、プログラム作成支援装置1は、図5に示した画面102を表示装置5に表示させた状態で、ユーザによって、プログラム部品による共通のロジック部分Hの置き換えを実行するか否かが選択されるのを待つ(ステップS9)。指示入力部16は、画面102の右下の「OK(実行)」ボタンが押下されると、すなわち、プログラム部品による共通のロジック部分Hの置き換えの実行が選択されると(ステップS9:実行)、部品化確定指示を生成して部品化イメージ表示処理部22に送る。また、指示入力部16は、画面102の右下の「キャンセル」ボタンが押下されると、すなわち、プログラム部品による共通のロジック部分Hの置き換えを実行しないことが選択されると(ステップS9:キャンセル)、キャンセル指示を生成して部品化イメージ表示処理部22に送る。
After executing step S8, the program creation support device 1 determines whether or not the user replaces the common logic portion H with the program component while the
部品化イメージ表示処理部22は、キャンセル指示を受け取ると、受け取ったキャンセル指示を部品定義表示処理部21に送り、画面102の表示装置5への表示を終了する。部品定義表示処理部21は、部品化イメージ表示処理部22経由でキャンセル指示を受け取った場合、画面101を表示装置5に表示させる。そして、部品定義表示処理部21は、ユーザによって、プログラム部品の生成する入出力引数が選択され、選択操作が終了するのを再度待つ。このように、図5に示した画面102の右下の「キャンセル」ボタンがユーザにより押下された場合、プログラム作成支援装置1は、ステップS7に戻る。
Upon receiving the cancel instruction, the componentized image
一方、部品化イメージ表示処理部22は、部品化確定指示を受け取ると、部品定義表示処理部21から受け取って保持しておいた情報、具体的には、引数生成要否指示と、共通回路パターンGの構成情報とをプログラム部品登録部17に送る。
On the other hand, when the componentization image
プログラム部品登録部17は、部品化イメージ表示処理部22から引数生成要否指示と、共通回路パターンGの構成情報とを受け取ると、ステップS5で選択された共通回路パターンGをプログラム部品に変換する(ステップS10)。具体的には、プログラム部品登録部17は、部品化イメージ表示処理部22から受け取った、共通回路パターンGの構成情報が表す共通回路パターンGを、引数生成要否指示が示す入出力引数を有するプログラム部品に変換することでプログラム部品を作成する。プログラム部品登録部17は、変換したプログラム部品をプログラム部品格納部18に格納する(ステップS11)。このように、ユーザによって選択された共通回路パターンGが、プログラム部品としてプログラム部品格納部18に格納される。
Upon receiving the argument generation necessity instruction and the configuration information of the common circuit pattern G from the componentized image
プログラム部品格納部18は、プログラム部品登録部17からプログラム部品を受け取ると、受け取ったプログラム部品を記憶する。部品化処理部19は、プログラム部品登録部17により作成されたプログラム部品がプログラム部品格納部18に格納されると、プログラム格納部12が保持しているシーケンスプログラムの中にある共通のロジック部分Hを、プログラム部品格納部18に格納されているプログラム部品に置き換える(ステップS12)。部品化処理部19は、共通のロジック部分Hをプログラム部品で置き換える際に、置き換えたプログラム部品の入出力引数の割付を行う。このとき、部品化処理部19は、共通判定部13から受け取って保持しておいた情報、具体的には、共通のロジック部分Hの場所と、共通のロジック部分Hが抽出されたシーケンスプログラムのプログラム識別情報とに基づいて、プログラム識別情報が示すシーケンスプログラムの共通のロジック部分Hをプログラム部品に置き換える。具体的には、部品化処理部19は、プログラム識別情報に基づいて、プログラム格納部12内から部品化対象のシーケンスプログラムを抽出する。そして、部品化処理部19は、抽出したシーケンスプログラムの共通のロジック部分Hにある回路パターンを、プログラム部品格納部18が保持しているプログラム部品で置き換える。プログラム部品がプログラム部品格納部18に格納されたか否かは、例えば、部品化処理部19がプログラム部品格納部18の状態を定期的に確認することにより把握する。なお、プログラム部品登録部17が、プログラム部品をプログラム部品格納部18に格納したことを部品化処理部19に通知してもよい。
When receiving the program component from the program component registration unit 17, the program
シーケンスプログラムの少なくとも一部がプログラム部品によって置き換えられた後、置換後のシーケンスプログラムは、プログラム格納部12に格納される。この後、ユーザが指示入力部16に出力指示を入力すると、この出力指示は指示入力部16から出力部20に送られる。出力部20は、出力指示で指定されたシーケンスプログラムをプログラム格納部12から抽出してシーケンスプログラム編集装置3に送る。これにより、シーケンスプログラム編集装置3では、ユーザの指示に従ってシーケンスプログラムの編集が行われる。
After at least a part of the sequence program is replaced by the program component, the replaced sequence program is stored in the
プログラム作成支援装置1は、図3のステップS12を実行した後、ステップS4に戻って動作を継続するようにしてもよい。この場合、検索結果表示処理部15は、ステップS4において共通回路パターンGの構成および件数を表示装置5に一覧表示させる際、過去に実行したステップS5で選択された共通回路パターンG、すなわち、プログラム部品への部品化が済んでいる共通回路パターンGについては一覧表示に含めないようにする。
After executing step S12 in FIG. 3, the program creation support device 1 may return to step S4 to continue the operation. In this case, the search result
なお、本実施の形態では、ユーザによって指定された共通回路パターンGを部品化したが、プログラム部品登録部17は、共通判定部13で抽出された全ての共通回路パターンGを部品化してもよい。この場合、プログラム作成支援装置1は、例えば、図3に示したステップS6〜S9の処理を繰り返し実行し、全ての共通回路パターンGについてステップS6〜S9の処理が終了すると、ステップS10〜S12を実行する。 In the present embodiment, the common circuit pattern G specified by the user is made into components, but the program component registration unit 17 may make all the common circuit patterns G extracted by the common determination unit 13 into components. . In this case, for example, the program creation support device 1 repeatedly executes the processing of steps S6 to S9 shown in FIG. 3 and, when the processing of steps S6 to S9 is completed for all the common circuit patterns G, performs steps S10 to S12. Execute.
また、本実施の形態において、プログラム作成支援装置1は、上記のステップS6およびS7において、プログラム部品の入出力引数をユーザに選択させるようにしたが、ユーザによる選択を受け付けない構成としてもよい。すなわち、共通回路パターンGに含まれる回路部品のうち、共通のロジック部分Hの全てでデバイス割付が一致している回路部品(第1の回路部品)については入出力引数を生成しないこととして、プログラム部品の入出力引数の数が最小となるようにしてもよい。この場合、プログラム作成支援装置1は、上記のステップS5に続いてステップS10を実行する。このとき、検索結果表示処理部15は、ステップS5でユーザに選択された共通回路パターンGの構成情報および付属情報を検索結果記憶部14から読み出して、プログラム部品登録部17に送る。
Further, in the present embodiment, the program creation support device 1 allows the user to select the input / output argument of the program component in the above steps S6 and S7, but the configuration may be such that the selection by the user is not accepted. That is, among the circuit components included in the common circuit pattern G, the circuit component (first circuit component) having the same device assignment in all of the common logic portions H is determined not to generate input / output arguments. The number of component input / output arguments may be minimized. In this case, the program creation support device 1 executes step S10 following step S5. At this time, the search result
また、本実施の形態では、プログラム作成支援装置1が取り扱うシーケンスプログラムがラダープログラムである場合の例について説明したが、シーケンスプログラムをラダープログラムに限定するものではない。 Further, in the present embodiment, an example has been described in which the sequence program handled by the program creation support device 1 is a ladder program, but the sequence program is not limited to the ladder program.
また、プログラム作成支援装置1は、特許文献1に記載の発明と同様に、共通回路パターンGとして抽出するブロックのサイズをユーザに指定させるようにしてもよい。 Further, the program creation support device 1 may allow the user to specify the size of a block to be extracted as the common circuit pattern G, similarly to the invention described in Patent Document 1.
以上のように、本実施の形態にかかるプログラム作成支援装置1は、シーケンスプログラムを解析して構成が同じ回路パターンが複数存在するか否かを確認し、構成が同じ回路パターンである共通回路パターンGを抽出し、抽出した共通回路パターンGを表すプログラム部品を生成する。そして、プログラム作成支援装置1は、シーケンスプログラムに含まれる共通回路パターンGを、生成したプログラム部品に置き換える。また、プログラム作成支援装置1は、共通回路パターンGを抽出した後、共通回路パターンGに含まれる回路部品のそれぞれについて、抽出した全ての共通回路パターンGの間でデバイス割付が一致するか否かを確認し、確認結果を示す付属情報を生成する。そして、プログラム作成支援装置1は、プログラム部品を生成する際、全ての共通回路パターンGの間でデバイス割付が一致している第1の回路部品については、ユーザから指示された場合を除いて、デバイス割付を行うための入出力引数を生成しないこととした。これにより、プログラム部品の入出力引数の数を削減できる。この結果、シーケンスプログラムの可読性および保守性を高めることが可能となる。 As described above, the program creation support device 1 according to the present embodiment analyzes the sequence program to check whether there are a plurality of circuit patterns having the same configuration, and determines whether the common circuit pattern has the same configuration. G is extracted, and a program component representing the extracted common circuit pattern G is generated. Then, the program creation support device 1 replaces the common circuit pattern G included in the sequence program with the generated program component. Further, after extracting the common circuit pattern G, the program creation support device 1 determines whether the device assignments of all the extracted common circuit patterns G are the same for each of the circuit components included in the common circuit pattern G. And generates additional information indicating the confirmation result. Then, when generating the program parts, the program creation support device 1 regards the first circuit parts having the same device assignment among all the common circuit patterns G except when instructed by the user. It has been decided not to generate input / output arguments for device allocation. Thus, the number of input / output arguments of the program component can be reduced. As a result, the readability and maintainability of the sequence program can be improved.
次に、プログラム作成支援装置1のハードウェア構成について説明する。図6は、実施の形態にかかるプログラム作成支援装置1のハードウェア構成を示す図である。プログラム作成支援装置1は、CPU(Central Processing Unit)91、ROM(Read Only Memory)92、RAM(Random Access Memory)93、通信インタフェース94および入力部95を有している。プログラム作成支援装置1では、これらのCPU91、ROM92、RAM93、通信インタフェース94および入力部95がバスラインBを介して接続されている。入力部95は、マウスやキーボードを備えて構成される。また、ROM92にはプログラム90が格納されている。プログラム90は、CPU91が共通判定部13、検索結果表示処理部15、プログラム部品登録部17、部品化処理部19、部品定義表示処理部21および部品化イメージ表示処理部22として動作するためのプログラムである。通信インタフェース94は、プログラム作成支援装置1がシーケンスプログラム作成装置2、シーケンスプログラム編集装置3などの他の機器との間で通信用の信号を送受信するための処理回路であり、例えばネットワークインタフェースカードである。バスラインBには表示装置5も接続されている。
Next, the hardware configuration of the program creation support device 1 will be described. FIG. 6 is a diagram illustrating a hardware configuration of the program creation support device 1 according to the embodiment. The program creation support device 1 includes a CPU (Central Processing Unit) 91, a ROM (Read Only Memory) 92, a RAM (Random Access Memory) 93, a
図2に示したプログラム作成支援装置1の各構成要素のうち、共通判定部13、検索結果表示処理部15、プログラム部品登録部17、部品化処理部19、部品定義表示処理部21および部品化イメージ表示処理部22は、CPU91およびROM92により実現される。すなわち、CPU91が、ROM92に格納されたプログラム90をROM92から読み出して実行することにより、上記の各構成要素が実現される。
Among the components of the program creation support device 1 shown in FIG. 2, the common determination unit 13, the search result
また、図2に示したプログラム作成支援装置1のプログラム格納部12、検索結果記憶部14およびプログラム部品格納部18は、RAM93により実現される。図2に示したプログラム作成支援装置1のプログラム入力部11および出力部20は通信インタフェース94により実現される。図2に示したプログラム作成支援装置1の指示入力部16は、入力部95により実現される。
In addition, the
なお、ここでは、プログラム作成支援装置1の共通判定部13、検索結果表示処理部15、プログラム部品登録部17、部品化処理部19、部品定義表示処理部21および部品化イメージ表示処理部22として動作するためのプログラム(プログラム90)が予めROM92に格納されているものとしたがこれに限定されない。上記のプログラム90は、CD(Compact Disc)−ROM、DVD(Digital Versatile Disc)−ROMなどの記録媒体に書き込まれた状態でユーザに供給され、プログラム作成支援装置1を実現するハードウェアにユーザがインストールを行う形態であってもよい。この場合、プログラム作成支援装置1を実現するハードウェアは、記録媒体からプログラムを読み出すための読み取り装置、または、読み取り装置を接続するためのインタフェース回路を含む構成となる。また、上記のプログラム90は、インターネットなどの通信回線を介して提供される形態であってもよい。
Here, the common determination unit 13, the search result
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。 The configurations described in the above embodiments are merely examples of the contents of the present invention, and can be combined with other known technologies, and can be combined with other known technologies without departing from the gist of the present invention. Parts can be omitted or changed.
1 プログラム作成支援装置、2 シーケンスプログラム作成装置、3 シーケンスプログラム編集装置、5 表示装置、2a〜4a,2b〜4b 回路ブロック、11 プログラム入力部、12 プログラム格納部、13 共通判定部、14 検索結果記憶部、15 検索結果表示処理部、16 指示入力部、17 プログラム部品登録部、18 プログラム部品格納部、19 部品化処理部、20 出力部、21 部品定義表示処理部、22 部品化イメージ表示処理部、100 プログラム作成システム。 REFERENCE SIGNS LIST 1 program creation support device, 2 sequence program creation device, 3 sequence program editing device, 5 display device, 2 a to 4 a, 2 b to 4 b circuit block, 11 program input unit, 12 program storage unit, 13 common determination unit, 14 search results Storage unit, 15 search result display processing unit, 16 instruction input unit, 17 program component registration unit, 18 program component storage unit, 19 component processing unit, 20 output unit, 21 component definition display processing unit, 22 component image display processing Department, 100 program creation system.
Claims (6)
前記共通判定部が抽出した共通のロジック部分と前記付属情報とに基づいてプログラムコンポーネントを生成するプログラムコンポーネント生成部と、
前記シーケンスプログラム内の前記共通のロジック部分の各々を、前記プログラムコンポーネントと前記プログラムコンポーネントの入出力引数に接続する回路部品とで置き換える置換部と、
を備え、
前記プログラムコンポーネント生成部は、同じ位置の回路部品に対するデバイス割付が全ての前記共通のロジック部分で一致している回路部品である第1の回路部品の中のユーザに指定された第1の回路部品に対してデバイス割付を行う入出力引数と、前記第1の回路部品に該当しない回路部品である第2の回路部品にデバイス割付を行う入出力引数と、を有するプログラムコンポーネントを生成する、
ことを特徴とするプログラム作成支援装置。 A common logic part is extracted from the entire circuit in the sequence program, and as for the circuit parts included in the extracted common logic part, whether or not the device assignment to the circuit part at the same position is the same in all the common logic parts A common determination unit that generates additional information indicating
A program component generation unit that generates a program component based on the common logic part and the attached information extracted by the common determination unit,
A replacement unit that replaces each of the common logic parts in the sequence program with the program component and a circuit component connected to an input / output argument of the program component;
With
It said program component generating unit includes a first circuit that is designated by the user in the first circuit component is a circuit component device assignment is consistent with all of the common logic portion for the circuit components of the same position Generating a program component having an input / output argument for assigning a device to a component and an input / output argument for assigning a device to a second circuit component that is a circuit component not corresponding to the first circuit component ;
A program creation support device characterized by the following.
を備え、
前記プログラムコンポーネント生成部は、前記プログラムコンポーネントの候補の中からユーザによって選択された共通のロジック部分と前記付属情報とに基づいてプログラムコンポーネントを生成する、
ことを特徴とする請求項1に記載のプログラム作成支援装置。 A search result display processing unit that causes the common logic part extracted by the common determination unit to be displayed on a display device as a candidate for a program component;
With
The program component generating unit generates a program component based on a common logic part selected by a user from among the candidates for the program component and the attached information,
The program creation support device according to claim 1, wherein:
を備えることを特徴とする請求項1または2に記載のプログラム作成支援装置。 From among the first circuit components, a first circuit component that requires device allocation using input / output arguments after the common logic part is replaced with a program component generated by the program component generation unit. Selection accepting unit to be selected by
Program creation support apparatus according to claim 1 or 2, characterized in the Ruco equipped with.
を備えることを特徴とする請求項1から3のいずれか一つに記載のプログラム作成支援装置。 The common logic part connects to the program component and the input / output arguments of the program component before the program component generation part generates the program component and the replacement part replaces the common logic part with the program component. A confirmation display processing unit that causes a display device to display a screen for confirming the configuration of the sequence program after being replaced with a circuit component to be replaced,
The program creation support device according to any one of claims 1 to 3, further comprising:
シーケンスプログラム内の回路全体から共通のロジック部分を抽出する第1のステップと、
前記第1のステップで抽出した共通のロジック部分に含まれる回路部品について、各共通のロジック部分の同じ位置の回路部品に対するデバイス割付が全ての共通のロジック部分で一致しているか否かを示す付属情報を生成する第2のステップと、
前記第1のステップで抽出した共通のロジック部分と前記付属情報とに基づいてプログラムコンポーネントを生成する第3のステップと、
前記シーケンスプログラム内の前記共通のロジック部分を前記プログラムコンポーネントと前記プログラムコンポーネントの入出力引数に接続する回路部品とで置き換える第4のステップと、
を含み、
前記第3のステップでは、同じ位置の回路部品に対するデバイス割付が全ての前記共通のロジック部分で一致している回路部品である第1の回路部品の中のユーザに指定された第1の回路部品に対してデバイスを割付けるための入出力引数と、前記第1の回路部品に該当しない回路部品である第2の回路部品に対してデバイスを割付けるための入出力引数と、を有するプログラムコンポーネントを生成する、
ことを特徴とするプログラム作成支援方法。 A program creation support method executed by a program creation support device that supports creation of a sequence program,
A first step of extracting a common logic part from the entire circuit in the sequence program;
For the circuit components included in the common logic portion extracted in the first step, an attachment indicating whether or not the device assignment of each common logic portion to the circuit component at the same position is the same in all common logic portions. A second step of generating information;
A third step of generating a program component based on the common logic portion extracted in the first step and the attached information;
A fourth step of replacing the common logic portion in the sequence program with the program component and a circuit component connected to an input / output argument of the program component;
Only including,
In the third step, the first circuit component designated by the user among the first circuit components, which is the circuit component whose device assignment to the circuit component at the same position is the same in all the common logic parts A program component having an input / output argument for allocating a device to the first circuit component and an input / output argument for allocating a device to a second circuit component which is a circuit component not corresponding to the first circuit component Produces
A program creation support method characterized by the following.
前記第1のステップで抽出した共通のロジック部分に含まれる回路部品について、各共通のロジック部分の同じ位置の回路部品に対するデバイス割付が全ての共通のロジック部分で一致しているか否かを示す付属情報を生成する第2のステップと、
前記第1のステップで抽出した共通のロジック部分と前記付属情報とに基づいてプログラムコンポーネントを生成する第3のステップと、
前記シーケンスプログラム内の前記共通のロジック部分を前記プログラムコンポーネントと前記プログラムコンポーネントの入出力引数に接続する回路部品とで置き換える第4のステップと、
をコンピュータに実行させ、
前記第3のステップは、同じ位置の回路部品に対するデバイス割付が全ての前記共通のロジック部分で一致している回路部品である第1の回路部品の中のユーザに指定された第1の回路部品に対してデバイスを割付けるための入出力引数と、前記第1の回路部品に該当しない回路部品である第2の回路部品に対してデバイスを割付けるための入出力引数と、を有するプログラムコンポーネントを生成する処理を含む、
ことを特徴とするプログラム作成支援プログラム。 A first step of extracting a common logic part from the entire circuit in the sequence program;
For the circuit components included in the common logic portion extracted in the first step, an attachment indicating whether or not the device assignment of each common logic portion to the circuit component at the same position is the same in all common logic portions. A second step of generating information;
A third step of generating a program component based on the common logic portion extracted in the first step and the attached information;
A fourth step of replacing the common logic portion in the sequence program with the program component and a circuit component connected to an input / output argument of the program component;
To the computer ,
The third step is a first circuit component designated by a user among first circuit components which are circuit components whose device assignments to circuit components at the same position are identical in all the common logic parts. A program component having an input / output argument for allocating a device to the first circuit component and an input / output argument for allocating a device to a second circuit component which is a circuit component not corresponding to the first circuit component Including the process of generating
A program creation support program characterized in that:
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2019/008657 WO2020178983A1 (en) | 2019-03-05 | 2019-03-05 | Program creation assistance device, program creation assistance method, and program creation assistance program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6664563B1 true JP6664563B1 (en) | 2020-03-13 |
JPWO2020178983A1 JPWO2020178983A1 (en) | 2021-03-11 |
Family
ID=70000323
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019552927A Active JP6664563B1 (en) | 2019-03-05 | 2019-03-05 | Program creation support device, program creation support method, and program creation support program |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP6664563B1 (en) |
CN (1) | CN113518947B (en) |
WO (1) | WO2020178983A1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005092808A (en) * | 2003-09-19 | 2005-04-07 | Keyence Corp | Ladder program macro generator and generation method, program therefor and computer-readable recording medium |
WO2014155717A1 (en) * | 2013-03-29 | 2014-10-02 | 三菱電機株式会社 | Sequence program component creation program and sequence program component creation device |
JP2016118883A (en) * | 2014-12-19 | 2016-06-30 | ファナック株式会社 | Ladder program retrieval system capable of retrieving ladder circuit according to arithmetic condition of designated signal |
JP6370503B1 (en) * | 2017-04-17 | 2018-08-08 | 三菱電機株式会社 | Program creation device |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2526692B2 (en) * | 1990-03-02 | 1996-08-21 | 三菱電機株式会社 | Programmable controller programming method |
JP3755500B2 (en) * | 2002-09-06 | 2006-03-15 | ソニー株式会社 | GUI application development support apparatus and method, and computer program |
DE112010006021T5 (en) * | 2010-11-24 | 2013-09-05 | Mitsubishi Electric Corp. | System design device |
US9747529B2 (en) * | 2012-03-19 | 2017-08-29 | Mitsubishi Electric Corporation | Sequence program creation device |
DE112015006067T5 (en) * | 2015-01-28 | 2017-10-12 | Mitsubishi Electric Corporation | Intelligent functional module and programmable logic control system |
-
2019
- 2019-03-05 WO PCT/JP2019/008657 patent/WO2020178983A1/en active Application Filing
- 2019-03-05 CN CN201980093411.0A patent/CN113518947B/en active Active
- 2019-03-05 JP JP2019552927A patent/JP6664563B1/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005092808A (en) * | 2003-09-19 | 2005-04-07 | Keyence Corp | Ladder program macro generator and generation method, program therefor and computer-readable recording medium |
WO2014155717A1 (en) * | 2013-03-29 | 2014-10-02 | 三菱電機株式会社 | Sequence program component creation program and sequence program component creation device |
JP5769900B2 (en) * | 2013-03-29 | 2015-08-26 | 三菱電機株式会社 | Sequence program component creation program and sequence program component creation device |
JP2016118883A (en) * | 2014-12-19 | 2016-06-30 | ファナック株式会社 | Ladder program retrieval system capable of retrieving ladder circuit according to arithmetic condition of designated signal |
JP6370503B1 (en) * | 2017-04-17 | 2018-08-08 | 三菱電機株式会社 | Program creation device |
Also Published As
Publication number | Publication date |
---|---|
CN113518947B (en) | 2022-10-21 |
JPWO2020178983A1 (en) | 2021-03-11 |
CN113518947A (en) | 2021-10-19 |
WO2020178983A1 (en) | 2020-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5769900B2 (en) | Sequence program component creation program and sequence program component creation device | |
JP6664563B1 (en) | Program creation support device, program creation support method, and program creation support program | |
JP5849592B2 (en) | Programmable controller system, programming device thereof, programmable controller, program, and debugging method | |
JP5785130B2 (en) | Program generator | |
JP4319082B2 (en) | Programming system | |
EP3982213A1 (en) | Support device and support program | |
JP2011039786A (en) | Software test support device, software test support method and program | |
JP4616829B2 (en) | Source code creation support program and source code creation support method | |
JP4266334B2 (en) | Ladder program macro creation device, ladder program macro creation method, ladder program macro creation program, and computer-readable recording medium | |
JP6664562B1 (en) | Debug support device, debug support method, and debug support program | |
JP2022027456A (en) | Information processor, ladder program generation device, information processing method, ladder program generation method, article manufacturing method, program, and recording medium | |
JP4381793B2 (en) | PROGRAMMABLE DISPLAY, DISPLAY CONTROL PROGRAM, RECORDING MEDIUM RECORDING THE PROGRAM, SCREEN CREATION DEVICE, SCREEN CREATION PROGRAM, AND RECORDING MEDIUM RECORDING THE PROGRAM | |
JP2010152581A (en) | Information control system and information control method | |
JPH11353164A (en) | System and method for source program generation, and system and method for chart generation | |
JP2020017225A (en) | Information processor and display program | |
JP7248801B2 (en) | Design support system and design support method | |
JP6091471B2 (en) | Source code analysis apparatus, source code analysis method, and source code analysis program | |
JP2019197258A (en) | Information processor, method for controlling the same, and program | |
JPWO2014136210A1 (en) | Execution flow creation support program | |
JP2009157534A (en) | Programming support system, its programmable controller support device, and programmable indicator support device | |
US11520315B2 (en) | Production system, production method, and information storage medium | |
JP2018194898A (en) | Support device, control method of support device, information processing program, and storage medium | |
JP2005251014A (en) | Control system, control monitor program, recording medium recorded with program therefor, editor device, editor program, and recording medium recorded with program therefor | |
JP2006268764A (en) | Model edit system, model edit apparatus, model edit method and model edit program | |
JP3647888B2 (en) | User interface processing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190925 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20190925 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20191024 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20191112 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20191219 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20200121 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200218 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6664563 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |