Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Python駿河 #1 MicroPythonを使ってみよう!
Search
Hiroshi Sano
May 25, 2019
Technology
0
1.1k
Python駿河 #1 MicroPythonを使ってみよう!
Python駿河 勉強会 #1 ~Pythonで出来ることプレゼン大会~
発表資料です。
Hiroshi Sano
May 25, 2019
Tweet
Share
More Decks by Hiroshi Sano
See All by Hiroshi Sano
調整さんの調整結果をカレンダーへ登録するGPTsを作った話
hrsano645
1
630
Gmail APIでメールを扱おうとしたら結構辛かった話
hrsano645
0
480
非同期タスクキューを使って業務効率化した話
hrsano645
1
1.3k
非同期タスクキューを使って業務を自動化しまくった話
hrsano645
0
1.2k
ご当地グルメマップを作ろう
hrsano645
2
1.3k
Python駿河 #28 富士宮焼きそばを食べ歩きしたいのでマップを作った話
hrsano645
0
120
IoTLT vol.51 お風呂IoT Mk2作りました
hrsano645
1
1.9k
IoTLT vol.46 蛇口IoTに挑戦した記録
hrsano645
1
950
PWA入門してみた話(iPad Proで!)
hrsano645
1
1k
Other Decks in Technology
See All in Technology
Git in Team
kawaguti
PRO
2
130
空間を設計する力を考える / 20251004 Naoki Takahashi
shift_evolve
PRO
3
410
生成AIで「お客様の声」を ストーリーに変える 新潮流「Generative ETL」
ishikawa_satoru
1
330
Findy Team+のSOC2取得までの道のり
rvirus0817
0
380
小学4年生夏休みの自由研究「ぼくと Copilot エージェント」
taichinakamura
0
500
AI時代だからこそ考える、僕らが本当につくりたいスクラムチーム / A Scrum Team we really want to create in this AI era
takaking22
7
3.7k
Trust as Infrastructure
bcantrill
0
350
オープンソースでどこまでできる?フォーマル検証チャレンジ
msyksphinz
0
100
「Verify with Wallet API」を アプリに導入するために
hinakko
1
250
動画データのポテンシャルを引き出す! Databricks と AI活用への奮闘記(現在進行形)
databricksjapan
0
150
Shirankedo NOCで見えてきたeduroam/OpenRoaming運用ノウハウと課題 - BAKUCHIKU BANBAN #2
marokiki
0
150
多様な事業ドメインのクリエイターへ 価値を届けるための営みについて
massyuu
1
400
Featured
See All Featured
Writing Fast Ruby
sferik
629
62k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
How GitHub (no longer) Works
holman
315
140k
Speed Design
sergeychernyshev
32
1.1k
Practical Orchestrator
shlominoach
190
11k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.7k
Git: the NoSQL Database
bkeepers
PRO
431
66k
A Tale of Four Properties
chriscoyier
160
23k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
610
Making the Leap to Tech Lead
cromwellryan
135
9.5k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Transcript
MicroPythonでIoTデバイスを 作ろう Python駿河 勉強会 #1 ~Pythonで出来ることプレゼン大会~ 2019/05/25 Hiroshi Sano
おまえ誰よ? - 氏名:佐野浩士(Hiroshi Sano) Twitter@hrs_sano645 - 佐野設計事務所: 機械の設計屋(設計以外全部担当) - 東海大学
高輪キャンパス 石井研究室(お手伝い) - あと米農家 2
本日のネタは - Python3.7のdataclass便利そうだから使ってみた話 - 関数型プログラミングHOWTOを読んでみよう のどちらかのつもりでしたが...
昨日...
IoTLT Vol51に参加してました!
None
つまり IOTLTめちゃくちゃ楽しかった! コチラに作業量持っていかれてネタが仕込めなくて諦めた。。 ごめんなさいm(_ _)m
つまり Pythonの会だしMicroPython使ってみてた話をすれば一石二鳥 (実は去年のshizuoka.py の焼き直しにも近いが 一応最新版として、、) (もっというと去年の Unagi.py & Python東海でやられてたきゅうり農家の小池さんネタ。。 m(_
_)m)
MicroPythonとは - Pyboardというボードで動くArm系のCPUで動作するPython処理系 - もともとKickstarterプロジェクト - コミュニティが広がってさまざまなボード向けのPortができる arduino, ESPシリーズ, BBC
Micro:bit ボード向けのライブラリも整備
MicroPythonとは - 日本だとESPシリーズ, Micro:bitが使いやすい(注:個人の感想です) - CPython的には3.4あたりを参考としてる つまりNot CPython, ただUnixPortがあってLinuxなどでも動く -
いろんなライブラリがCPythonに負けじとビルドインされてる といってもフル機能ではなくて簡易版の立ち位置 - MicroPython-libやサードパーティライブラリで拡張性豊富 ESP32
Python3の文法を使えるのは かなり良いです
今日紹介するもの - MicroPythonをどうすれば利用できるか紹介 - お風呂IoT Mk2を作るときに使ったライブラリ紹介 - センサーなどのライブラリで操作 - WEB
APIアクセス - WEB API(ライク)なweb server環境 やらないこと - MicroPythonの詳しい導入方法
というわけでネタ元を紹介
お風呂IoT Mk2作りました 【令和初!】IoT縛りの勉強会! IoTLT vol.51 @日本オラクル 2019/05/24 Hiroshi Sano
蛇口IoT お風呂IoT Mk2 完成イメージ お風呂IoT ESP32 ESP32 フロートスイッチ =水位を見る 温度センサー
ホースコック =蛇口にマウント &サーボモーター ディスプレイ
蛇口IoT お風呂IoT Mk2 完成イメージ お風呂IoT ESP32 ESP32 フロートスイッチ =水位を見る 温度センサー
ホースコック =蛇口にマウント &サーボモーター ディスプレイ ライブラリにて操 作 サーボ:PWM ライブラリで操作 温度:onewire,ds18x20 フロートスイッチ:GPIO ディスプレイ: I2C,ssd1306 Wifi+WEBAPI
ESP32とは IoT界隈のニューフェイスでかなり高機能 - Wifi, BLEが使えるArduino互換のボード - 各種センサー, GPIO, シリアル通信系 -
ファームを変えることでさまざまなプログラミング環境でも使える - arduino(標準), C, ブロックプログラミング , Javascript(obniz, Moddable SDK) mruby-esp32 etc… https://en.wikipedia.org/wiki/ESP32#Programming
MicroPython & ESP32の情報源 - 公式ドキュメント - 現在の最新ファームウェアは V1.10 - クイックスタートを見ると良いです
- Interface 2018/9月 - 自分はこれを見て買ってきました
使えるようになるまでの手順 1. 新品のESP32を買う 2. MicroPythonの公式ファームをDL 3. 関連ツールをDL a. esptool: ESP32のファームウェアを焼いたりメンテしたりするもの
b. adafruit-ampy:ESP32のファイルをFTPコマンドライクに操作する 4. MicroPythonをPCへ接続 5. シリアル通信(screen, picocom, teratermなど)でREPL操作 使えるようになった!
実際の例
まとめ - MicroPythonはPythonを扱ったことがある方ならとっつきやすい - ESP32あたりが一番使いやすい環境かなと。 - 値段もまあまあな値段なので試しやすいと思う - 豊富なライブラリがあって、これできないかなと考えても 実現しやすい環境
- 企業というかプロジェクト/コミュニティの方針が今後の心配事。 環境は超オススメ! コミュニティ分裂問題が心配なのが一抹の不安 でも困ったら助け合う精神で行きたいですね!