Jump to content

How to install FLIR Lepton Thermal Camera and applications on Raspberry Pi/ja

From Appropedia

このチュートリアルは、Raspberry Piを使ってLeptonカメラを設置したいと考えているすべての人を支援するために作成されました。多くのチュートリアルの情報を活用し、独自の知識を加えて改良しました。

私たちがテストしたデバイスは Raspberry Pi B + ですが、他のバージョンのデバイスでもインストールはそれほど変わりません。

レプトンカメラについて

Leptonは、モバイルデバイスのネイティブインターフェースやその他の民生用電子機器に容易に接続できるように設計された、完全な長波赤外線(LWIR)カメラモジュールです。公称応答波長帯域(8~14ミクロン)の赤外線入力を捕捉し、均一な熱画像を出力します。

環境仕様

動作温度範囲10° C ~ 65° C (-20° C ~ 75° C ではパフォーマンスが低下する可能性があります)
最大動作温度353.15 K (80 °C)
保管温度40℃~80℃
相対湿度95%
熱衝撃動作温度範囲(-10° C ~ 65° C、65° C ~ -10° C)での空気対空気
振動輸送プロファイル、4.3グラム

画像特性

シーン内範囲0 K ~ >400 K (-273.15°C ~ > 126.85°C)
操作性: 良品画素数>99.0% (通常、欠陥率は 1% 未満)

アプリケーション

  • 安全とセキュリティ
  • 自動車
  • マイクロおよびナノUAV/UGVプラットフォーム
  • 住宅修理とエネルギー効率
  • ビルオートメーションとプレゼンス検知

レプトンカメラの詳細な仕様を知りたい場合は、レプトンデータシートをご覧ください。

Lepton1.jpg
図1:レプトンカメラ

ハードウェア

必要な材料

Lepton カメラを設置するために必要な資材は次のとおりです。

  1. ラズベリーパイ モデル B+。
  2. マイクロ USB 端子を備えた 5V 電源。
    • 少なくとも700mAを供給できる必要があります
    • 携帯電話の充電器としても使えます。問題なく使えます。(携帯電話の充電器は問題なく使えます)
  3. SDカード:
    • 少なくとも8GB、最大32GBのストレージ
    • クラス4以上。
  4. USBキーボード
  5. マウス(USB接続)
  6. HDMIケーブル
  7. イーサネットケーブルとインターネット接続ネットワークへの接続。Raspberry PiでWi-Fiを使用する場合は、Wi-Fi接続アダプタを購入できます。このチュートリアルでは、Mini 150Mbps USB 2.0 Wi-Fiアンテナ ワイヤレスネットワークLANカードアダプタ 802.11N/G/Bを使用しました。Wi -Fi接続アダプタ

SDカードの準備 – フォーマット

まず、SDカードをフォーマットして準備します。このセクションでは、コンピューターを使用します。最初のステップでカードをフォーマットし、次のステップでNOOBSソフトウェアをインストールします(Raspberryにインストールする必要があります)。このチュートリアルでは、OSはWindowsを使用しています。別のOSをお使いの場合は、こちらの手順をご確認ください:別のOSの場合。以下の手順に従ってください。

カードのフォーマット

  1. オンラインでWindows用のFormatterをダウンロードしてください
  2. ダウンロードを解凍して、Setup.exe を実行します。
  3. SDFormatter InstallShield ウィザードのプロンプトが表示されたら、プログラムを受け入れてインストールし、「完了」をクリックします。
  4. 次に、SDフォーマッター(先ほどインストールしたプログラム)を開きます。次のような画面が表示されます。
    A1.png
    図2: SDFormatter
  5. [オプション] をクリックし、[フォーマット サイズ調整] をオンにして、[OK] をクリックします。
    A.2.png
    図2.1: オプション設定
  6. 「ドライブ」と表示されている部分で、カードを選択してください。コンピュータでカードを1枚しか使用していない場合は、自動的に選択されます。
  7. 「フォーマット」をクリックし、表示されたら「OK」を 3 回クリックします。
  8. SD カードのフォーマットが完了しました。次のステップは NOOBS ソフトウェアをインストールすることです。

