(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-15
(45)【発行日】2023-11-24
(54)【発明の名称】サーボモータ制御装置
(51)【国際特許分類】
H02P 29/40 20160101AFI20231116BHJP
【FI】
H02P29/40
(21)【出願番号】P 2019110203
(22)【出願日】2019-06-13
【審査請求日】2022-03-28
(73)【特許権者】
【識別番号】502129933
【氏名又は名称】株式会社日立産機システム
(74)【代理人】
【識別番号】110002066
【氏名又は名称】弁理士法人筒井国際特許事務所
(72)【発明者】
【氏名】松本 豊
(72)【発明者】
【氏名】梁田 哲男
(72)【発明者】
【氏名】杉浦 正樹
(72)【発明者】
【氏名】上井 雄介
【審査官】尾家 英樹
(56)【参考文献】
【文献】特開2008-148449(JP,A)
【文献】特開昭62-242209(JP,A)
【文献】特開2007-286727(JP,A)
【文献】特開2002-223591(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H02P 29/40
(57)【特許請求の範囲】
【請求項1】
上位装置から入力される入力指令値に基づきサーボモータの制御を行うサーボモータ制御装置であって、
前記入力指令値と指令リミット値とを比較して比較後指令値を生成し、前記比較後指令値に基づき電流指令値及び電圧指令値を生成する制御処理部と、
前記電流指令値及び前記電圧指令値に基づき前記サーボモータに電力を供給する電力変換器と、
を備え、
前記入力指令値は速度指令値であり、
前記制御処理部は、
前記速度指令値と前記指令リミット値である速度指令リミット値とを比較して前記比較後指令値である比較後速度指令値を生成し、
前記比較後速度指令値に基づきトルク指令値を生成し、前記トルク指令値とトルク指令リミット値を比較して比較後トルク指令値を生成し、前記比較後トルク指令値に基づいて前記電流指令値及び前記電圧指令値を生成するものであり、
当該制御処理部は、
前記速度指令値が前記速度指令リミット値の範囲内である場合には、前記速度指令値を前記比較後速度指令値とし、前記速度指令値が前記速度指令リミット値の範囲外である場合には、前記速度指令リミット値を前記比較後速度指令値とし、
前記トルク指令値が前記トルク指令リミット値の範囲内である場合には、前記トルク指令値を前記比較後トルク指令値とし、前記トルク指令値が前記トルク指令リミット値の範囲外である場合には、前記トルク指令リミット値を前記比較後トルク指令値と
し、
且つ前記制御処理部は、センサにより検出される前記サーボモータを有するアプリケーションのセンサ情報を用いて前記速度指令リミット値及び前記トルク指令リミット値を切り換え、
前記センサは、前記アプリケーションの動作を検出し、検出した前記アプリケーションの動作に応じて複数のセンサ入力の状態を切り換え、
前記制御処理部は、前記センサにより切り換えられる前記複数のセンサ入力の入力パターンに基づき前記アプリケーションの運転パターンにおける期間を特定し、特定した期間に応じて、比較対象となる前記速度指令リミット値、及び前記トルク指令リミット値を切り換える、
サーボモータ制御装置。
【請求項2】
請求項1に記載のサーボモータ制御装置において、
前記制御処理部は、
前記速度指令値及び前記トルク指令値の少なくともいずれかが異常な値であると判定した場合、異常通知を前記上位装置へ出力する、
サーボモータ制御装置。
【請求項3】
上位装置から入力される入力指令値に基づきサーボモータの制御を行うサーボモータ制御装置であって、
前記入力指令値と指令リミット値とを比較して比較後指令値を生成し、前記比較後指令値に基づき電流指令値及び電圧指令値を生成する制御処理部と、
前記電流指令値及び前記電圧指令値に基づき前記サーボモータに電力を供給する電力変換器と、
を備え、
前記入力指令値は位置指令値であり、
前記制御処理部は、
前記位置指令値と前記指令リミット値である位置指令リミット値とを比較して前記比較後指令値である比較後位置指令値を生成し、
前記比較後位置指令値に基づき速度指令値を生成し、前記速度指令値と速度指令リミット値とを比較して比較後速度指令値を生成し、前記比較後速度指令値に基づきトルク指令値を生成し、前記トルク指令値とトルク指令リミット値を比較して比較後トルク指令値を生成し、前記比較後トルク指令値に基づいて前記電流指令値及び前記電圧指令値を生成するものであり、
当該制御処理部は、
前記位置指令値が前記位置指令リミット値の範囲内である場合には、前記位置指令値を前記比較後位置指令値とし、前記位置指令値が前記位置指令リミット値の範囲外である場合には、前記位置指令リミット値を前記比較後位置指令値とし、
前記速度指令値が前記速度指令リミット値の範囲内である場合には、前記速度指令値を前記比較後速度指令値とし、前記速度指令値が前記速度指令リミット値の範囲外である場合には、前記速度指令リミット値を前記比較後速度指令値とし、
前記トルク指令値が前記トルク指令リミット値の範囲内である場合には、前記トルク指令値を前記比較後トルク指令値とし、前記トルク指令値が前記トルク指令リミット値の範囲外である場合には、前記トルク指令リミット値を前記比較後トルク指令値と
し、
且つ前記制御処理部は、センサにより検出される前記サーボモータを有するアプリケーションのセンサ情報を用いて前記位置指令リミット値、前記速度指令リミット値及び前記トルク指令リミット値を切り換え、
前記センサは、前記アプリケーションの動作を検出し、検出した前記アプリケーションの動作に応じて複数のセンサ入力の状態を切り換え、
前記制御処理部は、前記センサにより切り換えられる前記複数のセンサ入力の入力パターンに基づき前記アプリケーションの運転パターンにおける期間を特定し、特定した期間に応じて、比較対象となる前記位置指令リミット値、前記速度指令リミット値、及び前記トルク指令リミット値を切り換える、
サーボモータ制御装置。
【請求項4】
請求項
3に記載のサーボモータ制御装置において、
前記制御処理部は、前記位置指令値、前記速度指令値及び前記トルク指令値の少なくともいずれかが異常な値であると判定した場合、異常通知を前記上位装置へ出力する、
サーボモータ制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、サーボモータ制御装置に関する。
【背景技術】
【0002】
特許文献1には、上位装置からの指令値が正しくない場合、指令値を書き換えるモータの制御装置が開示されている。特許文献1によれば、モータの端子電圧の抑制は、インバータの最大出力電圧が永久磁石式同期モータの端子電圧を超えないようにd軸に負の電流を流すことによって行われる。
【0003】
具体的には、インバータに入力される電圧指令値とインバータの最大出力電圧をもとに設定された端子電圧上限値とが比較され、電圧指令値が端子電圧上限値を超えた場合にd軸電流成分は負の方向に増大する方向に切替えられ、電圧指令値が端子電圧上限値以下の場合にはd軸電流成分を負の方向に減少させる方向に切替えられる。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
通常、サーボモータ制御装置は上位装置からの指令に基づいてサーボモータの制御を行う。しかし、上位装置との通信エラーや上位装置内におけるバグの発生等により、通常ではありえない異常な指令値がサーボモータ制御装置に入力される場合がある。このような場合に、入力された指令値が正しい値かどうか、入力値に従った動作をすべきか否かをサーボモータ制御装置側では判断することができない。
【0006】
特許文献1においても、上位装置からの指令値は正しいものとして、インバータ内部で生成された電圧指令値とインバータを保護するための最大出力電圧との比較が行われる。特許文献1では、何らかの原因により上位装置から入力された指令値が誤っていた場合でも、インバータを保護するような電流・電圧指令値が生成されるが、モータが搭載の先のアプリケーション(プレス装置等)に誤動作を生じさせてしまうおそれがある。誤動作によってはモータが搭載されている装置の破損、装置で用いられる部材(金型等)の破損が発生するおそれがある。
【0007】
そこで、本発明は、サーボモータを有するアプリケーションにおける誤動作の発生を低減させるサーボモータ制御装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、以下のとおりである。
【0009】
本発明の代表的な実施の形態によるサーボモータ制御装置は、上位装置から入力される入力指令値に基づきサーボモータの制御を行う。サーボモータ制御装置は、入力指令値と指令リミット値とを比較して比較後指令値を生成し、比較後指令値に基づき電流指令値及び電圧指令値を生成する制御処理部と、電流指令値及び電圧指令値に基づきサーボモータに電力を供給する電力変換器と、を備えている。入力指令値は速度指令値である。制御処理部は、速度指令値と指令リミット値である速度指令リミット値とを比較して比較後指令値である比較後速度指令値を生成し、比較後速度指令値に基づきトルク指令値を生成し、トルク指令値とトルク指令リミット値を比較して比較後トルク指令値を生成し、比較後トルク指令値に基づいて電流指令値及び電圧指令値を生成するものである。制御処理部は、速度指令値が速度指令リミット値の範囲内である場合には、速度指令値を比較後速度指令値とし、速度指令値が速度指令リミット値の範囲外である場合には、速度指令リミット値を比較後速度指令値とし、トルク指令値がトルク指令リミット値の範囲内である場合には、トルク指令値を比較後トルク指令値とし、トルク指令値がトルク指令リミット値の範囲外である場合には、トルク指令リミット値を比較後トルク指令値とする。制御処理部は、センサにより検出されるサーボモータを有するアプリケーションのセンサ情報を用いて速度指令リミット値及びトルク指令リミット値を切り換える。センサは、アプリケーションの動作を検出し、検出したアプリケーションの動作に応じて複数のセンサ入力の状態を切り換える。そして、制御処理部は、センサにより切り換えられる複数のセンサ入力の入力パターンに基づきアプリケーションの運転パターンにおける期間を特定し、特定した期間に応じて、比較対象となる前記速度指令リミット値、及び前記トルク指令リミット値を切り換える。
【発明の効果】
【0010】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。
【0011】
すなわち、本発明の代表的な実施の形態によれば、サーボモータを有するアプリケーションにおける誤動作の発生を低減させることが可能となる。
【図面の簡単な説明】
【0012】
【
図1】本発明の実施の形態1に係るサーボモータ制御装置の構成の一例を示すブロック図である。
【
図2】本発明の実施の形態1に係る制御処理部の構成の一例を示すブロック図である。
【
図3】本発明の実施の形態1に係るサーボモータの制御方法の一例を示す図である。
【
図4】
図3に対応するリミット値テーブルの一例を示す図である。
【
図5】本発明の実施の形態2に係る制御処理部の構成の一例を示すブロック図である。
【
図6】本発明の実施の形態2に係るサーボモータの制御方法の一例を示す図である。
【
図7】
図6に対応するリミット値テーブルの一例を示す図である。
【発明を実施するための形態】
【0013】
以下、本発明の実施の形態を、図面を参照しつつ説明する。以下で説明する各実施の形態は、本発明を実現するための一例であり、本発明の技術範囲を限定するものではない。なお、実施例において、同一の機能を有する部材には同一の符号を付し、その繰り返しの説明は、特に必要な場合を除き省略する。
【0014】
(実施の形態1)
<サーボモータ制御装置の構成>
図1は、本発明の実施の形態1に係るサーボモータ制御装置の構成の一例を示すブロック図である。
図1に示すように、サーボモータ制御装置1は、指令値入力回路10、制御処理部20、電力変換機30、ゲートドライバ70を備えている。
【0015】
《指令値入力回路》
指令値入力回路10には、上位装置100から入力指令値が入力される。入力指令値は、サーボモータMを制御するためのパラメータである。指令値入力回路10には、サーボモータMを有するアプリケーションの運転パターンに対応する入力指令値が順次入力される。本実施の形態では、入力指令値として速度指令値が入力される。速度指令値は、サーボモータMの回転速度に関するパラメータであり、回転軸の角速度等で表される。
【0016】
入力指令値は、例えばアナログ電圧等のアナログ信号として指令値入力回路10に入力される。入力されたアナログ信号は、AD変換回路11によりデジタル信号に変換され、制御処理部20へ出力される。
【0017】
また、指令値入力回路10は、例えばRT-485やEthernet(登録商標)等のネットワーク等を介して、上位装置100と接続されてもよい。この場合、指令値入力回路10と上位装置100との間では、デジタル信号の送受信が行われる。
【0018】
《制御処理部》
図2は、本発明の実施の形態1に係る制御処理部の構成の一例を示すブロック図である。なお、
図2では、上位装置100と制御処理部20と指令値入力回路10は省略されている。
【0019】
制御処理部20は、上位装置100から入力された入力指令値に基づき、サーボモータMを制御するための電流指令値及び電圧指令値を生成する機能ブロックである。制御処理部20は、
図2に示すように、速度指令値判定処理部23、速度制御処理部24、トルク指令値判定処理部25、トルク制御処理部26、リミット値テーブル29を備えている。
【0020】
制御処理部20は、プロセッサやメモリ等を有する。メモリには、サーボモータ制御装置1を動作させるプログラムやアプリケーションの運転パターン等が格納されている。メモリから読み出したプログラムをプロセッサが実行することにより、制御処理部20に含まれる各機能ブロックが実現される。また、制御処理部20は、前述した各機能ブロックを実現するASIC(application specific integrated circuit)やFPGA(field-programmable gate array)等で構成されてもよい。
【0021】
速度指令値判定処理部23は、入力された速度指令値が正常な値であるかどうかの判定を行う機能ブロックである。具体的に述べると、速度指令値判定処理部23は、入力された速度指令値とリミット値テーブル29に格納された速度指令リミット値とを比較する。速度指令値判定処理部23は、運転パターンに応じて各期間における比較対象となる速度指令リミット値を切り換える。
【0022】
速度指令値判定処理部23は、速度指令値が比較対象として選択した速度指令リミット値の範囲内である場合、正常な値であると判断し、速度指令値を比較後速度指令値として速度制御処理部24へ出力する。
【0023】
これに対し、速度指令値判定処理部23は、速度指令値が選択した速度指令リミット値の範囲外である場合、速度指令値は異常な値であると判断し、速度指令リミット値を比較後速度指令値として速度制御処理部24へ出力する。その際、速度指令値判定処理部23は、入力された速度指令値が異常な値であることを示す異常通知を上位装置100へ出力する。異常通知には、運転パターンにおける異常発生期間を特定する情報が含まれてもよい。
【0024】
速度指令値判定処理部23には、位置検出器ENで検出されるサーボモータMの位置情報が入力される。速度指令値判定処理部23は、サーボモータMの位置情報に基づき速度指令リミット値を切り換えることが可能である。
【0025】
また、速度指令値判定処理部23には、センサASにより検出されるアプリケーションのセンサ情報が入力される。速度指令値判定処理部23は、センサ情報を用いて速度指令リミット値を切り換えることが可能である。センサ情報には、例えばサーボモータMにより駆動されるアプリケーション内の部材の位置情報等が含まれる。部材としては、例えばプレス機に搭載されるスライド及びスライドに取り付けられた金型等が挙げられる。センサASが検出する部材の位置情報により、運転パターンにおける各期間を特定することが可能である。
【0026】
速度制御処理部24は、比較後速度指令値に基づきトルク指令値を生成する機能ブロックである。具体的に述べると、速度制御処理部24は、速度指令値判定処理部23から入力された比較後速度指令値に対応するトルクを算出する。具体的に述べると、速度制御処理部24は、サーボモータMの回転速度が比較後速度指令値(速度指令値又は速度指令リミット値)で規定される速度となるよう、モータ回転軸に掛けるトルクを算出する。速度制御処理部24は、算出したトルクをトルク指令値としてトルク指令値判定処理部25へ出力する。
【0027】
速度制御処理部24には、速度指令値判定処理部23から、運転パターンの各期間に対応する比較後速度指令値が順次入力される。そして、速度制御処理部24は、入力される比較後速度指令値に基づき、対応するトルク指令値をトルク指令値判定処理部25へ順次出力する。
【0028】
トルク指令値判定処理部25は、入力されたトルク指令値が正常な値であるかどうかの判定を行う機能ブロックである。具体的に述べると、トルク指令値判定処理部25は、入力されたトルク指令値とリミット値テーブル29に格納されたトルク指令リミット値とを比較する。トルク指令値判定処理部25は、運転パターンに応じて比較対象となるトルク指令リミット値を切り換える。
【0029】
トルク指令値判定処理部25は、トルク指令値が比較対象として選択したトルク指令上限値の範囲内である場合、正常な値であると判断し、トルク指令値を比較後トルク指令値としてトルク制御処理部26へ出力する。
【0030】
これに対し、トルク指令値判定処理部25は、トルク指令値が比較対象として選択したトルク指令リミット値の範囲外である場合、トルク指令値は異常な値であると判断し、トルク指令リミット値を比較後トルク指令値としてトルク制御処理部26へ出力する。その際、トルク指令値判定処理部25は、入力されたトルク指令値が異常な値であることを示す異常通知を上位装置100へ出力する。トルク指令値判定処理部25から出力される異常通知にも、運転パターンにおける異常発生期間を特定する情報が含まれてもよい。
【0031】
トルク指令値判定処理部25にも、位置検出器ENで検出されるサーボモータMの位置情報が入力される。トルク指令値判定処理部25は、サーボモータMの位置情報に基づきトルク指令リミット値を切り換えることが可能である。
【0032】
また、トルク指令値判定処理部25にも、センサASにより検出されるアプリケーションのセンサ情報が入力される。トルク指令値判定処理部25も、センサ情報を用いてトルク指令リミット値を切り換えることが可能である。
【0033】
トルク制御処理部26は、比較後トルク指令値に基づき電流指令値及び電圧指令値を生成する機能ブロックである。具体的に述べると、トルク制御処理部26は、サーボモータMの回転軸に掛かるトルクが比較後トルク指令値(トルク指令値又はトルク指令リミット値)で規定されるトルクとなるよう、サーボモータMに供給する電流及び電圧を算出する。トルク制御処理部26は、算出した電流及び電圧を電流指令値及び電圧指令値としてゲートドライバ70へ出力する。
【0034】
トルク制御処理部26には、トルク指令値判定処理部25から、運転パターンの各期間に対応する比較後トルク指令値が順次入力される。そして、トルク制御処理部26は、入力される比較後トルク指令値に基づき、対応する電流指令値及び電圧指令値をゲートドライバ70へ順次出力する。
【0035】
リミット値テーブル29は、速度指令リミット値やトルク指令リミット値等、サーボモータMの制御に関わる各種パラメータを格納するテーブルである。速度指令リミット値やトルク指令リミット値は、サーボモータMを有するアプリケーションにおける誤動作の発生が抑えられるよう、運転パターンに応じて設定される。
【0036】
《電力変換機》
電力変換機30は、
図1に示すように、コンバータ40、平滑回路50、インバータ60、ゲートドライバ70を有する。コンバータ40は、外部電源110から供給される交流電源を直流電源に変換する回路である。コンバータ40には周知の回路が用いられる。コンバータ40は、例えば半波整流回路や全波整流回路等で構成される。平滑回路50は、コンバータ40で生成された直流電源を平滑にする回路である。平滑回路50には、例えばコンデンサやコイルを備えた周知の回路が用いられる。
【0037】
インバータ60は、平滑回路50で平滑にされた直流電源を3相の交流電源に変換する回路である。インバータ60には、交流電源の3相のそれぞれに対応するパルス変調回路が設けられている。パルス変調回路は、例えばパルス幅変調(PAM:Pulse Amplitude Modulation)回路やパルス振幅変調(PWM:Pulse Width Modulation)回路で構成されている。各相のパルス変調回路は、後述するゲートドライバ70から入力される制御信号により制御される。これにより、インバータ60は、電流指令値及び電圧指令値に基づく電力をサーボモータMへ供給する。
【0038】
ゲートドライバ70は、トルク制御処理部26から出力された電流指令値及び電圧指令値に基づく制御信号を生成する回路ブロックである。具体的に述べると、電流指令値及び電圧指令値が入力されると、ゲートドライバ70は、パルス変調回路を制御する各相の制御信号を生成し、インバータ60へ出力する。
【0039】
ゲートドライバ70には、トルク制御処理部26から、運転パターンの各期間に対応する電流指令値及び電圧指令値が順次入力される。そして、ゲートドライバ70は、入力される電流指令値及び電圧指令値に基づき、対応する各相の制御信号をインバータ60へ順次出力する。なお、ゲートドライバ70は、電力変換機30の外側に設けられてもよい。
【0040】
《アプリケーション》
サーボモータMは、例えばプレス機等の各種アプリケーションに組み込まれ、インバータ60から供給される3相電源により動作し、アプリケーションを機能させる。サーボモータM付近には、位置検出器ENが設けられている。位置検出器ENは、サーボモータMが例えば1回転する度にパルスを出力することで、制御処理部20へ位置情報を供給する。制御処理部20は、入力される位置情報によりサーボモータMの位置や回転速度等を算出することが可能である。
【0041】
センサASは、例えばサーボモータMにより駆動されるアプリケーション内の部材の位置等をセンシングし、センサ情報として制御処理部20へ出力する。センサ情報には、例えばサーボモータMにより駆動されるアプリケーション内の部材の位置情報等が含まれる。制御処理部20は、センサ情報によりアプリケーション内の状況を認識し、状況に応じて速度指令リミット値ややトルク指令リミット値を切り換えることが可能である。
【0042】
<サーボモータの制御方法>
次に、具体例を挙げてサーボモータMの制御方法について説明する。
図3は、本発明の実施の形態1に係るサーボモータの制御方法の一例を示す図である。
図3には、入力指令値である速度指令値、トルク指令値、サーボモータMの現在位置のタイミングチャートがそれぞれ示されている。速度指令値、トルク指令値のタイミングチャートには、各期間における速度指令リミット値、トルク指令リミット値もそれぞれ示されている。速度指令値のタイミングチャートが本実施の形態の運転パターンに対応している。速度指令値による運転パターンは、例えばプレス機等に設けられるサーボモータの制御に用いられる。
【0043】
プレス機では、スライド及びスライドに取り付けられた金型は、上死点から、スライドの下方に固定された金型に向かって下死点まで下降することでプレス加工及びダイクッションの加圧/回生を行う。その後、スライド及び金型は、下死点から上死点まで上昇する。プレス機では、このようなスライド及び金型の上下運動(往復運動)が繰り返し行われる。
【0044】
まず、時刻t0-t1の期間、速度指令値が直線的に0からV0まで増加している。この期間のトルク指令値はT0である。この期間内に、サーボモータMの位置は、P0からP1まで移動している。この期間における速度指令リミット値はVL0、トルク指令リミット値はTL0である。
【0045】
時刻t1-t2の期間、速度指令値はV0である。この期間のトルク指令値はT1である。この期間内に、サーボモータMの位置は、P1からP2まで移動している。この期間の速度指令リミット値はVL0、トルク指令リミット値はTL1である。
【0046】
時刻t2-t3の期間、速度指令値が直線的にV0からV1まで減少している。この期間のトルク指令値はT2である。この期間内に、サーボモータMの位置は、P2からP3まで移動している。この期間における速度指令リミット値はVL0、トルク指令リミット値はTL2である。トルク指令リミット値TL2は、0より小さい値であり、トルク指令値がトルク指令リミット値TL2より小さくならないように設定されている。
【0047】
時刻t3-t7の期間、速度指令値はV1である。この期間のトルク指令値は、T1(t3-t4)、T3(t4-t5)、T4(t5-t6)、T1(t6-t7)の順に変動している。時刻t3-t7の期間内に、サーボモータMの位置は、P3からP7まで順次移動している。この期間における速度指令リミット値はVL0である。この期間におけるトルク指令リミット値は、TL1(t3-t4)、TL3(t4-t5)、TL4(t5-t6)、TL1(t6-t7)である。
【0048】
時刻t7-t8の期間、速度指令値が直線的にV1からV0まで増加している。この期間のトルク指令値はT0である。この期間内に、サーボモータMの位置は、P7からP8まで移動している。この期間における速度指令リミット値はVL0、トルク指令リミット値はTL0である。
【0049】
時刻t8-t9の期間、速度指令値はV0である。この期間のトルク指令値はT1である。この期間内に、サーボモータMの位置は、P8からP9まで移動している。この期間における速度指令リミット値はVL0、トルク指令リミット値はTL1である。
【0050】
時刻t9-t10の期間、速度指令値が直線的にV0からV0まで減少している。この期間のトルク指令値はT2である。この期間内に、サーボモータMの位置は、P9からP10まで移動している。この期間における速度指令リミット値はVL0、トルク指令リミット値はTL2である。
【0051】
プレス機では、スライド及び金型は、例えば時刻t0-t3の期間に速度指令値V0で下死点付近まで下降する。そして、スライド及び金型は、時刻t3-t7の期間に速度指令値V1でプレス加工及びダイクッションの加圧/回生を行う。そして、スライド及び金型は、時刻t7-t10の期間に速度指令値V0で上死点まで上昇する。
【0052】
トルク指令をプレス機に当てはめると、時刻t0-t1、t7-t8の各期間、トルク指令値は、加速トルクT0である。時刻t2-t3、t9-t10の各期間、トルク指令値は減速トルクT2である。時刻t4-t5の期間、トルク指令値は加圧トルクT3である。時刻t5-t6の期間、トルク指令値は回生トルクT4である。時刻t1-t2、t3-t4、t6-t7、t8-t9の各期間、トルク指令値は摩擦トルクT1である。
【0053】
これらの速度指令値及びトルク指令値は、予め計算や本格稼働前の試運転時に設定することができる。このため、これらの値にマージンを加えた値を速度指令リミット値及びトルク指令リミット値として設定することができる。
【0054】
図4は、
図3に対応するリミット値テーブルの一例を示す図である。
図4のリミット値テーブルには、各期間における速度指令リミット値及びトルク指令リミット値の他にも、サーボモータMの状態を示す回転方向及び位置情報も格納されている。リミット値テーブルに各期間におけるサーボモータMの状態も格納しておくことで、位置検出器ENが検出したサーボモータMの位置情報に基づき、運転パターンにおける各期間が特定される。なお、サーボモータMの回転方向は、位置検出器ENが検出した位置情報に基づき検出される。例えば、サーボモータMが120°回転するごとに位置検出器ENから位置情報が出力されるようにすれば、サーボモータMの回転方向を容易に検出することができる。
【0055】
これにより、比較対象となる速度指令リミット値及びトルク指令リミット値が容易に選択され、速度指令値判定処理部23及びトルク指令値判定処理部25における比較処理が速やかに実行される。
【0056】
<本実施の形態による主要な効果>
本実施の形態によれば、制御処理部20は、入力指令値が指令リミット値の範囲内である場合、入力指令値を比較後指令値とし、入力指令値が指令リミット値の範囲外である場合、指令リミット値を比較後指令値とする。
【0057】
この構成によれば、入力指令値(速度指令値)が異常な値と判定された場合でも、比較対象である指令リミット値(速度指令リミット値)に指令値が書き換えられる。これにより、上位装置100における演算不具合による過大な指令値や外乱による負荷の増大などを原因として、入力指令値が指令リミット値を越えてしまうような状況の発生が抑えられるので、サーボモータMを有するアプリケーションにおける誤動作の発生を低減させることが可能となる。
【0058】
また、本実施の形態によれば、トルク指令値判定処理部25は、速度制御処理部24で生成されたトルク指令値とトルク指令リミット値とを比較して比較後トルク指令値を生成する。この構成によれば、制御処理部20の演算により異常なトルク指令値が生成された場合でもトルク指令値がトルク指令リミット値に書き換えられるので、制御処理部20に起因するアプリケーションにおける誤動作の発生を低減させることも可能となる。
【0059】
また、本実施の形態によれば、サーボモータMを有するアプリケーションの運転パターンの各期間に応じて比較対象となる指令リミット値が切り換えられる。この構成によれば、アプリケーションの動作に追従して指令リミット値を適切に選択することが可能となる。これにより、入力指令値に対する指令リミット値のマージンを適切に設定することが可能となる。
【0060】
また、本実施の形態によれば、位置検出器ENにより検出されるサーボモータMの位置情報に基づき速度指令リミット値及びトルク指令リミット値が切り換えられる。この構成によれば、速度指令値だけでなく、制御処理部20で生成されるトルク指令値に対しても、比較対象となるトルク指令リミット値を適切に選択することが可能となる。
【0061】
また、本実施の形態によれば、入力指令値(速度指令値)及びトルク指令値の少なくともいずれかが異常な値であると判定された場合、異常通知が上位装置100へ出力される。この構成によれば、制御処理部20において速度指令値又はトルク指令値に異常があったことが通知される。
【0062】
(実施の形態2)
次に、実施の形態2について説明する。なお、以下では、前述の実施の形態と重複する箇所については原則としてその説明を省略する。本実施の形態において、指令値入力回路10には、上位装置100から位置指令値が入力指令値として入力される。入力指令値は、例えばネットワークあるいはパルス列入力等により指令値入力回路10に入力される。指令値入力回路10は、入力された位置指令値を制御処理部20へ出力する。
【0063】
図5は、本発明の実施の形態2に係る制御処理部の構成の一例を示すブロック図である。
図5の制御処理部20は、位置指令値判定処理部21、位置制御処理部22、速度指令値判定処理部23、速度制御処理部24、トルク指令値判定処理部25、トルク制御処理部26、リミット値テーブル29を備えている。
【0064】
位置指令値判定処理部21は、入力された位置指令値が正常な値であるかどうかの判定を行う機能ブロックである。具体的に述べると、位置指令値判定処理部21は、入力された位置指令値とリミット値テーブル29に格納された位置指令リミット値とを比較する。位置指令値判定処理部21は、運転パターンに応じて各期間における比較対象となる位置指令リミット値を切り換える。
【0065】
位置指令値判定処理部21は、位置指令値が比較対象として選択した位置指令リミット値の範囲内である場合、正常な値であると判断し、位置指令値を比較後位置指令値として位置制御処理部22へ出力する。
【0066】
これに対し、位置指令値判定処理部21は、位置指令値が選択した位置指令リミット値の範囲外である場合、位置指令値は異常な値であると判断し、位置指令リミット値を比較後位置指令値として位置制御処理部22へ出力する。その際、位置指令値判定処理部21は、入力された位置指令値が異常な値であることを示す異常通知を上位装置100へ出力する。異常通知には、運転パターンにおける異常発生期間を特定する情報が含まれてもよい。
【0067】
位置指令値判定処理部21には、位置検出器ENで検出されるサーボモータMの位置情報が入力される。位置指令値判定処理部21は、サーボモータMの位置情報に基づき位置指令リミット値を切り換えることが可能である。
【0068】
また、位置指令値判定処理部21には、センサASにより検出されるアプリケーションのセンサ情報が入力される。位置指令値判定処理部21は、センサ情報を用いて運転パターンにおける各期間を特定し、位置指令リミット値を切り換えることが可能である。
【0069】
位置制御処理部22は、比較後位置指令値に基づき速度指令値を生成する機能ブロックである。具体的に述べると、位置制御処理部22は、位置指令値判定処理部21から入力された比較後位置指令値に対応する速度を算出する。具体的に述べると、位置制御処理部22は、所定時刻におけるサーボモータMの位置が比較後位置指令値(位置指令値又は位置指令リミット値)で規定される位置となるよう、モータ回転軸の速度を算出する。位置制御処理部22は、算出した速度を速度指令値として速度指令値判定処理部23へ出力する。
【0070】
位置制御処理部22には、位置指令値判定処理部21から、運転パターンの各期間に対応する比較後位置指令値が順次入力される。そして、位置制御処理部22は、入力される比較後位置指令値に基づき、対応する速度指令値を速度指令値判定処理部23へ順次出力する。
【0071】
本実施の形態では、速度指令値判定処理部23は、位置制御処理部22で生成された速度指令値とリミット値テーブル29に格納された速度指令リミット値とを比較し、入力された速度指令値が正常な値であるかどうかの判定を行う。その他の処理は、実施の形態1と同様である。
【0072】
<サーボモータの制御方法>
次に、本実施の形態におけるサーボモータの制御方法について説明する。
図6は、本発明の実施の形態2に係るサーボモータの制御方法の一例を示す図である。
図6には、入力指令値である位置指令値、速度指令値、トルク指令値、センサ入力1、2、3のタイミングチャートがそれぞれ示されている。位置指令値、速度指令値、トルク指令値のタイミングチャートには、各期間における位置指令リミット値、速度指令リミット値、トルク指令リミット値もそれぞれ示されている。位置指令値のタイミングチャートが本実施の形態の運転パターンに対応している。位置指令値による運転パターンは、例えばNC工作機等に設けられるサーボモータの制御に用いられる。
【0073】
まず、時刻t0-t1の期間、位置指令値は、0からP0まで増加している。この期間の速度指令値は、直線的に0からV0まで増加している。この期間のトルク指令値はT0である。この期間の位置リミット値はPL0、速度指令リミット値はVL0、トルク指令リミット値はTL0である。
【0074】
時刻t1-t2の期間、位置指令値は、直線的にP0からP1まで増加している。この期間の速度指令値はV0である。この期間のトルク指令値はT1である。この期間の位置指令リミット値はPL1、速度指令リミット値はVL0、トルク指令リミット値はTL1である。
【0075】
時刻t2-t3の期間、位置指令値は、P1からP2に増加している。ただし、この期間の後半の増加率は、前半よりも緩やかになっている。この期間の速度指令値は、直線的にV0から0まで減少している。この期間のトルク指令値はT2である。この期間の位置指令リミット値はPL2、速度指令リミット値はVL0、トルク指令リミット値はTL2である。トルク指令リミット値TL2は、0より小さい値であり、トルク指令値がトルク指令リミット値TL2より小さくならないように設定されている。
【0076】
時刻t3-t4の期間、位置指令値は、P2からP1に減少している。ただし、この期間の前半の減少率は、後半よりも緩やかになっている。この期間の速度指令値は、直線的に0からV1まで減少している。この期間のトルク指令値はT2である。この期間の位置指令リミット値はPL3である。この期間の速度指令リミット値はVL1である。この期間のトルク指令リミット値はTL2である。
【0077】
時刻t4-t5の期間、位置指令値は、直線的にP1からP0まで減少している。この期間の速度指令値はV1である。この期間のトルク指令値はT3である。この期間の位置指令リミット値はPL4、速度指令リミット値はVL1、トルク指令リミット値はTL3である。
【0078】
時刻t5-t6の期間、位置指令値は、P0から0まで減少している。この期間の速度指令値は、直線的にV1から0まで増加している。この期間のトルク指令値はT0である。この期間の位置指令リミット値はPL5、速度指令リミット値はVL1、トルク指令リミット値はTL0である。
【0079】
図6に示すような位置指令値による運転パターンでは、NC工作機等のサーボモータは、0からP2まで回転した後元の位置まで戻る。具体的に述べると、位置指令値に基づき制御処理部20の内部で生成される速度指令値は、時刻t0-t3の期間では、サーボモータを正回転させる。一方、時刻t3-t6の期間における速度指令値は、サーボモータを逆回転させる。
【0080】
速度指令値により制御処理部20の内部で生成されるトルク指令値は、時刻t0-t1の期間では正回転時の加速トルクを発生させる。時刻t1-t2の期間におけるトルク指令値は、正方向の摩擦トルクを発生させる。時刻t2-t3の期間におけるトルク指令値は、正回転時の減速トルクを発生させる。時刻t3-t4の期間におけるトルク指令値は、逆回転時の加速トルクを発生させる。時刻t4-t5の期間におけるトルク指令値は、逆方向の摩擦トルクを発生させる。時刻t5-t6の期間におけるトルク指令値は、逆回転時の減速トルクを発生させる。
【0081】
NC加工機等におけるサーボモータの位置、速度、及びトルクは、予め計算や本格稼働前の試運転時に設定することができる。このため、これらの値にマージンを加えた値を位置指令リミット値、速度指令リミット値、及びトルク指令リミット値として設定することができる。
【0082】
図7は、
図6に対応するリミット値テーブルの一例を示す図である。
図7のリミット値テーブルには、各期間における位置指令リミット値、速度指令リミット値、及びトルク指令リミット値の他にも、センサ入力1、2、3の状態(ON、OFF)も格納されている。センサASは、サーボモータを含むアプリケーションの動作を検出し、検出した動作に応じてセンサ入力1、2、3の状態(ON、OF)を切り換える。
【0083】
リミット値テーブルにセンサASの入力パターンも登録しておくことで、センサASにより検出されるアプリケーションのセンサ情報を用いて指令リミット値を切り換えることが可能である。具体的には、制御処理部20は、例えばセンサ入力1、2、3の入力パターンに基づき運転パターンにおける期間を特定し、特定した期間の位置指令リミット値、速度指令リミット値、及びトルク指令リミット値をそれぞれ選択する。
【0084】
なお、位置指令値については、リミット値テーブルに格納された位置指令リミット値だけでなく、直前のタイミングの位置指令値等を基に生成された位置補正値を位置指令リミットとして用いてもよい。例えば、
図6の時刻t1-t2の期間では、時刻t1付近では位置指令値と位置指令リミット値との差分が大きくなっている。この場合、制御処理部20は、例えば時刻t1付近の位置指令値(P0等)に所定の補正値を加算した位置補正値を生成し、位置指令値と位置補正値とを比較して比較後位置指令値を生成する。そして、位置指令値と位置指令リミット値との差分が所定の閾値の範囲内となるまでこの処理を連続して行ってもよい。この構成によれば、位置指令値と位置指令リミット値との差分を小さくすることができるので、サーボモータ及びアプリケーションをより安全に動作させることが可能となる。
【0085】
<本実施の形態による主要な効果>
本実施の形態によれば、前述の実施の形態による各効果に加え、以下の効果が得られる。本実施の形態によれば、制御処理部20は、入力された位置指令値に基づき速度指令値を生成し、速度指令値に基づきトルク指令値を生成する。
【0086】
この構成によれば、位置指令値が入力された場合にも、サーボモータMを有するアプリケーションにおける誤動作の発生を低減させることが可能となる。また、この構成によれば、サーボモータの位置を制御することができ、誤動作の発生を抑えつつ、アプリケーションによる精密な加工処理を行うことが可能となる。
【0087】
また、本実施の形態によれば、位置検出器ENにより検出されるサーボモータMの位置情報に基づき位置指令リミット値、速度指令リミット値、及びトルク指令リミット値が切り換えられる。この構成によれば、位置指令値、速度指令値、及びトルク指令値に対しても、比較対象となる位置指令リミット値、速度指令リミット値、及びトルク指令リミット値を適切に選択することが可能となる。
【0088】
また、本実施の形態によれば、入力指令値(位置指令値)が異常な値であると判定された場合にも、異常通知が上位装置100へ出力される。この構成によれば、位置指令値に異常があったことが上位装置100に通知される。
【0089】
また、本実施の形態によれば、センサASにより検出されるアプリケーションのセンサ情報を用いて位置指令リミット値、速度指令リミット値、及びトルク指令リミット値が切り換えられる。この構成によれば、入力パターンに基づき運転パターンにおける期間を特定することができ、位置指令リミット値、速度指令リミット値、及びトルク指令リミット値を適切に選択することが可能となる。
【0090】
なお、本発明は上記した実施の形態に限定されるものではなく、様々な変形例が含まれる。また、ある実施の形態の構成の一部を他の実施の形態の構成に置き換えることが可能であり、また、ある実施の形態の構成に他の実施の形態の構成を加えることも可能である。例えば、センサASの入力パターンによるサーボモータの制御は、実施の形態1に対しても適用可能である。
【0091】
また、各実施の形態の構成の一部について、他の構成の追加、削除、置換をすることが可能である。なお、図面に記載した各部材や相対的なサイズは、本発明を分かりやすく説明するため簡素化・理想化しており、実装上はより複雑な形状となる場合がある。
【符号の説明】
【0092】
1…サーボモータ制御装置、20…制御処理部、21…位置指令値判定処理部、22…位置制御処理部、23…速度指令値判定処理部、24…速度制御処理部、25…トルク指令値判定処理部、26…トルク制御処理部、30…電力変換機、60…インバータ、70…ゲートドライバ、100…上位装置、AS…センサ、EN…位置検出器、M…サーボモータ