月曜日の朝7時55分、8時から会議があるのに今さっとオフィスに到着した — そんな場面を想像してみてください。なぜ8時に会議を入れるのでしょう。何もかもが億劫で、目もまともに開かない。そんなときでも、スマートコーヒーマシンだけは味方でいてくれます。あなたが誰で、どんな飲み物が好きかを把握していて、あなたのことをわかってくれる。でも、口出しはしない。ハグはできないけれど、お気に入りの一杯を素早く淹れてくれる。その一杯が、あの会議を乗り切る力をくれるのです。
このお題は、Politecnico di Milano(イタリア)、University of Zagreb(クロアチア)、Mälardalen University(スウェーデン)の3大学が連携して開講する「分散ソフトウェア開発」コースの学生たちに課されました。マイコン(リソース制約のあるデバイス)、AI、Qtのいずれも十分な知識がない状態でしたが、学生たちは見事にこの課題をやり遂げ、印象的なエッジAIアプリケーションを作り上げました。
学生チームに課されたのは、UIの設計、バックエンドロジックの開発、そして顔認識と音声認識の実装により、普通のコーヒーマシンをスマートコーヒーマシンへと進化させることでした。高性能なCPUの代わりに与えられたのは、カメラ・マイク・静電容量式タッチスクリーンを内蔵したESP32‑P4‑Function‑EVマイコン開発ボードです。
要件は高い水準を求めるものでした。
さらに、ESP‑DLやESP-SRといったフレームワークを使用して、画像認識モデルと音声モデルをマイコン環境に組み込むことも求められました。このプロジェクトには、現代の組み込み開発者に必要なスキルが凝縮されています。UI/UXデザイン、C++開発、AIモデルのトレーニング、そしてリソース制約のあるMCUプラットフォーム上でそれらをすべて機能させる創造力です。
Edge Coffee Machine(ECM)は、ESP32-P4向けに開発されたAI駆動の組み込みアプリケーションです。PoliMiとMDUの共同プロジェクトとして、エッジAIが日常のオフィス業務をどのように支援できるかを探求しています。すべての処理はデバイス上で直接実行されるため、高速なレスポンスを実現しながら、完全オフライン動作によるユーザープライバシーの保護も両立しています。
ESP-DLおよびESP-SRフレームワークを使用し、以下の機能を実現しています。
Qt for MCUsを使って構築したUIには特に満足しています。マイコンの制約の中でも、抽出の進捗を示す上昇するウェーブフォームなど、カスタムアニメーションを使ったスムーズなインターフェースを実現できました。
レコメンデーションシステムにも多くの労力をかけました。指数減衰に基づくシンプルなスコアリングでユーザーの行動を追跡し、新しい飲み物を試す頻度やカスタマイズの傾向などを推定します。その結果に基づいて、飲み物メニューをユーザーの習慣により合わせた内容に調整しています。
もう一つのハイライトは、複数のAI機能をデバイス上で直接動作させたことです。ESP32-P4上で顔認識(ESP-DL)と音声認識(ESP-SR)の両方を統合し、UIと並行して動作させながらもシステムの速度低下を抑えることができました。これらをすべて組み込みハードウェア上で安定して連携させることは、プロジェクトにとって大きな前進でした。
Qt for MCUsとの取り組みは、困難ながらも有益な経験でした。QMLプレゼンテーション層とC++バックエンドが明確に分離されているフレームワークの構造が、分散チームでの協業を大いに助けてくれました。一方のグループが迅速なプロトタイピングのためにデスクトップUIシミュレーションに集中し、もう一方がボード上でのAIとハードウェアの統合を担当するという並行作業が実現しました。このモジュール構造があったからこそ、最終的にすべての異なるコンポーネントを統合することができました。
今年のQtプロジェクトチームは、多様な学術的バックグラウンドと技術的強みを持つ7名の学生で構成されています。Politecnico di MilanoからEmiliano Finetti、Matteo Delton、Piervito Creanza、Maxime Trimboli、そしてMälardalen UniversityからJavier Asensio Castillo、Jorge Jiménez Oropesa、Rakocevic Balsaが参加しました。では、学生たちの声を聞いてみましょう。
Edge Coffee Machineに惹かれたのは、物理的なハードウェアと高度なソフトウェアが意味のあるかたちで融合しているからです。特に興味を持ったのは、AIによる画像認識と音声認識をエッジで直接動作させるという技術的な挑戦です。Qt for MCUsは、クリーンでレスポンシブなインターフェースを構築するための確固たるフレームワークを提供してくれました。クラウドに依存せずに、マイコン上でどこまで実現できるかを探求したいと考えました。
2か国にまたがる7名の多様なメンバーで構成されていたため、明確な体制が不可欠でした。並行開発を実現するために、3つの専門サブチームに分かれました。
序盤は、多くのメンバーにとって初めてとなるQMLとQt for MCUsのキャッチアップが必要でした。素早くプロトタイプを構築し、ペアプログラミングセッションを積極的に行いながらツールを習得することでこれに対処しました。
その後、主な課題となったのは統合でした。AIモデル、UI、バックエンドロジックを目立った遅延なく連携させることです。また、ESP32-P4のハードウェア上の制限にも直面し、リソースの使い方に細心の注意が必要でした。インターフェースのレスポンシブ性を維持するために、異なるAIモデルを特定のプロセッサコアに手動で割り当てるなど、システムの最適化にかなりの時間を費やしました。結果として、実践的な組み込みシステムの最適化における良い訓練となりました。
Edge Coffee Machineプロジェクトは、優秀な学生が最新のツール、実際のハードウェア、そして実践的な課題にアクセスできたとき、何が実現可能かを示しています。Qt for MCUs、組み込みC++、エッジ最適化AIを組み合わせることで、チームはコースの課題をはるかに超えたものを作り上げました — スマートでパーソナライズされたデバイスの未来の一端を示す成果物です。
この取り組みは、組み込みインテリジェンスの重要性の高まりと、アカデミアと産業界をつなぐ実践的な学習機会の価値を示しています。エッジの可能性を探求する次世代の開発者を支援できることを誇りに思います。彼らのアイデアが次にどこへ向かうのか、今から楽しみでなりません。
学生のストーリー、プロジェクト紹介、Qt University and Talent Networkからの機会について、今後もご期待ください。
📎 関連リンク