皆さま、御機嫌如何でしょうか?コダシマです。
突然ですが、皆さまはワクワクしておられますか?
今回は、いつもワクワクする製品を提供する SunFounder の PiCar-X という、Raspberry Pi を使った多機能 AI ロボットカーを紹介します。
こちらは、小学生以上の初心者を対象とした電子工作キットということですが、もちろん大人も楽しめる内容になっています。というか、子供の頃にプラモデルやラジコンにハマった人であれば、好奇心をくすぐられるのは間違いないです。
今回は「ノスタルジアと新しい学び」をテーマにして、このキット PiCar-X について見ていきたいと思います。
PiCar-X の開封
まずは、キットを開封しながら、販売元の SunFounder について少し紹介しておきます。
SunFounder は Raspberry Pi や Arduino のキット、オープンソースロボットなどの製品を使用した「STEAM 教育」に重点を置いた企業です。このチャンネルでも、Raspberry Pi をタブレットにするキット RasPad 3 や、Raspberry Pi をゲーミング PC のようにするケース Pironman などを紹介してきました。
出典 | https://steam-japan.com/about/
STEAM 教育については Raspberry Pi をタブレットにする RasPad の動画で少し詳しく触れているので、そちらも合わせてご覧いただければと存じます。いずれにせよ、コダシマは、とにかくワクワクする製品を提供してくれる企業というイメージがあります。
そんな SunFounder のキットなので、ワクワクしないわけがありません。今回の PiCar-X は、Raspberry Pi をコントロールセンターとして使用する AI 駆動の自動運転ロボットカーです。自動車の形をしていると「ロボット」という表現にいささか違和感がありますが、AI とか言ってるので ナイト2000 みたいなものなのかな?というところです。
このロボットカーには、色、顔、交通標識の検出が可能な 2 軸カメラモジュール、超音波モジュール、ライントラッキングモジュールが搭載されています。これらのモジュールとサンプルコードにより、自動障害物回避や自動ライン追跡の機能を体験することができます。初心者でも、これらを体験できるのはとても楽しみですね。
ちょっと余談ですが、コダシマが子供のころの工作キットといえば、まず田宮模型の工作キットを思い出します。
このシリーズは今でも販売されていますが、当時とは随分様変わりしたように思います。昔の工作キットといえば、もっと木材パーツが多かったですよね。
それと、電子工作というか、電子回路の教材キットと言えば良いのでしょうか?何れにせよ電子という言葉を聞くと「学研電子ブロック」も忘れられません。
電子ブロックは、トランジスタやコンデンサー、抵抗などの素子が埋め込まれたブロックを組み合わせることで、ラジオやモールス練習機、ウソ発見器などさまざまな電気回路を再現できる実験キットでした。ブロックには回路記号も描かれていたため、遊びながら回路図も覚えていけるというものだったと記憶しています。かなり魅力的でしたが、当時としてもまぁまぁな値段だったので、貧乏なコダシマ家では残念ながら買ってもらうことができませんでした。友達の家でラジオの回路を試して感動したのを覚えています。
といった感じで、ここらへんに興味を持った当時の少年達の行き着く先は、プラモだったり RC カーだったりしたわけです。当時のコダシマ少年も、プラモやラジコンにハマった一人です。
開封してるだけなのに、そんなことを思い出しました。
ただでさえワクワクするキットですが、同年代の皆さまには、思い出のタイムカプセルみたいな感じもあるかもしれませんね。
PiCar-X の組み立て
なんの準備もなく、とにかく PiCar-X を組み立て始めたのですが、SunFounder の PiCar-X のドキュメントを事前に確認しておけばよかったと思いました。組み立てたあとから Web のドキュメントを確認しましたが、付属していた説明書よりも詳細に説明されているので、迷ったり困ったりすることが減るでしょう。
- SunFounder PiCar-X キット | https://docs.sunfounder.com/projects/picar-x-v20/ja/latest/
特にコダシマのように初心者が手を付ける場合には、Web サイトのドキュメントをじっくり読むことをおすすめします。コダシマの場合は、とにかく作ってみることばかり考えていたので、組み立て方だったり、配線だったりで戸惑うことがあちこちでありました。まぁ、それすら楽しかったりするわけですが、それよりも、昔はそんな補助的な情報を手に入れるのも大変でしたよね。ホント今は良い時代になったと思います。
それと、古い世代が工作と聞くと、接着剤や粘着テープ、工具などの準備を思い出しますが、このキットには不要です。すでにキットには、必要な工具やテープが同梱されていました。しかし実際のところ、使ったのはドライバーくらい。基本的に必要なものはすべて準備されており、しかも素人でも見栄え良く組み立てられる様になっています。(Raspberry Pi と OS 用の microSD は別途用意する必要があります)
Raspberry Pi 4/3/1 と Zero W に対応しているということで、より小さいマイコンで動くところが見たいと思い Zero W を使って組み立ててみることにしました。
初心者のコダシマが、間違いながらあれこれ苦戦して概ね2時間程度で一応の完成を見ることができました。
で、組み立ててから思いました。ラジコンの経験のある方はご存知かと思いますが、そういえばサーボの調整は?メチャクチャ忘れてましたよね。はい、このあたりも Web のドキュメントを確認しておけばよかったと思うところでございます。
で、出来上がった PiCar-X の試運転!と思ったのですが…。
結論から言うと、Raspberry Pi Zero W ではスペック不足でした。というのも、走行させたり音を鳴らしたりする通常の動作はしましたが、どうしてもカメラモジュールが動作してくれません。せっかく、顔認証や色認証、ドローン的な操作を楽しみにしていましたが出来ませんでした。
Zero 2 も手元にあったので使ってみようかとも思いましたが、なんとGPIO ピンが無かったため、取り付け出来ません。でも、よくよく考えると 3B+ も所有していたので、この出番の少なくなった 3B+ を引っ張り出してきて、取り付けることにしました。
で、実はコレでもちょっとしたトラブルがありました。
CPU にヒートシンクを貼っていたのですが、粘着テープでしっかり貼り付けていたため、剥がれなくなっており、これがトラブルのもと。このロボットを制御するための Robot HAT にある、スピーカーと接触してしまい、スピーカーが正しく機能しない事態が発生。
HAT をネジで固定せず、中途半端に宙に浮かせた状態であれば音も出せたので、とりあえずこの状態で出来上がりとしました。
今回のまとめ
ココからプログラミング!ですが、今回は少し長くなりましたので、環境設定やプログラミングは別動画として紹介いたします。
予告と言ってはなんですが、PiCar-X では Python で書かれたサンプルプログラムを Raspberry Pi OS で利用するための手順や、環境の準備についてをイチから丁寧に解説しております。
また、SunFounderがRaspberry Pi用に提供しているソフトウェア開発プラットフォーム EzBlock という環境もあり、この EzBlock は Python の開発環境をベースとしてグラフィカル環境と、もちろん Python 環境の2つのプログラミング環境を提供しているものになります。
EzBlock 用に用意された EzBlock OS は、OS 側での設定が全て済んでいるので、いち早く PiCar-X を動かしてみたい方にはオススメです。公開の予定はまだ決めていませんが、次の PiCar-X の紹介では、ここらへんを紹介していきたいと思いますので、気長にお待ちいただけたら幸いです。