こんにちは、ソラコムの三國(ニックネーム: mick)です。
2026年7月7日に開催したIoTカンファレンス「SORACOM Discovery 2026」の「IoTプロトタイピングコーナー」に、社員有志の一人として作品を出展しました。テーマは、アメリカの家庭の庭を見守るIoTです。
庭に来た動物を、追い払うか、見守るか。クマなら迷わず追い払いたい。ではうさぎは? 近づいてきた動物をAIで見分けて、クマなどの侵入者にはブザーで警告し、うさぎの扱いは後から切り替えが可能。そんなプロトタイプの仕組みをご紹介します。

レンガ調の壁を背景に、庭に見立てた展示。クマ(侵入者役)とうさぎを、超音波センサーとカメラで見守ります
どんな作品なのか
庭に設置した超音波センサーが動物の接近を検知すると、カメラが1枚撮影します。その画像をRaspberry Pi上のAIが「クマ」「うさぎ」「それ以外(背景)」に判定し、動物ごとに決めたブザーパターンを鳴らします。撮影した画像はSORACOMのクラウドに記録され、手元のダッシュボードから確認できます。

全体構成図
動きそのものは、短いループです。
超音波センサーで接近を検知
→ カメラで1枚撮影
→ Raspberry Pi上のAI(TensorFlow Lite)でクマ / うさぎ / 背景を判定
→ 動物ごとのブザーパターンを再生
→ 撮影画像を SORACOM Harvest Files へアップロード
なぜ作ったのか
きっかけは、ソラコムのアメリカチームのオフサイトミーティングでした。「自宅の庭にうさぎが迷い込むことがあって、毎年その写真を撮るのを楽しみにしている。でも、そのうさぎがコヨーテなどに捕食されてしまうことがあって悲しい」、そんな話が出ました。
そこで、うさぎと家庭の平穏を守るために、捕食者を遠ざける仕組みを考えました。庭に来た動物すべてを追い払うのではありません。「うさぎは許容し、危険な動物だけに反応する」という仕組みを考えることにしました。
うさぎはどうすべきか
最初は簡単に考えていました。追い払いたいのはクマなどの侵入者だけ。うさぎはかわいいから見守ればいい。そう決めて、クマ(侵入者)だけを検知するモデルを作りました。うさぎが来ても、何も鳴らさないと。
ところが、作りながら考え直しました。人の生活圏に慣れてしまうより、人を警戒して距離を保ってくれた方が、うさぎ自身にとっても安全かもしれない。お互いにとって、庭には入らない方が幸せなのでは? そう思い直して、うさぎも検知できるモデルを追加で学習させ、ダッシュボードから2つのモデルを切り替えられるようにしました。
正解が一つに決まらないテーマを、モデルの切り替えという形で残せたのは、作っていて楽しいところでした。ちなみにDiscovery当日は、うさぎを検知したときにも短く優しい音を鳴らす設定で展示していました。

