ICM-20948 ９軸センサモジュール(３軸加速度＋３軸ジャイロ＋３軸コンパス)■特徴・3mm 角の最小サイズになった TDK InvenSense 社の９軸センサモジュールです。
・１つの IC の中に３軸加速度、３軸ジャイロ、３軸の電子コンパスセンサを内蔵しています。
・ロボット、ゲーム・アミューズメント、モーションセンサ、ラジコン、模型ヘリなどに応用ができます。
・10 ピン DIP 形状で使いやすい・1.71V～1.95V の低電圧動作品です。
■仕様センサ
インターフェース
電源電圧 VDD
I/O 電圧 VDDIO
最大クロック
◆加速度
測定レンジ
分解能
感度
ノイズ
LPF
出力レート
◆ジャイロ部
測定レンジ
分解能
感度ノイズ
LPF
出力レート
◆コンパス部
測定レンジ
分解能
感度
動作温度
参考消費電流サイズ

TDK InvenSense ICM-20948
I2C, SPI
1.8V (DC1.71V～3.6V)
1.8V (DC1.71V～1.95V)
400kHz(I2C), 7MHz(SPI Read/Write)±2 / ±4 / ±8 / ±16g
16 ビット
1LSB=0.061mg(±2), 0.122mg(±4), 0.244mg(±8), 0.488mg(±16)
230μg/√Hz
5.7～246Hz
0.27～4500Hz±250 / ±500 / ±1000 / ±2000dps（°/sec）
16 ビット
1LSB=0.00763(±250) 0.01526(±500), 0.03048(±1000), 0.06097(±2000)°/sec
0.015°/√Hz
5.7～197Hz
4～9000Hz
旭化成エレクトロニクス AK09916±4900µT
16 ビット0.15μT/LSB(16bit)－40℃～＋85℃
3.11mA 9-axis (no DMP)
1.23mA 3-axis Gyroscope only (no DMP)
68.9uA 3-Axis Accelerometer (no DMP)
90uA 3-axis Magnetometer only (no DMP)
8μA Full Chip Idle Mode Supply Current
約 12.8x10.2mm 厚み：約 2.7mm(基板厚含む)※製作・使用にあたり巻末の使用上の注意をよく読んでお使いください。

■内容品

ピンフレーム（10 ピン分）

センサ基板（部品ハンダ付け済）

ピンヘッダ（10 ピン分）

※基板の外周は製造上の切断によるバリ（ガラスエポキシ基板の繊維）が出ています。これはカッターの背の部分などで擦ると簡単にキレイになります。バリで手・指を傷つけないようご注意ください。

■ピン配置 （通常のＤＩＰと同じ反時計回りの配置です）※MPU-9250 モジュールとピン配置は同じです。
用途

コア電源 1.71V~3.6V
I/O 電源 1.71V~1.95V
I2C クロック/SPI クロックI2C データ/SPI データイン
I2C アドレス選択/SPI データアウト

VDD
VDDIO
SCL/SCLK
SDA/SDI
AD0/SDO
名称※VDDIO に 3.3V を印加すると破損します。

12345

ピン番号

写真

※１番～１０番の間のピンは FSYNC (同期入力)です。通常は使用しません。

109876

ピン番号

GND
INT
AUX_DA
AUX_CL~CS
名称

用途

電源・信号グランド
割り込み出力(外部センサ用 SDA)
(外部センサ用 SCL)
チップセレクト※I/O 電源とセンサの電源は別になっています。1.8V でお使いになる場合は VDD と VDDIO に同じ電圧を供給してください。

■ICM-20948 モジュール回路図■センサの方向
左写真が加速度とジャイロの方向、右写真がコンパスの方位になります。
加速度は該当軸を天頂に向けるとその数値がプラスで約 1g となります。
ジャイロは矢印方向に回転させると該当軸数値がプラスになります。
コンパスは該当軸を北に向けると数値がプラスのほぼ最大になります。

■接続方法
ICM-20948 は 1.8V 動作に変更となりました。コア電源電圧、I/O 電圧ともに 1.8V で動作します。

