I2Cとは、センサー等とCPUがDATAをやり取りする通信規格です。
そもそも1992年にフィリップス(現:NXP)が家電品のデジタル化に対応する為に策定した規格です。
当時のポータブルCDプレーヤーでは、電池駆動で、液晶画面がついてトラック表示や再生時間表示があり。
ボタン操作のボリューム、選曲ボタンがついていました。
内部ではCDを回すモーター制御、ピックアップの位置制御、デジタルデータからオーディオ信報への変換等を行い
これらのデジタルオーディオ機器の制御を数少ない配線で接続する事でコンパクトなCDプレーヤーが生まれました。
|
当時の組み込み用の超小型CPUでは全ての処理を一個のCPUでは賄いきれず。I2Cで規格化されたI2Cデバイスは
自分自身にCPUを持ち、I2Cの通信処理と通信で得た指示に従って自身でインテリジェント処理を行い、分散処理を
実現する事でメインCPUの負荷軽減と省配線による小型化、省電力化を実現しました。
今では規格のVersion-UPが行われ、スマホやタブレットPCのジャイロや加速度、地磁気センサーやカーナビ等に
用いられており、多機能、超小型化、低消費電力を実現したデバイスが数多く販売されています。
現在は、50社以上から1,000種類を超えるI2Cデバイスが開発販売されており、空気清浄器では温度・湿度表示が
あり、更に、PM2.5を検出するI2Cセンサーを搭載し、空気の汚れを検出し自動運転を行ったり、家庭での火災報知器の
設置義務化されると、火災・煙センサーや、一酸化炭素センサー、水素センサー、ガスセンサー、アルコールセンサー等
身近に使用されている気が付かない場所にもI2Cデバイスが使われています。
これらのセンサーはI2C規格である事以外に、民生分野の大量使用をターゲットにしている為にセンサーが数百円~数千円
で入手可能で、このI2C規格のセンサーをIotに使わずして何に使うのか?、これがこのProjectのスタートです。
(I2Cの特徴) 詳細の規格は・・ http://www.nxp.com/documents/user_manual/UM10204_JA.pdf
1. SDA(データ)、SCL(クロック)の2本の通信ラインと、電源の+、-の計4本での接続
2. 通信速度は100Kbps、400Kbps、1Mbps、3.4Mbps、5Mbpsを利用(多くのI2Cデバイスは400Kbps対応)
3. 最大112個のノード(I2Cデバイス)を芋ずる接続で、I2Cデバイスのネットワークを構築可能。
4. I2Cデバイスは、デバイス自身にCPUを持ち、インテリジェント動作が可能でメインCPUの負荷分散可能
5. I2Cデバイスが非常に安価である。
実際のI2Cデバイスの実装基板(汎用性の高い物はI2Cデバイスが基板に実装されコネクタが付いて市販されています)
(基板に実装されコネクタ付で販売) (写真はたこ足ですが、接続は芋づる) (小さくて低消費電力)
I2Cのチップはどこ??
写真は、ITG 3200 3軸ジャイロセンサー基板と、そのセンサーの実装部分の写真です。
この様に非常に小さいチップの中に、CPUが内臓されインテリジェント動作を行っています。
この為、一般の素人さんには、チップ単体を買って来て、自分で半田付けは不可能に近いと思います。
基板実装型で、GROVEコネクタが付いた製品の購入をお勧めします。