2017年6月26日月曜日

2017年6月報

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


1. 6月授業内容


1.1 <プライマリーコース『チャリダー』>


 割愛します。


1.2 <ベーシックコース『ロボフィッシュ』>



 魚型ロボットです。
1日目で製作が完了し、持ち上げてスイッチを入れると、釣った魚のように尾びれを元気よく振(ふ)ります。
このロボットを床に置くと・・・前へ進みますね。当たり前でしょうか?
中には、後ろにさがるロボフィッシュもありますよ!


 試(ため)しに、タイヤSの上にある胸(むな)びれを取り外してみます。
すると、うまく進まなくなりました。
それはそうかもしれません、尾びれを左右に動かしているだけですから(*1)。


よくよく観察すると、尾びれを振る度(たび)に、左右の両輪がちょっと前に回転しては後ろにも回転して、その場で体をくねくね方向転換(ほうこうてんかん)させているだけのようです。


 秘密は、ただの飾(かざ)りに見えた胸びれにあったのですね。
この胸びれをタイヤの前方に当てると…、タイヤは前方向には軽く回転しますが、
逆方向には(胸びれのピニオンギヤとタイヤの横みぞが引っ掛かって)ロックが掛かり、後退(こうたい)を阻止(そし)することができます。



ラチェット機構といい、自転車のペダルが前方向にはしっかり漕(こ)ぐことができるものの、
走行中に漕ぐのを止めたり、逆方向に空回りさせたり(*2)することができるのも、この機構のおかげです。












 これで体をくねらせる度に左右のタイヤが少しずつ交互(こうご)に前進し、全体としてスイスイ泳ぐようになりました。坂道だって、上りますよ!
モーターを逆回転させたって、変わりません(*3)。











なお、モーターの回転を尾びれの往復(おうふく)運動に変えるクランク(*4)という仕組みも大事なポイントですよ。







 2日目最後のゲームは、えさ取り競争!
カラフルなモールやクリップを小魚に見立て、散(ち)りばめます。
ロボフィッシュの口には磁石を貼(は)り付け、うまくえさの方向に泳がせて「ぱくっ!」
一定時間内に多く食べたロボットの勝ち。

みんな、何度言っても、スタートラインは守らないわ、フライングはするわ、手で押すわ、景品の駄菓子(だがし)を賭(か)けて燃えに燃えます。

誰です? えさを手づかみして魚の口に運んだのは?


*1 水中の魚やイルカはそれで周りの水を後方へ押しやって泳げるのですが。

*2 このとき「チチチ…」と音がしますね。ラチェットの作動音です。

*3 側面のロッド3アナの回転方向は逆になりますが、尾びれを左右に振る動きは同じだからです。代わりに、胸びれをタイヤの後方に当てると、どうしたって後退するようになります。

*4 実際に使用している部品は『クランク』ではなく『ロッド3アナ』ですが、クランクと同じ作用を働かせています。



1.3 <ミドルコース『ロボザウルス』>



 恐竜型2足歩行ロボットです。ミドルコース最大級の大きさです。
モーター1つで、両脚はもちろん、両手も振り、首も上下させる他、
台車のタイヤの回転を利用してしっぽまで振る凝(こ)った造りで、巨体と相(あい)まって圧巻(あっかん)です。


 両手を振る運動は、カム機構(*1)で実現しています。



赤いベロを出し入れするのに連動して首を上下させたり、しっぽを振ったりするのは、クランク機構によります。













肝心(かんじん)の2足歩行は、回転するクランク(*2)の端につないだ連接ロッド(7アナ)が脚ロッドを押し引きする“てこクランク機構”という仕組みで、両脚の前後および上下への運びを見事に実現しています。


右図に足先の動く軌跡(きせき)を載せました。つま先は白線、かかとは青線で示してあります。
一体化したパーツなのに、つま先は楕円形を描くのに対し、かかとは細い三日月形を描きます。
このように、つま先とかかとの動きが違うからこそ、地面をつま先で効果的に蹴ることができるわけです。

