Rover製作02 EspressoFrameの紹介、主要部品の選定、必須パーツリスト

# 概要
前回設計したAGVの完成形と必要な部品の選定と、作成に必要な購入品をリストアップしていきます。
ここではpixhawk/ardupilotを中心として製作していきます。自ら基板を設計してプログラムを書いてもよいのですが、今回はできるだけ購入品で済ます&プログラムをできるだけ自作しない方法をとります。

# EspressoFrame

この先のRover製作編で作っていくAGVです。

![all_front_small.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/254442/1e32f940-5680-68bb-2939-30040d1ffa51.jpeg)

電装系のシステム図です。

![espresso_frame_elec.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/254442/260f8e75-4969-44b0-5ec4-145d4ac409a9.jpeg)

コンセプト説明動画です。

https://www.youtube.com/watch?v=mXv3kD34pzc

主な仕様

| 1 | 2 |
|:-:|:-:|
| 駆動方式 | 差動2輪 |
| 外界センシング | Depthカメラ（パンチルト）、Lidar、超音波センサーx2 |
| 安全装備 | 駆動停止バンパー |
| CPU | Intel NUC / Pixhawk |
| バッテリー | 18V 6.0Ah |
| UI | Androidタブレット、ステータスLED、ブザー |

# 部品選定の背景

## 駆動系

### ハードウェアコントローラー
モーターの制御信号などを出力するマイコンボードを選定します。マイコンボードには、

* 汎用品型：汎用のIOがついていて、ユーザーが周辺基盤(シールド)とプログラムを作成する物(Arduino、mbed等)
* 機能特化型：特定用途の物で、機能に特化したIOがついていて、プログラムも既存の物がある(Pixhawk、Pixracer等)があります。

元はドローン用のマイコンボードですが、Roverモードのファームウェアもある「Pixhawk」を今回は使います。Pixhawの中でもいくつかバリエーションがありますが、一番流通量の多い「Pixhawk1」を使います（通常Pixhawkと表記されるものです。）
参考ページ：https://ardupilot.org/copter/docs/common-pixhawk-overview.html

Pixhawk1でもボードのバージョンがあって、現在主に流通しているものはv2.4.8です。これとは別に「Pixhawk2」があるので混同しないように注意が必要です。

![mro_pixhawk.037fd8d6.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/254442/e7384315-ed8b-0d94-ba5e-d1758ab2ba92.jpeg)

### ファームウェア
また「Pixhawk」に対応したファームウェアとして「PX4」と「Ardupirot」がありますが、Roverモードへの対応は後者の方が進んでいるため「Ardupirot」を使います。

