6. デバイスからデータを取得する(デバイスコネクター)#

Terminal System v1.22.0

デバイスコネクターは、Terminal Systemに接続されたデバイス(CAN-USB Interface、カメラ、GPSデバイスなど)から、データを受信するためのソフトウェアです。

使用するデバイスごとに、デバイスコネクターの設定が必要です。

../_images/intdash-device-connector.ja.png

図 70 [intdash]メニュー > [デバイスコネクター]#

6.1. デバイスコネクターの設定を新規作成/変更する#

注意

デバイスコネクターの設定を作成するためには、Terminal Systemがデバイスを認識している必要があります。 デバイスを接続した状態で、Terminal Systemの電源を入れてください。

デバイスコネクターの設定を作成するには、[intdash]メニュー > [デバイスコネクター]で、[デバイスコネクターを作成]をクリックします。 既存のデバイスコネクターの設定を変更するには[詳細]をクリックします。

デバイスコネクターの設定では、以下を設定します。

CH

データを識別するために使用するチャンネル番号です。Terminal Systemでは、同じチャンネル番号で複数のデバイスコネクターを作成することはできません。

デバイスタイプ

デバイスタイプを選択します。デバイスタイプについては、 使用可能なデバイスタイプと設定項目 を参照してください。ここで選択したデバイスタイプによって、設定可能な項目が変わります。(既存のデバイスコネクターのデバイスタイプを変更することはできません。)

名前

デバイスコネクターに任意の名前を付けることができます。

有効化

使用するデバイスコネクターをオンにしてください。

ステータス

デバイスコネクターのステータスが表示されます。

  • 接続済み: デバイスコネクターは正常に動作しています。

  • 未取得/未接続: デバイスとの接続が確立されていません。デバイスとの接続部分やケーブルを確認してください。 デバイス自体にステータス表示(動作を示すLEDなど)がある場合は、ステータス表示が正常かどうかを確認してください。

  • エラー: エラーメッセージの内容を確認の上、エラーを解決してください。解決しない場合は、サポート窓口までお問い合わせください。

設定後は、[変更を保存]をクリックします。

画面上部に再起動を要求するメッセージが表示された場合、設定内容は再起動後に有効になります。 [intdash]メニュー > [ステータス]の[再起動]をクリックすると、新しい設定でintdashサービスが起動され、計測が開始されます。

6.2. 使用可能なデバイスタイプと設定項目#

使用可能なデバイスタイプと設定項目は以下のとおりです。

注釈

独自のデバイスコネクターを開発して使用する場合は、デバイスタイプ[ユーザー定義]を選択してください。 デバイスコネクターの開発方法については、 intdash Edge Agent デベロッパーガイド を参照してください。

6.2.1. ANALOG-USB Interface#

アプトポッド製のEDGEPLANT ANALOG-USB Interface EP1-AG08Aを使用するためのデバイスコネクターです。

Analog Input Sampling Frequency

サンプリング周波数を指定します(ANALOG-USB Interfaceの全ポートに共通)。

Analog Input Ch (番号) Enabled

ANALOG-USB Interfaceのアナログ入力ポートごとに、有効/無効を切り替えることができます。

Analog Input Ch (番号) Voltage

ANALOG-USB Interfaceのアナログ入力ポートごとに、入力電圧の範囲を指定します。

Analog Output Enabled

ANALOG-USB Interfaceのアナログ出力ポートを使用する場合は、オンにします。

Analog Output Waveform

ANALOG-USB Interfaceのアナログ出力ポートから出力する信号波形を選択します(0:擬似ランダム信号、1:正弦波、2:三角波、3:矩形波、16:固定)。

Analog Output Voltage

ANALOG-USB Interfaceのアナログ出力ポートから出力する信号の電圧を指定します。

Analog Output Frequency

ANALOG-USB Interfaceのアナログ出力ポートから出力する信号波形の周波数を指定します。

