(57)【特許請求の範囲】
【請求項１】
産業機械を制御するモーションコントローラで実行するモーションプログラムとシーケンスプログラムとをプログラミング装置を用いてそれぞれ独立に記述し、個々に前記モーションコントローラへロードして実行するようにしたモーションコントロ−ラにおけるモーションプログラムの実行方法において、
前記モーションプログラムを、前記プログラミング装置上で前記シーケンスプログラムと同一形式の中間コードへ変換して、シーケンス情報を有するステップ情報パケットと、移動命令に付随するパラメータを抜き出したデータパケットと、スキャン実行される本体である命令パケットとを含むモーションプログラムファイルを生成し、
前記モーションプログラムファイルを前記モーションコントローラへロードし、
前記モーションコントローラへロードされた前記モーションプログラムファイルを前記シーケンスプログラムと共通のコンパイラ部によってスキャン実行型のマシン語へ変換して、シーケンスプログラム実行部とは異なるモーションプログラム実行部で実行するようにしたことを特徴とするモーションプログラムの実行方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、産業機械を制御するモーションコントローラのプログラム作成および実行方法に関し、とくにモーションプログラムのコード生成およびコンパイル方法に関するものである。
【０００２】
【従来の技術】
従来の方法を図において説明する。図３は従来例の概念を説明するための図である。図において、３０はプログラミング装置、３１はシーケンスプログラムエディット部（以下シーケンスプログラムエディタと称する）、３２はモーションプログラムエディット部（以下モーションプログラムエディタと称する）、３３は中間コード変換部、３４はシーケンスプログラムファイル、３５はモーションプログラムファイル、３６はモーションコントローラ、３７はコンパイラ部、３８は逐次／連続解析部、３９はシーケンスプログラム実行部、４０はモーションプログラム実行部、４１はＩ／Ｏサービス部、４２は位置・速度制御部、４３はサーボ、インバータその他の装置を表す。モーションプログラムはプログラミング装置３０の上ではコード生成（以下コードジェネレートと称する）せずにモーションコントローラ３６へロードし、コントローラ側でシーケンスプログラムとは異なるモーションプログラム特有の逐次的または連続的な解析をし、実行する方法をとっていた。図３においてまず、プログラミング装置３０上にて、モーションプログラムエディタ３２とシーケンスプログラムエディタ３１を用いてそれぞれのプログラムを個別に表示、作成、編集する。作成後のモーションプログラムは、テキスト形式またはシーケンスプログラムとは異なるデータ形式でモーションプログラムファイル３５に保存される。シーケンスプログラムは、中間コード変換部３３を通ってシーケンスプログラムファイル３４に保存される。そして、これらファイルはそれぞれ独立にモーションコントローラ３６へロードされる。次に、モーションコントローラ３６は、プログラムがロードされると、モーションプログラムはそのままのファイル３５として保存し、シーケンスプログラムはそれをファイル３４として保存するとともにコンパイラ部３７を通して実行形式へコンパイルする。この後、ＣＰＵが動作（Ｒｕｎ）状態の場合は、シーケンスプログラムはスキャン実行方式によりシーケンスプログラム実行部３９にて即時運転され、モーションプログラムは、シーケンスプログラム実行部３９からのスタート信号を受けて逐次／連続解析部３８通ってイベント実行方式にてモーションプログラム実行部４０で運転される。これによりモーションとシーケンスが融合したモーションコントロールが行われる。Ｉ／Ｏサービス部４１は、スキャン毎に入力信号の読み込みと出力信号の出力を行う。位置・速度制御部４２は、モーションプログラム実行部４０で算出された位置・速度の目標値を制御対象であるサーボ、インバータその他の装置４３に応じた実際の指令値に変換し出力する。サーボ、インバータその他の装置４３はモーションコントローラ３６とアナログまたは通信方式により接続される。このように、モーションプログラムとシーケンスプログラムとを別々なコード形式およびファイルとして作成し管理する方法は、シーケンスプログラム中にモーションプログラムを記述し埋め込む方法とは異なり、モーションプログラムの作成と管理の容易性およびプログラムの視認性が高いという利点がある。
【０００３】
【発明が解決しようとする課題】
しかしながら、上述した従来例においては、図３に示すようにモーションコントローラ側に異なる二つのコンパイルと解析の部品を必要とし、ソフトウェア構造が複雑になること、また、モーションプログラムの逐次もしくは連続（逐次／連続）解析は、シーケンスプログラムの制御スキャンとは非同期であるためモーションとシーケンスの連携的接続時に、互いに解析完了待ちや実行完了待ちの無駄時間を生じ、モーションコントロールの総合的制御周期を高速化出来ないという問題があった。
そこで、本発明はモーションプログラムの作成と管理の容易性およびプログラムの視認性が高いという利点を残したまま、コントローラ側のソフトウェア部品（構造）を簡素化し、さらにモーションプログラムとシーケンスプログラムを同一の制御スキャン上で融合し、総合的に高速なモーションコントロールをするためのモーションプログラムの作成および実行方法を提供することを目的とする。
【０００４】
【課題を解決するための手段】
本発明は、産業機械を制御するモーションコントローラで実行するモーションプログラムとシーケンスプログラムとをプログラミング装置を用いてそれぞれ独立に記述し、個々に前記モーションコントローラへロードして実行するようにしたモーションコントロ−ラにおけるモーションプログラムの実行方法において、
前記モーションプログラムを、前記プログラミング装置上で前記シーケンスプログラムと同一形式の中間コードへ変換して、シーケンス情報を有するステップ情報パケットと、移動命令に付随するパラメータを抜き出したデータパケットと、スキャン実行される本体である命令パケットとを含むモーションプログラムファイルを生成し、前記モーションプログラムファイルを前記モーションコントローラへロードし、前記モーションコントローラへロードされた前記モーションプログラムファイルを前記シーケンスプログラムと共通のコンパイラ部によってスキャン実行型のマシン語へ変換して、シーケンスプログラム実行部とは異なるモーションプログラム実行部で実行するようにしたことを特徴とする。
【０００５】
【発明の実施の形態】
以下、本発明の実施例を図に基づいて説明する。
図１はプログラミング装置とモーションコントローラの関係を示す概念ブロック図、図２はコードジェネレートの変換ルールの例を示す概念図である。図１において、１はプログラミング装置、２は中間コード生成部（中間コードジェネレータ）、３はコンパイラ部、４はスキャン処理部、５はシーケンスプログラム実行部、６はモーションプログラム実行部、７はモーションコントローラであり、従来と同じものはその説明を省略する。まず、図１で示すプログラミング装置１上にて、モーションプログラムエディタ３２を用いてモーションプログラムを個別的に表示、作成、編集する。そしてモーションプログラムの保存時にコードジェネレータ２を通してコードジェネレート（中間コードを生成）する。コードジェネレートは、図２に示すように、モーションプログラム２０を、ステップ情報パケット２２、データパケット２４、命令パケット２３その他の中間コードデータに分解しモーションプログラムファイル２１を生成する。ステップ情報パケット２２は、テキスト型・ステップ実行型の命令をスキャン実行型のシーケンスフローチャート構造に変換したもので、モーションプログラム２０の場合、▲１▼〜▲８▼の処理ＢＯＸとなる。データパケット２４は、ＭＯＶなどの移動命令に付随するパラメータデータのみを抜き出しテーブル化したものである。命令パケット２３は、シーケンスプログラムと同一形式の命令に変換したバイナリーの中間コードであり、スキャン実行される本体である。
このように従来の方法に対し、本実施例ではテキスト型・ステップ実行型のモーションプログラムをステップ情報パケット２２、データパケット２４、命令パケット２３の三つのパケットに分解し、スキャン実行型のシーケンスプログラムへ変換するコードジェネレータ２を組み入れたことを特徴とする。
次に、モーションプログラムファイル３５をモーションコントローラ７へロードする。モーションコントローラ７は、モーションプログラムがロードされるとシーケンスプログラムと共通のコンパイラ部３を通じてスキャン実行型のマシン語へ変換され、モーションプログラム実行部６で実行される。モーションプログラムの実行は、シーケンスプログラム実行部５からシーケンシャルに接続されておりスキャン処理部４の中の一部分として実行される。これにより、モーションとシーケンスの融合が互いの解析待ちや完了待ちという無駄時間なしに実現する。なお、シーケンスプログラムに関してのプログラミング、ロード、コンパイルおよび実行の方法は従来と同じである。
【０００６】
【発明の効果】
以上述べたように、本発明によれば、モーションプログラムの作成と管理の容易性およびプログラムの視認性が高いという利点を残したまま、コントローラ側のソフトウェア構造を簡素化し、モーションとシーケンスの連携的接続時の無駄時間を取り除き、モーションコントロールの総合的制御周期を高速化できるという効果がある。
【図面の簡単な説明】
【図１】本発明の実施例を示す概念ブロック図
【図２】本発明のコードジェネレータ構成を示す概念図
【図３】従来例の概念ブロック図
【符号の説明】
１  プログラミング装置
２  中間コード生成部（中間コードジェネレータ）
３、３７  コンパイラ部
４  スキャン処理部
５、３９  シーケンスプログラム実行部
６、４０  モーションプログラム実行部
７、３６  モーションコントローラ
２０  モーションプログラム（テキスト形式）
２１  モーションプログラム（中間コード形式）
２２  ステップ情報パケット
２３  命令パケット
２４  データパケット
３０  プログラミング装置
３１  シーンケンスプログラムエディット部
３２  モーションプログラムエディット部
３３  中間コード変換部
３４  シーケンスプログラムファイル
３５  モーションプログラムファイル
３８  遂次／連続解析部
４１  Ｉ／０サービス部
４２  位置・速度制御部
４３  サーボ、インバータその他の装置
【図１】
0004257553.tif 000002
【図２】
0004257553.tif 000003
【図３】
0004257553.tif 000004