ジェスチャーセンサー(APDS9960)の使い方 [Arduino]
ジェスチャーセンサー(光学)の「APDS9960」を使用して「手」の上下左右の移動方向(動作)をキャッチしてシリアルモニターへ方向を表示します。

約5cm(2インチ)の距離までしか認識できませんが、認識能力は秀逸です。
[注意事項]
部品調達で毎度、お世話になっているので書きたくないのですが・・。
...
秋月電子の「AE-APDS9960」の販売ページにあるサンプルプログラムは認識能力が低いです。あくまでも「参考程度」にすると良いです。
今回はアメリカの電子部品通販会社の「SparkFun」が公開しているオープンソースのライブラリを使用します。
使用部品・材料
総額で約1,310円です。(Arduino本体の値段を除く)
部品/材料 | 値段 | 備考 |
---|---|---|
サンハヤト SAD-101 ニューブレッドボード | ¥500 | Amazon.com |
APDS9960使用光学式ジェスチャーセンサモジュールキット | ¥600 | 秋月電子の通販コード(K-09754) |
電解コンデンサー10μF50V85℃ (ルビコンPK) | ¥10 | 秋月電子の通販コード(P-03116) |
I2Cバス用双方向電圧レベル変換モジュール(FXMA2102) | ¥200 | 秋月電子の通販コード(M-05825) |
ライブラリのインストール
Arduino IDEのメニューの[スケッチ][ライブラリをインクルード][ライブラリの管理]を選択します。
次に右上のテキストボックスに「APDS9960」を入力すると「SparkFun APDS9960 RGB and Gesture Sensor」が表示されますので選択して「インストール」ボタンを押します。

これでライブラリのインストールは完了です。
配線図
I2C接続用のプルアップ抵抗(4.7kΩ)はAE-APDS9960の裏面のJ1とJ2をそれぞれ、半田を盛って結線する事により有効となります。

APDS9960の動作電圧は2.4Vから3.6Vですので、FXMA2102を使用して電圧のレベル変換(5Vから3.3Vへ)を行っています。
センサーの向き

スケッチ(プログラム)
今回のスケッチはArduino IDEのメニューの[ファイル][スケッチ例][SparkFun APDS9960 RGB and Gesture Sensor][GestureTest]です。
但し、63行目の
を次のように変更して下さい。
この変更を行わないと動作しませんのでご注意ください。
最後に
今回のAPDS9960を使えば「手のジェスチャー」でラジコンやドローンなどを操作する事が可能です。音声認識とは一味異なるオペレーションですね。
APDS9960の関連記事
APDS9960を近接センサーにする
APDS9960を照度センサー(RGB)にする
掲示板
ArduinoやRaspberry Piなどの電子工作の掲示板を作成しました。質問やわからない事は電子工作 (Arduino・ラズパイ等)でユーザー同士で情報を共有して下さい。