JP5961021B2 - ロボットの制御システム - Google Patents

ロボットの制御システム Download PDF

Info

Publication number
JP5961021B2
JP5961021B2 JP2012079142A JP2012079142A JP5961021B2 JP 5961021 B2 JP5961021 B2 JP 5961021B2 JP 2012079142 A JP2012079142 A JP 2012079142A JP 2012079142 A JP2012079142 A JP 2012079142A JP 5961021 B2 JP5961021 B2 JP 5961021B2
Authority
JP
Japan
Prior art keywords
input
output
rotational position
encoder
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2012079142A
Other languages
English (en)
Other versions
JP2013208663A (ja
Inventor
剛史 上田
剛史 上田
喜二 高橋
喜二 高橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nikon Corp
Denso Wave Inc
Original Assignee
Nikon Corp
Denso Wave Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nikon Corp, Denso Wave Inc filed Critical Nikon Corp
Priority to JP2012079142A priority Critical patent/JP5961021B2/ja
Publication of JP2013208663A publication Critical patent/JP2013208663A/ja
Application granted granted Critical
Publication of JP5961021B2 publication Critical patent/JP5961021B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、多関節型のロボットについて、複数の関節軸を、それぞれモータにより減速機を介して駆動するロボットの制御システムに関する。
例えばロボットの関節を駆動する構成においてアームの回転位置を制御する際に、エンコーダにより検出される回転位置に従いモータを制御した結果、減速機を介したアームの回転位置が実際にどのような値になったかを検出したい場合がある。例えば特許文献1では、モータとアームとがトルクカッタを介して連結されるものにおいて、アームの回転位置をポテンショメータにより検出する構成が開示されている。
特許第4369886号公報
しかしながら、多関節型のロボットの場合には、特許文献1のような制御系が各軸(関節)に応じて複数設けられることになり、ロボットの制御装置は、入力側であるモータの回転位置データと、出力側であるアームの回転位置データとを複数組取得する必要がある。ロボットの制御においては、各軸の回転位置データを、極力時間差が無い状態で取得する必要があるため、複数組のデータをどのようなタイミングで取得するかが問題となる。
本発明は、上記事情に鑑みてなされたもので、その目的は、ロボットの各軸について入力側,出力側の回転位置を検出する構成において、それぞれの回転位置データを効率的に取得可能なロボットの制御システムを提供することにある。
請求項1記載のロボットの制御システムによれば、ロボットの複数の関節軸それぞれについて、モータの回転位置を検出する入力エンコーダと、減速機を介したアームの回転位置を検出する出力エンコーダとを備え、制御装置は、各関節軸について入力エンコーダ及び出力エンコーダにより検出される各回転位置データを取得して各モータを制御する。当該制御を行うため、制御装置は、一定周期毎に全ての軸についての入力回転位置データを取得すると共に、1つの軸についての入力回転位置データ及び出力回転位置データの組、前記周期毎に1軸ずつ、順次軸を切り替えて取得する。
すなわち、各軸の入力回転位置データは、ロボットの手先の位置を制御するために必要であるから一定周期毎に全て取得する。そして、1つの軸において、入力回転位置に対して出力回転位置に誤差が発生しているとすれば、その誤差を補正する必要がある。そこで、補正を行うための入力回転位置データ及び出力回転位置データは、一定周期毎に1つの軸だけ取得し、軸を順次切り替えて取得すれば、データの転送サイズを抑制しながら各軸の出力回転位置を補正できる。
また、各軸の回転位置を補正するためのデータは、同じ時点で取得されたデータを使用するのが好ましい。したがって、同じ周期において全ての軸の入力回転位置データを取得するとしても、補正に用いるデータについては、別途各軸について入力回転位置及び出力回転位置の組として取得することで、補正を高い精度で行うことができる。
請求項2記載のロボットの制御システムによれば、出力回転位置データは、出力エンコーダから一旦入力エンコーダに転送され、入力エンコーダを介して入力回転位置データと共に制御装置に転送される。すなわち、各軸の入力回転位置データ及び出力回転位置データを制御装置に同時に転送するには、これらを統合して転送すると効率が良い。そして、ロボットのアームは減速機を介して駆動されるので、入力回転位置データに対して出力回転位置データの分解能は低く、データサイズが小さくなる。したがって、出力回転位置データを、一旦入力エンコーダに転送してから制御装置に転送すれば、出力エンコーダと入力エンコーダとの間を接続するデータバス幅が小さくなる。
請求項3記載のロボットの制御システムによれば、入力エンコーダに、入力回転位置データを制御装置に転送するための入力データレジスタと、入力回転位置データを、出力回転位置データと共に制御装置に転送するための入出力データレジスタとを備える。このように構成すれば、一定周期毎に、全ての軸の一部として制御装置に転送される入力回転位置データと、複数周期に1回だけ、1つの軸の入力回転位置及び出力回転位置の組で転送されるデータとを効率的に転送できる。また、制御装置は、各データを迅速に取得して処理できる。
第1実施例であり、エンコーダの検出部におけるデータ処理部の構成を中心に示す機能ブロック図 入力EC検出部と、出力EC検出部との間における回転位置データの転送処理を示すフローチャート 回転位置データPin(t),Pout(t)が変化する状態を示すタイミングチャート モータ制御用コントローラの内部構成,及び3組の入力EC検出部と、前記コントローラとの接続状態を示す機能ブロック図 制御用CPUが3軸ロボットを制御する場合の処理内容を示すフローチャート 図5の処理に対応した回転位置データの転送状態を示すタイミングチャート 図8の縦断側面図 ロボットの関節軸の1つをモータにより駆動する構成を示す斜視図 第2実施例を示す図7相当図 回転盤の縦断側面図 出力角度θoutの計算を説明する図 出力角度θoutの計算処理を示すフローチャート 第3実施例を示す図4相当図
(第1実施例)
以下、第1実施例について図1ないし図8を参照して説明する。図8は、ロボットの関節軸の1つをモータにより駆動する構成を示す斜視図であり、図7はその縦断側面図(但し、若干簡略化している)である。モータ1は、例えばインナーロータタイプの永久磁石型同期モータであり、円筒形をなすベース2の内部に、回転軸3の先端が図中の上方を向いた状態で配置されている。尚、モータ1のステータ4は、ステータコア及び巻線で構成され(図示せず)、その上端面がベース2の天板裏に接するように固定されている。ロータは、回転軸3とロータコア及びステータ側の巻線に対向するように配置される永久磁石とで構成されるが(何れも図示せず)、図7では、回転軸3がステータ4に軸受6により回転自在に支持されているように示している。
回転軸3の後端部は、ステータ4の後端面より下方に突出しており、先端部は、ベース2の天板に形成された貫通穴7を介して外部に突出している。そして、上記先端部は、減速機8の入力部8Iに連結されており、出力部8Oには、ロボットのアーム9(制御対象物,負荷)が連結されている。尚、減速機8の詳細構成についても図示を省略している。回転軸3の後端面には、光学式のロータリエンコーダ(以下、入力エンコーダ(入力EC)と称す)10を構成する回転盤11が取り付けられている。
回転盤11の下方には、投光素子及び受光素子,カウンタや(図示せず)、後述するレジスタ等からなるデータ処理部を含む入力 EC検出部12が、カップ状をなしてステータ4の後端面に固定されているエンコーダ支持部材13の底面部に取り付けられている。すなわち、入力EC検出部12は、上方の回転盤11のスリット(図示せず)に向けて投光し、反射した光を受光することでモータ1の回転位置を検出する。
アーム9の上面側には、モータ1の回転軸3(入力軸)と同軸となるようにアーム回転軸14(出力軸)の後端部が取り付けられている。ベース2の天板における図6中右端には、上方に伸びる垂直部15Vと、垂直部15Vの先端にアーム9と平行となるように配置される水平部15Hからなる軸支持部材15が配置されている。アーム回転軸14は水平部15Hを貫通しており、水平部15Hに配置されている軸受16により回転自在に支持されている。
アーム回転軸14の先端面には、光学式のエンコーダ17(以下、出力エンコーダ(出力EC)と称す)を構成する回転盤18が取り付けられている。出力エンコーダ17は、入力エンコーダ10と同様の構成であり、回転盤18の上方には、投光素子及び受光素子,カウンタ等を含む出力EC検出部19が、カップを伏せた形状で水平部15Hの上面に固定されているエンコーダ支持部材20の天板裏に取り付けられている。すなわち、出力EC検出部19は、下方の回転盤18のスリットに向けて投光し、反射した光を受光することでアーム9の回転位置を検出する。
入力エンコーダ10の入力EC検出部12は、出力エンコーダ17の出力EC検出部19と中継バス21を介して接続されており、出力EC検出部19において検出された回転位置データは入力EC検出部12に転送される。また、出力EC検出部19は、中継バス21を介して入力EC検出部12にデータラッチ用のエッジパルス信号を送信する。そして、入力EC検出部12は、上記回転位置データと自身が検出した回転位置データとを統合すると、データバス22を介してモータ制御用コントローラ23(図1,図3参照)に出力する。尚、中継バス21及びデータバス22は、ベース2に形成されている貫通孔24を介してベース2の内外に導出される。
図1は、検出部12及び19におけるデータ処理部の構成を中心に示す機能ブロック図である。入力EC検出部12は、受光部より出力されるパルス数をカウントするカウンタのデータを保持する、例えば20ビットの入力EC値保持レジスタ31(入力データラッチ)を備えている。同様に、出力EC検出部19は、カウンタのデータを保持する出力EC値保持レジスタ32(出力データラッチ)を備えている。アーム9の回転位置データは例えば9ビットであるが(減速機8を介しているため入力側よりサイズが小さい)、アーム9の回転数が1回転以上となる場合に対応して、カウンタがオーバーフローした回数を示す多回転データ(例えば2ビット)も格納される。但し、本実施例では多回転データについては取り扱わない。
出力EC検出部19において、データ変化検出部33を構成する出力EC値レジスタ監視部34は、出力EC値保持レジスタ32のLSB(Least Significant Bit)が変化したか否かを監視し、変化があると(すなわち、カウンタ値がインクリメントすると)出力EC値保持レジスタ32にエッジパルスを出力すると共に、エッジパルス出力部35(ラッチ信号出力部)にパルス出力命令をする。すると、エッジパルス出力部35は、入力検出部12にラッチ用のエッジパルス(ラッチ信号)を送信する。
データ変化時出力値保持レジスタ36は、エッジパルスの立ち上がりエッジで、EC値保持レジスタ32にラッチされている9ビットの回転位置データPout(t)を格納して保持する。保持された回転位置データPout(t)は、保持データ出力部37を介して入力EC検出部12に送信される。すなわち、エッジパルス出力部35及び保持データ出力部37は、それぞれエッジパルス及び回転位置データPout(t)を入力EC検出部12に送信するためのドライバである。
入力EC検出部12側では、エッジパルス出力部35より送信されたエッジパルスを、データラッチ部38のエッジパルス入力部39で受信して、入力値保持レジスタ31に出力する。これにより、データ変化時出力値保持レジスタ36における回転位置データPout(t)と、入力値保持レジスタ31における回転位置データPin(t)とは、同じエッジパルスの立ち上がりエッジによってラッチされることになる。
上記回転位置データPin(t)は、前述したデータバス22の一部をなす入力値データバス40を介してモータ制御用コントローラ23(制御装置)に出力されると共に、データラッチ部38の入出力値保持レジスタ41(入出力データラッチ)に転送される。また、出力EC検出部19の保持データ出力部37より送信された回転位置データPout(t)も、入出力値保持レジスタ41に転送される。そして、入出力値保持レジスタ41に格納された合計29ビットの回転位置データPin(t),Pout(t)は、データバス22の一部をなす入出力値データバス42を介してモータ制御用コントローラ23に出力される。
尚、データバス40及び42のサイズは実際には何れも32ビットであり、送信に使用しないデータのビットはプルアップ若しくはプルダウンされている。また、以降では、20ビットの回転位置データPin(t)を入力EC値と、29ビットの回転位置データPin(t),Pout(t)を入出力EC値と称する。
図4は、モータ制御用コントローラ(以下、単にコントローラと称す)23の内部構成を機能ブロック図で示すと共に、多軸構成,例えば3軸ロボットの各軸に適用することを想定し、図1に示す構成が3組ある場合の入力EC検出部12(1〜3)と、モータ制御用コントローラ23との接続状態を示すものである。符号に付した(1)〜(3)はロボットの第1軸〜第3軸に対応する。両者の間は、図示しない通信インターフェイスを介して接続されている。
コントローラ23は、制御用CPU43を中心に、図示しないROM,RAMやその他の周辺回路を備えるマイクロコンピュータで構成されている。入力EC値保持レジスタ44(1〜3)は、入力EC検出部12(1〜3)よりそれぞれ送信される20ビットの入力EC値(1〜3)が通信インターフェイスを介して書き込まれるレジスタである。また、入出力EC値保持レジスタ45(1〜3)は、入力EC検出部12(1〜3)よりそれぞれ送信される29ビットの入出力EC値が入出力EC値送信切替器46を介して書き込まれるレジスタである。また、通信インターフェイスや上記入出力EC値送信切替器46は、例えばFPGA(Field Programmable Gate Array)等により構成されている。
尚、入力EC検出部12(1〜3)に対するデータ転送要求は、コントローラ23が出力する。図中の「制御用データ要求」は3軸分の入力EC値の転送要求であり、「補正用データ要求」は、1軸分の入出力EC値の転送要求である。制御用CPU43は例えば32ビット構成であり、入力EC値保持レジスタ44,入出力EC値保持レジスタ45に格納された回転位置データを読み出して、後述するようにロボットの制御を行う。
次に、本実施例の作用について図2,図3,図5,図6を参照して説明する。図2は、図1に示す入力EC検出部12と、出力EC検出部19との間における回転位置データの転送処理を示すフローチャートである。制御CPU43が後述する制御を実行した結果、モータ1を駆動してロボットのアーム9を移動させる(S1)。そして、出力EC値監視部34が、出力EC値保持レジスタ32のLSBが変化した(Pout(t−1)→Pout(t))ことを検出すると(S2:YES)、エッジパルス出力部35がエッジパルスを出力して回転位置データPout(t)を出力EC値保持レジスタ32にラッチさせる(S3)。
上記エッジパルスは入力EC検出部12に送信され(S4)、エッジパルス入力部39を介して入力EC値保持レジスタ31に出力されて、回転位置データPin(t)をラッチさせる(S5)。また、出力EC検出部19の保持データ出力部37より回転位置データPout(t)がデータラッチ部38に送信されて(S6)、回転位置データPin(t),Pout(t)が入出力値保持レジスタ41に格納される(S7)。すると、入力EC値保持レジスタ31に格納された回転位置データPin(t)と、入出力値保持レジスタ41に格納された、回転位置データPin(t),Pout(t)とが、それぞれデータバス40,42を介してモータ制御用コントローラ23に送信される(S8)。
図3は、上述した処理において、回転位置データPin(t),Pout(t)が変化する状態を示すタイミングチャートである。出力エンコーダ17において、回転位置データPout(t)が変化するとエッジパルスが発生し((a),(b)参照)、その時点の回転位置データPout(n)及び入力エンコーダ10側の回転位置データPin(n)がラッチされる((e),(f)参照)。また、図3(c)は、出力エンコーダ17より送信された回転位置データPout(t)を入力エンコーダ10が受信した際の遅延を示している。これにより、ラッチされた回転位置データPinL,PoutLは、同じタイミングで検出されたデータとなる。
次に、図5は、モータ制御用コントローラ23の制御用CPU43が3軸ロボットを制御する場合の処理内容を示すフローチャートである。尚、以下では、回転位置データPin(n)を「入力EC値」と、回転位置データPout(t)を「出力EC値」と称する。先ず、ロボットの手先の目標位置より各軸モータの動作パターンを決定すると(S11)、制御用CPU43は、入力EC値保持レジスタ44より3軸分の入力EC値(全軸入力EC値)を3回のリードサイクルを実行して読み出す(S12)。
続いて、入出力EC値保持レジスタ45(1)より第1軸の入出力EC値を読み出すと(S13)、ステップS12で取得した全軸入力EC値に基づいて各軸モータ1(1〜3)を駆動するための電流制御,速度制御を行う。ここでの電流制御,速度制御とは、モータ1をインバータ等の駆動回路により駆動する際に、速度指令と実際の速度との偏差に基づきPI(比例積分)制御等を行うことである。
続くステップS15〜S17は、ステップS12〜S14と同様の処理パターンとなるが、ステップS16では、ステップS13での第1軸に替えて第2軸の入出力EC値を読み出す。また、続くステップS18〜S20についても同様であり、ステップS19では、ステップS16での第2軸に替えて第3軸の入出力EC値を読み出す。
次のステップS21では、ステップS13,S16,S19で取得した第1〜第3軸の入出力EC値を用いて、各軸について入力EC値と出力EC値との差(ズレ)を計算し、全ての軸の入力EC値に基づいてロボットの手先の位置制御を行う(S22)。またこのとき、ステップS21で計算したズレの値に応じて、上記の位置制御を補正する(S23)。そして、ロボットの手先が目標位置に到達すれば(S24:YES)動作を終了し、目標位置に到達しなければ(NO)ステップS12に戻り、以上の処理を繰り返す。
ここで、図5に示す処理において、コントローラ23が入力EC検出部12よりデータを取得して、入力EC値保持レジスタ44及び入出力EC値保持レジスタ45に格納するまでの処理は上述した通信インターフェイスが一定の周期で実行している。そして、レジスタ44,45に各データが格納されると、例えば通信インターフェイスが割り込みを発生させることで、制御用CPU43がステップS12以降の処理を開始し、入力EC値保持レジスタ44にアクセスする。
以上のように処理が実行される結果、各軸の入力EC値及び入出力EC値は、図6に示すようにコントローラ23に転送される。すなわち、全軸の入力EC値は送信周期毎に転送され、各軸の入出力EC値は、それぞれ異なる送信周期で順次転送される。
以上のように本実施例によれば、ロボットの関節軸に、モータ1の回転位置を検出する入力エンコーダ10と、減速機8を介したアーム9の回転位置を検出する出力エンコーダ17とを備え、コントローラ23は、入力エンコーダ10及び出力エンコーダ17により検出される各回転位置データ(EC値)を取得してモータ1を制御する。そして、入力エンコーダ10に、入力EC値をラッチする入力EC値保持レジスタ31を配置し、出力エンコーダ17に、出力EC値をラッチする出力EC値保持レジスタ32と、出力EC値が変化する毎に、レジスタ31及び32にエッジパルスを出力するエッジパルス出力部35とを備える。
すなわち、モータ1側の入力エンコーダ10とアーム9側の出力エンコーダ17とは、構造上ある程度の距離を置いて配置され、コントローラ23がアーム9の回転位置を補正するためには、同じ時点の入力EC値と出力EC値とを取得する必要がある。アーム9は減速機8を介して駆動されるので、入力EC値に対して出力EC値の分解能は低い。したがって、エッジパルス出力部35を出力エンコーダ17に配置し、出力EC値が変化する毎にレジスタ31及び32にエッジパルスを出力すれば、距離が離れている入力エンコーダ10においても、上記の変化と同じタイミングで入力EC値をラッチして保持することができる。
また、コントローラ23は、複数の軸について入力エンコーダ10(1〜3)及び出力エンコーダ17(1〜3)により検出される各EC値を取得して各モータ1(1〜3)を制御する。当該制御を行うため、コントローラ23は、一定周期毎に、全ての軸の入力EC値を取得すると共に、1つの軸の入力EC値及び出力EC値を順次切り替えて取得する。すなわち、各軸の入力EC値は、ロボットの手先の位置を制御するために必要であるから一定周期毎に全て取得する。そして、1つの軸において、入力EC値に対して減速機8を介して得られる出力EC値に誤差が発生しているとすれば、その誤差を補正する必要がある。そこで、補正を行うための入力EC値及び出力EC値は、一定周期毎に1つの軸だけ取得して順次切り替えることで、データの転送サイズを抑制しながら各軸の出力回転位置を補正できる。
また、回転位置を補正するためのデータは、同じ時点で取得されたデータを使用するのが好ましい。したがって、同じ周期において全ての軸の入力EC値を取得するとしても、補正に用いるデータについては、別途各軸について入力EC値及び出力EC値の組として取得することで、補正を高い精度で行うことができる。
そして、出力EC値を、出力エンコーダ17から一旦入力エンコーダ10に転送し、入力エンコーダ10を介してコントローラ23に転送するようにした。すなわち、各軸の入力EC値及び出力EC値については、両者を統合して同時にコントローラ23に転送すると効率が良い。そして、上述したように出力EC値の分解能は低くデータサイズが小さいので、出力EC値を入力エンコーダ10に転送してからコントローラ23に転送すれば、出力エンコーダ17と入力エンコーダ10との間を接続する中継バス21のバス幅が小さくなる。
この場合、入力エンコーダ10に、入力EC値をコントローラ23に転送するための入力値保持レジスタ31と、入力EC値を、出力EC値と共に制御装置に転送するための入出力値保持レジスタ41とを備える。したがって、一定周期毎に、全ての軸の一部としてコントローラ23に転送される入力EC値と、複数周期に1回だけ、1つの軸の入力EC値及び出力EC値の組で転送されるデータとを効率的に転送できる。また、コントローラ23は、各データを迅速に取得して処理できる。
(第2実施例)
図9ないし図12は第2実施例であり、第1実施例と同一部分には同一符号を付して説明を省略し、以下異なる部分について説明する。第2実施例では、第1実施例の入力エンコーダ10及び出力エンコーダ17に相当する構成を、モータ回転軸の後端側に一体化して配置したものを示す。図9は、図7の上下を反転した状態(モータの後端側が上方)で示している。モータ51は、モータ1と同様にインナーロータタイプの永久磁石型同期モータであり、ステータ52と、ステータ52の内周側に配置された軸受53により回転自在に支持されている回転軸(ロータ)54とを備えている。そして、モータ51の後端側には、エンコーダ収容部55が配置されている。
エンコーダ収容部55は、ステータ52の後端に取り付けられた円環状の側壁56と、側壁56の途中部位に挿入されるように固定されている円板状の支持部材57(支持部材)とを備えている。支持部材57は、その中心部に貫通穴57aが形成されており、所謂ドーナツ状となっている。回転軸54(入力軸)の後端部は、支持部材57の貫通穴57aに挿通されており、その後端にはエンコーダを構成する回転盤(回転板)58が固定されている。支持部材57の上面側には、回転盤58と対向するように入力EC検出部12が配置されている。すなわち、回転盤58と入力EC検出部12とが、第1実施例の入力エンコーダ10に対応する入力エンコーダ部59を構成している。
回転軸54は中空の部材で構成されており、その先端は、減速機60を構成する入力部60Iの中空部内周側に固定されている、そして、減速機60の出力部60Oにはアーム9が連結されている。また、回転軸54の中空部分には、後端がアーム9に固定されている出力軸61が挿通されている。回転軸54の内周側には軸受62が配置されており、出力軸61は回転自在に支持されている。
回転盤58には、回転軸54の中空部と同径の挿通穴58aが形成されており、出力軸61の先端は、挿通穴58aを経由してエンコーダ収容部55内部の空間に突出している。そして、その先端には、回転軸54の中空部よりも径大である回転盤63が固定されている。回転盤63の下面側には、回転盤58と対向するように出力EC検出部19が配置されている。すなわち、回転盤58と出力EC検出部19とが、第1実施例の出力エンコーダ17に対応する出力エンコーダ部64を構成している。
第2実施例では、回転位置を検出するため、回転盤58の下面側と上面側との双方から投光が行われる。したがって、回転盤58には、第1及び第2の2つの面(例えば両面や、上面と側面など)に位置検出用のパターン(例えばスリット)が形成されている。図10は、回転盤58の断面構造(一部分)を示している。回転盤58は5層構造となっており、遮光板58aの上下にガラス板58b,58cが配置され、ガラス板58b,58cの上下にスリット膜58d,58eが配置されている。そして、スリットは、スリット膜58d,58eの双方に形成されている。
尚、図示はしないが、回転盤63に配置されている出力EC検出部19に対する電源の供給,及び入力EC検出部12とのエッジパルス及び回転位置データの転送は有線接続で行われる。アーム9は、多回転するとしても高々3回転程度であるため、その分だけ接続配線長に余裕を持たせれば良い。そして、エンコーダ収容部55の上部には、開口部を覆うカバー65が取り付けられている。
次に、第2実施例の作用について図11及び図12を参照して説明する。図11は、減速機60及びアーム9を削除して示している。モータ51を駆動してアーム9を回転させると、回転盤58は、回転軸54の回転に伴い回転するので、入力エンコーダ部59は、第1実施例の入力エンコーダ10と全く同様にモータの回転位置を検出できる。一方、回転盤63は、アーム9−出力軸61の回転に伴って回転する。ここで、回転盤58の回転角度をθrot1,回転盤63が回転盤58と同じ方向に回転するとして、その回転角度をθrot2とすると、入力EC部12で検出される角度θ1はθrot1に等しい。そして、出力EC検出部19において検出される角度θ2は、
θ2=θrot1−θrot2
となる。
したがって、モータ51の回転角度θinは、
θin=θ1=θrot1
であり、アーム9の回転角度θoutは、
θout=θ1−θ2=θrot1−(θrot1−θrot2)=θrot2
として求めることができる。
具体的には、例えば制御用CPU43がステップS13,S16,S19で入出力EC値を読み込んだ際に、図12に示す処理を行って回転角度θoutを計算する。先ず、入力EC値Pin(t)より、回転角度θ1を次式により計算する(S31)。但し、aは減速機8の減速比である。
θ1=360×Pin(t)/(220×a) [deg]
次に、出力EC値Pout(t)より、回転角度θ2を次式により計算する(S32)。
θ2=360×Pout(t)/29 [deg]
そして、回転角度θ1より回転角度θ2を減じることで回転角度θoutを求める(S33)。尚、以上の処理をハードロジックで行っても良い。
以上のように第2実施例によれば、モータ51の回転軸54を中空状に形成し、出力軸61を、その後端をアーム9に直結し、回転軸54の中空部に挿通して、先端を回転軸54の後端側に導出する。そして、モータ51の回転位置と、減速機60を介したアーム9の回転位置とを、それぞれ光学式の入力エンコーダ部59,出力エンコーダ部64で検出するため、これらが使用する回転盤58を共通化して回転軸54の後端側に固定する。そして、出力エンコーダ部64の検出部19を出力軸61の先端側に取り付け、入力エンコーダ部59の検出部10を、上記検出部19に対して、回転盤58を挟んで逆側に位置する支持部材57に取り付けるようにした。尚、例えば入力エンコーダ部59の検出部10については、固定部としての側壁56に取り付けるようにしてもよい。
このように構成すれば、モータ51の回転位置は、入力エンコーダ部59の検出部10の検出結果に基づいて通常通り取得できる。一方、アーム9の回転位置については、2つの検出部10,19からのデータを読み込んで処理するコントローラ23において、入力エンコーダ部59より検出された回転位置と出力エンコーダ部64より検出された回転位置との差によって得ることができる。すなわち、入力,出力エンコーダ部59,64は、同じ回転盤58の回転に基づいて回転位置を検出するので、軸心のズレに伴う検出誤差が発生し難くなる。そして、これらのエンコーダ部59,64がモータ51の後端側に一括して配置されるので配置スペースを極力削減でき、2つのエンコーダを用いるエンコーダシステム,及びそのエンコーダシステムと負荷とを組み合わせた構成を小型にすることができる。
つまり、第2実施例のように、中空状に形成された回転軸54を用いることによってエンコーダ部59,64をモータ51の後端側に一括して配置可能となり、出力エンコーダ部64を減速機60とアーム9との間に配置する必要が無くなる。
そして、入力側エンコーダ59の検出部10を、出力側エンコーダ64の検出部19に対して、回転盤58を挟んで逆側に位置する固定部に取り付けるので、2つの光学式エンコーダ59,64のそれぞれが回転位置を検出するために出力した光信号が、互いの検出部19,10によって受光される可能性が無くなり、誤検出を防止することができる。また、回転盤58板の一方の面に出力側エンコーダ59用のスリットを設け、他方の面に入力側エンコーダ64用のスリットを設けたので、それぞれの検出部10,19が、回転位置検出を行うための反射光を、互いに干渉しない状態で受光することが可能となる。
(第3実施例)
図13は第3実施例であり、第1実施例と異なる部分のみ説明する。第3実施例は、入力EC検出部12’(1〜3)及び出力EC検出部19(1〜3)とコントローラ23との間に、データ転送処理部71を配置した構成を示している。データ転送処理部71は、入力EC検出部12が備えていた入出力EC値保持レジスタ41と、通信インターフェイスの機能を備えたものである。したがって、出力EC検出部19は、9ビットの出力EC値をデータ転送処理部71に直接出力する。
そして、データ転送処理部71は、コントローラ23側の通信インターフェイスからの要求に応じて、20ビットの入力EC値及び29ビットの入出力EC値をコントローラ23側に出力する。以上のように構成される第3実施例による場合も、第1実施例と同様の効果が得られる。
本発明は上記した、または図面に記載した実施例にのみ限定されるものではなく、以下のような変形又は拡張が可能である。
入力エンコーダ及び出力エンコーダのビット数は、個別の設計に応じて適宜変更すれば良い。
図4に示す3軸分の入力EC検出部12とコントローラ23との間で行うデータ転送方式についても適宜変更して良い。例えば、両者の間を2本の32ビットバスで接続し、3軸分の入力EC値(20ビット)と、3軸分の入出力EC値(29ビット)とを選択して、1回の通信で1軸分のデータだけをコントローラ23側に転送するような通信インターフェイスを用いても良い。
また、バスサイズは32ビットに限らず、それぞれ必要最小限のサイズとして20ビット,29ビットとしても良い。或いは、入力EC値と入出力EC値とを共通の32ビット(若しくは29ビット)バスで転送しても良い。
第2実施例において、減速機60の構成によっては、回転軸54と出力軸61とが互いに逆方向に回転しても良い。
4軸以上のロボットに適用しても良い。
1はモータ、8は減速機、9はアーム(負荷)、10は入力エンコーダ、12は入力EC検出部、17は出力エンコーダ、19は出力EC検出部、21は中継バス(データバス)、23はモータ制御用コントローラ(制御装置)、31は入力EC値保持レジスタ(入力データラッチ)、32は出力EC値保持レジスタ(出力データラッチ)、35はエッジパルス出力部(ラッチ信号出力部)、41は入出力値保持レジスタ(入出力データラッチ)、51はモータ、54は回転軸(入力軸)、57は支持部材(固定部)、58は回転盤、59は入力エンコーダ部、60は減速機、61は出力軸、64は出力エンコーダ部を示す。

Claims (3)

  1. 複数の関節軸を有し前記各関節軸において、モータにより減速機を介して制御対象物を駆動するロボットの制御システムであって
    前記各関節軸のモータの回転位置(入力回転位置)を検出する複数の入力エンコーダと、
    前記各関節軸の制御対象物の回転位置(出力回転位置)を検出する複数の出力エンコーダと、
    前記各関節軸について、前記入力エンコーダ及び前記出力エンコーダにより検出される各回転位置データを取得して、前記モータを制御する制御装置とを備え、
    前記制御装置は、一定周期毎に全ての軸についての入力回転位置データを取得すると共に、1つの軸についての入力回転位置データ及び出力回転位置データの組を、前記周期毎に1軸ずつ、順次軸を切り替えて取得することを特徴とするロボットの制御システム。
  2. 前記出力回転位置データは、前記出力エンコーダから前記入力エンコーダに転送され、前記入力エンコーダを介して前記入力回転位置データと共に前記制御装置に転送されることを特徴とする請求項1記載のロボットの制御システム。
  3. 前記入力エンコーダは、前記入力回転位置データを前記制御装置に転送するための入力データレジスタと、
    前記入力回転位置データを、前記出力回転位置データと共に前記制御装置に転送するための入出力データレジスタとを備えることを特徴とする請求項2記載のロボットの制御システム。
JP2012079142A 2012-03-30 2012-03-30 ロボットの制御システム Active JP5961021B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012079142A JP5961021B2 (ja) 2012-03-30 2012-03-30 ロボットの制御システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012079142A JP5961021B2 (ja) 2012-03-30 2012-03-30 ロボットの制御システム

Publications (2)

Publication Number Publication Date
JP2013208663A JP2013208663A (ja) 2013-10-10
JP5961021B2 true JP5961021B2 (ja) 2016-08-02

Family

ID=49527048

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012079142A Active JP5961021B2 (ja) 2012-03-30 2012-03-30 ロボットの制御システム

Country Status (1)

Country Link
JP (1) JP5961021B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9815202B2 (en) * 2014-07-09 2017-11-14 Canon Kabushiki Kaisha Control method for robot apparatus, computer readable recording medium, and robot apparatus
JP6576824B2 (ja) * 2015-12-25 2019-09-18 株式会社ダイヘン ロボット制御装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08233607A (ja) * 1995-02-27 1996-09-13 Tamagawa Seiki Co Ltd エンコーダ信号出力方法
JP3186490B2 (ja) * 1995-02-28 2001-07-11 松下電器産業株式会社 多重伝送方式エンコーダ
JP2002044758A (ja) * 2000-07-31 2002-02-08 Yaskawa Electric Corp 制御システムおよび制御方法
JP2009025879A (ja) * 2007-07-17 2009-02-05 Denso Wave Inc ロボット装置の通信システム
JP2010228028A (ja) * 2009-03-26 2010-10-14 Nec Corp ロボットアーム、ロボットアームの接触検知方法、及び、ロボットアームを備えた装置
JP2011134050A (ja) * 2009-12-24 2011-07-07 Nikon Corp 駆動装置、駆動方法、及び装置

Also Published As

Publication number Publication date
JP2013208663A (ja) 2013-10-10

Similar Documents

Publication Publication Date Title
JP5943676B2 (ja) ロボットの制御システム及びエンコーダシステム
JP5840995B2 (ja) エンコーダシステム
ES2746564T3 (es) Procedimiento de configuración de código de identificación de motor inteligente y aparato de control de varios ejes que utiliza el mismo
JP6460697B2 (ja) 角度検出方法、角度検出装置、およびロボット装置
JP6191692B2 (ja) ロボットおよびロボットの関節機構
US11413759B2 (en) Robot apparatus, control method for controlling the same, non-transitory computer-readable recording medium, manufacturing system, and method for manufacturing an article
CN104669299B (zh) 一种具有机械臂的力觉操作器
JP4824080B2 (ja) 同期制御システム
JP5361039B2 (ja) モータ装置
JP5961021B2 (ja) ロボットの制御システム
JP2016194823A (ja) 制御装置
JP2013037385A (ja) 同期制御装置
CN106611592B (zh) 一种基于柔性显示屏的显示方法、装置和系统
WO1990008016A1 (fr) Correction du positionnement de robots
US20190184580A1 (en) Robot hand and control method for the robot hand
JP2013039635A (ja) ロボット制御システムおよびロボット制御方法
JP2004264038A (ja) エンコーダ信号処理装置およびサーボドライバ
JP2010120110A (ja) 減速機の伝達誤差補正量算出方法およびロボット制御装置
JP2015033277A (ja) サーボ装置、及びサーボ装置の制御方法
US11498218B2 (en) Robot
JP2019030923A (ja) ロボットアーム、ロボット装置、ロボットシステム
WO2012124145A1 (ja) 演算ユニット、支援装置、支援プログラム、支援プログラムを格納した記憶媒体、および、支援装置における動作方法
JP2018194509A (ja) 回転軸の角度較正方法および角度較正プログラム
JPH10206445A (ja) 駆動軸の回転速度計測方法及び同装置
JP2022086241A (ja) モーター制御用角度センサー、モーター制御システムおよびモーター制御用角度センサーの制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151105

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160118

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160531

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160624

R150 Certificate of patent or registration of utility model

Ref document number: 5961021

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250