[go: up one dir, main page]

JP7124556B2 - Programming support device, programming support method, and program - Google Patents

Programming support device, programming support method, and program Download PDF

Info

Publication number
JP7124556B2
JP7124556B2 JP2018155598A JP2018155598A JP7124556B2 JP 7124556 B2 JP7124556 B2 JP 7124556B2 JP 2018155598 A JP2018155598 A JP 2018155598A JP 2018155598 A JP2018155598 A JP 2018155598A JP 7124556 B2 JP7124556 B2 JP 7124556B2
Authority
JP
Japan
Prior art keywords
program
setting value
port
column
programming
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
Application number
JP2018155598A
Other languages
Japanese (ja)
Other versions
JP2020030595A (en
Inventor
良太 丸野
直人 長谷川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Omron Corp
Original Assignee
Omron Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Omron Corp filed Critical Omron Corp
Priority to JP2018155598A priority Critical patent/JP7124556B2/en
Priority to EP19851042.2A priority patent/EP3842879B1/en
Priority to PCT/JP2019/028520 priority patent/WO2020039810A1/en
Publication of JP2020030595A publication Critical patent/JP2020030595A/en
Priority to US17/171,454 priority patent/US11307829B2/en
Application granted granted Critical
Publication of JP7124556B2 publication Critical patent/JP7124556B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/056Programming the PLC

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Description

この発明は、プログラム言語によるプログラム作成を支援するプログラミング支援装置およびプログラミング支援方法に関する。また、この発明は、そのようなプログラミング支援方法をコンピュータに実行させるためのプログラムに関する。 The present invention relates to a programming support device and a programming support method that support program creation in a programming language. The present invention also relates to a program for causing a computer to execute such a programming support method.

従来、この種のプログラミング支援装置としては、プログラム作成者がコンピュータ上で或るプログラム言語を用いてプログラムを作成する段階で、そのコンピュータの表示画面上に、例えば特許文献1(特開2000-132210号公報)に開示されているようなマップ情報テーブルを表示するものがある。同文献のマップ情報テーブルは、そのプログラムが参照する参照名(シンボル,タグ名)と、その参照名に対応する実際の物理メモリ、物理I/Oポート、並びにネットワーク共有メモリ上のアドレス(チャネル番号)とを関連付けて表示している。 Conventionally, as this type of programming support device, when a program creator creates a program using a certain programming language on a computer, on the display screen of the computer, for example, Patent Document 1 (Japanese Unexamined Patent Application Publication No. 2000-132210 No. 2003-100002), which displays a map information table. The map information table of the document contains reference names (symbols, tag names) referenced by the program, actual physical memory corresponding to the reference names, physical I/O ports, and addresses (channel numbers) on the network shared memory. ) are associated with each other.

プログラム作成者は、表示画面上にこのマップ情報テーブルを表示した状態で、例えば或るシンボル名に対応する物理I/Oポートについての設定値を書き込む。すると、それ以降、その物理I/Oポートへの設定値の上書きは禁止され、その物理I/Oポートへの誤書き込みを防止するようになっている(ただし、上書き禁止を解除する特別の操作が行われた場合は、再び設定値の書き込みが可能となる。)。プログラム作成者は、このようにして設定値の書き込みがなされたマップ情報テーブルを適宜参照しながら、プログラムを作成する。 A program creator writes a setting value for a physical I/O port corresponding to a certain symbol name, for example, with this map information table displayed on the display screen. Then, after that, overwriting of the setting value to that physical I/O port is prohibited, and erroneous writing to that physical I/O port is prevented (however, a special operation to release the overwrite prohibition is performed, the setting value can be written again.) A program creator creates a program while appropriately referring to the map information table in which the setting values are written in this way.

特開2000-132210号公報JP-A-2000-132210

しかしながら、従来のプログラミング支援装置では、物理I/Oポートへの設定値の上書き禁止の機能は、そのプログラム言語によるプログラム作成にしか及ばない、という問題がある。 However, in conventional programming support devices, there is a problem that the function of prohibiting overwriting of set values to physical I/O ports extends only to program creation in the programming language.

例えば、近年、シーケンス制御プログラムを実行するプログラマブルロジックコントローラ(PLC)エンジンと、ロボット制御プログラムを実行してロボットを制御するモーションコントローラ(MC)エンジンとを統合してなるシステムが開発されている。このシステムは、複数の物理I/Oポートを含み、それらの物理I/Oポートに設定された設定値は、それぞれセンサ、モータ、ロボットなどを駆動するプログラムによって参照される。 For example, in recent years, a system has been developed that integrates a programmable logic controller (PLC) engine that executes a sequence control program and a motion controller (MC) engine that executes a robot control program and controls the robot. This system includes a plurality of physical I/O ports, and the setting values set in these physical I/O ports are referenced by programs that drive sensors, motors, robots, and the like.

伝統的に、シーケンス制御プログラムの作成には、ラダー言語が用いられることが多い。一方、ロボット制御プログラムの作成には、C言語、C++、または各社独自のプログラム言語が用いられることが多い。そして、プログラム言語が異なれば、習熟度・作業効率の観点から、それぞれのプログラムの作成を互いに別のプログラム作成者が担当することが一般的に行われている。 Traditionally, a ladder language is often used to create sequence control programs. On the other hand, C language, C++, or a program language unique to each company is often used to create a robot control program. If the programming languages are different, different program creators are generally in charge of creating the respective programs from the viewpoint of proficiency and work efficiency.

このため、上記シーケンス制御プログラムの作成段階、上記ロボット制御プログラムの作成段階で、各プログラム作成者が区々に同じ物理I/Oポートへ設定値を誤って書き込んでしまう可能性がある(先に書き込まれた設定値が、後に書き込まれた設定値によって上書きされてしまう。)。その場合、その物理I/Oポートの設定値は、先に設定値を書き込んだプログラム作成者の意図しない状態になる。 Therefore, there is a possibility that each program creator may mistakenly write setting values to the same physical I/O port at the stage of creating the sequence control program and the stage of creating the robot control program. The written setting value will be overwritten by the setting value written later.) In that case, the setting value of the physical I/O port will be in a state not intended by the program creator who previously wrote the setting value.

そこで、この発明の課題は、デバイスポートへの設定値の上書き禁止の機能を、互いに異なる複数のプログラム言語によるプログラム作成へ及ぼすことができるプログラミング支援装置およびプログラミング支援方法を提供することにある。また、この発明の課題は、そのようなプログラミング支援方法をコンピュータに実行させるためのプログラムを提供することにある。 SUMMARY OF THE INVENTION Accordingly, it is an object of the present invention to provide a programming support apparatus and a programming support method that can apply the function of prohibiting overwriting of setting values to device ports to program creation in a plurality of different programming languages. Another object of the present invention is to provide a program for causing a computer to execute such a programming support method.

上記課題を解決するため、この開示のプログラミング支援装置は、
複数のデバイスポートを含み、動作時に各デバイスポートが複数のプログラム言語によって参照されるようになっているシステムのための、上記複数のプログラム言語によるプログラム作成を支援するプログラミング支援装置であって、
上記複数のプログラム言語によるプログラムが作成される際に、表示画面上に、上記複数のデバイスポートをそれぞれ表す参照名欄と、上記各デバイスポートが上記システムの動作時に書き込み用のポートであるか又は読み取り用のポートであるかを示す読み出し/書き込み欄と、上記各デバイスポートのための設定値欄とを対応付けて、マップ情報テーブルとして一覧表示する表示処理部を備え
上記設定値欄は、第1のプログラムのための第1の設定値欄と、第2のプログラムのための第2の設定値欄とに区分されており、
第1のプログラム言語による上記第1のプログラムに関して、上記各デバイスポートについて上記第1の設定値欄への設定値の書き込みがなされたか否かを判断する書き込み判断部と、
上記第1のプログラム言語による上記第1のプログラムに関して、上記第1の設定値欄への設定値の書き込みがなされたと判断されたデバイスポートについて、上記読み出し/書き込み欄を参照して、上記デバイスポートが上記システムの動作時に書き込み用のポートであるとき、上記第1のプログラム言語とは異なる第2のプログラム言語による第2のプログラムに関して、上記第2の設定値欄への設定値の書き込みを禁止する一方、上記デバイスポートが上記システムの動作時に読み出し用のポートであるとき、上記第2のプログラム言語による上記第2のプログラムに関して、上記第2の設定値欄への設定値の書き込みを許容する上書き禁止部と
を備えたことを特徴とする。
In order to solve the above problems, the programming support device of this disclosure includes:
A programming support device for supporting program creation in a plurality of programming languages for a system including a plurality of device ports, each device port being referenced by a plurality of programming languages during operation , comprising :
When the program is created in the plurality of programming languages, on the display screen, a reference name field representing each of the plurality of device ports and whether each device port is a port for writing during operation of the system, or a display processing unit that associates a read/write column indicating whether the port is for reading and a setting value column for each device port and displays a list as a map information table;
The setting value column is divided into a first setting value column for the first program and a second setting value column for the second program,
a write determination unit that determines whether or not a setting value has been written to the first setting value column for each of the device ports with respect to the first program in the first programming language;
With respect to the first program in the first programming language, with respect to the device port for which it is determined that the setting value has been written to the first setting value column, the device port is referred to the read/write column. is a port for writing during the operation of the system, prohibiting the writing of the setting value to the second setting value field with respect to the second program in the second programming language different from the first programming language On the other hand, when the device port is a port for reading during the operation of the system, writing of the setting value to the second setting value field is permitted with respect to the second program in the second program language. and an overwrite prohibition section.

本明細書で、「デバイスポート」とは、物理I/O(入出力インタフェース)ポートなどの、プログラムの実行中に参照されるべき設定値が書き込まれる又は書き込まれたポートを広く指す。 As used herein, the term "device port" broadly refers to a port, such as a physical I/O (input/output interface) port, to which setting values to be referenced during program execution are written or written.

また、上記設定値欄への設定値の書き込みは、キーボード、マウスなどの操作部を介した入力によって行われ得る。 Also, the setting value can be written in the setting value column by inputting via an operation unit such as a keyboard or a mouse.

