ラズベリーパイでロボットを作ろう! SunFounder PiCrawler

  • URLをコピーしました!

今回はラズベリーパイで手軽に作れるスパイダーロボット、SunFounder PiCrawlerについて解説したいと思います。ソースコードも併せて公開していますので、ラズベリーパイで何か動くものを作ってみたい!という方に参考にして頂ければと思います。

目次

ラズベリーパイ(Raspberry Pi)とは

今回紹介するロボットPiCrawlerのコントローラとして使用するマイコンボード、ラズベリーパイ(Raspberry Pi)はイギリスのラズベリーパイ財団が教育用に開発したボードコンピュータです。
Raspberry Pi OSのイメージを書き込んだSDカードセットするだけで、マイコン上でLinuxが動作し、組み込みアプリケーションを手軽に構築することができます。

ラズベリーパイのスペックや活用事例は以下の記事で解説していますので、併せてご覧ください。

ラズベリーパイで制御するロボット PiCrawler

SunFounderから発売されているPiCrawlerは、四足歩行で昆虫のような動きをするスパイダーロボットです。ラズベリーパイをコントローラーとして使用し、自分で作成したプログラムをラズベリーパイ上で動作させることにより、ロボットを制御することができます。

入手先

SunFounder製のロボットはアマゾンなどで販売されており、日本国内でも普通に入手できます。

SunFounder Raspberry Pi Spider ロボットキット for Raspberry Pi 4 B 3 B+, Python/Ezblock and Webコントロール, ウォーキング、AI認識、ビデオ送信、DIYバイオニック四足ロボットキット(Raspberry Piメインボード,18650電池は付属なし)

選んだ理由

ラズベリーパイをベースとしたロボットキットは各社から色々なものが発売されていますが、私がSunFounderのロボットを選んだ理由は以下のような感じです。

価格が安く購入しやすい(国内サイトで買える)

価格は15000円程度と本格的なロボットにも関わらず、非常に安価です。同じようなロボットのキットは他のメーカーからも発売されているのですが、ほとんどのものはフレームが樹脂製であるのに対しPiCrawlerはなんとアルミ製です。そしてカメラモジュールなども含めた価格であるため、非常にコストパフォーマンスが高いです。

基板製作やはんだ付け作業が不要

本キットは必要な機能が全てRaspberry Pi用のHAT(拡張基板)に集約されているため、モーター駆動回路、電源回路などを自分で作成する必要がありません。HATをラズベリーパイのGPIOに差し込むだけで必要な機能をラズベリーパイに実装できます。
またロボットのフレームの組み立てもドライバのみででき、ドライバ自体もキットに含まれています。

ロボット製作と聞くと敷居が高いと感じている方でも、プラモデル感覚で簡単に組み立てることができます。

ロボットのモーション設計が不要

ロボットの制御というと、特に車輪ではなく足で歩くタイプの場合は、ロボットが転ばずに歩けるように姿勢をソフトウェアで制御してやる必要があり、専門知識が必要となります。
しかしPiCrawlerにはモーションコントロールを行ってくれるライブラリが付属しており、Pythonから回転や前進、後退を行うためのメソッドを実行するだけで簡単にロボットの動作を制御することができます。

SunFounder PiCrawlerのキット内容

本体のキット内容については以下の記事にまとめています。

追加で用意するもの

コントローラとなるRaspberry Pi、バッテリーは別途用意する必要があります。

Raspberry Pi

PiCrawlerのコントローラーにはRaspberry Pi 3、4を使います。私はロボットを購入した当時、Raspberry Pi 4の入手が困難であったためRaspberry Pi 3を使用していますが、ロボットに取り付けたカメラモジュールで画像処理を行うので、メモリをたくさん搭載しているRapsberry Pi 4の4GB or 8GB版を使うのがおすすめです。

バッテリー

ロボットのバッテリーには18650という規格に適合したものを取り付ける必要があります。私はパナソニック製のセルで保護回路付きのものを使用しています。(必ず保護回路付きのものを使用することをおすすめします)
保護回路が付くと若干バッテリーの全長が伸びるのですが、バッテリーケースにはぎりぎり収まっています。
充電器も含め、詳細は以下の記事で解説しています。

組み立て

ロボットの組み立て手順について、写真付きで以下の記事で解説しています。
Part1 ~ Part3の3回の記事に分けて書いています。

Part 3ではキットに付属しているサンプルプログラムを使用して実際に動作させる様子を記事にしています。

アプリケーションを開発する

PiCrawlerは付属のライブラリではなく、自分で作成したプログラムから制御することができます。コントローラーはラズベリーパイですので、Raspberry Pi OS上のPythonプログラムから自由に動作をコントロールできます。

ここからは、私が独自に作成したプログラムで制御した例をソースコード付きで紹介していきます。

障害物検出

ロボットに取り付けられた超音波センサーで、障害物までの距離を計測する方法について解説しています。

カメラモジュール

ロボットに取り付けられたラズベリーパイのカメラモジュールで画像を取り込む方法について解説しています。

マルチコア並列処理

ロボットの制御ではカメラの画像を処理したり、GUIでユーザーからの命令を受け取ったり、モーションをコントロールするためサーボモーターを駆動したりと同時に複数の処理をする必要があります。

これらの動作をラズベリーパイのマルチコアCPUを活かして同時実行するための方法を解説しています。

並列実行されているプロセス間でのデータの受け渡し方法を解説しています。

GUI(コントロール画面)

ロボットを動かすためのコントローラー画面の実装方法について解説しています。

ディープラーニング

ラズベリーパイのカメラに映った物体をAI(ディープラーニング)を使って検出し、判別する方法を解説しています。

Googleの機械学習ライブラリ、TensorFlowをラズベリーパイで動かすための方法を解説しています。

ディープラーニングを使って検出したオブジェクトの位置情報をOpenCVを使って取得するプログラムのソースコードを公開しています。

ディープラーニングで判別した人間の位置情報を元に、ロボットの向きを追従するプログラムを実装した動画を公開しています。

まとめ

いかがだったでしょうか?
今回紹介したSunFounderのPiCrawlerというロボットを使うことで、手軽にロボットを製作し、ラズベリーパイの制御プログラムでコントロールすることができます。
ラズベリーパイで何か動くものを作ってみたいと思っている方にはとてもおすすめです。

また、効率的にPythonのプログラミングを学びたい方はオンラインスクールがおすすめです。

DMMが運営するPythonオンラインスクール:DMM WEBCAMP 学習コース(Pythonコース)

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

おすすめ記事

PythonでAIを学びたい方向けにおすすめプログラミングスクールをまとめています。

ラズベリーパイの本体と合わせて揃えておきたい周辺機器をまとめています。

ラズベリーパイで電子工作を始める際に揃えておきたいアイテムをまとめています。

よかったらシェアしてね!
  • URLをコピーしました!
目次