(57)【要約】  【課題】上書きして記憶される前のユーザプログラムを確実に復元することができるＰＬＣ（プログラマブル・ロジック・コントローラ）を提供することを目的とする。  【解決手段】ＰＬＣ２において、入力されたユーザプログラムを実行すべきユーザプログラムとして上書きして記憶する実行プログラム記憶部１２ａと、実行プログラム記憶部１２ａに上書きされる前に記憶されていたユーザプログラムのバックアップを記憶するための第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅとを備え、実行プログラム記憶部１２ａに記憶されているユーザプログラムを、表示部５に表示された識別情報の中から操作部６の操作により選択された識別情報に対応するユーザプログラムに書き換える。【選択図】          図４
2006330866.tif 000002
【特許請求の範囲】
【請求項１】
入力されたユーザプログラムを実行すべきユーザプログラムとして上書きして記憶する実行プログラム記憶手段と、
上記実行プログラム記憶手段に上書きされる前に記憶されていたユーザプログラムのバックアップを記憶するためのバックアッププログラム記憶手段と、
上記バックアッププログラム記憶手段に記憶されているユーザプログラムを表す識別情報を表示する表示手段と、
上記表示手段により表示された識別情報を選択するための選択手段と、
上記実行プログラム記憶手段に記憶されているユーザプログラムを、上記選択手段により選択された識別情報に対応するユーザプログラムに書き換えるプログラム書換手段とを備えたことを特徴とするプログラマブル・ロジック・コントローラ。
【請求項２】
上記バックアッププログラム記憶手段は、入力されたユーザプログラムが上記実行プログラム記憶手段に上書きして記憶される際に、入力されたユーザプログラム又は上記実行プログラム記憶手段に記憶されていたユーザプログラムを、最も古いバックアップが記憶されている領域に上書きして記憶することを特徴とする請求項１に記載のプログラマブル・ロジック・コントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＰＬＣ（プログラマブル・ロジック・コントローラ）に係り、更に詳しくは、ＰＬＣを制御するためのユーザプログラムを記憶する方法の改良に関する。
【背景技術】
【０００２】
工場等に設置される各種制御装置を統括的に制御するためのＰＬＣが知られている（例えば、特許文献１参照）。ＰＬＣは、ＣＰＵが内蔵されたＣＰＵユニットを備え、このＣＰＵユニットに対して拡張ユニットが着脱可能に構成されている。ユーザは、各種制御装置の機能ごとに拡張ユニットを用意してＣＰＵユニットに取り付けるとともに、拡張ユニットに対応する制御装置を接続することにより、拡張ユニットを介して各制御装置をＣＰＵユニットに接続する。
【０００３】
ＰＬＣを制御するためのユーザプログラムとしては、ラダー図を用いて作成されるラダープログラムが知られている。ラダープログラムは、例えば、パーソナルコンピュータを用いて作成され、パーソナルコンピュータの表示画面上にマトリックス状に表示される複数のセル内に仮想デバイスのシンボルを適宜配置して、視覚的なリレー回路を表すラダー図を構築することにより作成される。
【０００４】
パーソナルコンピュータにおいて作成されたラダープログラムは、パーソナルコンピュータをＵＳＢ(Universal Serial Bus)などの通信ケーブルを介してＰＬＣのＣＰＵユニットに接続し、所定の操作を行うことにより、パーソナルコンピュータからＣＰＵユニットに送信され、ＣＰＵユニット内のメモリに記憶される。ＣＰＵユニットのＣＰＵは、メモリに記憶されているラダープログラムを実行することにより、拡張ユニットを介して各制御装置の動作を制御する。
【０００５】
作成されたラダープログラムは、パーソナルコンピュータを用いて編集可能である。ユーザは、パーソナルコンピュータを用いてラダープログラムを編集した場合、その編集後のラダープログラムをパーソナルコンピュータからＣＰＵユニットに送信することにより、ＣＰＵユニットのメモリに上書きして記憶させることができる。ＣＰＵユニットのメモリに記憶されているラダープログラムが編集後のラダープログラムに上書きされた後は、ＣＰＵが、その編集後のラダープログラムを実行することにより制御装置の動作を制御することとなる。
【特許文献１】特開２００５−８５０７６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ユーザは、時に、一旦編集してＣＰＵユニットに送信したラダープログラム中の間違いに気付き、ＣＰＵユニットのメモリに記憶されているラダープログラムを編集前のラダープログラムに復元することを望む場合がある。この様な場合、ユーザは、パーソナルコンピュータのメモリに編集前のラダープログラムが保存されていれば、その編集前のラダープログラムをＣＰＵユニットに送信し、ＣＰＵユニットのメモリに記憶させることにより、編集前のラダープログラムを復元することができる。
【０００７】
しかし、ユーザが、編集したラダープログラムを上書き保存した場合のように、編集前のラダープログラムがパーソナルコンピュータに残っていない場合には、編集前のラダープログラムを復元することができないという問題があった。
【０００８】
本発明は、上記の事情に鑑みてなされたものであり、上書きして記憶される前のユーザプログラムを確実に復元することができるプログラマブル・ロジック・コントローラを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明によるプログラマブル・ロジック・コントローラは、入力されたユーザプログラムを実行すべきユーザプログラムとして上書きして記憶する実行プログラム記憶手段と、上記実行プログラム記憶手段に上書きされる前に記憶されていたユーザプログラムのバックアップを記憶するためのバックアッププログラム記憶手段と、上記バックアッププログラム記憶手段に記憶されているユーザプログラムを表す識別情報を表示する表示手段と、上記表示手段により表示された識別情報を選択するための選択手段と、上記実行プログラム記憶手段に記憶されているユーザプログラムを、上記選択手段により選択された識別情報に対応するユーザプログラムに書き換えるプログラム書換手段とを備えて構成される。
【００１０】
この様な構成によれば、ユーザプログラムが入力された場合には、そのユーザプログラムが実行すべきユーザプログラムとして実行プログラム記憶手段に上書きされ、上書きされる前に実行プログラム記憶手段に記憶されていたユーザプログラムのバックアップがバックアッププログラム記憶手段に自動的に記憶される。したがって、必要に応じて、表示手段により表示される識別情報を選択手段により選択し、バックアッププログラム記憶手段に記憶されているユーザプログラムのバックアップを読み出して、実行プログラム記憶手段に記憶されているユーザプログラムをその読み出したユーザプログラムに書き換えることにより、実行プログラム記憶手段に上書きして記憶される前のユーザプログラムを確実に復元することができる。
【００１１】
また、本発明によるプログラマブル・ロジック・コントローラにおいて、上記バックアッププログラム記憶手段は、入力されたユーザプログラムが上記実行プログラム記憶手段に上書きして記憶される際に、入力されたユーザプログラム又は上記実行プログラム記憶手段に記憶されていたユーザプログラムを、最も古いバックアップが記憶されている領域に上書きして記憶するように構成される。
【００１２】
この様な構成によれば、入力されたユーザプログラムが実行プログラム記憶手段に上書きして記憶される際、バックアッププログラム記憶手段に記憶されている最も古いバックアップが消去され、その領域に、入力されたユーザプログラム又は実行プログラム記憶手段に記憶されていたユーザプログラムなどの新しいユーザプログラムが記憶される。これにより、限られたメモリ容量において、復元される可能性の高い比較的新しいユーザプログラムだけを、バックアッププログラム記憶手段に記憶しておくことができる。
【発明の効果】
【００１３】
本発明によれば、入力されたユーザプログラムが上書きされる前に実行プログラム記憶手段に記憶されていたユーザプログラムのバックアップを、バックアッププログラム記憶手段に自動的に記憶させ、必要に応じて、そのユーザプログラムのバックアップを読み出し、実行プログラム記憶手段に記憶されているユーザプログラムをその読み出したユーザプログラムに書き換えることにより、実行プログラム記憶手段に上書きして記憶される前のユーザプログラムを確実に復元することができるプログラマブル・ロジック・コントローラを提供することができる。
【発明を実施するための最良の形態】
【００１４】
図１は、本発明の実施の形態によるユーザプログラム編集システムの一構成例を示す概念図である。
【００１５】
図１に示すように、このユーザプログラム編集システムは、ユーザプログラムの編集を行うためのプログラム編集装置としてのパーソナルコンピュータ１と、工場等に設置される各種制御装置を統括的に制御するためのＰＬＣ（プログラマブル・ロジック・コントローラ）２とを備えている。
【００１６】
ＰＬＣ２は、ＣＰＵが内蔵されたＣＰＵユニット３を備え、このＣＰＵユニット３に対して１つないし複数の拡張ユニット４が着脱可能に構成されている。
【００１７】
ＣＰＵユニット３には、表示部５及び操作部６が備えられている。表示部５には、ＣＰＵユニット３に取り付けられている各拡張ユニット４の動作状況などを表示することができ、表示部５の表示内容は、操作部６を操作することにより切り替えることができる。表示部５には、通常、ＰＬＣ２内のデバイスの現在値（デバイス値）やＰＬＣ２内で生じたエラー情報などが表示される。
【００１８】
拡張ユニット４は、ＰＬＣ２の機能を拡張するために機能ごとに用意され、ＣＰＵユニット３に対して側方から取り付けられる。１つ目の拡張ユニット４は、ＣＰＵユニット３に対して側方から直接取り付けられる。２つ目以降の拡張ユニット４は、既に取り付けられている拡張ユニット４に対して、側方から直列的に順次取り付けられる。このようにして、ＣＰＵユニット３と複数の拡張ユニット４が直列的に取り付けられると、各拡張ユニット４内に備えられた配線を介して、各拡張ユニット４がＣＰＵユニット３に対して通信可能に接続される。各拡張ユニット４には、その拡張ユニット４の機能に対応する制御装置が接続され、これにより、各制御装置が拡張ユニット４を介してＣＰＵユニット３に接続される。制御装置には、センサなどの入力装置や、アクチュエータなどの出力装置が含まれる。
【００１９】
パーソナルコンピュータ１は、例えば、携帯可能ないわゆるノートタイプのパーソナルコンピュータであって、表示部７及び操作部８が備えられている。ＰＬＣ２を制御するためのユーザプログラムの一例であるラダープログラムは、パーソナルコンピュータ１を用いて作成され、その作成されたラダープログラムは、パーソナルコンピュータ１内でニモニックコードに変換される。そして、パーソナルコンピュータ１を、ＵＳＢ(Universal Serial Bus)などの通信ケーブル９を介してＰＬＣ２のＣＰＵユニット３に接続し、ニモニックコードに変換されたラダープログラムをパーソナルコンピュータ１からＣＰＵユニット３に送ると、そのラダープログラムがＣＰＵユニット３内でマシンコードに変換され、ＣＰＵユニット３に備えられたメモリ内に記憶される。
【００２０】
なお、図１では図示していないが、パーソナルコンピュータ１の操作部８には、パーソナルコンピュータ１に接続されたマウスが含まれていてもよい。
【００２１】
また、パーソナルコンピュータ１は、ＵＳＢ以外の他の通信ケーブル９を介して、ＰＬＣ２のＣＰＵユニット３に対して着脱可能に接続されるような構成であってもよい。
【００２２】
図２は、ラダープログラムの作成時にパーソナルコンピュータ１の表示部７に表示されるラダー図１７の一例を示す図である。
【００２３】
図２に示すように、ＰＬＣ２を制御するためのラダープログラムは、パーソナルコンピュータ１の表示部７にマトリックス状に表示される複数のセル１８内に仮想デバイスのシンボル１９を適宜配置して、視覚的なリレー回路を表すラダー図１７を構築することにより作成される。
【００２４】
ラダー図１７には、例えば、１０列×Ｎ行（Ｎは任意の自然数）のセル１８が配置されている。そして、各行のセル１８内に、図２に示す左側から右側に向かって、時系列的に仮想デバイスのシンボル１９を適宜配置することにより、視覚的なリレー回路を作成することができる。作成されるリレー回路は、１行で表される直列的なリレー回路であってもよいし、複数行に並列的に表されたリレー回路を互いに結合することにより作成された、並列的なリレー回路であってもよい。
【００２５】
図２に示すリレー回路は、入力装置からの入力信号に基づいてオン／オフされる３つの仮想デバイス（以下、「入力デバイス」と呼ぶ。）のシンボル１９ａ，１９ｂ，１９ｃと、出力装置の動作を制御するためにオン／オフされる仮想デバイス（以下、「出力デバイス」と呼ぶ。）のシンボル１９ｄとが、適宜結合されることにより構成されている。
【００２６】
各入力デバイスのシンボル１９ａ，１９ｂ，１９ｃの上方に表示されている文字（「Ｒ０００１」、「Ｒ０００２」及び「Ｒ０００３」）は、その入力デバイスのデバイス名（アドレス名）２１を表している。各入力デバイスのシンボル１９ａ，１９ｂ，１９ｃの下方に表示されている文字（「フラグ１」、「フラグ２」及び「フラグ３」）は、その入力デバイスに対応付けられたデバイスコメント２２を表している。出力デバイスのシンボル１９ｄの上方に表示されている文字（「原点復帰」）は、その出力デバイスの機能を表す文字列からなるラベル２３である。
【００２７】
図２に示す例では、デバイス名「Ｒ０００１」及び「Ｒ０００２」にそれぞれ対応する２つの入力デバイスのシンボル１９ａ，１９ｂが直列的に結合されることにより、ＡＮＤ回路が構成されている。また、これらの２つの入力デバイスのシンボル１９ａ，１９ｂからなるＡＮＤ回路に対して、デバイス名「Ｒ０００３」に対応する入力デバイスのシンボル１９ｃが並列的に結合されることにより、ＯＲ回路が構成されている。すなわち、このリレー回路では、２つのシンボル１９ａ，１９ｂに対応する入力デバイスがいずれもオンした場合、又は、シンボル１９ｃに対応する入力デバイスがオンした場合にのみ、シンボル１９ｄに対応する出力デバイスがオンされるようになっている。
【００２８】
図３は、図１のパーソナルコンピュータ１の電気的構成について説明するためのブロック図である。
【００２９】
図３に示すように、パーソナルコンピュータ１には、ＣＰＵ２４、表示部７、操作部８、メモリ２５及び通信部２６が備えられている。表示部７、操作部８、メモリ２５及び通信部２６は、それぞれＣＰＵ２４に対して電気的に接続されている。
【００３０】
メモリ２５は、少なくともＲＡＭを含む構成であり、ラダープログラム記憶部２５ａと、ラダープログラム編集用ソフト記憶部２５ｂとを備えている。
【００３１】
ユーザは、ラダープログラム編集用ソフト記憶部２５ｂに記憶されているラダープログラム編集用ソフトを起動させて、ラダープログラムの編集を行うことができる。ここで、ラダープログラムの編集には、ラダープログラムの作成及び変更が含まれる。ラダープログラム編集用ソフトを用いて作成されたラダープログラムは、ラダープログラム記憶部２５ａに記憶される。また、ユーザは、必要に応じてラダープログラム記憶部２５ａに記憶されているラダープログラムを読み出し、そのラダープログラムを、ラダープログラム編集用ソフトを用いて変更することができる。
【００３２】
通信部２６は、通信ケーブル９を介してパーソナルコンピュータ１をＣＰＵユニット３に通信可能に接続するためのものである。
【００３３】
図４は、図１のＰＬＣ２の電気的構成について説明するためのブロック図である。
【００３４】
図４に示すように、ＣＰＵユニット３には、ＣＰＵ１０、表示部５、操作部６、メモリ１２、履歴管理部１３及び通信部１４が備えられている。表示部５、操作部６、メモリ１２、履歴管理部１３及び通信部１４は、それぞれＣＰＵ１０に電気的に接続されている。
【００３５】
メモリ１２は、少なくともＲＡＭを含む構成であり、実行プログラム記憶部１２ａと、第１バックアッププログラム記憶部１２ｂと、第２バックアッププログラム記憶部１２ｃと、第３バックアッププログラム記憶部１２ｄと、第４バックアッププログラム記憶部１２ｅとが割り当てられている。
【００３６】
実行プログラム記憶部１２ａには、パーソナルコンピュータ１から入力されたラダープログラムが、実行すべきラダープログラムとして記憶される。この実行プログラム記憶部１２ａには、パーソナルコンピュータ１から入力されたラダープログラムが上書きして記憶され、上書きされる前に記憶されていたラダープログラムは、第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅにバックアップとして記憶される。ここで、上書きとは、メモリの所定の領域に記憶されているデータを消去し、その領域に別のデータを記憶させる一連の動作をいう。
【００３７】
履歴管理部１３は、第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅに記憶されているラダープログラムのバックアップに関する各種情報を、履歴として管理している。履歴管理部１３により管理されている各バックアップに関する履歴には、各バックアップに対してユーザが付与するコメント、各バックアップに係るラダープログラムのバージョン、各バックアップが第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅに記憶されたときの日付、各バックアップを第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅに記憶させたユーザ名（変更者名）などの識別情報が含まれる。これらの識別情報は、ラダープログラムの編集時に、ユーザのパーソナルコンピュータ１に対する操作により入力され、ラダープログラムとともにＣＰＵユニット３に入力される。ＣＰＵユニット３のＣＰＵ１０は、履歴管理部１３により管理されている各バックアップに関する履歴を、表示部５に表示させることができる。
【００３８】
通信部１４は、通信ケーブル９を介してＣＰＵユニット３をパーソナルコンピュータ１に対して通信可能に接続するためのものである。
【００３９】
ＣＰＵユニット３のＣＰＵ１０は、入力装置１６から拡張ユニット４を介して入力される入力信号に基づいて、拡張ユニット４を介して対応する出力装置１６の動作を制御する。図４では、各拡張ユニット４に制御装置１６が一対一に対応付けられて接続されているが、この様な構成に限らず、１つの拡張ユニット４に対して複数の制御装置１６が接続されていてもよい。
【００４０】
図５は、表示部５に表示される各バックアップに関する履歴３０の具体例を示す図である。
【００４１】
図５に示すように、表示部５には、第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅに記憶されている４つのバックアップに対応付けて、履歴管理部１３により管理されているコメント、バージョン、日付及び変更者名などの識別情報３１が履歴３０として表示される。
【００４２】
本実施の形態では、ＣＰＵユニット３の操作部６を操作することにより、表示部５に表示されているいずれかの識別情報３１を選択し、その識別情報３１に対応するバックアップを第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅのいずれかから読み出して、実行プログラム記憶部１２ａに記憶されているラダープログラムをその読み出したラダープログラムに書き換えることができるようになっている。操作部６には、選択ボタン及び実行ボタン（いずれも図示せず）が含まれ、選択ボタンを操作することにより、表示部５に表示されている識別情報３１の中から所望の識別情報３１を選択した後、実行ボタンを操作することにより、実行プログラム記憶部１２ａに記憶されているラダープログラムを、選択された識別情報３１に対応するラダープログラムに書き換えることができる。
【００４３】
図６は、ラダープログラムのバックアップを記憶する際にＣＰＵ１０が行う制御の流れを示すフローチャートである。
【００４４】
図６に示すように、パーソナルコンピュータ１からＣＰＵユニット３にラダープログラムが入力されると（ステップＳ１０１でＹｅｓ）、ＣＰＵ１０は、実行プログラム記憶部１２ａに記憶されているラダープログラムを消去し、その領域に入力されたラダープログラムを記憶させることにより、入力されたラダープログラムを実行プログラム記憶部１２ａに上書きして記憶させる（ステップＳ１０２）。
【００４５】
その後、ＣＰＵ１０は、その入力されたラダープログラムを、第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅのいずれかにコピーすることにより、バックアップとして記憶させる。より具体的には、ＣＰＵ１０は、第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅに記憶されているバックアップのうち最も古いバックアップを消去し、その領域に入力されたラダープログラムをコピーすることにより、入力されたラダープログラムを第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅのいずれかに上書きして記憶させる（ステップＳ１０３）。最も古いラダープログラムの選定は、例えば、履歴管理部１３により管理されている各バックアップが第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅに記憶されたときの日付に基づいて行われる。
【００４６】
ただし、入力されたラダープログラムが実行プログラム記憶部１２ａに上書きして記憶される際に、その入力されたラダープログラムが、第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅのいずれかに上書きして記憶されるような構成に限らず、実行プログラム記憶部１２ａに記憶されていたラダープログラム、すなわち実行プログラム記憶部１２ａにおいて上書きされる前のラダープログラムが、第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅのいずれかに上書きして記憶されるような構成であってもよい。
【００４７】
また、第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅのいずれかに空き領域がある場合には、入力されたラダープログラムは、最も古いバックアップが記憶されている領域に上書きして記憶されずに、その空き領域に記憶されるようになっていてもよい。
【００４８】
図７は、実行プログラム記憶部１２ａに記憶されているラダープログラムを書き換える際のＣＰＵ１０による制御の流れを示すフローチャートである。
【００４９】
ＣＰＵ１０は、ユーザの操作部６に対する所定の操作に応じて、図５において説明したような態様で、第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅに記憶されている各バックアップに関する履歴３０を表示部５に表示させる（ステップＳ２０１）。その後、操作部６が操作されることにより、いずれかのバックアップに対応する識別情報３１が選択された場合には（ステップＳ２０２でＹｅｓ）、ＣＰＵ１０は、そのとき実行プログラム記憶部１２ａに記憶されているラダープログラムが実行中であるか否かを判定する（ステップＳ２０３）。
【００５０】
実行プログラム記憶部１２ａに記憶されているラダープログラムが実行中でなければ（ステップＳ２０３でＮｏ）、ＣＰＵ１０は、実行プログラム記憶部１２ａに記憶されているラダープログラムを消去し、その領域に選択された識別情報３１に対応するラダープログラムを記憶させることにより、選択されたラダープログラムを実行プログラム記憶部１２ａに上書きして記憶させる（ステップＳ２０４）。このように、実行プログラム記憶部１２ａに記憶されているラダープログラムを完全に消去して、選択されたラダープログラムに書き換える処理を、通常書き込みと呼ぶこととする。
【００５１】
一方、実行プログラム記憶部１２ａに記憶されているラダープログラムが実行中の場合には（ステップＳ２０３でＹｅｓ）、通常書き込みにより実行プログラム記憶部１２ａに記憶されているラダープログラムを書き換えると、実行中のラダープログラムのデータが失われ、ＰＬＣ２が正常に動作しなくなるおそれがある。したがって、通常書き込みによりラダープログラムを書き換える場合には、実行ラダープログラム記憶部１２ａに記憶されているラダープログラムの実行を中断して、ＰＬＣ２の動作を停止させなければならず、作業効率が悪い。
【００５２】
そこで、この様な場合には、ＣＰＵ１０は、実行プログラム記憶部１２ａに記憶されているラダープログラムの実行を中断することなく、そのラダープログラムと選択されたラダープログラムとの変更点のみを書き換える（ステップＳ２０５）。このように、実行プログラム記憶部１２ａに記憶されているラダープログラムの実行を中断することなく変更点のみを書き換える処理は、ＲＵＮ中書き込みと呼ばれ、従来から周知の処理方法であるため、ここではその詳細な説明を省略する。
【００５３】
本実施の形態のＰＬＣ２では、ラダープログラムが入力された場合には、そのラダープログラムが実行すべきラダープログラムとして実行プログラム記憶部１２ａに上書きされ、上書きされる前に実行プログラム記憶部１２ａに記憶されていたラダープログラムのバックアップが第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅに自動的に記憶される。したがって、必要に応じて、表示部７に履歴３０を表示させて識別情報３１を選択し、第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅのいずれかに記憶されているラダープログラムのバックアップを読み出して、実行プログラム記憶部１２ａに記憶されているラダープログラムをその読み出したラダープログラムに書き換えることにより、実行プログラム記憶部１２ａに上書きして記憶される前のラダープログラムを確実に復元することができる。
【００５４】
また、入力されたラダープログラムが実行プログラム記憶部１２ａに上書きして記憶される際、第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅに記憶されている最も古いバックアップが消去され、その領域に、入力されたラダープログラム又は実行プログラム記憶部１２ａに記憶されていたラダープログラムなどの新しいラダープログラムが記憶される。これにより、限られたメモリ容量において、復元される可能性の高い比較的新しいラダープログラムだけを、第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅに記憶しておくことができる。
【００５５】
上記実施の形態では、プログラム編集装置がノートタイプのパーソナルコンピュータ１により構成される場合について説明したが、プログラム編集装置は、ノートタイプのパーソナルコンピュータに限らず、例えば、デスクトップタイプのパーソナルコンピュータであってもよいし、ＰＤＡ(Personal Digital Assistance)などの他の情報端末装置であってもよい。
【００５６】
また、プログラム編集装置は、パーソナルコンピュータ１などの汎用の情報端末装置に限らず、ユーザプログラムの編集を行うための専用の装置であってもよい。
【００５７】
ラダープログラムのバックアップを記憶するための領域は、第１〜第４バックアッププログラム記憶部１２ｂ〜１２ｅの４つの領域に限らず、１つないし３つの領域であってもよいし、５つ以上の領域であってもよい。
【００５８】
また、ＰＬＣ２を制御するためのプログラムは、ユーザにより作成されるユーザプログラムであれば、ラダープログラムに限らず、他のプログラムであってもよい。例えば、ＰＬＣ２を制御するためのプログラムは、ＳＦＣ(Sequential Function Chart)、ＦＢＤ(Function Block Diagram)、ＬＤ(Ladder Diagram)、ＩＬ(Instruction List)、ＳＴ(Struction Text)などのプログラム言語で作成されていてもよい。
【００５９】
本発明は、以上の実施の形態の内容に限定されるものではなく、請求項記載の範囲内において種々の変更が可能である。
【図面の簡単な説明】
【００６０】
【図１】本発明の実施の形態によるユーザプログラム編集システムの一構成例を示す概念図である。
【図２】ラダープログラムの作成時にパーソナルコンピュータの表示部に表示されるラダー図の一例を示す図である。
【図３】図１のパーソナルコンピュータの電気的構成について説明するためのブロック図である。
【図４】図１のＰＬＣの電気的構成について説明するためのブロック図である。
【図５】表示部に表示される各バックアップに関する履歴の具体例を示す図である。
【図６】ラダープログラムのバックアップを記憶する際にＣＰＵが行う制御の流れを示すフローチャートである。
【図７】実行プログラム記憶部に記憶されているラダープログラムを書き換える際のＣＰＵによる制御の流れを示すフローチャートである。
【符号の説明】
【００６１】
１  パーソナルコンピュータ
２  ＰＬＣ（プログラマブル・ロジック・コントローラ）
５  表示部
６  操作部
１２ａ  実行プログラム記憶部
１２ｂ〜１２ｅ  第１〜第４バックアッププログラム記憶部
【図１】
2006330866.tif 000003
【図２】
2006330866.tif 000004
【図３】
2006330866.tif 000005
【図４】
2006330866.tif 000006
【図５】
2006330866.tif 000007
【図６】
2006330866.tif 000008
【図７】
2006330866.tif 000009