3.3V の単一電源では使用できません。コア電源電圧には 3.3V を掛けることはできますが、I/O 電圧には必ず 1.8V が必要です。

当社では ICM-20948 にぴったりな 1.8V の電源と I2C レベルコンバータモジュールを発売しておりますのでご利用ください。

オーダー番号→#19406■I2C と SPI の選択※MPU-9250 とはレジスタマップが変更になっていますのでご注意ください。

・I2C モードで通信する場合は~CS ピンを VDDIO に接続します。AD0 ピンは I2C スレーブアドレス設定のピンですので必ずH(=VDDIO), L(=GND)のどちらかに接続します。これにより１つの I2C バスに２つの ICM-20948 センサを接続することができます。マイコンとは SCL, SDA の２線で配線してください。プルアップは行われていませんのでお客様側回路で行ってください。
・SPI モードで通信する場合は４線接続となり、~CS がチップセレクト, SCLK は SPI クロック, SDO が(ICM-20948 から見た)データ出力, SDI がデータ入力ピンとなります。

■クイックスタートガイド※MPU-9250 とはレジスタマップが変更になっていますのでご注意ください。

ここでは I2C バス接続を想定します。マイコンに SCL, SDA を接続します。マイコン側でプルアップを行ってください。標準的な I2C 通信です。AD0=L にした場合は ICM-20948（加速度,ジャイロ部）のスレーブアドレスが 0b1101000（AD0=H は0b1101001）になります。内部レジスタの 0x00(WHO_AM_I)を読んで 0xEA が読めれば正常です。

最初はスリープモードになっていてセンシングは行われていません。まず ICM-20948 の内部アドレス 0x06 に 0x00 を書き込みます。さらに内部アドレス 0x0F に 0x02 を書き込みます。これによって動作が開始し、磁気センサと直接 I2C 通信ができるようになります。磁気センサはスレーブアドレス 0b0001100 と加速度と別になっており、内部レジスタ 0x00(Company ID)を読むと 0x48 が返ります。

加速度・ジャイロはこの状態で内部レジスタ 0x2D からの 14 バイトに加速度 X,Y,Z, ジャイロ X,Y,Z のデータが入ります。

それぞれのデータは 16 ビットで上位８ビットが先に並んでいます。加速度はセンサを動かして重力加速度を見ることができますので簡単です。ICM-20948 では内部レジスタが増え４つのバンク切り替えとなっています。0x7F がバンク選択レジスタです。
磁気センサはスレーブアドレス 0b0001100 の内部アドレス 0x31 に 0x02 を書き込むことで AD 変換（連続変換 10Hz）が実行されます。スレーブアドレス 0b0001100 の内部アドレス 0x11 からの 8 バイトに X,Y,Z 軸の各 16 ビット変換データと 8 ビットの ST2 ステータスが入ります。各軸 16 ビットのデータで下位８ビットが先に並んでいます。最後の ST2 レジスタまでリードすることが重要です。
センサにばらつきがありますので、加速度=0g、ジャイロ=0°sec, 磁気=0μT でも観測値が 0 にならず、少しずれた数値を示します。オフセットの許容範囲はデータシート上に範囲が示されていますので、その範囲内は正常品です。ソフトウェアの方でオフセットを差し引きするなどして調整することが必要になってきます。
これですべてのセンサの基本的な動作を見ることができますので、後はお客様の方でパラメータを変更して、挙動がどうなるか確認しながらテスト・開発ができると思います。
機能が多くて紙面では掲載ができません。詳細は英語版データシートでご確認ください。

■使用上の注意・電源極性・モジュールの向きを間違えないでください。一瞬であってもＩＣが破壊されてしまいます。
・本キットはエンジニアの方を対象にした製品です。本製品をお使いになるにはある程度の電気的知識を必要とします。
・本モジュールを使用したことによる、損害・損失については一切補償できません。
・製造上の不良がございましたら、良品とお取替えいたします。それ以外の責についてはご容赦ください。
・この製品は鉛フリー・RoHS 適合品です。MADE IN JAPANCopyright (c) 2022 Strawberry Linux Co.,Ltd. 無断転載を禁止します
株式会社ストロベリー・リナックス ２０２２年２月５日 第１版