サーボモータ制御部10aの位置指令速度次元信号出力部110aは、位置指令に対応した速度次元信号を出力する。サーボモータ速度次元信号出力部120は、サーボモータ20の速度次元信号を出力する。第一衝突検出部130は、これらの速度偏差の絶対値が特定値以上になった場合、衝突として検出する。位置指令加速度次元変換部140aは、位置指令に係る速度次元信号を加速度次元信号に変換して出力する。サーボモータ加速度次元変換部150は、サーボモータ20の加速度次元信号を出力する。第二衝突検出部160は、加速度偏差の絶対値が特定値以上になった場合、衝突として検出する。この上で、選択部180は、第一衝突検出部130と第二衝突検出部160とを、パラメータ設定部190の検出方法選択設定191により選択する。
前記位置指令の値に比例ゲインを掛けた信号と、前記位置検出センサにより検出された位置信号が微分フィルタにより微分された信号との偏差を算出するフィードバックループを備え、
前記サーボモータ速度次元信号出力部は、前記フィードバックループ内に配した前記微分フィルタの出力信号を、速度次元信号として出力する
ことを特徴とする請求項1乃至3のいずれか1項に記載のサーボモータ制御装置。
動作対象物を動作させるサーボモータと、位置指令により前記サーボモータを制御するサーボモータ制御部とを備えるサーボモータ制御装置により実行される衝突検出方法であって、
前記位置指令に対応した速度次元信号を出力し、
前記サーボモータの速度次元信号を出力し、
出力された前記位置指令に対応した速度次元信号と、出力された前記サーボモータの速度次元信号との差分値である速度偏差を算出し、
前記位置指令に対応した加速度次元信号を出力し、
前記サーボモータの加速度次元信号を出力し、
出力された前記位置指令に対応した加速度次元信号と、出力された前記サーボモータの加速度次元信号との差分値である加速度偏差を算出し、
特定のパラメータにより選択された前記速度偏差及び加速度偏差のいずれかの絶対値が特定値以上になった場合、衝突として検出する
ことを特徴とする衝突検出方法。
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1の技術では、偏荷重がかかっている場合や加減速の時に衝突を検出することができないという問題があった。このため、衝突検出の検出精度が十分ではなかった。
【0005】
本発明は、このような状況に鑑みてなされたものであり、上述の問題を解消し、衝突検出の精度を高めるサーボモータ制御装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明のサーボモータ制御装置は、動作対象物を動作させるサーボモータと、位置指令により前記サーボモータを制御するサーボモータ制御部とを備えるサーボモータ制御装置であって、前記サーボモータ制御部は、前記位置指令に対応した速度次元信号を出力する位置指令速度次元信号出力部と、前記サーボモータの速度次元信号を出力するサーボモータ速度次元信号出力部と、前記位置指令速度次元信号出力部により出力された速度次元信号と、前記サーボモータ速度次元信号出力部により出力された速度次元信号との差分値である速度偏差の絶対値が特定値以上になった場合、衝突として検出する第一衝突検出部と、前記位置指令速度次元信号出力部により出力された速度次元信号を加速度次元信号に変換して出力する位置指令加速度次元変換部と、前記サーボモータ速度次元信号出力部により出力された速度次元信号を加速度次元信号に変換して出力するサーボモータ加速度次元変換部と、前記位置指令加速度次元変換部により出力された加速度次元信号と、前記サーボモータ加速度次元変換部により出力された加速度次元信号との差分値である加速度偏差の絶対値が特定値以上になった場合、衝突として検出する第二衝突検出部と、前記第一衝突検出部と前記第二衝突検出部とを、特定のパラメータにより選択する選択部とを備えることを特徴とする。
このように構成することで、位置制御において、アプリケーションの用途等に対応し、第一衝突検出部と第二衝突検出部とを適切に選択することができ、衝突検出の精度を高められる。
【0007】
本発明のサーボモータ制御装置は、動作対象物を動作させるサーボモータと、速度指令により前記サーボモータを制御するサーボモータ制御部とを備えるサーボモータ制御装置であって、前記サーボモータ制御部は、前記速度指令に対応した速度次元信号を出力する速度指令速度次元信号出力部と、前記サーボモータの速度次元信号を出力するサーボモータ速度次元信号出力部と、前記速度指令速度次元信号出力部により出力された速度次元信号と、前記サーボモータ速度次元信号出力部により出力された速度次元信号との差分値である速度偏差の絶対値が特定値以上になった場合、衝突として検出する第一衝突検出部と、前記速度指令速度次元信号出力部により出力された速度次元信号を加速度次元信号に変換して出力する速度指令加速度次元変換部と、前記サーボモータ速度次元信号出力部により出力された速度次元信号を加速度次元信号に変換して出力するサーボモータ加速度次元変換部と、前記速度指令加速度次元変換部により出力された加速度次元信号と、前記サーボモータ加速度次元変換部により出力された加速度次元信号との差分値である加速度偏差の絶対値が特定値以上になった場合、衝突として検出する第二衝突検出部と、前記第一衝突検出部と前記第二衝突検出部とを、特定のパラメータにより選択する選択部とを備えることを特徴とする。
このように構成することで、速度制御において、アプリケーションの用途等に対応し、第一衝突検出部と第二衝突検出部とを適切に選択することができ、衝突検出の精度を高められる。
【0008】
本発明のサーボモータ制御装置は、前記サーボモータ制御部は、前記サーボモータ加速度次元変換部により出力された加速度次元信号の絶対値が特定値以上になった場合、衝突として検出する第三衝突検出部を更に備え、前記選択部は、前記特定のパラメータにより、前記第三衝突検出部も選択することを特徴とする。
このように構成することで、加減速が緩やかな状況では、加速度次元信号自体と特定値との比較をすることで、衝突検出の精度を高めることができる。
【0009】
本発明のサーボモータ制御装置は、前記サーボモータ速度次元信号出力部は、前記サーボモータの位置を検出する位置検出センサにより検出された位置信号が微分された信号を、速度次元信号として出力することを特徴とする。
このように構成することで、微分器により簡単に速度次元信号を得ることができ、構成を簡略化できる。
【0010】
本発明のサーボモータ制御装置は、前記サーボモータ速度次元信号出力部は、モデルの制御対象への入力信号と前記制御対象の出力信号とにより速度を推定する速度オブザーバで算出された速度推定信号を、速度次元信号として出力することを特徴とする。
このように構成することで、オブザーバを用いる構成においても、衝突検出を行うことができる。
【0011】
本発明のサーボモータ制御装置は、前記位置指令の値に比例ゲインを掛けた信号と、前記位置検出センサにより検出された位置信号が微分フィルタにより微分された信号との偏差を算出するフィードバックループを備え、前記サーボモータ速度次元信号出力部は、前記フィードバックループ内に配した前記微分フィルタの出力信号を、速度次元信号として出力することを特徴とする。
このように構成することで、演算を簡略化して、構成を簡略化できる。
【0012】
本発明のサーボモータ制御装置は、前記第一衝突検出部は、前記速度偏差の代わりに、前記位置指令の値に比例ゲインを掛けた信号と、前記位置検出センサにより検出された位置信号が微分された信号との差分値を疑似速度偏差として算出し、該疑似速度偏差の絶対値が特定値以上になった場合、衝突として検出することを特徴とする。
このように構成することで、演算を簡略化して、構成を簡略化できる。
【0013】
本発明のサーボモータ制御装置は、前記第二衝突検出部は、前記加速度偏差の代わりに、前記疑似速度偏差を微分した信号を疑似加速度偏差として算出し、該疑似加速度偏差の絶対値が特定値以上になった場合、衝突として検出することを特徴とする。
このように構成することで、演算を簡略化して、構成を簡略化できる。
【0014】
本発明のサーボモータ制御装置は、前記選択部は、前記第一衝突検出部、前記第二衝突検出部、及び前記第三衝突検出部のいずれを選択するか、外部から設定された前記パラメータにより選択することを特徴とする。
このように構成することで、外部から衝突検出に適した回路等を随時設定でき、回路変更の負荷が少なく簡単に変更することができる。
【0015】
本発明のサーボモータ制御装置は、前記選択部は、前記第一衝突検出部の特定値、前記第二衝突検出部の特定値、前記第三衝突検出部の特定値は、外部から設定されることを特徴とする。
このように構成することで、外部から特定値を随時設定でき、変更の負荷が少なく簡単に変更することができる。
【0016】
本発明のサーボモータ制御装置は、前記速度次元信号は、制御系モデルとして1/(τs+1)を伝達関数とする要素を含むフィルタの信号であることを特徴とする。
このように構成することで、フィルタに制御モデルの要素を含ませることができ、擬似的に実際の信号に近い信号を得ることができる。
【0017】
本発明のサーボモータ制御装置は、前記フィルタは、カットオフ周波数が外部から設定されることを特徴とする。
このように構成することで、変更負荷が少なくなり、カットオフ周波数を適宜、簡単に選択できる。
【0018】
本発明の衝突検出方法は、動作対象物を動作させるサーボモータと、位置指令により前記サーボモータを制御するサーボモータ制御部とを備えるサーボモータ制御装置により実行される衝突検出方法であって、前記位置指令に対応した速度次元信号を出力し、前記サーボモータの速度次元信号を出力し、出力された前記位置指令に対応した速度次元信号と、出力された前記サーボモータの速度次元信号との差分値である速度偏差を算出し、前記位置指令に対応した加速度次元信号を出力し、前記サーボモータの加速度次元信号を出力し、出力された前記位置指令に対応した加速度次元信号と、出力された前記サーボモータの加速度次元信号との差分値である加速度偏差を算出し、特定のパラメータにより選択された前記速度偏差及び加速度偏差のいずれかの絶対値が特定値以上になった場合、衝突として検出することを特徴とする。
このように構成することで、アプリケーションの用途等に対応し、衝突検出の方式を適切に選択することができ、衝突検出の精度を高められる。
【発明の効果】
【0019】
本発明によれば、速度偏差による衝突検出と加速度偏差による衝突検出とを特定のパラメータにより選択することで、衝突検出の検出精度がよいサーボモータ制御装置を提供することができる。
【発明を実施するための形態】
【0021】
<実施の形態>
〔制御システムXの構成〕
図1を参照して、本発明の実施の形態に係る制御システムXの構成について説明する。制御システムXは、ロボット、工作機械、車両、船舶、航空機、工場プラント等の各種機器における制御を行うためのシステムである。
【0022】
また、本実施形態の制御システムXは、サーボモータ制御装置1、動作対象物2、及びホスト装置3を含んでいる。
【0023】
サーボモータ制御装置1は、位置指令又は速度指令に対応して制御量を調整しつつサーボモータ20を制御し、動作対象物2を動作させる装置である。また、サーボモータ制御装置1は、動作対象物2の衝突検出を行う。
サーボモータ制御装置1は、この衝突検出として、位置指令による位置制御を実行する場合には、ロボットアーム等が障害物に接触した等により停止したことを検出する。また、サーボモータ制御装置1は、速度指令による速度制御を実行する場合には、工作機械の回転部材の歯欠けやベアリング故障等により停止したことを検出する。
また、サーボモータ制御装置1は、本実施形態に係る衝突検出方法を実行するハードウェア資源となる。
【0024】
動作対象物2は、サーボモータ制御装置1による動作制御の対象となる部材である。動作対象物2は、例えば、産業用ロボットのアーム、工作機械の回転部材、車両の車輪や歯車やベルト、船舶のシャフト、航空機のプロペラ、工場プラントのアクチュエータ等である。
【0025】
ホスト装置3は、各種機器を制御、管理等するための外部の機器である。具体的に、ホスト装置3は、例えば、PLC(Programmable Logic Controller)、FC(Factory Computer)、サーバ(Server)、PC(Personal Computer)等である。ホスト装置3は、サーボモータ制御装置1を制御、管理等するためのアプリケーション(Application Program)を実行する。これにより、ホスト装置3は、サーボモータ制御装置1に位置指令又は速度指令を送信し、サーボモータ制御装置1から各種情報を受信する。また、ホスト装置3は、ユーザーの指示を取得して、後述するパラメータ設定部190(
図2、
図3)に各種設定値を設定することも可能である。
【0026】
また、サーボモータ制御装置1は、サーボモータ制御部10、サーボモータ20、及び検出部30を含んでいる。
【0027】
サーボモータ制御部10は、ホスト装置3からの位置指令又は速度指令によりサーボモータ20を制御する。具体的に、サーボモータ制御部10は、例えば、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)、DSP(Digital Signal Processor)、CPU(Central Processing Unit)、MPU(Micro Processing Unit)等の制御演算手段と、サーボモータ20に電力を供給して駆動するためのアナログ又はデジタルのドライバ部(アンプ)を含んでいる。
ここで、サーボモータ制御部10は、後述するように、ホスト装置3のアプリケーションにより、位置指令による位置制御を実行する場合と、速度指令により速度制御を実行する場合において、構成を変更することが可能である。
【0028】
サーボモータ20は、ACサーボモータ20、DCサーボモータ20、リニアアクチュエータ等である。サーボモータ20は、動作対象物2を動作させる。
【0029】
検出部30は、サーボモータ20の軸等の位置を検出する、具体的に、検出部30は、サーボモータ20の位置を検出して出力する位置検出センサを含んでいる。この位置検出センサは、例えば、磁気式や光学式のエンコーダ(Encoder)等である。
また、検出部30の出力信号は、サーボモータ制御部10に入力され、位置制御や速度制御のフィードバック(Feedback)制御に使用される。
【0030】
なお、サーボモータ制御部10の制御演算手段により実現される、後述する各部は、特定のデジタル回路で構成されてもよい。また、デジタル回路以外に、アナログ回路により構成されていてもよいし、ROM(Read Only Memory)に記憶された制御プログラムをRAM(Random Access Memory)に展開して実行することでソフトウェアをハードウェア資源で実行した回路として構成されてもよい。
また、モータの速度次元信号を得るために擬似微分器を用いない構成も可能である。この場合、後述するように、オブザーバ300(
図4)により、動作対象物2の動作モデルによりサーボモータ20の速度を推定する等により制御する。
【0031】
〔サーボモータ制御部10の構成〕
次に、
図2〜
図4を参照して、
図1のサーボモータ制御部10の詳細な制御構成について説明する。
図2は、サーボモータ20の位置指令を入力とし、サーボモータ20の位置を出力とする位置制御を実行し、衝突検出を行う場合のサーボモータ制御部10aの構成である。
【0032】
サーボモータ制御部10aは、位置指令速度次元信号出力部110a、サーボモータ速度次元信号出力部120、第一衝突検出部130、位置指令加速度次元変換部140a、サーボモータ加速度次元変換部150、第二衝突検出部160、第三衝突検出部170、選択部180、パラメータ設定部190を含む。
【0033】
制御系100は、動作対象物2のモデルを備え、フィードバックにより制御を行う制御系100の全体を示す。
【0034】
位置指令速度次元信号出力部110aは、ホスト装置3等から位置指令を入力し、この位置指令に対応した速度次元信号を出力する。
【0035】
また、位置指令速度次元信号出力部110aは、微分器111及びフィルタ112を含んでいる。
微分器111は、位置指令を微分して速度次元に変換する疑似微分部等である。
フィルタ112は、例えば、一次のIIRフィルタ(Infinite Impulse Response Filter)である。これにより、フィルタ112は、時間遅れの信号を出力する。また、フィルタ112は、制御系100モデルとして1/(τs+1)を伝達関数とする要素を含む。ここで、τは時定数、sはラプラス演算子である。また、フィルタ112のカットオフ周波数等のパラメータは、外部から設定可能であり、具体的には、パラメータ設定部190のカットオフ設定193により設定される。
なお、このカットオフ設定193は、フィルタのカットオフ周波数はサーボゲインの設定値から算出されてもよい。
また、フィルタ112として、一次フィルタ以外の各種フィルタを使用することも可能である。
【0036】
サーボモータ速度次元信号出力部120は、サーボモータ20の速度次元信号を出力する。
サーボモータ速度次元信号出力部120は、一例として、検出部30の位置検出センサにより検出されたサーボモータ20の位置信号を取得し、これを微分器で微分し、速度次元信号として出力する。この場合、サーボモータ速度次元信号出力部120は、実際の制御系100から得られる位置フィードバック値の微分値である速度フィードバック値を算出する。
なお、サーボモータ速度次元信号出力部120は、他の方式により速度次元信号を算出することが可能である。この速度次元信号の取得、算出方法については後述する。
【0037】
第一衝突検出部130は、位置指令速度次元信号出力部110aにより出力された速度次元信号と、サーボモータ速度次元信号出力部120により出力された速度次元信号との差分値である速度偏差が入力される。第一衝突検出部130は、この上で、入力された速度偏差の絶対値が特定値以上になった場合、衝突として検出する。第一衝突検出部130は、衝突を検出した場合、衝突検出信号を出力する。
【0038】
位置指令加速度次元変換部140aは、位置指令速度次元信号出力部110aにより出力された速度次元信号を加速度次元信号に変換して出力する。具体的には、位置指令加速度次元変換部140aは、入力された位置指令に係る速度次元信号を、微分器で更に微分して加速度次元に変換し、これを加速度次元信号として出力する。
【0039】
サーボモータ加速度次元変換部150は、サーボモータ20の速度次元信号を加速度次元信号に変換して出力する。具体的には、サーボモータ加速度次元変換部150は、一例として、サーボモータ速度次元信号出力部120により出力された速度次元信号を、微分器で更に微分して加速度次元に変換し、これを加速度次元信号として出力する。
【0040】
第二衝突検出部160は、位置指令加速度次元変換部140aにより出力された加速度次元信号と、サーボモータ加速度次元変換部150により出力された加速度次元信号との差分値である加速度偏差が入力される。この上で、第二衝突検出部160は、加速度偏差の絶対値が特定値以上になった場合、衝突として検出する。第二衝突検出部160は、衝突を検出した場合、衝突検出信号を出力する。
【0041】
第三衝突検出部170は、サーボモータ加速度次元変換部150により出力された加速度次元信号の絶対値が特定値以上になった場合、衝突として検出する。第三衝突検出部170は、衝突を検出した場合、衝突検出信号を出力する。
【0042】
選択部180は、第一衝突検出部130、第二衝突検出部160、及び第三衝突検出部170のいずれを衝突判定に使用するか、パラメータ設定部190の検出方法選択設定191により選択する。また、選択部180は、この選択された部の衝突検出信号を、ホスト装置3等へ出力する。
【0043】
パラメータ設定部190は、主に各種設定を設定し、RAM、EEPROM等の一時的でない記録媒体に記憶する。パラメータ設定部190の各設定値は、ホスト装置3等の外部の機器により設定可能である。また、各設定値は、ディップスイッチ等で設定されてもよい。
【0044】
また、パラメータ設定部190は、検出方法選択設定191、特定値設定192、及びカットオフ設定193を含んでいる。
検出方法選択設定191は、選択部180が第一衝突検出部130、第二衝突検出部160、及び第三衝突検出部170のいずれかにより衝突検出を設定するかを指定する特定のパラメータの設定情報である。この特定のパラメータは、通常の速度でサーボモータ20を作動させるアプリケーションでは、速度偏差を用いた第一衝突検出部130を選択することが好適である。また、特定のパラメータは、加減速が速いアプリケーションにおいては、加速度偏差を用いた第二衝突検出部160を選択することが好適である。また、特定のパラメータは、加減速が緩やかなアプリケーションにおいては、加速度のフィードバックを用いた第三衝突検出部170を選択することが好適である。
なお、この特定のパラメータは、単なる数値ではなく、特定の数学モデル、ファジィ関数、人工ニューラルネットのような関数形式で指定されてもよい。
【0045】
特定値設定192は、第一衝突検出部130の特定値、第二衝突検出部160の特定値、第三衝突検出部170の特定値である。この特定値設定192は、単一の値を用意して、アプリケーション毎に切り替えて使用してもよい。なお、特定値設定192の特定値は、第一衝突検出部130、第二衝突検出部160、及び第三衝突検出部170のそれぞれ用に用意してもよい。
【0046】
カットオフ設定193は、フィルタ112のカットオフ周波数の設定である。なお、このカットオフ周波数は、サーボゲインの設定値から算出できるので、カットオフ設定193によりサーボゲインを変更設定することでカットオフ周波数を設定してもよい。
【0047】
なお、第一衝突検出部130、第二衝突検出部160、及び第三衝突検出部170は、他の方式により衝突検出を行うことも可能である。他の衝突検出の方法については後述する。
また、第三衝突検出部170が存在しない構成も可能である。
【0048】
次に、
図3により、サーボモータ20の速度指令を入力としサーボモータ20の速度を出力とする速度制御を実行する場合のサーボモータ制御部10bの構成について説明する。
図2と
図3とにおいて、同様の構成要素には、同一の符号を付している。
【0049】
サーボモータ制御部10bは、速度指令速度次元信号出力部110b、及び速度指令加速度次元変換部140bを備えている。
【0050】
速度指令速度次元信号出力部110bは、ホスト装置3等から速度指令を入力し、この速度指令に対応した速度次元信号を出力する。
速度指令速度次元信号出力部110bは、この際、速度指令は速度次元の値であるので微分せず、位置指令速度次元信号出力部110aに含まれるものと同様のフィルタ112に入力させる。
【0051】
速度指令加速度次元変換部140bは、速度指令速度次元信号出力部110bにより出力された速度次元信号を加速度次元信号に変換して出力する。この処理は、位置指令加速度次元変換部140aと同様である。
【0052】
〔制御系100のモデルの構成〕
次に、
図4により、制御系100において、速度次元信号及び加速度次元信号等を取得する際の詳細、他の衝突検出方式等について、内部状態を考慮した状態空間表現によるモデルを用いて説明する。
【0053】
制御系100は、動作対象物2に対応してサーボモータ20を適切に制御するための希望特性を有する伝達関数である希望伝達関数(モデル)に合わせるモデルマッチング制御を行っている。
このモデルは、ラプラス演算子をsとすると、m0/(s
2+m1s+m0)と表現可能である。このモデルは、例えば、下記のように変形することができる。
m0/(s
2+m1s+m0)=ω1ω2/(s+ω1)(s+ω2)
ここで、ω1、ω2は、モデルのカットオフ周波数であり、以下の関係が成立する。
m0=ω1ω2、m1=ω1+ω2 …… 式(1)
なお、動作対象物2およびサーボモータ20の特性や制御の目的に応じてω1、ω2を設定することで、所望の制御応答特性を得ることができる。
【0054】
また、制御系100は、比例ゲイン要素200、積分フィルタ要素210、モータゲイン要素220、サーボモータ及び動作対象物を含んだ制御対象要素230、微分フィルタ要素240、前向き経路250、第一帰還経路260、及び第二帰還経路270を備えている。
【0055】
ここで、サーボモータ20に電力を供給するアンプ(図示せず)の特定のゲインと、サーボモータ20のトルク定数とを含む特定値を、動作対象物2およびサーボモータ20の慣性モーメントの値(イナーシャ、inertia)で割った値(ゲイン)をKとする。
また、動作対象物2およびサーボモータ20の粘性に関わる項を動作対象物2およびサーボモータ20のイナーシャで割った値であるゲインをpとする。
この場合、各要素は、以下のように表現される:
【0056】
比例ゲイン要素200は、m0である。
また、積分フィルタ要素210は、(s
2+q1s+q0)/(s
2+a1s)で表わされる伝達関数である。
また、モータゲイン要素220は、1/Kである。
また、サーボモータ及び動作対象物を含んだ制御対象要素230は、制御対象を示し、K/(s
2+ps)で表わされる伝達関数である。
また、微分フィルタ要素240は、(b2s
2+b1s)/(s
2+q1s+q0)で表わされる伝達関数である。
また、前向き経路250は、制御系100の入力から出力へ向かう経路である。
また、第一帰還経路260は、制御系100の出力部から入力側に向かう第一のフィードバックループである。
また、第二帰還経路270は、制御系100の出力部から入力側に向かう第二のフィードバックループである。ここで、第二帰還経路270は、位置指令の値に比例ゲインを掛けた信号の偏差を算出する。つまり、第二帰還経路270は、位置指令の値に比例ゲインを掛けた信号と、位置検出センサにより検出された位置信号が微分フィルタ要素240により微分された信号との偏差を算出するフィードバックループである。
【0057】
なお、a1、b1、b2は以下の関係を満足する。
a1 = q1+m1−p …… 式(2)
b1 = q0×m1 …… 式(3)
b2 = (q1−p)×(m1−p)+q0 …… 式(4)
また、上述のq0、q1は、動作対象物2およびサーボモータ20を適切に制御するために任意に設定される値である。
【0058】
このような構成により、サーボモータ速度次元信号出力部120は、速度次元信号として、
図4に示す速度フィードバック(a)、速度フィードバック(b)、速度フィードバック(c)のいずれかの値を選択し、速度次元信号の算出や出力に使用可能である。
【0059】
速度フィードバック(a)は、上述したように、検出部30の位置検出センサ等により検出されたサーボモータ20の位置信号(位置フィードバック値)を微分器にかけて算出された速度フィードバック値である。
【0060】
速度フィードバック(b)は、オブザーバ300により推定された速度推定信号である。オブザーバ300は、モデルの制御対象への入力信号と、制御対象の出力信号とにより速度を推定する速度オブザーバである。具体的には、オブザーバ300は、制御対象要素230への入力と制御対象要素230からの出力とに基づいて、ゲインKやpを推定する。この際、オブザーバ300は、例えば、最小二乗法等によってゲインKを推定する構成とすることもできる。この場合、オブザーバ300は、ゲインKやpが分かっている場合は、その値を使うことができる。また、これらの値が未知の場合は、ゲインKやpの推定を、特定時間の間隔で逐次実行する。
なお、速度フィードバック(b)を用いない場合、オブザーバ300を使用しない構成も可能である。
【0061】
速度フィードバック(c)は、第二帰還経路270の微分フィルタ要素240の出力信号である。すなわち、速度フィードバック(c)は、第二のフィードバックループ内に配した微分フィルタの出力信号を、速度次元信号として出力する。
【0062】
なお、サーボモータ速度次元信号出力部120が、どの速度フィードバック値を使用するのかについては、パラメータ設定部190に設定可能である。
【0063】
また、第一衝突検出部130は、上述の速度偏差の代わりに、位置指令値に比例ゲインを掛けた信号と、位置検出センサにより検出された位置信号が微分された信号との差分値を疑似速度偏差として算出し、これを速度偏差の代わりに使用して、衝突検出をすることも可能である。つまり、第一衝突検出部130は、比例ゲイン要素200の出力値と、第二帰還経路270の微分フィルタ要素240の出力値との差分値である疑似速度偏差として算出する。そして、この場合、第一衝突検出部130は、算出された疑似速度偏差の絶対値が特定値以上になった場合、衝突として検出する。
【0064】
また、同様に、第二衝突検出部160は、加速度偏差の代わりに、疑似速度偏差を、微分器310で微分した信号を疑似加速度偏差として算出することも可能である。この場合、算出された疑似加速度偏差の絶対値が特定値以上になった場合、衝突として検出する。また、第三衝突検出部170についても、疑似加速度偏差の値を使用して、衝突検出を行うことが可能である。
【0065】
〔本実施形態の効果〕
以上のように構成することで、以下のような効果を得ることができる。
従来、特許文献1に記載されたようなトルクを使用した衝突検出を行う方式では、十分な衝突検出の精度が得られなかった。
本発明の実施の形態に係るサーボモータ制御装置1は、動作対象物を動作させるサーボモータ20と、位置指令によりサーボモータ20を制御するサーボモータ制御部10aとを備えるサーボモータ制御装置1であって、サーボモータ制御部10aは、位置指令に対応した速度次元信号を出力する位置指令速度次元信号出力部110aと、サーボモータ20の速度次元信号を出力するサーボモータ速度次元信号出力部120と、位置指令速度次元信号出力部110aにより出力された速度次元信号と、サーボモータ速度次元信号出力部120により出力された速度次元信号との差分値である速度偏差の絶対値が特定値以上になった場合、衝突として検出する第一衝突検出部130と、位置指令速度次元信号出力部110aにより出力された速度次元信号を加速度次元信号に変換して出力する位置指令加速度次元変換部140aと、サーボモータ速度次元信号出力部120により出力された速度次元信号を加速度次元信号に変換して出力するサーボモータ加速度次元変換部150と、位置指令加速度次元変換部140aにより出力された加速度次元信号と、サーボモータ加速度次元変換部150により出力された加速度次元信号との差分値である加速度偏差の絶対値が特定値以上になった場合、衝突として検出する第二衝突検出部160と、第一衝突検出部130と第二衝突検出部160とを、パラメータ設定部190の検出方法選択設定191により選択する選択部180とを備えることを特徴とする。
このように構成することで、アプリケーションの用途等に対応し、第一衝突検出部130と第二衝突検出部160とを適切に選択して用いることができる。ここで、第一衝突検出部130は、位置偏差やトルクを用いる場合よりも、高精度に衝突検出できる。また、第二衝突検出部160は、サーボモータ20の加減速が速い状況で、より精度高く衝突検出することが可能である。このため、これらをアプリケーションに対応した特定のパラメータにより選択可能とすることで、衝突検出の検出精度を向上させることができる。
また、特許文献1の技術では、加減速の時に衝突を検出することができなかったが、第二衝突検出部160を選択することでこれも可能となる。
【0066】
また、本発明の実施の形態に係るサーボモータ制御装置1は、動作対象物を動作させるサーボモータ20と、速度指令によりサーボモータ20を制御するサーボモータ制御部10bとを備えるサーボモータ制御装置1であって、サーボモータ制御部10bは、速度指令に対応した速度次元信号を出力する速度指令速度次元信号出力部110bと、サーボモータ20の速度次元信号を出力するサーボモータ速度次元信号出力部120と、速度指令速度次元信号出力部110bにより出力された速度次元信号と、サーボモータ速度次元信号出力部120により出力された速度次元信号との差分値である速度偏差の絶対値が特定値以上になった場合、衝突として検出する第一衝突検出部130と、速度指令速度次元信号出力部110bにより出力された速度次元信号を加速度次元信号に変換して出力する速度指令加速度次元変換部140bと、サーボモータ速度次元信号出力部120により出力された速度次元信号を加速度次元信号に変換して出力するサーボモータ加速度次元変換部150と、速度指令加速度次元変換部140bにより出力された加速度次元信号と、サーボモータ加速度次元変換部150により出力された加速度次元信号との差分値である加速度偏差の絶対値が特定値以上になった場合、衝突として検出する第二衝突検出部160と、第一衝突検出部130と第二衝突検出部160とを、パラメータ設定部190の検出方法選択設定191により選択する選択部180とを備えることを特徴とする。
このように構成することで、上述のサーボモータ制御部10aと同様に衝突検出の精度を向上させることができる。また、速度指令を用いると、微分要素を減らすことができるため部を簡素化できる。
また、従来、位置指令だけで衝突検出を行う技術では、速度制御の際の衝突検出ができなかった。これに対して、本実施形態のサーボモータ制御部10bにより、速度制御時にも高精度に衝突検出をすることができる。
【0067】
また、本発明の実施の形態に係るサーボモータ制御部10は、サーボモータ加速度次元変換部150により出力された加速度次元信号の絶対値が特定値以上になった場合、衝突として検出する第三衝突検出部170を更に備え、選択部180は、特定のパラメータにより、第三衝突検出部170も選択することを特徴とする。
このように構成することで、加速度の値である次元信号自体と特定値との比較をし、加減速が緩やかな状況で衝突検出の精度を高めることができる。
【0068】
また、本発明の実施の形態に係るサーボモータ制御装置1は、サーボモータ速度次元信号出力部120は、サーボモータ20の位置を検出する位置検出センサにより検出された位置信号が微分された信号を、速度次元信号として出力することを特徴とする。
このように構成することで、微分器により簡単に速度次元信号を得ることができる。このため、構成を簡略化でき、コストを削減できる。
【0069】
また、本発明の実施の形態に係るサーボモータ制御装置1は、サーボモータ速度次元信号出力部120は、モデルの制御対象への入力信号と制御対象の出力信号とにより速度を推定するオブザーバ300で算出された速度推定信号を、速度次元信号として出力することを特徴とする。
このように構成することで、サーボモータ速度次元信号出力回路120ではなくオブザーバ300を用いる構成においても、衝突検出を行うことが可能となる。
【0070】
また、本発明の実施の形態に係るサーボモータ制御装置1は、位置指令の値に比例ゲインを掛けた信号と、位置検出センサにより検出された位置信号が微分フィルタ要素240により微分された信号との偏差を算出するフィードバックループである第二帰還経路270を備え、サーボモータ速度次元信号出力部120は、第二帰還経路270内に配した微分フィルタ要素240の出力信号を、速度次元信号として出力することを特徴とする。
このように構成することで、フィードバック内の出力をそのまま速度次元信号として使用可能になるため、演算を簡略化して、構成を簡略化し、コストを削減できる。
【0071】
また、本発明の実施の形態に係るサーボモータ制御装置1は、第一衝突検出部130は、速度偏差の代わりに、位置指令値に比例ゲインを掛けた信号と、位置検出センサにより検出された位置信号が微分された信号との差分値を疑似速度偏差として算出し、疑似速度偏差の絶対値が特定値以上になった場合、衝突として検出することを特徴とする。
このように構成することで、伝達関数の演算途中の値である疑似速度偏差を、そのまま速度次元信号として使用可能になるため、演算を簡略化して、構成を簡略化し、コストを削減できる。
【0072】
また、本発明の実施の形態に係るサーボモータ制御装置1は、第二衝突検出部160は、加速度偏差の代わりに、疑似速度偏差を微分した信号を疑似加速度偏差として算出し、疑似加速度偏差の絶対値が特定値以上になった場合、衝突として検出することを特徴とする。
このように構成することで、伝達関数の演算途中の値を微分するだけで、疑似加速度偏差を、そのまま加速度次元信号として使用可能になるため、演算を簡略化して、構成を簡略化し、コストを削減できる。
【0073】
また、本発明の実施の形態に係るサーボモータ制御装置1は、選択部180は、第一衝突検出部130、第二衝突検出部160、及び第三衝突検出部170のいずれを選択するか、外部から設定されたパラメータにより選択することを特徴とする。
このように構成することで、どの衝突検出に適した回路を使用するか、外部から随時設定できる。このため、変更の負荷が少なく、簡単に衝突検出の方式を変更可能となる。
【0074】
また、本発明の実施の形態に係るサーボモータ制御装置1は、選択部180は、第一衝突検出部130の特定値、第二衝突検出部160の特定値、第三衝突検出部170の特定値は、外部から設定されることを特徴とする。
このように構成することで、特定値の設定も外部から随時設定できる。このため、変更負荷が少なく、簡単に衝突検出の閾値となる特定値を変更が可能となる。
【0075】
また、本発明の実施の形態に係るサーボモータ制御装置1は、速度次元信号は、制御系100のモデルとして1/(τs+1)を伝達関数とする要素を含むフィルタ112の信号であることを特徴とする。
このように構成することで、フィルタ112に制御モデルの要素を含ませることができ、位置指令値又は速度指令値を、実際の制御対象に入力したものとして使用することが可能となる。これにより、擬似的に実際の信号に近い信号を得ることができ、従来より高精度に衝突検出ができる。
【0076】
また、本発明の実施の形態に係るサーボモータ制御装置1は、フィルタ112は、カットオフ周波数が外部から設定されることを特徴とする。
このように構成することで、外部からカットオフ周波数を随時設定できるため、変更負荷が少なくなる。また、サーボモータ20に合わせて適宜、カットオフ周波数を簡単に選択できる。なお、上述したように、このカットオフ周波数をサーボゲインの設定値から算出してもよい。
【0077】
また、本発明の実施の形態に係る衝突検出方法は、動作対象物を動作させるサーボモータ20と、位置指令により前記サーボモータ20を制御するサーボモータ制御部10とを備えるサーボモータ制御装置1により実行される衝突検出方法であって、前記位置指令に対応した速度次元信号を出力し、前記サーボモータ20の速度次元信号を出力し、出力された前記位置指令に対応した速度次元信号と、出力された前記サーボモータ20の速度次元信号との差分値である速度偏差を算出し、前記位置指令に対応した加速度次元信号を出力し、前記サーボモータ20の加速度次元信号を出力し、出力された前記位置指令に対応した加速度次元信号と、出力された前記サーボモータ20の加速度次元信号との差分値である加速度偏差を算出し、特定のパラメータにより選択された前記速度偏差及び加速度偏差のいずれかの絶対値が特定値以上になった場合、衝突として検出することを特徴とする
このように構成することで、アプリケーションの用途等に対応し、衝突検出の方式を適切に選択して用いることができる。このため、衝突検出の精度を高めることができる。
【0078】
〔他の実施の形態〕
なお、上述の実施の形態においては、サーボモータ20の衝突検出を行う例について説明した。
しかしながら、本発明の衝突検出方法は、制御系100が不安定になって、振動を起こした等の状態を検出する用途にも使用することができる。これにより、サーボモータ20の制御を外乱等に対して、安定させることが可能となる。
【0079】
また、上述の実施の形態では、第一衝突検出部130、第二衝突検出部160、第三衝突検出部170で、速度偏差の絶対値、加速度偏差の絶対値、加速度次元信号の絶対値を特定値と比較して衝突検出するように記載した。
しかしながら、速度偏差の絶対値や加速度偏差の絶対値や加速度次元信号の絶対値を選択回路180に入力して検出方法選択設定191によりどの絶対値を使用するか選択した後、選択部180後のコンパレータ等により、パラメータ設定部190の特定値設定192で設定された特定値以上になった場合に衝突として検出するような構成であってもよい。
このように構成することで、一つのコンパレータで衝突検出の出力を処理することができ、回路規模を縮小させ、コストを削減できる。
【0080】
なお、上記実施の形態の構成及び動作は例であって、本発明の趣旨を逸脱しない範囲で適宜変更して実行することができることは言うまでもない。