I.目的
II.部品と装置
III.ハードウェアのインストール
IV.ソフトウェアのインストール
米国から購入 | イギリスから購入 | ドイツから購入 | イタリアから購入 | フランスから購入 | スペインから購入 | 日本から購入 |
このレッスンでは、モバイルアプリを使用してUDPプロトコルを介してロボットカーを制御する方法を説明します。Raspberry Piは、APPからUDPパケットを取得するためにPythonプログラムを実行します。
Pythonを使用してモバイルアプリからリモートデータ(UDPパケット)を取得する方法を学習します。
いいえ。 | 画像 | デバイス | 数量。 | 小物 | リンク |
1 | 超音波センサー | 1 | M1.5*8ネジ×4 M1.5ナット×4 |
こちらをクリックして購入 | |
2 | サーボモータ | 1 | M2.2*8 セルフタッピングネジ x 2 M2*4 セルフタッピングネジ x 1 |
こちらをクリックして購入 | |
3 | 超音波センサー用マウントホルダー | 1 | M1.5*8ネジ×4 M1.5ナット×4
M2*4セルフタッピングネジ×1 |
こちらをクリックして購入 | |
4 | トラッキングセンサーモジュール | 1 | M2.5 プラスチックネジ×2 M2.5プラスチックナット×2 M2.5プラスチックピラー×2 |
こちらをクリックして購入 | |
5 | 7ピン25cmメス-メスケーブル | 1 | こちらをクリックして購入 | ||
6 | 20ピンジャンパー線メス-メス20 cm | 幾 | |||
7 | プラスドライバー | 1 | こちらをクリックして購入 |
ステップ1: レッスン 3 に従ってスマート カーの基本フレームワークをインストールします。トラッキング センサー モジュールを取り付けない場合は、レッスン 2 のインストールを完了してください。
ステップ1)rpi.gpio と adafruit-pca9685 ライブラリがインストールされていることを確認し、レッスン 1 で I2C を有効にします。
ステップ2)ロボットカーの電源を入れ、次のコマンドを入力してサンプルコードをダウンロードします。
wget http://osoyoo.com/driver/picar/picar-udp-control.py
ステップ3)次のコマンドを入力してサンプルコードを実行します(注意:Piボードに応じて正しいコマンドを選択してください)。
Raspberry Pi 2 で Python 3 を使用している場合は、次のように入力します。
python picar-udp-control.py
または、Pi 3 / 4A +でPython 3を使用している場合は、次のように入力します。
python3 picar-udp-control.py
上記のPythonが実行された後、あなたの車はあなたの携帯電話からのコマンドを待っています。
ステップ4)ダウンロード OSOYOO Wi-Fi UDP ロボットカーコントロールアプリ グーグルプレイやアップルストアでは、キーワードを検索してください “OSOYOO IoT UDP ロボットアプリ”, あなたは次のように赤いアイコンAPPを見つけるでしょう(ご注意:Google Playでこのアプリを見つけられない場合、以下のリンクから直接にアプリをダウンロードできます:https://osoyoo.com/driver/udp-app.apk):
ステップ5) Raspberry Piと同じルーターのWi-Fi SSIDにスマホを接続します。アプリを開き、「設定アイコン(1)」をクリックして設定画面に入り、「Raspberry Pi IP address」と「Port」を「8888」に入力し、「Save」をクリックします:
ステップ6)
次に、車を地面に置き、< > ^ v方向キーをクリックして車を動かすことができます。使用する ||一時停止キーを使用して、車の動きを停止します。
障害物キー(F8)をクリックすると、車はレッスン3と同様に障害物回避自動運転を行います
トラッキングキー(F7)をクリックすると、車はレッスン2と同様にリンクトラッキング自動運転を実行します
注:F1~F6は、今後のさらなる開発機能です。
IoT UDPアプリとスケッチコードに関するFAQ:
Q1)ロボットカーの速度を調整する方法は?
A:ロボットカーの速度性能を変更する場合は、ファイルの19〜21行目の次のパラメータの値を変更 picar-udp-control.py。
high_speed = 4000 # Max pulse length out of 4096 mid_speed = 2000 # Max pulse length out of 4096 low_speed = 1000 # Max pulse length out of 4096
Q 2)OSOYOO IoT UDP Robot APPのボタンを押すとどうなりますか?
A:APPのボタンを押すと、APPはUDPプロトコルを介してターゲットデバイスのラズベリーパイに<>文字のメッセージを送信します
ボタン | UDP メッセージ |
F1 キー | / |
F2 キー | / |
F3 キー | / |
F4 キー | / |
F5 キー | / |
F6 キー | / |
▲ | 前進 |
▼ | 戻る |
► | 右 |
◄ | 左 |
正方形 | 止める |
F7 キー | トラッキング |
F8 キー | 障害 |
Q3)ラズベリーパイのpythonプログラムはどのようにUDPコマンドを処理しますか?
ループがAPPからUDPデータを受信し、実行可能なcur_statusに与える間、290行目から318行目はcur_statusを処理します。
def ticker(): if cur_status=='R': turnRight(high_speed,0) if cur_status=='L': turnLeft(0,high_speed) if cur_status=='A': forward(mid_speed,mid_speed) if cur_status=='B': backward(mid_speed,mid_speed) if cur_status=='E': stopcar() if cur_status=='T': line_tracking() if cur_status=='O': obstacle_avoid()
たとえば、APP ▲ キーを押すと、cur_status値が A になり、ticker() 関数が forward(mid_speed,mid_speed) 関数を呼び出して車を前進させます。
DownLoad Url osoyoo.com