SlideShare una empresa de Scribd logo
1 de 28
fukuoka.ex #11
ElixirでIoT 第2回
「環境センシングとデータ表示を
サクっと?やってみた」
高瀬 英希
takase@i.kyoto-u.ac.jp
SlideShare仕様に
対応するための無駄ページです
P.4以降の下線と枠付き画像には
ハイパーリングが付いています
SlideShare仕様に
対応するための無駄ページです
P.4以降の下線と枠付き画像には
ハイパーリングが付いています
takasehideki/fukuokaex11
自己紹介
• @takasehideki
− 京都大学 情報学研究科 助教
− [Hot!!] SWEST20 プログラム委員長
− IPSJ-SIGEMB 運営幹事
− ROS Japan UG 関西勉強会 主催
− TOPPERSプロジェクト 特別会員
• 主な研究開発 on GitHub
− SWORDS:ソフトウェア志向の協調設計環境 for Zynq
− mROS:ロボットソフトウェアの組込み軽量実行環境
• Elixir歴:2ヶ月
− C原理主義者+Pythonは好き
4
takasehideki/fukuokaex11
組込み屋さんから見たElixir
• 読み書きしやすい/生産性が高い
• 関数型/並行処理プログラミング
• 分散システム対応/スケールしやすい
• 耐障害性が高い
• 軽量(なのかな??)
5
IoTデバイスの開発にも
使えるんじゃね??
takasehideki/fukuokaex11
IoTとは?
• Internet of Things
− あらゆるモノやコトにヒトを
インターネットに!
− デバイス/エッジ/クラウドの
連携でシステムを構築
デバイス屋とクラウド屋の
間には超えられない壁,,,
6https://dzone.com/articles/what-is-an-iot-platform
takasehideki/fukuokaex11
連載記事を
Qiitaで配信中!
前回#8のネタ
7
takasehideki/EEloT
(前回#8のオチ)
ところでこれってIoT??
8
コストは?
発熱は?
性能は?
メモリ量は?
エッジサーバに
使うってなら
分かるけど,,,
ただのアーキ
比較じゃね??
IoTデバイスで
Linux動かせるなら
苦労しないよ!!
Zynqなら
FPGA/PL部
使わな損や!!
センサとかモータ繋ぎたい!
でもGPIOとかデバドラどうしよ??
takasehideki/EEloT
(前回#8のオチ)
次回予告??
9
fukuoka.ex #XX
ElixirでIoTデバイスを開発してみた
~GPIO・デバドラ・FPGA編~
協力者を募集中!
Elixirで新しい世界へ!!
takasehideki/fukuokaex11
世界の「ElixirでIoT」
10
• HWもSWもセットでご提供!!
• Erlang VMがbare metalで動く
• 300MHz Cortex-M7 & 64MB Flash
• On-board WLAN & Pmodコネクタ
• ラズパイ等が(限定)対象
• メモリサイズ数10MB!
• クロス開発はツラい,,,
takasehideki/fukuokaex11
今回のお題目
IoTに限らないElixir/Phoenixアプリ開発の
TIPS(a.k.a.ハマりどころ)も共有します
11
Elixirとラズパイ3Bで
環境データをセンシングして
表示させてみよう
takasehideki/fukuokaex11
やったこと
1. GrovePiライブラリを調べて試してみた
2. 温湿度センサDHT11を使ってみた
3. LCD displayにデータを表示してみた
4. センサデータをCSVで書き出してみた
5. Phoenixページにグラフを表示してみた
6. 書き出したCSVデータをグラフ表示してみた
7. 環境センシングしながらリアルタイムで
グラフ表示してみた!
12
おもろかったら
starください!!
GitHubのディレクトリ対応:
1. grovepi_example/
2. dht_sensor/
3. home_weather_dislay_host/
4. home_weather_csv/
5. phx_chartjs/
6. phx_csvchart/
7. home_weather_phx/
DB使えよw
takasehideki/fukuokaex11
論より証拠!
13
takasehideki/fukuokaex11
論より証拠!
14
takasehideki/fukuokaex11
1. GrovePiライブラリ
• Groveとは?:
− IoTのセンサ・アクチュエータが画一化されたモジュール
最低でも86種類?(@mine820さんのQiita記事調べ)
− 入出力ピンx4のGroveコネクタで簡単に付け替えできる
− ラズパイやArduinoなどに適合するシールドもあり
→ IoTシステムをお手軽にラピッドプロトタイピング!
15
takasehideki/fukuokaex11
1. GrovePiライブラリ
• nerves_grove
− Elixirで使えるGroveライブラリ from Nerves
− ブレッドボードで稲作の必要あり
− 下回りは elixir_ale (Elixir Actor Library for Embedded)
ラズパイ用のGPIOs, I2C, SPIのライブラリ
MIX_ENV=prod で動かす必要あり?
さらにその下は GenServer/SuperVisor
− 2016年9月で開発止まってる,,,
16
takasehideki/fukuokaex11
1. GrovePiライブラリ
• GrovePi
− ラズパイのGrovePi+シールドに対応したライブラリ
田んぼを耕さなくていい!
− examples も用意されていて親切!
alarm/
demo_pivotpi/
demo_rgblcd
home_weather_display/
 Nervesアプリ,,,
led_fade/
17
Qiita「ElixirでIoT#5」にて
導入方法などを解説してます!!
takasehideki/fukuokaex11
1. GrovePiライブラリ
• GrovePiライブラリの使い方
18
def project do
[
…
build_embedded: Mix.env() == :prod,
start_permanent: Mix.env() == :prod,
….
]
end
defp deps do
[
{:grovepi, github: "adkron/grovepi", branch: "master"}
]
end
mix.exs
Tips: master branchを指定しないと
エラーになるライブラリもある
takasehideki/fukuokaex11
2. 温湿度センサ
• Temperature&Humidity Sensor
− DHT11を搭載したデジタル温度湿度センサ
40ビットのビットフィールドで取得される
 温度:0.0~50.0℃ / 1.0℃単位 / ±2.0℃誤差
 湿度:20.0~90.0% / 1.0%単位 / ±5.0%誤差
− Elixirからの使い方はソース嫁 m(_ _)m
3秒毎に値の差分があれば標準出力
ホスト上(nerves_runtime無し)で動くようにしてます
19
takasehideki/fukuokaex11
3. LCDモジュールに表示
• LCD RGB Backlight
− 16x2の英数字が出力可能
API/サンプルが豊富で使いやすい!
− バックライトがRGBで制御できる(カッコイイ
20
takasehideki/fukuokaex11
4. センサデータをCSVに書き出し
• DHTから取得した温度湿度データをCSVで保存
• Timexで現在時刻も取得 ref. @kobataro, @piacere
21
# Create CSV file
File.write "dhtdata.csv", ""
…
# Get date
date = Timex.now("Asia/Tokyo")
|> Timex.format!( "%Y-%m-%d %H:%M:%S", :strftime )
# Write data to CSV
File.write "dhtdata.csv", "#{date},#{temp},#{humidity}n", [:append]
#File.write "../phx_csvchart/priv/static/dhtdata.csv",
# "#{date},#{temp},#{humidity}n", [:append]
…
home_weather_csv/lib/home_weather_csv.ex
Tips: 現在時刻の取得と変換
Tips: ファイル位置は任意でもOK
(プロジェクトトップからの相対パス)
takasehideki/fukuokaex11
5. Phoenixにグラフ表示
• Chart.js を使用 (日本語ページもあり)
− オフラインでも使えるはず??
22
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.2/Chart.min.js">
</script>
<canvas id="myChart" width="400" height="400"></canvas>
<script>
var ctx = document.getElementById("myChart");
var myChart = new Chart(ctx, {
type: 'bar',
data: {
…
phx_chartjs/lib/phx_chartjs_web/templates/page/index.html.eex
Tips: Chart.jsのURLを直接指定じゃ
ないとPhoenixエラー?
takasehideki/fukuokaex11
5. Phoenixにグラフ表示
23
takasehideki/fukuokaex11
6. CSVをグラフ表示
• 4. home_weather_csv/ で書き出したデータを
Chart.jsでグラフ表示
− $ mix phx.new phx_csvchart --no-ecto --no-brunch
− phx_csvchart/prliv/static/dhtdata.csv にあるとする
− ソースは「アルゴリズム雑記」よりほぼパクリ^^;
24
plug Plug.Static,
#at: "/", from: :home_weather_phx, gzip: false,
#only: ~w(css fonts images js favicon.ico robots.txt)
at: "/", from: :home_weather_phx, gzip: false
phx_csvchart/lib/phx_csvchart_web/endpoint.ex
Tips: Static Fileをサーブする
takasehideki/fukuokaex11
6. CSVをグラフ表示
• TIPS: MIX_ENV=prod でPhoenix立ち上げ
− $ cp config/dev.exs config/prod.exs して編集する
25
config :phx_csvchart, PhxCsvchartWeb.Endpoint,
http: [port: 4000],
debug_errors: true,
code_reloader: false,
check_origin: false,
server: true,
watchers: [],
secret_key_base: System.get_env("PhxCsvchart_SEC_KEY_BASE")
config/prod.exs
Tips: prod だとreloadできない
takasehideki/fukuokaex11
7. リアルタイムに!
• 1つのElixir/Phoenixプロジェクトに統合
− home_weather_phx/lib/home_weather_phx/
application.ex と
home_weather_phx/lib/home_weather_phx.ex に
GrovePiアプリ記述を追加
無駄に超音波センサも追加
26
config :home_weather_phx, HomeWeatherPhxWeb.Endpoint,
live_reload: [
patterns: [
~r{priv/static/.*(js|css|png|jpeg|jpg|gif|svg|csv)$},
config/dev.exs
Tips: phoenix_live_reloadで
CSV変更時にページを自動更新
MIX_ENV=dev でも
動くんかい!
takasehideki/fukuokaex11
まとめ
• 環境センシングとデータ表示をサクっと?やってみた
 「サクッと?」だったかどうかは議論の余地あり^^;
− GrovePi: nerves_grove + elixir_ale, deps
− Phoenix: live_reload, prod.exs, priv/
• 「ElixirでIoT」の良さと課題
− Phoenix連携はエッジサーバ向けにも良い!
− GenServer/Supervisor で polling だけはツラい
− リアルタイム性の保証なんてあかんでしょうね,,,
− 相も変わらずLinuxは必須です
• fukuoka.ex の ecosystem はいいよ!!
− Very Thanks!! @piacere, @enpedasi, @tsuchro, @kobataro
27
takasehideki/fukuokaex11
次回予告??
28
fukuoka.ex #XX
ElixirでIoTロボットを開発してみた
~ROS通信・FPGA編~
協力者を募集中!
Elixirで新しい世界へ!!

Más contenido relacionado

Similar a ElixirでIoT 第2回 「環境センシングとデータ表示を サクっと?やってみた」

ドキュメントを作りたくなってしまう魔法のツール「Sphinx」
ドキュメントを作りたくなってしまう魔法のツール「Sphinx」ドキュメントを作りたくなってしまう魔法のツール「Sphinx」
ドキュメントを作りたくなってしまう魔法のツール「Sphinx」Yoshiki Shibukawa
 
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜Hideki Takase
 
mROS:組込みデバイス向けのROS1ノード軽量実行環境
mROS:組込みデバイス向けのROS1ノード軽量実行環境mROS:組込みデバイス向けのROS1ノード軽量実行環境
mROS:組込みデバイス向けのROS1ノード軽量実行環境Hideki Takase
 
オープンソースのETLツール Pentaho Data Integration(PDI)のご紹介_20140906
オープンソースのETLツール Pentaho Data Integration(PDI)のご紹介_20140906オープンソースのETLツール Pentaho Data Integration(PDI)のご紹介_20140906
オープンソースのETLツール Pentaho Data Integration(PDI)のご紹介_20140906Teruo Kawasaki
 
20150227 イタンジプログラミング講座テキスト第4回
20150227 イタンジプログラミング講座テキスト第4回20150227 イタンジプログラミング講座テキスト第4回
20150227 イタンジプログラミング講座テキスト第4回Yusuke Yokozawa
 
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識Katsuhiro Morishita
 
SharePoint Framework をはじめよう #spfx
SharePoint Framework をはじめよう #spfxSharePoint Framework をはじめよう #spfx
SharePoint Framework をはじめよう #spfxHirofumi Ota
 
2020/06/16 tsjp-azure-staticwebapps-vs_codespaces
2020/06/16 tsjp-azure-staticwebapps-vs_codespaces2020/06/16 tsjp-azure-staticwebapps-vs_codespaces
2020/06/16 tsjp-azure-staticwebapps-vs_codespacesIssei Hiraoka
 
卒論執筆・スライド作成のポイント
卒論執筆・スライド作成のポイント卒論執筆・スライド作成のポイント
卒論執筆・スライド作成のポイントTsubasa Hirakawa
 
Metahub for github
Metahub for githubMetahub for github
Metahub for githubSuguru Oho
 
ROS JAPAN Users Group Meetup 03
ROS JAPAN Users Group Meetup 03ROS JAPAN Users Group Meetup 03
ROS JAPAN Users Group Meetup 03Daiki Maekawa
 
Apache CloudStack Documentation
Apache CloudStack DocumentationApache CloudStack Documentation
Apache CloudStack DocumentationKimihiko Kitase
 
JavaScript on GitHub (#kyotojs)
JavaScript on GitHub  (#kyotojs)JavaScript on GitHub  (#kyotojs)
JavaScript on GitHub (#kyotojs)y_uuki
 
localstackによるAWS Lambdaの開発環境を、miniconda上でつくったら簡単便利だった話
localstackによるAWS Lambdaの開発環境を、miniconda上でつくったら簡単便利だった話localstackによるAWS Lambdaの開発環境を、miniconda上でつくったら簡単便利だった話
localstackによるAWS Lambdaの開発環境を、miniconda上でつくったら簡単便利だった話真治 米田
 
ドキュメントの継続的改善―Sphinxを使いながら
ドキュメントの継続的改善―Sphinxを使いながらドキュメントの継続的改善―Sphinxを使いながら
ドキュメントの継続的改善―Sphinxを使いながらsoishino
 
開発チーム管理で役立ったVSCode拡張機能
開発チーム管理で役立ったVSCode拡張機能開発チーム管理で役立ったVSCode拡張機能
開発チーム管理で役立ったVSCode拡張機能Masaki Suzuki
 

Similar a ElixirでIoT 第2回 「環境センシングとデータ表示を サクっと?やってみた」 (20)

ドキュメントを作りたくなってしまう魔法のツール「Sphinx」
ドキュメントを作りたくなってしまう魔法のツール「Sphinx」ドキュメントを作りたくなってしまう魔法のツール「Sphinx」
ドキュメントを作りたくなってしまう魔法のツール「Sphinx」
 
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
 
mROS:組込みデバイス向けのROS1ノード軽量実行環境
mROS:組込みデバイス向けのROS1ノード軽量実行環境mROS:組込みデバイス向けのROS1ノード軽量実行環境
mROS:組込みデバイス向けのROS1ノード軽量実行環境
 
オープンソースのETLツール Pentaho Data Integration(PDI)のご紹介_20140906
オープンソースのETLツール Pentaho Data Integration(PDI)のご紹介_20140906オープンソースのETLツール Pentaho Data Integration(PDI)のご紹介_20140906
オープンソースのETLツール Pentaho Data Integration(PDI)のご紹介_20140906
 
20150227 イタンジプログラミング講座テキスト第4回
20150227 イタンジプログラミング講座テキスト第4回20150227 イタンジプログラミング講座テキスト第4回
20150227 イタンジプログラミング講座テキスト第4回
 
Tekton 入門
Tekton 入門Tekton 入門
Tekton 入門
 
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
 
Osc2010 Slide
Osc2010 SlideOsc2010 Slide
Osc2010 Slide
 
SharePoint Framework をはじめよう #spfx
SharePoint Framework をはじめよう #spfxSharePoint Framework をはじめよう #spfx
SharePoint Framework をはじめよう #spfx
 
2020/06/16 tsjp-azure-staticwebapps-vs_codespaces
2020/06/16 tsjp-azure-staticwebapps-vs_codespaces2020/06/16 tsjp-azure-staticwebapps-vs_codespaces
2020/06/16 tsjp-azure-staticwebapps-vs_codespaces
 
卒論執筆・スライド作成のポイント
卒論執筆・スライド作成のポイント卒論執筆・スライド作成のポイント
卒論執筆・スライド作成のポイント
 
Metahub for github
Metahub for githubMetahub for github
Metahub for github
 
JSDoc ToolKit
JSDoc ToolKitJSDoc ToolKit
JSDoc ToolKit
 
ROS JAPAN Users Group Meetup 03
ROS JAPAN Users Group Meetup 03ROS JAPAN Users Group Meetup 03
ROS JAPAN Users Group Meetup 03
 
Apache CloudStack Documentation
Apache CloudStack DocumentationApache CloudStack Documentation
Apache CloudStack Documentation
 
JavaScript on GitHub (#kyotojs)
JavaScript on GitHub  (#kyotojs)JavaScript on GitHub  (#kyotojs)
JavaScript on GitHub (#kyotojs)
 
localstackによるAWS Lambdaの開発環境を、miniconda上でつくったら簡単便利だった話
localstackによるAWS Lambdaの開発環境を、miniconda上でつくったら簡単便利だった話localstackによるAWS Lambdaの開発環境を、miniconda上でつくったら簡単便利だった話
localstackによるAWS Lambdaの開発環境を、miniconda上でつくったら簡単便利だった話
 
ドキュメントの継続的改善―Sphinxを使いながら
ドキュメントの継続的改善―Sphinxを使いながらドキュメントの継続的改善―Sphinxを使いながら
ドキュメントの継続的改善―Sphinxを使いながら
 
DBpedia Japanese
DBpedia JapaneseDBpedia Japanese
DBpedia Japanese
 
開発チーム管理で役立ったVSCode拡張機能
開発チーム管理で役立ったVSCode拡張機能開発チーム管理で役立ったVSCode拡張機能
開発チーム管理で役立ったVSCode拡張機能
 

Más de Hideki Takase

Rclex: A Library for Robotics meet Elixir
Rclex: A Library for Robotics meet ElixirRclex: A Library for Robotics meet Elixir
Rclex: A Library for Robotics meet ElixirHideki Takase
 
高い並列性能と耐障害性を持つElixirとNervesでIoTの新しいカタチを切り拓く
高い並列性能と耐障害性を持つElixirとNervesでIoTの新しいカタチを切り拓く高い並列性能と耐障害性を持つElixirとNervesでIoTの新しいカタチを切り拓く
高い並列性能と耐障害性を持つElixirとNervesでIoTの新しいカタチを切り拓くHideki Takase
 
関数型っぽくROSロボットプログラミング
関数型っぽくROSロボットプログラミング関数型っぽくROSロボットプログラミング
関数型っぽくROSロボットプログラミングHideki Takase
 
ROS 2 Client Library for E^2
ROS 2 Client Library for E^2ROS 2 Client Library for E^2
ROS 2 Client Library for E^2Hideki Takase
 
Elixir/Nervesはナウでヤングなcoolなすごいやつ
Elixir/NervesはナウでヤングなcoolなすごいやつElixir/Nervesはナウでヤングなcoolなすごいやつ
Elixir/NervesはナウでヤングなcoolなすごいやつHideki Takase
 
関数型言語ElixirのIoTシステム開発への展開
関数型言語ElixirのIoTシステム開発への展開関数型言語ElixirのIoTシステム開発への展開
関数型言語ElixirのIoTシステム開発への展開Hideki Takase
 
FPGAをロボット(ROS)で「やわらかく」使うには
FPGAをロボット(ROS)で「やわらかく」使うにはFPGAをロボット(ROS)で「やわらかく」使うには
FPGAをロボット(ROS)で「やわらかく」使うにはHideki Takase
 
ElixirでIoT!?ナウでヤングでcoolなNervesフレームワーク
ElixirでIoT!?ナウでヤングでcoolなNervesフレームワークElixirでIoT!?ナウでヤングでcoolなNervesフレームワーク
ElixirでIoT!?ナウでヤングでcoolなNervesフレームワークHideki Takase
 
Rclex: ElixirでROS!!
Rclex: ElixirでROS!!Rclex: ElixirでROS!!
Rclex: ElixirでROS!!Hideki Takase
 
QoS for ROS 2 Dashing/Eloquent
QoS for ROS 2 Dashing/EloquentQoS for ROS 2 Dashing/Eloquent
QoS for ROS 2 Dashing/EloquentHideki Takase
 
Nerves!? Elixir!?? 関数型言語でれっつIoT開発!!
Nerves!? Elixir!?? 関数型言語でれっつIoT開発!!Nerves!? Elixir!?? 関数型言語でれっつIoT開発!!
Nerves!? Elixir!?? 関数型言語でれっつIoT開発!!Hideki Takase
 
ROSCon2019 参加報告:オーバビュー+α
ROSCon2019 参加報告:オーバビュー+αROSCon2019 参加報告:オーバビュー+α
ROSCon2019 参加報告:オーバビュー+αHideki Takase
 
ElixirでFPGAを設計する
ElixirでFPGAを設計するElixirでFPGAを設計する
ElixirでFPGAを設計するHideki Takase
 
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜Hideki Takase
 
ZytleBot: ROSベースの自律移動ロボットへのFPGAの統合に向けて
ZytleBot: ROSベースの自律移動ロボットへのFPGAの統合に向けてZytleBot: ROSベースの自律移動ロボットへのFPGAの統合に向けて
ZytleBot: ROSベースの自律移動ロボットへのFPGAの統合に向けてHideki Takase
 
Cockatrice: A Hardware Design Environment with Elixir
Cockatrice: A Hardware Design Environment with ElixirCockatrice: A Hardware Design Environment with Elixir
Cockatrice: A Hardware Design Environment with ElixirHideki Takase
 
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~Hideki Takase
 
TOPPERSプロジェクトのご紹介@IoT ALGYAN
TOPPERSプロジェクトのご紹介@IoT ALGYANTOPPERSプロジェクトのご紹介@IoT ALGYAN
TOPPERSプロジェクトのご紹介@IoT ALGYANHideki Takase
 
ElixirでFPGAハードウェアが作れちゃう,かも!!?
ElixirでFPGAハードウェアが作れちゃう,かも!!?ElixirでFPGAハードウェアが作れちゃう,かも!!?
ElixirでFPGAハードウェアが作れちゃう,かも!!?Hideki Takase
 
オースティンから見えてきた「ElixirでIoT」の世界  ~「Nerves」が拓くElixirでのデバイスコントロールを総レビュー~
オースティンから見えてきた「ElixirでIoT」の世界  ~「Nerves」が拓くElixirでのデバイスコントロールを総レビュー~オースティンから見えてきた「ElixirでIoT」の世界  ~「Nerves」が拓くElixirでのデバイスコントロールを総レビュー~
オースティンから見えてきた「ElixirでIoT」の世界  ~「Nerves」が拓くElixirでのデバイスコントロールを総レビュー~Hideki Takase
 

Más de Hideki Takase (20)

Rclex: A Library for Robotics meet Elixir
Rclex: A Library for Robotics meet ElixirRclex: A Library for Robotics meet Elixir
Rclex: A Library for Robotics meet Elixir
 
高い並列性能と耐障害性を持つElixirとNervesでIoTの新しいカタチを切り拓く
高い並列性能と耐障害性を持つElixirとNervesでIoTの新しいカタチを切り拓く高い並列性能と耐障害性を持つElixirとNervesでIoTの新しいカタチを切り拓く
高い並列性能と耐障害性を持つElixirとNervesでIoTの新しいカタチを切り拓く
 
関数型っぽくROSロボットプログラミング
関数型っぽくROSロボットプログラミング関数型っぽくROSロボットプログラミング
関数型っぽくROSロボットプログラミング
 
ROS 2 Client Library for E^2
ROS 2 Client Library for E^2ROS 2 Client Library for E^2
ROS 2 Client Library for E^2
 
Elixir/Nervesはナウでヤングなcoolなすごいやつ
Elixir/NervesはナウでヤングなcoolなすごいやつElixir/Nervesはナウでヤングなcoolなすごいやつ
Elixir/Nervesはナウでヤングなcoolなすごいやつ
 
関数型言語ElixirのIoTシステム開発への展開
関数型言語ElixirのIoTシステム開発への展開関数型言語ElixirのIoTシステム開発への展開
関数型言語ElixirのIoTシステム開発への展開
 
FPGAをロボット(ROS)で「やわらかく」使うには
FPGAをロボット(ROS)で「やわらかく」使うにはFPGAをロボット(ROS)で「やわらかく」使うには
FPGAをロボット(ROS)で「やわらかく」使うには
 
ElixirでIoT!?ナウでヤングでcoolなNervesフレームワーク
ElixirでIoT!?ナウでヤングでcoolなNervesフレームワークElixirでIoT!?ナウでヤングでcoolなNervesフレームワーク
ElixirでIoT!?ナウでヤングでcoolなNervesフレームワーク
 
Rclex: ElixirでROS!!
Rclex: ElixirでROS!!Rclex: ElixirでROS!!
Rclex: ElixirでROS!!
 
QoS for ROS 2 Dashing/Eloquent
QoS for ROS 2 Dashing/EloquentQoS for ROS 2 Dashing/Eloquent
QoS for ROS 2 Dashing/Eloquent
 
Nerves!? Elixir!?? 関数型言語でれっつIoT開発!!
Nerves!? Elixir!?? 関数型言語でれっつIoT開発!!Nerves!? Elixir!?? 関数型言語でれっつIoT開発!!
Nerves!? Elixir!?? 関数型言語でれっつIoT開発!!
 
ROSCon2019 参加報告:オーバビュー+α
ROSCon2019 参加報告:オーバビュー+αROSCon2019 参加報告:オーバビュー+α
ROSCon2019 参加報告:オーバビュー+α
 
ElixirでFPGAを設計する
ElixirでFPGAを設計するElixirでFPGAを設計する
ElixirでFPGAを設計する
 
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
 
ZytleBot: ROSベースの自律移動ロボットへのFPGAの統合に向けて
ZytleBot: ROSベースの自律移動ロボットへのFPGAの統合に向けてZytleBot: ROSベースの自律移動ロボットへのFPGAの統合に向けて
ZytleBot: ROSベースの自律移動ロボットへのFPGAの統合に向けて
 
Cockatrice: A Hardware Design Environment with Elixir
Cockatrice: A Hardware Design Environment with ElixirCockatrice: A Hardware Design Environment with Elixir
Cockatrice: A Hardware Design Environment with Elixir
 
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~
 
TOPPERSプロジェクトのご紹介@IoT ALGYAN
TOPPERSプロジェクトのご紹介@IoT ALGYANTOPPERSプロジェクトのご紹介@IoT ALGYAN
TOPPERSプロジェクトのご紹介@IoT ALGYAN
 
ElixirでFPGAハードウェアが作れちゃう,かも!!?
ElixirでFPGAハードウェアが作れちゃう,かも!!?ElixirでFPGAハードウェアが作れちゃう,かも!!?
ElixirでFPGAハードウェアが作れちゃう,かも!!?
 
オースティンから見えてきた「ElixirでIoT」の世界  ~「Nerves」が拓くElixirでのデバイスコントロールを総レビュー~
オースティンから見えてきた「ElixirでIoT」の世界  ~「Nerves」が拓くElixirでのデバイスコントロールを総レビュー~オースティンから見えてきた「ElixirでIoT」の世界  ~「Nerves」が拓くElixirでのデバイスコントロールを総レビュー~
オースティンから見えてきた「ElixirでIoT」の世界  ~「Nerves」が拓くElixirでのデバイスコントロールを総レビュー~
 

ElixirでIoT 第2回 「環境センシングとデータ表示を サクっと?やってみた」

Notas del editor

  1. まぁバズワード ヒトによってドメインと捉え方が違うので注意が必要
  2. Craft and deploy bulletproof embedded software in Elixir 公式では12MB Create amazing Internet of Things designs without soldering or dropping down to C. 
  3. DB使えよ!!
  4. (湿度の8ビット整数部+湿度の8ビット小数部+温度の8ビット整数部+温度の小数部の8ビット+ 8ビットのチェックサム)
  5. @enpedasiさん情報
  6. @tsuchroさん情報
  7. Registry機能でPub/Subできる??