(57)【要約】【課題】ラダープログラムによるコメントアウトをしたときに、オブジェクトコードに変換した際にも、そのコメントアウトの情報を失わないようにして、オブジェクトコードからラダープログラムから逆変換した際にもコメントアウトした情報を復元する。【解決手段】ラダープログラムを、ＰＬＣに実行する形式に変換する際に、オブジェクトコードと、コメントアウトを復元できる形式に変換する。例えば、コメントアウトした場所には、ＮＯＰ命令を埋め込み、そのオペランドに指定した値より、逆変換情報の中のあるコメントアウトした内容のコードを読み出せるようにする。そして、ＰＬＣから、オブジェクトコードと、逆変換情報と読み出して、ラダープログラムに逆変換する際には、ＮＯＰ命令のオペランドと、逆変換情報の中のあるコメントアウトした内容から、コメントアウトが指定された対象を復元する。【選択図】図８
2010224597.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵがプログラムを実行することにより処理をおこなう計算機と、前記計算機に接続され、前記計算機からオブジェクトコードが転送されるプログラマブルコントローラとを備えるシステムにおけるプログラマブルコントローラ制御プログラム作成方法において、
前記ＣＰＵが、ラダープログラミングツール実行プログラムを実行することにより、ラダープログラムに対して、コメントアウトする対象を指定するステップと、
前記ＣＰＵが、ラダープログラミングツール実行プログラムを実行することにより、前記ラダープログラムを、オブジェクトコードと、逆変換情報とに変換するステップと、
前記ＣＰＵが、ラダープログラミングツール実行プログラムを実行することにより、前記プログラマブルコントローラに転送するステップと、
前記ＣＰＵが、ラダープログラミングツール実行プログラムを実行することにより、前記プログラマブルコントローラから、前記オブジェクトコードと、前記逆変換情報とを読出すステップと、
前記ＣＰＵが、ラダープログラミングツール実行プログラムを実行することにより、前記オブジェクトコードと、前記逆変換情報とから、前記コメントアウトした情報を復元するステップとを有することを特徴とするプログラマブルコントローラ制御プログラム作成方法。
【請求項２】
前記ラダープログラムを、オブジェクトコードと、逆変換情報に変換するステップでは、前記コメントアウトする対象は、オブジェクトコードとして、ＮＯＰ（Non Operation）命令に変換され、前記逆変換情報として、コメントアウトした内容の情報と、前記ＮＯＰ命令のオペランドの情報に結びついたコメントアウトした内容の情報の位置情報とに変換されることを特徴とする請求項１記載のプログラマブルコントローラ制御プログラム作成方法。
【請求項３】
ＣＰＵがプログラムを実行することにより処理をおこなう計算機と、前記計算機に接続され、前記計算機からオブジェクトコードが転送されるプログラマブルコントローラとを備えるプログラマブルコントローラ制御プログラム作成システムにおいて、
ラダープログラミングツール実行プログラムを実行することにより、ラダープログラムに対して、コメントアウトする対象を指定する手段と、
ラダープログラミングツール実行プログラムを実行することにより、前記ラダープログラムを、オブジェクトコードと、逆変換情報とに変換する手段と、
ラダープログラミングツール実行プログラムを実行することにより、前記プログラマブルコントローラに転送する手段と、
ラダープログラミングツール実行プログラムを実行することにより、前記プログラマブルコントローラから、前記オブジェクトコードと、前記逆変換情報とを読出す手段と、
ラダープログラミングツール実行プログラムを実行することにより、前記オブジェクトコードと、前記逆変換情報とから、前記コメントアウトした情報を復元する手段とを有することを特徴とするプログラマブルコントローラ制御プログラム作成システム。
【請求項４】
前記ラダープログラムを、オブジェクトコードと、逆変換情報に変換するステップでは、前記コメントアウトする対象は、オブジェクトコードとして、ＮＯＰ（Non Operation）命令に変換され、前記逆変換情報として、コメントアウトした内容の情報と、前記ＮＯＰ命令のオペランドの情報に結びついたコメントアウトした内容の情報の位置情報とに変換されることを特徴とする請求項３記載のプログラマブルコントローラ制御プログラム作成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラマブルコントローラ制御プログラム作成方法、および、プログラマブルコントローラ制御プログラム作成システムに係り、特に、プログラマブルコントローラの制御のためのラダープログラムの開発、デバッグの効率を向上させるのに用いて好適なプログラマブルコントローラ制御プログラム作成方法、および、プログラマブルコントローラ制御プログラム作成システムに関する。
【背景技術】
【０００２】
プログラマブルコントローラ（プログラマブルロジックコントローラ（Programmable Logic Controller）ともいい、「ＰＬＣ」と表記される）は、マイクロコンピュータ（ＣＰＵ：中央演算処理装置）とメモリ（記憶素子）を内蔵したＦＡ用の制御装置であり、装置や操作盤に設置した様々な入力機器（センサやスイッチなど）からの入力信号を入力回路で取り込み、あらかじめプログラムされた条件で出力回路を、ＯＮ／ＯＦＦすることにより、様々な出力機器（電磁弁やモータ、表示灯など）を自由に制御するものである。
【０００３】
プログラマブルコントローラのプログラムには、一般的に、ラダープログラムを使用する。ラダープログラムは、リレー回路を記号化したラダー図をベースにしてロジックを記述するプログラムであり、入力条件と出力の関係を視覚的にイメージしやすいプログラム言語である。このラダープログラムを作成するため、専用のエディタであるラダープログラミングツールを使用することができる。例えば、特許文献１には、ラダープログラムのデバック支援のために、デバイスの動作状態を表示する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−２８７９５７号公報
【特許文献２】特開２００４−２８０５８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、一般的に、プログラム作成時やデバッグ時にプログラムの変更・修正をおこなう際、もともと記述されている内容を削除するのではなく、その箇所の処理を無効化させるために、コメント化して無効化させることがある。これをコメントアウトという。コメントアウトの利点として、削除した内容を元に戻したいときには、コメント化を解除すれば、すぐに戻せるということが挙げられ、この手法は、プログラム開発時やデバッグ時に、実務上、広くおこなわれてきている手法である。
【０００６】
通常、Ｃ言語やＪａｖａ（登録商標）などの一般的なプログラミング言語によるプログラム開発では、エディタなどを用いて、文字や数字、記号を入力してプログラミングするため、コメントアウトする際には、コメントを示す記号を入力するだけで容易にコメントアウトできる。
【０００７】
一方、ラダープログラミング言語では、専用のエディタであるラダープログラミングツールを使用して、ラダー図と呼ばれる図形を用いてプログラムする。ラダープログラミングツールによるプログラム開発時にも、ラダー図にコメントを設定できる機能は、多くのラダープログラミングツールで提供されている。例えば、特許文献２には、ラダープログラムを構成する記号の近傍に、選択したコメントを表示させる技術が開示されている。
【０００８】
しかしながら、上記の特許文献２のように、通常のラダープログラミングツールのコメントを設定では、ラダー図の記号や処理を表す単位に対して、文字によるコメントを付加できるのみであり、ラダー図の記号や処理を表す単位そのものをコメント化するものではない。そのため、コメントアウトの利点である容易に処理を無効化させるということができず、コメントアウトという開発手法の恩恵を受けることができない。
【０００９】
以上より、ラダープログラミング言語によるプログラム開発では、コメントアウトができないため、プログラムの変更・修正をおこなう際の開発効率、デバッグ効率が悪いという問題点があった。
【００１０】
また、コンパイルが必要なプログラミング言語によるプログラム開発では、実行するまでに、コンパイルしてオブジェクトコードを作成し、実行する際にはそのオブジェクトコードを実行させるという流れになるが、ここで、ソースコード上でコメントアウトした箇所は、コンパイルでオブジェクトコードに変換した際に、コメント情報を除いて変換される。そのため、オブジェクトコードを逆コンパイルしてもコメントアウトされた箇所は、復元されない。このようなプログラミング言語では、開発手順として、プログラムの修正は、通常、ソースファイルの変更という作業の流れになる。したがって、コンパイルしたオブジェクトコードを逆コンパイルして復元されるプログラムを使用する、という作業を頻繁におこなうことはないので、コメント情報が含まれていなくても問題ない
しかしながら、ＰＬＣの制御プログラムの場合は、保守員が、ＰＬＣが設置されている機器の場所に行き、ＰＬＣからオブジェクトコードを読み出して、それをラダープログラムに逆変換して、ラダープログラムツールにより、変換されたラダープログラムをデバッグすることがしばしばある。そして、そのラダープログラムを変換して、ＰＬＣに書き込み動作確認をおこなうという手順をふむことが多い。このように、ＰＬＣの制御プログラムのデバッグでは、ラダープログラムとオブジェクトコードの変換、逆変換が頻繁におこなわれることになる。このように、ＰＬＣの制御プログラムのデバッグの際に、他の言語による開発のように、コメントアウトした箇所の復元という手法が使えずに、デバッグ効率が向上しないという問題点があった。
【００１１】
本発明は、上記問題点を解決するためになされたもので、その目的は、ラダープログラムによるプログラム開発の際に、コメントアウト可能であり、ラダープログラムをオブジェクトコードに変換した際にも、そのコメントアウトの情報を失わないようにして、オブジェクトコードからラダープログラムから逆変換した際にもコメントアウトした情報を復元し、容易に利用できるようにして開発効率、デバッグ効率を向上させることのできるプログラマブルコントローラの制御プログラムの作成方法を提供することにある。
【課題を解決するための手段】
【００１２】
本発明は、ラダープログラミングツールは、ラダープログラムのコメントアウトの設定、解除をおこなえるようにしている。
【００１３】
そして、ラダープログラムをプログラマブルコントローラに実行させるオブジェクトコードと、逆変換情報に変換する際に、コメントアウトを復元できる形式に変換する。例えば、コメントアウトした場所には、ＮＯＰ命令を埋め込み、そのオペランドに指定した値より、逆変換情報の中のあるコメントアウトした内容のコードを読み出せるようにする。
【００１４】
そして、プログラマブルコントローラから、オブジェクトコードと、逆変換情報と読み出して、ラダープログラムに逆変換する際には、ＮＯＰ命令のオペランドと、逆変換情報の中のあるコメントアウトした内容から、コメントアウトが指定された対象を復元する。
【００１５】
これにより、（１）ラダープログラムのコメントアウトができ、プログラム作成時の、開発効率、デバッグ効率を上げることができ、（２）プログラマブルコントローラからプログラム読出し時、コメントも復元されるので、コメントアウトした箇所の情報が失われることがないという効果が得られる。
【発明の効果】
【００１６】
本発明によれば、ラダープログラムによるプログラム開発の際に、コメントアウト可能であり、ラダープログラムをオブジェクトコードに変換した際にも、そのコメントアウトの情報を失わないようにして、オブジェクトコードからラダープログラムから逆変換した際にもコメントアウトした情報を復元し、容易に利用できるようにして開発効率、デバッグ効率を向上させることのできるプログラマブルコントローラの制御プログラムの作成方法を提供することにある。
【図面の簡単な説明】
【００１７】
【図１】ラダープログラムツールにより、ラダープログラムの一例を表示したときの画面を示す図である。
【図２】ラダープログラムの一行をコメントアウトするために選択したときの画面を示す図である。
【図３】ボックス内部の記述をコメントアウトするときの操作を示す図である。
【図４】ボックス入力画面の一例を示す図である。
【図５】プログラマブルコントローラ制御プログラム作成システムのシステム構成図である。
【図６】パーソナルコンピュータのハードウェア構成図である。
【図７】プログラマブルコントローラのハードウェア構成図である。
【図８】オブジェクトコードのニーモニックと、逆変換情報を説明するための図である。
【図９】ラダープログラムのオブジェクトコード変換処理を示すフローチャートである。
【図１０】ラダープログラムの逆変換処理を示すフローチャートである。
【発明を実施するための形態】
【００１８】
以下、本発明に係る一実施形態を、図１ないし図１０を用いて説明する。
【００１９】
先ず、図１ないし図４を用いてラダープログラムツールにより、ラダープログラムの処理をコメントアウトするときの操作イメージについて説明する。
図１は、ラダープログラムツールにより、ラダープログラムの一例を表示したときの画面を示す図である。
図２は、ラダープログラムの一行をコメントアウトするために選択したときの画面を示す図である。
図３は、ボックス内部の記述をコメントアウトするときの操作を示す図である。
図４は、ボックス入力画面の一例を示す図である。
【００２０】
ラダープログラミングツール１の操作画面１は、図１に示されるように、メニューバー２と、ツールバー３と、ラダープログラム表示領域５から構成されている。
【００２１】
メニューバー２は、ユーザがファイルの保存、印刷などのファイルに対する処理、また、ラダープログラムによる編集処理などを指示するための表示部品である。ツールバー３は、複数のアイコン４から構成されており、アイコン５を選択してマウスなどのポインティングデバイスによりクリックすることにより、ラダープログラムに様々な指示を与える表示部品である。ラダープログラム表示領域５は、ラダーシンボルなどの表示要素を用いてラダープログラムを表示する領域である。この図の例では、１行目に、「リレーＸ０が、ＯＮになったときに、コイルＹ１００が、ＯＮになる」、２行目に「リレーＸ１が、ＯＮになったときに、記憶エリアＷＲ０に、０を代入し、記憶エリアＷＲ１に、０を代入する」ときのプログラム例を示している。２行目の右側に表示されているのは、ボックスと呼ばれるラダーシンボルであり、複数の処理を記述することができる。
【００２２】
ユーザが、ラダープログラムの任意の箇所をコメントアウトする場合は、コメントアウトしたい箇所を、マウスなどのポインティングデバイスやキーボードにより、選択後、以下のどちらかの操作をおこなうことによりコメントアウトできるものとする。
【００２３】
・メニューバー２にあるコメントアウトのメニューを選択する。
【００２４】
・ツールバー３にあるコメントアウトアイコン１０をクリックする。
【００２５】
コメントアウト後は、図２に示されるように、ラダープログラム表示領域５上のラダープログラムの表示が、コメントアウトされたことが分かるように表示が反転し、コメントアウト後のコメントアウト領域１１のように示される。ここで、コメントアウト領域１１の表示は、反転表示ではなく、ラダープログラム表示領域５の背景色と違うようにして区別するようなカラー表示でもよい。なお、コメントアウト領域１１で、もう一度、コメントアウトのメニューを選択やコメントアウトアイコン１０をクリックなどのコメントアウト操作をおこなうと、通常状態に戻り、コメントアウトが解除されるようにする。また、別に、「コメントアウト解除」を意味するメニューやアイコンを設けてもよい。
【００２６】
図２の例では、ラダープログラムの内で、一行を全てコメントアウトするものであったが、別の単位でコメントアウトできる機能も考えうる。
【００２７】
図３は、ラダーシンボルの一つであるボックスに関して、ボックス内の一部の命令に対してコメントアウトする例を説明するためのものである。
【００２８】
図３に示されるうよに、ボックス内には、命令を複数行記述できる。図３では、「ＷＲ０＝０」と、「ＷＲ１＝１」という二つの命令を記述している。ボックス内の処理の一部についても、コメントアウトすることができる。ボックス内の処理のコメントアウトでも、コメントアウトしたことが分かるように文字の表示色を、ボックス内の処理のコメントアウトした状態が判別できるように、文字色を変える、反転表示させるなどして、コメントアウトした部分の表示を変えることにする。文字の表示色は、コメントアウトしていない箇所の文字の表示色と異なり、ユーザにとって見やすい色であればよい。
【００２９】
ユーザが、ボックス内の処理のコメントアウトをするときには、図１のボックス６を選択して、マウスなどのポインティングデバイスにより、ダブルクリックする、あるいは、図示してないが、メニューバー２の「開く（ボックス）」を選ぶことにより、図４に示されるボックス入力画面３０を開く。
【００３０】
ボックス入力画面３０は、ボックスに関する情報を、入力し編集する画面であり、ボックス内命令記述エリア３１と、コメントアウトボタン３２と、ＯＫボタン３３と、Ｃａｎｃｅｌボタン３４から構成される。ボックス内に記述する命令は、ボックス内命令記述エリア３１に、ユーザがキーボードなどの入力装置より入力する。ボックス内命令記述エリア３１に記述した命令をコメントアウトする場合は、コメントアウトしたい行を選択し、コメントアウトボタン３２をクリックすることにより、コメントアウトすることができる。また、既にコメントアウトされている行で、この操作をおこなうと、コメントアウトが解除され、通常の表示に戻るようにする。コメントアウトされると、命令のコメントアウト表示３５のように、表示色が変わる。文字の表示色は、コメントアウトしていない箇所の文字の表示色と異なり、判別しやすい色にする。通常の状態は、命令の通常表示３６のように表示される。
【００３１】
その後、ＯＫボタン３３をクリックすることにより、入力が完了して、図３の画面に戻る。図３のボックス６では、コメントアウトされた行２０「ＷＲ＝０」が通常の行とは違う状態で表示される。
【００３２】
次に、図５ないし図７を用いて本発明の一実施形態に係るプログラマブルコントローラ制御プログラム作成システムのシステム構成について説明する。
図５は、プログラマブルコントローラ制御プログラム作成システムのシステム構成図である。
図６は、パーソナルコンピュータのハードウェア構成図である。
図７は、プログラマブルコントローラのハードウェア構成図である。
【００３３】
先ず、図５を用いてコメントアウトされたラダープログラムの、オブジェクトコードへの変換するためのシステムのシステム構成について説明する。
【００３４】
図５に示されるように、パーソナルコンピュータ（Personal Computer、 以下、「ＰＣ」と表記する）上にあるラダープログラミングツール１上で、ラダープログラム４０をプログラムした後、プログラマブルコントローラ１００で実行できるオブジェクトコード４１の形式に変換する必要がある。この変換処理は、ラダープログラミングツール１上でおこなう。変換処理時、オブジェクトコードには直接必要ないが、ラダープログラムを表示する上で必要な情報は、逆変換情報４２として、逆変換時に使用するデータとして残しておく。変換処理では、ラダープログラム４０から、オブジェクトコード４１と逆変換情報４２を生成する。
【００３５】
そして、ラダープログラミングツール１は、オブジェクトコード４１と逆変換情報４２を、通信ケーブル２１０を介して、プログラマブルコントローラ１００に転送する。
【００３６】
次に、図６を用いてＰＣのハードウェア構成について説明する。
【００３７】
本実施形態のラダープログラムを動作させるためのＰＣのハードウェア構成としては、例えば、図６に示されるようなハードウェア構成で実現される。
【００３８】
ＰＣム解析装置２００は、ＣＰＵ（Central Processing Unit）２０１、メモリ２０２、ネットワークＩ／Ｆ２０３、グラフィックＩ／Ｆ２０４、入出力Ｉ／Ｆ２０５、補助記憶装置Ｉ／Ｆ２０６が、バスライン２５０により結合された形態になっている。
【００３９】
ＣＰＵ２０１は、ＰＣ２００の各部を制御し、メモリ２０２にラダープログラムツールプログラム２６０をロードして実行する。
【００４０】
メモリ２０２は、通常、ＲＡＭなどの揮発メモリで構成され、ＣＰＵ２０１が実行するプログラム、参照するデータが記憶される。
【００４１】
通信Ｉ／Ｆ２０３は、通信ケーブル２１０により、外部の機器と接続するためのインタフェースである。
【００４２】
グラフィックＩ／Ｆ２０４は、ＬＣＤ（Liquid Crystal Display）などの表示装置２２０を接続するためのインタフェースである。
【００４３】
入出力Ｉ／Ｆ２０５は、入出力装置を接続するためのインタフェースである。図６の例では、キーボード２３１とポインティングデバイスのマウス２３２が接続されている。
【００４４】
補助記憶装置Ｉ／Ｆ２０６は、ＨＤＤ（Hard Disk Drive）２４１やＤＶＤドライブ（Digital Versatile Disk）２４２などの補助記憶装置を接続するためのインタフェースである。
【００４５】
ＨＤＤ２４１は、大容量の記憶容量を有しており、本実施形態を実行するためのラダープログラムツールプログラム２６０が格納されている。ラダープログラムツールプログラム２６０には、変換モジュール２６２と逆変換モジュール２６４が含まれる。変換モジュール２６２は、図５に示されるように、ラダープログラム４０からオブジェクトコード４１と逆変換情報４２を生成するプログラムであり、逆に、逆変換モジュール２６４は、オブジェクトコード４１と逆変換情報４２から、ラダープログラム４０を生成するプログラムである。
【００４６】
ＤＶＤドライブ２４２は、ＤＶＤやＣＤなどの光ディスクにデータを書き込んだり、光ディスクからデータを読み込んだりする装置であり、ラダープログラムツールプログラム２６０は、例えば、ＣＤ−ＲＯＭにより提供されたものをインストールすることができる。
【００４７】
次に、図７を用いてプログラマブルコントローラ１００のハードウェア構成について説明する。
【００４８】
プログラマブルコントローラ１００は、ＭＰＵ１１０、システムプログラム１２１、オブジェクトコード４１、逆変換情報４２、メモリ１２０、入出力Ｉ／Ｆ１３０と、通信Ｉ／Ｆ１４０から構成され、これらはバスライン１５０で接続されている。
【００４９】
ＭＰＵ１１０は、プログラマブルコントローラ１００の各部を制御し、メモリ１２０上のシステムプログラム、オブジェクトコード４１を実行する。オブジェクトコード４１は、図５に示されるように、ラダープログラム４０をプログラマブルコントローラ１００で実行可能なような形式にしたコードである。逆変換情報４２は、コメントアウトした情報を復元するためのデータを含んだ情報である。
【００５０】
メモリ１２０は、通常、揮発または不揮発の半導体メモリが使われ、システムプログラム１２１、オブジェクトコード４１、逆変換情報４２、ワークデータ１２２が記憶される。
【００５１】
入出力Ｉ／Ｆ１３０は、外部の機器等とデータの送受信をおこなうインタフェースである。
【００５２】
通信Ｉ／Ｆ１４０は、外部の機器と通信をおこなうインタフェースであり、ＰＣ２００から、通信ケーブル２１０により、このインタフェースを介して、オブジェクトコード４１と逆変換情報４２が転送される。
【００５３】
次に、図８ないし図１０を用いてラダープログラムの変換処理と逆変換処理について説明する。
図８は、オブジェクトコードのニーモニックと、逆変換情報を説明するための図である。
図９は、ラダープログラムのオブジェクトコード変換処理を示すフローチャートである。
図１０は、ラダープログラムの逆変換処理を示すフローチャートである。
【００５４】
本実施形態では、図２に示されるように、ラダープログラムの２行目をコメントアウトするものを例にとり説明する。
【００５５】
通常、コメントアウトされないときのオブジェクトコードは、図８（ａ）に示されるようなニーモニック表示されるコードであるとする。このときに、図２に示した操作により、ラダープログラムの２行目をコメントアウトすると、図８（ｂ）に示されるように、ニーモニック表示の３行目以降が、ＮＯＰ（Non Operation）命令に展開される。ＮＯＰ命令は、ＭＰＵ上で命令を実行しても、実行サイクルを消費するのみで、なにもしない命令である。このＮＯＰ命令のオペランドには、逆変換情報４２の中のコメントアウトテーブル４２１のフィールドに値が格納されて、コメントアウトした内容に関係付けられる。具体的には、コメントアウトテーブル４２１は、ＮＯＰオペランドと、開始アドレス、終了アドレスの欄を持ち、ＮＯＰオペランドで置き換えたコメントアウトした内容４２２は、逆変換情報４２の中に保持されている。そして、コメントアウトテーブル４２１の開始アドレス、終了アドレスの値が、図８（ｂ）に示されるように、コメントアウトした内容４２２の開始アドレスの位置と、終了アドレスの位置をそれぞれポイントしている。
【００５６】
このようなデータ構造を持つことにより、コメントアウトした内容を、オブジェクトコード４１のＮＯＰ命令のオペランドを解析したときに、容易に復元することができる。
【００５７】
なお、この機能を使わない通常のシステムで展開されるＮＯＰ命令のオペランドは、０とし、その他の１以上の整数値は、ユーザが利用可能であるとして、ニーモニックを定めておけばよい。
【００５８】
次に、図９を用いてラダープログラムのオブジェクトコード変換処理について説明する。なお、この処理は、ラダープログラミングツール実行プログラム２６０の変換処理プログラム２６２をＣＰＵ２０１により、実行させることによりおこなわれる。
【００５９】
先ず、変換処理プログラム２６２は、ラダープログラムを読み込み、コメントアウトされているか否かを判別する（Ｓ０１）。
【００６０】
そして、ラダープログラムで、コメントアウト以外の情報であれば、そのまま、通常の変換をおこない、オブジェクトコード４１と逆変換情報４２を生成する（Ｓ０２）。コメントアウトされた情報であれば、図８に示したように、オブジェクトコード上では「ＮＯＰ命令」と展開して、プログラマブルコントローラ１００では何も実行しない命令に変換し（Ｓ０３）、逆変換情報４２に、展開したＮＯＰ命令のオペランドと関連付けて、コメントアウトされた箇所の情報を格納する（Ｓ０４）。このようにすることにより、コメントアウトされた箇所の情報も残すことができる。
【００６１】
上記の一連の処理をラダープログラムの最後に達するまで繰り返す（Ｓ０５）。
【００６２】
変換が終わると、図５に示したように、プログラマブルコントローラ１００に転送するときには、オブジェクトコード４１と逆変換情報４２を転送する。
【００６３】
次に、図１０を用いてオブジェクトコード４１、逆変換情報４２から、ラダープログラムへの逆変換について説明する。なお、この処理は、ラダープログラミングツール実行プログラム２６０の逆変換処理プログラム２６４をＣＰＵ２０１により、実行させることによりおこなわれる。
【００６４】
先ず、逆変換処理プログラム２６４は、オブジェクトコードを読み込み、ＮＯＰ命令であるか否かを判別する（Ｓ１１）。
【００６５】
オブジェクトコード４１が「ＮＯＰ命令」でなければ、オブジェクトコード４１と逆変換情報４２とにより、通常のラダープログラム４０の逆変換処理をおこなう（Ｓ１２）。
【００６６】
また、オブジェクトコード４１が「ＮＯＰ命令」であれば、オペランドを解析し、コメントアウトテーブル４２１より、コメントアウトした内容を読み出して、その箇所を、コメントアウトされた情報として、図２のような形態に逆変換する（Ｓ１３）。こうすることにより、コメントアウトされた箇所を復元することができる。
【００６７】
上記の一連の処理をオブジェクトコードの最後に達するまで繰り返す（Ｓ１４）。
【００６８】
このように、プログラマブルコントローラ１００からプログラムを読み出すときは、オブジェクトコード４１と逆変換情報４２を読み出して、このような逆変換処理をおこない、ラダープログラム４０に復元する。
【００６９】
以上より、ラダープログラミングツール１上で、処理のコメントアウトができ、プログラム作成時・デバッグ時の効率を上げることができる。
【００７０】
また、ＰＬＣにプログラム書込み、読出ししても、ＰＬＣの内部に、オブジェクトコードに変換して格納したときであっても、コメントアウトした箇所の情報が失われることがないので、コメントアウトの箇所を復元することができる。
【符号の説明】
【００７１】
１…ラダープログラミングツール
２…メニューバー
３…ツールバー
４…アイコン
５…ラダープログラム表示画面
１０…コメントアウトアイコン
１１…コメントアウト後の状態
２０…ボックス内のコメントアウトされた行
３０…ボックス入力画面
３１…ボックス内命令記述エリア
３２…コメントアウトボタン
３３…ＯＫボタン
３４…Ｃａｎｃｅｌボタン
３５…命令のコメントアウト表示
３６…命令の通常表示
４０…ラダープログラム
４１…オブジェクトコード
４２…逆変換情報
１００…プログラマブルコントローラ
１１０…ＭＰＵ
１２０…メモリ
１２１…システムプログラム
１２２…データメモリ
１３０…入出力Ｉ／Ｆ
１４０…通信Ｉ／Ｆ
１５０…バスライン
２００…ＰＣ
２０１…ＣＰＵ
２０２…メモリ
２０３…外部Ｉ／Ｆ
２０４…グラフィックＩ／Ｆ
２０５…入出力Ｉ／Ｆ
２０６…補助記憶装置Ｉ／Ｆ
２１０…通信ケーブル
２２０…表示装置
２３１…キーボード
２３２…マウス
２４１…ＨＤＤ
２４２…ＤＶＤドライブ
２５０…バスライン
２６０…ラダープログラムツールプログラム
２６２…変換モジュール
２６４…逆変換モジュール。
【図１】
2010224597.tif 000003
【図２】
2010224597.tif 000004
【図３】
2010224597.tif 000005
【図４】
2010224597.tif 000006
【図５】
2010224597.tif 000007
【図６】
2010224597.tif 000008
【図７】
2010224597.tif 000009
【図８】
2010224597.tif 000010
【図９】
2010224597.tif 000011
【図１０】
2010224597.tif 000012