この開示のプログラミング支援装置によって作成されたプログラムを用いるシステムでは、システムの動作時に、上記システムに含まれた各デバイスポートが複数のプログラム言語によって参照されることが予定されている。この開示のプログラミング支援装置では、上記複数のプログラム言語によるプログラムが作成される際に、表示処理部は、表示画面上に、上記複数のデバイスポートをそれぞれ表す参照名欄と、上記各デバイスポートが上記システムの動作時に書き込み用のポートであるか又は読み取り用のポートであるかを示す読み出し/書き込み欄と、上記各デバイスポートのための設定値欄とを対応付けて、マップ情報テーブルとして一覧表示する。上記設定値欄は、第1のプログラムのための第1の設定値欄と、第2のプログラムのための第2の設定値欄とに区分されている。書き込み判断部は、第1のプログラム言語による上記第1のプログラムに関して、上記各デバイスポートについて上記第1の設定値欄への設定値の書き込みがなされたか否かを判断する。上書き禁止部は、上記第1のプログラム言語による上記第1のプログラムに関して、上記第1の設定値欄への設定値の書き込みがなされたと判断されたデバイスポートについて、上記読み出し/書き込み欄を参照して、上記デバイスポートが上記システムの動作時に書き込み用のポートであるとき、上記第1のプログラム言語とは異なる第2のプログラム言語による第2のプログラムに関して、上記第2の設定値欄への設定値の書き込みを禁止する一方、上記デバイスポートが上記システムの動作時に読み出し用のポートであるとき、上記第2のプログラム言語による上記第2のプログラムに関して、上記第2の設定値欄への設定値の書き込みを許容する。したがって、上記第1のプログラム言語による第1のプログラムに関して、上記第1の設定値欄への設定値の書き込みがなされたと判断されたデバイスポートについて、プログラム作成者が、上記第2のプログラム言語による第2のプログラムに関して、上記第1の設定値欄への設定値の書き込み(上書き)を誤って行うことが無い。つまり、このプログラミング支援装置によれば、デバイスポートへの設定値の上書き禁止の機能を、互いに異なる複数のプログラム言語によるプログラム作成へ及ぼすことができる。したがって、それぞれのプログラムを作成するプログラム作成者は、このようにして適切に設定値の書き込みがなされたマップ情報テーブルを適宜参照しながら、プログラムを作成することができる。これにより、上記複数のデバイスポートについての設定値は、各プログラム作成者が意図した状態になる。この結果、上記システムの動作時に、上記第1のプログラム言語による第1のプログラムと上記第2のプログラム言語による第2のプログラムとの両方によって、各デバイスポートを参照して、有効利用できる。 In a system using a program created by the programming support device of this disclosure, each device port included in the system is expected to be referenced by a plurality of programming languages during system operation. In the programming support device disclosed in this disclosure, when a program is created in the plurality of programming languages, the display processing unit displays on the display screen a reference name column representing each of the plurality of device ports, and the name of each device port. A read/write column indicating whether the port is for writing or reading during the operation of the system is associated with the setting value column for each device port, and displayed as a map information table. do. The set value column is divided into a first set value column for the first program and a second set value column for the second program. The write determination unit determines whether or not a setting value has been written to the first setting value field for each device port with respect to the first program in the first programming language. The overwrite prohibition unit refers to the read/write column for the device port for which the setting value is determined to be written in the first setting value column with respect to the first program in the first programming language. Then, when the device port is a port for writing during the operation of the system, the setting in the second set value field with respect to the second program in the second program language different from the first program language is performed. While prohibiting the writing of values, when the device port is a port for reading during the operation of the system, a set value in the second set value column with respect to the second program in the second program language writes are allowed . Therefore, regarding the first program written in the first programming language, the program creator writes the Regarding the second program, there is no possibility of mistakenly writing (overwriting) the setting values in the first setting value column. In other words, according to this programming support device, the function of prohibiting overwriting of setting values for device ports can be applied to program creation in a plurality of different programming languages. Therefore, the program creator who creates each program can create the program while appropriately referring to the map information table in which the setting values are appropriately written in this way. As a result, the setting values for the plurality of device ports are in the state intended by each program creator. As a result, during operation of the system, both the first program in the first programming language and the second program in the second programming language can refer to and effectively use each device port.

また、このプログラミング支援装置では、第1のプログラム言語による第1のプログラムに関して、そのプログラムを作成するプログラム作成者は上記第1の設定値欄へ設定値の書き込みを行う。一方、第2のプログラム言語による第2のプログラムに関して、そのプログラムを作成するプログラム作成者は、許容されていれば(上記上書き禁止部によって禁止されていなければ)、上記第2の設定値欄へ設定値の書き込みを行う。したがって、上記第1、第2のプログラムの作成を互いに別のプログラム作成者が担当する場合であっても、各プログラム作成者が設定値の書き込みを行うべき欄を迷うことが無い。 Further, in this programming support device, the program creator who creates the first program written in the first programming language writes the setting values in the first setting value column. On the other hand, regarding the second program in the second programming language, if the program creator who creates the program is allowed (if not prohibited by the overwrite prohibition section), the second setting value column Write the setting value. Therefore, even if different program creators are in charge of creating the first and second programs, each program creator does not hesitate about which field to write the setting values into.

一実施形態のプログラミング支援装置では、上記表示処理部は、上記設定値の書き込みが禁止された上記第2の設定値欄に、書き込み不能であることを表す書き込み不能表示を行うことを特徴とする。 In one embodiment, the programming support device is characterized in that the display processing unit displays a write-disabled display indicating that writing is disabled in the second setting value column in which writing of the setting value is prohibited. .

この一実施形態のプログラミング支援装置では、上記表示処理部は、上記設定値の書き込みが禁止されたデバイスポートの上記第2の設定値欄に、書き込み不能であることを表す書き込み不能表示を行う。したがって、その書き込み不能表示を見たプログラム作成者は、上記設定値の書き込みが禁止された上記第2の設定値欄へ、設定値の書き込みを無駄に試みることが無い。 In the programming support device of this embodiment, the display processing unit displays a write-disabled display indicating that writing is disabled in the second setting value column of the device port for which writing of the setting value is prohibited. Therefore, the program creator who sees the display indicating that writing of the setting value is prohibited does not wastefully attempt to write the setting value to the second setting value column, in which writing of the setting value is prohibited.

一実施形態のプログラミング支援装置では、上記マップ情報テーブルは、さらに、上記各デバイスポートについて書き込まれるべき設定値のデータ型を示すデータ型欄を含むことを特徴とする。 In one embodiment of the programming support device, the map information table further includes a data type column indicating the data type of the setting value to be written for each device port.

この一実施形態のプログラミング支援装置では、上記マップ情報テーブルのデータ型欄に、上記各デバイスポートに書き込まれるべき設定値のデータ型が示される。したがって、各プログラム作成者が書き込むべき設定値のデータ型を間違うことが無い。 In the programming support device of this embodiment, the data type column of the map information table indicates the data type of the set value to be written to each device port. Therefore, the data type of the setting value to be written by each program creator is not mistaken.

一実施形態のプログラミング支援装置では、
上記各デバイスポートについて上記データ型欄に示されたデータ型が、上記各プログラムに関して上記設定値の書き込みに使用可能であるか否かを判断するデータ型判断部を備え、
上記表示処理部は、上記各デバイスポートについての、上記データ型が上記設定値の書き込みに使用不可であると判断されたプログラムのための設定値欄に、書き込み不能であることを表す書き込み不能表示を行うことを特徴とするプログラミング支援装置。
In one embodiment of the programming support device,
a data type determination unit that determines whether the data type indicated in the data type column for each device port can be used for writing the setting value for each program;
The display processing unit displays, for each device port, a write-disabled display indicating that writing is disabled in the setting value column for the program for which the data type is determined to be unusable for writing the setting value. A programming support device characterized by performing

この一実施形態のプログラミング支援装置では、データ型判断部は、上記各デバイスポートについて上記データ型欄に示されたデータ型が、上記各プログラムに関して上記設定値の書き込みに使用可能であるか否かを判断する。上記表示処理部は、上記各デバイスポートについての、上記データ型が上記設定値の書き込みに使用不可であると判断されたプログラムのための設定値欄に、書き込み不能であることを表す書き込み不能表示を行う。したがって、その書き込み不能表示を見たプログラム作成者は、上記データ型が上記設定値の書き込みに使用不可であると判断されたプログラムのための設定値欄に、設定値の書き込みを無駄に試みることが無い。 In the programming support device of this embodiment, the data type determination unit determines whether the data type shown in the data type column for each device port can be used for writing the setting value for each program. to judge. The display processing unit displays, for each device port, a write-disabled display indicating that writing is disabled in the setting value column for the program for which the data type is determined to be unusable for writing the setting value. I do. Therefore, the program creator who sees the write impossibility display will wastefully attempt to write the setting value to the setting value field for the program for which the data type is determined to be unusable for writing the setting value. There is no