てこクランク機構については、アドバンスコースで詳しく勉強します。


 安定して片足を浮かせられるのは、接地した方の片足と、台車の左右両輪とで、“3点支持”が確保されているためであることも学習しました。





自動車やテーブル・椅子など、4点支持の製品が多いですが、実は、4脚より3脚の椅子の方が、グラつきは少ないです。
椅子(の座面)をグラつかないよう固定するということは、脚の先端を、床なり地面なり、同一平面内に置くということです。


数学的な表現になりますが、我々が住む3次元空間内で任意の3点を選ぶと、その3点を通る平面は一意に決まってしまいます。
3点を結ぶことで、初めて“三角形”という決まった平面が生まれます。
(ある1点や2点を通る平面なら、無限に存在しますよね)


ところが、4点以上を選ぶと、全ての点が同一平面内に存在するのは奇跡と言えるようになります。
例えば、4点の場合、図に示す通り、異なる4面が存在し得るのです。
どの色の1面を選んでも、仲間外れの1点が出てしまいます。
これが椅子のグラつき(どれか1本だけ浮いた脚)になります。

もちろん、4脚ともピッタリ同じ長さに揃えれば(奇跡?!)、平らな床の上では固定されますが、凸凹の地面に置くと、やっぱりグラグラですね。
だから、カメラの“三脚”なんです。



 さて、2日目最後の競技は、相撲(すもう)対決!
相手を土俵(どひょう)から押し出すか、倒した方の勝ちです。
ただでさえ高負荷(こうふか)(*4)のメカに、行く手を阻(はば)むは相手の巨体。


各者、迫力の戦いを見せる一方で、スイッチを入れても微動だにせず静寂(せいじゃく)を守り抜くスフィンクスやら、勝手に自己分解する環境に優しい“ボロ”ザウルスもいて、拍子(ひょうし)抜けする一幕もありました。


*1 回転体(Tジョイント)の外形に沿って他の部品(腕のTロッド)を押し動かす機械要素。

*2 実際に使用している部品は『クランク』ではなく『ロッド3アナ』ですが、クランクと同じ作用を働かせています。

*3 4点支持の製品が多いのは、四角形の製品では倒れにくく安全だからです。

*4 動かすパーツが多かったり、重かったりして、モーターの負担(ふたん)が大きいこと。


1.4 <アドバンスコース『Robo Fight』>


 2ヶ月目の授業です。
8月のテクニカルコンテスト全国大会と競技ルールは異なるものの、そのような対戦を意識させる内容ですから、テキスト上に特段の技術的示唆(しさ)はありませんが、
自分たちでルールをアレンジし、対戦してみては改造にフィードバックする楽しさを味わいました。


 対戦ルールとしては、
・操縦方法として手動型・自律型の別を問わない(*1)
・左右の駆動輪とも場外に出るか、机上から落下すると失点
・パーツ外れ、転覆、5秒以上停止(通電不良・ギア外れ等)すると失点
・回転ハンマーで攻撃すると加点

などのアイデアが出ました。




 その中で、無敗の強さを見せたロボットがありました。
