![]()
| Buy from OSOYOO | Buy from UK | Buy from DE | Buy from IT | Buy from FR | Buy from ES | Buy from JP |
![]()
このレッスンでは、モバイルAPPを使ってUDPプロトコルでロボットカーを制御する方法を学びます。Raspberry PiでPythonプログラムを実行し、APPからUDPパケットを取得します。
![]()
| No. | 写真 | 部品 | 数量 | 付属品 | Link |
| 1 | ![]() |
Ultrosonic Sensor | 1 | M1.4*8 Screw x 4 M1.4 Nut x 4 |
ここをクリックして購入する |
| 2 | ![]() |
Servo Motor | 1 | M2.2*8 Self Tapping Screw x 2 M2*4 Self Tapping Screw x 1 |
ここをクリックして購入する |
| 3 | ![]() |
Mount Holder for Ultrasonic Sensor | 1 | M1.4*8 Screw x 4 M1.4 Nut x 4 M2*4 Self Tapping Screw x 1 |
ここをクリックして購入する |
| 4 | ![]() |
Tracking sensor module | 1 | M2.5 Plastic Screw x 2 M2.5 Plastic Nut x2 M2.5 Plastic Pillar x 2 |
ここをクリックして購入する |
| 5 | 7pin 25cm Female to Female Cable | 1 | ここをクリックして購入する | ||
| 6 | ![]() |
10Pin jumper wire female to female 20cm | some | ||
| 7 | ![]() |
Philips screwdriver | 1 | ここをクリックして購入する |
![]()
Lesson 3 (Line Tracking ) と Lesson 4 (Obstacle Avoidance)を先に完成してください。
![]()
Lesson1~Lesson4で設置した配線はそのままにしてください。
![]()
| Osoyoo WIFI Robot APP | Google Play または Apple Storeで“Osoyoo WIFI UDP Robot APP”を検索してください。(Google Playでこのアプリを見つけられない場合、以下のリンクから直接にアプリをダウンロードできます:https://osoyoo.com/driver/udp-app.apk) |
Step 1) OSOYOO WIFI UDP Robot Car control APPをダウンロードします。
Google PlayまたはApple Storeで “OSOYOO WIFI UDP Robot Car “と検索してください(ご注意:Google Playでこのアプリを見つけられない場合、以下のリンクから直接にアプリをダウンロードできます:https://osoyoo.com/driver/udp-app.apk):


Step 2) lesson 1 でrpi.gpioとadafruit-pca9685ライブラリをインストールしたことを確認してください。
Step 3) 以下のコマンドを入力して、サンプルコードをダウンロードします:
wget http://osoyoo.com/driver/servo-steer-car/picar-udp.py
Step 4)次のコマンドを入力して、サンプルコードを実行します:
python picar-udp.py![]()
Python3を使用する場合は、次のコマンドを入力します:
python3 picar-udp.py
上記のpythonが実行された後、車は携帯電話からのコマンドを待っています。
Step 5) ラズベリーパイと同じルーターの無線LAN SSIDに携帯電話を接続します。APPを開き、Settingsをクリックし、Raspberry PiのIPアドレスとPortを8888に入力します:

これで、< > ^ v方向キーをクリックして車を動かすことができます。車の動きを止めるには|一時停止キーを使います。
Obstacleキーをクリックすると、Lesson 4と同様に障害物回避の自動運転を行います。
トラッキングキーをクリックすると、lesson 3と同様にリンクトラッキング自動運転を行います。
注: F1~F6 は未来の付加的な開発機能です。
WIFI UDP APPとスケッチコードに関するFAQ:
Q 1)ロボットカーのスピードを調整する方法は?
A: ロボットカーの速度性能を変更したい場合、picar-udp-control.py ファイルの 19-21 行目のパラメータを変更してください:
high_speed = 3500 # Max pulse length out of 4096 mid_speed = 1900 # Max pulse length out of 4096 low_speed = 1700 # Max pulse length out of 4096
Q 2)OSOYOO WiFi UDP Robot Car APPのボタンを押すとどうなりますか?
A: APPのボタンを押すと、APPはUDPプロトコルでターゲットデバイスRaspberry Piに1文字のメッセージを送信します。
| Button | UDP message |
| F1 | F |
| F2 | G |
| F3 | H |
| F4 | I |
| F5 | J |
| F6 | K |
| ▲ | A |
| ▼ | B |
| ► | R |
| ◄ | L |
| square | E |
| obstacle | O |
| tracking | T |
Q 3)Raspberry PiのpythonプログラムはUDPコマンドをどのように処理していますか?
319行目から347行目のwhileループがAPPからUDPデータを受け取り、それを実行可能なcur_statusに渡し、292行目から307行目のticker関数が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