JP2000105605A - ロボット制御装置 - Google Patents

ロボット制御装置

Info

Publication number
JP2000105605A
JP2000105605A JP10291512A JP29151298A JP2000105605A JP 2000105605 A JP2000105605 A JP 2000105605A JP 10291512 A JP10291512 A JP 10291512A JP 29151298 A JP29151298 A JP 29151298A JP 2000105605 A JP2000105605 A JP 2000105605A
Authority
JP
Japan
Prior art keywords
value
axis
motor
power
robot
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP10291512A
Other languages
English (en)
Inventor
Seiji Ogawa
省二 小川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyoda Koki KK
Original Assignee
Toyoda Koki KK
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyoda Koki KK filed Critical Toyoda Koki KK
Priority to JP10291512A priority Critical patent/JP2000105605A/ja
Publication of JP2000105605A publication Critical patent/JP2000105605A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

(57)【要約】 【課題】 電力計等を用いずに、ロボットの各軸毎の負
荷状況を監視する。 【解決手段】 j軸サーボCPU(j=1,2,…,
6)が実行する消費又は回生電力関連値記憶・演算ルー
チンでは、モータMjの最近2分(ΔT2 )間の消費電
力量Ej と、今回のシステム立ち上げ以降のモータMj
の回生電力の最大値Pj とを2分毎にロボット制御装置
のメインCPUが使用するRAM上に出力する。本ルー
チンでは、まず、モータMjの電流の測定値Ia を入力
し、次に、現在のモータMjの消費・回生電力の値Pを
計算する。ただし、P=KIa ωa において、Kはモー
タのトルク定数(逆起電力定数)、Ia はモータに流れ
る電流の測定値、ωa はモータの角速度の測定値であ
る。Pの積分計算では、消費電力量(KIa Δθ≧0)
を変数Eに加算し、一方、変数PMAX の値と−Pの値と
を比較し、−Pの方が大きければ、変数PMAX に−Pの
値を代入する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ロボットに備えら
れた複数の動作軸を制御するロボット制御装置に関し、
特に産業用ロボットの保守や故障診断に関する情報をモ
ニタリングするロボット制御装置に関する。
【0002】
【従来の技術】ロボットの保守・点検を行う際には、ロ
ボットの各動作軸に対する負荷の状況に関する情報が有
用となる。例えば、従来、これらの情報としては、アワ
ーメータ等を用いて単純にロボットの稼働時間を計測し
たり、図11に示すように、電力計を用いてロボット全
体の使用電力量を求めたりしていた。
【0003】
【発明が解決しようとする課題】図11は、従来技術に
よるロボット制御装置200を用いたロボット駆動シス
テムのシステム構成図である。従来、このようなロボッ
ト駆動システムにおいて使用電力量を求めるためには、
電力計が別途必要となる。また、このように電力計によ
り、使用電力を求める方式では、特定の動作軸に負荷が
集中した場合、例えば、図11に示すように、2軸(θ
2 方向の動作軸)に負荷が偏っている場合、その他の軸
についての負荷は比較的小さいため、ロボット全体とし
ては、消費電力量が小さく抑えられてしまう。従って、
このような状況においては、ロボット全体の使用電力量
を参考にしているだけでは、負荷集中が起っている2軸
に対する保守・点検の時期が遅れてしまう恐れがあっ
た。
【0004】本発明は、上記の課題を解決するために成
されたものであり、その目的は、ロボット駆動システム
において、電力計等の外付けの特別な装置を用いずに、
ロボットの各動作軸毎の負荷状況を監視できる機能を提
供することである。
【0005】
【課題を解決するための手段】上記の課題を解決するた
めには、以下の手段が有効である。即ち、第1の手段
は、ロボットに備えられた複数個の動作軸の動作を制御
するロボット制御装置において、動作軸の各軸単位の消
費又は回生電力関連値を検知する検知手段と、この消費
又は回生電力関連値に関する演算を実行する記憶・演算
手段と、この記憶・演算手段により算出された消費又は
回生電力関連値を表示画面又は出力装置に動作軸の各軸
単位に出力する出力手段とを設けることである。
【0006】また、第2の手段は、上記の第1の手段に
おいて、上記の検知手段を、動作軸のモータが消費又は
回生する電気の電流値とモータの角速度とを各軸単位に
検知する手段とし、上記の記憶・演算手段を、モータが
消費又は回生する電気の電力または電力量を電流値と角
速度とから各軸単位に算出する手段とし、上記の出力手
段を、電力又は電力量を動作軸の各軸単位に出力する手
段とすることである。
【0007】更に、第3の手段は、上記の第1又は第2
の手段において、上記の記憶・演算手段により、動作軸
が故障する時まで、又は、動作軸が故障診断を必要とす
る時までにモータが消費すると考えられる限界消費電力
量で、現在までにモータが消費した電力量を割り、上記
の出力手段により、割り算の商又は百分率を各軸単位に
出力することである。以上の手段を用いれば、前記の課
題を解決することができる。
【0008】
【作用及び発明の効果】モータの消費又は回生電力P
[W]は、以下の式により、与えられる。
【数1】 P=τωa =KIa ωa (P≧0の時、消費電力, P<0の時、回生電力) (1) ただし、ここで、τ[N・m]はモータのトルク、K
[N・m/A]はモータのトルク定数(逆起電力定
数)、Ia [A]はモータに流れる電流の測定値、ωa
[rad/s]はモータの角速度の測定値である。
【0009】このように、モータの消費又は回生電力P
は、一般に、モータに流れる電流Ia とモータの角速度
ωa とが分かれば、計算により求めることができる。
(ただし、交流モータの場合、トルク定数と逆起電力定
数とは、一般には、一致しない。) 従って、モータに流れる電流Ia とモータの角速度ωa
とをサーボ制御装置によって、常時検知すれば、これら
の測定値を用いた計算により、モータの消費又は回生電
力P及び、モータの消費又は回生電力量(積分計算によ
る累積値)を常時把握することが可能となる。
【0010】本発明は、これらの消費又は回生電力或い
は、消費又は回生電力量をサーボ制御装置を備えたロボ
ット制御装置において、各動作軸毎に常時モニタリング
することにより、ロボットの各軸毎の負荷状況を常時監
視可能とするものであり、これにより、以下の効果を得
ることができる。 (効果1)ロボット制御装置以外に特別な装置を使用す
ることなく、ロボットの各動作軸単位の消費電力量(負
荷状況)の監視が常時可能となる。 (効果2)ロボットの保守・点検の時期をロボットの各
動作軸単位に正確に把握できる。 (効果3)各動作軸単位に消費電力量が分かれば、特定
の動作軸に対する負荷集中を回避したり、各動作軸の作
業量の負荷バランスを考慮した動作経路の最適化設計を
行ったりすることができる。 (効果4)各動作軸単位に回生電力の最大値が管理可能
となるため、ロボットを設計する際に、回生抵抗の値を
決定する上で、この値を参考にすることができる。例え
ば、この回生抵抗の値を、上記の回生電力の最大値に比
例定数を掛けた値に決定することができる。
【0011】
【発明の実施の形態】以下、本発明を具体的な実施例に
基づいて説明する。図1は、本発明によるロボット制御
装置100のハードウェア構成図である。本ロボット制
御装置100には、制御対象の直流モータ(以下、モー
タという)が6機接続されており、これらのモータM1
〜M6が回転することによって、ロボットの各軸(1軸
〜6軸)が動作する。各モータM1〜M6は、各デジタ
ルサーボ制御装置101〜106によって制御される。
モータM1〜M6の各回転角θは、各エンコーダe1〜
e6により検出される。
【0012】デジタルサーボ制御装置101は、次のよ
うに構成されている。他のデジタルサーボ制御装置10
2〜106も、デジタルサーボ制御装置101と同様に
構成されている。即ち、デジタルサーボ制御装置101
は、図1に示すように、1軸サーボCPU110と、A
/D変換器111と、ROM112と、RAM113
と、DSP(デジタル・シグナル・プロセッサ)120
と、A/D変換器121と、ROM122と、共用RA
M123などから構成されている。1軸サーボCPU1
10は、ロボット制御装置100のメインCPU180
から送られる1軸の回転角の指令値θn を受け取り、A
/D変換器111、121からの出力値θa 、Ia を入
力し、所定のアルゴリズムに従って、回転角の指令値θ
n に対応する角加速度の指令値αn を計算してDSP1
20に出力する。
【0013】DSP120は、角加速度の指令値αn
電流の測定値Ia を入力し、所定のアルゴリズムに従っ
て、電圧の指令値Vn を計算し、パワーアンプ141に
出力する。パワーアンプ141は、指令値Vn に従っ
て、モータM1に所定の電力を供給する。電流検出器1
51は、モータM1に流れる電流の値を測定し、その結
果をA/D変換器121に出力する。エンコーダe1
は、モータM1の回転角を測定し、その測定値をA/D
変換器111に出力する。これらの構成により、モータ
M1は、古典的或いは現代的サーボ制御理論に基づいて
制御される。
【0014】メインCPU180は、上記と同様に他の
デジタルサーボ制御装置102〜106に対しても、各
動作軸の回転角θを指令することにより、M2〜M6の
各モータを制御する。共用RAM182は、メインCP
U180及びj軸サーボCPU(j=1,2,…,6)
によって共通の記憶装置として共用される。入出力装置
184は、オペレーション・ボックス或いは、CRTと
キーボードから成る端末装置などから構成されており、
入出力インタフェース(IF)183を介して、コマン
ド等の各種指令を受け付けたり、その結果を応答したり
する。
【0015】例えば、ロボット制御装置100に対し
て、現在の消費電力に関する情報を提供させるコマンド
(以下、Aコマンドという)を入出力装置184より投
入した場合には、ロボット制御装置100は、入出力装
置184の出力装置に図2の出力画面20に示すような
消費電力関連値を表示する。例えば、Aコマンドにより
出力された出力画面20の表示欄20aには6軸の軸番
号「6」が、表示欄20bには6軸の最近10分間の消
費電力[W]の平均値「33」が、表示欄20cには6
軸の最近10分間の平均稼働率((消費電力/最大出
力)の平均値×100%)「33%」が、表示欄20d
には6軸の現在までの累積消費電力量[KWh]「79
27」が、表示欄26eには6軸の現在までの老朽度
(累積消費電力量/限界消費電力量×100%)「58
%」が、それぞれ表示されている。
【0016】また、ロボット制御装置100に対して、
現在までの回生電力に関する情報を提供させるコマンド
(以下、Bコマンドという)を入出力装置184より投
入した場合には、ロボット制御装置100は、入出力装
置184の出力装置の出力画面20に図3に示すような
回生電力関連値を表示する。例えば、Bコマンドにより
出力された出力画面20の表示欄30aには6軸の軸番
号「6」が、表示欄30bには今回のシステム立ち上げ
よりも前に発生した6軸の回生電力の最大値「74」
が、表示欄30cには今回のシステム立ち上げ以降に発
生した6軸の回生電力の最大値「73」が、それぞれ表
示されている。
【0017】このように、Aコマンド或いは、Bコマン
ドにより、入出力装置184の出力装置の出力画面20
には図2或いは図3に示す消費又は回生電力関連値を表
示させるためには、以下に示すプログラムに従って、メ
インCPU180及び、デジタルサーボ制御装置101
〜106のj軸サーボCPU(j=1,2,…,6)を
制御すれば良い。
【0018】図4に、j軸サーボCPU(j=1,2,
…,6)の角加速度の指令値αn の演算処理ルーチンの
フローチャートを示す。本ルーチンでは、まず最初に、
ステップ405により、j軸のモータMjの消費電力量
を積分計算するための変数Eの値を0に初期設定する。
次に、ステップ410では、j軸のモータMjの回生電
力の最大値を記憶するための変数PMAXの値を0に初期
設定する。ステップ415では、時間変数T2 に、現在
時刻(タイマ時刻)tよりもΔT2 だけ大きな値(t+
ΔT2 )を設定する。本実施例では、ΔT2 =120
(2分)とする。この時間設定は、2分おきに定期的な
処理を行うためのものである。
【0019】ステップ420では、エンコーダejによ
り測定されたモータMjの回転角の測定値θa をA/D
変換器111より入力する。ステップ425では、θa
の入力時刻(現在時刻)を時間変数ta に記憶する。以
上の処理は、本ルーチンの初期化処理である。以下、本
ルーチンのループ処理について説明する。
【0020】ステップ430では、回転角の変数θb
値を前回測定したθa の値に、時間変数tb の値を前回
記憶したta の値に再設定する。ステップ435では、
回転角の指令値θn をメインCPU180より受け取
る。ステップ440では、エンコーダejにより測定さ
れたモータMjの回転角の測定値θa をA/D変換器1
11より入力する。ステップ445では、θa の入力時
刻(現在時刻)を時間変数ta に記憶する。ステップ4
55では、回転角の指令値θn と回転角の測定値θa
り、計算式「ωn =ε(θn −θa );εは係数」を用
いて、角速度の指令値ωn を計算する。
【0021】ステップ460では、今回の回転角の測定
値θa と前回の回転角の測定値θbとの差分Δθの値
(θa −θb )を求める。ステップ465では、次式に
より、角速度の測定値ωa を求める。
【数2】 ωa =Δθ/(ta −tb ) (2) ステップ470では、角速度の指令値ωn と角速度の測
定値ωa より、計算式「αn =κ(ωn −ωa );κは
係数」を用いて、角加速度の指令値αn を計算する。ス
テップ475では、角加速度の指令値αn をDSP12
0に出力する。ステップ480では、図5に示す消費又
は回生電力関連値記憶・演算ルーチンを呼び出す。以上
のループ処理を繰り返し実行すれば、角加速度の指令値
αn をDSP120に出力し続けることができる。
【0022】図5に、j軸サーボCPU(j=1,2,
…,6)の消費又は回生電力関連値記憶・演算ルーチン
のフローチャートを示す。本ルーチンは、上記のステッ
プ480によって、呼び出されるものである。本ルーチ
ンは、図1に示すように、j軸モータMjの最近2分
(ΔT2 )間の消費電力量Ej と、今回のシステム立ち
上げ以降のj軸モータMjの回生電力の最大値Pj とを
2分毎に共用RAM182に出力するものである。
【0023】本ルーチンでは、まず最初に、ステップ5
05により、電流検出器151によって計測され、A/
D変換器121によってデジタル変換された、モータM
jの電流の測定値Ia を入力する。次に、ステップ51
0では、(1)により、現在のモータMjの消費又は回
生電力の値Pを計算する。ただし、ここでωa は、ステ
ップ465で求めた角速度の測定値である。ステップ5
15では、Pの符号を判定し、Pが負ならば、ステップ
525へ、そうでなければステップ520へ処理を移
す。ステップ520では、前記のループ処理(図4)が
1回実行される間にモータMjにより消費された電力量
(KIa Δθ)を変数Eに加算する。即ち、消費電力量
をPの積分計算によって求める。一方、ステップ525
では、変数PMAX の値と−Pの値とを比較し、−Pの方
が大きければ、ステップ530へ、そうでなければステ
ップ535へ処理を移す。ステップ530では、変数P
MAXに−Pの値を代入する。
【0024】ステップ535では、現在時刻t(タイマ
時刻)と停止指令フラグfj の値を判定し、「t≧
2 、又は、fj =ON」ならば、ステップ540へ処
理を移し、そうでない場合には、本ルーチンの呼び出し
元に制御を戻す(リターンする)。停止指令フラグfj
は、システムを停止する際にメインCPU180によ
り、ON状態に設定される指令フラグである。ステップ
540では、共用RAM182上の変数Ej (j軸モー
タMjの最近2分間の消費電力量)の格納領域が、空き
状態(Ej =−1)であるか否かを判定し、Ej =−1
(空き状態)ならば、ステップ555へ、そうでなけれ
ば、ステップ545へ処理を移す。ステップ545で
は、停止指令フラグfj を参照し、fj =ONならば、
ステップ550へ処理を移し、そうでない場合には、本
ルーチンの呼び出し元に制御を戻す。ステップ550で
は、停止指令フラグfj の値をOFF状態に設定する。
この場合には、本ルーチンは、本ルーチンの呼び出し元
に制御を戻さずに終了する。
【0025】ステップ555では、ステップ520を繰
り返し実行することによって得られた最近2分間のMj
による消費電力量Eの値を、共用RAM182上の変数
格納領域Ej に出力する。ステップ560では、ステッ
プ530を繰り返し実行することによって得られた今回
のシステム立ち上げ以降のj軸モータMjの回生電力の
最大値PMAX の値を、共用RAM182上の変数格納領
域Pj に出力する。ステップ565では、上記の変数E
(消費電力量)の値を0に再設定する。
【0026】ステップ570では、停止指令フラグfj
を参照し、fj =ONならば、ステップ550へ処理を
移し、そうでない場合には、ステップ575へ処理を移
す。ステップ575では、時間変数T2 に、現在時刻
(タイマ時刻)tよりもΔT2だけ大きな値(t+ΔT
2 )を設定する。この場合、その後は、本ルーチンの呼
び出し元に制御を戻す(リターンする)。
【0027】これらの処理を実現する上で、重要となる
共用RAM182上の消費又は回生電力関連値記憶用の
テーブルの構成図を図6に示す。共用RAM182は、
メインCPU180だけが直接使用するメインCPU使
用領域182aと、j軸サーボCPU(j=1,2,
…,6)とメインCPU180とが共用で使用する共用
領域182bとを備えている。メインCPU使用領域1
82aには、各モータMjの消費又は回生電力関連値を
管理するための電力管理テーブル182cが、それぞれ
同じ仕様で各サーボCPU対応に合計6台設けられてい
る。
【0028】例えば、1軸サーボCPU対応の電力管理
テーブル182cには、モータM1に関する以下の変数
の格納領域が設けられている。 W1 限界消費電力量〔KW・h〕 F1 最大出力〔W〕 Q1 最大回生電力〔W〕(今回のシステム立ち上げ
よりも前に記録された最大値) J1 累積消費電力量〔W・s〕(通算) N1 1,i のカレント・エントリーのiの値(1≦
i≦10) E1,i 最近20分間の各インターバル毎の消費電力量
〔W・s〕(ΔT2 毎に10エントリー)
【0029】また、共用領域182bには、メインCP
U180と各サーボCPUとのインタフェースを実現す
るために、接続テーブル182dが、それぞれ同じ仕様
で各サーボCPU対応に合計6個設けられている。例え
ば、1軸サーボCPU対応の接続テーブル182cに
は、以下の変数の格納領域が設けられている。 E1 消費電力量〔W・s〕(最近2分間分) P1 最大回生電力〔W〕(今回のシステム立ち上げ
以降の最大値) f1 停止指令フラグ(ONならば、停止指令)
【0030】尚、上記の12個のテーブル(電力管理テ
ーブル182c、接続テーブル182d)は、複数のプ
ロセス(タスク)や割り込み処理ルーチンから、同時に
アクセス(参照、更新)される恐れが有るため、同時ア
クセスによって発生する論理矛盾を排他制御により未然
に回避する必要がある。しかしながら、排他制御マクロ
(LOCKマクロ/UNLOCKマクロ等)や、プロセ
ス間同期マクロ(POSTマクロ/WAITマクロ等)
や、或いは、排他制御用の機械命令(TS命令/CS命
令/CDS命令等)を用いて、上記テーブルの排他制御
処理を行うと、ソフトウェア、ハードウェアの両面で排
他制御処理のオーバヘッドが大きくなり、本来のサーボ
制御の精度に対して悪影響をもたらす場合が生じるため
注意を要する。特に、上記の接続テーブル182dにつ
いては、複数台のプロセッサ(メインCPU180、j
軸サーボCPU)から同時にアクセス(参照、更新)さ
れるケースが考えられるため、上記のようなマクロや機
械命令を用いずに、本実施例において詳細に開示してい
るように、オーバヘッドの小さな排他制御を実現するこ
とが、本来のサーボ制御の精度を保つ上で重要となる。
【0031】図7に、メインCPUのテーブル初期化ル
ーチンのフローチャートを示す。本ルーチンでは、上記
12個のテーブルの初期化を全サーボCPUの始動前に
行う。本ルーチンでは、まず最初に、ステップ705に
より、プログラムの制御変数j(整数)の値を1に設定
する。本制御変数jは、ロボットの各動作軸の軸番号に
対応する。例えば、4軸サーボCPU、或いは、モータ
M4に関する計算をしている時は、j=4である。
【0032】次に、ステップ710では、前記のWj
j ,Qj ,Jj の各値をディスク装置185(図1)
より入力する。ステップ715では、上記のカレント・
エントリー番号Nj の値を1に初期化する。ステップ7
20では、プログラムの制御変数i(整数)の値を1に
設定する。ステップ725では、上記の消費電力量E
j,i の値を0に初期化する。ステップ730では、制御
変数iの値を1だけ増加する。ステップ735では、制
御変数iの値を参照し、i=11ならば、ステップ74
0へ、そうでなければ、ステップ725へ処理を移す。
ステップ740では、停止指令フラグfj の値をOFF
にする。ステップ745では、上記の消費電力量Ej
値を−1にする。これは、本格納領域Ej に消費電力量
の値が格納されていないことを意味するものである。
【0033】ステップ750では、上記のPj の値を0
に初期化する。ステップ755では、制御変数jの値を
1だけ増加する。ステップ760では、制御変数jの値
を参照し、j=7ならば、ステップ765へ、そうでな
ければ、ステップ710へ処理を移す。ステップ765
では、タイマ割り込み時刻T1 を現在時刻tよりもΔT
1 だけ大きな値に設定する。本実施例では、ΔT1 =6
0(1分)とする。即ち、本ステップ765は、メイン
CPUのタイマ割り込みルーチンを1分毎に起動するた
めのタイマセットの初期設定処理である。
【0034】メインCPU180のタイマ割り込みルー
チンとしては、図8のメインCPUテーブル管理ルーチ
ンを予め登録しておく。本ルーチンは、現在時刻t≧T
1 と成った時点でメインCPU180によりタイマ割り
込みルーチンとして実行されるものである。本ルーチン
は、割り込み禁止状態で実行される。
【0035】本ルーチンでは、まず最初に、ステップ8
05により、制御変数jの値を1に初期化する。次に、
ステップ810により、Ej の値が−1(空き状態)か
否かを判定し、Ej =−1ならば、ステップ850へ、
そうでなければ、ステップ815へ処理を移す。ステッ
プ815では、制御変数iに前記のカレント・エントリ
ー番号Nj の値を代入する。ステップ820では、前記
のJj の値をEj,i だけ増加させる。ステップ825で
は、Ej,i にEj の値を設定する。ステップ830で
は、Ej の値を−1(空き状態)に再設定する。
【0036】ステップ835では、前記のNj の値を1
だけ増加させる。ステップ840では、Nj の値を参照
し、Nj =11ならば、ステップ845へ、そうでなけ
れば、ステップ850へ処理を移す。ステップ845で
は、Nj の値を1に設定する。ステップ850では、制
御変数jの値を1だけ増加させる。ステップ855で
は、制御変数jの値を参照し、j=7ならば、ステップ
860へ、そうでなければ、ステップ810へ処理を移
す。ステップ860では、タイマ割り込み時刻T1 を現
在時刻tよりもΔT1 だけ大きな値に設定する。本実施
例では、ΔT1 =60(1分)とする。即ち、本ステッ
プ860は、本テーブル管理ルーチンを1分毎に起動す
るためのタイマセット処理である。
【0037】尚、本実施例では、ΔT1 =60(1分=
ΔT2 /2)としているが、この値は、120(2分=
ΔT2 )程度でも良い。本実施例では、図5のステップ
540で、Ej ≠−1となった際に、平常時のj軸サー
ボCPUのオーバヘッドが増加するので、その確率を極
力低減するために、ΔT1 =ΔT2 /2に設定してい
る。また、逆に、ΔT1 を小さくし過ぎると、メインC
PU180のオーバヘッドが増加するので注意を要す
る。
【0038】以上の処理制御により、6個の各電力管理
テーブル182c(図6)には、各モータMj(1≦j
≦6)によって消費された電力量が記録される。また、
特に、最近20分間に消費された電力量については、2
分間の各インタバル毎の消費電力量がEj,i (1≦i≦
10)に記録されている。以下、これらの値を用いて、
出力画面20(図2)を入出力装置184(図1)の出
力装置に出力する手段について説明する。
【0039】図9は、メインCPUのAコマンド(消費
電力関連値画面表示用の前記コマンド)処理ルーチンの
フローチャートである。本ルーチンは、入出力装置18
4からのAコマンドの投入により、起動されるものであ
る。本ルーチンでは、まず最初に、ステップ905によ
り、出力装置の画面の初期化を行う。即ち、出力画面2
0(図2)の各軸毎の消費電力関連値の表示欄20a,
20b,20c,20dが、ブランク・クリアされた状
態の画面を入出力装置184の出力装置に表示する。
【0040】次に、ステップ910では、6個の各電力
管理テーブル182cを、メインCPU使用領域182
a上の図略の本コマンド処理専用のワーク領域に複写す
る。本複写処理は、図8のタイマ割り込みルーチンとの
処理の交錯(論理矛盾)を回避するために、割り込み禁
止状態で実行する。本コマンド処理ルーチンの以下の処
理では、電力管理テーブル182cは直接には参照せ
ず、その代わりに上記複写処理後のワーク領域上のそれ
ぞれ対応する同値の各変数を参照する。ステップ915
では、プログラムの制御変数jを1に初期化する。本制
御変数jは、各動作軸の軸番号に対応する変数である。
【0041】以下、各軸毎の消費電力関連値を出力画面
20(図2)の各行単位に表示するための処理を行う。
この各行単位の処理は、6回だけ繰り返し実行されるも
のである。ステップ920では、集計する消費電力量E
j,i のエントリーの件数m(1≦m≦10)をカウント
するためのカウンタkの値を0に初期設定する。例え
ば、表示欄20bに過去10分間の消費電力の平均値を
表示する場合には、
【数3】 m=10分/ΔT2 =600〔秒〕/120〔秒〕=5〔件〕 (3) である。
【0042】ステップ925では、前記のカレント・エ
ントリー番号Nj の値を制御変数iに代入する。ステッ
プ930では、モータMjの消費電力の平均値を求める
ための変数uj を0に初期設定する。ステップ935で
は、制御変数iの値を1だけ減じる。この処理により、
消費電力量Ej,i のエントリーを1つづつ過去に逆上っ
て集計することが可能となる。ただし、i=0と成った
場合には、ステップ936、937の作用により、制御
変数iの値は、10に設定される。ステップ940で
は、変数uj の値をEj,i だけ増加させる。ステップ9
45、946では、カウンタkの値を1だけ増加させ、
その結果、「k=m」ならば、ステップ950へ、そう
でなければ、ステップ935へ処理を移す。
【0043】ステップ950では、変数uj の値をmΔ
2 で割り、その演算結果(商)を再び変数uj に格納
する。ステップ955では、次式により、モータMjの
稼働率を百分率で求める。
【数4】 rj =(uj /Fj )×100% (4) ステップ960では、変数Uj に累積消費電力量Jj
値を代入する。ステップ965では、制御変数iの値を
1に初期化する。ステップ970では、変数Uj の値を
j,i だけ増加させる。本ステップ970は、ステップ
975、976の作用により、i=1,2,…,10の
合計10回に渡って繰り返し実行される。
【0044】その後、ステップ980では、変数Uj
集計された累積消費電力量を〔W・s〕から〔KW・
h〕に換算する。ステップ985では、次式により、モ
ータMjの老朽度を百分率で求める。
【数5】 Rj =(Uj /Wj )×100% (5) ステップ990では、以上の計算により求めた平均電力
j 、平均稼働率rj(百分率)、累積消費電力量
j 、老朽度Rj (百分率)の値を出力画面20のj軸
の表示欄20a,20b,20c,20dにそれぞれ出
力する。以上のステップ920以降の処理は、ステップ
995、996の作用により、各動作軸対応に1回ず
つ、合計6回だけ実行される。以上の処理により、前記
のAコマンドを実現することができる。
【0045】尚、前記のBコマンドを実現するための処
理については、Aコマンドと同様に、或いは、Aコマン
ドよりも遥かに容易に具現化できる。即ち、前記のQj
の値を出力画面20(図3)の表示欄30bに、前記の
j の値を表示欄30cに、それぞれ換算処理や集計処
理等を行うことなくそのまま各軸単位に出力表示すれば
良い。
【0046】図10に、メインCPUの停止処理ルーチ
ンのフローチャートを示す。この処理は、前記Wj ,F
j ,Qj ,Jj の各値をディスク装置185(図1)に
保存するための処理であり、システム停止処理が行われ
る際に、呼び出されて実行されるものである。
【0047】本ルーチンでは、まず最初に、ステップ3
05により、メインCPUのタイマ割り込み時刻を無限
大(上記のシステム停止処理が全て完了する時刻よりも
十分に大きな時刻)に設定する。或いは、ステップ30
5の代わりに、タイマ割り込みに対するマスク設定処理
を行ったり、本ルーチンを割り込み禁止状態に設定する
処理を行ったりしても良い。次に、ステップ310で
は、図8のテーブル管理ルーチンのステップ805から
ステップ855までの一連の処理(以下、処理ステップ
群Z)と全く同じ処理を実行する。ステップ315で
は、制御変数jの値を1に初期化する。
【0048】ステップ320では、j軸サーボCPUに
対する停止指令フラグfj をONに設定する。ステップ
325では、停止指令フラグfj がOFF状態になるま
で、停止指令フラグfj の状態を繰り返しチェック(参
照)する。この処理は、j軸サーボCPUに対して、図
5のステップ555、560を実行させるためのもので
ある。ステップ330では、制御変数jの値を1だけ増
加する。ステップ335では、制御変数jの値を参照
し、j=7ならば、ステップ340へ、そうでなけれ
ば、ステップ320へ処理を移す。本ステップ335の
作用により、メインCPU180は、各サーボCPUに
対して図5のステップ555、560をそれぞれ1度ず
つ実行させることができる。ステップ340では、再度
上記の処理ステップ群Zを実行する。ステップ345で
は、制御変数jの値を1に初期化する。
【0049】処理ステップ350、355では、今回の
システム立ち上げ以降のモータMjの最大回生電力Pj
と前回までのモータMjの最大回生電力Qj とを比較
し、その値の小さくない方を最大回生電力Qj として保
存する。ステップ360〜375では、10エントリー
分の消費電力量Ej,i (1≦i≦10)を累積消費電力
量Jj に加算する。ステップ380では、以上の処理に
より確定した、Wj ,Fj ,Qj ,Jj の各値をディス
ク装置185に出力する。以上のステップ350以降の
処理は、ステップ385、390の作用により、各サー
ボCPU対応に1度ずつ合計6回だけ繰り返し実行され
る。
【0050】以上の処理により、前記のAコマンド、及
び、Bコマンドをサーボ制御の精度を保ったまま実現す
ることができる。
【0051】尚、上記の実施例では、Ej =−1なる排
他制御用のキーワード(排他語)を用いたが、上記の実
施例において、ΔT1 =ΔT2 =120(2分)とし、
タイマ時刻における偶数分台(例:午前10時02分0
0秒〜59秒まで)には、メインCPU180はEj
参照のみを行い、タイマ時刻で奇数分台(例:午前10
時03分00秒〜59秒まで)には、サーボCPUはE
j の更新のみを行うことにすれば、排他語を用いること
なく時刻で排他制御が可能となる。従って、Ej の排他
語としての判定処理(例:図5のステップ540、図8
のステップ810)やEj の排他語としての更新処理
(例:図8のステップ830)をすることなく消費又は
回生電力関連値の記憶・演算に関する論理矛盾を回避で
きる。このようなアクセス時刻による排他処理を行え
ば、消費又は回生電力関連値の記憶・演算に必要なテー
ブル(図6)の排他制御処理オーバヘッドを更に削減で
きるので、本来のサーボ制御の精度を極力落とさずに、
消費又は回生電力関連値の記憶・演算を実施することも
可能である。
【0052】また、上記の実施例では、Aコマンド、B
コマンドのように、コマンドが投入された時に、そのコ
マンドに応答する形で、その時点のデータだけを画面表
示したが、本発明は、リアルタイム型、バッチ型(デー
タ収集時刻をモニタリング・データに付加し、ディスク
上に随時蓄積する方法)の何方のタイプのモニタにも応
用できる。また、リアルタイム型、バッチ型の双方を同
時に実施することも可能である。また、出力用のプログ
ラムを変更または、追加すれば、消費又は回生電力関連
値を各軸単位に画面にリアルタイムにグラフ出力するこ
とも可能である。或いは、また、集計間隔を短くして、
リアルタイムの情報を常時画面表示するようにしても良
い。
【0053】また、上記の実施例では、図5のステップ
520を繰り返し実行することにより、電力Pの時間積
分を実現したが、時間積分∫Pdt(消費又は回生電力
量)の計算方法は、他にも多数有る。例えば、「P=I
・V」として積分計算したり、「I・ω≡I・θ′=
(I・θ)′−I′・θ」を用いて、部分積分法によ
り、積分計算したりしても良い。これらの積分演算処理
においては、検知可能な任意の電力関連値を入力し、こ
れらの諸入力値から電力計算可能な任意の計算式を用い
て前記と同等の時間積分を実行しても良い。
【0054】また、上記の実施例のモータは、直流モー
タの場合について示したが、本発明は、システムで使用
するモータの種類には、無関係に応用することができ
る。また、本発明は、サーボ制御の制御理論に直接左右
されるものではないので、本発明は、現代的な制御方式
のサーボ制御装置にも適用できる。
【0055】また、上記の実施例では、各動作軸の消費
電力量より各軸の負荷状況を把握できるようにAコマン
ドを構成したが、各動作軸の作業量の負荷や部品の寿命
は、累積回生電力量だけからでも推定できるので、上記
実施例において、累積消費電力量Jj を求めた代わり
に、累積回生電力量を求め、表示することにより、各動
作軸の負荷状況を把握するようにしても良い。
【0056】また、上記の実施例では、概ね、ロボット
制御装置を作動させる従来のソフトウェアの拡張や追加
・修正により、本発明の実施を図ったが、本発明は、ハ
ードウェア回路によるサーボ制御装置にも応用できる。
また、フローチャートを用いて示した上記のアルゴリズ
ムの内の適当な一部分は、ハードウエアによって置き換
えることも可能である。
【図面の簡単な説明】
【図1】本発明によるロボット制御装置100のハード
ウェア構成図。
【図2】ロボット制御装置100による消費電力関連値
の画面表示例。
【図3】ロボット制御装置100による回生電力関連値
の画面表示例。
【図4】j軸サーボCPU(j=1,2,…,6)の角
加速度の指令値αn の演算処理ルーチンのフローチャー
ト。
【図5】j軸サーボCPU(j=1,2,…,6)の消
費又は回生電力関連値の記憶・演算処理ルーチンのフロ
ーチャート。
【図6】共用RAM182上の消費又は回生電力関連値
記憶用のテーブルの構成図。
【図7】メインCPUのテーブル初期化ルーチンのフロ
ーチャート。
【図8】メインCPUのテーブル管理ルーチンのフロー
チャート。
【図9】メインCPUの画面表示コマンドの処理ルーチ
ンのフローチャート。
【図10】メインCPUの停止処理ルーチンのフローチ
ャート。
【図11】従来技術によるロボット制御装置200を用
いたロボット駆動システムのシステム構成図。
【符号の説明】
100 … ロボット制御装置 101〜106 … デジタル・サーボ制御装置 120 … DSP(デジタル・シグナル・プロセ
ッサ) IF … 入出力インタフェース Mj … j軸モータ(j=1,2,…,6) ej … j軸エンコーダ(j=1,2,…,
6) θ … 回転角(θn :指令値,θa :測定
値) ω … 角速度(ωn :指令値,ωa :測定
値) αn … 角加速度の指令値 Ia … 電流の測定値 P … モータの消費又は回生電力 Wj … モータMjの限界消費電力量 Fj … モータMjの最大出力 Qj … モータMjの最大回生電力(前回ま
で) Jj … モータMjの累積消費電力量 Ej,i … モータMjの最近10ΔT2 間の各イ
ンターバル毎の消費電力量(ΔT2 毎に10エントリ
ー) fj … j軸サーボCPUの停止指令フラグ Ej … モータMjの最近ΔT2 間の消費電力
量 Pj … モータMjの最大回生電力(今回のシ
ステム立ち上げ後)
フロントページの続き Fターム(参考) 3F059 BA02 CA01 DD01 5H269 AB33 BB12 CC09 EE11 EE25 GG10 JJ02 KK01 MM06 NN07 NN08 QB13 QB14 QB15 QC01 QC06 QD03 QE34 9A001 EE05 FZ01 HH19 JJ49 KK32 KK54 LL09

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 ロボットに備えられた複数個の動作軸の
    動作を制御するロボット制御装置において、 前記動作軸の各軸単位の消費又は回生電力関連値を検知
    する検知手段と、 前記消費又は回生電力関連値に関する演算を実行する記
    憶・演算手段と、 前記記憶・演算手段により算出された消費又は回生電力
    関連値を表示画面又は出力装置に前記動作軸の各軸単位
    に出力する出力手段とを有することを特徴とするロボッ
    ト制御装置。
  2. 【請求項2】 前記検知手段は、前記動作軸のモータが
    消費又は回生する電気の電流値と前記モータの角速度と
    を各軸単位に検知し、 前記記憶・演算手段は、前記モータが消費又は回生する
    電気の電力または電力量を前記電流値と前記角速度とか
    ら各軸単位に算出し、 前記出力手段は、前記電力又は前記電力量を前記動作軸
    の各軸単位に出力することを特徴とする請求項1に記載
    のロボット制御装置。
  3. 【請求項3】 前記記憶・演算手段は、前記動作軸が故
    障する時まで、又は、前記動作軸が故障診断を必要とす
    る時までに前記モータが消費すると考えられる限界消費
    電力量で、現在までに前記モータが消費した前記電力量
    を割り、 前記出力手段は、前記割り算の商又は百分率を各軸単位
    に出力することを特徴とする請求項1又は請求項2に記
    載のロボット制御装置。
