ESP32を搭載したDiscordセキュリティカメラ
コンポーネントと消耗品
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
必要なツールとマシン
|
このプロジェクトについて
ESP32カムとパッシブ赤外線(PIR)センサーを使用して、Webhookを作成するためのアクセス権を持つDiscordチャネルに写真を投稿するモーションアクティブセキュリティカメラを作成します。
ブレッドボードとジャンパー線を使用して、テスト回路を構築します。次に、デュポンコネクタを使用してワイヤリングハーネスを作成し、開発ボードとPIRセンサーに簡単に接続できるようにします。
次に、壁または天井に取り付けられた3D印刷されたケースを使用して、部品とカメラを収納します。
天井に取り付けられたカメラは、オンラインで購入できる安価なおとりカメラを利用しています。
備品:
- ブレッドボード
- ジャンパー線
- Arduino Nano
- 外部ワイヤレスアンテナ
- 5.5 x 2.1 mmDC電源ジャック
- ESP32カム
- パッシブ赤外線(PIR)センサー
- 5v電源
- 追加のワイヤー
- デュポンコネクトキットとクリンパー
- ダミーカメラ
ステップ1:ArduinoでESP32カムをプログラミングする
ESP32Camをフラッシュモードに設定し、Arduinoに配線して、ESP32のプログラミングを可能にします。
このステップでは、ESP32Cam、Arduino Nano、およびジャンプワイヤーが必要です。
ESP32ボードマネージャーのURLが設定に追加されていることを確認してください:
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
ブレッドボードと配線するときは、上の図を参考にしてください。
ステップ2:PIRセンサーをESP32カムに接続する
パッシブ赤外線(PIR)センサーをESP32カムに接続します。初期設定では、配線図に示すように、PIRセンサーを5V、アースに接続し、中央のデータピンをESP32カムのGPIO15に接続する必要があります。
ステップ3:コードと依存関係をダウンロードする
プロジェクトのソースコードはGithubにあります:
- Discord Spycam : https://github.com/WillMakesTV/discord-spycam
さらに、 CertToESP8266 を使用する必要があります HTTPS forMakersプロジェクトのPythonスクリプト。
また、Pythonスクリプトを使用しているため、Pythonがインストールされていることも確認する必要があります。
ステップ4:Discord.comのSSL証明書を作成する
Pythonがインストールされていることを確認したら、GithubからMakers用のHTTPSをダウンロードし、コンピューター上のフォルダーに解凍します。
SSL証明書を生成するには、Discord.comにアクセスする必要があります。
アドレスバーのドメイン名の横にある[ロック]をクリックし、[証明書]を選択します。
次のステップで、HTTPS for Makersダウンロードの抽出されたフォルダーを選択し、「 discord-cert.cer」として保存します。 。
- [詳細]タブを選択し、[ファイルにコピー]を選択してエクスポートウィザードを開きます。
- [次へ]をクリックして、[Base64エンコード]オプションを選択します。
すべてが期待どおりに機能した場合は、エクスポートが成功したというメッセージが表示されます。
ステップ5:CerttoESP32を使用してSSL証明書をフォーマットする
次に、ダウンロードしたHTTPS forMakersプロジェクトにあるCerttoESP32Pythonスクリプトを編集します。ファイル名変数をDiscord.comからエクスポートしたものに更新します。
コマンドプロンプトまたはターミナルを使用してスクリプトを保存したら、ディレクトリをHTTPS for Makersプロジェクトに変更し、CerttoESP32スクリプトを実行します。
これにより、ESP32で使用できる方法で証明書がフォーマットされます。
WindowsのコマンドプロンプトまたはmacOS / Linuxのターミナルを使用して、CerttoESP32スクリプトが配置されているディレクトリに移動し、スクリプトを実行します。
すべてが期待どおりに機能した場合は、コマンドプロンプトまたはターミナルにフォーマットされたSSL証明書を含む出力が表示されます。
ステップ6:DiscordSpycamプロジェクトを構成する
GithubからダウンロードしたDiscordSpycamプロジェクトを抽出します。 Githubからzipファイルを介してダウンロードした場合、プロジェクトディレクトリの名前を「discord-spycam」に変更するように求められる場合があるため、最初にディレクトリ名を変更することをお勧めします。
arduino_secrets.h.exampleをプロジェクトディレクトリ内のarduino_secrets.hにコピーし、discord-spycam.inoを開きます。
arduino_secrets.hファイルで、 SECRET_DISCORD_CERT を更新します CertToESP8266.pyスクリプトの実行によるコマンドプロンプト/ターミナルの出力と一致する変数。
必ずSECRET_NETWORK_SSID変数とSECRET_NETWORK_PASS変数を更新して、WIFIネットワークの名前とパスワードを使用してください。
Discord Webhook
Discordを開き、写真/メッセージが必要なチャネルに移動します。右クリックしてチャンネルを編集し、統合の下で新しいWebhookを作成します。これにより、ボットの名前とオプションの写真を入力するためのダイアログが開きます。
WebhookのURLをコピーして保存し、ArduinoIDEに戻ります。 SECRET_DISCORD_WEBHOOK変数のWebhookURLを貼り付け、ドメイン名を削除して、提供されているサンプル形式と一致させます。
プロジェクトを保存し、コンパイルしてESP32Camにアップロードします。
すべてが期待どおりに機能している場合、PIRセンサーによって動きが検出されると、ボットがDiscordチャネルに投稿した写真が表示されます。
ステップ7:圧着およびはんだ付けワイヤー
電源線とアース線をDC電源ジャックにはんだ付けしてから、デュポンコネクタを使用してPIRセンサーとESP32Camの線の端を圧着します。
2つのコネクタを作成します。1つはPIRセンサーの一端に3バレルコネクタを使用します。 PIRセンサーの中央のリード線はデータであり、一方の側は5vで、もう一方の側は接地されています。ほとんどがボードに直接ラベル付けされているため、特定のPIRセンサーを確認してください。
2バレルコネクタは、ESP32に電力を供給するために5vとアースで使用されます。
ステップ8:壁に取り付けられたケース
3D印刷された壁に取り付けられたケースを使用して、DC電源ジャックを下の穴にスライドさせ、ワッシャーとの接続を固定します。次に、ワイヤーをはんだ付けしてチューブを収縮させる前に、熱収縮を滑り込ませます。
最後に、外部Wi-Fiアンテナをはめ込み、ESP32カムとPIRセンサーを接続します。
スナップフィットの蓋を使用すると、部品を固定でき、壁に取り付けられたビルドが完了します。
エンクロージャーの側面には、時間遅延と感度ポテンショメーターに簡単にアクセスできるように切り抜かれたスロットもあります。
ステップ9:天井に取り付けられたケース
安価なダミーカメラの部品を使用した天井取り付けケースもあります。使用する部品は、クリアドーム、カメラシュラウド、固定ネジです。
透明なドームをカメラのシュラウドに瞬間接着剤で接着してから、シュラウドとドームを3Dプリントされた外輪に熱接着します。
電源ジャック用の大きい方の穴をカメラシュラウドの背面に合わせ、接着しながらこれを再確認して、部品の位置が合っていることを確認します。
天井に取り付けられたケースの配線は、DC電源ジャックの穴を通して、外側のリングの大きな穴を通して構築およびスライドさせることができます。デュポンピンを3バレルコネクタに挿入する前に、ワッシャーをスライドさせる必要があります。
ケースに取り付ける前に、PIRセンサーを使用して感度と時間遅延を微調整する必要があることに注意してください。インストールしたら、調整するには完全に分解する必要があります。
このモデルはまた、スナップフィットのふたを利用して、ESP32とPIRセンサーを位置合わせして収容します。
コード
メーカー向けHTTPS-CerttoESP32.py
https://github.com/SensorsIot/HTTPS-for-Makershttps://github.com/SensorsIot/HTTPS-for-MakersDiscord Spycam
https://github.com/WillMakesTV/discord-spycamhttps://github.com/WillMakesTV/discord-spycam カスタムパーツとエンクロージャー
壁に取り付けられたエンクロージャー
https://www.thingiverse.com/thing:4809907CADファイルthingiverse.com天井に取り付けられたエンクロージャー
https://www.thingiverse.com/thing:4809908CADファイルthingiverse.com 回路図
この配線図を使用して、Arduinoを使用してESP32を接続およびプログラムします。 製造プロセス