海中ロボットのデザイン-第1回目：システムデザインとハードウェアー吉田弘2019年6月15日東京大学生産技術研究所第1回セミナー
特に強化したいところ知能化センシング5大チェックポイント1 、海水に入れるまえに君の作ったロボットが、海中で電源を入れて30分以上無事だったら製作の5割はクリアーできた！海水に入れる前に①真水中で動かし、浸水の無い事を確認②真水のプールに一晩浸けてる本番では絶対に直前に耐圧容器を開けるな！！
6

ロボットは本番前にばらしてはいけないたとえ、電源ONなどの理由があっても電源ON/OFFは外からできるようにする.
マグネットスイッチ.赤外線・電波• 有線（水中コネクター）ソフトのパラメータ変更も外からできるようにする.
電波.有線（水中コネクター）先生に頼んで水中コネクターを買ってもらおう！水中レセプタクル 1個水中ケーブル   2個 （ソフト設定用＆充電用、電源on用） 7
君たちは、ソフトは簡単に変更できると思っているだろう勘違いです！いじるのは簡単だがデバッグはタイヘンパラメータはフアイル読込ゃI/F画面で変更できるようにする海水に入れる前に①　実環境で2時間以上うごかせ②　本番と同じ行動をさせてチェック本番では絶対に直前にソフトウェアをいじるな！！
88
4．電源容量は本当に足りているか？モータが最大の電量消費パーツ次に大きいのはライトチェックポイント①モータのワット数＝消費電力ではない②電線の太さは適正か？海水に入れる前にモータの消費電力は空気中と水中で大きく違うことを理解しているか？
9
WiFiの罠におちるな5 . WiFIはとっても便利しかし2つの物理を把握しておけ！!_海水は激しく電波を減衰するチャンネルは有限確認しておかないと、本番で使えない目にあう！
10

→絵を描いてみる(ロボットの絵では無く、使い方の絵)
11

→必ず、｢計画書｣を書いておくこと
12

•ロボットは、必ずサブシステム化される。 •基本設計をベースにサブシステムの仕様を決める•担当と工程を決める決まったことは、ドキュメントにまとめる工程表・担当者表サブシステムのアウトプットもドキュメント化して共有する機械図面、回路図面、ソフト仕様書等
実はここまでは、言われれば皆できる• •出来ないのが、検証工程• いかに、各部の検証をキチンとやれるかが成功の鍵プロフェッショナル部品レベルの製作>機能装用サブシステムの製作→機能製画システム組上げ→機能検証システムの便職長専職験システムのオペレーション試験ハードウェアから作りたいヒトに
17

①　潜航深度はどれくらいか？ ※ 10mは0.2MPaA、つまり1kg/cm²の圧力②　航行時間はどれくらいか？ ③航行距離はどれくらいか？（ROV：ケーブル長） ④　スラスタパワーはどれくらい必要か？ ⑤運動性能は(スラスタ&舵の配置と数) 6航行センサーは何が必要か⑦着水・揚収方法は（サイズと重量） 【AUVのみ】 ①スタート＆ゴール判断はどのように？ ②位置はどうやって知る？
18

・市販の防水製品は「海中では使えない」 ・防水コネクターは「じゃぼじゃぼ漏れる」 •どれだけテープを巻いても海水は止まらない
19

・海水は電子回路にとって過酷な条件•わずかでも浸水したら故障•しかも直せない•どんなすてきなロボットを作っても、動かなければ意味が無い•海水ショートは火災のネタでもあるエネルギーを注ぐのは防水・耐水対策
20

容器の防水
•確実な海水止めは「Oリング」 ・パッキンを使うときは、多点でしっかり締める・シリコングリース（高粘性）を多用しろ！ •接触面はゴミ一つ無いように•蓋締め3種の神器: 1）洗浄スプレー（またはエタノール） 2) エアーダスタースプレー 3）シリコングリースごれにプラスして「キムワイプ」 •簡易的修復はシリコンコンパウンド• 小さな穴埋めはアロンアルファも有効•   2液混合工ポキシ接着剤は無敵(アラルダイト等) •海水に浸ける前には、必ず真水水槽に一晩浸けて確認を！！  21
貫通型コネクタの製作用意するもの•コネクタフランジ(切削加工してください)屋外用ケーブル（キャブタイヤケーブル：2PNCT等） . •アラルダイト•シリコンコンパウンド
22