別の局面では、この開示のプログラミング支援方法は、
複数のデバイスポートを含み、動作時に各デバイスポートが複数のプログラム言語によって参照されるようになっているシステムのための、上記複数のプログラム言語によるプログラム作成を支援するプログラミング支援装方法であって、
上記複数のプログラム言語によるプログラムが作成される際に、表示画面上に、上記複数のデバイスポートをそれぞれ表す参照名欄と、上記各デバイスポートが上記システムの動作時に書き込み用のポートであるか又は読み取り用のポートであるかを示す読み出し/書き込み欄と、上記各デバイスポートのための設定値欄とを対応付けて、マップ情報テーブルとして一覧表示するステップを有し
上記設定値欄は、第1のプログラムのための第1の設定値欄と、第2のプログラムのための第2の設定値欄とに区分されており、
第1のプログラム言語による上記第1のプログラムに関して、上記デバイスポートについて上記第1の設定値欄への設定値の書き込みがなされたか否かを判断するステップと
上記第1のプログラム言語による上記第1のプログラムに関して、上記第1の設定値欄への設定値の書き込みがなされたと判断されたデバイスポートについて、上記読み出し/書き込み欄を参照して、上記デバイスポートが上記システムの動作時に書き込み用のポートであると判断したとき、上記第1のプログラム言語とは異なる第2のプログラム言語による第2のプログラムに関して、上記第2の設定値欄への設定値の書き込みを禁止する一方、上記デバイスポートが上記システムの動作時に読み出し用のポートであると判断したとき、上記第2のプログラム言語による上記第2のプログラムに関して、上記第2の設定値欄への設定値の書き込みを許容するステップと
を有することを特徴とする。
In another aspect, the programming assistance method of this disclosure comprises:
A programming support method for supporting programming in multiple programming languages for a system including multiple device ports, wherein each device port is referenced by multiple programming languages during operation, the method comprising: ,
When the program is created in the plurality of programming languages, on the display screen, a reference name field representing each of the plurality of device ports and whether each device port is a port for writing during operation of the system, or a step of displaying a list as a map information table in association with a read/write column indicating whether it is a read port and a setting value column for each of the device ports;
The setting value column is divided into a first setting value column for the first program and a second setting value column for the second program,
determining whether or not a setting value has been written to the first setting value column for each of the device ports with respect to the first program in the first programming language;
With respect to the first program in the first programming language, with respect to the device port for which it is determined that the setting value has been written to the first setting value column, the device port is referred to the read/write column. is a port for writing during the operation of the system, the setting value in the second setting value column for the second program in the second programming language different from the first programming language While prohibiting writing, when it is determined that the device port is a port for reading during the operation of the system, the second program in the second program language is set in the second set value field. Steps that allow writing values and
characterized by having

この開示のプログラミング支援方法によれば、デバイスポートへの設定値の上書き禁止の機能を、互いに異なる複数のプログラム言語によるプログラム作成へ及ぼすことができる。したがって、それぞれのプログラムを作成するプログラム作成者は、このようにして適切に設定値の書き込みがなされたマップ情報テーブルを適宜参照しながら、プログラムを作成することができる。これにより、上記複数のデバイスポートについての設定値は、各プログラム作成者が意図した状態になる。この結果、上記システムの動作時に、上記第1のプログラム言語による第1のプログラムと上記第2のプログラム言語による第2のプログラムとの両方によって、各デバイスポートを参照して、有効利用できる。 According to the programming support method disclosed in this disclosure, the function of prohibiting overwriting of setting values for device ports can be applied to program creation in a plurality of mutually different programming languages. Therefore, the program creator who creates each program can create the program while appropriately referring to the map information table in which the setting values are appropriately written in this way. As a result, the setting values for the plurality of device ports are in the state intended by each program creator. As a result, during operation of the system, both the first program in the first programming language and the second program in the second programming language can refer to and effectively use each device port.

さらに別の局面では、この開示のプログラムは、上記プログラミング支援方法をコンピュータに実行させるためのプログラムである。 In still another aspect, a program disclosed herein is a program for causing a computer to execute the programming support method.

この開示のプログラムをコンピュータに実行させることによって、上記プログラミング支援方法を実施することができる。 The programming support method can be implemented by causing a computer to execute the program of this disclosure.

以上より明らかなように、この開示のプログラミング支援装置およびプログラミング支援方法によれば、デバイスポートへの設定値の上書き禁止の機能を、互いに異なる複数のプログラム言語によるプログラム作成へ及ぼすことができる。また、この開示のプログラムによれば、そのようなプログラミング支援方法をコンピュータに実行させることができる。 As is clear from the above, according to the programming support device and programming support method of the present disclosure, the function of prohibiting overwriting of setting values to device ports can be applied to program creation in a plurality of mutually different programming languages. Also, according to the program disclosed in this disclosure, it is possible to cause a computer to execute such a programming support method.

この発明の一実施形態のプログラミング支援装置が適用されたシステムの概略的なブロック構成を示す図である。1 is a diagram showing a schematic block configuration of a system to which a programming support device according to one embodiment of the invention is applied; FIG. 上記プログラミング支援装置をなすパーソナルコンピュータ(PC)のブロック構成を示す図である。FIG. 2 is a diagram showing a block configuration of a personal computer (PC) forming the programming support device; FIG. 上記システムの一部をなす第2ユニット(型番「NX-eeee」)に含まれたI/Oポート群を示す図である。FIG. 4 is a diagram showing a group of I/O ports included in a second unit (model number “NX-eeee”) forming part of the system; 上記プログラミング支援装置の表示画面に、マップ情報テーブルを最初に表示する初期表示処理のフローを示す図である。FIG. 4 is a diagram showing a flow of initial display processing for displaying a map information table first on the display screen of the programming support device; 上記プログラミング支援装置によって、第1のプログラム言語(ラダー言語)による第1のプログラム(シーケンス制御プログラム)に関して、上記マップ情報テーブルの「Variable」欄にデバイス変数を書き込む処理のフローを示す図である。FIG. 4 is a diagram showing a flow of processing for writing device variables in the "Variable" column of the map information table with respect to a first program (sequence control program) in a first program language (ladder language) by the programming support device; 上記プログラミング支援装置によって、第2のプログラム言語(本出願人の独自開発による言語)による第2のプログラム(ロボット制御プログラム)に関して、上記マップ情報テーブルの「Digital I/O」欄にデジタルI/O設定値を書き込む処理のフローを示す図である。With the programming support device, digital I/O is entered in the "Digital I/O" column of the map information table with respect to the second program (robot control program) in the second program language (language independently developed by the applicant). FIG. 10 is a diagram showing a flow of processing for writing setting values; 上記プログラミング支援装置の表示画面に、初期表示処理によって表示されるマップ情報テーブルを例示する図である。It is a figure which illustrates the map information table displayed by initial display processing on the display screen of the said programming support apparatus. 上記マップ情報テーブルへの設定値の書き込み前の状態を示す図である。FIG. 10 is a diagram showing a state before setting values are written to the map information table; 上記マップ情報テーブルへの設定値の書き込み後の状態を示す図である。FIG. 10 is a diagram showing a state after setting values are written to the map information table;

以下、この発明の実施の形態を、図面を参照しながら詳細に説明する。 BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

図1は、この発明の一実施形態のプログラミング支援装置が適用されたシステム400の概略的なブロック構成を示している。このシステム400は、大別して、プログラミング支援装置をなすパーソナルコンピュータ(PC)10と、このPC10に通信ケーブル19を介して通信可能に接続されたプログラマブルロジックコントローラ(PLC)100と、このPLC100に通信ケーブル119を介して通信(この例では、EtherCAT(登録商標)通信)可能に接続されたデバイス群200とを含んでいる。 FIG. 1 shows a schematic block configuration of a system 400 to which a programming support device according to one embodiment of the invention is applied. This system 400 is broadly divided into a personal computer (PC) 10 as a programming support device, a programmable logic controller (PLC) 100 communicably connected to the PC 10 via a communication cable 19, and a communication cable to the PLC 100. 119, and a device group 200 connected so as to be able to communicate (in this example, EtherCAT (registered trademark) communication).

デバイス群200は、この例では、第1ノード201(参照名「Node1」、型番「GX-aaaa」)と、第2ノード202(参照名「Node2」、型番「GX-bbbb」)と、第3ノード203(参照名「Node3」、型番「NX-cccc」)と、この第3ノード203に通信(この例では、EtherCAT(登録商標)通信)可能に接続された第1ユニット204(参照名「Unit1」、型番「NX-dddd」)および第2ユニット205(参照名「Unit2」、型番「NX-eeee」)を含んでいる。これらのデバイス201~205は、それぞれデバイスポートとしての物理I/Oポート(以下、単に「I/Oポート」という。)を複数含んでいる。それらのI/Oポートに設定された設定値は、それぞれ図示しないセンサ、モータ、ロボットなどを駆動するプログラムによって参照される。 In this example, the device group 200 includes a first node 201 (reference name “Node1”, model number “GX-aaaa”), a second node 202 (reference name “Node2”, model number “GX-bbbb”), 3 nodes 203 (reference name “Node3”, model number “NX-cccc”) and a first unit 204 (reference name "Unit1", model number "NX-dddd") and a second unit 205 (reference name "Unit2", model number "NX-eeee"). These devices 201 to 205 each include a plurality of physical I/O ports (hereinafter simply referred to as "I/O ports") as device ports. The set values set in those I/O ports are referenced by programs that drive sensors, motors, robots, etc. (not shown).

例えば、第2ユニット205(型番「NX-eeee」)は、図3に示すように、I/Oポート群206として6個のI/Oポート211~216を含んでいる。これらのI/Oポート211~216には、それぞれ参照名「Output Bit 00」、「Output Bit 00 Time Stamp」、「Output Bit 00 Output Status」、「Output Bit 01」、「Output Bit 01 Time Stamp」、「Output Bit 01 Output Status」が付されている。この例では、これらのI/Oポート211~216に設定された設定値は、図示しないロボットを駆動するプログラムによって参照される。 For example, the second unit 205 (model number “NX-eeee”) includes six I/O ports 211 to 216 as an I/O port group 206, as shown in FIG. These I/O ports 211-216 have the reference names "Output Bit 00", "Output Bit 00 Time Stamp", "Output Bit 00 Output Status", "Output Bit 01" and "Output Bit 01 Time Stamp" respectively. , and “Output Bit 01 Output Status”. In this example, the setting values set in these I/O ports 211 to 216 are referenced by a program that drives a robot (not shown).

図1中に示すPLC100は、制御部101と、マップ情報記憶部102と、シーケンス制御プログラム記憶部103と、ロボット制御プログラム記憶部104とを含んでいる。 PLC 100 shown in FIG. 1 includes control unit 101 , map information storage unit 102 , sequence control program storage unit 103 , and robot control program storage unit 104 .

マップ情報記憶部102は、システム400に含まれた複数のI/Oポートに対応する参照名と、各I/Oポートのための設定値などとを対応付けて、それらのI/Oポート間の階層構造を含めて、マップ情報テーブルとして記憶する(後に図7~図9を参照して詳述する。)。これにより、マップ情報テーブルは、複数のI/Oポート間の階層構造を、EtherCAT(登録商標)ネットワークの構成一覧として含むものとなっている。 The map information storage unit 102 associates reference names corresponding to a plurality of I/O ports included in the system 400 with setting values for each I/O port, and maps data between those I/O ports. is stored as a map information table including the hierarchical structure of (described later in detail with reference to FIGS. 7 to 9). As a result, the map information table includes a hierarchical structure among a plurality of I/O ports as a configuration list of the EtherCAT (registered trademark) network.