Timestamp Mode

受信したデータに対して、タイムスタンプをどのように付与するかを設定します。

  • device: ANALOG-USB Interfaceのクロックを利用してタイムスタンプを付与します。 host よりも高精度にタイムスタンプを付与できます。

  • host: Terminal Systemのコンピューター側のクロックを利用してタイムスタンプを付与します。

同期ケーブルを使って複数のアプトポッド製USBインターフェイスを同期させる場合は、それぞれのデバイスコネクター設定で、 device を選択してください。

ただし、ここで device を選択すると、アプトポッド製USBインターフェイス以外のデバイスとの間に時刻のずれが生じることがあります。これは、アプトポッド製USBインターフェイス以外のデバイスが、Terminal Systemのコンピューター側のクロックを利用するためです( host 相当)。

アプトポッド製USBインターフェイスと、それ以外のデバイスとの時刻同期を重視する場合は、アプトポッド製USBインターフェイスでも host を選択して、他のデバイスと同様にTerminal Systemのコンピューターのクロックを利用してください。

Device Path

接続されているANALOG-USB Interfaceのデバイスパスを選択します。 複数のデバイスコネクターが同じデバイスパスを使用することはできません。

6.2.2. Audio#

音声データを取得する場合に使用するデバイスコネクターです。

Format

音声データの形式を選択します(S16LE: signed 16 bit little-endian、S32LE: signed 32 bit little-endian、F32LE: floating-point little-endian)。

Sampling Frequency

数値を入力します。(単位Hz)

Number of Channels

チャンネルの数を入力します。

Device Path

接続されているANALOG-USB Interfaceのデバイスパスを選択します。 複数のデバイスコネクターが同じデバイスパスを使用することはできません。

Mic Jack Audio Element

コンピューターのマイクジャックを使用する場合、マイクジャックの状態(抜き差し)を示すデバイスエレメント名を入力します。

  • Terminal SystemのコンピューターとしてVTC 1910-Sを使用する場合: Mic Jack

  • Terminal SystemのコンピューターとしてEDGEPLANT T1を使用する場合: y Jack-state

Interface

音声を制御するデバイスの種別を入力します。

  • Terminal SystemのコンピューターとしてVTC 1910-Sを使用する場合: CARD

  • Terminal SystemのコンピューターとしてEDGEPLANT T1を使用する場合: MIXER

Command

GStreamerのコマンドを入力します。使用する音声入力に適したパイプラインを設定し、GStreamerの標準出力から音声データが出力されるようにしてください。

コマンドでは、以下の変数を使用することにより他の設定値を参照することができます。

変数名

$_DEVICE

[Device Path]に設定したパスのフルパス

$_FORMAT

[Format] に設定した値

$_RATE

[Sampling Frequency]で指定した値

$_CHANNELS

[Number of Channels]で指定した値

Terminal SystemのコンピューターとしてVTC 1910-Sを使用する場合のコマンド例:

gst-launch-1.0 -q alsasrc device=$_DEVICE ! audioconvert ! audio/x-raw,format=$_FORMAT,rate=$_RATE,channels=$_CHANNELS ! fdsink fd=1

Terminal SystemのコンピューターとしてEDGEPLANT T1を使用する場合のコマンド例:

gst-launch-1.0 -q alsasrc device=hw:1 ! audioconvert ! audio/x-raw,format=$_FORMAT,rate=$_RATE,channels=$_CHANNELS ! fdsink fd=1

6.2.3. Audio (Onboard)#

Terminal Systemのオンボードオーディオから入力された音声を取得するデバイスコネクターです。

Format

音声データの形式を選択します(S16LE: signed 16 bit little-endian、S32LE: signed 32 bit little-endian、F32LE: floating-point little-endian)。

6.2.4. CAN Transceiver#

アプトポッド製のCAN Transceiver(旧製品)を使用するためのデバイスコネクターです。 (EDGEPLANT T1をご使用の場合は表示されません。)

