説明

モーションコントローラプログラミング方式

【課題】 移動制御動作における機能命令のデータの入力を容易に行うことができるモーションコントローラのプログラミング方式を提供する。
【解決手段】 モーションコントローラの動作制御を行うプログラムを機能命令の設定により生成するプログラミング方式において、機能命令は軸移動を設定するモーション指令を少なくとも一つ含んだモーション機能命令4を備え、これによって、移動制御動作における機能命令のデータの入力を容易に行うことができ、また移動制御動作を一機能命令で設定して制御動作内容の把握,確認を容易に行う。また、軸移動を設定するモーション指令を少なくとも一つ含んだモーション機能命令を機能命令として取り込む機能をモーションコントローラ中に備えることによって、モーション機能命令のラダープログラム中への取込みを可能とし、本発明のプログラミング方式を適用することができる。

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、産業機械一般のシーケンス制御を含む種々の制御動作を行うモーションコントローラのためのプログラムを作成するプログラミング方式に関し、特にPMC(プログラマブルコントローラ)に移動制御を行わせる際に、軸制御による移動制御に代わって任意に設定可能なモーション機能命令による移動制御を行わせるためのプログラミング方式に関する。
【0002】
【従来の技術】モーションコントローラは産業機械一般に対してシーケンス制御を含む種々の制御を行う制御装置であり、シーケンス・プログラムに定められた処理手順に従ってPMC(Programmable Machine Controller)を動作させて制御を行っている。一般に、シーケンス・プログラムのプログラミングはPMC機能命令を用いてラダー図によって作成され、作成されたラダー図は機械語命令に変換された後メモリに格納される。メモリに格納されたシーケンス・プログラムは、PMCのCPUによって1命令毎に読み出されて実行される。従来、モーションコントローラにおいて産業機械一般の移動制御は個々の軸を制御して行っており、該移動制御は単独のPMC機能命令あるいは種々のPMC機能命令を組み合わせて形成される軸制御指令を用いてプログラムを生成し、プログラムを実行して行っている。
【0003】図6は従来のPMC軸制御のためのプログラミング例である。図6(a)はラダー形式で表した一PMC機能命令の構成例であり、例えば機能命令6と該機能命令6を実行を開始する動作開始条件を定める制御条件21とにより構成することができ、制御条件21の成立により機能命令6を実行する手順を指定している。ここで、機能命令6は命令名で指定される単一の命令61と、該命令61を実行するためのデータを指定するパラメータ62とを含んでいる。パラメータ62は命令61に応じて設定され、例えば制御対象の軸等を指定するためのモジュール番号63,移動の速度64,移動量のデータを格納したメモリのアドレス65,各種の動作実行条件データを格納したメモリのアドレス66等を含む構成である。移動制御は、前記機能命令のみ、あるいは図6(b)に示すように幾つかの機能命令6a,6b,・・・の組み合わせにより構成している。
【0004】
【発明が解決しようとする課題】従来のモーションコントローラにおけるプログラミングでは、機能命令のパラメータのデータを設定するには、データそのものを入力することはできず、データに対応するコードを入力している。そのため、データをコード変換する処理やあるいはデータに対応するコードを作成し、該コードの書込み読み出しの処理の必要があり、データの入力操作を容易に行うことができないという問題がある。例えば、図6(a)に示したように、パラメータ62中の速度や移動量や動作実行条件等の各パラメータを設定するには、データそのものではなくデータに対応したコード番号を入力したりデータが格納されているメモリのアドレスを入力しているため、データ入力の操作が煩雑となり、また入力データの内容を容易に把握し確認することができない。
【0005】また、従来のモーションコントローラにおけるプログラミングでは、一つの移動制御動作を一機能命令で実行できない場合には、該動作を実行するプログラムを複数個の機能命令をラダー形式で組み合わせて形成する必要があるため、プログラミングが煩雑となり、また移動制御動作の内容を容易に把握し確認することができないという問題がある。
【0006】そこで、本発明は前記した従来のモーションコントローラのプログラミング方式の問題点を解決して、移動制御動作における機能命令のデータの入力を容易に行うことができるモーションコントローラのプログラミング方式を提供することを目的とし、また移動制御動作を一機能命令で設定することができ、移動制御動作の内容を容易に把握し確認することができるモーションコントローラのプログラミング方式を提供することを目的とする。
【0007】
【課題を解決するための手段】本発明は、モーションコントローラの動作制御を行うプログラムを機能命令の設定により生成するプログラミング方式において、機能命令は軸移動を設定するモーション指令を少なくとも一つ含んだモーション機能命令を備え、これによって、移動制御動作における機能命令のデータの入力を容易に行うことができ、また移動制御動作を一機能命令で設定して制御動作内容の把握,確認を容易に行うことができる。
【0008】また、軸移動を設定するモーション指令を少なくとも一つ含んだモーション機能命令を機能命令として取り込む機能をモーションコントローラ中に備えることによって、モーション機能命令のラダープログラム中への取込みを可能とし、これによって、プログラミングにおいて、移動制御動作を行わせる機能命令のデータの入力を容易に行うことができ、また移動制御動作を一機能命令で設定して制御動作の内容の把握,確認を容易に行うことができるという効果を奏することができる。
【0009】また、軸移動を設定するモーション指令は、軸動作の内容を特定する機能名および軸動作の動作実行条件を特定する項目をデータとして含む構成とすることができ、軸動作の内容として例えば移動指令,停止指令,速度指令を含むことができる。また、動作実行条件として数値を入力する場合、特殊なコードを用いることなく入力数値そのものの入力により行うことができる。該モーション指令を単一であるいは複数個を組み合わせて一モーション機能命令を構成する。該モーション機能命令はラダー形式でプログラミングの生成を行うことができ、データはラダープログラム中に含む構成とすることができる。また、モーション機能命令は、ラダープログラム中において機能命令であることの表示により表すことができる。
【0010】本発明のモーションコントローラのプログラミング方式では、始めにモーションコントローラが行う動作制御内容に応じて、動作開始条件と軸動作の内容およびその動作実行条件を設定する。設定内容をラダー形式でプログラミングする場合、動作開始条件は通常のラダープログラムの制御条件と同様にラダー形式でプログラミングし、軸動作の内容およびその動作実行条件はモーション機能命令によってプログラミングを行う。モーション機能命令のプログラミングは、モーション機能命令であることの表示とモーション指令の設定により行う。モーション指令の設定は、軸動作の内容を特定する機能名と軸動作の動作実行条件を特定する項目をデータとしプログラムすることより行う。
【0011】ラダー図において、ラダープログラムでプログラムされたモーション機能命令は、モーション機能命令であることと、該モーション機能命令の内容を表すコメントとによって表示され、通常のラダープログラムの機能命令と同様に取り扱われる。本発明のモーション機能命令を用いて生成されたモーションプログラムは、通常のラダープログラムと同様にモーションコントローラによって解読され実行される。
【0012】
【発明の実施の形態】以下、本発明の実施の形態を図を参照しながら詳細に説明する。図1は本発明のモーションコントローラプログラミング方式を適用することができるPMCの一構成例を説明するブロック線図である。図1において、PMC1はシーケンス・プログラム2を入力し、該シーケンス・プログラム2に応じて産業機械一般の制御対象の動作制御を行う。PMC1はバス18を介してCPU10と接続されるROM11,MDI/CRT12,シーケンス・プログラムメモリ13,モーション機能命令メモリ14,入力回路15,出力回路16,および内部リレー17を備え、本発明のモーションコントローラプログラミング方式ではこのPMC1をモーションコントローラとして用いる。
【0013】ROM11は、システム全体を制御するシステムプログラムや命令やデータの入出力等の制御を行う制御プログラムやオブジェクトプログラムを生成するための変換プログラム等の通常のPMCが備える各種プログラムと、本発明のモーションコントローラプログラミング方式を行うためのモーション機能命令を機能命令として取り込む機能を実現するプログラムを備える。MDI/CRT12はシーケンス・プログラム2や各種データの入力を行うための入力装置および表示装置である。シーケンス・プログラムメモリ13は入力したシーケンス・プログラムをPMC1内に格納するための記憶手段である。モーション機能命令メモリ14は、シーケンス・プログラム2の入力時に形成されたモーション機能命令を格納するための記憶手段である。入力回路15は産業機械一般の制御対象3のリレーやスイッチの状態を示す信号をアドレス(例えばX0.0,X6.1)として入力する回路であり、出力回路16は制御対象3のリレーやスイッチへの信号をアドレス(例えばY10.0)として出力する回路である。また、内部リレー17はPMC1内のリレー状態をアドレス(例えばR10.0)として格納するRAM等の記憶手段である。
【0014】図1において、斜線を付して示したモーション機能命令4およびモーション機能命令メモリ14等のモーション機能命令に関する部分を除いた構成は、従来のシーケンス・プログラムをプログラミングし実行するPMCの構成と共通である。したがって、本発明のモーションコントローラプログラミング方式を適用するモーションコントローラの構成は、従来のPMCの構成にモーション機能命令の機能を付加することによって構成することができる。
【0015】次に、シーケンス・プログラムをラダー形式で表したときの本発明のモーション機能命令の構成および表示について図2を用いて説明する。本発明のモーション機能命令4は各軸毎の移動を指令するモーション指令によって構成する。モーション機能命令4は複数個のモーション指令を含む構成とすることができ、所定の移動動作を単一のモーション指令によって実行することができる場合には一つのモーション指令により構成し、単一のモーション指令によって実行することができない場合には複数のモーション指令を組み合わせて構成する。
【0016】各モーション指令A,B,C,・・・は、図2(a)に示すように機能名a,b,c,・・・と該機能の動作実行条件を設定する種々の項目a’,b’,c’,・・・により構成し、該機能名および動作実行条件の項目は、コード変換を要することなく直接データとして入力し設定することができる。機能名はモーション指令の軸動作の内容を特定するものであり、例えば加速度指令,速度指令,軸移動指令,ドゥエル指令等とすることができ、加速度指令についてはACCELという記号を用いて表し、速度指令についてはVELOCという記号を用いて表すことができる。なお、該機能名の表示記号は一例であり任意に設定することができる。また、動作実行条件の項目としては、軸動作を行う軸についての項目,速度や加速度の大きさを表す数値項目,該数値が絶対値である等の特性項目等とすることができ、機能名に応じてあらかじめ設定項目を定めておく。一連のモーション指令A,モーション指令B,・・・の組み合わせによって一つのモーション機能命令を設定し、これによって、PMC1に対して所定の移動指令を実行させる。
【0017】モーション機能命令の設定は、ROM11内に格納したプログラムを用いてPMC1中のMDI/CRT12上に表示しながら行うことができる。図2(b)はモーションプログラムのラダー図上でのモーション機能命令の表示状態を表しており、モーション機能命令の制御条件21とモーション機能命令4を表す矩形枠および転送完了を表すリレー記号22によって表示する。モーション機能命令4を表す矩形枠は、通常のラダー形式によるシーケンス・プログラム中で表される機能命令と同様の表示形式であり、モーション機能命令は通常の機能命令と同様に扱うことができる。モーション機能命令4は、モーション機能命令であることを表示する表記41と、モーション機能の内容を表すコメント42とにより表示される。表記41は例えばMCNTL等の任意の表記を用いることができる、また、コメント42は設定者が任意に記載することができる。
【0018】次に、図3のフローチャートおよび図4,図5の表示画面を表す図を用いて、モーション機能命令の設定手順について説明する。モーションプログラムをラダー図編集によって行う場合、編集を行うプログラムを選択した後メニューでラダー図編集を選択してラダー図編集のモードとする。ラダー図編集は編集画面を参照しながら行うことができる。なお、このラダー図編集は、従来より周知の事項であるためここでは説明を省略し、ラダー図編集のモードとした後、PMC1のMDI/CRT12上においてモーションプログラムを作成するステップから説明する。
【0019】図4(a)は通常の機能命令を用いたモーションプログラムの作成状態を示しており、ラダー図と入力箇所を表すカーソル52を表示するとともに、ガイダンスメッセージ53とファンクションキー54を表示している。ガイダンスメッセージ53はラダー図編集に編集のための案内表示であり、ファンクションキー54はラダー図編集に使用する機能を選択するキーである。本発明のプログラミング方式では、該ファンクションキー54にモーション機能作成のためのキー(図4(a)中の7モーション)を設け、このキーの選択によってラダー図編集においてモーション機能を作成するモードとする(ステップS1)。CPU10はMDI/CRT12上にモーション指令を入力するモーション編集画面を表示する。図4(b)はモーション指令の入力画面表示であり、図4(a)の画面表示に加えて設定項目を表す項目表示55を表示する。項目表示55として、例えば機能名,軸,オペランド1,オペランド2,オペランド3を表示する(ステップS2)。
【0020】機能名の入力を行うために、CPU10は項目表示55の機能名を入力する部分にカーソル52を表示すると共に、ガイダンスメッセージ53に例えば「機能名を入力して下さい」等の案内を表示し、ファンクションキー54に選択する機能名を表示する(ステップS3)。このファンクションキー54に表示された機能名を選択することによって機能名の入力を行うことができる。選択された機能名はカーソル52の位置に該機能名が表示される。なお、機能名の選択は、ファンクションキー52の選択以外にキーから機能名を直接入力して行うこともできる(ステップS4)。図4(c)は機能名を選択した後の画面状態を示しており、機能名としてACCELを選択した場合を示している。このとき、CPU10は選択した機能名とともに、軸を入力する画面を表示する。ステップS4で選択した機能名の軸移動を行わせる軸を指定するために、CPU10は項目表示55の軸を入力する部分にカーソル52を表示すると共に、ガイダンスメッセージ53に例えば「軸を指定して下さい」等の案内を表示し、ファンクションキー54に選択する軸番号等を表示する(ステップS5)。このファンクションキー54に表示された軸番号を選択することによって軸の指定を行うことができる。選択された軸はカーソル52の位置に番号等で表示される。なお、軸の指定は、ファンクションキー52による入力以外にキーから軸番号等を直接入力して行うこともできる(ステップS6)。
【0021】図4(d)は軸を指定した後の画面状態を示しており、軸として軸番号1を指定した場合を示している。このとき、CPU10は指定した軸とともに、機能名で選択された機能を実行する種々の条件を入力する画面を表示する。機能名の軸移動を行わせる条件を指定するために、CPU10は項目表示55のオペランドを入力する部分にカーソル52を表示すると共に、ガイダンスメッセージ53に例えば「加速度を入力して下さい」等の案内を表示する。オペランドは複数設定することができ、機能名が指定する動作が要する条件に応じて入力するオペランドの位置と共にあらかじめ設定しておく(ステップS7)。キーからオペランドに設定数値を入力する。例えば、機能名が加速度の場合には、オペランド1に加速度の大きさを表す数値を入力し、また、オペランド3に該入力値の特性(図5(a)中のLINは加速度方向がリニアーであることを示している)を入力する。また、速度の場合には速度の大きさを表す数値を入力する。入力された数値はカーソル52の位置に表示される(ステップS8)。
【0022】図5(a)は複数個のモーション指令を入力した画面を表しており、軸1に対して加速度と速度と移動指令を設定し、軸2に対して速度と移動指令を設定してモーション機能命令を設定した例を示している。なお、図中のPMOVEは所定の位置への移動を指定する機能名の例であり、CMOVEは連続した移動を指定する機能名の例である。モーション機能命令を構成するモーション指令を全て入力した場合には、END命令等のキーによってモーション指令の入力を終了する(ステップS9)。この後、変更等のキーによって入力したモーション指令の変更を行うこともでき、モーション指令の変更を行う場合には、ステップS3に戻って変更箇所の変更を行う(ステップS10)。
【0023】また、一モーション機能命令の作成の後、他のモーション機能命令の作成を行う場合には、図示しない選択キーによってステップS2のモーション指令の入力画面に戻り、前記ステップと同様の工程により別のモーション機能命令の作成を行うことができる(ステップS11)。
【0024】作成したモーション機能命令は、モーション機能命令メモリ14内にサブプログラミングとして格納し、ラダー図編集に読み出してモーションプログラムの作成に利用することができる。また、複数のモーション機能命令を作成した場合には、各モーション機能命令に識別子等を付すことによってモーション機能命令メモリ14内で特定して取り扱うことができる。なお、コメント等の一覧表示によって、モーション機能命令メモリ14内から所望のモーション機能命令を選択することができる。 モーション機能命令の作成の後、図示しない選択キーによってラダー編集画面に戻すことによって、引続きラダー編集を行うことができる。図5(b)はラダー編集画面におけるモーション機能命令の表示状態を示しており、モーション機能命令は通常のラダー図とともにMCNTLのモーション機能命令であることの表示と内容を表すコメントによって表される。このラダー編集画面において、モーション機能命令の内容を確認する場合には、図示しない選択キーによって図5(c)に示すようにモーション機能命令の内容を表示することができる。
【0025】本発明の実施の形態によれば、モーション指令の機能命令を従来使用しているPMC機能によるプログラミングソフトに追加することによって、従来のプログラミングソフトを活用することができる。本発明の実施の形態によれば、ラダー情報とモーション指令とを混在した形態でプログラムすることができる。本発明の実施の形態によれば、従来のPMC軸制御機能のように特殊なコードを用いることなくデータの入力を行うことができる。また、本発明の実施の形態によれば、設定したモーション指令の機能命令をサブプログラムとして記憶することによって、プログラミングの作業量を減少させることができる。
【0026】
【発明の効果】以上説明したように、本発明によれば、モーションコントローラのプログラミング方式において、移動制御動作における機能命令のデータの入力を容易に行うことができる。また、移動制御動作を一機能命令で設定することができ、制御動作の内容を容易に把握し確認することができる。
【図面の簡単な説明】
【図1】本発明のモーションコントローラプログラミング方式を適用することができるPMCの一構成例を説明するブロック線図である。
【図2】本発明のモーション機能命令の構成および表示を説明するための図である。
【図3】本発明のモーション機能命令を設定する手順を説明するためのフローチャートである。
【図4】本発明のモーション機能命令を設定する手順を説明するための表示画面の図である。
【図5】本発明のモーション機能命令を設定する手順を説明するための表示画面の図である。
【図6】従来のPMC軸制御のためのプログラミング例である。
【符号の説明】
1 PMC
2 シーケンス・プログラム
3 制御対象
10 CPU
11 ROM
12 MDI/CRT
13 シーケンス・プログラムメモリ
14 モーション機能命令メモリ
51 表示画面
52 カーソル
53 ガイダンスメッセージ
54 ファンクションキー
55 項目表示

