43
1 岡⼭ロボット技術⼦供育成協会 Copyright ORJA All Rights Reserved. ロボカップジュニア サッカーロボット作成講習会 ソフトウェア編2

ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

1岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

ロボカップジュニアサッカーロボット作成講習会

ソフトウェア編2

Page 2: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

2岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

講習会の進め⽅

第⼀回 ロボット作成

第⼆回 ソフトウェア⼊⾨編ロボットを動かす

第三回 ソフトウェア基礎編外界の情報をロボットに取り込む

第四回 ソフトウェア応⽤編試合に勝つ⼯夫をプログラムする

Page 3: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

3岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

講習会第三回の予定

10:45〜11:00 シリアル通信とシリアルモニタ

11:00〜12:00 センサの値を⾒てみよう

(昼休憩)

13:00〜13:30 変数と条件分岐

13:30〜14:15 ボールセンサ

14:15〜15:00 ラインセンサ

15:00〜15:30 試合に向けて

15:30〜 質疑応答/解散

Page 4: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

4岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

シリアル通信とシリアルモニタ

信号の値を⾒る

Page 5: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

5岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

シリアル通信

• デジタル信号を1bitずつやり取りすること

• デジタルでの最も基本的なデータ取り扱い– 極単純な装置でほとんどの機器についている

Page 6: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

6岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

シリアルモニタ

• 1bitずつ送られてくるデータを表⽰すること• ⼈間が確認できるので装置の状態を

知ることが出来る

Page 7: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

7岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

センサの値を⾒てみよう

Page 8: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

8岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

センサの値を読む

• センサの値を⾒るためにArduinoのシリアルモニタを利⽤します– Ardublockでセンサの値をパソコンに送る– ArduinoIDEで送られてくる値を表⽰する

Page 9: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

9岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

Ardublockのシリアル通信

• 下図のようにブロックを組んでロボットへダウンロードして下さい

Page 10: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

10岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

センサの値を読む

• ロボットは以下のピンに各センサが繋がっています– アナログ0:ボタン

– アナログ3:ラインセンサ

– アナログ5:ボールセンサ

Page 11: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

11岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

ボタンの値を表⽰する

表示したい文字を表示

messageと表示されていた部分をダブルクリックすると、すきな文字に変更できる

アナログピン0番の値を文字に変換して、前の文字につなぐ

Page 12: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

12岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

調べよう

• ラインセンサ– フィールド内にいるときの値– ラインを踏んだときの値

• ボールセンサ– ボールが無いときの値– ボールが⽬の前にあるときの値– ボールが30cm前にあるときの値– ボールが70cm前にあるときの値

• ボタン– ボタン1,2,3,4,5が押された時の値

Page 13: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

13岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

センサの値

「センサの信号を⾒ると、何もしていなくても、増えたり減ったりして安定していない」

信号は安定しない それが当たり前

Page 14: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

14岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

変数と条件分岐

Page 15: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

15岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

変数• 情報を操作(数える・憶える)するために使う物• コンピュータ内の”⼀時的な”記録エリア

– 「数字」,「⽂字」を⼊れておく箱

1

A=1 変数Aに1を⼊れる

A=A+1 変数Aに1を⾜すイコールの意味が算数/数学とは違う

A+1

Page 16: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

16岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

どんな時に変数を使うか

• センサの値をしばらく取っておきたい場合

• 計算をしたい場合

• プログラムわかりやすくする場合– そこに⼊れる数字の意味を変数名にする

Page 17: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

17岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

変数の使い⽅

ダブルクリックすると変数に名前を付けることが出来る

「Ball」(ボール)という名前を付けた

アナログピン5番の値を「Ball」(ボール)という変数にいれる

Page 18: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

18岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

Ardublockでの変数

変数には”型”という概念がある→⼊れることのデータの⼤きさ・種類が違う

整数 数字が⼊る定数 決まった数字

論理値 0か1が⼊る⼈が判りやすいように真/偽、High/Lowと呼ぶことが多い

⽂字 アルファベット記号⼀⽂字⽂字列 ⾃由な⻑さの⽂字を

Page 19: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

19岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

分岐

• 何かがあったときプログラムの流れを変える

• ORJAロボ2016の場合の例– ボールを⾒つけた/⾒つからない

• ボールが遠い• ボールが近い

– ラインを踏んだ– スイッチが押された

Page 20: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

20岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

もし○○ならば××する

もし○○であり◎◎であるならば××する

もし○○ならば××するでなければ△△する

Page 21: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

21岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

ラインセンサ

ラインの上に来たらLEDを点灯し3秒バックする

Page 22: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

22岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

ライトセンサのしくみ

• LEDとフォトダイオードの組み合わせ• LEDの反射光の量を読み取る

• フォトダイオード(フォトトランジスタ)– 光を電気信号に変換する

Page 23: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

23岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

センサの基本

Page 24: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

24岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

センサの基本

(a)

(b)

Page 25: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

25岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

センサの基本

外部の情報により抵抗値が変化するものをセンサとして利⽤する

外部環境の変化により抵抗値が変化することで出⼒される電圧が変化する

Page 26: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

26岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

課題

• 前進してラインを踏んだらしばらくバック⽌まってから⾳を出してみよう

Page 27: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

27岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

ラインを⾒つけたらバックし⾳を出す

