IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キヤノン株式会社の特許一覧

特許7508218情報処理方法、ロボット、物品の製造方法、および情報処理装置
<>
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図1
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図2
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図3
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図4
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図5
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図6
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図7
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図8
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図9
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図10
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図11
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図12
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図13
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図14
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図15
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図16
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図17
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図18
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図19
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図20
  • 特許-情報処理方法、ロボット、物品の製造方法、および情報処理装置 図21
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-21
(45)【発行日】2024-07-01
(54)【発明の名称】情報処理方法、ロボット、物品の製造方法、および情報処理装置
(51)【国際特許分類】
   B25J 9/22 20060101AFI20240624BHJP
   G16Z 99/00 20190101ALI20240624BHJP
【FI】
B25J9/22 A
G16Z99/00
【請求項の数】 32
(21)【出願番号】P 2019221557
(22)【出願日】2019-12-06
(65)【公開番号】P2021091012
(43)【公開日】2021-06-17
【審査請求日】2022-12-06
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110003133
【氏名又は名称】弁理士法人近島国際特許事務所
(72)【発明者】
【氏名】佐々木 裕宣
【審査官】牧 初
(56)【参考文献】
【文献】特開2021-045797(JP,A)
【文献】特開2016-133902(JP,A)
【文献】米国特許出願公開第2021/0056245(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 1/00-21/02
(57)【特許請求の範囲】
【請求項1】
動力によって駆動される可動機器において線材が保持される少なくとも1つの保持位置と、前記線材の長さと、を取得し、
前記可動機器の動作と、取得した前記線材の情報と、に基づき、前記保持位置と前記長さとは異なる保持位置と長さとを有する線材モデルを少なくとも1つ取得し、
取得した線材モデルにおいて所定条件を満たす線材モデルを出力する、
ことを特徴とする情報処理方法。
【請求項2】
請求項1に記載の情報処理方法において、
前記線材の情報として、前記線材の特性に関するパラメータをユーザにより設定できる、
ことを特徴とする情報処理方法。
【請求項3】
請求項2に記載の情報処理方法において、
前記パラメータは、前記線材の直径、前記線材の密度、前記線材の質量、前記線材のヤング率、前記線材のポアソン比、前記線材の減衰率、の少なくとも1つを含む、
ことを特徴とする情報処理方法。
【請求項4】
請求項2または3に記載の情報処理方法において、
前記パラメータは前記線材に対応してテーブル化されている、
ことを特徴とする情報処理方法。
【請求項5】
請求項1から4のいずれか1項に記載の情報処理方法において、
前記保持位置を、前動可動機器に対する相対座標、または前記可動機器に対して予め設定された位置に対応する番号または名称によって設定できる、
ことを特徴とする情報処理方法。
【請求項6】
請求項1から5のいずれか1項に記載の情報処理方法において、
線材モデルは、少なくとも2つの所定モデルを繋ぎ合わせて構成されている、
ことを特徴とする情報処理方法。
【請求項7】
請求項6に記載の情報処理方法において、
前記所定モデルは円筒形である、
ことを特徴とする情報処理方法。
【請求項8】
請求項1から7のいずれか1項に記載の情報処理方法において、
線材モデルを取得する際における取得範囲を、前記線材が保持される保持位置において許容される範囲、前記線材の長さにおいて許容される範囲、によって設定できる、
ことを特徴とする情報処理方法。
【請求項9】
請求項1から8のいずれか1項に記載の情報処理方法において、
前記可動機器の動作によって前記線材に課せられる物理的制約を含む制約条件に基づき線材モデルを取得する、
ことを特徴とする情報処理方法。
【請求項10】
請求項9に記載の情報処理方法において、
前記制約条件は、前記線材の最小曲率半径の設定、前記線材の最大負荷の設定、前記線材との接触を許可しない対象の設定、前記線材の通過を許可する領域の設定、の少なくとも1つを含む、
ことを特徴とする情報処理方法。
【請求項11】
請求項9または10に記載の情報処理方法において、
前記可動機器の動作と、取得した前記線材の情報と、前記制約条件と、に基づき、取得された線材モデルにおいて評価値を取得する、
ことを特徴とする情報処理方法。
【請求項12】
請求項11に記載の情報処理方法において、
前記線材の曲率半径の変動に基づき前記評価値を取得する、
ことを特徴とする情報処理方法。
【請求項13】
請求項12に記載の情報処理方法において、
線材モデルにおける、前記曲率半径の前記変動が最も大きい位置を表示する、
ことを特徴とする情報処理方法。
【請求項14】
請求項11から13のいずれか1項に記載の情報処理方法において、
前記制約条件を満たさない線材モデルの前記評価値は0とする、
ことを特徴とする情報処理方法。
【請求項15】
請求項11から14のいずれか1項に記載の情報処理方法において、
取得した線材モデル全てが前記制約条件を満たさない場合、ダイアログを表示する、
ことを特徴とする情報処理方法。
【請求項16】
請求項15に記載の情報処理方法において、
取得した線材モデルの内、前記可動機器の動作時間に対して前記制約条件を満たしていた時間が最も長い線材モデルを表示する、
ことを特徴とする情報処理方法。
【請求項17】
請求項11から16のいずれか1項に記載の情報処理方法において、
前記評価値が前記所定条件を満たす線材モデルを表示する、
ことを特徴とする情報処理方法。
【請求項18】
請求項17に記載の情報処理方法において、
前記所定条件は、取得した線材モデルにおいて前記評価値が最も高い場合である、
ことを特徴とする情報処理方法。
【請求項19】
請求項18に記載の情報処理方法において、
前記所定条件は、取得した線材モデルにおいて前記評価値の順位が少なくとも2位までを含む場合である、
ことを特徴とする情報処理方法。
【請求項20】
請求項1から19のいずれか1項に記載の情報処理方法において、
線材モデル取得する際における取得範囲を、前記線材の種類によって設定できる、
ことを特徴とする情報処理方法。
【請求項21】
請求項1から20のいずれか1項に記載の情報処理方法において、
取得した前記線材の情報を初期値として、前記可動機器の動作に基づき線材モデルを取得する、
ことを特徴とする情報処理方法。
【請求項22】
請求項1から21のいずれか1項に記載の情報処理方法において、
線材モデルを取得する際の前記可動機器の動作を設定できる、
ことを特徴とする情報処理方法。
【請求項23】
請求項1から22のいずれか1項に記載の情報処理方法において、
線材モデルの取得における過程を表示する、
ことを特徴とする情報処理方法。
【請求項24】
請求項1から23のいずれか1項に記載の情報処理方法において、
線材モデルを遺伝的アルゴリズムにより取得する、
ことを特徴とする情報処理方法。
【請求項25】
請求項1から10のいずれか1項に記載の情報処理方法において、
前記可動機器に対応する可動機器モデルの動作と、当該動作に伴う取得した線材モデルの動作と、を仮想環境でシミュレーションした結果に基づき、取得した線材モデルにおいて前記所定条件を満たす線材モデルを出力する、
ことを特徴とする情報処理方法。
【請求項26】
請求項25に記載の情報処理方法において、
前記仮想環境におけるシミュレーションで実行される前記可動機器の動作をユーザにより指定できる、
ことを特徴とする情報処理方法。
【請求項27】
請求項26に記載の情報処理方法において、
前記可動機器はロボットであり、ロボットの動作を、教示点形式、ロボットプログラム形式、ロボット制御データの識別情報のいずれかにより指定できる、
ことを特徴とする情報処理方法。
【請求項28】
請求項1から27のいずれか1項に記載の情報処理方法をコンピュータに実行させるプログラム。
【請求項29】
請求項28に記載のプログラムを格納したコンピュータ読み取り可能な記録媒体。
【請求項30】
請求項1から2のいずれか1項に記載の情報処理方法によって前記線材の保持位置と長さとが設定されたロボット。
【請求項31】
請求項30に記載のロボットによってワークを操作し、前記ワークから物品を製造する物品の製造方法。
【請求項32】
動力によって駆動される可動機器において線材が保持される少なくとも1つの保持位置と、前記線材の長さと、を取得し、
前記可動機器の動作と、取得した前記線材の情報と、に基づき、前記保持位置と前記長さとは異なる保持位置と長さとを有する線材モデルを少なくとも1つ取得し、
取得した線材モデルにおいて所定条件を満たす線材モデルを出力する、
ことを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、線材の全長ないしその固定位置に係る設計支援に用いられる情報処理方法、ロボット、物品の製造方法、および情報処理装置に関する。
【背景技術】
【0002】
工業製品の製造ラインなどにおいて、様々なロボット装置のような可動機器が用いられている。ロボット装置では、ロボットアームの手先にハンドやエアチャックのようなツールが装着される場合がある。この種のツールに対して、電気信号やエアなどの駆動媒体を送るため、信号ケーブルやエア配管のような線材ないし線条体が配線されることがある。場合によっては、このような線材、線条体は、ロボットアームの躯体内部に配線されることもあるが、多くの場合、アームの外側に這わすように配線される。
【0003】
上記のようにロボットアームに沿って配設される信号ケーブルやエア配管などの線材、線条体を代表する部材は、本明細書では「ケーブル」の用語によって言及することがある。即ち、本明細書において、「ケーブル」は必ずしも信号ケーブルのような電気的な信号を伝達する部材のみを指すものではなく、例えばエア配管など、他の媒体の伝達、伝播に用いられる線材(ないし線条体)を含む概念である場合がある。
【0004】
上記のように、アームの外側に配線されたケーブルはロボットアームの動作に伴ない変形したり動いたりするが、実際のロボット装置の動作環境では、その周囲には様々な外部機器や柱などの障害物が配置されることが多い。そして、これらの外部機器や障害物と、ケーブルとが干渉することによって生じるケーブルないし機器の故障の回避は、この種の技術における大きな課題である。
【0005】
従来より、ロボットアームに配設したケーブルの振舞いを計算するシミュレーション手法が知られている。特許文献1は、この種のシミュレーションにおいて、信号ケーブルや線条体が剛体に衝突したときの動的な振る舞いとシミュレーションの結果が一致するように、シミュレーションに用いられる反発力の係数を自動的に調整する技術を開示している。
【0006】
このようなシミュレーション技術によれば、ロボット装置の動作に伴なうケーブルの物理的挙動を仮想的に計算でき、例えばロボット装置に配設したケーブルが周囲と干渉するか否かを事前に確認するために利用できる。これにより、ロボット装置へのケーブル巻き付きや周辺環境との干渉の有無やその態様などをチェックすることができ、その結果に基づき、例えば干渉を回避するようなロボット動作をプログラムすることができる。
【先行技術文献】
【特許文献】
【0007】
【文献】特開2013-35083号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
ところで、この種のケーブル、ないしその配線形態に係る配線設計は、曲率半径の変化や引っ張り等による負荷を考慮しながらケーブルの端点位置やケーブルの全長を決める必要がある。そのため、ケーブルの配線設計は、考慮すべきパラメータが多く直観や経験則が必要とされ、属人性が高くコストが大きい。
【0009】
一般に、ロボット装置に配設されるケーブルは、自由度の高いロボットの動作に汎用的に対応出来るように、長さに余裕を持って設計される場合が多い。しかしながら、ケーブルが長い場合には、周辺環境と接触する可能性が高くなるためロボットの周囲の空間をより広く空けておく必要があり、スペース効率が悪くなる可能性がある。また、ロボット装置の本来の広い可動範囲が、ケーブルを配設することによって制限されるという弊害が発生する場合もある。
【0010】
本発明の課題は、以上に鑑み、ロボット装置のような可動機器に配設される線材ないしその配線の設計支援において、可動機器の動作や周辺環境に応じて、適切なケーブルの端点位置とケーブルの全長などの情報を取得できるようにすることにある。
【課題を解決するための手段】
【0011】
本発明の一態様は、動力によって駆動される可動機器において線材が保持される少なくとも1つの保持位置と、前記線材の長さと、を取得し、前記可動機器の動作と、取得した前記線材の情報と、に基づき、前記保持位置と前記長さとは異なる保持位置と長さとを有する線材モデルを少なくとも1つ取得し、取得した線材モデルにおいて所定条件を満たす線材モデルを出力する、ことを特徴とする情報処理方法である。
【発明の効果】
【0012】
上記構成によれば、ロボット装置のような可動機器に配設される線材ないしその配線の設計支援において、可動機器の動作や周辺環境に応じて、適切なケーブルの端点位置とケーブルの全長などの情報を取得することができる。
【図面の簡単な説明】
【0013】
図1】本シミュレーションを実行可能な演算装置を示すブロック図である。
図2】配線設計支援システムが持つ機能を示した説明図である。
図3】ロボットシミュレーション機能が持つ機能を示した説明図である。
図4】ロボットと周辺環境のシミュレーションモデルを示した説明図である。
図5】ロボットと周辺環境とケーブルのシミュレーションモデルを示した説明図である。
図6】ケーブルモデル生成のための計算工程を示すフローチャート図である。
図7】ケーブルモデル生成のための入力GUIの一例を示した説明図である。
図8】ケーブルの種類に応じた物理パラメータを登録できるGUIの一例を示した説明図である。
図9】ケーブル配線探索機能の計算工程を示すフローチャート図である。
図10】ケーブル配線探索機能の入力GUIの一例を示した説明図である。
図11】分割したケーブルモデルの曲率半径を示した説明図である。
図12】ケーブル配線探索機能の出力結果を示すGUIの一例を示した説明図である。
図13】ケーブルの通過可能領域をシミュレーションモデルに追加したイメージを示した説明図である。
図14】ケーブル配線探索機能で通過可能領域を考慮するためのGUIの一例を示した説明図である。
図15】遺伝的アルゴリズムを用いたケーブル配線探索機能の計算工程を示すフローチャート図である。
図16】シミュレーションプログラムの画面の一例を示した説明図である。
図17】遺伝的アルゴリズムの世代交代の様子の一例を示した説明図である。
図18】ケーブル配線探索機能でケーブルの種類を考慮するためのGUIの一例を示した説明図である。
図19】ケーブルの種類を探索した場合の出力結果を示すGUIの一例を示した説明図である。
図20】ケーブル配線探索で複数の出力結果を示すGUIの一例を示した説明図である。
図21】ケーブル配線探索で有効な探索結果を得られない場合を示すGUIの一例を示した説明図である。
【発明を実施するための形態】
【0014】
以下、添付図面を参照して本発明を実施するための形態につき説明する。なお、以下に示す構成はあくまでも一例であり、例えば細部の構成については本発明の趣旨を逸脱しない範囲において当業者が適宜変更することができる。また、本実施形態で取り上げる数値は参考数値の例示に過ぎない。
【0015】
<実施形態1>
以下、図1図12図16を参照し、本実施形態のケーブルの配線設計支援システムについて説明する。
【0016】
図1は、本実施形態に係るケーブルの配線設計支援のための処理を実行可能な制御装置1の構成例を示している。制御装置1の概ねの外観は、例えば後述の図16のような形態である。制御装置1は、配線設計支援装置として機能する処理装置であり、例えばPC(パーソナルコンピュータ)フォームの制御機器のハードウェアなどから成るコンピュータシステムとして構成することができる。
【0017】
図1の制御装置1は演算部としてのCPU20、記憶媒体としてのROM21、RAM22、HDD23、記録ディスクドライブ24、および各種のインタフェース25,26,27,28を備えている。これらROM21、RAM22、HDD23、記録ディスクドライブ24および各種のインタフェース25~28は、CPU20に対してバス29を介して相互に通信可能に接続されている。
【0018】
ROM21には、後述の制御工程をCPU20に実行させる制御プログラムが格納される。そして、CPU20は、ROM21に格納された制御プログラムに基づいて後述する制御手順を実行することができる。RAM22は、CPU20の処理結果を一時的に記憶するための記憶手段を構成する。HDD23は、外部記憶装置であり、例えば、部品データ、三次元有限要素法の計算式等の各種情報などを予め記憶している。また、HDD23は、CPU20の指令に従い、CPU20による演算結果等のデータを記憶する。
【0019】
制御装置1は、本実施形態の線材の設計支援を行う情報処理方法を実行する制御主体としての情報処理装置に相当する。この制御装置1には、インタフェース25を介して接続されたキーボード11およびインタフェース26を介して接続されたマウス12などポインティングデバイスを備えた操作入力部が備えられ、各種の操作入力を受付可能となっている。さらに、制御装置1には、インタフェース27を介して接続されたモニタ13が備えられており、データ入力(編集)画面、部品等を仮想三次元空間に表示する表示画面などの各種画面を表示することができる。これらモニタ13(ディスプレイ)、キーボード11、マウス12などの操作入力部を用いて、ユーザインタフェースが構成される。このユーザインタフェースによって、後述のダイアログ、メニューなどを備えたGUI(グラフィカルユーザインタフェース)を実現でき、ユーザは、例えば目的のケーブル配線の探索条件に係る入力設定を行うことができる。
【0020】
インタフェース28は、書き換え可能な不揮発性メモリや外付けHDD等の外部記憶装置14が接続可能に構成されている。そして、記録ディスクドライブ24は、記録ディスク15に対して、読み出しあるいはさらに書き込みなどのアクセスを行うことができる。記録ディスク15には、制御装置としてのCPU20に本実施形態の配線設計支援演算を実行させるプログラムを格納しておくことできる。もし、記録ディスク15が本実施形態の配線設計支援演算に係るプログラムを格納している場合、記録ディスク15は、本実施形態に係るコンピュータ読み取り可能な記録媒体を構成する。なお、記録ディスク15を用いて、外部記憶装置14やRAM22、あるいはROM21の書き換え可能な記憶領域に本実施形態の配線設計支援演算に係るプログラムをインストールすることができる。また、記録ディスク15を用いて、既にインストールされている同プログラムを更新したりすることもできる。ただし、本実施形態の配線設計支援演算に係るプログラムのインストールやアップデートは、不図示のネットワークなどを介して行われるものであってもよい。
【0021】
図16は、上述の制御装置1と、制御装置1に接続されたモニタ13、キーボード11、マウス12などの操作入力部を備えたシミュレーションシステムの一例を示している。図16では、モニタ13にシミュレーション表示161が表示されている。シミュレーション表示161は、例えば、後述のロボットや組み立て部品の表示部や、ケーブルパラメータ入力GUI(図7)や、探索パラメータ入力GUI(図10)や、配線出力GUI(図12)などのGUIによって構成される。本実施形態では、シミュレーション表示161は、現実のロボット装置の動作と周辺環境に対応した仮想環境におけるモデルの振舞いをシミュレーション表示し、ケーブル配線の設計支援を行うために利用される。
【0022】
ロボット装置の動作と周辺環境に対応したケーブル配線設計を行うには、任意の環境においてロボット装置が動作する様を確認できる事が望ましい。そのため、本実施形態の制御装置1は、図2に示すような機能ブロックを備えたケーブル配線設計支援システム1301として構成される。このケーブル配線設計支援システム1301は、図2に示すように、ロボットシミュレーション機能1302、ケーブルモデル生成機能1303、ケーブル配線探索機能1304、を備える。
【0023】
このケーブル配線設計支援システム1301が対象とするケーブル(線材)は、ロボット装置の外部にその躯体に沿って配置されるものであり、ロボット装置の動作につれて変形し、また、変位する。従って、ケーブル配線設計支援システム1301がケーブル(線材)の端点の位置や必要な全長などの仕様をシミュレーションするなら、ケーブル配線設計支援システム1301はロボットシミュレーション機能1302を含んで提供するのがよい。
【0024】
以下では、ケーブル配線設計支援システム1301のロボットシミュレーション機能1302、ケーブルモデル生成機能1303、ケーブル配線探索機能1304の各機能について、説明する。
【0025】
図3は、ロボットシミュレーション機能1302の機能ブロックを示している。同図に示すように、ロボットシミュレーション機能1302は、ロボットモデルや他の機器モデルをシミュレータ上に配置するモデル配置機能1311、ロボットの動作の起点となる教示点を登録するロボット教示機能1312を備える。また、ロボットシミュレーション機能1302は、教示点への移動命令から実際のロボット装置の動作を生成するロボット動作生成機能1314、それぞれのモデルとの干渉を検知してユーザに報知する干渉検知機能1315を含む。さらに、ロボットシミュレーション機能1302は、ロボット装置が他の物体と相互作用した際の物理的挙動を計算するための動力学計算機能1316、を含む。これらの機能は、仮想環境において、現実のロボット装置の動作を模擬する、周知のロボットシミュレータの機能であり、ここでは詳細な説明は割愛する。
【0026】
図2のケーブルモデル生成機能1303は、シミュレーション計算で用いるケーブルモデルを生成する工程である(第1の線材モデル生成工程)。図4は、ロボットシミュレーション機能1302でシミュレートされるロボット装置および周辺環境のシミュレーションモデルの一例を示している。図4のシミュレーション状態は、ケーブルモデル生成機能1303によって、ケーブルモデルを生成する前の状態である。この図4のシミュレーション状態は、ロボット装置41と、その周辺環境としての加工対象42や架台43を模擬するモデルによって構成されている。ロボット装置41と加工対象42としてのワークは架台43に配置されている。なお、図4において44、45は、ロボット装置41に配設されるケーブルの端部領域がそれぞれ固定、接続される端点の固定位置(後述の位置A、B)を示す。
【0027】
なお、ケーブル(線材)が固定、接続される「端点」の「(固定)位置」とは、本明細書においては、あくまでも便宜上のもので、必ずしもケーブル(線材)両端の切断端面を意味しない。以下では、「端点位置」や「(固定)位置」は、クリップやコネクタなどによって、特定の3次元座標(後述の(X、Y、Z))において特定の方向(姿勢:後述の回転角(α±、β±、γ±))で、可動機器や環境に固定される位置を意味する。
【0028】
現実のロボット装置41は、ロボットシミュレーション機能1302によって模擬する動作と同じ動作によって、加工対象42としてのワークを操作する。これにより、ロボット装置41が配置された生産ラインなどを構成するロボットシステムにおいて、加工対象42としてのワークから工業製品などの物品を製造することができる。
【0029】
図5は、ロボットシミュレーション機能1302で線材モデルとして生成されたケーブル51(ケーブルモデル)が装着された、ロボット装置41および周辺環境のシミュレーションモデルの一例を示している。図4と同じ参照符号で示されるロボット装置41とロボットや周辺環境の各構成部材に加えて、生成されたケーブル51の両側の端点が位置44、45に接続されている。
【0030】
図6はケーブルモデル生成機能1303の処理の流れを示している。図6の処理では、最初にケーブルパラメータ入力工程1321において、例えば図7に示すようなGUI1330を用いてケーブルパラメータを入力するユーザ操作を受け付ける。図7のGUI1330では、図8のGUI1340に示すように予めデータベース化されたケーブル(A、B、C…)の種類71をプルダウンメニューによって入力できるようになっている。図7のGUI1330は、ケーブル生成ボタン75を有し、ユーザがこのケーブル生成ボタン75を操作すると、71~74の各フィールドで指定されたパラメータを(初期値として)持つケーブルモデルが生成される。
【0031】
図8のGUI1340においては、ケーブルA、B、C…は、いくつかの物理的なパラメータで記述された品種として予めデータベース化されている。図8のGUIのテーブル表示1341は、このケーブルA、B、C…に相当するケーブルモデルの物理的なパラメータの設定内容の表示、あるいはその設定値の編集に用いることができる。本実施形態では、ロボット装置41の動作に合わせて動的なケーブル挙動をシミュレートするために、ケーブルA、B、C…のパラメータは、このケーブル(線材)の曲がり方に関するパラメータを含む。このケーブル(線材)の曲がり方に関するパラメータには、直径、密度、などの質量に関するパラメータ、ヤング率、ポアソン比、および減衰率などの曲がり方に関するパラメータなどを含む。
【0032】
図7のGUI1330はこれら各々の物理的なパラメータを明示的に入力できるよう構成されていてもよい。しかしながら、各物理パラメータを図8のように予めテーブル化しておき、図7に示すように種類71を指定するような操作方式によればケーブルモデルのパラメータ指定操作を簡易に行うことができる。
【0033】
図7のGUI1330において、ケーブルの配線方法について、どの位置からどの位置までどのくらいの長さのケーブルを配線するか、の初期値を指定する。例えば、ケーブルの端点位置は、端点Aの位置72、端点Bの位置73のように2点設定する。その場合、例えば、ケーブルを配線したいロボット装置の相対座標で指定することが考えられる。また、図4に示すように、ケーブルの端点Aの位置44や端点Bの位置45についてはあらかじめロボットモデルに座標位置を予め登録しておくことが考えられる。その場合、図7のGUI1330では、位置72、73のフィールドに予め登録した座標位置に適宜割り当てた番号やマクロ名などを指定することができる。
【0034】
また、ケーブルの全長74については、ロボットが動作しても伸びきらないように十分余裕を持った長さを設定するのが適当である。図7のGUI1330で、ケーブルの固定位置としての位置72、73と全長74は、ケーブル配線探索を行う際の初期値として用いるものであり、最適な値を入力する必要はない。本実施形態のケーブルモデル生成機能1303でケーブルモデルが生成される時、ケーブルの固定位置としての位置72、73と全長74としては、ロボットシミュレーションなどの結果に応じて最適な値が生成される。
【0035】
図7のGUI1330で、ケーブル生成ボタン75を押下すると、シミュレーションモデル計算工程1322(図6)に移行する。このシミュレーションモデル計算工程1322では、ケーブルのシミュレーションモデルを生成する。本実施形態では、例えばケーブルモデル(線材モデル)は、小さい円筒形のモデルを複数繋ぎ合わせたシミュレーションモデルとして生成される。ケーブルモデル(線材モデル)は、上記のケーブルの固定位置としての位置72、73と全長74とによって定義される。
【0036】
ケーブルモデル(線材モデル)の生成では、例えばケーブルの分割単位あたりの長さ(L)を決定する。この分割単位の長さは、小さいほど滑らかにケーブルをシミュレートできるが、その分割数が多くなるため計算時間が大きくなる。十分滑らかなシミュレーションを行う目安として、分割単位長(L)はケーブルの直径(φ)から下式のように決定できる。
【0037】
【数1】
【0038】
ケーブル分割単位の形状は長さ(L)の円筒であるので、質量に関するパラメータである、質量(m)、慣性(I)、重心(g)情報は、直径(φ)と分割単位長(L)と密度(D)から下式のように計算できる。ここでは、この円筒は部品座標系のZ方向に延びているものとする。
【0039】
【数2】
【0040】
次に、ケーブルの曲がり方の特性に関するパラメータである、ヤング率(E)、ポアソン比(P)、減衰率(δ)などから、ケーブル分割単位あたりの剛性係数(k)と粘性係数(d)を計算する。これらの剛性係数(k)と粘性係数(d)は、部品座標系xyzそれぞれの方向について、下式のように計算することができる。当然ながら、ヤング率(E)、ポアソン比(P)、減衰率(δ)などは、例えば図7のGUIで指定されたケーブルの種類71に対応して予め図8のようにテーブル化されている値が用いられる。
【0041】
【数3】
【0042】
以上のように計算されたケーブル分割単位の円筒モデルを、例えば球面関節などを介して接続し、ユーザが指定した長さで、初期状態のケーブルモデル(第1の線材モデル)を生成することができる。
【0043】
図6のケーブル姿勢計算工程1323では、シミュレーションモデル計算工程1322で生成したケーブルモデルをシミュレーション環境に設置する。この時、入力情報の初期値としては図7のGUI1330で設定したケーブル端点の固定位置の情報(位置72、73)が用いられる。
【0044】
ここでは、端点が固定される位置Aに、生成したケーブルモデル(線材モデル)のケーブルモデルの根元を設置する。この段階では、ケーブルは変形しておらず、位置Bとケーブルの先端も一致していないが、続いて、ケーブルモデルの先端と端点B位置が一致するように、逆運動学演算を行うことにより、分割されたケーブル部品の変形量を計算することができる。
【0045】
以上のようにして、ケーブル姿勢計算工程1323において、端点が固定されるそれぞれ初期値の固定位置と、全長と、で定義される初期状態に対応するケーブルモデル(第1の線材モデル)が生成される。そして、図6のケーブルモデル出力工程1324において、初期状態で第1の線材モデルとして生成されたケーブルモデルは、例えばワイヤフレームやポリゴンの形態でモニタ13に3D表示することができる。
【0046】
本実施形態では、図9に概略の流れを示すケーブル配線探索機能1350(図2の1304)により、適切な端点の位置と全長を持つ線材モデル(ケーブル配線)を探索することができる。ここでは、まず、後述するケーブル配線探索機能の設定GUI1360(図10)により探索条件が指定される(探索パラメータ入力工程1351)。そして、上記の初期状態のケーブルモデル(第1の線材モデル)を出発点として、異なる端点の位置と全長を持つケーブルモデル(第2の線材モデル)をケーブル配線の候補として生成する(配線候補生成工程1352)。機器モデル、その動作に伴なう線材モデルの動作を仮想環境でシミュレートし、それに応じて、線材モデルの全長と固定位置の評価値を生成する(配線候補評価工程1353)。さらに、その評価値を用いて、線材モデルを配線の形態に相当する配線候補として探索し、適格条件を満たす全長と固定位置とを有する線材モデルの全長と固定位置を出力する(配線出力工程1354)。
【0047】
このケーブル配線探索機能1350では、ロボットシミュレーションの結果を考慮し、適格条件を備えた適切な端点の固定位置と全長とを備えた線材モデルを探索し、特定することができる。そして、その線材モデルの適格条件を備えた適切な端点の固定位置と全長とを出力することができる。
【0048】
探索パラメータ入力工程1351で用いられるGUI1360(図10)では、第1の線材モデルの端点が固定される位置A、Bと全長に基づき、候補として生成する第2の線材モデルの位置A、Bと全長(L±)の探索範囲(102~104)を指定する。位置A、Bの探索範囲(103)は、3次元座標(X±、Y±、Z、±)と、例えば座標軸廻りの回転角(α±、β±、γ±)などにより指定する。また、図10のケーブル配線探索機能1350のGUI1360では、シミュレーションにおいて、ロボット装置に実行させるロボット動作(101)を指定できる。
【0049】
さらに、そのロボット動作において、ケーブルモデルに課すべき物理的制約を探索条件の一部として指定することができる(105、106、107)。この探索条件には、例えば、許容されるケーブルの最小曲率半径(105)、ケーブル端最大負荷(106)、干渉検知対象(107)などが含まれる。干渉検知対象(107)は、例えば後述の図13のような様式で指定させることができる。なお、図10の設定GUI1360では、上記のロボット動作(101)、探索範囲(102~104)、探索条件(105~107)を入力した後、探索開始ボタン108を操作することにより、指定したケーブル配線探索を実行させることができる。
【0050】
図10のケーブル配線探索機能1350のGUI1360(図10)における、ロボット動作(101)の指定では、ロボット動作は、ロボットシミュレータで生成した動作を指定する。例えば、シミュレーション済みでHDDにファイル出力されている動作を指定する。あるいは、例えば機器モデルのロボットシミュレーションが済んでいない場合などを考慮し、教示点形式やロボットプログラム形式のロボット制御データの識別情報などにより、ロボット動作(101)を指定するような入力形式を採用することもできる。
【0051】
また、図10において、探索範囲の指定(102、103、104)では、ケーブル端点の固定される位置A、Bを可能な3次元座標(X±、Y±、Z、±)座標軸廻りの回転角(α±、β±、γ±)で指定する。また、ケーブル全長(L±)は、長さの単位で指定する。ケーブルモデル生成機能1303の場合と同様に、ケーブル端点はケーブルを配線したい部品からの相対座標で指定することができ、配線可能範囲も同様の相対座標値を102や103のフィールドに入力することができる。ケーブルの全長についても、ケーブルモデル生成機能1303の場合と同様に、設定したケーブル全長の初期値からの範囲を104のフィールドに入力することができる。
【0052】
最後に、探索条件を入力する。ケーブルの曲率半径の最小値の設定(105)や、ケーブル端に掛かる負荷の最大値の設定(106)や、ケーブルと接触してはいけない対象の設定(107)など、ケーブルモデルに課すべき物理的制約を入力する。これら全てのパラメータを入力した後、探索開始ボタン108で配線探索を開始することができる。
【0053】
図9の配線候補生成工程1352では、前述したケーブルモデル生成機能1303において出力された初期状態のケーブルモデル(第1の線材モデル)を出発点とする。そして、この出発点に基づき、探索パラメータ入力工程で入力された探索範囲において、評価すべき候補として、ケーブルモデル(第2の線材モデル)を生成する。なお、評価値を生成すべき候補としてのケーブルモデル(第2の線材モデル)は、ケーブルモデル(第1の線材モデル)そのもの、あるいはそれと等価なモデルを含んでいてよい。ここでは、指定された探索範囲(102~104)に含まれる位置A、Bと全長を組み合わせることにより、少なくとも1つの配線候補としてのケーブルモデル、即ち第2の線材モデルを生成することができる。なお、ケーブルモデル(第2の線材モデル)は一時に多数(複数)のモデルを生成してもよく、また、後述の遺伝的アルゴリズムを用いる場合などにおいては、世代ごとにいくつかのケーブルモデル(第2の線材モデル)を生成してもよい。
【0054】
評価候補として生成すべき第2の線材モデルは、指定された探索範囲(102~104)に含まれる、初期状態の第1の線材モデルと同様、特定の位置A、Bと全長のパラメータで定義される。そのため、第2の線材モデルは、特定の位置A、Bと全長の値を用いて、上述のケーブルモデル生成機能1303と同じルーチンにより生成することができる。
【0055】
特定のケーブルモデル(第1の線材モデルないし第2の線材モデル)は、その形状はケーブルモデルが配置されたロボット装置(機器モデル)の動作に伴ない変化するものの、固定位置(位置A、B)、全長のパラメータによって一意に定義される。従って、以下で用いられる「端点位置、全長の候補の探索」のような記述は、「ケーブルモデル(線材モデル)の探索」と等価である、と考えてよい。
【0056】
配線候補評価工程1353(図9)では、配線候補である第2の線材モデル(ないし第1の線材モデル)のそれぞれについて評価を行う。この評価値は、ロボットシミュレーションの結果を用い、例えば探索条件を満たす中で最もケーブルへの負荷の蓄積が少ないものが最も評価が高くなるよう計算することができる。配線候補の評価値は、例えば0~10ないし0~100といった実数範囲で生成することができる。
【0057】
もしシミュレーション結果が前記した探索条件を満たさない場合は、最低の評価値として評価値0を生成する。配線候補評価工程1353(図9)で行うべきケーブルとロボットや周辺環境との干渉検知や、ケーブル端に掛かる負荷の計算方式については公知であるから、ここではその詳細な説明は省略する。あるいは、シミュレーション結果が探索条件を満たす場合は、例えばケーブルへの負荷の蓄積についてケーブルの曲率半径の変動の値に基づき評価値を算出することができる。
【0058】
上述のように微細な分割単位に分割したケーブルモデルの各分割点における曲率半径の計算は例えば図11に示すように行うことができる。図11は、分割単位111から分割単位112に分割されたケーブルモデルが曲がっている様子を示している。このようなケースでは、分割単位111から分割単位112がなす曲率半径(R)は、分割単位長(L)と、ケーブル直径(φ)と、分割単位111から分割単位112が曲がっている角度(θ)から、下式のように計算できる。
【0059】
【数4】
【0060】
シミュレーションされたロボット動作に合わせて、ケーブルモデルの曲率半径(R)もロボット動作に合わせて変化させる。分割単位111から分割単位112にかけての曲率半径(R)の変動量(S)は例えば下式のように計算できる。
【0061】
【数5】
【0062】
この曲率半径の変動量(S)について、ケーブルモデルを構成する全ての分割部品間で計算する。その場合、変動量(S)の最大値(SMAX)が計算された分割単位の個所が、最も破断、損傷する可能性が大きい箇所である、と考えてよい。
【0063】
そこで、ケーブルへの負荷の蓄積は曲率半径の変動量(S)に比例すると考えられるため、配線候補の評価値(V)は、例えば変動量の最大値(SMAX)を用いて下式のように計算できる。
【0064】
【数6】
【0065】
以上の計算を配線候補としての第2の線材モデル(ないし第1の線材モデル)の全てに対して行い、当該モデル(ないしその固定位置と全長)に係る評価値を生成することができる。また、この評価値を用いれば配線候補としての第2の線材モデル(ないし第1の線材モデル)の配線設計の順位付けを行うこともできる。
【0066】
そして、配線出力工程1354(図9)では、例えば図12に示すようなGUI1370を用いて、配線候補評価工程において最も評価が高かった第2の線材モデル(ないし第1の線材モデル)を出力する。ここでは、固定位置(位置A、B)と全長(L)に関する探索結果1371を表示し、ユーザに提示している。
【0067】
なお、モニタ13やマウス12などを用いたGUIで構成されたユーザインタフェースで、探索工程における探索の過程を3Dのシミュレーション表示161によって出力するようにしてもよい。また、その際、仮想環境におけるロボット動作とケーブルモデルの動作もシミュレーション表示161によって出力することができる。その場合、曲率半径の変動量の最大値(SMAX)が計算された分割単位の位置などは、破断する可能性が大きい箇所として、シミュレーション表示161中にマーク表示や、表示色の変更、強調表示などの手法によって提示することができる。
【0068】
また、すべての探索したすべての配線候補が探索条件を満たさず評価値0だった場合には、図21のようなGUI1420(ダイアログ)をユーザに提示する。このGUI1420(ダイアログ)では、探索結果をシミュレーション表示161などによって提示するか否かを促す「はい」1421、「いいえ」1422のボタンを配置している。また、詳細不図示ではあるが、探索範囲と探索条件の変更を促す別のメッセージ表示と「はい」1421、「いいえ」1422のダイアログボタンを配置してもよい。その場合、例えばロボット動作時間に対して最も長く探索条件を満たしていた時間が長かった配線候補をユーザに提示することなどにより、ユーザは探索範囲や探索条件を効果的に修正することが可能である。
【0069】
以上のようにして、本実施形態によれば、可動機器としてのロボット装置の動作、およびその周辺環境に対応した無駄のない配線設計が可能である。その場合、ケーブル(線材)の破断などの可能性が低く、周辺環境との干渉のない、特定品種のケーブル(線材)に関して、適格条件を満たす、全長と固定位置に係る値を出力することができる。
【0070】
<実施形態2>
上記実施形態では図12のように配線候補評価工程において最も評価が高かった第2の線材モデル(ないし第1の線材モデル)を1つ出力する例を示した。しかしながら、図20のGUI1410に示すように、例えば評価値の順位に従い、1位から3位、のように複数の第2の線材モデル(ないし第1の線材モデル)を出力するようにしてもよい。図20のGUI1410では、図12と類似の形式によって、第2の線材モデル(ないし第1の線材モデル)の固定位置(位置A、B)および全長(L)の各パラメータを出力している(1411、1391、1413)。
【0071】
配線設計作業においては、異なる固定位置(位置A、B)および全長(L)の各パラメータに係る演算結果を見比べたい場合が考えられる。そのような需要を考慮すれば図20のGUI1410によれば、配線探索結果のうち評価が上位だったものをユーザに提示する事が有効である、と考えられる。
【0072】
<実施形態3>
図18図19は、本実施形態による配線設計支援システムの拡張例を示している。市販のケーブルには、例えば同じ、ないし類似の電気的特性を備えた信号ケーブルであっても太さや剛性が異なる様々な種類のケーブルが存在する場合がある。そこで、異なる種類のケーブル(線材)の中から最適なケーブルを選定したいという需要も考えられる。この需要に対応するためには、探索範囲にケーブルの種類を導入するのが有効である。
【0073】
図18は、ケーブル配線探索機能1350(図9)において、探索範囲としてケーブルの種類を指定できるようにしたGUI1380の一例を示している。図18のGUI1380は、図10のGUI1360に探索すべきケーブルの種類の範囲を指定するフィールド(181)を追加したものである。ケーブルの種類の範囲を指定するフィールド(181)は、例えば図8のテーブルから、ケーブルBとCなどのように、ケーブルの識別コードなどをCSV形式のような形式で指定するよう構成する。あるいは、ケーブルの種類の範囲を指定するフィールド(181)は、複数チェックが可能なプルダウン(アップ)メニューなどによって構成してもよい。
【0074】
次に、配線候補生成工程(図9)においては、181で指定したケーブルモデルについて、配線候補(第2の線材モデル)を生成する。その場合、本実施形態では、初期状態の第1の線材モデルは、上記のケーブルの種類の範囲指定に含まれる複数の線材モデルについて生成される。そして、実施形態1と同様に配線候補の評価を行い、配線候補(第2ないし第1の線材モデル)を生成し、その全長と固定位置に係る情報を出力する。
【0075】
図19は、本実施形態における最適なケーブルの種類を含む配線探索結果を表示するGUI1390の一例を示している。この例では、ダイアログ1391の最下段に示されるように、最も評価値の高かったケーブルの種別(A)が出力されている。
【0076】
本実施形態によれば、複数のケーブルの種類の中から可動機器の動作と周辺環境に対応した最適なケーブルを選択することができ、ケーブル長とケーブル端の固定位置を含む配線設計を行う事ができる。
【0077】
<実施形態4>
本実施形態では、図13図14を引用しケーブルの配線設計支援システムの拡張機能について述べる。
【0078】
ロボット装置を用いた作業環境の設計においては、初めにロボット位置や周辺機器の位置などのレイアウトを決め、その後にロボットの教示を行い、動作が決定することがある。配線設計支援システムを使う場合には、ケーブルが通過する範囲はレイアウト時に設定しておきたいという需要も考えられる。
【0079】
配線設計支援システムにおいてこの需要に対応するには、探索条件にケーブルの通過可能領域を導入するのが有効であると考えられる。
【0080】
図13は、ケーブルの通過可能領域131を仮想環境中のシミュレーションモデルに追加した状態を示している。通過可能領域131は、例えば、モニタ13やマウス12などを用いたGUIを介して例えば直方体形状の頂点情報をマウスで入力して領域を設定するなどの操作方式でユーザに指定させることができる。
【0081】
図14は、ケーブル配線探索機能で通過可能領域を考慮するためのGUI1380の一例を示している。図14のGUI1380はロボット動作の指定(1381)、探索範囲の指定(1382)、探索条件の指定(1383)を行うダイアログを有している。そして、図14のGUI1380では、探索条件の指定(1383)のダイアログは、例えば図13の直方体入力で指定された通過可能領域131の識別情報を指定するフィールド(141)を備えている。
【0082】
そして、本実施形態では、配線候補評価工程1353(図9)において、ケーブルが通過可能領域から逸脱しないかどうか確認する処理を行えばよい。実際には、可動機器(ロボット装置)の機器モデルとともに動作するケーブルモデルが、探索パラメータ入力工程において設定した通過可能領域の各面と干渉(交差)しないかを確認すればよい。面とケーブルモデル(線材モデル)の干渉確認については、ロボットシミュレーション機能で実現することができる。もし、通過可能領域の面とケーブルモデル(線材モデル)の干渉が確認された場合には、ケーブルモデル(線材モデル)の評価値は0とする。
【0083】
以上のようにして、本実施形態によれば事前に設計したケーブル通過可能領域からケーブルが逸脱しないという制約を考慮した、ケーブルモデル(線材モデル)、特にその全長と、端部の固定位置を出力することができる。ケーブル通過可能領域を追加場合には、副次的な効果として、ロボット周辺環境の3Dモデルを用意しなくても良くなるため、より簡易にケーブル配線の探索計算を実現できる点が挙げられる。なお、本実施形態では直方体形状のケーブル通過領域を設定する例を示したが、円筒形の通過可能領域や、複雑な形状の通過可能領域であっても、同様の方法で評価値の計算が可能であるのはいうまでもない。
【0084】
<実施形態5>
本実施形態では、ケーブル(線材)モデル探索処理の高速化の可能性につき考察する。例えば、上記実施形態では、図10図14のGUI1360、1380において指定した端点の固定位置(位置A、B)や全長(L)の探索範囲を第2の線材モデルを探索候補として生成する。その時、探索範囲を高い探索粒度で分割して、第2の線材モデルを探索候補として一時に大量に生成すると、演算手段としてのCPU20の性能にもよるが、配線候補が多くなりすぎて計算コストが上がる可能性がある。これにより、多大な処理時間を要し、システムの実用性が失われる可能性がある。
【0085】
そこで、ケーブルの配線設計支援システムの演算手段としてのCPU20の性能に応じて、場合によっては探索粒度を低くし計算コストを下げる必要が生じる。しかしながら、あまりに探索粒度が低いと、最終的に出力される配線設計の最適性が低くなってしまう可能性がある。
【0086】
このような問題を解決する手法として、本実施形態におけるようにメタヒューリスティクスの一種である遺伝的アルゴリズムを用いることが考えられる。
【0087】
図15は、本実施形態において、遺伝的アルゴリズムを用いたケーブル(線材)の配線探索の処理手順を示している。また、図17は、遺伝的アルゴリズムによる世代交代の様子を示している。ここで、遺伝的アルゴリズムにおける遺伝子の遺伝子情報として用いるのは、線材の固定位置(位置A、B)の探索範囲における2組の変動量(x±、y±、z±)、と、ケーブル全長の探索範囲における変動量(L±)の7項目である。
【0088】
図15において、探索パラメータ入力工程(S101)は、例えば、図10と同様のGUI1360を用いて、ロボット動作(101)、探索範囲(102~104)、探索条件(105~107)の各探索パラメータを入力する。
【0089】
続いて遺伝子初期化工程(S102)では、探索範囲内でランダムに有限な遺伝子を生成する。例えば、図17上段に示す初期世代1Gのように、様々なケーブル端点位置やケーブル全長を持った遺伝子を生成する。配線候補評価工程(S103)は実施形態1の配線候補評価工程(1353:図9)と同様に実施する。その場合、本実施形態の遺伝的アルゴリズム演算では、配線候補の評価値は、その候補を生成した遺伝子の評価値としても用いる。
【0090】
最適化完了判断工程(S104)では、例えば最適化が十分進んでいるかを判断する。この最適化完了判断工程(S104)は探索処理の脱出条件判定として機能する。この最適化完了判断工程(S104)では、例えば、遺伝子の世代数や配線候補の評価値が一定以上かどうか等の比較演算を行う。そして、十分最適化できたと判断すれば最適化を完了し、最適な配線候補を出力する(S104⇒S105)。
【0091】
もし、最適化完了判断工程(S104)で最適化が進んでいないと判断した場合は、遺伝的アルゴリズムによる配線候補生成(S106)に移行し、遺伝子の世代交代により、遺伝子情報の入れ替えを行い、次世代の配線候補(第2の線材モデル)を生成する。
【0092】
この遺伝的アルゴリズムによる配線候補生成(S106)では、それぞれの遺伝子で指定されたケーブルの端点位置とケーブルの全長から配線候補を生成し、遺伝子の世代交代を行う(図17の1G~2G~3G…)。また、遺伝的アルゴリズムでは、遺伝子の交配と突然変異により世代交代を行う。
【0093】
例えば、図17の例では、初期世代G1の遺伝子1Aと遺伝子1Bが親として選択され、交配することでそれぞれの特徴を持った遺伝子2Bが生成されている。また、突然変異に関しては、遺伝子2Bを親として選択され、その特徴がランダムに変更された遺伝子3Bを生成する。このとき親として選択される遺伝子の選択確率は、評価値の大きさと比例させるように制御すると効率化が図れる。
【0094】
以上のような遺伝的アルゴリズムによる演算処理によって配線候補(線材モデル)を探索することにより、より評価値の高い遺伝子同士の遺伝情報の遺伝確率が高まる。しかも、この手法によると、優生学的な制御過程が作用する。そのため、大量の配線候補(線材モデル)をしらみ潰しに探索する手法、いわゆるBruteforceアプローチよりも効率的に最適性の高い配線候補(線材モデル)を探索できる可能性がある。
【0095】
以上のように、本実施形態によれば、遺伝的アルゴリズムによる演算処理によって配線候補(線材モデル)を探索することにより、処理能力の限定された計算資源においても短時間で最適性の高い配線設計を得られる可能性がある。
【0096】
以上に示した実施形態の構成や作用効果はあくまでも一例であって、当業者は本発明の思想を逸脱しない範囲で、上述の実施形態に設計変更を加えることができる。例えば、以上では、線材モデル(ケーブルモデル)は2つの固定位置と、全長のパラメータを持つものとして説明した。実際のハードウェアでは、可動機器に線材(ケーブル)が複数の固定位置で固定される場合も考えられる。そのような構成においては、固定位置から固定位置までの部分線材を上述の実施形態における線材モデル(ケーブルモデル)に割り当てて、演算を行なえばよい。また、可動機器としてはロボット装置を例示したが、このロボット装置の関節数や関節配置は任意であって、また、可動機器としてはロボット装置以外の何らかの動力によって駆動される可動機器を考えてもよい。また、線材(ケーブル)には、信号ケーブルのような電気的な伝達のための線材の他、エアや液体のような他の媒体を伝達するパイプや配管などが含まれていてよい。
【0097】
本発明は上述の実施例の1以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステムまたは装置に供給し、そのシステムまたは装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
また上述した種々の実施形態では、ロボット装置41が複数の関節を有する多関節ロボットアーム備えた構成を例示したが、関節の数はこれに限定されるものではない。また、ロボット装置の形式として、垂直多軸構成を示したが、パラレルリンク型など異なる形式の関節においても上記と同等の構成を実施することができる。
また上述した種々の実施形態は、制御装置に設けられる記憶装置の情報に基づき、伸縮、屈伸、上下移動、左右移動もしくは旋回の動作またはこれらの複合動作を自動的に行うことができる機械に適用可能である。
なお本発明は、上述した実施形態に限定されるものではなく、本発明の技術的思想内で多くの変形が可能である。また、上記の実施形態に記載した効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態に記載されたものに限定されない。
【符号の説明】
【0098】
1…制御装置、11…キーボード、12…マウス、13…モニタ、20…CPU、41…ロボット装置、43…架台、44、45…固定位置、51…ケーブル、131…通過可能領域、161…シミュレーション表示、1330、1340、1360、1370、1380、1410、1420…GUI。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21