•君の作ったロボットが、水中で電源を入れて、30分以上無事だったら、システムの問題の５割はクリアーできたと思うべし。 •でも、大会に出る前に必ずやろう！水中で動かし、浸水の無い事を確認すること水のプールに一晩浸けてみること本番では絶対に直前に容器を開けるな！！
24

洗浄スプレー        キムワイプ                  グリースOリングを閉じるときは、必ず洗浄（クリーナ＋キムワイプ） ● ●グリースアップ
25

•今日の座学は、「使える」ことが重要なので、難しい式は一切使わない。けれども、エンジニアとしては、「どうしてこうなるのか？」その物理は知っておくべきで、各自勉強されたい。 •さて、ネットから耐圧設計のソフトをダウンロードしてしまおう。米国サイト、DeepSea Power&Lightが無償で提供して.いる、Under Pressureというソフトだ。すごく簡単に使えるし、設計精度が良い。 • ざっくり言えば，外形120mm x 300 mm, t=3mmのアクリルパイプは深度20mくらいまで使える. •ただしエンドキャップはt=7mmは必要
26

機体形状を大きく左右するのは• 止まらずに早く走るか？ •ゆっくり走り止まる事もあるか？の2点.最初のタイプをクルージングタイプ，後者をワーキングタイプ(またはホバリングタイプ)という.クルージングタイプワーキングタイプ
27

比重と密度
・比重：□ボットを構成する物体の密度と、真水の密度との比。 ・密度＝物体の質量÷体積であるが、ほぼ同じ値と扱って良い。 • 真水の密度はρ ～1 g/cm³,比重は1 •海水の密度は,塩分濃度が35‰のときに、 ρ～1.025 g/cm³ •実際には、密度は温度で変化するがラフエスティメーションではこれで十分。 •よく使う材料の大体の比重も参考に示そう。 ①アクリル   ～ 1.2 ②アルミ③ステンレス～ 7.8 (鉄類は圧倒的に重いので錘に良い)
28

浮くかどうかのラフな計算をする×最初に計算しておけば、あとで浮力調整に苦労しなくて済む。 (1)排水量水を押しのける体積→計算はとても簡単例題外形: a = 10 cm,長さ: l = 40 cmの円筒容器の排水量: V [cc]は？ 10 cm答え
真水の場合は比重～1であるから、約3kgの浮力が有る事になる。 29
浮くかどうかのラフな計算をする(2)ボディ重量の見積もり機体重量＝容器重量＋フレーム重量＋外部機器重量＋内部機器重量これは設計段階では簡単にもとまらない。 2回、3回と計算をやり直そう。初期設計では、 ●容器の大きさと材料： WpH= 1 kg ●大体のフレームサイズと材料： Wfm= 0.5 kg ● 主要機器： Wequip = 1 kgを決めて、だいたいの重さを見積もりましょう。この例では、機体重量は2.5kgですね。
浮くかどうかのラフな計算をする(3)浮量がもとまる浮力=排水量−重量先ほどの例では、 V=3リットル正確には，外部のスラスタや舵，外部センサなどの体積も排水量に含まれるが，ここでは無視しているW=2.5 kg問題：真水と海水の時の上記例の浮力をもとめなさい。 ●答え： ● 真水： (Vx1.0) – W = 500 gとなり、このロボットは浮く。 ● 海水：さらに軽くなり： (Vx1.025) – W = 575 g
31

浮心と重心（B−G）の関係
作ったロボットがひっくり返らないかどうか？傾いたりしないか？これも重要だ。予めラフに計算しておくと良い。ただし、ロボットの機械図面と各部品の配置図を作る必要がある。集計にはExcelを使うと良い。
1.重心(G)を求める
容器、フレーム、スラスタ、部品、錘など、個別にExcelでn個の部品リストを作って、 n番目の部品重量: Wn （秤で計っておこう）元 V n番目の部品の重心：  Xn, Yn, Zn (大体でよい)を記載する。これらから、ロボット全体の重心点(x-y-z)を求める。ロボットの前後をx軸、左右をy軸、上下をz軸としたとき、重心のxとyの位置は軸上にないと、ロボットは傾く事になる。
32

