課題研究 テーマ決め

すっかり更新していませんでした。課題研究について。
というか、メモしようが無い気もしますが・・・。

課題研究では、
1.企画書を書いて、
2.計画を立案して、
3.PDCA回して、
4.1年間でどれだけ完成に近づけるか

という内容をやっております。

3年生を対象に実施しておりまして。
情報コースの生徒が本校でどれだけの能力を身につけたのか。
それがしっかりわかる内容になっているので、教員側も内心ヒヤヒヤしています。
私の授業は大丈夫だったのか。伝えたいことは伝えられていたのか、なんてのも丸わかりですからね・・・。

簡単にジャンル別で集計したところ、初動では下記の内容でそれぞれが取り組んでいます。
もうちょっと面白い内容があっても良いもんですが、それもまたオイオイ。


課題研究:初期テーマ決め ジャンル別集計

1.webプログラミング
(chat)

2.VR/AR
(ARフィギュア・関節で動かす)
(VR動画)

3.動画・アニメーション
(AnimeEffects)
(cherry・moviemaker・photoshop)
(plafla)
(パラパラ漫画 手法未定)
(flashアニメーション・絵本)
(adobe)
(無声映画の作成)
(2DCGアニメーション)
(プロジェクションマッピング)

4.DTM
(remixを中心)
(ボーカル音声ソフト)

5.プログラミング
(ゲーム・unity)
(ゲーム・環境未定)
(シューティング・言語未定)
(JAVAでCHAT)
(Scratch・クイズゲーム)
(ゲーム・CLICKTEAM)
(人生ゲーム・言語未定)
(パックマン風ゲーム)
(ホラーゲーム スマホ風)

6.3D
(3Dモデルの作成・blender)
(MMD動画・モーションの作成)
(3Dモデルの作成と制御)

7.グラフィック
(絵を描く・手法未定)
(2Dキャラクターの作成)
(写真の撮影と加工)
8.AI
(応答キャラクターの作成)

9.他
(エフェクト効果の作成)


足らない機材や、学校のPCでは動かないソフト(unityは厳しそう)もある中で、
彼らがどう試行錯誤するのか楽しみです。

情報テクノロジー 第10回 スイッチを使おう(3)完結編

最後のダメ押しで、
1.理解していて、発展課題に取り組む組
2.再度説明が必要で、復習課題に取り組む組

に分けて実施しました。次回からは少人数で、様々なテーマでPDCA回しながら開発をさせてみたいと思います。
※実はテーマとして、肢体不自由など特別支援系のユーザーにとって、使いやすいデバイス開発 という物があります。
※パラリンピックにも掛けさせて貰って、特別支援学校と連携しながら進めたいなって。形になったら持って行こうかと。

以下原文


スイッチ最終回です。
次回からは、更に小さな班(2名程度)に分かれて、課題をクリアしていきましょう。

【最終課題】
Step3.歩道などに設置されている、押しボタン式の信号を作ってみよう。

フロー(流れ)
 赤→ ボタンを押す → 青(10秒) → 青点滅(1秒間隔で3回) → 赤
————————————————————————————————————————————————-
提出物
完成したSTEPのソースコードの写真 と 映像
(STEP2も含めて提出しましょう)

※班員の番号を全員分、記載しておくこと。
————————————————————————————————————————————————-
参考資料

【前回のSTEP2:プログラムの場合】
void setup() {
pinMode(7,INPUT) ; //スイッチに接続ピンをデジタル入力に設定
pinMode(13,OUTPUT) ; //LEDに接続ピンをデジタル出力に設定
}

void loop() {
if (digitalRead(7) == HIGH) { //スイッチの状態を調べる

//スイッチON
//5回繰り返し
digitalWrite(13,HIGH) ; //LEDを点灯
delay(500)
digitalWrite(13,LOW) ; //LEDを消灯
delay(500)
//5回繰り返し
digitalWrite(13,HIGH) ; //LEDを点灯
delay(500)
digitalWrite(13,LOW) ; //LEDを消灯
delay(500)
} else {
//スイッチOFF

digitalWrite(13,LOW) ; //LEDを消灯
}
}


あえてForやWhileは使っていません。
自分達の知識で、どこまでたどり着けるのかをはかっています。
提出された物を適当にピックアップ。なんだかんだ、出来てますね。

情報テクノロジー第9回  スイッチを使おう(2)

