Tinker Board用カメラモジュール


1. ここで扱うカメラモジュールの種類

  • フラットケーブルタイプ

Physical Computing Lab カメラモジュールなど

physcomcam

  • USBケーブルタイプ

USB接続のWEBカメラなど

 usbcam-s

2. 必要なハードウェア

Tinker Board にカメラモジュールを接続して使う場合、次の機材が必要となります。

(1) カメラモジュール本体
(2) Tinker Board / Tinker Board S ボード本体
(3) マイクロSDカード
(4) 5V 2.5A以上の電源
(5) HDMIケーブル
(6) LANケーブル
(7) HDMIディスプレイ
(8) マウス
(9) キーボード

(2)~(6)は、「Tinker Board コンプリートスタータキット」を購入すれば揃います。是非ご利用ください。

complete_tb

3. 対象となるOSの準備と機材の組み上げ

以降では、Tinker OSでの使い方 を説明します。

フラットケーブルタイプのカメラモジュールに対応しているTinker OSは、v2.0.4以降です。

① microSDカードの準備

 ※ この作業は、上記コンプリートスタータキットを使用する場合には、最新のOSが書き込み済みのmicroSDカードが同梱されているため不要です。

 ASUS社のサイトから、TInkerOS Debianの最新のイメージファイルをダウンロードして、microSDカードに書き込みます。

   ASUS社のサイト

https://www.asus.com/jp/Single-Board-Computer/Tinker-Board/

asus_tinker

② microSDカードの挿入

 OSを書き込んだmicroSDカードをTinker Boardに挿入してください。

tinker_conn1

③ 必要機材の接続

 マウス、キーボード、LANケーブル(Wireless使用の場合は不要)、HDMIケーブル、電源を接続します。

tinker_conn2

④ カメラの接続

 電源を入れる前に、カメラを接続します。以降に述べる手順に従ってください。

4. カメラの接続方法について

4.1 フラットケーブルタイプのカメラモジュールの場合

フラットケーブルとは、下記写真のような平べったいケーブルのことです。

flatcable

両端の接点の向きが同じ面のものと、異なる面のものとがあります。

この2つには互換性はありません。入れ替えて使うとカメラモジュールやTinker Board本体の故障の原因となります。

必ず、使用するカメラモジュールに付属のケーブルを使うようにしてください。

フラットケーブルタイプのカメラモジュールを接続する際は、必ずTinker Boardの電源を切った状態で行ってください。

Tinker Boardには、ディスプレイ用コネクタとカメラ用コネクタがあります。コネクタの形状が似ているので注意してください。

カメラ用コネクタの位置は下記写真の通りです。

oxbf40ayZlcIlBTG_setting_fff_1_90_end_500

フラットケーブルは、金属の接点のある側がHDMIコネクタ側を向くように差し込んでください。

connect

ケーブルが突き当たるまでコネクタに差し込みます。

差し込み方が甘いと、カメラが機能しませんので注意してください。

connect1

差し込んだら、白いプラスチックの両端を押してロックしてください。

connect2

 ケーブルを接続し終わったらTinker OSを起動します。

なお、フラットケーブルタイプのカメラモジュールでも、コネクタの形状や規格が合わないものや、  規格は合っていてもTinkerOSにドライバが用意されていないなどで、Tinker Boardで使用できないものがあります。

Tinker Boardとの接続確認済みのカメラモジュールとして、Physical Computing ストアでは、次の5種類を扱っています。

Tinker Board用カメラモジュール(Adjustable Focus) [TSI-TB039-AF(B)]

Tinker Board用カメラモジュール(Fisheye Lens) [TSI-TB039-FL(G)]

Tinker Board用赤外線カメラモジュール(Fixed Focus) [TSI-TB039-FF(E)]

Tinker Board用赤外線カメラモジュール(Adjustable Focus) [TSI-TB039-NAF(F)]

Tinker Board用赤外線カメラモジュール(Fisheye Lens) [TSI-TB039-NFL(H)]

 

4.2 USBケーブルタイプのカメラの場合

USBカメラは、Tinker Board起動中でも、USBコネクタに接続したタイミングでTinker Boardに認識されます。

ただし、カメラとの相性によっては接続しても認識できないものもあるため、動作確認済みの機種など、予め情報を集めておく必要があります。

 

 

5. カメラの設定および接続確認方法

5.1 フラットケーブルタイプの場合

設定方法

接続実績のあるカメラモジュールであれば、OS上での設定や、ドライバーソフトをインストールするなどの必要はありません。

Tinker Boardにカメラモジュールを接続しOSを起動すればすぐに使うことが出来ます。

確認方法