### モータードライバ
Pixhawkとの相性やUSB接続でチューニング作業が出来ることから「RoboClaw」シリーズを使います。
モーターの電流を考慮すると、一番下のランクの[RoboClaw 2x7A](https://www.basicmicro.com/Roboclaw-2x7A-Motor-Controller_p_55.html)で充分です。

![roboclaw-dual-7a-6-34v-regenerative-motor-controller-3_89354550-ff14-4504-8c43-c4e9014aa2ea_1200x1200.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/254442/a53e8ef9-179e-4b48-974f-315ac82780ee.jpeg)

### タイヤ

* 乗り越え性能  
タイヤは基本的に段差乗り越え性能に効きます。今回は室内の1=~2cmの段差を乗り越えられれば良いです。[前回](https://qiita.com/srs/items/866a6ac77068dd7065c5)の調査を見るとタイヤ直径の1割程度が超えられる値のようです。
* モーターの軸との接続性
* 走行の静粛性：ゴム素材の物が良い

これらを考えると[Pololu Scooter/Skate Wheel 144×29mm](https://www.pololu.com/product/3281)を選択しました。

![0J6891.600x480.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/254442/53043730-6057-d0cc-db66-1a94521edfcb.jpeg)


### モーター
ROSで正確な制御を行うためにはいくつかの条件を満たす必要があります。
* エンコーダー付きのモーターであること
* ギア比がある程度選択可能な物である必要があること
* 使用電圧18~21V 
* おおむね50W程度の出力
    * 最大速度は1m/s程度
    * 最大出力は40N程度(=重量20kg=200kgwで走行抵抗0.2を想定)

この条件に合うものとして[Pololu 37D Metal Gearmotors](https://www.pololu.com/category/116/37d-metal-gearmotors)があります。12V/24V品がありますが、24V品を使います。

#### ギア比の選択
ギア比の選択で必要なこととして
* 必用な最大速度が出せるか
    * 今回最大速度として1.0m/s
        * タイヤの直径が144mmであるため、この時140rpmとなります。
        * つまり最大回転速度は140rpm以上の物
    * 今回常用速度として0.3m/s
        * タイヤの直径が144mmであるため、この時40rpmとなります。
        * この速度になるときにあまりにも使用電圧が低いと、速度制御がうまく行えません。  
目安として無負荷時で常用速度になる電圧が、最大電圧の20%以上は必要です。
        * よって最大回転速度が200rpm以下の物

以上の条件が満たすものとして50:1のモーターがあります。
（しかし実際はトルクの余裕を優先して70:1を今後の例では使っています）

## バッテリー
[前回](https://qiita.com/srs/items/866a6ac77068dd7065c5)の調査をもとにroomba(47Wh)~whill(268Wh)の半分程度のバッテリーを探します。
航空機持ち込みの制限が約100Whであるために、100Wh弱の容量のバッテリーが多くあります。
バッテリー自体の入手性や、アダプターの存在を調査した結果「BL1860B」を使用します。

![61WwnZQcNcL._AC_SL1181_.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/254442/7f3ce160-3ff6-ab3d-384f-e0b2dea0d471.jpeg)

### 組み込み充電・無線充電について
roombaなどには機体本体が充電器につながりバッテリーを充電する機能がついています。また一部AGVでは物理的な接点がなく、無線送電で充電することが出来ます。
これらを採用を検討しましたが、自作の回路が必要・部材が高価であるために採用しませんでした。

## Linuxコンピューター
ROS/ROS2が動作するコンピューターです。ビルドの話や周辺機器の接続のことを考えて、x86_64アーキテクチャーのCPUを選定します。
長期間の入手性を考えて[Intel NUC](https://www.intel.co.jp/content/www/jp/ja/products/details/nuc/kits/products.html)を採用します。これなら世代が変わっても外形やねじ穴の形状が同じために取り換えが容易ということも利点です。また仕様としては書いていないですが、電源が15~24V程度の物が使えるために、マキタバッテリーを直刺し出来ることも利点です。

### 液晶モニター
LinuxコンピューターをGUIで操作する場合にはモニターが必要です。必要な時につけるのは面倒なので、組み込んでしまいます。
車内で使用する用途の7inchiモニター良く売られています。
[裏にねじ穴が点いている](https://www.amazon.co.jp/dp/B01C4AI6XG)ものが取り付けやすくお勧めです。

![41nJYyABRgL._AC_.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/254442/d8a15b36-a013-f6e6-b81d-7577276b761b.jpeg)

## タッチパネル
機体本体にタッチでのUIを搭載するためにタッチパネルを検討します。
タッチ機能付きのモニターをIntel NUCに接続すると、自動でウィンドウを出すときにどのウィンドウにだすかの設定が煩雑になります。
Androidタブレット別途取り付けて、LinuxPCとはTCP/IPで通信するようにしました。タブレットは[fireHD10](https://www.amazon.co.jp/dp/B08F5MLWC9)がおすすめです。


# 主要部品（必須）
移動を行うために必要なものをリストアップします。

## pixhawk系
|名前|説明|url|値段|数量|
|:--|:--|:--|:--|:--|
|Pixhawk ※1|コントローラー本体|https://ja.aliexpress.com/item/32947890087.html|9000円|1|
|PowerDistibutionBoard|配電基板(12V/5V BEC付)|https://ja.aliexpress.com/item/32825217094.html|1500円|1|
|USBケーブルmicroB|ppixhawk接続用|https://akizukidenshi.com/catalog/g/gC-07607/|150円|1|

※1付属品のオプションがありますが、最低限「セーフティースイッチ」と「ブザー」があれば大丈夫です。

Pixhawkは上記のハードウェア（中身はIMUなども載っている電子回）でこの上に動くソフトウェアの名前がardupilotです。Pixhawkファミリーの中でもいくつかの種類はあります。ハードウェアにv2.4.8と書いてありますが、今回使うのはPixhawk1に分類されます。Pixhawkのコネクタはオリジナルの3DR社の物だとヒロセDF13コネクタですが、強度に問題があるため上記のリンクのような他社品だとMolexPicobladeコネクタになっています。

## 電源周り系
|名前|説明|url|値段|数量|
|:--|:--|:--|:--|:--|
|ヒューズホルダー||https://akizukidenshi.com/catalog/g/gP-09629/|45円|1|
|ヒューズ|10A|https://akizukidenshi.com/catalog/g/gP-07138/|40円|1|
|DCジャック||https://akizukidenshi.com/catalog/g/gC-06343/|75円|1|
|DCプラグ||https://akizukidenshi.com/catalog/g/gC-06649/|65円|2|

## 通信系
|名前|説明|url|値段|数量|
|:--|:--|:--|:--|:--|
|Futaba T6K/R3006SB|送信機（プロポ） & 受信機|https://www.amazon.co.jp/dp/B09945KDML|27000円|1|
|Xbee S2C|ZigBee無線モジュール|https://akizukidenshi.com/catalog/g/gM-10069/|2800円|2|
|Xbeeアダプター|USBシリアル変換付き|https://www.amazon.co.jp/gp/product/B07XCVWNHN/|1100円|1(2個入り)|
|2550ハウジング5P|XBee-Pixhawkケーブル用|https://akizukidenshi.com/catalog/g/gC-12154/|10円|1|
|USBケーブルminiB|XBee接続用|https://akizukidenshi.com/catalog/g/gC-07606/|150円|2|

## 駆動系
|名前|説明|url|値段|数量|
|:--|:--|:--|:--|:--|
|RoboClaw 2x7A モータコントローラ (V5C)|2ch制御可能|https://store.shopping.yahoo.co.jp/suzakulab/pololu-3284.html|11330円|1|
|Skate ホイール 144x29mm|硬質ゴムタイヤ|https://store.shopping.yahoo.co.jp/suzakulab/Pololu-3281.html|1002円|2|
|アルミ製Scooterホイールアダプタ 6mm軸用|タイヤハブ|https://store.shopping.yahoo.co.jp/suzakulab/Pololu-2674.html|624円|2|
|24V金属ギヤードモータ エンコーダ付き|70:1 140rpm 31kgf-cm|https://store.shopping.yahoo.co.jp/suzakulab/pololu-4694.html|8241円|2|
|アルミ製L型ブラケット|モーターマウントプレート|https://store.shopping.yahoo.co.jp/suzakulab/Pololu-1084.html|1002円|1(2個入り)|

モーターは室内移動(最大速度0.5m/s)程度なら70:1のギア比がおすすめです。

## ボディーメカ系
|名前|説明|url|値段|数量|
|:--|:--|:--|:--|:--|
|サスペンション付きキャスター|直径75mm、取付高さ95~102mm|https://jp.misumi-ec.com/vona2/detail/221000601473/?HissuCode=SAJ-TS4-75VPA+K|2373円|1|
|20mm角フレーム 280mm|フレーム補強用|https://jp.misumi-ec.com/vona2/detail/110302683830/?HissuCode=HFS5-2020-280|250円|2|
|20mm角フレーム 280mm|フレーム補強用|https://jp.misumi-ec.com/vona2/detail/110302683830/?HissuCode=HFS5-2020-200|250円|2|
|20mm角フレーム 280mm|フレーム補強用|https://jp.misumi-ec.com/vona2/detail/110302683830/?HissuCode=HFS5-2020-80|250円|1|
|M4-12|フレーム補強用|https://jp.misumi-ec.com/vona2/detail/110300240740/?HissuCode=NSET4-12|27円|32|
|フレーム用ナット|フレーム補強用|https://jp.misumi-ec.com/vona2/detail/110302608410/?HissuCode=SHNTP5-4|46円|32|
|アングル|フレーム補強用|https://jp.misumi-ec.com/vona2/detail/110300437260/?HissuCode=HBLFSN5-4|63円|12|

また以下の板が必要です。

[後日追記予定]

## バッテリー系
|名前|説明|url|値段|数量|
|:--|:--|:--|:--|:--|
|BL1860B|makitaバッテリー(18V 6Ah)|https://www.amazon.co.jp/dp/B0194NE1A8|14950円|1|
|DC18RC|makitaバッテリーチャージャー|https://www.amazon.co.jp//dp/B00GQRWF68|7900円|1|
|バッテリーアダプター||https://www.amazon.co.jp/dp/B08X73Z7RP|1985円|1|
|DCプラグ||https://akizukidenshi.com/catalog/g/gC-06649/|65円|1|

## モーター接続基板
モーターとroboclaw/pixhawkを接続する基板

|名前|説明|url|値段|数量|
|:--|:--|:--|:--|:--|
|ユニバーサル基板||https://akizukidenshi.com/catalog/g/gP-12190/|40円|1|
|L字ピンヘッダ|モーター接続用|https://akizukidenshi.com/catalog/g/gC-01627/|50円|1|
|PHヘッダ8P||https://akizukidenshi.com/catalog/g/gC-12253/|15円|1|

以下はケーブル作成に必要なもの

|名前|説明|url|値段|数量|
|:--|:--|:--|:--|:--|
|DCジャック||https://akizukidenshi.com/catalog/g/gC-06343/|75円|1|
|PHハウジング8P|roboclawとのエンコーダーケーブル用|https://akizukidenshi.com/catalog/g/gC-12261/|10円|1|


## 電装系共通
|名前|説明|url|値段|数量|
|:--|:--|:--|:--|:--|
|XHコネクタセット|ピン、ハウジング・トップ型ポスト(2,3,4,5,6pin)|https://www.amazon.co.jp/dp/B09DPKWQJS/|845円|1|
|2550コネクタセット|ピン（オスメス）、ハウジング(1,2,3,4,5,6,2x2,2x3,2x4,2x5)|https://www.amazon.co.jp/dp/B071RK5STD|1000円|1|
|ワイヤーセット|AWG22|https://akizukidenshi.com/catalog/g/gP-11641/|400円|1|
|ワイヤーセット|AWG24|https://akizukidenshi.com/catalog/g/gP-06756/|300円|1|
|ワイヤーセット|AWG28|https://akizukidenshi.com/catalog/g/gP-11640/|320円|1|

# 参考
* [Pixhawkのコネクタ事情](https://www.lambdrive.com/depot/Robotics/Controller/PixhawkFamily/Connector/index.ja.html)

# 目次ページへのリンク
[ROS講座の目次へのリンク](https://qiita.com/srs/items/5f44440afea0eb616b4a)
[ROS2講座の目次へのリンク](https://qiita.com/srs/items/5f0d765343ca78f524ed)