図1中に示すシーケンス制御プログラム記憶部103は、第1のプログラム言語(この例では、ラダー言語LD)による第1のプログラム(この例では、シーケンス制御プログラム)を記憶する。 The sequence control program storage unit 103 shown in FIG. 1 stores a first program (sequence control program in this example) in a first program language (ladder language LD in this example).

ロボット制御プログラム記憶部104は、第2のプログラム言語(この例では、本出願人の独自開発による言語)による第2のプログラム(この例では、ロボット制御プログラム)を記憶する。 The robot control program storage unit 104 stores a second program (robot control program in this example) in a second program language (in this example, a language originally developed by the applicant).

制御部101は、動作時に、シーケンス制御プログラム記憶部103に記憶された「シーケンス制御プログラム」に従って、マップ情報記憶部102に記憶されたマップ情報テーブルを参照しながら、例えば、このPLC100自体に接続されたセンサ、モータなどを制御する。それと並行して、制御部101は、ロボット制御プログラム記憶部104に記憶された「ロボット制御プログラム」に従って、マップ情報記憶部102に記憶されたマップ情報テーブル300を参照しながら、例えば、上述の第2ユニット205のI/Oポート211~216を介してロボットの動作(モーション)を制御する。このように、このPLC100は、シーケンス制御プログラムによるシーケンス制御と、ロボット制御プログラムによるロボット制御とを、統合した制御動作を行う。 During operation, the control unit 101 refers to the map information table stored in the map information storage unit 102 in accordance with the "sequence control program" stored in the sequence control program storage unit 103. For example, the controller 101 is connected to the PLC 100 itself. control sensors, motors, etc. At the same time, the control unit 101 refers to the map information table 300 stored in the map information storage unit 102 in accordance with the "robot control program" stored in the robot control program storage unit 104, for example, the above-described first 2 unit 205 through I/O ports 211 to 216 to control the motion of the robot. In this way, the PLC 100 performs a control operation that integrates the sequence control by the sequence control program and the robot control by the robot control program.

図1中に示すPC10は、この例では、主にプログラミング支援装置として、シーケンス制御プログラム記憶部103に記憶される「シーケンス制御プログラム」、および、ロボット制御プログラム記憶部104に記憶される「ロボット制御プログラム」の作成支援のために設けられている。 In this example, the PC 10 shown in FIG. 1 mainly serves as a programming support device for a "sequence control program" stored in the sequence control program storage unit 103 and a "robot control program" stored in the robot control program storage unit 104. It is provided to support the creation of "programs."

この例では、PC10は、図2に示すように、CPU(Central Processing Unit;中央演算処理ユニット)11と、表示器12と、操作部13と、記憶部14と、通信部16とを備えている。 In this example, the PC 10 includes a CPU (Central Processing Unit) 11, a display 12, an operation section 13, a storage section 14, and a communication section 16, as shown in FIG. there is

CPU11は、ソフトウェア(コンピュータプログラム)によって動作し、後述のプログラミング支援方法に従う処理や、その他の各種処理を実行する。 The CPU 11 operates by software (computer program), and executes processing according to a programming support method, which will be described later, and other various types of processing.

表示器12は、この例では、LCD(液晶表示素子)からなり、CPU11からの制御信号に従って、表示画面に画像表示を行う。この例では、表示器12は、マップ情報テーブル300を表示するために用いられる。 In this example, the display device 12 is made up of an LCD (liquid crystal display device) and displays images on the display screen in accordance with control signals from the CPU 11 . In this example, display 12 is used to display map information table 300 .

操作部13は、この例では、キーボードとマウスからなり、ユーザ(操作者)からの指示およびデータなどを入力するために用いられる。 The operation unit 13, in this example, comprises a keyboard and a mouse, and is used to input instructions and data from the user (operator).

記憶部14は、この例では、非一時的にデータを記憶し得るEEPROM(電気的に書き換え可能な不揮発性メモリ)、および、一時的にデータを記憶し得るRAM(ランダム・アクセス・メモリ)を含んでいる。この記憶部14には、CPU11を制御するためのソフトウェア(コンピュータプログラム)が格納されている。また、この例では、記憶部14には、上述のマップ情報テーブルの内容が記憶される。この記憶内容については、後に詳述する。 In this example, the storage unit 14 includes an EEPROM (electrically rewritable nonvolatile memory) that can store data non-temporarily, and a RAM (random access memory) that can store data temporarily. contains. Software (computer program) for controlling the CPU 11 is stored in the storage unit 14 . In this example, the storage unit 14 also stores the contents of the map information table described above. The contents of this memory will be described in detail later.

通信部16は、CPU11によって制御されて所定の情報を外部の装置に送信したり、また、外部の装置からの情報を受信してCPU11に受け渡したりする。この例では、通信部16は、通信ケーブル19を介して、PLC100との通信を行うために働く。 The communication unit 16 is controlled by the CPU 11 to transmit predetermined information to an external device, or receive information from an external device and pass it to the CPU 11 . In this example, the communication section 16 works to communicate with the PLC 100 via the communication cable 19 .

図4~図6は、上述の「シーケンス制御プログラム」および「ロボット制御プログラム」の作成を支援するために、PC10のCPU11が実行するプログラミング支援方法の処理フローを示している。 4 to 6 show the processing flow of the programming support method executed by the CPU 11 of the PC 10 to support the creation of the "sequence control program" and "robot control program" described above.

(初期表示処理)
図4に示す初期表示処理では、まずステップS1に示すように、CPU11は表示処理部として働いて、表示器12の表示画面に、図7に例示するようなマップ情報テーブル300(の表頭を含む外枠)を表示するとともに、ステップS2に示すように、PLC100のマップ情報記憶部102からマップ情報テーブルの内容(構成一覧)を読み出して、マップ情報テーブル300において複数のI/Oポート間の階層構造を展開して表示する。
(Initial display processing)
In the initial display process shown in FIG. 4, first, as shown in step S1, the CPU 11 functions as a display processing unit to display the top of the map information table 300 (as shown in FIG. 7) on the display screen of the display 12. In addition to displaying the contents of the map information table (configuration list) from the map information storage unit 102 of the PLC 100, as shown in step S2, Expand and view hierarchical structures.

図7に示すように、マップ情報テーブル300は、左から順に、システム400における各デバイスの位置を示す「Position」欄301と、それぞれの参照名を示す参照名欄としての「Port」欄302と、各参照名に対応する説明を示す「Description」欄303と、各ポートの設定値がPLC100の動作時に書き込み用「W」であるか又は読み取り用「R」であるかを示す読み出し/書き込み欄としての「R/W」欄304と、各ポートについて書き込まれるべき設定値のデータ型を示すデータ型欄としての「Data Type」欄305と、シーケンス制御プログラムに関してデバイス変数が書き込まれるべき第1の設定値欄としての「Variable」欄306と、そのデバイス変数の型が書き込まれるべき「Variable Type」欄307と、ロボット制御プログラムに関してデジタルI/O設定値が書き込まれるべき第2の設定値欄としての「Digital I/O」欄308とを含んでいる。 As shown in FIG. 7, the map information table 300 includes, from left to right, a "Position" column 301 indicating the position of each device in the system 400, and a "Port" column 302 as a reference name column indicating each reference name. , a “Description” column 303 indicating a description corresponding to each reference name, and a read/write column indicating whether the setting value of each port is “W” for writing or “R” for reading when the PLC 100 operates. a "R/W" column 304 as a data type, a "Data Type" column 305 as a data type column indicating the data type of the set value to be written for each port, and a first column to which device variables are to be written with respect to the sequence control program. A "Variable" column 306 as a setting value column, a "Variable Type" column 307 in which the type of the device variable is to be written, and a second setting value column in which the digital I/O setting value for the robot control program is to be written. and a "Digital I/O" column 308 of .

上述の「Position」欄301と「Port」欄302によって、システム400に含まれたデバイス群の、EtherCAT(登録商標)ネットワークにおける階層構造が表されている。この例では、「Port」欄302の最上段セル310に、EtherCAT(登録商標)ネットワークの構成であることを示す「EtherCAT Network Configuration」と表示されている。その下方で、「Position」欄301のセル311,312,313に上から下へ向かって順に、それぞれ第1ノード201の参照名「Node1」、第2ノード202の参照名「Node2」、第3ノード203の参照名「Node3」が表示されている。それらのセル311,312,313に対応して、「Port」欄302には、それぞれのノードの型番「GX-aaaa」、「GX-bbbb」、「NX-cccc」が表示されている。さらに、その下方で、「Position」欄301のセル314,315に上から下へ向かって順に、それぞれ第1ユニット204の参照名「Unit1」、第2ユニット205の参照名「Unit2」が表示されている。それらのセル314,315に対応して、「Port」欄302には、それぞれのユニットの型番「NX-dddd」、「NX-eeee」が表示されている。 The "Position" column 301 and the "Port" column 302 described above represent the hierarchical structure of the devices included in the system 400 in the EtherCAT (registered trademark) network. In this example, the uppermost cell 310 of the "Port" column 302 displays "EtherCAT Network Configuration" indicating the configuration of the EtherCAT (registered trademark) network. Below that, cells 311, 312, and 313 of the "Position" column 301 are in order from top to bottom: the reference name "Node1" of the first node 201, the reference name "Node2" of the second node 202, the third The reference name "Node3" of the node 203 is displayed. Corresponding to these cells 311, 312, and 313, the model number of each node "GX-aaaa", "GX-bbbb", and "NX-cccc" is displayed in the "Port" column 302. FIG. Furthermore, below it, the reference name "Unit1" of the first unit 204 and the reference name "Unit2" of the second unit 205 are displayed in order from top to bottom in cells 314 and 315 of the "Position" column 301. ing. Corresponding to these cells 314 and 315, the model numbers "NX-dddd" and "NX-eeee" of the respective units are displayed in the "Port" column 302. FIG.