JP10291512A 1998-09-28 1998-09-28 ロボット制御装置 Pending JP2000105605A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10291512A JP2000105605A (ja) 1998-09-28 1998-09-28 ロボット制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10291512A JP2000105605A (ja) 1998-09-28 1998-09-28 ロボット制御装置

Publications (1)

Publication Number Publication Date
JP2000105605A true JP2000105605A (ja) 2000-04-11

Family

ID=17769857

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10291512A Pending JP2000105605A (ja) 1998-09-28 1998-09-28 ロボット制御装置

Country Status (1)

Country Link
JP (1) JP2000105605A (ja)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005069907A (ja) * 2003-08-26 2005-03-17 Mitsubishi Electric Corp 寿命評価装置
JP2006205343A (ja) * 2005-01-31 2006-08-10 Advanced Telecommunication Research Institute International コミュニケーションロボットシステムおよびロボット制御装置
JP2009292155A (ja) * 2009-09-18 2009-12-17 Nissei Plastics Ind Co 射出成形機の制御装置
JP2010081679A (ja) * 2008-09-24 2010-04-08 Fanuc Ltd 消費電力量および回生電力量を計算するサーボモータ駆動制御装置
JP2011160585A (ja) * 2010-02-02 2011-08-18 Fanuc Ltd 動力線の損失を少なくとも表示または出力する機能を有する電動機制御装置
JP2012121675A (ja) * 2010-12-08 2012-06-28 Ohbayashi Corp 荷役装置の回生電力の利用システム及び方法
JP2012125888A (ja) * 2010-12-16 2012-07-05 Kawasaki Heavy Ind Ltd ロボット制御装置およびロボット制御方法
JP2013063475A (ja) * 2011-09-15 2013-04-11 Daihen Corp 産業用ロボットの消費電力モニタ装置
JP2013063476A (ja) * 2011-09-15 2013-04-11 Daihen Corp 産業用ロボットのロボット制御装置
CN111113150A (zh) * 2019-12-31 2020-05-08 北京航空航天大学 一种机床刀具状态的监控方法
WO2022025130A1 (ja) 2020-07-31 2022-02-03 川崎重工業株式会社 ロボットシステムおよび回生抵抗の寿命予測方法

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005069907A (ja) * 2003-08-26 2005-03-17 Mitsubishi Electric Corp 寿命評価装置
JP4517086B2 (ja) * 2005-01-31 2010-08-04 株式会社国際電気通信基礎技術研究所 コミュニケーションロボットシステムおよびロボット制御装置
JP2006205343A (ja) * 2005-01-31 2006-08-10 Advanced Telecommunication Research Institute International コミュニケーションロボットシステムおよびロボット制御装置
US8040097B2 (en) 2008-09-24 2011-10-18 Fanuc Ltd Servo motor drive control device for calculating consumed electric energy and regenerated electric energy
DE102009042905A1 (de) 2008-09-24 2010-05-06 Fanuc Ltd. Servomotor-Steuergerät zum Steuern von Servomotoren für die Berechnung der aufgenommenen und der zurückgewonnenen elektrischen Energie
JP2010081679A (ja) * 2008-09-24 2010-04-08 Fanuc Ltd 消費電力量および回生電力量を計算するサーボモータ駆動制御装置
JP4575483B2 (ja) * 2008-09-24 2010-11-04 ファナック株式会社 消費電力量および回生電力量を計算するサーボモータ駆動制御装置
JP2009292155A (ja) * 2009-09-18 2009-12-17 Nissei Plastics Ind Co 射出成形機の制御装置
JP2011160585A (ja) * 2010-02-02 2011-08-18 Fanuc Ltd 動力線の損失を少なくとも表示または出力する機能を有する電動機制御装置
JP2012121675A (ja) * 2010-12-08 2012-06-28 Ohbayashi Corp 荷役装置の回生電力の利用システム及び方法
JP2012125888A (ja) * 2010-12-16 2012-07-05 Kawasaki Heavy Ind Ltd ロボット制御装置およびロボット制御方法
JP2013063475A (ja) * 2011-09-15 2013-04-11 Daihen Corp 産業用ロボットの消費電力モニタ装置
JP2013063476A (ja) * 2011-09-15 2013-04-11 Daihen Corp 産業用ロボットのロボット制御装置
CN111113150A (zh) * 2019-12-31 2020-05-08 北京航空航天大学 一种机床刀具状态的监控方法
CN111113150B (zh) * 2019-12-31 2021-11-19 北京航空航天大学 一种机床刀具状态的监控方法
WO2022025130A1 (ja) 2020-07-31 2022-02-03 川崎重工業株式会社 ロボットシステムおよび回生抵抗の寿命予測方法
KR20230058063A (ko) 2020-07-31 2023-05-02 가와사끼 쥬고교 가부시끼 가이샤 로봇 시스템 및 회생 저항의 수명 예측 방법

