2018年5月30日水曜日

2018年5月報

1.5月授業内容
2.今月の課題
3.今後の授業スケジュール
4.お知らせ


1. 5月授業内容


1.0 <スタートアップ(全コース)>


 割愛します。



1.1 <プライマリーコース『ロボシーソー』>


 割愛します。




1.2 <ベーシックコース『ベイスピナー』>



 ロボットというより玩具(がんぐ)と呼べそうな、コマ回しマシーンです。

タッチセンサーを押してコマを加速させている間は、コマが本体に留(とど)まり、加速を止(や)めた途端(とたん)、回転の勢(いきお)いで自動的にコマが飛び出るという優(すぐ)れものです。
いつものキットで、アイデア次第(しだい)ではこんなのも作れるという新鮮(しんせん)な驚(おどろ)きを感じさせます。

 さて、コマ回しを成立させるメカニズムは、マシーンとコマの双方(そうほう)にあります。


 マシーン側に必要なのは、できる限り高速にコマを回転させることです。
本体上部に取り付けたギアLが、どえらい速さで回りますね。
どれくらい速いのでしょうか? モーターの回転と同じでしょうか?
だったら、モーターにシャフトを一本つき刺(さ)して、ギアLを付ければ済(す)む話です。

 実際は、ギアの噛(か)み合わせを工夫して、回転スピードを上げています
これを増速(ぞうそく)といいます。写真を見てください。


〔 モーター=ギアM① ピニオンギア①=ギアM② ピニオンギア②=ギアL 〕
の順に回転を伝えていますね。

ここで、“=”は、同一のシャフトに通して一緒に回転しているため、回転スピードが変わらないことを表しています。

一方、“⇒”は「大きいギアが小さいギアを回している」箇所(かしょ)であり、ここで回転スピードが上がるのです。


 どれくらい上がるかは、ギアの歯数の比(ひ)で決まります。歯数を(数字)で表すと、
本体内部で、ギアM(24) ⇒ ピニオンギア(8)の3倍増速が2段と、
本体上部で、ギアL(40) コマのギアM(24)の5/3(=1.666…)倍増速があります。
つまり、3×3×5/3=15倍の増速作用があります。

ギアの組み替え次第で、計算上はこれ以上の増速比を出せますが、今回の15倍速でも、モーターの回転速度は無負荷(むふか=空回り状態)時よりだいぶ遅(おそ)くなり、
「重くしたコマの加速にも少し時間がかかる」くらいマシーンの限界能力に近いですから、これ以上に欲張(よくば)っても大差ない(*1)かもしれません。
全エネルギーをコマの回転運動に使い尽(つ)くすという意味では、とてもピュアなマシーンです。


 コマ側に必要なのは、いかに安定して回転が長時間続く形にするかという点です。
ロボットキットの中から、軸(じく)としてシャフト、回転体として円形部品(*2)を選択するという制約下(せいやくか)では、
1) コマを重く(なるべく直径を大きく、かつ外周部を重く(*3))
2) 重心を低く(なるべく重い部品を下の方へ(*4))
という2点をポイントとしておきますが、
あまりに重すぎると、マシーンで十分加速できなくなったり、
あまりに低すぎると、回転中に地面に接触しやすくなったりしますので、バランスを追求する根気強さが勝負を分けます。


 さて、2日目の最後に、各自のコマ回し時間を競いました。
地面の材質(ザラザラの机か、ツルツルの床か)にも左右されますが、上記2点を押さえたコマなら、30秒以上回り続けることができました。
各自が試行錯誤(しこうさくご)する中で、50秒を超え、1分を超え、ついに100秒に迫(せま)るものまで登場しました。


逆に、弱かった電池をさらに消耗(しょうもう)して、最後には加速できなくなるという苦杯(くはい)をなめた人もいましたね。

 市販品のコマとは違って、自(みずか)ら色々と部品を組み替えて試せる点においては、遊びながら考えさせる優れた教材になったと思います。
学術的にも、コマの原理は、何年も勉強し続ける人もいるくらいとても奥深いもの。
高校物理を学んで、また改(あらた)めて興味を持ってもらえたらいいですね。


