今回はSunFounder社から発売されているRaspberry Piで制御するスマートロボットカーPiCar-Xの組み立て方法について解説します。
手戻りが少ない手順や注意点についてまとめてみましたので、購入された方は是非参考にしてみてください。
また、PiCar-Xがどのような製品かについては以下の記事で解説していますので、あわせてご覧ください。

PiCar-Xのパッケージ内容
まずはパッケージ内容を見ていきます。
こちらがキットの外箱になります。

パーツは3つの箱に分けられています。

ロボットっ本体のフレームとビス、工具類です。

こちらが制御ボードやセンサー、ケーブル類です。

こちらがDCモーター、サーボモーター、ホイールバッテリーです。

今回もアルミ製のフレームが採用されております。軽量で強度もあり、加工の精度も素晴らしいフレームとなっています。

PiCar-X 組み立て公式マニュアル
PiCar-Xの組み立てに関する公式マニュアルは以下のページで参照できます。

組み立て前の準備(Raspberry Piのセットアップ)
組み立てに入る前にRaspberry Piのセットアップを行います。
サーボモーターの可動域をフルに使用するためには、サーボモーターを組み付ける前にサーボの位置を初期化する必要があり、Raspberry Piから制御する必要があるためです。
Raspberry PiのOSのインストール方法は以下の公式ページの解説を見ながら行ってください。
公式ページに書かれているように、Raspberry Piは必ず「Raspberry Pi OS (Legacy) 」を選択するようにしてください。


PiCar-Xの組み立て手順解説
ここからは実際にPiCar-Xの組み立て方法について解説していきます。
まずメインのフレームにRaspberry Piを固定するためのスペーサーを取り付けます。

続いてPiCar-Xの動力となるDCモーターを取り付けます。
DCモーターは最初からコンデンサやコネクタが取り付けられており、はんだ付けは不要です。

メインのフレーム裏面に以下のように取り付けます。

続いてモーターやセンサー、制御ボードに電力を供給するためのバッテリーを取り付けます。
以下のようにフレームとバッテリー本体にマジックテープをシールで貼り付けます。

マジックテープでフレーム背面に貼り付けます。

続いてフレームフロント部分にサーボモータのマウントを取り付けます。

背面からサーボマウントをビスで4か所固定します。

続いて超音波距離センサーHC-SR04を取り付けます。

フレームフロント部分に背面から以下のようにはめ込みます。

基板をアルミプレートで挟み込むように固定して、ビスで取り付けます。

HC-SR04の少し後方部分にスペーサーを二つ取り付けます。これは底面のフレームを固定するためのものです。

続いてRaspberry Piに接続するカメラモジュールを取り付けます。

まず、カメラモジュールを背面のコネクターを外し、以下の向きでリボンケーブルを接続します。

続いてカメラモジュール表面のレンズ部分の両面テープをはがし、基板に貼り付けます。

カメラモジュールをフレームに以下のようにビスで4か所固定します。

続いて稼働式カメラマウントのサーボモーターを取り付けます。
L字のフレームに1つ目のサーボモーターを取り付けます。

2つ目のサーボモーターについても以下のように下向きに取り付けます。

サーボモーターを本体のフレームに取り付けるため、初期値に移動させます。
初期値に移動させるため、PWM信号を入力して制御する必要がありますので、先に制御ボードを使える状態にします。
PWMの出力は以下のRobotHatを使用します。

PWM信号(Pulse Width Modulation、パルス幅変調)は、電子機器における信号の一種で、電圧のオンとオフを繰り返すことで平均電力を制御する方法です。PWM信号の特徴は、パルスの「幅」(つまり、オンの期間の長さ)を変えることにより、装置へ供給される電力量を制御する点にあります。このパルスの幅を変更することで、出力の精密な制御が可能になります。
サーボモータにおけるPWMの役割は、モータの位置制御にあります。サーボモータは、PWM信号を使ってモータの回転角度を正確に制御します。PWM信号のパルス幅を変えることによって、サーボモータの回転角度を調節できます。たとえば、短いパルス幅はモータをある特定の角度に、長いパルス幅は別の角度に動かします。この特性により、サーボモータはロボットアームやラジコンカーのステアリング制御など、精密な動きが必要なアプリケーションで広く使用されています。
まずRaspberry Piを本体フレームのスペーサーに取り付けます。

Raspberry Piの基板上のカメラコネクタにカメラモジュールのリボンケーブルを接続します。

カメラモジュールを接続したら、上からRobotHatを重ねて取り付けます。

Hatを取り付けたら、Hat上のUSB Type-Cコネクタに電源ケーブルを接続してください。
これでRaspberry PiとRobotHatに電源が供給されます。

Raspberry Piが起動した状態でサーボモーターを接続し、以下のプログラムを実行することで初期位置に移動させることができます。
Raspberry Piのコンソールでこのコマンドを実行してください。
cd ~/picar-x/example
sudo python3 servo_zeroing.py

全てのサーボモーターを順番にRobotHatの「PWM 11」に接続してください。接続した瞬間にサーボの角度が変わります。

サーボの初期化が終わったら、カメラマウント用サーボを以下のように直角90度になるように組付けます。

フレームへサーボモーターを取り付ける際は、間にワッシャーを入れます。

本体のフレームにカメラマウントを取り付けた写真です。

カメラモジュールのリボンケーブルは以下のように2つのサーボモーターの間に挟むように通します。

続いてステアリング駆動用のサーボモーターを本体のフレームに固定します。

以下のようにサーボモーターのアームにシャフトを取り付けます。
この時シャフトは緩めに取り付け、サーボの動きに合わせ稼働するようにします。

そして背面のプレートを取り付けます。

そして本体フレームとステアリングのシャフトを接続していきます。
ここで、シャフトとフレームを接続する前にステアリング機構の動作テストを行っておくのがおすすめです。(一度接続してしまうと取り外すのが大変なため)
Raspberry Piのコンソールで以下のプログラムを実行します。
cd ~/picar-x/example
sudo python3 2.keyboard_control.py
プログラム実行後にどのような動作をするかを聞かれるため、
a: 左に曲がる
d: 右に曲がる
のどちらかのキーを入力してください。
指示通りにステアリング機構が動作するかを確認できます。

ステアリングが動作することを確認出来たら、以下のようにフレームと接続していきます。

続いて以下のグレイスケールセンサーモジュールを取り付けていきます。

路面の状態を認識するセンサーであるため、フロント底面に取り付けます。

これで各種部品のフレームへの組付けは完了です。
最後にケーブルを接続します。グレイスケールセンサーと超音波センサーのコネクターにケーブルを接続します。

フレームの穴から上面に引き出してRobotHatに接続したら完成です

私の場合はまだカスタマイズする予定なのでケーブルを束ねていませんが、付属のバンドやチューブでケーブルを束ねることをおすすめします。
完成写真
こちらが組み立て後の写真です。

カメラモジュールのレンズにはフィルムが付属していますので、使用時にははがしてください。

まとめ
今回はSunFounder社から発売されているRaspberry Piで制御するスマートロボットカーPiCar-Xの組み立て方法についてまとめました。
サーボの初期化の部分だけに注意すれば、後は比較的簡単に組み立てられるキットとなっています。
プログラミング初学者にもおすすめですので、是非チェックしてみてください。

PiCar-Xの入手先や動作時の動画を以下の記事で解説していますので、あわせてご覧ください。

それでは、また次の記事でお会いしましょう。
コメント