JP6939662B2 - プログラミング支援装置、プログラミング支援方法及びプログラム - Google Patents

プログラミング支援装置、プログラミング支援方法及びプログラム Download PDF

Info

Publication number
JP6939662B2
JP6939662B2 JP2018047077A JP2018047077A JP6939662B2 JP 6939662 B2 JP6939662 B2 JP 6939662B2 JP 2018047077 A JP2018047077 A JP 2018047077A JP 2018047077 A JP2018047077 A JP 2018047077A JP 6939662 B2 JP6939662 B2 JP 6939662B2
Authority
JP
Japan
Prior art keywords
program
setting
variable
programming support
unit
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
JP2018047077A
Other languages
English (en)
Other versions
JP2019159937A (ja
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 JP2018047077A priority Critical patent/JP6939662B2/ja
Publication of JP2019159937A publication Critical patent/JP2019159937A/ja
Application granted granted Critical
Publication of JP6939662B2 publication Critical patent/JP6939662B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Programmable Controllers (AREA)

Description

本発明は、制御システム等に適用される、互いに関連する制御プログラム及びインターフェイス用プログラムを作成する場合のプログラミング支援技術に関する。
近年、ネットワーク接続された産業機器等に対する制御システムとしてPLC(Programmable Logic Controller)が適用されている。PLCは、内蔵のCPUによって、予め登録されたラダー言語で組み込まれたユーザプログラム(制御プログラム)に基づく処理をサイクリックに繰り返す制御を行う。制御プログラムは、通常、パーソナルコンピュータである制御システム設定装置側で、操作部及び表示部を介してPLC用のプログラミングツールを用いて生成され、作成後にPLCのCPUユニットにダウンロードされて実行される。また、PLCには、プログラマブル表示器であるヒューマンマシンインターフェイス(HMI:Human Machine Interface)が接続されている。HMIも同様に、制御システム設定装置側でHMIプログラミングツールを用いてプログラマブル表示器用のプログラムが作成される。
特許文献1には、制御システム設定装置で、PLCプログラミングツール及びHMIプログラミングツールを用いてそれぞれのプログラムを作成することが記載されている。ここでは、HMIプログラミングにおいて、対応するプログラマブル表示器に適用されるHMI機能部品を全て表示部に選択可能に表示するようにして、HMIプログラミングの作成作業負担を軽減している。
また、今日、制御対象機器の性能向上に鑑みて、より高速かつ高精度で制御が可能な数値制御(CNC:Computerized Numerical Control)のプログラミングが汎用されつつある。例えば、CNCプログラミングにおいて、(PLCプログラム部品の)変数を割り当てる場合、PLC側でグローバル変数を定義し、ラダー図でプログラム部品と結び付けることでPLCプログラムを作成する。一方、HMI側では、PLC変数とHMI変数とのマッピング設定を行うことでHMIプログラム部品のプロパティにHMIの変数を設定するといった作業を経て、HMIプログラムが作成される。
特開2008−152799号公報
しかしながら、HMIプログラミングでは、変数の1つ1つを理解してマッピング作業を行う必要があるため、PLCプログラミングで扱う変数の数が多い場合には、「変数を覚える」、「探す」、「照合する」といった設定時の作業量が勢い増大することになる。また、PLC側で異なる変数であっても、HMI側では同じ意味で使われるような変数もあることから、設定誤りを招来し易いといった問題がある。
本発明は、上記に鑑みてなされたもので、制御プログラミングとインターフェイスプログラミングとで対応するプログラム部品の変数をリンク付けする関連情報を設定し、プログラミング作業の負担軽減、設定ミスの抑制を可能にするプログラミング支援装置、支援方法及びプログラムを提供することを目的とするものである。
本発明に係るプログラミング支援装置は、互いに関連する第1の制御プログラム及び第2の制御プログラムを作成するプログラミング支援装置において、第1の制御用の複数のプログラム部品の中から1又は複数のプログラム部品を選択すると共に、選択された前記プログラム部品に対する入力変数及び出力変数の少なくとも一方を設定して第1の制御プログラムを作成する第1の処理部と、第2の制御用の複数のプログラム部品の中から1又は複数のプログラム部品を選択すると共に、選択された前記プログラム部品に対する入力変数及び出力変数の少なくとも一方を設定して第2の制御プログラムを作成する第2の処理部と、互いに関連する前記第1の制御プログラムの前記プログラム部品及び前記第2の制御プログラムの前記プログラム部品のそれぞれの前記入力変数及び前記出力変数の少なくとも一方における間をリンク付けする関連情報を設定する関連性設定部とを備えたものである。一例として、第1の制御プログラムはシーケンス制御用であり、第2の制御プログラムはインターフェイス用であってもよい。
本発明は、第1、第2の処理部と、関連性設定部とを備えている。第1の処理部は、第1の制御用のプログラム部品、さらに、その入力変数及び出力変数の少なくとも一方を設定して第1の制御プログラムを作成する。第2の処理部は、第2の制御用のプログラム部品、さらに、その入力変数及び出力変数の少なくとも一方を設定して第2の制御プログラムを作成する。関連性設定部は、互いに関連する第1の制御プログラムの前記プログラム部品及び第2の制御プログラムの前記プログラム部品のそれぞれの入力変数及び出力変数の少なくとも一方における間をリンク付けする関連情報を自動で、又はユーザの指示に従って設定する。関連情報が設定されることで、第1の制御用のプログラム部品及び第2の制御用のプログラム部品の入力変数、出力変数の選択設定(マッピング処理)に供することが可能となる。
また、前記第1の処理部で選択されるプログラム部品は、ファンクションブロックを含むものである。この構成によれば、多数の各種ファンクションブロックに対して設定される多数の入力変数、出力変数の選択設定に供することが可能となる。
また、本発明は、前記第1、第2の処理部のうち、先に実行された一方の処理部で設定された前記入力変数及び前記出力変数の少なくとも一方に基づいて設定された前記関連情報を利用して、後に実行される他方の処理部での前記入力変数及び前記出力変数の少なくとも一方の設定を行うプログラミング支援部を備えたプログラミング支援装置、プログラミング支援方法、及びプログラムである。この構成によれば、先の処理で設定された入力変数、出力変数の少なくとも一方に対して関連情報が設定され、この関連情報を利用して、後の処理で入力変数、出力変数の少なくとも一方を選択設定できるので、プログラミング作業の負担軽減、設定ミスの抑制が可能となる。なお、第1の処理で設定された関連情報を利用して第2の処理における入力情報、出力情報を選択設定する態様、その逆の態様のいずれにも適用可能である。
また、前記一方の処理部は、前記第1の処理部である。この構成によれば、第1の制御プログラムの作成後の第2の制御プログラムを作成する際のマッピング作業において、プログラミング作業の負担軽減、設定ミスの抑制が可能となる。
また、本発明は、画像を表示する表示部を備え、前記プログラミング支援部は、前記他方の処理部での前記入力変数及び前記出力変数の少なくとも一方の設定において、前記関連情報を前記表示部に選択可能に表示するものである。この構成によれば、表示部に表示された関連情報を参照しながら後の処理における入力情報、出力情報の選択設定が可能となり、プログラミング作業の負担軽減、設定ミスの抑制が可能となる。
また、前記プログラミング支援部は、前記一方の処理部で選択されたプログラム部品に対応するプログラム部品を前記関連情報に基づいて設定するものである。この構成によれば、後の処理における変数情報、出力情報の選択設定が関連情報に基づいて自動で行われるので、ユーザによる操作ミスが解消される。
また、前記プログラミング支援部は、前記他方の処理部で設定される前記入力変数及び前記出力変数の少なくとも一方に対する誤選択の有無を判断する判断部を備えるものである。この構成によれば、関連情報を利用して誤選択の有無が判断可能となるので、反射的にプログラミング作業の負担軽減、設定ミスの抑制が可能となる。
また、前記プログラミング支援部は、誤選択があった場合、警告を行う警報部を備えるものである。この構成によれば、誤選択があった場合、警告が行われるので、設定ミスが確実に防止できる。
本発明によれば、プログラミング作業の負担軽減、設定ミスの抑制が可能となる。
本発明に係るプログラミング支援装置が適用される制御システムの概略構成図である。 PCのソフトウェア構成の全体図である。 図2において、主にHMIプログラムの作成を支援するソフトウェア構成部分の図である。 メタ情報を用いない従来の作業態様におけるPLC設定と、これに対応するHMI設定の処理を示す画面図である。 図4の画面に至る処理手順を示す図である。 メタ情報を利用してHMI設定作業を効率的に行う第1の支援態様を示す図である。 メタ情報を利用してHMI設定作業を効率的に行う第2の支援態様を示す図である。 支援態様を説明する図で、図8(A)、(B)は、メタ情報を利用してHMI設定作業を効率的に行う第3の支援態様を示す図、図8(A)、(C)は、メタ情報を利用してHMI設定作業を効率的に行う第4の支援態様を示す図、図8(A)、(D)、(E)は、メタ情報を利用してHMI設定作業を効率的に行う第5の支援態様を示す図である。 メタ情報を利用してHMI設定作業を効率的に行う第6の支援態様を示す図である。 メタ情報を利用してHMI設定作業を効率的に行う第7の支援態様を示す図である。 メタ情報を利用してHMI設定作業を効率的に行う第8の支援態様を示す図である。 メタ情報を利用してHMI設定作業を効率的に行う第9の支援態様を示す図である。
図1は、本発明に係るプログラミング支援装置が適用される制御システムの概略構成図である。図1において、制御システム100は、プログラミング支援装置であるパーソナルコンピュータ(PC)1と、製造設備や製造機器等に対する制御を行うプログラマブルコントローラとしてのPLC2と、PLC2を介して又は直接PC1に接続されるプログラム表示器であるHMI3とを備えて構成されている。PC1、PLC2及びHMI3との間はイーサネット(登録商標)L1で接続されている。また、PLC2は、制御対象部(出力機器)41及びセンサ部(入力機器)42との間をネットワーク、例えばEtherCAT(登録商標)L2で接続されて、情報の授受が可能にされている。EtherCAT(登録商標)L2は、産業用のオープンなネットワークで、フィールドネットワークとして利用されているものである。
PC1は、後述するようにプログラミング支援装置として機能するもので、PLCプログラミングツールを用いてPLC用の制御プログラムを作成すると共に、HMIプログラミングツールを用いてHMI用であるインターフェイス用のプログラムを作成する。そして、作成されたPLC用の制御プログラム及びHMI用であるインターフェイス用のプログラムは、PLC2及び対応するHMI3にそれぞれインストールされる。PLC2は、インストールされた制御プログラムに従って出力機器41に対する動作制御を実行し、HMI3はインストールされたインターフェイス用のプログラムに従ってプログラマブル表示器にインターフェイス用の画像を表示する。
PLC2は、公知のように電源ユニットと、CPUユニットとを備えると共に、PC1、HMI3、出力機器41及び入力機器42との間でのデータ通信を行う通信ユニットと、データ入出力用のIOユニットと、制御乃至データ収集及び変更を行う高機能ユニット等の複数のユニットから構成されている。なお、出力機器41には、リレーやモータ等のアクチュエータ類が含まれる。入力機器42には、温度調節器、カメラ、各種スイッチ及びセンサ等のセンサ類が含まれる。
PLC2のCPUユニットにおける制御は、入力機器42から入力ユニットを経て取得した入力データをCPUユニットのI/Oメモリに取り込み、予め設定されたファンクションブロック(FB)等のプログラム部品であってラダー言語で組まれた制御プログラムに基づいて演算し、演算結果をIOユニットに送出して、出力機器41に対する動作制御を典型的にはサイクリックに繰り返すことで行われる。
一方、PLC2により制御される制御システムの動作状況は、HMI3であるプログラマブル表示器を介してモニタリングが行われる。HMI3は、表示画面にグラフィック表示される機能部品であるHMI部品(インターフェイス用のプログラム部品に対応)によってモニタリング内容を適宜に表示する。
PC1は、内部メモリに制御システム設定プログラムがインストールされており、内蔵のCPU(プロセッサ)によって、かかる制御システム設定プログラムが読み出されて実行されることで、プログラミング支援装置として機能する。PC1は、PLC2用の制御プログラムを作成及び編集する機能と、HMI3のインターフェイス(表示)用のプログラムを作成及び編集する機能とを備えると共に、それらをPLC2、HMI3にダウンロード等する機能を備えている。なお、制御システム設定プログラムは、記録媒体から乃至ネット経由で外部からダウンロードすることで提供され得る。
図2は、PC1のソフトウェア構成の全体図である。図3は、図2において、主にHMIプログラムの作成を支援するソフトウェア構成部分の図である。図2、図3は、サポートツールの構成図を示している。PC1は、ユーザからの入力操作を受け付ける操作部10a、及び受け付けた内容に応じた情報を表示する表示部10bを備えている。操作部10aと表示部10bとはパッチパネルを構成されたものを含んでもよい。なお、タッチパネルとは、表示面に積層された透明薄層のシート状感圧素子をいい、表面の押下位置を検出する。
PC1は、さらに汎用OSの環境下で動作するGUI(GraphicalUser Interface)11、変数DB(データベース)12、制御プログラム/設定情報部13、プログラム/設定情報解析機能部14、メタ情報DB(データベース)15、及びプログラミング支援機能部16を備えている。GUI11は、公知のようにコンピュータグラフィック及びマウスやタッチパッド等のポインティングデバイスを用いて画面上で直感的なエディタ機能を実現する操作機能部(ソフトウェア)で、画面上にウインドウやアイコン、ボタン、各種の部品等のグラフィックスを表示させ、それをマウスやタッチパネルを用いて操作する。例えば、表示中のボタン等に対する所定の操作、例えばドラッグアンドドロップ操作をすることで、ボタンを所望の位置に移動し又はコピーするものである。GUI11は、図3に示すように、PLCエディタGUI部111とHMIエディタGUI部121とを備えている。PLCエディタGUI部111は、PLCプログラミング(PLC設定時)において使用され、HMIエディタGUI部121は、HMIプログラミング(HMI設定時)において使用される。
変数DB12は、各プログラム部品に対応する変数データを格納している。制御プログラム/設定情報部13は、設定されているPLC用の各種のプログラム部品を格納するライブラリと、プログラマブル表示器用の各種のプログラム部品を格納するライブラリとを備えている。プログラム部品の例としては、PLC2において実行される制御プログラムのプログラミングに用いることができる種々のFB、その他の機能ブロックが含まれ、また、HMIのプログラム部品の例としては、プログラマブル表示器において実行されるインターフェイス用のプログラムのプログラミングに用いることができる種々のHMI部品が含まれる。
PLC用のプログラム部品及びHMI部品のそれぞれには変数が割り当てられて変数DB12に格納されている。PLC用のプログラム部品に変数を割り当てる場合、例えばPLC側でグローバル変数を定義し、ラダー図でプログラム部品と結び付けることでPLCプログラムを作成する。一方、HMI側では、PLC変数とHMI変数とのマッピング設定を行ってHMI部品のプロパティにHMIの変数を設定するといった作業を経てHMIプログラムが作成される。なお、変数にはプログラム部品に対する入力変数及び出力変数を含む。入力変数としては、FBの「起動」を示す「Execute」が例示でき、また、出力変数としては、「Done」、「Busy」、「Active」、「Error」…が例示される。
制御プログラム/設定情報部13は、GUI11を利用してプログラミング処理を行う機能部で、PLCプログラム/設定部113とHMIプログラム/設定部123とを備えている。PLCプログラム/設定部113は、表示部10bに表示されるプログラム部品の一覧リストから所望のプログラム部品に対する選択操作、例えばドラッグアンドドロップ操作を介して、ラダー言語等によって記述された複数のプログラム部品をインスタンス(実態)化して組み合わせることで、制御プログラムとしてのラダープログラムを作成する。HMIプログラム/設定部123は、PLC設定において選択されたHMI部品であって、表示部10bに表示された選択対象のHMI部品の一覧リストから所望のHMI部品に対する、後述する種々の支援態様による選択処理を介してプログラム図を作成する。このようにして作成され、PLCプログラム/設定部113及びHMIプログラム/設定部123に設定された各制御プログラムは、後にPLC2,HMI3にダウンロードされる。
プログラム/設定情報解析機能部14は、制御プログラム/設定情報部13で作成されたプログラムの内容を解析する機能部で、PLC解析部114とHMI解析部124とを備えている。PLC解析部114は、プログラム部品の関係構造を解析して、プログラム部品の変数を取得する。HMI解析部124も同様にして、設定されたHMI部品の関係構造を解析してプログラム図を認識する。また、プログラム/設定情報解析機能部14は、PLC設定時に選択されたプログラム部品の変数とHMI部品の変数とを関連付ける(リンクさせる)関連情報、例えばメタ情報を設定する。
メタ情報DB15は、プログラム/設定情報解析機能部14で設定されたメタ情報がプログラム部品と対応するHMI部品と対応付けられて登録されるものである。メタ情報は、HMI部品の変数の選択に際してPLCで選択されたプログラム部品の変数との間でのマッピングに際してユーザ支援に供されるものである。メタ情報は、PLCで選択されたプログラム部品とHMI部品の両方に付与されてもよいし、HMI部品側のみに付与される態様でもよい。なお、メタ情報の設定は、プログラム/設定情報解析機能部14によって自動で行われてもよく、あるいはPLC設定時におけるプログラム部品の変数の設定の都度マニュアルで行ってもよい。自動の場合、プログラム部品の変数の種類に対応して予めメタ情報を準備しておくことで、選択されたプログラム部品の変数の設定に応じて、対応するメタ情報を関連付ける処理を行えばよい。
プログラミング支援機能部16は、本実施形態では、HMIプログラム/設定部123でのプログラミングにおいて、メタ情報を活用することでHMI部品の変数の設定操作の支援を行う。本実施形態では、プログラミング支援機能部16は、変数入力補助部161、FB/HMI変換部162、及び照合/コンパイル部163を備えているが、少なくともいずれか1つを備えた態様であってもよい。
変数入力補助部161は、インテリセンス表示を行うものである。なお、インテリセンスとは、統合開発環境において適用される入力支援機能をいう。FB/HMI変換部162は、HMIプログラミングにおいてHMI部品の設定を自動化の下で行うものである。照合/コンパイル部163は、HMIプログラミングにおいてHMI部品の誤設定等の判断と警告処理を行うものである。
以下、HMI部品設定作業においてプログラミング支援機能部16による入力支援の具体例について、図4〜図12を用いて説明する。なお、以下では、PLCプログラミングにおいて原点復帰用のプログラム部品が選択された場合の例で説明する。原点復帰とは、例えばアクチュエータを用いるなどして制御対象を原点位置から目標位置に移動させた後、原点位置に復帰させる制御をいう。この例で適用される数値制御CNCとは、制御対象に対する移動量、移動速度などを制御することをいう。
まず、発明を理解するべく、図4、図5により、メタ情報を用いない従来の作業態様におけるPLC設定と、これに対応するHMI設定の処理とを、画面を参照しつつ説明する。図4は、PLC設定及びHMI設定がなされた状態を示している。図4の上半部はPLC設定の内容を示し、下半部はHMI設定の内容を対応させて示している。PLC設定では、FB51がインスタンス名「Home1」として選択され、その入力側「Execute」に入力変数52の「Exec_1」が、出力側「Busy」に出力変数53の「Busy_1」が選択されて、ラダー回路を形成している。
表示部10bのHMI設定画面では、右半部に表示されている選択対象の変数リスト中から、「Exec_1」と「Busy_1」とに対して、HMIプログラム/設定部123によって、左半部に示すような設定がなされている。「Exec_1」とは、立ち上がり時に命令を開始するものであり、ここでは原点復帰を指令する実行フラグである。「Busy_1」とは、「Exec_1」の立ち上がり時にTRUEになる意味であり、ここでは原点復帰処理実行中を示すフラグである。HMI画面の左側にはFB51に対応するHMI部品であるボタン511が表示され、その一部にインジケータ512が表示されている。そして、HMI3において、ボタン511がクリックされると、クリック時に指定変数(Boolean)がONする。例えば、クリック時に「Exec_1」がONする。インジケータ512は、指定変数(Boolean)に合わせて、例えば色が変更される。この例では、「Exec_1」がONの時に緑色で、OFFの時に赤色となる。
次に、図5は、図4の画面に至る処理手順を示している。まず、PLC設定において、図5(A)で、グローバル変数で定義されている「Exec_1」と「Busy_1」とが選択設定されて、これにより、図5(B)に示すように、FB51に組み込まれてラダー回路が構成される。次に、図5(C)は、HMI設定時を示しており、ここでは、PLC設定時の「Exec_1」及び「Busy_1」と、HMI設定側での「Exec_1」及び「Busy_1」とのマッピングがユーザによって行われる。そして、図5(D)で、HMI部品のプロパティにHMI変数が設定される。ここで、図5(C)では、ユーザは、変数を1つ1つ理解してマッピングする必要があるが、FBの種類によって又はFBの設定数によって変数の個数が多くなると、ユーザにとって変数を覚え、探し出し、そして照合するというマッピング作業が過大となり、作業負担が勢い増大する。
(第1の支援態様例)
次に、図6は、図4、図5に示した従来の作業態様に代えて、メタ情報を利用してHMI設定作業を効率的に行う第1の支援態様を示している。表示部10bの画面W61において、「Home1」、「Exec_1」、「Busy_1」の設定が行われると、選択内容を含むテーブルT61が設定され、表示される。テーブルT61はメタ情報の項目を含む。この例では、「Exec_1」に対して「原点復帰指令フラグ」のメタ情報が設定され、「Busy_1」に対して「原点復帰実行中フラグ」のメタ情報が設定される。その結果、画面W62を用いて行われるHMI設定において、選択対象のHMI部品のうち、PLC設定時にメタ情報が付された「Exec_1」、「Busy_1」に対応する「Exec_1」、「Busy_1」にメタ情報が併記されたテーブルT62として画面に表示される。従って、ユーザは、併記表示されているメタ情報を参照することで(誘導されて)、選択を誤ることなく、対応する適正なHMI部品の変数を選択指示できる。このように、メタ情報を併記表示するだけで作業支援に供するものとなる。
(第2の支援態様例)
図7は、メタ情報を利用してHMI設定作業を効率的に行う第2の支援態様を示している。図7(A)、(B)の画面W71、テーブルT71は、図6のPLC設定と同一であるため説明を省略する。図7(C)における画面W72でのHMI設定では、設定されているFBに対する設定対象項目の変数のリストが表示されている。更に、リストのうち、PLCで設定された変数「Exec_1」、「Busy_1」に対応する「Exec_1」、「Busy_1」の各表示行に対して、対応するウインドウW73,W74が併記表示される。ウインドウW73は、「Exec_1」の表示行に対応して、選択対象となる「EXecu」である「Exec_0」、「Exec_1」、「Exec_2」…がリスト表示され、そのうち、メタ情報が対応付けられた「Exec_1」が表示あるいは他とは識別可能に表示されている。同様に、ウインドウW74は、「Busy_1」の表示行に対応して、選択対象となる「Busy」である「Busy_0」、「Busy_1」、「Busy_2」…がリスト表示され、そのうち、メタ情報が対応付けられた「Busy_1」が表示あるいは他とは識別可能に表示されている。そこで、ウインドウW73,W74の表示に従って、選択操作を行うだけで、対応するHMI部品の変数を誤選択することなく、効率的に選択指示できる。
(第3の支援態様例)
図8は、支援態様を説明する図で、図8(A)、(B)は、メタ情報を利用してHMI設定作業を効率的に行う第3の支援態様を示している。図8(B)に示すように、画面W81でのHMI設定では、メタ情報が設定された変数と該当する変数の一覧が表示される。この例では、「Exec_1」に該当する変数を備えた「Exec_0」、「Exec_1」、「Exec_2」…がウインドウW82のようにリスト表示される。従って、ユーザは、表示されたウインドウW82のリストの中から対応する変数を選択すればよいため、選択効率が上がり、かつ誤選択が軽減される。
(第4の支援態様例)
次いで、図8(A)、(C)は、メタ情報を利用してHMI設定作業を効率的に行う第4の支援態様を示している。図8(C)に示すように、図8(B)のウインドウW82の変数名に加えて、PLCプログラムの詳細情報がウインドウW84に表示される。ユーザは、ウインドウW84のラダー回路のプレビューを参照することで、対応する変数を誤選択することなく、効率的に選択指示できる。
(第5の支援態様例)
次いで、図8(A)、(D)、(E)は、メタ情報を利用してHMI設定作業を効率的に行う第4の支援態様を示している。図8(D)に示すように、ウィザードによる対話形式が採用されている。すなわち、マッピングする原点復帰指令(FB)を押下して選択するためのウインドウW85をポップアップ表示するなどして、FBの選択を支援するようにし、かつ選択を確定させる「OK」ボタンが表示されている。この例では、「Home1」が選択対象である。「OK」ボタンが操作されると、対応するメタ情報と変数とから、ウインドウW86に示すように、「Exec_1」及び「Busy_1」が自動的にマッピングされる。これにより、対応するHMI部品に対する変数の誤選択がなくなり、かつ効率的な選択指示が可能となる。
(第6の支援態様例)
図9は、メタ情報を利用してHMI設定作業を効率的に行う第6の支援態様を示している。図9(A)、(B)の画面W91、テーブルT91は、図7のPLC設定と同一であるため説明を省略する。図9(C)に示すHMI設定では、FBインスタンス名を指定する操作の支援が行われる。すなわち、原点復帰FBのインスタンス名の一覧がウインドウW92に表示される。ここで、該当するFB、すなわち「Home1」を選択押下すると、対応するメタ情報と変数とから、ウインドウW94にて、「Exec_1」及び「Busy_1」が自動的にマッピングされる。これにより、対応するHMI部品に対する変数の誤選択がなくなり、かつ効率的な選択指示が可能となる。また、プログラミング支援機能部16では、該当する変数がマッピングされているが、ユーザは変数を意識する必要はない、その分操作が容易となる。
(第7の支援態様例)
図10は、メタ情報を利用してHMI設定作業を効率的に行う第7の支援態様を示している。図10(A)、(B)に示すHMI設定の画面において、図10(A)で、PLC設定におけるFBの画像を、例えばドラッグアンドドロップ操作して、HMI作成画面側にコピーする。ドロップ操作が終了すると、FB画像は、「Home」ボタンに変換され、変換に連動して変数マッピング処理が実行される。すなわち、図10(C)に示すように、FBのHMI表示画面へのコピー操作に応じて、テーブルT101のようにメタ情報DBが作成され、コピー操作終了に応じて、対応するメタ情報と変数とから、画面W101のように、FBに対応する「Exec_1」及び「Busy_1」が自動的にマッピングされる。
(第8の支援態様例)
図11は、メタ情報を利用してHMI設定作業を効率的に行う第8の支援態様を示している。図11(A)、(B)の画面W111、テーブルT111は、図7のPLC設定と同一であるため説明を省略する。図11(C)のHMI設定において、「Exec_1」の設定に対して、誤って「Busy_2」が設定された場合、プログラミング支援機能部16の照合/コンパイル部163は、対応するメタ情報と変数とから、原点復帰指令フラグとは異なる変数がHMI部品の原点復帰指令入力値に割り当てられた(設定された)と判断して、警告画像W114を生成して警告を行う。警告の態様は、文字、図形等種々採用可能であり、例えば、ビルド時の警告メッセージとして「The Variable would not be suitablefor the Home Button property.」でもよい。このように、誤操作を警告報知することで、信頼性の高い操作に対する支援が図れる。
(第9の支援態様例)
図12は、メタ情報を利用してHMI設定作業を効率的に行う第9の支援態様を示している。図12(A)には、メタ情報が付加されたテーブルT121が表示されている。「Exec_1」と「Busy_1」とはセットで使用されるものであるため、図12(B)のHMI設定画面W121に示すように、セットで設定されていない、すなわち「Busy_2」が設定されている場合、プログラミング支援機能部16の照合/コンパイル部163は、対応するメタ情報と変数及び設定内容から、領域W122のように「Busy_2」が設定されているのは誤りの可能性が高いと判定し、警告を発する。このように、誤操作を警告報知することで、信頼性の高い操作に対する支援が図れる。
なお、前記実施形態では、PLC設定後のHMIプログラミングでの支援を説明したが、逆に先にHMI設定においてメタ情報を作成し、これを後のPLCプログラミングでの支援に利用するようにしてもよい。また、設定する変数は入力変数と出力変数のうち少なくとも一方であってもよい。
前記実施形態では、ラダー言語で説明したが、その他、シーケンス制御のプログラム言語として、LD(ラダーダイアグラム:LadderDiagram)、FBD(ファンクションブロックダイアグラム:Function Block Diagram)、SFC(シーケンシャルファンクションチャート:Sequential Function Chart)、IL(インストラクションリスト:Instruction List)、及びST(ストラクチャードテキスト:Structured Text)の各言語も適用できる。
前記実施形態では、PLC/HMIのプログラミング支援を説明したが、さらに、セーフティーコントローラ、ロボット、ネットワークにおけるプログラミングの支援にも適用可能である。
この発明は、前記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、前記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
1 PC(プログラミング支援装置)
10a 操作部
10b 表示部
14 プログラム/設定情報解析機能部(関連性設定部)
114 PLC解析部(第1の処理部)
124 HMI解析部(第2の処理部)
15 メタ情報DB
161 プログラミング支援機能部(プログラミング支援部)
163 照合/コンパイル(判断部、警告部)

Claims (8)

  1. 互いに関連する第1の制御プログラム及び第2の制御プログラムを作成するプログラミング支援装置において、
    第1の制御用の複数のプログラム部品の中から1又は複数のプログラム部品を選択すると共に、選択された前記プログラム部品に対する入力変数及び出力変数の少なくとも一方を設定して第1の制御プログラムを作成する第1の処理部と、
    第2の制御用の複数のプログラム部品の中から1又は複数のプログラム部品を選択すると共に、選択された前記プログラム部品に対する入力変数及び出力変数の少なくとも一方を設定して第2の制御プログラムを作成する第2の処理部と、
    互いに関連する前記第1の制御プログラムの前記プログラム部品及び前記第2の制御プログラムの前記プログラム部品のそれぞれの前記入力変数及び前記出力変数の少なくとも一方における間をリンク付けする関連情報を設定する関連性設定部と、
    前記第1、第2の処理部のうち、先に実行された一方の処理部で設定された前記入力変数及び前記出力変数の少なくとも一方に基づいて設定された前記関連情報を利用して、後に実行される他方の処理部での前記入力変数及び前記出力変数の少なくとも一方の設定を行うプログラミング支援部と、を備え、
    前記プログラミング支援部は、前記他方の処理部で設定される前記入力変数及び前記出力変数の少なくとも一方に対する誤選択の有無を判断する判断部を備える、
    プログラミング支援装置。
  2. 前記第1の処理部で選択されるプログラム部品は、ファンクションブロックを含む請求項1に記載のプログラミング支援装置。
  3. 前記一方の処理部は、前記第1の処理部である請求項1又は2に記載のプログラミング支援装置。
  4. 画像を表示する表示部を備え、
    前記プログラミング支援部は、前記他方の処理部での前記入力変数及び前記出力変数の少なくとも一方の設定において、前記関連情報を前記表示部に選択可能に表示する請求項1〜3のいずれかに記載のプログラミング支援装置。
  5. 前記プログラミング支援部は、前記一方の処理部で選択されたプログラム部品に対応するプログラム部品を前記関連情報に基づいて設定する請求項1〜3のいずれかに記載のプログラミング支援装置。
  6. 前記プログラミング支援部は、誤選択があった場合、警告を行う警告部を備える請求項1〜5のいずれかに記載のプログラミング支援装置。
  7. 互いに関連する第1の制御プログラム及び第2の制御プログラムをプロセッサが作成するプログラミング支援方法において、
    第1の制御用の複数のプログラム部品の中から1又は複数のプログラム部品を選択すると共に、選択された前記プログラム部品に対する入力変数及び出力変数の少なくとも一方を設定して前記第1の制御プログラムを作成する第1の処理ステップと、
    第2の制御用の複数のプログラム部品の中から1又は複数のプログラム部品を選択すると共に、選択された前記プログラム部品に対する入力変数及び出力変数の少なくとも一方を設定して前記第2の制御プログラムを作成する第2の処理ステップと、
    互いに関連する前記第1の制御プログラムの前記制御用のプログラム部品及び前記第2のプログラムの前記プログラム部品のそれぞれの前記入力変数及び前記出力変数の少なくとも一方における間をリンク付けする関連情報を設定する関連性設定ステップと、
    前記第1、第2の処理ステップのうち、先に実行された一方の処理ステップで設定された前記入力変数及び前記出力変数の少なくとも一方に基づいて設定された前記関連情報を利用して、後に実行される他方の処理ステップでの前記入力変数及び前記出力変数の少なくとも一方の設定を行うプログラミング支援ステップと、を前記プロセッサが実行し、
    前記プログラミング支援ステップには、前記他方の処理ステップで設定される前記入力変数及び前記出力変数の少なくとも一方に対する誤選択の有無を判断する処理が含まれる、
    プログラミング支援方法。
  8. 互いに関連する第1の制御プログラム及び第2の制御プログラムをプロセッサによって作成するプログラムにおいて、
    第1の制御用の複数のプログラム部品の中から1又は複数のプログラム部品を選択すると共に、選択された前記プログラム部品に対する入力変数及び出力変数の少なくとも一方を設定して前記第1の制御プログラムを作成する第1の処理ステップ、
    第2の制御用の複数のプログラム部品の中から1又は複数のプログラム部品を選択すると共に、選択された前記プログラム部品に対する入力変数及び出力変数の少なくとも一方を設定して前記第2の制御プログラムを作成する第2の処理ステップ、
    互いに関連する前記第1の制御プログラムの前記制御用のプログラム部品及び前記第2のプログラムの前記プログラム部品のそれぞれの前記入力変数及び前記出力変数の少なくとも一方における間をリンク付けする関連情報を設定する関連性設定ステップ、及
    前記第1、第2の処理ステップのうち、先に実行された一方の処理ステップで設定された前記入力変数及び前記出力変数の少なくとも一方に基づいて設定された前記関連情報を利用して、後に実行される他方の処理ステップでの前記入力変数及び前記出力変数の少なくとも一方の設定を行うプログラミング支援ステップ、を前記プロセッサに実行させ、
    前記プログラミング支援ステップには、前記他方の処理ステップで設定される前記入力変数及び前記出力変数の少なくとも一方に対する誤選択の有無を判断する処理が含まれる、
    プログラム。
JP2018047077A 2018-03-14 2018-03-14 プログラミング支援装置、プログラミング支援方法及びプログラム Active JP6939662B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018047077A JP6939662B2 (ja) 2018-03-14 2018-03-14 プログラミング支援装置、プログラミング支援方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018047077A JP6939662B2 (ja) 2018-03-14 2018-03-14 プログラミング支援装置、プログラミング支援方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2019159937A JP2019159937A (ja) 2019-09-19
JP6939662B2 true JP6939662B2 (ja) 2021-09-22

Family

ID=67996255

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018047077A Active JP6939662B2 (ja) 2018-03-14 2018-03-14 プログラミング支援装置、プログラミング支援方法及びプログラム

Country Status (1)

Country Link
JP (1) JP6939662B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023209952A1 (ja) * 2022-04-28 2023-11-02 ファナック株式会社 画面作成システム、及び画面作成方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3913414B2 (ja) * 1999-08-31 2007-05-09 株式会社デジタル エディタ装置およびエディタプログラムを記録した記録媒体
US7272458B2 (en) * 2004-04-13 2007-09-18 Omron Corporation Control system setting device

Also Published As

Publication number Publication date
JP2019159937A (ja) 2019-09-19

Similar Documents

Publication Publication Date Title
JP6549748B2 (ja) プロセス制御構成方法、プロセス制御構成システム、及びソフトウェアシステム
US7500597B2 (en) Configurable interface configuration method and system using a remote interface
US8984423B2 (en) Dynamic representation of component configuration method and system
EP1732000B1 (en) Enhanced speed interface method and system
US9292309B2 (en) Abstracted display building method and system
JP4388427B2 (ja) スクリプト言語で記述されたプログラムを呼出し可能な数値制御装置
US8793668B2 (en) Protocol independent programming environment
US8532797B2 (en) Mechanism for constructing generic control logic including versions in various protocols
US8875040B2 (en) Universal web-based reprogramming method and system
JP5875555B2 (ja) 画像作成システム
WO2015075790A1 (ja) シーケンスプログラム作成支援装置
JP6939662B2 (ja) プログラミング支援装置、プログラミング支援方法及びプログラム
US8683364B2 (en) Graphical interconnection of hardware signals
JP2003044108A (ja) エディタの登録装置、登録プログラムおよびそれを記録した記録媒体
CN105137930A (zh) 用于管理和配置自动化设施的现场设备的方法和装置
WO2007106085A1 (en) Configurable human-machine interface configuration method and system using a remote interface
JP2011175351A (ja) 画面データ作成装置、画面データ作成方法、及び画面データ作成プログラム
JP4562141B2 (ja) プログラマブルロジックコントローラ、情報処理装置、制御プログラム、およびテーブル作成プログラム
JP3390569B2 (ja) プラント監視制御装置
JP4455400B2 (ja) 作画エディタ装置、制御用表示装置、並びに、そのプログラムおよび記録媒体
CN107561950B (zh) 楼宇中控制器的编程方法及提供控制器编程工具的服务器
EP3798821B1 (en) Gui controller design assistance device, remote control system, and program
TWI709908B (zh) 在plc編輯環境中與其他軟體協作之方法、程式產品、電腦可讀取媒體
JP6053616B2 (ja) 表示部品制御システム
JP2000315104A (ja) Nc工作機械の管理システムおよび管理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200303

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210209

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210402

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210511

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210702

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210816

R150 Certificate of patent or registration of utility model

Ref document number: 6939662

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150