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

IoTで防災力アップ! 河川水位IoTセンサー鯖江市内6箇所、試験稼働中

2018/04/05
#opendata #IoT #sabae 

2013年に訪問、さくらインターネットのデータセンター所在地、北海道石狩市でのLoRaを使った水位IoTセンサーが発表されました。
北海道石狩市とさくらインターネット、IoTなどの情報技術を活用した地域活性化に関する包括連携協定を締結~4月よりLoRaを利用した河川水位計測システムの試行運用開始~


水位IoTセンサー設置作業(鯖江市、日野川上)


10m対応の距離センサーによって水面上昇を捉えます。


計6ヶ所に設置、続々とデータが集まってきます。

取り外しには少し手間がかかるので、電池の交換は極力抑えたいところ。 差分がないときには頻度を落とし、水位が上昇してきたことを検出した場合には頻度高くするなどのメリハリついた送信が良さそう。 設置するケース自体の大きさは、もう少し大きくていいので、電池を多めに積んでおくのも有効そう。

links
- 距離計測IoTと水位センサー、現実社会へのデプロイのおもしろさ
- 親しみやすく表示する鯖江市論手川水位メーターアプリ with D3.js

距離計測IoTと水位センサー、現実社会へのデプロイのおもしろさ

2018/03/29
#IchigoJam #sabae #IoT 

「デプロイ」とは、ソフトウェア開発現場用語でシステムを利用可能な状況にすること。
ソフトウェアの場合はコマンド一つで済む話、実社会へ設置するIoTには多種多様なハードルがあって楽しいです。


近日公開、鯖江市日野川などに設置しているIoT水位センサー、デプロイ作業(設置作業)
水面までの距離を測って、定期的にネットへ飛ばす測距IoT。


20cmから150cmまでの距離を測れるシャープ製測距モジュール「GP2Y0A02YK」を使った実験方法
なぜか伝統的にVCCが黒、GNDが赤と逆なので注意!

IchigoJamに接続するには線がか細いので、ジャンパー線を半分に切って、はんだづけして熱収縮テープで処理。
ついでに、VCCは赤、GNDは黒へと変更しておきます。
センサーの電源は4.5V-5.5Vと書いてあるので、電源は5V/GNDへ。
出力(VOUT)はアナログ対応のIchigoJamのIN2へ接続。

10 N=ANA(2):?N 20 GOTO 10

距離が計測できました。近づくにつれ値が大きくなり20cmで860あたりまで上昇、その後近づくとまた小さくなるので注意。


sakura.ioを使って、IoT化!

