(57)【要約】      （修正有）【課題】ＥｔｈｅｒＣＡＴネットワークを使用するＰＬＣ通信モジュールにおけるスレーブ装置の設定情報を貯蔵するＥＥＰＲＯＭのデータが変調されるか誤った場合の自動復旧方法の提供。【解決手段】ＰＬＣ通信モジュールを用いてＥＥＰＲＯＭの原本データを分析して、チェックサムを計算するステップ、スレーブ装置のＥＳＣに付着したＥＥＰＲＯＭから読み取ったＥＥＰＲＯＭのデータを分析して、チェックサムを計算するステップ、ＥＥＰＲＯＭの原本データのチェックサムと、ＥＥＰＲＯＭのデータのチェックサムとをセクション単位でそれぞれ比較するステップ、比較の結果、各セクション単位のチェックサムのうち一つでも一致しない場合、一致しないセクションのチェックサムを検出し、検出されたＥＥＰＲＯＭのデータのセクションにフラグで異常有無を表記するステップ及び異常が生じたＥＥＰＲＯＭのデータを使用者に知らせるステップを含む。【選択図】図１
2020088845.tif 000002
【特許請求の範囲】
【請求項１】
（Ａ）ＰＬＣ通信モジュールを用いてＥＥＰＲＯＭの原本データを分析して、セクション単位でチェックサム（ｃｈｅｃｋｓｕｍ）を計算するステップ；
（Ｂ）スレーブ装置のＥＳＣに付着したＥＥＰＲＯＭから読み取ったＥＥＰＲＯＭのデータを分析して、セクション単位でチェックサム（ｃｈｅｃｋｓｕｍ）を計算するステップ；
（Ｃ）前記ＥＥＰＲＯＭの原本データのチェックサムと、前記ＥＥＰＲＯＭのデータのチェックサムとをセクション単位でそれぞれ比較するステップ；
（Ｄ）上記比較の結果、各セクション単位のチェックサムのうち一つでも一致しない場合、一致しないセクションのチェックサムを検出し、検出されたＥＥＰＲＯＭのデータのセクションにフラグで異常有無を表記するステップ；及び、
（Ｅ）前記フラグに表記された異常有無を用いて、異常が生じたＥＥＰＲＯＭのデータを使用者に知らせるステップを含む、
ＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法。
【請求項２】
前記ＥＥＰＲＯＭのデータは、重要情報領域（Ｃｒｉｔｉｃａｌ Ｉｎｆｏｒｍａｔｉｏｎ Ａｒｅａ）、連結情報領域（Ｃｏｎｎｅｃｔｉｏｎ Ｉｎｆｏｒｍａｔｉｏｎ Ａｒｅａ）及び通信情報領域（Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ Ａｒｅａ）であり、計３種セクションに分類する、
請求項１に記載のＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法。
【請求項３】
前記（Ｄ）ステップは、
前記比較の結果、各セクション単位のチェックサムがいずれも一致する場合、スレーブ装置のＥＳＣに付着したＥＥＰＲＯＭから設定情報呼び出しを要請するステップ；
前記要請によるＥＥＰＲＯＭ設定情報呼び出しが成功すれば、読み取ったＥＥＰＲＯＭ設定情報の正常有無をチェックするステップ；及び、
前記ＥＥＰＲＯＭ設定情報呼び出しが失敗するか、又は前記読み取ったＥＥＰＲＯＭ設定情報が正常でない場合、ＥＳＣの自体エラーと処理するステップを含む、
請求項１に記載のＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法。
【請求項４】
前記（Ｄ）ステップは、
前記設定情報の正常有無チェックの結果、正常である場合、プロセッサからＥＳＣへの接近を試みるステップ；
上記試みの結果、ＥＳＣへの接近が不可能である場合、ハードウェア（Ｈ／Ｗ）重故障とエラー処理するステップ；及び、
上記試みの結果、ＥＳＣへの接近が可能である場合、ＥＳＣの次の初期化過程ステップに移るステップ、とをさらに含む、
請求項３に記載のＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法。
【請求項５】
前記ＥＥＰＲＯＭ設定情報は、ＥＥＰＲＯＭ状態レジスタ（ｓｔａｔｕｓ  ｒｅｇｉｓｔｅｒ）であって、ハードウェア（Ｈ／Ｗ）インターフェース設定、製品情報、製品バージョン、ＥｔｈｅｒＣＡＴ通信に要する基本情報を含む、
請求項３に記載のＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法。
【請求項６】
前記（Ｄ）ステップは、
前記ＥＥＰＲＯＭの原本データのうち重要情報領域のチェックサムと、前記ＥＥＰＲＯＭのデータのうち重要情報領域のチェックサムとを比較する第１比較ステップ；
上記第１比較の結果、相違すれば、ＥＥＰＲＯＭのデータのうち重要情報領域にフラグで異常有無を表記するステップ；
上記第１比較の結果、互いに同一であれば、前記ＥＥＰＲＯＭの原本データのうち連結情報領域のチェックサムと、ＥＥＰＲＯＭから読み取ったＥＥＰＲＯＭのデータのうち連結情報領域のチェックサムとを比較する第２比較ステップ；
上記第２比較の結果、相違すれば、ＥＥＰＲＯＭのデータのうち連結情報領域にフラグで異常有無を表記するステップ；
上記第２比較の結果、互いに同一であれば、前記ＥＥＰＲＯＭの原本データのうち通信情報領域のチェックサムと、前記ＥＥＰＲＯＭのデータのうち通信情報領域のチェックサムとを比較する第３比較ステップ；及び、
上記第３比較の結果、相違すれば、ＥＥＰＲＯＭのデータのうち通信情報領域にフラグで異常有無を表記するステップ、とを含む、
請求項１に記載のＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法。
【請求項７】
上記第３比較の結果、重要情報領域、連結情報領域及び通信情報領域にいずれもフラグ異常と表記される場合は、全体復旧データフラグを設定するステップをさらに含む、
請求項６に記載のＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法。
【請求項８】
前記全体復旧データフラグが設定された場合、全体セクション情報領域のＥＥＰＲＯＭのデータ誤りと確認するステップをさらに含む、
請求項７に記載のＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法。
【請求項９】
前記（Ｅ）ステップは、
異常が生じたＥＥＰＲＯＭのデータ復旧が行われると、前記ＥＥＰＲＯＭの原本データを用いて、異常が生じたＥＥＰＲＯＭのデータに書き込み、データ誤りを復旧するステップをさらに含む、
請求項１に記載のＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法。
【請求項１０】
前記（Ｅ）ステップは、
前記ＥＥＰＲＯＭのデータのセクション別フラグを確認する第１確認ステップ；
前記第１確認の結果、セクション別全体フラグが異常と表記されれば、前記ＥＥＰＲＯＭの原本データ全体をＥＥＰＲＯＭのデータセクション領域に復旧データと書き込むステップ；
前記ＥＥＰＲＯＭのデータのあらゆるセクションフラグを正常と表記するステップ；
上記第１確認の結果、セクション別全体フラグが異常と表記されていなければ、ＥＥＰＲＯＭのデータのセクション別フラグ異常表記有無を確認し、異常と表記されたＥＥＰＲＯＭのデータセクション領域に、前記ＥＥＰＲＯＭの原本データのうち、該セクションのＥＥＰＲＯＭのデータを復旧データと書き込むステップ；
前記復旧データと書き込まれたセクション領域フラグを正常と表記するステップ、とを含む、
請求項９に記載のＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法。
【請求項１１】
前記ＥＥＰＲＯＭのデータを復旧データと書き込むステップは、
上記第１確認の結果、セクション別全体フラグが異常と表記されていなければ、ＥＥＰＲＯＭのデータのうち重要情報領域フラグが異常と表記されたかを確認する第２確認ステップ；
上記第２確認の結果、重要情報領域フラグが異常と表記されれば、重要情報領域の端に計算されているＣＲＣをチェックするステップ；
上記チェックの結果、ＣＲＣ誤りである場合、誤ったＣＲＣのみを再度計算した後、ＣＲＣデータ書き込みによって誤りを復旧するステップ；
上記チェックの結果、ＣＲＣ誤りがない場合、前記ＥＥＰＲＯＭの原本データのうち重要情報データを、前記ＥＥＰＲＯＭのデータのうち重要情報領域に復旧データと書き込みステップ；
前記ＥＥＰＲＯＭのデータのうち連結情報領域フラグが異常と表記されたかを確認する第３確認ステップ；
上記第３確認の結果、連結情報領域フラグが異常と表記されれば、前記ＥＥＰＲＯＭの原本データのうち、連結情報領域データをＥＥＰＲＯＭのデータの連結情報領域に復旧データと書き込むステップ；
前記ＥＥＰＲＯＭのデータのうち通信情報領域フラグが異常と表記されたかを確認する第４確認ステップ；及び、
上記第４確認の結果、通信情報領域フラグが異常と表記されれば、前記ＥＥＰＲＯＭの原本データのうち、通信情報領域データをＥＥＰＲＯＭのデータの通信情報領域に復旧データと書き込むステップを含む、
請求項１０に記載のＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法。
【請求項１２】
前記ＥＥＰＲＯＭの原本データは、フラッシュメモリに永久貯蔵されることを特徴とする、
請求項１に記載のＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＥｔｈｅｒＣＡＴネットワークを使用するＰＬＣ通信モジュールにおけるスレーブ装置の設定情報を貯蔵するＥＥＰＲＯＭのデータを復旧する方法に関する。
【背景技術】
【０００２】
工場自動化における核心機器の一つであるプログラム可能ロジッグ制御機（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｃｏｎｔｒｏｌｌｅｒ；ＰＬＣ）には、多様な用途に対応するために各種機能を搭載したモジュールが求められる。
【０００３】
ＰＬＣは、入出力接点を遠距離に拡大するために、少なくとも一つ以上のスレーブ装置をＥｔｈｅｒＣＡＴネットワークでマスタ装置に連結して使用することになる。また、マスタ装置と遠距離にある複数のスレーブ装置との通信に基づくＥｔｈｅｒＣＡＴネットワークシステムにおいて、スレーブ装置は、ＥｔｈｅｒＣＡＴスレーブコントローラ（ＥｔｈｅｒＣＡＴ  Ｓｌａｖｅ  Ｃｏｎｔｒｏｌｌｅｒ：ＥＳＣ）が使用される。
【０００４】
ＥＳＣは、多くの製造社において様々な形態に開発及び生産されるものの、原則としてＥｔｈｅｒＣＡＴ標準を遵守するため、内部構造とレジスタ構造は同様である。このＥＳＣは、ＥｔｈｅｒＣＡＴネットワークに接近するくために基本設定が必要であるが、これは、マスタ装置にＥＥＰＲＯＭ（又は内部メモリ）を装着して、ＥＥＰＲＯＭから設定情報を呼び出すようになる。本明細書では、ＥＥＰＲＯＭを使用するか内部メモリを使用する場合を別途区分せず、ＥＥＰＲＯＭと統一して命名する。
【０００５】
ＥＥＰＲＯＭに貯蔵される情報は、ハードウェア（Ｈ／Ｗ）インターフェース設定、製品情報、製品バージョン、ＥｔｈｅｒＣＡＴ通信に要する基本情報等が記録されている。
【０００６】
このとき、ＥＥＰＲＯＭは、基本的にマスタ装置を介して書き取り又は読み取りが可能であるが、完成品製造社別に別途インターフェースを設けて、ＥＥＰＲＯＭのデータを読み書きする場合もある。そのため、ＥＥＰＲＯＭのデータを容易に変更することができる反面、ＥＥＰＲＯＭのデータが変調され、誤ったデータを貯蔵する確率も高くなる問題点がある。
【０００７】
ＥＥＰＲＯＭのデータが変調される発生原因のうち、最も頻繁に発生する場合は、管理者等が他製品のスレーブ装置の情報データを持ち違い、ＥＥＰＲＯＭに使用する場合である。その他も様々な場合があり、大きく次の３種類に分類することができる。
【０００８】
第１に、ＥｔｈｅｒＣＡＴネットワークに複数のスレーブ装置が存在する場合、マスタ装置からスレーブ装置へＥＳＩ（ＥｔｈｅｒＣＡＴ  Ｓｌａｖｅ  Ｉｎｆｏｒｍａｔｉｏｎ）をダウンロードしながら他の装置のＥＳＩをダウンロードする場合がある。第２に、現在の装置が支援するＥＳＩバージョンと互換しない旧バージョン又は最新バージョンのＥＳＩをダウンロードする場合がある。第３に、その他環境要因又は電気的ノイズによってＥＥＰＲＯＭのデータが一部損失又は変調される場合である。
【０００９】
しかし、既存のＥＥＰＲＯＭのデータ変調時に行われる過程は、ＥＥＰＲＯＭのデータ変調を効果的に対処することができず、発生原因を問わず、いずれも単にエラーにのみ処理している。
【００１０】
また、復旧できる方法においても、使用者が手作業でエラーが発生したスレーブ装置を開発した開発社の専用プログラム又はマスタを介してＥＳＩをさらにダウンロードするか、故障が発生したハードウェアを入れ替えている。
【発明の概要】
【発明が解決しようとする課題】
【００１１】
本発明の目的は、ＥｔｈｅｒＣＡＴネットワークを使用するＰＬＣ通信モジュールにおいて、スレーブ装置の設定情報を貯蔵するＥＥＰＲＯＭのデータが変調されるか誤った場合、ＥＥＰＲＯＭのデータを自動復旧する方法を提供することである。
【００１２】
また、本発明の目的は、従前にはＥＥＰＲＯＭの自動復旧が不可能であったが、本発明では、装置のファームウエアと互換できるＥＥＰＲＯＭのデータを読み取り専用永久メモリに保管しており、この情報を介してＥＥＰＲＯＭのデータを復旧する方法を提供することである。
【００１３】
また、本発明の目的は、読み取り専用永久メモリに保管している情報を介して誤り有無を検出し、誤った部分を使用者に知らせるＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法を提供することである。
【００１４】
また、本発明の目的は、読み取り専用永久メモリに保管している情報を介して復旧が行われる場合、復旧可否を使用者に提供するか、復旧した部分がどの部分であるかを使用者に知らせるＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法を提供することである。
【００１５】
本発明の目的は、以上に言及した目的に制限されないし、言及していない本発明の他の目的及び長所は、下記の説明によって理解することができ、本発明の実施形態によってより明らかに理解することができる。また、本発明の目的及び長所は、特許請求の範囲に示した手段及びその組み合わせによって実現できることが分かりやすい。
【課題を解決しようとする手段】
【００１６】
本発明によるＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法は、（Ａ）ＰＬＣ通信モジュールを用いてＥＥＰＲＯＭの原本データを分析して、セクション単位でチェックサム（ｃｈｅｃｋｓｕｍ）を計算するステップ；（Ｂ）スレーブ装置のＥＳＣに付着したＥＥＰＲＯＭから読み取ったＥＥＰＲＯＭのデータを分析して、セクション単位でチェックサム（ｃｈｅｃｋｓｕｍ）を計算するステップ；（Ｃ）前記ＥＥＰＲＯＭの原本データのチェックサムと、前記ＥＥＰＲＯＭのデータのチェックサムとをセクション単位でそれぞれ比較するステップ；（Ｄ）上記比較の結果、各セクション単位のチェックサムのうち一つでも一致しない場合、一致していないセクションのチェックサムを検出し、検出されたＥＥＰＲＯＭのデータのセクションにフラグで異常有無を表記するステップ；及び、（Ｅ）前記フラグに表記された異常有無を用いて、異常が生じたＥＥＰＲＯＭのデータを使用者に知らせるステップ、とを含んでいてもよい。
【００１７】
また、前記ＥＥＰＲＯＭのデータは、重要情報領域（Ｃｒｉｔｉｃａｌ Ｉｎｆｏｒｍａｔｉｏｎ  Ａｒｅａ）、連結情報領域（Ｃｏｎｎｅｃｔｉｏｎ Ｉｎｆｏｒｍａｔｉｏｎ  Ａｒｅａ）及び通信情報領域（Ｃｏｍｍｕｎｉｃａｔｉｏｎ Ｉｎｆｏｒｍａｔｉｏｎ Ａｒｅａ）であり、計３種セクションに分類することができる。
【００１８】
また、前記（Ｄ）ステップは、上記比較の結果、各セクション単位のチェックサムがいずれも一致する場合、スレーブ装置のＥＳＣに付着したＥＥＰＲＯＭから設定情報呼び出しを要請するステップ；前記要請によるＥＥＰＲＯＭ設定情報呼び出しが成功すれば、読み取ったＥＥＰＲＯＭ設定情報の正常有無をチェックするステップ；及び前記ＥＥＰＲＯＭ設定情報呼び出しが失敗するか、又は前記読み取ったＥＥＰＲＯＭ設定情報が正常でない場合、ＥＳＣの自体エラーと処理するステップ、とを含んでいてもよい。
【００１９】
また、前記（Ｄ）ステップは、前記設定情報の正常有無チェックの結果、正常である場合、プロセッサからＥＳＣへの接近を試みるステップ；上記試みの結果、ＥＳＣへの接近が不可能である場合、ハードウェア（Ｈ／Ｗ）重故障とエラー処理するステップ；及び上記試みの結果、ＥＳＣへの接近が可能である場合、ＥＳＣの次の初期化過程ステップに移るステップ、とをさらに含んでいてもよい。
【００２０】
また、前記ＥＥＰＲＯＭ設定情報は、ＥＥＰＲＯＭ状態レジスタ（ｓｔａｔｕｓ  ｒｅｇｉｓｔｅｒ）であって、ハードウェア（Ｈ／Ｗ）インターフェース設定、製品情報、製品バージョン、ＥｔｈｅｒＣＡＴ通信に要する基本情報を含んでいてもよい。
【００２１】
また、前記（Ｄ）ステップは、前記ＥＥＰＲＯＭの原本データのうち重要情報領域のチェックサムと、前記ＥＥＰＲＯＭのデータのうち重要情報領域のチェックサムとを比較する第１比較ステップ；上記第１比較の結果、相違すれば、ＥＥＰＲＯＭのデータのうち重要情報領域にフラグで異常有無を表記するステップ；上記第１比較の結果、互いに同一であれば、前記ＥＥＰＲＯＭの原本データのうち連結情報領域のチェックサムと、ＥＥＰＲＯＭから読み取ったＥＥＰＲＯＭのデータのうち連結情報領域のチェックサムとを比較する第２比較ステップ；上記第２比較の結果、相違すれば、ＥＥＰＲＯＭのデータのうち連結情報領域にフラグで異常有無を表記するステップ；上記第２比較の結果、互いに同一であれば、前記ＥＥＰＲＯＭの原本データのうち通信情報領域のチェックサムと、前記ＥＥＰＲＯＭのデータのうち通信情報領域のチェックサムとを比較する第３比較ステップ；及び、上記第３比較の結果、相違すれば、ＥＥＰＲＯＭのデータのうち通信情報領域にフラグで異常有無を表記するステップ、とを含んでいてもよい。
【００２２】
また、上記第３比較の結果、重要情報領域、連結情報領域及び通信情報領域にいずれもフラグ異常と表記される場合は、全体復旧データフラグを設定するステップをさらに含んでいてもよい。
【００２３】
また、前記全体復旧データフラグが設定された場合、全体セクション情報領域のＥＥＰＲＯＭのデータ誤りと確認するステップをさらに含んでいてもよい。
【００２４】
また、前記（Ｅ）ステップは、異常が生じたＥＥＰＲＯＭのデータ復旧が行われると、前記ＥＥＰＲＯＭの原本データを用いて、異常が生じたＥＥＰＲＯＭのデータに書き込み、データ誤りを復旧するステップをさらに含んでいてもよい。
【００２５】
また、前記（Ｅ）ステップは、前記ＥＥＰＲＯＭのデータのセクション別フラグを確認する第１確認ステップ；上記第１確認の結果、セクション別全体フラグが異常と表記されると、前記ＥＥＰＲＯＭの原本データ全体をＥＥＰＲＯＭのデータセクション領域に復旧データと書き込むステップ；前記ＥＥＰＲＯＭのデータのあらゆるセクションフラグを正常と表記するステップ；上記第１確認の結果、セクション別全体フラグが異常と表記されていなければ、ＥＥＰＲＯＭのデータのセクション別フラグ異常表記有無を確認し、異常と表記されたＥＥＰＲＯＭのデータセクション領域に、前記ＥＥＰＲＯＭの原本データのうち、該セクションのＥＥＰＲＯＭのデータを復旧データと書き込むステップ；前記復旧データと書く込まれたセクション領域フラグを正常と表記するステップ、とを含んでいてもよい。
【００２６】
また、前記ＥＥＰＲＯＭのデータを復旧データと書き込むステップは、上記第１確認の結果、セクション別全体フラグが異常と表記されていなければ、ＥＥＰＲＯＭのデータのうち重要情報領域フラグが異常と表記されたかを確認する第２確認ステップ；上記第２確認の結果、重要情報領域フラグが異常と表記されれば、重要情報領域の端に計算されているＣＲＣをチェックするステップ；上記チェックの結果、ＣＲＣ誤りである場合、誤ったＣＲＣのみを再度計算した後、ＣＲＣデータ書き込みによって誤りを復旧するステップ；上記チェックの結果、ＣＲＣ誤りがない場合、前記ＥＥＰＲＯＭの原本データのうち重要情報データを、前記ＥＥＰＲＯＭのデータのうち重要情報領域に復旧データと書き込むステップ；前記ＥＥＰＲＯＭのデータのうち連結情報領域フラグが異常と表記されたかを確認する第３確認ステップ；上記第３確認の結果、連結情報領域フラグが異常と表記されれば、前記ＥＥＰＲＯＭの原本データのうち、連結情報領域データをＥＥＰＲＯＭのデータの連結情報領域に復旧データと書き込むステップ；前記ＥＥＰＲＯＭのデータのうち通信情報領域フラグが異常と表記されたかを確認する第４確認ステップ；及び上記第４確認の結果、通信情報領域フラグが異常と表記されれば、前記ＥＥＰＲＯＭの原本データのうち、通信情報領域データをＥＥＰＲＯＭのデータの通信情報領域に復旧データと書き込むステップ、とを含んでいてもよい。
【００２７】
また、前記ＥＥＰＲＯＭの原本データは、フラッシュメモリに永久貯蔵されることを特徴とする。
【発明の効果】
【００２８】
本発明によるＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法は、使用者が意図せずに、ある外部の要人からＥＥＰＲＯＭのデータが変調されても自動復旧するため、ＥＥＰＲＯＭのデータ異常による通信不可現象を解消することができる。
【００２９】
また、異常が生じて復旧された場合には、フラグで使用者に知らせることができ、使用者がどの部分に問題があって、どのように処理されたかを確認することができる。
【００３０】
また、使用者が意図した場合には、パラメータ設定を介して該機能を行うものの、復旧機能のみ行わないようにすることができる。かかる場合には、異常部分があると知らせるだけであり、復旧はしていないと知らせることができる。
【００３１】
上述した効果および本発明の具体的な効果は、以下の発明を実施するための具体的な事項を説明しながら共に記述する。
【図面の簡単な説明】
【００３２】
【図１】ＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法を説明するための流れ図。
【図２】図１におけるＥＥＰＲＯＭのデータをセクション単位で示した図面。
【図３】図１において、一致していないＥＥＰＲＯＭのデータセクションを検出する過程を詳明する流れ図。
【図４】図１において、復旧データを用いてデータ誤りを復旧する過程を詳細に示す流れ図。
【発明を実施するための形態】
【００３３】
前述した目的、特徴及び長所は、添付の図面を参照して詳細に後述され、これによって、本発明が属する技術分野における通常の知識を有する者が本発明の技術思想を容易に実施することができる。本発明の説明において、本発明に係る公知技術に対する具体的な説明が本発明の要旨を曖昧にすると判断される場合には詳細な説明を省略する。以下では、添付の図面を参照して本発明による好ましい実施形態を詳説する。図面における同じ参照符号は、同一又は類似の構成要素を示すものに使われる。
【００３４】
以下では、本発明の幾つかの実施形態によるＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法を説明する。
【００３５】
図１に示したＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法は、一実施形態によるものであって、その過程が図１に示した実施形態に限定されるものではなく、必要によって一部の過程が付加、変更又は削除されてもよい。
【００３６】
図１は、ＰＬＣ通信モジュールにおけるスレーブ装置のＥＥＰＲＯＭ復旧方法を説明するための流れ図である。
【００３７】
図１を参照して説明すれば、先ず、ＥｔｈｅｒＣＡＴネットワークを使用するＰＬＣ通信モジュールは、スレーブ装置に電源が投入されて初期化過程が始まる。初期化過程が始まると、永久メモリ（Ｆｌａｓｈ）に貯蔵された読み取り専用属性のＥＥＰＲＯＭの原本データを分析して、セクション単位でチェックサム（ｃｈｅｃｋｓｕｍ）を計算する（Ｓ１００）。計算されたセクション単位チェックサムは、メモリに貯蔵されてもよい。
【００３８】
このとき、ＥＥＰＲＯＭの原本データは、重要情報（Ｃｒｉｔｉｃａｌ Ｉｎｆｏｒｍａｔｉｏｎ）、連結情報（Ｃｏｎｎｅｃｔｉｏｎ Ｉｎｆｏｒｍａｔｉｏｎ）及び通信情報（Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ）のセクションを含む。また、チェックサムは、データの正確性を検査するための用途に使われる誤り検出方式の一つである。チェックサムは、データの最後に、先に送ったあらゆるデータを足した合計を計算する。ＰＬＣ通信モジュールは、原本データを入力して、セクション単位として一つずつ受け入れて加算する。
【００３９】
図２は、図１で分析するＥＥＰＲＯＭ（原本）データをセクション単位で示した図面である。  
【００４０】
図２に示しているように、ＥＥＰＲＯＭのデータは、大きく重要情報領域（Ｃｒｉｔｉｃａｌ Ｉｎｆｏｒｍａｔｉｏｎ Ａｒｅａ）１０、連結情報領域（Ｃｏｎｎｅｃｔｉｏｎ Ｉｎｆｏｒｍａｔｉｏｎ Ａｒｅａ）２０、及び通信情報領域（Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ Ａｒｅａ）３０であり、計３種セクションに分類することができる。
【００４１】
このとき、前記重要情報領域１０は、ＰＬＣ通信モジュールにおけるスレーブ装置のＥＳＣが動作するために要する基本設定と、上位アプリケーションプロセッサとのインターフェースのための情報の集合である。また、前記連結情報領域２０は、ＰＬＣ通信モジュールにおけるマスタ装置がスレーブ装置を区分して連結する際に使う情報の集合である。また、前記通信情報領域３０は、ＰＬＣ通信モジュールにおけるマスタ装置とスレーブ装置が通信するために約束した情報の集合である。
【００４２】
次いで、ＰＬＣ通信モジュールは、スレーブ装置のＥＳＣに付着したＥＥＰＲＯＭのデータを読み取る（Ｓ２００）。このとき、ＥＥＰＲＯＭのデータは、重要情報（Ｃｒｉｔｉｃａｌ Ｉｎｆｏｒｍａｔｉｏｎ）、連結情報（Ｃｏｎｎｅｃｔｉｏｎ Ｉｎｆｏｒｍａｔｉｏｎ）及び通信情報（ＣｏｍｍｕｎｉｃａｔｉｏｎＩｎｆｏｒｍａｔｉｏｎ）のセクションを含む。
【００４３】
また、読み取りが完了すると（Ｓ３００）、ＰＬＣ通信モジュールは、読み取ったＥＥＰＲＯＭのデータを分析して、セクション単位でチェックサム（ｃｈｅｃｋｓｕｍ）を計算する（Ｓ４００）。計算されたセクション単位チェックサムは、メモリに貯蔵されてもよい。
【００４４】
また、ＰＬＣ通信モジュールは、永久メモリ（Ｆｌａｓｈ）から読み取ったＥＥＰＲＯＭの原本データのチェックサムと、ＥＥＰＲＯＭから読み取ったＥＥＰＲＯＭのデータのチェックサムとをセクション単位でそれぞれ比較する（Ｓ５００）。
【００４５】
上記比較の結果（Ｓ５００）、各セクション単位のチェックサムのうち一つでも一致しない場合（Ｓ６００）、ＰＬＣ通信モジュールは、どのセクションのチェックサムが間違ったのか（相違するか）を検出する。ＰＬＣ通信モジュールは、検出されたＥＥＰＲＯＭのデータのセクションにフラグで異常有無を表記する（Ｓ７００）。このとき、Ｓ７００過程は、図３を参照して下記にさらに説明する。
【００４６】
このように、異常が生じたＥＥＰＲＯＭのデータは、フラグを用いて使用者に知らせることができる。従って、使用者は、どの部分に問題があって、どのように処理されたかを確認することができる。また、使用者は、フラグ確認を介して異常が生じたＥＥＰＲＯＭのデータの復旧を処理することができる。
【００４７】
これによって、使用者は、ＥＥＰＲＯＭのデータ変調が使用者によって意図された場合、パラメータ設定を介して該機能を行う。このとき、使用者は、復旧機能のみ行わないようにすることができる。かかる場合には、異常部分があると知らせるだけであり、復旧はしていないと知らせることができる。
【００４８】
従って、異常が生じたＥＥＰＲＯＭのデータの復旧が行われると、異常が生じたＥＥＰＲＯＭのデータに書き込み、データ誤りを復旧する（Ｓ８００）。このとき、データ誤りの復旧は、永久メモリ（Ｆｌａｓｈ）に貯蔵された読み取り専用属性のＥＥＰＲＯＭの原本データを用いることができる。このとき、Ｓ８００過程は、図４を参照して下記にさらに説明する。
【００４９】
また、上記比較の結果（Ｓ５００）、各セクション単位のチェックサムがいずれも一致する場合（Ｓ６００）、ＰＬＣ通信モジュールは、スレーブ装置のＥＳＣに付着したＥＥＰＲＯＭから設定情報呼び出しを要請する（Ｓ９００）。このとき、ＥＥＰＲＯＭ設定情報は、ＥＥＰＲＯＭ状態レジスタ（ｓｔａｔｕｓ  ｒｅｇｉｓｔｅｒ）である。ＥＥＰＲＯＭ設定情報は、ハードウェア（Ｈ／Ｗ）インターフェース設定、製品情報、製品バージョン、ＥｔｈｅｒＣＡＴ通信に要する基本情報等を含んでいてもよい。
【００５０】
ＰＬＣ通信モジュールは、前記要請によってＥＥＰＲＯＭ設定情報を呼び出すことが成功すれば（Ｓ１０００）、読み取ったＥＥＰＲＯＭ設定情報の正常有無をチェックする（Ｓ１１００）。
【００５１】
このとき、ＥＥＰＲＯＭ設定情報呼み出しが失敗するか、又は読み取ったＥＥＰＲＯＭ設定情報が正常でない場合は、ＥＳＣの自体エラーと処理する（Ｓ１２００）。
【００５２】
前記エラーへの処理は、ＥＳＣエラーを外部に表示し、ＥＳＩをさらにダウンロードできるようにすることができる。このため、スレーブ装置を開発した開発社の専用プログラム又はマスタ装置を用いることができる。また、前記設定情報の正常有無チェックは、ＥＥＰＲＯＭのデータのうち、重要情報領域（Ｃｒｉｔｉｃａｌ Ｉｎｆｏｒｍａｔｉｏｎ Ａｒｅａ）に位置するＣＲＣ（Ｃｙｃｌｉｃａｌ Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）を介して行われてもよい。
【００５３】
また、設定情報の正常有無チェックの結果（Ｓ１１００）、正常である場合、プロセッサのＥＳＣへの接近可能な状態になれば、プロセッサは、ＥＳＣへの接近を試みる（Ｓ１３００）。
【００５４】
上記試みの結果（Ｓ１３００）、ＥＳＣへの接近に失敗した場合（Ｓ１４００）、ＰＬＣ通信モジュールは、ハードウェア（Ｈ／Ｗ）重故障とエラー処理する（Ｓ１５００）。ハードウェア重故障へのエラー処理は、ハードウェアの故障を外部に表示し、故障が発生したハードウェアが入れ替えられるようにすることができる。
【００５５】
また、上記試みの結果（Ｓ１３００）、ＥＳＣへの接近に成功した場合（Ｓ１４００）、ＰＬＣ通信モジュールは、ＥＳＣの次の初期化過程ステップに移ることになる。
【００５６】
かかる動作によって、使用者が意図せずに、ある外部の要人からＥＥＰＲＯＭのデータが変調されても自動復旧することができる。従って、ＥＥＰＲＯＭのデータ異常による通信不可現象を解消することができる。
【００５７】
図３は、図１において、一致していないＥＥＰＲＯＭのデータセクションを検出する過程を詳説する流れ図である。
【００５８】
図３を参照して説明すれば、ＰＬＣ通信モジュールは、永久メモリ（Ｆｌａｓｈ）から読み取ったＥＥＰＲＯＭの原本データのうち重要情報領域１０のチェックサムと、ＥＥＰＲＯＭから読み取ったＥＥＰＲＯＭのデータのうち重要情報領域１０のチェックサムとを比較（第１比較）する（Ｓ７０１）。
【００５９】
上記第１比較の結果（Ｓ７０１）、相違すれば、ＥＥＰＲＯＭのデータのうち重要情報領域１０にフラグで異常有無を表記する（Ｓ７０２）。
【００６０】
また、上記第１比較の結果（Ｓ７０１）、互いに同一であれば、永久メモリ（Ｆｌａｓｈ）から読み取ったＥＥＰＲＯＭの原本データのうち連結情報領域２０のチェックサムと、ＥＥＰＲＯＭから読み取ったＥＥＰＲＯＭのデータのうち連結情報領域２０のチェックサムとを比較（第２比較）する（Ｓ７０３）。
【００６１】
上記第２比較の結果（Ｓ７０３）、相違すれば、ＥＥＰＲＯＭのデータのうち連結情報領域２０にフラグで異常有無を表記する（Ｓ７０４）。
【００６２】
上記第２比較の結果（Ｓ７０３）、互いに同一であれば、永久メモリ（Ｆｌａｓｈ）から読み取ったＥＥＰＲＯＭの原本データのうち通信情報領域３０のチェックサムと、ＥＥＰＲＯＭから読み取ったＥＥＰＲＯＭのデータのうち通信情報領域３０のチェックサムとを比較（第３比較）する（Ｓ７０５）。
【００６３】
前記第３比較の結果（Ｓ７０３）、相違すれば、ＥＥＰＲＯＭのデータのうち通信情報領域３０にフラグで異常有無を表記する（Ｓ７０６）。
【００６４】
一方、第３比較の結果（Ｓ７０３）、重要情報領域１０、連結情報領域２０及び通信情報領域３０にいずれもフラグ異常と表記される場合は、全体復旧データフラグを設定することができる。これは、全体セクション情報領域１０、２０、３０のＥＥＰＲＯＭのデータが誤ったことを示す。このとき、設定された全体復旧データフラグで異常有無を表記する。
【００６５】
このように、ＰＬＣ通信モジュールは、各セクション単位のチェックサムのうち一つでも一致しない場合、フラグに表記された値を介してどのＥＥＰＲＯＭのデータのセクション領域が間違ったかを検出することになる。例として、フラグに表記された値が「１」であれば、該ＥＥＰＲＯＭのデータのセクション領域が変調等によって誤ったものと判断する。また、「０」であれば、該ＥＥＰＲＯＭのデータのセクション領域が正常なものと判断することができる。
【００６６】
また、ＰＬＣ通信モジュールは、各々のＥＥＰＲＯＭのデータのフラグを確認した後、直ぐにデータ誤り復旧を処理せずに、フラグで異常有無だけ表記して使用者に伝達することができる。
【００６７】
図４は、図１において、復旧データを用いてデータ誤りを復旧する過程を詳細に示す流れ図である。
【００６８】
図４を参照して説明すれば、ＥＥＰＲＯＭのデータのセクション別フラグを確認（第１確認）する（Ｓ８０１）。このとき、セクション別フラグをそれぞれ確認することもできる。しかし、全体セクション情報領域１０、２０、３０のＥＥＰＲＯＭのデータが誤ったことを示す全体復旧データフラグのみを確認し、全体セクション情報領域のＥＥＰＲＯＭのデータ誤りを確認することもできる。
【００６９】
上記第１確認の結果（Ｓ８０１）、セクション別全体フラグが異常と表記（例として、「１」と表記）されれば（Ｓ８０２）、永久メモリに貯蔵された読み取り専用属性のＥＥＰＲＯＭの原本データ全体をＥＥＰＲＯＭのデータセクション領域に復旧データと書き込む（Ｓ８０３）。
【００７０】
また、ＥＥＰＲＯＭのデータのあらゆるセクションフラグを正常と表記（例として、 「０」と表記）する（Ｓ８０４）。
【００７１】
上記第１確認の結果（Ｓ８０１）、セクション別全体フラグが異常と表記（例として「１」と表記）されていなければ（Ｓ８０２）、ＥＥＰＲＯＭのデータのうち重要情報領域フラグが異常と表記されたかを確認（第２確認）する（Ｓ８０５）。
【００７２】
上記第２確認の結果（Ｓ８０５）、重要情報領域フラグが異常と表記されれば、重要情報領域の端に計算されているＣＲＣを先にチェックする（Ｓ８０６）。また、チェックの結果（Ｓ８０６）、ＣＲＣ誤りである場合は、誤ったＣＲＣのみを再度計算した後、ＣＲＣデータ書き込みによって誤りを復旧する（Ｓ８０７）。
【００７３】
一方、チェックの結果（Ｓ８０６）、ＣＲＣ誤りがない場合は、永久メモリに貯蔵された読み取り専用属性のＥＥＰＲＯＭの原本データのうち重要情報データをＥＥＰＲＯＭのデータの重要情報領域に復旧データと書き込む（Ｓ８０８）。
【００７４】
また、ＥＥＰＲＯＭのデータの重要情報領域フラグを正常と表記する（Ｓ８０９）。
【００７５】
次いで、ＥＥＰＲＯＭのデータのうち連結情報領域フラグが異常と表記されたかを確認（第３確認）する（Ｓ８１０）。
【００７６】
上記第３確認の結果（Ｓ８１０）、連結情報領域フラグが異常と表記されれば、永久メモリに貯蔵された読み取り専用属性のＥＥＰＲＯＭの原本データのうち、連結情報領域データをＥＥＰＲＯＭのデータの連結情報領域に復旧データと書き込む（Ｓ８１１）。
【００７７】
また、ＥＥＰＲＯＭのデータの連結情報領域フラグを正常と表記する（Ｓ８１２）。
【００７８】
次いで、ＥＥＰＲＯＭのデータのうち通信情報領域フラグが異常と表記されたかを確認（第４確認）する（Ｓ８１３）。
【００７９】
上記第４確認の結果（Ｓ８１３）、通信情報領域フラグが異常と表記されれば、永久メモリに貯蔵された読み取り専用属性のＥＥＰＲＯＭの原本データのうち、通信情報領域データをＥＥＰＲＯＭのデータの通信情報領域に復旧データと書き込む（Ｓ８１４）。
【００８０】
また、ＥＥＰＲＯＭのデータの通信情報領域フラグを正常と表記する（Ｓ８１５）。
【００８１】
このとき、重要情報領域と違って、連結情報領域及び通信情報領域にはＣＲＣがないため、単に異常フラグが設定されているかを確認し、設定されている場合、復旧データを書き込むようになる。
【００８２】
本明細書に開示のあらゆる方法及び手続きは、一つ以上のコンピュータプログラム又は構成要素を用いて少なくとも部分的に具現することができる。このような構成要素は、ＲＡＭ、ＲＯＭ、フラッシュメモリ、磁気又は光学ディスク、光学メモリ又は他の貯蔵メディアのような揮発性及び非揮発性メモリを含む任意の従来のコンピュータ判読可能媒体又は機械判読可能媒体上に一連のコンピュータ命令として提供され得る。命令は、ソフトウェア又はファームウェアとして提供されてもよく、ＡＳＩＣ、ＦＰＧＡ、ＤＳＰ又は任意の類似装置のようなハードウェア構成要素の全部又は一部を具現することができる。命令は、一連のコンピュータ命令を行う際、開示された方法及び手続きの全部又は一部を行うか促進させる一つ以上のプロセッサ又は他のハードウェア構成要素によって行われるように構成されてもよい。
【００８３】
以上のように、本発明について例示した図面を参照して説明したが、本明細書に開示した実施形態と図面によって本発明が限定されるものではなく、本発明の技術思想の範囲内で通常の技術者によって様々な変形が行われることは自明である。また、本発明の実施形態を前述しながら本発明の構成による作用効果を明示的に記載して説明しなかったとしても、該構成によって予測可能な効果も認めなければならないことは当然である。
【符号の説明】
【００８４】
１０    重要情報領域
２０    連結情報領域
３０    通信情報領域
【図１】
2020088845.tif 000003
【図２】
2020088845.tif 000004
【図３】
2020088845.tif 000005
【図４】
2020088845.tif 000006