(57)【要約】  モータ等の負荷をインバータ制御するドライブ制御部とＰＬＣ機能を実行するＰＬＣ部とを有するＰＬＣ機能内蔵型ドライブ制御装置において、制御パラメータの識別子を格納する制御パラメータ識別子設定領域と、制御パラメータの値を一時的に格納する制御パラメータ格納領域とを備え、ドライブ制御部は、制御パラメータ識別子設定領域で読み出し対象として指定された識別子に対応する制御パラメータの値をドライブ制御部の制御パラメータから読み出して制御パラメータ格納領域に書き込み、制御パラメータ識別子設定領域で書き込み対象として指定された識別子に対応する制御パラメータの更新値を制御パラメータ格納領域から読み出してドライブ制御部の制御パラメータに書き込む制御パラメータ交換制御部を備える。
2016157489.tif 000002
【特許請求の範囲】
【請求項１】
ラダーの演算を行うラダー演算部と算術演算を行う算術演算部とを有するＰＬＣ部と、ドライブ主回路により負荷を制御するドライブ制御部を有するＰＬＣ機能内蔵型ドライブ制御装置であって、
前記ドライブ制御部の制御パラメータのうち、読み出し対象又は書き込み対象の制御パラメータの識別子を格納する制御パラメータ識別子設定領域と、当該識別子に対応付けて制御パラメータの値を一時的に格納する制御パラメータ格納領域とを有する制御パラメータ情報記憶部を備え、
前記ドライブ制御部は、前記制御パラメータ識別子設定領域で読み出し対象として指定された識別子に対応する制御パラメータの値を前記ドライブ制御部から読み出して前記制御パラメータ格納領域に書き込み、前記制御パラメータ識別子設定領域で書き込み対象として指定された識別子に対応する制御パラメータの更新値を前記制御パラメータ格納領域から読み出して前記ドライブ制御部に書き込む制御パラメータ交換制御部を備えることを特徴とするＰＬＣ機能内蔵型ドライブ制御装置。
【請求項２】
前記制御パラメータ識別子設定領域は、制御パラメータごとにＰＬＣ部側の該制御パラメータの識別子と、ドライブ制御部側の該制御パラメータの識別子とを対応づけて格納していることを特徴とする請求項１に記載のＰＬＣ機能内蔵型ドライブ制御装置。
【請求項３】
前記制御パラメータ識別子設定領域は、さらに、制御パラメータごとにＰＬＣ部からドライブ制御部へ渡される制御パラメータなのか、ドライブ制御部からＰＬＣ部へ渡される制御パラメータなのかを表す受け渡し方向情報を含むことを特徴とする請求項２に記載のＰＬＣ機能内蔵型ドライブ制御装置。
【請求項４】
前記制御パラメータ識別子設定領域は、さらに受け渡しの準備ができたことを表す準備済みフラグ情報を含み、前記ＰＬＣ部および前記制御パラメータ交換制御部は、前記制御パラメータ格納領域への書き込みが完了したときに、当該準備済みフラグ情報をセットし、前記制御パラメータ格納領域からの読み出しが完了したときに、前記準備済みフラグ情報をリセットすることを特徴とする請求項３に記載のＰＬＣ機能内蔵型ドライブ制御装置。
【請求項５】
前記ドライブ制御部は、前記ＰＬＣ部の動作を前記ドライブ制御部の動作と同期させるためのタイミング信号を出力するＰＬＣ同期制御部を備えることを特徴とする請求項１乃至４のいずれか一項に記載のＰＬＣ機能内蔵型ドライブ制御装置。
【請求項６】
前記ＰＬＣ同期制御部は、前記ＰＬＣ部が前記制御パラメータ格納領域から制御パラメータを読み出すためのタイミング信号を出力し、前記ＰＬＣ部は、前記制御パラメータ交換制御部が前記制御パラメータ格納領域から制御パラメータを読み出すためのタイミング信号を出力することを特徴とする請求項１乃至４のいずれか一項に記載のＰＬＣ機能内蔵型ドライブ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ等の負荷を制御するドライブ制御装置に関し、特にＰＬＣ（Programmable Logic Controller）の機能を内蔵するＰＬＣ機能内蔵型ドライブ制御装置に関する。
【背景技術】
【０００２】
従来において、インバータ等を備えてモータ等の負荷の効率的な制御を行うドライブ制御装置では、上位装置としてＰＬＣを接続してシーケンス制御を実現していた。例えば図１２に示す従来のドライブ制御装置１２０ａは、別に設けられるＰＬＣ１１０ａと通信手段１３０ａを介して接続され、図示しない負荷の制御を行うドライブ制御部１２３で用いられる制御パラメータを受け取る。この制御パラメータは、シーケンス制御を実行するＰＬＣ１１０ａのラダー演算部１１１や算術演算部１１２で演算される。【０００３】
さらに近年では、必要とするシーケンス制御が複雑ではない場合には、ドライブ制御装置にＰＬＣオプション装置を組み込んだり、ＰＬＣそのものをドライブ制御装置に内蔵したりすることで、ＰＬＣ機能を内蔵させてシーケンス制御を実現する装置（以下、「ＰＬＣ機能内蔵型ドライブ制御装置」と言う。）も開発されている。（例えば、特許文献１を参照のこと。）【０００４】
例えば、特許文献２に記載されたドライブ制御装置は、図１１に示すように一のＣＰＵ１４０でＰＬＣ部１１０とドライブ制御部１２０の両方を管理し、またＰＬＣ部１１０上にアプリケーションプログラムから呼び出されて実行される関数の形態を有するドライブ制御演算部１１５を設け、このドライブ制御演算部１１５が制御パラメータを直接読み書きすることで、ドライブ主回路１２２を制御している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−２８００９０号公報
【特許文献２】特開２００７−０６８２９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、ドライブ制御装置とＰＬＣを接続して利用する形態は一般的に行われており、それらの装置を用いる利用者は、様々なＰＬＣアプリケーションプログラムを開発し資産として保有している場合が多い。上記特許文献２に記載されたドライブ制御装置は、ＰＬＣ部にドライブ制御部との間で直接制御パラメータの受渡しを行うドライブ制御演算部を設けているが、ドライブ制御部は制御対象に応じて制御パラメータが異なる場合がある。このため、ドライブ制御部ごとにドライブ制御演算部を製作する必要が生じる。また、それまで別置きされていたＰＬＣ上で動作するアプリケーションプログラムをＰＬＣ機能内蔵型ドライブ制御装置に組み込む際にこのドライブ制御演算部とデータの受渡しを行うための修正が必要になり、過去のプログラム資産の再利用効率が悪いという問題がある。【０００７】
本発明はこのような問題点に鑑みてなされたものであり、ＰＬＣ機能とドライブ制御機能とのインターフェースを改良して、システム全体として小型化および低コスト化が可能であり、かつ制御パラメータの異なる種々のドライブ制御部に対して、従来のＰＬＣアプリケーションプログラムの資産を共通に利用でき、ＰＬＣアプリケーションプログラムの開発コストの削減を図ることのできるＰＬＣ機能内蔵型ドライブ制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明に係るＰＬＣ機能内蔵型ドライブ制御装置は、ラダーの演算を行うラダー演算部（１１）と算術演算を行う算術演算部（１２）とを有するＰＬＣ部（１０）と、ドライブ主回路（２４）によりモータ等の負荷を制御するドライブ制御部（２０）を有するＰＬＣ機能内蔵型ドライブ制御装置（１）であって、
前記ドライブ制御部（２０）の制御パラメータのうち、読み出し対象又は書き込み対象として指定された制御パラメータの識別子を格納する制御パラメータ識別子設定領域（５１）と、当該識別子に対応付けて制御パラメータの値を一時的に格納する制御パラメータ格納領域（５２）とを有する制御パラメータ情報記憶部（５０）を備え、
前記ドライブ制御部（２０）は、前記制御パラメータ識別子設定領域（５１）で読み出し対象として指定された識別子に対応する制御パラメータの値を前記ドライブ制御部（２０）から読み出して前記制御パラメータ格納領域（５２）に書き込み、前記制御パラメータ識別子設定領域（５１）で書き込み対象として指定された識別子に対応する制御パラメータの更新値を前記制御パラメータ格納領域（５２）から読み出して前記ドライブ制御部（２０）に書き込む制御パラメータ交換制御部（２１）を備えることを特徴とする。【０００９】
なお、前記制御パラメータ識別子設定領域は、制御パラメータごとにＰＬＣ部側の該制御パラメータの識別子と、ドライブ制御部側の該制御パラメータの識別子とを対応づけて格納するのが好ましい。【００１０】
本発明では、ＰＬＣ部とドライブ制御部との間でデータを直接受け渡すのではなく、データを一時的に格納するＲＡＭ等で構成される制御パラメータ情報記憶部を介して受け渡しを行う。この際、ドライブ制御部側に制御パラメータの受け渡し処理を制御する制御パラメータ交換制御部を設けることによって、ＰＬＣ側についても標準の処理によって制御パラメータの受け渡しが可能になる。【００１１】
また、本発明に係るＰＬＣ機能内蔵型ドライブ制御装置の前記制御パラメータ識別子設定領域は、さらに、制御パラメータごとに該制御パラメータがＰＬＣ部からドライブ制御部へ渡される制御パラメータなのか、ドライブ制御部からＰＬＣ部へ渡される制御パラメータなのかを表す受け渡し方向情報を含むことを特徴とする。好ましくは、前記制御パラメータ識別子設定領域に、受け渡しの準備ができたことを表す準備済みフラグ情報を設け、前記ＰＬＣ部および前記制御パラメータ交換制御部は、前記制御パラメータ格納領域への書き込みが完了したときに、当該準備済みフラグ情報をセットし、前記制御パラメータ格納領域からの読み出しが完了したときに、前記準備済みフラグ情報をリセットするのが良い。これにより、ＰＬＣ部、ドライブ制御部の双方で相手側の負荷状態を検知することができる。【００１２】
なお、制御パラメータ識別子設定領域は、ＰＬＣ部のアプリケーションプログラムによって起動時に自動設定するようにしても良いし、ＰＬＣ部に外部機器と繋がる通信手段を設け、この外部機器から設定するようにしても良い。【００１３】
また、本発明に係るＰＬＣ機能内蔵型ドライブ制御装置の前記ドライブ制御部は、前記ＰＬＣ部の動作を前記ドライブ制御部の動作と同期させるためのタイミング信号を出力するＰＬＣ同期制御部を備えることを特徴とする。【００１４】
本発明では、ＰＬＣ部とドライブ制御部を共通のタイミングで制御スキャンを行うのではなく、ドライブ制御部で生成したタイミング信号でＰＬＣ部が動作するので、ＰＬＣ部はドライブ制御部の仕様や能力に合せた動作が可能になる。【００１５】
また、本発明に係るＰＬＣ機能内蔵型ドライブ制御装置の前記ＰＬＣ同期制御部は、前記ＰＬＣ部が前記制御パラメータ格納領域から制御パラメータを読み出すためのタイミング信号を出力し、前記ＰＬＣ部は、前記制御パラメータ交換制御部が前記制御パラメータ格納領域から制御パラメータを読み出すためのタイミング信号を出力することを特徴とする。【００１６】
本発明では、制御パラメータの書き込み側が書き込み処理を完了した時点で、タイミング信号を出力することによって同期をとる。これにより、より柔軟性のある同期処理が可能になる。
【図面の簡単な説明】
【００１７】
【図１】本発明の第１の実施の形態によるＰＬＣ機能内蔵型ドライブ制御装置のブロック図である。
【図２】図１の属性値情報記憶部における制御パラメータ属性値格納領域のデータ構成を示す説明図である。
【図３】図１の制御パラメータ情報記憶部の制御パラメータ格納領域５３のデータ構成を示す説明図である。
【図４】図１の制御パラメータ情報記憶部のＰＬＣ部設定/参照用領域のデータ構成を示す説明図である。
【図５】図１のドライブ制御部からＰＬＣ部の制御パラメータ受け渡し動作を制御するときの手順を示すフローチャートである。
【図６】本発明の第２の実施の形態によるＰＬＣ機能内蔵型ドライブ制御装置のブロック図である
【図７】図６の制御パラメータ識別子設定領域の構成図である。
【図８】図６の制御パラメータ交換制御部の制御パラメータ格納領域への書込み処理の手順を示すフローチャートである。
【図９】図６の制御パラメータ受渡し部の処理手順を示すフローチャートである。
【図１０】図６の制御パラメータ交換制御部の制御パラメータ格納領域からの読出し処理の手順を示すフローチャートである。
【図１１】従来のＰＬＣ機能内蔵型ドライブ制御装置のブロック図である。
【図１２】従来の別置形のドライブ制御装置とＰＬＣのブロック図である。
【発明を実施するための形態】
【００１８】
以下、本発明の実施の形態について図面を参照しながら説明する。
図１に本発明の第１の実施の形態によるＰＬＣ機能内蔵型ドライブ制御装置の構成を示す。この図において、ＰＬＣ機能内蔵型ドライブ制御装置１は、ＰＬＣ機能を実現するＰＬＣ部１０、モータ等の負荷を制御するドライブ制御部２０、演算処理を実行するＣＰＵ３０、ドライブ制御部２０で用いられる制御パラメータの属性値を格納する属性値情報記憶部４０、更新用の制御パラメータを保存する制御パラメータ情報記憶部５０、負荷６０に対して動作信号を出力するドライブ主回路２４、および当該ドライブ主回路２４に対して制御指令を出力するドライブ主回路制御部２３を有している。
【００１９】
ＰＬＣ部１０は、ＰＬＣを別置きしていたときと同様に、ラダーの演算を行うラダー演算部１１、算術演算を行う算術演算部１２を備える。ラダー演算部１１，算術演算部１２は、ＰＬＣ用アプリケーションプログラムによって実現することができる。
【００２０】
ドライブ制御部２０は、負荷６０に対して動作信号を出力するドライブ主回路２４、当該ドライブ主回路２４に対して制御指令を出力するドライブ主回路制御部２３、制御パラメータ情報記憶部５０との間で制御パラメータの値の読み書きを行うことにより制御の調整を行う制御パラメータ交換制御部２１、およびＰＬＣ部１０との同期処理を実行するＰＬＣ同期制御部２２とを備えている。
【００２１】
属性値情報記憶部４０は、ドライブ主回路制御部２３で用いられる制御パラメータの初期値や上下限値などの属性値を格納する制御パラメータ属性値格納領域４１を有し、ドライブ制御部２０は、起動時にこの属性値を読み込んで作動を開始する。この属性値情報記憶部４０は、予めデータが書き込まれた不揮発性メモリであるＲＯＭで構成することができる。図２は、本実施の形態による制御パラメータ属性値格納領域４１のデータ構成例である。ドライブ制御部２０で用いられる制御パラメータの識別子であるコードごとにそのコードに対応する制御パラメータの格納アドレスや、当該制御パラメータの属性値が互いに関連付けられて保存されている。
【００２２】
制御パラメータ情報記憶部５０は、データを一時的に格納するメモリであるＲＡＭ等によって構成され、ＰＬＣ部１０が制御パラメータの中で読み書き対象とするパラメータを個別に宣言するための制御パラメータ識別子設定領域５１と、制御パラメータ識別子設定領域５１で指定された個別の制御パラメータを一時的に格納するための制御パラメータ格納領域５２，５３とを備える。なお、制御パラメータ格納領域５２には、ＰＬＣ部１０との間で受渡しを行う制御パラメータを格納し、制御パラメータ格納領域５３は、図３に示すようにドライブ制御部２０との間で受渡しを行う制御パラメータを格納する。
【００２３】
本実施の形態によるＰＬＣ機能内蔵型ドライブ制御装置１の特徴とするところは、ＰＬＣ部１０とドライブ制御部２０との制御パラメータを制御パラメータ情報記憶部５０を介して行い、またドライブ制御部２０側にＰＬＣ部１０と同期を取りながら制御パラメータの交換を行う機能を設けることにより、ＰＬＣ部１０においてドライブ制御部２０に対応させるためのプログラムの開発や改変を不要としたことである。
【００２４】
次に制御パラメータ情報記憶部５０の詳細を説明する。
図４は、制御パラメータ情報記憶部５０における制御パラメータ識別子設定領域５１および制御パラメータ格納領域５２の構成を示す図である。これらの領域５１，５２は、ＰＬＣ部１０のラダー演算部１１から見ると補助リレー領域に相当する。
【００２５】
制御パラメータ識別子設定領域５１は、制御パラメータのうちＰＬＣ部１０の読み書き対象の制御パラメータを示す識別子を書き込む領域である。なお、制御パラメータ識別子設定領域５１で指定できる制御パラメータ数は、ＣＰＵ３０の処理能力や制御パラメータ情報記憶部５０のサイズの大小により変更可能にしても良い。この制御パラメータ識別子設定領域５１は、ＰＬＣ部１０の初期化処理プログラムによって起動時に設定することができる。
【００２６】
制御パラメータ格納領域５２は、制御パラメータ識別子設定領域５１で設定された識別子の制御パラメータの値を一時的に格納する領域である。
【００２７】
次にＰＬＣ部１０の動作について詳述する。
ラダー演算部１１および算術演算部１２は、ＩＥＣ６１１３１−３準拠のプログラミング言語（ラダー（ＬＤ言語）、シーケンス・ファンクション・チャート（ＳＦＣ言語）、ファンクション・ブロック・ダイアグラム（ＦＢＤ言語）、ストラクチャード・テキスト（ＳＴ言語）およびインストラクション・リスト（ＩＬ言語））が使用可能である。ユーザは、図示しないソフトウェア開発ツールによりアプリケーションプログラムを作成し、ラダー演算部１１および算術演算部１２で実行させる。
【００２８】
ＰＬＣ部１０で動作するアプリケーションプログラムでは、初期化処理あるいは最初の動作時に制御パラメータのうち読み書き対象の制御パラメータを、名称やアドレス、コードなどにより指定する。そして通常のシーケンス動作では、先の処理によって指定した読み出し対象の制御パラメータを制御パラメータ格納領域５２から読み出して演算を行い、その結果として制御パラメータに対する更新値を制御パラメータ格納領域５２に書き込む。
【００２９】
図４（ａ）は、本実施の形態による制御パラメータ識別子設定領域５１のデータ構成例である。ＰＬＣ部１０のラダー演算部１１や算術演算部１２からアクセスするための識別子であるインデックスと、ドライブ制御部２０の制御パラメータ交換制御部２１からアクセスするための識別子であるコードとが対応付けられて保存されている。すなわち、ラダー演算部１１と算術演算部１２ではインデックスによって制御パラメータが特定され、ドライブ制御部２０の制御パラメータはコードによって特定されるように構成されている。
【００３０】
なお制御パラメータ識別子設定領域５１の識別子と制御パラメータ格納領域５２の制御パラメータとの関連付けは、図４（ｂ）に示すようにインデックスをキーにしても良いし、予めメモリアドレスを関連付けておくなど一般的な技術によって行うことができる。
【００３１】
次にドライブ制御部２０の動作について詳述する。
制御パラメータ交換制御部２１は、動作開始時に属性値情報記憶部４０から、各動作パラメータの属性値を読み込み、また、制御パラメータ情報記憶部５０との間で周期的に制御パラメータの値を読み書きしてＰＬＣ部１０との間で制御パラメータの受渡しを行う。制御パラメータ交換制御部２１は、ＰＬＣ部１０の初期化処理の完了後、まず制御パラメータ識別子設定領域５１の設定内容を確認し、ＰＬＣ部１０で動作するアプリケーションプログラムが読み出したい或いは書き込みたい個々の制御パラメータの識別子を取得する。次に、読出し対象の制御パラメータを制御パラメータから読み出し、制御パラメータ格納領域５２に書き込む。そして、後述するＰＬＣ同期制御部２２によってアプリケーションプログラムを１周期分動作させた後に、書き込み対象の制御パラメータの更新値を制御パラメータ格納領域５２から読み出し、制御パラメータに設定する。この動作を繰り返すことで、ＰＬＣ部１０で動作するアプリケーションプログラムとの制御パラメータのデータ交換を制御パラメータ情報記憶部５０を介して行うことができる。
【００３２】
ドライブ主回路制御部２３は動作開始時に動作パラメータの属性値を読み込み、また制御周期ごとに制御パラメータ格納領域５３に対して制御パラメータの値を読み書きしながらドライブ主回路２４の制御を実行する。
【００３３】
ＰＬＣ部１０で動作するアプリケーションプログラムからは、通常のＰＬＣアプリケーションで標準的にサポートされている補助リレー領域の読み書きのみで、ドライブ制御部２０を制御することができる。特別なライブラリや手順を踏む必要がなく、初期化処理プログラムによってＰＬＣ部１０側の制御パラメータ識別子とドライブ制御部２０側の識別子との対応関係を制御パラメータ識別子設定領域５１に設定するだけで動作させることができ、ユーザにとっては、既存のアプリケーションプログラム資産の有効活用や開発容易性による開発コストの削減が可能となる。
【００３４】
次にドライブ制御部２０のＰＬＣ同期制御部２２について説明する。
図５は、ドライブ制御部２０からＰＬＣ部１０の制御パラメータ受け渡し動作を制御するときの手順を示すフローチャートである。ＰＬＣ部１０は、ＰＬＣ同期制御部２２から指令を受けるたびに１周期分の動作を実行する。この指令は、例えばＰＬＣ同期制御部２２からＣＰＵ３０への割り込み信号を用いることができる。
【００３５】
またこのときＰＬＣ同期制御部２２は、制御パラメータ交換制御部２１に指令を与え、制御パラメータの交換処理を実行する。ＰＬＣ部１０で動作するアプリケーションプログラムと制御パラメータ交換制御部２１の動作をＰＬＣ同期制御部２２からの同一割込みによって実行することにより、各処理を同期させることが可能となる。もちろんそれぞれ独立した割込み信号を使えばＰＬＣ部１０とドライブ制御部２０を非同期で動作させることも可能である。
【００３６】
以下、図５に基づいてＰＬＣ同期制御部２２および制御パラメータ交換制御部２１の処理手順を説明する。
【００３７】
まず、ドライブ主回路制御部２３は、制御周期ごとにＰＬＣ同期制御部２２へ同期開始指示を出力する（Ｓ０１）。ＰＬＣ同期制御部２２は、この同期開始指示を受けると動作を開始し、制御パラメータ交換制御部２１へ読出し対象の制御パラメータの更新指示を出力する（Ｓ０２）。すると制御パラメータ交換制御部２１は、この指示に基づいて制御パラメータ格納領域５３から書き込み対象の制御パラメータの値を抽出して（Ｓ０３）、これを制御パラメータ格納領域５２の該当する領域へ書き込む（Ｓ０４）。その後、制御パラメータ交換制御部２１は、書き込み処理終了の通知をＰＬＣ同期制御部２２へ送る（Ｓ０５）。
【００３８】
次に、ＰＬＣ同期制御部２２は、ＰＬＣ部１０へ、動作指示を出力する（Ｓ０６）。ＰＬＣ部１０は、この動作指示を受け取ると、制御パラメータ格納領域５２から読み出し対象の制御パラメータの値を読み出して（Ｓ０７）、ラダー演算，算術演算を一周期分について行い、その演算結果である制御パラメータの更新値を制御パラメータ格納領域５２の該当する領域へ書き込む（Ｓ０８）。その後、ＰＬＣ部１０は、ＰＬＣ同期制御部２２へ書き込み処理終了の通知を送る（Ｓ０９）。ＰＬＣ同期制御部２２はこの通知を受け取ると、制御パラメータ交換制御部２１へ書き込み対象パラメータの更新指示を送る（Ｓ１０）。制御パラメータ交換制御部２１はこの更新指示を受け取ると、制御パラメータ格納領域５２から更新対象の制御パラメータを読み出して（Ｓ１１）、この制御パラメータを制御パラメータ格納領域５３へ書き込んで（Ｓ１２）、制御パラメータの値を更新する。その後、制御パラメータ交換制御部２１は、ＰＬＣ同期制御部２２へ書込み終了を通知する（Ｓ１３）。ＰＬＣ同期制御部２２は、この通知を受け取ると、ドライブ主回路制御部２３に対して更新完了通知を送る（Ｓ１４）。
【００３９】
更新された制御パラメータはドライブ主回路２４の制御に用いられ、これにより動作調整を行うことができる。なお、上記の処理のうち、ステップＳ０６，ステップＳ０９は、ＣＰＵ３０への割り込み信号によって実現するようにしても良い。
【００４０】
以上のごとく、本実施の形態によれば、ドライブ制御部２０に設けた制御パラメータ交換制御部２１とＰＬＣ同期制御部２２により、ＰＬＣ部１０とドライブ制御部２０との同期を取りながら制御パラメータを交換するので、ＰＬＣ部１０においてドライブ制御部２０に対応させるためのプログラムの開発や改変が不要になる。また、ドライブ主回路制御部２３の指示によって同期処理を開始するので、ドライブ主回路制御部２３はドライブ主回路２４に対する制御周期に合せて更新された制御パラメータを受け取り、この制御パラメータを用いた制御処理が可能になる。
【００４１】
次に本発明の第２の実施の形態について説明する。
図６は、本実施の形態によるＰＬＣ機能内蔵型ドライブ制御装置１の機能ブロック図である。第１の実施の形態との主な違いは、制御パラメータ識別子設定領域５１ａに、ＰＬＣ部１０側の制御パラメータの識別子であるインデックスと、ドライブ制御部２０側の制御パラメータの識別子であるコードとの対応づけの他に、ＰＬＣ部１０からドライブ制御部２０へ渡される制御パラメータなのか、あるいはドライブ制御部２０からＰＬＣ部１０へ渡される制御パラメータなのかを表す方向情報と、受け渡しの準備ができたことを表すレディ情報を追加したことである。これに伴い、ＰＬＣ部１０にラダー演算部１１，算術演算部１２と制御パラメータ情報記憶部５０との間で制御パラメータの受け渡し処理を実行する制御パラメータ受渡し部１３を追加した。また第１の実施の形態では同期処理のトリガはドライブ主回路制御部２３が行うが、本実施の形態ではＰＬＣ同期制御部２２ａが同期処理のタイミングを生成する。なお、ＰＬＣ同期制御部２２ａの出力するタイミング信号を調整可能にしていることが本実施の形態の特徴の一つである。その他の構成は、第１の実施の形態と同様であるので、同一要素には同一符号を付して説明を割愛する。
【００４２】
（制御パラメータ識別子設定領域５１ａの構成）
本実施の形態による制御パラメータ識別子設定領域５１ａのデータ構成例を図７に示す。受け渡し対象の制御パラメータごとに、インデックス、コード、方向情報と、レディ情報が紐付けられて保存されている。ここで、インデックス、コードは、第１の実施の形態と同様にそれぞれＰＬＣ部１０側の制御パラメータの識別子、ドライブ制御部２０側の制御パラメータの識別子を表す。また、方向情報は、ドライブ制御部２０からＰＬＣ部１０へ渡される制御パラメータの場合は「１」、ＰＬＣ部１０からドライブ制御部２０へ渡される制御パラメータの場合は「２」が設定される。レディ情報は、受け渡しの準備ができた場合に制御パラメータ格納領域５２へ制御パラメータの値を書き込む側が「１」を設定し、制御パラメータ格納領域５２から制御パラメータの値を読み出す側が読み出し後に「０」を設定する。
【００４３】
なお、制御パラメータ識別子設定領域５１ａにおいて、インデックス、コード、方向情報については、ＰＬＣ部１０の初期化処理プログラムによって起動時に自動設定しても良いし、図示しない通信手段を介して、外部の保守ツールから予めダウンロードして設定するようにしても良い。また、レディ情報は、初期値とて「０」が設定される。
【００４４】
（制御パラメータ交換処理）
次に図８〜図１０を用いて制御パラメータの交換処理について説明する。
ドライブ制御部２０のＰＬＣ同期制御部２２ａは、一定の周期でタイミング信号を出力する。タイミング信号は例えばＣＰＵ３０への割込み信号であり、ＣＰＵ３０はこの割込み信号の発生を検知して制御パラメータ交換制御部２１ａを起動する。
【００４５】
また、ＰＬＣ同期制御部２２ａは、タイミング信号の周期の上限値と下限値を有し、その範囲で周期を変更できる機能を有する。これは例えばＣＰＵ３０を動作させる基準クロックを利用し、その分周比を調整することによって実現することができる。タイミング信号の周期の初期値としては、たとえば下限値から開始しても良いし、あるいは中央値など任意の値から開始するようにしても良い。
【００４６】
図８において、制御パラメータ交換制御部２１ａはＰＬＣ同期制御部２２ａのタイミング信号によって起動すると、制御パラメータ識別子設定領域５１ａにアクセスして（Ｓ１０１）、方向情報が「１」、すなわちドライブ制御部２０からＰＬＣ部１０へ渡す制御パラメータの識別子について以下の処理を繰り返す（Ｓ１０２ａ，Ｓ１０２ｂ）。
【００４７】
制御パラメータ交換制御部２１ａは、まず当該識別子のレディ情報が「０」か否かを判定し（Ｓ１０３）、「０」の場合は当該識別子のコードに対応する制御パラメータの値を制御パラメータ格納領域５３から抽出する（Ｓ１０４）。そして抽出した値を制御パラメータ格納領域５２の当該コードに対応する領域に書き込み（Ｓ１０５）、制御パラメータ識別子設定領域５１ａの当該コードに対応するレディ情報を「１」にセットする（Ｓ１０６）。
【００４８】
一方、ステップＳ１０３において、アクセスした識別子のレディ情報が「０」でない場合は（Ｓ１０３で「ＮＯ」）、ＰＬＣ同期制御部２２ａのタイミング信号の出力周期を一定時間分だけ長くする（Ｓ１０７）。
【００４９】
上記の処理を方向情報「１」の全ての識別子について行った後（Ｓ１０２ａ〜Ｓ１０２ｂ）、制御パラメータ交換制御部２１ａは、ＰＬＣ部１０の制御パラメータ受渡し部１３へ制御パラメータ格納領域５２への制御パラメータの書き込みが終了したことを割込み信号等によって通知する（Ｓ１０８）。
【００５０】
図９において、ＰＬＣ部１０の制御パラメータ受渡し部１３は、制御パラメータ交換制御部２１ａから当該通知を受け取ると、制御パラメータ識別子設定領域５１ａにアクセスして（Ｓ２０１）、方向情報「１」の識別子について以下の処理を繰り返す（Ｓ２０２ａ，Ｓ２０２ｂ）。
【００５１】
制御パラメータ受渡し部１３は、まず当該識別子のレディ情報が「１」か否かを判定し（Ｓ２０３）、「１」の場合は当該識別子のコードに対応する制御パラメータの値を制御パラメータ格納領域５２から抽出する（Ｓ２０４）。そして抽出した値と当該コードに対応するインデックスとを関連付けて、図示しない一時バッファに保存する一方、制御パラメータ識別子設定領域５１ａの当該コードに対応するレディ情報を「０」にセットする（Ｓ２０５）。
【００５２】
上記の処理を方向情報「１」の全ての識別子について行った後（Ｓ２０２ａ〜Ｓ２０２ｂ）、一時バッファに格納されているインデックスと制御パラメータの値を、ラダー演算部１１、算術演算部１２に渡して夫々の処理を実行させる（Ｓ２０６）。
【００５３】
そして、ラダー演算部１１，算術演算部１２での処理の実行後、制御パラメータ受渡し部１３は、制御パラメータ識別子設定領域５１ａの方向情報「２」の識別子について以下の処理を繰り返す（Ｓ２０７ａ，Ｓ２０７ｂ）。
【００５４】
制御パラメータ受渡し部１３は、まず当該識別子のレディ情報が「０」か否かを判定し（Ｓ２０８）、「０」の場合はラダー演算部１１、算術演算部１２の演算結果である制御パラメータの更新値を制御パラメータ格納領域５２に格納する（Ｓ２０９）。この際、制御パラメータ識別子設定領域５１ａにおいて、そのインデックスに対応するコードを抽出し、制御パラメータ格納領域５２の当該コードに対応する領域に更新値を書き込むようにする。
【００５５】
その後、制御パラメータ識別子設定領域５１ａの該当する識別子のレディ情報を「１」にセットする（Ｓ２１０）。一方、ステップＳ２０８において、レディ情報が「０」でない場合は（Ｓ２０８で「ＮＯ」）、ＰＬＣ同期制御部２２ａのタイミング信号の出力周期を一定時間分だけ長くする（Ｓ２１１）。
【００５６】
なお、ＰＬＣ同期制御部２２ａのタイミング信号については、ステップＳ１０３およびステップＳ２０８において、一定周期連続して「ＹＥＳ」すなわちレディ情報「０」が続いた場合は、タイミング信号の出力周期を一定時間分だけ短くするようにしても良い。
【００５７】
上記の処理を方向情報「２」の全ての識別子について行った後（Ｓ２０７ａ〜Ｓ２０７ｂ）、制御パラメータ受渡し部１３は、制御パラメータ交換制御部２１ａへ制御パラメータ格納領域５２への制御パラメータの書き込みが終了したことを割込み信号等によって通知する（Ｓ２１２）。
【００５８】
図１０において、制御パラメータ交換制御部２１ａはこの通知を受け取ると、制御パラメータ識別子設定領域５１ａにアクセスして（Ｓ３０１）、方向情報「２」の識別子について以下の処理を繰り返す（Ｓ３０２ａ，Ｓ３０２ｂ）。
【００５９】
制御パラメータ交換制御部２１ａは、まず当該識別子のレディ情報が「１」か否かを判定し（Ｓ３０３）、「１」の場合は当該識別子のコードに対応する制御パラメータの更新値を制御パラメータ格納領域５２から抽出する（Ｓ３０４）。そして当該コードの識別子に対応する制御パラメータ格納領域５３に抽出した更新値を設定し（Ｓ３０５）、制御パラメータ識別子設定領域５１ａの当該コードに対応するレディ情報を「０」にセットする（Ｓ３０６）。
【００６０】
上述した一連の処理により、ドライブ制御部２０の制御パラメータをＰＬＣ部１０の機能によって更新する。
【００６１】
なお、制御パラメータ格納領域５３に対して、制御パラメータ交換制御部２１ａとドライブ主回路制御部２３ａの双方からアクセスされるが、本実施の形態ではこのアクセス処理は排他制御されている。ドライブ主回路制御部２３ａは上記の処理によって更新された制御パラメータを制御パラメータ格納領域５３から読み出して、ドライブ主回路２４の制御処理を実行する。
【００６２】
以上、本実施の形態によれば、ドライブ主回路制御部２３ａはＰＬＣ同期制御部２２ａから独立して動作可能になるので、ドライブ主回路制御部２３ａの動作に影響を与えずに、ＰＬＣ部１０のシーケンス処理を実行することができる。また、本実施の形態では、レディ情報を用いてＰＬＣ同期制御部２２ａの動作パラメータ更新のタイミング信号を調整するので、装置の使用状況や負荷に応じて適切な周期で動作パラメータを更新することができる。
【００６３】
なお、上記の説明では、ＣＰＵ３０によってＰＬＣ部１０とドライブ制御部２０の機能を実行するようにしたが、本実施の形態ではＰＬＣ部１０とドライブ制御部２０を独立に構成できるので、夫々別のＣＰＵで動作するマルチプロセッサ構成で実現することも可能である。
【符号の説明】
【００６４】
１    ＰＬＣ機能内蔵型ドライブ制御装置
１０    ＰＬＣ部
１１    ラダー演算部
１２    算術演算部
１３    制御パラメータ受渡し部
２０    ドライブ制御部
２１，２１ａ    制御パラメータ交換制御部
２２，２２ａ    ＰＬＣ同期制御部
２３    ドライブ主回路制御部
２４    ドライブ主回路
４０    属性値情報記憶部
５０    制御パラメータ情報記憶部
５１，５１ａ    制御パラメータ識別子設定領域
５２，５３    制御パラメータ格納領域
【図１】
2016157489.tif 000003
【図２】
2016157489.tif 000004
【図３】
2016157489.tif 000005
【図４】
2016157489.tif 000006
【図５】
2016157489.tif 000007
【図６】
2016157489.tif 000008
【図７】
2016157489.tif 000009
【図８】
2016157489.tif 000010
【図９】
2016157489.tif 000011
【図１０】
2016157489.tif 000012
【図１１】
2016157489.tif 000013
【図１２】
2016157489.tif 000014
【国際調査報告】
2016157489.tif 000015
2016157489.tif 000016