RICC PIoT Workshop ハンズオン

319 Views

March 08, 21

スライド概要

This is an introduction for the hans-on meetup of ITRC RICC/PIoT Workshop 2021.
We served the hands-on for understanding Elixir/Nerves for easy development of embedded systems.
Written in Japanese.

profile-image

working on rebirthing regional societies as a professor of Kochi tech. Also on telecommunication and renewable energy as board members of business startups.

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

RICC PIoT Workshop ハンズオン Nerves は自由な IoT への扉 2021.03.05 菊池豊 @kikuyuta 1

2.

謝辞 • https://algyan.connpass.com • https://seeed.connpass.com • https://www.seeedstudio.com • https://nerves-jp.connpass.com • https://kochi-ex.connpass.com Creative Commons 2021.03.05 菊池豊 @kikuyuta 2

3.

kikuyuta とは @kikuyuta 2021.03.05 菊池豊 @kikuyuta 3

4.

Nerves とは • IoT プラットフォーム • Buildroot 上に構築 – 組込み Linux 構成ツール • Elixir 言語を使用 – Erlang VM でいごく https://www.nerves-project.org 2021.03.05 菊池豊 @kikuyuta 4

5.

Nerves JP とは Elixir で IoT を 2019.09 爆誕 オンライン コミュニティ 2021.03.05 菊池豊 @kikuyuta 5

6.

Nerves JP の活動 https://nerves-jp.connpass.com 2021.03.05 https://qiita.com/advent-calendar/2020/nervesjp 菊池豊 @kikuyuta 6

7.

今 熱い言語・プラットフォーム https://qiita.com/advent-calendar/2020 /ranking/subscriptions /categories/programming_languages https://qiita.com/advent-calendar/2020 /ranking/feedbacks/categories/iot 2021.03.05 菊池豊 @kikuyuta 7

8.

各地の Elixir/Nerves 関連活動 https://nerves-jp.connpass.com/ Sapporo.beam 2021.03.05 菊池豊 @kikuyuta 8

9.

Nerves の構造 Platform Framework Tooling 2021.03.05 菊池豊 @kikuyuta 9

10.

Nerves の応用例 Le Tote: ⾐料品倉庫のRFIDと キオスクによる在庫管理 Hop: 顔認証機能付きの キオスクビールサーバ FarmBot: スマートファームの実現 2021.03.05 菊池豊 @kikuyuta 10

11.

ヒト用とモノ用 また一つになりて蘇らん ヒト用 モノ用 https://ja.wikipedia.org/wiki/TK-80 The Elixir logo are copyright (c) 2012 Plataformatec. 2021.03.05 菊池豊 @kikuyuta 11

12.

IoT に現代的な科学技術を • 処理のモジュール化 – 関数とパイプ • デバイス制御の抽象化 – プロセスとメッセージ • 例外処理からの解放 – プロセスツリーとスーパバイザ • 直観的なビット処理 – bitstring 型とパターンマッチ • いごいてるコードの更新 – Dynamic loading と Hot code swapping 2021.03.05 菊池豊 @kikuyuta 12

13.

なぜ IoT に Nerves なのか • なにかと * over IP なのでいろいろ面倒くさくない – RS232C/UART 経由でコンソール出さなくて良い – 毎回 SDカードを差し替えて焼かなくて良い – たくさんデバイスがあっても個別に相手しなくて良い – 特定の開発環境に自分を合わせなくて良い • 徒弟制度・家庭内手工業からの IoT の解放 – 要するに Nerves は「自由だ!」「ロックだ!」 2021.03.05 菊池豊 @kikuyuta 13

14.

Nerves がいごくデバイス Raspberry Pi STM32MP1xx BeagleBone x86_64 2021.03.05 Custom Boards 菊池豊 @kikuyuta (Lichee Nano) 14

15.

そのほかの Elixir IoT • GRiSP2 – RTOS 上の Erlang VM – 2019春に雲出資成功 • いまだ出荷されず… • AtomVM – ESP32/STM32 でいごく • まだ不安定そう… 2021.03.05 菊池豊 @kikuyuta 15

16.

ハンズオンの悩み • 短い時間でどれぐらい面白さを分かってもらえるか – 強烈な取捨選択を迫られる • バラバラの進度をどのように取り扱うか – 速い人は退屈、遅い人は落ちこぼれ、かつ σ が大きそう – 最初の環境構築でしくじると完全に離脱するリスク • どれぐらい多くの環境をカバーするか – 主催者で用意すると均一になるけど費用がかかる – 参加者が持ち帰って遊べないと意味がない 2021.03.05 菊池豊 @kikuyuta 16

17.

本日のハンズオンのコンセプト • Elixir/Nerves 的な面白さを伝えます – IoT 用 Nerves と Web 用 Phoenix とを同時にやる – 本質的な最低限の動作までやってもらう • 環境構築をできるだけ簡略化する – 最初のSDカードを主催者で準備、開発環境を各自準備 • 自分の環境設定をしてこなかった参加者は見捨てる • オンサイトで手練が多そうだから比較的ラクでは – 目指せ全員ゴール 2021.03.05 菊池豊 @kikuyuta 17

18.

本日のハンズオンの概要 • 2021.03.05(fri) 14:15〜17:15 – 口上、基本編、応用編準備、休憩、応用編 • 必要なパーツ類を全部供与・貸与します – RosCon 袋とステッカーは差し上げます • それ以外は終わったら返して下さい! • スタッフは kochi.ex メンバーです – ElixirConf US T-shirt を着てます – 西内さん、大崎さん • 株式会社シティネットより 2021.03.05 菊池豊 @kikuyuta 18

19.

本日のハンズオンの内容 • 基本編 – 環境構築、GPIOでのボタンとLEDでボタチカ • 応用編準備 – 時間がかかるので休憩の前に仕掛ける • きゅ〜け〜 • 応用編 – I2Cでの温度計測と Web 連携 • 温湿度センサの準備が間に合わなかったので温度のみセンサで • お片付け – 全部が元の箱に戻るまでがハンズオンです 2021.03.05 菊池豊 @kikuyuta 19

20.

さあはじめましょう We believe in rough consensus and blinking LEDs 論よりLチカ 2021.03.05 菊池豊 @kikuyuta 20