第8回では授業展開に失敗し、イマイチ教育的効果というか、
「学んだ」という手応えにかけるので再度実施しました。ゴメンよ生徒。

前回同様に班を変えた上で、班員の一部だけではなく、
全員が理解して取り組めるよう解説を入れました。

以下原文


・スイッチの動作を理解しよう。
・プログラムの意味を理解しよう。

2つをあわせて、下記の動作を実現しよう。

Step2.スイッチを押したら、LEDを5秒点滅させよう。
 (押していないときは光っていても、消えていても良い)

Step3.歩道に設置されている、押しボタン式の信号を作ってみよう。
フロー(流れ)
 赤→ ボタンを押す → 青(10秒) → 青点滅(1秒間隔で3回) → 赤

提出物
完成したSTEPのソースコードの写真 と 映像

参考資料

【前回のSTEP1:プログラムの場合】
void setup() {
pinMode(2,INPUT) ; //スイッチに接続ピンをデジタル入力に設定
pinMode(13,OUTPUT) ; //LEDに接続ピンをデジタル出力に設定
}
void loop() {
if (digitalRead(2) == HIGH) { //スイッチの状態を調べる
digitalWrite(13,HIGH) ; //スイッチが押されているならLEDを点灯
} else {
digitalWrite(13,LOW) ; //スイッチが押されていないならLEDを消灯
}
}

【スイッチの動作説明】
※添付画像参照
 タクトスイッチは4本のリード線(端子)が出ていますが、写真の様に足が出ている側面の方向同し(3と4)がボタンを押した場合につながります。

 押していない状態では(1と3)(2と4)がつながっています。

※(1と2)または(3と4)はつながっていない。
※実質的には、押すと全て(1,2,3,4)がつながります。


添付画像は他サイトの物を引用しましたんで、ここでは省略致します。
今回は解説したせいか、全員がスイッチの仕組みとプログラムを理解した上で取り組めていたようです。
以下提出動画の一部。


この、大人目線では本当に些細な気遣いが、授業ではいかに重要なのかを再度痛感させられました・・・。
もう!失敗は!しないんだから!!!!!

情報テクノロジー第8回  スイッチを使おう(1)

再度、班をシャッフルさせ、全員の理解度を確認しました。
内容としては、タクトスイッチとLEDの物理的な連動と、プログラムでの制御です。

以下原文


Step1.スイッチを押している時だけ、LEDを光らせよう
(プログラムで制御しなくても良い)

Step2.スイッチを押したら、LEDを5秒点滅させよう。
 (押していないときは光っていても、消えていても良い)

提出物

Step1.2のソースコードの写真 と 映像
Step3まで行った班は、それも提出すること。

参考資料
http://www.geocities.jp/zattouka/GarageHouse/micon/Arduino/SWtoLED/SWtoLED.htm
http://www.seminar.aizu.or.jp/1-arduino-switch/
など


STEP1では、接点さえ理解できれば豆電球を光らせる小学校の実験と同一です。
STEP2への布石だったのですが、問題の出し方が悪かったようで・・・「全滅」

何と一時間をコレで無駄にしてしまいました。
最後までヒントを渋った私も悪いのですが・・・思いつけるように誘導してあげればよかった・・・。

終了時にネタばらしをしたら、こぞって休み時間で完成させておりました。
抵抗など一切使わない状態ですが、一応提出物を添付しておきます。

社会と情報 第3回(情報システムの例:GPS・POS)

第3回では、情報システムの例について触れました。

スライドを貼っておきます。(手抜き)

カーナビの例では、TOYOTA社が公開していた「通れた道MAP」を紹介しました。
1時間以内に通れた道、24時間以内に通れた道、などユーザーから得られたビッグデータをとても有効に活用した例だと思います。
熊本地震(2016)の際には、大変感動したものです。

POSシステムの例では、コンビニなどでは年齢や性別キーを最初に入力し、データ化しているという話を交えつつ、
実際にシャーペンや消しゴム、身の回りにあるJANコードで検索させました。
(大抵の商品はJANコードで検索するとHITする)

POSやコード化(バーコード)の仕組み、ディジタルディバイド(情報格差、値段やレビュー)に触れて、第3回目を終えました。

やっぱり、社会と情報はうまく授業が出来ていないせいか、ここで報告するのにも力が入りませんね・・・
みんなごめん・・・orz

