(57)【要約】【課題】ラダープログラムのデバッグ等を容易に行うことができるようにする。【解決手段】制作されたラダープログラムをプログラミングツール画面上でデバッグ等する方法において、プログラミングツール画面上に、テキストビュー画面を呼び出し、そのテキストビュー画面上では、ビューモードで該当アドレスでのＰＬＣの現在の状態（現在値）をテキストで表示し、編集モードでは、この現在値を示すテキストと、プログラミングツールが示すＰＬＣの状態（ビュー値）を示すテキストとを表示すると共に、現在値を示すテキストとビュー値を示すテキストとの一致または不一致の表示と、不一致の場合にその不一致の所在箇所を特定表示する。【選択図】図５
2010152830.tif 000002
【特許請求の範囲】
【請求項１】
制作されたラダープログラムをプログラミングツール画面上でデバッグ等する方法において、上記ラダープログラムは、ＰＬＣの任意の制御状態をプログラミングツール画面上に表示したラダー図内にテキストで表示するステップと、そのテキストをＰＬＣ内のメモリであるテキストレジスタにアドレスを付して記憶するステップと、ＰＬＣの制御に伴い、そのテキストレジスタに記憶するテキストを書き換えたり、読み出したりするステップと、を有するものであり、そのプログラミングツールから、テキストビュー画面を呼び出し可能とし、
上記テキストビュー画面は、ビューモードでは複数のテキストレジスタで示されるＰＬＣの現在の状態をテキスト（カレントテキスト）で表示し、編集モードでは、このカレントテキストを書き換え可能にすると共に、上記カレントテキストとの比較のため、プログラミングツールにより提供されるＰＬＣの状態をテキスト（ニューテキスト）で表示すると共に、カレントテキストとニューテキストとの一致または不一致の表示と、不一致の場合にカレントテキスト上での不一致箇所を特定表示することで、ラダープログラムの動作状態を特定可能とした、ことを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制作されたラダープログラムをプログラミングツール画面上でデバッグないし再編集等する方法に関するものである。
【背景技術】
【０００２】
ラダープログラムは、プログラマブルコントローラによる制御シーケンスを定めるプログラムであり、ラダー図で記述される。ラダー図は、左右両端の垂直な二つの母線間を横方向水平に結ぶ平行な接続線上に、デバイス番号と共に押しボタンやスイッチやセンサ等の各種入力デバイスの状態に対応した命令が接点形状で表示され、また、リレーコイル、タイマ、シフトレジスタ等の各種出力デバイスへの命令が各種形状で表示される。
【０００３】
そして、プログラマブルコントローラと負荷とで制御系を構築した場合、プログラマブルコントローラは、ＣＰＵ（プロセッサ）と、システム制御プログラム（ファームウエア）や、ラダープログラム等のプログラムメモリや、入出力メモリ、内部リレーメモリ、データメモリ、等の内部メモリが、内部バスで相互接続され、ＣＰＵは、ラダープログラムをシステム制御プログラムに従い実行することで、入出力デバイスを介して、被制御機器を制御する。この制御に際して、ＣＰＵは、内部メモリに格納されている各種データを参照しながらラダープログラムを実行する。
【０００４】
このようなラダープログラムの修正や実行に際しては、その状態をモニタするパーソナルコンピュータからなるプログラミングツールが提案されている。プログラミングツールは、ツール画面上にラダー図表示領域を有する。このラダー図は、デバイス番号と共に押しボタンやスイッチやセンサ等の各種入力デバイスが接点形状のラダー部品で表示され、リレーコイル、タイマ、シフトレジスタ等の各種出力デバイスへの命令がそれぞれに対応した形状のラダー部品で表示される。
【０００５】
そして、編集制作したラダープログラムはシステムとして完成させユーザ渡しする前に、デバッグする必要がある。このデバッグでは、プログラミングツールと、プログラマブルコントローラと、被制御機器とを接続して実際に稼動させる場合と、ラダープログラム制作室内でプログラミングツールとプログラマブルコントローラとで行う場合とがある。
【０００６】
ところで、プログラマブルコントローラの内部メモリには、センサやアクチュエータ等の入出力デバイスのＯＮ／ＯＦＦ情報を記憶するビットメモリと、ＣＰＵの演算結果などの数値を記憶する数値レジスタと、ラダープログラム実行過程でシーケンス制御の各種状態を文字（テキスト）で表現するときにそのテキストを記憶するテキストレジスタとがある。
【０００７】
そして、ラダープログラム上で、プログラマブルコントローラの制御状態をテキストで示す場合、普通、複数のテキストで示されるので、プログラマブルコントローラの１つの制御状態を示すのに、複数のテキストレジスタで構成することが行われる。そのため、ユーザ渡しする前のラダープログラムをテキストに関してデバッグする作業は膨大となり、デバッグ等を容易に行うことができなかった。なお、デバッグすることに関する特許文献は例えば特開２００５−０９２８０６等がある。
【特許文献１】特開２００５−０９２８０６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
したがって、本発明により解決すべき課題は、ラダープログラムのデバッグ等を容易に行うことができるようにすることである。
【課題を解決するための手段】
【０００９】
本発明方法は、制作されたラダープログラムをプログラミングツール画面上でデバッグ等する方法において、上記ラダープログラムは、ＰＬＣの任意の制御状態をプログラミングツール画面上に表示したラダー図内にテキストで表示するステップと、そのテキストをＰＬＣ内のメモリであるテキストレジスタにアドレスを付して記憶するステップと、ＰＬＣの制御に伴い、そのテキストレジスタに記憶するテキストを書き換えたり、読み出したりするステップと、を有するものであり、そのプログラミングツール画面上に、テキストビュー画面を呼び出し可能とし、
上記テキストビュー画面は、ビューモードでは複数のテキストレジスタで示されるＰＬＣの現在の状態をテキスト（カレントテキスト）で表示し、編集モードでは、このカレントテキストを書き換え可能とすると共に、上記カレントテキストとの比較のため、プログラミングツールにより提供されるＰＬＣの状態をテキスト（ニューテキスト）で表示すると共に、カレントテキストとニューテキストとの一致または不一致の表示と、不一致の場合にカレントテキスト上での不一致箇所を特定表示することで、ラダープログラムの動作状態を特定可能としたことを特徴とする。
【００１０】
本発明においては、テキストビュー画面上でビューモードで制作したラダープログラムによるＰＬＣにおける制御状態を確認できると共に、編集モードにすると、制作したラダープログラムによるテキストデータによりＰＬＣにおける現在の制御状態を示すカレントテキストを書き換えてラダープログラムを再編集することができる。さらに本発明では、上記テキストビュー画面上で、カレントテキストに対して、プログラミングツールが入力したテキストデータによりＰＬＣにおける制御状態を示すニューテキストを比較し、そのカレントテキストとニューテキストとの一致、不一致状態から、ラダープログラムの動作状態を特定することができるので、そのテキストビュー画面を用いてラダープログラムのデバッグを容易に行うことができる。
【発明の効果】
【００１１】
本発明によれば、ユーザ渡しする前のラダープログラムのデバッグ等を容易に行うことができるようになる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施の形態に係る制作されたラダープログラムをプログラミングツール画面上でデバッグ等する方法を詳細に説明する。
【００１３】
図１に、プログラミングツール１と、ＰＬＣ２と、入出力デバイス３と、制御機械４とを示す。図２で示すように、ＰＬＣ２には、ラダープログラムを実行するＣＰＵ５と、ＰＬＣのシステム制御プログラムを格納するシステムメモリ６と、ラダープログラムを格納するプログラムメモリ７と、入出力デバイスの状態を示すデータ等を記憶する内部メモリ８とを有する。
【００１４】
内部メモリ８は、センサやアクチュエータ入出力デバイス３のＯＮ／ＯＦＦ情報を記憶するビットメモリ８ａと、ＣＰＵ５におけるラダープログラム実行過程上での制御や演算の結果などの数値を記憶する数値レジスタ８ｂと、ラダープログラム実行過程で制御の各種状態を文字（テキスト）で表現するときにそのテキストを記憶するテキストレジスタ８ｃとがある。
【００１５】
テキストレジスタ８ｃは、実施の形態ではテキストを１つのみ記憶するものとする。ただし、１つのテキストレジスタで複数のテキストを記憶する場合でもよい。ラダープログラム上でのテキストレジスタ８ｃの名称はＴＸＴ１、ＴＸＴ２、…である。テキストの文字種類の例としてはＡＳＣＩＩ文字である。これらテキストレジスタはメモリ上ですべてアドレスがあり、ＣＰＵ５はラダープログラムの実行に際しては、このアドレスを参照してテキストレジスタにテキストを読み出したり、書き込んだりして、シーケンス制御する。
【００１６】
なおＰＬＣ２の制御状態をテキストで示す場合、複数のテキストで示される。テキストレジスタ８ｃはＰＬＣ２の１つの制御状態を示すのに、複数のテキストレジスタで構成され、ＣＰＵ５は各テキストレジスタへのテキストの書き換え、読み出しをするのにそれぞれのアドレスを参照する必要がある。
【００１７】
プログラミングツール１上の画面には、デバッグ対象であるラダープログラムが表示される。この画面上に呼び出すウインドウ画面として、アドレスピッカー画面、データビュー画面や、テキストビュー画面がある。アドレスピッカー画面は、ラダー図上のラダー部品のアドレスを設定することができる画面である。データビュー画面上では、ビットメモリ８ａに記憶されている入出力デバイス３のＯＮ／ＯＦＦ情報を詳細に表示したり、数値レジスタ８ｂに記憶されているＣＰＵ５の演算結果等を詳細に表示することができる画面である。
【００１８】
以上において、実施の形態のラダープログラムは、ＰＬＣ２の任意の制御状態をプログラミングツール１の画面上に表示したラダー図内にテキストで表示するステップと、そのテキストをＰＬＣ２内のメモリであるテキストレジスタ８ｃにアドレスを付して記憶するステップと、ＰＬＣ２の制御に伴い、そのテキストレジスタ８ｃに記憶するテキストを書き換えたり、読み出したりするステップと、を有する。
【００１９】
そして、本実施の形態は、テキストレジスタ８ｃの状態を見るため、プログラミングツール画面上に、呼び出し可能とされたテキストビュー画面に関するものである。以下、図３以降を参照してテキストビュー画面を説明する。
【００２０】
図３に示すテキストビュー画面１０は、ビューモード画面と編集モード画面とがある。テキストビュー画面１０上には、編集ボタン１１が「Ｅｄｉｔ」表記されて配置されている。この編集「Ｅｄｉｔ」ボタンがマウス等でクリック操作されていないときは、テキストビュー画面１０はビューモードであり、操作されているときは、テキストビュー画面１０は編集モードである。テキストビュー画面１０はビューモードでは単に表示内容を確認するための画面である。テキストビュー画面１０は編集モードではデバッグ等のためＰＬＣ２のラダープログラムを書き換えたりできる画面である。
【００２１】
テキストビュー画面１０の右側上部には、Ｖｉｅｗ（Ｃｕｒｒｅｎｔ  Ｔｅｘｔ）と英語表記部分１２があり、ここで表示が文字「Ｔｅｘｔ」表記であるか１６進数「Ｈｅｘ」表記であるかをチェックするボックスが設けられている。図３では編集「Ｅｄｉｔ」ボタン１１は操作されていなくてモードがビューモードの状態を示す。このテキストビュー画面１０における表示領域１３の横一列に「Ｓｔａｒｔ  Ａｄｄｒｅｓｓ」「Ｎｉｃｋｎａｍｅ」「Ｅｎｄ  Ａｄｄｒｅｓｓ」「Ｌｅｎｇｔｈ」「Ｃｕｒｒｅｎｔ  Ｔｅｘｔ」と英語表記され、領域縦一列にＮｏ．１，２，…が表記されている。ＰＬＣ２の制御状態を実施の形態では８個のテキストレジスタ上のテキストで構成する。テキストレジスタの名称はＴＸＴ１−ＴＸＴ８である。なお、テキストビュー画面１０の表示領域１３にはＮＯ．１においてのみ図解の都合で表示しているが、ＮＯ．２以降においても同様に表示される。最初のテキストレジスタＴＸＴ１のアドレスがスタートアドレスとして「Ｓｔａｒｔ  Ａｄｄｒｅｓｓ」表記領域１４に表示され、この制御状態を示す８個のテキストレジスタのニックネームが「Ｎｉｃｋｎａｍｅ」表記領域１５に表示され、最後のテキストレジスタＴＸＴ８のアドレスがエンドアドレスとして「Ｅｎｄ  Ａｄｄｒｅｓｓ」表記領域１６に表示され、テキストレジスタＴＸＴ１−ＴＸＴ８の個数分が長さとして「Ｌｅｎｇｔｈ」表記領域１７に表示され、ＰＬＣ２の現在の制御状態値が「Ｃｕｒｒｅｎｔ  Ｔｅｘｔ」表記領域１８に表示される。実施の形態では、ＮＯ．１に８個のテキストレジスタＴＸＴ１−ＴＸＴ８のうち、最初のテキストレジスタＴＸＴ１のスタートアドレスが「Ｓｔａｒｔ  Ａｄｄｒｅｓｓ」表記領域１４に「ＴＸＴ１」で、最後のテキストレジスタＴＸＴ８のエンドアドレスが「Ｅｎｄ  Ａｄｄｒｅｓｓ」表記領域１６に「ＴＸＴ８」で表示され、テキストレジスタの個数分が長さとして「Ｌｅｎｇｔｈ」欄に「８」で表示され、また、ＰＬＣ２の現在の制御状態の値を示すテキスト（カレントテキスト）が「Ｃｕｒｒｅｎｔ  Ｔｅｘｔ」表記領域１８に例として「１２３４５ＮL ＮL ＮL」で表示される。
【００２２】
図４では、編集「Ｅｄｉｔ」ボタン１１がクリックされてテキストビュー画面１０が編集モードになっている。この編集モードでは、テキストビュー画面１０が右方向に延長表示され、「Ｎｅｗ  Ｔｅｘｔ」表記領域１９が追加表示される。この「Ｎｅｗ  Ｔｅｘｔ」表記領域１９には、プログラミングツール１により前回入力して記憶しているテキスト（ニューテキスト）が復元表示される。実施の形態でのニューテキストは例として「１２３４５６７」である。
【００２３】
図４で示すテキストビュー画面１０上では、「Ｃｕｒｒｅｎｔ  Ｔｅｘｔ」表記領域１８と「Ｎｅｗ  Ｔｅｘｔ」表記領域１９とでカレントテキスト「１２３４５ＮL ＮL ＮL」とニューテキスト「１２３４５６７」とが対応表示されている。テキストビュー画面１０には２つの機能がある。１つ目は、「Ｎｅｗ  Ｔｅｘｔ」欄に復元入力されたニューテキストをＰＬＣ２に書き込んで、「Ｃｕｒｒｅｎｔ  Ｔｅｘｔ」欄のカレントテキストを書き換えることであり、もう１つ目は、カレントテキストとニューテキストとを比較する機能である。この比較でカレントテキストとニューテキストとに不一致箇所があれば、カレントテキストを「Ｃｕｒｒｅｎｔ  Ｔｅｘｔ」欄上で例えば他の箇所の色とは相違する特定の色、例えば赤字で表示する。「Ｎｅｗ  Ｔｅｘｔ」欄上のニューテキストが正のデータであれば、上記赤色表示により、ラダープログラムが正しく動作していないことを容易に特定することができる。
【００２４】
図５で示すように「Ｃｕｒｒｅｎｔ  Ｔｅｘｔ」表記領域１８のカレントテキスト「ａｂｃｄｅｆｇｈ」と「Ｎｅｗ  Ｔｅｘｔ」表記領域１９のニューテキスト「ａｂｃｄｅｆｇｈ」とが一致しているので、「Ｃｕｒｒｅｎｔ  Ｔｅｘｔ」表記領域１８と「Ｎｅｗ  Ｔｅｘｔ」表記領域１９との境界に一致を示す等号「＝」２０が表示される。また、図６で示すように「Ｃｕｒｒｅｎｔ  Ｔｅｘｔ」表記領域１８のカレントテキスト「ａｂｃｄｅｆｇｈ」と「Ｎｅｗ  Ｔｅｘｔ」表記領域１９のニューテキスト「ａｂｃｄｅＦＧＨ」とが一致していないので、「Ｃｕｒｒｅｎｔ  Ｔｅｘｔ」表記領域１８と「Ｎｅｗ  Ｔｅｘｔ」表記領域１９との境界に不一致を示す不等号「≠」２１が表示される。そして、「Ｃｕｒｒｅｎｔ  Ｔｅｘｔ」表記領域１８において一致箇所「ａｂｃｄｅ」は黒色表示され、不一致箇所「ｆｇｈ」が赤色表示される。なお、赤色は、図解上、点線で表示している。
【００２５】
以上説明したように本実施の形態では、テキストビュー画面１０は、ビューモードではＰＬＣ２の現在状態をカレントテキストで表示し、編集モードでは、このカレントテキストを書き換え可能にすると共に、カレントテキストとの比較のため、プログラミングツール１により提供されるＰＬＣ２の状態をニューテキストで表示し、カレントテキストとニューテキストとの一致または不一致の表示と、不一致の場合にカレントテキスト上での不一致箇所を特定表示するようにしたので、ラダープログラムの動作状態を特定してデバッグすることが容易に可能となる。
【図面の簡単な説明】
【００２６】
【図１】図１は本発明の実施形態に係る方法が実施される制御システムを構成する、プログラミングツールと、プログラマブルコントローラと、入出力デバイスと、制御機械とを示す図である。
【図２】図２はプログラマブルコントローラの内部構成を示す図である。
【図３】図３はビューモードでのテキストビュー画面を示す図である。
【図４】図４は編集モードでのテキストビュー画面を示す図である。
【図５】図５は編集モードのテキストビュー画面においてＰＬＣの状態値とプログラミングツールの値とが一致した状態を示す図である。
【図６】図６は編集モードのテキストビュー画面においてＰＬＣの状態値とプログラミングツールの値とが不一致の状態を示す図である。
【符号の説明】
【００２７】
１  プログラミングツール
２  プログラマブルコントローラ
３  入出力デバイス
４  制御機械
１０  テキストビュー画面
１１  編集ボタン
１８  「Ｃｕｒｒｅｎｔ  Ｔｅｘｔ」表記領域
１９  「Ｎｅｗ  Ｔｅｘｔ」表記領域
【図１】
2010152830.tif 000003
【図２】
2010152830.tif 000004
【図３】
2010152830.tif 000005
【図４】
2010152830.tif 000006
【図５】
2010152830.tif 000007
【図６】
2010152830.tif 000008