以前紹介した、5コ950円で買える、安価でIchigoJam BASICだけでも使える超音波センサー「HC-SR04」。 他デバイスとの関係で、どうしてもBTNを使いたいとご要望あり。


できました!IchigoSodaにつないでIoT化していますが、IchigoJam、IchigoDakeでもOKです!

BTNはIchigoJam付属のボタンとSLEEPからの復帰のため外部でプルアップ抵抗をつなげていて、ANA(0)としてアナログ入力としても使えます。 つまり、CPU内部の設定としてはアナログになっているので前回紹介したマシン語で読み出そうとしてもうまくいきません。


BTNを割り当てているPIO1_4、LPC1114のデータシートの IOCON_PIO1_4 (アドレス#40044094) を見ると設定方法が書いてあります。 一度、マシン語を使ってどういう設定になっているか読み出してみましょう。

R0=[@IOCON_PIO1_4]L R0=[R0]L RET @IOCON_PIO1_4 DATA L #40044094

asm15でアセンブルして、読みだした値を8桁の2進法で表示

POKE#700,1,72,0,104,112,71,0,0,148,64,4,64 OK ?BIN$(USR(#700,0),8) 01000001

2:0 つまり最下位の0bit目から2bit目の3bitを使ったFUNCは1、次の2bitのMODEは0(プルアップなどなし)、次の1bitのHYSは0(無効)、6bit目はReservedとして予約されていて1を設定することになっていて、7bit目ADMODEが0でアナログ入力モードとなっています。

これをADMODE:デジタル入力+FUNC:PIO1_4と、`11000000 に一時的に変更する作戦でいきます。前回のカウントプログラムの前後にこの設定を足します。

PIO1のベースアドレスは #50010000、BTNは、PIO1_4の場所なので
?"#5001";HEX$(1<<(4+2),4) → #50010040 を@INに設定します。

'BTN(PIO1_4) <- digital R1=`11000000 R3=[@IOCON_PIO1_4]L [R3]L=R1 'count check R0=0 R1=[@IN]L @LOOP R2=[R1]L R0=R0+1 R2-0 IF !0 GOTO @LOOP R0=R0>>9 'BTN(PIO1_4) <- analog R1=`01000001 [R3]L=R1 RET @IOCON_PIO1_4 DATA L #40044094 @IN DATA L #50010040 'BTN=PIO1_4

アセンブルして、BASICのプログラムと組み合わせて、できあがり!

10 POKE#700,192,33,6,75,25,96,0,32,5,73,10,104,64,28,0,42,251,209,64,10,65,33,25,96,112,71,0,0,148,64,4,64,64,0,1,80 20 OUT1,1:OUT1,0:?USR(#700,0) 30 WAIT 5:GOTO 20

マシン語でカウントした値、R0をBASICに返す前に9ビット右シフト、つまり512分の1にしています。マシン語のカウントだと速すぎて大きな値になってしまうからですが、ここをいじると精度アップが見込めます。 ただ、IchigoJamでは1秒間に1.5万回くらい画面表示用の割り込みが発生するので、高い精度で計測するには割り込みを一時的に止める必要があります。

CPSID R0=0 R1=[@IN]L @LOOP R2=[R1]L R0=R0+1 R2-0 IF !0 GOTO @LOOP R0=R0>>5 CPSIE RET @IN DATA L #50001000 'IN1=PIO0_10

割り込みの一時停止は CPSID、最下位は CPSIE です。戻し忘れると何も操作できなくなってしまいます。下記、CPSIDした後リターンする危険なプログラム、SAVEした後、お試しください。

LET[0],#B672,#4770:?USR(#800,0)

完成した、超音波センサー、TrigをIN1に接続し、精度16倍バージョンがこちら!

10 POKE#700,114,182,0,32,3,73,10,104,64,28,0,42,251,209,64,9,98,182,112,71,0,16,0,80 20 OUT1,1:OUT1,0:A=USR(#700,0):?A 25 LED A<300 30 WAIT 5:GOTO 20

一定距離から近づくとLEDがついてお知らせ、リレー経由でスゴイ照明と組み合わせると防犯ライトにもなりますね!

5 B=0 26 IF B=0 AND A<300 B=1:N=N+1:IOT.OUT N:?"IOT!";N:WAIT30 27 IF B=1 AND A>=300 B=0

IchigoSodaを使って通ったらIOT.OUTでカウントを送るように改造も簡単です!
福井県で始まった「混雑状況オープンデータ」との連携も便利そう。


Let's IoT with IchigoJam x various sensors!

links
- 200円 超音波距離センサー HC-SR04 を IchigoJam で使う方法 - Armマシン語で時間を測ろう
- 今週末は越前がにロボコン! IchigoJamで超音波センサーをIN1とは違うポートで使う方法 BASIC編 マシン語編

テレビやキーボードが無くても使える、USBシリアル付きIchigoJam互換機、IchigoKamuyと同じく北海道生まれのハート基板で、日本の感染病床の推定残数を残りライフ的に表示させてみました。
厚生労働省からPDFで発表される、1つ星みなしオープンデータをJSON-API化したものを活用。プログラムはとてもシンプル!(src on GitHub、2020-05-12 js→mjs

const ij = require('./ichigojam.js') const fetch = require('node-fetch') const main = async function() { ij.command('CLV:WS.LED20') const url = 'https://app.sabae.cc/api/covid19japan_summary.json' const data = await (await fetch(url)).json() const ratio = 1 - data.ncurrentpatients / data.nbedforinfection console.log('現在患者数', data.ncurrentpatients, '感染病床数', data.nbedforinfection, '空き病床数(推測)', ratio) const nr = Math.floor(ratio * 20) ij.command(`FORI=0TO${nr}:[I*3+1]=30:NEXT:WS.LED20`) } main()

パソコンとIchigoJamでつくる、かんたんIoT。JavaScript on Node.js でチャレンジ!

IchigoKamuyやIchigoJamとUSBシリアルと、パソコンを使ったちょっと高度なIchigoJam入門。Node.js がまだの方、セットアップからどうぞ!
はじめてのウェブサービス、3分でわかるJavaScriptでつくる「チャット」の流れとチュートリアル Node.js編

USBシリアルのドライバの設定が終わったら、Node.jsから使えるように「serialport」モジュールをインストール。(参考、GitHubからプログラムをダウンロード!)

npm i serialport

まずはコンソールからIchigoJamを使ってみましょう!(console.mjs

const driver = '/dev/tty.SLAB_USBtoUART' const SerialPort = require('serialport') const port = new SerialPort(driver, { baudRate: 115200 }) const parser = new SerialPort.parsers.Readline port.pipe(parser) parser.on('data', console.log) const reader = require('readline').createInterface({ input: process.stdin }) reader.on('line', function (line) { port.write(Buffer.from(line + '\n')) })

driver には、自分の環境でのUSBシリアル接続先を設定しましょう(Windowosの場合は、COM8 など)

node console.js LED1 OK

シンプルなIchigoJamとして使えますね!

JavaScriptのプログラムで制御してみましょう!

port.write(Buffer.from('LED1\n')) setTimeout(function() { port.write(Buffer.from('LED0\n')) }, 1000)

LED1でつけて、setTimeoutを使って1秒後に消します。(led1.mjs

Promiseとawaitを使うと、分かりやすく書けます。(led2.mjs

const main = async function() { command('LED1') await sleep(1000) command('LED0') } main()

毎回設定などをプログラムで書くのも面倒なので、モジュール化するとぐっとシンプルに!(led3.mjs

const ij = require('./ichigojam.js') const main = async function() { ij.command('LED1') await ij.sleep(1000) ij.command('LED0') } main()

ハート基板や、WS2812Bを接続して、WS.LEDコマンドを使ってフルカラーLEDの制御!(wsled1.mjs

const ij = require('./ichigojam.js') const main = async function() { ij.command('[1]=30:WS.LED 20') await ij.sleep(1000) ij.command('CLV:WS.LED 20') } main()


1つ、赤に光らせることに成功!アニメーションする(wsled2.mjs)もどうぞ!

IchigoJamでも新型コロナウイルス対策!厚生労働省オープンデータのJSON-APIを使って、ハート基板を制御したものが、今回の作品でした!(wsled3.mjs


パソコンとつないで、光らせ方は自由自在!
どんなデータで、どう動かす?いいものができて、ずっと動かしたくなったらパソコン不要なIoT、MixJuice x IchigoJam や IchigoSoda がオススメです。


特別講演「100円で50MIPS!?こどもパソコンIchigoJam x GPU/VR/5G時代のオープンデータ、その心は?」 | キタゴエ
IchigoKamuyもハート基板も北海道産!Kita-Tech 2019のときの講演が記事に!

北海道と言えば、有志により東京都版から派生した「新型コロナ対策サイト」がいち早く立ち上がった、熱い場所!

COVID-19 JAPAN - 新型コロナウイルス対策ダッシュボード」を、現在患者数 / 感染症病床数 で、使用率目安を表示するように更新しました。

新型コロナウイルス感染症対策専門家会議の見解等(新型コロナウイルス感染症)|厚生労働省
厚生労働省からの対策指針。感染症病床がまずは優先と記述されています。足りなくなった場合への備えも大事ですが、まずはこの防衛ラインを意識して、地域で抑え込むことが大事!

links
- IchigoKamuyはんだづけ一人称視点動画 - パソコンに直結して楽しむIchigoJamでエルチカロボを作るまで
- IchigoJamでパソコンとUSBシリアル通信。Node.jsを使うとキーボードとモニタいらず – しずかなかずし

盛り上がったオープンデータデイハッカソンシンプル版VR版に続き、フィジカル版も作りたい!小中学生でも気軽に参加できるようにIchigoJam用のAPIを作りました。 単体ではネットにつながらないIchigoJam、ネットワークボード「MixJuice(¥2,750)」を使います。

IchigoJamの上にMixJuiceを挿し込み、電源をいれ、いろいろ表示が落ち着いたあと、一度、エンター。MJ APC コマンドで、無線LANのアクセスポイントに接続しましょう。

?"MJ APC SSIDXXXX PASSWORDXXXX 'WiFi connected: 192.168.xx.xx 'OK

WiFi connected と出れば接続OK!次の起動時からは自動的につながります。


APIによる取得は、MJ GET コマンドを使用します。(取得ファイル名は小文字の必要あり、新しいMixJucieなら MJ GETS でもOK)

?"MJ GET app.sabae.cc/api/covid19tokyo.txt 7 n_inspections 1068 n_patients 58 n_light 29 n_heavy 8 n_exit 20 n_death 1 s_lastUpdate 2020/03/07 8:00

いろいろエラーがでますが、こんな感じのデータが取得できればOK!(出展、東京都 新型コロナウイルス感染症対策サイト / Tokyo COVID-19 Task Force websitedata.json を加工。検査実施人数、陽性患者数、軽症・中等症数、重症数、退院数、死亡数の順。jsonでも取得可能)

最初の数値はデータの数、それ以降、データの名前とデータのセットが数分続きます。これを配列に保存するプログラムを作ったりして、活用しましょう!


10 ?"MJ GET app.sabae.cc/api/covid19tokyo.txt 20 INPUT N 30 FOR I=0 TO N-1 40 INPUT S 50 INPUT [I] 60 NEXT 70 'test 80 FOR I=0 TO N-1:?[I]:NEXT


画面に大きく表示したり、サーボを動かしてインジケーターを作ったり、WS2812Bで電光掲示板を作成するのもありですね!

Let's create something against COVID-19!

社会をアップデートするIoT、企業向け研修として活躍するIchigoJam!
はじめてのIoTプログラミング with IchigoJam x sakura.io powered by Hana道場。

さくらインターネット版IchigoJam、IchigoSodaを使った、プログラミング未経験者の大人向けのIoT社員研修。


1時間半で、プログラミングと電子工作の基本から、IoTプログラミングまでぎゅっと体験!


光センサーをブレッドボードに挿して作って、暗くなったら通知するプログラム、3行!


あっという間にスマホとつながる、IchigoJamのかんたんIoT!


盗られたくないプリンの脇に、光センサーを設置しておきましょう。忍び寄る手を検出したら、スマホに通知!即座にボタンを押すといろいろな音を鳴らして、警告しちゃおう!


IoTプログラミング はじめのいっぽ with IchigoJam x sakura.io (PDF, key, pptx)」

links
- IchigoJamでIoTプログラミング体験!出張Hana道場社員研修in東京~6&7回編~ | きらきら星のつぶやき☆

新潟県、ものづくりのまち、長岡市。長岡造形大、長岡市役所、長岡高専をリアル訪問!

はじめての長岡造形大学


シンボルツリーの桜!建物内外、さすが造形大!


先生の熱意によって長岡造形大内にできた、プロトタイピングルーム!


レーザーカッター切り出し「火気厳禁」かっこいい!


いいレーザーカッター、大活躍とのこと!(鯖江Hana道場にも少し小さめのあります)


かわいいサンプル。学部問わず興味ある学生多数とのこと!
コンセプト、外装、ハードウェアやソフトウェアの実装、見せ方、全部揃うと超強力!


長岡市役所隣、アオーレ長岡。新潟で30回続く、デザインコンテスト、NIIGATA IDS DESIGN COMPETITION 2020!ちょうど造形大の学長、和田さん講評されていました。


ストアで発見、ステキな卓上切出(ナイフ) MASUWA by 増田切出工場 & TWOOL(昨年度の準大賞)
企画販売は和田学長の息子さん!プログラミングに興味ありとのこと!


Insta360 EVO用ケースにほしい、伸びる、簡単、瞬間パッキング!ストラップに付けられるとより便利かも?


日本のめがねといえば鯖江ですが、長岡にもメガネ会社あり!アセテートにβチタンの芯をいれたメガネ!


かわいいコケのいれもの


企み、語り、創り、伝え、会う!


長岡駅隣のおもしろ空間、なんと左が市役所と右が市議会の議場!


旧デパートの1Fを、市営のファブ&コラボスペースとした「NaDeC BASE」長岡高専、長岡造形、長岡技科大も!


こちらも、プロトタイピングラボ、ものづくり工房あり!


長岡市バックアップのものづくり支援コンソーシアム「NAZE」と新潟の方言「ごうぎ」に漢字を当てた「豪技」


今年度初開催こども向けロボコン、ロボカップジャパンオープン!


NT鯖江にもご訪問いただいた、長岡市役所の橋詰さん、ご案内ありがとうございました!


続いて訪問、長岡高専!元気な長岡高専生!


多数の先生に参加いただいた、長岡高専にて講演&IoTプログラミング体験!(資料参考、高専生から中学生へ「はじめてのプログラミング、はじめてのIoT」 / 佐世保高専での学び

最新集約周辺機器IchigoDyhookとIchigoSodaの接続法。ジャンパーワイヤ6本使って、まずはIchigoDakeのRESET-GNDをつないで無効化し、IchigoDakeとIchigoSodaのKBD1-2/VIDEO1-2/GNDを5本で接続。

ちょっと面倒?DPCが登場すれば、ずっとシンプルになります!(IchigoJamカムロボのデバッグからラズパイ製品の現場調整まで、立ち乗りでこなすIchigoDyhook! – about yrm

4Gモジュール用には電源が必要なので、IchigoSodaにmicroUSB経由で給電。


あとは普通に使えます!接続状況表す、IchigoSoda上部の点滅が1回に変わったら、

IOT.OUT 15 OK

これでクラウドにデータが飛びます
受信したらLEDを付けて終了するプログラムも簡単!

1 IF IOT.IN()=0 CONT 2 LED1 RUN OK


GPSや高精度温湿度センサーSHT31、UVセンサーなどを搭載したIchigoSensorsを合体!
I2CでSHT31の温湿度データを読み出し、サーバーに定期的に送るプログラム(for IchigoJam 1.4)

10 POKE#700,#2C,#06:R=I2CR(#45,#700,2,#700,6) 20 IOT.OUT #700,6 30 WAIT 60*60*5:GOTO 10

シンプルに使えますが、がんばれば、割といろいろできちゃう、IchigoJam。
画面拡大(VIDEO3)して、IchigoSoda上で表示も行うIoT温度計にする例(℃をパターンを700行で生成)

5 VIDEO3:CLS:GSB@DC 10 GSB@TH 15 LC 4,4:?T/100;".";DEC$(T%100+100,2);CHR$(#708) 25 LC 4,6:?H/100;".";DEC$(H%100+100,2);"%" 27 IF TICK()>60*5 IOT.OUT T:IOT.OUT H:CLT 30 WAIT6:GOTO10 600 @TH:U=95:LET[U],#062C,#4401,#8808,#884A,#4350,#0C00,#4770 610 U=#800+U*2:R=I2CR(#45,U,2,#700,6) 620 [0]=17500:[1]=PEEK(#700)<<8|PEEK(#701):T=USR(U+2,#800)-4500 630 [0]=10000:[1]=PEEK(#703)<<8|PEEK(#704):H=USR(U+2,#800) 640 RTN 700 @DC:S="゚C":FORI=0TO7:POKE#708+I,PEEK(ASC(S)*8+I)|PEEK(ASC(S+1)*8+I)>>3:NEXT:RTN


さすが高専、トラ技ジュニア!(See also: 高橋名人とのコラボイベント


長岡名物シュークリーム、ごちそうになりました


高専x造形大で企む会(平行法で立体視可)


長岡は山本五十六氏の出身地。平和を願う長岡の直径650mという大花火の玉は直径90cm(3尺)!VR再現楽しそう。

地域の課題、ITとデザイン、力を合わせてどんどん解決!地域を越えてイノベーション!
地域のプログラミングといえば高専!GIGAスクール構想を先取りし、プログラミング的思考ことプログラミングを広めましょう!
ものづくりとデザインに力を入れるまち、長岡と鯖江。仲良くなれそう!

links
- 「プログラミング的思考」=「プログラミングする活動そのもの」 小学校プログラミング教育の手引第三版で減ったもの増えたもの
- 学校に激震!? 昭和の「一斉授業」から令和の「個別最適化された学び」へ! すべてのこどもたちに世界とイノベーションへの入口を、GIGAスクール構想とは?その実現に近いまちは?

福岡で開催「第19回九州・大学発ベンチャー・ビジネスプランコンテスト」にて、ブタが超好きと言う、宮崎大学の有方草太郎さんの豚肉の有機野菜プラン「Pioneer Pork」を「NICT賞」として選出! シリコンバレー研修を経て、3月に開催される「起業家甲子園」への出場に向けてのブラッシュアップ、ICT担当メンターとしてサポートします


動物好き、農学部、サークルに入る、豚に一目惚れ、アメリカに留学、衝撃を受ける、調べる、やってみたくなる、やる!(すでに用地を確保!)
「農業を変えたい!」豚と人に優しい養豚を実現しようとする大学生の決意 │ HiDANE


豚愛あふれる熱いプレゼンを動画をどうぞ!(宮崎大学の先生、土屋さん撮影)


19年目と歴史あるビジネスプランコンテスト、NICT賞選定審査員として参加してきました。NICT賞の設定は今回初!


大分大学 和田さん、スマカペ
電子ペーパーや、プロジェクションマッピング、AR、VRによるシミュレーションで現実にはありえない模様替えにもチャレンジしてみるのもいい。


北九州高専 山本さん、ヘルスケアロボットと健康手帳、広告収入とシステム利用料
ロボットにかわいい名前をつけてあげるか、待ったなしの医療費高騰問題に直球で取り組むといいかも。


佐賀大学 山城さん、座ると腰が痛い人向け、骨盤荷重軽減する福祉器具、フワット
座るでもスタンディングでもない第三の椅子ができたらおもしろそう


大分大学 松岡さん、ニオイで悩む人向けデバイス&アプリ
数値化するといろいろおもしろいので、オフィス環境の快適度を客観的に示す温度湿度CO2などと共にニオイも計測して、働く人との気分と相関を見てみるとかおもしろそう。


北九州高専 波野さん、AR技術を活用した、技術継承支援システム、マニュアルの電子化
独自開発のマーカーに期待!伝統技術の伝承にも、ARはあり!


九州大学 徳丸さん、電池の性能評価シミュレーションソフトの開発・販売
ウェアラブルは、スゴイ電池の誕生待ち。当たると大きい!


宮崎大学 河野さん、LGBT向けのサービス
鯖江市も重点的に取り組む、SDGsの5番目のゴール「ジェンダー平等」にLGBTが言及されなかった闇。日本の不動産、LGBT差別、存在する!?


崇城大学 岩井さん、藻を低コストで活性化させる
青色色素スピルリナなど、食の安全性と生産性向上は大いに進めていきたいところ


宮崎大学 有方さん、日本の養豚農家9割が動けない豚、放牧豚との共存モデル Pioneer Pork
IoTによる遠隔養豚場、今後増える日本の廃村、廃町も活かせそう。


NICT賞と副賞の鯖江スペシャルセットを手に、意欲燃やす有方さん。


NICTメンバー in 九州!


熱いぞ、福岡県!また来ます!


2017年の起業家甲子園に出場し、三菱東京UFJ銀行賞と審査員特別賞を受賞した、後藤みどりさんに再会!
熱意ある活躍は後輩にも伝わる!
Yuge KOSEN got the best prize at NICT Entrepreneurs' Challenge 2017 day 1

好きでたまらないものを持っている人は強い!
同じコトでも、嫌々やるのと好きでやるのではパフォーマンスは段違い。
好きでたまらないものが見つからない? そんな人にオススメ、3つの方法

1. 運命の出会いが来ちゃってる人に近づいてみよう!
どういうきっかけだったか?なぜ好きか、どうしたいと思っているか?
人類的には、みんなが同じものを好きになってしまうと競合しすぎて、変化に弱く、いいこと無し。
「好き」がみんな違うからおもしろいし、発展がある。
ますます多様性が必要な21世紀、出会っちゃった人のストーリー、いろいろ読んで自分との距離を感じましょう。

2. 新技術にチャレンジしよう!
プログラミングも、AIも、IoTも、小学生や80才のおばあちゃんおじいちゃんが始めるくらい簡単です。
必要なのは、始めるちょっとした勇気と、少しの時間だけ。
それまでの「好き」と新技術のつながりが見つかったら、それは大きな前進。
それを実際つくってみましょう。(ネット上でもリアルでも、コミュニティは大きな助けになります)
できたら、きっと自分が前よりちょっと好きになります。人に見せたら得意になれます。
もっと触れて、もっと楽しくなるループに入ったらしめたもの。

3. すべての人の言うことを聞かない
100人にアドバイスを求めたら、返ってくる、互いに矛盾する100の答え。
予測不可能な社会、答えは誰にもわからない。
人のせいにした失敗は何も生みませんが、自分で決めた失敗は成長の元!
自分で決めよう!自分を信じよう!

後は自分を信じてやり通すのみ!
継続は力なり。

福岡県北九州市、北九州高専プログラミング研究部!

jigインターンOB、トミーのおかげで、念願叶いました。
北九州高専 コンピュータ研究部の紹介 - あかいろ情報系高専生の日記
jig.jp インターン2018始まります! - jigintern2018’s diary」← インターン時


さくらインターネット製のIchigoJam、IchigoSoda


このIchigoSodaを使った世界一カンタン(当社調べ)なIoTプログラミング体験!


ゲームづくりを通じてアルゴリズムを学ぶ、かわくだりゲーム大会で最長記録!さすが高専生、見切ってました!
高専生向けには、35 WAIT2 をデフォルトにしないといけないかも?
たった1コマンド加えるだけで、TがIoTに変わりました!
応用範囲は無限大。
(IchigoJam/IchigoSodaのスライドは、オープンデータ、自由に活用ください! slide on GitHub

地域の課題をみんなでみつけ、小中学生の柔軟な発想に刺激を受けて、高専生の実装力を合わせて、どこにもなかったサービスやプロダクトを創り出しましょう!
隣の人、隣のまち、隣の国へと広がった結果、それがイノベーション!

IchigoJam BASICで、楽しく遊んで、改造して、教えられるようになったらオススメしたい、次の一歩はスマホでもPCでも動く、JavaScriptでつくるwebアプリ。
はじめてのJS - JavaScriptはじめのいっぽ」「まずは作って公開オリジナルサイコロアプリ! HTML/JavaScript/GitHubはじめのいっぽ

HTMLとCSSをいじるだけでもオリジナルアプリ、できますよ!
北九州市オープンデータ、ふっけーが発見したAPIを使ってサンプルアプリ作ってみました。


イベントサーチ北九州
HTML/CSS/JavaScriptが入った、シンプルな1ファイル、ぜひソース(プログラム)を手元に保存して改造してみましょう!

div.innerHTML = ` <h2>${e.event_name}</h2> <div class=cat>${e.ctg1}</div> <div class=area>${e.Area}</div> <div class=description>${e.description}</div> <div class=place>${e.place}</div> <div class=date>${date}</div> <a href='${e.url}''>${e.url}</a> `

こんな感じでHTMLに読み取ったデータを埋め込んでいくイメージです。


オープンソースな鯖江メガネアプリで撮影、秒間1兆回の計算力をカジュアルに遊べるのが、プログラミングの魅力!
慣れたら、横展開は速い、言語習得!iOSかAndroid、自分の持ってる機種のネイティブアプリづくりにもチャレンジ!
OculusQuestなどのVRも良し。


PCN北九州製のクリスマスツリー!シンプル8pinのCPU付きの基板、USBポートに差し込むだけでキラキラ光る!
ずっと安く、簡単になっったハードウェアづくりも良し。


PCN北九州メンバー、増えました!
jigインターン2019OB、ふっけーも!
[ふっけー] jigインターン2019 - 終わりわよ!! - jigintern2019のブログ


jigインターンをインターン参加者のトミーとふっけーが紹介してくれました!
全国から高専生が集まり、3週間でサービスを作るモーストエキサイティング(当社調べ)なインターンです。


3週間のインターン中に、ハッカソン、VRスイカ割り、滝行するインターンはjigインターンだけ!


プログラミング好きで、ちょっと外に飛び出てみたい人、事前登録どうぞ


お料理版、AtCoder、オタクック、プログラミング好き高専生にはウケますね!


北九州高専出身で、北九州高専の先生で、プログラミング研究部の顧問、2年上の先輩、松久保さん、ベーマガとの再開に歓喜!


初訪問だった、南国感ある北九州高専!37キャンパス目、訪問率58%


北九州市役所、三浦さんとも会えました!


小倉城!3Dモデルオープンデータとかあると楽しそう!


福岡名物、ごぼ天うどん!ごぼうの迫力!
地域のチェーン店オープンデータ、あると楽しそう。

部屋の温度、昨日より温かいか寒いか?エアコンによる温度変化は何分で表れるか?
点として見る温度計だけでは見えないものが、データ化してグラフにすると見えてきます。

IchigoJam x sakura.io でつくった、IoTネコハウス温度計のアプリだけをバージョンアップ。
昨日と今日だけの温度変化をグラフ化して自動更新して表示し続けるアプリにしました。


IchigoOndo
IchigoSodaに使うモジュールをsakura.ioのコントロールパネルで登録し、プロジェクトの連携サービスに「DataStore API」を追加、Tokenをコピー。 このURLの後に、ハッシュと、上記Tokenを連結してアクセスするば、どなたでも使えます!
ex) https://fukuno.jig.jp/app/iot/ichigoondo.html#xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
DataStore APIは、現在無料提供中、将来オープンデータであれば無料、プライベートなら一定期間以上分が有料化予定