社会と情報 第2回(情報システム)

忙しいとついつい更新が後回しに。
本日からテスト期間にはいりましたので、(部活がない分)少し余裕が出来ました。

さて、第2回では情報システムについて取り上げました。

最初にENIACやENIGMAの話題に触れつつ(趣味)導入として、

昨今の情報システムは様々なシステムが連携して動いており、主なシステムとして以下の4つがあると述べています。
(もっとあるのはわかっているけども)

計算システム:構造解析・気象データの解析など「計算」能力を使う
通信システム:電子商取引・地震データの送受信など「通信」能力を使う
データ管理システム:住所録など「データベース」といわれる能力を使う
制御システム:自動運転(電子制御)など「制御」能力を使う

本来であればもっと深く掘り下げるべきなんでしょうが、この単元では「暗号化」が入ってくるのでそちらを重点的にやっています。
今回はシーザー暗号について触れました。

学校名などをK=3で暗号化した状態で提示して、
複合化(平文へ戻す) というような作業をさせています。

思いのほか時間が掛かってしまい、第2回はここで終了となりました。
※続けて第3回も更新してしまいます

人感センサーの使用例

こ、これは・・・!

Arduino+センサーを授業で取り扱っている身としては
是非とも子供達に紹介したい製品を見つけてしまった。
完全に人感センサー。 分解したら何が入ってるんだろう。
Arduino入ってないかなあ・・・?(入ってない)

でも、この手の身近な製品程度なら君たちはもう作れるんだよって
気付かせてやりたいなあ。気付いてくれないかなあ・・・。



社会と情報 第2回 情報システムと暗号化

最近「情報の科学」や「情報テクノロジー」の授業ばかり更新している。
・・・社会と情報も更新しておかねば。

なぜ社情の更新が遅れるかというと、

ズバリ私が自分の授業に満足していないからです。

ハッキリいって、不満です。
酷いにもほどがある。人様に見せられる状態じゃないのです。

でも更新。

第2回では情報システムの歴史や経緯、現代の情報システムの説明や解説をしたうえで、
暗号化について触れました。
流れとしては、解説→板書→解説→暗号化 です。
複合化や暗号化の実習としては定番のシーザー暗号を使用しました。

もうちょっと、まともな資料と、まともな構成で授業をしてやりたい。
そんな思いは確かにあるのに、どうしても日々の雑務に時間を取られてしまう。
もしくは、そんな言い訳に逃げて、しっかり向き合えていないのかもしれない。

※社会と情報に関しては、他の教員(3人体制)と足並みを揃える関係で好き勝手やれていない、というだけの可能性もあります。

なんにせよ、しっかりしなくては。
反省の意味も込めて、社情もしっかり更新したいと思います。

情報テクノロジー第6回 センサーを使ってみよう。

