JP5487525B2 - マニピュレータの制御装置 - Google Patents
マニピュレータの制御装置 Download PDFInfo
- Publication number
- JP5487525B2 JP5487525B2 JP2011194167A JP2011194167A JP5487525B2 JP 5487525 B2 JP5487525 B2 JP 5487525B2 JP 2011194167 A JP2011194167 A JP 2011194167A JP 2011194167 A JP2011194167 A JP 2011194167A JP 5487525 B2 JP5487525 B2 JP 5487525B2
- Authority
- JP
- Japan
- Prior art keywords
- manipulator
- rotation angle
- hand
- joint
- posture
- 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
Links
Images
Landscapes
- Manipulator (AREA)
Description
各関節の現在回転角の演算処理では、制御装置14の関節現在回転角取得部30は、各駆動部18のエンコーダ26a,26bの検出信号に基づいて各関節の現在回転角(θ1r,θ1p,θ2r,θ2p,θ3r,θ3p,θ4r,θ4p,θ5r,θ5p)を演算する。詳細には、各エンコーダの検出信号(パルス信号)をカウントし、これにセンサ固有のスペックとして予め記憶された所定の回転角度変換係数を乗じて、各関節の現在回転角を演算する。そして、演算した各関節の現在回転角は、図示しないRAM(Random Access Memory:ランダムアクセスメモリ)等に保存するとともに、表示装置15の操作画面の関節現在回転角表示欄45に表示させるようになっている。
図8は、手先の現在位置姿勢の演算処理の詳細を表すPAD図である。この手先の現在位置姿勢の演算処理では、制御装置14の手先現在位置姿勢演算部32は、まず、ステップ64にて、手元現在位置姿勢取得部31で取得されたマニピュレータ11の手元の現在位置姿勢(X0,Y0,Z0,θR0,θP0,θY0)を読込み、ステップ65にて、関節現在回転角取得部30で取得された関節の現在回転角(θ1r,θ1p,θ2r,θ2p,θ3r,θ3p,θ4r,θ4p,θ5r,θ5p)を読込む。そして、ステップ66に進み、順運動学演算の同次変換行列演算として、関節毎に予め定義された並進移動行列及び回転移動行列を含む行列式を乗算する。この行列式は、一般的にロボット工学等で用いられているものを使用するため、その詳細な説明を省略する。その後、ステップ67に進み、ステップ66で得られた行列(4行4列)の成分を用いて手先の現在位置姿勢(X,Y,Z,θR,θP,θY)を演算し、演算した手先の現在位置姿勢を図示しないRAM等に保存するとともに、表示装置15の操作画面の手先現在位置姿勢表示欄46に表示させるようになっている。
手先の目標位置姿勢入力処理では、制御装置14の手先目標位置姿勢入力部33は、まず、手元現在位置姿勢取得部31で取得されたマニピュレータ11の手元の現在位置姿勢(X0,Y0,Z0,θR0,θP0,θY0)を読込む。そして、コントローラ16の操作信号を手先の移動回転方向及び移動回転量に換算し、これを手元の現在位置姿勢に加算して目標位置姿勢(X_ref,Y_ref,Z_ref,θR_ref,θP_ref,θY_ref)を演算する。そして、演算した手先の目標位置姿勢をRAM等に保存するとともに、表示装置15の操作画面の手先目標位置姿勢表示欄48に表示させるようになっている。
図9は、各関節の目標回転角の演算処理の詳細を表すPAD図である。各関節の目標回転角の演算処理では、制御装置14の関節目標回転角演算部34は、まず、ステップ68にて、手先目標位置姿勢入力部33で入力された手先の目標位置姿勢を読込み、ステップ69にて、手元現在位置姿勢取得部31で取得されたマニピュレータ11の手元の現在位置姿勢(X0,Y0,Z0,θR0,θP0,θY0)を読込み、ステップ70にて、関節現在回転角取得部30で取得された関節の目標回転角(θ1r,θ1p,θ2r,θ2p,θ3r,θ3p,θ4r,θ4p,θ5r,θ5p)を読込む。
マニピュレータ分割表面の仮想配置の演算処理では、制御装置14のマニピュレータ分割表面演算部37は、手元現在位置姿勢取得部32で取得された手元の現在位置姿勢(X0,Y0,Z0,θR0,θP0,θY0)を読込み、関節目標回転角演算部34で演算された各関節の目標回転角(θ1r_ref,θ1p_ref,θ2r_ref,θ2p_ref,θ3r_ref,θ3p_ref,θ4r_ref,θ4p_ref,θ5r_ref,θ5p_ref)を読込み、マニピュレータデータ記憶部35で記憶されたデータを読込み、マニピュレータ分割表面A1〜Amの仮想配置を演算する。詳細には、手元の現在位置姿勢及び各関節の目標回転角に基づいてマニピュレータ分割表面の座標変換処理を実施し、マニピュレータ分割表面の絶対位置座標データを生成し、この絶対位置座標データをRAM等に保存する。
図10は、リスト作成処理の詳細を表すPAD図である。リスト作成処理では、制御装置14のリスト作成部38は、まず、ステップ74にて、マニピュレータデータ記憶部35で記憶された多数のマニピュレータ分割表面A1〜Amのうちのいずれか1つと構造物データ記憶部36で記憶された多数の構造物分割表面B1〜Bnのうちのいずれか1つとの組合せ(図11参照)を、予め設定された所定の件数(例えば総数の10%程度)だけランダムに抽出して、抽出リストを作成する。そして、最初のリスト作成処理ではステップ75(詳細は後述)をとばし、2回目以降のリスト作成処理ではステップ75を経由してステップ76に進み、抽出リストに含まれるマニピュレータ分割表面に対し、前述のステップ59で演算された仮想配置を読込む。また、ステップ77に進み、抽出リストに含まれる構造物分割表面に対し、構造物データ記憶部36から絶対位置を読込む。その後、ステップ78に進み、抽出リストの各組合せにおける仮想配置のマニピュレータ分割表面と構造物分割表面との重心間距離を演算し、ステップ79に進み、この重心間距離が予め設定された所定の閾値未満であるかどうか判定することによりマニピュレータ分割表面と構造物分割表面が衝突する可能性の高いものであるかどうかを判定する。そして、ステップ80に進み、衝突する可能性の高いものと判定した組合せからなる候補リストを作成し、その後、ステップ81に進み、作成した候補リストをリスト記憶部39に更新して記憶する。
衝突判定処理では、制御装置14の衝突判定部40は、候補リストに含まれるマニピュレータ分割表面に対し、前述のステップ59で演算された仮想配置を読込む。また、候補リストに含まれる構造物分割表面に対し、構造物データ記憶部36から絶対位置を読込む。その後、候補リストの各組合せにおいて、仮想配置のマニピュレータ分割表面と構造物分割表面が衝突するかどうかを、公知の交差判定によって判定するようになっている。
図12は、関節の目標回転角の補正処理の詳細を表すPAD図である。関節の目標回転角の補正処理では、制御装置14の関節目標回転角補正部41は、ステップ82にて、ステップ61で衝突すると判定された各組合せにおいて、仮想配置のマニピュレータ分割表面と構造部分割表面との位置関係から、仮想配置のマニピュレータ分割表面における頂点のうち最も構造物内側に位置するものを選択し、この頂点と構造物分割表面との距離を演算し、この距離以上の大きさを持ちかつ構造物分割表面の法線ベクトルと同じであって構造物の外側への向きを持つ衝突回避ベクトルを生成する。その後、ステップ83に進み、マニピュレータ分割表面が複数の関節で区分された複数の部位のいずれに含まれるか判別することにより、ステップ82で作成した衝突回避ベクトルを分類する。そして、ステップ83に進み、部位毎に衝突回避ベクトルが1つである場合はそのままとし、複数ある場合は、ステップ84に進み、衝突回避ベクトルを平均化する。その後、ステップ85に進み、平均化した衝突回避ベクトルに基づいて関節の目標回転角の補正量を演算し、この補正量をステップ58で演算された目標回転角に加算する。
14 制御装置
16 コントローラ
18 駆動部
19 リンク
24a,24b モータ
26a,26b エンコーダ
Claims (4)
- 複数の関節を介し連結された複数のリンクからなるマニピュレータに対し、各関節の回転角を制御することにより手先の位置姿勢を制御する制御装置において、
前記マニピュレータに関するデータとして、各リンクの表面及び各関節の表面を多数に分割したマニピュレータ分割表面の形状及びそれらの相対的な位置関係を記憶する第1記憶手段と、
前記マニピュレータの周囲の構造物に関するデータとして、前記構造物の表面を多数に分割した構造物分割表面の形状及びそれらの絶対位置を記憶する第2記憶手段と、
前記マニピュレータの手元の現在位置姿勢を取得する手元現在位置姿勢取得手段と、
前記マニピュレータの手先の目標位置姿勢を入力する手先目標位置姿勢入力手段と、
前記手元現在位置姿勢取得手段で取得された手元の現在位置姿勢及び前記手先目標位置姿勢入力手段で入力された手先の目標位置姿勢に基づき、各関節の目標回転角を演算する関節目標回転角演算手段と、
前記手元現在位置取得手段で取得された手元の現在位置姿勢、前記関節目標回転角演算手段で演算された各関節の目標回転角、並びに前記第1記憶手段で記憶されたデータに基づき、前記手先の目標位置姿勢に対応する前記多数のマニピュレータ分割表面の仮想配置を演算するマニピュレータ分割表面演算手段と、
前記第1記憶手段で記憶された前記多数のマニピュレータ分割表面のうちのいずれか1つと前記第2記憶手段で記憶された前記多数の構造物分割表面のうちのいずれか1つとの組合せを予め設定された所定の件数だけランダムに抽出して抽出リストを作成し、その抽出リストの各組合せにおける前記仮想配置の前記マニピュレータ分割表面と前記構造物分割表面との重心間距離を演算し、この重心間距離が予め設定された所定の閾値未満であるかどうか判定することにより前記マニピュレータ分割表面と前記構造物分割表面が衝突する可能性の高いものであるかどうかを判定し、衝突する可能性の高いものと判定した組合せからなる候補リストを作成する処理を行うリスト作成手段と、
前記リスト作成手段で作成された候補リストの各組合せにおいて前記仮想配置の前記マニピュレータ分割表面と前記構造物分割表面が衝突するかどうかを判定する衝突判定手段と、
前記衝突判定手段で前記マニピュレータ分割表面と前記構造物分割表面が衝突すると判定された場合に、衝突を回避するように前記関節の目標回転角を補正する関節目標回転角補正手段とを備えたことを特徴とするマニピュレータの制御装置。 - 請求項1記載のマニピュレータの制御装置において、
前記リスト作成手段は、
前記処理を予め設定された所定の時間間隔で繰返し行っており、前記抽出リストを作成する際に前回作成した候補リストの組合せを加えることを特徴とするマニピュレータの制御装置。 - 請求項1又は2記載のマニピュレータの制御装置において、
前記関節目標回転角補正手段は、
前記衝突判定手段で衝突すると判定された前記仮想配置の前記マニピュレータ分割表面の頂点のうち最も前記構造物の内側に位置するものを選択し、この選択した頂点と前記構造物分割表面との距離以上の大きさを持ちかつ前記構造物分割表面の法線ベクトルと同じであって前記構造物の外側への向きを持つ衝突回避ベクトルを生成する衝突回避ベクトル生成手段と、
前記衝突判定手段で衝突すると判定された前記マニピュレータ分割表面が、前記複数の関節で区分された複数の部位のいずれに含まれるか判別することにより、前記マニピュレータ分割表面に対応する前記衝突回避ベクトルを分類する分類手段と、
前記衝突回避ベクトルを前記部位毎に平均化し、この平均化した衝突回避ベクトルに基づいて前記各関節の目標回転角の補正量を演算する関節目標回転角補正量演算手段とを備えたことを特徴とするマニピュレータの制御装置。 - 請求項1〜3のいずれか1項記載のマニピュレータの制御装置において、
前記マニピュレータの各関節の現在回転角を取得する関節現在回転角取得手段と、
前記手元現在位置姿勢取得手段で取得された手元の現在位置姿勢及び前記関節現在回転角取得手段で取得された各関節の現在回転角に基づき、手先の現在位置姿勢を演算する手先現在位置姿勢演算手段とを備え、
前記関節目標回転角演算手段は、
前記手先目標位置姿勢入力手段で入力された手先の目標位置姿勢と前記手先現在位置姿勢演算手段で演算された手先の現在位置姿勢との偏差を演算し、この位置姿勢の偏差に基づき各関節の目標回転角と現在回転角との偏差を演算し、この各関節回転角の偏差を前記関節現在回転角取得手段で取得された各関節の現在回転角に加算して各関節の目標回転角を演算することを特徴とするマニピュレータの制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011194167A JP5487525B2 (ja) | 2011-09-06 | 2011-09-06 | マニピュレータの制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011194167A JP5487525B2 (ja) | 2011-09-06 | 2011-09-06 | マニピュレータの制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013052498A JP2013052498A (ja) | 2013-03-21 |
JP5487525B2 true JP5487525B2 (ja) | 2014-05-07 |
Family
ID=48129950
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011194167A Active JP5487525B2 (ja) | 2011-09-06 | 2011-09-06 | マニピュレータの制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5487525B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6818708B2 (ja) * | 2018-02-28 | 2021-01-20 | 株式会社東芝 | マニピュレータシステム、制御装置、制御方法、およびプログラム |
JP7082365B2 (ja) * | 2018-03-20 | 2022-06-08 | ユニパルス株式会社 | パラレルリンクロボット |
-
2011
- 2011-09-06 JP JP2011194167A patent/JP5487525B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2013052498A (ja) | 2013-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4256440B2 (ja) | ロボットプログラム調整装置 | |
KR20210058995A (ko) | 용접 경로 생성을 위한 시스템 및 방법 | |
CN103302663B (zh) | 用于具有冗余度的机器人的校准方法和校准*** | |
JP4799088B2 (ja) | 遠隔検査における作業位置計測方法およびその装置 | |
CN107088878B (zh) | 计算扫描空间的机器人的模拟装置 | |
US20060025890A1 (en) | Processing program generating device | |
JP2005135278A (ja) | シミュレーション装置 | |
JP5113666B2 (ja) | ロボット教示システム及びロボットの動作のシミュレーション結果の表示方法 | |
JP2007090481A (ja) | ロボットシミュレーション装置 | |
KR20130081703A (ko) | 디바이스의 나란히 있는 가상실제 이미지 검사를 위한 시스템 및 방법 | |
JP2005074600A (ja) | ロボット及びロボット移動方法 | |
JP2009090383A (ja) | ロボットの原点復帰方法 | |
TW201606467A (zh) | 作業機器人之教示資料產生裝置及教示資料產生方法 | |
US20190022864A1 (en) | Robot control device, robot system, and simulation device | |
JP5487525B2 (ja) | マニピュレータの制御装置 | |
JP2004094399A (ja) | 多関節マニピュレータの制御方法及びその制御プログラム、並びにその制御システム | |
Kheilo et al. | Possible applications of mechanisms of parallel structure | |
CN1754666A (zh) | 机器人程序生成装置以及解析装置 | |
KR101787865B1 (ko) | 다관절 링크 기구의 역운동학 해법, 및 이 역운동학 해법을 이용한 교시 데이터 작성 장치 | |
JPH0428512B2 (ja) | ||
US11203117B2 (en) | Teaching data generation system for vertical multi-joint robot | |
Lopez-Hawa et al. | Automated scanning techniques using UR5 | |
Li et al. | iFeel3: a haptic device for virtual reality dental surgery simulation | |
Bath et al. | A simulation driven development framework for parallel kinematics | |
US20230398688A1 (en) | Motion trajectory generation method for robot, motion trajectory generation apparatus for robot, robot system, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Effective date: 20130311 Free format text: JAPANESE INTERMEDIATE CODE: A621 |
|
A977 | Report on retrieval |
Effective date: 20140123 Free format text: JAPANESE INTERMEDIATE CODE: A971007 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Effective date: 20140128 Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140207 |
|
R150 | Certificate of patent (=grant) or registration of utility model |
Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5487525 |