ArduinoとRaspberryPiを使用してインターネット制御のビデオストリーミングロボットを構築する
私は@RedPhantom(別名LiquidCrystalDisplay / Itay)です。イスラエルの14歳の学生で、マックスシェイン高等科学数学学校で学んでいます。このプロジェクトは、誰もが学び、共有できるように作成しています。
あなたは自分自身に考えたかもしれません:うーん…私はオタクです…そして私の子供たちは私に彼らと一緒にプロジェクトを作って欲しいと思っています…
彼はロボットを作りたかったのです。彼女はそれを小さな子犬のようにドレスアップしたかった。良い週末のプロジェクトです!
Raspberry Piは、あらゆる用途に最適です。今日は、このマイクロコンピューターがロボットを作成する能力を明示します。このロボットは次のことができます:
- Raspberry Piと同じWiFiネットワークに接続されている任意のコンピューターを使用して、LAN(WiFi)を介してドライブし、制御します。
- RaspberryPiカメラモジュールを使用してビデオをライブストリーミング
- Arduinoを使用してセンサーデータを送信する
この素敵なライトプロジェクトに必要なものを確認するには、次のステップ(警告)を読んでから、Wanted:Componentsステップを読んでください。
これがGitHubリポジトリです:GITHUB REPO BY ME
これがプロジェクトサイトです:PROJECT SITE BY ME
ステップ1:警告:自宅でこれを試すように注意してください
注意:このチュートリアルの作成者は、電気および電気機器の基本的な操作について十分な知識があることを前提としています。注意を怠り、このチュートリアルの指示に従わない場合は、次のことを行うことができます。電子機器に損傷を与えたり、火傷を負ったり、火災を引き起こしたりする可能性があります。注意して常識を働かせてください。このチュートリアルに必要な知識(はんだ付け、電子機器の基礎)がない場合は、知識がある人と一緒に演奏してください。ありがとう。そして:
この指示可能な作者は、引き起こされた、または財産の喪失または物理的損傷に対する責任を自分自身から取り除きます。常識を使用してください。
そして:
これは、RaspberryPiコンテストのエントリです。右隅で私に投票していただければ幸いです。ありがとう!お楽しみください。
ライセンス
このInstructableで利用できるプログラムは、GPLv3でライセンスされています。
GPLライセンスは次のことを提供します:
- あらゆる目的でソフトウェアを使用する自由
- ニーズに合わせてソフトウェアを変更する自由
- ソフトウェアを友達や近所の人と共有する自由
- そしてあなたが行った変更を共有する自由。
ステップ2:募集:コンポーネント
この軽い週末のプロジェクトに必要なのは次のとおりです。
- ラズベリーパイ
どのモデルでもかまいません。2つのUSBポートを使用します。1つはWiFiアダプター用、もう1つはArduino用です。
Raspberry Pi2モデルBを使用しています
- ラズベリーパイ用のWiFiアダプター。 1つのPiUSBポートを占有します。 (Raspberry Piに接続)
- USB-AからUSB-Bへの短いケーブル。 1つのPiUSBポートを占有します。 (Raspberry Piに接続)
- Arduino
(Raspberry Piに接続)
繰り返しますが、どのモデルでもかまいません。この小さなマイクロコントローラーは、センサーからの出力を受信し、DCモーターに信号を送信します。
ArduinoUnoを使用しています。 - センサー(オプション)。 (Arduinoに接続)
これらは環境から情報を取得し、私たちのために収集します。
- デュアルHブリッジ
Hブリッジは、大きなトランジスタのようにモーターを制御するために使用されます。 Arduinoはパルス(PWM、説明については最終ステップを参照)をHブリッジに送信し、Hブリッジは外部ソースからDCモーターに電力を供給します。 (最後のステップ(説明)の論理電圧と動作電圧を参照してください。)
L298NベースのデュアルHブリッジを使用しています。
(Arduinoに接続)
- DCモーター
注:速度が同じになるように、モデルは同じである必要があります。サーボモーターの使用もオプションです。GND(アース)ワイヤーをarduinoとpoerソースに接続します。マイクロコントローラのPWN対応ピンへの信号と外部電源へのPWRワイヤ。この方法では、Hブリッジは必要ありません。
- PiおよびArduino用のバッテリーパック。
充電回路が付属しており、どのコンピューターからでも充電できるバッテリーバンクをお勧めします。
5V 5000mAh1Aバッテリーバンクを使用しています。
注:ロボットが正常に動作するには、最低1Aが必要です。それ未満の場合、加熱が発生し、バッテリーが損傷する可能性があります。
(Hブリッジに接続)
- ブレッドボードジャンパー
彼らはとても便利な小さな野郎です。はんだ付けせずにすべてのコンポーネントを接続します。これは、プロトタイピングの究極のソリューションです。
- 6v バッテリーパック /モーター用バッテリーパック
単三電池4本を使用しているので、DCモーターに合ったバッテリーパックを使用してください。注:他のコンポーネントとは異なり、DCモーター(LEDなど)はそれらに与えられたすべての電流を使用するため、充電式セルではなく通常のアルカリ電池を使用する必要があります。注意してください|
(Hブリッジに接続)
- プラットフォーム
Raspberry Piはこのロボットを作成するための優れたプラットフォームであるため、すべてのコンポーネントを配置するための物理的なプラットフォームが必要です。木やアルミニウムは素晴らしい素材です。
注:ロボットを金属や導電性の素材で作る場合は、透明なプラスチックやその他の非透明なプラスチックの層で覆ってください。ボードを置くときのように導電性材料を使用すると、スルーホールピンがショートしてボードを破壊する可能性があります。良くありません。
E-Bayから12ドルで購入したプラスチックベースを使用しています。そこから選ぶべきものはたくさんあります。モーターが付属しているもの(私のようなもの)でも。 - 知識
ほとんどの場合、簡単なプログラミングの理解と基本的なLinux環境の操作スキルが必要です。これらは簡単に習得できます。私はeBookを介してPythonやその他のプログラミング言語を学びました。
ステップ3:資料を読む
確認することをお勧めします:
- L298NHブリッジ
- 基本的な電子機器
- 超音波距離センサーのチュートリアル
そして、次のサイトにアクセスしてください:
- RaspberryPiサイト
- Arduinoサイト
- Pythonサイト
GitHubリポジトリとこのプロジェクトのサイトは最初のページにあります!
GitHubでフォークしてください!
ステップ4:電力管理
まず、コンポーネントの電力使用量を確認する必要があります。通常、それらはすべて5Vで動作します。
Raspberry Pi 2 B(どのモデルでもかまいません):〜500mA
カメラモジュール:〜250mA
Arduino(宇野):〜150mA
超音波距離センサー:〜50mA
合計:950mA。私のバッテリーは最大1Aを供給できるので、すべて問題ありません。セットアップでバッテリーの能力の10%以上が必要な場合は、2つを並列に接続するか、より高いアンペア数のバッテリーを購入することを検討してください。
Hブリッジに関する重要な注意事項:モーターに6Vを超える電力が必要な場合は、Hブリッジの電源を5V入力ではなく12 InDCピンに接続してください。その場合、5V入力は5V出力として機能します。自分のデータシートや指導可能なものを参照してください。
ステップ5:接続
はんだごてを加熱する前に、何を何に接続するかを検討する必要があります。このロボットのカーテン部分がどこにあるかを説明するこの簡単なチャート(MSペイントは決して私を失望させません)を作成しました(ところで、私の妹はタイヤが作る面白い音のためにそれをFartBotと呼んでいます。母は私に名前をSmartBotに変更するように説得しました)
画像は、ズームインしてフル解像度で表示し、そこに残した小さなメッセージを読むことができるように作成されています。
ステップ6:Piのアドレス
Arduinoは計画に従ってPiと話します。そして、Piはコンピューターと通信しますが、これはどのように機能しますか?
CIS(接続開始シーケンス)を見てみましょう:
- RaspberryPiが起動します
- Arduinoが起動します
- RaspberryPiがTCPクライアントを起動します。 LEDを介してIPアドレスを送信します。
- RaspberryPiがSerialCommsサービスを開始し、Arduinoに接続します
したがって、私たちはある種のコミュニケーションを確立しました:
コンピューター<-> Raspberry Pi <-> Arduino
Visual Basic .NET(Microsoft Visual Studio 2013 Community)を使用して、RaspberryPiおよびPythonと通信してArduino / RaspberryPiプロトコルを作成するプログラムを作成しました。
Pi IPアドレスを知るために必要なのは、HDMI画面に接続し、シェルにログインして、次のコマンドを入力することだけです。
hostname -I
コマンドを機能させるには、必ず大文字の「I」(文字「Eye」)を使用してください。
ステップ7:計画
PiのIPアドレスを取得したので、それにSSHで接続し(ファイルへのアクセスを取得します。SSHはセキュアシェルです)、サーバーのIPアドレスを含むファイルを書き込みます。 piは、起動時に同様に実行し、リッスンしているポートを書き込みます。ここでは、コードからいくつかの例を示しますが、このステップと私が作成したgithubブランチからダウンロードできます。詳細は後で。
そのように機能します:
- RPiが起動します。
- RPiはローカルIPと指定されたポートでTcpプログラムを開始します。
- RPIが動画のストリーミングを開始します
- RPIがシャットダウンします。
ステップ8:物理的になる
これで、すべてを物理的に構築する準備が整いました。手順1(警告テキストとライセンス)をまだ読んでいない場合は、先に進む前に読んでください。生じたいかなる損害についても私は責任を負いません。そして、疑わしい場合は、ゾンビの黙示録でない限り、このロボットを軍事目的で使用してはなりません。そしてそれでも常識を働かせてください。
リーディングリストで聞くインストラクタブルを読むことをお勧めします。
「接続」ステップから接続スキームをダウンロードします。
モーター
購入したモーターはおそらくこのように見えますが、そうでなくても問題ありません。ワイヤーが2本(ほとんどの場合黒と赤)しかない場合は機能するはずです。オンラインでデータシートを調べて、動作電圧と電流を確認してください。コメント欄でお気軽にご質問ください。私はいつもそれらを読みます。
Hブリッジ
これまでHブリッジを使用したことはありません。私は少しグーグルで検索し、HBの原理を説明する良い教訓を見つけました。あなたもそこを見て(リーディングリストのステップを参照)、あなたもフックすることができます。あまり説明しません。そこで読んで、この回路についてあなたがすべきことをすべて知ることができます。
LED
この小さなライトボルブは、電流をほとんど必要とせず、3V-5V 4mA-18mAの電圧を必要とするという理由だけで、論理電圧で動作できます。オプション。
ARDUINO
Arduinoは、RaspberryPiからシリアル接続を介して信号とコマンドを取得します。 Raspberry PiはGPIOを介してアナログ値を出力できないため、Arduinoを使用してモーターを制御します。
詳細:ArduinoとRaspberryPiを使用してインターネット制御のビデオストリーミングロボットを構築する
製造プロセス
- Samsung SAMIIO、Arduino UNO、RaspberryPiで数分で火災探知機を作る
- Raspberry Pi、DHT11センサー、Thingspeakを使用して最初のIOTを構築します。
- ラズベリーパイと湿度センサーを備えたエアロポニックス
- XMOS startKIT:XMOSおよびRaspberryPiロボットXMP-1の構築
- RaspberryPiとPythonを使用したロボットの構築
- Bluetoothで制御されるRaspberryPi Robot
- RaspberryPiを使用したジェスチャー制御ロボット
- ビデオ付きRaspberryPiWeb制御ロボット
- RaspberryPiを使用したWifi制御ロボット
- Pi-Arduinoインターネットラジオ
- サーボモーター付きロボット回避障害物