Skip to main content

Grove - 3軸デジタル加速度計 200g (ADXL372)

note

この文書は AI によって翻訳されています。内容に不正確な点や改善すべき点がございましたら、文書下部のコメント欄または以下の Issue ページにてご報告ください。
https://github.com/Seeed-Studio/wiki-documents/issues

pir

当社のウェブサイトでは、さまざまなシナリオやニーズに対応する3軸加速度計を見つけることができます。今回は、産業用グレード、高い安定性、高精度、低消費電力を備えたADI ADXLシリーズの3軸加速度計をご紹介します。

Grove - 3軸デジタル加速度計 ±200g (ADXL372) は、超低消費電力のデジタル出力型 MEMS 加速度計であり、100 mg/LSB のスケールファクターで12ビットの出力を提供します。このセンサーの最も注目すべき特徴は、超低消費電力(測定モードでわずか22μA)と広い測定範囲(±200g)です。すべてのデータはGrove I2Cポートを介して出力され、I2Cアドレスは変更可能です。より広範な測定ニーズに対応するため、サンプリングレートは400Hz/800Hz/1600Hz/3200Hz/6400Hzから選択可能で、帯域幅は200Hz/400Hz/800Hz/1600Hz/3200Hzから選択できます。加速度測定として使用するだけでなく、このモジュールを衝撃やショック検出にも使用することができます。

ADI ADXLシリーズ加速度計には、異なる測定範囲と出力ニーズに対応する4つの製品があります:

製品測定範囲出力ポート消費電力
Grove - 3軸アナログ加速度計 ±20g (ADXL356B)±10 / ±20gアナログ測定モード:150 μA / 待機モード:21 μA
Grove - 3軸アナログ加速度計 ±40g (ADXL356C)±10g / ±40gアナログ測定モード:150 μA / 待機モード:21 μA
Grove - 3軸デジタル加速度計 ±40g (ADXL357)±10g@51200 LSB/g / ±20g@25600 LSB/g / ±40g@12800 LSB/gデジタル I2C測定モード:200μA
Grove - 3軸デジタル加速度計 ±200g (ADXL372)±200gデジタル I2C測定モード:22μA

pir

特徴

  • 広い測定範囲: ±200g
  • 超低消費電力: 3200 Hz ODRで22 μA
  • 選択可能なオーバーサンプリング比と帯域幅
  • ホストプロセッサの負荷を最小化する深い埋め込みFIFO
  • 内蔵12ビットアナログ-デジタルコンバーター(ADC)

応用例

  • ポータブルなIoTエッジノード
  • 脳震盪および頭部外傷の検出
  • 衝撃およびショック検出
  • 資産の健康評価

ピン配置

pir

pir

仕様

パラメータ
供給電圧3.3V / 5V
動作環境温度-40 – 125℃
XOUT, YOUT, ZOUTの感度 / (V1P8ANAに比例)±50mg/°C(通常動作) / ±35mg/°C(低ノイズモード)
温度による感度変化±0.01%/°C (TA = −40°C ~ +125°C)
0gオフセット±1g(典型値)
出力インターフェースデジタル

対応プラットフォーム

ArduinoRaspberry Pi

pir

pir

はじめに

Arduinoで遊ぶ

必要な材料

Seeeduino V4.2Base ShieldGrove 3軸加速度計 ADXL372

pir

pir

pir

今すぐ購入今すぐ購入今すぐ購入

さらに、Seeeduino Lotus M0+を検討することもできます。これはSeeeduino V4.2とBase Shieldの組み合わせに相当します。

