OSOYOOから購入 Buy from US Buy from UK Buy from DE Buy from IT Buy from FR Buy from ES Amazon日本~


このプロジェクトでは、スマート ロボットの指を作成し、それを使ってピンポン球を別の場所に移動します。 障害物センサー(超音波距離検出器)を使用してボールの飛来を検出します。 ボールが検出されると、指でボールを拾い、車はボールを別の場所に落とし、その後車は元の場所に戻って別のボールを待ちます。

このプロジェクトを完了するには、次の部品を準備してください
注意:
1. ビルディングブロックの色は実際の製品の影響を受けますが、使用には影響しません。
2. Arduino 用のすべての OSOYOO 製品は、Arduino と完全互換性のあるサードパーティ製ボードです。

ブロックでロボットを構築する前に、次のように OSOYOO Magic I/O シールドの下に Arduino 用 OSOYOO ベーシック ボードを取り付けてください (注意してください: 最初に I/O シールドのピンがベーシック ボードのポートと位置合わせされてから、 シールドは UNO ボードにしっかりと取り付けてください)。


このロボットカーを組み立てるには、組み立て手順に従ってください。分かりやすい組み立て手順のPDFを入手したい場合は、https://osoyoo.com/picture/Building_Robot_Car/lesson5/LESSON5.pdf からダウンロードしてください。

注意:built the robot car for lesson 1を作った方は、このPDFのstep35まで読み飛ばしてください。

lesson 1と同じようにモーターと9V電池ケースを接続してください。

次に、SG90サーボモータをOSOYOOマジックI/OシールドのD4ポートに、超音波モジュールセンサをマジックI/OシールドのD7D8ポートに4ピンPNPケーブルで以下のように接続する:

注:このキットでは、プログラミングツールとしてmblockを使用します。mblockについてもっと知りたい場合は、https://osoyoo.com/ja/2021/12/01/preparation-before-class-1へどうぞ~

Step 1)  https://mblock.makeblock.com/en-us/download/から mBlock PC バージョンをダウンロードし、コンピューターの OS タイプに応じてダウンロード ファイルを選択します (ブラウザー バージョンは使用しないでください)。

Step 2)  https://osoyoo.com/driver/mblock/osoyoo_uno.mextから OSOYOO_UNO.mext デバイスファイルをダウンロードします。

Step 3) 可愛いパンダのアイコンをダブルクリックして、mBlock PCソフトウェアを実行します。赤い丸の中の十字をクリックして、デフォルトのデバイスCyberPiを削除してください。

Step 4) ステップ2でダウンロードしたosoyoo_uno_mextファイルをmBlockにドラッグ&ドロップします:

これでmBlockに新しいデバイスファームウェアが表示されます:

これでmBlockソフトウェアとOSOYOO_UNOデバイスファームウェアがPCにインストールされました!

それでは、ブロックを使って上記のアイデアを実現する方法を紹介します。

Step 5: Eventsをクリックし、when Arduino Uno starts upブロックを一番上に追加します:

Step 6: Actionをクリックし、set servo pin angle asブロックをプログラミングエリアにドラッグ&ドロップします;

Step 7: Controlをクリックし、wait secondsブロックをプログラミングエリアにドラッグ&ドロップします:

Step 8: Action を再度クリックし、set servo pin angle as ブロックをプログラミングエリアにドラッグ&ドロップします;

Step 9: Step7を繰り返します:

Step 10:Action をクリックし、set servo pin angle as block をプログラミングエリアにドラッグ&ドロップします;

Step 11:Controlをクリックし、Wait secondsブロックをプログラミングエリアにドラッグ&ドロップします:

Step 12: Controlをクリックし、foreverブロックをプログラミングエリアにドラッグ&ドロップします:

Step 13: Control を再度クリックし、if then else ブロックをプログラミングエリアにドラッグ&ドロップします:

Step 14: Operationをクリックし、0<0ブロックをプログラミングエリアにドラッグ&ドロップします:

Step 15:Sensorをクリックし、read ultrasonic sensor trig pin echo pinブロックをプログラミングエリアにドラッグ&ドロップし、pin 7とpin 8を以下のように設定する;

