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
センサーをPCにつなげてpythonソフトで生データを取り込む
Search
miyasapi2
February 09, 2020
1
770
センサーをPCにつなげてpythonソフトで生データを取り込む
miyasapi2
February 09, 2020
Tweet
Share
More Decks by miyasapi2
See All by miyasapi2
ラズパイによる温度計測
satoshi2
0
410
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Product Roadmaps are Hard
iamctodd
PRO
53
11k
Facilitating Awesome Meetings
lara
54
6.4k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Scaling GitHub
holman
459
140k
Writing Fast Ruby
sferik
628
61k
Bash Introduction
62gerente
614
210k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Being A Developer After 40
akosma
90
590k
The Cost Of JavaScript in 2023
addyosmani
51
8.4k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Transcript
ノートPCとセンサーをつないで! Iotの周辺にて test_designer.ui @s_miya
お気軽に計測したい。 • ラズパイとセンサー基板をつなげれば、色々 なデータが取れるが! • キーボード,マウス,モニター,電源準備が面倒 • 外へは担いで持って行けない。
センサーとノートPCをつなげる。 • でも、PCとセンサーをつなげて動かしたい。 – ノートPCはUSBポートしかない。どうしよう。
ノートPCに中継基板 • あった!MCP2221AというIC – I2C、ADC,DAC、GPIOインターフェイスをサポート • 中継基板(I2C用)を作って、ノートPCにつなげ る。 210円
インターフェイス基板を制作 • 構成 – ノートPCのUSBにIF基板を接続。 IF基板 ノートPC センサー 5V、GND、 SCL、SDA(I2Cインターフェイス)
4本の線をつなげるだけ。
市販基板もあります。 • 部品をはんだ付けして基板を作るの嫌な人。 • マルツで売ってます。 – https://www.marutsu.co.jp/pc/i/1360420/ – 1500円
I2Cインターフェイス • I2C(inter-Integrated Ciruit)とは フィリップ社が提唱した周辺デバイスとのシリアル通信方式 アドレスは128指定でき、1バイトのデータ幅を持つ。 SCL、SDAの2つの信号を使用 I2Cインターフェイスのセンサーは多い。
ライブラリーのインストール • Windows環境では、MCP2221A基板用の pythonライブラリーがある。 • 下記のgithubを参照 https://github.com/nonNoise/PyMCP2221A/blob/master/READ ME_JP.rst pip install
PyMCP2221A
開発環境、プログラミング • I2Cインターフェイスライブラリ宣言 – この4行を入れるだけ。 • from PyMCP2221A import PyMCP2221A
• mcp2221 = PyMCP2221A.PyMCP2221A() • from PyMCP2221A import SMBus • bus = SMBus.SMBus() – 参考:ラズパイのライブラリー • import smbus • bus_number = 1 • bus = smbus.SMBus(bus_number)
I2Cの入出力 • 入出力(ラズパイも同じ。) – 入力 adrs=0x70 x1= bus.read_byte _data(adrs、0) –
出力 adrs=0x48,y1=0x55 bus.write_byte_data(adrs,0x00,y1)
開発 • 開発環境 – Jupite Note,SPIder,Pycharm何でも。 • ラズパイでも実行可能 – I2Cインターフェイスライブラリ宣言のみ変更
• おまけ – Windows環境では、Batファイルで実行可能
いろいろなセンサー基板、機構 • 数百円から数千円程度で買える。 – はんだ付けは不要。(付属ピン 数本のみ)