家をカーテンレールを付けて、のれんから断熱カーテンにアップグレードする改造。
快適さがどのくらい変わるか、数値でどう表れるか楽しみ!


気になること、IoTでデータ化することから始めよう!

PCN大阪PCN南大阪、KidsVentureとの合同企画、キラキラIoTプログラミングワークショップ in 大阪
自分で創る、イルミネーション、クリスマスイル、ハロウィン、お正月などのお祭りに!
準備したフルカラーLEDセット(WS2811)を使った初WS。

自分で作ったキラキライルミと記念撮影!(photo by Aki Miyako)


IchigoJamは5才、バージョン1.4になって簡単になったキラキラを使ったワークショップ!


1人1つずつ10コに切って加工したWS2811を使います(入手法と作り方
WS2812Bでも、赤と緑が逆になっているだけで、挿すところ、使うコマンドプログラムは一緒です。


フルカラーLED10モジュール(全部で30LED)、WS2811接続方法(白をCN4の一番下、LEDに合わせて8端子挿せばOK!)


光った!

WS.LEDの使い方サンプル
赤く

[0]=50:WS.LED1

緑に

[0]=0:[1]=50:WS.LED1

青に

[0]=0:[1]=0:[2]=50:WS.LED1

色を混ぜる(光の三原色、赤緑青)

[0]=10:[1]=20:[3]=30:WS.LED1

LETコマンドで短くかける(意味は一緒)

LET[0],10,20,30:WS.LED1

WS.LEDの2つ目の数値でくりかえし回数を設定すると、10コ光る!

LET[0],50,30,0:WS.LED1,10

消すときは変数クリア命令、CLV

CLV:WS.LED10

2つのフルカラーLEDモジュールを光らせるには6つ数を指定して、WS.LED2

LET[0],50,0,0,10,0,0:WS.LED2

2x5で10コ光る

LET[0],50,0,0,0,50,0:WS.LED2,5

3x4で光らせる(くりかえしが多くてもOK!)

LET[0],50,0,0,0,50,0,0,0,50:WS.LED3,4

LEDの点滅と同じようにくりかえし

10 LET[0],50,0,0:WS.LED1,10:WAIT30 20 LET[0],0,50,0:WS.LED1,10:WAIT30 30 GOTO 10

30LEDのどこかを100に指定して光らせる、をくりかえす(その行をもう一度最初からのCONT)

10 CLV:[RND(30)]=100:WS.LED10:WAIT10:CONT

10モジュールのどこかを赤に光らせる、をくりかえす(CLVを取るとどうなる?)

10 CLV:LET[RND(10)*3],50,0,0:WS.LED10:WAIT10:CONT

ランダムな色

10 LET[0],RND(50),RND(50),RND(50):WS.LED1,10:WAIT30:CONT

ランダムな色と場所

10 CLV:LET[RND(10)*3],RND(50),RND(50),RND(50):WS.LED10:WAIT30:CONT

30LEDを全部ランダム(数指定くりかえしのFOR)

10 FORI=0TO29:[I]=RND(100):NEXT:WS.LED10:WAIT10:CONT

だんだん伸びていく

10 CLV:R=RND(50):G=RND(50):B=RND(50):FORI=0TO9:LET[I*3],R,G,B:WS.LED10:WAIT10:NEXT:CONT

だんだん明るく

10 FORI=0TO50STEP10:LET[0],I,I,I:WS.LED1,10:WAIT10:NEXT:CONT


自由作成タイム!基本はLEDとWAIT!


自分だけのイルミネーション、あみだそう!
(光を動かすには? IchigoJamの新しいWS.LEDとCOPYでピカピカ - Qiita by PCN大阪

すべてがネットにつながるIoT。IchigoSodaならIoTイルミネーションも簡単!(スマホで点灯スイッチ追加)

1 IF IOT.IN()=0 CONT

もし信号を受信していなかったらくりかえし(=送られて来るまで待つ)

スマホで点灯スイッチ、デモ!


ぐるっと360度撮れるカメラ、THETAで1枚!(ぐるぐる見渡せるバージョン on Facebook


さくらインターネット大阪本社からのメリクリ!・・・つづく
→ 「遊んで学ぶアルゴリズム 迷路棒倒し法をIchigoJamでつくろう - クリスマスイベント by コプリ / PCN大阪

各地域で進む「xIT」の取り組み。今日は信州ITバレー構想を発表し、2050ゼロカーボンを日本初宣言した熱い長野県にて起業家甲子園に向けた信越地区大会!

信州で未来づくり、信州未来アプリコンテスト0(ZERO)
3年ぶり3度目の第5回目となったコンテスト、応募総数74!決勝進出した、小学生から29才の社会人まで、全21プランのプレゼン、楽しい時間をありがとう!


長野県知事、阿部さんも観戦!SDGsバッジを見かけたので、鯖江発のグローカルアプリで記念撮影!


NICT賞として選出したのは、長岡高専パトライトIoTチーム!
地元の企業との連携と「お手軽IoT」の実現とその横展開に可能性あり!


新たに加わったデータ活用部門、そのお手本を示してくれた、自転車盗難推測Bot開発した社会人参加の川野邉さん!
2019 信州アプリコンテスト0の振り返り。 - NAGANO ENGINEER LIFE


盗みの傾向 - 長野県警オープンデータ
長野県警による犯罪記録のオープンデータ、私も使ってみました。
自転車、自動車、バイク、自販機、部品と、CSVで公開されているものを さんのプレゼンと同様に曜日別、時間帯別に分類します。 データは「長野県オープンデータサイト」から直接使っているため、更新されれば自動反映。


縦長の画面で見ると、自動的に転置した縦長の表として表示する機能だけつけてみました。
発表でも言及されていましたが、住所よりもう一歩踏み込んで、緯度経度を付けてくれるとより細かな分類ができてうれしいですね。 オープンデータなので、地元の人ならわかる「あぁ、あそこの駐輪場ね」を追加加工したデータを二次流通させるのも手!


長野高専で楽しくプログラミングを教えている、伊藤先生!
プログラミング言語は何から学ぶべきか? ロボットプログラミングゲームをIchigoJamでプログラミング! C言語の教科書「Springs of C」より


長野県宮田村から参加の小学生チーム!ぜひ、PCNこどもプロコンにもチャレンジください!


横浜から参加!


名古屋から参加のトライデントコンピュータ専門学校チーム!


今回の会場は長野市、信州大学工学部。発表全プランを振り返ります。


どこでもドラム by ためちゃんず(新島学園中学校)
欲しい → 創ろう! とっても大事!
使う → 改良 → 使ってもらう → 改良 → 何か他に思いつく → 創る → ・・・どんどんアイデアと創れるものが広がって楽しい!
IchigoJamを使ってサーボで何か叩いたり、本格ドラムMIDI音源を制御するのも楽しいよ!遅れの問題、解消するかも。


読書のすすめ by 小森航平(未来工作ゼミ)
Scratchを使ってジャンルを楽しく決める!どういう人にどんな本をオススメするか、深堀りするとおもしろくなりそう。


AIスクッチブラザーズ by 水谷俊介(信州大学教育学部付属松本小学校)
小学生だってAIしたい! → できる!
AIの画像から姿勢推定の応用 Posenet2Scratch を使ったゲーム、2台並べて通信対戦とかできると熱いかも!?


keep our lives safe system by 国土交通省交通安全課(新島学園中学校)
実際に事故に遭った経験から交通安全問題に切り込んだ作品。
アクセルとブレーキ、踏んだらそれぞれ固有の音をならすことで踏み間違いをなくす、シンプルだけど意外といいかも!
居眠りを検出するのに、ハンドルの動きをモニタリングするのはきっと有効。


がるびっち☆せぱれーしょん by ノーストップイーグル(宮田村立宮田小学校)
5つ中で燃やすゴミはどれでしょう?正解は全部!

大人でも間違える、ややこしいごみの分別問題に独自設計したバーコードと読み取りロボットとソフトウェアでチャレンジした小学生チーム!


ことわざカルタ by 頭文字AI(新島学園中学校)
外国人と楽しくカルタをしたい!キータッチを使った、電子化したカルタで自動正誤判定!
多言語がかかれたカルタを複数音声を同時に鳴らす、聖徳太子カルタとか楽しいかも?


甲州弁翻訳アプリShingen by 都留高校アプリ開発チーム(山梨県立都留高等学校)
地域の歴史と文化を音で感じる方言、甲州弁の魅力をアプリで伝える意欲作。
かざすと全部甲州弁になって見えるメガネとか、字幕付き甲州弁YouTuberとか、甲州弁ゲームとか、地元ならではのチャレンジおもしろい!


ぶんべつくん by ほぐろ(長野県松本工業高等学校)
ごみの路上不法投棄に対するITを使った解決案。分別していれてくれる人に正解データを作ってもらい、面倒な人にはお金を払って自動分別機能を提供するとか?
路上のゴミを自動的に拾って捨てくれるゴミ拾いロボットの開発も夢がある。


編模様(あもーよ) イラスト手編み支援アプリ by 武田和樹(豊島区立西池袋中学校)
お母さんがオリジナルな絵柄を手編みするときのイライラを、アプリ化して解消!
Scratchの作品をUnity化して、iPhone/Androidアプリとしてもリリース!
写真取り込みから手編みスタートまでがシンプル。全くの初心者向けに編み方の基本を教える動画をつけて、道具入手からサポートするとアフィリエイト収益上がるかも。


信州ナビβ by ちくわ(信州大学教育ダク部付属長野中学校等)
既存のサービス「信州ナビ」はターゲットが絞り込めていないとバッサリ!
欲しい機能を加えたり、いらない機能を減らせたりできるオープンソース化という手もありますね!
Scratchでは作りにくいところ、HTML+JavaScriptで作って GitHub などでの公開がいいですよっ。
JavaScriptはじめのいっぽ「はじめてのJS」つくるひとをつくる@木更津高専 - first step of JS


パトライト監視IoT by あなたの心のパトライト監視し隊(長岡高専)
工場内、機械の異常を知らせるパトライト、現状は、人が1-2時間に一度で見回っているそうなので、お手軽IoT化!


画像解析やAI判別から、光センサーを使った安価なものまで、手軽に始められるけど、実際の現場ではいろんなトラブル満載。
だからこそ、実際の現場でできる高専の強みが活きますね!


ななせぐッ by ちょっと終バス逃しました(長岡高専)
こちらも現場の声、ノギスからのデータ取りを効率化したい!
7セグの数値読み取りは、太陽光パネルの発電量や、各種センサーの値表示をリアルタイムオープンデータ化するのに便利そう!
良い名前なので、ぜひオープンソース化検討をっ


三世代サポート運転アプリ by サボテン(トライデントコンピュータ専門学校)
高齢になった親の運転を孫の声を使って子が見守るソリューション。
使いたくなる工夫として、孫が運転を褒めてくれるとよいかも!IchigoSodaやsakura.ioで月額66円、車に常備しちゃうのもいいかも!


カジタツ〜目指せ家事の達人〜 by MOST(トライデントコンピュータ専門学校)
ローカルルールが大変な家事を、動画で助ける家庭円満支援アプリ。
あえてシェアしないサービスもいろいろ登場しそう!


心に残る研究紹介エージェント by kbylab(信州大学)
大きいはそのままインパクトになる!説明の要所要所でズームするとぐっと印象が強くなるという仮設、実際やってしまうのがすごい!
音声合成に違和感あるので、ボイスチェンジャーなど使って、なめらかな音声を録音したもの使うとかするとぐっと実用に近くなりますね。


プリント点呼 by ZONE(トライデントコンピュータ専門学校)
30人を受け持つ先生がプリントで宿題を出したら、その点呼だけでも一苦労。
QRコードシールを事前配布して、読み取り専用アプリでその手間を削減!QRコードシールの脇にマークシート状の評価ボックスを加えて読み取れるようにすると成績管理も同時にできて更に楽かも?


マイミー MyMe by 阿部正寛(未来工作ゼミ、(株)アソビズム)
判断支援アプリ。小さな判断履歴を積み重ねていくと、自分の特性が分かって、間違いにくくなるのかも。
先人の失敗判断も見られるとおもしろそう。


eat marker by eat marker(トライデントコンピュータ専門学校)
10分の滞在を自動的に訪問と見なしてすばやく検索できる飲食店管理アプリ。
SNSを使わない多数派に広がれれればおもしろい展開もありえそう!


朝からドキドキアラーム by 形山竜一(長野高専)
リマインダーとアラームを融合したサービス。いっそ予定を叫びながら起こしてくれるといいのかも?
今日やらねばならないことを連打して、倒すゲームが済むまで止まらないアラームとか、学生の朝起きられない問題は世界共通、学生ならではの発想にヒントあり?


聖地コネクト by ARTSAR(情報文化学園アーツカレッジヨコハマ)
日本のアニメ好きが世界から集まる聖地をARで言語の壁を越えて楽しむサービス。ファンアートが各地で楽しめるのもおもしろそう。


自転車盗難推測Bot by 川野邉賢二((株)日本システム技研)
長野県の自転車盗難オープンデータを使った、ココに自転車停めても大丈夫?をLINEボットで聞けるサービス!
信州ITバレー構想の実現にはデータが大事!まさにそう!


審査委員長の信州大学不破さんからの来年に向けて力強いメッセージ!
待ってもこないSociety5.0、みんなで創ろう!


長岡高専パトライトIoTチーム、全国大会「起業家甲子園」に向けて、やるき十分!

links
- まわそう「ものづくりループ」、起業家甲子園の挑戦権を手にした中学生、信州未来アプリコンテスト0 2016年
- オープンデータ・学生・地方創生、信州未来アプリコンテスト0 2015年

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