Step 16: Actionをクリックし、Stop Mowingブロックをプログラミングエリアにドラッグ&ドロップします;

Step 17:「Control」をクリックし、「Wait seconds」ブロックをプログラミングエリアにドラッグ&ドロップします:

Step 18:Actionをクリックし、set servo pin angle asブロックをプログラミングエリアにドラッグ&ドロップします;

Step 19:Wait secondsブロックを右クリックし、デジタル書き込みピンからブロックへの複製をクリックします。複製したブロックを、Set servo pin angle as block の後ろに配置します。下図のように角度を変更します。

Step 20:Controlをクリックし、Wait secondsブロックをプログラミングエリアにドラッグ&ドロップします 次のように0.5秒を書き込みます:

Step 21:Actionをクリックし、Turn Left Speed forブロックをプログラミングエリアにドラッグ&ドロップします;1秒を0.4秒に変更します;

Step 22: Actionをクリックし、Stop Mowingブロックをプログラミングエリアにドラッグ&ドロップします;

Step 23:「Action」をもう一度クリックし、「set servo pin angle」ブロックをプログラミングエリアにドラッグ&ドロップします、
90を0に変更します;

Step 24:「Control」をクリックし、「wait seconds」ブロックをプログラミングエリアにドラッグ&ドロップします、
wait0.5秒に変更します:

Step 25: ステップ23を繰り返し、90を15に変更します:

Step 26:「Control」をクリックし、「Wait seconds」ブロックをプログラミングエリアにドラッグ&ドロップします、
次のように0.5秒待つ:

Step 27:再度Actionをクリックし、set servo pin angle asブロックをプログラミングエリアにドラッグ&ドロップします、
90を30に変更します;

Step 28:「Action」をクリックし、「Move Backward at speed for sec」ブロックをプログラミングエリアにドラッグ&ドロップします、
スピードを100から50に変更します;

Step 29:同じく「Action」をクリックし、「Turn Right at speed for sec」ブロックをプログラミングエリアにドラッグ&ドロップします、
スピードを100から50に変更し、1秒から0.5秒に変更します;

Step 30: 「Move Forward at speed for sec」ブロックをプログラミングエリアにドラッグ&ドロップし、スピードを100から50に変更します;

Step 31: Forward Left speed Right speedブロックをプログラミングエリアにドラッグ&ドロップし、スピードを100から30に変更します;

これでブロックのプログラミングは完了です。 最終的なブロックは以下のようになる:

これですべてのブロックのプログラミングが完了しました!上の図から、ロジックはとても簡単だ:

Arduinoが起動すると、コンピュータはデッドループに入り、ボタンの状態をチェックします。ボタンが押されていないときは、サーボは元の位置(私のサーボでは0度)で停止し、エレベーターは地面にあります。

OSOYOOベーシックボードにプログラムをアップロードする

1) まずOSOYOOベーシックボードをUSBケーブルでPCに接続してください。その後、mBlockソフトウェアの下部にある接続ボタンをクリックすると、USBウィンドウがポップアップ表示されます、

2) Show all connectable deviceチェックボックスを選択し、デバイスのドロップダウンメニューが表示されます、
3) デバイスのドロップダウンメニューからポートを選択します。
4) 接続ボタンをクリックし、PCをOSOYOOベーシックボードに接続します。

5)PCとOSOYOOボードが接続された後、ソフトウェアの下部にあるアップロードボタンをクリックしてください:

このレッスンでは、新しいプログラムブロックは使用しません。もしブロックの意味がわからない場合は、以前のレッスンを復習してください。
プログラミングロジックの説明は以下のグラフの通りです:

まず、サーボを 30 度から 0 度まで回転させ、30 度で停止させます。これで指が開いた状態から閉じた状態になり、次に開いた状態になる。指がこのように動作しない場合は、まず指を調整する必要がある。
その後、超音波センサーが永久ループに入り、車の進行方向に障害物があるかどうかをチェックする。
超音波センサーが7cm以内の障害物を検知すると、0.5秒間、車の動きを止める。サーボが開状態から閉状態へゆっくり回転し、指が障害物に引っかかるようにした後、ロボットカーは速度100で0.4秒間左旋回し、その後停止する。サーボが閉状態から開状態にゆっくり回転し、指を障害物に接触させ、ロボットカーが速度50で1秒間後進し、速度50で0.5秒間右旋回し、速度50で1秒間前進する。
超音波センサが障害物を検知しなければ、速度30で前進する。
上記のプログラムブロックは電源を切らない限り永久ループとして実行される。

