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
560
Gmail APIでメールを扱おうとしたら結構辛かった話
hrsano645
0
430
非同期タスクキューを使って業務効率化した話
hrsano645
1
1.3k
非同期タスクキューを使って業務を自動化しまくった話
hrsano645
0
780
ご当地グルメマップを作ろう
hrsano645
2
1.2k
Python駿河 #28 富士宮焼きそばを食べ歩きしたいのでマップを作った話
hrsano645
0
110
IoTLT vol.51 お風呂IoT Mk2作りました
hrsano645
1
1.8k
IoTLT vol.46 蛇口IoTに挑戦した記録
hrsano645
1
900
PWA入門してみた話(iPad Proで!)
hrsano645
1
980
Other Decks in Technology
See All in Technology
AWS全冠芸人が見た世界 ~資格取得より大切なこと~
masakiokuda
5
6.2k
AIと開発者の共創: エージェント時代におけるAIフレンドリーなDevOpsの実践
bicstone
1
320
Writing Ruby Scripts with TypeProf
mame
0
170
ガバクラのAWS長期継続割引 ~次の4/1に慌てないために~
hamijay_cloud
1
260
技術者はかっこいいものだ!!~キルラキルから学んだエンジニアの生き方~
masakiokuda
2
270
Amazon CloudWatch を使って NW 監視を行うには
o11yfes2023
0
170
React ABC Questions
hirotomoyamada
0
490
Spring Bootで実装とインフラをこれでもかと分離するための試み
shintanimoto
7
840
AWSの新機能検証をやる時こそ、Amazon Qでプロンプトエンジニアリングを駆使しよう
duelist2020jp
1
250
ドキュメント管理の理想と現実
kazuhe
1
200
Terraform Cloudで始めるおひとりさまOrganizationsのすゝめ
handy
2
180
4/16/25 - SFJug - Java meets AI: Build LLM-Powered Apps with LangChain4j
edeandrea
PRO
2
120
Featured
See All Featured
How GitHub (no longer) Works
holman
314
140k
Rebuilding a faster, lazier Slack
samanthasiow
80
8.9k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.2k
Scaling GitHub
holman
459
140k
Unsuck your backbone
ammeep
670
57k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Building Applications with DynamoDB
mza
94
6.3k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.1k
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
[RailsConf 2023] Rails as a piece of cake
palkan
54
5.4k
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あたりが一番使いやすい環境かなと。 - 値段もまあまあな値段なので試しやすいと思う - 豊富なライブラリがあって、これできないかなと考えても 実現しやすい環境
- 企業というかプロジェクト/コミュニティの方針が今後の心配事。 環境は超オススメ! コミュニティ分裂問題が心配なのが一抹の不安 でも困ったら助け合う精神で行きたいですね!