| タスク:車の車体のスポット溶接ライン用の溶接ロボットの割り当て
スポット溶接ロボットは、通常6-7の自由な角度で動き、三次元物体に対して
働くロボットです。計算負荷および運動額的な逆関数の計算の複雑さを
低く抑えるために、ここでは、二次元で二方向のみの角度で動く
SCARA型ロボットについて、割り当てを考えます。
この例題プログラムでは、上のタスクの一部を解くプログラムについて、その原則とトップダウンの構築方法を示します。
- タスクは、溶接ラインを設計することです。
- 溶接ラインは、車体製造ラインの一部です。
- 溶接ラインは、いくつか溶接ステーションから構成されます。
- 溶接ステーションは、同時に同じ車について作業するいくつかの溶接ロボットから成ります。
- 全てのロボットは、同じサイズです。
- ロボットは、あらかじめ定義された定位置にのどこかに置くことができます。
入力データ:
各車について溶接すべきスポット
(例えば、ドア開閉およびホイール部分のために400スポット)
ロボットの物理的なサイズ
(上腕、下腕、腕のサイズなど。衝突を防ぐために必要)
ロボットの性能効率
溶接作業にかかる時間(例えば0.5秒)
ひとつのスポットから隣のスポットに移動する時間
(例えば1秒)
ひとつのスポットから別のスポットに移動する時間
(例えば2秒)
ひとつのスポットから休息位置に移動する時間
(例えば4秒)
一日に作業する車の数
(例えば1000台/日 3シフト/日 6時間/シフト
では、64.8秒/台
この場合、車をラインに沿って動かすのが10.8秒
で、止まっている車について仕事する時間は54秒になる)
タスクは、以下を計算します:
必要となる溶接ステーションの数
各溶接ステーションの中のロボットの位置
各ロボットのパス(溶接するスポットの順序)
目標は以下の通りです。:
溶接ステーションの数を最小限にする。
各溶接ステーションのロボットの数を最小限にする。
すべてのスポットを溶接する。
操作の途中でロボットを衝突させない。
2、3の仮定をします。:
溶接ステーションはお互いに侵害し合わない。
(例えば、分かれている溶接ステーションのロボットは、衝突しない。)
スポットは、隣のスポットと一連のシーケンスとして与えられる。
すべてのスポットは、正しい位置に置かれたロボットの
届く範囲にある。
限界は以下の通りです。:
ポイントでのみ衝突の検出をする
ポイントどうしの間の道では行わない。
部分的に実装しました。:
行 プログラム
29 weldingline.min 溶接ラインについて記述
88 alloc_robots.min スポットについてロボットの計画
51 scara2D.min 2D SCARAロボットについての式
18 sleep.min スローモーションでのアニメーション
23 time.min 問題解決の時間を計測
183 draw.min データと解決方法の可視化
|