指の位置を調整する:

手動:
電源を入れた後、指は開き、閉じ、再び開き、約1秒間開いた位置に留まります。フィンガーが開いた位置で止まらない場合は、電源を切ってからサーボギアを取り出し、両方のフィンガーが開いた位置になるようにしてください。

指を正しい位置に調整した後、再度電源を入れてください。そして、開いたフィンガーにボールを入れます。超音波センサーがボールを検知すると、ボールをキャッチして左手の位置に移動します。 ボールを移動した後、車は元の位置に戻ります。

コード

以下のコードをArduinoにアップロードする。電源を入れ、指が開いた状態になっているか確認してください。
指が開いていない場合は、”30 “の角度を調整し、正しい値になるまで繰り返します。

以下のコードをArduinoにアップロードしてください。電源を入れ、指が閉じた状態になっているかどうかを確認します。
そうでない場合は、”0 “を別の度数に調整し、正しい値が得られるまで繰り返します。

ロボットの指の角度を記録し、サンプルコードの角度を正しい値に置き換えてください。

動作結果

電源を入れ、車を地面に置くと、車は前進し、途中に障害物(指の大きさに応じて適切な障害物を選択してください)があると、指はそれをキャッチし、それを片付けます)その後、前進します。次のビデオのように:

No. Picture Device Link
1 OSOYOO Basic R3 Board for Arduino 購入はここをクリック
2 OSOYOO Magic I/O Shield for Arduino 購入はここをクリック
3 OSOYOO Ultrasonic Detector Module 購入はここをクリック
4 OSOYOO IR Receiver Module 購入はここをクリック
5 OSOYOO Red button module 購入はここをクリック
6 IR remote controller 購入はここをクリック
7 9V Battery Box 購入はここをクリック
8 9V Battery 購入はここをクリック
9 Servo 購入はここをクリック
10 Motor 購入はここをクリック
11 OSOYOO Tracking Sensor Module 購入はここをクリック
12 OSOYOO Photoresitor Module 購入はここをクリック
13 OSOYOO DHT11 Module 購入はここをクリック
14 OSOYOO Ultrasonic Sensor Block 購入はここをクリック
15 OSOYOO ESP module 購入はここをクリック
16 3 pin 20cm PnP cable 購入はここをクリック
17 4 pin 20cm PnP cable 購入はここをクリック
18 B117 購入はここをクリック
19 B115 購入はここをクリック
20 B113 購入はここをクリック
21 B111 購入はここをクリック
22 B109 購入はここをクリック
23 B107 購入はここをクリック
24 B105 購入はここをクリック
25 B103 購入はここをクリック
26 T024 購入はここをクリック
27 T016 購入はここをクリック
28 L024 購入はここをクリック
29 X064 購入はここをクリック
30 L035 購入はここをクリック
31 X044 購入はここをクリック
32 F057 購入はここをクリック
33 T033 購入はここをクリック
34 PS11 購入はここをクリック
35 P021 購入はここをクリック
36 P011 購入はここをクリック
37 Z005 購入はここをクリック
38 Z010 購入はここをクリック
39 Z101 購入はここをクリック
40 Z1S1 購入はここをクリック
41 A024 購入はここをクリック
42 A013 購入はここをクリック
43 A050 購入はここをクリック
44 A05S 購入はここをクリック
45 A08S 購入はここをクリック
46 A060 購入はここをクリック
47 A03S 購入はここをクリック
48 Z121 購入はここをクリック
49 X275 購入はここをクリック
50 X073 購入はここをクリック
51 Y001 購入はここをクリック
52 Z102 購入はここをクリック
53 P012 購入はここをクリック
54 P011 購入はここをクリック
55 wheel 購入はここをクリック
56 universal wheel 購入はここをクリック
57 cross screwdriver 購入はここをクリック