(15)トラ技mbedで気圧計と高度計(MPL115A2ライブラリ)
.
(15)MPL115A2(MPL115A2 library)
概要
- MPL115A2用の制御ライブラリです。
- 2つの付録基板を活用します。
- トランジスタ技術2014年2月号の付録基板(実験基板)
- トランジスタ技術2014年3月号の付録基板(トラ技mbed)
- 実験基板は表示機として使用します。LPC810は外しておきます。
MPL115A2モジュール
- MPL115A2は表面実装ですので、DIPモジュールを利用しました。
- なおMPL115A1はSPI接続です。
- 端子のmbed風表記です。
仕様(spec.)
- MPL115A2は気圧センサーです。
- 測定範囲:500から1150hPa
- 精度:±10hPa
- 分解能:1.5hPa
- 内部10ビットデータ
- データの補正計算が必要です。AN3785 rev6で計算方法が変更されています。
- I2Cアドレス(7ビット)は0x60(プログラム上の表記は0xC0)
MPL115A2メンバー関数
関数名 | 用途 | 引数 | 戻り値 |
MPL115A2 mpl115a2(P0_5, P0_4) | インスタンス生成 | SDA, SCL | - |
MPL115A2 mpl115a2(i2c) | インスタンス生成 | i2c | - |
mpl115a2.pressure() | 気圧データ | void | short |
mpl115a2.temperature() | 気温データ | void | short |
- インスタンス生成はどちらかの方法で行います。i2cを継承することもできます。
- 気温データは気圧の補正用であり、精度が良くありません。
- 気圧データ、気温データともにあえて16ビットデータを取得するようにしています。
- 浮動小数点を扱えないマイコンへの移植が困難になるからです。
- 補正された気圧データは50kPaから115kPaを10ビットの分解能で表現しています。
- 補正された気圧データ(10ビット)は16倍されています。
mbedソフトウェア
- サンプルプログラムはmbed_MPL115です。
- mbed_MPL115_LPC11U35_501.binを書き込みます。
トラ技mbedのプログラム書き込み方法
- ISPボタンを押しながらRESETをON/OFFします。
- PCにUSBストレージとして認識されます。
- firmware.binを削除します。
- バイナリファイルをコピーします。
- RESETを押します。
接続
- MPL115A2のVdd(1)をmbedの3.3Vに接続します。
- MPL115A2のCap(2)はGnd間に1uFを接続します。
- MPL115A2のGND(3)をmbedのGNDに接続します。
- MPL115A2のSHDN(4)をmbedの3.3Vに接続します。
- MPL115A2のRST(5)をmbedの3.3Vに接続します。
- MPL115A2のNC(6)は未接続。
- MPL115A2のSDA(7)をmbedのSDAに接続します。
- MPL115A2のSCL(8)をmbedのSCLに接続します。
高度計
- 気圧から高度を推計することができます。
- ただし天候に左右されます。
- 国際民間航空機関(ICAO)が定めた標準大気モデルがあります。
- 標準大気モデルは海面気温T0=15[C]、海面気圧P0=101325[Pa]を想定しています。
- 高度計算に気温は考慮されますが、海面気圧が考慮されていません。
著作権と免責事項
- 個人利用に限定され、著作権者の許可なく商用利用できません。
- 直接間接に関わらず、使用によって生じたいかなる損害も筆者は責任を負いません。
Please log in to post comments.