強さのポイントは、
・重いこと(摩擦力・慣性力
・片側2輪串刺しのダブルタイヤ!(摩擦力
重量物(電池・モーター)を駆動輪上に配したミッドシップレイアウトにより、タイヤの摩擦力旋回性を向上(*2)
・頑丈な前面シールド(本体保護

これにより、小型の対戦相手をブルドーザーのように押しのけていました。
軽くてちょろちょろと速いロボットは、逃げ回って相手が自滅するのを待つしか手立てがありませんでした。

 他に、ロボット前面にスロープ(シャベル)を付けて、相手を乗り上げさせてグリップを失わせる戦略も功を奏していました。

 かように、対戦が絡むと闘志が湧き上がるのが人間です。
それが分かったところで、四の五の言わず、テクニカルコンテスト用のライントレーサに挑戦してみましょう。
1回しかないチャンス、控えめな君も「もっと改良しておきたかった…」と後悔しかねないほど、楽しいものですよ!


*1 ほぼ全員が手動操縦を選びましたが、自律型もしくは半自律型(黒枠からはみ出ないよう光センサーによる操縦支援)を交ぜるとより面白かったでしょう。

*2 ロボットを長くすることで重く、格好良くもなりますが、駆動輪への荷重はあまり増えないことと、てこの原理により、相手にぶつけられて方向を変えられやすいデメリットがあります。


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


 外付けの電子回路をプログラミングで操る春タームの3ヶ月目です。

 これまでの学習で、ちょっとした電子機器を製作するのに必要な要素技術は揃(そろ)ってきました。あとはアイデア次第です。
世の中の斬新な製品も、殆どは基本機能の組合せであり、その選択や按配(あんばい)こそが“応用(アプリケーション)”として大事なのです(*1)。


入力デバイスとして、
a) タッチセンサー
b) 超音波センサー
c) カラーセンサー
d) ボリュームセンサー(可変抵抗)
e) CdSセンサー(光依存性可変抵抗)
f) 姿勢センサー
g) タクトスイッチ
h) 無線コントローラー(ゲームパッド)


出力デバイスとして、
1) モーター
2) スピーカー
3) 単色LED/フルカラーLED
4) 8x8ドットマトリクスLED
5) 7セグメントLED
6) 無線コントローラーのバイブレーター

が登場し、プログラミングで扱ってきました。
これら入力‐出力の組合せに、プログラムの数を掛け合わせた分だけ、アイデアが生まれます。





例えば、今タームだけでも、
a-5) カウンター(野鳥の会・交通量調査で使われる数取器)
b-3) 障害物探知ソナー(距離をLED点灯数で表現)
b-5) 来店カウンター(客入りを数える)
b-5) 自動計測ストップウォッチ
c-2) シンセサイザー?(色を見て音で表現)(*2)
d-3) LED調光器
d-5) デジタル電圧計
e-2) シンセサイザー(周囲の明るさに応じて音の高さが変わる)
e-3) 照度計(明るさメーター)
g-5) スロットマシン(ゲーム)

のようなアプリケーションに触れました。

 つまり、ボタンを押して決まった光や音を出すだけでなく、数値(デジタル/アナログ)で入力できる情報を1~2行の計算式で変換して、別種の物理量をもった現象として出力できるのです。

これができるのは、人間がやりたいことを先ず言葉で表現し、手順を論理的に組み立て、プログラミング言語に書き下す能力と環境が揃っているからです。


 もちろん、タッチセンサーも、タクトスイッチも、超音波センサー、ボリューム、光センサー、LED、7セグ、スピーカーに、モーターも繋いで高機能なロボットを製作することだってできます。


ただ、マイコンの手足(入出力ピン)の数という“物理的限界”がありますし、アナログ入出力が可能なピン数にも限りがありますから(*3)、そのような制約下で如何にうまく機能を実現させるかも、設計の範疇(はんちゅう)です。


扱うマイコンや開発環境によって違いがありますので、一般的には、仕様書を読み解きながら、必要なデバイスとピン接続を選定し、プログラミングで機能を統合させることもエンジニアの営みです。
とても総合力が強化される(頭が良くなる)場面ですので、自らの設計で、電子機器やロボットの製作を早めに経験して、趣味にして欲しいと思います(*4)。


 ここで、カウンター(計数)プログラムのテクニックをおさらいしておきます。
b-5) 来店カウンターにおいて、高速に繰り返すループ関数(メインルーチン)の中で「検出した距離が短かったら、カウントアップ」という論理だけをコーディングすると、客がセンサーの近くにいる間めまぐるしくカウントアップしてしまいます。
短い距離を検出してカウントアップしたら長い距離を検出するまで何もしないで待つ」ことで、一人ずつ数えられるようになりますね。


そのために、while文を使います。
while文は、繰返し機能をもったif文のごとく、条件式が成立する間だけ中身を繰り返します
繰返し命令文にはfor文もありましたが、for文は、決まった回数だけ繰り返す使い方が主であるのに対し、while文は、繰返し回数が不定であるような条件下でよく使われます(*5)。


 なお、a-5) 手押しカウンターの場合も、loop(){ } の中で、

