ハードを知らないソフトエンジニアがIoTをかじってみた話

51
ハハハハハハハハハハハハハハハハハ IoT ハハハハハハハハ ハハハハ 2016-10-06 ハハハハ

Transcript of ハードを知らないソフトエンジニアがIoTをかじってみた話

Page 1: ハードを知らないソフトエンジニアがIoTをかじってみた話

ハードを知らないソフトエンジニアがIoT をかじってみた話

久野ゼミ 2016-10-06

福井眞吾

Page 2: ハードを知らないソフトエンジニアがIoTをかじってみた話

自己紹介❖ 福井 眞吾(ふくい しんご) @ SilkAndTiki

❖ コンピュータ&通信機器メーカー勤務❖ プログラミング言語の研究❖ Java でシステム開発❖ 損益管理(エクセルが相棒)

❖ 昨年、役職定年になり、週休3日制を選択

Page 3: ハードを知らないソフトエンジニアがIoTをかじってみた話

ソフトしか知りません高校 「特別数学」でコンピュータと出会う大学、大学院 数学科を母体とする情報科学科会社  Smalltalk, Lisp, Actor, Java, JavaScript

Page 4: ハードを知らないソフトエンジニアがIoTをかじってみた話

でも、高校時代に悟ってました

コンピュータ手足がなければただの箱1977 年 京大式カードに記す

Page 5: ハードを知らないソフトエンジニアがIoTをかじってみた話

高校で使ったコンピュータ処理結果の表現手段が貧弱1行ディスプレイ プリンタ カセットテープ

HP9820A

Page 6: ハードを知らないソフトエンジニアがIoTをかじってみた話

グラフを印刷したかったけれど・・

Page 7: ハードを知らないソフトエンジニアがIoTをかじってみた話

悟りが確信にかわる

1977 年

Page 8: ハードを知らないソフトエンジニアがIoTをかじってみた話

確信に変わる

Xerox Alto Smalltalk 1982 年

Page 9: ハードを知らないソフトエンジニアがIoTをかじってみた話

30 年経過

Page 10: ハードを知らないソフトエンジニアがIoTをかじってみた話

IoT デバイスが沢山でてきた!

Arduino Raspberry Pi Edison

mbed ESP-WROOM-02

・・・

Page 11: ハードを知らないソフトエンジニアがIoTをかじってみた話

IoT の大まかな構成要素

ダッシュボード

サービス

学習出力 : LED, リレー , …

入力 : ボタン、センサー…他のデバイス

IoT デバイス

ネットワーク

Page 12: ハードを知らないソフトエンジニアがIoTをかじってみた話

こんなものを作ってます (1)自動水やり装置植物に定期的に水をやる装置蛇口、コンセントのないベランダで1週間稼働水やりに成功したか失敗したかをメールで通知してくれる。

Page 13: ハードを知らないソフトエンジニアがIoTをかじってみた話

こんなもの作ってます (2)TV への接近をやめさせる装置

子供が TV の画面に張り付いて見るのを止めさせたい親からの製作依頼人感センサーで接近を感知するとリモコン信号を発して TVを消す(消したことを親に通知)(スマホの操作で電源 ON )

人感センサー 赤外線発信赤外線受信

Page 14: ハードを知らないソフトエンジニアがIoTをかじってみた話

私の IoT デバイス遍歴

Page 15: ハードを知らないソフトエンジニアがIoTをかじってみた話

IoT を始めたきっかけ

“スマホのWiFiと GPSの位置情報をIFTTTで拾って cloudBitでサーボを動かす簡単なしくみ。電子工作の経験は不要で、こーいうのを子どもでも誰でも 30分くらいで作れてしまう。”

このブログを読んでやる気になった

http://qiita.com/kazunori279/items/7dbbb525ab0cf6d5d9b5

Page 16: ハードを知らないソフトエンジニアがIoTをかじってみた話

littleBits

部品を磁石でくっつけて回路を作れる

Page 17: ハードを知らないソフトエンジニアがIoTをかじってみた話

IoT 的部品もある

Arduino cloudBit

Wifi 経由でネット接続プログラマブル

Page 18: ハードを知らないソフトエンジニアがIoTをかじってみた話

すばらしいけど、高い

Page 19: ハードを知らないソフトエンジニアがIoTをかじってみた話

よし、王道に戻ろう・・・Arduino

専用 IDE で楽々プログラミング安い 4,000 〜 400 円

Page 20: ハードを知らないソフトエンジニアがIoTをかじってみた話

ブレッドボードで回路作り

内部配線

Page 21: ハードを知らないソフトエンジニアがIoTをかじってみた話

半田付けはちょびっと足を付けるときだけ

Page 22: ハードを知らないソフトエンジニアがIoTをかじってみた話

でも問題が・・・Arduino

専用 IDE で楽々プログラミング安い 4,000 〜 400 円通信には追加ボードが必要メモリが少ない→単純なプログラムのみ

Page 23: ハードを知らないソフトエンジニアがIoTをかじってみた話

Johnny-Five で問題を一挙解決!

PC上の node.js で動作IO コマンドをデバイスに送って制御ネットワーク通信は PC が担う

IO コマンドコマンドを受け取ってピンを操作

Page 24: ハードを知らないソフトエンジニアがIoTをかじってみた話

でも、デバイスの数だけ PC が必要各部屋の温度を測定したい場合

Page 25: ハードを知らないソフトエンジニアがIoTをかじってみた話

ふと、我にかえる 母艦が必須だと意味ないよね?このタイプはよくある: 他の母艦型デバイス

