JP3602518B2 - リンク機構関節データ演算装置 - Google Patents

リンク機構関節データ演算装置 Download PDF

Info

Publication number
JP3602518B2
JP3602518B2 JP2002195550A JP2002195550A JP3602518B2 JP 3602518 B2 JP3602518 B2 JP 3602518B2 JP 2002195550 A JP2002195550 A JP 2002195550A JP 2002195550 A JP2002195550 A JP 2002195550A JP 3602518 B2 JP3602518 B2 JP 3602518B2
Authority
JP
Japan
Prior art keywords
joint
link
link mechanism
mark
screen
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.)
Expired - Fee Related
Application number
JP2002195550A
Other languages
English (en)
Other versions
JP2003067427A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2002195550A priority Critical patent/JP3602518B2/ja
Publication of JP2003067427A publication Critical patent/JP2003067427A/ja
Application granted granted Critical
Publication of JP3602518B2 publication Critical patent/JP3602518B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Transmission Devices (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は機構設計用CADシステムを用いて作成したリンク機構のシミュレーション的な動作確認を行なうリンク機構解析装置を用いてリンク機構のシミュレーション的な動作確認を行なうにあたって必要となる、例えばDeravit−Hartenbergのリンクパラメータ(以下、D−Hパラメータと略記する)と称されるような、リンク機構のリンクおよび関節の結合関係を表わすパラメータとそのパラメータのパラメータ値とが記述された関節データを求めるリンク機構関節データ演算装置に関する。
【0002】
【従来の技術】
近年、三次元CADシステムを使って製品設計を行なうことが多くなってきている。そのような製品は一般的にはいくつかの可動部を持っているが、組立て後、設計者の望むように動くかどうか、あるいは部品どうしが干渉しないかどうかを確認する必要がある。このような確認は、古くは試作して行なっていたが時間やコストがかかっていた。
【0003】
近年、コンピュータグラフィックス(以下、CGと略記する場合がある)とシミュレーション技術の発達により、シミュレーションによって可動部を動かし、それをCG画面に表示することにより、試作することなく視覚的に動作確認を行なうことができるようになってきた。その結果、設計の不具合を早期に発見して修正を行なうことができ、設計時間短縮やコスト削減を図ることができる。そのような目的で機構解析システムが作られてきたが、以下に概略を説明するように、従来の機構解析システムは、機構を定義して可動部を動かすための操作が極めて複雑であり、ユーザへの負担が大きい。
【0004】
従来、Pro/Engineering、i−DEAS等の三次元CADシステムでは、リンク機構の動作確認にアセンブリ機能が使われており、部品間の相対位置や姿勢のパラメータを変更してそれらの部品の再配置を繰り返すことで動作確認が行なわれてきた。しかし、これらのシステムでは、パラメータの変更に時間がかかる。特に逆運動学がないので、そのシステムの利用者が部品間の相対位置や姿勢を合わせるように配置していくことが非常に大変である。
【0005】
ここで、「逆運動学」とは、リンク機構の先端ないし途中の位置と姿勢の情報を与えたときに、そのリンク機構を構成する各リンクを連結する関節の角度がどのようになるかを解く手法をいう。これと対比される用語に「順運動学」があり、この「順運動学」は、各関節の角度を与えたときに、そのリンク機構の先端の位置と姿勢がどうなるかを解く手法をいう。
【0006】
また、IGRIPというロボットシミュレータが知られている。このロボットシミュレータには、回転/直動関節を持った一般的な6自由度以下のリンクについて順運動学の解法が用意されており、またユーザが定義した順運動学の解法もそのシステムに組み入れることができるよう構成されている。しかし、このロボットシミュレータでは、各々のロボット毎にそのロボットに適合した複雑な設定を行なう必要があり、このため、このロボットシミュレータを様々なリンク機構の動作確認に使うためには各リンク機構毎に複雑な設定をやり直す必要があり作業性が悪いという問題がある。
【0007】
さらに、従来より付属のモデラーや市販の三次元CADシステムを使って作成した部品のデータを取り込んで動作確認を行なう機構解析用ソフトウェアが存在するが、可動部の設定が繁雑である、順運動学、逆運動学を定義する必要がありユーザの負担が大きい、リンク機構のパラメータを入力する必要がある、厳密な解析解を持つものが少なく特に閉ループ系リンク機構が厳密に解けない場合がある等の問題点がある。
【0008】
また、リンク機構解析を行なう前提としてリンク機構を構成する複数の部品相互の結合状態、すなわちリンク機構そのものを定義する必要があり、CADシステム等を使って作成した部品どうしを結合する関節(関節の種類、位置、姿勢)や、その関節で結合された部品の移動限界(以下、この移動限界を「関節リミット」と称することがある)を定義し、これにより、そのリンク機構そのものを定義する必要がある。リンク機構が定義されるということは、そのリンク機構を構成するリンクおよび関節の結合関係を表わすパラメータ(例えばD−Hパラメータ)およびそのパラメータのパラメータ値が記述された関節データが求められることを意味し、その関節データがそのリンク機構の解析に用いられる。
【0009】
この関節を定義することに関し、従来、アニメーション作成を目的とする‘Softimage’等では、スケルトンと呼ばれる骨組みをマウス操作で配置し、球関節のリンクをいくつか接続することによりアニメーションとしての人間や動物の関節を設定し、その後関節リミットの拘束を設けるという手順で関節および関節リミットの定義を行なっている。ただしこの手法では厳密な定義を行なうことはできない。これは、アニメーション作成を目的としており、人間や動物の関節は、その形状のだいたいの位置に配置すればよく、厳密さを要求されないのでこの方法で充分である。
【0010】
これに対し、製品設計やロボットの分野では、関節の位置や姿勢の定義に厳密さが要求される。関節の位置を厳密に指定すること自体は考えられるが、先ず第1に、どのような手法を用いると関節の位置を厳密に、かつ操作性良く指定することができるかということが問題であり、第2に、関節の位置は厳密に指定したとして、その関節で結合された部品の動き方が画面上で直感的に解りやすいかどうかということも問題である。
【0011】
【発明が解決しようとする課題】
本発明は、上記事情に鑑み、簡単な操作でかつ視認性良くリンク機構の関節定義を行なうことのできるリンク機構関節データ演算装置を提供することを目的とする。
【0012】
【課題を解決するための手段】
図1は、本発明の第1のリンク機構解析装置の基本ブロック図である。
【0013】
上記目的を達成する本発明の第1のリンク機構解析装置は、
(1−1)リンクおよび関節を有する複数種類のリンク機構モデルそれぞれについての順運動学の解析的解法、およびそれら複数種類のリンク機構モデルそれぞれについての、リンク機構モデルの有するリンクおよび関節それぞれをそのリンク機構モデルを駆動する駆動源としたときの逆運動学の解析的解法が記述されたファイルを記憶するファイル記憶手段101
(1−2)リンクおよび関節を有する被解析用リンク機構の三次元形状を表わす形状データと、その被解析用リンク機構を構成するリンクおよび関節の結合関係を表わすパラメータおよびそれらのパラメータのパラメータ値が記述された関節データとを入力するデータ入力手段102
(1−3)上記複数種類のリンク機構のモデルの中から、データ入力手段102により入力された形状データにより表わされる三次元形状に対応するリンク機構モデルを選択するための第1の操作子103
(1−4)データ入力手段により入力された形状データにより表わされる三次元形状を有する被解析用リンク機構を駆動する駆動源を指定する第2の操作子104
(1−5)第2の操作子104の操作により指定された駆動源の駆動量を入力する第3の操作子105
(1−6)データ入力手段102により入力された関節データに含まれるパラメータ値および上記第3の操作子の操作により入力された駆動量を代入して、第1の操作子103の操作により選択されたリンク機構モデルに対応する順運動学の解析的解法、および、第2の操作子104の操作により指定された駆動源に対応する逆運動学の解析的解法を数値的に解く演算手段106
を備えたことを特徴とする。
【0014】
図1は、本発明の第2のリンク機構解析装置の基本ブロック図でもある。
【0015】
上記目的を達成する本発明の第2のリンク機構解析装置は、
(2−1)リンクおよび関節を有する複数種類のリンク機構モデルそれぞれについての順運動学および動力学の解析的解法が記述されたファイルを記憶するファイル記憶手段101
(2−2)リンクおよび関節を有する被解析用リンク機構の三次元形状を表わす形状データと、その被解析用リンク機構を構成するリンクおよび関節の結合関係を表わすパラメータおよびそのパラメータのパラメータ値が記述された関節データとを入力するデータ入力手段102
(2−3)上記複数種類のリンク機構のモデルの中から、データ入力手段102により入力された形状データにより表わされる三次元形状に対応するリンク機構モデルを選択するための第1の操作子103
(2−4)上記データ入力手段102により入力された形状データにより表わされる三次元形状を有する被解析用リンク機構を駆動する駆動源を指定する第2の操作子104
(2−5)第2の操作子104の操作により指定された駆動源の駆動力を入力する第3の操作子、および
(2−6)データ入力手段102により入力された関節データに含まれるパラメータ値および第3の操作子105の操作により入力された駆動力を代入して、第1の操作子103の操作により選択されたリンク機構モデルに対応する順運動学および動力学を数値的に解く演算手段106
を備えたことを特徴とする。
【0016】
ここで、上記本発明の第1のリンク機構解析装置、ないし第2のリンク機構解析装置において、第1の操作子103、第2の操作子104、第3の操作子105はその操作子の役割りにより名づけたものであって、物理的には1つの操作子であってもよい。
【0017】
また、入力手段102は、このリンク機構装置解析とは別体の例えば三次元CADシステム等により既に作成済の形状データおよび関節データを外部から入力するものであってもよく、あるいは、例えばそこに三次元CADシステム等が組み込まれたものであってもよい。
【0018】
上記本発明の第1のリンク機構解析装置は、予め、複数種類のリンク機構モデルそれぞれについての順運動学の解析的解法のみならず、そのリンク機構モデル駆動源に対応する運動学についても解析的解法が用意されてファイル記憶手段に組み込まれているため、ユーザは、被解析用リンク機構とリンク機構モデルとを対応づけ、所望の駆動源を指定し、その駆動源の駆動量を入力するだけで、あらかじめ用意された解析的解法を用いた演算が行なわれる。
【0019】
また、本発明の第2のリンク機構解析装置についても同様であり、予め、複数種類のリンク機構モデルそれぞれについての順運動学の解析的解法のみならず、それら複数種類のリンク機構モデルそれぞれについての動力学についても運動方程式のパラメータが用意されてファイル記憶手段に組み込まれているため、ユーザは、被解析用リンク機構とリンク機構モデルとを対応づけ、所望の駆動源を指定し、その駆動源の駆動力を入力するだけで、あらかじめ用意された解析的解法を用いた数値解析が行なわれる。
【0020】
このように、本発明の第1ないし第2のリンク機構解析装置によれば、ユーザに簡単な操作を要求するだけで、リンク機構の機構解析を実行することができる。
【0021】
ここで、本発明の第1ないし第2のリンク機構解析装置において、データ入力手段102により入力された形状データにより表わされる三次元形状のグラフィックス画面、および前記第1の操作子の操作により選択されたリンク機構モデルを表わすリンク機構モデル画面を表示する表示手段107を備えることが好ましい。これにより、所望のリンク機構モデルの選択が容易となり、また、数値解析の結果をグラフィックス画面として表示して動作確認を行なうことができる。
【0022】
本発明の第1ないし第2のリンク機構解析装置において、表示手段107を備えた場合に、その表示手段107が、順次指定されることにより所望のリンク機構モデルの指定に到達する複数のメニュータイトルを表示するものであり、第1の操作子103が、表示手段107に表示されたメニュータイトルを指定する操作を行なうものであることが好ましい。
【0023】
このように表示手段107にメニュータイトルを表示してそれを指定することにより所望のリンク機構モデルを指定するようにすると、ユーザによる、所望のリンク機構モデルを指定する操作が簡単となり、より使い勝手のよい、ユーザの負担の少ない装置が実現する。
【0024】
また、この場合に、上記複数のメニュータイトルが、自由度で分類されてなるリンク機構モデルの各群を表わすメニュータイトルを含むものであることがさらに好ましい。
【0025】
リンク機構モデルをその自由度で分類しておくと、所望のリンク機構モデルを見つけ易くなり、メニュータイトルの指定操作と相俟って、さらに使い勝手の良い、ユーザの負担のさらに少ない装置が実現する。
【0026】
また、上記本発明の第1ないし第2のリンク機構解析装置において、第2の操作子104が、表示手段107に表示されたグラフィックス画面上のリンクを指示する操作と、そのリンクおよびそのリンクを連結する関節のいずれを駆動源とするかを指示する操作との双方の操作を行なうことにより駆動源を指定するものであってもよく、あるいは、表示手段107が、上記リンク機構モデル画面に、選択可能な駆動源を表わすマークを重畳させて表示するものであり、第2の操作子104が、それらのマークのうちの1つを指定する操作を行なうものであってもよい。
【0027】
リンク機構の機構解析を行なうにあたっては、駆動源を指定する必要があるが、その駆動源の指定は、上記のような2回の指定操作もしくは1回の指定操作により容易に行なわれる。
【0028】
さらに、上記本発明の第1ないし第2のリンク機構解析装置は、データ入力手段102により入力された形状データにより表わされる三次元形状を有する被解析用リンク機構を構成するリンクのうち最も根元に位置する第1リンクを指定する第4の操作子108を備えることが好ましい。あるいは、この第4の操作子108に代えて、もしくはこの第4の操作子108を備えるとともに、データ入力手段102により入力された関節データに含まれる上記パラメータに基づいて、データ入力手段102により入力された形状データにより表わされる三次元形状を有する被解析用リンク機構を構成するリンクのうち最後端に位置する第1リンクを検出する第1リンク検出手段109を備えることも好ましい態様である。
【0029】
リンク機構解析を行なうには、被解析用リンク機構の第1リンクを知る必要があるが、この第1リンクの指定は、ユーザにより行なわれ、あるいは一義的に定まる場合は好ましくは自動的に定められる。ユーザにより指定される場合であっても、ユーザは、例えば表示手段107にグラフィック画面として表示されている被解析用リンク機構の第1リンクにマークを合わせてマウスをクリックする等の簡単な操作で行なわれ、ユーザの負担は少ない。
【0030】
さらに本発明の第1ないし第2のリンク機構解析装置において、上記複数種類のリンク機構モデルを構築する新リンク機構モデル構築手段110を備えることが好ましい。
【0031】
この新リンク機構モデル構築手段110を備えると、ユーザが自分で使いたいリンク機構モデルを定義し、機構解析のベースとなるリンク機構モデルを増やすことができるので、そのユーザにとってさらに使い勝手の良い装置となる。
【0032】
図2は、本発明のリンク機構関節データ演算装置の基本ブロック図である。
【0033】
上記目的を達成する本発明のリンク機構関節データ演算装置は、
(3−1)リンクおよび関節を有するリンク機構を構成する複数の部品の三次元形状を表わす形状データを入力する形状データ入力手段201
(3−2)関節を種類別に三次元的にモデル化してなる複数種類の立体関節マークの中からいずれかの立体関節マークを選択して、選択した立体関節マークを、形状データ入力手段により入力された部品どうしが結合される関節部分に、所定の位置および所定の姿勢に配置することにより、それらの部品どうしを結合する関節の種類、位置および姿勢を定義する関節定義用操作子202
(3−3)形状データ入力手段により入力された部品および前記立体関節マークを表示する表示手段203
(3−4)上記立体関節マークが関節部分に配置されたことを受けて、その立体関節マークが配置された部品を含むリンク機構のリンクおよび関節の結合関係を表わすパラメータとそのパラメータのパラメータ値とが記述された関節データを求める関節データ演算手段202
を備えことを特徴とする。
【0034】
本発明のリンク機構関節データ演算装置は、立体関節マークを関節の種類毎に定義しておいて、表示手段203により表示された画面を見ながら、関節定義用操作子202を操作してその立体関節マークを所定の位置および所定の姿勢に配置するだけで関節が定義され、これを必要に応じてそのリンク機構の関節の数だけ繰り返すだけでそのリンク機構の関節データが求められる。すなわちそのリンク機構が定義される。また立体関節マークを配置するため、その関節で結合された部品の動きの仕方が画面上で直感的に解りやすく、この点からも操作性が向上する。このように、本発明の機構関節データ演算装置は立体関節マークを配置する操作を行なえばよく、簡単な操作でかつ直感的に解りやすくリンク機構を定義することができる。
【0035】
ここで、上記本発明のリンク機構関節データ演算装置は、形状データ入力手段201が、相互に組み立てられた状態の複数の部品の三次元形状を表わす形状データを入力するものであって、関節定義用操作子202が、形状データ入力手段201により入力された、相互に組み立てられた状態に配置された複数の部品の関節部分に、立体関節マークを配置するものであってもよく、あるいは、上記本発明の機構関節データ演算装置は、形状データ入力手段201が、組立前の状態の複数の部品の三次元形状を表わす形状データを入力するものであって、関節定義用操作子202が、相互に結合される複数の部品の各関節部分それぞれに、位置および姿勢が相互に対応することを示す各立体関節マークをそれぞれ配置するものであってもよい。
【0036】
本発明では、例えばCADシステム等において部品の組み立てに関するデータが生成されているときはその組立てデータを用いて関節を定義することもでき、組立てデータが存在しないとき、もしくは組立てデータが存在していてもそれを用いずに関節定義を行なうこともできる。
【0037】
また、本発明のリンク機構関節データ演算装置において、立体関節マークが部品に干渉したか否かを検査する干渉チェック手段を備えることが好ましい。
【0038】
干渉チェック手段205を備えると、部品の表面に立体関節マークを容易に配置することができ、立体関節マークを配置するための操作が一層簡単になる。
【0039】
また、上記本発明の機構関節データ演算装置において、形状データ入力手段201が、上記形状データとともに関節位置を表わす関節位置データを入力するものであって、関節定義用操作子202が、上記関節位置データが表わす関節位置に立体関節マークを配置する操作を含む操作を行なうためのものであることも好ましい態様である。
【0040】
CADシステム等で関節位置データまで作成されている場合は、それを用いることにより、一層簡単な操作で立体関節マークを配置することができる。
【0041】
さらに、本発明の機構関節データ演算装置において、表示手段203が、部品を所定の方向に投影した二次元形状を表示するものであって、関節定義用操作子202が、その二次元形状中の関節位置を指定することによりその関節位置に立体関節マークを配置する操作を含む操作を行なうためのものであることも好ましい態様である。
【0042】
部品の二次元形状を表示することができる場合、その二次元形状の上で関節位置を指定する方が操作が簡単だからである。
【0043】
さらに、本発明のリンク機構関節データ演算装置においては、関節により結合された部品の移動限界を定めるための関節リミット定義用操作子202が備えられる。この関節リミット定義用操作子206は、ハードウェア上は、関節定義用操作子202と同一のものであってもよい。
【0044】
この関節リミット定義用操作子206を備えるにあたり、上記立体関節マークが、関節により結合された部品の移動位置を模擬するマーク部分を有し、この関節リミット定義用操作子206が、そのマーク部分を部品の移動限界位置に対応する位置に移動させることによってその部品の移動限定を定めるものであることも好ましい態様であり、あるいは、関節リミット定義用操作子206が、表示手段203に表示された、関節により結合された部品をその部品の移動限界に位置移動させることによってその部品の移動限界を定めるものであることも好ましい態様である。
【0045】
ここで、本発明のリンク機構解析装置と本発明のリンク機構関節データ演算装置との関係について説明する。
【0046】
例えばCADシステム等でリンク機構を構成する複数の部品の形状データが形成され、その形状データが、図2に示す、形状データ入力手段201により、本発明のリンク機構関節データ演算装置に入力される。本発明のリンク機構関節データ演算装置では、その入力された形状データに基づく部品が表示された画面上に、上述のように立体関節マークを配置することによりリンク機構を定義し、これにより関節データが生成される。その生成された関節データは、形状データとともに、今度は、図1に示すデータ入力手段102により本発明のリンク機構解析装置に入力される。リンク機構解析装置では、そのリンク機構の解析が行なわれる。
【0047】
尚、本発明のリンク機構解析装置と本発明のリンク機構関節データ演算装置は、ハードウェア上は同一の装置であってもよく、したがってそれらの操作の全てもしくはいくつかはハードウェア上は同一の操作子であってもよく、さらには、形状データを作成するCADシステムも同一のハードウェアに組み込まれていても良い。
【0048】
【発明の実施の形態】
以下、本発明の実施形態について説明する。
【0049】
ここでは、説明の都合上、先ず本発明のリンク機構解析装置の実施形態について先に説明し、その後、本発明のリンク機構関節データ装置の実施形態について説明する。
【0050】
尚、本発明の第1のリンク機構解析装置と第2のリンク機構解析装置では、共通的に説明できる部分が多いため、以下では、本発明の第1のリンク機構解析装置の実施形態について説明し、その後、第2のリンク機構解析装置の、第1のリンク機構解析装置との相違点について説明する。
【0051】
図3は、本発明の第1のリンク機構解析装置の一実施形態の外観図である。
【0052】
この図3に示すように、このリンク機構解析装置100はコンピュータシステムで構成されており、CPUが内蔵された本体部11、キーボード12、マウス13、およびCRT表示部14が備えられている。本体部11には、CPUのほか、フロッピィディスクが装填され、フロッピィディスクに記録されたデータを読み込んだり、フロッピィディスクにデータを記録したりするフロッピィディスクドライブ装置、大容量のデータを保存しておく磁気ディスク装置等も内蔵されている。
【0053】
本実施形態では、図示しない三次元CADシステムを使って設計した被解析用のリンク機構の三次元形状を表わす形状データと、そのリンク機構を構成するリンクおよび関節の結合関係を表わすD−Hパラメータおよびそのパラメータ値が記述された関節データが、三次元CAD側でフロッピィディスクにダウンロードされ、そのフロッピィディスクがこの図3に示すリンク機構解析装置100に装填されて、そのフロッピィディスクから上記形状データおよび関節データが読み込まれる。
【0054】
尚、三次元CADシステムとこのリンク機構解析装置100は通信ラインで接続されていて、三次元CADシステムからその送信ラインを経由して入力された上記形状データおよび関節データを、このリンク機構解析装置100に内蔵された磁気ディスク装置に格納してもよく、あるいは、このリンク機構解析装置100に三次元CADシステムが組み込まれていてもよい。
【0055】
また、このリンク機構解析装置100には、複数種類のリンク機構モデル(具体例は後述する)それぞれを模式的に表示するためのリンク機構モデルのイラスト、各リンク機構モデルの順運動学の解析的解法および各リンク機構モデルの各駆動源を駆動したときの逆運動学の解析的解法等が記述されたファイルが、本体部11に内蔵された磁気ディスク装置に記憶されている。
【0056】
図4は、CRT表示部に表示された画面の一態様を示す図である。
【0057】
本実施形態においては、CRT表示部14上に種々の画面を開くことができるが、典型的には、この図4に示すように、メニュータイトル群から成るメニュー画面20、被解析用のリンク機構の形状データに基づいて作成された、そのリンク機構の三次元形状を表わすCG画面30、および、後述するようにしてユーザにより選択された、その被解析用リンク機構に対応するリンク機構モデルのイラストを表示するリンク機構モデル画面40が表示される。
【0058】
ここで、CG画面30は、ここでは平面的に描かれているが、このCG画面30は、被解析用リンク機構の三次元形状を表わす形状データに基づいて作成されており、ユーザの指示に応じて、その三次元形状を種々の方向から見たCG画面が表示される。
【0059】
図5は、メインメニューおよびサブメニューの一覧を表わした図である。
【0060】
図4に示したメニュー画面20は、メインメニューのみであり、このメインメニューで表示された「リンク設定」、「駆動部設定」、「リンク機構情報」、「拘束条件」のいずれかを図3に示すマウス13を用いて選択すると、その選択されたメニュータイトルに応じた各種のサブメニューが表示され、さらにそのサブメニュー中の所望のメニュータイトルを選択するという順序で、ユーザにより、このリンク機構解析装置に種々の指示が入力される。各メニュータイトルの意味については、各操作に即しながら後述する。また、図3に示すキーボード12によっても、種々の指示を入力することができる。
【0061】
以下、ユーザの操作と対応づけて、本実施形態について説明を続ける。尚、ここでは被解析用リンク機構は、一例として、「平行クランク」であるとする。ただし、必要に応じて、平行クランクの他、「1リンク」および「クランク」についても例示する。
【0062】
被解析用リンク機構のデータ(形状データおよび関節データ)がこのリンク機構解析装置100に入力されると、図3に示すように、CRT表示部14に、その入力された形状データに基づくCG画面30(ここでは平行クランク)が表示される。
【0063】
次に、このリンク機構を解析するために、ユーザにより、複数種類のリンク機構モデルの中から、このCG画面30に表われた平行クランクのCG画面30に対応する平行クランクのリンク機構モデルが選択される。この選択は以下のようにして行なわれる。
【0064】
図6は、リンク機構モデルの選択、およびそれに続く第1リンクの選択の操作手順を示す説明図、図7〜図9は、それぞれ、「平行クランク」、「1リンク」、「クランク」のリンク機構モデルのリンク座標系および親子関係を示す図である。
【0065】
先ずメインメニュー中のメニュータイトル「リンク設定」にマウス13のカーソルを合わせ、マウス13をクリックすることにより、この「リンク設定」のメニュータイトルを選択する。以下、この操作を単に、「リンク設定」を選択する、ないし「リンク設定」ボタンを押す、と称する。他のメニュータイトルについても同様である。
【0066】
「リンク設定」を選択すると、画面上に、「リンク設定」に対応するサブメニュー「リンク種選択」、「第1リンク選択法」が現われる(図4参照)。そこで、次にこの中から「リンク種選択」を選択する。
【0067】
すると、図6に示すように、「1リンク」、「クランク」、「平行クランク」、「2リンク」、「スライダ・リンク」、「四節機構」、「クロススライダ・クランク機構」、「パンタグラフ」等の種々のリンク機構モデルそれぞれに対応するメニュータイトルが表示される。
【0068】
次に「平行クランク」を選択する。すると今度は、平行クランクに属する数種類のリンク機構モデルのメニュータイトルが表示されるので、被解析用リンク機構の解析に適したリンク機構モデルのメニュータイトルが選択される。すると、その、最終的に選択された平行クランクのイラスト画面40が表示される。
【0069】
また、上記と同様にして、「リンク設定」を選択した後、「第1リンク選択法」を選択すると、用意された複数種類の第1リンク選択法それぞれに対応するメニュータイトルが表示される。
【0070】
リンク機構は、ワールド座標系との接続関係により定義された第1リンクの座標系、その第1リンクとの接続関係により定義された第2リンクの座標系、…、そのリンク機構の先端の座標系というように、座標系の配列により定義される。ここでは、この座標系の配列のセットを「リンク座標系」、そのリンク座標系を構成する複数の座標系の接続関係を「親子関係」と称する。本実施形態では、関節データとして、リンク座標系および親子関係がD−Hパラメータで記述されており、さらにそのD−Hパラメータのパラメータ値(各リンクの長さ等)が記述されている。D−Hパラメータは広く知られたパラメータであり、詳細説明は省略する(例えば、「機械系のためのロボティクス」遠山茂樹著 総合電子出版社
参照)。
【0071】
上述のようにして、解析に適したリンク機構モデルを選択しても、そのリンク機構モデルと被解析用リンク機構との対応づけは不十分であり、被解析用リンク機構を構成する各リンクおよび各関節が、選択したリンク機構モデルの各リンクおよび各関節のどれに対応しているかを指示する必要がある。ここでは、この対応づけは、被解析用リンク機構の第1リンクを指定することで行なわれる。
【0072】
具体的には、解析に適したリンク機構モデルが選択されてそのリンク機構モデル画面40が表示されると、第1リンク選択法のデフォルト(初期状態)として「ピッキング選択」が選択され、リンク機構モデル画面40の下に、図示のように、「対応する第1リンク(赤色部)をCG上で選択してください」というメッセージが表示される。また、リンク機構モデル画面40上の第1リンクは、赤色で表示されている。そこで、ユーザは、CG画面30に表示された被解析用リンク機構の第1リンクにマウスのマークを移動させてマウスをクリックする。(以下では、この操作を「第1リンク」をピッキングする、と称する。他の場面でも同様である。)
CG画面30上で第1リンクがピッキングされると、CG画面30上の第1リンクが赤色で表示され、そのリンクが第1リンクとして選択されたことが明示される。
【0073】
尚、本実施形態においては、第1リンク選択法として、ここで説明した「ピッキング選択」のほか、上述の形状データおよび関節データとともに被解析用リンク機構のデータとして読み込まれているリンク名をボタンとともに表示しそのボタンをピッキングすることにより第1リンクを選択する「リンク名選択」、キーボード12(図3参照)からリンク名を入力する「リンク名入力」、CG画面30上にマークが表示され、それらのマークのうち第1リンクに対応するマークをピッキングすることにより第1リンクを選択する「関節マーク表示&ピッキング選択」が用意されており、ユーザの好みにより、いずれの選択法を使って第1リンクを選択してもよい。
【0074】
上記のようにして、被解析用リンク機構に対応するリンク機構モデルが選択され、被解析用リンク機構の第1リンクが指定されることにより、被解析用リンク機構の各リンクおよび各関節と、リンク機構モデルの各リンクおよび各関節との対応づけが行なわれる。この対応づけが行なわれると、リンク機構解析装置内部では、被解析用リンク機構の関節データからD−Hパラメータのパラメータ値(例えば被解析リンク機構の各リンクの長さ等)が、上記のようにして対応づけられたリンク機構モデルに対応する順運動学および逆運動学の解析的解法(後で例を示す)に代入される。
【0075】
ここでは、関節データからのパラメータ値の抽出法について例示的に説明する。
【0076】
(平行クランクの場合;図7参照)
平行クランクは、図7に示すように、ワールド座標系Σwに固定されたリンクlink1p、そのリンクlink1pの先に連結された第1リンクlink1、その第1リンクlink1の先端に関節を介して連結された第2リンクlink2、その第2リンクlink2の先端に関節を介して連結された第3リンクlink3、その第3リンクlink3の先端に位置する仮想上のリンクlink3cから構成されており、第1リンクlink1と第3リンクlink3は長さが等しくかつ常に平行であるという拘束条件が付されている。
【0077】
上述のようにして平行クランクのリンク機構モデルが選択され、さらに第1リンクがピッキングされると、関節データが記述されたファイルにその第1リンクのID番号が返され、そのID番号からそのファイル中の、リンク座標系および親子関係が記述されたリンク情報が検索される。ここでは、図7に示すようにその第1リンクの名前はlink1であるとする。
【0078】
ここでは、リンク情報が参照され、そのリンク情報中の親子関係の情報(図7参照)から、第1リンクlink1、第2リンクlink2、第3リンクlink3の各リンク長を表わすパラメータ値L1,L2,L1(平行クランクの場合、第1リンクlink1の長さ=第3リンクlink3の長さである)が読み取られ、平行クランクの順運動学および逆運動学の解析的解法を表わす数式中の各リンクの長さを表わすパラメータに、それら読み取られたパラメータ値が代入される。具体的には以下のとおりである。
【0079】
第1リンクのID番号により第1リンクlink1が特定されると、そのlink1の先のリンクlink2の情報が参照される。そこには、リンクlink2のD−Hパラメータのパラメータ値として、リンクの長さai、リンク間距離di、リンクのねじれ角αi、リンク間角度θi(iは第iリンクを示す。ここではi=2)の順に、それぞれ、L1,0.0,0.0,0.0と記述されているものとする。そこで、このリンクlink2のD−Hパラメータのパラメータ値からリンクの長さを表わすパラメータ値L1(具体的な数値)が読み出され、この平行クランクの順運動学および逆運動学の解析的解法を表わす数式中の、第1リンクの長さを表わすリンクパラメータ、および第3リンクの長さを表わすリンクパラメータにパラメータ値L1が代入される(平行クランクの場合、第1リンクの長さ=第3リンクの長さである)。
【0080】
次に第2リンクlink2の先の第3リンクlink3の情報が参照される。リンクlink3のD−Hパラメータのパラメータ値として、上記の順に、L2,0.0,0.0,θoff が記述されているものとする。L2は、第2リンクの長さ、θoff は、リンク間角度を表わす所定のオフセット値を表わす。この情報から、第2リンクの長さL2(具体的数値)が読み出され、この平行クランクの順運動学および逆運動学の解析的解法を表わす数式中の第2リンクの長さを表わすリンクパラメータにパラメータ値L2が代入される。
(1リンクの場合;図8参照)
1リンクは、図8に示すように、ワールド座標系Σw、リンクlink1p、そのリンクlink1pの先に連結された第1リンクlink1、その第1リンクlink1の先頭に位置する仮想上のリンクlink1cから構成されている。
【0081】
平行クランクの場合と同様にして、第1リンクのID番号により第1リンクlink1が特定されると、そのlink1の先のリンクlink1cの情報が参照される。そこには、リンクlink1cのD−Hパラメータのパラメータ値として、上記の順に、L1,0.0,0.0,0.0が記述されており、第1リンクlink1の長さL1(具体的な数値)が読み出され、この1リンクの順運動学および逆運動学を表わす数式中の第1リンクの長さを表わすリンクパラメータにパラメータ値L1が代入される。
(クランクの場合;図9参照)
クランクは、図9に示すように、ワールド座標系Σw、リンクlink1p、そのリンクlink1pの先に連結された第1リンクlink1、その第1リンクlink1の先端に関節を介して連結された第2リンクlink2、その第2リンクlink2の先端に関節を介して連結された第3リンクlink3、その第3リンクlink3の先端に位置する仮想上のリンクlink3cから構成されており、第3リンクlink3の先端は、リンクlink1pの座標Σ0の原点に対し図の上下方向(以下、上下方向をZ方向、図の左右方向をX方向とする)にオフセット値Zoff だけ高さの異なる位置でX方向にのみスライドするという拘束条件が付されている。
【0082】
平行クランクの場合と同様にして、第1リンクのID番号により第1リンクlink1が特定されると、その第1リンクlink1の先の第2リンクlink2の情報が参照される。そこには第2リンクlink2のD−Hパラメータのパラメータ値として、上記の順に、L1,0.0,0.0,0.0が記述されており、第1リンクlink1の長さを表わすパラメータ値L1(具体的な数値)が読み出され、このクランクの順運動学および逆運動学の解析的解法を表わす数式中の第1リンクの長さを表わすリンクパラメータにパラメータ値L1が代入される。
【0083】
次に第2リンクlink2の先の第3リンクlink3の情報が参照される。そこには、第3リンクlink3のD−Hパラメータのパラメータ値として、上記の順に、L2,0.0,0.0,0.0が記述されており、第2リンクlink2の長さを表わすパラメータ値L2(具体的な数値)が読み出され、このクランクの順運動学および逆運動学の解析的解法を表わす数式中の第2リンクの長さを表わすリンクパラメータにパラメータ値L2が代入される。
【0084】
さらに、第3リンクlink3の先のリンクlink3cの先のリンクlink3cの情報が参照される。そこには、リンクlink3cのD−Hパラメータのパラメータ値として、上記の順に、L3,0.0,0.0,0.0が記述されており、第3リンクlink3の長さを表わすパラメータ値L3(具体的な数値)が読み出され、このクランクの順運動学および逆運動学の解析的解法を表わす数式中の第3リンクの長さを表わすリンクパラメータにパラメータ値L3が代入される。
【0085】
本実施形態においては、上記のようにリンク機構モデルを選択して第1リンクを指定するだけの簡単な操作で、かつ、D−Hパラメータを用いて順運動学および逆運動学用のリンクパラメータが設定されるため、このリンク機構解析用に新たにリンクパラメータを入力することなく、その被解析用リンク機構解析用の順運動学および逆運動学の数式の設定が行なわれる。
【0086】
ユーザは、上記のようにして被解析用リンク機構に対応するリンク解析モデルの設定を行なった後、今度は実際にそのリンク機構をシミュレーション的に動かしてその動作確認を行なう。そのために、本実施形態では、先ず以下のようにして、その被解析用リンク機構の駆動源となるべき関節もしくはリンクを指定する。
【0087】
図4,図5に示すメインメニュー中の「駆動部設定」を選択する。すると、CRT表示部にその「駆動部設定」のサブメニューとして、図5に示すように、「駆動部選択」、「駆動型」、「駆動量入力法」と書かれたメニュータイトル群が表示される。そこで、ここでは「駆動部選択」を選択する。
【0088】
図10は、「駆動部選択」を選択したときに表示されるCG画面と、「駆動部選択のサブメニューを示した図である。
【0089】
本実施形態では、駆動部選択法として、この図10に示すように、「ピッキング選択」、「リンク名選択」、「リンク名入力」、「関節マーク表示&ピッキング選択」が用意されており、デフォルト(初期設定)としては「ピッキング選択」が選択されている。
【0090】
この「ピッキング選択」のとき、CRT表示部に、「CG上で駆動部を選択してください」と表示され、その駆動部としてのリンクをピッキングすると、そのCG画面上の、選択された駆動部(リンク)が緑色に変化し、そのリンクが駆動部として選択されたことを表示する。
【0091】
ただし、正確には、この時点では、その選択されたリンクがそのリンク機構を動かす駆動源(そのリンクがその位置、姿勢を変化させ、他のリンクや関節がそれに応じて動く)であるか、そのリンクとそのリンクの親のリンクとの間の関節が駆動源(その関節が回転し、それに応じてリンクや他の関節が動く)であるかは不明である。
【0092】
そこで、次に、これら2つ(リンクと関節)のいずれが駆動源であるかを入力する。但し、ここではデフォルトとして、これら2つのうち駆動部であるとして選択されたリンクが、駆動源であるとして設定されており、関節を駆動源とする場合のみ駆動源の設定操作を行なえばよい。ここでは、リンクと関節のうちのいずれを駆動源とするかを、「駆動型」と称す。
【0093】
図11は、駆動型設定法の説明図である。
【0094】
図5に示すサブメニュー中の「駆動型」を選択すると、図11に示すような各種の駆動型選択法に対応するメニュータイトル群が表示される。
【0095】
ここでは、「位置指令」すなわち駆動部として選択されたリンクが駆動源であって、駆動量を入力するにあたってはそのリンク位置が入力されることがデフォルトとして設定されている。
【0096】
「回転/直動関節」を選択すると、駆動型が関節値指令である旨、すなわち、駆動部として選択されたリンクの根元の関節が駆動源であって、駆動量を入力するにあたっては、その関節の回転角(回転関節の場合)、その関節の並進量(直動関節の場合)が入力される旨、選択される。
【0097】
尚、回転関節とはその関節がその関節を介して連結されたリンクどうしの角度を変化させる回転を行なう関節をいい、直動関節とはその関節の先に連結されたリンクを並進させる関節をいう。
【0098】
「他関節」は、回転/直動関節以外の関節、例えば球状の関節であってその先に連結されたリンクの向きを三次元的に変化させることのできるユニバーサルジョイント等を指すが、ここには、回転/直動関節以外の関節の例は示されておらず、したがってこの「他関節」を選択したときの動作については省略する。
【0099】
上記の「駆動型設定」で「位置指令」(デフォルト)を選択したときは、どのリンクを選択した場合であっても、そのリンク機構の先端を動かした場合の逆運動学が自動的に選択され、以下に述べる駆動量の入力を待って、そのリンク機構の先端がその入力された駆動量だけ駆動された場合の関節角度が求められ、リンク機構が移動され、その移動後のリンク機構の形状がCG画面として表示される。
【0100】
また、上記の「駆動型設定」で「回転/直動関節」を選択すると、その選択された駆動部および駆動型(すなわち駆動源としての関節)に応じた逆運動学が自動的に選択され、以下に述べる駆動量の入力を待って、その駆動源としての関節以外の関節の角度が求められてリンク機構が移動される。また、その駆動部および駆動型に応じた順運動学が自動的に選択され、そのリンク機構の先頭の位置が求められる。その移動後のリンク機構はCG画面として表示される。
【0101】
次に、駆動量入力法について説明する。
【0102】
図12は、駆動量入力法を指示するメニュータイトル群を示した図である。
【0103】
上記のようにして駆動部および駆動型を設定した後、そのリンク機構をどれだけの量駆動するかを示す駆動量が入力される。
【0104】
図5に示す「駆動部設定」のサブメニュー中の「駆動量入力法」を選択すると、図12に示すような、種々の駆動量入力法に対応するメニュータイトル群が表示され、ここでは「カーソル位置」がデフォルトとして設定される。その他の選択枝としては、「カーソル移動量」、「バリュエータ」、「数値入力」、「マウスボタン」、「キー」、「ファンクションキー」、「ダイヤル」が用意されている。以下、駆動型として「回転/直動関節」を選択した場合を例にして、これらの1つずつについて概要を説明する。
(カーソル位置)
図13は、カーソル位置による、関節角度入力法の説明図である。
【0105】
このカーソル位置による関節角度入力法の場合、駆動部として選択されたリンクの根元の関節に対する、図13の上方の位置を(X1,Z1)、ユーザがマウスを操作して画面上に設定したカーソルの位置を(X2,Z2)とすると、関節の回転角θref が、
θref =Tan−1[(Z2−Z1)/(X1−X2)]
として求められる。
(カーソル移動量)
ユーザがマウスを操作して、画面上のカーソルを、選択されているリンクをそのカーソルで引っぱるようにもしくは押すように移動させる。そのときのカーソルの初期位置を(X1,Z1)、終点位置を(X2,Z2)としたとき、
ΔZ=Z2−Z1
ΔX=X2−X1
に比例する量を現在の回転角θに加算もしくは減算することにより関節の移動後の回転角θref が、
θref =θ±ΔX・G
もしくは
θref =θ±ΔZ・G
として求められる。但し、Gは、あらかじめ設定された比例定数を表わす。
(バリュエータ)
図14は、バリュエータによる関節角度入力法の説明図である。
【0106】
「バリュエータ」を選択するとこの図14に示すバリュエータ画面が表示される。そこで、ユーザはマウスを操作して駆動源の関節に対応するバリュエータのボタンの位置にカーソルを移動させ、マウス操作によりそのカーソルでボタンをつまんで移動させる。その移動量がその関節の回転角に対応する。
(数値入力)
図15は、数値入力による関節角度入力法の説明図である。
【0107】
「数値入力」を選択すると、この図15に示すような数値画面が表示される。そこで、ユーザは、図3に示すキーボード12を操作して駆動源の関節を選びその関節の回転量を数値入力する。
(マウスボタン)
図16は、マウスボタンによる関節角度入力法を説明するための、各種マウスボタンの模式図である。
【0108】
マウスボタンには、図16(A)に示すように、ボタン1〜3の3つのボタンを備えたもの、図16(B)に示すように、ボタン1〜2の2つのボタンを備えたもの、図16(C)に示すようにボタン1のみを備えたものがある。
【0109】
図16(A)のボタン1〜3の3つのボタンを備えたマウスが接続されたシステムでは、ボタン1とボタン3が用いられ、その関節の現在の回転角をθ、マウスボタンを押している間の単位時間あたりの回転量変化量をΔθ、そのボタンを押している時間をdtとしたとき、駆動源としての関節の回転角θref が、
ボタン1の操作:θref =θ−Δθ・dt
ボタン3の操作:θref =θ+Δθ・dt
図16(B)の、ボタン1〜2の2つのボタン備えたマウスが接続されたシステムでは、ボタン1とボタン2が用いられ、上記と同様に駆動源としての関節の回転角度θref が、
ボタン1の操作:θref =θ−Δθ・dt
ボタン3の操作:θref =θ+Δθ・dt
として求められる。
【0110】
図16(C)の、ボタン1のみを備えたマウスが接続されたシステムでは、
ボタン1を1回だけΔtの時間押したままとしたとき、
θref =θ−Δθ・dt
ボタン1をダブルクリック(1回押して直ぐ離しその後直ちにもう1回押す)してΔtの時間押したままとしたとき、
θref =θ+Δθ・dt
で求められる。
【0111】
(キー)
「キー」が選択されたときは、キーボード12の2つのキー(例えばjキーとkキー)が用いられ、上記のマウスボタンの操作と同様にして、
jキーの操作:θref =θ−Δθ・dt
kキーの操作:θref =θ+Δθ・dt
が求められる。
【0112】
(ファンクションキー)
「ファンクションキー」が選択されたときは、キーボード12の2つのファンクションキー(例えばF1キーとF2キー)が用いられ、上記のマウスボタンの操作と同様に、
F1キーの操作:θref =θ−Δθ・dt
F2キーの操作:θref =θ+Δθ・dt
が求められる。
【0113】
(ダイヤル)
この「ダイヤル」は、図3に示すシステムに、操作子の1つとして、音量調整用ボリウム等と同様なダイヤルが備えられているときに用いられ、そのダイヤルを回すことにより駆動源の関節の回転量が入力される。
【0114】
本実施形態では、上記のような種々の駆動量入力法が用意されており、ユーザの好みや使い勝手に応じた駆動量入力法が選択される。尚、ここでは、関節を駆動源とし、その関節の回転量を入力する場合について例示したが、リンクを駆動源とする場合は上記の関節の回転量に代えて、そのリンクのZ方向ないしX方向の移動量が入力される。リンクの移動量の入力法についても、関節の回転量の入力法と同様に、上記の種々の入力法が用意されているが、上記の説明と同様であるため、ここではそれらの説明は省略する。
【0115】
このようにして駆動源の駆動量が入力されると、上述したようにその駆動量に応じた逆運動学、ないし順運動学が数値的に解かれ、リンク機構の移動が行われる。この移動後のリンク機構はCG画面に表示される。
【0116】
図17〜図19は、それぞれ、平行クランク、1リンク、クランクの場合の、上記のようにして入力された駆動量を表わす指令値入力と、それに対応した逆運動学、順運動学を示した図である。
【0117】
平行クランクの場合、指令値としてZ,X,θ ,θ ,θ (θ 〜θ の定義については図7参照)が入力されると、それぞれ図17に示す、既に解析的に解かれた逆運動学ないし順運動学にその指令値が代入され、その指令値に基づいて移動した後のリンク機構の形状が求められ、CG画面に表示される。図18に示す1リンクの場合、図19に示すクランクの場合も同様である。
【0118】
本実施形態によれば、上記のように、選択したリンク機構駆動部、駆動型に応じてあらかじめ解いた順運動学、逆運動学が選択されて数値的に解かれるため、ユーザは、順運動学、逆運動学を入力したり、順運動学、逆運動学自体を選択するような複雑なことは何ら意識せずに、そのリンク機構を容易に移動することができる。
【0119】
以上で、本発明のリンク機構解析装置の一実施形態の基本事項についての説明を終え、以下では、その一実施形態の一部に代えて採用し得る変形例、あるいは、その一実施形態に追加される事項について説明する。
【0120】
ここでは、先ず、図5,図6を参照して説明したリンク機構モデルの選択法に代わるリンク機構モデルの他の選択法について説明する。
【0121】
図20は、ここで説明するリンク機構モデルの選択法で用いられるメニュー画面を示す図、図21は、1自由度の各種リンク機構モデルのメニュータイトル群を示す図である。
【0122】
図20に示すメインメニュー中の「リンク設定」を選択すると、その「リンク設定」のサブメニューとして「自由度選択」、「第1リンク選択法」が表示される。「自由度選択」を選択すると、図21に示す「1自由度」、「2自由度」、「3自由度」というメニュータイトル群が表示される。そこで、「1自由度」を選択すると、1自由度のリンク機構モデルに対応するメニュータイトル群、例えば「1リンク」、「クランク」、「平行クランク」、……が表示される。「平行クランク」を選択すると、平行クランクの中のいくつかの形状のリンク機構モデルのメニュータイトルが表示されるため、それらの中から今回の被解析用リンク機構に適合したリンク機構モデルが選択される。
【0123】
このように、リンク機構モデルを自由度で分類しておいて、自由度で分類したメニューを表示することで、リンク機構の選択時の効率化が図られる。
【0124】
次に、図10、図11を参照して説明した駆動部、駆動型設定法に代わる、駆動源の設定法について説明する。
【0125】
図22〜図24は、それぞれ、平行クランク、1リンク、クランクの場合の、駆動源設定法の説明図である。
【0126】
ここでは、図5に示す「駆動部設定」→「駆動部選択」(図10)のサブメニューとして「駆動部記号」が登録されているものとし、リンク機構モデルおよび第1リンクを選択した後、「駆動部設定」→「駆動部選択」→「駆動部記号」を選択する。すると、リンク機構モデル画面に、リンク機構モデルのイラストに重畳されて、対応する位置に駆動部記号が表示される。この駆動部記号はリンク(位置指令)と関節とに記号が分かれており、それらのうちの1つをピッキングすることにより、図10,図11を参照した説明における駆動部の選択と駆動型の選択が1回の操作で同時に行われる。
【0127】
ここでは、直接的には、CG画面上ではなく、リンク機構モデル画面上で駆動部および駆動型の選択が行われるが、この段階では既に被解析用リンク機構の各リンクおよび各関節と、リンク機構モデルの各リンクおよび各関節とが対応付けられているため、この例に示すようにリンク機構モデル画面側で駆動部を設定することができる。この駆動部記号により駆動部を選択した場合も、リンク機構モデル画面およびCG画面双方において、選択された駆動部のリンクが緑色で表示される。
【0128】
ところで、図5,図6を参照して説明したリンク機構モデルの選択法、ないし図20,図21を参照して説明したリンク機構モデルの選択法の何れにおいても、解析用リンク機構に対応するリンク機構モデルをその外観形状から選択しているが、外観形状からは、被解析用リンク機構に対応するリンク機構モデルが一義的には定められない場合がある。これは、外観形状は同一であるがリンクどうしの結合関係の定義(関節定義と称する)が相違する場合があるからである。平行クランクを例に説明する。
【0129】
図25は、メニュータイトルを選択して所望の形状の平行クランクが選択された状態のリンク機構モデル画面を示す図、図26は、リンク機構モデル画面に表示された2つのリンク機構モデルの順運動学、およびそれら2つのリンク機構モデルの、リンク座標系、親子関係、指令値入力に対する逆運動学を示した図である。
【0130】
図25,図26に示すようにリンク機構モデルの外観は同一であっても、図26に示すように関節定義の異なる複数のリンク機構モデルが存在する場合がある。そのときには、図25に示すように、メニュータイトルを選択して所望の形状の平行クランクが選択された状態で、形状はその選択された形状であるが関節定義の異なる複数のリンク機構モデル画面を表示し、ユーザにより、それら複数のリンク機構モデル画面のうちの1つが選択される。その後、前述と同様にして、CG画面上で第1リンクの選択が行われる。
【0131】
あるいは、図25に示すように、複数のリンク機構モデルが表示された段階で、CG画面上で第1リンクを選択するだけで、それら複数のリンク機構モデルのうちそのCG画面に表示された被解析用リンク機構に対応するリンク機構モデルを特定することができるときは、表示された複数のリンク機構モデルの中の1つを選択することなくCG画面上で第1リンクを選択することにより、そのCG画面に表示された被解析用リンク機構に対応するリンク機構モデルを特定してもよい。例えば、図25,図26に示す例では、被解析リンク機構のリンク情報を参照し、その第3のリンクの根元の関節の(図26に示すP点の関節に対応する)初期状態における座標をP(Xint ,Zint )としたとき、Zint >0ならば図26(1)のリンク機構モデル、Zint <0ならば図26(2)のリンク機構モデルが選択される。尚、ここでは、図26に示すリンクlink1pの座標Σ0の原点のZ座標をZ=0としている。CG画面上でピッキングされたリンクが第1リンク以外のリンクであったときは、第1リンクとしては不適切であるため、第1リンク選択をやり直すように「第1リンクを選択し直してください」の文字が表示される。
【0132】
このように、形状的に同一の複数のリンク機構モデルが存在する場合に、CG画面上で第1リンクをピッキングするだけで自動的に、それら複数のリンク機構モデルの中から適合する1つのリンク機構モデルを選択するよう構成すると、ユーザは、関節定義の相違を意識する必要がなく、使い勝手が一層向上する。
【0133】
図27は、第1リンク選択の必要性を説明するためのCG画面の例を示す図である。
【0134】
これまで説明した実施形態は、本発明の仕組みを説明するために簡単な例を示している。しかし、実際に動作解析を行いたい製品は、幾つものリンク機構で構成されている場合がある。図27に示すように、ここでは少し複雑な例としてクランクが2つある例を考える。
【0135】
この場合、「リンク種選択」で「クランク」を選択した後の第1リンクの選択の際に、クランクA1(clankA1)かクランクB1(clankB1)かのどちらかをピッキングする必要があり、これは、一般的には自動判定は不可能である。他の種類のリンク機構の場合でも同様のことが生じ得る。したがって、一般的には、CG画面上のリンク機構の第1リンクをユーザが選択する必要がある。
【0136】
ただし、以下に例示するように、場合によっては、ユーザの手を煩わさずにCG画面上のリンク機構の第1リンクを特定でき、本実施形態では、以下のような場合には、第1リンクが自動判定される。
【0137】
図28は、図6と同様、リンク機構モデルの選択、およびそれに続く第1リンクの選択の操作手順を示す説明図である。
【0138】
図6を参照して説明した場合と同様にしてリンク機構モデルを選択しそのリンク機構モデルのイラストが表示された段階で、第1リンクを自動選択することができる場合は、「対応する第1リンク(赤色部)をCG上で選択してください」というメッセージに並んで、「第1リンク自動選択」のメッセージが表示される。この「第1リンク自動選択」をピッキングするとCG画面上に表示されたリンク機構の第1リンクの自動選択が行われる。
【0139】
この第1リンクを自動選択できる場合としては、主として、CG画面上に表示されたリンク機構が単体のリンク機構から成り立っている場合と、CG画面上に表示されたリンク機構は複数のリンク機構から成り立っている(例えば図27参照)が、1つのリンク機構を除き他の全てのリンク機構の第1リンクが既に選択されている場合とがある。以下、これら2つの場合について説明する。
【0140】
図29〜図31は、CG画面上に単体のリンク機構、すなわち、それぞれ、平行クランク、1リンク、クランクが表示されている場合の第1リンクの自動判定法の説明図である。
【0141】
図29〜図31に示すように、平行クランク、1リンク、クランクのいずれにおいても、図29〜図31に示す各親子関係をワールド座標(world)から順に辿っていったときに、最初にRotateタイプ(回動軸を有するタイプ)のリンクが第1リンクlink1であると判定される。
【0142】
図32は、CG画面上にクランクが2つ存在するリンク機構が表示されている場合において、一方のクランクの第1リンクが既に選択されている場合の第1リンクの自動判定法の説明図である。
【0143】
クランクAとクランクBのいずれのクランクの第1リンクも選択されていない状態においては、クランクA1とクランクA2のいずれも第1リンクになる可能性がある。しかし、例えばクランクA1が、既に、前述したユーザが第1リンクを選択する方法により既に選択されている場合、クランクBの第1リンクを自動判定することができる。自動判定の方法は、上述した方法と同様であり、親子関係においてworldが辿ってきたときの最初のRotateタイプのリンクのうち、第1リンクとして未だ選択されていないリンク(クランクB1)が第1リンクとして自動選択される。クランクBがクランク以外の他のリンク機構である場合も同様に判定できる。このように、第1リンクを自動選択することができる場合に自動選択するように構成すると、ユーザによる操作を簡略化することができる。
【0144】
次に、複数のリンク機構モデルを組合せて新たなリンク機構モデルを構築する手法について説明する。ここでは、あらかじめ用意されている多数のリンク機構モデルの中の2リンクとクランクとを組み合わせて新たなリンク機構モデルを構築する例について説明する。
【0145】
ここでは、先ず、前述と同様にして、2リンクとクランクとが組み合わされた被解析用リンク機構の形状データおよび関節データが読み込まれ、その形状データに基づく三次元CGモデルがCG画面に表示される。
【0146】
図33は、以下に説明するメニュータイトル群(A)とCG画面に表示されたCGモデル(B)を示した図、図34は、そのCGモデルを、クランクと2リンクとに分解して示した図である。尚、ここに示したCG画面のイラストには、CGモデルの他にリンク名等の余計な情報も示されているが、それらの情報は説明の目的で示したものであって、実際のCG画面には純粋に形状データに基づくCGモデルが表示される。
【0147】
図33(B)に示すCGモデルは、図34に示すような、クランク(A)と2リンク(B)との組合せと捉えることができる。
【0148】
ここでは、先ず、前述したようにして、クランクのリンク機構モデルを選択し、CG画面上でクランクの部分の第1リンクclank1をピッキングする。それに次いで、今度は2リンクのリンク機構モデルを選択し、CG画面上で2リンクの部分の第1リンク2link1をピッキングする。
【0149】
ここで、先に選択されたクランクのリンク機構モデルおよびその第1リンクの情報は、その後に2リンクのリンク機構モデルを選択した段階でも保存されている。尚、前述した機構解析のためにリンク機構モデルを選択した場合も同様であり、1つの解析用リンク機構が複数のリンク機構の組合せから成る場合も多いため複数のリンク機構モデルを同時に立ち上げることが可能である。
【0150】
次にメインメニュー(図20参照)から「拘束条件」を選択し、その「拘束条件」の選択により表示されたサブメニュー「編集」、「追加」、「削除」の中から「追加」を選択し、さらにその「追加」のサブメニューの中から「回転拘束」を選択する。すると、図33(B)に示すように、拘束条件(回転拘束)を示す図形がCG画面上に現れる。ここで、回転拘束とは、回転関節を介して連結することを意味する。
【0151】
この段階で、拘束点位置を入力する。すなわちクランクのどのリンクのどの点と、2リンクのどのリンクのどの点が回転拘束されているかを入力する。
【0152】
本実施形態では、この拘束点位置の入力法として‘数値入力’と‘マウスによる入力’との二種類の入力法が用意されている。
【0153】
‘数値入力’の場合は、ユーザによりクランクの拘束点の存在するリンクのリンク名(ここではリンク名:clank2)およびそのリンクclank2の座標系Σ2c(図33(B)参照)からみたその拘束点の座標(ここでは(0,0,Ld))と、2リンクの拘束点の存在するリンクのリンク名(ここではリンク名:clink2)およびその2link2の座標系Σ2b(図33(B)参照)からみたその拘束点の座標(ここでは(0,0,L2b))が数値入力される。これにより、クランクの拘束点と2リンクの拘束点が指定されそれらの拘束点どうしが回転関節を介して連結される。
【0154】
図35は、‘マウスによる入力’の説明図である。
【0155】
‘マウスによる入力’の場合、CG画面に表示された回転拘束を表わす図形をマウスで抓んで、その図形を、クランクと2リンクが連結された回転拘束位置に配置する。
【0156】
この配置操作の終了を受けて、装置内部では、クランクの、拘束点が位置するリンクの判定およびその判定されたリンクclank2の座標系Σ2cからみたその拘束点の座標の計算と、2リンクの、拘束点が位置するリンクの判定およびその判定されたリンク2link2の座標系Σ2bからみた拘束点の座標の計算が行われる。
【0157】
このようにしてクランクと2リンクとの回転拘束の位置が装置に認識される。
【0158】
次に、このようにして認識された新リンク機構モデルの登録が行われる。
【0159】
図36は、新規リンク機構モデルの登録法を示す説明図である。
【0160】
図20に示すメインメニュー中の「リンク機構情報」を選択し、そのサブメニュー中の「新規機構登録」を選択し、ファイル名(ここでは「clank+2link2」)とリンク種タイトル(ここでは「2リンク+クランク」)を入力する。すると、上記のようにして構築された新規のリンク機構モデルが、ファイルclank+2link.dataに保存される。ここでは、リンク機構モデルを自由度で分類しておくシステムが想定されており、クランクは1自由度、2リンクは2自由度であって拘束条件が1自由度であるのでこの新規のリンク機構モデルの自由度は1自由度に分類される。
【0161】
このファイルclank+2link2.dataの例を、図36に示す。
【0162】
新規のリンク機構モデルを既存のリンク機構モデルと同様な状態に登録するには、上記の、ファイルclank+2link2.dataの保存だけでは不十分であり、以下に説明するようにして、その新規リンク機構モデル用のイラスト等を作成する必要がある。ここで、〜.dataは文字列のファイルであり、そのファイル中に同じ名前〜を持つ〜.select,〜.drive等がある。
【0163】
図37は、そのイラストを表わす画像データの作成法の説明図である。
【0164】
画像処理ツールを用いて、形状データに基づく、図36に模式的に示すような側面図をCG画面に表示し、そのCG画面を2次元画面として取り込んで、ファイルclank+2link2.imageに保存する。ここではclank+2link2.dataと同じディレクトリにclank+2link2.imageが保存されると、図37に示すように、自由度に応じたリンク種類別メニューに、自動的に、その新規リンク機構モデル用のメニュータイトルが表示される。
【0165】
図38は、新規リンク機構モデルの第1リンク選択用画面の編集法の説明図である。
【0166】
ここでは、図形描画ソフトウェアを用いて、先ず、クランクの第1リンク選択画面を呼び出し、次いで2リンクの第1リンク選択画面を呼び出してクランクの画面に編集することにより、それらの画面が重なった2リンク+クランク用の画面が作成される。この作成された2リンク+クランク用の画面はclank+2link2.selectに保存される。
【0167】
図39は、新規リンク機構モデルの駆動部記号選択画面の編集法の説明図である。
【0168】
図20に示すメインメニュー中の「駆動部設定」を選択し、そのサブメニューの中から「駆動部記号編集」を選択し、キーボード12(図3参照)を操作して第1リンク選択画面のファイル名clank+2link2.selectを入力すると、その第1リンク選択画面と、関節指令および位置指令の記号が表示される。これら関節指令、位置指令は、マウスを操作して、その画面上の任意の位置に配置することができる。関節指令の場合は、その関節指令の記号をつまんで、その関節指令の記号を、第1リンク選択画面として表示されたリンク機構のイラスト上の関節に配置するとともに、キーボードからその関節の名称、例えばθ1,θ2等を入力する。位置指令の場合は、その位置指令の記号をつまんで、その位置指令の記号を、第1リンク選択画面上のリンクに配置するとともに、キーボードから対応するリンク機構の第1リンク名を入力する。このようにして駆動記号選択画面が編集した後、この駆動部記号選択画面をファイルclank+2link.driveに保存する。
【0169】
上記のようにして作成されたファイル群clank+2link.data、clank+2link.image、clank+2link.select、clank+2link.driveは決められたディレクトリに配置される。
【0170】
上記のようにして新たなリンク機構モデルを作成して登録しておくことにより、次回の解析では、既存のリンク機構モデルと同等に取り扱うことができる。
【0171】
図40は、その新たなリンク機構モデルの順運動学、逆運動学の計算法の説明図である。
【0172】
(クランクを駆動した場合)
クランクの先端位置(X ,Z )をクランクの順運動学で計算し、拘束点迄の長さLdを考慮して回転拘束の位置(Xrc,Zrc)が計算される。その後、2リンクの先端が(Xrc,Zrc)に位置するように2リンクの逆運動学を計算してθ1b,θ2bを求める。
【0173】
(2リンクを駆動した場合)
2リンクの順運動学から、2リンクの先端位置、すなわち回転拘束の位置(Xrc,Zrc)が求められ、クランク側の拘束点迄の長さLdを考慮してクランクの先端(X ,Z )を求める。その後、クランクの先端が、(X ,Z )に位置するようにクランクの逆運動学が解かれ、θ ,θ が求められる。
【0174】
このように、ユーザが常用するリンク機構モデルを追加登録することができるように構成しておくことによって、そのユーザにとってその後のリンク機構モデル設定の時間の短縮化が図られる。
【0175】
次に、本発明の第2のリンク機構解析装置の一実施形態、すなわち、これまでの説明における逆運動学に代わり、動力学を用いる手法について説明する。「動力学を用いる」とは、関節トルクもしくはリンクに作用する力を入力して運動方程式を解いて関節角度を求めることを意味する。ここでは平行クランクを例にして説明する。尚、動力学自体については公知であり、簡単な説明にとどめる。
【0176】
一般的に、機構の運動方程式を以下のように書くことができる。この運動方程式は、ニュートンの運動方程式とオイラーの運動方程式から導かれる(例えば、前掲の、「機械系のためのロボティクス」遠山茂樹著 総合電子出版社 参照)。これらの運動方程式は、剛体力学で用いられるものである。
【0177】
【数1】
Figure 0003602518
【0178】
ただし、Θは関節角度のn×1ベクトル、τは関節トルクのn×1ベクトル、M(Θ)はn×nの質量行列、
【0179】
【外1】
Figure 0003602518
【0180】
は遠心力やコリオリ力の項を示すn×1ベクトル、G(Θ)は重力などの外力を示すn×1ベクトルを表わし、Θ,τは、以下のように表わされる。
【0181】
【数2】
Figure 0003602518
【0182】
式(1)の運動方程式を解く(積分する)ことにより、関節角度θi(i=1,2,…,n)を求める。これによって解析的な逆運動学の式を用いることなく関節角度を求めることができる。
【0183】
ここで、式(1)の
【0184】
【外2】
Figure 0003602518
【0185】
はそのリンク機構毎に異なるパラメータである。予め、このパラメータをリンク機構毎に記録しておく。
【0186】
以下、具体例として、平行クランクをとりあげて説明する。
【0187】
図41は平行クランクの座標系を示す図である。
【0188】
先ず、前述した、第1のリンク機構解析装置の実施形態と同様にして、リンク設定、および第1リンク選択を行なう。
【0189】
第1リンクが選択されると、D−Hパラメータから、リンク・パラメータ(リンク長:L1,L2、オフセット:Θoff 等)が設定される。これは先端位置を求める運動学に用いるパラメータである。このリンク・パラメータに加え、予め用意してある運動方程式用のパラメータの中から、選択されたリンク機構に対応するパラメータが選択されて式(1)に代入される。
【0190】
これ以降、図41に示す平行クランクの例で説明する。
【0191】
(駆動部選択)
前述した、第1のリンク機構解析装置の実施形態における駆動部選択と同様であり、例えば「ピッキング選択により」第2リンクlink2を選択する。
【0192】
(駆動型設定)
ここでは、「駆動部選択」で選択されたリンク(ここでは第2リンクlink2)上のどの点にどれだけの外力が加えられたか(これを「リンクへの外力」と称する)と、「駆動部選択」で選択されたリンク(ここでは第2リンクlink2)の根元の関節のトルク(これを「関節トルク」と称する)の二種類のメニュータイトルがプルダウンメニュー形式で表示され、それら二種類のメニュータイトルのうちの1つが選択される。
【0193】
図41は、「駆動型設定」で「リンクへの外力」が選択された場合の説明図である。
【0194】
(指令値入力法)
「リンクの外力」が選択された場合、駆動部として選択されているリンク(ここでは第2リンクlink2)上の任意の点をマウスでつまんで動かし、その点からのマウスを動かした量(f1の矢印)に比例する力が、そのリンクに加わったものとする。この力f1を運動方程式(1)のG(Θ)(重力などの外力)に代入する。この操作は、例えば図3に示すCG画面30上で行ってもよい。
【0195】
図42は、「駆動型設定」が「関節トルク」の場合の図であり、この場合の指令値入力法は、前述した第1のリンク機構解析装置の、関節角度の指令値の入力法と同様である。ただし、この「関節トルク」の場合、カーソル位置による入力法(図13参照)は除かれる。この「関節トルク」の場合、「駆動部選択」で選択したリンク(ここでは第2リンクlink2)の根元にかかるトルクτ2を、運動方程式(1)(式(2)参照)に代入する。
【0196】
このようにしてリンクへの外力、あるいは関節トルクを代入した運動方程式(1)を解く(積分する)ことにより、関節角度θ (i=1,2,…,n)を求める。こうすることにより、解析的な逆運動学の式を用いることなく、関節角度を求めることができる。
【0197】
運動方程式(1)は、順次、各微小時間経過後のものが何度も繰り返し解かれるが、運動方程式(1)を何度も解いていくと、閉ループを有するリンク機構の場合、図43に示すように、link1,link2,link3からなる閉ループ・リンク系の先端点P1が、この先端点P2が本来固定されているべき点P2からずれることがある。そこで、ここでは、先端点P1に固定点P2に向かう方向の力f2を加えて先端点P1を固定点P2に収束させる拘束力を発生させ、閉ループが保たれるようにする。ここで、力f2は、下記式(3)に示すように、固定点P1と第3リンクlink3の先端点P2とのずれ量ΔPに比例するバネ系の力と、先端点P2の速度
【0198】
【外3】
Figure 0003602518
【0199】
(以下、ΔPドットと称する)
に比例するダンパー系の力との合成力とする。すなわち、
【0200】
【数3】
Figure 0003602518
【0201】
ただし、Kはバネ定数、Cは粘性係数である。
【0202】
閉ループ系の場合、この力f2が運動方程式(1)のG(Θ)に代入される。またリンクの外力もしくは関節トルクも閉ループを含まない場合と同様に代入される。
【0203】
以上の、動力学を用いて関節角度を求めるフローを図43に示す。
【0204】
先ず運動方程式(1)の、
【0205】
【外4】
Figure 0003602518
【0206】
に、予め用意してある運動方程式用のパラメータの中から、選択したリンク機構に応じた運動方程式用のパラメータを選択して代入する。
【0207】
次に、運動方程式(1)に、
【0208】
【外5】
Figure 0003602518
【0209】
を代入し、さらに上記のようにして入力した関節トルクτ(もしくはリンクへの外力f1)を入力し、その運動方程式を解いて関節角加速度Θダブルドットを数値的に求め、それを二重積分することにより関節角度Θを求め、運動学によりリンク機構の先端点P を求める。そのリンク機構が閉ループ系を含むならば拘束力f2を発生させ、閉ループ系であるか否かに拘らず、すなわち、拘束力f2を発生させるか否かに拘らず、運動方程式の数値解法を繰り返す。その間に、関節トルクτ(ないしリンクへの外力f1)が変更されたときはその変更された関節トルクτ(ないしリンクへの外力f1)を代入して運動方程式の数値解析を繰り返す。尚、運動方程式の数値解法はいくつか知られており、ここではいずれの数値解法を用いてもよい。
【0210】
このようにして動力学を用いたリンク機構解析が行われる。動力学を用いたリンク機構解析は、前述した、逆運動学を用いたリンク機構解析と比べ、以下の長所を有する。
【0211】
(1)リンク機構の幾何学的逆運動学は、数学的に解くことが困難である場合も多いが、運動方程式を求める方法はリンク機構の形状によらず一般性があり、その後の関節角度を求める手法はリンク機構の形状によらず同一であるので、動力学を用いる方法は、逆運動学をリンク機構毎に個別に解く方法よりも、適応範囲が広い。
【0212】
(2)簡単なリンク機構においても逆運動学を求めるより動力学で用いる運動方程式を求める方が容易である。
【0213】
(3)動力学の場合、積分の方法、パラメータの正確さ(例えば、M(Θ)の値を1にする等の工夫)によって、厳密性は欠くものの高速化を図ることもできる。
【0214】
(4)運動方程式を解いてリンク機構の各リンクを運動させ、その運動を表示することによって、逆運動学を解いた場合と同様に、リンク機構の動きを視覚的に検証することができる。
【0215】
次に、本発明のリンク機構関節データ演算装置の一実施形態について説明する。
【0216】
図2は、前述の説明では本発明のリンク機構解析装置の一実施形態の外観図であると説明したが、この図2は、本発明のリンク機構関節データ演算装置の一実施形態の外観図でもある。すなわち、ここでは、図2に示すコンピュータシステム内に、本発明のリンク機構解析装置の一実施形態と本発明のリンク機構関節データ演算装置の一実施形態との双方が実現されており、図示しないCADシステムからは被解析用リンク機構を構成する複数の部品の三次元形状を表わす形状データが入力され、図2に示すコンピュータシステム内に実現されたリンク機構関節データ演算装置で、その入力された形状データが表わす複数の部品の結合関係(関節)が定義され、これによって、リンク座標系および親子関係を表わすD−Hパラメータ、およびそのD−Hパラメータのパラメータ値からなる関節データが求められ、このようにして求められた関節データと図示しないCADシステムから入力された形状データが、図2に示すコンピュータシステム内に実現された、これまで説明してきたリンク機構解析装置に受け渡されるものとする。
【0217】
ここで説明するリンク機構関節データ演算装置は、大別して、CADシステムから、リンク機構を構成する複数の部品を組み上げた状態の形状データを入力する場合と、CADシステムからそれら複数の部品が部品ごとにばらばらの状態の形状データを入力する場合とのいずれにも対処可能なように構成されている。また、以下では図示および説明の簡単のため、関節の種類は、その関節で結合された部品がその関節を回動の中心として回動することのできる回転型関節と、その関節で結合された部品がその関節で直線的に移動することのできる直動型関節と、その関節で部品が動かないように固定される固定型関節との3種類の関節について説明する。
【0218】
図45は、メニュー画面の流れを示した説明図、図46は関節設定メニューのサブメニューを示した説明図、図47は、関節設定メニューのサブメニューの変形例を示した説明図、図48は、CADシステムから入力された複数の部品の形状データに基づくCG画面を表わした図である。
【0219】
先ず、図45に示す機構解析メインメニューにおいてメニュータイトル「CADファイル呼込」を選択すると、そのプルダウンメニューとして、メニュータイトル「組立状態」、「任意配置」、「部品」が現れる。ここでは、組立状態のCADファイルを読み出すものとし、メニュータイトル「組立状態」を選択すると、そのCADファイルに格納されている製品名が現れる。ここでは各「製品」が機構解析を行なうとしている、あるいは機構解析を行なった後のリンク機構を表わす形状データを表わしている。そこで、所定の製品(ここでは「製品2」とする)を選択すると、CG画面上に例えば図48に示すような組立後の複数の部品からなる「製品」の3次元形状を表わすCG画面が表示される。図48中の立体関節マークについては、以下に説明する。
【0220】
次に、図46に示す機構解析メインメニュー中のメニュータイトル「関節設定」を選択する。すると、画面上に関節設定メニューが現れる。そこで、今度は、その関節設定メニュー中のメニュータイトル「関節種類」を選択する。するとメニュータイトル「関節種類」のプルダウンメニューとして、図46に示すようにメニュータイトル「部品選択」、「親部品選択」、「立体関節マーク選択」、「適用」が表示される。
【0221】
そこで、先ず、メニュータイトル「部品選択」を選択し、CG画面(図48)上で関節を定義しようとする部品をマウスでクリックする。次に、メニュータイトル「親部品選択」を選択し、CG画面上で、その関節を定義しようとしている部品がその定義される関節で連結される親部品をクリックする。次に、メニュータイトル「立体関節マーク選択」を選択する。するとさらに、メニュータイトル「立体関節マーク(組立状態)」、「立体関節マーク(部品)」、「立体関節マーク(2次元)」、「スケール変換」が表示される。
【0222】
そこで「立体関節マーク(組立状態)」を選択すると、メニュータイトル「回転型関節」、「直動型関節」、「固定型関節」が表示された、「立体関節マーク」画面が現れる。ここでは「回転型関節」を選択する。すると、図48に示すように、CG画面上に回転型関節の立体関節マークが現れる。この回転型関節の立体関節マークは、立体的な矢印に矢羽根が付された形状としており、その矢印の方向で回転軸の方向を示し、その矢羽根の方向で回転軸基準点、すなわち、その回転型関節の関節角度零度の方向を示す。
【0223】
尚、ここで、図46に示すメニュータイトル「立体関節マーク選択」を選択した後、メニュータイトル「立体関節マーク(組立状態)」を選択したが、図46に示す機構解析メニュー中のメニュータイトル「CADファイル呼込」を選択したときメニュータイトル「組立状態」を選択しているため、この時点で、組立状態の「もの」について関節を定義しようとしていることがわかる。
【0224】
したがって、図47に示すように、メニュータイトル「立体関節マーク選択」を選択したときに、いきなり、立体関節マークを選択するメニュータイトル画面に移行するように構成してもよい。
【0225】
以上のようにして、関節を定義しようとする「部品」、その「親部品」およびその関節の種類(ここでは「回転型関節」)を指定した後、以下のようにして関節定義を行なう。
【0226】
図49は、回転型関節の定義を行なう手順を示した説明図である。
【0227】
上述のようにして、回転型関節の立体関節マークを選択すると、CG画面上に、図49(A)に示すように、関節を定義しようとしている部品の幾何基準座標系のxyzの3軸のうちの各2軸を含む直交3平面(xy平面,yz平面、zx平面)が表示される。そこで、それらの3平面の中から、その定義しようとしている回転型関節の回転軸がのるべき平面をピッキングし、あるいは、その平面の名前をキーボードから入力することにより選択する。尚、回転型関節の回転軸がこれらの3平面のいずれにものらない場合であっても、とり合えず、それらの3平面の中から、その回転軸を含む平面に近い平面を選んでおき、微調整は後で行なう。
【0228】
3平面のうちのいずれかの平面を選択すると、選択した平面を除く他の2平面は消え、代わりに、図49(B)に示すように、その選択した平面上に45°間隔で8つの方向を向いた8本の矢印(直線あるいは立体)が表示される。なお、この矢印は、例えば30°間隔で12の方向を向いた12本の矢印等であってもよい。この矢印は、回転型関節の、選択した平面内における回転軸方向を選択するためのものである。この図49(B)のように表示された複数の矢印のうちの1つの矢印を、ピッキングにより、あるいはその矢印の番号をキーボードで入力することにより、あるいは、デフォルト値としてある1本の矢印のみ変色させておいてキーボードの矢印キーを押して、矢印の変色を順次隣接する矢印に移動させることにより選択する。
【0229】
次に、必要に応じて、図49(C)に示すように、回転型関節の回転軸方向の微調整を行なう。この微調整を行なうには、図45に示す関節設定メニュー中のメニュータイトル「編集」を選択する。するとメニュータイトル「位置」、「姿勢」、「基準点設定」がプルダウンされ、ここでは、関節の姿勢を微調整するためのメニュータイトル「姿勢」を選択する。すると、図45に示すような「関節姿勢設定」画面が表示される。そこで、マウスを操作して、その画面中のバリュエータのつまみをつまんで移動させることにより、あるいは、その画面中のRx,Ry,Rzのいずれかをマウスでピッキングした後、キーボードから数値を入力し、あるいは、その画面中のRx,Ry,Rzのいずれかをマウスピッキングした後、図16を参照して説明した回転角度θref の値の増減と同様なマウス操作を行なうことにより、回転型関節の回転軸の姿勢を微調整する。尚,Rx,Ry,Rzは、それぞれ、x軸,y軸,z軸のまわりの回転角度を表わす。「関節姿勢設定」画面中のメニュータイトル「適用」を選択すると、関節姿勢が微調整され、CG画面が図49(D)の画面に移る。関節姿勢の微調整が不要のときは「関節姿勢設定」の画面を開くことなく、関節設定メニュー(図46参照)中の「適用」ボタンをピッキングすることにより、図49(D)の画面に移る。
【0230】
ここでは、これまでの手順で定められた回転軸の基準点、すなわち関節角度零度の方向を定める。この回転軸基準点を定めるために図49(D)に示すような45°間隔の8方向を表わす平面が表示され、そのうちの1つの平面を、ピッキング、番号入力、キーボードの矢印キーによる変色した平面の移動のいずれかにより選択する。この回転軸基準点の微調整を行なうには、図45に示す関節設定メニュー中のメニュータイトル「編集」を選択し、さらにメニュータイトル「基準点設定」を選択して、「基準点設定」画面を開く。図45に例示する「基準点設定」画面は複数の関節についてまとめて調整を行なう画面であり、ここでは、図48に示す「関節1」を指定しているため、「関節1」をピッキングし、マウス操作により、あるいはキーボードからの数値入力により、その回転軸基準点を微調整する。尚、ここでは、回転型関節の回転方向は右ねじの方向を正方向としている。このようにして回転軸基準点を微調整した場合は「基準点設定」画面中の「適用」ボタンを押すことにより、あるいは微調整が不要なときは関節設定メニュー中の「適用」ボタン(図48参照)を押すことにより、図49(E)の、回転軸設定画面に移る。ここでは、回転軸の位置が調整される。これまでの調整と同様、図45に示す関節設定メニュー中のメニュータイトル「編集」を選択し、さらにメニュータイトル「位置」を選択して「関節位置設定」画面を表示し、上述の関節姿勢の微調整と同様にして関節位置調整を行なう。この「関節位置設定」画面中の「適用」ボタンをピッキングすることにより、あるいは関節位置調整が不要の場合は、この「関節位置設定」画面を開くことなく関節設定メニュー中の「適用」ボタンを押すことにより、図49(F)に示すように、これまでの手順で選んだ回転軸の位置、姿勢に適合するように立体関節マークが配置される。
【0231】
このようにして、リンク機構を構成する各部品について順次関節が定義され、全ての部品についての全ての関節の定義が終了すると、図3に示すコンピュータシステム内ではその定義したリンク機構についての関節データ、すなわちD−HパラメータやそのD−Hパラメータのパラメータ値が求められる。この求められた関節データは、そのリンク機構の形状データと共に、前述したリンク機構解析に用いられる。
【0232】
図50は、立体関節マークのスケール変換の説明図である。
【0233】
立体関節マークの寸法RLは、部品の大きさに合わせて見やすい寸法に設定することが好ましい。そこでここでは、その立体関節マークを配置しようとする部品を包む最小包絡球を考え、その半径をRとし、その半径Rを定数K倍することにより、立体関節マークの寸法RL=K・Rを定める(・は乗算を示す)。
【0234】
この立体関節マークのスケール変換を行なうにあたっては、先ず、図45に示す関節設立メニューのメニュータイトル「関節種類」を選択し、図46に示す、「関節種類」のプルダウンメニュー中のメニュータイトル「立体関節マーク選択」を選択し、そのプルダウンメニュー中のメニュータイトル「スケール変換」を選択する。すると、図50に示す「立体関節マークスケール変換」の画面が表示される。そこで、その「立体関節マークスケール変換」画面中の「関節選択」ボタンを押した上で、CG画面上の、定義された関節の位置、姿勢に配置された立体関節マーク(各関節ごとに立体関節マークが配置されるため、複数の立体関節マークが配置されていることもある)のうち、スケール変換を行おうとする立体関節マークをピッキングにより指定する。あるいは、「関節選択」ボタンを押した上で関節名(例えば図50の例では「関節1」)をキーボードで入力することにより、スケール変換を行なうべき立体関節マークを指定する。
【0235】
このようにして、どの立体関節マークのスケール変換を行なうかを指定した上で、マウス操作により「立体関節マークスケール変換」画面中のバリュエータのつまみをつまんで動かすことにより、あるいはキーボードからの数値入力により、上述の係数のKの値を入力する。その後、「立体関節マークスケール変換」画面中の「適用」ボタンを押すことにより、その指定した立体関節マークが指定した寸法RL=K・Rにスケール変換される。部品との関係で立体関節マークが小さすぎ、あるいは大きすぎたときは、定数Kを再設定する。
【0236】
図51は、CG画面の表示態様の説明図である。
【0237】
図45に示す機構解析メインメニューに戻り、この機構解析メインメニュー中のメニュータイトル「視点等」を選択すると、そのプルダウンメニューとしてメニュータイトル「視点方向」、「三面図表示」、「部品表示」が表示される。その中の「部品表示」を選択すると、図51に示す「部品表示特性」画面が表示される。この画面中には、「部品選択」ボタンと、「ポリゴン」と「線画」との切り替えボタンと、透明度を指示するバリュエータがあり、先ず「部品選択」ボタンを押して、CG画面上の所望の部品をピッキングし、あるいは部品名を入力することで部品を選択する。次に、「ポリゴン」ボタンを押して、あるいは「ポリゴン」ボタンが押されている状態で透明度バリュエータを動かすと、その値が、部品の透明度を指示する透明度パラメータに代入されて、CG描画ツールに引き渡される。CG描画ツールは、その透明度パラメータが’1’のときはその部品は完全に不透明、その透明度パラメータが’0’のときはその部品は完全な透明であって中が透けて見えるように、その透明度パラメータの値によってその指定された部品の中が透けて見える程度を変更して描画する。このようにして、部品を半透明状態にして表示すると、立体関節マークが部品の中に埋もれてしまって見えなくなってしまうのを避けることができる。一方、「ポリゴン」に代え「線画」を選択すると、その部品を、その部品の裏側が見えないように陰線処理した線画を表示する。
【0238】
次に直動型関節の定義の仕方について説明する。
【0239】
図52は、CADシステムから入力された形状データに基づくCG画面を表わした図、図53は、直動型関節の定義を行なう手順を示した図である。
【0240】
前述の回転型関節を定義する場合と同様にして、CG画面上に、図52に示すような組立後の「製品」の三次元グラフィック画像を表示し、さらに、前述の回転型関節の場合と同様にして、ここで定義しようとしている直動型関節が配置される部品の選択、その親部品の選択、直動型関節の立体関節マークの選択を行なう。
【0241】
すると、回転型関節の場合と同様に、CG画面上に、図53(A)に示すような直交3平面が表示され、それらの3平面の中から直動関節の直動方向を含む平面が選択され、図53(B)に示すような複数(ここでは8つ)の方向を向いた複数の矢印が表示され、そのうちの1本を選ぶことにより直動関節の直動方向を指定する。次に、必要に応じて、図53(C)に示すように、その直動方向の姿勢の微調整を行ない、さらに、図53(D)に示すように直動基準点を設定し「適用」ボタンを押すことにより、その設定した位置に、直動型関節の立体関節マークが配置される。
【0242】
図54は、CADシステムから入力された形状データに基づくCG画面を表わした図である。ここでは、固定型関節の定義について説明する。
【0243】
上述と同様にして「部品選択」、「親部品選択」、「立体関節マーク選択」(ここでは固定型関節の立体関節マークの選択)を行なう。ここでは組立後のグラフィック画像が表示されており、固定型関節は選択した部品を選択した親部品に固定するためのものであるため、固定型関節の立体関節マークは任意の位置に任意の姿勢で配置してよい。したがって、上述の回転型関節や直動型関節の場合のような、回転軸ないし直動の方向を決定する作業は不要であり、ここでは、この固定型関節の立体関節マークは、この固定型関節を定義しようとした部品の親部品の基準座標の原点に配置される。
【0244】
以上では、回転型関節の定義、直動型関節の定義、固定型関節の定義に分けて説明を行なったが、1つのリンク機構中に複数種類の関節が混在していてもよい。
【0245】
以上のようにして全ての関節の定義が完了した時点で、関節設定メニュー中の「適用」ボタンないし「関節計算」ボタンを押すと、そのリンク機構の関節データが求められる。
【0246】
次にCADファイルから部品をばらばらに読み込んだ状態で関節定義を行なう手法について説明する。
【0247】
図55、図56は、ばらばらな部品について関節を定義する手法の説明図である。
【0248】
図45に示す機構解析メインメニューにおいて、「CADファイル呼込」を選択し、「部品」を選択し、いずれかの部品名(ここの例では「部品2」)を選択して、その部品をCG画面上に表示する。これを繰り返し、CG画面上に複数の部品を表示する。
【0249】
次に、「関節設定」を選択して関節設定メニュー画面を開き、その関節設定メニュー中の「関節種類」を選択し、図46に示す関節設定メニューのプルダウンメニュー中の「部品選択」を選択してCG画面上の部品を指定し、「親部品選択」を選択してCG画面上の親部品を指定する。
【0250】
さらに「立体関節マーク選択」を選択し、そのプルダウンメニュー中から「立体関節マーク(部品)」を選択する。すると、図46に示す立体関節結合マーク」画面が表示されるので、定義しようとする関節の種類(ここでは「回転型関節」とする)を選択する。
【0251】
この立体関節結合マークは、図46の「立体関節結合マーク」画面内、および図55に示すように、親部品用の立体結合マーク(立体関節マーク)と子部品用の立体結合マーク(立体関節マーク)とで構成されており、図55に示すように、ある1つの部品iには、自分が子部品となって、その親部品i−1と結合する関節に子部品用の立体結合マークJi.Cが配置され、自分が親部品となって、自分に対する子部品i+1と結合する関節に親部品用の立体結合マークJi+1.Pが配置される。それら子部品用立体関節マークJi.Cと親部品用立体結合マークとの間の距離DH.Lがその部品iのリンクの長さとなる。
【0252】
立体関節マークの3次元位置・姿勢から、D−Hパラメータの表記規則に従った値を計算してD−Hパラメータに代入する。
【0253】
CG画面上に、図56に示すように、CG画面上に複数の部品を表示しておいて、自分(部品1とする)に対する親部品(部品0)の、自分(部品1)と結合する位置、姿勢に親部品用の立体結合マークJ1.Pを配置し、自分(部品1)には、その親部品(部品0)と結合する関節の位置、姿勢に子部品用の立体関節マークJ1.Cを配置し、同様に、自分(部品1)に、自分(部品1)に対する子部品(部品2)と結合する親部品用の立体結合マークJ2.Pを配置し、自分(部品1)に対する子部品(部品2)には、自分(部品1)と結合する子部品用の立体結合マークJ2.Cを配置する。各親部品用、各子部品用の立体結合マークの配置の仕方は、図49を参照して説明した、親部品用、子部品用とに分かれていない立体関節マークの配置の仕方と同じであり、ここでは重複説明は省略する。
【0254】
上記のようにして、親部品用の立体結合マークと子部品用の立体結合マークを配置しておいて、図46の関節設定メニュー中の「適用」ボタンを押すと、CG画面内で、親部品用立体結合マークないし子部品用立体結合マークが、そのマークが配置された部品と一緒に移動し、図56に示すように、相互に対応する親部品用立体結合マークと子部品用立体結合マークとが結合した状態となる。
【0255】
このように、組立後の状態ではなく、部品をばらばらに読み込んでも、親部品用の立体結合マークと子部品用の立体結合マークを用いることにより、関節を定義することができる。
【0256】
この親部品用の立体結合マークと子部品用の立体結合マークを用いる場合、親部品用、子部品用の立体結合マークは、部品の表面と接触するように配置されることが多い。この場合、立体関節マーク(親部品用、子部品用の立体結合マークを含む)の部品表面への配置を容易に実現するために「干渉チェック」を行なうことが好ましい。
【0257】
図57は、立体関節マークと部品との干渉チェックの説明図である。
【0258】
「干渉チェック」とは、立体関節マークが、部品から離れているか、あるいは干渉している(接触ないし重なっている)かを、それら立体関節マークと部品の形状データ、位置データ等に基づいて自動的にチェックすることをいい、この「干渉チェック」を採用すると、立体関節マークを部品に近づけていったときに立体関節マークが部品表面に接触した位置で、立体関節マークを部品内に入り込まないように自動的に停止させたり、立体関節マークが部品に接触した状態のまま、その立体関節マークを部品表面上を滑らせることができ、立体関節マークを部品表面と接触した所望の位置に容易に配置することができる。
【0259】
この「干渉チェック」を行なうには、図45に示す機構解析メインメニュー中の「干渉チェック」ボタンを押してそのプルダウンメニューを開き「対象選択」を選択する。この「対象選択」を選択した上で、CG画面上で、干渉チェックを行なおうとする部品(図57の例では部品1)と立体関節マークをマウス操作でピッキングする。次いで、「干渉チェック」のプルダウンメニュー中の「オン」を選択すると、それらピッキングした2つの図形(ここの例では部品1と立体関節マーク)の間の干渉チェックが開始される。この干渉チェックが開始されると、CG画面上に、それら2つの図形どうしを最短距離で結んだ線が表示される。立体関節マークは、その立体関節マークをマウス操作でつまんだり、図45に示す「関節位置設定」画面を開いてそのバリュエータを動かすことによって、CG画面内で移動させることができるが、干渉(それら2つの図形どうしの距離が零)が生じると、その立体関節マークを部品1へさらに近づける方向に移動させようとしてもそれ以上は移動しないようにすることで、立体関節マークが、部品に入り込むことなくその部品表面に容易に配置される。
【0260】
図58、図59は、ばらばらな部品について直動型関節を定義する手法の説明図、図60,図61は、ばらばらな部品について固体型関節を定義する手法の説明図である。
【0261】
図46に示す「立体関節結合マーク」画面において、図55、図56を参照して説明した時の「回転型関節」の選択に代えて、「直動型関節」あるいは「固定型関節」を選択する点が異なるのみであり、詳細説明は省略する。1つのリンク機構中に複数種類の関節が混在していてもよいことは前述の通りである。
【0262】
次に、上記のようにして定義した関節で結合された部品の移動限界(「関節リミット」と称する)の設定の手法について説明する。
【0263】
図62は、関節リミット設定用の立体関節マーク(回転型関節の立体関節マーク)を示した図である。
【0264】
図45に示す関節設定メニュー中のメニュータイトル「可動範囲」を選択してそのプルダウンメニュー「可動制限(部品)」、「可動制限(組立)」、「関節角度」を開き、「可動制限(部品)」を選択する、すると、CG画面上に配置した立体関節マーク(固定型関節の立体関節マークは除く)の全て、あるいは、CG画面上に配置した子部品用立体結合マークの全てについて、図62に示すように、各立体関節マーク(子部品立体結合マークを含む)の先端の円錐部に最大値マークと最小値マークが表示される。また、これと同時に「関節リミット」画面を表示する。
【0265】
図63(A)〜(C)は、「関節リミット」画面の各例を示す図である。これらの「関節リミット」画面のいずれか1種類のみを用意しておいてもよいが、これらの「関節リミット」画面全てを用意しておき、表示を切り替えて使用できるように構成しておくことが好ましい。
【0266】
尚、親部品用の立体結合マークは、この関節リミットの設定の際は、子部品用の立体結合マークと結合して一体的な立体関節マークを形成しており、親部品用の立体結合マークに対し関節リミットを設定する必要はない。
【0267】
CG画面上に、図62の「初期状態」のように表示された立体関節マーク(子部品用立体結合マークを含む)をマウス操作でピッキングして選択し、あるいは、キーボードを操作して関節名(例えば「関節2」)を入力することにより、どの関節について関節リミットを設定しようとしているのかを入力する。すると、図63に示す「関節リミット」画面(ここでは図63(A)に示す「関節リミット」画面とする)に「関節2」が表示される。次いで、そのようにして選択した立体関節マーク中の最大値マーク(最小値マーク)をつまんで開くようにマウスを移動させる。するとそのマウスの動きに合わせてCG画面上で最大値マーク(最小値マーク)が移動する。
【0268】
ここでは図63(A)の「関節リミット」画面が表示されているものとし、上記のようにして最大値マーク(最小値マーク)を移動させると、その移動量に応じた角度値が、図63(A)の「関節リミット」に表示される。このようにしてマウス操作で関節リミットの最大値、最小値のおおまかな設定を行ない、正確な値とずれているときはキーボードにより正確な数値を入力する。
【0269】
あるいは、図63(B)に示す「関節リミット」画面を表示しておいてバリュエータを動かすことによっても、関節リミットの最大値、最小値が設定される。このバリュエータによる方法は、立体関節マークの最大値マーク、最小値マークをマウス操作によるピッキングで選択することが困難な場合に有効である。バリュエータを操作すると、最大値マークないし最小値マークはそのバリュエータの操作につれて移動する。
【0270】
図63(C)に示す「関節リミット」画面も、CG画面上に表示された立体関節マークの最大値マーク、最小値マークをマウスでピッキングするのが困難な場合に効果的であり、この「関節リミット」画面内の最大値マーク、最小値マーク(円上を移動するバリュエータのつまみ)をマウスでつまんで動かすことにより、関節リミットの最大値、最小値が設定される。
【0271】
この図63(C)の方式の場合は、図63(A),(B)の2つの方式の場合と比べ、最大値、最小値の角度が視覚的に直感できるという長所もある。
【0272】
図64,図65は、立体関節マークに付された最大値マーク、最小値マークの各例を示す図である。最大値マーク、最小値マークは、本実施形態では、図62,図64,図65のバリエーションを有しており、見やすい形状のものが採用される。
【0273】
図66は、直動型関節についての、関節リミット設定用の立体関節マークを示した図、図67(A),(B)は、直動型関節についての「関節リミット」画面の表示例を示した図である。直動型関節の場合、部品は直進するので、直動型関節については、回転型関節についての図63(C)に相当する「関節リミット」画面は用意されていない。
【0274】
図68,図69は、直動型関節についての立体関節マークに付された最大値マーク、最小値マークの各例を示す図である。本実施形態では、直動型関節についても、最大値マーク、最小値マークとして、図66,図68,図69に示すバリエーションを有しており、見やすい形状のものが採用される。
【0275】
図70は、関節リミット設定を行なう他の手法の説明図である。
【0276】
全ての設定を終えて「関節計算」のボタン(図45参照)を押すと、CG画面内の全ての立体関節マークが消える。その後、図45に示すメニューの流れの中で、関節設定メニューの「可動範囲」のボタンを押してそのプルダウンメニューを開き、「可動制限(組立)」を選択すると、図70に示す「関節リミット」画面が表示される。次に、図45に示すメニューの流れの中で「関節角度」を選択すると、「関節角度」画面が表示される。この「関節角度」画面中の「関節選択」ボタンを押してからCGを画面上の部品をマウスでピッキングする。ここではCG画面上の「部品2」をピッキングしたものとすると、図45中に示す「関節角度」画面および図70中に示す「関節リミット」画面に「部品2」と表示される。尚、図45の「関節角度」画面中では、「部品」となっているが、ここでは「部品2」と読み替えるものとする。あるいは、CG画面上で部品をピッキングする代わりに、キーボードから部品名を入力してもよい。
【0277】
「関節角度」画面中のバリュエータを動かすことにより、あるいはキーボードからの数値入力により関節角度を入力する。するとCG画面上の指定した部品(ここでは「部品2」)がその入力された角度に移動する。またその入力された角度は「関節角度」画面中に数値で表示される。オペレータがその角度を関節リミットの最小値として設定するのが適切であると判断すると、図70に示す「関節リミット」画面中の最小値の角度入力位置に数値入力のためのカーソル(図70ではアンダーラインで示されている)を動かしておきキーボードからその角度を数値入力する。
【0278】
次に、これと同様にして、指定した部品(ここでは「部品2」)を動かして、今度は最大値を数値入力する。これにより、その指定した部品(部品2)の関節についての関節リミットが設定される。以上の手順を各関節について順次行なう。
【0279】
図71は、図70を参照して説明した関節リミット設定方法の変形例を示す図である。
【0280】
この図71に示す「関節リミット」画面には、「最大値」、「最小値」の欄に指定用の枠が設けられている。図45に示す「関節角度」画面中のバリュエータを動かすことにより、あるいはキーボードからの数値入力により、回転角度を入力し、その角度を最小値ないし最大値として設定しようとするとき、図71に示す「関節リミット」画面中の最大値ないし最大値に対する枠をマウス操作でピッキングする。そうすると、「関節角度」画面中に表示された角度が、「関節リミット」画面中の、最小値ないし最大値の数値入力の欄に入力されて表示される。
【0281】
尚、ここでは回転型関節について例示したが、直動型関節についても同様の手法で関節リミットを設定することができる。ここではその説明およびその説明のための図の掲載は省略する。
【0282】
次に、関節設定の他の手法について説明する。
【0283】
図72は、CG画面上に二次元的に表示された部品を示す模式図、図73は、CG画面上に二次元的に表示された部品に、二次元的に表示された立体関節マークを配置する様子を示した模式図である。
【0284】
図45に示す機構解析メインメニュー中の「視点等」のボタンを押してプルダウンメニューを開き、「三面図表示」を選択すると、CG表面上にそれぞれが二次元的に描かれた三面図(x−y平面図,y−z平面図,x−z平面図)が表示される。但し、図72にはx−z平面図のみ示されている。三面図は、x,y,zの各方向毎に立体関節マーク(ここでは二次元表示された立体関節マーク)を正確に位置合わせすることができるため好ましい。
【0285】
次に、図45に示す関節設定メニュー中の「関節種類」のボタンを押して図46に示すプルダウンメニューを開き、「立体関節マーク選択」を選択してさらにそのプルダウンメニューを開き、「立体関節マーク(2次元)」を選択して「立体関節マーク」画面を開き、所望の関節(ここでは「回転型関節」とする)を選択する。
【0286】
表示されている三面図のうちのいずれかの図面(例えば図72、図73の例ではx−z平面)上の回転軸上にマウスのカーソルを移動させてマウスボタンを押すと、そのときのカーソル位置が回転型関節の回転軸の位置として定められ、その位置に回転型関節の立体関節マークが表示される。図72に示すx−z平面上で回転軸を指定したとき、図73のx−y平面,y−z平面に示すように、表示された立体関節マークが部品から離れ過ぎている場合がある。このときは、図45に示す「関節位置設定」画面を開き、バリュエータ等で、その立体関節マークを、その回転軸方向にのみ移動させる。
【0287】
回転軸の方向は、回転軸を指定した平面(ここではx−z平面)上で手前方向(紙面(画面)の表面に向いた方向)をデフォルト値とし、マウスボタン操作で奥行き方向(紙面(画面)の裏面が向いた方向)に反転させる。回転方向は、前述したように、右ねじが進む方向が正である。
【0288】
ここでは、回転軸のみ定まっており、回転軸基準点(関節の回転角度が零度の方向)は未だ設定されておらず、またこの回転軸をもつ関節で結合されるべき、部品(子部品)および親部品は未だ指定されていない。回転軸基準点の方向は、図49(D)を参照して説明した手法と同じ手法で設定される。
【0289】
その関節で結合されるべき部品(子部品)と親部品の選択も、前述と同様に、図6に示す「部品選択」ないし「親部品選択」を選択した後にCG画面上の部品をピッキングすること等により、指定される。
【0290】
あるいは、以下に説明する手法で、部品(子部品)、親部品を選択してもよい。
【0291】
図74は、部品(子部品)および親部品指定の一手法の説明図である。
【0292】
図46に示すメニュー中の「スケール変換」を選択する。すると、図74に示す「立体関節マークスケール変換」画面が表示されるとともに、立体関節マークと干渉している部品の一覧(図74(a)の例では、「部品0」、「部品1」、「部品3」の3つ)が表示される。そこで、その立体関節マークの寸法を縮めると、図74(b)のように、その立体関節マークと干渉している部品は「部品」と「部品1」との2つのみとなる。この段階で、その2つの部品のうちの一方の部品をピッキング、部品名入力等により親部品として指定すると、その残りの部品は自動的に、子部品として指定される。
【0293】
同様な手順で全ての関節に立体関節マークを配設した後、図46に示す「適用」ボタンを押すか、あるいは図45に示す「関節計算」を選択すると、そのリンク機構の関節データ(D−Hパラメータとそのパラメータ値)が算出される。
【0294】
図75、図76は、CG画面上に二次元的に表示された部品に、二次元的に表示された立体関節マーク(ここでは直動型関節用の立体関節マーク)を配置する様子を示した模式図である。
【0295】
ここでは図75にはy−z平面が示されており、図46に示す「立体関節マーク」画面で「直動型関節」を選択した後、図75に示すy−z平面上の関節点にカーソルを移動して指定すると、その指定された位置に直動型関節の立体関節マークが配置される。y−z平面以外の、x−y平面、x−z平面上での立体関節マークの位置がずれている時は、図45に示す「関節位置」画面を開いて、その立体関節マークを直動方向に移動させることによって位置合わせを行なう。以下の処理も回転型関節の場合と同様であり説明は省略する。また固定型関節についても同様の手順により配置することができるため、説明図の掲載および説明の双方を省略する。固定型関節の場合、その配置位置、姿勢は任意でよいことは前述したとおりである。
【0296】
次に、CADシステム側で、リンク機構を構成する部品の形状データだけでなく、その部品の関節の位置、姿勢を座標系で指定し、形状データとともにその関節を表わす座標系のデータも入力される場合の、関節定義の手順について説明する
ここでも、先ず複数の部品が組み立てられた状態の形状データを入力する場合について説明し、次いで、ばらばらな状態の部品の形状データを入力する場合について説明する。
【0297】
図77は、メニューの流れを示す説明図、図78は関節設定メニューのプルダウンメニューを示す図、図79は関節座標系の作成規則を示す説明図である。
【0298】
また、図80は、組み立てられた状態の形状データを入力する場合の関節定義方式の説明図である。
【0299】
ここでは、図80に示すように、CADシステムには、以下の条件が課されているものとする。
【0300】
(1)部品形状データの作成
(2)部品の組立データを作成する。
【0301】
(3)設計者が回転軸などの関節を意識して、回転型関節、直動型関節の位置、姿勢に座標を配置する。関節座標を配置する際には、図79に示すような、以下の規則に従う。すなわち、回転型関節の場合は、z軸を回転軸の方向とし、回転方向は、右まわり方向を正方向とする。また、x軸を回転基準点(関節角度が零度の方向)とする。直動型関節の場合は、Z軸を正の進行方向とし、xy平面を直動基準点とする。
【0302】
(4)組立てた部品の形状データと各座標系の名、位置、姿勢の情報をファイル出力する。
【0303】
CADシステムに上記の条件を課した上で、本実施形態では以下の手順により関節を定義する。
【0304】
(1)組み立てられた状態の部品の形状データを含むCADファイルの呼び込み
図77に示す機構解析メインメニュー中の「CADファイル呼込」を選択してプルダウンメニューを開き、「組立状態」のボタンを押すと「製品名」のメニューが表示される。そこで、所望の製品名(例えば「製品2」)を選択して、その製品の組み立てた状態の形状データを呼び込み、CG画面に表示する。
【0305】
(2)関節用座標選択
図77に示す関節設定メニュー中の「座標系表示」のボタンを押してプルダウンメニューを開き、「関節用座標系」のボタンを押すと、CADファイルのデータを基に、CG画面上に、図80に示すような関節用標座標系が表示される。
【0306】
(3)関節設定
図77に示す関節設定メニュー中の「関節種類」のボタンを押すと、図78に示すようなプルダウンメニューが表示され、「関節種類選択」を選択すると「関節種類選択」画面が表示される。そこで所望の型の関節(例えば「回転型関節」)を選択し、ついで、CG画面上に表示されている関節用座標系のうち、今回選択した型の関節を配置しようとする関節用座標系をマウス操作によりピッキングで指定する。指定された関節用座標系は、指定されたことを明示するために、例えば赤色に変色する。
【0307】
ついで、図78に示す「部品選択」を選択し、図80に示すCG画面上で対応する部品(例えば「部品1」)をマウス操作によりピッキングすることによりその部品を選択する。
【0308】
同様に、図78に示す「親部品選択」を選択し、図80に示すCG画面上で対応する部品(例えば「部品0」をピッキングにより選択する。
【0309】
以上に手順により、所望の関節用座標系に、所望の型の関節の立体関節マークが表示される。
【0310】
上記の手順を繰り返し全ての関節用座標系に各所望の型の関節の立体関節マークを表示させた後、図77に示す「関節計算」ボタンを押すと、D−Hパラメータおよびそのパラメータ値からなる関節データが求められる。
【0311】
次に、ばらばらな状態の部品の形状データを呼び込む場合について説明する。この場合、CADシステムには、上述の組立て後の形状データを呼び込む場合にCADシステムに課した条件のうち、(2)の部品の組立てデータの作成という条件は免除される。
【0312】
図81〜図85は、ばらばらな状態の部品の形状データを呼び込んで関節を設定する手順の説明図である。
【0313】
図77に示す機構解析メインメニュー中の「CADファイル呼込」を選択し、そのプルダウンメニュー中から「部品」ボタンを押し、CADシステムで作成された3次元形状データのファイルを呼び込む。部品毎に読み込んで、それらの部品を、例えばバリュエータや数値入力により、CG画面内の任意の位置、姿勢に配置する(図81参照)。あるいは「CADファイル呼込」のプルダウンメニューから「任意配置」ボタンをマウスで選択し、ファイルの製品名を選択すると、その製品を構成する複数の部位品が、CADシステムの出力ファイル中に書かれた位置、姿勢に配置されて、その製品表示される。
【0314】
次に、関節設定メニューの「座標系表示」のボタンを押してプルダウンメニューを開き「関節用座標系」のボタンを押すと、CADファイルのデータを基に、図82のように、CG画面上に関節用座標系が表示される。
【0315】
次に、関節設置メニューの「関節設置」のボタンを押してプルダウンメニューを開き、「関節種類選択」を選択し、「関節種類選択」画面の中から、「回転型関節」(または「直動型関節」、「固定型関節」)をメニューから選択する。ここでは「回転型関節」が選択されるものとする。次いで、座標系Σ11(図82参照)をマウスでピッキングする。さらに、座標系Σ01をマウスでキッピングすると、D−Hパラメータおよびそのパラメータ値を算出してΣ01に座標系を重ねるように部品を再配置する(図83参照)。
【0316】
さらに、回転軸と基準点の確認/設定を行なう。回転軸(デフォルトはZ軸)と基準点(デフォルトはX軸)を自動的に表示する。設計者がCADシステムで回転軸を意識して座標系を配置した場合は、ほとんどの場合、座標系は正しく設定されているものと考えられているが、もし意図した座標系と異なっているときは、関節設定メニューの「編集」のボタンを押してプルダウンメニューを開き、「位置」ないし「姿勢」のボタンを押して、「関節位置設定」もしくは「関節姿勢設定」の画面を開き、バリュエータ等により設置し直す。この微調整を含む「編集」については後で詳細に説明する。尚、図77に示すこれらの画面では「適用」ボタンは図示が省略されている。他の画面についても図示が省略されているものもある。
【0317】
あるいは、図84に示すように回転軸と基準点のデフォルトを表示すると同時、にそれで良いかどうかを確認するメニューを画面に出し、「Yes」または「No」のボタンをマウスで選択することでユーザの意志を確認し、「No」の場合には直ちに編集モードに入り、バリュエータ等を表示してもよい。
【0318】
基準点(関節の回転角度零度の点)は以下のようにして設定する。「関節角度」画面を開いた状態で、例えば「関節1」をキーボードで入力する。CG画面を見ながら、バリュエータまたは数値入力で関節角度を入力して、部品を移動させる。
【0319】
次に関節設定メニューの「編集」のボタンを押してプルダウンメニューを開き「基準点設定」のボタンを押すと、「基準点設定」画面が表示される。「基準点設定」ボタンを押すと、その角度が新たな基準点となる。
【0320】
図77の「関節計算のボタンを選択すると、リンクパラメータであるD−Hパラメータおよびそのパラメータ値が算出される。
【0321】
「編集は」、以下のようにして行なう。関節設定メニューの「編集」のボタンを押してプルダウンメニューを開いて、「位置」ないし「姿勢」のボタンを押した場合、あるいは、回転軸と基準点のデフォルトを表示すると同時にそれで良いかどうかを確認するメニューを表示しその画面上で「No」のボタンが押された場合に関節の「編集」が行なわれる。CADシステムで定義された関節用座標系は、±90°、±180°などの角度で間違えて配置されている可能性が高い。そこで、まず、関節設定メニューの「編集」のボタンを押してプルダウンメニューを開き「姿勢(簡易」を選択する。すると、6個の回転軸方向のボタンを持つメニューが表示される。
【0322】
そのメニュー画面内のボタンを押すと、回転軸は、対応する軸の方向に向きを変えて表示される。それらでは表わせない姿勢に変更したい場合は、「その他」のボタンを押すか、あるいは関節設定メニューの「編集」のボタンを押してプルダウンメニューを開き「姿勢」のボタンを押すことにより、「関節姿勢設定メニュー」画面を開き、あるいは数値入力で回転軸を移動させる。位置を変更したい場合には、関節設定メニューの「編集」のボタンを押してプルダウンメニューを開き、「位置」のボタンを押して、「関節位置設定」画面を開き、バリュエータ、数値入力で移動させる。この時、機構解析メインメニューの「視点等」を選択し、「三面図表示」を選択すると、x,y,z軸方向から見た三面図が表示され、各方向の位置、姿勢合わせを正確に行ない易くなる。
【0323】
図86は、サブウインドウでの部品の待機と繰り上げの表示手法の説明図である。
【0324】
基準座標から適度に離れてみた(適度に縮小された)部品が、CADファイルに書かれた順、または呼び込まれた順に各サブウインドウに表示される。関節設定により部品が結合されると、その結合された部品はメインウインドウに移り、空になったサブウインドウに残りの部品が表示される。
【0325】
このようなサブウインドウを用いると、見やすい画面となり関節設定が一層容易となる。
【0326】
図87は、仮想的な関節モデルを含むCG画面の例を示す図である。
【0327】
上述の説明では、CADシステムで関節座標系が定義されるとして説明したがCADシステムで、関節座標系の代わりに関節の位置、姿勢を模擬した仮想的な関節モデルを作成し、CADシステムからその関節モデルの位置、姿勢のデータを受け取ってその位置、姿勢に立体関節モデルを配置し、その後の手順を進めてもよい。この仮想的な関節モデルは、作成が簡単な形状(円錐、円柱など)でよく、色データ(例えばRGB値が0.11,0.11,0.11など)により、部品の部分と関節モデルとを区別することが好ましい。
【0328】
【発明の効果】
以上説明したように、本発明のリンク機構関節データ演算装置によれば、関節の種類やその動きが直感的に解り易く、表示される画面を見ながら、簡単な操作で、リンク機構の関節データを生成するために必要となる関節に関するデータを入力することができる。
【図面の簡単な説明】
【図1】本発明の第1および第2のリンク機構解析装置の基本ブロック図である。
【図2】本発明のリンク機構関節データ演算置の基本ブロック図である。
【図3】本発明のリンク機構解析装置の一実施形態の外観図である。
【図4】CRT表示部に表示された画面の一態様を示す図である。
【図5】メインメニューおよびサブメニューの一覧を表わした図である。
【図6】リンク機構モデルの選択、およびそれに続く第1リンクの選択の操作手順を示す説明図である。
【図7】平行クランクのリンク機構モデルのリンク座標系および親子関係を示す図である。
【図8】1リンクのリンク機構モデルのリンク座標系および親子関係を示す図である。
【図9】クランクのリンク機構モデルのリンク座標系および親子関係を示す図である。
【図10】「駆動部選択」を選択したときに表示されるCG画面と、「駆動部選択」のサブメニューとを示した図である。
【図11】駆動型設定法の説明図である。
【図12】駆動量入力法を指示するメニュータイトル群を示した図である。
【図13】カーソル位置による、関節角度入力法の説明図である。
【図14】バリュエータによる関節角度入力法の説明図である。
【図15】数値入力による関節角度入力法の説明図である。
【図16】マウスボタンによる関節角度入力法を説明するための、各種マウスボタンの模式図である。
【図17】平行クランクの順運動学と、平行クランクの、駆動量を表わす指令値入力に対応した逆運動学を示した図である。
【図18】1リンクの順運動学と、1リンクの、駆動量を表わす指令値入力に対応した逆運動学を示した図である。
【図19】クランクの順運動学と、クランクの、駆動量を表わす指令値入力に対応した逆運動学を示した図である。
【図20】メインメニューおよびサブメニューの一覧を表わした図である。
【図21】1自由度の各種リンク機構モデルのメニュータイトル群を示す図である。
【図22】平行クランクの場合の、駆動源設定法の説明図である。
【図23】1リンクの場合の、駆動源設定法の説明図である。
【図24】クランクの場合の、駆動源設定法の説明図である。
【図25】リンク機構モデル画面を示す図である。
【図26】リンク機構モデル画面に表示された2つのリンク機構モデルの順運動学、およびそれら2つのリンク機構モデルの、リンク座標系、親子関係、指令値入力に対する逆運動学を示した図である。
【図27】第1リンク選択の必要性を説明するためのCG画面の例を示す図である。
【図28】リンク機構モデルの選択、およびそれに続く第1リンクの選択の操作手順を示す説明図である。
【図29】CG画面上に単体の平行クランクが表示されている場合の第1リンクの自動判定法の説明図である。
【図30】CG画面上に単体の1リンクが表示されている場合の第1リンクの自動判定法の説明図である。
【図31】CG画面上に単体のクランクが表示されている場合の第1リンクの自動判定法の説明図である。
【図32】CG画面上にクランクが2つ存在するリンク機構が表示されている場合において、一方のクランクの第1リンクが既に選択されている場合の第1リンクの自動判定法の説明図である。
【図33】メニュータイトル群(A)とCG画面に表示されたCGモデル(B)を示した図である。
【図34】図32に示すCGモデルをクランクと2リンクに分解して示した図である。
【図35】拘束点位置の‘マウスによる入力’の説明図である。
【図36】新規リンク機構の登録法を示す説明図である。
【図37】新規リンク機構モデルのイラストを表わす画像データの作成法の説明図である。
【図38】新規リンク機構モデルの第1リンク選択用画面の編集法の説明図である。
【図39】新規リンク機構モデルの駆動部記号選択画面の編集法の説明図である。
【図40】新規リンク機構モデルの順運動学、逆運動学の計算法の説明図である。
【図41】平行クランクの座標系を示す図であって、動力学を用いて、リンクに外力を加えた場合の関節角度を求める手法の説明図である。
【図42】平行クランクの座標系を示す図であって、動力学を用いて、関節にトルクを発生させた場合の関節角度を求める手法の説明図である。
【図43】平行クランクの座標系を示す図であって、閉ループ系リンク機構における拘束力発生の説明図である。
【図44】動力学を用いて関節角度を求めるフローを示す図である。
【図45】メニュー画面の流れを示した説明図である。
【図46】関節設定メニューのサブメニューを示した説明図である。
【図47】関節設定メニューのサブメニューの変形例を示した説明図である。
【図48】CADシステムから入力された複数の部品の形状データに基づくCG画面を表わした図である。
【図49】回転型関節の定義を行なう手順を示した説明図である。
【図50】立体関節マークのスケール変換の説明図である。
【図51】CG画面の表示態様の説明図である。
【図52】CADシステムから入力された形状データに基づくCG画面を表わした図である。
【図53】直動型関節の定義を行なう手順を示した図である。
【図54】CADシステムから入力された形状データに基づくCG画面を表わした図である。
【図55】ばらばらな部品について関節を定義する手法の説明図である。
【図56】ばらばらな部品について関節を定義する手法の説明図である。
【図57】立体関節マークと部品との干渉チェックの説明図である。
【図58】ばらばらな部品について直動型関節を定義する手法の説明図である。
【図59】ばらばらな部品について直動型関節を定義する手法の説明図である。
【図60】ばらばらな部品について固体型関節を定義する手法の説明図である。
【図61】ばらばらな部品について固体型関節を定義する手法の説明図である。
【図62】関節リミット設定用の立体関節マーク(回転型関節の立体関節マーク)を示した図である。
【図63】「関節リミット」画面の各例を示す図である。
【図64】立体関節マークに付された最大値マーク、最小値マークの例を示す図である。
【図65】立体関節マークに付された最大値マーク、最小値マークの例を示す図である。
【図66】直動型関節についての、関節リミット設定用の立体関節マークを示した図である。
【図67】直動型関節についての「関節リミット」画面の表示例を示した例である。
【図68】直動型関節についての立体関節マークに付された最大値マーク、最小値マークの例を示す図である。
【図69】直動型関節についての立体関節マークに付された最大値マーク、最小値マークの例を示す図である。
【図70】関節リミット設定を行なう手法の説明図である。
【図71】図70を参照して説明した関節リミット設定方法の変形例を示す図である。
【図72】CG画面上に二次元的に表示された部品を示す模式図である。
【図73】CG画面上に二次元的に表示された部品に、二次元的に表示された立体関節マークを配置する様子を示した模式図である。
【図74】部品(子部品)および親部品指定の一手法の説明図である。
【図75】CG画面上に二次元的に表示された部品を示す模式図である。
【図76】CG画面上に二次元的に表示された部品に、二次元的に表示された立体関節マーク(ここでは直動型関節用の立体関節マーク)を配置する様子を示した模式図である。
【図77】メニューの流れを示す説明図である。
【図78】関節設定メニューのプルダウンメニューを示す図である。
【図79】関節座標系の作成規則を示す説明図である。
【図80】組み立てられた状態の形状データを入力する場合の関節定義方式の説明図である。
【図81】ばらばらな状態の部品の形状データを呼び込んで関節を設定する手順の説明図である。
【図82】ばらばらな状態の部品の形状データを呼び込んで関節を設定する手順の説明図である。
【図83】ばらばらな状態の部品の形状データを呼び込んで関節を設定する手順の説明図である。
【図84】ばらばらな状態の部品の形状データを呼び込んで関節を設定する手順の説明図である。
【図85】ばらばらな状態の部品の形状データを呼び込んで関節を設定する手順の説明図である。
【図86】サブウインドウでの部品の待機と繰り上げの表示手法の説明図である。
【図87】仮想的な関節モデルを含むCG画面の例を示す図である。
【符号の説明】
12 キーボード
13 マウス
14 CRT表示部
20 メニュー画面
30 被解析用リンク機構のグラフィック画面
40 リンク機構モデル画面
100 リンク機構解析装置
101 ファイル記憶手段
102 入力手段
103 第1の操作子
104 第2の操作子
105 第3の操作子
106 演算手段
107 表示手段
108 第4の操作子
109 第1リンク検出手段
110 新リンク機構モデル生成手段
111 本体部
201 形状データ入力手段
202 関節定義用操作子
203 表示手段
204 関節データ演算手段
205 干渉チェック手段
206 関節リミット定義用操作子

Claims (9)

  1. リンクおよび関節を有するリンク機構を構成する複数の部品の三次元形状を表わす形状データを入力する形状データ入力手段、
    関節を種類別に三次元的にモデル化してなる複数種類の立体関節マークの中からいずれかの立体関節マークを選択して、選択した立体関節マークを、前記形状データ入力手段により入力された部品どうしが結合される関節部分に、所定の位置および所定の姿勢に配置することにより、該部品どうしを結合する関節の種類、位置および姿勢を定義する関節定義用操作子、
    前記形状データ入力手段により入力された部品および前記立体関節マークを表示する表示手段、および
    前記立体関節マークが前記関節部分に配置されたことを受けて、該立体関節マークが配置された部品を含むリンク機構のリンクおよび関節の結合関係を表わすパラメータと該パラメータのパラメータ値とが記述された関節データを求める関節データ演算手段を備えことを特徴とするリンク機構関節データ演算装置。
  2. 前記形状データ入力手段が、相互に組み立てられた状態の複数の部品の三次元形状を表わす形状データを入力するものであって、
    前記関節定義用操作子が、前記形状データ入力手段により入力された、相互に組み立てられた状態に配置された複数の部品の関節部分に、前記立体関節マークを配置するものであることを特徴とする請求項1記載のリンク機構関節データ演算装置。
  3. 前記形状データ入力手段が、組立前の状態の複数の部品の三次元形状を表わす形状データを入力するものであって、
    前記関節定義用操作子が、相互に結合される複数の部品の各関節部分それぞれに、位置および姿勢が相互に対応することを示す各立体関節マークをそれぞれ配置するものであることを特徴とする請求項1記載のリンク機構関節データ演算装置。
  4. 前記立体関節マークが前記部品に干渉したか否かを検査する干渉チェック手段を備えたことを特徴とする請求項1記載のリンク機構関節データ演算装置。
  5. 前記形状データ入力手段が、前記形状データとともに関節位置を表わす関節位置データを入力するものであって、
    前記関節定義用操作子が、前記関節位置データが表わす関節位置に前記立体関節マークを配置する操作を含む操作を行なうためのものであることを特徴とする請求項1記載のリンク機構関節データ演算装置。
  6. 前記表示手段が、前記部品を所定の方向に投影した二次元形状を表示するものであって、
    前記関節定義用操作子が、前記二次元形状中の関節位置を指定することにより該関節位置に前記立体関節マークを配置する操作を含む操作を行なうためのものであることを特徴とする請求項1記載のリンク機構関節データ演算装置。
  7. 関節により結合された部品の移動限界を定めるための関節リミット定義用操作子を備えたことを特徴とする請求項1記載のリンク機構関節データ演算装置。
  8. 前記立体関節マークが、関節により結合された部品の移動位置を模擬するマーク部分を有し、前記関節リミット定義用操作子が、前記マーク部分を該部品の移動限界位置に対応する位置に移動させることによって該部品の移動限定を定めるものであることを特徴とする請求項7記載のリンク機構関節データ演算装置。
  9. 前記関節リミット定義用操作子が、前記表示手段に表示された、関節により結合された部品を該部品の移動限界位置に移動させることによって該部品の移動限界を定めるものであることを特徴とする請求項7記載のリンク機構関節データ演算装置。
JP2002195550A 1995-11-07 2002-07-04 リンク機構関節データ演算装置 Expired - Fee Related JP3602518B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002195550A JP3602518B2 (ja) 1995-11-07 2002-07-04 リンク機構関節データ演算装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP7-288843 1995-11-07
JP28884395 1995-11-07
JP2002195550A JP3602518B2 (ja) 1995-11-07 2002-07-04 リンク機構関節データ演算装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP06781996A Division JP3361007B2 (ja) 1995-11-07 1996-03-25 リンク機構解析装置

Publications (2)

Publication Number Publication Date
JP2003067427A JP2003067427A (ja) 2003-03-07
JP3602518B2 true JP3602518B2 (ja) 2004-12-15

Family

ID=26557355

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002195550A Expired - Fee Related JP3602518B2 (ja) 1995-11-07 2002-07-04 リンク機構関節データ演算装置

Country Status (1)

Country Link
JP (1) JP3602518B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018205707A1 (zh) * 2017-05-09 2018-11-15 中国科学院计算技术研究所 机器人的逆运动学求解系统

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4934806B2 (ja) * 2006-05-26 2012-05-23 国立大学法人 東京大学 モーションキャプチャを用いたリンク機構モデルのリンク長パラメータの推定法及び装置
JP5792226B2 (ja) 2013-05-29 2015-10-07 株式会社神戸製鋼所 多関節リンク機構の逆運動学解法、及びこの逆運動学解法を利用した教示データ作成装置
JP6024723B2 (ja) * 2013-09-30 2016-11-16 キヤノンマーケティングジャパン株式会社 情報処理装置、その制御方法、及びプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018205707A1 (zh) * 2017-05-09 2018-11-15 中国科学院计算技术研究所 机器人的逆运动学求解系统

Also Published As

Publication number Publication date
JP2003067427A (ja) 2003-03-07

Similar Documents

Publication Publication Date Title
JP3361007B2 (ja) リンク機構解析装置
JP6193554B2 (ja) 3次元表示部を備えたロボット教示装置
US20020123812A1 (en) Virtual assembly design environment (VADE)
US6282455B1 (en) Walk-through human/machine interface for industrial control
JP3773789B2 (ja) マシンビジョンシステムのための図形制御流れ及び関連ソフトウェアを会話形で開発する方法及びシステム
US7076322B2 (en) System and method for satisfying move constraints when performing a motion control sequence
US7076332B2 (en) System and method for invoking execution of a sequence of operations that includes motion control, machine vision, and data acquisition (DAQ) functionality
US20060279573A1 (en) Systems and methods for generating 3d simulations
US7930643B2 (en) System and method for previewing a sequence of motion control operations
WO1995011481A1 (en) Object-oriented curve manipulation system
US7437684B2 (en) Graphical interface system for manipulating a virtual dummy
JP3602518B2 (ja) リンク機構関節データ演算装置
US7184044B2 (en) Electronic drawing viewer
JP4769942B2 (ja) 3dデザイン支援システム及び3dデザイン支援方法
JP3240817B2 (ja) 速度指令による三次元座標入力方法
Hulin et al. Interactive features for robot viewers
Phillips Jack user's guide
Kuester et al. Designers workbench: toward real-time immersive modeling
Sharma et al. Interactive Visualization & Augmentation of Mechanical Assembly Sequences
Bon et al. Graphics-based operator control station for local/remote telerobotics
JPH08297750A (ja) 3次元図形の表示状態変更方法および3次元図形表示装置
Tor SARM: a computer graphics simulator for generic robot manipulators
US8674983B1 (en) System and method for synchronizing and using a three dimensional view with a block diagram model
Lodes Robot Simulator in MATLAB
Phillips Jack 5 User's Guide 5 User's Guide

Legal Events

Date Code Title Description
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: 20040914

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040922

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071001

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081001

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081001

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091001

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091001

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101001

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101001

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111001

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111001

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121001

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121001

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131001

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees