2021/12/15 よりサイトリニューアルしました

Rspberry Pi ZERO2 Wで作る2足歩行ロボット

Raspberry Pi ZERO2 W ロボット

 

前回、3D CAD作成~3Dプリンター印刷までについてまとめました。↓

 

今回は印刷したものに基板を組み込んで、プログラムを書き込み、2足歩行ロボットを完成させる所までをまとめます。

なお、基板につきましては2022/1/31時点で日本国内にて技適が取れていないRaspberry ZERO2 W を使用しているため、シールドルームにて動作させてます。

そういった環境の無い方は、他のマイコンボードなどでお試し下さい。

 

 

はじめに

仕様について

今回はロボットを「ブラウザ」と「Bluetooth」の2パターンで操作できるようにしています。

ブラウザから操作の流れとしましては、

スマホ(ブラウザ) ⇒ ラズパイ(Apach(HTML/css/js/python cgi)) ⇒(i2c) PCA9685 ⇒ サーボモーター

となります。WEBサーバーからpythonスクリプトを実行させるためにCGIの仕組みを利用しています。この方法についての詳細につきましては過去記事にてまとめています。↓

 

Bluetoothからの操作につきましては、単純にスマホとbluetoothペアリング後connectさせて、既存アプリをコントローラーにしています。↓

スマホ(bluetoothコントローラーアプリ) ⇒ ラズパイ(python) ⇒(i2c) PCA9686 ⇒ サーボモーター

スマホとラズパイのbluetooth接続方法につきましても過去記事にてまとめています。↓

 

 

マイコンボード について

組み込む基板についてはなるべくコンパクトな方がいいので、今回はRaspberry Pi ZERO2 W を選びました。

ZERO W でも試したのですが、いかんせんシングルコアで処理速度も遅い為、ブラウザからの操作時に無視できない遅延が発生しました。

これはZERO2に変更することで、見事に解消されました。4コアの恩恵でしょうか、非常に良いです、 Raspberry Pi ZERO2 W 。

 

使用部材

・Raspberry Pi ZERO2 W

・PCA9685

・M5CAMERA(BT内蔵)

・Lipo BT(公称:3.7V、容量:1100mAh、Cレート充電最大:1 放電最大:2)

・サーボモーター × 8

・LED,抵抗,導線

 

 

基板の組み込み

ピンソケットの取り外し

ピンソケットがあると結構場所を取るので、ロボット内に組み込みずらい場合は取り外します。しかしこれが結構厄介です。。

半田吸いとりのバキュームがあれば便利そうですが、なければ1本ずつ半田こてで温めながら抜き取っていきます。今回はRaspberry Pi ZERO2 WとPCA9685の両方、全て取り外しました。

抜き取ったあとは、使用するピンのスルーホールに詰まった半田を、半田吸いとり線で除去します。

ピンソケットは便利な反面、なにかに組み込む場合は無い方が良かったりしますね。

 

配線

ソケットを抜いたので、配線は半田で直でつなぎます。

Lipo BT(電源) ⇒ ラズパイ(i2c,3.3V,5V) ⇒ PCA9685 ⇒ サーボモーター × 8

ラズパイ(GPIO) ⇒ 抵抗、LED

ラズパイの電源5Vは、内部で3.3Vまで降圧しSoCが起動しているので、定格3.7V(満充電で約4.2V)のLipoでも消費電流値さえクリアしていれば使えます。サーボモーターに関しましては4.8V~が動作電圧ですので足りていませんが、とりあえず動いたので良しとしています。(汗)

セオリーではマイコンボードとサーボモーターで電源を分けますが、消費電流が合わせても1AいかなかったのでLipo1つでラズパイとPCA9685の2つの電源をまかなっています。ZEROシリーズは消費電流が少ないのも良いですね。

 

組み込み

ロボット内部に基板、BT、カメラを組み込みます。

カメラはラズパイでも良かったのですが、引き回しがきつかったのでM5cameraを使用しました。M5cameraは電池内蔵のもので、起動後にステーションモードでWIFI接続、WEBサーバーを立ててカメラ映像をストリーミング配信するようにプログラムしておきます。(プログラムは割愛します。)下の写真はM5cameraではなくunitV2です。

ロボット組み込み

 

目ピカー

目を光らせたいので、抵抗とLEDを頭に仕込みます。

 

 

WEB操作のプログラム

HTML/css

javascript

python CGI

Bluetooth操作のプログラム

python

 

 

完成

こんな感じになります。↓

https://twitter.com/ketunorobio/status/1485435387044855808
https://twitter.com/ketunorobio/status/1485769558086414338

 

 

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です