JP2016110219A - プログラマブル・ロジック・コントローラ、その制御方法およびプログラム作成支援装置 - Google Patents
プログラマブル・ロジック・コントローラ、その制御方法およびプログラム作成支援装置 Download PDFInfo
- Publication number
- JP2016110219A JP2016110219A JP2014244363A JP2014244363A JP2016110219A JP 2016110219 A JP2016110219 A JP 2016110219A JP 2014244363 A JP2014244363 A JP 2014244363A JP 2014244363 A JP2014244363 A JP 2014244363A JP 2016110219 A JP2016110219 A JP 2016110219A
- Authority
- JP
- Japan
- Prior art keywords
- message
- language
- display
- unit
- program
- 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.)
- Pending
Links
Landscapes
- Programmable Controllers (AREA)
Abstract
【課題】PLCにおいて所望のメッセージを表示可能とすること。【解決手段】記憶装置12には、プログラム作成支援装置1から転送されてきたラダープログラム77と、それぞれ異なるメッセージを識別するメッセージ識別情報と1つのメッセージにつきそれぞれ異なる言語で記述されたメッセージデータとを含むメッセージセット78が記憶される。ラダープログラム実行部70はラダープログラム77を実行し、プログラムの実行結果に応じて当該プログラムに関与する複数のデバイスの記憶内容を更新する。表示制御部71はメッセージ指定デバイス81に応じてメッセージを特定し、メッセージ言語指定デバイス80より表示言語を特定し、メッセージを表示部5に表示させる。これにより、PLC2においてプログラムの実行結果に応じたメッセージを複数の言語で表示可能となる。【選択図】図14
Description
本発明は、プログラマブル・ロジック・コントローラ、その制御方法およびプログラム作成支援装置に関する。
一般にプログラマブル・ロジック・コントローラ(PLC)は発光ダイオード(LED)などのインジケータを備えているにすぎず、画像などを表示する液晶表示装置などを備えてはない。その一方で、PLCのメンテナンスに必要な情報は、PLCにパーソナルコンピュータを接続し、パーソナルコンピュータに表示させていた。しかし、PLCにパーソナルコンピュータを接続するのは面倒な作業であった。特許文献1によれば、PLCの基本ユニットに表示装置を設け、基本ユニットの設定内容や基本ユニットに連結された拡張ユニットの設定内容を表示することが提案されている。これにより、基本ユニットにパーソナルコンピュータを接続せずに、メンテナンスに役立つ情報が表示装置に表示されるため、PLCだけでメンテナンス作業を効率よく実施できるようになる。
ところで、PLCは日本国内だけでなく、外国にも輸出される。そのため、PLCには仕向地(輸出国)に応じた言語データが搭載されており、その他の言語データは搭載されていない。たとえば、日本向けのPLCであれば日本語データだけが搭載されており、米国向けのPLCであれば英語データだけが搭載されている。しかし、仕向地ごとに区別して言語データを搭載する作業は面倒であった。また、PLCの在庫管理も複雑となりやすい。また、人材のグローバル化が進むと、1台のPLCを母国語の異なる複数の従業員が管理することも想定される。また、日本企業の中国工場において日本人が設置したPLCを中国人労働者が使用することも考えられる。したがって、1台のPLCであっても複数の表示言語でメッセージを表示できることが市場から望まれている。なお、PLCはメンテナンスなどを実行するプログラムモードとラダープログラムを実行するランモードとを有しており、プログラムモードではメンテナンスのメニューなどを表示し、ランモードではプログラムの実行結果に応じたメッセージを表示する。とりわけ、ランモードにおいてプログラムを実行中に表示されるメッセージについて複数の言語を切り替えて表示できれば便利であろう。ここでは一例としてあるメッセージについて複数の言語で表示する例を取り上げたが、このような課題は一例に過ぎない。たとえば、PLCにおいてメッセージを特定し、そのメッセージに対応したメッセージデータを複数のメッセージセットからどのように取得するかといった課題も存在する。たとえば、同一のイベントに対応したメッセージであっても、プログラマー向けのメッセージとPLCを設置する設置担当者向けのメッセージとは異なることがあろう。
そこで、本発明は、PLCにおいて所望のメッセージが表示可能とすることを目的とする。
本発明は、たとえば、
プログラム作成支援装置上で作成されたユーザプログラムを繰り返し実行するプログラマブル・ロジック・コントローラであって、
ユーザによって操作される操作手段と、
それぞれ異なる複数のメッセージ識別情報と、該複数のメッセージ識別情報の各々にメッセージデータが対応付けられたメッセージセットを複数セット記憶する記憶手段と、
前記ユーザプログラムを実行し、当該ユーザプログラムの実行結果に応じて当該ユーザプログラムに関与する複数のデバイスの記憶内容を更新するプログラム実行手段と、
前記複数のデバイスのうち表示すべきメッセージを指定するメッセージ指定デバイスに応じて一又は複数のメッセージ識別情報を特定し、特定されたメッセージ識別情報と前記複数セットから1つのセットを指定するためのメッセージセット指定デバイスとに応じて、当該メッセージに対応するメッセージデータを前記記憶手段から読み出して表示部に表示させる表示制御手段と
を有することを特徴とするプログラマブル・ロジック・コントローラを提供する。
プログラム作成支援装置上で作成されたユーザプログラムを繰り返し実行するプログラマブル・ロジック・コントローラであって、
ユーザによって操作される操作手段と、
それぞれ異なる複数のメッセージ識別情報と、該複数のメッセージ識別情報の各々にメッセージデータが対応付けられたメッセージセットを複数セット記憶する記憶手段と、
前記ユーザプログラムを実行し、当該ユーザプログラムの実行結果に応じて当該ユーザプログラムに関与する複数のデバイスの記憶内容を更新するプログラム実行手段と、
前記複数のデバイスのうち表示すべきメッセージを指定するメッセージ指定デバイスに応じて一又は複数のメッセージ識別情報を特定し、特定されたメッセージ識別情報と前記複数セットから1つのセットを指定するためのメッセージセット指定デバイスとに応じて、当該メッセージに対応するメッセージデータを前記記憶手段から読み出して表示部に表示させる表示制御手段と
を有することを特徴とするプログラマブル・ロジック・コントローラを提供する。
本発明によれば、PLCにおいて所望のメッセージが表示可能になる。
以下に本発明の一実施形態を示す。以下で説明される個別の実施形態は、本発明の上位概念、中位概念および下位概念など種々の概念を理解するために役立つであろう。また、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。
はじめにプログラマブル・ロジック・コントローラ(PLC、単にプログラマブルコントローラと呼ばれてもよい)を当業者にとってよりよく理解できるようにするために、一般的なPLCの構成とその動作について説明する。
図1は、本発明の実施の形態によるプログラマブル・ロジック・コントローラシステムの一構成例を示す概念図である。図1に示すように、このシステムは、ラダープログラムなどのユーザプログラムの編集を行うためのプログラム作成支援装置1と、工場等に設置される各種制御装置を統括的に制御するためのPLC(プログラマブル・ロジック・コントローラ)2とを備えている。PLC2は、CPUが内蔵された基本ユニット3と1つないし複数の拡張ユニット4を備えている。基本ユニット3に対して1つないし複数の拡張ユニット4が着脱可能となっている。基本ユニット3はCPUユニットと呼ばれることもある。
基本ユニット3には、表示部5及び操作部6が備えられている。表示部5には、基本ユニット3に取り付けられている各拡張ユニット4の動作状況などを表示することができ、表示部5の表示内容は、操作部6を操作することにより切り替えることができる。表示部5には、通常、PLC2内のデバイスの現在値(デバイス値)やPLC2内で生じたエラー情報などが表示される。なお、デバイスとは、デバイス値を格納するために設けられたメモリ上の領域を指す名称であり、デバイスメモリと呼ばれてもよい。デバイス値とは、入力機器からの入力状態、出力機器への出力状態およびユーザプログラム上で設定される内部リレー(補助リレー)、タイマー、カウンタ、データメモリ等の状態を示す情報である。
拡張ユニット4は、PLC2の機能を拡張するために用意されており、基本ユニット3に対して側方から取り付けられる。1つ目の拡張ユニット4は、基本ユニット3に対して側方から直接的に取り付けられる。2つ目以降の拡張ユニット4は、既に取り付けられている拡張ユニット4に対して、側方から直列的に取り付けられる。たとえば、基本ユニット3の右側面と拡張ユニット4の左側面とが連結面になっている。同様に、1つ目の拡張ユニット4の右側面の形状等は基本ユニット3の右側面とほぼ同じであるため、1つ目の拡張ユニット4の右側面に2つ目の拡張ユニット4の左側面が連結される。このような連結方式は、数珠つなぎ方式とかデイジーチェーン方式と呼ばれてもよい。各連結面にはコネクタが設けられており、通信や電力供給を行うためのバスもコネクタを介して連結される。このようにして、基本ユニット3と複数の拡張ユニット4が直列的に取り付けられると、各拡張ユニット4内に備えられた配線(例:バス)を介して、各拡張ユニット4が基本ユニット3に対して通信可能に接続される。各拡張ユニット4には、その拡張ユニット4の機能に対応する被制御装置16(図4)が接続され、これにより、各被制御装置16が拡張ユニット4を介して基本ユニット3に接続される。被制御装置16には、センサなどの入力装置や、アクチュエータなどの出力装置が含まれる。
プログラム作成支援装置1は、たとえば、携帯可能ないわゆるノートタイプやタブレットタイプのパーソナルコンピュータであって、表示部7及び操作部8を備えている。PLC2を制御するためのユーザプログラムの一例であるラダープログラムは、プログラム作成支援装置1を用いて作成され、その作成されたラダープログラムは、プログラム作成支援装置1内でニモニックコードに変換される。そして、プログラム作成支援装置1を、USB(Universal Serial Bus)などの通信ケーブル9を介してPLC2の基本ユニット3に接続し、ニモニックコードに変換されたラダープログラムをプログラム作成支援装置1から基本ユニット3に送ると、そのラダープログラムが基本ユニット3内でマシンコードに変換され、基本ユニット3に備えられたメモリ内に記憶される。
なお、図1では示していないが、プログラム作成支援装置1の操作部8には、プログラム作成支援装置1に接続されたマウスなどのポインティングデバイスが含まれていてもよい。また、プログラム作成支援装置1は、USB以外の他の通信ケーブル9を介して、PLC2の基本ユニット3に対して着脱可能に接続されるような構成であってもよい。
図2は、ラダープログラムの作成時にプログラム作成支援装置1の表示部7に表示されるラダー図17の一例を示す図である。図2に示すように、PLC2を制御するためのラダープログラムは、プログラム作成支援装置1の表示部7にマトリックス状に表示される複数のセル18内に仮想デバイスのシンボル19を適宜配置して、視覚的なリレー回路を表すラダー図17を構築することにより作成される。
ラダー図17には、たとえば、10列×N行(Nは任意の自然数)のセル18が配置されている。そして、各行のセル18内に、図2に示す左側から右側に向かって、時系列的に仮想デバイスのシンボル19を適宜配置することにより、視覚的なリレー回路を作成することができる。作成されるリレー回路は、1行で表される直列的なリレー回路であってもよいし、複数行に並列的に表されたリレー回路を互いに結合することにより作成された、並列的なリレー回路であってもよい。
図2に示すリレー回路は、入力装置からの入力信号に基づいてオン/オフされる3つの仮想デバイス(以下、「入力デバイス」と呼ぶ。)のシンボル19a,19b,19cと、出力装置の動作を制御するためにオン/オフされる仮想デバイス(以下、「出力デバイス」と呼ぶ。)のシンボル19dとが適宜結合されることにより構成されている。
各入力デバイスのシンボル19a,19b,19cの上方に表示されている文字(「R0001」、「R0002」及び「R0003」)は、その入力デバイスのデバイス名(アドレス名)21を表している。各入力デバイスのシンボル19a,19b,19cの下方に表示されている文字(「フラグ1」、「フラグ2」及び「フラグ3」)は、その入力デバイスに対応付けられたデバイスコメント22を表している。出力デバイスのシンボル19dの上方に表示されている文字(「原点復帰」)は、その出力デバイスの機能を表す文字列からなるラベル23である。
図2に示す例では、デバイス名「R0001」及び「R0002」にそれぞれ対応する2つの入力デバイスのシンボル19a,19bが直列的に結合されることにより、AND回路が構成されている。また、これらの2つの入力デバイスのシンボル19a,19bからなるAND回路に対して、デバイス名「R0003」に対応する入力デバイスのシンボル19cが並列的に結合されることにより、OR回路が構成されている。すなわち、このリレー回路では、2つのシンボル19a,19bに対応する入力デバイスがいずれもオンした場合、又は、シンボル19cに対応する入力デバイスがオンした場合にのみ、シンボル19dに対応する出力デバイスがオンされるようになっている。
図3は、図1のプログラム作成支援装置1の電気的構成について説明するためのブロック図である。図3に示すように、プログラム作成支援装置1には、CPU24、表示部7、操作部8、記憶装置25及び通信部26が備えられている。表示部7、操作部8、記憶装置25及び通信部26は、それぞれCPU24に対して電気的に接続されている。記憶装置25は、少なくともRAMを含む構成であり、ラダープログラム記憶部25aと、編集ソフト記憶部25bとを備えている。
ユーザは、編集ソフト記憶部25bに記憶されている編集ソフトをCPU24に実行させて、操作部8を通じてラダープログラムを編集する。ここで、ラダープログラムの編集には、ラダープログラムの作成及び変更が含まれる。編集ソフトを用いて作成されたラダープログラムは、ラダープログラム記憶部25aに記憶される。また、ユーザは、必要に応じてラダープログラム記憶部25aに記憶されているラダープログラムを読み出し、そのラダープログラムを、編集ソフトを用いて変更することができる。通信部26は、通信ケーブル9を介してプログラム作成支援装置1を基本ユニット3に通信可能に接続するためのものである。
図4は、PLC2の電気的構成について説明するためのブロック図である。図4に示すように、基本ユニット3には、CPU10、表示部5、操作部6、記憶装置12及び通信部14が備えられている。表示部5、操作部6、記憶装置12、及び通信部14は、それぞれCPU10に電気的に接続されている。記憶装置12は、RAMやROM、メモリカードなどを含んでもよく、ラダープログラムなどを記憶する。記憶装置12には、プログラム作成支援装置1から入力されたラダープログラムやユーザデータが上書きして記憶される。また、記憶装置12には基本ユニット用の制御プログラムも格納されている。
図5は、本発明の実施の形態に係るプログラマブルコントローラの基本ユニット3でのスキャンタイムの構成を示す模式図である。図5が示すように1つのスキャンタイムTは、入出力のリフレッシュを行うためのユニット間通信201、プログラム実行202、END処理204により構成されている。ユニット間通信201で、基本ユニット3は、ラダープログラムを実行して得られた出力データを基本ユニット3内の記憶装置12から外部機器などに送信するとともに、受信データを含めた入力データを基本ユニット3内の記憶装置12に取り込む。たとえば、基本ユニット3のデバイスに記憶されているデバイス値はリフレッシュによって拡張ユニット4のデバイスに反映される。同様に、拡張ユニット4のデバイスに記憶されているデバイス値はリフレッシュによって基本ユニット3のデバイスに反映される。なお、リフレッシュ以外のタイミングでデバイス値をユニット間で更新する仕組みが採用されてもよい。ただし、基本ユニット3のデバイスは基本ユニット3が随時書き換えており、同様に、拡張ユニット4のデバイスは拡張ユニット4が随時書き換えている。つまり、基本ユニット3のデバイスは基本ユニット3の内部の装置によって随時アクセス可能であり、同様に、拡張ユニット4のデバイスは拡張ユニット4の内部の装置によって随時アクセス可能になっている。基本ユニット3と拡張ユニット4との間では基本的にリフレッシュのタイミングにおいて相互にデバイス値を更新して同期する。プログラム実行202で、基本ユニット3は、更新された入力データを用いてプログラムを実行(演算)する。基本ユニット3はプログラムの実行によりデータを演算処理する。なお、END処理とは、プログラム作成支援装置1や基本ユニット3に接続された表示器(図示せず)等の外部機器とのデータ通信、システムのエラーチェック等の周辺サービスに関する処理全般を意味する。
このように、プログラム作成支援装置1はユーザの操作に応じたラダープログラムを作成し、作成したラダープログラムをPLC2に転送する。PLC2は、入出力リフレッシュ、ラダープログラムの実行およびEND処理を1サイクル(1スキャン)として、このサイクルを周期的、すなわちサイクリックに繰り返し実行する。これにより、各種入力機器(センサ等)からのタイミング信号に基づいて、各種出力機器(モータ等)を制御する。よって、PLC2は汎用のパーソナルコンピュータ(PC)とは全く異なる動きをする。
<連結構造>
図6(A)はPLC2を構成する基本ユニット3、拡張ユニット4およびエンドユニット11が連結される前の状態を示している。この例では、基本ユニット3の右方向に1つ以上の拡張ユニット4が連結される。最も右に位置する拡張ユニット4にはエンドユニット11が連結される。エンドユニット11は、最も右に位置する拡張ユニット4の右側面を保護するものであり、バスの終端機能を備えていてもよい。なお、拡張ユニット4の前面にはダイレクトアクセススイッチ27が設けられてもよい。ダイレクトアクセススイッチ27が操作されると、操作されたことを示す信号が通信バスを介して拡張ユニット4から基本ユニット3に伝達される。基本ユニット3は、この信号を受信することで、拡張ユニット4のダイレクトアクセススイッチ27が操作されたことを認識し、所定の処理(テスト結果の表示など)を実行する。
図6(A)はPLC2を構成する基本ユニット3、拡張ユニット4およびエンドユニット11が連結される前の状態を示している。この例では、基本ユニット3の右方向に1つ以上の拡張ユニット4が連結される。最も右に位置する拡張ユニット4にはエンドユニット11が連結される。エンドユニット11は、最も右に位置する拡張ユニット4の右側面を保護するものであり、バスの終端機能を備えていてもよい。なお、拡張ユニット4の前面にはダイレクトアクセススイッチ27が設けられてもよい。ダイレクトアクセススイッチ27が操作されると、操作されたことを示す信号が通信バスを介して拡張ユニット4から基本ユニット3に伝達される。基本ユニット3は、この信号を受信することで、拡張ユニット4のダイレクトアクセススイッチ27が操作されたことを認識し、所定の処理(テスト結果の表示など)を実行する。
図6(B)はPLC2を構成する基本ユニット3、拡張ユニット4およびエンドユニット11が連結された状態を示している。このPLC2はベースレスのビルディングタイプであるため、ベースを使用せずに、基本ユニット3、拡張ユニット4およびエンドユニット11が連結される。工場において制御盤に設置しやすくするために、PLC2の背面にはDINレールなどの基準レール13が取り付けられるようになっている。なお、基本ユニット3および拡張ユニット4の連結状態を維持するためにロック機構が採用されてもよい。
<基本ユニットの構造>
図7(A)は基本ユニット3の斜視図である。図7(B)は基本ユニット3の前面を示す図である。図8(A)は基本ユニット3の右側面を示す図である。図8(B)は基本ユニット3の底面を示す図である。図9(A)、図9(B)は基本ユニット3の前面を示す図である。図9(C)は電池ケース31を示す図である。
図7(A)は基本ユニット3の斜視図である。図7(B)は基本ユニット3の前面を示す図である。図8(A)は基本ユニット3の右側面を示す図である。図8(B)は基本ユニット3の底面を示す図である。図9(A)、図9(B)は基本ユニット3の前面を示す図である。図9(C)は電池ケース31を示す図である。
基本ユニット3の前面には上述した表示部5と操作部6に加えて、通信ケーブル等の接続部が設けられえている。接続部には、メモリカードスロットを覆う開閉可能なカバー30と、ボタン電池などを収容する引き出し可能な電池ケース31と、ランモードとプログラムモードとを切り替えるスイッチSWを覆う開閉可能なカバー33と、USBコネクタ39を覆う開閉可能なカバー34と、雌型のモジュラーコネクタ32とが設けられている。
従来の電池ケースは基本ユニットの底面に設けられており、電池の交換が容易ではなかった。基本ユニット3は一般に工場の制御盤に取り付けられるが、基本ユニット3の底面側には空間的な余裕がほとんどなく、電池の交換が困難であった。一方で、本実施形態の電池ケース31は基本ユニット3の前面に設けられているため、容易に電池交換が可能となる。
カバー30の左端とカバー33、34の右端にはそれぞれヒンジが設けられている。さらに、電池ケース31が中央に配置されているため、図8(B)や図9(A)、図9(B)が示すように、カバー30、33、34は観音開き式でスムーズに開閉可能である。
図7(B)、図8(A)および図8(B)が示すように、基本ユニット3の底面にはいくつかの脚37が設けられている。脚37を設けることで底面側に排熱用の空間を確保できるようになる。また、排熱を促すために、底面には複数のスリットが設けられていてもよい。なお、排熱用のスリットは基本ユニット3の上面にも設けられてもよい。煙突効果によって底面から外気を効率よく取り込むとともに、上面から基本ユニット3の内部の空気を効率よく排出することが可能となろう。
図7(B)が示すように基本ユニット3の前面側の高さ(脚37を除く)はh1である。図8(A)が示すように基本ユニット3の背面側の高さ(脚37を除く)はh2である(ただし、h1>h2)。図8(A)が示すように、表示部5の分だけ基本ユニット3の前面は背面よりも高くなっている。これにより、表示部5の表示面積を大きくすることが可能となっている。なお、表示部5の高さは、基本ユニット3の前面の高さh1の約3分の1となっている。一般にPLCの基本ユニットには表示装置は設けられておらず、精々、LEDなどのインジケータが設けられる程度であった。それに対して本実施形態では、かなり表示面積の大きなLCDやOLEDなどの表示装置を採用できるため、メンテナンスなどに関する情報を詳細に表示でき、ユーザのメンテナンス作業をアシストできるであろう。
図7(B)などが示すように、操作部6には、たとえば、6つのキーが配置されてもよい。左上のキーはメニューを表示させるキーであってもよい。また、右上のキーはエンターキーであってもよい。中央の2つのキーは上下入力キーであり、左下のキーは左入力キーであり、右下のキーは右入力キーであってもよい。ユーザは操作部6におけるこれらのキーを操作することで複数のメッセージをスクロールさせたり、メッセージの表示を解除したり、メニューからサブメニューを呼び出して各種の設定を実行したりしてもよい。
図7(A)や図8(A)が示すように、背面には基準レール13を取り付けるための取付け部35が設けられている。これにより、基本ユニット3をDINレールなどの基準レール13に固定できるようになる。図8(A)が示すように、右側面には、拡張ユニットの爪部と係合する溝部36が設けられてもよい。図8(A)によれば、基本ユニット3の上面側に2つの溝部36が設けられ、底面側にも2つの溝部36が設けられている。これにより、基本ユニット3と拡張ユニット4とをしっかりと連結して固定できるようになる。
図8(A)が示すように、基本ユニット3の前面はほぼ平面になっており、上面、底面もほぼ平面になっている。これは基本ユニット3のデザイン性を向上させている。また、凹凸が少ないため、前面に接続されたケーブルが凸部に引っ掛かりにくくなっている。
図9(A)が示すように、カバー30を開くとメモリカードスロット38が現れる。メモリカードスロット38に挿入されたメモリカードは記憶装置12の一部となる。図9(B)が示すように、カバー33を開くとスイッチSWが現れ、カバー34を開くと雌型(ソケット側)のUSBコネクタ39が現れる。USBコネクタ39に接続されたUSBケーブルを通じて基本ユニット3とプログラム作成支援装置1とが接続される。図9(C)が示すように、電池ケース31には電池を収納することが可能となっている。この電池によって内部クロックの時刻情報が維持されたり、記憶装置12に含まれているRAMの記憶情報が保持されたりしてもよい。
<拡張ユニットの構造>
図10(A)は拡張ユニット4の斜視図である。図10(B)は拡張ユニット4の前面を示す図である。図11(A)は基本ユニット3の前面に設けられたインジケータユニットを示す図である。図11(B)は拡張ユニット4の右側面を示す図である。拡張ユニット4の種類はさまざまであるが、ここでは拡張ユニット4の一例としてI/Oユニットについて説明する。
図10(A)は拡張ユニット4の斜視図である。図10(B)は拡張ユニット4の前面を示す図である。図11(A)は基本ユニット3の前面に設けられたインジケータユニットを示す図である。図11(B)は拡張ユニット4の右側面を示す図である。拡張ユニット4の種類はさまざまであるが、ここでは拡張ユニット4の一例としてI/Oユニットについて説明する。
図10(A)などが示すように、上面にはレバー40が設けられている。レバー40は爪部43を移動させる部材であり、これらは一体成型された部材であってもよい。レバー40は前面側または後面側にスライドさせることが可能となっており、爪部43を基本ユニット3の溝部36または別の拡張ユニット4の右側面に設けられた溝部36に対してロックさせる。溝部36は概ねL字のような形状をしており、開口面積の広い部分に爪部43が挿入され、レバー40により爪部43を開口面積の狭い部分に移動させることによりロックが実現されている。レバー40を反対に非ロック方向に移動させることで、爪部43と溝部36によるロックが開錠される。なお、底面にもレバー40を設けることで、底面側のロック機構が実現されてもよい。
拡張ユニット4がI/Oユニットである場合、前面には、インジケータユニット41に加え、雌型のコネクタ部42が設けられる。図11(B)が示すように、雌型のコネクタ部42には雄型のコネクタ45が接続される。コネクタ45にはケーブルが接続されており、このケーブルは被制御装置16であるモータやアクチュエータ、センサなどに接続されている。
図11(A)が示すように、インジケータユニット41には、LEDなどのインジケータ44とダイレクトアクセススイッチ27が設けられている。インジケータ44は、I/Oユニットの入力状態や出力状態を点灯/非点灯により示す。なお、インジケータユニット41には、透光性を有する部材で形成されたクリアカバーが設けられてもよい。これによりインジケータ44を保護することが可能となる。
図11(B)が示すように底面側のレバー40の高さ(拡張ユニット4の底面からレバー40の最高部までの距離)は、脚37の高さよりも低い。これにより、拡張ユニット4を平板においても、レバー40が邪魔にならず、拡張ユニット4が安定する。また、図11(B)が示すように上面側のレバー40の高さ(拡張ユニット4の上面からレバー40の最高部までの距離)は、インジケータユニット41の高さと同程度からそれよりも低いことが望ましい。これは、拡張ユニット4を制御盤に取り付ける際に、レバー40が制御盤の他の機器等に触れてしまうことを抑制するためである。なお、図10(B)が示すように、多少であれば、インジケータユニット41の高さよりもレバー40の高さが高くてもよい。このように、レバー40の高さとインジケータユニット41の高さとを同程度することで、拡張ユニット4を狭い空間に取り付けやすくなるとともに、前面側から見た拡張ユニット4のデザイン性も向上しよう。
図10(B)が示すように拡張ユニット4の前面側の高さはh1である。図11(B)が示すように拡張ユニット4の背面側の高さはh2である。つまり、これにより基本ユニット3と拡張ユニット4とのデザイン上の一体感を実現している。なお、拡張ユニット4の前面側の高さh1が背面側の高さh2よりも高いため、インジケータユニット41の面積を大きくすることが可能となる。これによりインジケータ44を見やすく配置することが可能となる。また、隣り合ったインジケータ44との距離を長くすることができるため、インジケータ44の発熱の相互的な影響を減少させることも可能となる。なお、拡張ユニット4の上面と底面にも排熱用のスリットが設けられていてもよい。図10(A)や図11(B)が示すように、背面には基準レール13を取り付けるための取付け部35が設けられている。これにより、基本ユニット3をDINレールに固定できるようになる。
<メニュー>
図12(A)は基本ユニット3のメニューの一例を示す図である。基本ユニット3の操作部6に設けられたメニューキーをユーザが操作すると、CPU10は表示部5にメニューm1を表示する。メニューm1はトップメニューであり、メニューm1からサブメニューsm1〜sm4が呼び出される。メニューm1でデバイスモードが選択されると、CPU10は表示部5にサブメニューsm1を表示する。サブメニューsm1には、デバイスR0、R1のデバイス値が表示される。メニューm1でエラークリアが選択されると、CPU10は表示部5にサブメニューsm2を表示する。サブメニューsm2には、エラーの種別を示すエラー番号とエラー名称などが表示される。メニューm1でトリマが選択されると、CPU10は表示部5にサブメニューsm3を表示する。サブメニューsm3には、現在のトリマの設定値と、設定可能な下限値および上限値とが表示される。メニューm1でI/Oテストが選択されると、CPU10は表示部5にサブメニューsm4を表示する。サブメニューsm4には、I/Oテストを開始するために必要となるユーザの動作(ダイレクトアクセススイッチ27の押し下げなど)を促すメッセージなどが表示される。
図12(A)は基本ユニット3のメニューの一例を示す図である。基本ユニット3の操作部6に設けられたメニューキーをユーザが操作すると、CPU10は表示部5にメニューm1を表示する。メニューm1はトップメニューであり、メニューm1からサブメニューsm1〜sm4が呼び出される。メニューm1でデバイスモードが選択されると、CPU10は表示部5にサブメニューsm1を表示する。サブメニューsm1には、デバイスR0、R1のデバイス値が表示される。メニューm1でエラークリアが選択されると、CPU10は表示部5にサブメニューsm2を表示する。サブメニューsm2には、エラーの種別を示すエラー番号とエラー名称などが表示される。メニューm1でトリマが選択されると、CPU10は表示部5にサブメニューsm3を表示する。サブメニューsm3には、現在のトリマの設定値と、設定可能な下限値および上限値とが表示される。メニューm1でI/Oテストが選択されると、CPU10は表示部5にサブメニューsm4を表示する。サブメニューsm4には、I/Oテストを開始するために必要となるユーザの動作(ダイレクトアクセススイッチ27の押し下げなど)を促すメッセージなどが表示される。
メニューm2は、トップメニューの2ページ目である。メニューm1が表示されている状態で操作部6の上キーまたは下キーが操作されると、CPU10は表示部5にメニューm2を表示する。メニューm2からサブメニューとしてCPUモニタやコメント番号を設定するためのサブメニュー、メニュー言語を設定するためのサブメニューなどを呼び出すことが可能となっている。CPUモニタとは、CPU機能のバージョンや基本ユニット3の製造番号(シリアル番号)などを表示するサブメニューのことである。コメント番号とは、メッセージの表示言語を示す言語IDのことである。なお、コメント番号によってメニューの表示言語も切り替えられてもよい。ただし、ここではメニューの表示言語が、メニュー言語を設定するためのサブメニューから指定されるようになっている。
図12(B)はユーザメッセージの一例を示す図である。ユーザメッセージmsg1はランモードでPLC2が動作しているときに、ラダープログラムにしたがって表示されるメッセージである。上述したメニューは一般にプログラムモードで表示されるものであり、ランモードで表示されるメッセージとは区別される。
ここでは、4つのサブメニューが例示されているが、サブメニューの数はこれよりも多くてもよいし、少なくてもよい。さらに、サブメニューからより下位のサブメニューが呼び出し可能であってもよい。
図13(A)はCPU機能のバージョンを示すサブメニュー(日本語版)の一例を示している。図13(B)はCPU機能のバージョンを示すサブメニュー(英語版)の一例を示している。これらのサブメニューはメニューm2から呼び出され、表示部5に表示される。
図13(C)は基本ユニット3の製造番号(シリアル番号)を示すサブメニュー(日本語版)の一例を示している。図13(B)は基本ユニット3の製造番号(シリアル番号)を示すサブメニュー(英語版)の一例を示している。これらのサブメニューもメニューm2から呼び出され、表示部5に表示される。
図13(E)ないし図13(J)はメニューm1、m2の表示言語を切り替えるためのサブメニューの一例を示している。図13(E)、図13(G)および図13(I)は、表示言語が日本語に設定されているときに表示される、表示言語を変更するためのサブメニューの一例を示している。図13(F)、図13(H)および図13(J)は、表示言語が英語に設定されているときに表示される、表示言語を変更するためのサブメニューの一例を示している。操作部6の上キーまたは下キーを操作することで、表示言語が循環的に、つまり、スクロールして切り替えられる。なお、これらのサブメニューはメニューm2から呼び出される。
図13(K)はユーザメッセージの表示言語を切り替えるためのサブメニュー(日本語版)の一例を示している。図13(L)はユーザメッセージの表示言語を切り替えるためのサブメニュー(英語版)の一例を示している。これらのサブメニューはメニューm2から呼び出される。
CPU10は、操作部6からの指示やプログラム作成支援装置1からの指示にしたがってメニューの表示言語とユーザメッセージの表示言語を独立して切り替えてもよいし、連動して切り替えてもよい。少なくとも、図13(K)や図13(L)に示すサブメニューにおいて上下キーを押し下げることで、少なくともユーザメッセージの表示言語が切り替えられる。このようにメニューの表示言語とユーザメッセージの表示言語とを独立して選択できるようにすることで、基本ユニット3のメンテナンス担当者の母国語と、基本ユニット3の運用者の母国語とが違う環境下でも言語の混乱なく基本ユニット3を使用することが可能となろう。
<基本ユニットの機能>
図14は基本ユニット3のCPU10が制御プログラム76(システムプログラム)を実行することで実現する機能を示している。なお、一部の機能はASICなどの論理回路によって実現されてもよい。図14では、操作部6と表示部5とを基本ユニット3の本体から着脱可能なオペレーションモジュールとして示しているが、操作部6と表示部5は基本ユニット3の本体に固定されていてもよい。なお、オペレーションモジュールを本体から着脱可能とすることで、狭いところにPLC2を設置したとしてもPLC2の操作や表示の確認が可能となる。つまり、オペレーションモジュールを本体から取り外すことで、ユーザは容易に操作を行うことが可能となり、また、容易に表示内容を確認できるようになる。
図14は基本ユニット3のCPU10が制御プログラム76(システムプログラム)を実行することで実現する機能を示している。なお、一部の機能はASICなどの論理回路によって実現されてもよい。図14では、操作部6と表示部5とを基本ユニット3の本体から着脱可能なオペレーションモジュールとして示しているが、操作部6と表示部5は基本ユニット3の本体に固定されていてもよい。なお、オペレーションモジュールを本体から着脱可能とすることで、狭いところにPLC2を設置したとしてもPLC2の操作や表示の確認が可能となる。つまり、オペレーションモジュールを本体から取り外すことで、ユーザは容易に操作を行うことが可能となり、また、容易に表示内容を確認できるようになる。
記憶装置12には、プログラム作成支援装置1から転送されてきた様々なデータやプログラムが格納される。ラダープログラム77はユーザプログラムの一種であり、基本ユニット3や拡張ユニット4などを制御するためにCPU10によって実行される。メッセージセット78は、ラダープログラム77を実行することで表示部5に表示されるメッセージの集合体であり、ここでは複数の言語についてそれぞれメッセージセットが用意されているものとする。フォントデータ79には、メッセージやメニューを表示部5に表示するためのフォントのデータが含まれている。なお、各文字は、たとえば、Unicodeで記述されていてもよい。Unicodeであれば、複数の言語環境下であっても表示文字とその文字コードとがユニークに割り当てられているため、いわゆる文字化け等が起こりにくい利点がある。メッセージ言語指定デバイス80は、メッセージの言語を指定する指定情報(例:セットIDや言語ID)をデバイス値として記憶する記憶領域(デバイスメモリ)である。メッセージ指定デバイス81は、表示部5に表示すべきメッセージの識別情報(例:メッセージID)をデバイス値として記憶する記憶領域(デバイスメモリ)である。表示管理デバイス82は、表示部5にメッセージを表示するか、それとも非表示(表示の終了や解除)とするかを示すデバイス値を記憶する記憶領域(デバイスメモリ)である。
CPU10は制御プログラム76を実行することで様々な手段として機能するが、ここでは代表的なものについて説明する。ラダープログラム実行部70はラダープログラム77を実行するユニットである。とりわけ、PLC2の制御を高速に実行するために、ラダープログラム実行部70はASIC等によりCPU10の外部に実装されてもよい。スイッチSWがランモードに切り替えられたことを検知したモード切替部75が基本ユニット3の内部状態(動作モード)をランモードに切り替えると、ラダープログラム実行部70はラダープログラム77を実行する。また、ラダープログラム実行部70はラダープログラム77にしたがってデバイスに格納されているデバイス値を更新して行く。
表示制御部71は、上述したメニューやメッセージを表示部5に表示させるユニットである。たとえば、表示制御部71は、メッセージ指定デバイス81のデバイス値にしたがってメッセージを特定するとともに、メッセージ言語指定デバイス80によってメッセージ言語を特定し、当該特定された言語による当該メッセージのメッセージデータをメッセージセット78から取得し、メッセージデータとフォントデータ79とにより表示データを作成して表示部5に表示データを送出する。これにより、表示部5にはメッセージ指定デバイス81によって指定されたメッセージが、メッセージ言語指定デバイス80によって指定された言語によって表示される。表示制御部71は、表示管理デバイス82のデバイス値が表示を意味している限り、メッセージを継続して表示部5に表示するが、表示管理デバイス82のデバイス値が非表示に変更されるとメッセージの表示を解除する。プロジェクト管理部72は、プログラムモードにおいてプログラム作成支援装置1から転送されてきたプロジェクトデータ(ラダープログラム77、メッセージセット78、拡張ユニット4の設定データなど)を記憶装置12に格納する。
メッセージ言語設定部73は、操作部6やプログラム作成支援装置1から入力されたメッセージ表示言語の設定指示を受け付け、設定指示に応じてメッセージ言語指定デバイス80のデバイス値を設定する。たとえば、メッセージ言語設定部73は、図13(E)ないし図13(L)に示すようなユーザインタフェースを表示部5に表示し、操作部6の上下キーの押し下げを検知して表示言語を設定する。なお、図13(K)や図13(L)が示すコメント番号はメッセージの表示言語を示している(なお、コメント番号とセットIDや言語IDは一致しているものとする)。たとえば、コメント番号の“コメント1”は日本語を意味し、コメント番号の“コメント2”は英語を意味し、コメント番号の“コメント3”は中国語を意味してもよい。そのため、コメント番号はメッセージ言語やメッセージ表示言語として表示部5に表示されてもよい。メニュー言語設定部74は、操作部6やプログラム作成支援装置1から入力されたメニュー表示言語の設定指示を受け付け、メニューの表示言語を表示制御部71に設定する。たとえば、メニュー言語設定部74は、図13(E)ないし図13(J)に示すようなユーザインタフェースを表示部5に表示し、操作部6の上下キーの押し下げを検知してメニューの表示言語を設定する。なお、メニュー表示言語を示す言語IDについてもデバイスに記憶されてもよいし、EEPROMなどの不揮発性メモリに記憶されてもよい。なお、メニュー言語設定部74については省略されてもよい。この場合、メッセージ言語設定部73が設定するコメント番号はメッセージの表示言語とメニューの表示言語との両方を指定する情報として利用されてもよい。このように、メッセージの表示言語とメニューの表示言語とは個別に指定されてもよいし、連動して指定されてもよい。
モード切替部75は、基本ユニット3の前面に設けられたスイッチSWに連動して、基本ユニット3の動作状態をランモードに切り替えたり、プログラムモードに切り替えたりするユニットである。
<プログラム作成支援装置の機能>
図15はプログラム作成支援装置1のCPU24が編集ソフトウエア87を実行することで実現する機能を示している。編集ソフトウエア87は、ラダープログラム77、メッセージセット78および設定データ88などをユーザが編集するために使用するプログラムである。
図15はプログラム作成支援装置1のCPU24が編集ソフトウエア87を実行することで実現する機能を示している。編集ソフトウエア87は、ラダープログラム77、メッセージセット78および設定データ88などをユーザが編集するために使用するプログラムである。
CPU24は編集ソフトウエア87を実行することで様々な手段として機能するが、ここでは代表的なものについて説明する。ラダープログラム作成部83は表示部7にラダープログラム77を作成および編集するためのユーザインタフェースを表示し、操作部8から入力される指示にしたがってラダープログラム77を作成し、記憶装置25に書き込む。メッセージ作成部84は、メッセージセット78を作成するためのユーザインタフェースを表示部7に表示し、操作部8から入力される指示にしたがってメッセージセット78を作成し、記憶装置25に書き込む。翻訳部85は、メッセージ作成部84によって呼び出され、操作部8から指定されたメッセージ(例:日本語テキスト)を他の言語のメッセージに翻訳する。プロジェクト転送部86は、ラダープログラム77、メッセージセット78および設定データ88などをプロジェクトデータとしてまとめ、基本ユニット3に転送する。なお、設定データ88には、基本ユニット3に対する拡張ユニット4の接続位置やラダープログラム77での識別情報(ユニットID)が含まれている。なお、設定データ88には、メッセージを表示するためのデフォルトの言語を示す言語IDが含まれていてもよい。
<メッセージセットの一例と作成手順>
図16(A)ないし図16(D)はメッセージセットの一例と作成手順を示している。図16(A)は第一言語として日本語が予め指定されており、操作部8を通じて1つ目のメッセージが入力された状態を示している。メッセージ作成部84は入力されたメッセージに関するメッセージデータを、たとえば、Unicodeで表記してもよい。
図16(A)ないし図16(D)はメッセージセットの一例と作成手順を示している。図16(A)は第一言語として日本語が予め指定されており、操作部8を通じて1つ目のメッセージが入力された状態を示している。メッセージ作成部84は入力されたメッセージに関するメッセージデータを、たとえば、Unicodeで表記してもよい。
ここでは、セット1は日本語によるメッセージセットであり、セット2は英語語によるメッセージセットであり、セット3は中国語によるメッセージセットである。セット1〜3はセット識別情報やセットID、言語IDと呼ばれてもよい。英語圏ではセット1が英語によるメッセージセットとなり、中国語圏ではセット1が中国語によるメッセージセットとなってもよい。メッセージ作成部84は、操作部8を通じて入力されたメッセージをセット1における1つ目のメッセージとしてメッセージセットを作成する。メッセージ作成部84は、各メッセージに対して識別情報としてメッセージIDを付与して行く。メッセージIDは、たとえば、連番で付与される番号であってもよい。図16(B)はメッセージごとに翻訳を行う例を示している。メッセージ作成部84は、第一言語のメッセージが入力された状態で操作部8から翻訳が指示されると、翻訳部85に当該メッセージの翻訳を指示する。翻訳部85は、辞書データを参照し、第一言語のメッセージを第二言語や第三言語のメッセージに変換し、メッセージ作成部84に返す。メッセージ作成部84は翻訳部85から受け取った翻訳語をセット2やセット3に入力する。図16(B)では日本語のメッセージが英語のメッセージに翻訳された状態を示している。なお、翻訳部85は、1つのメッセージを複数の言語に変換して複数の言語によるメッセージを返してもよいし、メッセージ作成部84によって指定された1つの言語のメッセージに変換して返してもよい。たとえば、メッセージ作成部84や操作部8によって中国語への変換が指定されると、翻訳部85は、中国語の辞書データを参照して中国語のメッセージに変換して返してもよい。このように翻訳部85は第一言語によるメッセージを1つずつ他の言語のメッセージに逐次変換してもよい。
図16(C)は第一言語による複数のメッセージを連続して入力した様子を示している。1つのメッセージを入力する度に翻訳を実行することはユーザにとって面倒に感じられることがある。そこで、メッセージ作成部84は、操作部8から入力された第一言語による複数のメッセージを用いて第一言語のメッセージセットを作成する。第一言語による複数のメッセージの入力が完了すると、操作部8からの翻訳指示にしたがって翻訳部85は第一言語による複数のメッセージをそれぞれ第二言語や第三言語のメッセージへと一括変換してもよい。図16(D)は三つの言語による最終的なメッセージセット78の一例を示している。図16(D)が示すように、同一の意味のメッセージには言語に依存せずに固有のメッセージIDが付与される。ラダープログラム77上ではメッセージIDを用いて表示すべきメッセージが特定される。また、メッセージIDはラダープログラム77を実行するラダープログラム実行部70によってメッセージ指定デバイス81に格納される。同一の意味のメッセージには言語に依存せずに固有のメッセージIDを割り当てることで、言語別にラダープログラム77を用意する必要がなくなり、ラダープログラム77の作成効率が向上しよう。
<メッセージの表示に関するフローチャート>
図17は基本ユニット3のCPU10が実行する主な処理を示すフローチャートである。S1でCPU10(プロジェクト管理部72)はプログラム作成支援装置1からプロジェクトデータを受信し、記憶装置12に書き込む。S2でCPU10(モード切替部75)はスイッチSWによって指定されたモードがランモードかどうかを判定する。基本ユニット3の動作モードがランモードに変更されると、S3に進む。
図17は基本ユニット3のCPU10が実行する主な処理を示すフローチャートである。S1でCPU10(プロジェクト管理部72)はプログラム作成支援装置1からプロジェクトデータを受信し、記憶装置12に書き込む。S2でCPU10(モード切替部75)はスイッチSWによって指定されたモードがランモードかどうかを判定する。基本ユニット3の動作モードがランモードに変更されると、S3に進む。
S3でCPU10(モード切替部75)はランモードに遷移し、ラダープログラム実行部70にラダープログラム77の実行を開始するよう指示する。ラダープログラム実行部70は開始指示を受信するとラダープログラム77の実行を開始する。ラダープログラム実行部70はラダープログラム77にしたがって様々なデバイスのデバイス値を更新して行く。
S4でCPU10(表示制御部71)は表示管理デバイス82のデバイス値がメッセージを表示することを意味するデバイス値になっているかどうかを判定する。表示管理デバイス82のデバイス値がメッセージを表示することを意味するデバイス値になっていれば、S5に進む。
S5でCPU10(表示制御部71)はメッセージ指定デバイス81を参照し、デバイス値として格納されているメッセージIDを取得するとともに、メッセージ言語指定デバイス80を参照し、デバイス値として格納されているセットID(言語ID)を取得し、メッセージIDと言語IDとにしたがって表示データを作成する。上述したように、表示制御部71は、言語IDによってメッセージセット(日本語メッセージセット、英語メッセージセットなど)を特定し、特定したメッセージセットを参照し、メッセージIDに対応するメッセージデータ(Unicodeにより記述されたテキストデータ)を読み出し、読み出したメッセージデータをフォントデータ79により置き換えて表示データを作成する。
S6で表示制御部71は表示データにしたがってメッセージを表示部5に表示させる。S7でCPU10(表示制御部71)は表示管理デバイス82のデバイス値がメッセージを消去することを意味するデバイス値になっているかどうかを判定する。表示管理デバイス82のデバイス値は、操作部6からの指示にしたがってラダープログラム実行部70や表示制御部71が書き換えてもよい。表示管理デバイス82のデバイス値がメッセージを消去することを意味するデバイス値に変更されていれば、S8に進む。S8でCPU10(表示制御部71)は表示部5にメッセージの表示を終了するよう指示することで、表示部5にメッセージの表示を終了させる。
S9でCPU10(モード切替部75)はランモードの終了がスイッチSWによって指示されたかどうかを判定する。一般にラダープログラム77は、ランモードの終了がスイッチSWによって指示されない限り、周期的に繰り返し実行される。ランモードの終了が指示されていなければ、S4に戻る。一方で、ランモードの終了が指示されていれば、S10に進む。S10でCPU10(モード切替部75)は基本ユニット3をプログラムモードに遷移させ、ラダープログラム実行部70にラダープログラム77の実行を停止させる。
図13(K)などが示すように、たとえばS7において操作部6からコメント番号(言語ID)の変更が指示されると、表示制御部71はメッセージ言語指定デバイス80のデバイス値を変更する。通常、メッセージ言語指定デバイス80のデバイス値はプログラムモードにおいて変更されるが、ランモードにおいて変更されてもよい。この場合、メッセージの言語がランモード中に変更されることになる。たとえば、表示制御部71は操作部6の上下キーによっていずれか言語の選択を受け付けてもよい。
<まとめ>
以上の実施形態ではデバイスを用いて複数の異なる言語によりメッセージを表示する事例について説明した。しかし、上記の実施形態は他の事例に適用可能である。たとえば、PLC2においてあるイベントが発生したときにPLC2はそのイベントに対応したメッセージを表示することになる。しかし、このメッセージの内容はユーザに応じて変更されてもよい。たとえば、ラダープログラムを作成するプログラマーとPLC2の設置担当者では必要とする情報が異なるため、同一のイベントであっても異なるメッセージとした方が適切であろう。また、習熟したユーザと初心者とではやはりメッセージの内容は異なることが適切であろう。習熟したユーザには専門用語で記述された簡潔なメッセージで十分であろうが、初心者にはよりわかりやすい詳細なメッセージが適切であろう。このようにPLC2に関しては様々な局面で所望のメッセージが異なる。よって、あるメッセージのメッセージIDに対して複数のメッセージデータを対応付けて複数のメッセージセットを記憶装置12に記憶しておき、メッセージ指定デバイスによってメッセージセットを特定してもよい。メッセージ指定デバイスのデバイス値は、たとえば、操作部6を通じて書き換えられてもよいし、プログラム作成支援装置1を通じて書き換えられてもよい。これにより、プログラマー向けのメッセージセットが選択されたり、設置担当者向けのメッセージセットが選択されたり、初心者向けのメッセージセットが選択されたり、習熟者向けのメッセージセットが選択されたりする。あるいは修理担当者向けのメッセージセットがメッセージ指定デバイスのデバイス値によって指定されてもよい。
以上の実施形態ではデバイスを用いて複数の異なる言語によりメッセージを表示する事例について説明した。しかし、上記の実施形態は他の事例に適用可能である。たとえば、PLC2においてあるイベントが発生したときにPLC2はそのイベントに対応したメッセージを表示することになる。しかし、このメッセージの内容はユーザに応じて変更されてもよい。たとえば、ラダープログラムを作成するプログラマーとPLC2の設置担当者では必要とする情報が異なるため、同一のイベントであっても異なるメッセージとした方が適切であろう。また、習熟したユーザと初心者とではやはりメッセージの内容は異なることが適切であろう。習熟したユーザには専門用語で記述された簡潔なメッセージで十分であろうが、初心者にはよりわかりやすい詳細なメッセージが適切であろう。このようにPLC2に関しては様々な局面で所望のメッセージが異なる。よって、あるメッセージのメッセージIDに対して複数のメッセージデータを対応付けて複数のメッセージセットを記憶装置12に記憶しておき、メッセージ指定デバイスによってメッセージセットを特定してもよい。メッセージ指定デバイスのデバイス値は、たとえば、操作部6を通じて書き換えられてもよいし、プログラム作成支援装置1を通じて書き換えられてもよい。これにより、プログラマー向けのメッセージセットが選択されたり、設置担当者向けのメッセージセットが選択されたり、初心者向けのメッセージセットが選択されたり、習熟者向けのメッセージセットが選択されたりする。あるいは修理担当者向けのメッセージセットがメッセージ指定デバイスのデバイス値によって指定されてもよい。
このように、記憶装置12には、それぞれ異なる複数のメッセージ識別情報と、該複数のメッセージ識別情報の各々につきメッセージデータが対応付けられたメッセージセットを複数セット記憶する記憶手段として機能する。ラダープログラム実行部70はユーザプログラムを実行し、当該ユーザプログラムの実行結果に応じて当該ユーザプログラムに関与する複数のデバイスの記憶内容を更新するプログラム実行手段として機能する。表示制御部71は複数のデバイスのうち表示すべきメッセージを指定するメッセージ指定デバイスに応じて一つまたは複数のメッセージ識別情報を特定し、特定されたメッセージ識別情報と複数セットから一つのセットを指定するためのメッセージセット指定デバイスとに応じて、当該メッセージに対応するメッセージデータを記憶手段から読み出して表示部に表示させる。なお、上述した多数の実施形態において説明したメッセージ言語指定デバイス80は、メッセージ指定デバイスに読み替えられるものとする。このように本実施形態によればデバイスを通じて所望のメッセージを表示することが可能となる。
上述したように基本ユニット3は、表示部5と操作部6を備えている。表示部5と操作部6はアクセスウインドウを形成し、基本ユニット3から着脱可能に構成されてもよい。表示部5は操作部6に応じて複数のデバイスのうちのいずれかのデバイスに格納されているデバイス値を表示してもよい。
ランモードやプログラムモードのいずれにおいても操作部6でメニュー表示操作が実行されたことを検知すると、表示制御部71は表示部5にメニューを表示する。このメニューを通じて所望のデバイスが選択されると、表示制御部71は、選択されたデバイスのデバイス値を表示部5に表示する。なお、メッセージの表示タイミングは、たとえば、表示部5がメニューを表示している期間であってもよい。つまり、表示制御部71は、表示部5にデバイス値が表示された状態で特定のメッセージの表示が指示されたことを契機として、当該特定のメッセージに対応するメッセージデータを記憶装置12から読み出して表示部5に表示させる。特定のメッセージを表示するための契機(トリガー)は、たとえば、ラダープログラムの実行結果に起因したものであってもよいし、基本ユニット3に接続された表示器などの外部機器から表示指令(表示コマンド)を受信したことであってもよいし、基本ユニット3に電源が投入されたことであってもよい。
また、本実施形態によれば、記憶装置12には、プログラム作成支援装置1から転送されてきたユーザプログラム(例:ラダープログラム77)と、それぞれ異なるメッセージを識別するメッセージ識別情報(例:メッセージセット78内のメッセージID)と、1つのメッセージにつきそれぞれ異なる言語で記述されたメッセージデータ(例:メッセージセット78内のメッセージデータ)とが記憶されている。たとえば、日本語、英語、中国語、韓国語、フランス語、ドイツ語、スペイン語、ヒンディー語、アラビア語など様々な言語で記述されたメッセージデータがメッセージセット78として保持されていてもよい。ラダープログラム実行部70はユーザプログラムを実行し、当該ユーザプログラムの実行結果に応じて当該ユーザプログラムに関与する複数のデバイスの記憶内容を更新する。記憶装置12には、メッセージの表示に関するデバイスだけでなく、拡張ユニット4を制御するためのデバイスなども存在する。これらのデバイスに記憶されているデバイス値はユーザプログラムを実行することで変更される。表示制御部71は複数のデバイスのうち表示すべきメッセージを指定するメッセージ指定デバイス81に応じてメッセージ識別情報を特定し、特定されたメッセージ識別情報と表示言語を指定するための言語指定デバイス(例:メッセージ言語指定デバイス80)とに応じて当該メッセージのメッセージデータを記憶装置12から読み出して表示部5に表示させる。これにより、PLC2においてプログラムの実行結果に応じたメッセージを複数の言語で表示可能となる。
PLC2は、ユーザプログラムを実行するランモードと、ユーザプログラムを実行しないプログラムモードとを切り替える切替手段として、たとえば、スイッチSWやモード切替部75を有していてもよい。メッセージは、PLC2がランモードで動作しているときに、ユーザプログラムの実行結果に応じて表示部5に表示されるメッセージであってもよい。上述したようにPLC2の設置者と運用者とが異なり、かつ、彼らの母国語が異なる場合がある。この場合、基本ユニット3は、PLC2の設置時と運用時とでは異なる言語でメニューやメッセージを表示する。これにより、設置者は設置者の母国語でメッセージなどを理解でき、運用者も運用者の母国語でメッセージなどを理解できるようになり、非常に便利であろう。
上述したようにメッセージの表示言語はプログラム作成支援装置1によって設定されてもよい。たとえば、メッセージ言語設定部73は、プログラム作成支援装置1から転送されてきた言語識別情報(例:設定データ88に含まれているデフォルトの言語を指定するセットIDや言語ID)に応じて言語指定デバイスの記憶内容を設定してもよい。あるいは、メッセージ言語設定部73は、操作部6の操作内容に応じて言語指定デバイスの記憶内容を設定してもよい。たとえば、デフォルトの表示言語はプログラム作成支援装置1によって設定され、その後、PLC2の運用者であるユーザによって操作部6を通じてメッセージの表示言語が変更されてもよい。
表示制御部71は、操作部6によってメニューの表示が指示されると表示部5にメニューを表示し、メニュー言語設定部74は、操作部6によってメニューの表示言語の変更が指示されると、メニューの表示言語を変更する。それとともに、メッセージ言語設定部73は、メッセージの表示言語がメニューの表示言語に整合するよう言語指定デバイスの記憶内容を変更してもよい。このようにユーザは簡単な操作によってメニューとメッセージとを同一の言語で表示することが可能となる。なお、メニュー言語設定部74は、操作部6によってメニューの表示言語の変更が指示されるとメニューの表示言語を変更するが、メッセージ言語設定部73は、言語指定デバイスの記憶内容を維持することでメッセージの表示言語を維持してもよい。これにより、メニューとメッセージとを異なる言語で表示できるようになる。
表示制御部71は、操作部6において特定の操作が実行されると、メッセージデータに基づき表示部5に表示されているメッセージを非表示に切り替えてもよい。ラダープログラム77やC言語プログラムなどのユーザプログラムを実行しているときに(つまりランモードのときに)表示されるメッセージは、プログラムの実行結果を示すメッセージである。よって、運用者がメッセージを確認したときはそのメッセージを消去し、次のメッセージの表示に備えることが望ましいだろう。そこで、操作部6のエンターキーやメニューキーなど、予め指定されたキーが操作されたことを検知すると、表示制御部71は表示管理デバイス82のデバイス値を変更し、メッセージの表示を消去してもよい。これにより、次のメッセージの表示に備えることができる。なお、表示制御部71は複数のメッセージをロギングデータとして記憶装置12に格納してもよい。これにより、ランモード中にどのようなメッセージが表示されたかをラダープログラム77の作成者などが事後的に分析することが可能となろう。
上述したように、ラダープログラム実行部70は、操作部6において特定の操作が実行されたことを検知すると、表示管理デバイス82の記憶内容を、表示を指示する情報から非表示を指示する情報に書き換えてもよい。表示制御部71は、表示管理デバイス82の記憶内容が非表示を指示する情報に書き換えられると、表示部5に表示されているメッセージを非表示に切り替えてもよい。表示管理デバイス82などのデバイスはラダープログラム77からアクセス可能であり、ラダープログラム77によって制御可能である。よって、ラダープログラム77の作成者は適宜のメッセージを表示/非表示をラダープログラム77によって制御してもよい。
表示制御部71は、操作部6から入力されるメッセージの切り替え操作に応じて複数のメッセージを切り替えて表示してもよい。ラダープログラム77を実行していると、複数のメッセージがほぼ同時に出現したり、時間的に離れて複数のメッセージが出現したりすることがある。このような場合に複数のメッセージを切り替えて表示できれば、ユーザは、複数のメッセージを把握できて便利であろう。これらのメッセージの切り替え操作は、たとえば、メッセージのスクロール操作であってもよい。たとえば、表示制御部71は、操作部6の上キーや下キーが操作されると、操作されたキーに応じて複数のメッセージをスクロールしながら表示部5に表示してもよい。
図16などを用いて説明したように、メッセージデータは、第一言語により表記された複数のメッセージのセットと、第二言語により表記された複数のメッセージのセットとして記憶装置12に記憶されていてもよい。プログラム作成支援装置1は、第一言語により表記された複数のメッセージのセットがユーザによって入力されると、第一言語により表記された複数のメッセージのセットを翻訳して第二言語により表記された複数のメッセージのセットを作成してもよい。これによりユーザは翻訳手間を省けるようになり、メッセージセットを効率よく作成できるようになろう。
図16(C)や図16(D)を用いて説明したように、プログラム作成支援装置1は、第一言語により表記された複数のメッセージのセットを一括して第二言語により表記された複数のメッセージのセットに翻訳してもよい。これによりユーザは翻訳の指示を入力する回数を削減できるようになり、メッセージセットを効率よく作成できるようになろう。なお、プログラム作成支援装置1は、第一言語により表記された複数のメッセージのセットのうちユーザによって指定されたメッセージを第二言語により表記されたメッセージに翻訳してもよい。このように指定されたメッセージごとに翻訳作業が実行されてもよい。
メッセージデータはUnicodeで記述されていてもよい。これによりUnicodeであれば容易に複数の言語のメッセージを表記できるようになるため、ユーザにとって便利であろう。
また本実施形態によれば、PLC2に接続可能なプログラム作成支援装置1も提供される。記憶装置25は上述したように辞書データを有している。つまり、記憶装置25は第一言語の単語と第二言語の単語との対応関係を示す辞書を記憶する辞書記憶手段として機能する。本実施形態では、辞書データは編集ソフトウエア87に含まれているものとして記載されているが、編集ソフトウエア87の外部に辞書データが設けられてもよい。操作部8やメッセージ作成部84は、第一言語により表記された複数のメッセージのセットの入力を受け付ける受付手段として機能する。翻訳部85は、第一言語により表記された複数のメッセージのセットがユーザによって入力されると、辞書を参照して、第一言語により表記された複数のメッセージのセットを第二言語により表記された複数のメッセージのセットへ翻訳する翻訳手段として機能する。これによりユーザは翻訳の手間を削減でき、メッセージセットを効率よく作成できるようになろう。翻訳部85は、第一言語により表記された複数のメッセージのセットを一括して第二言語により表記された複数のメッセージのセットに翻訳してもよいし、第一言語により表記された複数のメッセージのセットのうちユーザによって指定されたメッセージを第二言語により表記されたメッセージに翻訳してもよい。いずれの効率が良いかは、メッセージの数やユーザの慣れに依存するだろう。よって、ユーザは自分の嗜好に合わせて翻訳手法を選択してもよい。
Claims (22)
- プログラム作成支援装置上で作成されたユーザプログラムを繰り返し実行するプログラマブル・ロジック・コントローラであって、
ユーザによって操作される操作手段と、
それぞれ異なる複数のメッセージ識別情報と、該複数のメッセージ識別情報の各々につきメッセージデータが対応付けられたメッセージセットを複数セット記憶する記憶手段と、
前記ユーザプログラムを実行し、当該ユーザプログラムの実行結果に応じて当該ユーザプログラムに関与する複数のデバイスの記憶内容を更新するプログラム実行手段と、
前記複数のデバイスのうち表示すべきメッセージを指定するメッセージ指定デバイスに応じて一つまたは複数のメッセージ識別情報を特定し、特定されたメッセージ識別情報と前記複数セットから一つのセットを指定するためのメッセージセット指定デバイスとに応じて、当該メッセージに対応するメッセージデータを前記記憶手段から読み出して表示部に表示させる表示制御手段と
を有することを特徴とするプログラマブル・ロジック・コントローラ。 - 前記プログラマブル・ロジック・コントローラは、ユーザプログラムを周期的に実行する基本ユニットを備え、
前記基本ユニットは、前記操作手段と前記表示部を備え、
前記表示部は、前記操作手段の操作により前記複数のデバイスのデバイス値を表示することを特徴とする請求項1に記載のプログラマブル・ロジック・コントローラ。 - 前記表示制御手段は、前記表示部に前記デバイス値が表示された状態で特定のメッセージの表示が指示されたことを契機として、当該特定のメッセージに対応するメッセージデータを前記記憶手段から読み出して前記表示部に表示させることを特徴とする請求項2に記載のプログラマブル・ロジック・コントローラ。
- 前記記憶手段は、前記複数のメッセージ識別情報の各々につきそれぞれ異なる言語で記述されたメッセージデータが対応付けられたメッセージセットを複数セット記憶していることを特徴とする請求項1ないし3のいずれか1項に記載のプログラマブル・ロジック・コントローラ。
- 前記プログラマブル・ロジック・コントローラは、前記ユーザプログラムを実行するランモードと、前記ユーザプログラムを実行しないプログラムモードとを切り替える切替手段を有し、
前記メッセージは、前記プログラマブル・ロジック・コントローラが前記ランモードで動作しているときに、前記ユーザプログラムの実行結果に応じて前記表示部に表示されるメッセージであることを特徴とする請求項1ないし4のいずれか1項に記載のプログラマブル・ロジック・コントローラ。 - 前記プログラム作成支援装置から転送されてきた言語識別情報に応じて前記メッセージセット指定デバイスである言語指定デバイスの記憶内容を設定する言語設定手段をさらに有することを特徴とする請求項1ないし5のいずれか1項に記載のプログラマブル・ロジック・コントローラ。
- 前記操作手段の操作内容に応じて前記メッセージセット指定デバイスである言語指定デバイスの記憶内容を設定する言語設定手段をさらに有することを特徴とする請求項1ないし5のいずれか1項に記載のプログラマブル・ロジック・コントローラ。
- 前記表示制御手段は、前記操作手段によってメニューの表示が指示されると前記表示部にメニューを表示し、
前記言語設定手段は、前記操作手段によってメニューの表示言語の変更が指示されると、前記メニューの表示言語を変更するとともに、前記メッセージの表示言語が前記メニューの表示言語に整合するよう前記言語指定デバイスの記憶内容を変更することを特徴とする請求項7に記載のプログラマブル・ロジック・コントローラ。 - 前記表示制御手段は、前記操作手段によってメニューの表示が指示されると前記表示部にメニューを表示し、
前記言語設定手段は、前記操作手段によってメニューの表示言語の変更が指示されると、前記メニューの表示言語を変更するが、前記言語指定デバイスの記憶内容を維持することで、前記メッセージの表示言語を維持することを特徴とする請求項7に記載のプログラマブル・ロジック・コントローラ。 - 前記表示制御手段は、前記操作手段において特定の操作が実行されると、前記メッセージデータに基づき前記表示部に表示されているメッセージを非表示に切り替えることを特徴とする請求項1ないし9のいずれか1項に記載のプログラマブル・ロジック・コントローラ。
- 前記メッセージの表示と非表示とを管理する表示管理デバイスをさらに有し、
前記プログラム実行手段は、前記操作手段において特定の操作が実行されたことを検知すると、前記表示管理デバイスの記憶内容を、表示を指示する情報から非表示を指示する情報に書き換え、
前記表示制御手段は、前記表示管理デバイスの記憶内容が非表示を指示する情報に書き換えられると、前記表示部に表示されているメッセージを非表示に切り替えることを特徴とする請求項10に記載のプログラマブル・ロジック・コントローラ。 - 前記表示制御手段は、前記操作手段から入力されるメッセージの切り替え操作に応じて複数のメッセージを切り替えて表示することを特徴とする請求項1ないし11のいずれか1項に記載のプログラマブル・ロジック・コントローラ。
- 前記メッセージの切り替え操作は、メッセージのスクロール操作であることを特徴とする請求項12に記載のプログラマブル・ロジック・コントローラ。
- 前記メッセージデータは、第一言語により表記された複数のメッセージのセットと、第二言語により表記された複数のメッセージのセットとして前記記憶手段に記憶されており、
前記プログラム作成支援装置は、前記第一言語により表記された複数のメッセージのセットがユーザによって入力されると、前記第一言語により表記された複数のメッセージのセットを翻訳して前記第二言語により表記された複数のメッセージのセットを作成することを特徴とする請求項1ないし13のいずれか1項に記載のプログラマブル・ロジック・コントローラ。 - 前記プログラム作成支援装置は、前記第一言語により表記された複数のメッセージのセットを一括して前記第二言語により表記された複数のメッセージのセットに翻訳することを特徴とする請求項14に記載のプログラマブル・ロジック・コントローラ。
- 前記プログラム作成支援装置は、前記第一言語により表記された複数のメッセージのセットのうちユーザによって指定されたメッセージを前記第二言語により表記されたメッセージに翻訳することを特徴とする請求項14に記載のプログラマブル・ロジック・コントローラ。
- 前記メッセージデータはUnicodeで記述されていることを特徴とする請求項1ないし16のいずれか1項に記載のプログラマブル・ロジック・コントローラ。
- プログラム作成支援装置上で作成されたユーザプログラムを繰り返し実行するプログラマブル・ロジック・コントローラの制御方法であって、
それぞれ異なる複数のメッセージ識別情報と、該複数のメッセージ識別情報の各々につきメッセージデータが対応付けられたメッセージセットを複数セット記憶する工程と、
前記ユーザプログラムを実行し、当該ユーザプログラムの実行結果に応じて当該ユーザプログラムに関与する複数のデバイスの記憶内容を更新する工程と、
前記複数のデバイスのうち表示すべきメッセージを指定するメッセージ指定デバイスに応じて一つまたは複数のメッセージ識別情報を特定し、特定されたメッセージ識別情報と前記複数セットから一つのセットを指定するためのメッセージセット指定デバイスとに応じて、当該メッセージに対応するメッセージデータを記憶手段から読み出して表示部に表示させる工程と
を有することを特徴とする制御方法。 - 請求項18に記載の制御方法をプログラマブル・ロジック・コントローラに実行させるシステムプログラム。
- 請求項1ないし17のいずれか1項に記載されたプログラマブル・ロジック・コントローラに接続可能なプログラム作成支援装置であって、
第一言語の単語と第二言語の単語との対応関係を示す辞書を記憶する辞書記憶手段と、
前記第一言語により表記された複数のメッセージのセットの入力を受け付ける受付手段と、
前記第一言語により表記された複数のメッセージのセットがユーザによって入力されると、前記辞書を参照して、前記第一言語により表記された複数のメッセージのセットを前記第二言語により表記された複数のメッセージのセットへ翻訳する翻訳手段と
を有することを特徴とするプログラム作成支援装置。 - 前記翻訳手段は、前記第一言語により表記された複数のメッセージのセットを一括して前記第二言語により表記された複数のメッセージのセットに翻訳することを特徴とする請求項20に記載のプログラム作成支援装置。
- 前記翻訳手段は、前記第一言語により表記された複数のメッセージのセットのうちユーザによって指定されたメッセージを前記第二言語により表記されたメッセージに翻訳することを特徴とする請求項20に記載のプログラム作成支援装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014244363A JP2016110219A (ja) | 2014-12-02 | 2014-12-02 | プログラマブル・ロジック・コントローラ、その制御方法およびプログラム作成支援装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014244363A JP2016110219A (ja) | 2014-12-02 | 2014-12-02 | プログラマブル・ロジック・コントローラ、その制御方法およびプログラム作成支援装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016110219A true JP2016110219A (ja) | 2016-06-20 |
Family
ID=56123996
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014244363A Pending JP2016110219A (ja) | 2014-12-02 | 2014-12-02 | プログラマブル・ロジック・コントローラ、その制御方法およびプログラム作成支援装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2016110219A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018147423A (ja) * | 2017-03-09 | 2018-09-20 | セイコーソリューションズ株式会社 | 決済端末装置及びプログラム |
JP2019091427A (ja) * | 2017-10-02 | 2019-06-13 | フィッシャー−ローズマウント システムズ,インコーポレイテッド | プロセス制御プラントにおいてマルチ言語ディスプレイビュー能力をサポートするためのシステムおよび方法 |
-
2014
- 2014-12-02 JP JP2014244363A patent/JP2016110219A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018147423A (ja) * | 2017-03-09 | 2018-09-20 | セイコーソリューションズ株式会社 | 決済端末装置及びプログラム |
JP2019091427A (ja) * | 2017-10-02 | 2019-06-13 | フィッシャー−ローズマウント システムズ,インコーポレイテッド | プロセス制御プラントにおいてマルチ言語ディスプレイビュー能力をサポートするためのシステムおよび方法 |
JP7481798B2 (ja) | 2017-10-02 | 2024-05-13 | フィッシャー-ローズマウント システムズ,インコーポレイテッド | プロセス制御プラントにおいてマルチ言語ディスプレイビュー能力をサポートするためのシステムおよび方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2472902B1 (en) | Image forming device and program | |
EP2009529B1 (en) | Safety-oriented programmable logic controller with automatic program generation and monitoring | |
CN102308263B (zh) | 梯形图程序编辑装置 | |
EP1655661A2 (en) | Programmable display device | |
JP2008310390A (ja) | 安全コントローラのプログラム開発支援装置 | |
US20160246279A1 (en) | Sequence-program-creation supporting apparatus | |
CN103576599A (zh) | Plc系统、其绘图编辑装置、可编程显示器 | |
EP2309358B1 (en) | Plant monitoring control system | |
JP2016110219A (ja) | プログラマブル・ロジック・コントローラ、その制御方法およびプログラム作成支援装置 | |
CN107615191B (zh) | 调试装置及调试方法 | |
JP6550268B2 (ja) | プログラム作成支援装置、プログラムおよび判別方法 | |
JP5808922B2 (ja) | 空調機制御インターフェース装置、空気調和機および空調機制御システム | |
WO2012066683A1 (ja) | システム構築支援ツールおよびシステム構築支援装置 | |
JP2006209381A (ja) | 制御用表示装置、そのプログラムおよび記録媒体 | |
EP2933706B1 (en) | Information processing device and program | |
JP2007280092A (ja) | 画面データ作成方法 | |
JP6484015B2 (ja) | プログラマブル・ロジック・コントローラおよびその制御方法 | |
JP2008097266A (ja) | 表示画面上の部品のフォーカス移動方式および表示器 | |
JP2008083767A (ja) | 表示器 | |
JP2016110393A (ja) | プログラマブルコントローラ、プログラマブルコントローラの試験方法およびプログラム | |
JP2004005060A (ja) | 制御プログラム検索装置、および、そのプログラム | |
US11803376B2 (en) | Programming support apparatus for developing a user program to be executed by a programmable logic controller | |
JP2020017225A (ja) | 情報処理装置および表示プログラム | |
US20220100160A1 (en) | Automated programming of a programmable-logic controller (plc) of a microcontroller using an expert system | |
JP2016110221A (ja) | プログラマブル・ロジック・コントローラ、基本ユニット、制御方法および制御プログラム |