さらに、その下方で、「Port」欄302のセル321,322,323,324,325,326に上から下へ向かって順に、それぞれ第2ユニット205(型番「NX-eeee」)に含まれたI/Oポート211,212,213,214,215,216の参照名「Output Bit 00」、「Output Bit 00 Time Stamp」、「Output Bit 00 Output Status」、「Output Bit 01」、「Output Bit 01 Time Stamp」、「Output Bit 01 Output Status」が表示されている。図7中に破線390で囲んで示すように、この例では、第2ユニット205(型番「NX-eeee」)に含まれたI/Oポート211~216に注目している。 Furthermore, below that, cells 321, 322, 323, 324, 325, and 326 of the "Port" column 302 are included in the second unit 205 (model number "NX-eeee") in order from top to bottom. Reference names for I/O ports 211, 212, 213, 214, 215, 216 "Output Bit 00", "Output Bit 00 Time Stamp", "Output Bit 00 Output Status", "Output Bit 01", "Output Bit 01" "Time Stamp" and "Output Bit 01 Output Status" are displayed. As indicated by dashed line 390 in FIG. 7, this example focuses on I/O ports 211-216 included in second unit 205 (model number “NX-eeee”).

この例では、「R/W」欄304に示すように、I/Oポート211(参照名「Output Bit 00」)、I/Oポート212(参照名「Output Bit 00 Time Stamp」)、I/Oポート214(参照名「Output Bit 01」)、および、I/Oポート215(参照名「Output Bit 01 Time Stamp」)の設定値は、それぞれ書き込み用「W」になっている。一方、I/Oポート213(参照名「Output Bit 00 Output Status」)、および、I/Oポート216(参照名「Output Bit 01 Output Status」)の設定値は、それぞれ読み取り用「R」になっている。 In this example, as shown in the "R/W" column 304, I/O port 211 (reference name "Output Bit 00"), I/O port 212 (reference name "Output Bit 00 Time Stamp"), I/O The setting values of the O port 214 (reference name “Output Bit 01”) and the I/O port 215 (reference name “Output Bit 01 Time Stamp”) are “W” for writing. On the other hand, the setting values of the I/O port 213 (reference name “Output Bit 00 Output Status”) and the I/O port 216 (reference name “Output Bit 01 Output Status”) are “R” for reading. ing.

また、この例では、「Data Type」欄305に示すように、I/Oポート211(参照名「Output Bit 00」)、I/Oポート213(参照名「Output Bit 00 Output Status」)、I/Oポート214(参照名「Output Bit 01」)、および、I/Oポート216(参照名「Output Bit 01 Output Status」)のデータ型は、それぞれBOOL型になっている。一方、I/Oポート212(参照名「Output Bit 00 Time Stamp」)、および、I/Oポート215(参照名「Output Bit 01 Time Stamp」)のデータ型は、それぞれULINT型になっている。ここで、BOOL型とは、真理値の「真=true」と「偽=false」という2値をとるデータ型を指す。BOOL型であれば、シーケンス制御プログラムとロボット制御プログラムとの両方に使用可能である。ULINT型とは、符号なしの、64ビットの整数値をとるデータ型を指す。ULINT型であれば、シーケンス制御プログラムには使用可能であるが、ロボット制御プログラムには使用不可である。このように、このマップ情報テーブル300では、「Data Type」欄305に、各I/Oポート211~216に書き込まれるべき設定値のデータ型が示される。したがって、各プログラム作成者が書き込むべき設定値のデータ型を間違うことが無い。 In this example, as shown in the "Data Type" column 305, the I/O port 211 (reference name "Output Bit 00"), the I/O port 213 (reference name "Output Bit 00 Output Status"), I The data type of the /O port 214 (reference name “Output Bit 01”) and the I/O port 216 (reference name “Output Bit 01 Output Status”) are both BOOL types. On the other hand, the data type of the I/O port 212 (reference name “Output Bit 00 Time Stamp”) and the I/O port 215 (reference name “Output Bit 01 Time Stamp”) are ULINT types. Here, the BOOL type refers to a data type that takes two truth values of “true=true” and “false=false”. The BOOL type can be used for both sequence control programs and robot control programs. The ULINT type refers to a data type that takes an unsigned 64-bit integer value. The ULINT type can be used for sequence control programs, but cannot be used for robot control programs. Thus, in this map information table 300, the data type of the setting value to be written to each of the I/O ports 211-216 is shown in the "Data Type" column 305. FIG. Therefore, the data type of the setting value to be written by each program creator is not mistaken.

次に、図4のステップS3に進んで、CPU11はデータ型判断部として働いて、この例では第2ユニット205(型番「NX-eeee」)の各I/Oポート211~216のデータ型がBOOL型であるか否かを判断する。つまり、実質的に、各I/Oポート211~216のデータ型が各プログラムに関して設定値の書き込みに使用可能であるか否かを判断する。 Next, proceeding to step S3 in FIG. 4, the CPU 11 acts as a data type determination unit, and in this example, the data types of the I/O ports 211 to 216 of the second unit 205 (model number "NX-eeee") are Determine whether it is of BOOL type. That is, in effect, it determines whether the data type of each I/O port 211-216 can be used to write setting values for each program.

ここで、上述のようにI/Oポート211(参照名「Output Bit 00」)、I/Oポート213(参照名「Output Bit 00 Output Status」)、I/Oポート214(参照名「Output Bit 01」)、および、I/Oポート216(参照名「Output Bit 01 Output Status」)のデータ型はそれぞれBOOL型であることから(ステップS3でYES)、CPU11は、「Variable」欄306へのデバイス変数の書き込みと、「Digital I/O」欄308へのデジタルI/O設定値の書き込みとの両方に使用可能であると判断する。そして、図4のステップS4で、CPU11は表示処理部として働いて、それらのI/Oポート211,213,214,216について、図7中の「Variable」欄306の対応するセル331,333,334,336と、「Variable Type」欄307の対応するセル341,343,344,346と、「Digital I/O」欄308の対応するセル351,353,354,356とに、それぞれ書き込みに使用可能であることを表す書き込み可能表示を行う。この例では、書き込み可能表示は、図7中に示すように、それらのセル331,333,334,336;341,343,344,346;351,353,354,356を白色(または明色)にすることに相当する。 Here, as described above, I/O port 211 (reference name “Output Bit 00”), I/O port 213 (reference name “Output Bit 00 Output Status”), I/O port 214 (reference name “Output Bit 01”) and the I/O port 216 (reference name “Output Bit 01 Output Status”) are of the BOOL type (YES in step S3). It is determined that it can be used both for writing device variables and for writing digital I/O setting values to the “Digital I/O” column 308 . Then, in step S4 of FIG. 4, the CPU 11 acts as a display processing unit, and for those I/O ports 211, 213, 214, and 216, corresponding cells 331, 333, 334, 336, corresponding cells 341, 343, 344, 346 in the "Variable Type" column 307, and corresponding cells 351, 353, 354, 356 in the "Digital I/O" column 308, respectively. A writable indication is displayed to indicate that it is possible. 341, 343, 344, 346; 351, 353, 354, 356 as shown in FIG. Equivalent to making

一方、I/Oポート212(参照名「Output Bit 00 Time Stamp」)、および、I/Oポート215(参照名「Output Bit 01 Time Stamp」)のデータ型はそれぞれULINT型であることから(ステップS3でNO)、CPU11は、「Variable」欄306へのデバイス変数の書き込みには使用可能であるが、「Digital I/O」欄308へのデジタルI/O設定値の書き込みには使用不可と判断する。そして、図4のステップS5で、CPU11は表示処理部として働いて、それらのI/Oポート212,215について、図7中の「Variable」欄306の対応するセル332,335と、「Variable Type」欄307の対応するセル342,345とに、それぞれ書き込みに使用可能であることを表す書き込み可能表示を行う一方、「Digital I/O」欄308の対応するセル352,355に書き込み不能であることを表す書き込み不能表示を行う。この例では、この書き込み不能表示は、図7中に示すように、それらのセル352,355を暗色(上記白色または明色よりも暗い色を意味する。)にすることに相当する。なお、書き込み不能表示は、この態様の表示に限られるものではなく、例えば、各セルに斜めの罫線を付すなどの、他の態様の表示であってもよい(以下同様。)。つまり、書き込み不能表示は、ユーザがそれを見たとき、直感的に書き込み不能であることを認識できれば良い。 On the other hand, since the data type of the I/O port 212 (reference name “Output Bit 00 Time Stamp”) and the I/O port 215 (reference name “Output Bit 01 Time Stamp”) are each ULINT type (step NO in S3), the CPU 11 can be used to write device variables to the "Variable" column 306, but cannot be used to write digital I/O setting values to the "Digital I/O" column 308. to decide. Then, in step S5 of FIG. 4, the CPU 11 acts as a display processing unit, and for those I/O ports 212 and 215, corresponding cells 332 and 335 of the "Variable" column 306 in FIG. ' column 307 indicate that they are writable, while the corresponding cells 352 and 355 of the 'Digital I/O' column 308 are write-disabled. A non-writable display is displayed. In this example, this non-writable indication corresponds to making those cells 352 and 355 dark (meaning a color darker than the white or bright color), as shown in FIG. Note that the indication of write impossibility is not limited to this form of display, and may be another form of display such as, for example, adding oblique ruled lines to each cell (the same shall apply hereinafter). In other words, it is sufficient for the user to be able to intuitively recognize that writing is impossible when viewing the indication that writing is impossible.

CPU11は、このようにして初期表示処理(図4)を完了する。この例では、初期表示処理によって作成されたマップ情報テーブル300は、PC10の記憶部14に保存されるとともに、PLC100のマップ情報記憶部102に保存される。このマップ情報テーブル300は、次に述べる「Variable」欄306へのデバイス変数の書き込み処理(図5)、および/または、「Digital I/O」欄308へのデジタルI/O設定値の書き込み処理(図6)の際に参照される。 The CPU 11 thus completes the initial display process (FIG. 4). In this example, the map information table 300 created by the initial display process is stored in the storage unit 14 of the PC 10 and also stored in the map information storage unit 102 of the PLC 100 . This map information table 300 is used for write processing of device variables to the "Variable" column 306 (FIG. 5) and/or write processing of digital I/O setting values to the "Digital I/O" column 308, which will be described below. (FIG. 6).

