■第1章■ |
超音波センサーを取り付けよう |
1 |
STEP 1. |
ロボットの顔を作りましょう |
1 |
1 |
ロボットの顔に部品を取り付けましょう |
1 |
2 |
ロボットのボディーを外しましょう |
2 |
3 |
ロボットにサーボモーターを取り付けましょう |
3 |
4 |
サーボモーターに顔をつけましょう |
6 |
STEP 2. |
サーボモーターを90度に向けるプログラム |
7 |
1 |
モーターシールドに行くケーブルを抜きましょう |
7 |
2 |
USBケーブルでARDUINOとパソコンをつなげよう |
8 |
3 |
EFBLOCK(イーエフブロック)を起動しましょう |
8 |
4 |
シリアルポートの接続先を指定しましょう |
9 |
5 |
表示を「ARDUINOモード」にしましょう |
10 |
6 |
顔を正面に向けるプログラムを作りましょう |
10 |
7 |
顔を正面に付け替えましょう |
12 |
8 |
サーボモーターの角度を0度にしましょう |
13 |
9 |
サーボモーターの角度を180度にしましょう |
14 |
STEP 3. |
真正面になるように調整しよう |
16 |
1 |
調整用の変数(角度の調整)を作りましょう |
16 |
2 |
サーボモーターの角度を変数を使って調整しましょう |
17 |
STEP 4. |
顔に超音波センサーを付けよう |
20 |
1 |
部品を用意しましょう |
20 |
2 |
USBケーブルを外しましょう |
20 |
3 |
ケーブルをつなげましょう |
21 |
4 |
USBケーブルを挿しましょう |
23 |
■第2章■ |
衝突回避ロボットを作ろう |
24 |
STEP 1. |
超音波センサーで距離を測ろう |
24 |
1 |
シリアルポートの接続先を指定しましょう |
24 |
2 |
距離を測って、シリアルモニタに表示するプログラムを作りましょう |
25 |
3 |
マイコンボードからの通信をARDUINO IDEのシリアルモニタで確認しましょう |
27 |
4 |
測った距離を変数に入れましょう |
31 |
STEP 2. |
障害物に近づくまで前進だ |
35 |
1 |
距離が10センチで処理を分けるようにしましょう |
35 |
2 |
少し進むブロックを作りましょう |
36 |
3 |
距離が10センチより大きい時は少し進み、そうでなければ0.1秒待つようにしましょう |
38 |
4 |
「少し進む」の定義を作りましょう |
39 |
5 |
プログラムをアップロードして動きを確認しましょう |
41 |
6 |
ロボットの動きを確認しましょう |
41 |
7 |
「距離」が「0」の時も少し進むようにしましょう |
43 |
STEP 3. |
近づきすぎたときはバックするぞ |
46 |
1 |
距離が5センチより近い時の処理を作ろう |
46 |
2 |
少しもどるブロックを作りましょう |
47 |
3 |
距離が5センチより小さい時は少しもどり、そうでなければ0.1秒待つようにしましょう |
49 |
4 |
「少しもどる」の定義を作りましょう |
50 |
STEP 4. |
障害物に近づいたら進む方向を探そう |
52 |
1 |
距離が5より小さい時の処理を削除しましょう |
52 |
2 |
「進む方向を探す」ブロックを作りましょう |
53 |
3 |
「距離を測る」ブロックを作りましょう |
56 |
4 |
「距離を測る」の定義を作りましょう |
58 |
5 |
「進む方向を探す」の定義を作りましょう |
62 |
STEP 5. |
障害物に近づいたら進む方向をかえよう |
64 |
1 |
「向きを変える」ブロックを作りましょう |
64 |
2 |
「進む角度」の値が90度より小さいか、大きいかでロボットのむきを変えましょう |
65 |
3 |
障害物に近づいたら、進む方向を決めてその方向に進みましょう |
68 |
STEP 6. |
プログラムを少し変えてみよう |
71 |
1 |
「もし なら」ブロックで書き換えましょう |
72 |
STEP 7. |
どちらにも進めないときはバックするぞ |
75 |
1 |
一番遠い距離が20センチより小さいときは、少しもどりましょう |
75 |
2 |
繰り返すブロックを作りましょう |
76 |
3 |
「<」を「>」に変更しましょう |
77 |
4 |
処理を「まで繰り返す」ブロックの中に移動しましょう |
78 |
5 |
「少しもどる」のもどる時間を長くしましょう |
79 |