カメラモジュールがTinker OSに認識されていれば、/dev/video* (*は0,1,2,3などの数字)というデバイスファイルが作成されています。

 

5.2 USBケーブルタイプの場合

設定方法

通常、事前の設定は不要で、Tinker BoardのUSBコネクタに接続するだけで認識されます。

 

確認方法

カメラモジュールがTinker OSに認識されていれば、/dev/video* (*は0,1,2,3などの数字)というデバイスファイルが作成されています。

また、lsusbコマンドを実行すると、Tinker BoardにUSB接続された機器の一覧が表示されます。

一覧の中に、接続したUSBカメラが存在していれば、USB機器として認識されています。

 

6. カメラモジュールの使用方法

6.1 使用するアプリケーション

カメラモジュールがTinker OSに認識されていても、対応しているデータ形式や解像度はカメラモジュール毎に異なり、使用可能なアプリケーションも異なることがあります。

ここでは、フラットケーブルタイプのカメラモジュール向けにGstreamerというソフトの使い方を、USBケーブルタイプのカメラ向けにCheeseおよびguvcviewを紹介します。

6.2 カメラ画像のプレビュー

フラットケーブルタイプの場合

Gstreamerを使います。

Gstreamerは、コマンドラインで実行するアプリケーションで、Tinker OSにデフォルトでインストールされています。

Tinker OSのメニューからLXTerminalを開き、次のコマンドラインを打ち込みます。

gst-launch-1.0 v4l2src ! video/x-raw,format=NV12,width=640,height=480 ! videoconvert ! autovideosink

gst1

起動すると、カメラ画像のプレビューウィンドウが開きます。

gst2

 

USBケーブルタイプの場合

Cheeseやguvcviewというアプリケーションが使えます。

それぞれ、インストールは、LXTerminalで、

sudo apt-get install cheese
sudo apt-get install guvcview

とします。

インストールが完了すると、GUIのメニューのSound&Videoの項目から起動できるようになります。

cheese1

 

 

Cheeseを起動すると下記のように、カメラのプレビュー画像の下にコントロールパネルが付いたウィンドウが表示されます。

cheese3-new

 

guvcviewも同様、コントロールウィンドウとプレビューウィンドウが開きます。

guvcview

 

 

 

6.3 静止画の撮影

フラットケーブルタイプの場合

次のコマンドラインを打ち込みます。

gst-launch-1.0 v4l2src num-buffers=10 ! video/x-raw,format=NV12,width=640,height=480 ! jpegenc ! multifilesink location=image.jpg
静止画がimage.jpgという名前で保存されます。

 

USBケーブルタイプの場合

Cheeseを用いた静止画撮影

① ウィンドウ中段のPhotoボタンを押して静止画撮影モードにします。

② ウィンドウ中段の録画マークボタンを押します。

③ 3からのカウントダウンが始まり、0になると画像が撮影されます。

④ 撮影された画像は、ボタンの下のサムネイル領域に表示されます。右クリックしながらSave Asを選択するとファイルとして保存できます。

cheese-jpg

guvcviewを用いた静止画撮影

① guvcviewのコントロールウィンドウ上段のCap. Imageボタンを押します。

② my_photo-*.jpg (*=数字)という名前のファイルとして静止画が保存されます。

guvcview2-jpg

 

6.4 動画の撮影

フラットケーブルタイプの場合

次のコマンドラインを打ち込みます。

gst-launch-1.0 v4l2src num-buffers=512 ! video/x-raw,format=NV12,width=640,height=480,framerate=30/1 ! queue ! mpph264enc ! queue ! h264parse ! mpegtsmux ! filesink location=vg.ts
ctrl-Cで止めるまで、動画の保存が行われます。保存した動画のファイル名はvg.tsとなります。

 

USBケーブルタイプの場合

Cheeseを用いた動画撮影

① ウィンドウ中段のVideoボタンを押して動画撮影モードにします。

② ウィンドウ中段の録画マークボタンを押します。録画マークから■マークに変わり、動画撮影開始します。

③ ■マークボタンを押すことで、ボタンの下のサムネイル領域にビデオテープ(動画)アイコンが表示されます。

④ サムネイルを右クリックしながらSave Asを選択するとwebmファイルとして保存できます。

cheese-mov-new

guvcviewを用いた動画撮影

① guvcviewのコントロールウィンドウ上段のCap. Videoボタンを押します。ボタンの名前はStop Videoに変わります。

② Stop Videoボタンを押すことで動画の撮影が終わり、my_video-*.mkv (*=数字)という名前のファイルとして動画が保存されます。

guvcview2-mov

 

 

以上

 

Leave a comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です