2.浮心(Ｂ)を求める
.容器の排水量だけで浮力を得ている場合は、容器の中心が浮心になる。複数の浮力材を用いている場合は、重心の計算同様、浮力と位置をサムアップする。 •浮心の水平面内(x−y)位置は重心と同じであるべきである。
3.浮心と重心(B-G)
• Z軸上の浮心位置は、重心位置より必ず上になければならない。 •浮心と重心が離れていれば、姿勢は非常に安定するが、姿勢の制御性が悪くなる。初心者は離しておいたほうがよいかもしれない。
• 推進力の基本はスクリュー（スラスタ）だ•船尾に1スラスタ＋水平垂直ラダ−がAUVの基本形(制御し易い) •しかし舵は低速では効かない•速度が遅いなら4つのスラスタ（2x前後スラスタ、上下スラスタ、左右スラスタ)も基本形•スラスタや舵の取付位置は正確には計算で求めるが、ラフに決めても概ねOK
34

•スラスタの適正配置設計は難しいので、ラフにやる•水力差制御で航行する場合は、前部もしくは後部に配置•浮心・重心位置と、機体形状（流体抵抗）に影響を受ける•重心近くに配置すると不安定になる
35
共通項目
1.振動を侮るな！ •耐圧容器内の基板や部品を宙ぶらりんのまま使っているのを見かけます•直前に付け足す場合を除いてやめましよう。 •振動（やノイズ、温度環境の変化）により、動作が不安定になります。 •コネクタやポッティング技術を使え内部の基板・部品は必ず固定する
37

2．熱を気にせよ！ •スラスタドライバはもちろん、CPUやDCDCの放熱にも気を使おう• いまさらですが、シャーシには厚め（5mm以上）のアルミ板を使うと良い。放熱できますから。 •もう無理、という方は、銅板（1mm以上）を、好みの形に切って、ドライバやCPUに密着させます。発熱部品は、必ず放熱対策を
38

３．配線に気を配れ！
•学生さんの製作物でよく見かけますが、配線をバラバラ、ブラブラにしている。 •絶対にやめましよう•電気的・機械的に弱くなり、動作不安定を引き起こします.電源線は必ずツイストペアに•信号線もグランド線を中心に束ねる•信号線と電源線は離して配線•これらの配線はシヤーシなどに固定する配線は、必ず束ねて固定
•ソフトウェアは最後になりがち•あと回しは絶対にやめよう•必ず設計仕様書を作る•それをメンバーでレビューする•マトリクスを作成する・異常系（予期せぬ操作・状態）での動作を規定する• 関数チエックをする
40

•メインの1本書きは避けよう•  If分岐の多用と、グローバル変数のフラグはやめよう•  Case文でステートマシンを作ろう•コメントを必ず書こう変数は、型と機能を明確に表す名称にする（例：iTimer10ms） .関数名はローカルかグローバルかと、機能を明確にする名称にする• (例： g_GetRs232cData) •各部にトレースを入れ、必ずログを取って、解析できるようにしよう
41

一様均一な画像が得られない
43
ソフトウェアは万能ではない•  OPEN CVのライブラリは何でもできるわけでは無い•しっかり作った学習済みデータのないDeep Learningは何も学んでいないヒトと同じ•入力になるハードのスペックに気を使え
位置推定の方法
•画像認識によるSLAMはハードルが高い•ソナーの画像解析はより難しい•センサで位置を知るのが最も賢いやり方•短区間なら方位＋速度x走った時間による位置推定が意外に有効
44

●ジャイロを搭載しているから位置が分かる• 4Kカメラを搭載しているので画像が良い•画像マッピングで走るのが一番•万一の時はCPUが対応してくれる•プールで試験したから大丈夫
45

• ここまで話してきたことは、実はすべて作ったロボットの信頼性の向上の手法です。 •そう、皆さんのロボットが現場で動かない、それどころか壊れちゃうのうは、信頼性が低くつくられているからです。 •でも、しかたありません。アマチュアの製作物には信頼性なんて概念がありませんから。 ・一歩先を行くためには、信頼性を考慮しましょう。そんな君たちが、勝てます！
46

•大会直前まで作っていたら、負けたも同然●自然環境は「まぐれ」を許さない•フィールドテスト(海中実験)をどれだけやったか？その回数が優勝の確率だ！
47

.第一回目ということで，海中□ボットの機体の作り方の基本をレクチャーしました. •　もっと，知りたい方はどこかで私のレクチャーを受けるか， yoshidah@jamstec.go.jpまで•　ただし，忙しいので１回メールしたくらいじゃ返事は無いと思ってください．しつこくね！
48