Baud Rate

CAN通信のボーレートを選択します。

Device Path

接続されているCAN Transceiverのデバイスパスを選択します。 複数のデバイスコネクターが同じデバイスパスを使用することはできません。

6.2.5. CAN-USB Interface#

アプトポッド製の以下のCAN-USBインターフェイス製品を使用するためのデバイスコネクターです。

  • CAN USB Interface AP-CT2A

  • EDGEPLANT CAN-USB Interface EP1-CH02A

Baud Rate

CAN通信のボーレートを選択します。

Device Path

接続されているEDGEPLANT CAN-USB Interface EP1-CH02Aのデバイスパスを選択します。 複数のデバイスコネクターが同じデバイスパスを使用することはできません。

ACK

CAN-USB InterfaceからCANバスにACKを送信するかどうかを設定します(0:ACKあり、1:ACKなし)。

Timestamp Mode

受信したデータに対して、タイムスタンプをどのように付与するかを設定します。

  • device: CAN-USB Interfaceのクロックを利用してタイムスタンプを付与します。 host よりも高精度にタイムスタンプを付与できます。

  • host: Terminal Systemのコンピューター側のクロックを利用してタイムスタンプを付与します。

同期ケーブルを使って複数のアプトポッド製USBインターフェイスを同期させる場合は、それぞれのデバイスコネクター設定で、 device を選択してください。

ただし、ここで device を選択すると、アプトポッド製USBインターフェイス以外のデバイスとの間に時刻のずれが生じることがあります。これは、アプトポッド製USBインターフェイス以外のデバイスが、Terminal Systemのコンピューター側のクロックを利用するためです( host 相当)。

アプトポッド製USBインターフェイスと、それ以外のデバイスとの時刻同期を重視する場合は、アプトポッド製USBインターフェイスでも host を選択して、他のデバイスと同様にTerminal Systemのコンピューターのクロックを利用してください。

6.2.6. Custom#

独自のデバイスコネクターを開発して使用する場合は、Customを使用します。

オプション

デバイスコネクターの設定をキーと値のペアで設定します。 設定の内容は使用するデバイスコネクターによって異なります。

値を入力する際には、適切なTypeを選択してください。boolean、object、arrayを選択した場合、値はJSON記法で入力します。

6.2.7. GPS#

GPSデバイスからの情報(各種のNMEAセンテンス)を取得するデバイスコネクターです。 通常の構成の場合、緯度、経度、方向の情報(RMCセンテンス)は、およそ200msごとに取得されます。

GSPデバイス独自の設定項目はありません。

6.2.8. H.264#

カメラから出力されるH.264形式の動画を取得するためのデバイスコネクターです。

Resolution

取得する動画の解像度を選択します。

Frame Rate

動画のフレームレートを選択します。

Device Path

デバイスパスを指定することで、使用するカメラを選択します。 複数のデバイスコネクターが同じデバイスパスを使用することはできません。

デバイスパスには、以下の2種の形式があります。

  • /dev/example_camera-name_serial-number のようにカメラの型番と個体番号を含む形式(このデバイスコネクターに適したカメラだけ表示されます。)

  • /dev/videoX の形式(Xには数値が入ります。このデバイスコネクターに適さないカメラも表示されます。)

どちらの形式も指定可能ですが、特定の個体のカメラを継続して使用する場合は、カメラの型番と個体番号を含む形式を推奨します。

個体番号が異なるカメラを頻繁に接続しなおす場合は、 /dev/videoX の形式で指定することにより、個体番号を問わず /dev/videoX に接続されたカメラを使用することができます。 ただしこの場合、このデバイスコネクターに適さないカメラが /dev/videoX として認識されると、データを正しく取得できません。

Encoding Delay Correction

