Transcript Document
情報とコンピュータ ~プログラムによる計測と制御~ CopyRight 2011 Vstone Co.,Ltd.Reserved 本日の内容① •身の回りのコンピュータと制御 •授業で使用するロボットについて •ソフトウェア・シミュレータの操作方法の説明 •ロボットのプログラミング演習 CopyRight 2011 Vstone Co.,Ltd.Reserved 身の回りのコンピュータと制御 コンピュータは身の回りのいろいろなところで使用されています。 たとえば、エアコン 部屋の温度が暑い (入力) 冷房を強めよう (判断・命令) 冷房を強める (出力) 部屋の室温を感知(計測)し、 コンピュータで判断し エアコンの働きを制御している。 CopyRight 2011 Vstone Co.,Ltd.Reserved 身の回りのコンピュータと制御 コンピュータで制御されているものを探してみましょう。 例> ・エアコン - 室内の温度に合わせて、冷房暖房の強弱を調整する • 自動ドア – 人を感知し、扉の開閉を行なう。 • デジタルカメラ – センサで手ブレを補正したり、ピントを合わせたり 自動的にきれいな画像を撮影できる。 他に「自動車」「炊飯器」「冷蔵庫」「自動改札」など。 →実生活にはコンピュータ制御機器があふれている。 CopyRight 2011 Vstone Co.,Ltd.Reserved コンピュータで制御される機器の特徴 エアコンの場合 部屋の温度を感知 (入力) ①.センサ 状況を感知する。 →温度センサ、光センサ、傾斜センサ 冷房を強めよう (判断・命令) ②.コンピュータ 動作を判断し、命令を行なう。 冷房を強める (出力) ③.アクチュエータ 動作・仕事を行なう。 →クーラー、ヒーター、モーター CopyRight 2011 Vstone Co.,Ltd.Reserved 授業で用いる制御ロボットについて ① Beauto Racer(ビュート レーサー) ② ①.センサ=赤外線センサ 物や床の状況をみる ②.コンピュータ=PICマイコン 命令を覚えたり、行動を考える ③ ③.アクチュエータ=モーター、LED ロボットを動かす。 点灯・点滅する。 CopyRight 2011 Vstone Co.,Ltd.Reserved アルゴリズムとフローチャート アルゴリズム=ある特定の目的を達成するための処理手順。 それを分かりやすく表したのが、フローチャートといいます。 問題に対して、問題を分析して クリアする方法を考えて、実行する。 本日は、シミュレータを用います。 失敗しながら何度でも挑戦してほしい。 CopyRight 2011 Vstone Co.,Ltd.Reserved ロボットのプログラミングについて これから、制御を行なうためのプログラムを学習していきます。 プログラミングは専用ソフトウェアBeautoBuilderRを用い、 命令のブロックを並べることで行ないます。 これは、LEDの点滅を 繰り返すプログラムです CopyRight 2011 Vstone Co.,Ltd.Reserved ロボットのプログラミング プログラミングには主に ・順次 ・繰り返し ・分岐 の3つの手順があります。 CopyRight 2011 Vstone Co.,Ltd.Reserved 順次処理のプログラム 開始 仕事1 仕事2 仕事を順番に並べ、一つずつ 実行するようなプログラムを 「順次」のプログラムといいます。 もっとも単純なプログラムです。 仕事3 終了 CopyRight 2011 Vstone Co.,Ltd.Reserved ソフトウェア BeautoBuilderRの起動 ダブル クリック! 車型のアイコン「cl_edit_r.exe」を ダブルクリックします。 ソフトウェアの画面 CopyRight 2011 Vstone Co.,Ltd.Reserved 前進のプログラミング(順次) 「1.5秒前進」 CopyRight 2011 Vstone Co.,Ltd.Reserved 前進のプログラミングの作り方 をクリックで選択! CopyRight 2011 Vstone Co.,Ltd.Reserved クリックすると ブロックを追加! 前進のプログラミングの作り方 青い■をド ラッグ 矢印を伸ばして ブロックにつなぐ。 ボタンをは なすと接続 完了。 「終了」にも つなげる。 1.5秒前進が完成。 CopyRight 2011 Vstone Co.,Ltd.Reserved プログラムの実行 ① クリック ② CopyRight 2011 Vstone Co.,Ltd.Reserved をクリック 【操作】ロボットの位置や向きの変更 ロボットをドラッグ すると、ロボットの 位置を変更できる CopyRight 2011 Vstone Co.,Ltd.Reserved ロボットで右クリックする と向きを変更できる 前進のプログラム 時間の変更 ① クリック 命令をクリックすると、 左下の「設定エリア」の 表示が変わります。 表示が 切り替わる クリックすると 進む時間が変わる CopyRight 2011 Vstone Co.,Ltd.Reserved 他のブロックの動きを確認 前進以外のブロックでは、ロボットがどのように 動作するのか確かめてください。(5分間程度) CopyRight 2011 Vstone Co.,Ltd.Reserved 【作成例】他のブロックの動きを確認 前進や旋回のブロックを使用、 動作時間を変更する。 CopyRight 2011 Vstone Co.,Ltd.Reserved 課題 ステップ1(順次) クリックし、1番の コースを選択する CopyRight 2011 Vstone Co.,Ltd.Reserved 課題 ステップ1(順次) プログラムをスタートしたら、 前進して90度回り、 もう一度1秒前進して ゴールまで移動します。 次の点を整理してプログラミ ングしましょう。 ①どの命令が必要なのか ②どういう順番でつなげるのか ③90度回るには、時間を いくらに設定するか CopyRight 2011 Vstone Co.,Ltd.Reserved 課題 解答例 CopyRight 2011 Vstone Co.,Ltd.Reserved 課題 ステップ2(順次) 進入禁止エリアに入らないように 1周する。 最後に、スタート時と同じ方向に 向く(画面では上向き)。 CopyRight 2011 Vstone Co.,Ltd.Reserved 課題 解答例 ブロックが多いのですっきりしない... もし10周に増やしたい場合は、 さらに手間がかかります。 「前進1.6秒+右旋回0.6秒」が 4回 使用されている。 同じ命令を何度も実行する場合は、 「繰り返し」を使います。 CopyRight 2011 Vstone Co.,Ltd.Reserved 繰り返しブロックの使い方 繰り返しブロックは、「繰り返しの始まり」 と「終わり」の二つがセットになっています。 繰り返す回数を自由に設定できます。 繰り返し回数を設定 繰り返しブロックで挟まれた命令を 設定した回数だけ繰り返します。 CopyRight 2011 Vstone Co.,Ltd.Reserved 課題2の 繰り返しのプログラミング 繰り返しの命令を活用すると、効率 よくプログラミングできます。 同じような命令がいくつも出てくる場 合は、共通する部分を繰り返しの命 令でうまくまとめてみよう。 CopyRight 2011 Vstone Co.,Ltd.Reserved 課題3 ジグザグに走るプログラム(フリーコース) ゴール 1秒 3回 2回 プログラムをスタートしたら、 3回ジグザグに進んで、最後に 1秒前進するプログラムを作り なさい。ただし、必ず繰り返し を使い、前進・右旋回(0.5秒) 左旋回(0.5秒)はそれぞれ 一つしか使ってはいけません。 次の点を整理してプログラミングを 行いましょう。 1回 スタート ①どの部分を繰り返すと良いのか ②どの部分を繰り返してはいけな いのか CopyRight 2011 Vstone Co.,Ltd.Reserved 課題3 解答例 最初に右旋回・左旋回の命令を つなげて、それを繰り返しブロック で囲みます。 前進は最後に一回だけなので、 繰り返しに入れないように注意。 CopyRight 2011 Vstone Co.,Ltd.Reserved ロボットのプログラミング プログラミングには主に ・順次 ・繰り返し ・分岐 の3つの手順があります。 CopyRight 2011 Vstone Co.,Ltd.Reserved 本日の内容② 分岐のプログラミングに挑戦 CopyRight 2011 Vstone Co.,Ltd.Reserved 【復習】ロボットのプログラミング 開始 仕事1 仕事2 仕事3 プログラミングには主に ・順次 ・繰り返し ・分岐 の3つの手順があります。 終了 CopyRight 2011 Vstone Co.,Ltd.Reserved 順次のプログラミング 今朝、起きてから行った行動をフローチャートにしてみよう。(5分間) 目覚める 朝ごはんをつくる 目覚まし時計を止める ベットから出る 顔を洗いに行く 学校に到着 CopyRight 2011 Vstone Co.,Ltd.Reserved 分岐のプログラミング 1時間 起きるのが、遅かったらどうするだろうか。(5分間) 目覚める 服を着がえる 目覚まし時計を見る 顔が青くなる ベッドから出る 学校に到着 CopyRight 2011 Vstone Co.,Ltd.Reserved 分岐のプログラミング 人間の行動は、状況によって変化します。 目覚める 時間は8時より早いか 顔が青くなる ベッドから出る 服を着替える 顔を洗いに行く 家を出る CopyRight 2011 Vstone Co.,Ltd.Reserved 分岐のプログラミング 状況によって処理の内容を変えたい 場合に、「分岐」を使います。 分岐 YES 仕事A NO 仕事B 分岐ブロック 例えば、自動ドアで は、センサで感知し ドアの前に人がいる場合、「開く」 ドアの前に人がいない場合、「閉じる」 という処理が行なわれています。 次にロボットのセンサを用いた分岐の プログラミングを行ないます。 → 黒いライン上で止まる プログラミング(ステップ3) CopyRight 2011 Vstone Co.,Ltd.Reserved 分岐のプログラミング 黒いライン上で止まるプログラミング(ステップ3) ⇒ 白色の上では、前進・黒色の上では停止。 CopyRight 2011 Vstone Co.,Ltd.Reserved ロボットの赤外線センサについて 赤外線センサは、赤外線を出す部分と 反射した赤外線を受ける部分を持ちます。 指 赤外線を出 す部分 赤外線を 受ける部分 反射した赤外線を受け て物体を感知する センサの値はセンサエリアに表示される CopyRight 2011 Vstone Co.,Ltd.Reserved ライントレース:ラインの計測 白 白・黒や濃淡の計測 白い 黒 黒い 黒色は光を吸収する性質が あるため反射光が少なくなります。 ●白色・黒色ではセンサの値は いくらになりますか? 白色 → センサ値[ ] 黒色 → センサ値[ ] ●グラデーションのところでは どのように数値が変化する? CopyRight 2011 Vstone Co.,Ltd.Reserved 分岐ブロック 【しきい値の決定方法について】 ・白の上 センサ値=10 ・黒ライン センサ値=162 現実のセンサ値は、ノイズや電源 の影響で、若干 変化します。 ノイズなどの影響を踏まえ、「白色」 と「黒色」の状態を分けるしきい値 は2つのセンサ値の真ん中にする ようにします。 しきい値=86 しきい値 (10+162)÷2=86 10 ~ 86 ~ 162 +76 +76 CopyRight 2011 Vstone Co.,Ltd.Reserved 黒いライン上で止まるプログラミング(ステップ3) しきい値は86 86 【 左センサ<86 】 タイヤが回る 止まる ・白(センサ値 10付近) 前進 左センサが86よりも小さい→「はい」 タイヤ回る ・黒(センサ値 162付近) 左センサが86よりも大きい→「いいえ」 止まる CopyRight 2011 Vstone Co.,Ltd.Reserved 黒いライン上で止まるプログラミング(ステップ3) プログラムを繰り返すので ループを使用する。(無限) ここまで出来れば、実行してみましょう。 CopyRight 2011 Vstone Co.,Ltd.Reserved センサへの反応を早める方法 前進(1.5秒)というブロック 実は、3つのブロックから出来ています。 「前進」+「1.5秒続ける」+「止まる」 前進(1.5秒)を「前進」のみにすることで 無駄な処理がなくなり、 センサへの反応を早めることが出来ます。 「前に進む」をチェックする CopyRight 2011 Vstone Co.,Ltd.Reserved 黒いライン上で止まるプログラミング(ステップ3) CopyRight 2011 Vstone Co.,Ltd.Reserved ライントレースに挑戦 ここまで勉強した内容を応用すると、黒い線をなぞって動く ライントレースのプログラムを作ることができます。 ライントレースの原理は、工場で荷物を運ぶ自動搬送車でも 使用されています。 CopyRight 2011 Vstone Co.,Ltd.Reserved ライントレース:しきい値について 左回り 白=10 黒=162 左センサのしきい値は 10と162の真ん中の 数値で「86」に設定する。 CopyRight 2011 Vstone Co.,Ltd.Reserved ライントレース(左回り):分岐動作について 【カーブに来たとき】 左センサにラインが かかれば、左に曲がる 左センサ=160 (黒) ラインにかからない 場合、そのまま前進 左センサ=10 (白) 左センサが白の上(86より小さい) → 前進 左センサが黒の上(86より小さくない) → 左旋回 CopyRight 2011 Vstone Co.,Ltd.Reserved 繰り返しの設定 同じ動作をずっと 繰り返しさせたいので、 Loopは「無限」の 繰り返しで設定する。 CopyRight 2011 Vstone Co.,Ltd.Reserved ライントレースに挑戦 前進(1.5秒)または左旋回(1.5秒) している間は、センサで検知されない。 CopyRight 2011 Vstone Co.,Ltd.Reserved センサへの反応を早める方法 「前に進む」をチェックする 「左に曲がる」をチェックする CopyRight 2011 Vstone Co.,Ltd.Reserved ライントレースのプログラミング(左回り) 左回り ライントレースさせてみましょう CopyRight 2011 Vstone Co.,Ltd.Reserved 課題4 右回りのライントレースを作成しなさい。 ・右センサを使用します。 右回り ・右センサが白色のとき、前進 ・右センサが黒色のライン上のとき、 どちらに曲がる? CopyRight 2011 Vstone Co.,Ltd.Reserved 課題4 解答例 右センサを使用 ・右センサが白色のとき → 前進 ・右センサが黒色のライン上のとき → 右旋回 CopyRight 2011 Vstone Co.,Ltd.Reserved 【まとめ②】 プログラミングには主に ・順次 ・繰り返し ・分岐 の3つの手順があります。 CopyRight 2011 Vstone Co.,Ltd.Reserved 本日の内容③ •分岐について •複雑なライントレースに挑戦 CopyRight 2011 Vstone Co.,Ltd.Reserved 分岐のプログラミング 状況によって行動は変わります。 目覚める 時間は8時より早いか センサ値は86より小さいか 顔が青くなる ベッドから出る 服を着替える 顔を洗いに行く 家を出る CopyRight 2011 Vstone Co.,Ltd.Reserved S字ライントレースに挑戦 CopyRight 2011 Vstone Co.,Ltd.Reserved 課題5 ヒント1 分岐ブロックを連続に配置し、使用することが出来ます。 左回り CopyRight 2011 Vstone Co.,Ltd.Reserved 右回り 課題5 ヒント2 ライントレースを行なう際、ロボットには4つの状況があります。 左センサが白 左センサが白 左センサが黒 左センサが黒 右センサが白 右センサが黒 右センサが白 右センサが黒 ⇒前進 ⇒右旋回 ⇒左旋回 ⇒??? CopyRight 2011 Vstone Co.,Ltd.Reserved 課題5 ヒント3 左センサで計測してから、 右センサで計測するようになっています。 CopyRight 2011 Vstone Co.,Ltd.Reserved 課題5 答え① 白・白 白・黒 黒・白 黒・黒 前進 右旋回 左旋回 停止 CopyRight 2011 Vstone Co.,Ltd.Reserved 課題5 答え CopyRight 2011 Vstone Co.,Ltd.Reserved 【操作メモ】速度の調整 調整 調整 「設定」→ 「シミュレータのモーターの設定」を選択。 「OK」をクリック 左 右 CopyRight 2011 Vstone Co.,Ltd.Reserved 8字ライントレースに挑戦 灰色部分を検知するためには 「しきい値」をいくらにすればいいか CopyRight 2011 Vstone Co.,Ltd.Reserved 課題6 ヒント ライントレースを行なう際、ロボットには4つの状況があります。 左センサが白 左センサが白 左センサが黒 左センサが黒 右センサが白 右センサが黒 右センサが白 右センサが黒 ⇒前進 ⇒右旋回 ⇒左旋回 ⇒前進 CopyRight 2011 Vstone Co.,Ltd.Reserved 課題6 答え① 白 黒 白・白 白・黒 黒・白 黒・黒 前進 右旋回 左旋回 前進 右センサのしきい値を 42にする。 センサの値は、 白の上にある時:10 灰色の上にある時:75 10と75の真ん中の値を しきい値とします。 (10+75)÷2=42.5 CopyRight 2011 Vstone Co.,Ltd.Reserved 課題6 答え CopyRight 2011 Vstone Co.,Ltd.Reserved 複雑なライントレースに挑戦 これまで学習したことをコースをクリアできる。 CopyRight 2011 Vstone Co.,Ltd.Reserved 【まとめ3】 プログラミングには主に ・順次 ・繰り返し ・分岐 の3つの手順があります。 CopyRight 2011 Vstone Co.,Ltd.Reserved CopyRight 2011 Vstone Co.,Ltd.Reserved