if( digitalRead(D2) == HIGH ) {
  // D2接続スイッチが押されたら
  count++;  // カウントアップ
}

と書くと、スイッチを押している間中カウントアップしてしまいますが、

#include
  // スイッチ(Button)ライブラリ読込み

Button SW = Button(D2, HIGH);
  // D2接続スイッチにSWと命名するおまじない

SW.listen();
          // 押下状態を問合せ

if(
SW.onPress() ) {
  // もし押されてたら
  count++;            // カウントアップ
}

のように onPress() を使えば、一度スイッチを離さないと次のカウントアップがされなくなりますので、便利です(*6)。


このような誰かが用意してくれた便利な関数は、“ライブラリ”という仕組みから呼び出し、準備するためのおまじないを唱えて、大いに利用させてもらいましょう。

 次月からの夏タームは、お待ちかね、サーボモーター式アームロボットの製作です。


*1 電化製品のことを英語で electrical appliances(電気的な応用物)というくらいです。

*2 色相(色味情報)だけを抽出し、色相環でいう角度 0~359°を音の周波数として再生しました。

*3 アナログ入力にはA/D変換器、アナログ出力にはPWM波形生成器という特別な内部回路が必要ですので、全てのピンに機能を持たせることはしません。

*4 仕事や趣味で電子機器やロボットを扱うと、理科(電子回路)、数学、国語・英語(仕様書・説明書)、プログラミング的思考力などが複合して問われます。
そして、技術の日進月歩により、自然に毎日が勉強です。楽しくなりますよ!

*5 while(条件式) は for( ; 条件式; ) と等価ですので、for文の方が高機能であり、while文+α(初期化+後処理) の機能をもちます。

*6 代わりに isPressed() を使えば、digitalRead(D2)==HIGH と同じように、スイッチを押している間中カウントアップすることもできます。


2. 今月の課題


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

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

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


 <アドバンスコース>
  - オリジナル図面プリント《新規スタート》
  - 上記授業内容を精読する


 <プロ2年目コース>
  - 上記授業内容を精読する(該当テキストページを見ながら)
  - プログラム[USS_8LED]をベースに、接近するほどLEDが多く点灯し、警告音がけたたましくなる障害物検知アラームをプログラミングする
  (3種以上の警告音を自分でデザインし、鳴らし分けること)


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


 8/13(日)を休む為、東福間プロ・小倉北・南教室の8月第1回は一週前倒しになります。

 日付の()は臨時、!は原則外、?は予定の意です。

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

[東福間]第1・3土原則
   - 10:30~ ミドル/アドバンス
   - 13:30~ ベーシック/プライマリ
  (- 15:30~ ミドル/アドバンス振替)

 ・7/1, 15,  8/5, 19,  9/2, 16


[東福間プロ]第2・4日原則
   - 12:45~ プロ2年目

 ・7/9, 23,  8/6!, 27,  9/10, 24


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

 ・7/ 8 第1回 2F会議室1
 ・7/22 第2回 3F会議室2
 ・8/12, 26,  9/9, 23


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

 ・7/ 2 第1回 ムーブ5F大セミ
 ※7/16 第2回 シティプラザ601会議室
 ・7/30!, 8/20,  9/3, 17

 ※代替施設『商工貿易会館(シティプラザ)』での開催となります。
 ※7/16 16:45~19:45 アドバンス テクニカルコンテスト(ライントレーサ)コース説明・製作・予行


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

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

 ・7/8(10:00), 22,  8/12, 26,  9/9, 23


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

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

 ・7/1, 15,  8/5, 19,  9/2, 16


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

 ・7/9, 23,  8/6!, 27,  9/10, 24


