CHIRIMENでUVセンサ(VEML6070)を使う
Owner & Collaborators
License
CHIRIMENでUVセンサ(VEML6070)を使う by kohichi000000 is licensed under the Creative Commons - Attribution license.
Summary
CHIRIMENでUVセンサ(VEML6070)を制御する方法。
Explain how to control UV sensor (VEML6070) with CHIRIMEN.
Explain how to control UV sensor (VEML6070) with CHIRIMEN.
Materials
Tools
Blueprints
Making
- アプリのダウンロード
- Web I2C Polyfillの導入
- 回路の配線
- アプリの読み込み
- アプリ実行
- CHIRIMEN examplesをダウンロード(Download zipというボタンでダウンロード可能)して、任意のディレクトリに展開する。
- 配線図に従ってUVセンサ(VEML6070)を接続する。接続にはスルーホール用ジャンパ線を用いる。
- CHIRIMENのI2C0_SDA(CN2-12)、I2C0_SCL(CN2-11)とUVセンサのSDA、SCLをそれぞれ接続する(この接続線をそれぞれSDAバス、 SCLバスと呼ぶこととする)
- CHIRIMENのGND(CN2-1)、VCC(CN2-18)とUVセンサのGND、VCC(VDD)をそれぞれ接続する。
- SDAバス, SCLバスからCHIRIMENのVCCに対しそれぞれプルアップ用の抵抗を接続する。
- Web IDE左上の「パッケージ型アプリを開く」を押し、上記でダウンロードしたファイル群からi2c-VEML6070ディレクトリを選択し読み込む。
- 配線が正しいことを確認し、CHIRIMENとPCをmicroUSBケーブルで接続する。
- アプリをインストールする。
- 電源を入れて正しく動作すればWebIDEのログとしてUV-A波長の強さが取得できていることが確認できる。
- サンプルプログラムについて解説する。
- webI2Cを扱うためのpolyfill(webi2c.js)を読み込む。code:polyfillの読み込み
- webI2Cを扱うためのpolyfill(webi2c.js)を読み込む。code:polyfillの読み込み
- I2Cの操作を行うため、I2CAccessインターフェースを取得する。
- code:I2CPortMapインターフェースの取得処理とcode:エラー処理をおまじない的に記述する。
- i2cAccess.ports.get(<ピン番号>)でi2cPortオブジェクトを取得する。code:I2CPortオブジェクトの取得。
- CHIRIMENにはI2C0(CN2側)、I2C2(CN1側)の二つの端子が出ているため、ピン番号には0か2を指定する。
- UVセンサ(VEML6070)のライブラリを読み込む。code:UVセンサライブラリの読み込み
- new VEML6070(<i2cPortオブジェクト>,<i2cデバイスアドレス>)でVEML6070のコンストラクタ呼び出しを行う。VEML6070のデバイスアドレスは初期値が0x38なので、これを指定する。code:VEML6070コンストラクタ呼び出し
- veml6070.read()のように、呼び出したコンストラクタのreadメソッドを使用してUVセンサの値の読み込みを行う。
- UVセンサ(VEML6070)のライブラリを読み込む。code:UVセンサライブラリの読み込み
- UVセンサの読み込み処理、veml6070.read()の結果はPromise型で返ってくる。そのため、veml6070.read().then(function(value){ //UVセンサ読み取り後の処理 });のように記述する。
- 温度センサの値は引数に指定したvalueという変数に格納される。
Comments