【特許請求の範囲】
【請求項1】 モーションコントローラの動作制御を行うプログラムを機能命令の設定により生成するプログラミング方式において、前記機能命令は、軸移動を設定するモーション指令を少なくとも一つ含んだモーション機能命令を備えたことを特徴とするモーションコントローラプログラミング方式。
【請求項2】 モーションコントローラの動作制御を機能命令を含むラダープログラムにより生成するプログラミング方式において、前記ラダープログラム中に、軸移動を設定するモーション指令を少なくとも一つ含んだモーション機能命令を機能命令として取り込む機能を備えたことを特徴とするモーションコントローラプログラミング方式。
【請求項3】 前記モーション指令は、軸動作の内容を特定する機能名および軸動作の動作実行条件を特定する項目をデータとして含むことを特徴とする請求項1,又は2記載のモーションコントローラプログラミング方式。
【請求項4】 前記モーション指令は、移動指令,停止指令,速度指令を含むことを特徴とする請求項3記載のモーションコントローラプログラミング方式。
【請求項5】 前記モーション機能命令はラダー形式でプログラミング生成されることを特徴とする請求項1,2,3又は4記載のモーションコントローラプログラミング方式。
【請求項6】 前記データはラダープログラム中に含まれることを特徴とする請求項3記載のモーションコントローラプログラミング方式。

【図1】
image rotate


【図2】
image rotate


【図4】
image rotate


【図6】
image rotate


【図3】
image rotate


【図5】
image rotate


【公開番号】特開平9−258808
【公開日】平成9年(1997)10月3日
【国際特許分類】
【出願番号】特願平8−87134
【出願日】平成8年(1996)3月18日
【出願人】(390008235)ファナック株式会社 (1,110)