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
590
Gmail APIでメールを扱おうとしたら結構辛かった話
hrsano645
0
460
非同期タスクキューを使って業務効率化した話
hrsano645
1
1.3k
非同期タスクキューを使って業務を自動化しまくった話
hrsano645
0
940
ご当地グルメマップを作ろう
hrsano645
2
1.2k
Python駿河 #28 富士宮焼きそばを食べ歩きしたいのでマップを作った話
hrsano645
0
120
IoTLT vol.51 お風呂IoT Mk2作りました
hrsano645
1
1.8k
IoTLT vol.46 蛇口IoTに挑戦した記録
hrsano645
1
920
PWA入門してみた話(iPad Proで!)
hrsano645
1
990
Other Decks in Technology
See All in Technology
Amazon ECS & AWS Fargate 運用アーキテクチャ2025 / Amazon ECS and AWS Fargate Ops Architecture 2025
iselegant
16
5.4k
OpenHands🤲にContributeしてみた
kotauchisunsun
1
420
実践! AIエージェント導入記
1mono2prod
0
160
地図も、未来も、オープンに。 〜OSGeo.JPとFOSS4Gのご紹介〜
wata909
0
110
Navigation3でViewModelにデータを渡す方法
mikanichinose
0
220
エンジニア向け技術スタック情報
kauche
1
250
登壇ネタの見つけ方 / How to find talk topics
pinkumohikan
3
360
Javaで作る RAGを活用した Q&Aアプリケーション
recruitengineers
PRO
1
100
rubygem開発で鍛える設計力
joker1007
2
190
Liquid Glass革新とSwiftUI/UIKit進化
fumiyasac0921
0
200
生成AIで小説を書くためにプロンプトの制約や原則について学ぶ / prompt-engineering-for-ai-fiction
nwiizo
3
980
Observability infrastructure behind the trillion-messages scale Kafka platform
lycorptech_jp
PRO
0
140
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Statistics for Hackers
jakevdp
799
220k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
KATA
mclloyd
29
14k
For a Future-Friendly Web
brad_frost
179
9.8k
Fireside Chat
paigeccino
37
3.5k
What's in a price? How to price your products and services
michaelherold
246
12k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
Site-Speed That Sticks
csswizardry
10
660
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
281
13k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Rebuilding a faster, lazier Slack
samanthasiow
81
9.1k
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あたりが一番使いやすい環境かなと。 - 値段もまあまあな値段なので試しやすいと思う - 豊富なライブラリがあって、これできないかなと考えても 実現しやすい環境
- 企業というかプロジェクト/コミュニティの方針が今後の心配事。 環境は超オススメ! コミュニティ分裂問題が心配なのが一抹の不安 でも困ったら助け合う精神で行きたいですね!