Acconeer A111パルスレーダーをRaspberry Piと統合:実践ガイド
はじめに
実験的製品: SparkXは最先端技術を迅速に提供します。これらのアイテムは厳密にテストされていますが、正式な保証なしで販売され、ライブ技術サポートは利用できません。
超音波や赤外線を超える超高精度な距離、速度、動作、ジェスチャー検知が必要ですか?Acconeer A111をご紹介します。コンパクトなパルス60GHzレーダーモジュールで、高性能センシングをあなたのプロジェクトに提供します。
A111は、統合アンテナと50MHz SPIインターフェースを備えた単一チップのパルスコヒーレントレーダー(PCR)ソリューションです。距離、ジェスチャー、動作、速度検知を最大2メートルまでサポートし、複数オブジェクトの同時追跡が可能です。
当社のブレークアウトボードには、1.8Vレギュレーター、電圧レベル変換、Raspberry Pi GPIOヘッダーと完全互換の20ピン2×10メスヘッダーが追加されています。
必要な材料
A111を使用するには、現在のSDKがクローズドソースでこれらのプラットフォームのみをサポートしているため、ARMv7またはARM Cortex-M4アーキテクチャを使用する必要があります。このガイドでは、SDKと互換性のあるアーキテクチャを持つプラットフォームであるRaspberry Piとセンサーを統合する方法を示します。
ブレークアウトボードは、あらゆるRaspberry Piモデルと直接接続できる20ピン2×10メスヘッダーを提供。手動配線を好む場合、ボードにはオスヘッダーと典型的な9本のオス-メスジャンパーワイヤーも用意されています。
ハードウェアのセットアップ
RaspbianとSPI
RaspbianがPiにインストール済みと仮定。OSインストールについてはRaspberry Piドキュメントを参照、またはヘッドレスRaspberry Piセットアップチュートリアルで効率化。
PiでSPIを有効化。詳細手順はPiでのSPIチュートリアルを参照。
A111ブレークアウトはRaspberry Piの上に直接装着する設計。Pi B+(以降)の全40 GPIOピンを占有しませんが、26ピン2×13ヘッダーはすべてのPiモデルと完全互換です。
取り付け方法:2×13ヘッダーを、メス側がA111 ICから離れる向きではんだ付け。その後、ブレークアウトのシールドをPiに接続し、「Pi Display」テキストをPiのディスプレイヘッダーと合わせます。挿入後、センサーは上向きになります。
Raspberry Piに挿入されたA111ブレークアウト。
あるいは手動配線を好む場合、以下のピンアウトを使用:
| ブレークアウトピン | Raspberry Piピン名 | RasPiピン番号 |
|---|---|---|
| CS | SPI0 CS0 | 24 |
| SCLK | SPI0 SCLK | 23 |
| MISO | SPI0 MISO | 21 |
| MOSI | SPI0 MOSI | 19 |
| INT | GPIO25 | 22 |
| EN | GPIO27 | 13 |
| VCCIO | 3.3V | 1,17 |
| GND | GND | 6, 14, 20, など |
| VIN | 5V | 2, 4 |
⚡ 入力電圧とロジックレベル: ボードはVINとVCCIOの両方を公開。VINはセンサーに電力を供給、最大約80mA消費。VCCIOはI/O電圧を設定し、VINより低くできます。VINをPiの5V電源に、VCCIOを3.3Vに接続。Piは3.3V I/Oのみ駆動可能。
Raspberry PiでSPIを有効化
詳細手順はPiでのSPIチュートリアルを参照し、Raspberry Pi設定ツールでSPIをアクティブ化。
SDKの入手
Acconeer A111 SDKは独自ライセンスで、現在ARMv7とCortex-M4プラットフォームのみサポート。SDKをダウンロードするには、Acconeer製品ページにアクセスし、A1 Software Development Kitセクションを探す。GET SOFTWARE**をクリック、ライセンスに同意し、A1 SDK for Linux ARMv7バージョンをリクエスト。
AcconeerからARMv7 SDKをリクエスト。
メールアドレスを提供すると、ほぼ即座にダウンロードリンクがメールで届きます。
PiへSDKをSCP転送
ZIPファイルをダウンロードしたら、Piに転送。WindowsではWinSCPを使用。macOSまたはLinuxではSCP:
scp acconeer_evk_service_linux_armv7l_xc111_r4a_xr111-3_r1c_a111_r2c_v1_3_5.zip 192.168.0.100:~
注: 192.168.0.100をPiのIPアドレスまたはホスト名に置き換え。
SDKの解凍
Pi上で以下のコマンドでSDKを解凍(必要に応じてunzipインストール):
unzip acconeer_evk_service_linux_armv7l_xc111_r4a_xr111-3_r1c_a111_r2c_v1_3_5.zip -d a111
a111/evk_serviceディレクトリに移動し、サンプルソフトウェアのビルド準備。
SDK概要
SDKバンドルにはソースコード、プリコンパイル済みライブラリ、ヘッダーファイル、ドキュメントが含まれます。主要ディレクトリ:
- doc - Doxygen生成APIドキュメント。
- include - APIを記述するヘッダーファイル。
- lib - プリコンパイル済み静的アーカイブ。
- out - コンパイル済みボードとサンプルバイナリ。
- rule - ボードとサンプルビルド用のMakefileルール。
- source - カスタムボードとサンプル用Cソースファイル。
- makefile - ルールを再帰的に呼び出すトップレベルMakefile。
カスタムサンプルとボードファイルの追加
SparkFun A111ブレークアウトのピンマッピングはSDKデフォルトと異なります。GitHubリポジトリからカスタムファイルをダウンロード(ZIP)。SDKの対応するディレクトリに展開:
unzip sparkx-a111-source.zip -d a111/evk_service_linux_armv7l_xc111_r4a_xr111-3_r1c_a111_r2c
含まれるファイル:
rule/makefile_build_sparkx_detector_distance.inc- 距離検出器サンプルのビルドルール。rule/makefile_build_example_*_sparkx- SparkXブレークアウトサンプルのビルドルール。source/acc_board_rpi_sparkx.c- ピン接続とクロック設定を含むボード定義。source/sparkx_detector_distance.c- 修正済み距離検出器ソース。
これらのファイルが元のSDK ZIPと同じ相対位置に配置されることを確認。
SDKのruleディレクトリに追加されたカスタムサンプルファイル。
テストスケッチのビルドと実行
ボードとサンプルアプリケーションのビルド
SDKとカスタムファイルを配置したら、SDKのトップレベルディレクトリからmakeを実行してすべてのサンプルをビルド。再帰的Makefileがボード定義とバンドルされたすべてのサンプルをコンパイル。
ビルド成功後、outディレクトリから目的のバイナリを実行してA111センサーを起動し、機能を検証。
詳細なビルド手順とトラブルシューティングについては、docフォルダのSDKドキュメントを参照。
Raspberry PiでAcconeer A111を使ったハッピーハッキング!
製造プロセス
- 複数DS18B20 1-WireセンサーをRaspberry Pi接続で精密温度監視
- Raspberry PiとDS18B20によるプロフェッショナルな温度監視
- Raspberry PiでTMP006赤外線温度センサーを使う – Pythonライブラリとセットアップガイド
- Raspberry PiとPythonでリモート温度センサーを構築 – ステップバイステップガイド
- Raspberry Piでサーバークローゼットの温度を正確に監視
- センサーデータをRaspberry Piに統合:実践ガイド
- Raspberry PiでPIRモーションセンサーとLEDを制御
- Raspberry Piで低コスト土壌水分センサーを構築 - スマート灌漑に活用
- Raspberry Piでリアルタイムパン/チルト顔追跡 - 実践ガイド
- Raspberry PiとTwilioで実現するトイレ占有センサー:音声通話とSMSで通知
- Lego Mindstorms NXT超音波センサーをRaspberry Piに直接接続する