PyCon JP 2017Yuta Kitagami

Python の本気! RaspberryPi や Edison を 使った IoT システムの構築 Yuta Kitagami 北神 雄太 @nonNoisea

Transcript of PyCon JP 2017Yuta Kitagami

Python の本気!

RaspberryPi や Edison を

使った IoT システムの構築

Yuta Kitagami北神 雄太@nonNoisea

■ お前、誰よ名前 北神雄太年齢 今年で30本職 発明家副職 技術コンサルタント生業 某大手部品屋で技術部所属高校時代からハードウェアに手を出し、組み込み開発や FPGA の開発を手がけ、その後 Python と出会いプログラマーとして生計を立てようと思ったが、ハードウェアの知識とソフトウェアの知識、両方を必要とする時代はまだ無く、職に困ったので部品屋でRaspberryPi や Edison など最新技術を国内へ紹介してるひと。

Twitter @nonNoiseFaseBook kitagami yuta所属 ArtifactNoise,LLP

代表発明家

■ 本が出たよ!!

■ IoT 時代において

Python 最強だから。

■ なんで??

いや、RasppberryPiEdison で

ハードウェア扱えるしネットワークに繋がる

なんで??

本プレゼンは、IoT 製作者の発表ですが、

〜が出来ましたはつまらないので、

なぜ出来たのかを話します。

■ 注意

■ 注意

よって、少し

マニアックです。

ゆるしてください♪

■ 疑問

なぜ、Python でハードウェアが

扱えるの?

ハードウェア用のライブラリがあるからです。

■ 答え

ライブラリは、どう作られて

いるの?

■ 疑問

■ 答え

C 言語で書かれたライブラリの

Python ラッパー

■ 実際の C ソース

ここが CPU固有のアドレスを指定する箇所。肝となる部分

CPU

C 言語ならCPU の絶対アドレス

(レジスタ)を直に叩く事もできる!

C 言語はこういう芸当が

得意!!

■ 結果!

なので、ハードウェアライブラリはほぼ C 言語!

■ 結果!

偉い人は考えた。C 言語のライブラリを

Python で使えるようにしてしまえば良い。

■ 結果!

偉い人は考えた。C 言語のライブラリを

Python で使えるようにしてしまえば良い。

■ 結果!

C 言語で書かれたハードウェアライブラリが、Python でも使えるように

なった。

■ よって!

■ 実際は?

C 言語ソース

Python 用C ソース

■ って事は?

IoT( 組込み機器含む )C 言語が最強じゃないか

■ って事は?

そんな最強 C を更に強化する Python最強に決まってる。

本当に??

簡単な話、圧倒的なPython ライブラリが

多くあるからさ

Python

OS 制御系OSsubprocessect...

ネットワーク系requestsocketect...

DB 系SQLiteTinyDBect...

数理系mathNumpiect...

ディープラン系Kerascaffeect...

■ ほんの一例です。

HW 系

akilib

データの動

き方を制御

するメイン

関数

__main__

サーバ系

Bottle

DB 系

tinyDB

数理系

math

時間系

detatime

通信系

requests

+ +

+ +

+温湿度センサ

■ ほんの一例です。

HW 系

akilib

データの動

き方を制御

するメイン

関数

__main__

サーバ系

Bottle

DB 系

tinyDB

数理系

math

時間系

detatime

通信系

requests

+ +

++

人感センサ

USB カメラ

■ 最後にIoT のコンサルやってます。

過去に某社の IoT 部門を担当。

IoT 部門があると箔がつく。

月 10 万〜要相談

試作から製品化までお手伝い。

社内勉強会も行ったりします。

御仕事欲しい。

Have a nice day!

http://elpisapi.net/TestAPI/