Raspberry Pi、PIRセンサー、MQTTで作るモーション制御AWS IoTボタン
このモーション制御IoTボタンをリモートスイッチ、防犯ビーコン、カウンター、動き検知器として活用。Raspberry Piの簡素さ、PIRセンサーの感度、AWS IoTの拡張性を組み合わせたソリューションです。
3週間の実験を経て、AmazonのIoT Buttonを模倣するプロジェクトをデプロイ成功。システムはPIRセンサーで動きを検知し、MQTTでAWS IoTにイベントをパブリッシュ、サブスクライバー側のPiで定義済みアクション(ライト点灯、カメラ起動、Amazon SNS経由のアラート送信など)をトリガーします。
主要コンポーネント
- Raspberry Pi(ゲートウェイ) – MQTT経由でモーションイベントをAWS IoTにパブリッシュ
- 第2のRaspberry Pi(サブスクライバー) – MQTTメッセージをリッスンし、アクションを実行
- PIRセンサー – 視野内に温かい物体が入ると赤外線変化を検知
- AWS IoT – MQTTブローカーとデバイスレジストリとして機能
- Amazon SNS – 動き検知時にメールまたはSMS通知を送信
なぜMQTTなのか?
MQTTはM2MおよびIoTアプリケーション向けに設計された軽量なpub/subプロトコルです。HTTPのリクエスト/レスポンスモデルとは異なり、MQTTはブローカー経由でメッセージをサブスクライバーにプッシュするため、効率的で低帯域幅な通信が可能—リモートセンサーに最適です。
MQTTの詳細は https://www.hivemq.com を参照。
PIRセンサー概要
受動型赤外線(PIR)センサーは、視野内の物体からのIR光を測定。温かい物体がセンサー視野の片側を横切ると正の差動パルス、離れると負のパルスが発生。これらのパルスを動き検知のトリガーとして利用。
PIRセンサー ピンアウト
PIRセンサー 詳細
AWS IoTのセットアップ
AWSは広範なREST APIとSDKを提供しますが、以下の手順ではAWS Management Consoleを使用してわかりやすく解説。すべてのアクションはスクリプト化可能です。
- https://aws.amazon.com/ でAWSアカウントにサインアップ
- AWS Management Consoleにログインし、AWS IoT Core に移動(Fig-1参照)
- Get started をクリック(Fig-2)
- Create a thing を選択、名前を指定(例: raspberry)、Create をクリック(Fig-5)
- 新しいthingがAWS IoTレジストリに登録される
thing登録後、証明書、ポリシー、MQTTトピックを設定してセットアップを完了。
ソース:Motion Controlled AWS IoT Button
製造プロセス
- ボタン:古代の留め具から現代イノベーションへ
- 温度制御ファンサーキット:メディア家具冷却用DIYリレーシステム
- Raspberry Pi制御アクアポニックスシステム:構築ガイド & コード
- Raspberry PiでPIRモーションセンサーとLEDを制御
- Windows 10 IoT Coreで音声制御ロボットを構築 - Raspberry Pi 2編
- GoPiGo v2をWindows 10 IoT Coreで拡張 - Raspberry Pi 3対応
- Pythonで作るWi-Fi制御Raspberry Piロボット - ステップバイステップガイド
- PrivafyとMicron、IoTデータ イン モーション向け組み込みSECaaSを発表
- AWS JobsでIoTデバイスをアップグレード/設定:実践ガイド
- AWS Greengrass:IoT開発者向けエッジコンピューティングとデータキャッシング
- Azure vs AWS:IoTに最適なクラウドプラットフォームはどっち?