4. お知らせ

 1) 5教室合同アイデア発表会 開催!!
  7/25(火)アクロス福岡でアイデアコンテスト九州地区大会(初)が開催されます。
  全国大会はレベルが高すぎますので、発表をするも聞くも、あまり気負わずに親子で楽しめると思います。

  小倉北教室の昼休み時間にアイデア発表会を開催しますので、親子で是非ご参加下さい。
  先ずは宣言しちゃって、やる気になってみよう! 頑張ってロボットをひねり出そう!

  ■7/2(日) 11:45-12:45 男女共同参画センター(ムーブ) 5F
  【発表シート】6月第2回授業で配布した『コンセプト発表用 連想シート』または任意の紙面
  【発表内容】「こんな(名前の)ロボット作ろうかなと思ってます」程度の意気込み(ロボットは不要)
  【発表形式】1人1分程度(プロジェクター・マイク使用)

  ■7/16(日) 11:45-12:45 商工貿易会館(シティプラザ) 601会議室
  【発表シート】7月第1回授業で配布する『アイディアシート』または任意の紙面
  【発表内容】「こんな(動きの)ロボットを作るつもりです」程度の意志表明(ロボット披露も可)
  【発表形式】1人2分程度(プロジェクター・マイク使用)


 2) 4教室合同ライントレーサ コース説明・製作・予行!!
  7/25(火)テクニカルコンテスト九州地区大会に出場できるアドバンスコース生向けに、コース説明・製作・予行を開催します。奮って参加下さい!

  ■7/16(日) 商工貿易会館(シティプラザ) 603会議室(小倉北教室アドバンスコース授業後)
  【第1部】16:45-19:45(出場者)
  【第2部】20:00-21:30(希望者のみ)

  単純なメカニズムなのに奥深いライントレーサ。
  来年からプログラム制御型に移行する可能性が高く、アナログな力学的センスで戦う最後の大会になるかもしれません。
  そして、同じパーツを使っているのに、圧倒的に速い猛者マシンをその目で確かめて下さい。


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

  アイデア部門:7/21(金)九州本部必着にて、所定の応募用紙・プレゼン動画(3分以内)を提出
 テクニカル部門:7/19(水)までに教室長へご連絡の上、7/25(火)九州地区予選に出場

  今年は初の試みとして、7/25(火)アクロス福岡でアイデア部門の九州地区大会も開催されます。
 (従来は書類選考のみ、テクニカル部門のみ予選レース開催)
  はっきり言って、ハードルはかなり低い!
  発表練習のみならず、他教室の面白アイデアを伺うチャンス!
  福岡県内の皆さんには、地の利があります。ご家族で参加しましょう!

  アイデア地区大会:7/19(水)大会本部必着にて、所定の申込用紙を提出

 《全国大会・地区大会 観覧申込み - 7/5(水)正午~受付開始》
  http://kids.athuman.com/robo/event/convention/2017/


 4) アドバンスプログラミング(アドプロ)コース動画
  9月~プログラミング対応に革新されますアドバンスコースのイメージ動画が公開されました。

  ■ライントレーサー
  https://youtu.be/pLHUaj2F1HE

  ■木琴ロボ
  https://youtu.be/7IK2nweoSbU

  ■二足歩行ロボ
  https://youtu.be/O500P3GurEI

 《プレスリリース》
  https://www.josys.jp/instrument/humanac201705


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

  ◆プライマリ【4名平均 図面5.0】
   5点…廣渡[東福間1], 河原[中間1], 渡邉[中間1], 村田[小倉北 年長]

  ◆ベーシック【33名平均 図面3.2+設問3.2=6.4】
   10点…桑村[中間3], 谷川[八幡東4], 橋本[小倉北3]
   9点…佐藤[東福間4]
   8点…川村[中間4], 宮尾[八幡東4], 荒木[小倉北3], 宮田[小倉北4], 荻山[小倉南3], 波多[小倉南4]

  ◆ミドル【12名平均 図面4.0+設問2.9=6.9】
   10点…吉良[小倉南6]
   9点…田中[東福間5]
   8点…岩熊[中間6], 山本[中間5], 劉[小倉北7], 辻[小倉南6]

 《景品の製作ページ》
  http://robocobo.blogspot.com/


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