(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023181371
(43)【公開日】2023-12-21
(54)【発明の名称】モータ駆動システム、モータ駆動方法及びプログラム
(51)【国際特許分類】
H02P 3/06 20060101AFI20231214BHJP
【FI】
H02P3/06 C
【審査請求】有
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2023185958
(22)【出願日】2023-10-30
(62)【分割の表示】P 2019075146の分割
【原出願日】2019-04-10
(71)【出願人】
【識別番号】314012076
【氏名又は名称】パナソニックIPマネジメント株式会社
(74)【代理人】
【識別番号】110002527
【氏名又は名称】弁理士法人北斗特許事務所
(72)【発明者】
【氏名】筒井 健斗
(72)【発明者】
【氏名】佐々木 則明
(57)【要約】
【課題】停止指令が入力されてからサーボモータが停止するまでの間のサーボモータの動作量が不必要に長く又は短くなる可能性を低減させる。
【解決手段】モータ駆動システム1は、サーボモータ7の動作を制御するサーボ制御部2を備える。サーボ制御部2は、サーボモータ7を停止させるための停止指令C1が入力されてからサーボモータ7が停止するまでの間のサーボモータ7の動作量が、所定の範囲である制動範囲内となるようにサーボモータ7を停止させる制御を行う。サーボ制御部2は、制動制御部22を有する。制動制御部22は、サーボモータ7の動作量が制動範囲の上限を超過しない範囲で、停止指令が入力された後のサーボモータ7の加速度の時間変化のパターンを決定する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
サーボモータの動作を制御するサーボ制御部を備え、
前記サーボ制御部は、前記サーボモータを停止させるための停止指令が入力されてから前記サーボモータが停止するまでの間の前記サーボモータの動作量が、所定の範囲である制動範囲内となるように前記サーボモータを停止させる制御を行い、
前記サーボ制御部は、前記サーボモータが駆動する駆動対象の位置に関する情報に基づいて前記制動範囲を決定する制動制御部を有し、
前記制動制御部は、前記停止指令が入力された後の前記サーボモータの加速度の時間変化のパターンを決定し、
前記制動制御部は、前記サーボモータの動作量が前記制動範囲の上限を超過しない範囲で、前記停止指令が入力された後の前記サーボモータの加速度の時間変化のパターンを決定する、
モータ駆動システム。
【請求項2】
サーボモータの動作を制御するサーボ制御部を備え、
前記サーボ制御部は、前記サーボモータを停止させるための停止指令が入力されてから前記サーボモータが停止するまでの間の前記サーボモータの動作量が、所定の範囲である制動範囲内となるように前記サーボモータを停止させる制御を行い、
前記サーボ制御部は、前記サーボモータが駆動する駆動対象の位置に関する情報に基づいて前記制動範囲を決定する制動制御部を有し、
前記制動制御部は、前記停止指令が入力された後の前記サーボモータの加速度の時間変化のパターンを決定し、
前記制動制御部は、前記サーボモータの加速度の絶対値が所定の加速度を下回らない範囲で、前記停止指令が入力された後の前記サーボモータの加速度の時間変化のパターンを決定する、
モータ駆動システム。
【請求項3】
前記制動制御部は、前記サーボモータの加速度が連続的に変化するように、前記停止指令が入力された後の前記サーボモータの加速度の時間変化のパターンを決定する機能を有する、
請求項1又は2に記載のモータ駆動システム。
【請求項4】
前記サーボ制御部は、前記停止指令を含む指令を前記サーボ制御部に出力する上位コントローラと通信するための通信部を有する、
請求項1~3のいずれか一項に記載のモータ駆動システム。
【請求項5】
特定の事象の発生を検出すると前記サーボ制御部に前記停止指令を出力するエラー検出部を更に備える、
請求項1~4のいずれか一項に記載のモータ駆動システム。
【請求項6】
前記サーボモータを更に備える、
請求項1~5のいずれか一項に記載のモータ駆動システム。
【請求項7】
前記制動制御部は、前記制動範囲を決定するためのパラメータの入力を受け付ける、
請求項1~6のいずれか一項に記載のモータ駆動システム。
【請求項8】
前記制動制御部は、前記停止指令が入力された後に前記駆動対象の位置に関する情報を検出するセンサの出力に基づいて、前記制動範囲を決定する、
請求項1~7のいずれか一項に記載のモータ駆動システム。
【請求項9】
サーボモータを停止させるための停止指令が入力されてから前記サーボモータが停止するまでの間の前記サーボモータの動作量が、所定の範囲である制動範囲内となるように前
記サーボモータを停止させる制御を行う停止ステップと、
前記サーボモータが駆動する駆動対象の位置に関する情報に基づいて前記制動範囲を決定する決定ステップと、を備え、
前記決定ステップでは、前記停止指令が入力された後の前記サーボモータの加速度の時間変化のパターンを決定し、
前記決定ステップでは、前記サーボモータの動作量が前記制動範囲の上限を超過しない範囲で、前記停止指令が入力された後の前記サーボモータの加速度の時間変化のパターンを決定する、
モータ駆動方法。
【請求項10】
サーボモータを停止させるための停止指令が入力されてから前記サーボモータが停止するまでの間の前記サーボモータの動作量が、所定の範囲である制動範囲内となるように前記サーボモータを停止させる制御を行う停止ステップと、
前記サーボモータが駆動する駆動対象の位置に関する情報に基づいて前記制動範囲を決定する決定ステップと、を備え、
前記決定ステップでは、前記停止指令が入力された後の前記サーボモータの加速度の時間変化のパターンを決定し、
前記決定ステップでは、前記サーボモータの加速度の絶対値が所定の加速度を下回らない範囲で、前記停止指令が入力された後の前記サーボモータの加速度の時間変化のパターンを決定する、
モータ駆動方法。
【請求項11】
請求項9又は10に記載のモータ駆動方法を、1以上のプロセッサに実行させるための、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示はモータ駆動システム、モータ駆動方法及びプログラムに関し、より詳細には、サーボモータの動作を制御するモータ駆動システム、モータ駆動方法及びプログラムに関する。
【背景技術】
【0002】
特許文献1記載のモータ制御装置は、モータとモータが連結された機械系とを備える制御対象に対する位置決め制御をモータの駆動制御により実現する。モータ制御装置は、速度指令とモータの検出速度とに基づいて電流指令を算出し出力する速度制御部と、電流指令に基づいてモータに供給する駆動電流を制御する電流制御部とを備える。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
このようなモータ制御装置において、緊急時に外部から停止指令が入力された場合等には、例えば、モータへの駆動電流の供給を遮断することでモータを急停止させていた。しかしながら、例えば、モータが搬送機に用いられる場合には、モータが急停止することで、搬送機が搬送している物品が搬送機から脱落する可能性がある。また、モータが急停止することで、モータ自体に負担が掛かる可能性もある。このように、停止指令が入力されてからモータが停止するまでの間のモータの動作量が不必要に短いことによって問題が生じることがあった。
【0005】
本開示は、停止指令が入力されてからサーボモータが停止するまでの間のサーボモータの動作量が不必要に長く又は短くなる可能性を低減できるモータ駆動システム、モータ駆動方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本開示の一態様に係るモータ駆動システムは、サーボモータの動作を制御するサーボ制御部を備える。前記サーボ制御部は、前記サーボモータを停止させるための停止指令が入力されてから前記サーボモータが停止するまでの間の前記サーボモータの動作量が、所定の範囲である制動範囲内となるように前記サーボモータを停止させる制御を行う。前記サーボ制御部は、制動制御部を有する。前記制動制御部は、前記サーボモータが駆動する駆動対象の位置に関する情報に基づいて前記制動範囲を決定する。前記制動制御部は、前記停止指令が入力された後の前記サーボモータの加速度の時間変化のパターンを決定する。前記制動制御部は、前記サーボモータの動作量が前記制動範囲の上限を超過しない範囲で、前記停止指令が入力された後の前記サーボモータの加速度の時間変化のパターンを決定する。
本開示の別の一態様に係るモータ駆動システムは、サーボモータの動作を制御するサーボ制御部を備える。前記サーボ制御部は、前記サーボモータを停止させるための停止指令が入力されてから前記サーボモータが停止するまでの間の前記サーボモータの動作量が、所定の範囲である制動範囲内となるように前記サーボモータを停止させる制御を行う。前記サーボ制御部は、制動制御部を有する。前記制動制御部は、前記サーボモータが駆動する駆動対象の位置に関する情報に基づいて前記制動範囲を決定する。前記制動制御部は、前記停止指令が入力された後の前記サーボモータの加速度の時間変化のパターンを決定する。前記制動制御部は、前記サーボモータの加速度の絶対値が所定の加速度を下回らない範囲で、前記停止指令が入力された後の前記サーボモータの加速度の時間変化のパターンを決定する。
【0007】
本開示の一態様に係るモータ駆動方法は、停止ステップと、決定ステップと、を備える。前記停止ステップは、サーボモータを停止させるための停止指令が入力されてから前記サーボモータが停止するまでの間の前記サーボモータの動作量が、所定の範囲である制動範囲内となるように前記サーボモータを停止させる制御を行う。前記決定ステップは、前記サーボモータが駆動する駆動対象の位置に関する情報に基づいて前記制動範囲を決定する。前記決定ステップでは、前記停止指令が入力された後の前記サーボモータの加速度の時間変化のパターンを決定する。前記決定ステップでは、前記サーボモータの動作量が前記制動範囲の上限を超過しない範囲で、前記停止指令が入力された後の前記サーボモータの加速度の時間変化のパターンを決定する。
本開示の別の一態様に係るモータ駆動方法は、停止ステップと、決定ステップと、を備える。前記停止ステップは、サーボモータを停止させるための停止指令が入力されてから前記サーボモータが停止するまでの間の前記サーボモータの動作量が、所定の範囲である制動範囲内となるように前記サーボモータを停止させる制御を行う。前記決定ステップは、前記サーボモータが駆動する駆動対象の位置に関する情報に基づいて前記制動範囲を決定する。前記決定ステップでは、前記停止指令が入力された後の前記サーボモータの加速度の時間変化のパターンを決定する。前記決定ステップでは、前記サーボモータの加速度の絶対値が所定の加速度を下回らない範囲で、前記停止指令が入力された後の前記サーボモータの加速度の時間変化のパターンを決定する。
【0008】
本開示の一態様に係るプログラムは、上記モータ駆動方法を、1以上のプロセッサに実行させる。
【発明の効果】
【0009】
本開示は、停止指令が入力されてからサーボモータが停止するまでの間のサーボモータの動作量が不必要に長く又は短くなる可能性を低減できるという利点がある。
【図面の簡単な説明】
【0010】
【
図1】
図1は、一実施形態に係るモータ駆動システムが、停止制御に対応して動作している際のサーボモータの制御を説明するブロック図である。
【
図2】
図2は、同上のモータ駆動システムが、基本制御に対応して動作している際のサーボモータの制御を説明するブロック図である。
【
図3】
図3Aは、同上のモータ駆動システムを備えた搬送機の移動の様子を示すイメージ図である。
図3Bは、同上の搬送機の停止した状態を示すイメージ図である。
【
図4】
図4は、同上のモータ駆動システムが、停止制御に対応して動作する際のフローチャートである。
【
図5】
図5は、同上のモータ駆動システムの加速度、速度及び座標の時間変化の一例を示すグラフである。
【
図6】
図6Aは、変形例1に係るモータ駆動システムの加速度、速度及び座標の時間変化の一例を示すグラフである。
図6Bは、同上のモータ駆動システムの加速度、速度及び座標の時間変化の別の一例を示すグラフである。
【発明を実施するための形態】
【0011】
以下、実施形態に係るモータ駆動システムについて、図面を用いて説明する。ただし、下記の実施形態は、本開示の様々な実施形態の1つに過ぎない。下記の実施形態は、本開示の目的を達成できれば、設計等に応じて種々の変更が可能である。
【0012】
(1)構成
図1に示すように、本実施形態のモータ駆動システム1は、サーボ制御部2を備えている。サーボ制御部2は、サーボモータ7の動作を制御する。また、サーボ制御部2は、上位コントローラ8と通信する。サーボ制御部2は、上位コントローラ8から指令を受けて、指令に応じてサーボモータ7の動作を制御する。ここで、サーボモータ7及び上位コントローラ8は、モータ駆動システム1の外部の構成として設けられているが、サーボモータ7及び上位コントローラ8のうち少なくとも一方がモータ駆動システム1に含まれていてもよい。
【0013】
本実施形態では、上位コントローラ8は、例えばサーバである。上位コントローラ8及びサーボ制御部2の少なくとも一部は、1以上のプロセッサ及びメモリを有するコンピュータシステムにより構成されている。また、上位コントローラ8及びサーボ制御部2の各々のブロック全体がコンピュータシステムによって構成されている必要はなく、そのうちの少なくとも一部のみが、1以上のプロセッサ及びメモリを有するコンピュータシステムにより構成されている構成でもよい。コンピュータシステムのメモリに記録されたプログラムを、コンピュータシステムのプロセッサが実行することにより、上位コントローラ8及びサーボ制御部2の各々の機能のうちの少なくとも一部の機能が実現される。プログラムは、メモリに記録されていてもよいし、インターネット等の電気通信回線を通して提供されてもよく、メモリカード等の非一時的記録媒体に記録されて提供されてもよい。
【0014】
サーボモータ7は、駆動対象11を駆動する。本実施形態では、サーボモータ7は、ステータと、ステータに対して回転するロータと、ロータと一緒に回転する出力軸とを有する回転モータである。本実施形態のモータ駆動システム1及びサーボモータ7は、搬送機10(移動体)に備えられている。本実施形態の駆動対象11は、搬送機10の本体である。搬送機10は、駆動輪を含む本体(駆動対象11)と、サーボモータ7と、モータ駆動システム1とを備えている。サーボモータ7は、出力軸を介して駆動輪を回転させて本体(駆動対象11)を移動させる。これにより、搬送機10は、物品12(
図3A参照)を搬送することができる。
【0015】
モータ駆動システム1は、エンコーダ41と、トルク検出部42と、外部スケール43と、エラー検出部44とを更に備えている。
【0016】
エンコーダ41は、サーボモータ7のロータの回転角を検出する。エンコーダ41としては、例えば、光電式エンコーダ又は磁気式エンコーダを採用することができる。
【0017】
トルク検出部42は、サーボモータ7の動作トルクを検出する。トルク検出部42は、例えば、ねじり歪みの検出が可能な磁歪式歪センサである。磁歪式歪センサは、サーボモータ7の出力軸にトルクが加わることにより発生する歪みに応じた透磁率の変化を、サーボモータ7の非回転部分に設置したコイルで検出し、歪みに比例した電圧信号を出力する。
【0018】
外部スケール43は、例えば、光学センサ、超音波センサ、又は、撮像装置を含む。外部スケール43は、モータ駆動システム1を備えた搬送機10(移動体)の周囲の物体を検出する。本実施形態では、外部スケール43は、駆動対象11の進路に物体が存在するか否かを検出し、物体が存在する場合に、物体と駆動対象11との間の距離を求める。
【0019】
エラー検出部44は、特定の事象の発生を検出する。エラー検出部44は、特定の事象の発生を検出すると、サーボモータ7を緊急停止させるための停止指令C1(
図1参照)をサーボ制御部2に出力する。特定の事象は、モータ駆動システム1による制御に関する異常を示す事象である。特定の事象の具体例は、たとえばサーボモータ7のトルクが第1の閾値よりも大きいこと、サーボモータ7に供給される電流が第2の閾値よりも大きい過電流であること、又は、駆動対象11の進路に障害物が存在すること等である。
【0020】
一例として、エラー検出部44は、サーボモータ7のトルクが第1の閾値よりも大きいか否かを判定するために、トルク検出部42からサーボモータ7の動作トルクの検出値を取得している。また、エラー検出部44は、サーボモータ7に供給される電流が第2の閾値よりも大きいか否かを判定するために、電流センサを備えており、サーボモータ7に供給される電流の検出値を電流センサから取得している。電流センサは、例えば、シャント抵抗素子又はホール素子電流センサを含んでいる。また、エラー検出部44は、駆動対象11の進路に障害物が存在するか否かを判定するために、外部スケール43の検出結果を取得している。
【0021】
サーボ制御部2は、フルクローズドループ方式によりサーボモータ7の動作を制御する。
【0022】
サーボ制御部2は、制動制御部22を有している。サーボ制御部2は、更に、通信部21と、位置制御部23と、速度フィードフォワード部24と、速度演算部25と、速度制御部26と、トルクフィードフォワード部27と、トルク制御部28と、電流制御部29とを有している。
【0023】
制動制御部22は、サーボ制御部2がサーボモータ7を緊急停止させる場合にサーボモータ7の動作を制御する。すなわち、サーボ制御部2の動作は、上位コントローラ8からの指令に基づいてサーボモータ7を制御する基本制御(モード)と、サーボ制御部2がサーボモータ7を緊急停止させる停止制御(モード)とを含む。詳しくは後述する。
【0024】
通信部21は、上位コントローラ8と通信するための通信インタフェースを含んでいる。通信部21と上位コントローラ8との間の通信方式としては、無線通信又は有線通信の適宜の通信方式が採用される。本実施形態では一例として、通信部21は、Wi-Fi(登録商標)、Bluetooth(登録商標)、ZigBee(登録商標)又は免許を必要としない小電力無線(特定小電力無線)等の規格に準拠した、電波を通信媒体として用いる無線通信を採用する。
【0025】
通信部21は、上位コントローラ8から出力される位置指令の入力を受け付ける。位置指令は、サーボモータ7の回転角を指定する指令である。位置指令は、サーボモータ7の回転角を示す値である位置指令値として通信部21に入力される。
【0026】
また、上位コントローラ8は、停止指令C1(
図1参照)を出力する。通信部21は、上位コントローラ8から出力される停止指令C1の入力を受け付ける。停止指令C1は、サーボモータ7を緊急停止させるための指令である。後述するように、本開示の課題の1つは、停止指令C1に応じてサーボモータ7を停止させる制御を適正化して、停止しようとする駆動対象11が物体9(
図3A参照)と衝突する可能性を低減することである。停止指令C1は、搬送機10又はサーボモータ7の停止位置等の情報を有している必要はなく、少なくともサーボモータ7を停止する必要の有無を判別可能な信号として入力されればよい。停止指令C1は、例えば、サーボモータ7を停止する必要の有無を、2値により示す信号であってもよい。
【0027】
また、上位コントローラ8は、停止指令C1によってサーボモータ7の緊急停止を指示することとは別に、位置指令によってサーボモータ7の停止を指示することができる。位置指令に応じてサーボモータ7が停止させられる場合は、位置指令には、例えば、搬送機10の停止位置を指定する情報が含まれている。サーボ制御部2は、位置指令により指定された停止位置で搬送機10が停止するように、サーボモータ7の動作を制御する。サーボモータ7を停止させるための位置指令は、例えば、搬送機10を待機させる際、搬送機10に搬送されている物品12を荷卸しする際、及び、搬送機10に物品12を荷積みする際に、上位コントローラ8から出力される。
【0028】
また、上位コントローラ8は、停止指令C1に対応してサーボ制御部2がサーボモータ7を停止させる制御に関わるパラメータを通信部21に出力する。詳細は後述する。
【0029】
(2)基本制御
以下では、まず、上位コントローラ8から通信部21に位置指令(位置指令値)が入力された場合のモータ駆動システム1の動作フローについて、
図2を参照して説明する。
【0030】
位置制御部23は、通信部21から取得した位置指令値(回転角)と、エンコーダ41で検出されたロータの回転角との差(位置偏差)に、所定のポジションゲインを乗じた値を、第1の速度指令値として生成する。第1の速度指令値は、サーボモータ7の回転速度を指定する指令値である。
【0031】
速度フィードフォワード部24は、通信部21から取得した位置指令値を微分して第2の速度指令値とし、この第2の速度指令値に所定の速度フィードフォワードゲインを乗じた値を、速度フィードフォワード指令値として出力する。
【0032】
速度演算部25は、エンコーダ41で検出されたロータの回転角を時間微分して、ロータの回転速度を演算する。
【0033】
速度制御部26は、位置制御部23から出力された第1の速度指令値と、速度フィードフォワード部24から出力された速度フィードフォワード指令値との和から、速度演算部25で演算されたロータの回転速度を引いた値に基づいて、トルク指令値を生成する。トルク指令値は、サーボモータ7の動作トルクを指定する指令値である。
【0034】
トルクフィードフォワード部27は、通信部21から取得した位置指令値に基づいて、トルクフィードフォワード指令値を生成する。
【0035】
トルク制御部28は、速度制御部26から出力されたトルク指令値と、トルクフィードフォワード部27から出力されたトルクフィードフォワード指令値との和から、トルク検出部42から取得したサーボモータ7の動作トルクの検出値を引いた値に基づいて、電流指令値を生成する。電流指令値は、サーボモータ7に供給される電流を指定する指令値である。
【0036】
電流制御部29は、例えば、インバータを含む。電流制御部29は、トルク制御部28から出力された電流指令値に応じた電流を、サーボモータ7に供給する。
【0037】
サーボモータ7は、電流制御部29から供給された電流により駆動され、駆動対象11を動作させる。
【0038】
この結果、サーボ制御部2は、サーボモータ7の位置が、上位コントローラ8から出力された位置指令値に対応した位置となるようにサーボモータ7のトルクを制御する。電流指令値によりサーボモータ7のトルクが制限(リミット)されているので、サーボ制御部2は、例えば、トルク制御部28から出力される電流指令値の大きさを調整することで、位置指令値に応じた制御を行うことができる。あるいは、サーボ制御部2は、位置制御部23において位置偏差に乗じられるポジションゲインの大きさを調整することで、位置指令値に応じた制御を行うことができる。
【0039】
基本制御で動作している際、制動制御部22は、上位コントローラ8からの停止指令C1の入力の有無を監視している。また、エラー検出部44は、例えば外部スケール43の検出結果等に基づいて特定の事象の発生を検出すると、サーボ制御部2の制動制御部22に停止指令C1を出力する。そして、制動制御部22が、上位コントローラ8及びエラー検出部44のうち少なくとも一方から停止指令C1が入力されたことを検知すると、サーボ制御部2は停止制御の動作へと移行する。
【0040】
(3)停止制御
次に、サーボ制御部2に停止指令C1が入力された場合のモータ駆動システム1の動作フローについて、
図1、
図3A、
図3B、
図4を参照して説明する。
【0041】
上位コントローラ8は、搬送機10を緊急停止する必要があると判断すると、サーボ制御部2の通信部21に停止指令C1を出力する。制動制御部22は、通信部21から停止指令C1を取得すると(ステップST1)、制動範囲を決定し(ステップST2)、サーボ制御部2に停止指令C1が入力されてからサーボモータ7が停止するまでの間のサーボモータ7の動作量を決定する(ステップST3)。ステップST2の詳細については、後述する。制動制御部22は、決定したサーボモータ7の動作量に応じた位置指令値を生成して出力する(ステップST4)。サーボ制御部2は、制動制御部22で生成された位置指令値に基づいてサーボモータ7を制御する。これにより、サーボ制御部2は、サーボモータ7の位置が、制動制御部22で生成された位置指令値に対応した位置となるようにサーボモータ7のトルクを制御し(ステップST5)、最終的にサーボモータ7を停止させる(
図3B参照)。この際にサーボ制御部2がサーボモータ7を制御するフローは、「(2)基本制御」における上位コントローラ8からの位置指令値が制動制御部22で生成された位置指令値に置き換わる以外は、「(2)基本制御」の内容と同じなので、説明を省略する。
【0042】
上位コントローラ8は、停止指令C1を出力した後も停止指令C1の出力を継続する。このとき、制動制御部22は、最初に取得した停止指令C1によって既にサーボ制御部2を停止制御へと移行している。そこで、制動制御部22は、サーボモータ7が停止するまでの間で、2回目以降に取得された停止指令C1を受付けない。なお、制動制御部22は、サーボモータ7が停止するまでの間で、2回目以降に取得された停止指令C1を受付けない構成に限られず、2回目以降に取得された停止指令C1も受付けても良い。この場合、制動制御部22は2回目以降も停止指令C1を取得する度に、都度サーボモータ7の動作量に応じた位置指令値を生成する。また、上位コントローラ8は、規定回数の停止指令C1を出力した後、停止指令C1の出力を停止する構成としてもよい。あるいは、上位コントローラ8は、通信部21からACK(停止指令C1を受付けた旨の応答信号)を受信した際に、停止指令C1の出力を停止する構成としてもよい。
【0043】
また、エラー検出部44は、特定の事象の発生を検出すると、サーボ制御部2の制動制御部22に停止指令C1を出力する。この場合も、制動制御部22は、位置指令値を生成し、サーボ制御部2は、制動制御部22で生成された位置指令値に基づいてサーボモータ7を停止させる。制動制御部22に停止指令C1が入力された後、サーボ制御部2は、上位コントローラ8から新たな位置指令の入力があっても、この位置指令に応じた基本制御の動作は行わない。このように、モータ駆動システム1がエラー検出部44を備えていることによって、上位コントローラ8からの停止指令C1によらずにモータ駆動システム1が単体でサーボモータ7を停止させることができる。
【0044】
エラー検出部44が停止指令C1を生成した後で、特定の事象が解消された場合であっても、サーボ制御部2は停止制御を継続する。すなわち、特定の事象が解消された場合であってもサーボモータ7の動作は停止する。この際に、エラー検出部44が生成した停止指令C1は、通信部21などを介して上位コントローラ8へと送信される。上位コントローラ8は、サーボ制御部2から停止指令C1を取得した場合、サーボ制御部2への位置指令の出力を停止する。そして、たとえば搬送機10を管理する管理者などが、搬送機10の安全の確認及び異常のないことの確認をした後に、管理者が上位コントローラ8などを操作して、サーボ制御部2への位置指令の出力を再開させる。これにより、搬送機10の動作が再開する。すなわち、サーボ制御部2は、上位コントローラ8から出力された新たな位置指令に基づいた基本制御の動作を再開する。
【0045】
上述の通り、特定の事象は、例えば、駆動対象11の進路に障害物が存在すること等である。この場合、障害物は、移動していても良いし、静止していてもよい。いずれにせよ、エラー検出部44は、外部スケール43によって障害物を検知された時点で、停止指令C1を出力する。たとえば駆動対象11の進路に障害物が存在しなくなった場合、エラー検出部44は、停止指令C1の生成を終了する。
【0046】
ところで、制動制御部22は、ある程度の幅を持たせてサーボモータ7の動作量を決定する。すなわち、制動制御部22は、所定の範囲である制動範囲を決定し(ステップST2)、最終的に、サーボ制御部2に停止指令C1が入力されてからサーボモータ7が停止するまでのサーボモータ7の動作量を、制動範囲内の値に決定する(ステップST3)。そして、サーボ制御部2は、サーボ制御部2に停止指令C1が入力されてからサーボモータ7が停止するまでの間のサーボモータ7の動作量が、制動制御部22で決定された制動範囲内となるようにサーボモータ7を停止させる制御を行う。
【0047】
制動制御部22は、サーボモータ7が駆動する駆動対象11の位置に関する情報を取得する。制動制御部22は、この情報に基づいて、制動範囲を決定する。駆動対象11の位置に関する情報は、例えば、駆動対象11の進路に存在する物体9(障害物等)の座標、駆動対象11の座標、駆動対象11の進路に存在する物体9と駆動対象11との間の距離L1、及び、駆動対象11の進路に侵入禁止エリアが存在するか否かなどの情報である。本実施形態では、制動制御部22は、駆動対象11の位置に関する情報として、駆動対象11の進路に存在する物体9と駆動対象11との間の距離L1を用いる。また、
図3A、
図3Bに示す例では、物体9は壁である。
図3Aでは、駆動対象11(搬送機10)の進行方向は紙面右である(
図3Aの矢印110参照)。制動制御部22は、外部スケール43で検出された距離L1を、外部スケール43から取得する。制動制御部22は、距離L1をリアルタイムで取得する。つまり、制動制御部22は、所定の時間間隔で外部スケール43から距離L1を取得する。
【0048】
このように、外部スケール43は、駆動対象11の位置に関する情報を検出するセンサとして用いられる。制動制御部22は、外部スケール43の出力に基づいて、制動範囲を決定する。本実施形態の外部スケール43は、停止指令C1が入力される前後において駆動対象11の位置に関する情報を検出する。しかし、外部スケール43は、停止指令C1が入力される前にのみ駆動対象11の位置に関する情報を検出してもよいし、停止指令C1が入力された後にのみ駆動対象11の位置に関する情報を検出してもよい。
【0049】
制動制御部22は、制動範囲を、駆動対象11が所定のエリアR2に侵入しない範囲に決定する。本実施形態では、所定のエリアR2は、駆動対象11の進路に存在する物体9から所定の距離以内のエリアである。要するに、モータ駆動システム1は、駆動対象11が物体9から所定の距離以上離れた位置で停止するようにサーボモータ7の動作を制御する。
【0050】
本実施形態では、説明の便宜上、制動制御部22が駆動対象11の停止エリアR1を決定するとして説明する。制動制御部22は、停止エリアR1に対応する制動範囲を決定する。そして、制動制御部22は、サーボモータ7が停止するまでの間のサーボモータ7の動作量を、制動範囲内の値に決定する。すなわち、制動制御部22は、駆動対象11のうち特定の位置(例えば、駆動対象11の進行方向における先端111)が停止エリアR1内にある状態でサーボモータ7を停止させるような位置指令値を生成し、サーボ制御部2は、この位置指令値に応じてサーボモータ7の動作を制御する。ただし、制動制御部22は、停止エリアR1を決定することなく制動範囲を決定してもよい。なお、以下の説明において、駆動対象11の座標とは、先端111の座標を指す。
【0051】
制動制御部22は、外部スケール43から取得した、物体9と駆動対象11との間の距離L1に基づいて、停止エリアR1を、停止指令C1が入力されたときの駆動対象11から見て所定のエリアR2よりも手前のエリアに決定する。本実施形態では、停止エリアR1のうち物体9側(
図3Aの紙面右側)の境界と、所定のエリアR2のうち物体9側とは反対側(
図3Aの紙面左側)の境界とは、重なっている。
【0052】
制動制御部22は、停止指令C1が入力された後のサーボモータ7の加速度の時間変化のパターンを決定する。つまり、上記パターンは、停止指令C1に含まれている情報により決定されるのではなく、制動制御部22により決定されるので、上位コントローラ8は、上記パターンを指示する信号を制動制御部22に与えなくてよい。上記パターンは、例えば、
図5に示すようにサーボモータ7の加速度を一定の加速度に保つというパターン、又は、
図6Bに示すようにサーボモータ7の加速度を連続的に変化させるというパターンである。制動制御部22は、決定した上記パターンに応じた位置指令値を生成する。ここでは、サーボモータ7の速度を増加させる向きの加速度を正の加速度とし、サーボモータ7の速度を減少させる向きの加速度を負の加速度とする。本実施形態では、停止指令C1が入力された後のサーボモータ7の加速度は常に0以下となるが、サーボモータ7の加速度が一時的に0を超えてもよい。
【0053】
図5に、サーボモータ7の速度及び加速度と、駆動対象11の進行方向に沿った座標軸における駆動対象11の座標と、時間との関係の一例を図示する。時点T1は、停止指令C1が入力された時点であり、時点T2は、サーボモータ7が停止した時点である。座標u1は、時点T1における駆動対象11の座標、座標u2は、時点T2における駆動対象11の座標である。座標u3は、物体9の座標である。座標r1は、停止エリアR1のうち物体9から遠い側の境界の座標、座標r2は、停止エリアR1のうち物体9に近い側の境界の座標である。移動距離L2は、停止指令C1が入力されてからサーボモータ7が停止するまでの間の駆動対象11の移動距離である。ここでは、時点T1よりも前の時点においては、サーボモータ7は一定速度で動いており、サーボモータ7の加速度は0とする。
【0054】
図1に示す制動制御部22は、サーボモータ7の動作量が制動範囲の上限を超過しない範囲で、停止指令C1が入力された後のサーボモータ7の加速度(減速度)の時間変化のパターンを決定する。ここで、制動範囲の上限とは、制動範囲のうち駆動対象11の移動量(サーボモータ7の動作量)が最も大きい場合に対応する値である。つまり、制動制御部22は、搬送機10が、停止エリアR1のうち物体9に近い側の境界の座標r2を超えて物体9に近づかないように、上記パターンを決定する。これにより、駆動対象11が物体9に衝突する可能性を低減できる。
【0055】
本実施形態では、制動制御部22は、停止指令C1が入力されてからサーボモータ7が停止するまでの間、サーボモータ7の加速度を一定に保つように、上記パターンを決定する。つまり、サーボモータ7は一定の減速度で減速される。ここで、制動制御部22は、サーボモータ7の減速度の大きさとして、駆動対象11が座標r2を超えて物体9に近づくまでにサーボモータ7が停止するような値を算出する。
【0056】
また、制動制御部22は、サーボモータ7の加速度の絶対値(減速度)が所定の値(下限値)を下回らない範囲で、上記パターンを決定する。したがって、サーボモータ7は、停止指令C1が入力された時点T1における駆動対象11と物体9との間の距離L1に関わらず、常に上記所定の値以上の減速度で減速される。
【0057】
上述の通り、制動制御部22は、制動範囲(停止エリアR1)を、駆動対象11が所定のエリアR2に侵入しない範囲に決定する。ここで、所定のエリアR2は、物体9の有無とは無関係に決定されたエリアでもよい。例えば、所定のエリアR2は、予め設定された進入禁止エリアであってもよい。進入禁止エリアの位置に関する情報は、例えば、モータ駆動システム1のメモリに予め記憶されていればよい。
【0058】
また、制動制御部22は、駆動対象11の進路に物体9及び進入禁止エリアが存在しない場合には、停止指令C1が入力された後のサーボモータ7の加速度の時間変化のパターンを、予め決められたパターンにする。予め決められたパターンは、例えば、加速度の絶対値(減速度)を上記所定の値(下限値)に保つというパターンであって、モータ駆動システム1のメモリに予め記憶されている。
【0059】
また、制動制御部22は、制動範囲を決定するためのパラメータの入力を受け付ける。パラメータは、例えば、停止エリアR1の大きさを決定するためのパラメータ、及び、所定のエリアR2の大きさ(すなわち、物体9から停止エリアR1までの間の距離)を決定するためのパラメータのうち少なくとも一方を含む。パラメータは、例えば、上位コントローラ8から通信部21を介して制動制御部22に入力される。なお、パラメータは、上位コントローラ8以外の装置、例えば、サーバ、パーソナルコンピュータ、携帯端末、タブレット端末、又は専用端末からモータ駆動システム1に入力されてもよい。また、モータ駆動システム1は、例えば、作業者の操作によりパラメータを入力するための入力インタフェースを備えていてもよい。
【0060】
以上説明した本実施形態によれば、駆動対象11の位置に関する情報に応じて制動範囲(停止エリアR1)が決定される。したがって、停止指令C1が入力されてからサーボモータ7が停止するまでの間のサーボモータ7の動作量が不必要に長く又は短くなる可能性を低減できる。
【0061】
ここで、本実施形態との比較例として、サーボ制御部2に停止指令C1が入力された場合に、駆動対象11の位置に依らず、予め決められた一定の減速度(負の加速度)でサーボモータ7を停止させるような例を想定する。例えば、停止指令C1が入力された際に駆動対象11から駆動対象11の進路にある物体9までの距離L1が10mであるとする。この場合に、上記比較例では、予め決められた一定の減速度(負の加速度)でサーボモータ7を減速して、例えば、距離L1が5mとなる位置で駆動対象11を停止させることになる。これに対して、本実施形態では、制動制御部22は、例えば、停止指令C1が入力された際に駆動対象11から駆動対象11の進路にある物体9までの距離L1が十分長いと判断して、上記比較例よりも小さい減速度でサーボモータ7を減速して、距離L1が2mとなる位置で駆動対象11を停止させることができる。本実施形態では、減速度を小さくすることにより、サーボモータ7に掛かる負担を低減できる。また、搬送機10の減速時に、搬送機10によって搬送される被搬送物(物品12)の位置が移動したり、搬送機10から落下したりすることなどの発生を抑制できることがある。
【0062】
また、例えば、停止指令C1が入力された際に駆動対象11から駆動対象11の進路にある物体9までの距離L1が4mであるとする。この場合に、上記比較例では、予め決められた一定の減速度(負の加速度)でサーボモータ7を減速するが、駆動対象11が停止するまでには5mを要するので、駆動対象11が物体9に衝突することになる。これに対して、本実施形態では、制動制御部22は、駆動対象11が物体9と衝突することを回避できるように、上記比較例よりも大きい減速度でサーボモータ7を減速して、例えば、距離L1が1mとなる位置で駆動対象11を停止させることができる。
【0063】
このように、本実施形態によれば、サーボモータ7を停止する制御の適正化を図ることができる。
【0064】
(変形例1)
以下、実施形態の変形例1について、
図6A、
図6Bを用いて説明する。実施形態と同様の構成については、同一の符号を付して説明を省略する。
【0065】
本変形例1において、制動制御部22は、サーボモータ7の加速度が連続的に変化するように、停止指令C1が入力された後のサーボモータ7の加速度の時間変化のパターンを決定する機能を有する。より詳細には、制動制御部22は、次のように上記パターンを決定する。
図6Aに示すように、停止指令C1が入力されてからサーボモータ7を一定の加速度で駆動し続けて、制動範囲の上限でサーボモータ7を停止させたと仮定する。制動制御部22は、この仮定において、上記一定の加速度(負の値)の絶対値が閾値Th1を下回る場合に、
図6Bに示すように、サーボモータ7の加速度が連続的に変化するように、上記パターンを決定する。一方で、制動制御部22は、上記一定の加速度の絶対値が閾値Th1を上回る場合及び閾値Th1と一致する場合に、
図6Aに示すように、サーボモータ7の加速度を上記一定の加速度に保つように、上記パターンを決定する。つまり、この場合は、サーボモータ7は上記一定の加速度で減速される。
【0066】
図6Aは、停止指令C1が入力された時点T1からサーボモータ7を一定の加速度で駆動し続ける場合のサーボモータ7の加速度及び速度の時間変化を表す。時点T2においてサーボモータ7は停止し、このとき、停止指令C1が入力されてからのサーボモータ7の移動量は、制動範囲の上限に達しているとする。つまり、サーボモータ7の停止時の駆動対象11の座標は、停止エリアR1のうち物体9に近い側の境界の座標r2(
図5参照)に一致する。
【0067】
制動制御部22は、停止指令C1が入力されると、上記一定の加速度の絶対値が閾値Th1を下回るか否かを演算により求める。閾値Th1は、例えば、モータ駆動システム1のメモリに予め記憶されていればよい。制動制御部22は、上記一定の加速度の絶対値が閾値Th1を上回る場合及び閾値Th1と一致する場合は、サーボモータ7の加速度を上記一定の加速度に保つように、上記パターンを決定し、このパターンに応じた位置指令値を生成する。そのため、サーボ制御部2は、
図6Aに示すような速度及び加速度でサーボモータ7を停止させるように、サーボモータ7を制御する。
【0068】
一方、制動制御部22は、上記一定の加速度の絶対値が閾値Th1を下回る場合は、サーボモータ7の加速度の時間変化のパターンを、
図6Bに示すようなパターンに決定する。
図6Bでは、サーボモータ7の加速度が連続的に変化している。より詳細には、サーボモータ7の加速度の絶対値は、時点T1から徐々に増加し、その後徐々に減少して、時点T2で0となる。これにより、時点T1から時点T2にかけて、サーボモータ7の加速度は、
図6Bにおいて円弧を描くように増減する。加速度のこのような時間変化により、サーボモータ7の速度の時間変化は、
図6BにおいてS字状となる。
【0069】
このようにサーボモータ7の加速度が連続的に変化することで、サーボモータ7に掛かる負担を低減できることがある。また、加速度が連続的に変化することで、搬送機10から、搬送機10が搬送している物品12が脱落する可能性を低減できることがある。
【0070】
図6Bにおいて、制動制御部22は、停止指令C1が入力された時点T1からサーボモータ7が停止する時点T2までのサーボモータ7の移動量が制動範囲内となるような位置指令値を生成する。これにより、駆動対象11が物体9に衝突することを抑制しつつ、サーボモータ7の加速度を連続的に変化させる制御を実現できる。実際には、制動制御部22は、時点T1から時点T2までのサーボモータ7の移動量が制動範囲の上限となるような位置指令値を生成する。つまり、サーボモータ7の停止時の駆動対象11の座標は、停止エリアR1のうち物体9に近い側の境界の座標r2(
図5参照)に一致する。
【0071】
なお、
図6Aにおいてサーボモータ7が停止する時点T2と、
図6Bにおいてサーボモータ7が停止する時点T2とは、一致していてもよいし、一致していなくてもよい。
【0072】
また、制動制御部22は、閾値Th1を用いた判定を行うことなく常に、
図6Bのようにサーボモータ7の加速度が連続的に変化するように、上記パターンを決定してもよい。あるいは、ユーザの操作により、サーボモータ7の加速度の時間変化のパターンを、
図6Bのようなパターンと、
図6Aのようなパターンとの間で切替え可能であってもよい。
【0073】
(その他の変形例)
以下、実施形態のその他の変形例を列挙する。以下の変形例は、適宜組み合わせて実現されてもよい。
【0074】
モータ駆動システム1と同様の機能は、モータ駆動方法、(コンピュータ)プログラム、又はプログラムを記録した非一時的記録媒体等で具現化されてもよい。
【0075】
一態様に係るモータ駆動方法は、停止ステップと、決定ステップと、を備える。停止ステップは、サーボモータ7を停止させるための停止指令C1が入力されてからサーボモータ7が停止するまでの間のサーボモータ7の動作量が、所定の範囲である制動範囲内となるようにサーボモータ7を停止させる制御を行う。決定ステップは、サーボモータ7が駆動する駆動対象11の位置に関する情報に基づいて制動範囲を決定する。
【0076】
一態様に係るプログラムは、上記のモータ駆動方法を1以上のプロセッサに実行させるためのプログラムである。
【0077】
本開示におけるモータ駆動システム1は、コンピュータシステムを含んでいる。コンピュータシステムは、ハードウェアとしてのプロセッサ及びメモリを主構成とする。コンピュータシステムのメモリに記録されたプログラムをプロセッサが実行することによって、本開示におけるモータ駆動システム1としての機能が実現される。プログラムは、コンピュータシステムのメモリに予め記録されてもよく、電気通信回線を通じて提供されてもよく、コンピュータシステムで読み取り可能なメモリカード、光学ディスク、ハードディスクドライブ等の非一時的記録媒体に記録されて提供されてもよい。コンピュータシステムのプロセッサは、半導体集積回路(IC)又は大規模集積回路(LSI)を含む1ないし複数の電子回路で構成される。ここでいうIC又はLSI等の集積回路は、集積の度合いによって呼び方が異なっており、システムLSI、VLSI(Very Large Scale Integration)、又はULSI(Ultra Large Scale Integration)と呼ばれる集積回路を含む。さらに、LSIの製造後にプログラムされる、FPGA(Field-Programmable Gate Array)、又はLSI内部の接合関係の再構成若しくはLSI内部の回路区画の再構成が可能な論理デバイスについても、プロセッサとして採用することができる。複数の電子回路は、1つのチップに集約されていてもよいし、複数のチップに分散して設けられていてもよい。複数のチップは、1つの装置に集約されていてもよいし、複数の装置に分散して設けられていてもよい。ここでいうコンピュータシステムは、1以上のプロセッサ及び1以上のメモリを有するマイクロコントローラを含む。したがって、マイクロコントローラについても、半導体集積回路又は大規模集積回路を含む1ないし複数の電子回路で構成される。
【0078】
また、モータ駆動システム1における複数の機能が、1つの筐体内に集約されていることはモータ駆動システム1に必須の構成ではなく、モータ駆動システム1の構成要素は、複数の筐体に分散して設けられていてもよい。さらに、モータ駆動システム1の少なくとも一部の機能がクラウド(クラウドコンピューティング)等によって実現されてもよい。
【0079】
反対に、実施形態において、複数の装置に分散されているモータ駆動システム1の少なくとも一部の機能が、1つの筐体内に集約されていてもよい。
【0080】
サーボモータ7は、回転モータに限定されず、リニアモータであってもよい。
【0081】
駆動対象11は、搬送機に限定されない。駆動対象11は、例えば、自動車等の車両、船、航空機、フォークリフト、又は、移動ロボット等の移動体であってもよい。あるいは、駆動対象11は、移動体以外に、例えば、糸若しくは紙等を巻き取る電動式の巻き取り機、電動ドリル、電動ドライバ、旋盤、又は、電動ポンプのように、駆動対象11の少なくとも一部が回転運動又は往復運動する装置であってもよい。なお、制動制御部22は駆動対象11の位置に関する情報に基づいて制動範囲を決定するが、ここで、駆動対象11が電動式の巻き取り機の場合は、駆動対象11の位置とは、例えば、駆動対象11の回転位置に相当する。回転位置に関する情報は、0~360度の回転角だけではなく、ある時点からの総回転回数を含んでいてもよい。
【0082】
また、制動制御部22は、サーボモータ7の移動量が制動範囲を超えない範囲内では、サーボモータ7の加速度の絶対値が所定値を超えないように、サーボモータ7の加速度の時間変化のパターンを決定してもよい。
【0083】
(まとめ)
以上説明した実施形態等から、以下の態様が開示されている。
【0084】
第1の態様に係るモータ駆動システム1は、サーボモータ7の動作を制御するサーボ制御部2を備える。サーボ制御部2は、サーボモータ7を停止させるための停止指令C1が入力されてからサーボモータ7が停止するまでの間のサーボモータ7の動作量が、所定の範囲である制動範囲内となるようにサーボモータ7を停止させる制御を行う。サーボ制御部2は、制動制御部22を有する。制動制御部22は、サーボモータ7が駆動する駆動対象11の位置に関する情報に基づいて制動範囲を決定する。
【0085】
上記の構成によれば、駆動対象11の位置に関する情報に応じて制動範囲が決定されるので、停止指令C1が入力されてからサーボモータ7が停止するまでの間のサーボモータ7の動作量が不必要に長く又は短くなる可能性を低減できる。
【0086】
また、第2の態様に係るモータ駆動システム1では、第1の態様において、制動制御部22は、制動範囲を決定するためのパラメータの入力を受け付ける。
【0087】
上記の構成によれば、制動制御部22にパラメータを入力することにより、制動範囲を調整できる。
【0088】
また、第3の態様に係るモータ駆動システム1では、第1又は2の態様において、制動制御部22は、センサ(外部スケール43)の出力に基づいて、制動範囲を決定する。センサは、停止指令C1が入力された後に駆動対象11の位置に関する情報を検出する。
【0089】
上記の構成によれば、センサ(外部スケール43)を用いることで、駆動対象11の位置に関するより詳細な情報を得られる。
【0090】
また、第4の態様に係るモータ駆動システム1では、第1~3の態様のいずれか1つにおいて、サーボモータ7は、駆動対象11を移動させる。制動制御部22は、制動範囲を、駆動対象11が所定のエリアR2に侵入しない範囲に決定する。
【0091】
上記の構成によれば、駆動対象11が所定のエリアR2に侵入する可能性を低減できる。
【0092】
また、第5の態様に係るモータ駆動システム1では、第1~4の態様のいずれか1つにおいて、制動制御部22は、停止指令C1が入力された後のサーボモータ7の加速度の時間変化のパターンを決定する。
【0093】
上記の構成によれば、サーボモータ7の加速度の時間変化のパターンを指示する信号を制動制御部22に与えなくてよいので、制動制御部22の制御に要する処理を減らせる。
【0094】
また、第6の態様に係るモータ駆動システム1では、第5の態様において、制動制御部22は、サーボモータ7の動作量が制動範囲の上限を超過しない範囲で、停止指令C1が入力された後のサーボモータ7の加速度の時間変化のパターンを決定する。
【0095】
上記の構成によれば、サーボモータ7が制動範囲の上限を超えて動作する可能性を低減できる。
【0096】
また、第7の態様に係るモータ駆動システム1では、第5又は6の態様において、制動制御部22は、サーボモータ7の加速度の絶対値が所定の加速度を下回らない範囲で、停止指令C1が入力された後のサーボモータ7の加速度の時間変化のパターンを決定する。
【0097】
上記の構成によれば、サーボモータ7の加速度の絶対値が所定の加速度を下回る場合と比較して、サーボモータ7を早く停止させることができる。
【0098】
また、第8の態様に係るモータ駆動システム1では、第5~7の態様のいずれか1つにおいて、制動制御部22は、サーボモータ7の加速度が連続的に変化するように、停止指令C1が入力された後のサーボモータ7の加速度の時間変化のパターンを決定する機能を有する。
【0099】
上記の構成によれば、サーボモータ7の加速度が非連続的に変化する場合と比較して、サーボモータ7に掛かる負担を低減できる。
【0100】
また、第9の態様に係るモータ駆動システム1では、第1~8の態様のいずれか1つにおいて、サーボ制御部2は、通信部21を有する。通信部21は、上位コントローラ8と通信する。上位コントローラ8は、停止指令C1を含む指令をサーボ制御部2に出力する。
【0101】
上記の構成によれば、上位コントローラ8によりサーボ制御部2を制御できる。
【0102】
また、第10の態様に係るモータ駆動システム1は、第1~9の態様のいずれか1つにおいて、エラー検出部44を更に備える。エラー検出部44は、特定の事象の発生を検出するとサーボ制御部2に停止指令C1を出力する。
【0103】
上記の構成によれば、特定の事象が発生した場合にサーボモータ7を停止させることができる。また、上位コントローラ8からの停止指令C1の入力を待つことなく、モータ駆動システム1内でサーボモータ7を停止する判断ができるので、素早く停止動作を行うことができる。
【0104】
また、第11の態様に係るモータ駆動システム1は、第1~10の態様のいずれか1つにおいて、サーボモータ7を更に備える。
【0105】
上記の構成によれば、サーボモータ7を一体に備えたモータ駆動システム1を提供できる。
【0106】
第1の態様以外の構成については、モータ駆動システム1に必須の構成ではなく、適宜省略可能である。
【0107】
また、第12の態様に係るモータ駆動方法は、停止ステップと、決定ステップと、を備える。停止ステップは、サーボモータ7を停止させるための停止指令C1が入力されてからサーボモータ7が停止するまでの間のサーボモータ7の動作量が、所定の範囲である制動範囲内となるようにサーボモータ7を停止させる制御を行う。決定ステップは、サーボモータ7が駆動する駆動対象11の位置に関する情報に基づいて制動範囲を決定する。
【0108】
上記の構成によれば、駆動対象11の位置に関する情報に応じて制動範囲が決定されるので、停止指令C1が入力されてからサーボモータ7が停止するまでの間のサーボモータ7の動作量が不必要に長く又は短くなる可能性を低減できる。
【0109】
また、第13の態様に係るプログラムは、第12の態様に係るモータ駆動方法を、1以上のプロセッサに実行させる。
【0110】
上記の構成によれば、駆動対象11の位置に関する情報に応じて制動範囲が決定されるので、停止指令C1が入力されてからサーボモータ7が停止するまでの間のサーボモータ7の動作量が不必要に長く又は短くなる可能性を低減できる。
【0111】
上記態様に限らず、実施形態に係るモータ駆動システム1の種々の構成(変形例を含む)は、モータ駆動方法及びプログラムにて具現化可能である。
【符号の説明】
【0112】
1 モータ駆動システム
11 駆動対象
2 サーボ制御部
21 通信部
22 制動制御部
43外部スケール(センサ)
44 エラー検出部
7 サーボモータ
8 上位コントローラ
C1 停止指令
R2 所定のエリア
Th1 閾値