note
**1** USBケーブルを優しく差し込んでください。そうしないとポートが損傷する可能性があります。内部に4本のワイヤーがあるUSBケーブルを使用してください。2本のワイヤーしかないケーブルではデータを転送できません。使用しているケーブルが不明な場合は、[こちら](https://www.seeedstudio.com/Micro-USB-Cable-48cm-p-1475.html)をクリックして購入できます。

**2** 各Groveモジュールには購入時にGroveケーブルが付属しています。Groveケーブルを紛失した場合は、[こちら](https://www.seeedstudio.com/Grove-Universal-4-Pin-Buckled-20cm-Cable-%285-PCs-pack%29-p-936.html)をクリックして購入できます。

ハードウェア接続

  • ステップ1. Grove - 3軸アナログ加速度計 ±200g (ADXL372) をBase ShieldのI2Cポートに接続します。

  • ステップ2. Grove - Base ShieldをSeeeduinoに差し込みます。

  • ステップ3. USBケーブルを使用してSeeeduinoをPCに接続します。

pir

ソフトウェア

note
    Arduinoを初めて使用する場合は、開始する前に[Arduinoの使い方](https://wiki.seeedstudio.com/ja/Getting_Started_with_Arduino/)を参照することを強くお勧めします。
//continuous_reading.ino

#include "Wire.h"
#include "adxl372.h"

#ifdef ARDUINO_SAMD_VARIANT_COMPLIANCE
#define SERIAL SERIALUSB
#define SYS_VOL 3.3
#else
#define SERIAL Serial
#define SYS_VOL 5
#endif


float cali_data[3];

#define CALI_BUF_LEN 15
#define CALI_INTERVAL_TIME 250

float cali_buf[3][CALI_BUF_LEN];


ADXL372 acc;
xyz_t xyz;

float deal_cali_buf(float *buf)
{
float cali_val = 0;

for(int i = 0;i < CALI_BUF_LEN;i++)
{
cali_val += buf[i];
}
cali_val = cali_val/CALI_BUF_LEN;
return (float)cali_val;
}


void calibration(void)
{
SERIAL.println("モジュールを水平に置いてください!");
delay(1000);
SERIAL.println("キャリブレーションを開始します........");


for(int i=0;i<CALI_BUF_LEN;i++)
{
while (!(acc.status() & DATA_READY));
acc.read(&xyz);
cali_buf[0][i] = xyz.x;
cali_buf[1][i] = xyz.y;
cali_buf[2][i] = xyz.z;
delay(CALI_INTERVAL_TIME);
SERIAL.print('.');
}
SERIAL.println('.');
for(int i=0;i<3;i++)
{
cali_data[i] = deal_cali_buf(cali_buf[i]);
if(2 == i){

cali_data[i] -= 10;
}
SERIAL.println(cali_data[i]);
}
SERIAL.println("キャリブレーション完了!!");
}


void setup() {
SERIAL.begin(115200);

acc.begin();

SERIAL.println(acc.id(), HEX);
acc.timing_ctrl(RATE_400);
acc.measurement_ctrl(BW_200, true);
acc.power_ctrl(MEASUREMENT_MODE);
acc.setActiveTime(10);

calibration();
}

void loop() {
if (acc.status() & DATA_READY) {
acc.read(&xyz);
SERIAL.print("X軸加速度 = ");
SERIAL.print((xyz.x - cali_data[0]) / 10.0);
SERIAL.println(" g ");
SERIAL.print("Y軸加速度 = ");
SERIAL.print((xyz.y - cali_data[1]) / 10.0);
SERIAL.println(" g ");
SERIAL.print("Z軸加速度 = ");
SERIAL.print((xyz.z - cali_data[2]) / 10.0);
SERIAL.println(" mg ");
}
SERIAL.println(" ");
SERIAL.println(" ");
delay(1000);
}
  • ステップ4. デモをアップロードします。コードのアップロード方法がわからない場合は、コードのアップロード方法を確認してください。

  • ステップ5. Arduino IDEのシリアルモニタを開きます。ツール -> シリアルモニタをクリックするか、++ctrl+shift+m++キーを同時に押します。ボーレートを115200に設定します。

  • ステップ6. キャリブレーション キャリブレーションが完了するまで数秒待ちます。

  • ステップ7. これでセンサーを使用できるようになり、出力は以下のようになります:

モジュールを水平に置いてください!
キャリブレーションを開始します........
................
18.07
-10.73
-40.13
キャリブレーション完了!!
X軸加速度 = 0.09 g
Y軸加速度 = 0.17 g
Z軸加速度 = 1.31 mg


X軸加速度 = -0.11 g
Y軸加速度 = -0.03 g
Z軸加速度 = 1.31 mg

回路図オンラインビューア

リソース

技術サポートと製品ディスカッション

弊社製品をお選びいただきありがとうございます!製品をご利用いただく際にスムーズな体験を提供するため、さまざまなサポートを用意しております。異なる好みやニーズに対応するため、複数のコミュニケーションチャネルを提供しています。

Loading Comments...