NOOBSソフトウェアのインストール

  1. Raspberry Pi のダウンロード ページにアクセスし、最新の NOOBS (オフライン インストール) (2015 年 5 月 11 日時点の NOOBS_v1_4_1.zip) をダウンロードします。
  2. ダウンロードしたファイルを解凍して展開します。展開したフォルダは以下のようになります。
    300px-A3.png
    図3: NOOBSをダウンロード
  3. 次に、抽出したフォルダーの内容を、最近フォーマットした SD カードにコピーする必要があります。
  4. カードは準備完了です!

接続

Leptonカメラの取り扱いにはご注意ください。静電気放電に特に弱いわけではありませんが、複雑で比較的高価な部品です。誤って損傷させないよう、作業中はいくつかの注意事項を守る必要があります。ブレッドボードは、カメラを安全に設置できる信頼できる投資の一つです。

さあ、プロジェクトのビルドを始めましょう。以下の手順に従ってください。

Leptonカメラをラズベリーパイに接続します

  • 接続にはブレッドボードを使用します。
  • 図 4 の図には 20 個の GP10 (40 個の松) があり、Raspberry Pi には 13 個の GP10 (26 個の松) がありますが、このプロジェクトでは最初の 26 個の松だけが重要です。
  • CSピンについて、赤い四角が表示された場合は、ピン26をピン24に切り替えます。
Ff.png
図4:図

モニターを接続する

  • RaspberryとディスプレイモニターをHDMIケーブルで接続します。(VGA-HDMI変換アダプターが必要になる場合があります)

マウスとキーボードをUSB経由で接続する

用意したSDカードをラズベリーパイに挿入します

  • SD カードが正しく接続されると、カチッと音がして所定の位置に固定されます。

インターネット接続を確立する

  • このプロジェクトを活用し、Raspberry Piの能力を最大限に活用するには、いくつかのソフトウェアをダウンロードする必要があります。そのため、インターネット接続が非常に重要です。
  • イーサネットケーブルまたはWi-Fiアダプターをご利用いただけます。Wi-Fiアダプターの説明書はこちらです。

電源を接続する

  • 最後に、これまでの接続を最終確認します。問題がなければ、Raspberryに電源を接続します。(今回はスマートフォンの充電ケーブルを使用しました)

ハードウェアセクションが完了しました!プロジェクトは次のようになります。

WiFiアダプター

Raspberry Piをインターネットに接続するには、WiFiアダプターを使用できます。Raspberry PiでWiFiアダプターを使用するには、以下の手順に従ってください。

Raspberry Piの公式サイトには、WiFiアダプターのインストール方法に関する3つのチュートリアルが掲載されています。これらの手順は、私たちが試した際にはうまくいきませんでした。他のユーザーにも使えるかもしれないので、こちらからご覧いただけます。

このチュートリアルでは、私たちにとってうまく機能したコマンドを使用します。

  • WiFi アダプターを Raspberry Pi に接続します。
  • Raspberry Pi デスクトップで LXT ターミナルを開きます。

LXTターミナルのコマンドライン

  • Raspberry Pi で使用できる WiFi 信号を確認するには、次のコマンドを入力します。

追伸:ミシガン工科大学のラボでは、ミシガン工科大学のWiFiを共有するために、自分のコンピューターにオープンソースソフトウェアをダウンロードする必要がありました。そのオープンソースソフトウェアとはVirtual Routerです。こちらのリンクからダウンロードできますこのソフトウェアを使えば、ミシガン工科大学のWiFiを自分のRaspberryで共有できます。必要なのは名前とパスワードだけです。上記の例をご覧ください。

300px-VirtualR_.png
図6:仮想ルータ

スロットのインストールが完了したら

  • 利用可能なすべてのWi-Fiが表示されます。希望するWi-Fi接続のISSDとパスワードを確認してください。
  • 次のコマンドを入力します。
  • 以下のコードをファイルに追加してください。IDSSとパスワードを覚えておいてください。
  • 次に例を示します。
  • 完了したら、Ctrl + X を押して Y を選択し、Enter キーを押します。(変更内容が保存されます)
  • 変更を有効にするには、次を使用します。
  • 次に次のように入力します。
  • 次のコマンドを使用して、WiFi が動作していることを確認します。
  • Wlan0 は選択した WiFi に接続されます。

ソフトウェア

ソフトウェアをインストールすると、Raspberry Pi を使用できるようになります。