ここで、図7に示したマップ情報テーブル300では、「Variable」欄306、「Variable Type」欄307、「Digital I/O」欄308の各セルに、書き込み可能表示または書き込み不能表示が行われている。したがって、プログラム作成者は、「Variable」欄306、「Digital I/O」欄308の各セルに設定値を書き込み可能であるか否かを、視覚を通して直感的に知ることができる。したがって、書き込み不能表示を見たプログラム作成者は、上記データ型が上記設定値の書き込みに使用不可であると判断されたプログラムのための設定値欄(上の例では、ロボット制御プログラムのためのセル352,355)に、設定値の書き込みを無駄に試みることが無い。 Here, in the map information table 300 shown in FIG. 7, each cell of the "Variable" column 306, the "Variable Type" column 307, and the "Digital I/O" column 308 is displayed as writable or unwritable. ing. Therefore, the program creator can visually and intuitively know whether or not the setting value can be written to each cell of the "Variable" column 306 and the "Digital I/O" column 308 . Therefore, the program creator who sees the write impossibility display should read the setting value field for the program for which the above data type cannot be used for writing the above setting value (in the above example, the There is no needless attempt to write setting values to the cells 352, 355).

また、上述のマップ情報テーブル300では、設定値欄は、シーケンス制御プログラムのための「Variable」欄306と、ロボット制御プログラムのための「Digital I/O」欄308とに区分されている。したがって、ラダー言語LDによるシーケンス制御プログラムに関して、そのプログラムを作成するプログラム作成者は「Variable」欄306へデバイス変数の書き込みを行うことを促される。一方、独自の言語によるロボット制御プログラムに関して、そのプログラムを作成するプログラム作成者は、許容されていれば、「Digital I/O」欄308へデジタルI/O設定値の書き込みを行うことを促される。したがって、シーケンス制御プログラムとロボット制御プログラムの作成を互いに別のプログラム作成者が担当する場合であっても、各プログラム作成者が設定値の書き込みを行うべき欄を迷うことが無い。 In the map information table 300 described above, the set value column is divided into a "Variable" column 306 for the sequence control program and a "Digital I/O" column 308 for the robot control program. Therefore, regarding the sequence control program in the ladder language LD, the program creator who creates the program is urged to write the device variables in the “Variable” column 306 . On the other hand, regarding the robot control program in its own language, the program creator who creates the program is prompted to write the digital I/O setting values in the "Digital I/O" column 308, if permitted. . Therefore, even if different program creators are in charge of creating the sequence control program and the robot control program, each program creator does not get lost in which field to write the setting value.

(デバイス変数の書き込み処理)
図5に示すデバイス変数の書き込み処理では、まずステップS11に示すように、CPU11は表示処理部として働いて、この例では記憶部14から図8に例示するようなマップ情報テーブル300(この例では、図7に示したものと同じ)を読み出して、表示器12の表示画面に表示する。なお、PLC100のマップ情報記憶部102からマップ情報テーブルの内容(構成一覧)を読み出して、それが更新されていれば、マップ情報テーブル300を更新して表示してもよい。
(Device variable write processing)
In the device variable writing process shown in FIG. 5, first, as shown in step S11, the CPU 11 functions as a display processing unit, and in this example, the map information table 300 shown in FIG. , the same as those shown in FIG. 7) and displayed on the display screen of the display 12. FIG. Note that the contents of the map information table (configuration list) may be read out from the map information storage unit 102 of the PLC 100 and, if updated, the map information table 300 may be updated and displayed.

次に、ユーザが、操作部13を介して、シーケンス制御プログラムに関して、例えばI/Oポート211(参照名「Output Bit 00」)について、「Variable」欄306の対応するセル331にデバイス変数「N2_Output_Bit_00」を入力し、また、これに伴って「Variable Type」欄307の対応するセル341にそのデバイス変数の型「Global Variables」を入力したものとする。すると、図5のステップS12で、CPU11は書き込み判断部として働いて、図9中に示すように、I/Oポート211について設定値の書き込みがなされたと判断して、「Variable」欄306のセル331に、デバイス変数「N2_Output_Bit_00」を書き込んで表示する。これとともに、CPU11は、「Variable Type」欄307のセル341に、デバイス変数の型「Global Variables」を書き込んで表示する。 Next, the user enters the device variable "N2_Output_Bit_00" into the corresponding cell 331 of the "Variable" column 306 for the I/O port 211 (reference name "Output Bit 00") for the sequence control program via the operation unit 13. ” is entered, and the device variable type “Global Variables” is entered in the corresponding cell 341 of the “Variable Type” column 307 . Then, in step S12 of FIG. 5, the CPU 11 acts as a write determination unit, determines that the set value has been written to the I/O port 211 as shown in FIG. 331, the device variable "N2_Output_Bit_00" is written and displayed. Along with this, the CPU 11 writes and displays the device variable type “Global Variables” in the cell 341 of the “Variable Type” column 307 .

次に、図5のステップS13で、CPU11は、図9中に示す「R/W」欄304を参照して、そのI/Oポート211が書き込み用のポートであるか否かを判断する。この例では、I/Oポート211は書き込み用「W」のポートであることから(ステップS13でYES)、図5のステップS14で、CPU11は上書き禁止部として働いて、そのI/Oポート211について、この例では「Digital I/O」欄308の対応するセル351への設定値の書き込みを禁止する。これとともに、CPU11は表示処理部として働いて、その「Digital I/O」欄308のセル351に、デジタルI/O設定値の書き込みが不可であることを表す書き込み不能表示を行う。この例では、この書き込み不能表示は、図9中に破線391で囲んで示すように、そのセル351を暗色にすることに相当する(図8中に破線391で囲んで示す元の白色または明色と比較されたい。)。 Next, at step S13 in FIG. 5, the CPU 11 refers to the "R/W" column 304 shown in FIG. 9 to determine whether the I/O port 211 is a writing port. In this example, since the I/O port 211 is a write "W" port (YES in step S13), the CPU 11 acts as an overwrite protection unit in step S14 of FIG. , in this example, writing of the set value to the corresponding cell 351 of the "Digital I/O" column 308 is prohibited. Along with this, the CPU 11 acts as a display processing unit, and displays in the cell 351 of the "Digital I/O" column 308 that writing of the digital I/O setting value is impossible. In this example, this non-writable indication corresponds to darkening the cell 351 as indicated by dashed line 391 in FIG. (see color comparison).

したがって、その書き込み不能表示を見たプログラム作成者は、上記設定値の書き込みが禁止された設定値欄(上の例では、「Digital I/O」欄308のセル351)へ、設定値の書き込みを無駄に試みることが無い。 Therefore, the program creator who sees the write impossibility display writes the setting value to the setting value column (in the above example, the cell 351 of the "Digital I/O" column 308) in which writing of the setting value is prohibited. There is no useless attempt to

なお、図5のステップS12で、設定値の書き込みがなされたセルが例えばI/Oポート213(参照名「Output Bit 00 Output Status」)に対応するセル333,343であれば、そのI/Oポート213は読み取り用「」のポートであることから(ステップS13でNO)、図9中に示すように、CPU11は、そのI/Oポート213について、「Digital I/O」欄308の対応するセル353への設定値の書き込みを許容する。したがって、そのセル353に、ロボット制御プログラムのための設定値の書き込みが可能になる。この例では、図9中に示すように、セル353に、4010という値が書き込まれている。 In step S12 of FIG. 5, if the cells to which the set values are written are the cells 333 and 343 corresponding to the I/O port 213 (reference name "Output Bit 00 Output Status"), the I/O Since the port 213 is the reading " R " port (NO in step S13), the CPU 11, as shown in FIG. It permits the writing of the set value to the cell 353 that Therefore, it becomes possible to write set values for the robot control program in the cell 353 . In this example, a value of 4010 is written in cell 353, as shown in FIG.

(デジタルI/O設定値の書き込み処理)
図6に示すデジタルI/O設定値の書き込み処理では、まずステップS21に示すように、CPU11は表示処理部として働いて、この例では記憶部14から図8に例示するようなマップ情報テーブル300(この例では、図7に示したものと同じ)を読み出して、表示器12の表示画面に表示する。なお、図5中のステップS11に関して述べたのと同様に、PLC100のマップ情報記憶部102からマップ情報テーブルの内容(構成一覧)を読み出して、それが更新されていれば、マップ情報テーブル300を更新して表示してもよい。
(Write processing of digital I/O setting values)
In the process of writing the digital I/O setting values shown in FIG. 6, first, as shown in step S21, the CPU 11 functions as a display processing unit, and in this example, the map information table 300 shown in FIG. (in this example, the same as that shown in FIG. 7) is read out and displayed on the display screen of the display 12 . 5, the contents of the map information table (configuration list) are read from the map information storage unit 102 of the PLC 100, and if it has been updated, the map information table 300 is updated. May be updated and displayed.

次に、ユーザが、操作部13を介して、ロボット制御プログラムに関して、例えばI/Oポート214(参照名「Output Bit 01」)について、「Digital I/O」欄308のセル354にデジタルI/O設定値(この例では、4009という値)を入力したものとする。すると、図5のステップS22で、CPU11は書き込み判断部として働いて、図9中に示すように、「Digital I/O」欄308のセル354に、デジタルI/O設定値(この例では、4009という値)を書き込んで表示する。 Next, the user inputs a digital I/O to the cell 354 of the “Digital I/O” column 308 for the robot control program, for example, the I/O port 214 (reference name “Output Bit 01”) via the operation unit 13 . It is assumed that the O setting value (the value of 4009 in this example) is input. Then, in step S22 of FIG. 5, the CPU 11 acts as a write determination unit, and as shown in FIG. 4009) is written and displayed.