*1 限界に近いながらも、2015年5月の生徒さんが、コマ上端のギアM(24)をピニオンギア(8)に替えて、さらに3倍(トータル45倍!)の増速比を稼(かせ)いで100秒を可能にする加速方法を編(あ)み出しました。
ジェットエンジンの始動のように、加速完了まで10秒以上かけて回転音が高まるようなカッコイイもので、先生が披露すると、その方法が皆さんを虜(とりこ)にしていましたね。

 今回の中間教室2年生も、先生の支援を取り入れて、ギアL(40)⇒ピニオンギア(8)の5倍増速×2段=25倍で92秒を達成し、2位の50秒を圧倒していました。
理論を体現した結果であり、正に科学の勝利ですね!

*2 必ずしもタイヤ・ギアのような円形部品を使う必要はなく、回転軸(シャフト)に対して対称となるような配置(点対称)なら、他の部品でも使えます。
例えば、タイヤLのホイール穴にペグを4本挿(さ)して重くした工夫例がありました。


*3 回転エネルギーをたくさん貯(た)められるようになります。このことを物理学で「慣性(かんせい)モーメントが大きい」と言います。

*4 過去には、重心を高く作ったことで不利なふらつき(歳差(さいさ)運動)を、下部に履(は)かせたホイールの縁(ふち)と地面との低摩擦な接触で抑制(よくせい)し、好記録を出した工夫例も見られました。


1.3 <ミドルコース『ヤジロボベエ』>



 ピンと張った紐(ひも)を伝(つた)うロボットですが、1日目はロープウェイ、2日目は一輪車でサーカスの綱渡りをするようなロボットと、形態を大きく変えます。
ここまで作り変えるテーマは、他にありません。面白いですね!

 学習ポイントは“重心”です。
ロープウェイ型ロボットは、ローラーだけ紐の上に掛けて、重い本体を吊(つ)り下げていますから、重心は、見た目通り、本体の中心部にあって、支点(紐と接するローラーの最下点)より下に位置します。


重心に集中して重力が掛かると考えてよいため、(その直上の)支点も真下に引っ張られるものの、紐に引っ掛けられて(上向きの力で吊られて)いるので、安定して支えられます。
ゴンドラが風に煽(あお)られて、重心が支点の真下からずれても、しばらく揺(ゆ)れるだけで、また元の安定した姿勢に収まります


 ここで、このゴンドラを逆立ちさせるように、ローラーの上端を紐の上に置こうとしたら、どうなるでしょうか?
支点(紐との接点)より上にきた重心が重力で引っ張られる結果、横にコロッと半回転しながら落下してしまいます。

サーカスの綱渡りもこの状態であり、本来は非常に不安定なところ、横に伸ばした両腕や長い棒を傾けつつ、上手にバランスを取っています。
このロボットに、そこまで期待できませんね。


 ところが、2日目のロボット『ヤジロボベエ』は、これを見事にやってのけます。
一輪車に乗った彼の重い胴体は、支点よりかなり高い位置にあって、逆立ちしたゴンドラ同様に不安定そうですが、なかなかどうして、バランスの取れたロボットなら、多少のロープの揺れもお構いなく、スイスイと渡ってしまいます。
なぜでしょうか?


変わったところと言えば、ハの字形をした長い棒を持っていることです。
それがどうして? 綱渡りサーカスの長い棒と同じじゃない?
いえいえ、ハの字形に垂れ下がった棒の両端に、重い電池ボックスやタイヤを取り付けているところがミソなのです。


これにより、ロボットの重心を支点より下に引き下げることができます。
紐の真下には部品が何もないのに? それでも構いません。
計算上、このロボットの重心は、紐の下の空中に位置することになり、これにより、彼をゴンドラ同様に安定させているのです。



 やじろべえを知っていますか? 同じ原理です。
おもりや棒の長さを調整して左右のバランスを取ることが重要ですが、それだけではありません。

一定以上に傾かず、支点もしっかり固定されているシーソーなら、左右のバランスだけ気にすればよいので、重さの代わりに、支点からの長さ(座る位置)を調整してもよいのですが、足場の危(あや)ういやじろべえは、さらに、重心が支点の下にあることが必要です。

ですから、あまり棒を短くすると、重心がどんどん上がって、支点に近づくほど不安定になってしまいますので、要注意です。

 皆さんのヤジロボベエは、紐の上で上手にバランスを取ることができましたか?
