はじめに
最終更新: 2012/04/07 19:17:05
[| ]
最終更新: 2012/04/07 19:17:05
このページについて
このページは
東北学院大学
工学部
機械知能工学科
4年生の「ロボット開発工学」用のオンラインページ兼、講義ノート兼、講義立案兼、メモなどのページです。(すなわち常に工事中)
講義を受講したり、レポートを書いたりするときの参考になることを期待しますが、最終的にはそれぞれの分野の専門教科書に当たることをおすすめします。
注意事項の詳細をまず確認してください。
ロボット開発工学
ロボット開発工学とは
日本の辞書に「ロボット開発工学」という言葉はありません。
ネットで検索しても、うちの学校にくらいしか見つかりません。
なぜなら、しばらく前の熊谷研発足時に造語したものだからです(厳密には、当時はこの言葉が出てくるところが1ページあったのですが、いつの間にか見えなくなりました)。
いわゆる「ロボット工学」は、ロボット基礎工学で学んだ通り、「いかにロボットを動かすか」の数学表現に関するものです。
もちろん、ロボットの理論を検証するためには、シミュレーションや実際のロボットで試す必要がありますが、主体は理論です。
その一方で、ロボット、広くはメカトロシステムを構築するには、いくら理論を知っていてもだめで、様々な工学の専門分野をピックアップし、結びつけて一体化する必要があります。
「ロボットを動かす」ことが主体の工学があるなら、「ロボットをつくる」ことが主体の工学があってもおかしくない、という主張を「開発」に込めています。
一般に大学の科目は、卒業に近くなるほど専門性が増して、担当する領域が狭くなる傾向があります。
それに対して、ロボットの開発は、多岐に渡る技術分野の総合です。
ロボットはメカの部分、電子回路の部分、コンピュータのソフトウエアがあります。
メカの部分だけをみても、構造材があって、機構があって、それぞれの部品の強度設計や材料の選定、加工など、多くの要素からなっています。
しかし、よく考えてみれば、それらは4年生になるまでに、機械の専門科目として多くの先生方の手によって講義されてきていますし、実際、多くの学生さんがそれらを履修してきています。
では、ロボットを構築するのに何が足りないか、答えは「どこにどの知識を使うべきか」です。
このことはものづくりを実際に体験することで、自ずと気づくことで、私自身、長年の?工作人生で、技術の適用法を身につけてきました。
この科目は、その経験を元にして、おおざっぱではあるけれども、ロボット、メカトロシステムの開発の手法を追うことで、「どこにどの知識を適用すればいいのか」「これまで学んできたことの実際の使い道」を紹介することが最大の目的です。
併せて、大学卒業前に、これまで習ってきたことを今一度確認する意味もあります。
もちろん、新しく増える知識もあると思いますが、多くは「どこかでやったことがある気がする」はずです。
その「やったことがあるはず」をちゃんと引き出して、適用できれば、意味のある知識だったと言えるでしょう。
なお、この科目の英語名には、"Mechatronics III"と書いていることがあります。
メカトロニクスI,IIでは、機械屋のための電気電子回路という位置づけで講義を行ってきました。
そして、この科目こそが、本当に総合システムとしての「メカトロニクス」になります。
(なんで、メカトロ開発工学じゃないかというと、長くなるし、「メカトロ」より「ロボット」のほうが知名度があるから(笑))
ロボットをつくる
ロボットをつくる場合、概ね、以下の手順を踏みます。
- 構想:
「なにをつくるか」を考える段階。ふつうは「ロボットをつくる」言った時点で、すでになにがしかの構想はあるはず。
例:ものを運搬するロボットをつくる
- 仕様の具体化:
具体的な検討を進めるために仕様(スペック)を具体的に決める。
客先からの要望があれば、それに従う(もしくは修正の説得)必要があるが、おおざっぱな構想しかなければ、ここで数値を定める。
「大は小を兼ねる」という言葉もある一方で、本来の目的に対して過大な仕様は、難易度を必要以上に高めるため、そのロボットが実際に使われる状況を可能な限り想像し、多少余裕があるくらい、が無難。
今後の検討で調整が入ることを想定して「絶対に譲れない最低ライン」の仕様と「このくらいの性能が望ましい」という目標仕様(余裕のある仕様)とを検討する。
基本的には後者で設計を検討するが、具体化が困難になったときに前者のレベルまで落とす。
例:質量20kgの物体(密度は水以上)を平坦な床面上で、1[m/s]の速度で運搬する。
経路上には最大5[deg]のスロープが存在する。
- 基本構造の検討:
仕様を満たすための動作面(機構)の検討をする。
移動ロボットであれば移動の手段はなにか(車輪/クローラ)、車輪移動であればその駆動輪配置や操舵方式などを検討する。その際、「どういう作業をさせるか」が大きく影響するのは間違いない。安定性重視であれば車輪を多く配置することも必要だが、車輪の浮き上がりも想定する必要がでてくる。
物体ハンドリング型(マニピュレータなど)のロボットであれば、仕様に基づく作業範囲を満たすような構造を検討する。直交系のロボットにするのか、多関節型のロボットにするのか、軸数はいくらか、などを決める。
- 数学的な可否のチェック:
つくっても定量的に動かせなければしかたがない。
大まかな機構を決めた段階で(厳密には決めるのと並行して)、数学的な表現で表していく。
慣れれば、直感的に「つくれば動く」も可能であるが、関節の可動範囲の制限などで思ったほど作業領域がとれないことがある。
また、移動ロボットの大きさそのもの制約、直動ユニットの大きさの制約などから、要求仕様ほどには可動範囲が確保できなくなることもある。
- 作用する力の検証:
ロボットの各部に作用する力の検証は「うごく」「壊れない」「精度の良い」ロボットをつくるために不可欠である。
主に検討する力は「対象に作用する力」「対象や自身に作用する重力」「動作の慣性力」である。
それらの力に耐えるのは、関節の駆動機構、構造材である。
ものを押したり組み付ける場合には、当然対象との相互作用があり、それに耐える必要がある。
たいていの場合、最も影響が大きいのは重力である。
水平面上で全体を支持された状態で移動するなら(単なる車輪移動ロボットなど)、さほど影響はないが、アーム状の部分がある場合には影響が大きい。
水平方向にのみ動くなら構造への影響が、上下に動くならそれに加えて駆動機構への影響が大きい。
加えて「計算上は壊れない」では、たわみなどで精度が不十分になる可能性があり、また、衝突の衝撃などで破壊する可能性がある。
当たり前だが、むやみに強度のためにゴツくすれば、その分質量が増え、重力も大きくなる。
ゆっくり動くには影響がないが、それなりに俊敏に動かす場合は慣性力の影響が出てくる。
主に加速度、角加速度に比例して出てくるため、厳密な見積には速度の時間変化(速度パターン)も併せて検討する必要がある。
逆に、出力の制限から加減速が制限される可能性もある。
- 材料の検討、構造の検討:
主に、メカの全体を構成する構造材の材料の選定が「実物をつくる」には重要である。
当然、作用する力を支えうる強度の材料、太さの材料が必要である。
ただし、必要以上に強くしようとすると、単純には質量増加につながって、作用する力が増えるといういたちごっこになる。
また、材料コスト、加工の手間、さらには太くして引っかかることで動作の制約が生じる可能性も大きい。
高強度の材料にすれば細く、軽くできる可能性はあるが、一般に高く付く。
加えて、材料そのもの性質により、腐食への耐性(屋内限定か、屋外でも使うか、さび止めがいるか)、熱への耐性、加工のしやすさや精度なども異なってくる。
例:アルミは軽く柔らかく手工作はしやすいが、逆に柔らかい(ねばい)ゆえ、高精度の加工が難しい、綺麗な加工面を得にくいなどの欠点もある。
- 動力の検討:
ここまでの検討で、ほぼ、各アクチュエータに必要な出力が見積もれる。
簡単には「最大の速度(角速度)」*「最大の力(トルク)」で、要求される出力を見積もる。
SI単位系で計算していれば、単位は[W]となる。
往々にして、最大速度が必要なときと最大の力が必要なときは異なるタイミングであり、変速機構や同等の特性をもつ特殊な機構を組み込めば要求出力は低減しうる。が、複雑化によるデメリットのほうが大きい場合も多い。
その最大の出力を見越して、アクチュエータを選定する。
ロボットでは一般に、回転式モータが使われる。
近年では交流サーボモータが幅広く使われるようになってきたが、商用電源が前提である。
移動ロボットなど、内蔵電源にするには制約を考慮する。
- 電力の検討:
全体のアクチュエータをもとに、消費電力を見積り、電源の工面を検討する。
据え置き型のロボットなど、外部からの優先供給が可能であれば特に問題はない。
移動型の場合は、充電池を搭載することになる。
その電池の寿命(稼働時間)、充電方法などは実用性を考えるなら重要である。
- センシング:
ロボットを動作させるにあたり、なにを計測するかを検討する。
各アクチュエータの動作はその対象であり、その上で、周辺環境からなにを検出し、動作に使うかを検討する。
安直にカメラを載せれば、多くの情報は得られる。しかし、必要な情報を分離できるとは限らない。
単なる一個のOnOffスイッチが有効なこともあれば、レーザーを利用した高精度なセンサや磁気のセンサが有効なこともある。
- アクチュエータの駆動:
アクチュエータを選定した段階で、ほぼ、その電気的な駆動方法は決定される。
産業用機器では、モータとセットになった制御アンプを直結し、そのアンプに対して指示を送ることになる。
この段階でほぼロボットは「動かせる」。
どういった仕様の信号で、どう指示を送ればいいのか、どのくらい細かく指示をするのか、どのくらいの頻度、滑らかさにする必要があるのか、など、ソフトウエアとの境界をつめる
- センシングとコンピュータ処理:
センサをつければ計測できるが、実際には、その信号処理が不可欠である。
コンピュータに入力する前のアナログ回路の段階での処理もあれば、ディジタル化したあとの信号処理もある。
すくなくとも、増幅とフィルタ処理は必要であり、かつ、ロボットのそばでも動作する回路の検討を行う。
- 制御ソフトウエア:
センサを通してメカの情報を得て、制御計算を行って、アクチュエータに指示をだしてメカを動かす。
その一連の制御動作を階層的に考える。
また、制御理論を制御プログラムとして実装するために必要な検討がある。
目的や仕様に応じて、どの部分がどれだけ重要か、難題となるかはかわりますが、ロボット1台、メカトロシステム1台をつくるには、より広くは工業製品をつくるには、多くの検討が必要になります。
この講義では、それぞれについて、ひろく浅く、実例込みでお話しします。
併せて、レポートという形で、要所要所は受講者に本気で検討してもらいます。
それにより、なんとなくでも「ロボットをつくるために必要なこと」を考える体験をし、今後それが必要になったときの「とっかかり」としての「雑学」を身につけることを目的とします。
ロボットの目的と仕様
ロボットをなんの理由もなくつくる、ということはなく、なにかの目的が普通はあります。
業務でつくるロボットは、当然ながら要求があります。
趣味でつくるものでも、なんらかのゴールを思い描くのが普通でしょう。
ロボットをつくろう、というとき、「明確な仕様」を起こさなければならず、「明確な仕様」があれば、開発の道が見えます(開発不可能という結果も見える)。
本科目では、ロボットをつくる上で考えなければならないことを、おおざっぱに広く浅くさらっていきます。
そのために、架空の目的をたて、ロボットの仕様を策定します。
ロボットの目的
3次元空間内で、物体を搬送するロボットを検討することにします。
- 物体は直径40[mm]×高さ40[mm]、質量400[g] (密度的には鉄)
(円筒=向きを問わない)
- 物体の把持方法(持ち方)は特に規定しない(検討しない)。挟み込むハンドでも、電磁石や気圧による吸着など。
- 搬送の領域は直方体空間とし、この空間内は任意に運べるものとする。
大きさは幅300~2000[mm]、奥行100~2000[mm]、高さ100~300[mm]で設定する。
- 精度はとりあえず気にしない。
- 搬送速度も、速ければいい(速くすることが可能な方法)。
- 構造的に力学的に実現性があり、かつなるべく簡単な構造であること。
注目するところは?
このような目的の場合、対象に注目すべき(とくに質量と扱いやすさ)なのは当然として、その搬送空間の大きさが、ロボットの方式を選ぶに当たり重要です。
ものを運ぶ=腕状のものをのばす、と単純に思いつきますが、ある程度以上空間が大きくなると、ものを運ぶよりも長くなった腕を支える方がつらくなります。
たとえば、灯油のポリタンを動かしたいという場合、その場から動かずに腕を伸ばすだけで運ぶより、ぶら下げた上で足で移動した方が体には無理がかかりません。ただ、それが50[mm]ずらすだけなら動く必要はないでしょう。
もちろん、実現性まで考えると、そこそこ行けそうな構造を考えて、計算して比較することになります。
慣れれば、直感的に向き不向きがより現実に近く分かるようになりますが、とりあえずは機構を考えて、計算を始めてみましょう。
熊谷正朗
[→連絡]
東北学院大学
工学部
機械知能工学科
RDE
[| ]