次に、図6のステップS23で、CPU11は、図9中に示す「R/W」欄304を参照して、そのI/Oポート214が書き込み用のポートであるか否かを判断する。この例では、I/Oポート214は書き込み用「W」のポートであることから(ステップS23でYES)、図6のステップS24で、CPU11は上書き禁止部として働いて、そのI/Oポート214について、この例では「Variable」欄306の対応するセル334、および、「Variable Type」欄307の対応するセル344への設定値の書き込みを禁止する。これとともに、CPU11は表示処理部として働いて、その「Variable」欄306のセル334、および、「Variable Type」欄307のセル344に、書き込みが不可であることを表す書き込み不能表示を行う。この例では、それらの書き込み不能表示は、図9中に破線392で囲んで示すように、それらのセル334,344を暗色にすることに相当する(図8中に破線392で囲んで示す元の白色または明色と比較されたい。)。 Next, at step S23 in FIG. 6, the CPU 11 refers to the "R/W" column 304 shown in FIG. 9 to determine whether the I/O port 214 is a writing port. In this example, since the I/O port 214 is a write "W" port (YES in step S23), the CPU 11 acts as an overwrite protection unit in step S24 of FIG. In this example, writing of set values to the corresponding cell 334 of the "Variable" column 306 and the corresponding cell 344 of the "Variable Type" column 307 is prohibited. Along with this, the CPU 11 acts as a display processing unit, and displays a write-impossible display in the cell 334 of the "Variable" column 306 and the cell 344 of the "Variable Type" column 307 to indicate that writing is not possible. In this example, their unwritable indication corresponds to darkening those cells 334, 344, as indicated by the dashed line 392 in FIG. (compare with the white or light color of .).

したがって、その書き込み不能表示を見たプログラム作成者は、上記設定値の書き込みが禁止された設定値欄(上の例では、「Variable」欄306のセル334,344)へ、設定値の書き込みを無駄に試みることが無い。 Therefore, the program creator who sees the write-impossible indication writes the set value to the set value column (the cells 334 and 344 of the "Variable" column 306 in the above example) in which writing of the set value is prohibited. No wasted attempts.

なお、図6のステップS22で、設定値の書き込みがなされたセルが例えばI/Oポート213(参照名「Output Bit 00 Output Status」)に対応するセル353であれば、そのI/Oポート213は読み取り用「」のポートであることから(ステップS23でNO)、図9中に示すように、CPU11は、そのI/Oポート213について、「Variable」欄306の対応するセル334、および、「Variable Type」欄307の対応するセル344への設定値の書き込みを許容する。したがって、それらのセル334,344に、シーケンス制御プログラムのための設定値の書き込みが可能になる。この例では、図9中に示すように、セル333にデバイス変数「N2_Output_Bit_00」が書き込まれている。また、それに伴って、セル333に、デバイス変数の型「Global Variables」が書き込まれている。 In addition, in step S22 of FIG. 6, if the cell to which the setting value is written is, for example, the cell 353 corresponding to the I/O port 213 (reference name “Output Bit 00 Output Status”), the I/O port 213 is the reading " R " port (NO in step S23), as shown in FIG. , to write the set value to the corresponding cell 344 of the “Variable Type” column 307 . Therefore, setting values for the sequence control program can be written to these cells 334 and 344 . In this example, as shown in FIG. 9, the cell 333 is written with the device variable "N2_Output_Bit_00." Along with this, the device variable type “Global Variables” is written in the cell 333 .

このように、このプログラミング支援方法によれば、デバイスポートへの設定値の上書き禁止の機能を、互いに異なる複数のプログラム言語によるプログラム作成へ及ぼすことができる。したがって、それぞれのプログラムを作成するプログラム作成者は、このようにして適切に設定値の書き込みがなされたマップ情報テーブル300を適宜参照しながら、プログラムを作成することができる。これにより、複数のデバイスポートについての設定値は、各プログラム作成者が意図した状態になる。 In this manner, according to this programming support method, the function of prohibiting overwriting of set values for device ports can be applied to program creation in a plurality of different programming languages. Therefore, the program creator who creates each program can create the program while appropriately referring to the map information table 300 in which the setting values are appropriately written in this way. As a result, the setting values for the plurality of device ports are in the state intended by each program creator.

なお、CPU11は、図5のステップS14で設定値の書き込みが禁止された設定値欄(図9中に示す「Digital I/O」欄308のセル351)、図6のステップS24で設定値の書き込みが禁止された設定値欄(図9中に示す「Variable」欄306のセル334、および、「Variable Type」欄307のセル344)について、操作部13を介したユーザの指示(書き込み禁止を解除する指示)があれば、上記設定値の書き込み禁止を解除し、書き込み不能表示を解消してもよい。これにより、プログラム作成の状況に応じて、ユーザの便宜を図ることができる。 5 (the cell 351 of the "Digital I/O" column 308 shown in FIG. 9), and writes the set value in step S24 of FIG. The user's instruction via the operation unit 13 (write-inhibited) in the write-protected setting value column (the cell 334 of the "Variable" column 306 and the cell 344 of the "Variable Type" column 307 shown in FIG. 9). If there is a release instruction), the write prohibition of the set value may be released to eliminate the write impossibility display. As a result, the user's convenience can be achieved according to the situation of program creation.

上述の実施形態では、第1のプログラム言語はラダー言語LDであり、第2のプログラム言語は本出願人の独自開発による言語であるものとしたが、これに限られるものではない。この発明は、互いに異なる複数のプログラム言語に広く適用することができる。 In the above-described embodiment, the first programming language is the ladder language LD and the second programming language is the language independently developed by the applicant, but the invention is not limited to this. The present invention can be widely applied to a plurality of different programming languages.

上述のプログラミング支援方法を、ソフトウェア(コンピュータプログラム)として、CD(コンパクトディスク)、DVD(デジタル万能ディスク)、不揮発性メモリなどの非一時的(non-transitory)にデータを記憶可能な記録媒体に記録してもよい。このような記録媒体に記録されたソフトウェアを、パーソナルコンピュータ、PDA(パーソナル・デジタル・アシスタンツ)などの実質的なコンピュータ装置にインストールすることによって、それらのコンピュータ装置に、上述のプログラミング支援方法を実行させることができる。 The above-described programming support method is recorded as software (computer program) in a recording medium capable of non-transitory data storage such as CD (Compact Disc), DVD (Digital Versatile Disc), non-volatile memory, etc. You may By installing the software recorded in such a recording medium in substantial computer devices such as personal computers and PDAs (Personal Digital Assistants), these computer devices are caused to execute the above-described programming support method. be able to.

以上の実施形態は例示であり、この発明の範囲から離れることなく様々な変形が可能である。上述した複数の実施の形態は、それぞれ単独で成立し得るものであるが、実施の形態同士の組みあわせも可能である。また、異なる実施の形態の中の種々の特徴も、それぞれ単独で成立し得るものであるが、異なる実施の形態の中の特徴同士の組みあわせも可能である。 The above embodiments are examples, and various modifications are possible without departing from the scope of the present invention. Although each of the above-described multiple embodiments can be established independently, combinations of the embodiments are also possible. Also, various features in different embodiments can be established independently, but combinations of features in different embodiments are also possible.

10 PC
11 CPU
100 PLC
200 デバイス群
211~216 I/Oポート
10 PCs
11 CPUs
100PLC
200 devices 211-216 I/O ports

Claims (6)