SONY MESH

iPad が必須ユカイ工学 konashi2.0

iPhone が必須

Page 26: ハードを知らないソフトエンジニアがIoTをかじってみた話

よし、王道に戻ろう・・・Raspberry Pi

Linux なので何でも動く node.js, ruby, ・・・そこそこ安い 5,000 円前後zero は $5 〜だけど通信なしLinux の設定をしたいわけじゃない・・・ワクワク感が・・・

Page 27: ハードを知らないソフトエンジニアがIoTをかじってみた話

お、これは!ESP-WROOM-02 (ESP8266)

Wifi内蔵(技適取得済み)Arduino の IDE でコーディングできるつまり Arduino + Wifi = WROOM-02

安い 500 円前後Sleep モードありWi-Fi でプログラク書き換え可能 (OTA)チップ単体だと電子工作が大変

Page 28: ハードを知らないソフトエンジニアがIoTをかじってみた話

開発ボードがいろいろ出てきた

スイッチサイエンスESPr Developer

2,160 円Seeed

Wio Node1,100 円 (秋月 )

Page 29: ハードを知らないソフトエンジニアがIoTをかじってみた話

例題 1 Lチカ

Page 30: ハードを知らないソフトエンジニアがIoTをかじってみた話

例題 2 ボタンを押してメール送信

GMAIL

Page 31: ハードを知らないソフトエンジニアがIoTをかじってみた話

ボタン押す→メール送信

Page 32: ハードを知らないソフトエンジニアがIoTをかじってみた話

もっとお手軽な Wio Node

・ WROOM-02 + 専用ファームウエア・ grove規格のセンサーを 2個接続できる

Page 33: ハードを知らないソフトエンジニアがIoTをかじってみた話

使い方結線 スマホで設定 Web API生成

Page 34: ハードを知らないソフトエンジニアがIoTをかじってみた話

例:ボタンの Web API

Page 35: ハードを知らないソフトエンジニアがIoTをかじってみた話

ネットワーク構成seeed 社 web サーバ

接続

自前の web サーバ

Web API

Page 36: ハードを知らないソフトエンジニアがIoTをかじってみた話

歳なので C++ でコードをかくのは辛いJavaScript を直接実行できるデバイスがある!

tessel2 Kinoma Element

Page 37: ハードを知らないソフトエンジニアがIoTをかじってみた話

Kinoma Element ECMAScript 6 97%

専用 IDE でコーディング、デバッギング、シミュレーションWifi搭載技適取得済み!$24.95

日本未発売(米国内のみ出荷)

Page 38: ハードを知らないソフトエンジニアがIoTをかじってみた話

IoT の I 側

Page 39: ハードを知らないソフトエンジニアがIoTをかじってみた話

クラウドサービスAWS

IBM Bluemix

IFTTT

myThings

freeboard

・・・

Page 40: ハードを知らないソフトエンジニアがIoTをかじってみた話

AWS IoT

Page 41: ハードを知らないソフトエンジニアがIoTをかじってみた話

IFTTT

Page 42: ハードを知らないソフトエンジニアがIoTをかじってみた話

freeboard  ダッシュボードサービス

Page 43: ハードを知らないソフトエンジニアがIoTをかじってみた話

クラウドとの通信プロトコル

MQTTHTTP  ・・・

通信サービスpub nubmilkcocoa  ・・・

Page 44: ハードを知らないソフトエンジニアがIoTをかじってみた話

ビジネスの住み分け

Page 45: ハードを知らないソフトエンジニアがIoTをかじってみた話

パソコンでコードを書く人が  ほとんどいないのと同じように専用ハード

クラウドサービス

汎用ハード

Page 46: ハードを知らないソフトエンジニアがIoTをかじってみた話

「学習・ホビー」と「製品」のギャップ大

乗り越える谷は大きくて深い基盤、筐体、組み立ての委託法律遵守販路、デリバリー

でも、大学生が自作デバイスを売ってたりする。  https://liginc.co.jp/236620

Page 47: ハードを知らないソフトエンジニアがIoTをかじってみた話

わみさんの nefry とcocoabit

Page 48: ハードを知らないソフトエンジニアがIoTをかじってみた話

参考情報

Page 49: ハードを知らないソフトエンジニアがIoTをかじってみた話

部品を買うお店スイッチサイエンス      https://www.switch-science.com/

秋月電子通商 http://akizukidenshi.com/

千石電商 https://www.sengoku.co.jp/

アマゾン https://www.amazon.co.jp

Page 50: ハードを知らないソフトエンジニアがIoTをかじってみた話

勉強会IoT縛りの勉強会 ! IoTLT    http://iotlt.connpass.com

他にもたくさん → 勉強会サイトで検索connpass http://connpass.com/dots. https://eventdots.jp

お薦め

Page 51: ハードを知らないソフトエンジニアがIoTをかじってみた話

参考文献1. 舘野祐一 : はじめての IoT, WEB+DB PRESS Vol.91 pp.41-72 (2016)

2. 国野亘 : Web脳接続! Wi-Fix3G/LTE で IoT 製作 , トランジスタ技術  2016-09 pp.35-114

3. 金丸隆志 : カラー図解 最新 Raspberry Pi で学ぶ電子工作 作って動かしてしくみがわかる , 講談社ブルーバックス (2016)

4. 舘野祐一 : 電子工作に必要な道具達 , クックパッド開発者ブログ http://techlife.cookpad.com/entry/2015/10/28/080000