社情や情科も進んではいるんですが更新が追いつかず。
Webベースで授業すると自分でも振り返ったり、まとめるのが楽で良いなあ(本音
コレはおそらく生徒も一緒だと思います。

G-suite、なかなかどうして良いのでは!?


さて、第6回です。
今まではArduinoの使い方、出力の仕方、PWMについて、を学びましたので、
次は入力です。主に超音波センサーの信号を受信してみよう、という物でした。
例によって、課題をそのまま記載します。
サンプルコードは
http://deviceplus.jp/hobby/entry016/ さんの物を参考に一部加工したものです。


超音波センサーを使ってみよう。
【sensor】
#define trigPin 2
#define ehoPin 3

double Duration = 0; //受信した間隔
double Distance = 0; //距離
void setup() {
Serial.begin( 9600 );
pinMode( echoPin, INPUT );
pinMode( trigPin, OUTPUT );
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite( trigPin, HIGH ); //超音波を出力
delayMicroseconds( 10 ); //
digitalWrite( trigPin, LOW );
Duration = pulseIn( echoPin, HIGH ); //センサからの入力
if (Duration > 0) {
Duration = Duration/2; //往復距離を半分にする
Distance = Duration*340*100/1000000; // 音速を340m/sに設定
Serial.print(“Distance:”);
Serial.print(Distance);
Serial.println(” cm”);
}
delay(500);
}

まずは実装!!

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
課題1
距離が測定できている時に、LEDを光らせてみましょう

課題2
距離が一定数(50㎝とか)以上近付いた場合、LEDを光らせてみましょう


ここまででした。
今回はプログラム班と回路班を入れ替え、相互に教え合いながら作業させました。
※普段4~6名の各グループ内で役割分担をしている
※プログラムと回路それぞれ2~3人ずつの配置

流石に最初は難航し、お互いがお互いに思うようにいかずモヤモヤしていたようですが、15分もしたら完全に熱中して真剣に取り組んでおりました。

しかし、流石に時間ロスが大きく、課題1までが限界だったようです。
休み時間も使いましたが、課題2まで終わった班は皆無でした。
※まあ、IF文をきちんと復習していない所為でもある。

彼らが2年時に既習しているのはJavaScript,
今使っているのはC++。

そりゃあスンナリいかないよね。

でもいいんです。
色々ぶつかって、間違えに間違え尽くして、学習していただきたい。

なお、今回一番多く見られたミスは、
「pulseIn」のIが大文字ではなく小文字だったり、Lの小文字だったりしたことです。
私としてはコピペでも良いと言っているのに・・・。
まあでも、コレで次は間違えないね!

最後に例のごとく、提出された動画を載せておきます。
「距離が測れていると分かるように撮影しなさい」
と言いましたが、時間も無い中でなかなか難しかったようです。

うーん、撮影も惜しい!

情報の科学 第3回 (データ量の話)

先に結論からいおう、ファイルサイズ問題は終わらなかった・・・。
授業研究が圧倒的に足りていない。
完全に私の力量不足、指導力不足である。

つい、雑談に逃げてしまう癖をなんとかしたい。
「BLOG書いてる時間で明日の教材研究をする」 だけで格段に良くなるだろうに。
ただまあ、それでも更新は続けたいと思う。
いつかきっと、未来の私、もしくはどこぞの誰かの役に立つことを願う。


さて、今日はファイルサイズについて授業を行った。
私が教えている2年生は、過去何度か触れているとおり1年次で社会と情報を履修しており、情報の科学を履修するに当たって重複した内容は簡単に復習するだけで、そのほとんどを省いている。
今回は授業冒頭に基数変換の確認をし、Excelの関数やその特徴を見直した上で、下記の流れで授業を進行した。

【データ量の話】
1.コンピュータ上において情報の最小単位はビット(bit)である。
2.8bit=1byteで、以降は1024倍ごとにKB,MB,GB,TB…と続いていく。(国際単位系・SI)

【画像のデータ量】
前々回(第1回)で学習したとおり、画像はピクセルの集合体である。
仮に下記のような5px*5pxの「モノクロ」画像があったとしよう。(実際にはホワイトボードにマス目を投射して板書した)

データ量

1.このとき、画像の「マス目」は5*5の25マスになる。
2.各マス目は、「白の時は0,黒の時は1」としてコンピュータ内で処理されている。
3.つまり、「各マス目の情報量は0か1の1bit」となる。

計算式は下記の通り。
5×5×1=25(bit)
25÷8=3.125 (bit→byte)
ファイルサイズ:約3byte


ここまで説明して、下記の流れへ進んだ。

【例題】
200px*100pxのモノクロ画像 の データ量はいくつか?

1. 200(px)*100(px)*1(bit)=20000(bit)
2. 20000÷8= 2500(byte)
3. 2500byteは約2.5KB

※2.4KBとすべきなのかどうかで悩んでしまった。どちらで指導するのが正解なのか・・・。
※便宜上1000で割るか、1024で割るかはケースバイケースで、試験問題なんかだと単位計算についての指示が書かれていることがほとんどである、とは伝えてある。


ここまでで終わってしまった。(時間切れ)

次回は【実際に作ってみよう】 の回。
mspaint(Windows標準搭載のペイントソフト)で100*200のモノクロビットマップを作成させ、ファイルサイズを確認させたい。また、「カラー画像(24bit)の場合はデータ量はどうなるのか」を考えさせた上で、再度作らせ反応を見てみたい。
※この時、各マスの情報量がRGBの8bit*8bit*8bitで24bitとなることを上手く伝えていきたい。

なお、フライング気味ではあるが、私が実際に作ってみた場合は下記のとおりである。

モノクロビットマップ
200px*100px
size:2.79KB (2862byte)

24bit.bmp
200px*100px
size:58.6KB (60054byte)

どんな色を設定しようが、ファイルサイズは変わらない。
興味のある人は是非試してみてほしい。