2008/5/13 プログラミング入門第2回 ~レゴロボットのプログラミング~ 高畠俊徳,小林 二宮 洋,鈴木 学 誠 [email protected] [email protected] [email protected] [email protected] 1 1 前回の復習 1.1 プログラムの制御構造1:順次 非常に重要 命令1 プログラムの基本ルール1(順次): 命令は一度に一つだけ実行され, 一つずつ(下に)順々に実行される 命令2 命令3 命令4 2 1.2 プログラムの制御構造2:反復(ループ,リピート) 非常に重要 反復の始まり 反復の終わり プログラムの基本ルール2(反復): 反復の終わりまで来たら反復の 始まりまで戻る. ある終了条件を満たすまで反復 は繰り返される. 注:命令が一つずつ実行される のは変わらない 終了条件が書いてある(ここでは無限回繰り返す) ここでは「前進」→「左ターン」→「前進」→「左ターン」・・・を繰り返す 3 1.3 プログラムの制御構造3:条件分岐 非常に重要 プログラムの基本ルール3(条件分岐): ある条件を満たした場合には,「は い」の方が実行され,満たしていない 場合には「いいえ」の方が実行される. 注:一度に実行されるのはどちらか 一方だけ. 「はい」の とき実行 条件が記述されている (センサー1とつながったタッチ センサーがおされている か?) 「いいえ」の とき実行 4 2. いくつかの例題 次のいくつかの例を実行してみよう (注:プログラムを理解しながら作成すること) [例1] [例2]反応をすばやくする 時間を0.1秒に 5 [例3]ライントレースカー(基本形) 図のようにライトセンサーを センサーポート2番につなぐ 6 [例3]ライントレースカー(基本形) ①クリック ②「ライト」をクリック ③「次へ」をクリック 7 [例3]ライントレースカー(基本形) ①2番をクリック ②「次へ」をクリック ③「明るい」をクリック ④「次へ」をクリック 8 [例3]ライントレースカー(基本形) 2番のライトセンサーが明るいか? ①「終了」をクリック ②実行させてみよう (下が黒いところから始めること) 9 [例3]ライントレースカー(基本形) ライトセンサが明るい(下が白い)時、左に 曲がる(左図) ライトセンサが暗い(下が黒い)時、右に曲 がる(右図) 上の2つの動作を繰り返す。 ⇒黒線を辿って前進する。 10 [例4]ライントレースカー(衝突するとストップ) 1番のセンサーに接続されたボタンを押 すと,何もしない.(ストップする) ボタンを押さないと,黒い線をライントレー ス. 11 [例5]前方が暗いとバック 図のようにライトセンサーをつなぐ 2番のライトセン サーが暗いか? 12 [例6]リモコンカー 図のようにタッチセンサーを2つつなぐ 13 3. 課題 次の課題の車をプログラミング及び実行しなさい [課題1]1秒前進,0.5秒左ターンを繰り返す [課題2]左ターンを繰り返し,ボタンを押している間だけ前進する [課題3]前進し,衝突したら1秒バックし,右へ障害物をよける [課題4]シートの黒枠より内側を走り続ける(ライントレースではな い) [課題5]ライントレースカー(障害物に衝突したら1秒バックし,右 へ障害物をよけ,再びもとのラインに戻る) [課題6]タッチセンサー1,3,ライトセンサー2をつける.センサー 1だけ押すと左ターン,センサー3だけ押すと右ターン.セ ンサー1,3両方押すと前進.両方押していないときはライ ントレースする [課題7]次ページ 14 [課題7]2つのライトセンサーを使った次の動きをするライント レースカー センサー1 センサー3 センサー接続方法 15 [課題7]2つのライトセンサーを使った次の動きをするライント レースカー 右折 2つのセンサー が両方とも黒線 上の時 直進 2つのセンサー が境界線をまた いでいる時 左折 2つのセンサー が両方とも白の 時 16
© Copyright 2024 ExpyDoc