データ打刻のオフセット(カメラ処理時間)を入力します。 例えば、カメラ内での処理に100ミリ秒かかる場合は、「100」を指定します。これにより、タイムスタンプ付与時に100ミリ秒前の時刻が使用されます。

6.2.9. H.264(GStreamer用)#

カメラからのRAWデータ出力をGStreamerでH.264に変換し、それを取得する場合に使用するデバイスコネクターです。

Resolution

取得する動画の解像度を選択します。

Frame Rate

動画のフレームレートを選択します。

Device Path

デバイスパスを指定することで、使用するカメラを選択します。 複数のデバイスコネクターが同じデバイスパスを使用することはできません。

デバイスパスには、以下の2種の形式があります。

  • /dev/example_camera-name_serial-number のようにカメラの型番と個体番号を含む形式(このデバイスコネクターに適したカメラだけ表示されます。)

  • /dev/videoX の形式(Xには数値が入ります。このデバイスコネクターに適さないカメラも表示されます。)

どちらの形式も指定可能ですが、特定の個体のカメラを継続して使用する場合は、カメラの型番と個体番号を含む形式を推奨します。

個体番号が異なるカメラを頻繁に接続しなおす場合は、 /dev/videoX の形式で指定することにより、個体番号を問わず /dev/videoX に接続されたカメラを使用することができます。 ただしこの場合、このデバイスコネクターに適さないカメラが /dev/videoX として認識されると、データを正しく取得できなくなります。

Encoding Delay Correction

データ打刻のオフセット(カメラ処理時間)を入力します。 例えば、カメラ内での処理に100ミリ秒かかる場合は、「100」を指定します。これにより、タイムスタンプ付与時に100ミリ秒前の時刻が使用されます。

Command

GStreamerのコマンドを入力します。使用する入力に適したパイプラインを設定し、GStreamerの標準出力からH.264データが出力されるようにしてください。

コマンドでは、以下の変数を使用することにより他の設定値を参照することができます。

変数名

$_PATH

[Device Path]に設定したパスのフルパス

$_FPS

[Frame Rate] に設定した値

$_WIDTH

[Resolution]で指定した解像度の幅の値

$_HEIGHT

[Resolution]で指定した解像度の高さの値

Terminal SystemのコンピューターとしてVTC 1910-Sを使用する場合のコマンド例:

gst-launch-1.0 -q v4l2src device=$_PATH ! image/jpeg,width=$_WIDTH,height=$_HEIGHT,framerate=$_FPS/1 ! queue ! vaapijpegdec ! queue ! vaapipostproc ! queue ! vaapih264enc rate-control=2 bitrate=3072 max-bframes=0 keyframe-period=150 ! fdsink fd=1

Terminal SystemのコンピューターとしてEDGEPLANT T1を使用する場合のコマンド例:

gst-launch-1.0 -q v4l2src device=$_PATH ! image/jpeg,width=$_WIDTH,height=$_HEIGHT,framerate=$_FPS/1 ! jpegdec ! omxh264enc iframeinterval=$_KEYPERIOD bitrate=3000000 insert-sps-pps=true insert-vui=true ! video/x-h264,stream-format=byte-stream ! queue ! h264parse ! queue ! fdsink fd=1

6.2.10. H.264(BRIO x4用)(ロジクールBRIOウェブカメラ4台用)#

4台のロジクールBRIOウェブカメラからの動画を2x2のタイル状に並べて、1つの動画として取得するためのデバイスコネクターです。

Resolution

取得する動画の解像度を選択します。

Frame Rate

フレームレートを選択します。

Bitrate

ビットレートを選択します。

Device Path

左上、右上、左下、右下に配置する動画の取得元として、接続されているカメラのデバイスパスをそれぞれ選択します。 複数のデバイスコネクターが同じデバイスパスを使用することはできません。

