AIカーを作ってみた PART1 <ハードウェア構築編>

## 1. はじめに
近年、人工知能や画像処理技術を筆頭に、自動運転車が注目を集めています。
この自動運転技術ですが、なんだか凄く遠いような存在に思えたりするかもしれません。
ですが、実は自動運転に使われる技術を体験または学習できるサービスはたくさん登場しています。

#### 1-1. 自動運転が学べるサービス

- Self-Driving Cars

トロント大学がcourseraを介して提供している自動運転講座

https://www.coursera.org/specializations/self-driving-cars

- Become a Self-Driving Car Engineer

Udacityが提供している自動運転の学位取得プログラム

https://www.udacity.com/course/self-driving-car-engineer-nanodegree--nd013?gclid=Cj0KCQiAv6yCBhCLARIsABqJTjapzEkAGivr48UyB5MtET3R7HvisVftDpMo5F_6q47mMQAKnWdHcNkaAp53EALw_wcB&utm_campaign=2045115100_c&utm_keyword=%2Budacity%20%2Bautonomous_b&utm_medium=ads_n&utm_source=gsem_brand&utm_term=74942759000


#### 1-2. AIカー / Donkeyカーを作る

- AWS Deep Racer

AWSを用いてAIカーを作れる

https://aws.amazon.com/jp/deepracer/


- Jet Racer

NVIDIA Jetson nanoという小型GPUを使用してAIカーを作れる

https://robotstart.info/2019/08/09/jetracer-github.html


#### 1-3. AIカーを作ってみたい

いくつか自動運転を体験できる例を挙げましたが、今回私はAIカーの開発に挑戦することにいたしました。
作るマシンはJetRacer Proです。

Jet Racer Proの作り方はgithubに載っています。ここには必要なパーツやハードウェアの作り方、ソフトウェアの設定が全て網羅されています。<https://github.com/NVIDIA-AI-IOT/jetracer>

ただし、このドキュメントの通りにマシンを作ろうとするとドリルやらハンダごてなどが必要になりそうです。
さすがにこういった道具まで揃えるのは大変でしたので、コンポーネント自体はある程度組上がっている製品を使用しました。
製品としては、***Waveshareが提供しているJetRacer Pro構築キット***です。
こちらの製品は特別な道具がなくてもマシンを構築できます。

https://www.waveshare.com/jetracer-pro-ai-kit.htm

https://www.waveshare.com/wiki/JetRacer_Pro_AI_Kit


ただし、こちらのマシンの動力となるバッテリーが***18650という特殊なリチウムイオンバッテリー***を必要とします。
また、リチウムイオンバッテリーに関してですが、***保護回路がついていない電池を使用するため、管理に気を付けなければなりません。***
(マシンの回路には保護回路があります。)

18650バッテリーの取り扱いやリチウムイオン電池の解説には下記が参考になりました。

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

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

私は下記のバッテリーを購入しております。


https://store.shopping.yahoo.co.jp/actfirst/panasonic-li-ion-battery-3400.html

こちらはパナソニック製の保護回路無し18650になります。

さて、前置きが長くなりました。
本記事は、タイトルの通り、AIカー作成に関して情報を掲載いたします。
使用する製品はWaveshare JetRacer Proで、ハードウェアを構築するまでの流れやポイントなどを画像を交えながら可視化することを目的としています。
この記事がこれからJetRacer proを作る方々の参考になればと思っています。

## 2. Waveshare JetRacer Proを作る

JetRacer Proを組み立てるための説明は下記のマニュアルに書かれております。

https://www.waveshare.com/w/upload/f/fa/Jetracer_pro_Assembly_EN.pdf

こちらの資料に書かれている内容について、更に画像を付け加えながら説明しようと思います。

**[準備]**
Waveshare JetRacerパッケージはこのような感じになります。

![20210305_110957463_iOS.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/582812/8f945325-9099-f1b0-062a-34d00b4aa0d9.jpeg)

また、中身を出すと下記のようなパーツが入っております。具体的な名称などはマニュアルをご確認ください。

![20210306_124102317_iOS.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/582812/eb13ea4b-9af7-cf09-547c-1dc4451cadbf.jpeg)






**[STEP1]**
カメラ取付用ホルダーとアンテナをJetRacer Proの拡張ボードに取り付けます。
まずはカメラ取付用ホルダーを拡張ボードに取り付けましょう。
![20210306_130016494_iOS.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/582812/44898c33-3bc7-07c8-c947-3e3b07c813d4.jpeg)

