Contenu connexe Similaire à #kochiex がなんかええもん つくったらしい回 (15) Plus de Yutaka Kikuchi (20) #kochiex がなんかええもん つくったらしい回4. 背景
2022.05.20 菊池 豊 @kochi.ex 4
非手続き型
言語
(e.g. FP)
自律広域分
散システム
再生可能
エネルギー
事業
楽しく気持ちよく素敵なシステム
(特に小水力発電用)を
作れないものかね
6. Nerves / Elixir が融合を可能にするのでは
2022.05.20 菊池 豊 @kochi.ex 6
https://ja.wikipedia.org/wiki/TK-80
IoT
FA
7. 課題と解決
2022.05.20 菊池 豊 @kochi.ex 7
• IoT で使うようなマシン、FA じゃ使えねぇ
– FA でも使えるマシンを作ろう → 作った
• FA で使うつもりの Elixir プログラムは作れるのか
– 小規模な小水力発電所用ソースコード起こそう → 作った
• どこかで実際に FA ビジネスで使わないと説得力ない
– 小水力発電所で使おう → 使った、金も動いた
8. 今日のお話
2022.05.20 菊池 豊 @kochi.ex 8
• PLC風 Nerves マシン ExiBee を作った話
– by kikuyuta
• modbus/TCP で PLC と Nerves とを連携する
– by myasu
• Nerves と発電所 PLC とを連携する
– by nishiuchikazuma
• Nerves と GCP とを連携する & こわ〜いはなし
– by mitsu
10. システム構成概要
2022.05.20 菊池 豊 @kochi.ex 10
除塵機連携
水位センサ
発電所制御
クラウド連携
modbus/tcp
http / mqtt Modbus
Server/Slave
Client/Master
Client/Master
GCP
PLC
14. 基本的な考え方
• Nerves が簡単にいごくように
– あまり特別なハードウェアだと buildroot が大変
• 商用のPLCに負けない I/O 点数
• 取り扱いの楽な電源周り
• かゆいところに手が届く機能群
• オサレな外見
2022.05.20 菊池 豊 @kochi.ex 15
20. とにかく実績は作ったが…
2022.05.20 菊池 豊 @kochi.ex 25
• せっかくのマシンを使いきれてない…
– セキュリティチップ乗せたのに Nerves Hub 使ってない
– 電源断検出機能あるのに自動シャットダウンしてない
– WiFi / BLE チップ乗せてるけど何もさせてない
• ビジネスに乗せたと行っても無理やり感強い
– 村役場 → JV → クラウドグリッド→ ナインレイヤーズ・シティ
ネット
21. まだまだ未完成
2022.05.20 菊池 豊 @kochi.ex 26
• ときどきおかしくなる…
– どうも除塵機の動作が終わるタイミング…
– JIS B3502 の電磁ストレス試験はしてない…
– を使ってトラブルシュート中
22. PLC 生フォン・ノイマンマシン の驚異
2022.05.20 菊池 豊 @kochi.ex 27
• 走ってるプログラムをいきなり入れ替えることができる
– RUN中書込みといいます
– Elixir / Erlang だと Hot code reloading が該当
• メモリの中を直接読み書きできる
23. FAに浸透していくために
2022.05.20 菊池 豊 @kochi.ex 28
• PLC は苦手なところをアピールできるはず
– 100%置き換えるという文脈ではなく
– 分散システムに向かっていくとか得意な方向で
• ラダーダイアグラムに近い概念でプログラミング可能か
– ラダーのラングは「イベント発生→アクション実行」
– Elixir のプログラミングや pub/sub の概念と近い
24. Nerves/Elixir で FA を
We believe in rough consensus
and blinking LEDs
論よりLチカ
2022.05.20 菊池 豊 @kochi.ex 29