複数のデバイスポートを含み、動作時に各デバイスポートが複数のプログラム言語によって参照されるようになっているシステムのための、上記複数のプログラム言語によるプログラム作成を支援するプログラミング支援装置であって、
上記複数のプログラム言語によるプログラムが作成される際に、表示画面上に、上記複数のデバイスポートをそれぞれ表す参照名欄と、上記各デバイスポートが上記システムの動作時に書き込み用のポートであるか又は読み取り用のポートであるかを示す読み出し/書き込み欄と、上記各デバイスポートのための設定値欄とを対応付けて、マップ情報テーブルとして一覧表示する表示処理部を備え
上記設定値欄は、第1のプログラムのための第1の設定値欄と、第2のプログラムのための第2の設定値欄とに区分されており、
第1のプログラム言語による上記第1のプログラムに関して、上記各デバイスポートについて上記第1の設定値欄への設定値の書き込みがなされたか否かを判断する書き込み判断部と、
上記第1のプログラム言語による上記第1のプログラムに関して、上記第1の設定値欄への設定値の書き込みがなされたと判断されたデバイスポートについて、上記読み出し/書き込み欄を参照して、上記デバイスポートが上記システムの動作時に書き込み用のポートであるとき、上記第1のプログラム言語とは異なる第2のプログラム言語による第2のプログラムに関して、上記第2の設定値欄への設定値の書き込みを禁止する一方、上記デバイスポートが上記システムの動作時に読み出し用のポートであるとき、上記第2のプログラム言語による上記第2のプログラムに関して、上記第2の設定値欄への設定値の書き込みを許容する上書き禁止部と
を備えたことを特徴とするプログラミング支援装置。
A programming support device for supporting program creation in a plurality of programming languages for a system including a plurality of device ports, each device port being referenced by a plurality of programming languages during operation , comprising :
When the program is created in the plurality of programming languages, on the display screen, a reference name field representing each of the plurality of device ports and whether each device port is a port for writing during operation of the system, or a display processing unit that associates a read/write column indicating whether the port is for reading and a setting value column for each device port and displays a list as a map information table;
The setting value column is divided into a first setting value column for the first program and a second setting value column for the second program,
a write determination unit that determines whether or not a setting value has been written to the first setting value column for each of the device ports with respect to the first program in the first programming language;
With respect to the first program in the first programming language, with respect to the device port for which it is determined that the setting value has been written to the first setting value column, the device port is referred to the read/write column. is a port for writing during the operation of the system, prohibiting the writing of the setting value to the second setting value field with respect to the second program in the second programming language different from the first programming language On the other hand, when the device port is a port for reading during the operation of the system, writing of the setting value to the second setting value field is permitted with respect to the second program in the second program language. A programming support device, comprising: an overwrite prohibition section.
請求項に記載のプログラミング支援装置において、
上記表示処理部は、上記設定値の書き込みが禁止された上記第2の設定値欄に、書き込み不能であることを表す書き込み不能表示を行うことを特徴とするプログラミング支援装置。
In the programming support device according to claim 1 ,
The programming support device, wherein the display processing unit displays a write-disabled display indicating that writing is disabled in the second set-value column in which writing of the set-value is prohibited.
請求項またはに記載のプログラミング支援装置において、
上記マップ情報テーブルは、さらに、上記各デバイスポートについて書き込まれるべき設定値のデータ型を示すデータ型欄を含むことを特徴とするプログラミング支援装置。
The programming support device according to claim 1 or 2 ,
The programming support device, wherein the map information table further includes a data type column indicating a data type of the set value to be written for each device port.
請求項に記載のプログラミング支援装置において、
上記各デバイスポートについて上記データ型欄に示されたデータ型が、上記各プログラムに関して上記設定値の書き込みに使用可能であるか否かを判断するデータ型判断部を備え、
上記表示処理部は、上記各デバイスポートについての、上記データ型が上記設定値の書き込みに使用不可であると判断されたプログラムのための設定値欄に、書き込み不能であることを表す書き込み不能表示を行うことを特徴とするプログラミング支援装置。
In the programming support device according to claim 3 ,
a data type determination unit that determines whether the data type indicated in the data type column for each device port can be used for writing the setting value for each program;
The display processing unit displays, for each device port, a write-disabled display indicating that writing is disabled in the setting value column for the program for which the data type is determined to be unusable for writing the setting value. A programming support device characterized by performing
複数のデバイスポートを含み、動作時に各デバイスポートが複数のプログラム言語によって参照されるようになっているシステムのための、上記複数のプログラム言語によるプログラム作成を支援するプログラミング支援装方法であって、
上記複数のプログラム言語によるプログラムが作成される際に、表示画面上に、上記複数のデバイスポートをそれぞれ表す参照名欄と、上記各デバイスポートが上記システムの動作時に書き込み用のポートであるか又は読み取り用のポートであるかを示す読み出し/書き込み欄と、上記各デバイスポートのための設定値欄とを対応付けて、マップ情報テーブルとして一覧表示するステップを有し
上記設定値欄は、第1のプログラムのための第1の設定値欄と、第2のプログラムのための第2の設定値欄とに区分されており、
第1のプログラム言語による上記第1のプログラムに関して、上記デバイスポートについて上記第1の設定値欄への設定値の書き込みがなされたか否かを判断するステップと
上記第1のプログラム言語による上記第1のプログラムに関して、上記第1の設定値欄への設定値の書き込みがなされたと判断されたデバイスポートについて、上記読み出し/書き込み欄を参照して、上記デバイスポートが上記システムの動作時に書き込み用のポートであると判断したとき、上記第1のプログラム言語とは異なる第2のプログラム言語による第2のプログラムに関して、上記第2の設定値欄への設定値の書き込みを禁止する一方、上記デバイスポートが上記システムの動作時に読み出し用のポートであると判断したとき、上記第2のプログラム言語による上記第2のプログラムに関して、上記第2の設定値欄への設定値の書き込みを許容するステップと
を有することを特徴とするプログラミング支援方法。
A programming support method for supporting programming in multiple programming languages for a system including multiple device ports, wherein each device port is referenced by multiple programming languages during operation, the method comprising: ,
When the program is created in the plurality of programming languages, on the display screen, a reference name field representing each of the plurality of device ports and whether each device port is a port for writing during operation of the system, or a step of displaying a list as a map information table in association with a read/write column indicating whether it is a read port and a setting value column for each of the device ports;
The setting value column is divided into a first setting value column for the first program and a second setting value column for the second program,
determining whether or not a setting value has been written to the first setting value column for each of the device ports with respect to the first program in the first programming language;
With respect to the first program in the first programming language, with respect to the device port for which it is determined that the setting value has been written to the first setting value column, the device port is referred to the read/write column. is a port for writing during the operation of the system, the setting value in the second setting value column for the second program in the second programming language different from the first programming language While prohibiting writing, when it is determined that the device port is a port for reading during the operation of the system, the second program in the second program language is set in the second set value field. Steps that allow writing values and
A programming support method comprising:
請求項に記載のプログラミング支援方法をコンピュータに実行させるためのプログラム。 A program for causing a computer to execute the programming support method according to claim 5 .
JP2018155598A 2018-08-22 2018-08-22 Programming support device, programming support method, and program Active JP7124556B2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2018155598A JP7124556B2 (en) 2018-08-22 2018-08-22 Programming support device, programming support method, and program
EP19851042.2A EP3842879B1 (en) 2018-08-22 2019-07-19 Programming assistance device, programming assistance method, and program
PCT/JP2019/028520 WO2020039810A1 (en) 2018-08-22 2019-07-19 Programming assistance device, programming assistance method, and program
US17/171,454 US11307829B2 (en) 2018-08-22 2021-02-09 Programming assistance device, programming assistance method, and computer-readable recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018155598A JP7124556B2 (en) 2018-08-22 2018-08-22 Programming support device, programming support method, and program

Publications (2)

Publication Number Publication Date
JP2020030595A JP2020030595A (en) 2020-02-27
JP7124556B2 true JP7124556B2 (en) 2022-08-24

Family

ID=69593051

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018155598A Active JP7124556B2 (en) 2018-08-22 2018-08-22 Programming support device, programming support method, and program

Country Status (4)

Country Link
US (1) US11307829B2 (en)
EP (1) EP3842879B1 (en)
JP (1) JP7124556B2 (en)
WO (1) WO2020039810A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000132210A (en) 1998-10-23 2000-05-12 Omron Corp Controller and cooperation controlling method
WO2001061503A1 (en) 2000-02-16 2001-08-23 Fujitsu Limited Nonvolatile memory
JP2017016312A (en) 2015-06-30 2017-01-19 富士通フロンテック株式会社 Exclusive control program of composite system, composite system, and client-server system

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003006395A (en) * 2001-06-18 2003-01-10 Hitachi Ltd Business support information extraction program and business support information extraction system using the same
US7290048B1 (en) * 2002-03-29 2007-10-30 Hyperformix, Inc. Method of semi-automatic data collection, data analysis, and model generation for the performance analysis of enterprise applications
US20040128307A1 (en) * 2002-12-30 2004-07-01 Creativyst, Inc. Method of storing and retrieving database records that stores multiple field values within directory entries of an underlying operating system
US7756882B2 (en) * 2004-10-01 2010-07-13 Microsoft Corporation Method and apparatus for elegant mapping between data models
US7949848B2 (en) * 2007-03-08 2011-05-24 Arm Limited Data processing apparatus, method and computer program product for reducing memory usage of an object oriented program
JP5757098B2 (en) * 2011-02-08 2015-07-29 富士電機株式会社 Program creation support apparatus and program creation support method
JP2012213144A (en) * 2011-03-18 2012-11-01 Ricoh Co Ltd Information processor, information processing system, device cooperation method and program
US9742127B2 (en) * 2011-08-31 2017-08-22 Kimball P. Magee, Jr. Power strips
US8914420B2 (en) * 2012-04-30 2014-12-16 Gainspan Corporation Populating data structures of software applications with input data provided according to extensible markup language (XML)
US10073764B1 (en) * 2015-03-05 2018-09-11 National Technology & Engineering Solutions Of Sandia, Llc Method for instruction sequence execution analysis and visualization
US10642896B2 (en) * 2016-02-05 2020-05-05 Sas Institute Inc. Handling of data sets during execution of task routines of multiple languages
US11594307B2 (en) * 2017-12-31 2023-02-28 Laboratory Corporation Of America Holdings Automatic self-documentation in a mobile-native clinical trial operations system and service suite
US11615142B2 (en) * 2018-08-20 2023-03-28 Salesforce, Inc. Mapping and query service between object oriented programming objects and deep key-value data stores
EP3654215B1 (en) * 2018-11-15 2021-06-30 Sternum Ltd. Applying control flow integrity verification in intermediate code files

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000132210A (en) 1998-10-23 2000-05-12 Omron Corp Controller and cooperation controlling method
WO2001061503A1 (en) 2000-02-16 2001-08-23 Fujitsu Limited Nonvolatile memory
JP2017016312A (en) 2015-06-30 2017-01-19 富士通フロンテック株式会社 Exclusive control program of composite system, composite system, and client-server system

Also Published As

Publication number Publication date
US11307829B2 (en) 2022-04-19
EP3842879B1 (en) 2024-04-10
JP2020030595A (en) 2020-02-27
WO2020039810A1 (en) 2020-02-27
EP3842879A1 (en) 2021-06-30
EP3842879A4 (en) 2022-05-18
US20210165637A1 (en) 2021-06-03

Similar Documents

Publication Publication Date Title
US5459682A (en) Microcomputer with plural registers and function for selecting them
JP6538771B2 (en) Numerical control device and control method of numerical control device
JP6388736B1 (en) Programmable logic controller system and engineering tool program
US8225274B2 (en) Code highlight and intelligent location descriptor for programming shells
JP6150953B2 (en) Debugging device, debugging method, and debugging program
JP7124556B2 (en) Programming support device, programming support method, and program
US7127675B1 (en) Method and system for automatically revising software help documentation
WO2018158909A1 (en) Information processing device and access management program
US5657301A (en) Automatic changer system capable of rewriting a control program for controlling the system
KR20190125303A (en) Monitor Support Devices, Monitor Support Methods, and Monitor Support Programs
JP4534796B2 (en) Control system
US12288076B2 (en) Reversible virtual factory reset
JP2001060196A (en) Image processing device
EP3816744B1 (en) Control device for industrial machine, setting system for control device for industrial machine, method of setting control device for industrial machine, and program
KR100225726B1 (en) Memory control system and storage control system
JP3129889B2 (en) Numerical control unit
JP2005172843A (en) Display device, display method, and computer program
JP3890746B2 (en) Command generation processing automatic generation method and sequence program automatic generation apparatus for common processing routine
JPH08278935A (en) Programmable controller
CN118426820A (en) Control device and operation method thereof
JPH08339209A (en) Programmable controller display device and display information writing method thereof
JP2010079676A (en) Processing method and storage system
JPH11175114A (en) Programmable controller
JPH0667714A (en) Memory management system
JP2000056818A (en) Programmable logic controller and its control method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220322

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: 20220712

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220725

R150 Certificate of patent or registration of utility model

Ref document number: 7124556

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150