仕組み
<材料>
- 使用したIoTデバイス: Raspberry Pi 3 Model B、Raspberry Pi Camera Module 2、HC-SR04 超音波センサー、アクティブブザー(NPNトランジスタS8050で駆動)、Soracom Onyx – LTE™ USB ドングル
- 使用したSORACOMサービス: SORACOM Arc、SORACOM Harvest Files、SORACOM Remote Command
<AIモデル>
画像の判定には、画像認識でよく使われるMobileNetV2をベースに、手持ちの写真から転移学習させたモデルを使いました。入力は160×160ピクセル、TensorFlow Lite形式(float16量子化)に変換して約4.4MBです。判定クラスは「クマ」「うさぎ」「背景(その他)」の3つにしています。
背景クラスは、あとから足したものです。最初はクマとうさぎの2つで足りるはずでした。ところが動かしてみると、動物が何もいない机や壁を撮っても、必ずどちらかに分類してしまう。実際に、空っぽの机を「クマ」と判定してブザーが鳴ったことがありました。何もない場面の写真を「背景」として学習させて、この誤検知を抑えています。
<仕組み>
- HC-SR04超音波センサーが、設定した距離(当日は45cm)より近くに物体を検知
- Raspberry Pi Camera Module 2 で1枚撮影
- Raspberry Pi上のTensorFlow LiteでクマかうさぎかをオンデバイスAI判定
- 動物ごとに設定したブザーパターンを再生
- 撮影画像をSORACOM Arc経由でSORACOM Harvest Filesへアップロード
AIは手元に置くか、クラウドに置くか
撮った画像を、その場で判定するか、クラウドに送って判定するか。IoTでは、この置き場所の選択が、システム全体の使い勝手を大きく左右します。しかも、あとから変えにくい選択です。
今回は、手元(Raspberry Piの中)に置くことを選びました。捕食者を追い払うという用途では、反応の速さがそのまま効果に直結します。撮影した画像をクラウドへ送り、判定結果を待っていては、その分だけ警告が遅れてしまう。判定をデバイス内で完結させることで、撮影から判定まで常駐プロセスで約0.6秒に収めました。ネットワークが一時的に不安定でも、検知と警告は止まりません。
一般には、即時の反応やオフラインでの動作が必要ならエッジAI、大きな計算資源や複数拠点をまたいだ集計や分析が必要ならクラウドAI、という使い分けになります。今回はレスポンスが重要だったのでエッジAIを選択しました。
エッジAIを選択すると今度は別の問題が出てきます。置いたあと、どうやって更新するのか。モデルは作り直したくなりますし、閾値も現場で調整したくなる。そこで、
- 設定やAIモデルはネットワーク経由で更新できるようにし、
- 検知画像はクラウドに貯めて、再学習の教師データに回せるように
しました。更新の口と、画像の貯め先。どちらもSORACOMのサービスを活用しています。
SORACOMで「置いたあとも、遠隔で育てる」
設定もモデルも、置いたあとにネットワーク越しで差し替えられます。現地のデバイスには触れません。
- SORACOM ArcでRaspberry PiをセキュアにSORACOMプラットフォームへ接続
- 検知距離、ブザー音量、動物ごとの音、適用モデルといった設定は、SIMタグに保存し、SORACOM Remote Commandでデバイスへ反映(デバイス側は再起動なしで設定をホットリロード)
- 学習し直したAIモデルはSORACOM Harvest Filesにアップロードし、デバイスにダウンロードさせて差し替え
- 検知画像も同じくHarvest Filesに記録し、ダッシュボードから一覧で確認。誤判定した画像は、次の学習データにもなります
これらの操作は、専用のWebダッシュボード「Garden Monitor」(AWS Lambdaで動作)からブラウザだけで行えます。閾値の調整、監視の開始と停止、検知画像の閲覧、新しいモデルのアップロードまで、現地のデバイスに触れずに完結します。

会場で「その場の背景」に合わせて鍛え直す
AIモデルは、学習に使った写真の環境に、少し引っ張られる性質があります。今回の展示ブースはレンガ調の壁とSORACOMロゴのクロスという独特の背景でした。そこで会場設営後に、その場の背景と照明で写真を152枚撮り直し、モデルを学習し直しました。連写用のスクリプトで、被写体を少しずつ動かしながら撮影しています。
会場では、オフィスと違ってPCとデバイスが同じネットワークに乗らないことも多いものです。そんなときは、SORACOMのオンデマンドリモートアクセス「SORACOM Napter」でデバイスに接続し、設定やモデルの反映はこれまでどおりRemote Commandで行えました。手元での再学習から会場での差し替えまで、現地作業を最小限にしてやりきれたのは、遠隔管理をあらかじめ組み込んでいたおかげです。

当日のデモの様子。中央がRaspberry Piと配線一式、右のノートPCがダッシュボードです
ソフトウェアは、ほぼAIが書いた
ダッシュボードのUI、SORACOMのAPIを呼び出すバックエンド、そしてRaspberry Pi上で動く監視アプリケーション。これらのソフトウェアは、ほぼすべてコーディングエージェント(Claude Code)に書かせました。ソフトウェア部分は、実質1日程度で形になっています。
その間、人間である私がやったことは、ブレッドボードの配線、カメラの画角合わせ、そしてモデル学習用の写真撮影くらいです。「AIの進化とともに、IoTは次のステージへ」という今年のDiscoveryのテーマそのままに、アイデアを思いついてから動くものを置くまでの距離が、確かに近くなったと感じています。
展示してみて
来場されたみなさんからは、「クマとうさぎで対応を変える」という発想と、置いたあとに遠隔でモデルまで更新できる点に、多くの反応をいただきました。市販のセンサーやデバイスと自社サービスの組み合わせだけで、AIで動物を見分けて対応を変える見守りが、比較的短い期間で形になる。改めて、スモールスタートがしやすくなった時代を感じた展示でした。
今回のプロトタイプが、みなさんが自分たちの現場で試す最初の一歩のヒントになれば、うれしいです。
― ソラコム 三國(mick)
