(57)【特許請求の範囲】
【請求項１】
所定の状態を随時検出する安全機器が接続されるＩ／Ｏモジュールと、前記Ｉ／Ｏモジュールを管理する安全プログラムを実行するＣＰＵモジュールと、前記各モジュール間を互いに接続する連絡手段とを備えた安全ＰＬＣにおいて、
前記ＣＰＵモジュールは、
前記安全プログラムが所定の規格を満たしていることを認証するためのＰＩＮコードが記憶されたＰＩＮコード記憶手段と、
認証者に付与されたＰＩＮコードを入力するためのＰＩＮコード入力手段と、
前記連絡手段に接続された前記Ｉ／Ｏモジュールから、当該Ｉ／Ｏモジュールが有する当該Ｉ／Ｏモジュールの種別を示すＩＤ番号を取得するＩＤ番号取得手段と、
それぞれの前記Ｉ／Ｏモジュールからの入力信号に対して、それぞれのＩ／Ｏモジュールに対する出力信号を演算するプログラムであるそれぞれのファンクションブロックを記憶したファンクションブロック記憶手段と、
前記Ｉ／Ｏモジュールの接続順または前記Ｉ／Ｏモジュールが接続されたスロットのスロット番号順に従って、前記ファンクションブロック記憶手段に記憶されたファンクションブロックから、前記ＩＤ番号に対応する所定のファンクションブロックを選択して、それらを、順次連結することにより、前記安全プログラムを自動生成するプログラム自動生成手段と、
前記ＰＩＮコード入力手段により入力されたＰＩＮコードが、前記ＰＩＮコード記憶手段に記憶されているＰＩＮコードに一致した場合に、自動生成された前記安全プログラムを実行可能状態にするプログラム認証手段と、
を有することを特徴とする安全ＰＬＣ。
【請求項２】
前記ＣＰＵモジュールは、
前記認証者により認証される前記連絡手段に接続される前記Ｉ／ＯモジュールのＩＤ番号を入力するためのＩＤ番号入力手段と、
前記ＩＤ番号入力手段から入力された前記ＩＤ番号を記憶するＩＤ番号記憶手段と
を有し、
前記プログラム認証手段は、
自動的に生成された前記安全プログラムを実行する際に、前記ＩＤ番号取得手段から得られたＩＤ番号と前記ＩＤ番号記憶手段から得られたＩＤ番号とを比較するＩＤ番号比較手段を有し、
前記ＩＤ番号比較手段による比較の結果、前記連絡手段に接続された全ての前記Ｉ／Ｏモジュールに対して、前記ＩＤ番号取得手段から得られたＩＤ番号と前記ＩＤ番号記憶手段から得られたＩＤ番号とが一致する場合に、前記安全プログラムを実行可能状態とする  ことを特徴とする請求項１に記載の安全ＰＬＣ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定の状態を随時検出する安全機器が接続されたＩ／Ｏモジュールや、安全プログラム（シーケンスプログラム）を実行するＣＰＵモジュールなどを備えた安全ＰＬＣに関し、特にその安全プログラムを自動生成した際の安全プログラムに対する認証手段に関する。
【背景技術】
【０００２】
近年では、ＰＬＣ（プログラマブルコントローラ）によるシステム制御において、安全機能の導入が一般化されつつある。ここで言う安全機能とは、例えばＣＰＵ（ＭＰＵ）その他の各処理部等を二重化してそれらの処理結果が正しく出力されるようにする機能や、システムが危険な状態になった場合に、給電を中止することによって装置の駆動を停止するなどしてそのシステムを安全に停止させる機能等のことである。また、システムの危険な状態としては、例えば緊急停止スイッチが押下された時の状態や、ライトカーテンなどのセンサが人の進入を検出した時の状態等を考えることができる。
【０００３】
この様なシステムを構成するために導入される安全ＰＬＣとしては、例えば、ハードウェア構成を二重化した下記の特許文献１に記載されているもの等が公知である。例えばこの様な安全ＰＬＣを制御するためのシーケンスプログラムのことを以下では安全プログラムと言う。これらの安全プログラムの製造規格としては、例えばＩＥＣ等の安全規格があり、安全プログラムの作成者には、それらの安全規格に関する深い専門的な知識や、安全プログラムの製造経験などが要求される。
【０００４】
【特許文献１】特開２００２−３５８１０６
【発明の開示】
【発明が解決しようとする課題】
【０００５】
そこで、上記の様な安全プログラムの作成者に対する負担を軽減し、安全性の高い高品質な安全プログラムを容易に得るための新たな手段としては、安全プログラムの自動生成手段などを考えることができる。しかしながら、安全プログラムを安全ＰＬＣ上で自動的に生成できる場合においても、自動生成された安全プログラムに対する権限者（有資格者）による安全性の認証手続きは必要となる。
【０００６】
本発明は、上記の課題を解決するために成されたものであり、その目的は、安全プログラムの作成を容易にすると共に、安全プログラムに対する認証手続きを可能にすることである。
【課題を解決するための手段】
【０００７】
上記の課題を解決するためには、以下の手段が有効である。
即ち、本発明の第１の手段は、所定の状態を随時検出する安全機器が接続されるＩ／Ｏモジュールと、Ｉ／Ｏモジュールを管理する安全プログラムを実行するＣＰＵモジュールと、各モジュール間を互いに接続する連絡手段とを備えた安全ＰＬＣにおいて、ＣＰＵモジュールに、安全プログラムが所定の規格を満たしていることを認証するためのＰＩＮコードが記憶されたＰＩＮコード記憶手段と、認証者に付与されたＰＩＮコードを入力するためのＰＩＮコード入力手段と、連絡手段に接続されたＩ／Ｏモジュールから、当該Ｉ／Ｏモジュールが有する当該Ｉ／Ｏモジュールの種別を示すＩＤ番号を取得するＩＤ番号取得手段と、それぞれのＩ／Ｏモジュールからの入力信号に対して、それぞれのＩ／Ｏモジュールに対する出力信号を演算するプログラムであるそれぞれのファンクションブロックを記憶したファンクションブロック記憶手段と、Ｉ／Ｏモジュールの接続順またはＩ／Ｏモジュールが接続されたスロットのスロット番号順に従って、ファンクションブロック記憶手段に記憶されたファンクションブロックから、ＩＤ番号に対応する所定のファンクションブロックを選択して、それらを、順次連結することにより、安全プログラムを自動生成するプログラム自動生成手段と、ＰＩＮコード入力手段により入力されたＰＩＮコードが、ＰＩＮコード記憶手段に記憶されているＰＩＮコードに一致した場合に、自動生成された安全プログラムを実行可能状態にするプログラム認証手段とを備えることである。
【０００８】
ただし、上記のＰＩＮコードとは、個人識別番号（Personal Identity Number）のことであり、個々の認証者を確認するための暗証番号（パスワード）として用いられる。また、上記の所定の規格としては、例えばＩＥＣ等の安全規格がある。
【０００９】
【００１０】
また、本発明の第２の手段は、上記の第１の手段において、ＣＰＵモジュールは、認証者により認証される連絡手段に接続されるＩ／ＯモジュールのＩＤ番号を入力するためのＩＤ番号入力手段と、ＩＤ番号入力手段から入力されたＩＤ番号を記憶するＩＤ番号記憶手段とを有し、プログラム認証手段は、自動的に生成された安全プログラムを実行する際に、ＩＤ番号取得手段から得られたＩＤ番号とＩＤ番号記憶手段から得られたＩＤ番号とを比較するＩＤ番号比較手段を有し、ＩＤ番号比較手段による比較の結果、連絡手段に接続された全てのＩ／Ｏモジュールに対して、ＩＤ番号取得手段から得られたＩＤ番号とＩＤ番号記憶手段から得られたＩＤ番号とが一致する場合に、安全プログラムを実行可能状態とすることを特徴とする。
【００１１】
ただし、安全プログラムは、主記憶装置上で自動生成した直後に、その安全プログラムを実行可能状態にしても良いし、自動生成された安全プログラムを一旦２次記憶装置上に保存した後に、主記憶装置上のその安全プログラムを実行可能状態にしても良いし、自動生成後に一旦２次記憶装置上に保存された安全プログラムをその２次記憶装置から再び主記憶装置上にロードし直して実行可能状態にしても良い。
以上の本発明の手段により、前記の課題を効果的、或いは合理的に解決することができる。
【発明の効果】
【００１２】
以上の本発明の手段によって得られる効果は以下の通りである。
即ち、本発明の第１の手段によれば、ＰＩＮコードを用いた安全プログラムに対する認証手続きが安全ＰＬＣ上でできるので、パソコンなどの運用ツールが必要なくなる。このため、パソコンなどの運用ツールに関するインストール、持ち運び、及び接続操作などの作業を行う必要がなくなる。また、認証手続きのために必要となる操作が大幅に削減できる。また、認証手続きの操作要領の収得にも殆ど時間が要らなくなる。
【００１３】
また、以上の様な安全ＰＬＣの構成は、少なくとも、例えば上記の本発明の第１の手段を有する安全ＰＬＣなどに対して特に非常に有効となる。また、本発明の第１の手段の様な安全ＰＬＣを用いた安全システムの構成により、もっとも簡単に目的の安全システムを実現することができる。即ち、例えばこの様な構成に従って、上記のプログラム自動生成手段を具体的に構成することができる。
【００１４】
また、本発明の第２の手段によれば、認証手続きを行う際に、安全ＰＬＣを構成する各Ｉ／ＯモジュールのＩＤ番号を同時に確認することができる。この時に安全システムの認証者は、順次接続されるべきＩ／Ｏモジュールの過不足や、各Ｉ／Ｏモジュールの種別や、それらの接続順序などをＣＰＵモジュールを通して個別に順次確実に確認することができる。その結果、安全システムの認証者は、該認証手続き時に同時に、安全プログラムの基本構成の是非をＩ／Ｏモジュール単位に正確かつ確実に確認することができる。
【００１５】
また、この各Ｉ／ＯモジュールのＩＤ番号の確認により、例えば各Ｉ／Ｏモジュールに対する所定のＩＤ番号の登録誤りなどが有った場合にもそれを検出することができる。
したがって、本発明の第１の手段によれば、所望の安全システムをより確実に正しく構成したり認証したりすることができる。
【００１６】
また、本発明の第２の手段によれば、認証者自らの操作によって直接認証されたＩ／Ｏモジュールの接続構成が上記のＩＤ番号記憶手段にそのまま記憶され、このＩＤ番号記憶情報に基づいて上記のＩＤ番号比較手段が上記の比較処理を実施する。このため、自動的に生成され一旦２次記憶装置に保存された安全プログラムを再び該２次記憶装置から読み出して実行する際に、安全プログラムが自動生成された初回のシステム構成に対して、Ｉ／Ｏモジュールの接続構成に関する変更が有っても、上記のＩＤ番号記憶情報に基づいて、その接続構成に変更が有ったことが確実に検出される。
したがって、本発明の第２の手段によれば、認証者自らの操作によって直接認証されたＩ／Ｏモジュールの接続構成が、このＩＤ番号記憶情報に基づいて、常に確実に実現される。
【発明を実施するための最良の形態】
【００１７】
以下、本発明を具体的な実施例に基づいて説明する。
ただし、本発明の実施形態は、以下に示す個々の実施例に限定されるものではない。
【実施例１】
【００１８】
図１に本実施例１の安全ＰＬＣ１００のＩ／Ｏモジュールの接続構成を示す。この安全ＰＬＣ１００は、電源モジュール１０１と、Ｉ／Ｏモジュールを管理する安全プログラムを実行するＣＰＵモジュール１１０と、標準装備のＩ／Ｏモジュール１２０と、オプション装備のＩ／Ｏモジュール１３０，１４０，１５０から構成されている。以下、標準装備のＩ／Ｏモジュール１２０のことをマスターモジュール１２０と言う。このマスターモジュール１２０には、緊急停止機能や電源ｏｎ／ｏｆｆ制御機能などの安全機能が標準装備される。
【００１９】
各Ｉ／Ｏモジュールには、安全性に係わる所定の状態を随時検出する安全機器が接続される。また、各Ｉ／Ｏモジュールは何れも、接続可能な安全機器が有する具体的な接続仕様に個別に対応する様にそれぞれ個別の仕様で構成されている。それらの安全機器としては、例えば、二重化された緊急停止ボタン、ライトカーテン、ドアロックセンサ、マットスイッチ、レーザースキャナーなどの各種の検出装置が考えられる。
【００２０】
また、これらの各モジュールには、それぞれ何れにもＭＰＵ（マイクロ演算処理装置）やＲＯＭ，ＲＡＭ、入出力インターフェイスなどが具備されており、各モジュール間は、図３に示す様に入出力バス１０２（連結手段）で接続されている。
各モジュールが備えるスロット選択ランプ１１０ａ，１２０ａ，１３０ａ，１４０ａ，１５０ａは、ＬＥＤから構成されており、ユーザの操作やシステムの状態に合わせてそれぞれ点灯、消灯または点滅する。
【００２１】
図２に上記のＣＰＵモジュール１１０の正面図を示す。
キースイッチ１１０ｂは、安全ＰＬＣ１００を以下のモードの何れか１つに設定することをユーザに選択させるものである。
（モード１）ＲＵＮ  ：  インストールされた所定の安全プログラムの実行モード
（モード２）ＳＴＯＰ：  インストールされた所定の安全プログラムの停止モード
（モード３）Ｗ．Ｅ．：  インストール・プログラムの実行モード
【００２２】
確認情報表示手段１１０ｃ（Ｈ：上位２桁）と確認情報表示手段１１０ｄ（Ｌ：下位２桁）は、ユーザが入力した所定の確認情報（ＰＩＮコードまたはＩＤ番号）を表示するためのものであるが、ここにはその他の各種のシステムモードなどを表示することもできる。  
ＭＯＤボタン１１０ｅとＩＮＣボタン１１０ｆは、本発明のＰＩＮコード入力手段を構成するものであり、ＭＯＤボタン１１０ｅは入力フィールド（上記のＨ／Ｌ）の変更又は入力モードの変更の際に用いる。一方、ＩＮＣボタン１１０ｆは、入力すべきデータの数値を指定する際に用いる。ただし、このＰＩＮコード入力手段を用いて、ＩＤ番号などのその他の情報を入力することも可能である。
例えば４桁の変数の下位フィールドＬに’０３’ｈ（十六進表示の０３）を入力したい場合には、その入力モードにおいてこのＩＮＣボタン１１０ｆを３回押せばよい。その後ＭＯＤボタン１１０ｅを押すことによって、そのフィールドの入力値が確定されると同時に、次の操作モードに移る。
【００２３】
その他の部分については、以下の通りである。
ＰＷＲランプ１１０ｇ  ：  電源ＯＮ状態を示す。
ＲＵＮランプ１１０ｈ  ：  安全プログラムの実行中を示す。
Ｃ．ＯＫランプ１１０ｉ  ：  各Ｉ／Ｏモジュールの接続構成が正しく一意に確定し
た際の安全プログラム実行可能状態を示す。
ＥＲＲランプ１１０ｊ  ：  異常検出状態を示す。
ＲＳＴスイッチ１１０ｋ  ：  リセットスイッチ
【００２４】
図３に、ＣＰＵモジュール１１０の論理的な構成を示す。上記のＣＰＵモジュール１１０には、ＩＤ番号取得手段１１１と、ファンクション・ブロック記憶手段１１３と、プログラム連結手段１１２などが具備されている。ファンクション・ブロック記憶手段１１３は、各安全機器からの入力信号に応じて決定されるべき出力信号を算出する各ラダー回路を各安全機器の接続仕様別にプログラム化した複数種類のファンクション・ブロック（ＦＢ１，ＦＢ２，ＦＢ３，．．．）を記憶する。上記のラダー回路は、所定の安全規格に適合するものであり、したがって、これらのファンクション・ブロック（ＦＢ１，ＦＢ２，ＦＢ３，．．．）としては、勿論、全てその安全規格に従ったファンクション・ブロックが用いられる。
【００２５】
ＩＤ番号取得手段１１１は、上記の入出力バス１０２に接続された各Ｉ／Ｏモジュール（１２０，１３０，１４０，１５０）が有するＩＤ番号をＩ／Ｏ領域１１４を介して読み出す。プログラム連結手段１１２は、この読み出されたＩＤ番号に基づいて、上記のファンクション・ブロック記憶手段１１３から引き当てられた各ファンクション・ブロックを順次連結することにより、所定の主記憶領域Ａ上に安全プログラムＺを自動的に生成する。
上記のＩＤ番号に基づいて、対応するファンクション・ブロックは一意に決定することが出来るので、各安全機器に基づいて提供される各安全機能は、用意されている各ファンクション・ブロック単位にそれぞれ実現することが可能となる。
【００２６】
また、上記のＣＰＵモジュール１１０には、安全ＰＬＣ１００の新設時に、所定の認証者によって最初に登録されるべきＰＩＮコードの値（初期登録値）を記憶するＰＩＮコード記憶手段１１６や、その認証者自らによって、安全システムの導入又は再構成などの際に上記のＰＩＮコード入力手段（ＭＯＤボタン１１０ｅとＩＮＣボタン１１０ｆ）から入力される各Ｉ／ＯモジュールのＩＤ番号を記憶するＩＤ番号記憶手段１１７などが具備されている。このＰＩＮコード記憶手段１１６やＩＤ番号記憶手段１１７は、ＣＰＵモジュール１１０が有する２次記憶装置上に構成された手段である。
【００２７】
以下、図４を用いて安全プログラムＺとＩ／Ｏ領域１１４との関連を説明する。Ｉ／Ｏ領域１１４の先頭には、図１のスロット０用のＩ／Ｏ領域１１４０が定義される。このＩ／Ｏ領域１１４０は、図１のＩ／Ｏモジュール１２０（マスターモジュール）との入出力インターフェイス領域であり、Ｉ／Ｏモジュール１２０との連絡に十分な数の入出力変数をここに定義して使用することができる。Ｉ／Ｏ領域１１４１以降についても同様に、各スロット対応にＩ／Ｏ領域が設けられる。
【００２８】
アドレス対応テーブル１１５は、このＩ／Ｏ領域１１４と引数領域Ａ２との間の各入出力変数の対応を規定するためのものである。ここで、重要なことは、図３の各ファンクション・ブロック（ＦＢ１，ＦＢ２，ＦＢ３，．．．）は、Ｉ／Ｏモジュールの種別を表すＩＤ番号対応にそれぞれ構成されているために、ＩＤ番号とＦＢ番号とは１対１対応すると言うことと、その対応関係と各Ｉ／Ｏ領域の先頭アドレスを管理する上記のアドレス対応テーブル１１５によって、各Ｉ／Ｏモジュール毎に、そのＦＢ番号に対応するファンクション・ブロックを引き当てることが可能となるということの２点である。したがって、安全プログラムＺを構成する各ファンクション・ブロックの入出力情報の格納場所（：外部変数格納領域）は、各Ｉ／Ｏ領域１１４０，１１４１，．．．に一対一に関連づけて割り当てられる。
【００２９】
以下、図４を用いて、所定の主記憶領域Ａ上に自動生成される上記の安全プログラムＺの構成と動作を説明する。
安全プログラムＺのプロシジャ部ＺPRは、領域Ａ内のプログラム領域Ａ１上に生成されるが、このプロシジャ部ＺPRが使用する引数は、引数領域Ａ２に配置される。プロシジャ部ＺPRは、所定の１制御周期において、その初めに、各Ｉ／Ｏモジュールの状態を示す変数をＩ／Ｏ領域１１４からそれぞれ引数領域Ａ２に読み込み（ｉｎ１）、これらの引数を随時参照しつつ、所定の各ファンクション・ブロック（ＦＢ１，ＦＢ２，ＦＢ３，．．．）を順次実行する。
【００３０】
このプロシジャ部ＺPRの実行により、上記の引数領域Ａ２に配置された各引数が参照または更新される。その後、上記の１制御周期の最後の処理として、プロシジャ部ＺPRは、各Ｉ／Ｏモジュールに対する指令内容などを示す変数をそれぞれ、引数領域Ａ２からＩ／Ｏ領域１１４上に出力する（ｏｕｔ１）。この時、プロシジャ部ＺPRによる図４の出力動作ｏｕｔ１は、入出力バス１０２のＩ／Ｏ領域１１４に対する動作に対して排他的に実行する。
そして、以上のプロシジャ部ＺPRの動作の前後で、入出力バス１０２はＩ／Ｏ領域１１４とのデータのやり取りを実行する。
【００３１】
図５は、自動生成される安全プログラムＺの認証手順を例示するフローチャートである。このフローチャートは、キースイッチ１１０ｂが、前述の状態３（図２のＷ．Ｅ．）に移行してから、各Ｉ／Ｏモジュールの接続構成が正しく一意に確定して、安全プログラムが実行可能状態になるまでのＣＰＵモジュール１１０に対する制御手順をも同時に示すものである。即ち、この制御手順を実行するインストール・プログラムは、キースイッチ１１０ｂの状態を状態３（Ｗ．Ｅ．）に移すことによって呼び出すことができる。
また、このフローチャートにおけるステップ４１０とステップ４４５が、本発明のプログラム認証手段に相当する部分である。また、特に、このステップ４４５は、プログラム認証手段が有する本発明のＩＤ番号比較手段に相当する部分である。
【００３２】
以下、この制御手順について、図５を用いて順に説明する。
まず、最初にステップ４０５では、ＣＰＵモジュール１１０をＰＩＮコードの入力受け付け状態に移行させる。この時、Ｃ．ＯＫランプ１１０ｉを点滅させて、認証者に対してＰＩＮコードの入力を行う様に促す。認証者がＰＩＮコード入力手段（ＭＯＤボタン１１０ｅとＩＮＣボタン１１０ｆ）を使って、４桁のＰＩＮコードの入力を完了すると、ステップ４１０が実行される。即ち、ＰＩＮコード記憶手段１１６に初期登録しておいた初期登録値にその４桁のＰＩＮコードが一致していればステップ４２０に、そうでなければステップ４９０に処理を移す。ステップ４９０では、異常終了処理を実行する。
【００３３】
一方、ステップ４２０では、ＣＰＵモジュール１１０の初期設定処理を実行する。この初期設定処理としては、次の処理が実行される。
（１）主記憶領域Ａの０クリア。
（２）ＩＤ番号記憶手段１１７の０クリア。
【００３４】
次に、ステップ４２５では、ＣＰＵモジュールの確認操作を受け付ける。この時、図１、図２のＣＰＵモジュールのスロット選択ランプ１１０ａを点灯し、このモジュールのＩＤ番号を入力すべきことをユーザに伝え、所定のＩＤ番号（例：（Ｈ，Ｌ）＝（’００’ｈ，’００’ｈ）が正しく入力されたか否かを次のステップ４３０にて確認する。そして、それが正しければ当該モジュールのスロット選択ランプ（１１０ａ）を消灯してステップ４３５に、そうでなければ当該モジュールのエラーランプ（１１０ａ１）を点灯してステップ４９０に処理を移す。
【００３５】
ステップ４３５では、次のスロットに接続されているＩ／Ｏモジュールのスロット選択ランプを点灯し、このモジュールのＩＤ番号を入力すべきことをユーザに伝え、そのＩ／ＯモジュールのＩＤ番号をＩＤ番号取得手段１１１を用いて取得する。
ステップ４４０では、そのＩ／Ｏモジュールの確認操作を受け付ける。
次のステップ４４５では、所定のＩＤ番号（例：（Ｈ，Ｌ）＝（’００’ｈ，’０１’ｈ）が正しく入力されたか否かを確認する。そして、それがＩＤ番号取得手段１１１を用いて取得したＩ／ＯモジュールのＩＤ番号に一致していれば当該モジュールのスロット選択ランプを消灯してステップ４５０に、そうでなければ当該モジュールのエラーランプを点灯してステップ４９０に処理を移す。
【００３６】
ステップ４５０では、一致が確認された当該Ｉ／ＯモジュールのＩＤ番号をＩＤ番号記憶手段１１７に記憶する。
次のステップ４６０では、当該Ｉ／Ｏモジュールが最後のＩ／Ｏモジュールであるか否かを判定し、そうならばステップ４６５に、そうでなければステップ４３５に処理を移す。
【００３７】
ステップ４６５では、ＩＤ番号記憶手段１１７に記憶されているＩＤ番号に基づいて、それに対応する各ファンクション・ブロック（ＦＢ１，ＦＢ２，．．．）を検索してファンクション・ブロック記憶手段１１３からそれぞれ引き当てる。
ステップ４７０では、引き当てられた全ファンクション・ブロック（ＦＢ１，ＦＢ２，．．．）をリンクすることによって、図１、図４の領域Ａ上に所望の安全プログラムＺを作成する。
【００３８】
ステップ４７５では、領域Ａ上に生成された安全プログラムＺを二次記憶装置上の所定の領域に保存する。最後にステップ４８０では、ＣＰＵモジュール１１０をＲＥＡＤＹ状態（安全プログラム実行可能状態）にする。この時、次の処理を行う。
（１）確認情報表示手段１１０ｃ（Ｈ：上位２桁）または確認情報表示手段１１０ｄ（Ｌ：下位２桁）に、認証操作完了を意味する所定の完了コード（例：（Ｈ，Ｌ）＝（’００’ｈ，’１−’ｈ）をセットする。
（２）Ｃ．ＯＫランプ１１０ｉを点滅状態から点灯状態に戻す。
【００３９】
以上の処理によって、領域Ａ上に安全プログラムＺが自動生成され、ＲＥＡＤＹ状態（安全プログラム実行可能状態）になる。この時点で、キースイッチ１１０ｂの状態を前述の状態１（ＲＵＮ）に移すことによって、安全プログラムＺを起動することができる。
【００４０】
〔その他の変形例〕
本発明の実施形態は、上記の形態に限定されるものではなく、その他にも以下に例示される様な変形を行っても良い。この様な変形や応用によっても、本発明の作用に基づいて本発明の効果を得ることができる。
（変形例１）
例えば、上記の実施例１では、主記憶領域Ａ上に自動生成された安全プログラムＺをそのまま実行する例を示したが、上記のステップ４７５によって一旦２次記憶装置に保存された安全プログラムＺを再び該２次記憶装置から読み出して実行する様にしてもよい。その際に、上記のＩＤ番号取得手段１１１から得られたＩＤ番号と上記のＩＤ番号記憶手段１１７から得られたＩＤ番号とを比較するＩＤ番号比較手段とをＣＰＵモジュール１１０に備えれば、安全プログラムＺを再び該２次記憶装置から読み出して実行する２回目以後の場合においても、認証者自らの操作によって直接認証されたＩ／Ｏモジュールの接続構成が、このＩＤ番号記憶情報に基づいて、常に確実に保証される。
【図面の簡単な説明】
【００４１】
【図１】実施例１の安全ＰＬＣ１００のＩ／Ｏモジュールの接続構成を示す図。
【図２】ＣＰＵモジュール１１０の正面図。
【図３】ＣＰＵモジュール１１０の論理的な構成を示す機能ブロック図。
【図４】安全プログラムＺの構成と動作を説明する図。
【図５】自動生成される安全プログラムＺの認証手順を例示するフローチャート。
【符号の説明】
【００４２】
１００  ：  安全ＰＬＣ
１０１  ：  電源モジュール
１０２  ：  入出力バス（連絡手段）
１１０  ：  ＣＰＵモジュール
１１０ｅ：  ＭＯＤボタン（ＰＩＮコード入力手段）
１１０ｆ：  ＩＮＣボタン（ＰＩＮコード入力手段）
１１０ｃ，１１０ｄ  ：  確認情報表示手段
１１１  ：  ＩＤ番号取得手段
１１２  ：  プログラム連結手段
１１３  ：  ファンクション・ブロック記憶手段
１１６  ：  ＰＩＮコード記憶手段
１１７  ：  ＩＤ番号記憶手段
１２０  ：  Ｉ／Ｏモジュール（標準装備）
１３０  ：  Ｉ／Ｏモジュール（オプション）
ＦＢｊ  ：  ファンクション・ブロック（ｊは番号）
Ａ    ：  安全プログラムＺを格納する主記憶領域
Ａ１  ：  プログラム領域
Ａ２  ：  引数領域
【図１】
0004619231.tif 000002
【図２】
0004619231.tif 000003
【図３】
0004619231.tif 000004
【図４】
0004619231.tif 000005
【図５】
0004619231.tif 000006