ラズビアン

Raspbianは、Raspberry Piハードウェア向けに最適化されたDebianベースのフリーオペレーティングシステムです。Raspberry Piに最適なオペレーティングシステムです。

  • Raspberryの信号とモニターの表示の間に遅延が生じる場合がありますが、これは正常です。図7は表示された画面を示しています。
    300px-AB1.png
    図6:Raspbianのインストール
  • 最初のオプション (Raspberry 推奨) をクリックします。
  • 「インストール」をクリックしてください。インストールには約30分かかります。

この部分が終わると、Raspberry Piは使用できるようになります。

FLIR Leptonサーマルカメラソフトウェア

Raspbianのインストールが完了したら、FLIR Leptonサーマルカメラソフトウェアをインストールします。Leptonの実行にはPure Engineeringのコードを使用しています。

  • 次に、LXTerminalを開いてコマンドを入力します。下の画像のアイコンをクリックしてください。
300px-Incone_.png
図7:LXTターミナル
  • 完了したら、以下のコマンドを入力してください。設定セクションが開きます。
  • 次のウィンドウが表示されます:
    600px-AB2.png
    図8: 設定ウィンドウ
  • 「詳細オプション」に進みます。
  • 「SPI」を有効化する必要があります。有効化するには、以下の手順に従ってください。
    1. SPIを選択
    2. SPIインターフェースを有効にする必要があります。「はい」をクリックしてください。
    3. 「OK」をクリック
  • SPI カーネル モジュールをデフォルトでロードする必要があるため、「はい」をクリックします。
  • 「OK」をクリック
  • この後、I2Cに対しても同じことを行います。
  • 図8の最後にある「完了」を選択し、Raspberry Piを再起動します。Raspberry Piを再起動するかどうかを尋ねられるので、再起動してください。
  • さて、いよいよインターネット接続を使う時です。QTアプリケーション(Pure Engineeringのサンプルコード)をダウンロードする必要があります。そのため、良好なインターネット接続を確保してください。
  • 次の手順では、次のコマンドを入力します。
  • その後、「y」または「n」を入力するよう求められますので、「y」を入力してください。
  • 次に、インターネットアイコンから次の Web サイトにアクセスします: https://github.com/PureEngineering/LeptonModule
  • ウェブサイトを開いたら、「ZIP をダウンロード」をクリックします (画面の右側にあります)。
  • ダウンロードしたフォルダを pi ディレクトリに移動します。
  • 圧縮されたフォルダを解凍します。以下のコマンドを使用します。
  • 次に、現在のディレクトリを「LeptonModule-master」フォルダ内の「raspberrypi_video」フォルダに変更します。以下のコマンドで変更します。
  • ここで、「LeptonSDKEmb32PUB」ディレクトリに cd して、「make」を実行する必要があります。
  • その後、cd で「raspberrypi_video」ディレクトリに戻ります。
  • 次に、以下を実行します。
  • サーマルカメラの使用準備ができました!動作させるには、以下を実行してください。

変更とエラー

ビデオサイズ

ビデオサイズを変更することができます:

  1. main.cppファイルを開きます。これは「raspberrypi_video」フォルダにあります。
    300px-Main.cpp-in_the_folder2.png
  2. 下の図に示すコード部分は、ビデオウィンドウのサイズと位置を定義しています。赤い枠内の数字は、ウィンドウが画面に表示される位置を定義し、緑の枠内の数字はウィンドウのサイズを定義します。
    300px-2015-06-02_09-52-57.png
  3. また、プレースホルダー ウィンドウに送信される画像のサイズと、「FFC を実行」ボタンの位置も変更する必要があります。
    300px-Image_size-FFC_position.png
  4. 変更を保存するには、ページの左上にある「ファイル」を押して「保存」をクリックします。
  5. 完了したら、LXTerminalに移動し、「raspberrypi_video」フォルダに移動して「qmake && make」を実行します。
  6. 変更が保存されました。プログラムを実行して、希望どおりになっているかご確認ください。解像度が気に入らない場合は、元に戻すか、別のサイズに変更することができます。

FFCを実行する

