3.4 デジタル入力(D IN)とNx Witnessの連携 #
対象機種: AX30 / AX11 / AX21 / AG10 / AG20
エッジゲートウェイには、背面のデジタル入力(D IN)端子の変化を監視し、Nx Witnessにイベントとして通知するアプリケーションamnimo-dimoniがプリインストールされています。
デジタル入力(D IN)とNx Witnessを連携させることで、リアルタイムでイベントを知ることや、録画済みデータの中からイベント発生時の映像を素早く検索することができるようになります。
補足: 本機能はエッジゲートウェイのファームウェアのバージョンがV1.3.0以降よりプリインストールされています。
デジタル入力(D IN)の詳細については、『エッジゲートウェイユーザーズマニュアル』『AIエッジゲートウェイユーザーズマニュアル』『センサー接続ゲートウェイユーザーズマニュアル』の『インターフェイス- D IN/D OUT ポート』を参照してください。
3.4.1 amnimo-dimoniの設定 #
デジタル入力(D IN)の変化をNx Witnessに通知するための設定を行います。
amnimo-dimoni設定ファイルの変更
/etc/amnimo/dimoni.confファイルを開き、NX_PASSWORDにNx Witnessのadminパスワードを設定します。
補足: Nx Witnessのadminパスワードとは、PCのNx Witnessクライアントアプリから初めてエッジゲートウェイに接続する際に設定するパスワードです。
Nx Witnessで使用するポート番号に7001以外を指定した場合はNX_PORTの設定も変更してください。(デフォルトは7001です)
詳細については、『エッジゲートウェイ スタートアップガイド』の『Step6 VMSを設定する』を参照してください。
実行環境: エッジゲートウェイ
admin@amnimo:~$ sudo vi /etc/amnimo/dimoni.conf
#
# Nx Witness Generic Events
#
NX_PASSWORD=PASSWORD ←Nx Witnessで使用するパスワードを設定します。
NX_PORT=7001 ←Nx Witnessで使用するポート番号(デフォルト7001)を設定します。
NX_DI_1_UP=EVENT_DI-1_UP ←この行以降は変更する必要がありません。
NX_DI_1_DN=EVENT_DI-1_DN
NX_DI_2_UP=EVENT_DI-2_UP
NX_DI_2_DN=EVENT_DI-2_DN
NX_DI_3_UP=EVENT_DI-3_UP
NX_DI_3_DN=EVENT_DI-3_DN
NX_DI_4_UP=EVENT_DI-4_UP
NX_DI_4_DN=EVENT_DI-4_DN
:
サービスの再起動
設定を変更した場合は、amnimo-dimoniのサービスを再起動する必要があります。
実行環境: エッジゲートウェイ
admin@amnimo:~$ sudo systemctl restart amnimo-dimoni
連携設定の無効化
システム起動時にamnimo-dimoniを自動起動しますが、NxWitnessを無効化する場合は、下記のようにNX_PASSWORDに設定したパスワードを削除し、amnimo-dimoniのサービスを再起動する必要があります。
実行環境: エッジゲートウェイ
admin@amnimo:~$ sudo vi /etc/amnimo/dimoni.conf
#
# Nx Witness Generic Events
#
NX_PASSWORD= ←パスワードの設定内容を削除します。
NX_PORT=7001
NX_DI_1_UP=EVENT_DI-1_UP
NX_DI_1_DN=EVENT_DI-1_DN
NX_DI_2_UP=EVENT_DI-2_UP
NX_DI_2_DN=EVENT_DI-2_DN
NX_DI_3_UP=EVENT_DI-3_UP
NX_DI_3_DN=EVENT_DI-3_DN
NX_DI_4_UP=EVENT_DI-4_UP
NX_DI_4_DN=EVENT_DI-4_DN
:
admin@amnimo:~$ sudo systemctl restart amnimo-dimoni ←サービスの再起動
設定ファイルの保存
amshにてamnimo-dimoni設定ファイル(/etc/amnimo/dimoni.conf)の内容をエッジゲートウェイ設定ファイルに書き込みます。この操作により、firmware area update コマンドによるファームウェアの全体更新時や現在起動していない冗長領域側で起動した場合でも設定内容を保持できます。
補足: /etc/amnimo/dimoni.conf は、出荷時から /etc/amnimo/archive.list に登録されています。archive.list に登録したファイルは、アムニモ設定情報と一緒に保存されます(『2.3.3 archive.list に登録して残す』)。保存しないで再起動すると、最後に保存した内容に戻ります。
実行モード: 管理者モード(amnimo#)/設定モード(amnimo(cfg)#)
実行環境: エッジゲートウェイ
amnimo# config file save startup-config
3.4.2 Nx Witnessのイベント設定 #
デジタル入力(D IN)の変化時にLIVE映像画面上へのテキスト表示、録画映像へのブックマーク付与、メール送信、などのアクションを指定することができます。
Nx Witnessクライアントアプリの操作
PCからNx Witnessクライアントアプリを起動し、イベントを設定します。エッジゲートウェイ接続後、画面左上の
をクリックし、[システムアドミニストレーション] -> [イベントルール]の順にクリックし、イベントルール設定画面を表示します。本画面で以下の設定を行います。
① [追加]ボタンを押し、新たにイベントを作成します。
② [トリガー]に[汎用イベント]を設定します。
③ [キャプションに含まれる]に文字列(下記一覧表)を設定し、イベントのトリガーを指定します。
④ [アクション]にはイベント発生時に実行したい動作を設定します。
イベントルール設定画面
[キャプションに含まれる]に設定可能な文字列とイベント発生のタイミングの一覧
| [キャプションに含まれる]に設定可能な文字列 | イベント発生のタイミング |
|---|---|
| EVENT_DI-1_UP | DI-1がLowからHighに変化 |
| EVENT_DI-1_DN | DI-1がHighからLowに変化 |
| EVENT_DI-2_UP | DI-2がLowからHighに変化 |
| EVENT_DI-2_DN | DI-2がHighからLowに変化 |
| EVENT_DI-3_UP | DI-3がLowからHighに変化 |
| EVENT_DI-3_DN | DI-3がHighからLowに変化 |
| EVENT_DI-4_UP | DI-4がLowからHighに変化 |
| EVENT_DI-4_DN | DI-4がHighからLowに変化 |
| EVENT_DI-1 | DI-1の変化 (High/Low両方) |
| EVENT_DI-2 | DI-2の変化 (High/Low両方) |
| EVENT_DI-3 | DI-3の変化 (High/Low両方) |
| EVENT_DI-4 | DI-4の変化 (High/Low両方) |
| EVENT_DI | いずれかのDI変化 (High/Low両方) |
イベントオプションの追加
Nx Witnessに通知するイベントにオプションを追加することができます。イベントオプションを追加することで、より高度なイベントルールを設定することができるようになります。
補足: イベントオプションの追加はFW 1.5.0以降でご利用になれます。
設定可能なイベントオプションの詳細については、http://<エッジゲートウェイのIPアドレス>:7001/static/index.html#/developers/events を参照ください。
イベントオプションを追加する際は/etc/amnimo/dimoni.confファイルを開き、各イベントのオプションを設定します。設定を有効にする場合は、amnimo-dimoniのサービスを再起動する必要があります。
例えば、以下のように設定するとデジタル入力(D IN)のイベントはレベルがHighの期間中継続されるようになります。
実行環境: エッジゲートウェイ
admin@amnimo:~$ sudo vi /etc/amnimo/dimoni.conf
:
NX_DI_1_UP_OPT=&state=Active
NX_DI_1_DN_OPT=&state=Inactive
NX_DI_2_UP_OPT=&state=Active
NX_DI_2_DN_OPT=&state=Inactive
NX_DI_3_UP_OPT=&state=Active
NX_DI_3_DN_OPT=&state=Inactive
NX_DI_4_UP_OPT=&state=Active
NX_DI_4_DN_OPT=&state=Inactive
:
admin@amnimo:~$ sudo systemctl restart amnimo-dimoni ←サービスの再起動
また、以下のように設定するとデジタル入力(D IN)のイベントとNx Witnessに接続されているカメラのIDを紐づけることができます。
実行環境: エッジゲートウェイ
admin@amnimo:~$ sudo vi /etc/amnimo/dimoni.conf
:
NX_DI_1_UP_OPT=&metadata={"cameraRefs":["xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"]}
NX_DI_1_DN_OPT=&metadata={"cameraRefs":["xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"]}
NX_DI_2_UP_OPT=&metadata={"cameraRefs":["xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"]}
NX_DI_2_DN_OPT=&metadata={"cameraRefs":["xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"]}
NX_DI_3_UP_OPT=&metadata={"cameraRefs":["xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"]}
NX_DI_3_DN_OPT=&metadata={"cameraRefs":["xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"]}
NX_DI_4_UP_OPT=&metadata={"cameraRefs":["xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"]}
NX_DI_4_DN_OPT=&metadata={"cameraRefs":["xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"]}
:
admin@amnimo:~$ sudo systemctl restart amnimo-dimoni ←サービスの再起動
補足: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx には対象となるカメラのカメラIDを設定してください。カメラID はNx Witnessクライアントアプリから、対象カメラの [カメラ設定] -> [一般]の 詳細情報 から取得できます。
オプションは&で連結することで複数組み合わせて設定することが可能です。
イベントルール設定画面
Nx Witnessクライアントアプリの[アクション]設定で、秒数の指定のチェックボックスを外すことで、イベント期間中はそのアクションを維持します。
下記のように設定した場合、デジタル入力D IN1のレベルがHighの期間中、常にテキスト表示が行われます。
カメラIDを紐づけた場合は、[アクション]設定で[メールを送信]や[デスクトップ通知を表示]を指定した場合に対象のカメラ映像が添付されるようになります。
Nx Witnessの設定保存
amshの設定モードで前述のイベント設定を含むNx Witnessの設定を保存します。この操作により、firmware area update コマンドによるファームウェアの全体更新時や現在起動していない冗長領域側で起動した場合でも設定内容を保持できます。
補足: passwordにはNx Witnessのadminパスワードを設定してください。
Nx Witnessで使用するポート番号に7001以外を指定した場合はportの設定も変更してください。
実行モード: 設定モード(amnimo(cfg)#)
実行環境: エッジゲートウェイ
amnimo(cfg)# nxwitness
amnimo(cfg-nxwitness)# password
Enter new password:
Retype new password:
passwd: password updated successfully.
amnimo(cfg-nxwitness)# port 7001
amnimo(cfg-nxwitness)# exit
amnimo(cfg)# config nxwitness save
amnimo(cfg)# config file save startup-config
3.4.3 Nx Witness以外のアプリとの連携 #
amnimo-dimoniのアプリケーションフック機能を使うことで、Nx Witness以外のアプリともデジタル入力(D IN)を連携させることが可能です。
アプリケーションフックを追加する際は/etc/amnimo/dimoni.confファイルを開き、D IN端子に対応するパラメーターにコマンドやスクリプトファイルを設定します。設定を有効化するには、amnimo-dimoniのサービスを再起動する必要があります。
例えば、以下のように設定するとデジタル入力D IN1 のレベルが Highになった際に「amctrl do --on 1」が実行され、Lowになった際に「amctrl do --off 1」が実行されます。(sudo は不要です)
補足: amnimo-dimoni は root 権限のサービスとして動作します(ユニットファイル /usr/lib/systemd/system/amnimo-dimoni.service)。設定したコマンドも root 権限で実行されます。
実行環境: エッジゲートウェイ
admin@amnimo:~$ sudo vi /etc/amnimo/dimoni.conf
:
#
# Hooks for other applications
#
HK_DI_1_UP=amctrl do --on 1
HK_DI_1_DN=amctrl do --off 1
HK_DI_2_UP=
HK_DI_2_DN=
HK_DI_3_UP=
HK_DI_3_DN=
HK_DI_4_UP=
HK_DI_4_DN=
:
admin@amnimo:~$ sudo systemctl restart amnimo-dimoni ←サービスの再起動
3.4.4 チャタリング機能 #
デジタル入力(D IN)端子の変化を検出してからイベントを送信するまでに、指定した時間だけ待機する機能です。ノイズや機械的なチャタリングによる誤検知を防ぐことができます。
補足: 本機能はエッジゲートウェイのファームウェアのバージョンがV3.8.0以降より使用できます。
チャタリング時間の設定
/etc/amnimo/dimoni.confファイルを開き、各D IN端子のチャタリング時間を設定します。設定を有効にする場合は、amnimo-dimoniのサービスを再起動する必要があります。
補足: 既定の dimoni.conf には、
DEBOUNCE_で始まる行がありません(AG10 FW 3.8.1、amnimo-dimoni 3.8.0 で確認)。チャタリング機能を使う場合は、以下の行をファイルの末尾に追記してください。以下の例の「:」は、既存の行を省略していることを表します。
実行環境: エッジゲートウェイ
admin@amnimo:~$ sudo vi /etc/amnimo/dimoni.conf
:
#
# Debounce time settings (seconds, 0=disabled, max=3600)
#
DEBOUNCE_DI_1_ON=1 ←D IN1のON方向(OFF→ON変化時)のチャタリング時間(秒)
DEBOUNCE_DI_1_OFF=1 ←D IN1のOFF方向(ON→OFF変化時)のチャタリング時間(秒)
DEBOUNCE_DI_2_ON=0 ←0を設定するとチャタリング無効(即座にイベント送信)
DEBOUNCE_DI_2_OFF=0
DEBOUNCE_DI_3_ON=2
DEBOUNCE_DI_3_OFF=3
DEBOUNCE_DI_4_ON=0
DEBOUNCE_DI_4_OFF=0
:
admin@amnimo:~$ sudo systemctl restart amnimo-dimoni ←サービスの再起動
補足: 設定範囲は 0~3600 秒(0~1時間)です。
0を設定すると従来通り即座にイベントが送信されます。
ON方向とOFF方向で異なるチャタリング時間を設定できます。
チャタリング判定モードの設定
チャタリングの判定方法を選択できます。デフォルトはCONTINUOUSモード(連続安定判定)です。
実行環境: エッジゲートウェイ
admin@amnimo:~$ sudo vi /etc/amnimo/dimoni.conf
:
#
# Debounce mode (CONTINUOUS=default, TIME_POINT=2-sample match)
#
DEBOUNCE_MODE_DI_1=CONTINUOUS ← 連続安定判定モード(デフォルト)
DEBOUNCE_MODE_DI_2=TIME_POINT ← 時点判定モード
DEBOUNCE_MODE_DI_3=CONTINUOUS
DEBOUNCE_MODE_DI_4=CONTINUOUS
:
admin@amnimo:~$ sudo systemctl restart amnimo-dimoni ←サービスの再起動
CONTINUOUS(連続安定判定モード)
- 変化があるたびにタイマーをリセット
- 値が安定してから指定時間経過後にイベント送信
- 機械式スイッチのチャタリング対策に最適
TIME_POINT(時点判定モード)
- 初回変化から指定時間経過後の値を判定
- 途中の変化は無視される
- ノイズが多い環境で一定時間後の状態確認に最適
設定ファイルの保存
amshにてamnimo-dimoni設定ファイル(/etc/amnimo/dimoni.conf)の内容をエッジゲートウェイ設定ファイルに書き込みます。
実行モード: 管理者モード(amnimo#)/設定モード(amnimo(cfg)#)
実行環境: エッジゲートウェイ
amnimo# config file save startup-config

補足: 本機能はエッジゲートウェイのファームウェアのバージョンがV1.3.0以降よりプリインストールされています。