Similar Documents

Publication Publication Date Title
JP2000105605A (ja) ロボット制御装置
JPS61157284A (ja) 駆動制御装置
US10444288B2 (en) Abnormality diagnosing device and abnormality diagnosing method
JPS6281570A (ja) 速度検出装置
US10396699B2 (en) Anomaly diagnosing device and anomaly diagnosing method
JP2012168605A (ja) 制御装置
JP5001713B2 (ja) モータトルク測定方法及びモータトルク測定装置
JPH085679A (ja) 周波数検出方法と装置および電力系統安定化システム
JP2010142049A (ja) 多軸モータドライブシステムとその共通コンバータの過負荷保護方法及び装置
Kolano New method of vector control in PMSM motors
US10527676B2 (en) Abnormality diagnosing device and abnormality diagnosing method
JP7449950B2 (ja) 電力変換装置及びそれに用いる予兆診断方法
JPH0851800A (ja) 誘導モータの制御方法
JP2002186270A (ja) サーボ制御装置
JP2001333589A (ja) モータの過負荷状態検出装置
Banerjee et al. An improved torque ripple reduction controller for smooth operation of induction motor drive
JPS59117479A (ja) サーボモータの速度検出装置
JPH0570089A (ja) 誘導電動機用制御装置
Bitoleanu et al. New Achievements in the Rotor Field-Oriented Control for Autonomous Locomotives: Part 2: Control Implementation and Experimental Performances at Low Speed
WO2024100808A1 (ja) 数値制御装置および数値制御プログラム
KR101707770B1 (ko) 엘리베이터 제어 장치 및 그 제어 방법
JPH02250697A (ja) Acサーボ装置の欠相検出回路
JPS61210888A (ja) 複数台電動機の制御方法
JP2675451B2 (ja) 誘導電動機の磁束直接制御形ベクトル制御における電流制限方法
JPH11285259A (ja) インバータの並列運転制御方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040723

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040727

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20041124