「FFCを実行」ボタンを押した際にエラーが発生しました。同じエラーが発生する場合は、以下の手順に従ってください。

  • LXterminal に移動して、次のコマンドを実行します。
  • 最後の行に移動して「i2c-dev」と入力します。
  • 「Ctrl + O」を押します
  • Enterキーを押します
  • システムを再起動してください。FFCは動作するはずです。

ビデオ録画

FLIR Leptonカメラで撮影した動画を録画する最良の方法は、Raspberry PiをPCまたはノートパソコンに接続することです。これはVNC(仮想ネットワークコンピューティング)を使えば簡単に実現できます。VNCを使用すると、ユーザーは別のコンピュータのデスクトップインターフェースをリモートで操作できます。Raspberry PiでVNCを使用するその他の利点は次のとおりです。

  • オープンソースのスクリーンレコーダープログラムは数多くある
  • これにより、ユーザーはLinuxまたはWindowsシステムを使用してラズベリーを制御できるようになります。
  • 記録されたファイルはユーザーのコンピュータに保存されるため、ラズベリーのメモリカードに保存する必要はありません。
  • ラズベリーにモニター、キーボード、マウスを接続する必要はありません。
  • VNCを使用すると、サーマルカメラシステムを簡単に持ち運ぶことができます

VNC接続

VNCの設定は簡単です。Raspberryと、Raspberryをリモートコントロールするために使用するコンピューターの両方を設定する必要があります。

Raspberry Piのセットアップ

  • LXTerminalにアクセスし、Tight VNCパッケージをインストールします。
  • TightVNCサーバーを実行する
  • サーバーはパスワードの入力を求めます。パスワードは4文字以上9文字未満である必要があります。
  • LXTerminalでは入力中のパスワードは表示されません。パスワードを入力してEnterキーを押すだけです。
  • VNCセッションを開始する
  • 「:1」はVNCセッションの数を表します(複数のVNCセッションを持つことができます)
  • 画面の解像度を変更することができます。この例では、フルHD解像度(1920x1080)を使用しています。
  • 起動時にVNCセッションを設定したい場合は、elinux.orgのウェブサイトの指示に従ってください。
  • VNC セッションを終了する場合は、次のコマンドを使用します。
  • 「:display」はVNCセッションの番号です

コンピュータのセットアップ

  • コンピュータの設定の最後のステップでは、Raspberry PiのIPアドレスが必要になります。Raspberry PiのIPアドレスがわからない場合は、LXTerminalで以下のコマンドを実行してください。
  • IPアドレスは青い枠内の数字です
300px-IPaddress_RaspberryPi.png
IPアドレス

ウィンドウズ

Raspberry.org: Windows Web サイトで、Windows ベースのコンピューター用の手順に従ってください

リナックス

Raspberry.org: Linuxウェブサイトで Linux ベースのコンピューター向けの指示に従ってください

Mac OS

Raspberry.org: Mac OS Web サイトで、Mac OS ベースのコンピューター用の手順に従ってください

スクリーンレコーダーソフトウェア

Lepton Thermalカメラからコンピューターに送信される動画をキャプチャするには、スクリーンレコーダーソフトウェアが必要です。お好きなプログラムをお使いください。オープンソースソフトウェアの選択肢をいくつかご紹介します。

ウィンドウズ

ShareXをダウンロードしてテストしました。ShareXは、画面録画や画面印刷など、様々な機能を備えたオープンソースソフトウェアです。getsharex.comから無料でダウンロードできます

リナックス

Mac OS

Raspberryでビデオを録画する

これは進行中の作業です

ffmpegをソースからインストールします。この手順は非常に重要です。Debian版のlibavcodecには、フラッシュストリーミングプロトコルに必要なH264ライブラリが含まれていないため、Raspberry版のffmpegでは動作しません。(Raspberryフォーラムより)

  • ffmpegの実行

デスクトップから、左上隅(x=250、y=150)から始まる幅と高さが1024x768の画像を取得します。この例では、ビデオは一時フォルダに保存されていますが、別のフォルダに保存することもできます。「out.avi」は「ファイル名.ファイル形式」という形式です。

ffmpeg の詳細については、こちらおよびffmpeg.org Web サイトをご覧ください。

私たちのアプリケーション

