福野泰介の一日一創 - create every day

初めて触るキーボードの気持ちが蘇る「かたかなろーまじゲーム」品川区こどもプログラミング発、小学1年生のアイデア

2018/09/25
#codefor #shinagawa #IchigoJam #KidsIT 

品川区アイデアソン参加最年少の小学1年生の女の子。
こどもプログラミングからの連続参加、その時のレポートを「IchigoJamはかわいいよ」と夏休みの自由研究にしてくれてました!

はんだづけがとっても気に入った様子!カラフルパーツでオリジナルづくりもポイント高かった。


はんだの絵、はんだごての絵、イチゴの絵、かわいい!うれしい!
きれいなはんだづけの仕上がり!6歳でもはんだづけ、いけます。


こどもプログラミングイベントで出してくれたアイデア「かたかなろーまじゲーム」。
キーボードからアルファベットを探すのが難しかったことからの発想。
たしかに、小学生高学年と一緒にやるプレッシャーを感じちゃったかもしれない。
でも、しっかり自分で打っていてエラかった!

ってことで、実現してみました「かたかなろーまじゲーム」

10 VIDEO3:CLS 20 S="3E456TGH:BXDRPCQAZWSUI1,KFV2^-JN]/M789OL.;_0Y" 30 CLT:FOR I=1 TO 10 40 N=RND(45):LC7,5:?CHR$(177+N) 50 K=INKEY():IF!K CONT 60 IF K!=ASC(S+N) BEEP20:GOTO50 70 BEEP5,5:NEXT:?TICK()/60

カタカナが表示されるので、対応するキーをすばやく探して押すゲーム。10問クリアでタイムが秒で表示されます!

これが結構難しい!
昔かな打ちしていたこともありましたがすっかり忘れてます。
キーボードを初めて使った頃の大変な気持ちを思い出せて、おもしろい!

プログラム、20行の謎の文字は、アイウエオ順に対応するアルファベットや数字などを並べています。

アイウエオ 3E456 カキクケオ TGH:B サシスセソ XDRPC タチツテト QAZWS ナニヌネノ UI1,K ハヒフヘホ FV2^- マミムメモ JN]/M ヤユヨ 789 ラリルレロ OL.;_ ワン 0Y

*ヲはシフトおしながらワの位置なのとキャラクターコード的にちょっと特殊なので省略

?CHR$(177) ア

40行の177は、アのキャラクターコードです。45種類のカタカナからランダムに出題。

子供と勝負するときっとわかりますが、覚える速さは子供のほうが上!
IchigoJam BASICを使ったワークショップをする際は、最初はゆっくり待ってあげましょう。
そのうち、どんどんキーボード打つ速さが上がってきます。

使えば使うほど速くなるキータイプは、現代プログラミングの基本。
打つのが速い子は、足が速いコ以上にモテるはず!

links
- 自転車との共存を実現するアイデア「チャリナビ」品川区恊働アイデアソン with Code for Tokyo, Sabae
- 温度と湿度から空気中の水分量を計算するアプリ - 水蒸気量計算機
- 地図アプリでふりかえる、センサーとまちあるき!まちをよくするアイデアとIchigoJamプログラミングつぎのいっぽ
- こどもも大人もコードフォーじぶんのまち! 品川区はんだづけ&センサー入門、練馬区IoT資料 - with PCN

自転車との共存を実現するアイデア「チャリナビ」品川区恊働アイデアソン with Code for Tokyo, Sabae

2018/09/24
#codefor #shinagawa #doc 

地域課題をITで解決!品川区のオープンデータに関する行政と市民・民間の恊働の取り組み、第二弾はアイデアソン!
ミニコンピューターでセンサーを集めた「こどもプログラミングイベント」や、鯖江のIoTやさばれぽなどの事例をインプットし、午後からいよいよアイデアづくり!


アイデアソンスタート!
参加最年少!前回のこどもプログラミングイベントに参加の小学1年生の女の子。


