このチュートリアルは、Raspberry Pi を使用して Lepton カメラをインストールしたいすべての人を支援するために作成されました。私たちは多くのチュートリアルで入手可能な情報を使用し、独自の知識を追加して改善しました。
私たちがテストしたデバイスは Raspberry Pi B+ ですが、インストール方法はデバイスの他のバージョンでもそれほど変わらないはずです。
コンテンツ
Leptonカメラ
Lepton は、ネイティブのモバイル デバイス インターフェイスやその他の家庭用電化製品に簡単に接続できるように設計された完全な長波赤外線 (LWIR) カメラ モジュールです。公称応答波長帯域 (8 ~ 14 ミクロン) で赤外線入力を捕捉し、均一な熱画像を出力します。
環境仕様
動作温度範囲 | 10°C ~ 65°C (-20°C ~ 75°C、ただしパフォーマンスが低下する可能性あり) |
最高動作温度 | 353.15K(80℃) |
保管温度 | 40℃~80℃ |
相対湿度 | 95% |
熱衝撃 | 動作温度全体にわたる空対空 極限(-10℃~65℃、65℃~-10℃) |
振動 | 輸送プロファイル、4.3 grms |
画像の特徴
シーン内範囲 | 0 K ~ >400 K (-273.15°C ~ > 126.85°C) |
操作性:良品画素数 | >99.0% (< 1 % の欠陥が典型的) |
アプリケーション
- 安全性と保安
- 自動車
- マイクロおよびナノ UAV/UGV プラットフォーム
- 家の修理とエネルギー効率
- ビルディングオートメーションと存在検知
Lepton カメラの詳細な仕様を知りたい場合は、Lepton データシートを参照してください。
ハードウェア
必要な材料
Lepton カメラを取り付けるために必要な材料は次のとおりです。
- ラズベリーパイモデルB+。
- マイクロUSB終端を備えた5V電源。
- 少なくとも 700mA を供給できる必要があります
- 携帯電話の充電器としても使えますし、うまく機能します。(携帯電話の充電器は正常に動作します)
- SDカード:
- 8 GB 以上、最大 32 GB のストレージ
- クラス4以上です。
- USBキーボード
- マウス(USB接続)
- HDMIケーブル
- イーサネット ケーブルとインターネットに接続されたネットワークへの接続。Raspberry Pi で WiFi を使用したい場合は、WiFi 接続アダプターを購入できます。このチュートリアルでは、ミニ 150Mbps USB 2.0 WiFi アンテナ ワイヤレス ネットワーク LAN カード アダプター 802.11N/G/B を使用しました。WiFi接続アダプター
SDカードの準備 – フォーマット
まずはSDカードをフォーマットして準備します。このセクションでは、コンピューターを使用します。最初のステップはカードをフォーマットし、2 番目のステップは NOOBS ソフトウェアをインストールします (Raspberry にはそれが必要です)。このチュートリアルでは、OS Windows を使用します。別のものをお持ちの場合は、次の手順を確認してください:別の OS。次の手順に従ってください。
カードをフォーマットする
- オンラインにアクセスし、Windows 用のフォーマッターをダウンロードします
- ダウンロードを解凍して解凍し、Setup.exe を実行します。
- SDFormatter InstallShield ウィザードのプロンプトが表示されたら、プログラムを受け入れてインストールし、[完了] をクリックします。
- 次に、SD Formatter (先ほどインストールしたプログラム) を開きます。次のようなものが表示されるはずです。
- 「オプション」をクリックし、「フォーマットサイズ調整」を「オン」に設定し、「OK」をクリックします。
- 「ドライブ」と表示されている場所でカードを選択します。コンピュータでカードを 1 枚だけ使用している場合は、そのカードが自動的に選択されます。
- 「フォーマット」をクリックし、表示されたら「OK」を3回クリックします。
- これでSDカードがフォーマットされました!次のステップは、NOOBS ソフトウェアをインストールすることです。
NOOBS ソフトウェアのインストール
- Raspberry Pi ダウンロード ページにアクセスし、最新の NOOBS (オフライン インストール) (2015 年 5 月 11 日時点の NOOBS_v1_4_1.zip) をダウンロードします。
- ダウンロードを解凍して解凍します。抽出されたフォルダーは次のようになります。
- ここで、抽出したフォルダーの内容を最近フォーマットした SD カードにコピーする必要があります。
- これでカードをご利用いただけます。
接続
Lepton カメラには注意してください。静電気放電に対して特に敏感ではありませんが、複雑で比較的高価なコンポーネントです。誤って損傷しないように、作業中にいくつかの注意が必要です。信頼できる投資の 1 つはブレッドボードです。カメラを設置するための安全な場所を提供します。
これで、プロジェクトのビルドを開始できます。以下の手順に従います。
Lepton カメラをラズベリーに接続する
- 接続にはブレッドボードを使用します。
- 図 4 の図には 20 個の GP10 (40 ピン) があり、Raspberry Pi には 13 個の GP10 (26 ピン) があります。このプロジェクトでは最初の 26 ピンのみが重要です。
- CS ピンについて、赤い四角が表示された場合は、ピン 26 をピン 24 に切り替えます。
モニターを接続する
- HDMI ケーブルを Raspberry とディスプレイ モニターの間に接続します。(VGA - HDMI アダプターが必要な場合があります)
マウスとキーボードをUSB経由で接続する
準備したSDカードをラズベリーに挿入します
- SD カードが正しく接続されると、カチッと音がして所定の位置に収まります。
インターネット接続を確立する
- このプロジェクトを利用し、Raspberry Pi が提供できるものを最大限に活用するには、いくつかのソフトウェアをダウンロードする必要があります。したがって、インターネット接続は非常に重要です。
- イーサネット ケーブルまたは Wi-Fi アダプターを使用できます。Wi-Fiアダプターの説明書はこちら
電源を接続します
- 最後に、以前の接続の最終チェックを行います。動作している場合は、Raspberry に電源を接続します。(携帯電話の充電ケーブルを使用しました)
ハードウェアセクションが完成しました!プロジェクトは次のようになります。
WiFiアダプター
WiFi アダプターを使用して、Raspberry Pi をインターネットに接続できます。Raspberry Pi で WiFi アダプターを使用するには、以下の手順に従ってください。
Raspberry Pi の公式 Web サイトでは、WiFi アダプターをインストールするための 3 つの異なるチュートリアルが提供されています。これらの手順を試してみたところ、機能しませんでした。彼らは他の人のために働くことができるので、ここで見つけることができます。
このチュートリアルでは、うまく機能したコマンドを使用します。
- WiFi アダプターを Raspberry Pi に接続します。
- Raspberry Pi デスクトップで LXT ターミナルを開きます。
LXT ターミナルのコマンド ライン
- Raspberry Pi でどの WiFi 信号が利用できるかを確認するには、次のコマンドを入力します。
PS: 特にミシガン工科大学にとって、ミシガン工科大学 WiFi を共有するには、自分のコンピューターにオープンソース ソフトウェアをダウンロードする必要がありました。オープンソース ソフトウェアは仮想ルーターです。このリンク「仮想ルーター」からダウンロードできます。このソフトウェアを使用すると、Michigan Tech WiFi をラズベリーと共有できます。名前とパスワードを作成するだけです。上の例を見てください。
Sotのインストールが完了したら
- 利用可能なすべての WiFi が表示されます。優先する WiFi 接続の ISSD とパスワードを決定します。
- 次のコマンドを入力します。
- 以下のコードをファイルに追加します。IDSS とパスワードを思い出してください。
ssid="あなたのESSID"psk="あなたの Wi-Fi パスワード"}
- 以下に例を示します。
ssid="WiFi-テスト"psk="12345678"}
- 終了したら、Ctrl + X を使用し、Y を選択して Enter を押します。(変更内容が保存されます)
- 変更を有効にするには、以下を使用します。
- 次に、次のように入力します。
- 次のコマンドを使用して、WiFi が動作していることを確認します。
- Wlan0 は選択した WiFi に接続されます。
ソフトウェア
ソフトウェアをインストールすると、Raspberry Pi が使用できるようになります。
ラズビアン
Raspbian は、 Raspberry Pi ハードウェア用に最適化された Debian をベースとした無料のオペレーティング システムです。Raspberry Pi に最適なオペレーティング システムです。
- Raspberry 信号とモニター表示の間に遅延が生じる場合がありますが、これは正常です。表示された画面を図7に示します。
- 最初のオプション (Raspberry RECOMMENDED) をクリックします。
- 「インストール」をクリックします。インストールには約 30 分かかります。
この部分を終えると、Raspberry Pi を使用できるようになります。
FLIR Lepton サーマルカメラ ソフトウェア
Raspbian のインストールが完了したら、FLIR Lepton サーマル カメラ ソフトウェアをインストールします。Lepton を実行するためにPure Engineeringコードを使用しています。
- ここで、LXターミナルを開き、コマンドを入力する必要があります。下の図に示されているアイコンをクリックします。
- 完了したら、以下のコマンドを入力する必要があります。設定セクションが開きます。
- 次のウィンドウが表示されます。
- 「詳細オプション」に進みます。
- 「SPI」を有効にする必要があります。このためには、以下の手順に従ってください。
- SPIの選択
- SPI インターフェースを有効にする必要があります。「はい」をクリックしてください。
- 「OK」をクリックします
- SPI カーネル モジュールをデフォルトでロードする必要があるため、[はい] をクリックします。
- 「OK」をクリックします
- この後、I2Cに対しても同様の操作を行います。
- ここで、図 8 の最後にある [終了] を選択し、Raspberry Pi を再起動します。Raspberry Pi を再起動するかどうかを尋ねるメッセージが表示されます。やれ。
- ここで、インターネット接続を使用します。QT アプリケーション (Pure Engineering のサンプルコード) をダウンロードする必要があります。したがって、インターネット接続が良好であることを確認してください。
- 次の手順では、次のコマンドを入力します。
- この後、「y」または「n」を入力するよう求められます。「y」を入力します。
- 次に、インターネット アイコンと次の Web サイトに移動します: https://github.com/PureEngineering/LeptonModule
- Web サイトを開いたら、[Download ZIP] (画面の右側にあります) をクリックします。
- ダウンロードしたフォルダーを pi ディレクトリに移動します。
- 次に、圧縮されたフォルダーを解凍します。次のコマンドを使用します。
- 次に、現在のディレクトリを「LeptonModule-master」フォルダー内の「raspberrypi_video」フォルダーに変更します。これを行うには、次のコマンドを使用します。
- ここで、「LeptonSDKEmb32PUB」ディレクトリに cd して「make」を実行する必要があります。
- この後、cd で「raspberrypi_video」ディレクトリに戻ります。
- 次に、次を実行します。
- サーマルカメラを使用する準備ができました。これを機能させるには、次を実行します。
変更とエラー
ビデオサイズ
ビデオのサイズを変更することができます。
- main.cpp ファイルを開きます。「raspberrypi_video」フォルダ内にあります
- 下の図に示されているコードの部分は、ビデオ ウィンドウのサイズと位置を定義します。赤いボックス内の数字は画面内でウィンドウが表示される場所を定義し、緑のボックス内の数字はウィンドウのサイズを定義します。
- プレースホルダー ウィンドウに送信される画像のサイズと、[FFC を実行] ボタンの位置も変更する必要があります。
- 変更を保存するには、ページの左上にある「ファイル」を押し、「保存」をクリックします。
- 完了したら、LXターミナルに移動し、「raspberrypi_video」フォルダーに移動して、「qmake && make」を実行します。
- 変更が保存されました。プログラムを実行して、それが希望どおりかどうかを確認します。解像度が気に入らない場合は、元に戻すか、別のサイズに変更できます
FFCを実行する
「FFC を実行」ボタンを押すとエラーが発生しました。同じエラーが発生した場合は、次の手順に従ってください。
- LXterminal に移動し、次のコマンドを実行します。
- 最後の行に「i2c-dev」と書きます。
- 「ctrl o」を押します
- Enterを押してください
- システムを再起動します。FFC は現在動作しているはずです
- 他のエラーが発生した場合は、ここで解決策を見つけることができます: https://groups.google.com/forum/#!forum/flir-lepton
ビデオの録画
FLIR Lepton カメラで生成されたビデオを録画する現在の最良の方法は、ラズベリーを PC またはラップトップに接続することです。これは、VNC (仮想ネットワーク コンピューティング) を使用すると簡単に実現できます。VNC を使用すると、ユーザーは別のコンピュータのデスクトップ インターフェイスをリモート制御できます。Raspberry で VNC を使用することのその他の利点は次のとおりです。
- オープンソースのスクリーンレコーダープログラムはたくさんあります
- これにより、ユーザーはLinuxまたはWindowsシステムを使用してラズベリーを制御できるようになります。
- 録画したファイルはユーザーのコンピュータに保存されるため、Raspberry メモリカードに保存する必要はありません。
- Raspberry にモニター、キーボード、マウスを接続する必要はありません。
- VNCを使用するとサーマルカメラシステムを簡単に持ち運ぶことができます
VNC接続
VNC のセットアップは簡単です。ラズベリーと、ラズベリーをリモート制御するために使用するコンピューターの両方をセットアップする必要があります。
ラズベリーパイのセットアップ
- LXターミナルに移動し、Tight VNC パッケージをインストールします。
- TightVNC サーバーを実行する
- サーバーではパスワードの入力が求められます。パスワードは4文字以上9文字未満である必要があります
- LXターミナルでは、入力しているパスワードを確認することはできません。入力して Enter キーを押すだけです。
- VNCセッションを開始する
- 「:1」は VNC セッションの数を表します (複数の VNC セッションを持つことができます)
- 画面の解像度を変更することが可能です。この例では、フル HD 解像度 (1920x1080) を使用しています。
- 起動時から VNC セッションをセットアップしたい場合は、elinux.org Web サイトの指示に従ってください。
- VNC セッションを終了する場合は、次のコマンドを使用します。
- 「:display」はVNCセッションの番号です。
コンピュータのセットアップ
- コンピュータの uo を設定する最後のステップでは、Raspberry Pi の IP アドレスが必要になります。Raspberry Pi の IP アドレスがわからない場合は、LX ターミナルで次のコマンドを実行します。
- IPアドレスは青い枠内の数字です
ウィンドウズ
Raspberry.org: Windows Web サイトにある Windows ベースのコンピューターの手順に従ってください。
Linux
Raspberry.org: Linux Web サイトにある Linux ベースのコンピューターの手順に従ってください。
マックOS
Raspberry.org: Mac OS Web サイトにある Mac OS ベースのコンピュータの手順に従ってください。
スクリーンレコーダーソフト
Lepton Thermal カメラがコンピュータに送信しているビデオをキャプチャするには、スクリーン レコーダー ソフトウェアが必要です。必要なプログラムを使用できます。いくつかのオープンソース ソフトウェアのオプションをリストします。
ウィンドウズ
ShareX をダウンロードしてテストしました。ShareX は、画面の記録、画面の印刷を可能にするオープンソース ソフトウェアであり、その他のツールも多数あります。ソフトウェアはgetsharex.comから無料でダウンロードできます。
Linux
マックOS
Raspberryでビデオを録画する
これは進行中の作業です
ffmpegをソースからインストールします。このステップは非常に重要です。Debian バージョンの libavcodec にはフラッシュ ストリーミング プロトコルに必要な H264 ライブラリが含まれていないため、Raspbian バージョンの ffmpeg では動作しません。(Raspberry フォーラムより)
cd /usr/srcsudo mkdir ffmpegsudo chown `whoami`:ユーザー ffmpeggit clone cd ffmpeg。/構成、設定作るsudo メイクインストール
- ffmpegの実行
これにより、左上隅 (x=250, y=150) から開始して、幅と高さが 1024x768 の画像がデスクトップから取得されます。この例ではビデオは一時フォルダーに保存されていますが、別のフォルダーに保存することもできます。「out.avi」の形式は「ファイル名.ファイル形式」です。
ffmpeg の詳細については、ここおよびffmpeg.org Web サイトを参照してください。
私たちのアプリケーション
Pure Engineering のコードを実装して、Lepton カメラ用の新しいアプリケーションを作成できます。FLIR からは、ニュース アプリケーションに役立つ機能と説明が記載された優れたファイルがあります。このファイルは前の手順ですでにダウンロードしています。それを見つけるには、次の手順に従います。
- Pi ディレクトリに移動し、「LeptonModule-master」を開きます。
- 「raspberrypi_video」フォルダーを開きます
- 探しているファイルは「lepton_interface_design_document.pdf」です。
このファイルを使用して、いくつかのアプリケーションを作成しました。以下で確認できます。
カメラの内部温度を取得する
このアプリケーションを使用すると、カメラの内部温度を確認できます。カメラからの出力と内部温度の間には関係があるため、これは将来のアプリケーションに非常に役立ちます。私たちが行ったことを以下に説明します。
- 「Pi ディレクトリ」に移動します
- 「LeptonModule-master」を開きます
- 「raspberrypi_video」を開きます
- ファイル「Lepton_I2C.cpp」を開きます。
- このファイルでは、内部温度を取得する関数を宣言します。
- まず、次のコード行を「#include "leptonSDKEmb32PUB/LEPTON_Types.h"」の下に追加する必要があります。
- 次に、このコード行を「LEP_CAMERA_PORT_DESC_T _port;」の下に追加します。
LEP_RESULT 結果;
- 次に、関数を宣言します。このファイルの最後に移動して関数を追加します。
if(!_connected) {レプトン_接続();}結果 = ((LEP_GetSysFpaTemperatureKelvin(&_port, &fpa_temp_kelvin)));return ( fpa_temp_kelvin);}
- 入力した内容を保存する必要があります。ファイルに移動して保存します。
- 「raspberry_video」に戻り、「Lepton_I2C.h」を開きます。
- このコード行を「 void lepton_perform_ffc();」の下に追加する必要があります。
- これで、カメラの内部温度を返す関数 lepton_temperature() ができました。この値を計算に使用したい場合は、変数を宣言し、作成したこの関数と一致させるだけです。
温度目盛
Lepton カメラは内部温度をパラメータとして使用します。内部温度の出力フレームは 8192 です。温度の範囲が大きすぎない場合、出力範囲全体はこの点とほぼ線形の関係に従います (内部温度、8192)。
最高気温と最低気温を取得する
その情報を使用して、任意の出力からおおよその温度を取得できます。それを行うために、ミシガン工科大学で入手可能なホット プレートを使用して実験ポイント (温度と出力) を取得しました。この後、(内部温度、8192) と (実験温度、実験出力) の 2 つの点を使用して線形方程式を計算しました。以下の方程式を確認できます。
ファイル「Lepton Thread.h」内の元のコードを分析すると、最大および最小の出力フレームを取得できることがわかります。したがって、上記の式で最大出力と最小出力を使用すると、最大温度と最小温度を見つけることができます。
色とフレームの関係
ファイル「Lepton Thread.h」の元のコードを見ると、いくつかの重要な点がわかります。
- このコードは、最大出力フレームと最小出力フレームを示します。
- 変数「value」は色との関係を示します。
- 値の範囲は 0 < 値 < 255 です。
- 最大フレームは値 = 255 を表します。
- 最小値は Value = 0 を表します。
したがって、直線性と最後の 2 つの点 ( MaxFrame 、 Value = 255) と ( MinFrame 、Value = 0) を使用して、フレームと色の関係を見つけることができます。
フレームと温度の関係
次のことがわかります。
- 最大フレームは最大温度に関係します。
- 最小フレームは最低温度に関係します。
上記の 2 つの点と直線性を使用して、フレームと温度の関係を見つけることができます。
- FrameMax --> TempMax
- フレーム分 --> 温度分
出力フレームまでの範囲を設定する
Lepton カメラからの出力範囲を制限できます。したがって、狭い範囲の温度を確認したい場合でも、それが可能です。以下の手順に従う必要があります。
- ファイル「LeptonThread.cpp」に移動します。
- maxValue と minValue を取得するコードの行を探します。(ループ「for ( int i = 0 : i < FRAME_SIZE_UNIT!; i++)」内です。
- 上で説明した行の後に、出力を設定します。例を参照してください。
minValue = 8000;
- 出力値を設定した後、以下の条件を追加します: (同じループ「for ( int i = 0 : i < FRAME_SIZE_UNIT!; i++)」内に追加する必要があります)
フレームバッファ[i] = minValue;}if (frameBuffer[i] > maxValue) {フレームバッファ[i] = minValue;}