シリーズ全体を読む
この記事は、Quilterの物理法則に基づくレイアウト自動化を使い、NXP i.MX 8M Mini搭載コンピューターを再現した過程を詳しく紹介するシリーズの一部です。
最初の基板では、Quilterのコンパイラがすべて生成したレイアウトを使って、Arduino Unoを製作しました。その基板については、前回の記事をご覧ください。
2枚目の基板では、少し難易度を上げることにしました!OpenMV H7 R2の機能に強く感銘を受け、次のテスト用基板として取り組むことにしたのです。

OpenMV H7 R2は、次のものを備えています。
- 480 MHzで動作するSTM32を搭載しています。
- カメラを搭載しています(640x480の8ビット画像、40 FPS)。
- USBインターフェースを備えています(12 Mbs)。
- micro-SDカードを備えています(100 Mbs)。
- LCDシールドに対応するSPIバスを備えています(80 Mbs)。
これらを備えた、単体で完結する優れたコンピュータービジョンキットです!STM32には、カメラから画像を取得し、コンピュータービジョンのアルゴリズムを実行し、一部のニューラルネットワークまで動かして、レンダリングした出力を画面に表示するだけの処理能力があります!
この力を使って、みんなに口ひげを付ける以上に、楽しい使い道があるでしょうか?
入力
元のOpenMV H7 R2のCADファイルは、同製品のウェブサイトにあります。これらはEagleで作成されていますが、KiCadへの対応を追加したばかりだったため、今回はKiCadに取り込むことにしました。入力ファイルは、基板外形とコネクタの配置だけを指定したKiCadの基板ファイルです。ダウンロードはこちらから行えます。

製作してみましょう!
Quilterはこの設計を1時間未満でコンパイルし、そのまま製造業者に送れる、DRCエラーのない設計を生成できます。基板をJLCPCBに発注し、部品未実装の基板が届くと、さっそくはんだ付けに取りかかりました!


実際に製作したこの基板の設計ファイルはこちらです。
テストしてみましょう!
カメラと画面を使い、OpenMVの基板上で顔追跡と描画を実行できるか、試すことにしました。これには、USB接続、SDカードからの画像の読み込み、カメラからのフレームの連続読み込み、マイクロプロセッサでの顔検出、LCD画面への連続書き込みが必要です。この基板のすべての周辺機能を試す、よい機会です。このプロジェクトのソースコードはこちらにあります。
テストの題材として、Everyday Astronautによる、Raptorエンジンについての動画を再生しました。見応えのある動画です!
.gif)
