かけ算ストーミング
2人がそれぞれ3つ出した名詞で表を作って、新サービスや新商品をすばやく書いていくウォーミングアップ。
くだらないアイデア歓迎!まずは質より量!
アイデアは既存の何かの組み合わせ、苦手意識を飛ばしましょう。


続いて本番、それぞれが思う地域課題、どんなデータで解決しそう?
できたシートをテーブルにおき、ぐるぐる回って、星をつけて、上位7アイデア+情熱枠で全8チームが組成。


模造紙へのまとめかた指南。囲みとゆるくてOKなイラストがポイント。


発表!
アイデアソン会場真ん中には託児スペースがあり、終始子供の楽しそうな声や、時には泣き声聞こえるステキ空間でした。


我々チームのテーマは、自転車との共存を実現「チャリナビ」
人の多い東京、歩行者で埋まる歩道、車でうまる車道、ココに来て自転車の人気の高まりと、道路交通法の改正による混乱が広がっているとのこと。

自転車に乗る人にとって、快適で安全なルートを案内したり、自分のチャリ歴を便利に管理する機能を提供することで、凸凹情報や各地の環境情報などのサイクルログデータを集め、より良いチャリ環境創りにつなげようというアプリ。 ポイントが溜まったり、車だったら、電車だったらかかったはず料金を可視化することで、お得感の演出もいいかも!?


アイデアまとめグラレコ!


グラレコされたIchigoJam、かわいい


こどもプログラミング、本日のアイデアソンときて、次はいよいよハッカソン!
2018.10.13-14「第3回ワークショップ 〜課題解決策を実現するアプリ試作のハッカソン〜
品川区民の方も、そうでない方も、地域課題解決に興味がある方、ウェブやアプリ開発で腕試ししたい方、ぜひどうぞ!

Microsoft、Adobe、SAPが連携してオープンデータ推進という大発表!
[速報]マイクロソフト、アドビ、SAPが提携「Open Data Initiative」発表。データモデルを統一して3社横断のデータ分析や連係が可能に。Microsoft Ignite 2018 - Publickey

コンビニのトイレ、企業内の貸せる会議室、民間避難施設、商品データ、利用統計データなど、つなげると価値が増大する民間オープンデータ。
次世代ウェブと次世代社会創り、加速していきそうです!

温度と湿度から空気中の水分量を計算するアプリ - 水蒸気量計算機

2018/08/13
#opendata #shinagawa 

品川をプログラミングをよくする先日の品川区イベント」のアイデアの一つ「Temphum」

温度と湿度をいろんなところで測るおもしろさをみんなに知ってほしいとのこと!楽しかったですね。


温度と湿度から計算できる不快指数に加えて、空気1m3中に含まれる水の量を計算するアプリを作ってみました。
飽和水蒸気量(Wikipedia)にある近似式で飽和水蒸気圧を求め、湿度(Wikipedia)の飽和水蒸気量を求める近似式で、計算します。


飽和水蒸気圧と飽和水蒸気量を検算してみるためにグラフ表示してみました。飽和水蒸気量(Wikipedia)にあるグラフや値と同じなので、大丈夫そう。


品川まちあるきオープンデータの 14.csv を使って計算してみると、建物の外と中とで、空気中の水蒸気量が違うことがよく分かります。 日があたって温度が上がると連動して湿度が下がるのは、飽和水蒸気量が増えても水蒸気量は一定なので、相対的に湿度が下がるわけですね。

湿度がある程度高い時、温度が下がると急激に飽和水蒸気量が減るので、あふれた分が水となって結露するわけですね。
湿度より、水蒸気量を表示したほうがその場の空気感が分かりやすいという発見!

温度と湿度の計測、なかなか楽しいものですね!

地図アプリでふりかえる、センサーとまちあるき!まちをよくするアイデアとIchigoJamプログラミングつぎのいっぽ

2018/08/12
#opendata #IchigoJam #KidsIT #shinagawa #codefor #PCN #maker 

じぶんでつくったパソコンにセンサーを搭載して、品川をまちあるき!