おもりの追加や、棒の長さで調整できることは分かったと思いますが、なぜ長さの調節でもバランスが取れるのか、不思議ではありませんか?

有名な“てこの原理”ですが、おもりに働く重力(重さ)と、支点からの距離(長さ)が関係しています。
説明を簡単にするために、シーソーを使って考えてみましょう。


 図では、支点から1mの距離で、両端に1kgのおもりを置いています。
この場合、左右で重さも長さも等しいので、シーソーはバランス(均衡(きんこう)状態)を取れます。


 次の図では、おもりの重さは変えずに、支点からの距離を右側だけ変えてみました。
すると、シーソーは傾きますね。

このように、重さだけではなく、支点からおもりまでの距離によっても、支点に作用する力が変わってきます。
支点を中心に物体(シーソーの板)を回転させようとする力を回転力(トルク)と呼びます。

 実は、〔 トルク = 押す力(重さ) × 支点からの距離(長さ) 〕で決まります。
傾いたシーソーの支点に働くトルクを計算してみましょう。

 左側のおもりによるトルク = 1kg ×  1m =  1[kg・m] 反時計回り
 右側のおもりによるトルク = 1kg × 0.5m = 0.5[kg・m]  時計回り

やはり、左側のトルクの方が強く、シーソーは左に傾くことが分かります。

 左右のトルクを同じ(向きは逆)にすれば、シーソーはバランスを取れます。

最後の図ではどうでしょう。計算してみましょう。

 左側のおもりによるトルク = 1kg ×  1m = 1[kg・m] 反時計回り
 右側のおもりによるトルク = 2kg × 0.5m = 1[kg・m]  時計回り

等しくなりましたね。この場合、シーソーはバランスを取れるのです。

 ヤジロボベエのバランス調整にも同じことが言えます。
おもりを付け足す代わりに、棒を長く伸ばして(おもりを支点から遠ざけて)も、トルク(傾こうとする力)を増やすことができるのです。


1.4 <アドバンスプログラミングコース『コピーロボット(2)』>



 《下記を参照下さい》
  http://robocobo.sakura.ne.jp/blog/robot/adv1-1805.pdf




1.5 <プロ3年目コース『不思議アイテムIII-1(2)』>


 もっと赤外線で遊びます。

 赤外線データを送受信できるようになりましたので、これを大砲の弾に見立て(*1)、戦車ロボット(オムニホイール)に搭載してサバイバル戦を繰り広げます。


戦車ゲームプログラム[IRtankFire]では、ライフ数(life)や当たり判定閾値(hit_rate)の変数が用意され、ゲーム性を簡単にカスタマイズできます。

皆さんの意見により、life = 3 → 5, hit_rate = 60 → 45 へ変更しました。

加えて、
発砲すると、その効果音と反動効果の演出処理にマイコンが専念するため、連射し続ければ不死身になる!
という“クソゲー”要素を排するために、プログラムのループ250回(約2.5秒)に1回しか打てないよう改良しました。

いや、ライフが減るほど移動速度が上がって有利になる(*2)のだから、連射周期も短くなるようにしたい!
という声を反映し、life*50回のループ毎に1回打てるように改変しました。

勝負事になると、途端に活き活きと意見するようになる男子諸君でした。
実際、バトルを観戦しているだけでも白熱した楽しさが伝わってきます。
テクノロジー(赤外線通信・プログラミング)の投入により、エンターテイメントロボットとして、オムニホイールもここまで進化したかという感です。

 さて、赤外線を使って、このようなゲームが成立するのは、赤外線が照射方向に真っ直ぐ飛ぶ性質を備えているからです。
このことを「指向性が高い」と言います。

ここで波長がメートル級の電波を使ってしまうと、砲塔がどこを向いていようが、発射したビームが部屋中に拡散し、敵・見方の見境(みさかい)も無く全員を攻撃するテロリストになります。

 それならば、次のアプリケーションとして、赤外線の発信源の方向を特定し、回避したり追従したりできるでしょうか?

指向性があるとは言え、実際には、懐中電灯の光の如く、発信源(赤外線LEDやリモコン)から円錐ビーム状にある程度拡がります(*3)。
実験してみると、赤外線LEDの方向から±45°で90°(距離によっては±90°で180°も!)の範囲で受信してしまいます。
そのような赤外線の飛来方向を高精度に特定できるでしょうか?


