JP2019053532A - 情報処理装置、情報処理方法、および、情報処理プログラム - Google Patents

情報処理装置、情報処理方法、および、情報処理プログラム Download PDF

Info

Publication number
JP2019053532A
JP2019053532A JP2017177468A JP2017177468A JP2019053532A JP 2019053532 A JP2019053532 A JP 2019053532A JP 2017177468 A JP2017177468 A JP 2017177468A JP 2017177468 A JP2017177468 A JP 2017177468A JP 2019053532 A JP2019053532 A JP 2019053532A
Authority
JP
Japan
Prior art keywords
controller data
control program
editing
controller
information processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017177468A
Other languages
English (en)
Other versions
JP6922583B2 (ja
Inventor
敬 佐久間
Takashi Sakuma
敬 佐久間
健次郎 長尾
Kenjiro Nagao
健次郎 長尾
千瑛子 佐藤
Chieko Sato
千瑛子 佐藤
直人 長谷川
Naoto Hasegawa
直人 長谷川
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
Omron Tateisi Electronics Co
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, Omron Tateisi Electronics Co filed Critical Omron Corp
Priority to JP2017177468A priority Critical patent/JP6922583B2/ja
Priority to CN201880053237.2A priority patent/CN111033463B/zh
Priority to PCT/JP2018/031633 priority patent/WO2019054166A1/ja
Priority to US16/639,564 priority patent/US11409256B2/en
Priority to EP18856168.2A priority patent/EP3683674A4/en
Publication of JP2019053532A publication Critical patent/JP2019053532A/ja
Application granted granted Critical
Publication of JP6922583B2 publication Critical patent/JP6922583B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/313Logic programming, e.g. PROLOG programming language
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming

Abstract

【課題】複数のコントローラの制御プログラムの編集を容易にする。【解決手段】情報処理装置は、編集部と記憶部とを備える。編集部は、制御装置で実行させる制御プログラムを含む1または複数のコントローラデータの編集を行う。記憶部は、複数のコントローラデータにそれぞれ含まれる制御プログラムの共有設定を示す共有設定テーブルを記憶する。編集部は、複数のコントローラに含まれる第1のコントローラデータの制御プログラムと第2のコントローラデータの制御プログラムとが共有設定されていると、第1のコントローラデータの制御プログラムに対する編集内容を、第2のコントローラデータの制御プログラムに同期させる。【選択図】図1

Description

この発明は、制御装置に利用するプロジェクトの開発支援を行う情報処理技術に関する。
現在、産業用制御装置として、プログラマブルコントローラ(Programmable Logic Controller(以下、PLCと称する。))が普及している。
PLCは、予め設定された制御プログラムを実行することによって、当該PLCに接続された各種の機器の制御を行う。
このPLC制御に与えられる制御プログラムは、例えば、特許文献1に示すように、PC(パーソナルコンピュータ)等の情報処理装置によって編集される。そして、このような情報処理装置には、この制御プログラムを作成および編集するためのプログラム(編集プログラム)が備えられている。
特開2016−91066号公報
特許文献1に示すような従来の編集プログラムを備える情報処理装置では、コントローラ毎に新たに制御プログラムを作成する必要がある。また、従来の情報処理装置では、1つの制御プログラムに対する単純な複製を行うことはできるが、これら複数の制御プログラムは、それぞれ個別に編集を行わなければならない。このため、複数の制御プログラムで同じ編集を行う場合であっても、それぞれの制御プログラムに対して、個別に同じ編集を行わなければならなかった。
このように、従来の情報処理装置は、複数の制御プログラムの編集に手間が係ることがあった。
したがって、本発明の目的は、複数の制御プログラムに対する編集を容易にすることにある。
本開示の一例では、情報処理装置は、編集部と記憶部とを備える。編集部は、制御装置で実行させる制御プログラムを含む1または複数のコントローラデータの編集を行う。記憶部は、複数のコントローラデータにそれぞれ含まれる制御プログラムの共有設定を示す共有設定テーブルを記憶する。編集部は、複数のコントローラに含まれる第1のコントローラデータの制御プログラムと第2のコントローラデータの制御プログラムとが共有設定されていると、第1のコントローラデータの制御プログラムに対する編集内容を、第2のコントローラデータの制御プログラムに同期させる。
この構成では、共有設定がされていることによって、第1のコントローラデータの編集内容が、自動的に、第2のコントローラデータに反映される。共有設定とは、制御プログラム自体が共有されていることではなく、複数の制御プログラムの内容を常に同じにすることである。また、制御プログラムの同期とは、制御プログラムの内容を一致させる処理である。
本開示の一例では、編集部は、第1のコントローラデータの複製によって、第2のコントローラデータを作成するときに、次の処理を行う。編集部は、第1のコントローラデータに含まれる全ての制御プログラムに対する共有が選択されていれば、第2のコントローラデータに含まれる全ての制御プログラムを、第1のコントローラデータに含まれる全ての制御プログラムと共有の設定を行って、共有設定テーブルに記憶する。
この構成では、全ての制御プログラムが共有設定されたコントローラデータが容易に作成され、その共有の設定内容が自動で記憶される。
本開示の一例では、編集部は、第1のコントローラデータの複製によって、第2のコントローラデータを作成するときに、次の処理を行う。編集部は、第1のコントローラデータに含まれる既に共有設定されている制御プログラムに対する共有が選択されていれば、第2のコントローラデータに含まれる既に共有設定されている制御プログラムを複製した制御プログラムを、第1のコントローラデータに含まれる既に共有設定されている制御プログラムと共有の設定を行って、共有設定テーブルに記憶する。
この構成では、既に設定されている共有の情報を反映したコントローラデータが容易に作成され、その共有の設定内容が自動で記憶される。
本開示の一例では、編集部は、共有設定の変更を受け付けると、この変更内容を共有設定テーブルに反映させる。
この構成では、複製後に、共有の設定内容が変更可能であり、コントローラデータの作成の自由度が向上する。
本開示の一例では、編集部は、制御プログラムの同期の際に、制御プログラムに用いられる変数を同期し、該変数の内容は非同期とする。変数の同期とは、変数名を一致させることで有り、変数の内容の非同期とは、変数の内容をそれぞれに適宜設定可能な状態にすることである。
この構成では、制御対象の機器に設定が異なるような場合に、各制御機器に対して同じ設定がされず、意図しない誤動作が抑制される。
本開示の一例では、情報処理装置は、コントローラデータの編集画面を表示する表示部を備える。編集部は、共有の設定がされている制御プログラムに対して、共有の設定を示すマークを付けて表示部に表示させる。
この構成では、各制御プログラムに対する共有設定の状態を、プログラマに容易に視認させる。
本発明によれば、複数の制御プログラムの編集を容易にできる。
本発明の実施形態に係る情報処理装置の機能ブロック図である。 本発明の実施形態に係る情報処理装置が接続される制御システムの構成を示すブロック図である。 本発明の実施形態に係る情報処理装置で作成するデータの構成の一例を示す図である。 本発明の実施形態に係る共有設定テーブルの一例を示す図である。 プロジェクトデータの作成処理の一例を示すフローチャートである。 (A)は、編集画面の一例を示す図であり、(B)は、編集画面におけるマルチビューエクスプローラウィンドウの一例を示す拡大図である。 コントローラデータの複製(派生デバイスの作成)処理の一例を示すフローチャートである。 (A)は、コントローラデータの複製(派生デバイスの作成)処理の指示状態を示す編集画面の拡大図であり、(B)は、全てを共有する場合のタブの選択状態を示す図であり、(C)は、共有設定を引き継ぐ場合のタブの選択状態を示す図である。 (A)、(B)は、共有の状態にある制御プログラムが存在する場合のマルチビューエクスプローラウィンドウの拡大図である。 コントローラデータ間での制御プログラムの同期処理の一例を示すフローチャートである。 (A)、(B)、(C)、(D)は、同期を行った場合に、制御プログラムの内容の変化を示す図である。 (A)は、共有設定の変更時のマルチビューエクスプローラウィンドウを示す拡大図であり、(B)は、共有設定ウィンドウの拡大図である。
以下、本発明の実施形態を、図を参照して説明する。
・適用例
まず、図1を用いて、本発明が適用される一例について説明する。図1は、本発明の実施形態に係る情報処理装置の機能ブロック図である。
図1に示すように、情報処理装置10は、編集部11および記憶部12を備える。編集部11は、プロジェクトデータの編集を行う。記憶部12は、プロジェクトデータ記憶領域121および共有設定テーブル122を有する。
プロジェクトデータは、1または複数のコントローラデータを含んでいる。コントローラデータは、1または複数の制御プログラムを含んでいる。共有設定テーブル122には、複数のコントローラデータがそれぞれに含む制御プログラムが共有設定されていることが記憶されている。
編集部11は、共有設定テーブル122を参照して、複数のコントローラデータの同期を行う。
・構成例
次に、本発明の実施形態に係る情報処理装置の構成について、図を参照して説明する。上述のように、図1は、本発明の実施形態に係る情報処理装置の機能ブロック図である。図2は、本発明の実施形態に係る情報処理装置が接続される制御システムの構成を示すブロック図である。図3は、本発明の実施形態に係る情報処理装置で作成するデータの構成の一例を示す図である。図4(A)、図4(B)、図4(C)は、本発明の実施形態に係る共有設定テーブルの一例を示す図である。
図1に示すように、情報処理装置10は、編集部11、記憶部12、操作入力部13、表示部14、および、通信制御部15を備える。情報処理装置10は、例えば、パーソナルコンピュータ等によって実現される。
また、図2に示すように、情報処理装置10は、制御システム1に含まれている。制御システム1は、情報処理装置10、複数の制御装置91、92、93、および、複数の制御対象機器911、912、913、921、922、923、931、932、933を備える。制御装置91、92、93は、例えば、所謂PLC(Programmable Logic Controller)によって実現される。また、制御対象機器911は、例えば、センサ、スイッチ、ランプ、モータ等の製造ライン等で利用される機器である。なお、制御装置の個数および制御対象機器の個数は、図2に示す態様に限らず、実現したい制御システムに応じて適宜設定されている。
制御装置91は、制御用ネットワークを介して、制御対象機器911、912、913に接続されている。制御装置92は、制御用ネットワークを介して、制御対象機器921、922、923に接続されている。制御装置93は、制御用ネットワークを介して、制御対象機器931、932、933に接続されている。情報処理装置10は、データ通信ネットワークを介して、制御装置91、92、93に接続されている。
情報処理装置10は、図3に示すデータ構成からなるプロジェクトデータPDの作成、編集を行う。
図3に示すように、プロジェクトデータPDは、複数のコントローラデータCD1、CD2、CD3を有する。なお、プロジェクトデータPDに含まれるコントローラデータの数は、当該プロジェクトにおいて用いる制御装置の個数に応じており、1または複数である。
コントローラデータCD1、CD2、CD3は、それぞれに、コンフィグレーションデータCFDとプログラムデータPRGDとを有する。プログラムデータPRGDは、複数の制御プログラムPRG1、PRG2、PRG3を有する。なお、プログラムデータPRGDに含まれる制御プログラムの数は、制御装置で実行する制御の個数等に応じており、1または複数である。また、全てのコントローラプログラムで同じでなくてもよい。
ここでは、例えば、コントローラデータCD1は、制御装置91に対応しており、コントローラデータCD2は、制御装置92に対応しており、コントローラデータCD3は、制御装置93に対応している。コントローラデータCD1のコンフィグレーションデータCFDは、制御装置91および制御対象機器911、912、913によって構成される制御システムの構成・仕様(例えば、制御対象機器の個数、EtherCATである等)を規定するデータである。コントローラデータCD2のコンフィグレーションデータCFDは、制御装置92および制御対象機器921、922、923によって構成される制御システムの構成・仕様(例えば、制御対象機器の個数、EtherCATである等)を規定するデータである。コントローラデータCD3のコンフィグレーションデータCFDは、制御装置93および制御対象機器931、932、933によって構成される制御システムの構成・仕様(例えば、制御対象機器の個数、EtherCATである等)を規定するデータである。
制御プログラムPRG1、PRG2、PRG3は、制御装置が制御対象機器に対して、実行する制御内容を示すプログラムである。例えば、コントローラデータCD1のプログラムデータPRGDの制御プログラムPRG1、PRG2、PRG3は、制御装置91が制御対象機器911、912、913に対して実行する制御内容を示すプログラムである。コントローラデータCD2のプログラムデータPRGDの制御プログラムPRG1、PRG2、PRG3は、制御装置92が制御対象機器921、922、923に対して実行する制御内容を示すプログラムである。コントローラデータCD3のプログラムデータPRGDの制御プログラムPRG1、PRG2、PRG3は、制御装置93が制御対象機器931、932、933に対して実行する制御内容を示すプログラムである。
このように、情報処理装置10は、複数の制御装置にそれぞれ対応する複数のコントローラデータCD1、CD2、CD3を1つのプロジェクトデータPDとして、1つの編集プログラムで作成、編集する。
そして、情報処理装置10の各構成要素は、具体的に以下の構成を備える。
編集部11は、例えば、CPU、RAM、ROM等を含み、プロジェクトデータの編集プログラムを実行するデバイス、および、当該編集プログラムによって実現される。記憶部12は、例えば、ハードディスク、ソリッドステートドライブ等の記憶媒体を備える装置によって実現される。
操作入力部13は、例えば、キーボード、マウス、タッチパネル等からなる。操作入力部13は、プログラマ等のユーザからの操作入力を受け付けて、編集部11に与える。編集部11は、この操作内容に応じて、プロジェクトデータPDの作成、編集を行う。
表示部14は、例えば、液晶ディスプレイ等からなる。表示部14は、編集部11によって生成される編集画面を、表示する。
通信制御部15は、例えば、所謂ネットワークアダプタ等からなる。通信制御部15は、図2に示したデータ通信ネットワークに接続されており、編集部11からのプロジェクトデータPDのコントローラデータCD1、CD2、CD3を、制御装置91、92、93に出力する。
記憶部12は、プロジェクトデータ記憶領域121、および、共有設定テーブル122を有する。プロジェクトデータ記憶領域121には、複数のコントローラデータCD1、CD2、CD3を含むプロジェクトデータPDが記憶されている。
共有設定テーブル122は、各コントローラデータCD1、CD2、CD3に含まれる制御プログラムPRGの共有の状態が記憶されている。共有の状態とは、複数のコントローラデータ間で、制御プログラム自体を共有して保持することではなく、複数のコントローラデータ間で、対象の制御プログラムの内容が常時同じになる状態を意味する。例えば、図4(A)、図4(B)、図4(C)における○印、図4(B)における▲印が共有の状態であることを示しており、共有設定テーブル122には、このような関係がデータとして記憶されている。
このような構成において、編集部11は、共有設定テーブル122を参照して、プロジェクトデータPDを構成する複数のコントローラデータCD1、CD2、CD3の作成、編集を行う。例えば、編集部11は、制御プログラムの内容を変更すると、共有設定テーブル122を参照し、変更した制御プログラムに対して共有の状態にある制御プログラムを同期させる。ここで、制御プログラムの同期処理とは、共有の状態にある制御プログラムの内容を、編集作業によって変更した制御プログラムの内容に一致させる処理である。そして、この内容を一致させる処理が、本発明の「同期」処理に対応する。
図4(A)の場合において、コントローラデータController1(CD1)の制御プログラムProgram0を変更すると、コントローラデータController2(CD2)の制御プログラムProgram0およびコントローラデータController3(CD3)の制御プログラムProgram0も同じ内容に変更される。
一方、図4(B)および図4(C)の場合において、コントローラデータController1(CD1)の制御プログラムProgram2を変更しても、コントローラデータController2(CD2)の制御プログラムProgram2およびコントローラデータController3(CD3)の制御プログラムProgram2は変更されない。
また、図4(B)の場合において、コントローラデータController2(CD2)の制御プログラムProgram2を変更すると、コントローラデータController3(CD3)の制御プログラムProgram2は同じ内容に変更されるが、コントローラデータController1(CD1)の制御プログラムProgram2は変更されない。
これにより、情報処理装置10は、1つコントローラデータの制御プログラムを変更すれば、同じ内容にする必要のある他のコントローラデータの制御プログラムの内容を自動で変更する。したがって、複数のコントローラプログラムにおいて同じ内容の制御プログラムを含む必要があり、これらの制御プログラムを変更する場合に、プログラマは、複数のコントローラデータの制御プログラムの編集を容易にできる。
・具体的な処理例
編集部11によって実行される具体的な編集処理について、図を参照して説明する。
(A)コントローラデータの作成
図5は、プロジェクトデータの作成処理の一例を示すフローチャートである。
図5に示すように、編集部11は、操作入力部13からのプロジェクトデータの作成指示、および、コントローラデータの作成指示を受けて、コントローラデータを作成する(S11)。そして、編集部11は、コントローラデータとして、コンフィグレーションデータおよびプログラムデータを作成する(S12)。
図6(A)は、編集画面の一例を示す図である。図6(B)は、編集画面におけるマルチビューエクスプローラウィンドウの一例を示す拡大図である。
編集プログラムが実行されると、編集部11によって、図6(A)に示すような編集画面140が形成され、当該編集画面140は表示部14に表示される。編集画面140は、プログラム編集ウィンドウ141、マルチビューエクスプローラウィンドウ142、および、ツールウィンドウ143を有する。プログラム編集ウィンドウ141は、編集画面140の中央に配置され、マルチビューエクスプローラウィンドウ142とツールウィンドウ143は、プログラム編集ウィンドウ141を挟んで両側に配置されている。プログラム編集ウィンドウ141には、制御プログラム、コンフィグレーションデータ等の変種内容が表示されている。マルチビューエクスプローラウィンドウ142には、編集対象のデータおよびプログラムの構成、階層等が表示されている。ツールウィンドウ143には、図示していないが、編集用のツールが各種表示されている。
図6(B)に示すように、マルチビューエクスプローラウィンドウ142には、コントローラ名ウィンドウ421、および、構成ツリー422が表示される。コントローラ名ウィンドウ421には、現在編集対象のコントローラプログラムの名称や、編集可能なコントローラプログラムの名称が表示される。図6(B)では、現在編集対象のコントローラプログラムの名称のみが表示されている。構成ツリーには、コントローラ名ウィンドウ421に表示されたコントローラプログラムに含まれるコンフィグレーションデータ、プログラムデータの構成、ツリー構造が表示される。
(B)コントローラデータの複製(派生デバイスの作成)
図7は、コントローラデータの複製(派生デバイスの作成)処理の一例を示すフローチャートである。図8(A)は、コントローラデータの複製(派生デバイスの作成)処理の指示状態を示す編集画面の拡大図であり、図8(B)は、全てを共有する場合のタブの選択状態を示す図であり、図8(C)は、共有設定を引き継ぐ場合のタブの選択状態を示す図である。
図7に示すように、編集部11は、操作入力部13からのコントローラデータの複製指示、すなわち、派生デバイスの作成指示を受ける(S21)。例えば、図8(A)に示すように、コントローラデータController1が編集状態にある時に、所定の操作入力(例えばマウスの右クリックと選択等)によって、派生デバイスの作成のタブ424が選択されると、編集部11は、コントローラデータの複製指示、すなわち、派生デバイスの作成指示を受ける。更に、図8(B)、図8(C)に示すように、新たに表示された共有の選択用のタブ425によって、共有の種類が選択されると、編集部11は、この内容も受け付ける。例えば、図8(B)に示すように「全てを共有」のタブ425が選択されることで、編集部11は、編集対象のコントローラデータに含まれる全ての制御プログラムを共有の対象とすることを受け付ける。一方、図8(C)に示すように「共有設定を引き継ぐ」のタブ425が選択されることで、編集部11は、編集対象のコントローラデータに含まれる既に共有の状態にある制御プログラムのみを共有の対象とすることを受け付ける。
編集部11は、コントローラデータの複製指示、すなわち、派生デバイスの作成指示にしたがって、編集対象のコントローラデータを複製して、新たなコントローラデータを作成する(S22)。編集部11は、新たに作成したコントローラデータに、編集対象のコントローラデータと別の名称を割り当てる。例えば、ここでは、編集対象のコントローラデータはController1であるのに対して、複製のコントローラデータはController2が割り当てられる。編集部11は、記憶部12のプロジェクトデータ記憶領域121に、複製したコントローラデータを記憶する。
編集部11は、共有の選択用のタブ425の選択内容にしたがって、共有の引継ぎ条件を判定する(S23)。
編集部11は、共有の引継ぎ条件が「全てを共有」であれば(S23:ALL)、編集対象のコントローラデータ(複製元のコントローラデータ)の全ての制御プログラムと、複製によって作成されたコントローラデータの全ての制御プログラムとが共有の状態にあることを、共有設定テーブル122に記憶する(S24)。例えば、図4(A)に示す、コントローラデータController1からコントローラデータController2への複製、コントローラデータController1からコントローラデータController3への複製、コントローラデータController2からコントローラデータController3への複製、図4(B)に示すコントローラデータController2からコントローラデータController3への複製の場合に対応する。そして、編集部11は、これらの場合に対応して、図4(A)の○印、図4(B)の▲印に示すように、共有の関係にあることを示す情報を、共有設定テーブル122に記憶する。
編集部11は、共有の引継ぎ条件が「共有設定を引き継ぐ」であれば(S23:SEL)、編集対象のコントローラデータ(複製元のコントローラデータ)において既に共有の状態に設定されている制御プログラムと、複製によって作成されたコントローラデータにおける当該制御プログラム(複製元において既に共有の状態にある制御プログラム)を複製した制御プログラムとが共有の状態にあることを、共有設定テーブル122に記憶する(S25)。例えば、図4(B)に示す、コントローラデータController2からコントローラデータController3への複製、図4(C)に示す、コントローラデータController1からコントローラデータController3への複製、コントローラデータController2からコントローラデータController3への複製の場合に対応する。そして、編集部11は、これらの場合に対応して、図4(B)および図4(C)の○印に示すように、共有の関係にあることを示す情報を、共有設定テーブル122に記憶する。
これにより、情報処理装置10は、複数のコントローラデータの制御プログラム同士の共有の状態を保持できる。また、プログラマが共有の設定を個別に入力する必要が無く、共有の状態の設定が自動で記憶される。
なお、この際、複製された制御プログラムでは、それぞれの変数(例えば、グローバル変数)は、複製元の制御プログラムと同じに複製されている(同期されている)が、変数の内容(例えば、値)は、複製されない(非同期である)。これにより、類似の制御対象機器であって変数の内容を変更しなければならない場合に、同じ変数の内容を意図せずに設定してしまうことを抑制できる。この結果、制御対象機器の誤動作が抑制される。
なお、この共有の状態は、マルチビューエクスプローラウィンドウ142にも表示される。図9(A)、図9(B)は、共有の状態にある制御プログラムが存在する場合のマルチビューエクスプローラウィンドウの拡大図である。図9(A)では、コントローラデータController1における複数の制御プログラムProgram0、Program1、Program2が共有の状態にある場合を示し、図9(B)では、コントローラデータController1における複数の制御プログラムProgram0が共有の状態にある場合を示す。
図9(A)に示すように、制御プログラムProgram0、Program1、Program2が共有の状態にある場合、編集部11は、構成ツリー422における制御プログラムProgram0、Program1、Program2の位置に、共有マーク420を表示させる。図9(B)に示すように、制御プログラムProgram0が共有の状態にある場合、編集部11は、構成ツリー422における制御プログラムProgram0の位置に、共有マーク420を表示させる。
このような共有マーク420の表示を行うことによって、プログラマは、共有の状態にある制御プログラムを、容易に且つ確実に認識できる。
(C)コントローラデータの同期
図10は、コントローラデータ間での制御プログラムの同期処理の一例を示すフローチャートである。
編集部11は、操作入力部13からのコントローラデータの制御プログラムの編集指示を受けて、コントローラデータの制御プログラム編集を行う(S31)。編集部11は、共有設定テーブル122を参照して、編集中の制御プログラムが共有の状態にあるか否かを検出する(S32)。編集部11は、編集中の制御プログラムが共有の状態にあれば(S33:YES)、共有設定テーブル122に基づいて、編集中の制御プログラムに対して共有の状態にある他のコントローラデータの制御プログラムを同期させる(S34)。ここで、同期処理とは、共有の状態にある他のコントローラデータの制御プログラムの内容を、編集中の制御プログラムの内容に一致させることである。
一方、編集部11は、編集中の制御プログラムが共有の状態でなければ(S33:NO)、同期を行わない。
図11(A)、図11(B)、図11(C)、図11(D)は、同期を行った場合に、制御プログラムの内容の変化を示す図である。図11(A)は、コントローラデータController1の制御プログラムの編集前の状態を示し、図11(B)は、複製によってコントローラデータController2を作成した状態を示す。図11(C)は、コントローラデータController1の制御プログラムの編集後の状態を示し、図11(D)は、同期後のコントローラデータController2を作成した状態を示す。
編集部11は、コントローラデータController1を複製して、コントローラデータController2を作成することで、図11(A)と図11(B)に示すように、コントローラデータController1とコントローラデータController2で、同じ制御プログラムが構成される。この際、共有の設定がされていれば、その内容が共有設定テーブル122に記憶される。
この状態で、編集部11は、コントローラデータController1の制御プログラムを編集する。例えば、図11(C)に示すように、コントローラデータController1の制御プログラムの内容を追加する。
編集部11は、このコントローラデータController1の制御プログラムが共有の状態あることを検出し、共有の状態にあるコントローラデータController2の制御プログラムを、コントローラデータController1の制御プログラムに同期させる。すなわち、編集部11は、Controller2の制御プログラムの内容を、コントローラデータController1の制御プログラムの内容に、自動で変更する。これにより、図11(D)に示すように、コントローラデータController2の制御プログラムは、自動で、図11(C)に示すコントローラデータController1の制御プログラムと一致する。
このような処理を実行することによって、複数のコントローラデータにおいて、同じ制御プログラムを用いる場合に、1つのコントローラデータの制御プログラムを編集すれば、共有の状態にある他のコントローラデータの制御プログラムも自動で更新される。したがって、プログラマによる複数のコントローラデータの編集を容易にできる。
(D)共有設定の変更
図12(A)は、共有設定の変更時のマルチビューエクスプローラウィンドウを示す拡大図である。図12(B)は、共有設定ウィンドウの拡大図である。
編集部11は、図12(A)に示すように、コントローラデータController1が編集状態にある時に、所定の操作入力(例えばマウスの右クリックと選択等)によって、共有設定の変更のタブ426が選択されると、図12(B)に示すような共有設定ウィンドウ427を表示させる。
共有設定ウィンドウ427には、編集中のコントローラデータにおける共有対象にあるプログラムが、「共有対象」として表示されている。また、共有設定ウィンドウ427には、共有先を設定する表428が表示される。表428は、コントローラ名(コントローラプログラムの名称)と、共有の状態にするか否かを選択するチェックボックスと、を有する。
編集部11は、チャックボックスへのチェックの指示を受け付けると、共有対象のコントローラデータの制御プログラムと、共有先のコントローラデータの制御プログラムとを、共有の状態に設定する。例えば、図12(B)の場合であれば、編集部11は、コントローラデータController1の制御プログラムProgram2と、コントローラデータController2の制御プログラムProgram2とを、共有の状態に設定する。
一方、編集部11は、チャックボックスへのチェック解除の指示を受け付けると、共有対象のコントローラデータの制御プログラムと、共有先のコントローラデータの制御プログラムとを、共有の状態の解除を設定する。例えば、図12(B)に対応する場合であれば、編集部11は、コントローラデータController1の制御プログラムProgram2と、コントローラデータController2の制御プログラムProgram2とを、共有の状態の解除を設定する。
このような構成および処理を用いることによって、共有の設定を、適宜変更できる。これにより、プログラマによる複数のコントローラデータの編集の自由度を向上できる。
なお、上述の説明では、コントローラデータを制御装置毎に設定する態様を示した。しかしながら、1つの制御装置に対して、それぞれ状況に応じて、複数のコントローラデータのいずれかを選択的に設定する場合のコントローラデータの編集にも利用できる。
以上で説明した本発明の実施形態は、あらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の変形を行うことができることはいうまでもない。
1:制御システム
10:情報処理装置
11:編集部
12:記憶部
13:操作入力部
14:表示部
15:通信制御部
91、92、93:制御装置
121:プロジェクトデータ記憶領域
122:共有設定テーブル
140:編集画面
141:プログラム編集ウィンドウ
142:マルチビューエクスプローラウィンドウ
143:ツールウィンドウ
420:共有マーク
421:コントローラ名ウィンドウ
422:構成ツリー
424、425、426:タブ
427:共有設定ウィンドウ
428:表
911、921、931:制御対象機器
CD1、CD2、CD3:コントローラデータ
CFD:コンフィグレーションデータ
PD:プロジェクトデータ
PRG1、PRG2、PRG3:制御プログラム
PRGD:プログラムデータ

Claims (8)

  1. 制御装置で実行させる制御プログラムを含む1または複数のコントローラデータの編集を行う編集部と、
    前記複数のコントローラデータにそれぞれ含まれる制御プログラムの共有設定を示す共有設定テーブルを記憶する記憶部と、を備え、
    前記編集部は、
    前記複数のコントローラに含まれる第1のコントローラデータの制御プログラムと第2のコントローラデータの制御プログラムとが共有設定されていると、前記第1のコントローラデータの制御プログラムに対する編集内容を、前記第2のコントローラデータの制御プログラムに同期させる、
    情報処理装置。
  2. 前記編集部は、
    前記第1のコントローラデータの複製によって、前記第2のコントローラデータを作成するときに、
    前記第1のコントローラデータに含まれる全ての制御プログラムに対する共有が選択されていれば、前記第2のコントローラデータに含まれる全ての制御プログラムを、前記第1のコントローラデータに含まれる全ての制御プログラムと共有の設定を行って、前記共有設定テーブルに記憶する、
    請求項1に記載の情報処理装置。
  3. 前記編集部は、
    前記第1のコントローラデータの複製によって、前記第2のコントローラデータを作成するときに、
    前記第1のコントローラデータに含まれる既に共有設定されている制御プログラムに対する共有が選択されていれば、前記第2のコントローラデータに含まれる前記既に共有設定されている制御プログラムを複製した制御プログラムを、前記第1のコントローラデータに含まれる前記既に共有設定されている制御プログラムと共有の設定を行って、前記共有設定テーブルに記憶する、
    請求項1または請求項2に記載の情報処理装置。
  4. 前記編集部は、
    前記共有設定の変更を受け付けると、
    この変更内容を前記共有設定テーブルに反映させる、
    請求項1乃至請求項3のいずれかに記載の情報処理装置。
  5. 前記編集部は、
    前記制御プログラムの同期の際に、
    前記制御プログラムに用いられる変数を同期し、該変数の内容は非同期とする、
    請求項1乃至請求項4のいずれかに記載の情報処理装置。
  6. 前記コントローラデータの編集画面を表示する表示部を備え、
    前記編集部は、
    前記共有の設定がされている制御プログラムに対して、前記共有の設定を示すマークを付けて前記表示部に表示させる、
    請求項1乃至請求項5のいずれかに記載の情報処理装置。
  7. 情報処理装置が、
    制御装置で実行させる制御プログラムを含む1または複数のコントローラデータの編集を行う編集工程と、
    前記複数のコントローラデータにそれぞれ含まれる制御プログラムの共有設定を示す共有設定テーブルを記憶する記憶工程とを行い、
    前記編集工程では、
    前記情報処理装置は、前記複数のコントローラに含まれる第1のコントローラデータの制御プログラムと第2のコントローラデータの制御プログラムとが共有設定されていると、前記第1のコントローラデータの制御プログラムに対する編集内容を、前記第2のコントローラデータの制御プログラムに同期させる、
    情報処理方法。
  8. 制御装置で実行させる制御プログラムを含む1または複数のコントローラデータの編集を行う編集処理と、
    前記複数のコントローラデータにそれぞれ含まれる制御プログラムの共有設定を示す共有設定テーブルを記憶する記憶処理と、
    前記編集処理において、前記複数のコントローラに含まれる第1のコントローラデータの制御プログラムと第2のコントローラデータの制御プログラムとが共有設定されていると、前記第1のコントローラデータの制御プログラムに対する編集内容を、前記第2のコントローラデータの制御プログラムに同期させる処理と、
    を情報処理装置に実行させる、情報処理プログラム。
JP2017177468A 2017-09-15 2017-09-15 情報処理装置、情報処理方法、および、情報処理プログラム Active JP6922583B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2017177468A JP6922583B2 (ja) 2017-09-15 2017-09-15 情報処理装置、情報処理方法、および、情報処理プログラム
CN201880053237.2A CN111033463B (zh) 2017-09-15 2018-08-28 信息处理装置、信息处理方法以及计算机可读存储介质
PCT/JP2018/031633 WO2019054166A1 (ja) 2017-09-15 2018-08-28 情報処理装置、情報処理方法、および、情報処理プログラム
US16/639,564 US11409256B2 (en) 2017-09-15 2018-08-28 Information processing device, information processing method and non-transitory computer-readable storage medium for synchronizing edited content of control programs
EP18856168.2A EP3683674A4 (en) 2017-09-15 2018-08-28 INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING PROCESS AND INFORMATION PROCESSING PROGRAM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017177468A JP6922583B2 (ja) 2017-09-15 2017-09-15 情報処理装置、情報処理方法、および、情報処理プログラム

Publications (2)

Publication Number Publication Date
JP2019053532A true JP2019053532A (ja) 2019-04-04
JP6922583B2 JP6922583B2 (ja) 2021-08-18

Family

ID=65722709

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017177468A Active JP6922583B2 (ja) 2017-09-15 2017-09-15 情報処理装置、情報処理方法、および、情報処理プログラム

Country Status (5)

Country Link
US (1) US11409256B2 (ja)
EP (1) EP3683674A4 (ja)
JP (1) JP6922583B2 (ja)
CN (1) CN111033463B (ja)
WO (1) WO2019054166A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6962345B2 (ja) * 2019-03-22 2021-11-05 オムロン株式会社 情報処理装置、情報処理方法、および情報処理プログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0310304A (ja) * 1989-06-08 1991-01-17 Fuji Electric Co Ltd プログラム制御システム
JP2000163107A (ja) * 1998-11-30 2000-06-16 Mitsubishi Electric Corp プログラマブルコントローラのプログラム編集装置
JP2015018349A (ja) * 2013-07-09 2015-01-29 富士電機株式会社 共有データ定義支援システム、そのマスタ装置、ローカル端末、プログラム
JP2016091066A (ja) * 2014-10-29 2016-05-23 オムロン株式会社 情報処理装置、情報処理方法、情報処理プログラム、および記録媒体

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7089530B1 (en) * 1999-05-17 2006-08-08 Invensys Systems, Inc. Process control configuration system with connection validation and configuration
US6834214B2 (en) * 2001-05-24 2004-12-21 The Boeing Company System, method and computer-program product for transferring a numerical control program to thereby control a machine tool controller
WO2005022280A1 (en) * 2003-09-03 2005-03-10 Unitronics (1989) (R'g) Ltd. System and method for implementing logic control in programmable controllers in distributed control systems
JP4784100B2 (ja) * 2005-01-21 2011-09-28 富士ゼロックス株式会社 処理装置およびそのファームウェアダウンロード方法。
TWI405094B (zh) * 2005-11-28 2013-08-11 Ibm 防止未授權獲取資訊之系統及其方法
GB0600348D0 (en) * 2006-01-10 2006-02-15 Ibm Updating of data processing and communication devices
DE112006003770T5 (de) * 2006-03-29 2009-04-23 Mitsubishi Electric Corporation Programmierungsunterstützungsvorrichtung, Programmierungsunterstützungsverfahren, Programm zum Veranlassen eines Computers, das Verfahren zu Implementieren, und Aufzeichnungsmedium, das das Programm enthält
US8060221B2 (en) * 2006-06-13 2011-11-15 Mitsubishi Electric Corporation Peripheral device of programmable logic controller
GB0911099D0 (en) * 2009-06-26 2009-08-12 Codeplay Software Ltd Processing method
US8504176B2 (en) * 2011-03-15 2013-08-06 Omron Corporation CPU unit of PLC, system program for PLC, and recording medium storing system program for PLC
JP4957853B1 (ja) * 2011-03-15 2012-06-20 オムロン株式会社 Plcのcpuユニット、plc用のシステムプログラムおよびplc用のシステムプログラムを格納した記録媒体
JP5099251B1 (ja) * 2011-07-15 2012-12-19 オムロン株式会社 Plcのcpuユニット、plc用のシステムプログラム、plc用のシステムプログラムを格納した記録媒体、plcシステム、plcサポート装置、plcサポートプログラム、および、plcサポートプログラムを格納した記録媒体
KR101980834B1 (ko) * 2012-11-28 2019-05-21 한국전자통신연구원 컨텍스트 정보 기반 응용프로그램 관리방법 및 그 장치
JP2015049683A (ja) * 2013-08-30 2015-03-16 株式会社東芝 制御プログラム管理装置、情報処理装置、及び制御プログラム処理方法
JP6045716B2 (ja) * 2013-10-31 2016-12-14 三菱電機株式会社 プログラム作成装置、プログラム作成方法、およびプログラム
EP3101494B1 (en) * 2014-03-14 2018-06-20 Omron Corporation Control apparatus and control system
JP6520545B2 (ja) * 2015-08-10 2019-05-29 オムロン株式会社 サポート装置およびサポートプログラム
KR20180086490A (ko) * 2016-01-07 2018-07-31 미쓰비시덴키 가부시키가이샤 프로그래머블 컨트롤러 및 동기 제어 프로그램
JP6643114B2 (ja) * 2016-01-28 2020-02-12 キヤノン株式会社 画像処理装置、その制御方法、及びプログラム
JP6676516B2 (ja) * 2016-11-30 2020-04-08 ムネカタインダストリアルマシナリー株式会社 加工装置
JP6408044B2 (ja) * 2017-01-25 2018-10-17 ファナック株式会社 プログラマブルコントローラ
JP6821497B2 (ja) * 2017-04-27 2021-01-27 株式会社日立産機システム 産業用コントローラのプログラム開発システム及び産業用コントローラのプログラム開発システムにおけるデータ共有方法
JP6969460B2 (ja) * 2018-03-15 2021-11-24 オムロン株式会社 プログラム開発支援システム、プログラム開発支援方法及びプログラム開発支援プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0310304A (ja) * 1989-06-08 1991-01-17 Fuji Electric Co Ltd プログラム制御システム
JP2000163107A (ja) * 1998-11-30 2000-06-16 Mitsubishi Electric Corp プログラマブルコントローラのプログラム編集装置
JP2015018349A (ja) * 2013-07-09 2015-01-29 富士電機株式会社 共有データ定義支援システム、そのマスタ装置、ローカル端末、プログラム
JP2016091066A (ja) * 2014-10-29 2016-05-23 オムロン株式会社 情報処理装置、情報処理方法、情報処理プログラム、および記録媒体

Also Published As

Publication number Publication date
EP3683674A4 (en) 2021-06-09
US11409256B2 (en) 2022-08-09
WO2019054166A1 (ja) 2019-03-21
CN111033463B (zh) 2024-04-09
EP3683674A1 (en) 2020-07-22
CN111033463A (zh) 2020-04-17
US20200225633A1 (en) 2020-07-16
JP6922583B2 (ja) 2021-08-18

Similar Documents

Publication Publication Date Title
JP6045716B2 (ja) プログラム作成装置、プログラム作成方法、およびプログラム
TWI498693B (zh) 多軸控制系統設定、調整功能支援裝置
CN102880462A (zh) 基于图模一体化生成组态监控对象的方法及装置
JP6443190B2 (ja) プログラマブルロジックコントローラ、プログラマブルロジックコントローラの制御方法、及び、制御プログラム
US20150352724A1 (en) Robot control device provided with function of reflecting points of difference of setting data compared with
JPWO2009072436A1 (ja) 階層構造表示装置、階層構造表示方法および階層構造表示制御プログラム
EP3979148A1 (en) Method and system for displaying machine learning automatic modeling procedure
JP2019053532A (ja) 情報処理装置、情報処理方法、および、情報処理プログラム
WO2016163235A1 (ja) Plc制御データ生成装置、plc制御データ生成方法、及び、plc制御データ生成プログラム
JP6141561B2 (ja) オブジェクト調整ツールおよびオブジェクト調整プログラム
JP2015146117A (ja) エンジニアリング装置および制御ロジック検証方法
JP2011028438A (ja) アプリケーション検証システム及びコンピュータプログラム
JP4941674B2 (ja) シミュレーション・システム
JP2009271572A (ja) 制御システム開発支援装置
JP2009223591A (ja) Plcのプログラム開発支援装置
JP2008004087A (ja) Plcネットワークシステムの開発支援装置
JP2015219657A (ja) 開発支援装置及び開発支援方法及び開発支援プログラム
TWI528267B (zh) 可程式顯示器用畫面資料編輯裝置
TWI709908B (zh) 在plc編輯環境中與其他軟體協作之方法、程式產品、電腦可讀取媒體
WO2014136245A1 (ja) エンジニアリングツール
EP2908198A1 (en) A method and apparatus for automatically generating hardware configurations in an industrial engineering system
JP2019016170A (ja) コントローラ装置、及び二重化システムの同期化方法
JP2018050258A (ja) 情報処理装置、情報処理システム、及び、情報処理方法
JP6919338B2 (ja) プログラム開発支援装置、プログラム開発支援システム、プログラム開発支援方法、および、プログラム開発支援プログラム
JP2006309565A (ja) 作画エディタ装置、制御用表示装置、並びに、そのプログラムおよび記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210216

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20210416

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210610

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210712

R150 Certificate of patent or registration of utility model

Ref document number: 6922583

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150