PowerPoint プレゼンテーション

情報とコンピュータ
~プログラムによる計測と制御~
Copyright 2010 Vstone Co.,Ltd.Reserved
1時間目
•コンピュータで制御されているものを見つけよう
•自律制御ロボットの組立て、動作確認
•ソフトウェアの操作方法の説明
•順次処理の課題に挑戦
Copyright 2010 Vstone Co.,Ltd.Reserved
身の回りのコンピュータと制御
コンピュータは身の回りのいろいろなところで使用されています。
たとえば、エアコン
部屋の温度が暑い
(入力)
冷房を強めよう
(判断・命令)
冷房を強める
(出力)
部屋の室温を感知(計測)し、
コンピュータで判断し
エアコンの働きを制御している。
Copyright 2010 Vstone Co.,Ltd.Reserved
身の回りのコンピュータと制御
コンピュータで制御されているものを探してみましょう。
• 自動ドア
– 人を感知し、扉の開閉を行なう。
• デジタルカメラ
– センサで手ブレを補正したり、ピントを合わせたり
自動的にきれいな画像を撮影できる。
他に「自動車」「炊飯器」「冷蔵庫」「自動改札」など。
→実生活にはコンピュータ制御機器があふれている。
Copyright 2010 Vstone Co.,Ltd.Reserved
コンピュータで制御される機器の特徴
エアコンの場合
部屋の温度を感知
(入力)
①.センサ
状況を感知する。
→温度センサ、光センサ、傾斜センサ
冷房を強めよう
(判断・命令)
②.コンピュータ
動作を判断し、命令を行なう。
冷房を強める
(出力)
③.アクチュエータ
動作・仕事を行なう。
→クーラー、ヒーター、モーター
Copyright 2010 Vstone Co.,Ltd.Reserved
授業で用いる制御ロボットについて
①
Beauto Racer(ビュート レーサー)
①.センサ=赤外線センサ
物や床の状況をみる
②
②.コンピュータ=ARMマイコン
命令を覚えたり、行動を考える
③
③.アクチュエータ=モーター、LED
ロボットを動かす。
点灯・点滅する。
早速ロボットの組み立てを行いましょう。
Copyright 2010 Vstone Co.,Ltd.Reserved
ロボットの組み立て
パチッ
Copyright 2010 Vstone Co.,Ltd.Reserved
ロボットの組み立て
Copyright 2010 Vstone Co.,Ltd.Reserved
ロボットの組み立て
パチッ
Copyright 2010 Vstone Co.,Ltd.Reserved
ロボットの組み立て
Copyright 2010 Vstone Co.,Ltd.Reserved
ロボットの組み立て
端子が上向き
取り付けたら、
手でタイヤが回るか、
確認をしてください。
Copyright 2010 Vstone Co.,Ltd.Reserved
ロボットの組み立て(エンコーダ・ブザー搭載版)
※エンコーダ・ブザー搭載版の場合は、
この組立をしてください。
Copyright 2010 Vstone Co.,Ltd.Reserved
ロボットの組み立て
電池ホルダがある面
パチッ
Copyright 2010 Vstone Co.,Ltd.Reserved
モータホルダ挿入の注意点
Copyright 2010 Vstone Co.,Ltd.Reserved
エンコーダホイールの調整(エンコーダ・ブザー搭載版)
※エンコーダ・ブザー搭載版の
場合は、この組立をしてください。
Copyright 2010 Vstone Co.,Ltd.Reserved
ロボットの組み立て
※電池の向きををまちがえないよう注意!
Copyright 2010 Vstone Co.,Ltd.Reserved
ロボットの動作確認
白い紙の上に置くと、
前進→後退→左旋回→右旋回
の順番で動きます。
持ち上げたりひっくり返すと
LEDが光ります。
○センサを押さえるとLEDが点滅
センサS1 → オレンジのLEDが点滅
センサS2 → 緑のLEDが点滅
センサS2
※机から落とさないよう注意!
LED(オレンジ)
Copyright 2010 Vstone Co.,Ltd.Reserved
センサS1
LED(緑)
モータが回らない場合(原因と対応)
1.
2.
3. モータの端子の接触が悪い。
→ モータホルダを取り外し
モータの端子を起こし、付けなおす。
→ 裏側よりモータを少しずらしてみる。
接触がよくなる場合があります。
Copyright 2010 Vstone Co.,Ltd.Reserved
ロボットを動かしてみよう
ライントレースの用紙を広げて、輪のコースを走らせてみましょう
センサで黒いラインを認識し、
モータの駆動を制御しています。
※用紙はなるべく平らになるように手で伸ばしてください。
※ロボットが机から落ちないように注意!
Copyright 2010 Vstone Co.,Ltd.Reserved
ロボットのプログラミングについて
これから、制御を行なうためのプログラムを学習していきます。
プログラミングは専用ソフトウェアBeautoBuilder2を用い、
命令のブロックを並べることで行ないます。
これは、LEDの点滅を
繰り返すプログラムです
Copyright 2010 Vstone Co.,Ltd.Reserved
ロボットのプログラミング
プログラミングには主に
・順次
・繰り返し
・分岐
の3つの手順があります。
Copyright 2010 Vstone Co.,Ltd.Reserved
順次処理のプログラム
開始
仕事1
仕事2
仕事を順番に並べ、一つずつ
実行するようなプログラムを
「順次」のプログラムといいます。
もっとも単純なプログラムです。
仕事3
終了
Copyright 2010 Vstone Co.,Ltd.Reserved
ソフトウェア BeautoBuilder2の起動
「BeuaotuBuilder2」の中の
のアイコンをクリックします。
BeautoBuilder 2の画面
「スタート」 →
「すべてのプログラム」をクリック
Copyright 2010 Vstone Co.,Ltd.Reserved
パソコンとロボットを接続する
小さい方は
パソコンへ
「接続中」になる
電源はOFF
※ロボットをケーブルにつないだ状態で
グラグラ動かしたりすると、ケーブルの接触が
不安定になって通信が途切れることがあります。
Copyright 2010 Vstone Co.,Ltd.Reserved
エンコーダの設定を行う(エンコーダ・ブザー搭載版)
エンコーダ・ブザー搭載版は、エンコーダの設定を有効にすると
ロボットがほぼ常にまっすぐ走るようになります。
チェック
「設定」→「エンコーダ…の設定」を選択。
「OK」をクリック
設定を変更したら、本体をPCから外してもう一度
確認プログラムを動かしてみてください。
※モータが高速で回る場合は、エンコーダホイール
がどこかにぶつからないように少しずらしてください。
Copyright 2010 Vstone Co.,Ltd.Reserved
ぶつからないようずらす
前進のプログラミング(順次) 「1.5秒前進」
Copyright 2010 Vstone Co.,Ltd.Reserved
前進のプログラミングの作り方
をクリックで選択!
Copyright 2010 Vstone Co.,Ltd.Reserved
クリックすると
ブロックを追加!
前進のプログラミングの作り方
青い■をド
ラッグ
矢印を伸ばして
ブロックにつなぐ。
ボタンを
はなすと
接続完了。
「終了」にも
つなげる。
1.5秒前進が完成。
Copyright 2010 Vstone Co.,Ltd.Reserved
プログラムの書き込み
「書込」ボタンを
クリック!
「はい」をクリック
書き込みが終わるま
で待つ
青いメーターが一瞬で右端まで届き、画面が消えたら書き込み終了。
書き込みに10秒以上かかる場合は失敗しているので、
「中断」をクリックし、一度ケーブルを抜き差しして書き込みなおす
Copyright 2010 Vstone Co.,Ltd.Reserved
プログラムの実行
ロボットからUSBケーブルを抜きます。
電池を押すと、裏のスイッチが押さ
れてプログラムを実行する
机
の
真
ん
中
OFF→ON
電源スイッチをONにする
※ロボットが落ちないよう、
机の中央、または床の上で
プログラムを実行してください。
Copyright 2010 Vstone Co.,Ltd.Reserved
【まっすぐに行かない場合】モータ速度の調整
調整
調整
「設定」→「モーターの設定」を選択。
「適用」をクリック
左
右
【例:左に曲がる場合】
右のモータが速いので、右のモータの
「はやさ」を3~4ずつ小さくする
設定を変更したら、もう一度「書き込み」を行ないます。
Copyright 2010 Vstone Co.,Ltd.Reserved
前進のプログラム 時間の変更
命令をクリックすると、
左下の「設定エリア」の
表示が変わります。
① クリック
表示が
切り替わる
クリックすると
進む時間が変わる
●次の場合を試してみよう
2.50秒の場合
0.50秒の場合
Copyright 2010 Vstone Co.,Ltd.Reserved
車輪を動かすブロックの動きを確認
左前進
前
右前進
左旋回
停止
右旋回
左後退
後退
右後退
前進以外の車輪を動かすブロックの動きを、
それぞれ確かめてください。(5分間程度)
Copyright 2010 Vstone Co.,Ltd.Reserved
【作成例】他のブロックの動きを確認
前進や旋回のブロックを使用、
動作時間を変更する。
Copyright 2010 Vstone Co.,Ltd.Reserved
【まとめ1】
開始
仕事1
仕事2
仕事3
身の回りにはコンピュータ
制御されている機器がたくさん
あります。
それらの機器は、センサ・コン
ピュータ・アクチュエータという
要素を持っています。
制御のためのプログラムで
仕事を順番に並べ、一つずつ
実行するようなプログラムを
「順次」プログラムといいます。
終了
Copyright 2010 Vstone Co.,Ltd.Reserved
2時間目
•順次処理のプログラムの復習
•繰り返しのプログラム
•分岐のプログラム
開始
仕事1
仕事2
仕事3
終了
【順次】
Copyright 2010 Vstone Co.,Ltd.Reserved
課題1 1周するプログラムを作ろう
プログラムをスタートしたら、
1秒間前進して180度回り、
もう一度1秒前進して180度回り、
スタート地点に戻るプログラムを
作りましょう。
180度
ターン!
1秒前進
1秒前進
次の点を整理してプログラミ
ングしましょう。
スタート&
ゴール
180度ター
ン!
①どの命令が必要なのか
②どういう順番でつなげるのか
③時間をどう設定するか
Copyright 2010 Vstone Co.,Ltd.Reserved
課題1 解答例
180度ターンは旋回の命令を使います。
180度ターンを行なうには、旋回の秒数を
変えながら何度もプログラムを実行して、
正しい時間を調べる必要があります。
◆ロボットが速すぎて動作が安定しない
→「モーターの設定」で、動作が安定するまで
スピードを落としましょう。 (モータ速度「64」付近)
◆ロボットのモータが動かない
→モータの端子の曲げやモータホルダの取り付け
を確認しましょう。
→モータのスピードの設定が遅すぎると
動かなくなる場合があるため、
動くまでスピードを上げるように調整しましょう。
Copyright 2010 Vstone Co.,Ltd.Reserved
繰り返しのプログラミング
課題1のプログラムを改造して、ロボットが5周 走るには?
一周目
同じ命令を5個並べると作成できますが、
手間がかかりプログラムも見づらくなります。
また、もし10周に増やしたい場合は、更に
手間がかかります。
このように同じ命令を何度も実行する場合
は、「繰り返し」を使います。
二周目
5周目まで続く…
5周
Copyright 2010 Vstone Co.,Ltd.Reserved
繰り返しブロックの使い方
繰り返しブロックは、「繰り返しの始まり」
と「終わり」の二つがセットになっています。
繰り返す回数を自由に設定できます。
繰り返し回数を設定
繰り返しブロックで挟まれた命令を
設定した回数だけ繰り返します。
Copyright 2010 Vstone Co.,Ltd.Reserved
5周する 繰り返しのプログラミング
課題1を5回繰り返
すプログラム
課題1で作成したプログラムに
繰り返しブロックを追加してみよう。
繰り返しの命令を活用すると、効率
よくプログラミングできます。
同じような命令がいくつも出てくる場
合は、共通する部分を繰り返しの命
令でうまくまとめてみよう。
繰り返しは
5回に設定
Copyright 2010 Vstone Co.,Ltd.Reserved
繰り返しプログラミングの応用
繰り返しの中で繰
り返しを使う
プログラム
「繰り返し」の中に「繰り返し」を
使うというような複雑な構造も
できます。
Copyright 2010 Vstone Co.,Ltd.Reserved
繰り返し命令の注意点
繰り返し命令は、「繰り返しの始まり」から「終わり」に
正しくつながらないと、おかしな動作になります。
繰り返しの途中で
止まってしまう
一度も繰り返さず
に終了してしまう
Copyright 2010 Vstone Co.,Ltd.Reserved
繰り返しのはじめがお
かしくなってしまう
課題2 ジグザグに走るプログラム
ゴール
1秒
3回
2回
プログラムをスタートしたら、
3回ジグザグに進んで、最後に
1秒前進するプログラムを作り
なさい。ただし、必ず繰り返し
を使い、前進・右旋回(0.5秒)
左旋回(0.5秒)はそれぞれ
一つしか使ってはいけません。
次の点を整理してプログラミングを
行いましょう。
1回
スタート
①どの部分を繰り返すと良いのか
②どの部分を繰り返してはいけな
いのか
Copyright 2010 Vstone Co.,Ltd.Reserved
課題2解答例
最初に右旋回・左旋回の命令を
つなげて、それを繰り返しブロック
で囲みます。
前進は最後に一回だけなので、
繰り返しに入れないように注意。
Copyright 2010 Vstone Co.,Ltd.Reserved
分岐のプログラミング
条件によって処理の内容を変えたい
場合に、「分岐」を使います。
分岐
YES
仕事A
NO
仕事B
分岐ブロック
例えば、自動ドアで は、センサで感知し
ドアの前に人がいる場合、「開く」
ドアの前に人がいない場合、「閉じる」
という処理が行なわれています。
次にロボットのセンサを用いた分岐の
プログラミングを行ないます。
→ センサに指を近づけると
タイヤが回るプログラミング
Copyright 2010 Vstone Co.,Ltd.Reserved
ロボットのセンサとインターフェースについて
赤外線センサを搭載(裏面)
右赤外線センサ
(センサ2)
赤外線センサは、赤外線を出す部分と
反射した赤外線を受ける部分を持ちます。
左赤外線センサ
(センサ1)
指
赤外線を出
す部分
赤外線を
受ける部分
反射した赤外線を受け
て物体を感知する
インターフェースが、赤外線センサのアナログ信号を、ロボット内のコンピュータが処理
するためにデジタル信号に変換しています。
※ インターフェースとは情報のやり取りを仲介するもの、その仕組みのこと
センサ‐インターフェースA‐コンピュータ‐インターフェースB‐アクチュエータという関係です。
Copyright 2010 Vstone Co.,Ltd.Reserved
センサ値の計測
パソコンにロボットを接続するとセンサの
値がセンサエリアに表示されます。
センサエリア
指でセンサを押さえて反応を確かめましょう。
●センサを指で押さえると、数値はいくつになる? →センサ値[
●指をはなすと、数値はいくつになる? → センサ値[
]
Copyright 2010 Vstone Co.,Ltd.Reserved
]
【赤外線センサ メモ】
センサと指の距離によって
センサ値が変化します。
物体が遠いと反射する赤外線が
減少し、受ける赤外線も減少する。
白熱灯や太陽光には赤外線が多く含ま
れるため、赤外線センサは、これらの外
光によって誤反応する場合があります。
指
指
赤外線を出
す部分
Copyright 2010 Vstone Co.,Ltd.Reserved
赤外線を
受ける部分
分岐ブロック 【しきい値の決定方法について】
・指を押さえているとき
センサ値=50付近
・指を離しているとき
センサ値=980付近
しきい値
センサ値は、ノイズや電源の影響
で、実際には若干 変化します。
ノイズなどの影響を踏まえ、「指を
押さえているとき」と「指を離してい
るとき」の状態を分けるしきい値は
2つのセンサ値の真ん中にするよう
にします。
しきい値= 515
(50+980)÷2= 515
50 ~ 515 ~ 980
+ 465 + 465
Copyright 2010 Vstone Co.,Ltd.Reserved
左センサに指を近づけるとタイヤが回るプログラミング
しきい値は515
【センサ1 <515】
タイヤが回る
止まる
・センサを押さえる(50付近)
前進
センサ1が515よりも小さい→「はい」 タイヤ回る
・センサから離す(980付近)
センサ1が515よりも大きい→「いいえ」 止まる
Copyright 2010 Vstone Co.,Ltd.Reserved
左センサに指を近づけるとタイヤが回るプログラミング
プログラムを繰り返すので
ループを使用する。(無限)
設定できたらプログラムを
実行してみましょう。
パソコンからロボットを抜き、
電源をONにします。
Copyright 2010 Vstone Co.,Ltd.Reserved
ライントレースに挑戦
ここまで勉強した内容を応用すると、黒い線をなぞって動く
ライントレースのプログラムを作ることができます。
ライントレースの原理は、工場で荷物を運ぶ自動搬送車でも
使用されています。
Copyright 2010 Vstone Co.,Ltd.Reserved
ライントレース:ラインの計測
白
白・黒や濃淡の計測
白い
黒
黒い
黒色は光を吸収する性質が
あるため反射光が少なくなります。
●白色・黒色ではセンサの値は
いくらになりますか?
白色 → センサ値[
]
黒色 → センサ値[
]
●グラデーションのところでは
どのように数値が変化する?
Copyright 2010 Vstone Co.,Ltd.Reserved
ライントレース:しきい値について
左回り
白=50
黒=900
センサ1のしきい値は
50と900の真ん中の
数値で「475」に設定する。
Copyright 2010 Vstone Co.,Ltd.Reserved
ライントレース(左回り):分岐動作について
【カーブに来たとき】
センサ1にラインが
かかれば、左に曲がる
センサ1=900(黒)
ラインにかからない
場合、そのまま前進
センサ1=50 (白)
センサ1が白の上(475より小さい)
→ 前進
センサ1が黒の上(475より小さくない)
→ 左旋回
Copyright 2010 Vstone Co.,Ltd.Reserved
繰り返しの設定
同じ動作をずっと
繰り返しさせたいので、
Loopは「無限」の
繰り返しで設定する。
Copyright 2010 Vstone Co.,Ltd.Reserved
センサへの反応を早める方法
前進(1.5秒)または左旋回(1.5秒)
している間は、センサで検知されない。
Copyright 2010 Vstone Co.,Ltd.Reserved
センサへの反応を早める方法
前進(1.5秒)というブロック
実は、3つのブロックから出来ています。
「前進」+「3秒続ける」+「止まる」
前進(1.5秒)を「前進」のみにすることで
無駄な処理がなくなり、
センサへの反応を早めることが出来ます。
(左旋回も同様です。)
Copyright 2010 Vstone Co.,Ltd.Reserved
センサへの反応を早める方法
「続ける」をチェックする
Copyright 2010 Vstone Co.,Ltd.Reserved
ライントレースのプログラミング(左回り)
左回り
ライントレースさせてみましょう
Copyright 2010 Vstone Co.,Ltd.Reserved
課題3 右回りのライントレースを作成しなさい。
・センサ2(右のセンサ)を使用します。
右回り
・センサ2が白色のとき、前進
・センサ2が黒色のライン上のとき、
どちらに曲がる?
クリックして
「センサ2」を選択
Copyright 2010 Vstone Co.,Ltd.Reserved
課題3解答例
センサ2を使用
・センサ2が白色のとき
→ 前進
・センサ2が黒色のライン上のとき
→ 右旋回
Copyright 2010 Vstone Co.,Ltd.Reserved
【まとめ2】
プログラミングには主に
・順次
・繰り返し
・分岐
の3つの手順があります。
Copyright 2010 Vstone Co.,Ltd.Reserved
3時間目
•ライントレース応用編
•自分でコースを考え、クリアするための
プログラムを作成する。
コースのデータはここで
ダウンロードできます。
A3など大きめの紙に
印刷してください。
Copyright 2010 Vstone Co.,Ltd.Reserved
課題4
右回りも左回りも出来るライントレースに挑戦!
Copyright 2010 Vstone Co.,Ltd.Reserved
課題4
ヒント1
分岐ブロックを連続に配置し、使用することが出来ます。
例
左回り
右回り
二つのプログラムを合体させると?
Copyright 2010 Vstone Co.,Ltd.Reserved
課題4
ヒント2
ライントレースを行なう際、ロボットには4つの状況があります。
センサ1(左)が白
センサ1(左)が白
センサ1(左)が黒
センサ1(左)が黒
センサ2(右)が白
センサ2(右)が黒
センサ2(右)が白
センサ2(右)が黒
⇒前進
⇒右旋回
⇒左旋回
⇒前進
Copyright 2010 Vstone Co.,Ltd.Reserved
課題4
ヒント3
センサ1(左)で計測してから、
センサ2(右)で計測するようになっています。
Copyright 2010 Vstone Co.,Ltd.Reserved
課題4
答え①
白
黒
白
黒
白
黒
白・白
白・黒
黒・白
黒・黒
前進
右旋回
左旋回
前進
Copyright 2010 Vstone Co.,Ltd.Reserved
課題4
答え
Copyright 2010 Vstone Co.,Ltd.Reserved
課題5
自分でコースを考え、クリアするためのプログラムを作成しなさい。
ラインは、黒色で2cm幅を認識できます。手書きの場合は黒の
マジックを使うか、PCからペイントソフトなどで作成して印刷しても
大丈夫です。
START
直線コース
黒いゴールエリアで
ストップする
GOAL
Copyright 2010 Vstone Co.,Ltd.Reserved
【まとめ3】
コンピュータは、順次や繰り返し・分岐などのプログラムによって
処理を行ない、我々の生活において計測や制御で重要な役割を
果たしています。
今後もコンピュータの発展に伴い、生活に役立つたくさんの
コンピュータ制御機器が出てくることでしょう。
Copyright 2010 Vstone Co.,Ltd.Reserved