「できない」と諦(あきら)めたら終わりです。
「入手できる複数の情報を最大限に活用して、その裏に隠された本質を抽出できるアルゴリズム(処理手順)が無いか?」を考えます。

一発の計測では無理だが、複数回の計測により受信角度の範囲が分かり、発信源はその中心の方角にあると推定できる」というアイデアですね。


オムニホイールの操舵性を活かし、その場でぐるぐる旋回させながら、受信できる角度と強度(*4)を記憶していきます。まるでレーダーのようですね。

「言うは易し」ですが、360°を10°刻みで記憶するにも36個の変数が必要です。
int range[36] のような配列に格納すれば、for文を使ってスキャンや集計が簡単になりますね(*5)。

 戦車バトルが結構面白くて盛り上がり、延長戦をしていたら時間が足りなくなりました。
次回に続け、さらに赤外線の追従アルゴリズムを探求します。


*1 本当はレーザー砲と言いたいところですが、発砲のタイミングで後退りする演出(慣性の法則・作用反作用の法則)が入っていますので、重量物(物理的な弾)を発射させていると妄想すべきでしょう。

*2 107行目 omniBot.move(xx/3/life, yy/3/life, ww/3/life); です。


*3 レーザー光/赤外線なら、殆ど拡散せず、遠くの壁に小さなスポットを映します。
 例えば、CDのピックアップ部(読み取り装置)には、盤上の微小ピット(1μm以下)を読み取るために、赤外線レーザー(波長780nm)が使われています。

*4 実際は強度ではなく、赤外線コマンドの受信データ長(rawlen)を記録します。
 受信確度が高いほど、完全なデータ長100に近い値が得られることを利用します。

*5 例えば、a[100]のうち、最大値をmaxに記憶するには、max=a[0]; for(i=1; i<100; i++){if(max < a[i]) max=a[i];} で、
 平均値をavgに記憶するには、sum=0; for(i=0; i<100; i++) sum+=a[i]; avg=sum/100; です。


2. 今月の課題


 <スタートアップ(全コース)>
  特にありません(アドバンスプログラミング生は2017年9月報を参照)

 <プライマリーコース>
  - オリジナル図形プリント

 <ベーシックコース>
  - オリジナル課題プリント(3面図+設問)
  - 上記授業内容を精読する(概ね3年生以上/低学年は補助の下で)

 <ミドルコース>
  - オリジナル課題プリント(3面図+設問)
  - 上記授業内容を精読する

 <アドバンスプログラミングコース>
  - オリジナル課題プリント(見取図+設問)
  - 上記授業内容を精読する

 <プロ3年目コース>
  - 上記授業内容を精読する(該当テキストページを見ながら)


3. 今後の授業スケジュール


◆小倉北6/17は『商工貿易会館(シティプラザ)』で開催します。
◆中間6/23は『中間市生涯学習センター』で開催します。

――――――――――【佐藤教室長】――――――――――

[東福間]第1・3土原則
   - 13:30~ ベーシック/プライマリ
   - 15:30~ ミドル
   - 17:30~ アドプロ

 ⇒ 6/2, 16,  7/7, 21,  8/4, 18


[東福間プロ]第2・4日原則
   - 15:30~ プロ3年目

 ⇒ 6/10, 24,  7/8, 22,  8/12, 26


[中間]第2・4土原則<なかまハーモニーホール>
   - 13:30~ ベーシック/プライマリ
   - 15:30~ ミドル
   - 17:30~ アドプロ

 ⇒6/ 9 第1回 ハーモニーホール3F会議室2
  6/23※第2回 生涯学習センター2F第4研修室
  7/14, 28※,  8/11, 25

 ※6/23は代替施設『中間市生涯学習センター』で開催します。
 ※7/28もハーモニーホール利用不可の為、代替施設(未定)で開催します。


[小倉北]第1・3日原則<ムーブ>
   - 10:00~ ベーシック/プライマリ
   - 13:00~ ミドル
   - 15:00~ アドプロ

 ⇒6/ 3 第1回 ムーブ5F小セミ
  6/17※第2回 シティプラザ7F
  7/1※, 15※,  8/5, 19

 ※6/17は代替施設『商工貿易会館(シティプラザ)』で開催します。
 ※7月はムーブフェスタの為、6/2まで確定できません。代理施設での開催となる可能性があります。