IchigoSensors opendata - 品川まちあるき
温度、湿度、UV、音量、速度をみちびき対応GPSで取得した位置情報と合わせて印刷して二次利用可能な国土地理院地図にマッピングするアプリ作りました。


まちあるき前、THETA、360度写真!グループに分かれ、それぞれスタッフが2名程、同行します。


パソコンはんだづけしたDay1に続く、Day2は、IchigoSensorsを持ってまちあるき!


防災ヘリポートの中央でTHETA、360度撮影。マリオギャラクシーみたいでしょ?


楽しそうな遊具には釣られて、たこさん公園の計測スタート


たこさん内部!


たんけんセットにmicroUSBケーブルをかませて、袋にモバイルバッテリーを入れる工夫


セミ発見!


セミの抜け殻ゲット!なんと、通販で買える時代!


水の近く、温度は?湿度は?


こどもが発見、みみずを食べているトカゲ、SR!


品川区役所内の発電量の電光掲示、リアルタイムオープンデータ化すると公園の日射量参考になりそう。


気がついたことは何でもメモ!品川区では標準装備という、たんけんセットが活躍


ヒヤリハット地図、いろんな地図と重ねてみるのもおもしろそう?


打ち水でどのくらい温度は下がるのか?湿度はどうなる?データと合わせてコンクールに出してみるのもいいですね。
打ち水大作戦しながわ2018|品川区


データ計測のため協力していただいた「品川区立豊葉の杜学園
最近の体育館はアリーナと呼ぶ?体育に限らない多目的感?


まちあるき終了、一時回収、IchigoROM、17人分。歩いて集めたデータがつまってます!


USBシリアルでパソコンに取り込み、早速オープンデータ化。地図を印刷してアプリづくりの参考にしてもらいます。


まちあるきの体験や、いろいろメモをもとに、誰に、どんなアプリをつくるか考えて、絵にしよう!
母親、妹にヒアリングして、ほしいというアプリを40コ集めた便利アプリ集!


夏のまちあるきで、おじいちゃんを助ける雪案内という発想!


紫外線から逃げよう、UVescape(ユーブイエスケープ)、名前もいい!


データを計測することそのものが楽しかったからそれをアプリに!?
全員全く違う、17のステキアイデア、それぞれ一人ずつ発表してもらいました!


