クリエイター手抜きプロジェクト[515]IoT編 WebのJavaScriptからIoTのJavaScriptへ
── 古籏一浩 ──

投稿:  著者:


Web関係の仕事をしていると、IoTという用語が気になる方はいませんか? IoT関係を少しでも勉強しておいた方がいいんじゃないかなあ、と思ってる人もいるのではないでしょうか。

Webは複雑にはなりましたが、多分なくなることはないでしょう。Web技術だけ身に付けておいても、食うには困らない気はします。興味がなければ、IoTの世界に足を踏み入れる必要はないでしょう。

IoTの世界はWebとは違った技術が必要になります。特にハードウェアの知識が要求されることが多々ありますし、とにかく自分で考えて解決しないといけないこともあります。

「大変そうだからやめておこうかな」という人もいるかもしれません。

ただ、何をするかによって、求められる技術レベルはかなり異なります。1からハードウェアを設計して作るのでなければ、Web技術をうまく転用しIoTの世界で利用することもできます。




特に転用しやすいのがJavaScript言語と、UNIX系の技術です。多く利用されているラズベリーパイではLinux(Ubuntu)が動作しますので、node.jsを動かせば既存のJavaScriptのノウハウを活かした処理ができます。

・Raspberry Pi(ラズベリーパイ)
https://ja.wikipedia.org/wiki/Raspberry_Pi


ラズベリーパイはLinux系のOSだけでなく、Windows 10や特定の機能に特化したOSを使うことができます。使用するOSは、SDカードを入れて起動するだけという手軽さです。

また、最近のラズベリーパイは高速なので、低価格小型パソコンとしても使えます。手のひらサイズのパソコンです。もっとも、パソコン並みに性能がいいスマートフォンも手のひらに乗るわけですが。

ラズベリーパイは、Web上でも書籍などでも多くの情報があります。技術力のある人は、最初からラズベリーパイを使った方がよいでしょう。

一応私のサイトにも、ラズベリーパイのページを用意してあります。Android Thingsも記載がありますが、これは現時点(2017/9/3)ではバージョンが低いので、将来かなり変更される可能性大です。あくまでも参考として見てもらった方がよいでしょう。

・Raspberry Piを楽しもう
http://www.openspc2.org/reibun/RaspberryPI/


また、Arduino(アルドゥイーノ)という手もあります。制御プログラムを書くなら、アルドゥイーノの方がラズベリーパイよりいいかもしれません。

・Arduino(アルドゥイーノ)
https://ja.wikipedia.org/wiki/Arduino


アルドゥイーノも多くの情報がありますので、どちらのハードウェアを使うかは目的の処理に応じて使い分ければよいでしょう。

「もっとわかりやすく簡単なので勉強したい」という人もいるでしょう。そんな人におすすめなのが「こどもOS」であるIchigoLatteです。

・IchigoLatte
http://ichigolatte.shizentai.jp/


IchigoLatteはJavaScript OSを搭載したワンボードマイコンです。ワンボードマイコンとは、要するにラズベリーパイやアルドゥイーノと同じ、基板剥き出しのシロモノということです。

組み立て完成品で2,376円なので、勉強用に購入するには悪くない金額です。自分でハンダ付けするならもう少し安い組み立てキットもあります。

・IchigoLatte(組み立て済完成品)
 https://hello002.stores.jp/items/58817272c3b8dfeae2005f85


・IchigoLatte(プリント基板ハーフキット)
 https://hello002.stores.jp/items/58816f31c3b8df0df6000cdf


IchigoLatteは、「こどもパソコンIchigoJam」と互換性があるハードウェアになっています。

このため、IchigoJamをIchigoLatteに、IchigoLatteをIchigoJamにすることができます。JavaScriptよりBASICがよければIchigoJamに、JavaScriptの方がよければIchigoLatteを入れればいいでしょう。

・IchigoJam
http://ichigojam.net/


IchigoLatteにはSDカードスロットなどはなく、IC内のメモリを書き換えることでOSが入ります。特に問題なければ書き換えることもありませんが、用途によってOS/使用プログラム言語を使い分けることができるというのは便利です。

また、今後新たなOSが開発される可能性もあります。Ruby言語をベースにしたものや、Pythonをベースにしたもの、独自の言語を搭載したOSなど、様々なパターンが考えられます。

IchigoLatteの手軽さは、他のワンボードマイコンとは比べものになりません。IchigoJamも手軽でしたが、IchigoLatteも同じように、こどもでも使えるようになっています。

電源オンで1秒もかからずOS、エディタが起動します。パソコンのように起動を待つこともありません。

「JavaScriptベースのOSは遅いのでは?」

そう思う人もいるでしょう。WebOS、FirefoxOSなどいくつかありましたが、いずれも低速で、広く普及することはありませんでした。

しかし、IchigoLatteは違います。非常に高速にJavaScriptが動作します。というのも、動作するJavaScriptエンジンは階層としてはハードウェアの上に直接乗っかる形になっているためです。

間に余計なOSやアプリケーションなどがないからです。実際、高速すぎてウェイトを入れないといけないことは多々あります。

IchigoLatteで、もうひとつ大きなポイントがあります。それはラズベリーパイやアルドゥイーノと違い、設計・開発が日本国内で行われているということです。

こういうのは意外に大きなポイントで、困ったら直接日本語で開発者に聞くこともできますし、欲しい機能を追加してもらうこともできます。

次回から、IchigoLatteを使ってプログラムを作成していきましょう。IoTに詳しくなくても大丈夫です。IchigoLatteは至ってシンプルで、分かりやすいからです。


【古籏一浩】openspc@alpha.ocn.ne.jp
http://www.openspc2.org/


突如、中国から大量の迷惑メールが届くようになってしまいました。日本の迷惑メールは遠慮がちな送り方だったけど、中国はやはり違う。1分間に数通、問答無用で送ってきます。10倍人口多いから迷惑メールも10倍なのかも。

夏の終わりと言えば諏訪湖の新作花火大会。ということで撮影してきたので、サイトにアップしておきました。時間のある方はどうぞ。
http://footage3.openspc2.org/seminar/hanabi/20170902/


・InDesign CS6 JavaScript Reference
http://www.openspc2.org/reibun/InDesignCS6/ref/


・Photoshop CS6 JavaScript Reference
http://www.openspc2.org/reibun/PhotoshopCS6/ref/


・みんなのIchigoLatte入門 JavaScriptで楽しむゲーム作りと電子工作
https://www.amazon.co.jp/dp/4865940936

[正誤表]
http://www.openspc2.org/book/error/ichigoLatte/


・After Effects自動化サンプルプログラム 上巻、下巻
https://www.amazon.co.jp/dp/4844397591

https://www.amazon.co.jp/dp/4844397605


・IchigoLatteでIoT体験
https://www.amazon.co.jp/dp/B06X3X1CHP

http://digiconcart.com/dccartstore/cart/info/2561/218591


・みんなのIchigoJam入門 BASICで楽しむゲーム作りと電子工作
http://www.amazon.co.jp/dp/4865940332/


・Photoshop自動化基本編
http://www.amazon.co.jp/dp/B00W952JQW/


・Illustrator自動化基本編
http://www.amazon.co.jp/dp/B00R5MZ1PA/


・4K/ハイビジョン映像素材集
http://www.openspc2.org/HDTV/


・クリエイター手抜きプロジェクト
http://www.openspc2.org/projectX/