IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ファナック株式会社の特許一覧

特許7294883制御装置、機械システム、及び時刻同期方法
<>
  • 特許-制御装置、機械システム、及び時刻同期方法 図1A
  • 特許-制御装置、機械システム、及び時刻同期方法 図1B
  • 特許-制御装置、機械システム、及び時刻同期方法 図2
  • 特許-制御装置、機械システム、及び時刻同期方法 図3
  • 特許-制御装置、機械システム、及び時刻同期方法 図4
  • 特許-制御装置、機械システム、及び時刻同期方法 図5A
  • 特許-制御装置、機械システム、及び時刻同期方法 図5B
  • 特許-制御装置、機械システム、及び時刻同期方法 図6
  • 特許-制御装置、機械システム、及び時刻同期方法 図7
  • 特許-制御装置、機械システム、及び時刻同期方法 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-06-12
(45)【発行日】2023-06-20
(54)【発明の名称】制御装置、機械システム、及び時刻同期方法
(51)【国際特許分類】
   B25J 13/00 20060101AFI20230613BHJP
   B25J 19/00 20060101ALI20230613BHJP
【FI】
B25J13/00 Z
B25J19/00 K
【請求項の数】 7
(21)【出願番号】P 2019098455
(22)【出願日】2019-05-27
(65)【公開番号】P2020192628
(43)【公開日】2020-12-03
【審査請求日】2022-01-14
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】100106002
【弁理士】
【氏名又は名称】正林 真之
(74)【代理人】
【識別番号】100165157
【弁理士】
【氏名又は名称】芝 哲央
(74)【代理人】
【識別番号】100160794
【弁理士】
【氏名又は名称】星野 寛明
(72)【発明者】
【氏名】稲垣 聡
(72)【発明者】
【氏名】鈴木 元
【審査官】國武 史帆
(56)【参考文献】
【文献】特開2015-163416(JP,A)
【文献】特開2009-279608(JP,A)
【文献】特開平10-180662(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 1/00 - 21/02
(57)【特許請求の範囲】
【請求項1】
モータにより駆動される可動部材を有する機械装置を制御する制御装置であって、
前記機械装置の前記可動部材の先端部に設けられた、クロック部を有するセンサ部により、周期的に検出された該先端部の位置、速度又は加速度及び前記クロック部から出力された時刻情報を含むセンサ信号を受信する無線信号送受信部と、
受信した前記センサ信号に含まれる位置、速度又は加速度、及び前記時刻情報に基づいて前記可動部材の先端部における加速度の第1時系列データを取得するデータ取得部と、
前記モータの駆動指令に基づき、前記第1時系列データに対応する前記可動部材の先端部における指令加速度及び前記制御装置の備えるクロック部から出力された時刻情報に基づいて、前記可動部材の先端部における指令加速度の第2時系列データを演算するデータ演算部と、
前記機械装置を予め決められた基本動作で動作させた場合に、前記データ取得部で取得された前記第1時系列データと、前記データ演算部で演算された前記第2時系列データとの相関の度合いに応じて、前記第2時系列データに対する前記第1時系列データの遅れ時間を演算する遅れ時間演算部と、
前記遅れ時間演算部で演算された前記遅れ時間に基づいて、前記センサ部の有する前記クロック部が出力する時刻情報と前記制御装置の有する前記クロック部が出力する時刻情報とを同期させる時刻同期部と、
を備える制御装置。
【請求項2】
前記基本動作は、前記機械装置に含まれる複数の前記モータのうち、少なくとも1つの前記モータを駆動させる動作である、請求項1に記載の制御装置。
【請求項3】
モータにより駆動される可動部材を有する機械装置を制御する制御装置であって、
前記機械装置の前記可動部材の先端部に設けられた、クロック部を有するセンサ部により、周期的に検出された該先端部の位置、速度又は加速度及び前記クロック部から出力された時刻情報を含むセンサ信号を受信する無線信号送受信部と、
受信した前記センサ信号に含まれる位置、速度又は加速度、及び前記時刻情報に基づいて前記可動部材の先端部における加速度の第1時系列データを取得するデータ取得部と、
前記モータの駆動指令に基づき、前記第1時系列データに対応する前記可動部材の先端部における指令加速度及び前記制御装置の備えるクロック部から出力された時刻情報に基づいて、前記可動部材の先端部における指令加速度の第2時系列データを演算するデータ演算部と、
前記制御装置が実行するプログラムが示す動作を前記プログラムが示す速度に換えて所定値以下の速度で前記機械装置を動作させた場合に、前記データ取得部で取得された前記第1時系列データと、前記データ演算部で演算された前記第2時系列データとの相関の度合いに応じて、前記第2時系列データに対する前記第1時系列データの遅れ時間を演算する遅れ時間演算部と、
前記遅れ時間演算部で演算された前記遅れ時間に基づいて、前記センサ部の有する前記クロック部が出力する時刻情報と前記制御装置の有する前記クロック部が出力する時刻情報とを同期させる時刻同期部と、
を備える制御装置。
【請求項4】
前記機械装置がロボットであり、前記制御装置がロボット制御装置である、請求項1から請求項3のいずれか1項に記載の制御装置。
【請求項5】
モータにより駆動される可動部材を有する機械装置と、請求項1から請求項4に記載の制御装置と、を備える機械システム。
【請求項6】
モータにより駆動される可動部材を有する機械装置と、前記機械装置を制御する制御装置とを備える機械システムにおいて、前記機械装置の前記可動部材の先端部に設けられたセンサ部の有するクロック部と前記制御装置の有するクロック部との時刻同期を行う時刻同期方法であって、
前記センサ部により、周期的に検出された該先端部の位置、速度又は加速度及び前記クロック部から出力された時刻情報を含むセンサ信号を受信する無線信号送受信ステップと、
受信した前記センサ信号に含まれる位置、速度又は加速度、及び前記時刻情報に基づいて前記可動部材の先端部における加速度の第1時系列データを取得するデータ取得ステップと、
前記モータの駆動指令に基づき、前記第1時系列データに対応する前記可動部材の先端部における指令加速度及び前記制御装置の備えるクロック部から出力された時刻情報に基づいて、前記可動部材の先端部における指令加速度の第2時系列データを演算するデータ演算ステップと、
前記機械装置を予め決められた基本動作で動作させた場合に、前記データ取得ステップで取得された前記第1時系列データと、前記データ演算ステップで演算された前記第2時系列データとの相関の度合いに応じて、前記第2時系列データに対する前記第1時系列データの遅れ時間を演算する遅れ時間演算ステップと、
前記遅れ時間演算ステップにより演算された前記遅れ時間に基づいて、前記センサ部の有する前記クロック部が出力する時刻情報と前記制御装置の有する前記クロック部が出力する時刻情報とを同期させる時刻同期ステップと、
を備える時刻同期方法。
【請求項7】
モータにより駆動される可動部材を有する機械装置と、前記機械装置を制御する制御装置とを備える機械システムにおいて、前記機械装置の前記可動部材の先端部に設けられたセンサ部の有するクロック部と前記制御装置の有するクロック部との時刻同期を行う時刻同期方法であって、
前記センサ部により、周期的に検出された該先端部の位置、速度又は加速度及び前記クロック部から出力された時刻情報を含むセンサ信号を受信する無線信号送受信ステップと、
受信した前記センサ信号に含まれる位置、速度又は加速度、及び前記時刻情報に基づいて前記可動部材の先端部における加速度の第1時系列データを取得するデータ取得ステップと、
前記モータの駆動指令に基づき、前記第1時系列データに対応する前記可動部材の先端部における指令加速度及び前記制御装置の備えるクロック部から出力された時刻情報に基づいて、前記可動部材の先端部における指令加速度の第2時系列データを演算するデータ演算ステップと、
前記制御装置が実行するプログラムが示す動作を前記プログラムが示す速度に換えて所定値以下の速度で前記機械装置を動作させた場合に、前記データ取得ステップで取得された前記第1時系列データと、前記データ演算ステップで演算された前記第2時系列データとの相関の度合いに応じて、前記第2時系列データに対する前記第1時系列データの遅れ時間を演算する遅れ時間演算ステップと、
前記遅れ時間演算ステップにより演算された前記遅れ時間に基づいて、前記センサ部の有する前記クロック部が出力する時刻情報と前記制御装置の有する前記クロック部が出力する時刻情報とを同期させる時刻同期ステップと、
を備える時刻同期方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、制御装置、機械システム、及び時刻同期方法に関する。
【背景技術】
【0002】
ロボットの動作を高速化することで、タクトタイムを短縮することは生産効率に直結する。しかしながら、ロボットの動作を高速化するに従い、減速機やロボットアームの剛性不足等の要因によって、ロボットの先端に振動が発生してしまう。
このような問題への対処法として、ロボットの先端に加速度センサを取り付け、ロボットの動作に伴う振動を加速度センサによって検出し、学習制御を行うことで当該振動を低減する技術が提案されている。例えば、特許文献1参照。
しかしながら、ロボットを制御する制御装置と加速度センサとを繋ぐケーブルの取りまわしの煩雑さから、測定した加速度を無線で制御装置に送信する加速度センサ(以下、「無線センサ」ともいう)が用いられる場合がある。なお、ロボットの振動は、制御装置により出力される指令加速度と、無線センサにより検出される加速度との比較に基づいて算出される。このため、制御装置の時刻と無線センサの時刻とが互いに同期している必要がある。もし制御装置の時刻と無線センサの時刻とが同期していない場合、誤った振動が算出される。そして、振動を抑制しようとしても正しく抑制できず、かえって振動が大きくなってしまう場合がある。
この場合、例えば、(A)制御装置と無線センサをケーブル等で直接接続し同期させる方法と、(B)制御装置(又は無線センサ)から現在の時刻を示す信号を無線センサ(又は制御装置)に送信することにより同期させる方法が考えられる。
(A)の方法では、制御装置の時刻と無線センサの時刻は時間が経過するに従いズレてしまうため、定期的に接続して同期させる必要がある。しかしながら、ロボットと制御装置は互いに離れて設置される場合が多く、制御装置と無線センサをケーブル等で直接接続することは手間が掛かる。また、無線センサを使用して振動を計測するには無線センサを取り付けた位置と向きを設定する必要があり、無線センサをロボットから取り外す度に当該設定を行うことは手間が掛かる。
一方、(B)の方法では、制御装置と無線センサとの間でランダムな遅延が発生することがある。そのため、制御装置(又は無線センサ)が時刻t1に無線センサ(又は制御装置)に対して現在の時刻の信号を送信しても、受信側の受信時刻t2はランダムな遅延により異なってしまう。
この点、アーム先端部の指令加速度に応じて相関値の基準値を設定することで、指令加速度の時系列データと、検出された加速度の時系列データとを同期させる技術が提案されている。例えば、特許文献2参照。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2018-130800号公報
【文献】特開2015-163416号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
図1Aは、振動が問題となる動作速度における指令加速度の時系列データの一例を示す図である。図1Bは、振動が問題となる動作速度における無線センサにより検出された加速度の時系列データとの一例を示す図である。
図1A及び図1Bに示すように、実際に振動が問題になるような動作では、指令加速度の時系列データと、検出された加速度の時系列データとの波形が大きく異なり、正しく同期できない場合がある。
【0005】
そこで、学習制御により振動を抑制するにあたり、制御装置の時刻と無線センサの時刻とを容易に同期させることが望まれている。
【課題を解決するための手段】
【0006】
(1)本開示の制御装置の一態様は、モータにより駆動される可動部材を有する機械装置を制御する制御装置であって、前記機械装置の前記可動部材の先端部に設けられたセンサ部により、周期的に検出された該先端部の位置、速度又は加速度を表すセンサ信号を受信する無線信号送受信部と、受信した前記センサ信号の位置、速度又は加速度に基づいて前記可動部材の先端部における加速度の第1時系列データを取得するデータ取得部と、前記モータの駆動指令に基づき、前記第1時系列データに対応する前記可動部材の先端部における加速度の第2時系列データを演算するデータ演算部と、前記機械装置を予め決められた基本動作で動作させた場合に、前記データ取得部で取得された前記第1時系列データと、前記データ演算部で演算された前記第2時系列データとの相関の度合いに応じて、前記第2時系列データに対する前記第1時系列データの遅れ時間を演算する遅れ時間演算部と、前記遅れ時間演算部で演算された前記遅れ時間に基づいて、前記センサ部における時刻と前記制御装置における時刻とを同期させる時刻同期部と、を備える。
【0007】
(2)本開示の制御装置の一態様は、モータにより駆動される可動部材を有する機械装置を制御する制御装置であって、前記機械装置の前記可動部材の先端部に設けられたセンサ部により、周期的に検出された該先端部の位置、速度又は加速度を表すセンサ信号を受信する無線信号送受信部と、受信した前記センサ信号の位置、速度又は加速度に基づいて前記可動部材の先端部における加速度の第1時系列データを取得するデータ取得部と、前記モータの駆動指令に基づき、前記第1時系列データに対応する前記可動部材の先端部における加速度の第2時系列データを演算するデータ演算部と、前記制御装置が実行するプログラムが示す動作を前記プログラムが示す速度に換えて所定値以下の速度で前記機械装置を動作させた場合に、前記データ取得部で取得された前記第1時系列データと、前記データ演算部で演算された前記第2時系列データとの相関の度合いに応じて、前記第2時系列データに対する前記第1時系列データの遅れ時間を演算する遅れ時間演算部と、前記遅れ時間演算部で演算された前記遅れ時間に基づいて、前記センサ部における時刻と前記制御装置における時刻とを同期させる時刻同期部と、を備える。
【0008】
(3)本開示の機械システムの一態様は、モータにより駆動される可動部材を有する機械装置と、(1)又は(2)の制御装置と、を備える。
【0009】
(4)本開示の時刻同期方法の一態様は、モータにより駆動される可動部材を有する機械装置と、前記機械装置を制御する制御装置とを備える機械システムにおいて、前記機械装置の前記可動部材の先端部に設けられたセンサ部と前記制御装置との時刻同期を行う時刻同期方法であって、前記センサ部により、周期的に検出された該先端部の位置、速度又は加速度を表すセンサ信号を受信する無線信号送受信ステップと、受信した前記センサ信号の位置、速度又は加速度に基づいて前記可動部材の先端部における加速度の第1時系列データを取得するデータ取得ステップと、前記モータの駆動指令に基づき、前記第1時系列データに対応する前記可動部材の先端部における加速度の第2時系列データを演算するデータ演算ステップと、前記機械装置を予め決められた基本動作で動作させた場合に、前記データ取得ステップで取得された前記第1時系列データと、前記データ演算ステップで演算された前記第2時系列データとの相関の度合いに応じて、前記第2時系列データに対する前記第1時系列データの遅れ時間を演算する遅れ時間演算ステップと、前記遅れ時間演算ステップにより演算された前記遅れ時間に基づいて、前記センサ部における時刻と前記制御装置における時刻とを同期させる時刻同期ステップと、を備える。
【0010】
(5)本開示の時刻同期方法の一態様は、モータにより駆動される可動部材を有する機械装置と、前記機械装置を制御する制御装置とを備える機械システムにおいて、前記機械装置の前記可動部材の先端部に設けられたセンサ部と前記制御装置との時刻同期を行う時刻同期方法であって、前記センサ部により、周期的に検出された該先端部の位置、速度又は加速度を表すセンサ信号を受信する無線信号送受信ステップと、受信した前記センサ信号の位置、速度又は加速度に基づいて前記可動部材の先端部における加速度の第1時系列データを取得するデータ取得ステップと、前記モータの駆動指令に基づき、前記第1時系列データに対応する前記可動部材の先端部における加速度の第2時系列データを演算するデータ演算ステップと、前記制御装置が実行するプログラムが示す動作を前記プログラムが示す速度に換えて所定値以下の速度で前記機械装置を動作させた場合に、前記データ取得ステップで取得された前記第1時系列データと、前記データ演算ステップで演算された前記第2時系列データとの相関の度合いに応じて、前記第2時系列データに対する前記第1時系列データの遅れ時間を演算する遅れ時間演算ステップと、前記遅れ時間演算ステップにより演算された前記遅れ時間に基づいて、前記センサ部における時刻と前記制御装置における時刻とを同期させる時刻同期ステップと、を備える。
【発明の効果】
【0011】
一態様によれば、学習制御により振動を抑制するにあたり、制御装置の時刻と無線センサの時刻とを容易に同期させることができる。
【図面の簡単な説明】
【0012】
図1A】振動が問題となる動作速度における指令加速度の時系列データの一例を示す図である。
図1B】振動が問題となる動作速度における無線センサにより検出された加速度の時系列データの一例を示す図である。
図2】第1実施形態に係る機械システムの機能的構成例を示す機能ブロック図である。
図3】ロボットの一例を示す図である。
図4図3のロボットにおける座標系を説明するための図である。
図5A】基本動作において図2のデータ演算部により演算された指令加速度の時系列データの一例を示す図である。
図5B】基本動作において図2の無線センサにより検出された加速度の時系列データの一例を示す図である。
図6図2の遅れ時間演算部による相関処理の一例を示す図である。
図7】相互相関係数が最大値となる時の指令加速度の時系列データと検出された加速度の時系列データとの関係の一例を示す図である。
図8】制御装置の時刻同期処理について説明するフローチャートである。
【発明を実施するための形態】
【0013】
以下、第1実施形態について図面を用いて説明する。
<第1実施形態>
図2は、第1実施形態に係る機械システム1の機能的構成例を示す機能ブロック図である。図2に示すように、機械システム1は、機械装置10、及び制御装置20を有する。
【0014】
機械装置10と制御装置20は、図示しない接続インタフェースを介して互いに直接接続されてもよい。なお、機械装置10と制御装置20は、LAN(Local Area Network)等のネットワークを介して相互に接続されていてもよい。この場合、機械装置10、及び制御装置20は、かかる接続によって相互に通信を行うための図示しない通信部を備えてもよい。
【0015】
機械装置10は、例えば、工作機械や産業用ロボット等である。なお、以下では、機械装置10は、産業用ロボット(以下、「ロボット10」ともいう)として説明する。
図3は、ロボット10の一例を示す図である。
ロボット10は、例えば、図3に示すように、6軸の垂直多関節ロボットであり、6つの関節軸11(1)-11(6)と、関節軸11(1)-11(6)の各々により連結されるアーム部12を有する。ロボット10は、制御装置20からの駆動指令に基づいて、関節軸11(1)-11(6)の各々に配置されるサーボモータ102(1)-102(6)の各々を駆動することにより、アーム部12等の可動部材を駆動する。また、ロボット10の可動部材の先端部、例えば、関節軸11(6)の先端部には、例えば、溶接ガン、握持ハンド、レーザ照射装置等のエンドエフェクタ13が取り付けられる。そして、エンドエフェクタ13には、無線センサ101が設置される。
【0016】
なお、ロボット10は、6軸の垂直多関節ロボットとしたが、6軸以外の垂直多関節ロボットでもよく、水平多関節ロボットやパラレルリンクロボット等でもよい。
また、以下において、関節軸11(1)-11(6)のそれぞれを個々に区別する必要がない場合、これらをまとめて「関節軸11」ともいう。また、サーボモータ102(1)-102(6)のそれぞれを個々に区別する必要がない場合、これらをまとめて「サーボモータ102」ともいう。
【0017】
図4は、図3のロボット10における座標系を説明するための図である。
ロボット10は、図5に示すように、空間上に固定された3次元直交座標系のワールド座標系Σwと、ロボット10の関節軸11(6)の先端のフランジに設定された3次元直交座標のメカニカルインタフェイス座標系Σmとを有する。本実施形態においては、事前に周知のキャリブレーションによってワールド座標系Σwとメカニカルインタフェイス座標系Σmとの位置の相関が取られている。これにより、後述する制御装置20は、ワールド座標系Σwで定義される位置を用いて、エンドエフェクタ13が取付けられたロボット10の先端部の位置を制御することができる。
【0018】
無線センサ101は、ロボット10の動作に伴う可動部材の先端部における加速度を所定のサンプリング時間で周期的に検出する加速度センサである。無線センサ101は、図示しないクロック部を有し、加速度を検出する度に、当該クロック部から出力される時刻情報を、検出した時刻として取得する。また、無線センサ101は、例えば、無線信号送受信部111を含む。そして、無線信号送受信部111は、検出された加速度及び時刻情報を含むセンサ信号を、アンテナ112を介して制御装置20に無線で送信する。
なお、所定のサンプリング時間は、ロボット10の動作内容やロボット10が配置される工場の環境等に応じて適宜設定されてもよい。
また、無線センサ101は、加速度センサに限定されず、可動部材の先端部の速度を検出する速度センサや、可動部材の先端部の位置を検出するレーザトラッカ、カメラ、又はモーションキャプチャ装置等でもよい。
また、無線信号送受信部111は、無線センサ101に含まれたが、無線センサ101とは独立した装置でもよい。
【0019】
<制御装置20>
制御装置20は、プログラムに基づいて、ロボット10に対して駆動指令を出力し、ロボット10の動作を制御する制御装置(「ロボットコントローラ」とも呼ばれる)である。
図2に示すように、本実施形態に係る制御装置20は、無線信号送受信部201、データ取得部202、モータ制御部203、データ演算部204、遅れ時間演算部205、時刻同期部206、学習制御部207、及び記憶部208を含んで構成される。
なお、制御装置20は、図2の機能ブロックの動作を実現するために、CPU(Central Processing Unit)等の図示しない演算処理装置を備える。また、制御装置20は、各種の制御用プログラムを格納したROM(Read Only Memory)やHDD(Hard Disk Drive)等の図示しない補助記憶装置や、演算処理装置がプログラムを実行する上で一時的に必要とされるデータを格納するためのRAM(Random Access Memory)といった図示しない主記憶装置を備える。
【0020】
そして、制御装置20において、演算処理装置が補助記憶装置からOSやアプリケーションソフトウェアを読み込み、読み込んだOSやアプリケーションソフトウェアを主記憶装置に展開させながら、これらのOSやアプリケーションソフトウェアに基づいた演算処理を行なう。この演算結果に基づいて、制御装置20が各ハードウェアを制御する。これにより、図2の機能ブロックによる処理は実現される。つまり、制御装置20は、ハードウェアとソフトウェアが協働することにより実現することができる。
【0021】
無線信号送受信部201は、アンテナ211を介してロボット10の先端部において検出された加速度及び時刻情報を含むセンサ信号を受信する。無線信号送受信部201は、受信したセンサ信号をデータ取得部202に出力する。
データ取得部202は、無線信号送受信部201を介して受信したセンサ信号から、ロボット10の可動部材の先端部において無線センサ101により検出された加速度、及び検出した時刻を取得する。データ取得部202は、取得した加速度及び検出した時刻を、検出した加速度の時系列データとして後述する記憶部208に記憶する。
【0022】
モータ制御部203は、例えば、プログラムに基づいて、ロボット10の関節軸11の各々に配置されたサーボモータ102に対し駆動指令を出力する。
より具体的には、モータ制御部203は、サーボモータ102の各々に含まれるロータリーエンコーダ等の図示しない位置検出器からの信号に基づいて、各サーボモータ102の回転を駆動指令の値に一致させるようにフィードバック制御する。
【0023】
なお、モータ制御部203は、制御装置20が時刻同期処理を行う場合、予め決められた基本動作、例えば、可動部材の先端部に配置された関節軸11(6)の1軸による回転動作等の単純な動作のプログラムに基づいて、サーボモータ102(6)を駆動させる。また、モータ制御部203は、関節軸11(6)に替えて、関節軸11(1)-11(5)のいずれか1つの軸による動作を基本動作とするプログラムに基づいて、ロボット10を駆動してもよい。あるいは、基本動作は、6つの関節軸11のうち、2つや3つ等、6より少ない数の軸による動作としてもよい。
【0024】
データ演算部204は、例えば、モータ制御部203によるサーボモータ102の各々に対する駆動指令に基づいて、無線センサ101が取り付けられた位置である可動部材の先端部における指令加速度を演算する。
より具体的には、データ演算部204は、サーボモータ102の各々に対する駆動指令の値に基づいて、可動部材の先端部の指令位置の時系列データを演算する。データ演算部204は、演算した指令位置の時系列データを時間で2階微分することにより、可動部材の先端部における指令加速度の時系列データを演算する。データ演算部204は、演算した指令加速度の時系列データを記憶部208に記憶する。
【0025】
なお、制御装置20が時刻同期処理を行う場合、前述したように、モータ制御部203は、予め決められた基本動作のプログラムに基づいて、例えば、サーボモータ102(6)を駆動させ、関節軸11(6)の1軸による回転動作を行う。
図5Aは、基本動作において図2のデータ演算部204により演算された指令加速度の時系列データa(t)の一例を示す図である。図5Bは、基本動作において図2の無線センサ101により検出された加速度の時系列データa(t)の一例を示す図である。
この場合、モータ制御部203による駆動指令は単純な動作であるため、図5A及び図5Bに示すように、加速度の大きさに関わらず、データ演算部204により演算された指令加速度の時系列データと、無線センサ101により検出された加速度の時系列データとは、互いに同一又は同様の波形を示す。これにより、本実施形態に係る制御装置20は、制御装置20の時刻と、無線センサ101の時刻とを同期させることができる。
【0026】
遅れ時間演算部205は、ロボット10を予め決められた基本動作で動作させた場合に、検出された加速度の時系列データa(t)と、演算された指令加速度の時系列データa(t)との相関の度合いを演算する。遅れ時間演算部205は、演算された相関の度合いに応じて、指令加速度の時系列データa(t)に対する加速度の時系列データa(t)の遅れ時間を演算する。
図6は、図2の遅れ時間演算部205による相関処理の一例を示す図である。
図7は、相互相関係数r(τ)が最大値となる時の指令加速度の時系列データa(t)と検出された加速度の時系列データa(t)との関係の一例を示す図である。
なお、図7及び図8では、指令加速度の時系列データa(t)は、実線で示す。また、無線センサ101により検出された加速度の時系列データa(t)は、2点鎖線で示す。また、遅れ時間τずらした検出された加速度の時系列データa(t-τ)は、破線で示す。
【0027】
より具体的には、遅れ時間演算部205は、図6に示すように、無線センサ101により検出された加速度の時系列データa(t)を、データ演算部204で演算された指令加速度の時系列データa(t)に対して、矢印で示す方向にτ秒ずらして相互相関係数r(τ)を演算する。遅れ時間演算部205は、様々なτの時間について相互相関係数r(τ)を演算し、図7に示すように、相互相関係数r(τ)が最大値となるτの値を演算する。換言すれば、無線センサ101に含まれる図示しないクロック部と、制御装置20に含まれる図示しないクロック部とは、相互相関係数r(τ)が最大値となるτの時間だけ時刻がズレていることを示す。
【0028】
時刻同期部206は、遅れ時間演算部205で演算された遅れ時間τに基づいて、無線センサ101における時刻と制御装置20における時刻とを同期させてもよい。
より具体的には、時刻同期部206は、制御装置20の図示しないクロック部が出力する時刻情報に対して、遅れ時間τを用いて補正する。これにより、時刻同期部206は、無線センサ101の図示しないクロック部が出力する時刻情報と、制御装置20の図示しないクロック部が出力する時刻情報とを同期させることができる。
【0029】
学習制御部207は、例えば、無線センサ101の時刻と制御装置20の時刻が同期された後、学習制御の対象となる実際の加工プログラムを実行し、ロボット10の動作中に無線センサ101により検出された加速度の時系列データ、及び駆動指令に含まれる位置指令を取得する。学習制御部207は、取得した加速度の時系列データ、及び位置指令を記憶部208に記憶する。
学習制御部207は、学習制御の対象となるプログラムを1回実行した後、ロボット10の動作中の各制御周期における振動量と、当該振動量を打ち消すための振動補正量とを演算し、記憶部208に記憶する。学習制御部207は、記憶部208に記憶された振動補正量を、次に同じプログラムが実行される際に適用する。これを複数回繰り返すことで、ロボット10の可動部材の先端部における振動を低減することができる。
なお、学習制御部207による学習制御は、例えば、特許文献1と同様の手法を用いることができ、詳細な説明は省略する。
【0030】
記憶部208は、RAM等であり、プログラムや、無線センサ101により検出された加速度の時系列データ、データ演算部204で演算された指令加速度の時系列データ等を記憶する。
【0031】
<制御装置20の時刻同期処理>
次に、本実施形態に係る制御装置20の時刻同期処理に係る動作について説明する。
図8は、制御装置20の時刻同期処理について説明するフローチャートである。
【0032】
ステップS11において、モータ制御部203は、予め決められた基本動作のプログラムに基づいて駆動指令を出力し、ロボット10を駆動させる。
【0033】
ステップS12において、データ取得部202は、無線信号送受信部201を介して受信したセンサ信号から、ロボット10の基本動作において無線センサ101により検出された可動部材の先端部における加速度の時系列データa(t)を取得する。
【0034】
ステップS13において、データ演算部204は、基本動作の駆動指令に基づいて、ロボット10の可動部材の先端部における指令加速度の時系列データa(t)を演算する。
【0035】
ステップS14において、遅れ時間演算部205は、ステップS11で取得された加速度の時系列データa(t)と、ステップS12で演算された指令加速度の時系列データa(t)との間の相互相関係数r(τ)を演算し、指令加速度の時系列データa(t)に対する検出された加速度の時系列データa(t)の遅れ時間τを演算する。
【0036】
ステップS15において、時刻同期部206は、ステップS13で演算された遅れ時間τに基づいて、無線センサ101の時刻と制御装置20の時刻とを同期させる。
【0037】
以上により、第1実施形態の制御装置20は、ロボット10を予め決められた基本動作で動作させ、ロボット10の可動部材の先端部において無線センサ101により検出された加速度の時系列データa(t)と、指令加速度の時系列データa(t)とを取得する。制御装置20は、検出された加速度の時系列データa(t)と、指令加速度の時系列データa(t)との相関の度合いに応じて、指令加速度の時系列データa(t)に対する検出された加速度の時系列データa(t)の遅れ時間τを演算する。
これにより、制御装置20は、演算された遅れ時間τに基づいて、無線センサ101の時刻と制御装置20の時刻とを容易に同期させることができ、学習制御によるロボット10の先端部における振動を抑制することができる。
また、制御装置20は、定期的に無線センサ101の時刻と制御装置20の時刻とを同期させる場合でも、1つの関節軸11によるロボット10の基本動作を1度実行させるだけであることから、少ない手間で時刻同期を行うことができる。
【0038】
<第2実施形態>
第2実施形態に係る制御装置は、予め決められた基本動作でロボットを動作させるのに替えて、制御装置が実行するプログラムが示す動作を当該プログラムが示す速度に換えて所定値以下の速度でロボットを動作させる点が、第1の実施形態と異なる。
以下に、第2実施形態について説明する。
【0039】
本開示の第2実施形態に係る機械システムは、図2に示した第1実施形態に係る機械システム1と同様の構成を備える。
また、第2実施形態に係る機械装置(ロボット)及び制御装置も、図2及び図3に示した第1実施形態に係る制御装置(ロボット)10及び制御装置20と同様の構成を備える。
しかしながら、第2実施形態に係る制御装置20のモータ制御部203が、時刻同期処理において、制御装置20が実行するプログラムが示す動作を当該プログラムが示す速度に換えて所定値以下の速度でロボット10を動作させる点が、第1実施形態と異なる。
例えば、モータ制御部203は、時刻同期処理において、ロボット10の周囲に治具等が配置されている、あるいはロボット10に取り付けられているエンドエフェクタ13が大きい等のために、基本動作の動作が難しい場合において、学習制御の対象となる実際の加工に用いるプログラムに基づいてロボット10を動作させてもよい。
【0040】
より具体的には、モータ制御部203は、実際の加工に用いるプログラムが示す動作を、当該プログラムが示す速度に換えて所定値以下の速度で、ロボット10が動作するように、サーボモータ102を駆動してもよい。
この場合、時刻同期処理におけるロボット10の動作速度は、少なくとも無線センサ101により検出される加速度の時系列データa(t)と、データ演算部204により演算される指令加速度の時系列データa(t)とが、互いに同一又は同様の波形となる速度に設定されてもよい。例えば、モータ制御部203は、学習制御の対象となる実際の加工プログラムが示す動作を、様々な速度でロボット10を予め動作させてもよい。制御装置20は、各速度において無線センサ101により検出された加速度の時系列データa(t)の波形と、データ演算部204により演算された指令加速度の時系列データa(t)の波形とを見て、同一又は同様の波形となる所定値以下の速度を設定してもよい。
なお、所定値は、ロボット10の動作内容やロボット10が配置される工場の環境等に応じて適宜設定されてもよい。
【0041】
そして、遅れ時間演算部205は、実際の加工に用いるプログラムの動作を当該プログラムが示す速度に換えて所定値以下の速度で、ロボット10に動作させた場合に、検出された加速度の時系列データa(t)と、演算された指令加速度の時系列データa(t)との相関の度合いに応じて、指令加速度の時系列データa(t)に対する加速度の時系列データa(t)の遅れ時間τを演算してもよい。
これにより、制御装置20は、実際の加工に用いるプログラムに基づいて、無線センサ101の時刻と制御装置20の時刻とを同期することから、学習制御をより精度良く行うことができる。
【0042】
以上により、第2実施形態の制御装置20は、実際の加工に用いるプログラムの動作を当該プログラムが示す速度に換えて所定値以下の速度で、ロボット10を動作させ、ロボット10の可動部材の先端部において無線センサ101により検出された加速度の時系列データa(t)と、指令加速度の時系列データa(t)とを取得する。制御装置20は、検出された加速度の時系列データa(t)と、指令加速度の時系列データa(t)との相関の度合いに応じて、指令加速度の時系列データa(t)に対する検出された加速度の時系列データa(t)の遅れ時間τを演算する。
これにより、制御装置20は、演算された遅れ時間τに基づいて、無線センサ101の時刻と制御装置20の時刻とを容易に同期させることができ、学習制御によるロボット10の先端部における振動を抑制することができる。
また、制御装置20は、実際の加工に用いるプログラムに基づいて、無線センサ101の時刻と制御装置20の時刻とを同期することから、学習制御をより精度良く行うことができる。
【0043】
以上、第1実施形態及び第2実施形態について説明したが、制御装置20は、上述の実施形態に限定されるものではなく、目的を達成できる範囲での変形、改良等を含む。
【0044】
上述の第1実施形態及び第2実施形態では、無線センサ101は、加速度センサとしたが、慣性センサでもよく、可動部材の先端部の速度を検出する速度センサや、可動部材の先端部の位置を検出するレーザトラッカ、カメラ、又はモーションキャプチャ装置等の位置センサでもよい。
例えば、無線センサ101が速度センサの場合、データ取得部202は、受信したセンサ信号からロボット10の可動部材の先端部において検出された速度及び検出した時刻を取得する。そして、データ取得部202は、取得した速度の時系列データに対して時間で1階微分することで、加速度の時系列データを取得することができる。
また、無線センサ101が位置センサの場合、データ取得部220は、受信したセンサ信号からロボット10の可動部材の先端部において検出された位置及び検出した時刻を取得する。そして、データ取得部202は、取得した位置の時系列データに対して時間で2階微分することで、加速度の時系列データを取得することができる。
【0045】
また例えば、上述の第1実施形態及び第2実施形態では、無線センサ101は、ロボット10の可動部材の先端部に設置されたが、先端部以外のロボット10の可動部材に配置されてもよい。これにより、エンドエフェクタ13毎に無線センサ101が設置される位置の影響を低減することができる。
【0046】
なお、第1実施形態及び第2実施形態における、制御装置20に含まれる各機能は、ハードウェア、ソフトウェア又はこれらの組み合わせによりそれぞれ実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
【0047】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(Non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(Tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAMを含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(Transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は、無線通信路を介して、プログラムをコンピュータに供給できる。
【0048】
なお、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0049】
以上を換言すると、本開示の、制御装置、機械システム、及び時刻同期方法は、次のような構成を有する各種各様の実施形態を取ることができる。
(1)本開示の制御装置20は、モータ(サーボモータ102)により駆動される可動部材を有する機械装置10を制御する制御装置であって、機械装置10の可動部材の先端部に設けられたセンサ部(無線センサ101)により、周期的に検出された該先端部の位置、速度又は加速度を表すセンサ信号を受信する無線信号送受信部201と、受信したセンサ信号の位置、速度又は加速度に基づいて可動部材の先端部における加速度の第1時系列データa(t)を取得するデータ取得部202と、モータの駆動指令に基づき、第1時系列データa(t)に対応する可動部材の先端部における加速度の第2時系列データa(t)を演算するデータ演算部204と、機械装置10を予め決められた基本動作で動作させた場合に、データ取得部202で取得された第1時系列データa(t)と、データ演算部204で演算された第2時系列データa(t)との相関の度合いに応じて、第2時系列データa(t)に対する第1時系列データa(t)の遅れ時間τを演算する遅れ時間演算部205と、遅れ時間演算部205で演算された遅れ時間τに基づいて、センサ部における時刻と制御装置20における時刻とを同期させる時刻同期部206と、を備える。
この制御装置20によれば、無線センサ101の時刻と制御装置20の時刻とを容易に同期させることができ、学習制御による機械装置10の先端部における振動を抑制することができる。
【0050】
(2)基本動作は、機械装置10に含まれる複数のモータ(サーボモータ102)のうち、少なくとも1つのモータを駆動させる動作であってもよい。
そうすることで、定期的に無線センサ101の時刻と制御装置20の時刻とを同期させる場合でも、少ない手間で時刻同期を行うことができる。
【0051】
(3)本開示の制御装置20は、モータ(サーボモータ102)により駆動される可動部材を有する機械装置10を制御する制御装置であって、機械装置10の可動部材の先端部に設けられたセンサ部(無線センサ101)により、周期的に検出された該先端部の位置、速度又は加速度を表すセンサ信号を受信する無線信号送受信部と、受信したセンサ信号の位置、速度又は加速度に基づいて可動部材の先端部における加速度の第1時系列データa(t)を取得するデータ取得部202と、モータの駆動指令に基づき、第1時系列データa(t)に対応する可動部材の先端部における加速度の第2時系列データa(t)を演算するデータ演算部204と、制御装置20が実行するプログラムが示す動作をプログラムが示す速度に換えて所定値以下の速度で機械装置10を動作させた場合に、データ取得部202で取得された第1時系列データa(t)と、データ演算部204で演算された第2時系列データa(t)との相関の度合いに応じて、第2時系列データa(t)に対する第1時系列データa(t)の遅れ時間τを演算する遅れ時間演算部205と、遅れ時間演算部205で演算された遅れ時間τに基づいて、センサ部における時刻と制御装置20における時刻とを同期させる時刻同期部206と、を備える。
この制御装置20によれば、無線センサ101の時刻と制御装置20の時刻とを容易に同期させることができ、学習制御による機械装置10の先端部における振動を抑制することができる。
【0052】
(4)機械装置10がロボットであり、制御装置20がロボット制御装置であってもよい。
そうすることで、ロボット(機械装置)10の可動部材の先端部の振動に対する学習制御を精度良く行うことができる。
【0053】
(5)本開示の機械システム1は、モータ(サーボモータ102)により駆動される可動部材を有する機械装置と、(1)から(4)のいずれかの制御装置20と、を備える。
この機械システム1によれば、上述の(1)から(4)のいずれかと同様の効果を奏することができる。
【0054】
(6)本開示の時刻同期方法は、モータ(サーボモータ102)により駆動される可動部材を有する機械装置10と、機械装置10を制御する制御装置20とを備える機械システム1において、機械装置10の可動部材の先端部に設けられたセンサ部(無線センサ101)と制御装置20との時刻同期を行う時刻同期方法であって、センサ部により、周期的に検出された該先端部の位置、速度又は加速度を表すセンサ信号を受信する無線信号送受信ステップと、受信したセンサ信号の位置、速度又は加速度に基づいて可動部材の先端部における加速度の第1時系列データa(t)を取得するデータ取得ステップと、モータの駆動指令に基づき、第1時系列データa(t)に対応する可動部材の先端部における加速度の第2時系列データa(t)を演算するデータ演算ステップと、機械装置10を予め決められた基本動作で動作させた場合に、データ取得ステップで取得された第1時系列データa(t)と、データ演算ステップで演算された第2時系列データa(t)との相関の度合いに応じて、第2時系列データa(t)に対する第1時系列データa(t)の遅れ時間τを演算する遅れ時間演算ステップと、遅れ時間演算ステップにより演算された遅れ時間τに基づいて、センサ部における時刻と制御装置20における時刻とを同期させる時刻同期ステップと、を備える。
この時刻同期方法によれば、上述の(1)と同様の効果を奏することができる。
【0055】
(6)本開示の時刻同期方法は、モータ(サーボモータ102)により駆動される可動部材を有する機械装置10と、機械装置10を制御する制御装置20とを備える機械システム1において、機械装置10の可動部材の先端部に設けられたセンサ部(無線センサ101)と制御装置20との時刻同期を行う時刻同期方法であって、センサ部により、周期的に検出された該先端部の位置、速度又は加速度を表すセンサ信号を受信する無線信号送受信ステップと、受信したセンサ信号の位置、速度又は加速度に基づいて可動部材の先端部における加速度の第1時系列データa(t)を取得するデータ取得ステップと、モータの駆動指令に基づき、第1時系列データa(t)に対応する可動部材の先端部における加速度の第2時系列データa(t)を演算するデータ演算ステップと、制御装置20が実行するプログラムが示す動作をプログラムが示す速度に換えて所定値以下の速度で機械装置10を動作させた場合に、データ取得ステップで取得された第1時系列データa(t)と、データ演算ステップで演算された第2時系列データa(t)との相関の度合いに応じて、第2時系列データa(t)に対する第1時系列データa(t)の遅れ時間τを演算する遅れ時間演算ステップと、遅れ時間演算ステップにより演算された遅れ時間τに基づいて、センサ部における時刻と制御装置20における時刻とを同期させる時刻同期ステップと、を備える。
この時刻同期方法によれば、上述の(3)と同様の効果を奏することができる。
【符号の説明】
【0056】
1 機械システム
10 機械装置(ロボット)
20 制御装置
101 無線センサ
202 データ取得部
203 モータ制御部
204 データ演算部
205 遅れ時間演算部
206 時刻同期部
207 学習制御部
図1A
図1B
図2
図3
図4
図5A
図5B
図6
図7
図8