説明

データ書き込み方法および表示器

【課題】有限の書き込み寿命を有する記録媒体に対して寿命以下の書き込み回数でデータの書き込み量を確保可能とすること。
【解決手段】データの書き込み回数が有限であるCFカード14に対するデータ書き込み方法において、一方のバッファ18に複数回分のデータを書き込み、当該バッファ18に書き込んである複数回分のデータをCFカード14に1回で書き込む一方、CFカード14への複数回分のデータの書き込み中に次のデータが入力されるときは、バッファ20に次のデータを書き込む。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、有限の書き込み回数を有する不揮発性記録媒体に対するデータ書き込み方法およびこれを実施するプログラマブル表示器等の表示器に関する。
【背景技術】
【0002】
パーソナルコンピュータ、プログラマブル表示器、プログラマブルロジックコントローラ(PLC)等から構成されて、デバイスを制御するため、長時間の連続稼動が要求される制御システムでは、当該装置内の揮発性メモリに記録してあるデータを周期的に有限の書き込み回数を有する不揮発性記録媒体、例えばコンパクトフラッシュ(登録商標)カード(CFカード)に記録することが行われている。
【0003】
この有限の書き込み回数を有するCFカードは、その書き込み回数を越えると、正常に動作しなくなって書き込んだデータを保証できなくなる。そのため、その書き込み回数を記録してその書き込みを管理することが望ましいが、書き込みを頻繁に実施すると、CFカードの劣化が早くなる。
【0004】
なお、CFカードの書き込み寿命は、内部のインデックス領域に対する書き込み更新による。このインデックス領域はデータ位置(クラスタ)を示すFAT領域(ファット・アロケーション・テーブル)であり、このFATには書き込み更新の上限があるからである。FATの詳細は周知であるので略するが、FATが傷つくと、データは正常でもデータを読み出せなくなる。
【0005】
特開2005−18652号公報には上記CFカードについての書き込み回数の制限、特開平6−19800号公報にはEEPROMに対する書き込み回数の増大に関する技術が開示されている。
【特許文献1】特開2005−18652号公報
【特許文献2】特開平6−19800号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
したがって、本発明により解決すべき課題は、有限の書き込み寿命を有する記録媒体に対して寿命以下の書き込み回数でデータの書き込み量を確保可能とすることである。
【課題を解決するための手段】
【0007】
本発明第1によるデータ書き込み方法は、データの書き込み回数が有限である記録媒体に対するデータ書き込み方法であって、少なくとも2つのバッファの一方に複数回分のデータを書き込むステップと、上記バッファに書き込んである複数回分のデータを上記記録媒体に1回で書き込むステップと、上記記録媒体へのデータの書き込み中に次のデータが入力されるときは、他方のバッファに該次のデータを書き込むステップと、を有することを特徴とするものである。
【0008】
上記バッファはバッファを複数の領域に分割し、分割された一方と他方とで構成することができる。また、1つまたは複数のバッファに複数回分のデータを書き込んでもよい。また、1つまたは複数のバッファに次のデータを書き込んでもよい。
【0009】
本発明第1によると、バッファに書き込んでいる複数回分のデータを記録媒体に1回で書き込むので、記録媒体に対する書き込み回数が減り、記録媒体の書き込み寿命を延ばすことができる。本発明では、加えて、記録媒体への上記複数回分のデータの書き込み中に次のデータが入力されるときは、別のバッファに該次のデータを書き込むので、データが損なうことがない。
【0010】
本発明第2によるデータ書き込み方法は、データの書き込み回数が有限である記録媒体に対するデータ書き込み方法であって、複数のバッファに対して順次に複数回分のデータを書き込むステップと、上記複数のバッファへの複数回分のデータの書き込みが完了すると、上記記録媒体に1回で上記複数のバッファに書き込まれているデータを書き込むステップと、を有することを特徴とするものである。
【0011】
本発明第2によると、バッファに書き込んでいる複数回分のデータを記録媒体に1回で書き込むので、記録媒体に対する書き込み回数が減り、記録媒体の書き込み寿命を延ばすことができる。
【0012】
上記では、上記バッファから上記記録媒体への全データの書き込み完了期間をパワーフェイル期間以内とすることが好ましい。
【0013】
上記では、記録媒体がCFカードであることが好ましい。
【0014】
本発明第3による表示器は、データの書き込み回数が有限である記録媒体が装着可能であり、かつ、この装着した記録媒体にデータを書き込むことが可能な監視制御用表示器であって、少なくとも2つのバッファと、一方のバッファに複数回分のデータを書き込み、上記記録媒体に対してはこの書き込んだ複数回分のデータを1回で書き込み制御する一方、上記記録媒体への上記複数回分のデータの書き込み中に次のデータが入力されるときは、他方のバッファに該次のデータを書き込み制御するバッファコントローラと、を備えることを特徴とするものである。
【0015】
本発明第4による表示器は、データの書き込み回数が有限である記録媒体が装着可能であり、かつ、この装着した記録媒体にデータを書き込むことが可能な表示器であって、複数のバッファと、これら複数のバッファに対して順次に複数回分のデータを書き込み、これら複数のバッファへの複数回分のデータの書き込みが完了すると、上記記録媒体に1回で上記複数のバッファに書き込まれているデータを書き込む制御を行うバッファコントローラと、を備えることを特徴とするものである。
【発明の効果】
【0016】
本発明によれば、有限の書き込み寿命を有する記録媒体に対して寿命以下の書き込み回数でデータの書き込み量を確保可能とすることができる。
【発明を実施するための最良の形態】
【0017】
以下、添付した図面を参照して、本発明の実施の形態に係るデータ書き込み方法を説明する。この実施の形態ではデータの書き込み回数が有限である記録媒体としてCFカードを例に用いる。図1は、パーソナルコンピュータ、プログラマブル表示器、PLC等から構成される制御システムの概略構成を示す。
【0018】
図1を参照して、この監視制御システムは、モータ等の出力機器2、センサ等の入力機器4の状態を制御するシステムである。この制御のため、制御システムは、イーサネット(登録商標)等の共通ネットワーク6に接続されたパーソナルコンピュータ8と、この共通ネットワーク6を介してパーソナルコンピュータ8に接続されかつオペレータにより操作される複数のプログラマブル表示器10と、複数のプログラマブル表示器10それぞれにRS232C等の専用ネットワークを介して個別に接続された複数のPLC12と、を備えている。プログラマブル表示器10は、データの書き込み回数が有限である記録媒体であるCFカード14を接続することができ、CFカード14に、上記制御システムにおける各種のデータの書き込み、読出しを行うことができるようになっている。
【0019】
以上の制御システムにおけるプログラマブル表示器10の一般的な構成は周知であるので、その詳細を略し、図2にその要部の構成を示す。
【0020】
図2で示すように、プログラマブル表示器10は、バッファコントローラ16、少なくとも2つのバッファ18,20を有し、バッファコントローラ16は、以下に説明するように、両バッファ18,20を用いてCFカード14に対するデータの書き込みを制御している。このデータはPLC12からのロギングデータである。ただし、上記したように、図2で示すプログラマブル表示器10のブロック構成は、CPU、インターフェース、カードドライバ、等を略し、説明の理解のために概念で示したものであり、PLC12のロギングデータが直接、バッファ18,20に書き込まれることに限定するものでは何等ない。例えば、PLC12のロギングデータがバッファコントローラ16を経由してバッファ18,20に書き込まれるブロックの構成にしたり、別のブロックを経由してロギングデータがバッファ18,20に書き込まれるブロック構成とすることができる。
【0021】
図3で示すように、CFカード14は書き込み回数が有限な小型フラッシュメモリカードであって、FAT領域(インデックス領域)、データ領域、その他図示を略するがルートディレクトリエントリ等の領域を有する。ここでは、その他の領域の説明は略する。$a,$b,$cはセクタ番号である。なお、バッファ18,20からCFカード14にデータを書き込むときのFATの取得、CFカード14内の利用可能なメモリ空間の決定、等の説明は略する。
【0022】
このようなCFカード14は、書き込み回数が一定以上越えると正常に動作しなくなる。また、短い周期でデータのバックアップを繰り返すと短期間で書き込みの寿命回数に達するので、頻繁にCFカード14を交換しなければならなくなる。
【0023】
そこで、実施の形態では、バッファコントローラ16の制御により、図4(a)で示す複数回のデータd1を、まず、図4(b)のようにバッファ18に書き込む。次いで、図4(d)のようにバッファ18に書き込んだ複数回のデータd1をCFカード14に1回でデータを書き込みデータw1として書き込む。
【0024】
また、バッファコントローラ16の制御により、図4(a)で示す複数回分のデータd2を、図4(c)のようにバッファ20に書き込む。次いで、図4(d)のようにバッファ20に書き込んだ複数回のデータd2をCFカード14に1回でデータを書き込みデータw2として書き込む。
【0025】
この複数回分のデータd2の書き込み中に、図4(a)のように次のデータd3が入力されるときは、このデータd3を図4(b)で示すようにバッファ18に書き込むようにしている。
【0026】
上記において、両バッファ18,20交互に複数回分のデータを書き込んでいるが、一方のバッファのみに複数回分のデータを書き込み、一方のバッファから複数回分のデータをCFカード14に書き込み中に次のデータがある場合に、他方のバッファをこの次のデータに対処するバッファとしてもよい。
【0027】
また、バッファの個数は上記では2つであるが、3つ以上でもよいことはもちろんである。バッファはハードウェア的に別体構成であることに限定するものではなく、同一のバッファを領域分割してよいことはもちろんである。
【0028】
以上により、この実施の形態では、CFカード14に複数回分のデータを1回で書き込み、この書き込んだ複数回分のデータを一度でCFカード14に書き込むので、CFカード14に対する書き込み回数が減り、CFカード14の書き込み寿命を延ばすことができる。実施の形態では、CFカード14への複数回分のデータの書き込み中に次のデータが入力されるときは、別のバッファ22に次のデータを書き込むので、データが損なうことがない。
【0029】
図2ではバッファ数がバッファ18,20の2個のダブルバッファとし、一方のバッファ18,20に複数回分のデータを書き込み、当該バッファ18,20に書き込んである複数回分のデータをCFカード14に1回で書き込む一方、CFカード14への複数回分のデータの書き込み中に次のデータが入力されるときは、他方のバッファ20,18に該次のデータを書き込むようにした。
【0030】
このようなバッファ構成は、図5で示す方式でもよい。
【0031】
図5では、バッファ数がバッファB1−Bnのn個とし、バッファB1にPLCからのロギングデータを複数回書き込み、この書き込みがバッファB1に対するデータの書き込み容量に達すると、次のバッファB2にPLCからのロギングデータを書き込む。このようにして、順次に、PLCからのロギングデータを書き込む。こうしてすべてのバッファB1−Bnに対する書き込みがそれぞれのバッファ容量になると、CFカード14に1回でロギングデータを書き込む。なお、図5では、バッファB1−Bnはプログラマブル表示器12内部の構成であり、他のブロック構成は図示を略し、単にCFカード14とのデータの書き込みの関係で示している。
【0032】
図5の場合でも、図2と同様に、さらに別のバッファを用いて、上記バッファB1−BnからCFカード14にデータの書き込み処理中にデータが入力されると、当該別のバッファにそのデータを書き込むようにしてもよい。当該別のバッファを図5のように複数備えることでもよい。
【0033】
次に、上記のようにCFカード14にデータの書き込み中に装置電源が停止し、書き込み処理が途中で強制終了されてしまうと、FAT領域が損なわれてデータの復元ができなくなる可能性がある。
【0034】
そこで、図6(a)で示すように、装置電源が完全に0に停止するまでに当該電源が落ちることを検出して発生するパワーフェイル信号が時刻t0で与えられる。そして、バッファB1−Bnは、上記パワーフェイル信号が時刻t0で発生してから期間(パワーフェイル期間)T1、例えば50ms経過した後の時刻t1で装置内システムが作動できないような電源値例えば0あるいは0近くまでは低下するまでの間に、図6(b)で示すように、書き込みデータのすべてをCFカード14に書き込んで更新することができるようなバッファである。この場合、この更新にハッチングで示すように時刻t1を経過した後もさらに時刻t2まで要する場合、データが消失してしまう。これを防止するため、パワーフェイル期間T1内に、バッファB1−BnからCFカードへのデータの書き込みが完了する必要がある。T2(<T1)はその書き込み期間である。そのために、バッファB1−Bnのサイズを適正に設定することが必要となる。
【0035】
図7で示すようにファイルオープンして、ステップn1でバッファB1−BnのデータをCFカード14に書き込む。次いでステップn2で書き込みが完了していないバッファB1−Bnがあるか否かを判断し、あればステップn1に戻って書き込みを行い、書き込みが完了すれば、クローズする。このファイルがオープンしてからクローズするまでの期間T2が上記パワーフェイル期間T1内であることが必要である。
【0036】
以上のようにこの実施の形態では、CFカード14に複数回分のデータを1回で書き込み、この書き込んだ複数回分のデータを一度でCFカード14に書き込むので、CFカード14に対する書き込み回数が減り、CFカード14の書き込み寿命を延ばすことができる。実施の形態では、CFカード14への複数回分のデータの書き込み中に次のデータが入力されるときは、別のバッファ22に次のデータを書き込むので、データが損なうことがない。さらに、パワーフェイル期間中にCFカード14へのデータの書き込みを完了することができるバッファB1−Bnを用いるので、CFカード14のデータの消失を防止することができる。
【図面の簡単な説明】
【0037】
【図1】図1は本発明の実施の形態に係る制御システムの概略構成を示す図である。
【図2】図2は主にプログラマブル表示器のブロック構成を示す図である。
【図3】図3はCFカードの構成を示す図である。
【図4】図4はプログラマブル表示器のバッファからCFカードへのロギングデータの書き込みを示すタイミングチャートである。
【図5】図5はプログラマブル表示器のバッファの別の構成例を示す図である。
【図6】図6はパワーフェイル期間とCFカードへのデータ書き込み期間とを示す図である。
【図7】図7は図5のバッファからCFカードへのデータの書き込み動作を示すフローチャートである。
【符号の説明】
【0038】
10 プログラマブル表示器
12 PLC
14 CFカード
16 バッファコントローラ
18,20 バッファ