デバイスパスには、以下の2種の形式があります。

  • /dev/example_camera-name_serial-number のようにカメラの型番と個体番号を含む形式(このデバイスコネクターに適したカメラだけ表示されます。)

  • /dev/videoX の形式(Xには数値が入ります。このデバイスコネクターに適さないカメラも表示されます。)

どちらの形式も指定可能ですが、特定の個体のカメラを継続して使用する場合は、カメラの型番と個体番号を含む形式を推奨します。

個体番号が異なるカメラを頻繁に接続しなおす場合は、 /dev/videoX の形式で指定することにより、個体番号を問わず /dev/videoX に接続されたカメラを使用することができます。 ただしこの場合、このデバイスコネクターに適さないカメラが /dev/videoX として認識されると、データを正しく取得できなくなります。

6.2.11. H.264 for C920(ロジクールC920ウェブカメラ用)#

ロジクールC920ウェブカメラから、H.264形式の動画を取得するためのデバイスコネクターです。

Resolution

取得する動画の解像度を選択します。

Frame Rate

フレームレートを選択します。

注釈

C920を使用する場合、自動露光調整機能によりフレームレートが30fpsから15fpsに低下することがあるため、30fpsは選択できません。

Bitrate

ビットレートを選択します。

Device Path

デバイスパスを指定することで、使用するカメラを選択します。 複数のデバイスコネクターが同じデバイスパスを使用することはできません。

デバイスパスには、以下の2種の形式があります。

  • /dev/example_camera-name_serial-number のようにカメラの型番と個体番号を含む形式(このデバイスコネクターに適したカメラだけ表示されます。)

  • /dev/videoX の形式(Xには数値が入ります。このデバイスコネクターに適さないカメラも表示されます。)

どちらの形式も指定可能ですが、特定の個体のカメラを継続して使用する場合は、カメラの型番と個体番号を含む形式を推奨します。

個体番号が異なるカメラを頻繁に接続しなおす場合は、 /dev/videoX の形式で指定することにより、個体番号を問わず /dev/videoX に接続されたカメラを使用することができます。 ただしこの場合、このデバイスコネクターに適さないカメラが /dev/videoX として認識されると、データを正しく取得できなくなります。

6.2.12. H.264 for See3CAM_CU30(e-con Systems See3CAM_CU30カメラ用)#

e-con Systems See3CAM_CU30カメラから、H.264形式の動画を取得するためのデバイスコネクターです。

Resolution

取得する動画の解像度を選択します。

Frame Rate

フレームレートを選択します。

Bitrate

ビットレートを選択します。

Device Path

デバイスパスを指定することで、使用するカメラを選択します。 複数のデバイスコネクターが同じデバイスパスを使用することはできません。

デバイスパスには、以下の2種の形式があります。

  • /dev/example_camera-name_serial-number のようにカメラの型番と個体番号を含む形式(このデバイスコネクターに適したカメラだけ表示されます。)

  • /dev/videoX の形式(Xには数値が入ります。このデバイスコネクターに適さないカメラも表示されます。)

どちらの形式も指定可能ですが、特定の個体のカメラを継続して使用する場合は、カメラの型番と個体番号を含む形式を推奨します。

個体番号が異なるカメラを頻繁に接続しなおす場合は、 /dev/videoX の形式で指定することにより、個体番号を問わず /dev/videoX に接続されたカメラを使用することができます。 ただしこの場合、このデバイスコネクターに適さないカメラが /dev/videoX として認識されると、データを正しく取得できなくなります。

6.2.13. H.264 for EP1-VM01A(アプトポッドEDGEPLANT EP1-VM01Aカメラ用)#

アプトポッド製EDGEPLANT EP1-VM01Aカメラから、H.264形式の動画を取得するためのデバイスコネクターです。

Resolution

取得する動画の解像度を選択します。

Frame Rate

フレームレートを選択します。

Bitrate

ビットレートを選択します。

Device Path

デバイスパスを指定することで、使用するカメラを選択します。 複数のデバイスコネクターが同じデバイスパスを使用することはできません。

