Lepton-Pythonista-MicroPython
このプロジェクトは、iPhone で FLIR Lepton のサーマル ビデオをストリーミングすることを目的としています。ビデオ ストリームは、Lepton の VoSPI を通じて ESP32 によって取得され、EPS32 は Wifi /UDP を通じてビデオを iPhone に送信します (ルーターは必要ありません)。最初のプログラムは、ESP32 用に Micropython で作成されます。これは、CCI を介して Lepton 構成をセットアップし、Lepton からビデオ データを取得し、それを処理せずに iPhone に送信します。 2 番目のプログラムは、iPhone 用の Pythonista で作成されています。これは受信したデータを処理し、画像/ビデオを表示します。このプログラムにより、ユーザーはモードを選択できます: 1) AGC (8 ビット グレースケール) 2) RAD /T リニア、RGB。 2 番目のモードでは、ユーザーは画面に触れることで温度を取得できます。注意: このプログラムには Lepton の校正は含まれません。ユーザーはズーム、スクリーンショットの撮影、ビデオの録画を行うことができます (この目的のために画面の下部にある 3 つのボタン)
ハードウェア
- iPhone (8)
- ESP32 Wroom DevKit (uPesy より)
- ジャンパーケーブル+ブレッドボード
- レプトン 3.5
- ブレークアウト ボード V2.0
準備
- boot.pyでパスワードとSSIDを設定します
- main.py で: TIMEOUT を設定します。ストリーミングは TIMEOUT で指定された期間継続します。ループを永久に実行したい場合は、「while ループ」の期間を「true」に置き換えます。
- Lepton Breakout ボード V2.0 電気スキームおよび https://lepton.flir.com/getting-started/raspberry-pi-lepton/ に従ったケーブル配線 + MOSI 接地
使用法
- ESP32 の電源を入れると、5 秒後に青い LED が 1 Hz で点滅します。これは、ESP32 が Pythonista プログラムからのモード選択を待っていることを意味します。
- iPhone で、Wi-Fi 設定パネルに移動し、関連する Wi-Fi アクセス ポイント (上記の「準備」で 1 で指定したもの) を選択します。 iPhoneの画面にWifiのロゴが表示されていることを確認してください
- Pythonista プログラムを実行し、モードを選択すると、初期化が完了するまで ESP32 の青色 LED がより速く点滅します (10 Hz)。
- 初期化が完了すると、LED は固定されたままになり、2 秒後にビデオが iPhone に表示されます。
- ユーザーはズーム(1、1.5、2、2.5、3、全幅)、スクリーンショットを撮ることができます(ファイルの名前はscreenshot0X.jpgで、以前のファイルは消去されます)。
- ユーザーはビデオを録画できます。ファイルには、X=0 から始まる vid0X.mp4 という名前が付けられます。vid00.mp4 がすでに存在する場合、録音はできません (vid00.mp4 を上書きできません)。しかし、これは録音ボタンをもう一度タップすることで回避できます (= ファイルがインクリメントされます)。名前)
- RAD モード (RGB) では、ユーザーはビューに触れることで温度を取得できます。
- 上部画面 : Bad CRC : 通信品質に関する情報 (通常は約 20 ~ 25%)。 qsize : データを受信するスレッドとデータを処理するスレッドの間で共有されるキューのサイズ。すべてが正常であれば、qsize は 2 以下である必要があります (= データ受信よりも処理が高速です)。 fps : 1 秒あたりのフレーム数は 9 である必要があります (少なくとも米国外では、おそらく米国では 27 になる可能性があります)。 T (RAD モードのみ) : ビューに触れた後に取得された温度 (画面に触れると白い点が表示されます。ビデオの例を参照)
- RGB : 使用されるパレットは「Pythonista」フォルダーにあり、プログラムは色の範囲を現在のシーンの温度範囲に適応させます。
- ストリーミング期間 : 上記の「準備」の 2) のコメントを参照してください。
- ビデオストリーミング中に、ユーザーは Pythonista プログラムを停止して再度実行できますが、最初に指定したのと同じモードを選択する必要があります (ストリーミング中にモードを変更することはできません)。注: このコンテキストでは、モードが選択されると 4/5 秒後にビューが表示されます。ユーザーが別のモードに切り替えたい場合は、ESP32 をリセットする必要があります (その後、青色 LED が 1 Hz で点滅するなど)。