その後、白いカバーを外してWirelessCard付アンテナを取り付けます。
![20210306_131122524_iOS.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/582812/6e10a3fa-e081-ffa9-2754-d878813a80f4.jpeg)

**[STEP2]**
ラジコンのシャシーに搭載されたサーボとモータからの配線を拡張ボードに接続します。
![20210306_131320551_iOS.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/582812/9c19ef0b-d01e-a5fc-8702-c24900d0751d.jpeg)

横から見たシャシーは下記のようになります。
![20210306_131411044_iOS.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/582812/6f749268-92cf-f107-bed5-4a2bd0ca5866.jpeg)

拡張ボードとシャシーを接続するとこのようになります。
接続後はマニュアルにあるように、シャシーについている四つの黒いねじを外します。
![20210306_132050117_iOS.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/582812/7bd0e21c-7804-cf5d-dcc6-3e043d42cfea.jpeg)

また、このタイミングで18650バッテリーをセットしてください。
私の場合は、バッテリーが後日届いたため、ハードウェアが完成した後に取り付けました。バッテリーの取り外しがかなり面倒くさいです。
![20210312_033541701_iOS.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/582812/3d548a2b-023a-c851-fdfc-491d1605c85e.jpeg)

**[STEP3]**
ここで拡張ボードをシャシーに固定します。
M2.5*30とM3*40のねじに白いパイプを通して固定する形となりますが、こちらの作業は少々コツがいります。
私の場合は一本ずつねじを緩くはめて、全てのねじがかみ合う状態になってから本締めをしました。
うまくいくと下記のような形になると思います。
![20210306_135859132_iOS.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/582812/0eea2d46-676b-35d2-8790-fbd1ced8252f.jpeg)

**[STEP4]**
Jetson Nano Developer Kitを拡張ボードに固定します。このときに使用するねじはM2.5*5です。
![20210306_141707169_iOS.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/582812/9adc06b8-4b45-cf6e-6767-7163b435f1d4.jpeg)

**[STEP5]**
次にJetson Nano Boardのヒートシンクを取り外します。
ヒートシンクは二本のねじで固定されているので、これらを外します。
そのあとに左右にある銀色のアルミの鍵爪のような留め具を両サイドに引くとパカっとヒートシンクが外れます。
参考となる動画を下記に貼り付けます。

https://www.youtube.com/watch?v=Rs1SnojIyDk&t=97s

ヒートシンクを外すと下記のような状態になると思います。
![20210306_145258628_iOS.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/582812/6e90f2a1-345a-01b1-99b2-07e23cbe31fb.jpeg)

ヒートシンクを完全に取り外すと下記のようになっていて、真ん中に黒いねじがあります。
これを外してWireless Cardを取り付けます。
![20210306_145343386_iOS.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/582812/b7a9a3de-5103-67c2-de15-cf85926515a6.jpeg)

最終的には下記のような状態になるはずです。
![20210306_145732711_iOS.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/582812/bfd9a7c1-77a5-cf06-0a53-5f964d71df9b.jpeg)
あとは、ヒートシンクをもとの状態に戻すだけです。

**[STEP6]**
次に冷却用ファンを取り付けます。ただ、残念なことに、冷却ファンを取り付けるためのネジが入っておりません。
そのため自分で調達する必要があります。
ネジはM2.6のものを使用いたしました。
ファンのワイヤと拡張ボードから伸びている6pinワイヤはJetson nanoに接続します。


**[STEP7]**
最後にマニュアルにあるようにカメラをカメラホルダーに固定し配線をつなぎます。
![20210306_153437344_iOS.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/582812/d95313fe-88a2-2c3f-8de5-13a6cfab5110.jpeg)
私はカメラを取り付ける段階でファン用のネジを用意していなかったので、ファンの固定が最後になりました。


**[完成!!]**
完成すると下記のような見た目になります!!
かっこいい!!

![Jetracer.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/582812/a89899ef-0d65-928d-eef5-6f3911ea5e66.png)



## 3. まとめ

この記事ではWaveshare Jetracer Proの構築に関して説明をいたしました。
私がアッセンブリにかかった時間としては4時間ほどになるかと思います。

次回はソフトウェアの設定やデモプログラムの動かし方、チューニングの方法についての記事が書けたらと考えています。
ここまで読んでいただきありがとうございました。