デバイスパスには、以下の2種の形式があります。

  • /dev/example_camera-name_serial-number のようにカメラの型番と個体番号を含む形式(このデバイスコネクターに適したカメラだけ表示されます。)

  • /dev/videoX の形式(Xには数値が入ります。このデバイスコネクターに適さないカメラも表示されます。)

どちらの形式も指定可能ですが、特定の個体のカメラを継続して使用する場合は、カメラの型番と個体番号を含む形式を推奨します。

個体番号が異なるカメラを頻繁に接続しなおす場合は、 /dev/videoX の形式で指定することにより、個体番号を問わず /dev/videoX に接続されたカメラを使用することができます。 ただしこの場合、このデバイスコネクターに適さないカメラが /dev/videoX として認識されると、データを正しく取得できなくなります。

6.2.14. MJPEG#

カメラから、MJPEG形式の動画を取得するためのデバイスコネクターです。

Resolution

取得する動画の解像度を選択します。

Frame Rate

フレームレートを選択します。

Device Path

デバイスパスを指定することで、使用するカメラを選択します。 複数のデバイスコネクターが同じデバイスパスを使用することはできません。

デバイスパスには、以下の2種の形式があります。

  • /dev/example_camera-name_serial-number のようにカメラの型番と個体番号を含む形式(このデバイスコネクターに適したカメラだけ表示されます。)

  • /dev/videoX の形式(Xには数値が入ります。このデバイスコネクターに適さないカメラも表示されます。)

どちらの形式も指定可能ですが、特定の個体のカメラを継続して使用する場合は、カメラの型番と個体番号を含む形式を推奨します。

個体番号が異なるカメラを頻繁に接続しなおす場合は、 /dev/videoX の形式で指定することにより、個体番号を問わず /dev/videoX に接続されたカメラを使用することができます。 ただしこの場合、このデバイスコネクターに適さないカメラが /dev/videoX として認識されると、データを正しく取得できなくなります。

Encoding Delay Correction

データ打刻のオフセット(カメラ処理時間)を入力します。 例えば、カメラ内での処理に100ミリ秒かかる場合は、「100」を指定します。これにより、タイムスタンプ付与時に100ミリ秒前の時刻が使用されます。

6.2.15. PCAN-USB FD(PEAK-System PCAN-USB FD用)#

PEAK-System PCAN-USB FDを使用してCANデータを取得するためのデバイスコネクターです。

Baud Rate

アービトレーションフェーズのボーレートを選択します。

Data Baud Rate

データフェーズのボーレートを選択します。

Device Path

Terminal Systemが認識しているデバイスのパスが表示されます。使用するデバイスを選択します。 複数のデバイスコネクターが同じデバイスパスを使用することはできません。

ACK

CAN-USB InterfaceからCANバスにACKを送信するかどうかを設定します。(0:ACKあり、1:ACKなし)

ISO CAN FD

ISO CAN FDを使用するかどうかを設定します(0:無効、1:有効)。ISO規格に準拠したCAN FDを使用する場合は1を選択し、Non-ISOのCAN-FDを使用する場合は、0を選択します。

6.2.16. System Status#

System Statusは、接続されたデバイスからのデータではなく、Terminal System自体の情報を取得し、intdashサーバーに送信する特殊なデバイスコネクターです。Terminal System自体の状態の取得や、Terminal Systemとintdashサーバーの間の疎通確認のために使用することができます。

System Status独自の設定項目はありません。

工場出荷時には、このデバイスコネクターがチャンネル255に設定されています。通常、この設定を変更する必要はありません。

System Statusデバイスコネクターが取得するデータは以下のとおりです。

データタイプ

データID

内容

String

s00

システム情報

String

s20

ネットワーク情報

String

s50

Edge Agent(intdash サーバーとの間でデータの送受信を行うエージェントソフトウェア)のステータス