(57)【要約】【課題】ロボットにおいて、制御装置と複数の関節制御部とハンド制御部とを接続する信号線の数を少なくする。【解決手段】制御装置２、各関節を制御するドライバ２２〜２７をシリアル伝送路２８に対して直列に接続すると共に、各ドライバ２２〜２７のうちの最終段のドライバ２７に、ハンドのドライバに接続されるＩ／Ｏモジュール３７を接続し、制御装置２から、シリアル伝送路２８に、各ドライバ２２〜２７およびハンドのドライバに対する制御信号をシリアルに流したとき、Ｉ／Ｏモジュール３７が接続されたドライバ２７は、シリアルに流された制御信号のうちから自身に対する制御信号およびハンドのドライバに対する制御信号を受信し、且つ、ハンドのドライバに対する制御信号をＩ／Ｏモジュール３７に送信する。【選択図】図１
2009025879.tif 000002
【特許請求の範囲】
【請求項１】
制御装置から、各関節の駆動源を制御する関節制御部およびハンドの駆動源を制御するハンド制御部に対し、制御信号を送信してロボットの動作を制御するようにしたロボット装置において、
前記制御装置、前記各関節制御部をシリアル伝送路に接続すると共に、前記各関節制御部のうちのいずれかの関節制御部に、前記ハンド制御部に接続される入出力部を接続し、
前記制御装置から、前記シリアル伝送路に、前記各関節制御部および前記ハンド制御部に対する前記制御信号をシリアルに流し、前記入出力部が接続された前記関節制御部を除く他の関節制御部は、前記シリアルに流された前記制御信号のうちから自身に対する制御信号を受信し、前記入出力部が接続された前記関節制御部は、前記シリアルに流された前記制御信号のうちから自身に対する制御信号および前記ハンド制御部に対する制御信号を受信し、且つ、前記ハンド制御部に対する制御信号を前記入出力部に送信することを特徴とするロボット装置の通信システム。
【請求項２】
前記入出力部が接続された前記関節制御部を除く他の関節制御部は、それぞれが制御する前記駆動源のフィードバック信号を前記シリアル伝送路を介して前記制御装置に送信し、
前記入出力部が接続された前記関節制御部は、自身が制御する前記駆動源のフィードバック信号を前記シリアル伝送路を介して前記制御装置に送信すると共に、前記入出力部に与えられた前記ハンド制御部からのフィードバック信号を前記シリアル伝送路を介して前記制御装置に送信することを特徴とする請求項１記載のロボット装置の通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置から各関節の駆動源の制御部に制御信号をシリアル伝送路を介して送信するロボット装置の通信システムに関する。
【背景技術】
【０００２】
ロボット本体には、各関節の駆動源としてサーボモータ、各サーボモータを駆動するためのドライバ（関節制御部）が設けられている。各関節制御部は、ロボット本体外の制御装置に信号線を介して接続されており、制御装置から各関節制御部に対し、制御信号が与えられる。
このようなロボット本体において、各関節制御部と制御装置とを個別に信号線で接続すると、ロボット本体内を通る信号線の数がやたら増加するので、制御装置と各関節制御部とは、シリアル伝送路で接続し、制御部からアドレス（ＩＤ）を指定して各関節制御部に制御信号を送信するようにしている。
【０００３】
ロボット装置ではないが、特許文献１には、数値制御される工作機械において、データを送信するＮＣユニットと、複数のサーボモータおよび主軸モータを制御する複数の制御部と、ＮＣユニットとの間でデータの入出力を行うリモートＩ／Ｏと、操作ボードとをシリアル伝送路で接続することが開示されている。
【特許文献１】特開２００１−２２２３０８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ロボット本体には、その先端部にハンドが取り付けられる。このハンドは、駆動源、例えば空圧シリンダによってワークを把持したり、その把持を解いたりする。制御装置は、このハンドの駆動源を制御する制御部（ハンド制御部）に対しても、制御信号を与え、タイミング良くワークの把持、その解除が行われるようにしている。
しかしながら、ハンドの種類や、ハンドの駆動源に何を用いるかは、ワークに応じてユーザが選択する事項であるので、ロボット装置の出荷時には、ハンド制御部は未だロボット本体に付属していない。このため、ハンド制御部については、ロボット本体に個別の信号線を配線しておき、ユーザにおいて、そのハンド用信号線とハンド制御部とを接続するようにしていた。
ところが、この従来構成では、複数の関節制御部のための信号線の他に、ハンド制御部専用の信号線が必要となり、それ以上の信号線の本数の削減は困難であった。
【０００５】
本発明は上記の事情に鑑みてなされたもので、その目的は、制御装置と複数の関節制御部とハンド制御部とを接続する信号線の数を少なくすることができるロボット装置の通信システムを提供することにある。
【課題を解決するための手段】
【０００６】
請求項１によれば、制御装置、各関節制御部をシリアル伝送路に接続すると共に、各関節制御部のうちのいずれかの関節制御部に、ハンド制御部に接続される入出力部を接続し、制御装置から、シリアル伝送路に、各関節制御部およびハンド制御部に対する制御信号をシリアルに流したとき、入出力部が接続された前記関節制御部は、シリアルに流された前記制御信号のうちから自身に対する制御信号およびハンド制御部に対する制御信号を受信し、且つ、ハンド制御部に対する制御信号を入出力部に送信するので、ハンド制御部専用の信号線を設けずとも済むようになる。
【０００７】
請求項２によれば、入出力部が接続された関節制御部は、自身が制御する駆動源のフィードバック信号をシリアル伝送路を介して制御装置に送信すると共に、入出力部に与えられたハンド制御部からのフィードバック信号をシリアル伝送路を介して制御装置に送信するので、別途信号線を設けずとも、ハンド制御部からのフィードバック信号を制御装置に送信することができる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の一実施形態を図１〜図１２に基づいて説明する。
ロボット装置は、図１２に示すように、ロボット本体１を主体とし、このロボット本体１を制御する制御装置２を備えている。ロボット本体１は、例えば６軸の垂直多関節型のもので、床に固定されたベース３と、このベース３に水平方向に旋回可能に支持されたショルダ部４と、このショルダ部４に上下方向に旋回可能に支持された下アーム５と、この下アーム５に上下方向に旋回可能に支持された第１の上アーム６と、この第１の上アーム６の先端部に捻り回転可能に支持された第２の上アーム７と、この第２の上アーム７に上下方向に回転可能に支持された手首８と、この手首８に回転（捻り動作）可能に支持されたフランジ９とから構成されている。
【０００９】
上記ベース３を含めて、ショルダ部４、下アーム５、第１の上アーム６、第２の上アーム７、手首８、フランジ９は、ロボットにおけるリンクとして機能する。そして、それら各リンク３〜９のうち、リンク４〜９を動作させるための関節軸は、それぞれ駆動源であるサーボモータ１０〜１５（図１参照）によって駆動されるようになっている。それらのサーボモータ１０〜１５は、駆動対象リンクの一段前のリンク、即ちショルダ部４を駆動するサーボモータ１０はベース３、下アーム５を駆動するサーボモータ１１はショルダ部４、第１の上アーム６を駆動するサーボモータ１２は下アーム５、第２の上アーム７を駆動するサーボモータ１３は第１の上アーム６、手首８を駆動するサーボモータ１４は第２の上アーム７、フランジ９を駆動するサーボモータ１５は手首８に夫々設けられている。
また、ワークを把持するハンド（図示せず）は、最先端のリンクであるフランジ９に取り付けられる。このハンドは、例えば空圧シリンダ１６（図３参照）を駆動源とし、その空圧シリンダ１６によってワークを把持する動作と把持を解除する動作とを行うように構成される。
【００１０】
さて、前記制御装置２は、図２に示すように、制御手段としてのＣＰＵ１７を主体として構成され、このＣＰＵ１７に対して、ロボット装置のシステムプログラムおよび動作プログラムを作成するためのロボット言語などを記憶するＲＯＭ１８、ロボット本体１の動作プログラムなどを記憶するＲＡＭ１９、サーボモータ１０〜１５の位置検出手段としての位置検出回路２０、各サーボモータ１０〜１５を駆動するための指令値を生成する指令値生成回路２１が接続されている。
【００１１】
一方、各サーボモータ１０〜１５を配設した各リンク３〜８には、サーボモータ１０〜１５を駆動するためのドライバ（関節制御部）２２〜２７（図１参照）が配設されている。これら各ドライバ２２〜２７は、後述のように制御装置２にシリアル伝送路２８を介して接続され、制御装置２から制御信号（指令値）を受信して各サーボモータ１０〜１５を駆動する。各サーボモータ１０〜１５には、回転検出手段としてのロータリエンコーダ２９〜３４（図１参照）が連結されている。そして、各ロータリエンコーダ２９〜３４の検出信号（フィードバック信号）は、各ドライバ２２〜２７に送られ、更に各ドライバ２２〜２７からシリアル伝送路２８を介して制御装置２に送信されるようになっている。
【００１２】
制御装置２の位置検出回路２０は、各ロータリエンコーダ２９〜３４の検出信号（フィードバック信号）に基づいて各サーボモータ１０〜１５の現在位置を検出し、その位置検出情報はＣＰＵ１７と指令値生成回路２１に与えられる。ＣＰＵ１７は、位置検出回路２０から与えられた各サーボモータ１０〜１５の現在位置と、予め設定された各サーボモータ１０〜１５の速度パターンとに基づいて所定の短時間後の次期位置を演算し、その次期位置情報を指令値生成回路２１に与える。そして、指令値生成回路２１は、位置検出回路２０から与えられた各サーボモータ１０〜１５の現在位置情報と、ＣＰＵ１７から与えられた各サーボモータ１０〜１５の次期位置情報とを比較し、その差に応じた各サーボモータ１０〜１５の指令値を生成して各ドライバ２２〜２７へ送るようになっている。
【００１３】
また、ＣＰＵ１７は、各サーボモータ１０〜１５の現在位置情報に基づき、ハンドの把持時期、或いは把持解除時期を検出し、把持タイミング信号、或いは把持解除タイミング信号を指令値生成回路２１に与える。指令値生成回路２１は、その把持タイミング信号、把持解除信号に応じてハンド制御部としての前記空圧シリンダ１６のドライバ３５（図３参照）にハンド指令としての把持指令、把持解除指令を送る。ドライバ３５は、その把持指令、把持解除指令に応じて圧縮空気の流路切換弁３６をオン或いはオフして空圧シリンダ１６を進出動作、後退動作させる。そして、この空圧シリンダ１６の進退動作によってハンドが把持動作、把持解除動作する構成となっている。
【００１４】
ところで、本実施形態では、上記空圧シリンダ１６のドライバ３５の配設位置は、手首８がハンドに最も近いリンクであることから、この手首８の内部と定められている。そして、手首８の内部に配設されているフランジ９の駆動用サーボモータ１５のドライバ２７にＩ／Ｏモジュール（入出力部）３７を接続し、前記制御装置２の指令値生成回路２１から出力されるハンド指令は、このフランジ９の駆動用サーボモータ１５のドライバ２７が受信し、Ｉ／Ｏモジュール３７を介してドライバ３５に与えられるように構成されている。
【００１５】
また、ハンドには、図３に示すように、当該ハンドが把持、把持解除のいずれの状態にあるかを検出するための例えばマイクロスイッチからなる動作センサ３８が設けられている。この動作センサ３８の検出信号（オンオフ信号）は、ドライバ３５に与えられ、このドライバ３５からＩ／Ｏモジュール３７に与えられ、更にこのＩ／Ｏモジュール３７からフランジ９の駆動用サーボモータ１５のドライバ２７に与えられるようになっている。
【００１６】
ここで、制御装置２と各ドライバ２２〜２７，３５の信号の送受構成につき説明する。まず、各サーボモータ１０〜１５の各ドライバ２２〜２７のうち、Ｉ／Ｏモジュール３７を接続したドライバ２７を除くドライバ２２〜２６の構成は、図４のブロック図に示されている。この図４に示すように、ドライバ２２〜２６は、通信部３９、信号処理回路４０、レジスタ部（記憶手段）４１、ＣＰＵ４２、サーボドライブ回路４３を備えている。
【００１７】
上記信号処理回路４０は、制御装置２から受信した信号を復調してレジスタ部４１の指令値受信レジスタ４１ａに格納する。ＣＰＵ４２は、指令値受信レジスタ４１ａから指令値を取得してサーボドライブ回路４３に与える。サーボドライブ回路４３は、指令値に基づきサーボモータ１０〜１４を駆動する。また、ロータリエンコーダ２９〜３３の検出信号を受理したＣＰＵ４２は、その検出信号をレジスタ群４１のサーボデータ送信レジスタ４１ｂに格納する。そして、信号処理回路４０は、ロータリエンコーダ２９〜３３の検出信号をサーボデータ送信レジスタ４１ｂから取得して変調処理し、通信部３９から制御装置２に送信する。
【００１８】
残るドライバ２７は、Ｉ／Ｏモジュール３７に接続されたＩ／Ｏインターフェース４４を備える外、レジスタ群４１が更にＩ／Ｏ出力受信レジスタ４１ｃおよびＩ／Ｏ送信レジスタ４１ｄを備えている以外は上記ドライバ２２〜２６と同じ構成になっている。上記Ｉ／Ｏ出力受信レジスタ４１ｃは、制御装置２からのハンドの把持指令信号を格納し、Ｉ／Ｏ送信レジスタ４１ｄは、Ｉ／Ｏモジュール３７からＩ／Ｏインターフェース４４に送られたハンドの動作センサ３８の検出信号を格納しておくものである。
【００１９】
一方、制御装置２には、通信部（通信手段）４５が設けられており、この通信部４５には、位置検出回路２０および制御装置２の指令値生成回路２１が接続されていると共に、前記シリアル伝送路２８が接続されている。この通信部４５は、指令値生成回路２１から送られる信号を変調してシリアル伝送路２８に送信すると共に、シリアル伝送路２８から送られてくる信号を復調して位置検出回路２０に与える。
【００２０】
シリアル伝送路２８には、上記各サーボモータ１０〜１５のドライバ２２〜２７が図１に示すように直列に接続されている。各サーボモータ１０〜１５のドライバ２２〜２７には、通信のためのＩＤ番号（アドレス）が定められている。これに対し、制御装置２のＣＰＵ１７は、サーボモータ１０〜１５の次期位置情報を生成する場合、各サーボモータ１０〜１５が駆動する関節軸の番号に関連付けて生成する。
【００２１】
そこで、例えばＲＯＭ（記憶手段）１８にドライバ２２〜２７のＩＤ番号と、各ドライバ２２〜２７の制御対象のサーボモータ１０〜１５が駆動する関節軸の番号を関連つけたデータを記憶させておき、ＣＰＵ１７は、各サーボモータ１０〜１５次期位置情報を、送信すべきドライバ２２〜２７のＩＤ番号とを関連つけて指令値生成回路２１に送り、各ドライバ２２〜２７に対して各ドライバ２２〜２７が制御するサーボモータ１０〜１５の指令値を正確に送信できるようにしている。なお、各ドライバ２２〜２７のＩＤ番号と、各ドライバ２２〜２７の制御対象であるサーボモータ１０〜１５が駆動する関節軸の番号との関連データを図５に示した。
【００２２】
指令値生成回路２１が形成した指令値、ハンド指令は、通信部４５に送られてシリアルの制御信号としてシリアル伝送路２８に送り出される。シリアルの制御信号のフォーマットは、図６に示されている。まず、図６（ａ）は、通信部４５から送信するシリアルデータを示しており、各サーボモータ１０〜１５を制御する各ドライバ２２〜２７への送信データ（制御信号）Ｄ１，Ｄ２…Ｄｎと、ハンドのドライバ３５への送信データ（制御信号）Ｈとが連続してシリアルに送信されることを示している。なお、ｎは関節軸の番号の最大値を示している。この実施形態では、最終段の関節軸（番号６）のサーボモータ１５のドライバ２７にＩ／Ｏモジュール３７が接続されているから、ＩＤ番号のｎは関節軸の最大番号と同じ「６」である。
【００２３】
図６（ｂ）は、各ドライバ２２〜２７への送信データＤ１，Ｄ２…Ｄ６（＝Ｄｎ）の送信フォーマットを示しており、各送信データＤ１〜Ｄ６は、開始ビット、ＩＤ番号、指令値、ＣＲＣ（誤り検定符合）、終了ビットの各データから構成される。
また、図６（ｃ）は、ハンドのドライバ３５への送信データＨの送信フォーマットを示しており、開始ビット、ＩＤ番号（ｎ＋１）、ハンド指令（把持を示すオン指令、または把持解除を示すオフ指令）、ＣＲＣ（誤り検定符合）、終了ビットの各データから構成される。なお、本実施形態では、ハンドのドライバ３５のＩＤ番号は「７（＝ｎ＋１）」である。
【００２４】
そして、各ドライバ２２〜２７は、シリアル伝送路２８に送信データＤ１〜Ｄ６およびＨについて、自身のＩＤ番号が付された送信データだけを受信し、他のデータについては受信しないように構成されている。ただし、Ｉ／Ｏモジュール３７を接続した第６軸駆動用であってＩＤ番号が「６（＝ｎ）」のドライバ２７は、自身のＩＤ番号である「６」が付された送信データの他に、自身のＩＤ番号に１をプラスしたＩＤ番号のデータ、つまりハンド指令の送信データＨも受信するように構成されている。
【００２５】
次に、制御装置２から各ドライバ２２〜２７に指令値を送信する場合の作用を図８〜図１１のフローチャートをも参照しながら説明する。なお、位置検出回路２０、指令値生成回路２１および通信部４５は、ＣＰＵ１７の統括制御の下に機能するものであるから、位置検出回路２０、指令値生成回路２１および通信部４５の個々が果たす動作であっても、以下の説明では、制御装置２の動作として説明する。
【００２６】
制御装置２が各サーボモータ１０〜１５の現在位置情報を取得すると、当該制御装置２は、まず、関節軸の番号ｍを１にセットして第１軸から順に各サーボモータ１０〜１５の現在指令位置情報と速度パターン情報とに基づいて次期指令位置を演算する（ステップ５１〜５６）。そして、制御装置２は、サーボモータ１０〜１５の現在位置と次期指令位置との差から指令値を演算し（図８のステップＳ１、ステップＳ２）、関節軸番号‐ＩＤ番号関連データから送信先データであるＩＤ番号を取得して当該指令値をＩＤ番号と関連付けた送信データを生成する（ステップＳ４）。
【００２７】
第６軸までの送信データフレームを生成すると（ステップＳ５で「ＹＥＳ」）、制御装置２は、ＩＤ番号を７とするハンドのドライバ３５への送信データフレームを作成し（ステップＳ７）、そして、図６に示す各軸の指令値の送信データＤ１〜Ｄ６およびハンド指令の送信データＨとをシリアル信号にしてシリアル伝送路２８に送信する（ステップＳ８、ステップＳ９）。
図６のシリアルデータがシリアル伝送路２８に送信されると、各ドライバ２２〜２７は、送信データＤ１〜Ｄ６，Ｈのうちから、自身のＩＤ番号と同じＩＤ番号が付された送信データを読み込み、その指令値に基づいて各サーボモータ１０〜１５を駆動する。
【００２８】
Ｉ／Ｏモジュール３５を接続したドライバ２７の受信動作が図１０のフローチャートに示されているが、他のドライバー２２〜２６と同様に自身のＩＤ番号と同じＩＤ番号６の送信データフレームを受信すると（ステップＡ１、ステップＡ２で「ＹＥＳ」）、その送信データを読み込む（ステップＡ３）。続いて、ＩＤ番号が「７（＝ｎ＋１）」の送信データフレームを受信してそのデータを読み込む（ステップＡ４、ステップＡ５）。
【００２９】
そして、送信データＤ６の指令値を指令値受信レジスタ４１ａに格納するとともに、送信データＨの指令値をＩ／Ｏ受信レジスタ４１ｃに格納する（ステップＡ６）。続いて、ＣＰＵ４２は、指令値受信レジスタ４１ａの指令値によりサーボドライバ回路４３を介してサーボモータ１５を駆動制御する（ステップＡ７）と共に、Ｉ／Ｏ受信レジスタ４１ｃのハンド指令によりドライバ３５を介して切換弁３６を制御して空圧シリンダ１６を作動させる（ステップＡ８）。この制御の結果の各サーボモータ１０〜１５の現在位置は、各ロータリエンコーダ２９〜３４により検出されてサーボデータ送信レジスタ４１ｂに格納される。また、空圧シリンダ１６の作動結果（把持か把持解除かの状態）は、動作センサ３８によって検出され、フィードバック信号としてドライバ２７のＩ／Ｏ入力送信レジスタ４１ｄに格納される。
【００３０】
制御装置２は、送信データＤ１〜Ｄ６，Ｈを送信し終えると、図９に示すように、シリアル伝送路２８へ全ドライバ２２〜２７を対象としたデータ送信要求信号を出力する（ステップＤ１）。各ドライバ２２〜２７は、データ送信要求を受信すると、サーボモータ送信レジスタ４１ｂに格納されているロータリエンコーダ２９〜３４の現在位置情報を送信処理回路４０を通じて通信部３９からシリアル伝送路２８へ送信する。
【００３１】
このドライバ２２〜２７からシリアル伝送路２８へ送信されるデータのフォーマットが図７に示されている。図７（ａ）は、各ドライバ２２〜２７からの送信データが、ＩＤ番号の小さい順に所定時間Δｔ間隔で送信されることを示している。図７（ｂ）は、各サーボモータ１０〜１５のドライバ２２〜２７の送信データは、開始ビット、ＩＤコード、現在位置データ、ＣＲＣ、終了ビットから構成されていることを示している。また、図７（ｃ）は、ハンドのドライバ３５からの送信データは、開始ビット、ＩＤコード、状態データ、ＣＲＣ、終了ビットから構成されていることを示している。
【００３２】
Ｉ／Ｏモジュール３７が接続されたドライバ２７の送信動作が図１１のフローチャートに示されているが、他のドライバ２２〜２６と同様に送信データ要求を受信すると（ステップＣ１）、ＩＤ番号がｎ（＝６）のデータフレームを作成し、サーボデータ送信レジスタ４１ｃからサーボモータ１５の現在位置情報を読み出してこれをデータ領域に書き込む（ステップＣ２）。続いて、ＩＤ番号がｎ＋１（＝７）のデータフレームを作成し、Ｉ／Ｏ送信レジスタ４１ｄに格納されている動作センサ３８の状態情報を読み出してこれをデータ領域に書き込む（ステップＣ３）。そして、ＩＤ番号がｎとＩＤ番号がｎ＋１の送信データを合わせたデータフレームを生成し（ステップＣ４）、シリアル伝送路２８へ送信する（ステップＣ５）。
【００３３】
制御装置２は、各ドライバ２２〜２７から送信されたデータを１フレームずつ受信すると、その１フレーム毎にＩＤ番号を取得し（ステップＤ２）、ＩＤ番号を取得する（ステップＤ３）。ＩＤ番号がｎ＋１つまりハンドの状態データでなければ（ステップＤ４で「ＮＯ」）、制御装置２は、ＩＤ番号から関節軸番号を決定して当該関節軸を駆動するサーボモータ１０〜１５の現在位置情報を取得する（ステップＤ５、ステップＤ６）。ＩＤ番号がｎ＋１つまりハンドの状態データであった場合（ステップＤ４で「ＹＥＳ」）、制御装置２は、ハンドの状態情報として取得する（ステップＤ５、ステップＤ６）。以上のような動作を、送信されてくるデータフレームの数（この実施形態では「７」）だけ行ったところで、制御装置２は、各ドライバ２２〜２７からの送信データの処理を終了し（ステップＤ８で「ＹＥＳ」）、図８の送信処理へと移行する。
【００３４】
このように本実施形態によれば、ドライバ２７にＩ／Ｏモジュール３７を接続し、ハンドのドライバ３５への動作指令を、サーボモータ１０〜１５のドライバ２２〜２７への指令値指令と同じフォーマットにして、ドライバ２７からＩ／Ｏモジュール３７を介してドライバ３５へ送るようにしたので、伝送路としては、ハンドのドライバ３５専用のものを設けずとも済み、ロボット本体１内を通る信号線の本数を減少させることができる。
【００３５】
また、各ドライバ２２〜２７にＩ／Ｏモジュール３７を設けるのではなく、適宜のドライバ、本実施形態では、ドライバ２７にだけＩ／Ｏモジュール３７を設けたので、ドライバ２２〜２６の大型化を避けることができる。
しかも、ドライバ２７にだけＩ／Ｏモジュール３７を設けたことにより、制御装置２から送信する送信データとしては、各ドライバ２２〜２７への送信データに、１台のＩ／Ｏモジュール３７についてだけの送信信号を追加すればよいので、シリアルに送信するデータの量を少なくすることができる。
【００３６】
なお、本発明は上記し且つ図面に示す実施形態に限定されるものではなく、以下のような拡張或いは変更が可能である。
Ｉ／Ｏモジュール３７は、第６軸用のドライバ２７に接続する構成に限らない。手首８にＩ／Ｏモジュール３７を配置するスペースがない場合、或いは、ハンドの構成上、他の軸のドライバに接続するようにしても良い。この場合、Ｉ／Ｏモジュール３７を接続したドライバのＩＤ番号をｎとすることが好ましい。例えば、第２の上アーム７に設けられた手首８駆動用のサーボモータ１４を制御するドライバ２６にＩ／Ｏモジュール３７を接続する場合には、そのドライバ２６の関節軸番号は、５であるが、ＩＤ番号はｎ（６）とする（図１３参照）。このようにすることによって、図８〜図１１のフローチャートの動作を実現するためのプログラムについては変更を加えなくて済む。
各ドライバ２２〜２７は、シリアル伝送路に対して互いに並列に接続しても良い。
【図面の簡単な説明】
【００３７】
【図１】本発明の一実施形態を示すもので、制御装置と各ドライバとの間のデータ伝送路の配線図
【図２】制御装置の内部構成を示すブロック図
【図３】Ｉ／Ｏモジュールを接続したドライバの内部構成を示すブロック図
【図４】他のドライバの内部構成を示すブロック図
【図５】ＩＤ番号と関節軸番号との換算データを示す図
【図６】制御装置からの送信データのフォーマットを示す図
【図７】ドライバから制御装置への送信データのフォーマットを示す図
【図８】制御装置からドライバへのデータ装置の送信制御内容を示すフローチャート
【図９】制御装置のデータの受信制御内容を示すフローチャート
【図１０】ドライバのデータの受信制御内容を示すフローチャート
【図１１】ドライバのデータの送信制御内容を示すフローチャート
【図１２】多関節型ロボットの斜視図
【図１３】本発明の他の実施形態における図５相当図
【符号の説明】
【００３８】
図面中、１はロボット本体、２は制御装置、１０〜１５はサーボモータ（駆動源）、１７はＣＰＵ、２０は位置検出回路、２１は指令値生成回路、２２〜２７はドライバ（関節制御部）、２８はシリアル伝送路、２９〜３４はロータリエンコーダ、３５はドライバ（ハンド制御部）、３７はＩ／Ｏモジュール（入出力部）、３８は動作センサである。
【図１】
2009025879.tif 000003
【図２】
2009025879.tif 000004
【図３】
2009025879.tif 000005
【図４】
2009025879.tif 000006
【図５】
2009025879.tif 000007
【図６】
2009025879.tif 000008
【図７】
2009025879.tif 000009
【図８】
2009025879.tif 000010
【図９】
2009025879.tif 000011
【図１０】
2009025879.tif 000012
【図１１】
2009025879.tif 000013
【図１２】
2009025879.tif 000014
【図１３】
2009025879.tif 000015