――――――――――【菅本教室長】――――――――――

[とばた]第2・4土原則<ウェルとばた8F>
   - 13:00~ 全コース(プロを除く)

 ⇒ 6/9, 23,  7/14, 28,  8/11, 25


――――――――――【中野教室長】――――――――――

[八幡東]第1・3土原則<レインボープラザ4F>
   - 13:30~ ベーシック
   - 15:30~ ミドル
   - 17:30~ アドプロ

 ⇒ 6/2, 16,  7/7, 21,  8/4, 18


[小倉南]第2・4日原則<総合農事センター2F>
   - 10:30~ ベーシック/プライマリ
   - 13:00~ ミドル  /アドプロ

 ⇒ 6/10, 24,  7/8, 22,  8/12, 26


4. お知らせ

1) ロボット教室全国大会 8/25(土) 東京大学 安田講堂
 アイデア・テクニカル(ライントレーサ)コンテストの時期が近づいてきました。6月第1回授業日に案内冊子を配ります。

 ◆アイデア部門:7/19(木)九州本部必着にて、所定の応募用紙・プレゼン動画(3分以内)を郵送
 ◆テクニカル部門:7/2(月)10:00~7/18(水)18:00までにWeb申込み

 《全国大会 観覧申込み - 8/1(水)17:00~定員まで》
  http://kids.athuman.com/robo/event/convention/2018/


2) ロボット教室九州地区大会 7/26(木) 福岡市科学館サイエンスホール
 全国大会に先立ち、九州地区大会も開催されます。
(発表練習会の位置付けであり、全国大会の予選ではありません)
 発表練習のみならず、他教室の面白アイデアを伺うチャンス!
 福岡県内の皆さんには、地の利があります。ご家族で参加しましょう!

 ◆アイデア地区大会:7/17(火)大会本部必着にて、所定の応募用紙を郵送

 《地区大会 観覧申込み - 6/25(月)12:00~7/5(木)19:00》
  http://kids.athuman.com/robo/event/convention/2018/


3) 5教室合同アイデア発表会
 アイデア地区大会・全国大会への応募を後押しするべく、
 東福間・中間・八幡東・小倉北・小倉南5教室合同でアイデア発表会を開催予定です。
 決定次第お知らせします。

 ■アイデア発表会
  7/ 1(日) 11:45-12:45 男女共同参画センター(ムーブ)予定
 ■発表練習会
  7/15(日) 11:45-12:45 男女共同参画センター(ムーブ)予定


4) 教室としての取り組みスタンス
 コンテストへの出品・発表は、創作力や理解力など、ロボットの総合力を一気に高めるチャンスです。
 ご家族行事として参加下さい。

 特にアドプロ生は、原則として全員テクニカル(ライントレーサ)部門に出場して頂きます。
 今年から、プログラミング対応規定に変わりました。
 昨年の非プログラミング規定に挑戦した人は、敗北感を糧に(?)、返り咲きを誓いましょう!
 (アイデア部門への出品も可能ですので、希望者はお伝え下さい)

 どの部門の挑戦者も、7月テキストのカリキュラムを割愛して、コンテスト作品に注力しても構いません。
 アドプロコースでは、6・7月で2体のロボット(建機)を作り分けますので、6月分のみ製作して終わっても構いません。


5) 4月課題 高得点者  []内は教室と学年

 ◆プライマリ【4名平均 図形4.8】
   5点…板脇[小倉北1], 柴田[小倉北1], 米山[小倉北2]

 ◆ベーシック【24名平均 図面3.5+設問1.7=5.1】
  10点…なし
   9点…久保田(雄)[小倉北5]
   8点…柴田[小倉北3]
   7点…下木[八幡東3], 藤野[八幡東3], 森崎[八幡東3], 竹内[小倉北4]

 ◆ミドル【22名平均 図面2.4+設問2.1=4.5】
  10点…荒木[小倉北4] →偏差値76!
   9点…なし
   8点…なし
   7点…福政[八幡東4], 大橋[小倉北5]


東福間・中間・小倉北教室 佐藤 / 八幡東・小倉南教室 中野