(57)【要約】【課題】プログラマブルコントローラの高速化を図る。【解決手段】ラダープログラムを構成するプログラム命令が格納してあるラダープログラム格納メモリ５と、上記プログラム命令に従い制御対象をシーケンス制御するプログラム実行ＣＰＵ３と、を備え、上記ソフトウエア上のプログラム命令からハードウエア化プログラム命令を生成するハードウエア化ＣＰＵ８ａを有し、プログラム実行ＣＰＵ３においては、ハードウエア化ＣＰＵ８ａに制御対象のデータを渡す。ハードウエア化ＣＰＵ８ａは、ハードウエア化プログラム命令に従い、そのデータを論理演算し、その演算結果をプログラム実行ＣＰＵ３に渡す。プログラム実行ＣＰＵ３は、その演算結果から制御対象を制御する。【選択図】図１
2010134592.tif 000002
【特許請求の範囲】
【請求項１】
ラダープログラムを構成する複数のプログラム命令が格納してあるプログラムメモリと、上記プログラム命令に従い制御対象をシーケンス制御するプログラム実行ＣＰＵと、を備えたプログラマブルコントローラであって、
ラダープログラムを構成するプログラム命令をハードウエア化するハードウエア化ＣＰＵと、
ハードウエア化されたプログラム命令を格納するハードウエア化プログラム命令格納部と、
を有すると共に、
プログラム実行ＣＰＵは、ハードウエア化ＣＰＵに制御対象のデータを渡し、
ハードウエア化ＣＰＵは、上記格納部内のハードウエア化プログラム命令に従い、上記データを論理演算し、その演算結果をプログラム実行ＣＰＵに渡し、
プログラム実行ＣＰＵは、渡された演算結果に従い制御対象を制御する、ことを特徴とするプログラマブルコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械等の制御に用いられるプログラマブルコントローラ（ＰＬＣ）にかかり、特に、その制御動作を高速化することに関するものである。
【背景技術】
【０００２】
生産工場等に設置されるファクトリーオートメーション（ＦＡ）の制御装置として、プログラマブルコントローラが用いられている。このプログラマブルコントローラは、複数のユニットから構成される。この複数のユニットとしては、電源ユニット、ＣＰＵユニット、入力ユニット、出力ユニット、通信ユニット、その他の高機能ユニット、等がある。ＣＰＵユニットは、内部にＣＰＵ、Ｉ／Ｏメモリ、プログラムメモリ等を有し、このＣＰＵは、入力ユニットで入力した信号をＩ／Ｏメモリに取り込むＩＮリフレッシュ処理を行い、プログラムメモリ内のシーケンス制御用のラダープログラムに基づき演算実行し、その演算実行結果をＩ／Ｏメモリに書き込んで出力ユニットに送り出すＯＵＴリフレッシュ処理を行い、その後、通信ユニットを介して通信ネットワーク上の他のＰＬＣとデータ送受信を行ったり、ＣＰＵユニットに備えられた通信ポートを介して外部のパーソナルコンピュータ等とデータ送受信などを行ったりする周辺処理を行う一連の処理を繰り返す。入力ユニットにはセンサ等が、出力ユニットにはアクチュエータ等が接続される。センサ等は工場内の機械や設備等の状態をセンシングし、その情報を入力ユニットに入力し、アクチュエータ等は出力ユニットからの出力に応答して工場内の機械や設備等を駆動する。
【０００３】
こうしたプログラマブルコントローラは、上記プログラマブルコントローラ内のユーザプログラムであるラダープログラムの命令（プログラム命令）の羅列を、順次読み出し、解析し、その結果に基づき演算実行するようになっている。このプログラム命令は、接点命令などの基本命令と、数値演算などの応用命令とに大別される。ラダープログラムでは、基本命令の出現比率が高く、この演算を高速に処理することが、全体的な高速演算の実現につながる。基本命令は演算処理が単純であるが出現比率が高く、応用命令は演算処理が基本命令に比べ複雑であるが出現比率が低いため、コストパフォーマンスに優れるからである。基本命令と応用命令の分担は、製品の価格と密接で、シーケンスＣＰＵの集積度によって定められる。集積度のより高いシーケンス演算専用ＬＳＩを使用すれば、価格も上昇するが、多くの命令をシーケンスＣＰＵで処理でき、演算性能の高いものにできる。
【０００４】
ところで、上記では、ラダープログラムの実行において基本命令の所で高速になり、応用命令の所で速度低下しているが、近年、プログラマブルコントローラにおいては、その動作全体のより高速化への要求が高まってきている。しかしながら、既存のプログラマブルコントローラでは内蔵ＣＰＵの処理能力に依存しているために、このＣＰＵの処理能力が低い場合では、プログラマブルコントローラの高速化には限界があった。なお、プログラマブルコントローラの先行特許文献を下記する。
【特許文献１】特開２００４−３３４４２９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明においては、プログラム命令が基本命令、応用命令を区別することなく、扱うことで、プログラム全体の処理高速化を図り、プログラマブルコントローラの動作上の高速化を達成しようとするものである。
【課題を解決するための手段】
【０００６】
本発明によるプログラマブルコントローラは、ラダープログラムを構成する複数のプログラム命令が格納してあるプログラムメモリと、上記プログラム命令に従い制御対象をシーケンス制御するプログラム実行ＣＰＵと、を備えたプログラマブルコントローラであって、ラダープログラムを構成するプログラム命令をハードウエア化するハードウエア化ＣＰＵと、ハードウエア化されたプログラム命令を格納するハードウエア化プログラム命令格納部とを有すると共に、プログラム実行ＣＰＵは、ハードウエア化ＣＰＵに制御対象のデータを渡し、ハードウエア化ＣＰＵは、上記ハードウエア化プログラム命令によりデータを論理演算し、その演算結果をプログラム実行ＣＰＵに渡し、プログラム実行ＣＰＵは、渡された演算結果に従い制御対象を制御することを特徴とするものである。
【発明の効果】
【０００７】
本発明によれば、ラダープログラムをソフトウエア上ではなく、ハードウエア化したプログラム命令で演算実行させるので、プログラマブルコントローラの高速化を図ることができる。
【発明を実施するための最良の形態】
【０００８】
以下、添付した図面を参照して、本発明の実施の形態に係るプログラマブルコントローラを説明する。
【０００９】
図１を参照して、このプログラマブルコントローラは、ＣＰＵモジュール１と、複数のＩ／Ｏモジュール２とを含む。ＣＰＵモジュール１は、シーケンスプログラムを実行するもので各構成部分を制御するプログラム実行ＣＰＵ３と、システムプログラム格納メモリ４と、ラダープログラム格納メモリ５と、データメモリ６と、バスインターフェース７と、ラダープロセッサ８とを備える。９はバスを、１０はＩ／Ｏ機器を示す。システムプログラム格納メモリ４は、システム制御に必要なシステムプログラムを格納する。ラダープログラム格納メモリ５は、ラダープログラムを格納する。データメモリ６は、プログラム実行ＣＰＵ３が作業に用いるワークエリアと、プログラム命令を実行した際に、Ｉ／Ｏ機器１０に対する入出力状況を記憶するＩ／Ｏ格納エリアと、その他のエリアとを有する。バスインターフェース７は、ＣＰＵモジュール１とＩ／Ｏモジュール２とをインターフェースする。
【００１０】
ラダープロセッサ８は、ラダープログラムを構成するプログラム命令をハードウエア化するハードウエア化ＣＰＵ８ａと、ラダープログラム格納メモリ５内のラダープログラムをハードウエア化するためのソフトウエアが格納されるハードウエア化ソフトウエア格納メモリ８ｂと、ハードウエア化ＣＰＵ８ａによりハードウエア化されたプログラム命令が格納されるハードウエア化プログラム命令格納部８ｃと、を有する。
【００１１】
以上の構成を備えた実施の形態のプログラマブルコントローラにおいては、以下の動作を行うようになっている。
【００１２】
まず、プログラム実行ＣＰＵ３が、ラダープログラムをラダープロセッサ８内のハードウエア化ＣＰＵ８ａに入力させる。プログラム実行ＣＰＵ３から送られるラダープログラムは、多数のプログラム命令から構成されている。このプログラム命令には、基本命令（シーケンス命令）、ＯＵＴ命令、応用命令、ＥＮＤ命令、があり、応用命令には、ＯＲ命令、ＡＮＤ命令、ＭＯＶＥ命令、等がある。図２で示すように、ステップ１では、ラダープログラムの母線上につながる接点命令Ｘ０（ＬＤ命令）、接点命令Ｘ１（ＯＲ命令）、接点命令Ｘ２（ＡＮＤ命令）、出力命令Ｙ０(ＯＵＴ命令）と処理したのち、ステップ２では、母線につながる次の接点命令Ｘ３（ＬＤ命令）、接点命令Ｘ４（ＡＮＤ命令）、接点命令Ｙ１ (ＯＵＴ命令）を実行していき、…ステップｎでは、接点命令Ｘｎ（ＬＤ命令）、接点命令Ｙｎ (ＯＵＴ命令）を実行していき、ラダープログラムの最後に有る図示略のＥＮＤ命令を実行して、再び、接点命令Ｘ０（ＬＤ命令）に戻り、同様な処理を繰り返し行う（スキャン処理）。
【００１３】
ラダープロセッサ８内のハードウエア化ＣＰＵ８ａは、プログラム実行ＣＰＵ３から入力された図２で示すラダープログラムをハードウエア化ソフトウエア格納メモリ８ｂ内のソフトウエアにより、例えば図３で示すようにステップｎ１、ｎ２，…に含む接点命令、出力命令をハードウエア化した論理ブロック群Ｈ１，Ｈ２，…，Ｈｎに変換する。こうしてラダープログラムの各ステップをハードウエア化してなるハードウエア化プログラム命令８ｃが生成される。このハードウエア化プログラム命令８ｃは、ラダープログラムを構成する各ステップのプログラム命令をハードウエア化したものである。
【００１４】
次に、プログラム実行ＣＰＵ３においては、Ｉ／Ｏモジュール２を経由して受け取る制御対象たるＩ／Ｏ機器１０からのデータをラダープロセッサ８に渡す。ラダープロセッサ８は、内部のハードウエア化ＣＰＵ８ａにより、そのデータを、格納部８ｃ内の対応するハードウエア化プログラム命令に従い、演算実行させたうえで、その演算結果をプログラム実行ＣＰＵ３に渡す。このようにして、実施の形態では、ラダープログラムをソフトウエア上ではなく、ハードウエア化したプログラム命令で演算実行させるので、プログラマブルコントローラの高速化を図ることができる。
【図面の簡単な説明】
【００１５】
【図１】図１は本発明の実施の形態にかかるプログラマブルコントローラの構成を示す図である。
【図２】図２はラダー図である。
【図３】図３は本発明の実施の形態にかかる方法に関わるプログラマブルコントローラのハードウエア化プログラム命令を示す図である。
【符号の説明】
【００１６】
１  ＣＰＵモジュール
２  Ｉ／Ｏモジュール
３  プログラム実行ＣＰＵ
４  システムプログラム格納メモリ
５  ラダープログラム格納メモリ
６  データメモリ
７  バスインターフェース
８  ラダープロセッサ
８ａ  ハードウエア化ＣＰＵ
８ｂ  ハードウエア化ソフトウエア格納メモリ
８ｃ  ハードウエア化プログラム命令格納部
【図１】
2010134592.tif 000003
【図２】
2010134592.tif 000004
【図３】
2010134592.tif 000005