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
620
Gmail APIでメールを扱おうとしたら結構辛かった話
hrsano645
0
470
非同期タスクキューを使って業務効率化した話
hrsano645
1
1.3k
非同期タスクキューを使って業務を自動化しまくった話
hrsano645
0
1.1k
ご当地グルメマップを作ろう
hrsano645
2
1.3k
Python駿河 #28 富士宮焼きそばを食べ歩きしたいのでマップを作った話
hrsano645
0
120
IoTLT vol.51 お風呂IoT Mk2作りました
hrsano645
1
1.9k
IoTLT vol.46 蛇口IoTに挑戦した記録
hrsano645
1
940
PWA入門してみた話(iPad Proで!)
hrsano645
1
1k
Other Decks in Technology
See All in Technology
知られざるprops命名の慣習 アクション編
uhyo
10
2.4k
モダンフロントエンド 開発研修
recruitengineers
PRO
2
280
AIが住民向けコンシェルジュに?Amazon Connectと生成AIで実現する自治体AIエージェント!
yuyeah
0
260
人を動かすことについて考える
ichimichi
2
320
JOAI発表資料 @ 関東kaggler会
joai_committee
1
270
EKS Pod Identity における推移的な session tags
z63d
1
200
ドキュメントはAIの味方!スタートアップのアジャイルを加速するADR
kawauso
3
350
ECS モニタリング手法大整理
yendoooo
1
120
GitHub Copilot coding agent を推したい / AIDD Nagoya #1
tnir
2
4.5k
生成AI利用プログラミング:誰でもプログラムが書けると 世の中どうなる?/opencampus202508
okana2ki
0
190
Backboneとしてのtimm2025
yu4u
4
1.5k
Browser
recruitengineers
PRO
3
280
Featured
See All Featured
Scaling GitHub
holman
462
140k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Done Done
chrislema
185
16k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
Agile that works and the tools we love
rasmusluckow
329
21k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
The Language of Interfaces
destraynor
160
25k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
4 Signs Your Business is Dying
shpigford
184
22k
The Cult of Friendly URLs
andyhume
79
6.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
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あたりが一番使いやすい環境かなと。 - 値段もまあまあな値段なので試しやすいと思う - 豊富なライブラリがあって、これできないかなと考えても 実現しやすい環境
- 企業というかプロジェクト/コミュニティの方針が今後の心配事。 環境は超オススメ! コミュニティ分裂問題が心配なのが一抹の不安 でも困ったら助け合う精神で行きたいですね!