【特許請求の範囲】
【請求項1】
データの書き込み回数が有限である記録媒体に対するデータ書き込み方法において、
少なくとも2つのバッファの一方に複数回分のデータを書き込むステップと、
上記バッファに書き込んである複数回分のデータを上記記録媒体に1回で書き込むステップと、
上記記録媒体へのデータの書き込み中に次のデータが入力されるときは、他方のバッファに該次のデータを書き込むステップと、
を有することを特徴とするデータ書き込み方法。
【請求項2】
データの書き込み回数が有限である記録媒体に対するデータ書き込み方法において、
複数のバッファに対して順次に複数回分のデータを書き込むステップと、
上記複数のバッファへの複数回分のデータの書き込みが完了すると、上記記録媒体に1回で上記複数のバッファに書き込まれているデータを書き込むステップと、
を有することを特徴とするデータ書き込み方法。
【請求項3】
上記バッファから上記記録媒体へのデータの書き込み完了期間をパワーフェイル期間内とする、ことを特徴とする請求項1または2に記載のデータ書き込み方法。
【請求項4】
上記記録媒体がCFカードである、ことを特徴とする請求項1ないし3のいずれかに記載の表示器。
【請求項5】
データの書き込み回数が有限である記録媒体が装着可能であり、かつ、この装着した記録媒体にデータを書き込むことが可能な表示器において、
少なくとも2つのバッファと、
一方のバッファに複数回分のデータを書き込み、上記記録媒体に対してはこの書き込んだ複数回分のデータを1回で書き込み制御する一方、上記記録媒体への上記複数回分のデータの書き込み中に次のデータが入力されるときは、他方のバッファに該次のデータを書き込み制御するバッファコントローラと、
を備えることを特徴とする表示器。
【請求項6】
データの書き込み回数が有限である記録媒体が装着可能であり、かつ、この装着した記録媒体にデータを書き込むことが可能な表示器において、
複数のバッファと、
これら複数のバッファに対して順次に複数回分のデータを書き込み、これら複数のバッファへの複数回分のデータの書き込みが完了すると、上記記録媒体に1回で上記複数のバッファに書き込まれているデータを書き込む制御を行うバッファコントローラと、
を備えることを特徴とする表示器。
【請求項7】
上記バッファコントローラは、上記バッファから上記記録媒体への全データの書き込み完了期間をパワーフェイル期間内に制御する、ことを特徴とする請求項5または6に記載の表示器。
【請求項8】
上記記録媒体がCFカードである、ことを特徴とする請求項5ないし7のいずれかに記載の表示器。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2008−146446(P2008−146446A)
【公開日】平成20年6月26日(2008.6.26)
【国際特許分類】
【出願番号】特願2006−334367(P2006−334367)
【出願日】平成18年12月12日(2006.12.12)
【出願人】(501088257)株式会社ウィン・システム (37)
【出願人】(000167288)光洋電子工業株式会社 (354)
【Fターム(参考)】