ラズベリーパイとブリッジシールドを使用したロボット
ブリッジシールドは、学生、ハッカー、研究者のためのボードです。 PiまたはArduinoUnoと一緒に使用すると、クールなDIYプロジェクトを簡単に作成できます。これはオープンソースボードであり、現在、第2世代を設計しています。
私たちは現在Kickstarterを利用しており、私たちを支援するか、以下のリンクを友達や家族と共有することで私たちをサポートできます
ブリッジシールドキックスターターリンク
何がありますか?
10 DOFIMU。
温度センサー。最大1Ampのモーターを駆動できるデュアルブリッジモータードライバー。
I2Cで動作する8チャンネルサーボモーターダイバー。
コイン電池バックアップを備えたRTC。
5V-3.3V双方向電圧レベルコンバーターを開きます。
Arduino UnoとRaspberryPi間のSPI、I2C、UARTのレベルシフト。
Arduinoブートローダーを搭載したAttiny85マイクロコントローラー。
ESP8266Wi-Fiモジュールのヘッダー。
HC-05Bluetoothモジュールのヘッダー。ワイヤレスリモコン用のIRセンサー。
USBからUARTへのモジュール。
PiとArduinoUnoに電力を供給する12Vの単一入力ソース3Aの可変電圧レギュレーター、5V / 3A電圧レギュレーター、および3.3V / 1A電圧レギュレーターを1つ備えています。
バッテリーの充電状態を監視するためのLEDピンと信号ピンを備えた2セルリチウムイオンバッテリー充電器。
I2Cを介して制御される強度可変LED。
その機械的構造により、スタック可能なArduinoUnoおよびRaspberryPiシールドのほとんどと互換性があります。
注:上記は第2世代の仕様です
それで何を作りましたか?
のようなかなりクールなプロジェクトを構築しました
–インターネット経由で制御されるロボット
–コンセントに入る可能性のあるものをすべて制御するホームオートメーション
–IPカメラ
–モバイルコンピューティングソリューションとなる可能性のあるバッテリバックアップPi
それで何ができますか?
arduinoとラズベリーパイを組み合わせることで、いくつかの素晴らしいプロジェクトを作成できます。私たちのボードをどのように使用するかはあなた次第です。私たちの主な目的は、あなたがそれを楽しむことです。考えられる例は次のとおりです。
–自律型または自己バランス型ロボットを構築するため
–独自のドローンを作成します(責任を持って使用してください!免責事項:私たちはあなたの隣人のプライバシーの喪失について責任を負いません)
–センサーアレイを使用して家を自動化します。ほとんどのセンサーはI2Cで動作し、オンボードモータードライバーは、サーボ、DC、ステッピングモーターなどのアクチュエーターをトリガーするのに役立ちます。
最初のプロトタイプが完成し、現在テスト中です。第2世代の機能にさらに驚かれることをお約束します。私たちが行ったことについてもっと知るために、あなたは私たちのウェブサイトとYouTubeチャンネルでビデオを見ることができます。
次の手順では、Bridge Shieldを使用して、リモート制御(インターネット経由)ロボットを作成する簡単な方法を示します。それでもお腹が空いている場合は、オプションのパーツを追加して、その方法を説明します。 BridgeShieldとESP8266wifiモジュールを使用して基本的なホームオートメーションを実行します。
では、料理人を集めましょう!!
ステップ1:ステップ1:基本的なソフトウェアを使用してラズベリーパイをセットアップする
材料のリスト:
- ブリッジシールドまたはL293Dボード
- Raspberry Pi(初期設定用のSDカードと電源システム付き)
- USBカメラ/ Piカメラモジュール
- モータークランプ、ナット/ボルト、および周辺機器を備えたロボットシャーシ。
- 2つのBOモーター
- リチウムイオン電池(2セル、約1000〜2000mAh)
- Arduino UNO(オプション)
- ESP8266 Wi-Fiモジュール(オプション)
- 1.3インチOLED(オプション)
まず、PHPとともにRaspberryPiにWebサーバーをセットアップする必要があります。この教訓を読むことをお勧めします
この時点で、あなたは上記の指示に従い、Piの起動、OSのインストール、piをキーボード+マウス+モニターに接続する、またはpiにリモートアクセスしてpiカメラを有効にするSSHモードを有効にする基本を理解していると想定しています。 。
上記を完了したら、Apacheのインストールから始めましょう。 Apacheは、完全なWebサーバー作成および管理ツールです。非常に多様な機能を実行できるため、非常に人気があります。
作業に戻り、piを起動してターミナル(またはSSH接続)を開き、プロンプトにこのコマンドを入力します
$ sudo apt-get update
ディスプレイ上で実行されている多くの命令が表示されます。すべて終了します(プロンプトが再び点滅する「$」が表示されるとわかります)。
次に、同じターミナルで次のコマンドを使用してApacheとPHPをインストールします
$ sudo apt-get install apache2 php5 libapache2-mod-php5
「続行しますか」というフレーズを表示してパッケージをインストールするかどうかを尋ねられます。「y」と入力して、Return / Enterキーを押します。
インストールが完了するのを待ちます(これにはしばらく時間がかかる場合があり、「$」だけが再び点滅するプロンプトが表示されたら、インストールが完了したことがわかります)。
コンピューターでWebブラウザーを起動し、PIのIPアドレスをアドレスバーに入力すると、「Webサイトは機能しています/実行中です!!」のようなメッセージが表示されます。
オプションで、次のコマンドを使用してftpサーバーをインストールすることもできます
$ sudo apt-get install vsftpd
FTPサーバーをインストールしたので、少し構成を行う必要があります。以下の手順を参照してください:
$ sudo nano /etc/vsftpd.conf
(nanoはRaspbian OSに組み込まれているテキストエディタです。ターミナルからファイルをすばやく編集または変更するのに役立ちます)
ファイルをスクロールして、次の行を変更します。
annotation_enable =YESanonymous_enable =NOに変更
そして、次の2行の「#」(コメント解除)を削除します
#local_enable =YES local_enable =YESに変更
#write_enable =YES write_enable =YESに変更
ファイルの最後に、次のコード行を追加します。
force_dot_files =YES
保存して終了するには、「Ctrl + x」を押し、次に「y」を押してから、Return / Enterを押します。
変更を有効にするには、FTPサーバーを再起動する必要があります–次のコマンドを使用します:
$ sudo service vsftpd restart
ステップ2:ステップ2:MPEG-STREAMERのインストール
次に、MPEG-Streamerをインストールします。 Mpegストリーマーは
インターネットでカメラビデオをストリーミングするためのワンストップソリューションです(クレジット:インストール方法については、このリンクを参照しました)
ターミナルウィンドウを開き、次のコマンドを入力します
$ sudo apt-get install libjpeg8-dev
インストールが完了したら、タイプ
$ sudo apt-get install imagemagick
次に、少し設定を行う必要があります。ターミナルで、すべての行の後にENTER / RETURNを付けて次のように入力します。
$ cd〜
$ mkdir tmp
$ cd tmp
$ svn cohttps://svn.code.sf.net/p/mjpg-streamer/code/mjpg…mjpg-streamer
$ cd mjpg-streamer / mjpg-streamer
$ make
コンパイル後、次のコマンドを入力してmjpeg-streamerを実行できます
$ cd / home / pi / code / mjpg-streamer
$ ./mjpg_streamer -i“ ./input_uvc.so” -o“ ./output_http.so -p 8080 -w ./www”
ストリームを表示する場合は、Webブラウザーを開き、Webブラウザーに以下のように入力します。「http:// [Piのホスト名またはIPアドレス]:8080」
piのカメラからの画像を表示する小さなウィンドウでウェブページにmjpg-streamerを見ることができます
ビデオストリームを直接表示したい場合は、Webブラウザに次のURLを入力してください
「http:// [Piのホスト名またはIPアドレス]:8080 /?action =stream」
ステップ3:ステップ3:PiとMPEG-streamerインターフェースのプログラミング
次に、PiがPiカムとWebページの間でスムーズにインターフェイスするように、少しプログラミングを行う必要があります。 PHP命令からPythonファイルにいくつかの値を渡して、PiでGPIOピンをトリガーします(ただし、これを行う前に、WiringPiをインストールして機能させる必要があります。これを行うには、Webサイトの命令を参照してください。 )。そして、私はこれの一部を基本的なコード開発に使用しました。
WiringPiをインストールしたら、以下のファイルを配置するだけです
control.html
control.php
control.py
「/ var / www / server /」フォルダ内
次に、control.htmlファイルの行を編集する必要があります。これを行うにはnanoを使用します:
$ sudo nano /var/www/server/control.html
「imgsrc」を探して編集します:
img src =http:// [Pi ip address]:8080 /?action =stream
次に、コンピュータでWebブラウザを開き、URLに以下を入力します。
http:// [Piのホスト名またはIPアドレス] /server/control.html
これで、すでにmjpeg-serverを実行している場合は、
Webページでビデオストリームを見ることができるはずです
ビデオを見ることができない場合は、ターミナルを開いて次のように入力します。
$ ./mjpg_streamer -i“ ./input_uvc.so” -o” ./ output_http.so -p 8080 -w ./www”
これで、Webページ上のすべてのボタンとビデオを見ることができるはずです。フロントバック左または右ボタンをトリガーすると、GPIOがオン/オフになります。
ステップ4:ステップ4:ロボットを稼働させるためのハードウェア接続(PiおよびBridge Shield):
個別のモータードライバーの代わりに、ブリッジシールドモータードライバーを使用してラズベリーパイに接続しました。別のボードをお持ちの場合、またはボードを作成した場合は、ラズベリーパイGPIOヘッダーのピン番号4、17、22、23を使用して、モータードライバーのピン番号2、7、15、10に接続できます。これらの接続は次のようにする必要があります。写真のように作られました
最後に、これらすべてをロボットシャーシに取り付ける必要があります(部品の配置に役立つ写真を参照してください)。指定されたスロットにwifiドングルを配置します。 Piのブリッジシールドを固定し、2セルリチウムイオンバッテリーをブリッジシールドに接続すると、機械の相棒が転がる準備が整います!!
ステップ5:ステップ5:Esp8266およびArduino UNOのプログラム(オプション)
ホームオートメーションを試して、wifiモジュールを使用して近くのアプライアンスを制御する場合は、control.pyファイルの以下の2行をESP8266のIPアドレス/ ESP8266wifiモジュールのポートに変更する必要があります。これは、ターミナルを開いて入力することで実行できます
$ sudo nano /var/www/server/control.py
このファイルに次の変更を加えます。
TCP_IP =Wi-FiモジュールのIPアドレス
TCP_PORT =Wi-Fiモジュールのポートアドレス
あなたはあなたのunoにarduinoコードをアップロードすることができます。有機ELディスプレイを起動して実行するには、adafruitのWebサイトにあるライブラリをインストールする必要があります。ルーターで実行するポート転送設定があることに注意してください。現在Netgearルーターを使用しており、設定ページに[ポート転送]タブがあり、アクセスしているポートとともにWi-FiモジュールのIPアドレスを入力します。次のリンクで、ルーターのポート転送手順を確認できます。
http://portforward.com/english/routers/port_forwarding/routerindex.htm
詳細:ラズベリーパイとブリッジシールドを使用したロボット
製造プロセス
- LabVIEWを使用したRaspberryPiの温度プロファイル
- PythonとRaspberryPiの温度センサー
- RaspberryPiを使用した天気のリモートモニタリング
- Node-REDを使用してBlynkへのSensorTag
- RaspberryPiを使用したモーションセンサー
- Raspberrypiを使用してGPIOを介してボタンが押されたことを検出する
- RaspberryPiを使用して自宅の温度を監視します
- LIRCなしでRaspberryPiでIRRemoteを使用する
- MCP3008を使用したRaspberryPiのアナログセンサー
- MonkMakes RaspberryPiロボットキットの構築
- XMOS startKIT:XMOSおよびRaspberryPiロボットXMP-1の構築