自分でつくるアプリづくりのだいいっぽ、画面と大まかな動きをつくる技を伝授する、プログラミング講座、つぎのいっぽ!(はじめのいっぽ@Day1

CLS、LC、?(PRINT)、WAIT、GOTO、IF INKEY()=0 CONT を使いこなせるようになれば、アプリのプロトタイピング(試作)や、アニメーション、パワーポイント代わりにプレゼン資料づくりだって自由自在! (参考、シニアハッカソン 2014年

容量が足りなくなったら、LRUNでつなげばOK!IchigoROMがあれば、合計68ファイルつなげるよ。
詳しくは、IchigoJam BASIC-日本語辞書、リファレンスを見たり、いろいろ実際試してみよう!


カタカナキーでローマ字入力、自分だけのアプリづくり、いけそうかな?
IchigoJamプリント」や「はじめてのプログラミング」など、オンライン教材もいろいろ!
自分のペースで、自分の好きなものからチャレンジするのが上達の近道。
コンピューターは一番身近な外国人、仲良くなってね!


兄弟もひとり1パソコン!色違うから間違えない!64ファイル追加で保存できちゃう「IchigoROM」も二人分!


自分のパソコンIchigoJamとアプリアイデアシートとともに記念撮影!2日間のワークショップ、楽しんでもらえて何より!


IchigoSensors opendata
17人分+スタッフ所持(00)を加えた18人分のまちあるきオープンデータができました。
※オープンデータ:誰でも自由に加工して、販売することを含めて好きに使えるデータのこと(出典だけ書いてね)


リンクからデータ種ごとに色分けした地図や、表形式、CSVダウンロードが可能です。
ひとつ、言い忘れ。IchigoROMに記録した、みなさんのまちあるきデータ。IchigoJamで見ることができます!

LOAD120:GSB@ELIST

ずらずらっとデータが表示されますよ!取り込んだデータと同じものです。
実は、IchigoJamだけでもデータ解析できちゃいます。興味があったらチャレンジしてみてねっ

最後にファイル120、121、122に入っている、IchigoSensors用の長いプログラムを紹介。

'file 120 1 'GPS Logger 2 L=16:OUT4,-1 10 FOR J=1 TO 5 20 GSB@THI:GSB@TH:[8]=T:[9]=H:[10]=ANA(2) 30 M=0:FORI=0TO9:A=ABS(ANA(8)-270):M=M+(A-M)*(A>M):NEXT:[11]=M 40 CLS:?[3];".";[4];",";[5];".";[6],[7]:?[8]/10;" ";[9]/10;" ";([10]-310)/2;" ";[11] 50 GSB@LC:WAIT60:NEXT 70 R=FILE()+(LINE()+10)<<8:LRUNFILE()+1 80 LED1:GSB@EPUSH:LED0 90 GOTO10 600 @THI:U=95:LET[U],#062C,#4401,#8808,#884A,#4350,#0C00,#4770:U=#800+U*2:RTN 610 @TH:R=I2CR(#45,U,2,#700,6):[0]=17500:[1]=PEEK(#700)<<8|PEEK(#701):T=USR(U+2,#800)-4500:[0]=10000:[1]=PEEK(#703)<<8|PEEK(#704):H=USR(U+2,#800):RTN 800 @EPUSH:N=0:?I2CR(81,#8E6,2,#8E4,2),M:M=M+1:N=M*L*2:N=N<<8|N>>8&#FF:?I2CW(81,#8E6,2,#800,L*2):N=0:?I2CW(81,#8E6,2,#8E4,2):RTN 810 @ELIST:L=16:N=0:?I2CR(81,#8E6,2,#8E4,2),M 820 IF M FOR I=1 TO M:N=I*L*2:N=N<<8|N>>8&#FF:U=I2CR(81,#8E6,2,#800,L*2):?I;:FOR J=0 TO L-1:?",";[J];:NEXT:?:NEXT 830 RTN 840 @ECL:N=0:M=0:?I2CW(81,#8E6,2,#8E4,2):RTN 900 @LC:LET[96],640,64,#5639,#C6C,#C080,64:?I2CW(62,#8C3,5)+I2CW(62,#8C0,3,#900,16)+I2CW(62,#8C8,3,#920,16):RTN 'file 121 1 'GPS driver (R=return file | return line << 8) 300 CLS:BPS9600:UART3,2 301 K=INKEY():IF!KCONT 304 IFK!=36GOTO300 305 K=INKEY():IF!KCONT 306 IFK!=71GOTO300 308 K=INKEY():IF!KCONT 309 IFK=42UART0,0:P=#900:GOTO700 310 ?CHR$(K);:GOTO308 500 N=0 510 C=ASC(P):P=P+1:IF!CORC=44ORC=46ORC=34C=C=46:RTN 520 IFC>=48&&C<=57N=N*10+C-48 530 GOTO510 540 N=0:IFASC(P)=44RTNELSEFORI=1TOM:N=N*10+ASC(P)-48:P=P+1:NEXT:RTN 700 GSB500:M=2:GSB540:[1]=N:GSB500:[2]=N:GSB500:GSB500 711 GSB500:[3]=N:IFCGSB500:[4]=N:ELSE[4]=0 712 GSB500:GSB500:[5]=N:IFCGSB500:[6]=N:ELSE[6]=0 713 GSB500:GSB500:[7]=N:GSB500:GSB500:GSB500:GSB540:[1]=[1]+N*100:GSB500:[0]=N 800 LRUN R&amp;255,R>>8 'file 122 1 'GPS initilize (connect TXD) 10 BPS9600 20 S="PMTK314,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0":GSB200:END 200 N=0:FORI=0TOLEN(S)-1:N=N^ASC(S+I):NEXT:UART3:?:?"$";STR$(S);"*";HEX$(N,2):UART0:RTN

links
- こどもも大人もコードフォーじぶんのまち! 品川区はんだづけ&センサー入門、練馬区IoT資料 - with PCN
- IoT実験ボード「IchigoSensors」プリント基板発注 - こども霞が関見学デー満員御礼!
- PCN品川
- PCN五反田
- PCN秋葉原(ロボットなど拡張キット、はんだづけスペースもあり!)

こどもも大人もコードフォーじぶんのまち! 品川区はんだづけ&センサー入門、練馬区IoT資料 - with PCN

2018/08/11
#opendata #IchigoJam #KidsIT #shinagawa #nerima #codefor #PCN #doc 

プログラミングでまちづくりを自分ごとに!
品川区役所の提供、Code for Tokyo と Code for Sabae 共催で贈る夏休みイベントDay1スタート!

自分だけのパソコンできあがり!


IchigoJamはんだづけスタート!


はんだごてより危ないニッパー!便利な道具は時には危険。
友達を傷つけない、道具の使い方も体験と合わせて学ぼう。


みんなみるみる腕を上げるはんだづけ


14ピンソケット、5ピンソケットをカラフルなものに交換できるようにしておくとオリジナルIchigoJamを楽しめます!

カラフルピンソケット購入先
赤、緑、青、黄:aitendo(14P 35円、5P 20円)
http://www.aitendo.com/product/12743
白:秋月電子通商(14P 40円、5P 20円
http://akizukidenshi.com/catalog/g/gC-11571/
http://akizukidenshi.com/catalog/g/gC-11572/


できあがったマイIchigoJam、はじめてのタイピング、LED1


ひかった!


うれしそう!


PCN五反田、PCN札幌、PCN高専(?)協力によって、午前中のはんだづけパートスムーズに完了!
大橋編集長のプロ用小手先クリーナーがすごかった!


休み時間にも熱中、自分で作った初ゲーム「かわくだり改」
おにぎりアイテムを取ったら、自分がおにぎりに変わるオリジナル仕様!


IchigoSensorsを合体させて、試しにベランダに出てみました。一気に跳ね上がる湿度!


品川区でのまちあるき、見どころ紹介!
明日はいよいよ、自分でつくったパソコンを持ってデータ収集&アプリづくり!


資料:親子でチャレンジ まちをプログラミングでよくしよう!(Day1、はんだづけ&プログラミング)


IchigoSensorsのテストを兼ねて、品川区から練馬区へ移動!
大井町駅付近で40度オーバーを記録!移動中の電車内も不快指数は75を下回りません。


Code for Nerima 代表青木さん挨拶 & Code for Shinjuku 伊藤さん到着。


UDトークで自動的(人手による修正もリアルタイム!)に字幕が付く Code for Nerima イベント!
スポ小のプログラミング版、地域ICTクラブ、福井県でも始まってます!
福井県こどもプログラミング協議会


資料:はじめてのIoTプログラミング(大人向け)
IchigoSodaを使って、IoTプログラミングワークショップ、みんなでつくろうIoT!


不思議なつながり、愛知&札幌!


点字でメモする長谷川さん!その場で読めて便利とのこと。ITでもっと楽しく便利にインクルーシブ!


青木さん、楽しいイベント、ありがとうございました!

links
- 地図アプリでふりかえる、センサーとまちあるき!まちをよりよくするアイデアとIchigoJamプログラミングつぎのいっぽ

GPSと温湿度センサー搭載IchigoJamを連れてまちあるき、モロッコとの比較も楽しいかも

2018/07/25
#KidsIT #IchigoJam #shinagawa #africa 

8/11-12に開催される品川区でのオープンデータについて考えるプログラミングワークショップ with Code for Tokyo! 本日はテストデイとして、こどもたちが作る予定のセンサーを持って実際にまちあるきしてみました!

GPSで測位したら、正確な時間、温度、湿度を表示すると共にEEPROMへ記録(プログラムは後述)

木陰に入るとぐっと温度が下がります。

ヘリポートがある防災対応公園。

本日計測の最高温度は、41.18度!道路の輻射熱がすごく、下に行くほどに暑い様子も観測できておもしろい!
EEPROMに記録したデータは、シリアル経由でPCに取り込み、マップアプリと組み合わせて表示。
IchigoSodaで、IoT化して、リアルタイムに共有っていうのも楽しそう。

その後、モロッコからの留学生、Imaneさんと在日モロッコ王国大使館、初訪問!元福井県大使館(?)、ふくい南青山291のすぐそば!

モロッコな器、いただきました!

こちら本日活躍した、GPSを取得しながら温湿度をEEPROMに記録するプログラムです。
* GPSはシリアルへ接続、SHT31で温湿度計測、EEPROMとしてIchigoROM搭載(参考

'GPS/TH logger program save0 10 SWITCH1:BPS9600 20 U=95:LET[U],#062C,#4401,#8808,#884A,#4350,#0C00,#4770:U=#800+U*2 30 LRUN1

'GPS/TH logger program2 save1 10 L=32 20 K=INKEY():IFK!=36CONTELSECLS 30 ?CHR$(K);:K=INKEY():IFK!=10CONTELSE? 'check $GPRMC 35 A=#900:IFPEEK(A+3)!=82ORPEEK(A+4)!=77ORPEEK(A+5)!=67GOTO20 40 GSB@TH:GSB@GPS:IF!EGOTO20 42 FORI=0TO9:N=[I]:?N;",";:NEXT:?:GSB@EPUSH 43 LED1:BEEP:WAIT60*5:LED0 44 GOTO20 'ret E:enable flg, 100 @GPS:A=A+17:E=PEEK(A)=65:IF!ERTN 110 A=A-10:L=2:GSB@ATOI:[1]=M:L=4:GSB@ATOI:[2]=M:A=A+4 120 GSB@GETM:LET[3],N,M:GSB@GETM:LET[5],N,M '130 A=A+2:L=3:GSB@ATOI:[7]=M*10:A=A+1:L=1:GSB@ATOI:[7]=[7]+M 130 FORI=1TO3 132 A=A+1:IFPEEK(A)!=44CONT 134 NEXT 140 A=A+1:L=2:GSB@ATOI:[1]=[1]+M*100:L=4:GSB@ATOI:[0]=M/100+M%100*100 150 RTN 200 @GETM:A=A+2:L=3-(PEEK(A+4)=46):GSB@ATOI:N=M:L=2:GSB@ATOI:N=N*60+M:A=A+1:L=4:GSB@ATOI:A=A+2:IFPEEK(A)=83ORPEEK(A)=87N=-N 240 RTN 'A:position(move) L:length, ret M 300 @ATOI:M=0:FORI=1TOL:M=M*10+PEEK(A)-48:A=A+1:NEXT:RTN '[8]:temprature, [9]:humidity 400 @TH:R=I2CR(#45,U,2,#700,6):[0]=17500:[1]=PEEK(#700)<<8|PEEK(#701):[8]=USR(U+2,#800)-4500:[0]=10000:[1]=PEEK(#703)<<8|PEEK(#704):[9]=USR(U+2,#800):RTN 'EEPROM push (L:length) 500 @EPUSH:N=0:?I2CR(81,#8E6,2,#8E4,2),M 510 M=M+1:N=M*L*2:N=N<<8|N>>8&#FF:?I2CW(81,#8E6,2,#800,L*2):N=0:?I2CW(81,#8E6,2,#8E4,2):RTN 'EEPROM show data (L:length) 550 @ELIST:N=0:?I2CR(81,#8E6,2,#8E4,2),M 560 IF M FOR I=1 TO M:N=I*L*2:N=N<<8|N>>8&#FF:?I2CR(81,#8E6,2,#800,L*2);",";I;",";:FOR J=0 TO L-1:?[J];",";:NEXT:?:NEXT 570 RTN

モロッコは50度を超える日もあるとのこと!
でも、決め手は湿度。不快度指数とか、体感温度とか計算するのも楽しそうです。本番、楽しみ!

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY 福野泰介 - Taisuke Fukuno / @taisukef / アイコン画像 / プロフィール画像