(57)【要約】【課題】  ブートローダーを書き換えるためにはデータコンバータのような特別な機器、および専用プログラムが必要なので、システム構成および書き換え手順が複雑になり、かつ書き換えに長時間を要していたという課題を解決する。【解決手段】  プログラムが格納されたメモリカードがメモリスロットに挿入されると、書き込み制御部は制御プロセッサを停止させ、書き換え可能メモリに格納されたプログラムをメモリカードに格納されたプログラムに書き換えた後、制御プロセッサの停止を解除するようにした。また、メモリカードの代わりに、通信回線を経由してプログラムを取得するようにした。ブートローダーを書き換えるための特別な機器や専用プログラムが必要でなくなり、かつ書き込み時間を短縮することができる。【選択図】                    図１
2008257415.tif 000002
【特許請求の範囲】
【請求項１】
書き換え可能なメモリと、この書き換え可能なメモリに格納されたプログラムを読み出し、このプログラムに基づいて制御を行う制御プロセッサを具備したコントローラにおいて、
プログラムが格納されたメモリカードが挿入されるメモリカードスロットと、
このメモリカードスロットにメモリカードが挿入されると、前記制御プロセッサに停止信号を出力し、前記メモリカードからプログラムを読み出して前記書き換え可能なメモリに書き込み、書き込みが終了すると前記停止信号を解除する書き込み制御部と、
を具備したことを特長とするプログラム書き込み機能を有するコントローラ
【請求項２】
書き換え可能なメモリと、この書き換え可能なメモリに格納されたプログラムを読み出し、このプログラムに基づいて制御を行う制御プロセッサを具備したコントローラにおいて、
通信回線が接続され、この通信回線を介して送られてきたデータを受信する通信インターフェイスと
前記通信インターフェイスが受信したデータが入力され、前記通信インターフェイスがプログラムを受信すると、前記制御プロセッサに停止信号を出力し、前記受信したプログラムを前記書き換え可能なメモリに書き込み、書き込みが終了すると前記停止信号を解除する書き込み制御部と、
を具備したことを特長とするプログラム書き込み機能を有するコントローラ
【請求項３】
前記書き換え可能メモリはフラッシュＲＯＭであることを特長とする請求項１若しくは請求項２記載のプログラム書き込み機能を有するコントローラ
【請求項４】
前記プログラムはブートローダーであることを特長とする請求項１乃至請求項３いずれかに記載のプログラム書き込み機能を有するコントローラ。
【請求項５】
前記書き込み制御部はＦＰＧＡで構成されることを特長とする請求項１乃至請求項４いずれかに記載のプログラム書き込み機能を有するコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プロセスあるいは機械を制御するコントローラに関し、特別なツールを用いないでブートローダーを書き換えることができるコントローラに関するものである。
【背景技術】
【０００２】
図３に、コントローラを用い、このコントローラのブートローダーを書き換えることができる制御システムの構成を示す。ブートローダーはコントローラを起動するために必要なプログラムであり、ブートローダーがないとコントローラ自身を起動することすらできない。そのため、コントローラ単体ではブートローダーを書き換えることができず、そのための特別な装置と専用プログラムが必要になる。
【０００３】
図３において、１０はパソコン、１２は通信インターフェイスである。パソコン１０と通信インターフェイス１２はイーサネット（登録商標）等のＬＡＮ(Local Area Network)１１で接続されている。１３はコントローラであり、ブートローダーを含むプログラムが格納されているフラッシュＲＯＭ１４を内蔵している。１５はブートローダーを書き換えるためのデータコンバータである。通信インターフェイス１２、コントローラ１３、データコンバータ１５は専用ＩＯバス１６で接続されている。
【０００４】
このような構成において、コントローラ１３のブートローダーを書き換えるときには、ＬＡＮ１１、通信インターフェイス１２、専用ＩＯバス１６を介して、パソコン１０から新しいブートローダーをデータコンバータ１５に送信する。データコンバータ１５は受信したブートローダーをコントローラ１３内のフラッシュＲＯＭ１４に書き込み、コントローラ１３を再起動する。このようにすることにより、ブートローダーを書き換えることができる。
【特許文献１】特開２００７−６６１２３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、このような構成では、ブートローダーを書き換えるためだけにデータコンバータ１５、およびこのデータコンバータ１５上で動作する専用プログラムが必要になり、構成が複雑になるという課題があった。また、パソコン１０から書き換えるブートローダーを一旦データコンバータ１５に送信してから書き換えなければならず、手順が複雑になるという課題もあった。
【０００６】
従って本発明の目的は、データコンバータ１５や専用プログラムを用いることなくブートローダーを書き換えることができるコントローラを提供することにある。
【課題を解決するための手段】
【０００７】
このような課題を達成するために、本発明のうち請求項１記載の発明は、
書き換え可能なメモリと、この書き換え可能なメモリに格納されたプログラムを読み出し、このプログラムに基づいて制御を行う制御プロセッサを具備したコントローラにおいて、
プログラムが格納されたメモリカードが挿入されるメモリカードスロットと、
このメモリカードスロットにメモリカードが挿入されると、前記制御プロセッサに停止信号を出力し、前記メモリカードからプログラムを読み出して前記書き換え可能なメモリに書き込み、書き込みが終了すると前記停止信号を解除する書き込み制御部と、
を具備したものである。特別な機器やプログラムを用いることなく、ブートローダーを書き換えることができる。
【０００８】
請求項２記載の発明は、
書き換え可能なメモリと、この書き換え可能なメモリに格納されたプログラムを読み出し、このプログラムに基づいて制御を行う制御プロセッサを具備したコントローラにおいて、
通信回線が接続され、この通信回線を介して送られてきたデータを受信する通信インターフェイスと
前記通信インターフェイスが受信したデータが入力され、前記通信インターフェイスがプログラムを受信すると、前記制御プロセッサに停止信号を出力し、前記受信したプログラムを前記書き換え可能なメモリに書き込み、書き込みが終了すると前記停止信号を解除する書き込み制御部と、
を具備したものである。特別な機器やプログラムを用いることなく、ブートローダーを書き換えることができる。
【０００９】
請求項３記載の発明は、請求項１若しくは請求項２記載の発明において、
前記書き換え可能メモリとしてフラッシュＲＯＭを用いたものである。コストを下げることができる。
【００１０】
請求項４記載の発明は、請求項１乃至請求項３いずれかに記載の発明において、
前記プログラムはブートローダーであることを特長としたものである。特別な機器やプログラムを用いることなく書き換えることができる。
【００１１】
請求項５記載の発明は、請求項１乃至請求項４いずれかに記載の発明において、
前記書き込み制御部をＦＰＧＡ(Field Programmable Gate Array)で構成したものである。内部構成を自由に変更できる。
【発明の効果】
【００１２】
以上説明したことから明らかなように、本発明によれば次のような効果がある。
請求項１，２、３、４および５の発明によれば、プログラムが格納されたメモリカードがメモリスロットに挿入されると、書き込み制御部は制御プロセッサを停止させ、書き換え可能メモリに格納されたプログラムをメモリカードに格納されたプログラムに書き換えた後、制御プロセッサの停止を解除するようにした。また、メモリカードの代わりに、通信回線を経由してプログラムを取得するようにした。
【００１３】
データコンバータのような特別な機器、および専用プログラムを用いないでブートローダーを書き換えることができる。そのため、システム構成を簡略化することができ、またデータの流れが簡略化されるので、書き込み時間を短縮することができるという効果がある。またコントローラが設置されている現場で書き換え作業を行うことができるという効果もある。さらに、通信回線を用いてプログラムを送信することにより、遠隔地から複数のコントローラのプログラムを一度に書き換えることができるという効果もある。
【発明を実施するための最良の形態】
【００１４】
以下本発明を図面を用いて詳細に説明する。図１は本発明に係るコントローラの一実施例を示す構成図である。図１において、２０はコントローラであり、メモリカードスロット２１、書き込み制御部２２、フラッシュＲＯＭ２３および制御プロセッサ２４で構成される。書き込み制御部２２、フラッシュＲＯＭ２３、および制御プロセッサ２４はアドレス・データバス２５で接続されている。制御プロセッサ２４はフラッシュＲＯＭ２３に格納されたブートローダーで起動し、同じフラッシュＲＯＭ２３に格納されたプログラムに基づいて制御動作を実行する。なお、アドレス・データバス２５はフラッシュＲＯＭ２３にデータを書き込み、また読み出すためのアドレスバス、データバス、および制御線で構成されている。
【００１５】
３０はブートローダーが格納されたメモリカードである。メモリカード３０としては、例えばＣＦ(Compact Flash)カードが用いられる。ブートローダーを書き換えるときは、メモリカード３０をメモリカードスロット２１に挿入する。
【００１６】
フラッシュＲＯＭはフラッシュメモリとも言い、電気的に消去と再書き込みが可能な不揮発性メモリである。同様な特性を有するメモリにＥＥＰＲＯＭ(Electronically Erasable and Programmable Read Only Memory)がある。フラッシュＲＯＭはバイト単位で消去できないという欠点はあるが、ＥＥＰＲＯＭに比べてメモリセルのトランジスタ数を少なくすることができ、安価に製造できるという特長がある。
【００１７】
書き込み制御部２２は、例えばＦＰＧＡ(Field Programmable Gate Array)で構成される。ＦＰＧＡはプログラミングすることができるロジックＩＣであり、プログラムを変えることにより、ユーザが内部ロジックを自由に書き換えることができるＩＣである。
【００１８】
メモリカードスロット２１にメモリカード３０が挿入されると、書き込み制御部２２は先ず制御プロセッサ２４に停止信号を出力してその動作を停止させる。そして、メモリカード３０に格納されたブートローダーを読み込み、アドレス・データバス２５を制御してこのプログラムをフラッシュＲＯＭ２３の指定されたアドレスに書き込む。ブートローダーの書き込み中に制御プロセッサ２４が動作すると、制御プロセッサ２４が誤動作する恐れがあるので、書き込み制御部２２はブートローダーを書き込む前に、制御プロセッサ２４に停止信号を出力して停止させる。
【００１９】
ブートローダーの書き込みが終了すると、書き込み制御部２２は停止信号を解除する。制御プロセッサ２４は動作を開始し、書き込まれたブートローダーを起動する。ブートローダーは指定されたプログラムを実行し、コントローラ２０が動作を開始する。
【００２０】
図２に本発明の他の実施例を示す。この実施例は、シリアル通信などの通信手段を用いてブートローダーのデータを取得するようにしたものである。なお、図１と同じ要素には同一符号を付し、説明を省略する。
【００２１】
図２において、４０はコントローラであり、通信インターフェイス４１、書き込み制御部２２、フラッシュＲＯＭ２３、および制御プロセッサ２４で構成されている。通信インターフェイス４１は通信回線４２に接続されている。この通信回線４２を介して外部からブートローダーのデータが送信される。通信インターフェイス４１は、受信したブートローダーのデータを書き込み制御部２２に出力する。
【００２２】
ブートローダーの全データを受信すると、書き込み制御部２２は制御プロセッサ２４に停止信号を出力して、制御プロセッサ２４を停止させる。そして、アドレス・データバス２５を制御して、ブートローダーのデータをフラッシュＲＯＭ２３の指定されたアドレスに書き込んだ後、制御プロセッサ２４に出力していた停止信号を解除する。制御プロセッサ２４は書き込まれたブートローダーを実行する。
【００２３】
図１実施例では、ブートローダーが格納されたメモリカード３０をブートローダーを書き換えるコントローラのメモリスロット２１に挿入しなければならない。すなわち、１台毎にブートローダーを書き換える作業を行わなければならない。これに対して図２実施例では、通信回線４２に接続された複数のコントローラのブートローダーを、遠隔地から同時に書き換えることができるという特長がある。
【００２４】
なお、通信回線４２はシリアル通信に限られることはなく、任意の通信回線を使用することができる。例えば、図３のようにＬＡＮ１１、専用ＩＯバス１６を介してコントローラ１３がパソコン１０に接続されている制御システムでは、このＬＡＮ１１、専用ＩＯバス１６を経由して、パソコン１０からコントローラ１３にブートローダーのデータを送信して書き換えるようにすることもできる。この場合、専用ＩＯバス１６に複数のコントローラが接続されていると、これらのコントローラのブートローダーを同時に書き換えることができる。
【００２５】
なお、図１、図２実施例では書き込み制御部２２をＦＰＧＡで構成するようにしたが、これに限られることはない。例えばワンチップマイコンを用いて構成することもできる。
【００２６】
また、これらの実施例ではブートローダーを書き換えることとして説明したが、ブートローダーに限られることはなく、システムプログラムやアプリケーションプログラムを新たに書き込み、また書き換える用途に用いることもできる。
【図面の簡単な説明】
【００２７】
【図１】本発明の一実施例を示す構成図である。
【図２】本発明の他の実施例を示す構成図である。
【図３】従来のブートローダー書き換え機能付き制御システムの構成図である。
【符号の説明】
【００２８】
２０、４０  コントローラ
２１  メモリカードスロット
２２  書き込み制御部
２３  フラッシュＲＯＭ
２４  制御プロセッサ
２５  アドレス・データバス
３０  メモリカード
４１  通信インターフェイス
４２  通信回線
【図１】
2008257415.tif 000003
【図２】
2008257415.tif 000004
【図３】
2008257415.tif 000005