Pure Engineeringのコードを実装して、Leptonカメラ用の新しいアプリケーションを作成できます。FLIRの優れたファイルには、ニュースアプリケーションに役立つ機能と手順が記載されています。このファイルは前の手順で既にダウンロード済みです。ファイルを見つけるには、以下の手順に従ってください。

  1. Piディレクトリに移動し、「LeptonModule-master」を開きます。
  2. 「raspberrypi_video」フォルダを開きます
  3. 探しているファイルは「lepton_interface_design_document.pdf」です

このファイルを使って、いくつかのアプリケーションを作成しました。以下で確認できます。

カメラの内部温度を取得する

このアプリケーションを使えば、カメラ内部の温度を確認できます。カメラの出力と内部温度の間には相関関係があるため、今後のアプリケーション開発に非常に役立ちます。以下に、私たちが行ったことを説明します。

  • 「Piディレクトリ」へ移動
  • 「LeptonModule-master」を開く
  • 「raspberrypi_video」を開く
  • 「Lepton_I2C.cpp」ファイルを開きます。
  • このファイルでは、内部温度を取得する関数を宣言します。
  1. まず、以下のコード行を追加する必要があります。「#include "leptonSDKEmb32PUB/LEPTON_Types.h"」
  • ここで、「LEP_CAMERA_PORT_DESC_T _port;」の下にこのコード行を追加します。
  • 次に関数を宣言します。ファイルの末尾に移動して関数を追加します。
  • 入力した内容を保存する必要があります。ファイルに移動して保存してください。
  • 「raspberry_video」に戻り、「Lepton_I2C.h」を開きます。
  • 「void lepton_perform_ffc();」の下にこのコード行を追加する必要があります。
  • これで、カメラの内部温度を返す関数 lepton_temperature() ができました。この値を何らかの計算に使用したい場合は、変数を宣言し、作成した関数と一致させるだけです。

温度スケール

レプトンカメラは内部温度をパラメータとして使用します。内部温度の出力フレームは8192です。温度範囲がそれほど広くない場合、出力範囲全体はこの点(内部温度、8192)を基準としてほぼ直線関係になります。

最高気温と最低気温を取得する

これらの情報があれば、あらゆる出力からおおよその温度を得ることができます。そのために、ミシガン工科大学ラボにあるホットプレートを用いて、実験点(温度と出力)を取得しました。その後、2つの点(内部温度、8192℃)と(実験温度、実験出力)を用いて線形方程式を解きました。方程式は以下の通りです。

ファイル「Lepton Thread.h」の元のコードを分析すると、出力フレームの最大値と最小値を取得できることがわかります。したがって、上記の式に最大値と最小値の出力を使用すれば、温度の最大値と最小値を求めることができます。

色とフレームの関係

ファイル「Lepton Thread.h」の元のコードを見てみると、いくつかの重要な点に気付くでしょう。

  1. このコードは最大および最小の出力フレームを提供します。
  2. 変数「value」は色との関係を示します。
  3. 値の範囲は 0 < 値 < 255 です。
  4. 最大フレームは値 = 255 を表します。
  5. 最小値は値 = 0 を表します。

したがって、直線性と最後の 2 つのポイント ( MaxFrame 、値 = 255) と ( MinFrame 、値 = 0) を使用して、フレームと色の関係を見つけることができます。

フレームと温度の関係

私たちは次のことを理解できます。

  1. 最大フレームは最高温度と関係があります。
  2. 最小フレームは最低温度と関係があります。

上記の 2 つのポイントと直線性を使用して、フレームと温度の関係を見つけることができます。

  • フレームマックス --> 温度マックス
  • フレーム最小値 --> 温度最小値

出力フレームの範囲を設定する

レプトンカメラの出力範囲を制限できます。そのため、狭い範囲の温度だけを確認したい場合は、それも可能です。以下の手順に従ってください。

  • 「LeptonThread.cpp」ファイルに移動します
  • maxValueとminValueを取得しているコード行を探します。(ループ「for ( int i = 0 : i < FRAME_SIZE_UNIT!; i++)」内にあります。)
  • 上記の行の後に、出力を設定します。例をご覧ください。
  • 出力値を設定したら、以下の条件を追加します。(同じループ「for ( int i = 0 : i < FRAME_SIZE_UNIT!; i++)」内である必要があります)
Cookies help us deliver our services. By using our services, you agree to our use of cookies.