10 N=ANA(2):?N 20 LET[0],2593,19457,N,0,0,0,N>>8^N^102:?I2CR(79,#800,13,#820,3) 30 WAIT60*60 40 GOTO10

1分おきに電圧をそのままネットに送信!
参考:【IchigoJam BASIC × sakura.io】ではじめる、はじめてのIoT | さくらのナレッジ 20行は、下記のようにも書けます。

20 POKE#800,#21,10,1,76,N,N>>8,0,0,0,0,0,0,N>>8^N^102,36,0,36:?I2CR(79,#800,13,#820,3)


測距センサーもsakura.ioも5Vを使うので、端子に一工夫。
長いピンソケットを折り曲げ、5ピンピンソケットをはんだづけして、分岐しました。

sakura.ioモジュールをスリープ制御して、IchigoJam自体をWAIT60,60,0や、SLEEP60などと省エネ・低電力モードにすることで、寿命をコントロールできます。

お手軽IoT、いろいろ活用しましょう!

links
- 【IchigoJam BASIC × sakura.io】ではじめる、はじめてのIoT | さくらのナレッジ

BASICだから、誰でも簡単IoT! こどもIoTハッカソン in さくらインターネット福岡オフィス

2018/03/17
#IchigoJam #IoT #fukuoaka 

こどもプログラミングが活発な福岡、大人向けの「こどもIoTハッカソン」の開催法紹介イベント。

PCNももちの工藤さんよりご挨拶!福岡開催、お世話になりました!
IchigoJamの生みの親、福野さん来福!(IchigoJam+IoT体験イベント) | 福岡市早良区のキッズプログラミングや法人向けICTスクールiClub/PCNももち,大分


楽しんでいただたようで、何よりです!ご参加ありがとうございました。
オシャレな会場、さくらインターネット福岡オフィスのご提供、ありがとうございました!


二人一組でチャット&遠隔操作実験、盛り上がりました!
世界中の無数(100億台!?)のコンピューターがつながったインターネットも、基本は2台をつなぐこと。
人から消されてしまう自分のプログラム、人のIchigoJamのLEDを遠隔操作することから実感してもらう情報セキュリティ。
IoT時代、情報セキュリティとセキュリティを区別することはなくなる、基礎知識となっていきます。
2だいだけのネットをつくろう - IchigoJamIchigoJamプリントより


今回の資料です。CC BYのオープンデータ、自由に改変、改造して、お使いください!


イラレで描いたロボくん、かわいいと参加した方にほめてもらいました!
このキャラもオープンデータなので、Tシャツにして売ってもらってもOKですよっ
連載:はじめてのプログラミング」もどうぞ!


充実のIchigoJamコーナー!(カホパーツセンター入って左手にあります)


福岡、九州唯一という電子パーツ専門店「カホパーツセンター」にて、センサーなどを購入。
近くに電子パーツ屋さんがある場所は恵まれてますね!駄菓子のように、電脳コイルのメガシヤのように、電子パーツが買える社会にしていきましょう!


タクシーの運転手さんに教えてもらった、天麩羅処ひらお大名店は、昨日行った「FUKUOKA growth next」の隣!


揚げたてがうまい、天ぷらが大人気!帰り際の12時、外には長蛇の列。
オペレーションの工夫で、うまいを安くするイノベーション、社会にはまだまだたくさんタネがありそうですね。


ごはんよそうロボが働いてました。


うっかりタクシー内に忘れてしまったカホパーツで買った電子パーツ群、運転手さんが気がついてもってきてくれ大感謝!
ありがとうございます!飯倉タクシーさん!


前夜祭のPCNミニミートアップ(PCN福岡&PCNももち&PCN鯖江)
高知高専、佐世保高専からもゲスト参加!
10年ぶりくらいの再会、福井高専でプログラミングを指導してくれ、現在九州大学の先生な先輩久住さんも!


さくナレ(さくらのナレッジ)にも掲載、IchigoJam x sakura.io のカンタンIoT、ぜひ挑戦してみてください
【IchigoJam BASIC × sakura.io】ではじめる、はじめてのIoT | さくらのナレッジ


電子工作マガジンには大人も挑戦できますよ!
ぜひ子供が楽しめるちょっとのプログラムで楽しいものとか、力作キワモノIoTをご投稿くださいっ

こどもとプログラミング入門に、新発売のレッドハット平さん、セールスフォース阿部さんの本もどうぞ!
子どもに読んで伝えたい! おうちではじめるプログラミングの授業 ((EdTechZine Digital First)) | 平 初, 阿部 崇 |本 | 通販 | Amazon

LED1つで文字を感じる、1点式体表点字 on IchigoJam

2018/03/10
#IchigoJam #IoT #braille 

6点の点字を2点ずつ時間軸でずらして伝える、2点式体表点字
2点は2bit、つまり、0〜4で表せるので、LEDを更に1つ減らして、LED1つで表現してみました。

1 'TAIHYO-TENJI-1 A-Z 10 LET[0],32,40,48,52,36,56,60,44,24,28,34,42,50,54,38,58,62,46,26,30,35,43,29,51,55,39 20 FOR I=0 TO 25 30 WAIT60:N=[I]:?:?CHR$(65+I) 40 O=N>>4:GSB@W 50 O=N>>2&3:GSB@W 60 O=N&3:GSB@W 80 NEXT 90 GOTO10 100 @W:?BIN$(O,2):W=4 105 IF O=0 WAITW*6 110 IF O=1 LED1:WAITW*3:LED0:WAITW*3 120 IF O=2 LED1:WAITW:LED0:WAITW*5 130 IF O=3 LED1:WAITW:LED0:WAITW:LED1:WAITW:LED0:WAITW*3 140 RTN

(1点式体表点字 RUN on IchigoJam web
A-Zまでを順に1点式体表点字の光表現(LED)で表します。
点なしは点灯なし、左1点は短く1回、右1点は長く3倍の長さで1回、両方は短く2回。
モールス信号的ですが、1文字の長さが固定なところが特徴となります。

あとは、点字を覚えるだけ!
攻殻機動隊のように、ネット越しに届くメッセージを耳も目も使わずに感じることができるはず。

シンプルに実装できますが、速度的にはきっと2点式体表点字が有利です。
音声読み上げと比べて、どこまで速く理解できるか!?

links
- ICT時代だからこその「ヘレンケラースマホ」(1/4):NICT
- 点字ファイルをユニコード点字に変換するプログラム
- 点字リーダー 一日一創2012
- 点字ライター 一日一創2012
- 2進数とプログラミングで解く点字 - IchigoJam
- バリアフリーに潜むイノベーション、4セグメント時計 - 北陸情報通信協議会 G空間xICTまちづくり推進部会にて講演

一次救命できますか? 副賞「食べられないイチゴジャム」でつくるカンタンIoT人通り計測機 - NICT起業家万博、初審査

2018/03/08
#IchigoJam #IoT 

前身のコンテストから数えて20回、名前が変わって5回目となるNICT起業家万博。
社会人向けスタートアップコンテストでの初審査委員!(起業家甲子園は学生向け)


金沢HIT2017で最優秀賞を獲得し、メンター担当した、チームichiMeiもプレゼン!
「隣の人が倒れたら、適切な救命処置をとれますか?」

救急車が到着するまで待つか、その場で一次救命するかで、その人の人生が変わります。
必要だけどほとんど行き届いていない一次救命の訓練、ichiMeiは、ゲーム感覚で手軽に実現!


胸骨圧迫の位置の適切さを感知する圧力センサー。
早すぎたり、遅すぎたりすると警告音。体験こそ、最短の学習手段。
【解説】一次救命処置の手順。心肺蘇生法ガイドライン2015版」(斜め読みでは身につきません)


訓練デバイスの中身で活躍していたのが、こどもパソコンIchigoJam
IchigoJam で 一次救命 = ichiMei

品川区荏原第六中学校や、鯖江市内の小中学校や、プログラミングスクール、体験イベントで使われているプログラミング学習用パソコンですが、 猪捕獲を知らせたり、鯖江市のバスのリアルタイムオープンデータ化のデバイスとしても稼働している、IoTデバイス実現用にも使えます。

人通りIoTカウンター実装例
どの通りがどのくらい人通りがあるかをデータ化して、不要な道路から削減したい。でも、人手はかけられない。そんな時に使う、IoTカウンターを作ってみました。

Amazonで195円で買える人を広範囲に検出するマイクロ波を使ったドップラーレーダー(RCWL-0516)をVINとGNDを電源に、OUTをIN1につないでセンサー部は完了。

オープンデータデイに活躍、IoT化に4G回線を使うsakura.ioをつないで、IoTカトラリーカードをみながら、通信部分をつくれば、IoT化、完成!

1 IF IN(1)=0 GOTO 1 2 LET N,N+1 3 LET[0],2593,19457,N:[6]=N>>^N^102:?I2CR(79,#800,13,#820,3) 4 IF IN(1) CONT ELSE GOTO 1

プログラムはたった4行
1. センサーの反応を待つ
2. Nの値を1増やす(N=N+1 でも同じ意味)
3. Nの値をsakura.ioへ送信(sakura.ioモジュールがネットへと飛ばしてくれます)
4. センサーの反応が消えるのを待って、1へ飛ぶ


IoT開発風景。IchigoJamだけでOK。WindowsもMacもいりません!


受信、できました!反応のたびにカウントアップする N の値がちゃんと届いてます。


プログラムができたら、キーボード、ディスプレイを外して、働かせましょう。
ボタン押しながら動かすか、BTN-GNDの接続で、自動起動。人の代わりに、必要なものを知らせてくれるIoTデバイスとして稼働します。


ネコ好き「nyans」による、ネコ好きのためのネコシッター相互お助けサービス「nyatching
人口減少時代の人不足を補うソーシャル&IoT。実現するのはコンピューター、ICTの力です!(jig.jp賞)


学校内の掲示板をきれいな動画サイネージで魅せるIoTに「株式会社Dream少年」による「T-STYLE」
学生不足、資金不足に悩む大学、情報伝達を紙からネットへの切り替えをコストをかけるどころか、レベニューシェアで大学も儲けられる仕組みを直接導入というモデルと、大学生をも巻き込むスタイルがステキ!(jig.jp賞)


会場で会った仙台高専の学生達、3人は休学して4月から東京で起業するとのこと!

未来は嘆くものではなく、創るもの。
課題多い世の中だからこそ、ひとりひとりの活躍が輝く!
次々登場する新技術は選び放題。


Let's make IoT to change this world!

勝手表彰「ダイヤ編成支援システム その筋屋」さん!バスリアルタイムオープンデータから本格ミニゲームまで、意外と使えるIchigoJam&sakura.io進呈! トランプゲーム実装例、神経衰弱

2018/03/06
#opendata #IchigoJam #IoT #maker 

バスへの愛あふれる「宇野バスロケーション「バスまだ?」データのオープンデータ化」へ取り組んだ「ダイヤ編成支援システム その筋屋」さんに、VLED勝手表彰の「odpリアルタイムオープンデータ賞」を受賞いただきました!
今年で6回目「2017年度のオープンデータ・ビッグデータに関する優れた取り組みの表彰 - ニュース | 一般社団法人オープン&ビッグデータ活用・地方創生推進機構

3/3のプレゼン時の動画もお知らせいただきました!
「ゼロから始める標準的なバス情報フォーマット ~ その筋屋を使って」  高野孝一(その筋屋) - YouTube

副賞にお送りしたのは、IchigoJamsakura.ioを使ったIoTセット!
IchigoJamで簡単IoT、sakura.ioとIchigoJamのつなぎかた・つかいかた
つつじバス乗客数グラフ(バス別) - 鯖江市バス乗客数リアルタイムオープンデータ」で使っているセットです!
Twitterにて、喜びのツイート、いただき感激です!

IchigoJamでのプログラム領域は、わずか1KB(=1024byte)、大したことできないと思いきや、続々と力作が登場しています!
落ち物ゲーム、爆弾探しとくれば、次はトランプゲームですね!

ねこが人気のIchigoJam絵文字。トランプのスーツも揃ってます!

FORI=0TO3:?CHR$(228+I);:NEXT

ランダムに表示

?CHR$(228+RND(4))

変数Nにいれた数を、1〜10とJQKとして表示する方法

?CHR$((N+48)*(N<10)+234*(N=10)+74*(N=11)+81*(N=12)+75*(N=13))

10以下のときは数に、10のときは特別キャラクター10を表すキャラクターコード234、11、12、13のときはJQKのキャラクターコードにしています。

こちら応用して、つくった「神経衰弱ゲーム」がこちら!

難しい!!

10 CLS:LC13,0:?"memory" 20 FORI=0TO51:LCI%6*5+3,I/6*2+3:?"**":NEXT 30 CLV:FORI=0TO51:[I]=I:NEXT 40 FORI=0TO51:N=RND(52):T=[I]:[I]=[N]:[N]=T:NEXT 55 O=-1:R=52:S=0 60 C=(C+(K=28)*51+(K=29)+(K=30)*46+(K=31)*6)%52 65 LC5,21:?"STEP:";S 70 LCC%6*5+2,C/6*2+3:?">"; 75 K=INKEY():IF!KCONT 76 IFK=32&&O!=C:GSB100:GOTO60 80 ?CHR$(28,0);:GOTO60 100 ?CHR$(228+[C]/13); 110 N=[C]%13+1:?CHR$((N+48)*(N<10)+234*(N=10)+74*(N=11)+81*(N=12)+75*(N=13)); 200 IF!FF=1:O=C:RTN 210 S=S+1:N=42:WAIT30:F=0:IF[O]%26=[C]%26:N=0:R=R-2 220 ?CHR$(28,28,N,N):WAIT10:LCO%6*5+3,O/6*2+3:?CHR$(N,N):O=-1 230 IFRRTN:ELSE:LC15,21:?"CLEAR!"

これで608byteと、まだ416byteも余裕あります!


Kidspod; IchigoJam
投稿された IchigoJamで動く力作プログラム達!

どうぞ、副賞、存分に楽しんでください!
VLED勝手表彰、受賞された方、おめでとうございました!!

links
- 2017年度のオープンデータ・ビッグデータに関する優れた取り組みの表彰 - ニュース | 一般社団法人オープン&ビッグデータ活用・地方創生推進機構
- 宇野バスロケーション「バスまだ?」
- ダイヤ編成支援システム その筋屋
- 【地図と位置情報】 マニアックなバスロケが岡山・宇野バスで稼働中、回送車両の位置や前方車窓まで表示 - INTERNET Watch
- IchigoJamで簡単IoT、sakura.ioとIchigoJamのつなぎかた・つかいかた

特別支援学校は日本教育変革の救世主!? KidsVenture in 沖縄、教員&こどもプログラミングワークショップとIoT

2018/02/10
#IchigoJam #KidsIT #IoT #okinawa 

沖縄県西原町にある、県立森川特別支援学校にて、教員の方と支援学校に通う子供たち向けイベント開催!

2時間半の長時間ワークショップ後で、この笑顔!すごい集中力と吸収力でした。


平成豪雪直後の福井を発ち、沖縄へ。


会場、沖縄県立森川特別支援学校


桜、咲いてました。

午前中、まずは教員の方向け。

野口先生よりご挨拶。


こちら講演資料「なぜプログラミングを教えるのか?」です。
目を輝かせる子供たちが創るであろう未来へのワクワク感がたまりません。


1996年に経団連から「創造的な人材の育成に向けて」で時代遅れと指摘されている日本の教育。 2020年から小学校でのプログラミング教育が盛り込むことが決定し、一歩前進。
ただ、香港の公立小学校では子供のイノベーションを教員が支援する形が実現しているらしく、負けてはいられないところです。(コンピューターが人間に勝つ時代の教育とは? 答えは超受験戦争地・香港にある | BUSINESS INSIDER JAPAN


集まっていただいた30人もの先生、続いてプログラミング実践、ワークショップ。
真剣、かつ、楽しそう!(講師、松田さんブログ!)


LEDを2回点滅をさせるプログラムをつくってみましょう!
気は利かないけど、言ったことは正確に実行するコンピューター。
思った通り動くのではなく、言った通りに動くことを、体験。体験に勝る学習なし。


順を追って進めて、かわくだりゲームづくり。
音楽の時間でも、まずはなぞって演奏するように、プログラミングもまずはなぞってみましょう。
プログラミングは「書く」ではなく「組む」なのは、上から順番に書いていくとは限らないから。
どのように組むかは創り手次第。
奥深い創造の楽しさを、とっても手軽に味わえるのがプログラミングの醍醐味です。

ワークショップ後のふりかえり。
野口先生より質問「特別支援の子供たちがプログラミングができるようになったら採用ありうるか?」
もちろん答はYESです。
ソフトウェアエンジニアの世界は実力主義。 新卒採用案内にあるようにjig.jpも学歴、年齢は不問です。 プログラミングが好きで、会社の夢を共有できる人、大歓迎です。


午後はいよいよこども向けワークショップ!
「点滅のしくみ」を紹介するPCN代表、松田さん。沖縄でカットしたヘアスタイルがダンブン風!
さまざまな「しくみ」がコンピューターによるソフトウェア化される現代、プログラミングを知らずに社会の仕組みを理解することはできない。


小学3年生も真剣!


サポートにきてくれた、jigインターンOG、沖縄高専の学生、みずきち(@shimamiz)


自分なりの改造が楽しい「かわくだりゲーム」
教員の部では見つからなかった、画面端にいくと死なない裏技、子供ワークショップではみんな即見つけちゃうのがおもしろい。


速度調整で、WAIT3.5といれて、小数が使えないことを知った小学3年生。


BEEPとRNDコマンドの組み合わせ、宇宙感あるランダムBGMを追加しちゃう小学3年生!
IchigoJamのコマンドはわずか100程度。いろいろ触って、組み合わせて、プログラミングの楽しさ味わって!
IchigoJam BASIC リファレンス ver 1.2」「IchigoJamプリント
気の合う誰かと一緒に取り組んでみたり、気の向くままにつくりまくってみたり、自分なりの楽しみ方を探ってみること自体もまた、楽しんで!

学校の本質は、学び方を学ぶこと。
世界のルールが一変した、web前とweb後。
webは、子供でも大人でも、世界中等しく使える最強の学習ツールです。

とはいえ、知識なくwebと触れても使いこなせず、テレビと同様流されるがまま。
コンピューターの集合であるwebの理解の第一歩は、シンプルなコンピューターとプログラミング。
自ら学び、思い通りに操れるようになっていく楽しさとコツを見につけたら、webデビュー。
広大なネットを味方に、思う存分好きな世界での価値創造を楽しみましょう。

生徒一人ひとりと向き合う特別支援学校こそ、日本の教育変革の救世主かもしれません。
子供たちの集中力、吸収力、そして熱心な先生達との貴重な体験の機会に感謝です。

2.24、こどもプログラミングと日本の未来がテーマの「こどもプログラミングサミット」では、参加者全員ディスカッション。 関心ある方、ぜひご参加ください!

IoT電光掲示板のつくりかた

あらゆるモノがネットにつながるのがあたりまえのIoT社会はもう目前。
IchigoJamを使えば、子供でも簡単にロボットづくり、IoTづくりができちゃいます。

こちら即席IoT電光掲示板、スマホで表示する文字列をリアルタイムに切り替えしました。
sakura.ioのWAKE_OUT端子をIN1にさし、IF IN(1) ならI2CRで読み込んで、表示!(75行)

1 'WS2812b x sakura.io 5 OUT4,1 10 POKE#700,240,181,114,182,9,36,36,2,9,25,1,36,164,70,27,76,11,120,91,9,0,240,31,248,11,120,155,8,7,34,19,64,0,240,25,248,11,120,3,34,19,64,91,0,0,240,19,248,97,68,1,48,31,34,16,66,234,209,66,9 20 POKE#73C,8,42,8,208,31,49,1,35,93,66,172,70,26,66,225,209,2,49,156,70,222,231,98,182,240,189,128,37,155,0,255,34,34,96,3,39,9,38,43,66,1,208,9,39,3,38,1,63,253,209,0,34,34,96,1,62,253,209,109,8 30 POKE#778,239,209,112,71,4,0,1,80 50 CLS:S=#825:L=7:P=0:C=RND(256) 60 A=ASC(S+P/8):FORI=0TO7:N=PEEK(A*8+I):POKE#900+31+I*32,N>>(7-P&7)&1*C:NEXT 70 U=USR(#700,0):SCROLL LEFT:P=P+1:P=P%(L*8):IF !P C=RND(256) 75 IF IN(1) LET[0],48,48:?I2CR(79,#800,3,#820,22):GOTO50 80 GOTO 60

5行でsakura.ioのWAKE_INを使って起動
10-30行はWS2812B 32x8用ドライバ(Armマシン語 = IchigoJamのコンピューターが分かる言葉)
50行でI2CRで読み込むアドレス#825、長さは今回はIchigoJamのキャラコードで6文字まで対応 60行でキャラクターのドットパターンを画面右端に大きく表示
70行でWS2812Bへ信号を送って、左にひとつスクロール。最後までいったら色を変更して最初から
75行、sakura.ioのWAKE_OUTを使ってデータ受信を検知した、データを読み込み、50行へ!


午後に並行開催された、さくらインターネットのエンジニアさんによる、micro:bitを使ったプログラミング&コンピューター体験も好評でした。


プログラミングと電子工作をこどもたちに伝え、起業家発掘を目指す、KidsVenture


次回をお楽しみに!

沖縄グルメ

森川特別支援学校の教頭先生が差し入れてくれたご当地あんまん「のまんじゅう」。「のし」の「の」!


名前も味もお気に入り、エバのからあげ。(大安丸 久茂地店


本場ゴーヤチャンプルー、うまい!(大安丸 久茂地店


煮魚おいしい!(大安丸 久茂地店


変わった貝、コマ貝。爪を引っ張るとでてきて食べやすい。(大安丸 久茂地店


ソーキそば!


沖縄混ぜご飯、ジューシー 160円。(那覇空港、1F入って左の一番奥、空港食堂

links
- KidsVenture
- 沖縄県立森川特別支援学校
- 創造的な人材の育成に向けて~求められる教育改革と企業の行動~
- プログラミング教育は 特別支援学校 に取り入れるのがおすすめ!KidsVenture in 沖縄でふれた超熱心な先生方と超ユニークなこども達! – about yrm
- こどもプログラミングサミット 2018.2.24 東京にて第3回開催!

こどもIoTハッカソン in 三重!はじめてのプログラミング・電子工作・IoTハンズオン、アイデアソン、ハッカソン、発表までを1日で!

2018/02/03
#IchigoJam #IoT #maker #mie #KidsIT 

8回目となる子供によるIoTものづくりイベント「こどもIoTハッカソン
今回の会場は小4から中2までの5年間過ごした三重県、みえこどもの城

個性的な自分で作った道具を手に、記念撮影!
アイデアグループディスカッション15分、ハッカソン工作&プログラミング時間60分でも個性的な作品群!
プログラミングの基本と応用、センサー、サーボ遊びに時間をしっかりかけたことがよかったかも。


三重県・三重県IoT推進ラボIT人材育成WG主催「家族で楽しむ キッズ・プログラミング」のイベントのひとつ。

実際の進行(10:00〜16:00, 内12:00-13:00お昼休みの計5時間)
1. 15分 IchigoJamをつかって、はじめてのプログラミング体験
2. 30分 LEDとWAITを使ったエルチカゲームづくりと組み込み開発体験
3. 30分 かわくだりゲームづくりでプログラミングのツートップ、GOTO/IF体験
4. 15分 サーボの制御体験
(お昼休み)
5. 30分 FaBoをつかって、はじめての電子工作体験
6. 30分 sakura.ioをつかって、はじめてのIoT体験
7. 15分 アイデアソンでグループディスカッション(テーマ、自分の周りの困り事)
8. 60分 ハッカソン(上記ツールに紙とカラーペン、ストロー、テープなどを加え工作)
9. 30分 発表会
10. 15分 レポートの時間&記念撮影

ハッカソンの様子

キーボードもみるみる使いこなしていく、プログラミング体験。


IchigoJamのプログラム、SAVE0で保存して、テレビ、キーボードを引っこ抜き、ボタン押しながらONで、自動起動。
毎秒5000万回計算するコンピューター、自在にコントロールしちゃおう!


オリジナルなエルチカで組み込み開発成功の瞬間。


アイデアソンシート紹介その1
困りごと、時間がない → ゲームしすぎちゃう → しすぎ防止機能付きゲーム!


アイデアソンシート紹介その2
困りごと、宿題が多い事 → 先生の記憶を抜く!(暗記パンの逆の発想)


ハッカソン、工作タイムスタート!記憶を抜いちゃう装置ができている!


自分で学べる、これ最強と伝授し、資料を見ながら自分でやってみてねと案内。自分で読みながらどんどん作る姿に感動!


いよいよ発表会、たくさんの大人を前にしても自分でつくった世界でたったひとつの道具、堂々発表!


手が届かない窓を拭けちゃう窓拭きロボット。みえこどもの城の人からも欲しいという声!


お母さんからとっても欲しい!と声があがった、温度センサーを使った水道管を破裂させないようにする装置(プロトタイプ)。


みんなの発表会、動画
洗濯のお手伝いに、光センサーで曇りを認識して、sakura.ioでスマホへ通知する作品に、大人から驚きの声。

資料
- IchigoJamプリント

0か1かのにゅうりょく IN(イン)」(PDF)


りょうのにゅうりょく ANA(アナ)」(PDF)

- IchigoJamで簡単IoT、sakura.ioとIchigoJamのつなぎかた・つかいかた
- 秒間5000万回(一応定格は3000万回)のLPC810の使い方「LPC810をあやつろう」(ブログ)

スライド


八丁味噌な鳥焼肉で打ち上げ with PCN三重!鳥羽商船高専の学生スタッフも大活躍!
強力にバックアップしてくれた、サンエル社長、辻橋さん、ありがとうございました!
三重県IoT推進ラボのメンバーでもあり、オープンデータ推進でも連携できるかも!?

links
- 三重県|「家族で楽しむキッズ・プログラミング」を開催します
- こどもIoTハッカソン
- PCN三重
- 鯖江Hana道場

IchigoJamで簡単IoT、sakura.ioとIchigoJamのつなぎかた・つかいかた

2018/02/02
#IchigoJam #IoT #maker #KidsIT 

初期費用約1万円、月額65円で1万回、ネットとの通信を実現するデバイス、sakura.io!(くわしい料金体系
sakura.ioIchigoJamを接続するには、sakura.io通信モジュールの他に、ブレイクアウトボードと、電圧レベル変換モジュール(PCA9306)が必要です。

ちょっとした電子工作をして、組み立て終わったら、ジャンパー5本(ver1.3未満の場合は6本)接続したら、早速IchigoJam BASICでIoTプログラミング!

- データ発信!

LET[0],2593,19457,N,0,0,0,N>>8^N^102:?I2CR(79,#800,13,#820,3)

- データ受信!(Fが1の時受信成功、0は受信キューが空)

LET[0],48,48:?I2CR(79,#800,3,#820,22):F=[16]!=5:N=[18]:?F,N

接続方法と使い方を紹介した、自分で学べる IchigoJamプリント、sakura.io編

sakura.ioでネットにつなごう - IchigoJamプリント」(PDF)
配列を使って、コマンドに必要な文字数の削減に成功!

IchigoJam接続用、ブレイクアウトボードのつくりかた

ブレイクアウトボードPCA9306ジャンパー線(黄、青、緑、赤、黒、白)を準備します。


1. 袋から出して並べます


2. 電圧レベル変換モジュールPCA9306とブレイクアウトボード、ピンヘッダーを2ピンにカットし、SCL/SDAの部分に、ピンの短い方を底にし、はんだづけ


3. PCA9306の2ピンと、白ジャンパー線の片方を曲げて、PCA9306に裏から差し込みはんだづけ。
ブレイクアウトボードのSPI_CSに接続はしないので注意。


4. 白ジャンパー線のもう片方は左側LDO_OUT(1.8V)にはんだづけ。
I2Cの電圧をsakura.ioの1.8VからIchigoJamの3.3Vに変換します。


5. 黒いジャンパー線、裏側をはんだづけ


6. ブレイクアウトボードのできあがり!
通信モジュールをセットして、IchigoJamのCN5に、上から黄、青、緑、赤、黒の順に差し込めばOKです。
早速IoT実験に取り掛かりましょう!

* sakura.io のバージョンが、1.3未満の場合、左側の6番ピンWAKE_INがプルアップされていないと動作しません。
動かない場合は、6番ピンをプルアップ(抵抗通じてVCC接続)か、VCCなどに接続して、ファームウェアを更新しましょう。

sakura.ioファームウェアバージョンアップの方法
LEDが一回点滅になり、ネットに接続されていることを確認してから下記コマンドを実行。

' unlock POKE#800,#A8,4,#53,#6B,#72,#61,#87:?I2CR(79,#800,7,#820,3):?PEEK(#821) ' firmware update POKE#800,#A9,0,#A9:?I2CR(79,#800,3,#820,3):?PEEK(#820),PEEK(#821)

ファームウェアを更新すると、一旦リセットがかかります。
バージョンを確認してみましょう。

POKE#800,#A2,0,#A2:?I2CR(79,#800,3,#820,35):?STR$(#822) v1.3.0-01-170906-4103948c) OK

無事、ver1.3になりました!
WAKE_INの内部プルアップが設定されているので、白ジャンパー線は外してもOKです。
次のバージョンアップで省電力対応!?楽しみですねっ

links
- sakura.io ハンズオン データ発信編
- sakura.io ハンズオン データ受信

CPUの安全、Arm Cortex-M0/M0+はセキュア機能が加わりCortex-M23に! Cortex-M3もはじめました

2018/01/07
#IoT #stm32 

PC(WindowsもMacも)、スマホ(iPhoneもAndroidも)、サーバー、これらコンピューターに共通して使われている部品、CPUに問題が見つかり、急ピッチで対策が進んでいます。

見つかったのは、アプリの安全な実行を司る部分のバグ。

CPUには、アプリ毎に実行権限を設定する機能があって、ネットワークからダウンロードしてきたアプリなどにむやみに大事なデータを見せたり、重要な設定を触らせないよう制限をかける機能があります。 その機能に穴があって、パスワードや個人情報など、読めてはいけないデータが読めてしまう可能性があるとのこと。
Googleが発見した「CPUの脆弱性」とは何なのか。ゲーマーに捧ぐ「正しく恐れる」その方法まとめ - 4Gamer.net

原因は、L1キャッシュというコンピューターが実行するプログラムを高速化のために一時的においておく機能。 CPUは、CPUの速度に対して遅いメモリ(RAM)から、使いそうなデータはまとめてとってきて机の上においておく的なことをやっています。 まとめてとってくる際、本来アクセスしちゃいけない領域のデータも含めて机の上におく仕組みが悪用できてしまったようです。

IchigoJamがCPUとして使っているArm Cortex-M0には、そもそもこういう保護機能がないのでバグの影響は受けません!
Why Raspberry Pi isn't vulnerable to Spectre or Meltdown - Raspberry Pi
ラズパイも影響は受けないと創始者、Eben Upton氏、本人によるブログ。

2016年末に発表され、チップの発売が楽しみな、Cortex-M0/M0+の後継、Cortex-M23には、限定的ながらこの種の保護機能が搭載されます。

ネットワークからソフトをダウンロードして実行できることで、より柔軟なIoTを設計できますね!

新アーキテクチャーに対しても開発慣れすべく、マイコン開発はじめに一番最初に買って挫折した、ST32VLDISCOVERYに再挑戦!

データシートとマニュアルをさらっと見て、stm32f0からstm32f1用にメモリマップを少し書き換え、プログラムをUSBシリアルで転送して、動作確認完了!

STM32VLDISCORVERYで使っているCPUは、STM32F100RBT6という、Cortex-M3 / Flash128KB / RAM8KB / 24MHz(!)というもの。 クロックの遅さに時代を感じますが、Flash128KBの大容量と、DAC搭載は魅力的。プログラムは my-first-stm32 on GitHub に置きました。

Cortex-M3/M4/M7を使った高速大容量処理も使えそう感がでてきて、ますますワクワクが広がりました。
Cortex-M3はハードウェアで除算や積和演算ができて、メモリ保護ユニット(MPU)も扱えます!
Armマシン語の入門は、Cortex-M0からどうぞ!

Cortex-M3/M4の後継は、Cortex-M43ならぬ、Cortex-M33とのこと。
Cortex-M7の後継は未発表ですが、Cortex-M73とか??
Cortex-M23搭載チップ、発売楽しみ!

links
- 【後藤弘茂のWeekly海外ニュース】ARMがセキュリティ機能を統合した新プロセッサ「Cortex-M23/M33」を発表 - PC Watch
- Cortex-M23 – Arm Developer

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