(57)【要約】【課題】機器に負担を与えずに安全を確保しながらダイナミックブレーキをかけることができるダイナミックブレーキ回路を有するモータ駆動装置及びモータ駆動システムを実現する。【解決手段】電源２から供給された電力に基づきモータ３を駆動するモータ駆動装置１は、モータ３の入力端子間を可変抵抗器２２を介して短絡することでモータ３に減速トルクを発生させてモータ３を制動するダイナミックブレーキ回路１１と、ダイナミックブレーキ回路１１によりモータ３を制動する際にモータ３に対して許容される許容惰走距離と、モータ３に関して予め規定されたパラメータと、ダイナミックブレーキ回路１１による制動開始時におけるモータ３の回転速度とに応じて、可変抵抗器２２の抵抗値を設定する抵抗値設定部１３とを備える。【選択図】図１
2020080623.tif 000002
【特許請求の範囲】
【請求項１】
電源から供給された電力に基づきモータを駆動するモータ駆動装置であって、
前記モータの入力端子間を可変抵抗器を介して短絡することで前記モータに減速トルクを発生させて前記モータを制動するダイナミックブレーキ回路と、
前記ダイナミックブレーキ回路により前記モータを制動する際に前記モータに対して許容される許容惰走距離と、前記モータに関して予め規定されたパラメータと、前記ダイナミックブレーキ回路による制動開始時における前記モータの回転速度とに応じて、前記可変抵抗器の抵抗値を設定する抵抗値設定部と、
を備える、モータ駆動装置。
【請求項２】
前記抵抗値設定部は、
前記パラメータを記憶する記憶部と、
前記許容惰走距離と、前記記憶部に記憶された前記パラメータと、前記制動開始時における前記モータの回転速度とに基づき、前記可変抵抗器の抵抗値を計算する抵抗値計算部と、
前記抵抗値計算部により計算された前記抵抗値を有するよう前記可変抵抗器を制御する抵抗値制御部と、
を有する、請求項１に記載のモータ駆動装置。
【請求項３】
前記抵抗値設定部に前記許容惰走距離を入力するための入力部をさらに備える、請求項１または２に記載のモータ駆動装置。
【請求項４】
前記モータを制動する機械式ブレーキ部をさらに備え、
前記抵抗値設定部は、前記許容惰走距離と、前記機械式ブレーキ部の制動力に応じて設定された惰走距離調整値と、前記パラメータと、前記制動開始時における前記モータの回転速度とに応じて、前記可変抵抗器の抵抗値を設定する、請求項１〜３のいずれか一項に記載のモータ駆動装置。
【請求項５】
前記許容惰走距離を、前記モータと前記モータが駆動する可動部とを備えた機械で予め規定された前記可動部の可動領域と、前記制動開始時における前記可動部の位置とに基づいて設定する惰走距離設定部を備える、請求項１〜４のいずれか一項に記載のモータ駆動装置。
【請求項６】
前記許容惰走距離を、複数の前記モータと前記複数のモータの各々が駆動する複数の可動部とを備えた機械で予め規定された前記複数の可動部のうちの少なくとも１つの可動部の可動領域と、前記制動開始時における前記少なくとも１つの可動部の位置とに基づいて設定する惰走距離設定部を備える、請求項１〜４のいずれか一項に記載のモータ駆動装置。
【請求項７】
請求項１〜４のいずれか一項に記載のモータ駆動装置と、
前記モータと前記モータが駆動する可動部とを備えた機械と、
前記可動部と前記機械の外部の物体との間の距離を測定する距離センサと、
を備え、
前記モータ駆動装置は、前記許容惰走距離を、前記制動開始時に前記距離センサが測定した距離に基づいて設定する惰走距離設定部を備える、モータ駆動システム。
【請求項８】
請求項１〜４のいずれか一項に記載のモータ駆動装置と、
複数の前記モータと前記複数のモータの各々が駆動する複数の可動部とを備えた機械と、
前記複数の可動部の各々と前記機械の外部の物体との間の距離を測定する複数の距離センサをさらに備え、
前記モータ駆動装置は、前記許容惰走距離を、前記制動開始時に前記複数の距離センサのうちの少なくとも１つの距離センサが測定した距離に基づいて設定する惰走距離設定部を備える、モータ駆動システム。
【請求項９】
請求項１〜４のいずれか一項に記載のモータ駆動装置と、
前記モータと前記モータが駆動する可動部とを備えた機械と、
前記機械の周囲に予め規定された検知領域への前記可動部の侵入を検知するエリアセンサと、
を備え、
前記エリアセンサが前記検知領域への前記可動部の進入を検知したとき、前記抵抗値設定部は、前記許容惰走距離を予め定めた安全距離に変更するとともに、前記安全距離と、前記パラメータと、前記制動開始時における前記モータの回転速度とに応じて、前記可変抵抗器の抵抗値を設定する、モータ駆動システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ダイナミックブレーキ回路を有するモータ駆動装置及びモータ駆動システムに関する。
【背景技術】
【０００２】
ロボットや工作機械内のモータを駆動するモータ駆動装置では、非常停止時やアラーム発生時などの異常時には、モータの入力端子間を短絡させ発電制動をかけるダイナミックブレーキ（Ｄｙｎａｍｉｃ ｂｒａｋｅ）が広く用いられている。
【０００３】
一般に、ダイナミックブレーキ回路は、モータの入力端子間に設けられるダイナミックブレーキ回路用リレー（以下、単に「リレー」と称する。）と、これに直列に接続されたダイナミックブレーキ抵抗（ＤＢ抵抗）とからなる。ダイナミックブレーキをかける際には、モータへの駆動電力の供給を遮断した上で、リレーを閉成してモータの入力端子間（モータ巻線の相間）を短絡する。モータは電源から電気的に切り離されても界磁磁束が存在し、惰性により回転しているモータは発電機として働くため、これにより発生した電流は閉成されたリレーを介してダイナミックブレーキ抵抗に流れ込み、モータに減速トルクが発生する。このように、ダイナミックブレーキ回路によれば、モータの回転エネルギーはダイナミックブレーキ抵抗で速やかにジュール熱に変換されて消費され、その結果、ダイナミックブレーキをかけ始めてからモータが完全に停止するまでの距離である「惰走距離（制動距離）」を短くすることができる。
【０００４】
ダイナミックブレーキ抵抗の抵抗値の大きさ、制動開始時のモータの回転速度、及びモータについて規定された各種パラメータによって、ダイナミックブレーキ時においてモータの回転エネルギーを消費するのに要する時間が変わり、したがってモータの惰走距離も変わる。通常は、非常停止時やアラーム発生時などにおいてダイナミックブレーキをかけ始めてからモータが完全に停止するまでの惰走距離が最短となるようにダイナミックブレーキ回路が設計される。
【０００５】
しかしながら、ダイナミックブレーキ抵抗の抵抗値の大きさについては、ある程度「決め打ち」により設計することが多く、このような設計によるダイナミックブレーキ回路では、モータの惰走距離を最短化できているとは限らない。
【０００６】
一方で、制動開始時のモータの回転速度を考慮してモータの惰走距離を最短化する技術も知られている。
【０００７】
例えば、回転子に永久磁石を用いた同期式ＡＣサーボモータのダイナミックブレーキ装置において、サーボモータの電機子巻線に外部接続され上記サーボモータの回転数に応じた外部抵抗値が設定される可変手段を設けたことを特徴とする同期式ＡＣサーボモータのダイナミックブレーキ装置であって、回転数に応じた外部抵抗値が、ブレーキトルクが常に最大値となるよう設定されるダイナミックブレーキ装置がある（例えば、特許文献１参照。）。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開昭６２−１８１６８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ロボットや工作機械内のモータを駆動するモータ駆動装置内に設けられるダイナミックブレーキ回路では、安全を確保するために、ダイナミックブレーキをかけ始めてからモータが完全に停止するまでの惰走距離が最短となるように設計される。しかしながら、モータの惰走距離が最短化されるダイナミックブレーキは必然的に大きな発熱を伴うことから、ダイナミックブレーキ回路自体に大きな負担がかかり寿命低下の要因となる。また、ダイナミックブレーキ回路によるモータに対する急激な制動は、モータ並びにこのモータが設けられた工作機械及びロボットに対しても大きな負担を与えこれら機器の寿命低下を招く。したがって、機器に負担を与えずに安全を確保しながらダイナミックブレーキをかけることができるダイナミックブレーキ回路を有するモータ駆動装置及びモータ駆動システムが望まれる。
【課題を解決するための手段】
【００１０】
電源から供給された電力に基づきモータを駆動するモータ駆動装置は、モータの入力端子間を可変抵抗器を介して短絡することでモータに減速トルクを発生させてモータを制動するダイナミックブレーキ回路と、ダイナミックブレーキ回路によりモータを制動する際にモータに対して許容許容惰走距離と、モータに関して予め規定されたパラメータと、ダイナミックブレーキ回路による制動開始時におけるモータの回転速度とに応じて、可変抵抗器の抵抗値を設定する抵抗値設定部と、を備える。
【発明の効果】
【００１１】
本開示の一態様によれば、機器に負担を与えずに安全を確保しながらダイナミックブレーキをかけることができるダイナミックブレーキ回路を有するモータ駆動装置及びモータ駆動システムを実現することができる。
【図面の簡単な説明】
【００１２】
【図１】本開示の第１の実施形態によるモータ駆動装置を示す図である。
【図２】本開示の第１の実施形態における許容惰走距離の設定を説明する図であって、（Ａ）はモータに対する制動開始時のロボットを示し、（Ｂ）はモータに対するダイナミックブレーキにより停止させられたロボットを示す。
【図３】本開示の第１の実施形態によるモータ駆動装置におけるダイナミックブレーキ動作時の動作フローを示すフローチャートである。
【図４】本開示の第２の実施形態によるモータ駆動装置を備えるモータ駆動システムを示す図である。
【図５】本開示の第２の実施形態における許容惰走距離の設定を説明する図であって、（Ａ）はモータに対する制動開始時のロボットを示し、（Ｂ）はモータに対するダイナミックブレーキにより停止させられたロボットを示す。
【図６】本開示の第３の実施形態によるモータ駆動装置を備えるモータ駆動システムにおけるダイナミックブレーキ動作時の動作フローを示すフローチャートである。
【図７】本開示の第３の実施形態によるモータ駆動装置を示す図である。
【図８】本開示の第４の実施形態によるモータ駆動装置を備えるモータ駆動システムを示す図である。
【図９】本開示の第４の実施形態における許容惰走距離の設定を説明する図であって、（Ａ）は通常動作時のロボットを示し、（Ｂ）は機械の可動部がエリアセンサの検知範囲に侵襲したときのロボットを示し、（Ｃ）はモータに対するダイナミックブレーキにより停止させられたロボットを示す。
【図１０】本開示の第４の実施形態によるモータ駆動装置におけるダイナミックブレーキ動作時の動作フローを示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下図面を参照して、ダイナミックブレーキ回路を有するモータ駆動装置について説明する。理解を容易にするために、これらの図面は縮尺を適宜変更している。図面に示される形態は実施をするための一つの例であり、図示された実施形態に限定されるものではない。
【００１４】
まず、本開示の第１の実施形態によるモータ駆動装置について説明する。第１の実施形態では、ダイナミックブレーキ回路によりモータを停止させる際にモータに対して許容される許容惰走距離が、モータが設けられた機械内のモータにより駆動される可動部について予め規定された可動領域と制動開始時における可動部の位置とに基づいて設定される。
【００１５】
図１は、本開示の第１の実施形態によるモータ駆動装置を示す図である。
【００１６】
一例として、交流の電源２に接続されたモータ駆動装置１により、交流モータ（以下、単に「モータ」と称する。）３を制御する場合について示す。モータ駆動装置１は、コンバータ１０１と、インバータ１０２と、ＤＣリンクコンデンサ１０３とを備える。コンバータ１０１は、電源２から入力される交流電力を直流電力に変換してＤＣリンクへ出力し、インバータ１０２は、ＤＣリンクにおける直流電力をモータ３を駆動するための交流電力に変換して出力する。ここで、「ＤＣリンク」とは、コンバータ１０１の直流出力側とインバータ１０２の直流入力側とを電気的に接続する回路部分のことを指し、「ＤＣリンク部」、「直流リンク」、「直流リンク部」、あるいは「直流中間回路」などとも別称されることもある。ＤＣリンクには、ＤＣリンクコンデンサ１０３が設けられる。ＤＣリンクコンデンサ１０３は、ＤＣリンクにおいてエネルギー（直流電力）を蓄積する機能及びコンバータ１０１の直流側の出力の脈動分を抑える機能を有する。ＤＣリンクコンデンサ１０３に電荷が充電されることにより、ＤＣリンクに直流電力が蓄積されることになる。モータ駆動装置１は、一般的なモータ駆動装置と同様、インバータ１０２の電力変換動作を制御するための制御部（図示せず）を備える。すなわち、制御部は、エンコーダ１０４を介して取得されるモータ３の回転速度（速度フィードバック）、モータ３の巻線に流れる電流（電流フィードバック）、所定のトルク指令、及びモータ３の動作プログラムなどに基づいて、モータ３の速度、トルク、もしくは回転子の位置を制御するための電力変換指令を生成する。制御部によって作成された電力変換指令に基づいて、インバータ１０２による電力変換動作が制御される。
【００１７】
なお、モータ３の種類は特に限定されず、例えば誘導モータであっても同期モータであってもよい。モータ３が設けられる機械には、例えばロボットや工作機械などがある。また、電源２及びモータ３の相数は本実施形態を特に限定するものではなく、例えば三相であっても単相であってもよい。電源２の一例を挙げると、三相交流４００Ｖ電源、三相交流２００Ｖ電源、三相交流６００Ｖ電源、単相交流１００Ｖ電源などがある。図示の例では、一例として、電源２及びモータ３は三相としている。
【００１８】
また、代替例として、電源２をバッテリなどの直流電源で実現してもよく、この場合は、コンバータ１０１及びＤＣリンクコンデンサ１０３は省略され、インバータ１０２は直流電源である電源２から入力された直流電力をモータ３を駆動するための交流電力に変換して出力するようにすればよい。
【００１９】
第１の実施形態によるモータ駆動装置１は、ダイナミックブレーキ回路１１と、惰走距離設定部１２と、抵抗値設定部１３とを備える。
【００２０】
ダイナミックブレーキ回路１１は、モータ３の入力端子間（モータ３の巻線の相間）に設けられたリレー２１と、このリレー２１に直列に接続された可変抵抗器２２とを有する。可変抵抗器２２の抵抗値は、後述する抵抗値設定部１３にて設定される。モータ３が設けられたロボットや工作機械において、例えば非常停止ボタンが作業者により操作された場合あるいはアラーム信号が発生した場合に、モータ３に発電制動（ダイナミックブレーキ）がかけられる。ダイナミックブレーキ回路１１によりモータ３を制動する際は、インバータ１０２によるモータ３への駆動電力（交流電力）の供給を遮断し、ダイナミックブレーキ回路１１においてリレー２１を閉成してモータ３の入力端子間を可変抵抗器２２を介して短絡する。モータ３は電源２から電気的に切り離されても界磁磁束が存在し、惰性により回転しているモータ３は発電機として働くため、これにより発生した電流は閉成されたリレー２１を介して可変抵抗器２２に流れ込み、モータ３に減速トルクが発生する。この減速トルクによりモータ３を制動し、最終的にはモータ３を停止させる。
【００２１】
惰走距離設定部１２は、ダイナミックブレーキ回路１１によりモータ３を制動する際にモータ３に対して許容される惰走距離である「許容惰走距離」を設定する。モータ３の惰走距離は、ダイナミックブレーキ抵抗としての可変抵抗器２２の抵抗値の大きさ、エンコーダ１０４により取得される制動開始時のモータ３の回転速度、及びモータ３に関して規定された各種パラメータに依存する。本実施形態では、ダイナミックブレーキ回路１１によりモータ３を停止させる際にモータ３に対して許容される惰走距離を、惰走距離設定部１２において「許容惰走距離」として設定しておき、この設定された許容惰走距離に応じて、ダイナミックブレーキ抵抗としての可変抵抗器２２の抵抗値を変更する。
【００２２】
抵抗値設定部１３は、許容惰走距離と、モータ３に関して規定された各種パラメータと、ダイナミックブレーキ回路１１による制動開始時のモータ３の回転速度とに応じて、可変抵抗器２２の抵抗値を設定する。このため、抵抗値設定部１３は、記憶部３１と、抵抗値計算部３２と、抵抗値制御部３３とを有する。
【００２３】
抵抗値設定部１３内の記憶部３１は、モータ３に関して予め規定されたパラメータを記憶する。記憶部３１に記憶されるモータ３についてのパラメータとしては、例えば、ロータ慣性モーメント、トルク定数、逆起電力定数、モータ極数、モータインダクタンス、及びモータ巻線の抵抗値などがある。記憶部３１は、例えばＥＥＰＲＯＭ（登録商標）などのような電気的に消去・記憶可能な不揮発性メモリ、または、例えばＤＲＡＭ、ＳＲＡＭなどのような高速で読み書きのできるランダムアクセスメモリなどで構成される。
【００２４】
抵抗値設定部１３内の抵抗値計算部３２は、惰走距離設定部１２で設定された許容惰走距離と、記憶部３１に記憶された各種パラメータと、制動開始時のモータ３の回転速度とに基づき、可変抵抗器２２の抵抗値を計算する。制動開始時のモータ３の回転速度は、非常停止ボタンが作業者により操作されたりアラーム信号が発生したりすることでダイナミックブレーキ回路１１がモータ３に対して制動を開始する時点において、モータ３に取り付けられたエンコーダ１０４により取得される。
【００２５】
可変抵抗器２２の抵抗値は、例えば次のようにして求めることができる。モータ３のロータ慣性モーメントをＪ［ｋｇｍ2］、トルク定数Ｋtを［Ｎ・ｍ／Ａｐ］、逆起電力定数Ｋvを［Ｖｓｅｃ／ｒａｄ］、モータ極数をｐ、モータインダクタンスをＬ［Ｈ］、制動開始時のモータ３の回転角周波数をω0［ｒａｄ／ｓｅｃ］、モータ巻線抵抗とダイナミックブレーキ抵抗としての可変抵抗器２２との合成抵抗値をＲ［Ω］としたとき、惰走距離設定部１２で設定された許容惰走距離ｓ［ｍ］を、例えば式１のように表す。
【００２６】
【数１】
2020080623.tif 000003
【００２７】
式１で表される合成抵抗値Ｒ［Ω］についての２次方程式を解くと、式２のようになる。
【００２８】
【数２】
2020080623.tif 000004
【００２９】
また、モータ巻線抵抗の抵抗値をＲm［Ω］、ダイナミックブレーキ抵抗としての可変抵抗器２２の抵抗値をＲDB［Ω］としたとき、合成抵抗値Ｒ［Ω］は式３のように表される。
【００３０】
【数３】
2020080623.tif 000005
【００３１】
式３に式２を代入すると、ダイナミックブレーキ抵抗としての可変抵抗器２２の抵抗値ＲDB［Ω］は式４のように表すことができる。
【００３２】
【数４】
2020080623.tif 000006
【００３３】
ここで、制動開始時のモータ３の回転速度をＮ0［ｒｏｔａｔｉｏｎ／ｍｉｎ］としたとき、制動開始時のモータ３の回転角周波数ω0［ｒａｄ／ｓｅｃ］は式５のように表される。
【００３４】
【数５】
2020080623.tif 000007
【００３５】
式４に式５を代入すると、ダイナミックブレーキ抵抗としての可変抵抗器２２の抵抗値ＲDB［Ω］は式６のように表すことができる。
【００３６】
【数６】
2020080623.tif 000008
【００３７】
抵抗値設定部１３内の抵抗値計算部３２は、例えば式６に従って、可変抵抗器２２の抵抗値ＲDB［Ω］を計算する。なお、式６に基づく可変抵抗器２２の抵抗値の計算式は一例であり、これ以外の計算式に従って可変抵抗器２２の抵抗値を計算してもよい。抵抗値計算部３２で計算された抵抗値は、抵抗値制御部３３へ送られる。
【００３８】
なお、一般に、モータ駆動装置では、ダイナミックブレーキ回路とは別に、摩擦板をアマチュアと端板とで挟むことで摩擦力によりモータにブレーキをかける機械式ブレーキ部を備えている。本実施形態の変形例として、非常停止ボタンが作業者により操作された場合やアラーム信号が発生した場合、ダイナミックブレーキ回路１１によるダイナミックブレーキ動作に加え、機械式ブレーキ部によるブレーキ動作を行うことも可能である。この場合は、ダイナミックブレーキ回路１１単独で制動する場合に比べて制動力が増すので、許容惰走距離を多めにとっても、安全を確保することができる。したがって、抵抗値設定部１３は、惰走距離設定部１２で設定された許容惰走距離と、ダイナミックブレーキ回路１１は異なる機械式ブレーキ部（図示せず）の制動力に応じて設定された惰走距離調整値と、モータ３に関して規定された各種パラメータと、ダイナミックブレーキ回路１１による制動開始時のモータ３の回転速度とに応じて、可変抵抗器２２の抵抗値を設定するようにしてもよい。すなわち、抵抗値設定部１３内の抵抗値計算部３２は、惰走距離設定部１２で設定された許容惰走距離にダイナミックブレーキ回路１１は異なる機械式ブレーキ部の制動力に応じて設定された惰走距離調整値を加算した値と、記憶部３１に記憶されたモータ３の各種パラメータと、制動開始時のモータ３の回転速度とに基づき、可変抵抗器２２の抵抗値を計算する。例えば、ダイナミックブレーキ回路１１による制動開始と機械式ブレーキ部による騒動開始が同時である場合、式６に従って可変抵抗器２２の抵抗値ＲDB［Ω］を計算することができる。この場合、式６記載中の許容惰走距離ｓを、「ｓ＋ｓ’」（ただし、ｓ’＞０）に置き換えて計算すればよい。ここで、「ｓ’」は、機械式ブレーキ部の摩擦力に依存する惰走距離調整値である。後述する第２〜第４の実施形態についても同様に機械式ブレーキ部の制動動力を考慮した惰走長距離調整値を用いて許容惰走距離を調整してもよい。
【００３９】
抵抗値設定部１３内の抵抗値制御部３３は、抵抗値計算部３２により計算された抵抗値を有するよう、ダイナミックブレーキ回路１１内の可変抵抗器２２を制御する。
【００４０】
なお、惰走距離設定部１２、抵抗値設定部１３、及びインバータ１０２を制御するための制御部（図示せず）は、例えばソフトウェアプログラム形式で構築されてもよく、あるいは各種電子回路とソフトウェアプログラムとの組み合わせで構築されてもよい。例えばこれらをソフトウェアプログラム形式で構築する場合は、モータ駆動装置１内やモータ駆動装置１が設けられたロボットや工作機械内にある例えばＭＰＵやＤＳＰなどの演算処理装置をこのソフトウェアプログラムに従って動作させることで、上述の各部の機能を実現することができる。またあるいは、惰走距離設定部１２、抵抗値設定部１３、及びインバータ１０２を制御するための制御部を、各部の機能を実現するソフトウェアプログラムを書き込んだ半導体集積回路として実現してもよい。
【００４１】
本開示の第１の実施形態では、惰走距離設定部１２は、許容惰走距離を、モータ３が設けられた機械（ロボットや工作機械）内のモータ３により駆動される可動部について予め規定された可動領域と制動開始時における可動部の位置とに基づいて設定する。図２は、本開示の第１の実施形態における許容惰走距離の設定を説明する図であって、（Ａ）はモータに対する制動開始時のロボットを示し、（Ｂ）はモータに対するダイナミックブレーキにより停止させられたロボットを示す。ここでは、モータ駆動装置１及びこれにより駆動されるモータ３（図２では図示せず）が設けられたロボット１０００を例にとり説明する。ロボット１０００の可動部であるアーム２００の可動領域が予め規定されている場合、通常は、ロボット１０００の外部の物体である障害物５００は、安全を確保するために、ロボット１０００の可動部であるアーム２００の可動領域の外側に位置する。障害物５００の例としては、人、柵、他のロボット、工作機械、あるいは各種機器などがある。図２において、可動部であるアーム２００の可動領域の境界線を点線で示す。本開示の第１の実施形態では、許容惰走距離を、アーム２００の可動領域と制動開始時におけるアーム２００の位置との間の距離以下の値に設定する。許容惰走距離は、可動部であるアーム２００の可動領域の境界線（図２において点線で示す。）と制動開始時におけるアーム２００の位置との間の距離以下の値に設定すればよく、例えば、アーム２００の可動領域の境界線と制動開始時におけるアーム２００の位置との間の距離を許容惰走距離に設定してもよく、あるいは多少余裕をもって、アーム２００の可動領域の境界線と制動開始時におけるアーム２００の位置との間の距離に所定のマージンを加えた距離を設定してもよい。いずれの場合においても、ダイナミックブレーキ回路１１による制動完了時にはアーム２００は可動領域の内方（すなわち、ロボット１０００の本体に近い方）に停止する。なお、モータ３の回転動作によりアーム２００は３次元的な動きをするので、アーム２００自体の可動距離はモータ３の回転方向の距離とは、数値的には一致していないが、一対一の対応関係がある。したがって、惰走距離設定部１２では、モータ３の回転方向との距離とモータ３が当該回転を行ったときのアーム２００の可動距離との関係を表す計算式を例えばアーム２００の長さやギア比を考慮して事前に求めておき、この計算式を用いてアーム２００の可動領域をモータ３の回転方向の距離に換算し、許容惰走距離を設定すればよい。後述する第２〜第４の実施形態についても惰走距離設定部１２では同様の換算処理が行われる。
【００４２】
図２（Ａ）に示すようにロボット１０００の動作時に例えば作業者により非常停止ボタンが操作された場合、モータ駆動装置１内のダイナミックブレーキ回路１１（図２では図示せず）は、モータ３に対する制動を開始する。惰走距離設定部１２は、制動開始時におけるアーム２００の位置に関する情報をロボット１０００の制御装置（図示せず）から取得し、アーム２００について予め規定された可動領域と制動開始時におけるアーム２００の位置とに基づいて許容惰走距離を設定する。許容惰走距離は、例えばアーム２００の可動領域の境界線と制動開始時におけるアーム２００の位置との間の距離以下の値に設定される。抵抗値計算部３２は、惰走距離設定部１２で設定された許容惰走距離と、記憶部３１に記憶された各種パラメータと、制動開始時のモータ３の回転速度とに基づき、ダイナミックブレーキ回路１１内の可変抵抗器２２の抵抗値を計算する。抵抗値設定部１３内の抵抗値制御部３３は、抵抗値計算部３２により計算された抵抗値を有するよう可変抵抗器２２を制御する。ダイナミックブレーキ回路１１がモータ３を制動している間、ダイナミックブレーキ回路１１内の可変抵抗器２２は、抵抗値計算部３２により計算された抵抗値にて動作し、これにより、モータ３は惰走しつつも徐々に減速し、最終的には図２（Ｂ）に示すようにアーム２００は許容惰走距離に達して停止する。よって、本開示の第１の実施形態によれば、ロボット１０００の非常停止の際、アーム２００が障害物５００と衝突することがないので安全が確保される。また、設定された許容惰走距離が、モータ３が取り得る最短の惰走距離よりも長い距離であれば、モータ３の惰走距離が最短である場合に比べ、ダイナミックブレーキ回路１１にかかる負担を軽減することができ、さらには、ダイナミックブレーキ回路１１によるモータ３に対する急激な制動を回避することができるので、モータ３及びモータ３が設けられたロボット１０００に係る負担を軽減することができる。したがって、ダイナミックブレーキ回路１１、モータ３、及びロボット１０００の長寿命化を図ることも可能である。
【００４３】
なお、ロボット１０００が多関節ロボットである場合、ロボット１０００内には複数のモータ３が設けられる。ここで、多関節ロボットであるロボット１０００のアーム２００を構成する個々の部位をアームセグメントと称する。複数のアームセグメントの各々を駆動するためにモータ３が複数設けられる。ロボット１０００が多関節ロボットである場合、アームセグメントがそれぞれ３次元的に動作することで、結果としてアーム２００の先端が３次元的に動作する。アーム２００の先端部分の可動方向及び可動距離は、アームセグメントの各々の可動方向及び可動距離を合成したものとなる。この場合、惰走距離設定部１２は、許容惰走距離を、ロボット１０００内の複数のモータ３の各々により駆動される複数の可動部（アームセグメント）のうちの少なくとも１つの可動部（アームセグメント）について予め規定された可動領域と当該少なくとも１つの可動部（アームセグメント）の制動開始時の位置とに基づいて設定するようにしてもよい。例えば、アーム２００を構成する複数のアームセグメントのうち、中間付近に位置するアームセグメントの可動領域が大きいような場合、許容惰走距離を、当該中間付近に位置するアームセグメントについて規定された可動領域と当該中間付近に位置するアームセグメントの制動開始時の位置とに基づいて設定するようにしてもよい。また例えば、アーム２００を構成する複数のアームセグメントのうち、可動領域が最も大きいアームセグメントについて規定された可動領域と、当該アームセグメントの制動開始時の位置とに基づいて設定するようにしてもよい。また例えば、アーム２００を構成する複数のアームセグメントのうち、障害物５００に最も近づくような可動領域を有するアームセグメントについて規定された可動領域と障害物５００に最も近づくアームセグメントの制動開始時の位置とに基づいて設定するようにしてもよい。また例えば、許容惰走距離の設定の際には、アームセグメントの長さ、アームセグメントの可動方向、あるいはアームセグメントの可動速度などを適宜考慮してもよい。
【００４４】
図３は、本開示の第１の実施形態によるモータ駆動装置におけるダイナミックブレーキ動作時の動作フローを示すフローチャートである。
【００４５】
モータ駆動装置１によりモータ３の駆動を制御している状態において（ステップＳ１０１）、ステップＳ１０２において、モータ駆動装置１は、非常停止ボタンが操作されたか否かを判定する。
【００４６】
ステップＳ１０２において非常停止ボタンが操作されたと判定された場合、ステップＳ１０３において、モータ３に設けられたエンコーダ１０４は、モータ３の回転速度を取得する。エンコーダ１０４により取得されたモータ３の回転速度は、抵抗値計算部３２へ送られる。また、惰走距離設定部１２は、制動開始時（非常停止ボタン操作時）におけるアーム２００の位置に関する情報をロボット１０００の制御装置から取得し、アーム２００について予め規定された可動領域と制動開始時におけるアーム２００の位置とに基づいて許容惰走距離を設定する。
【００４７】
ステップＳ１０４において、抵抗値計算部３２は、惰走距離設定部１２で設定された許容惰走距離と、記憶部３１に記憶された各種パラメータと、制動開始時のモータ３の回転速度とに基づき、可変抵抗器２２の抵抗値を計算する。抵抗値計算部３２で計算された抵抗値は、抵抗値制御部３３へ送られる。
【００４８】
ステップＳ１０５において、抵抗値制御部３３は、抵抗値計算部３２により計算された抵抗値を有するよう、ダイナミックブレーキ回路１１内の可変抵抗器２２を制御する。
【００４９】
ステップＳ１０６において、ダイナミックブレーキ回路１１は、抵抗値計算部３２により計算された抵抗値を有する可変抵抗器２２の下でモータ３を制動する。これにより、モータ３は惰走しつつも徐々に減速し、最終的にはモータ３は許容惰走距離に達して停止する。
【００５０】
続いて、本開示の第２の実施形態によるモータ駆動装置を備えるモータ駆動システムについて説明する。第２の実施形態では、モータが設けられた機械内のモータにより駆動される可動部に距離センサが設けられる。そして、ダイナミックブレーキ回路によりモータを制動する際にモータに対して許容される許容惰走距離が、距離センサにより測定された可動部と障害物との間の距離に基づいて設定される。
【００５１】
図４は、本開示の第２の実施形態によるモータ駆動装置を備えるモータ駆動システムを示す図である。また、図５は、本開示の第２の実施形態における許容惰走距離の設定を説明する図であって、（Ａ）はモータに対する制動開始時のロボットを示し、（Ｂ）はモータに対するダイナミックブレーキにより停止させられたロボットを示す。
【００５２】
第２の実施形態においては、モータ駆動システムは、モータ駆動装置１と、モータ３及びモータ３が駆動する可動部を備えた機械（ロボット１０００）と、距離センサ１４とを備える。
【００５３】
距離センサ１４は、モータ３が設けられた機械（図５に示す例ではロボット１０００）内のモータ３により駆動される可動部（図５に示す例ではアーム２００）に設けられ、可動部とロボット１０００の外部の物体である障害物５００との間の距離を測定する。障害物５００の例としては、人、柵、他のロボットもしくは工作機械、あるいは各種機器などがある。距離センサ１４は、可動部であるアーム２００の可動方向のうちロボット１０００の本体から最も離れていく方向に位置するように、アーム２００上に設けられるのが好ましい。例えば、可動部であるアーム２００の先端や、アーム２００の側面などに距離センサ１４を設けることができる。なお、距離センサ１４は、測定対象との間の距離を測定することができるものであればよく、例えば画像処理により距離を測定するセンサ、レーザ光の反射により距離を測定するセンサ、あるいは、マイクロ波を用いたドップラーセンサなどがある。
【００５４】
惰走距離設定部１２は、許容惰走距離を、制動開始時に距離センサ１４により測定されたアーム２００と障害物５００との間の距離に基づいて設定する。
【００５５】
距離センサ１４及び惰走距離設定部１２以外の各構成は、図１を参照して説明した第１の実施形態における構成と同様である。
【００５６】
以下、モータ駆動装置１及びこれにより駆動されるモータ３（図５では図示せず）が設けられたロボット１０００を例にとり、第２の実施形態における非常停止時のダイナミックブレーキ動作について説明する。図５（Ａ）に示すようにロボット１０００の動作時に例えば作業者により非常停止ボタンが操作された場合、可動部であるアーム２００の先端に設けられた距離センサ１４は、当該距離センサ１４（すなわちアーム２００の先端）と障害物５００との間の距離を測定する。距離センサ１４により測定された距離は惰走距離設定部１２へ送られる。惰走距離設定部１２は、許容惰走距離を、制動開始時に距離センサ１４により測定された距離に基づいて設定する。許容惰走距離は、制動開始時に距離センサ１４により測定された距離以下の値に設定されればよく、例えば距離センサ１４が測定した距離に設定してもよく、あるいは多少余裕をもって距離センサ１４が測定した距離よりも短い距離に設定してもよい。なお、惰走距離設定部１２による許容惰走距離の設定の際には、第１の実施形態と同様、モータ３の回転方向との距離とモータ３が当該回転を行ったときのアーム２００の可動距離との関係を表す計算式を例えばアーム２００の長さやギア比を考慮して事前に求めておき、この計算式を用いてアーム２００の可動領域をモータ３の回転方向の距離に換算し、許容惰走距離を設定する処理が行われる。作業者による非常停止ボタンの操作により、モータ駆動装置１内のダイナミックブレーキ回路１１（図５では図示せず）は、モータ３に対する制動を開始する。抵抗値設定部１３内の抵抗値計算部３２は、惰走距離設定部１２で設定された許容惰走距離と、記憶部３１に記憶された各種パラメータと、制動開始時のモータ３の回転速度とに基づき、ダイナミックブレーキ回路１１内の可変抵抗器２２の抵抗値を計算する。抵抗値設定部１３内の抵抗値制御部３３は、抵抗値計算部３２により計算された抵抗値を有するよう可変抵抗器２２を制御する。ダイナミックブレーキ回路１１がモータ３を制動している間、ダイナミックブレーキ回路１１内の可変抵抗器２２は、抵抗値計算部３２により計算された抵抗値にて動作し、これにより、モータ３は惰走しつつも徐々に減速し、最終的には図５（Ｂ）に示すようにアーム２００は許容惰走距離に達して停止する。よって、本開示の第２の実施形態によれば、ロボット１０００の非常停止の際、アーム２００が障害物５００と衝突することがないので安全が確保される。また、設定された許容惰走距離が、モータ３が取り得る最短の惰走距離よりも長い距離であれば、モータ３の惰走距離が最短である場合に比べ、ダイナミックブレーキ回路１１にかかる負担を軽減することができ、さらには、ダイナミックブレーキ回路１１によるモータ３に対する急激な制動を回避することができるので、モータ３及びモータ３が設けられたロボット１０００に係る負担を軽減することができる。したがって、ダイナミックブレーキ回路１１、モータ３、及びロボット１０００の長寿命化を図ることも可能である。
【００５７】
なお、ロボット１０００が多関節ロボットである場合、ロボット１０００内の複数のモータ３の各々により駆動される複数の可動部であるアームセグメントの各々に距離センサ１４を設け、惰走距離設定部１２は、許容惰走距離を、複数の距離センサ１４のうちの少なくとも１つの距離センサ１４により測定された距離に基づいて設定するようにしてもよい。例えば、アーム２００を構成するアームセグメントの各々に設けられた距離センサ１４が測定した障害物５００との間の距離のうち、最も短い距離を、許容惰走距離に設定してもよい。また例えば、アーム２００を構成する複数のアームセグメントのうち、可動領域が最も大きいアームセグメントにのみ距離センサ１４を設置し、この距離センサ１４が測定した距離に基づいて許容惰走距離を設定するようにしてもよい。また例えば、アーム２００を構成する複数のアームセグメントのうち、障害物５００に最も近づくような可動領域を有するアームセグメントにのみ距離センサ１４を設置し、この距離センサ１４が測定した距離に基づいて許容惰走距離を設定するようにしてもよい。また例えば、許容惰走距離の設定の際には、アームセグメントの長さ、アームセグメントの可動方向、あるいはアームセグメントの可動速度などを適宜考慮してもよい。
【００５８】
図６は、本開示の第２の実施形態によるモータ駆動装置を備えるモータ駆動システムにおけるダイナミックブレーキ動作時の動作フローを示すフローチャートである。
【００５９】
モータ駆動装置１によりモータ３の駆動を制御している状態において（ステップＳ２０１）、ステップＳ２０２において、モータ駆動装置１は、非常停止ボタンが操作されたか否かを判定する。
【００６０】
ステップＳ２０２において非常停止ボタンが操作されたと判定された場合、ステップＳ２０３において、距離センサ１４は、モータ３が設けられた機械（図５に示す例ではロボット１０００）内のモータ３により駆動される可動部と障害物５００との間の距離を測定する。距離センサ１４により測定された距離は惰走距離設定部１２へ送られる。
【００６１】
ステップＳ２０４において、惰走距離設定部１２は、許容惰走距離を、制動開始時に距離センサ１４により測定された距離に基づいて設定する。設定された許容惰走距離は、抵抗値計算部３２へ送られる。
【００６２】
ステップＳ２０５において、モータ３に設けられたエンコーダ１０４は、モータ３の回転速度を取得する。エンコーダ１０４により取得されたモータ３の回転速度は、抵抗値計算部３２へ送られる。
【００６３】
なお、ステップＳ２０４における惰走距離設定部１２による許容惰走距離設定処理と、ステップＳ２０５におけるエンコーダ１０４による回転速度検出処理とは、順序を入れ替えて実行してもよい。
【００６４】
ステップＳ２０６において、抵抗値計算部３２は、惰走距離設定部１２で設定された許容惰走距離と、記憶部３１に記憶された各種パラメータと、制動開始時のモータ３の回転速度とに基づき、可変抵抗器２２の抵抗値を計算する。抵抗値計算部３２で計算された抵抗値は、抵抗値制御部３３へ送られる。
【００６５】
ステップＳ２０７において、抵抗値制御部３３は、抵抗値計算部３２により計算された抵抗値を有するよう、ダイナミックブレーキ回路１１内の可変抵抗器２２を制御する。
【００６６】
ステップＳ２０８において、ダイナミックブレーキ回路１１は、抵抗値計算部３２により計算された抵抗値を有する可変抵抗器２２の下でモータ３を制動する。これにより、モータ３は惰走しつつも徐々に減速し、最終的にはモータ３は許容惰走距離に達して停止する。
【００６７】
続いて、本開示の第３の実施形態によるモータ駆動装置について説明する。第３の実施形態では、作業者が外部から許容惰走距離を任意に設定可能としたものである。
【００６８】
図７は、本開示の第３の実施形態によるモータ駆動装置を示す図である。
【００６９】
第３の実施形態によるモータ駆動装置１は、図１〜図３を参照して説明した第１の実施形態によるモータ駆動装置の構成に加え、許容惰走距離を惰走距離設定部１２に入力するための入力部１５をさらに備える。入力部１５で入力された許容惰走距離は、惰走距離設定部１２を経たのち、抵抗値設定部１３内の抵抗値計算部３２に入力される。入力部１５以外の各構成は、図１を参照して説明した第１の実施形態における構成と同様である。入力部１５の例としては、キーボード、マウス、タッチパネルなどがある。また例えばロボットの操作盤や工作機械の数値制御装置に設けられた入力部と兼用であってもよい。入力部１５に設けることで、作業者が任意に許容惰走距離を設定することができ、モータ駆動装置１が駆動するモータ３が設けられた機械（ロボットや工作機械）などの運用の柔軟性が向上する。
【００７０】
なお、第３の実施形態による入力部１５を、第１の実施形態及び第２の実施形態並びに後述する第４の実施形態によるモータ駆動装置１にさらに設けてもよい。
【００７１】
続いて、本開示の第４の実施形態によるモータ駆動装置について説明する。第４の実施形態では、モータ３が設けられた機械（ロボットや工作機械）の周囲に、予め規定された検知領域内への当該機械の可動部の侵入を検知するエリアセンサがさらに設けられる。エリアセンサにより当該機械が検知領域内に入ったことを検知したときのモータの回転速度に基づき、可変抵抗器の抵抗値が計算される。
【００７２】
図８は、本開示の第４の実施形態によるモータ駆動装置を備えるモータ駆動システムを示す図である。また、図９は、本開示の第４の実施形態における許容惰走距離の設定を説明する図であって、（Ａ）は通常動作時のロボットを示し、（Ｂ）は機械の可動部がエリアセンサの検知範囲に侵襲したときのロボットを示し、（Ｃ）はモータに対するダイナミックブレーキにより停止させられたロボットを示す。
【００７３】
第４の実施形態においては、モータ駆動システムは、モータ駆動装置１と、モータ３及びモータ３が駆動する可動部を備えた機械（ロボット１０００）と、エリアセンサ１６とを備える。
【００７４】
エリアセンサ１６は、モータ３が設けられた機械（図９に示す例ではロボット１０００）の周囲に設けられる。エリアセンサ１６は、モータ３が設けられた機械（図９に示す例ではロボット１０００）可動部（図５に示す例ではアーム２００）が、予め規定された検知領域内に侵入したか否かを検知する。なお、エリアセンサ１６は、予め規定された検知領域内に何からの物体が入ったか否かを検知できるものであればよく、例えば画像処理により物体の侵入を検知するセンサ、レーザ光により物体の侵入を検知するセンサ、赤外線により物体の侵入を検知するセンサ、あるいは、マイクロ波を用いたドップラーセンサなどがある。
【００７５】
通常は、人、柵、他のロボットもしくは工作機械、あるいは各種機器などの障害物５００は、安全を確保するために、ロボット１０００の可動部であるアーム２００の可動領域の外側に位置すべきである。よって、エリアセンサ１６は、障害物５００の近傍に設置されるのが好ましい。許容惰走距離については、第１の実施形態と同様に、モータ３が設けられた機械（ロボットや工作機械）内のモータ３により駆動される可動部について予め規定された可動領域と制動開始時における可動部の位置とに基づいて事前に設定しておく。またさらに、障害物５００についてより高度な安全を確保するために、許容惰走距離よりも短い「安全距離」を事前に設定しておく。安全距離として、例えばモータ３が取り得る最短の惰走距離を設定してもよい。
【００７６】
エリアセンサ１６が検知領域へのアーム２００の進入を検知したとき、抵抗値設定部１３は、惰走距離設定部１２で設定されていた許容惰走距離を安全距離に変更するとともに、この安全距離と、モータ３についての各種パラメータと、制動開始時のモータ３の回転速度とに応じて、可変抵抗器２２の抵抗値を設定する。すなわち、抵抗値設定部１３内の抵抗値計算部３２は、エリアセンサ１６が検知領域へのアーム２００の進入を検知したときは、許容惰走距離よりも短い安全距離と、記憶部３１に記憶されたモータ３についての各種パラメータと、制動開始時モータ３の回転速度とに基づき、ダイナミックブレーキ回路１１内の可変抵抗器２２の抵抗値を計算する。
【００７７】
エリアセンサ１６及び抵抗値計算部３２以外の各構成は、図１を参照して説明した第１の実施形態における構成と同様である。
【００７８】
ここでは、モータ駆動装置１及びこれにより駆動されるモータ３（図９では図示せず）が設けられたロボット１０００を例にとり、第２の実施形態における非常停止時のダイナミックブレーキ動作について説明する。図９（Ａ）に示すようにロボット１０００が通常動作していた後、図９（Ｂ）に示すようにロボット１０００の動作時に例えば作業者により非常停止ボタンが操作された時点でエリアセンサ１６が検知領域内へのアーム２００の侵入を検知した場合、エリアセンサ１６の検知結果（検知信号）が、抵抗値設定部１３へ送られる。抵抗値設定部１３は、惰走距離設定部１２で設定されていた許容惰走距離を安全距離に変更するとともに、抵抗値設定部１３内の抵抗値計算部３２は、この安全距離と、モータ３についての各種パラメータと、制動開始時のモータ３の回転速度とに応じて、可変抵抗器２２の抵抗値を計算する。作業者による非常停止ボタンの操作により、モータ駆動装置１内のダイナミックブレーキ回路１１（図９では図示せず）は、モータ３に対する制動を開始する。抵抗値計算部３２は、安全距離と、記憶部３１に記憶された各種パラメータと、制動開始時のモータ３の回転速度とに基づき、ダイナミックブレーキ回路１１内の可変抵抗器２２の抵抗値を計算する。抵抗値設定部１３内の抵抗値制御部３３は、抵抗値計算部３２により計算された抵抗値を有するよう可変抵抗器２２を制御する。ダイナミックブレーキ回路１１がモータ３を制動している間、ダイナミックブレーキ回路１１内の可変抵抗器２２は、抵抗値計算部３２により計算された抵抗値にて動作し、これにより、モータ３は惰走しつつも徐々に減速し、図９（Ｃ）に示すようにアーム２００は安全距離に達した時点で停止する。なお、作業者により非常停止ボタンが操作された時点でエリアセンサ１６が検知領域内へのアーム２００の侵入を検知しなかった場合は、抵抗値設定部１３は、惰走距離設定部１２で設定されていた許容惰走距離は変更せず、抵抗値設定部１３内の抵抗値計算部３２は、この許容惰走距離と、モータ３についての各種パラメータと、制動開始時のモータ３の回転速度とに応じて、可変抵抗器２２の抵抗値を計算する。この場合、これにより、モータ３は惰走しつつも徐々に減速し、アーム２００は許容惰走距離に達した時点で停止する。よって、本開示の第４の実施形態によれば、ロボット１０００の非常停止の際、アーム２００が障害物５００と衝突することがないので安全が確保される。また、安全距離として、モータ３が取り得る最短の惰走距離を設定しておけば、エリアセンサ１６が検知領域へのアーム２００の進入を検知した場合はモータ３を最短の惰走距離（すなわち安全距離）で停止させ、エリアセンサ１６が検知領域へのアーム２００の進入を検知しなかった場合はモータ３を安全距離（例えば最短の惰走距離）よりも長い許容惰走距離で停止させことができるので、ダイナミックブレーキ回路１１にかかる負担を軽減することができ、さらには、ダイナミックブレーキ回路１１によるモータ３に対する急激な制動を行う回数を低減することができるので、モータ３及びモータ３が設けられたロボット１０００に係る負担を軽減することができる。したがって、ダイナミックブレーキ回路１１、モータ３、及びロボット１０００の長寿命化を図ることも可能である。また、第４の実施形態におけるエリアセンサ１６は、第２の実施形態における距離センサ１４よりも安価である。
【００７９】
図１０は、本開示の第４の実施形態によるモータ駆動装置におけるダイナミックブレーキ動作時の動作フローを示すフローチャートである。
【００８０】
本開示の第４の実施形態では、惰走距離設定部１２により、許容惰走距離を、モータ３が設けられた機械（ロボットや工作機械）内のモータ３により駆動される可動部について予め規定された可動領域に基づいて事前に設定しておく。また、安全距離を、許容惰走距離よりも短い距離にて事前に設定しておく。
【００８１】
モータ駆動装置１によりモータ３の駆動を制御している状態において（ステップＳ３０１）、ステップＳ３０２において、モータ駆動装置１は、非常停止ボタンが操作されたか否かを判定する。
【００８２】
ステップＳ３０２において非常停止ボタンが操作されたと判定された場合、ステップＳ３０３において、モータ３に設けられたエンコーダ１０４は、モータ３の回転速度を取得する。エンコーダ１０４により取得されたモータ３の回転速度は、抵抗値計算部３２へ送られる。
【００８３】
ステップＳ３０４において、エリアセンサ１６は、モータ３が設けられた機械（図９に示す例ではロボット１０００）の可動部（図５に示す例ではアーム２００）が検知領域内に侵入したか否かを検知する。ステップＳ３０４において可動部の侵入を検知したと判定された場合はステップＳ３０５へ進み、可動部の侵入を検知したと判定されなかった場合はステップＳ３０８へ進む。
【００８４】
ステップＳ３０３においてエリアセンサ１６の検知領域内に入ったと判定された場合は、ステップＳ３０５において、抵抗値設定部１３は、惰走距離設定部１２で設定されていた許容惰走距離をより短い安全距離に変更するとともに、抵抗値設定部１３内の抵抗値計算部３２は、安全距離と、記憶部３１に記憶されたモータ３についての各種パラメータと、ステップＳ３０３で検出された制動開始時モータ３の回転速度とに基づき、ダイナミックブレーキ回路１１内の可変抵抗器２２の抵抗値を計算する。抵抗値計算部３２で計算された抵抗値は、抵抗値制御部３３へ送られる。
【００８５】
一方、ステップＳ３０４においてエリアセンサ１６の検知領域内に入ったと判定されなかった場合は、ダイナミックブレーキ回路１１内の可変抵抗器２２の抵抗値は変更せず、ステップＳ３０８において、抵抗値計算部３２は、惰走距離設定部１２で設定された許容惰走距離と、記憶部３１に記憶された各種パラメータと、ステップＳ３０３で検出された制動開始時のモータ３の回転速度とに基づき、可変抵抗器２２の抵抗値を計算する。抵抗値計算部３２で計算された抵抗値は、抵抗値制御部３３へ送られる。
【００８６】
ステップＳ３０６において、抵抗値制御部３３は、抵抗値計算部３２により計算された抵抗値を有するよう、ダイナミックブレーキ回路１１内の可変抵抗器２２を制御する。
【００８７】
ステップＳ３０７において、ダイナミックブレーキ回路１１は、抵抗値計算部３２により計算された抵抗値を有する可変抵抗器２２の下でモータ３を制動する。これにより、モータ３は惰走しつつも徐々に減速し、ステップＳ３０５において安全距離に基づき抵抗値を計算した場合はモータ３は安全距離に達して停止し、ステップＳ３０８において許容惰走距離に基づき抵抗値を計算した場合はモータ３は許容惰走距離に達して停止する。
【００８８】
なお、上述の各実施形態では、モータ３に設けられる機械としてロボット１０００を例にとり説明したが、工作機械であってもよい。各実施形態を工作機械に適用する場合、モータ３が設けられた工作機械内のモータ３により駆動される可動部は、例えば工具及びワークの把持部などが該当し、障害物５００は、例えば工作機械の工具が加工するワーク、当該工具とは異なる他の工具、及び工作機械において工具及び把持部を内包する作業室内の内壁などが該当する。この場合、惰走距離設定部１２による許容惰走距離の設定の際には、上述の各実施形態と同様、モータ３の回転方向との距離とモータ３が当該回転を行ったときの可動部は、例えば工具及びワークの把持部との関係を表す計算式を例えば工具やワークの把持部を駆動する駆動軸の長さやギア比を考慮して事前に求めておき、この計算式を用いて工具及びワークの把持部の可動領域をモータ３の回転方向の距離に換算し、許容惰走距離を設定する処理が行われる。作業者による非常停止ボタンの操作により、モータ駆動装置１内のダイナミックブレーキ回路１１は、モータ３に対する制動を開始する。抵抗値設定部１３内の抵抗値計算部３２は、惰走距離設定部１２で設定された許容惰走距離と、記憶部３１に記憶された各種パラメータと、制動開始時のモータ３の回転速度とに基づき、ダイナミックブレーキ回路１１内の可変抵抗器２２の抵抗値を計算する。抵抗値設定部１３内の抵抗値制御部３３は、抵抗値計算部３２により計算された抵抗値を有するよう可変抵抗器２２を制御する。なお、モータ３に設けられる機械を工作機械した場合、モータ３が設けられた工作機械内のモータ３により駆動される可動部を工具とするかあるいはワークの把持部とするかは、例えば工作機械の運用状況や周辺環境などに応じて作業者が適宜設定すればよい。
【符号の説明】
【００８９】
１    モータ駆動装置
２    電源
３    モータ
１１    ダイナミックブレーキ回路
１２    惰走距離設定部
１３    抵抗値設定部
１４    距離センサ
１５    入力部
１６    エリアセンサ
２１    リレー
２２    可変抵抗器
３１    記憶部
３２    抵抗値計算部
３３    抵抗値制御部
１０１    コンバータ
１０２    インバータ
１０３    ＤＣリンクコンデンサ
１０４    エンコーダ
２００    アーム
５００    障害物
１０００    ロボット
【図１】
2020080623.tif 000009
【図２】
2020080623.tif 000010
【図３】
2020080623.tif 000011
【図４】
2020080623.tif 000012
【図５】
2020080623.tif 000013
【図６】
2020080623.tif 000014
【図７】
2020080623.tif 000015
【図８】
2020080623.tif 000016
【図９】
2020080623.tif 000017
【図１０】
2020080623.tif 000018