• 条件分岐(if⽂)を使う– もし○○なら△△する

そうで無いなら××する– if ○○

then △△else ××

前進

音を1秒出す

2秒間バックし停止

はじめ

おわり

ラインを越えた

Page 28: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

28岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

ボールセンサ

ボールを⾒つけたら⾳を出す

Page 29: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

29岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

ボールとボールセンサの仕組み• 家電製品のリモコンと同じ部品が使われている

– ただし⽇本規格ではなくヨーロッパ・アメリカ規格– ボールが発する信号は40kHzの周波数で変調された

⾚外線(⽇本のリモコンは38kHz)• LEDが波⻑940nmの⾚外線を出している

Page 30: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

30岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

ボールとボールセンサの仕組み

• リモコン受光素⼦をボールセンサとして利⽤– ORJAロボ2016では⼊⼿性を考慮し秋⽉電⼦通商で

販売している”PL-IRM2121”を利⽤– これ以外にも⾚外線リモコンセンサは多数の種類あり

電⼦部品を購⼊する際はあわせてデータシートも⼊⼿する

Page 31: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

31岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

コンデンサ

• 皆さんがボールセンサを作ったときに、コンデンサという電⼦部品を半⽥付けしました– どういう役⽬で使われているか⾃分で勉強してみて下さい

Page 32: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

32岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

課題

1. クルクル回ってボールを⾒つけたら⾳を出してみよう

1. その場で回転する2. ボールがあれば(⼀定時間)⾳を出す

2. ボールセンサの信号の強さ(ボールとの距離)によって⾳の⾼さを変えてみよう

1. その場で回転する2. ボール信号の⼤きさが○○以上ならばドの⾳3. ボール信号の⼤きさが○○より⼩さいならラ⾳

Page 33: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

33岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

試合に向けて

Page 34: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

34岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

ロボカップジュニア サッカーのルール

中⽴点

Page 35: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

35岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

ロボカップジュニア サッカーのルール• 特殊なルール

– アウト・オブ・リーチ• ボールが⽩線の外に出て停⽌

→主審がボールを近くの中⽴点に移動する

– アウト・オブ・バウンズ• ロボットが⽩線の外に”完全に”出る

→1分間(⼜は30秒間)の退場• 他のロボット(味⽅も含める)に

押し出された場合は、アウトオブバウンズとはみなさない

• 得点/失点が有った場合はフィールドに復帰出来る

Page 36: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

36岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

ロボカップジュニア サッカーのルール

• 特殊なルール– ラック・オブ・プログレス(試合進⾏の停⽌)

• 試合の進展が⾒られない場合→主審がカウント開始を宣⾔し5カウントの後、

ボールを中⽴点に移動する。それでも試合に動きが⾒られない場合は、更に5カウントし異なる中⽴点にボールを移動する中央中⽴点にボールを移動しても、試合に進展が⾒られない場合は「リスタート」となる– リスタートは各チームのロボットをセンターサークル外に配置し、

主審の合図に合わせ、ロボットをスタートさせる• ロボットがボールを押し合い、動きが無い場合(スタック)

→審判はスタックを宣⾔し、ただちにボールを最寄りの中⽴点に移動

Page 37: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

37岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

試合に必要なこと

• 僅かな⼯夫が勝敗を決める– ⼩さな⼯夫を積み上げる– ⼀⼈で考えるよりも話し合う

• アイディアを出し合う– ⼈のアイディアに⾃分の考えを⾜してみる– ⼈のアイディアを否定しない

• まず、すべきこと– ロボットがすぐに動き出すようにする

Page 38: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

38岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

Arduinoのプログラム

はじめ

LEDをつける

LEDを消す

時間を測る

時間を測る

Page 39: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

39岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

Arduinoのプログラムはじめ

ロボットを動かすプログラム

準備

プログラムの例

Page 40: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

40岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

Arduinoのプログラムはじめ

ロボットを動かすプログラム

準備

プログラムの例

キックオフ前のプログラム。何かを操作で、「ロボットを動かすプログラム」に行く

各センサの値を読み取る判断する

動く(動かない)

Page 41: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

41岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

サッカーロボット サンプルプログラム

みんな動くようになったら試合をします

Page 42: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

42岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

2017シーズン ⼤会⽇程

公開練習会 2016年11月13日 ライフパーク倉敷岡山地区大会 2016年11月20日 人と科学の未来館サイピア倉敷地区大会 2016年11月27日 ライフパーク倉敷岡山県大会 2016年12月25日 ライフパーク倉敷

日本大会 2017年3月25,26日岐阜県中津川市 東美濃ふれあいセンター

世界大会 2017年7月24,25,26日日本 愛知県名古屋市 ポートメッセ名古屋

Page 43: ロボカップジュニア サッカーロボット作成講習会orja.org/wp-content/uploads/2017/02/2016ORJA講習会2.pdfロボカップジュニアサッカーのルール •

43岡⼭ロボット技術⼦供育成協会

Copyright ORJA AllRightsReserved.

ロボットサッカー⼤会に挑戦ロボット作成講習会

⽇程 全四回 9⽉4⽇(⽇) 9⽉24⽇(⼟)10⽉9⽇(⽇) 10⽉29⽇ (⼟)いずれも10:30〜16:00(途中昼⾷休憩)

場所 ⼈と科学の未来館サイピア

本⽇は お疲れ様でした