IEIEJ-p 変更提案書

電 気 設 備 学 会 （e-mail：dsg01@ieiej.or.jp Fax:03-5805-3265）
B A S 標 準 イ ン タ フ ェ ー ス 仕 様 拡 張 推 進 委 員 会 委 員 長 御 中 （注１）
(注１)本提案書は e-mail 送信し、提案者署名入りは FAX にて送信下さい（受付番号/アデンダム番号A-1 / a-1□Fax 受信済み）（電気設備学会にて記入）

B A S 標準インタフェース仕様書（IEIE/P-0003:2000 ）への提案書
BAS 標準インタフェース仕様書（IEIE/P-0003:2000）に対して下記の提案しますので審議下さい。
ただし本提案に対する著作権は一切主張いたしません。
提案者
日付：平成 13 年 5 月 17 日
氏名：BAS 標準化インターフェース仕様拡張推進委員
担当：伊藤弘（㈱山武ビルシステム）・高橋敬一（能美防災㈱）・大山晋平（㈱日立製作所）
電気設備学会： 会員
準会員
法人会員
非会員
所属：
住所：
電話/Fax 番号：
e-mail アドレス：

提案内容
題目（Title）：I-Am サービスのサービスパラメータ変更に関する提案

背景（Background, History）：
BACnet の ISO 化およびそれにともなう JIS 化の流れの中で、IEIE/P-0003:2000 も BACnet とのインターオペラビリティを確保できるようにする必要がある。

問題点（Problem）：
IEIE/P-0003:2000 で は I-Am サ ー ビ ス を 拡 張 し 、 サ ー ビ ス パ ラ メ ー タ と し て System_Status とOff-line_Reason を追加しているが、そのために BACnet とのインターオペラビリティが損なわれている。

解決策（Solution）：
System_Status と Off-line_Reason を I-Am サービスパラメータから外し、デバイスオブジェクトのSystem_Status プロパティを通告する必要があるときはアルゴリズム変化報告としての Unconfirmed
EventNotification サービス(システム管理ブロードキャスト)を使用する。また、離脱要因に関しては同サービス中の MessageText プロパティに記述することで既存の機能を満足する。定周期のネットワーク参加デバイス監視機能は I-Am サービスのみとし、そのデバイスの詳細な System_Status 情報を知る必要がある場合は Read Property サービスを用いて読み込むものとする。

1

IEIEJ-p 変更提案書

規格（IEIE/P-0003:2000）変更案（Change to Standard（IEIE/P-0003:2000））：（原規格条文に対して変更追加がわかる変更履歴付きとする。取消しは一本線、追加は斜体赤字で表記）

４．オブジェクトとサービス
4.1.1 BACnet 準拠オブジェクト
表 4.1.1 BACnet 準拠オブジェクト一覧
オブジェクトBACnet 対応規格
本規格での扱い：：：：：：
EventEnrollmentObjectType
12.10
不使用 一部使用 *1：：：：：：
*1 Device オブジェクトの System_Status プロパティをアルゴリズム変化報告でシステム管理ブロードキャストするときのみ使用。
4.2.1 BACnet 準拠サービス
表 4.2.1 サービス一覧
分類サービス
BACnet 対 本規格で使用ポート番号
応規格の扱い
ALARM
：：：
：
AND：
：
：
：
EVENT
UnconfirmedEventNotification
13.12
12.10
ﾕﾆｷｬｽﾄ、一般ﾌﾞﾛｰﾄﾞｷｬｽﾄ、SERVICE
ｼｽﾃﾑ管理ﾌﾞﾛｰﾄﾞｷｬｽﾄ
：：：
：
：
：
：
：
：
：
：：
：

d)リモート装置管理サービス(REMOTE DEVICE MANAGEMENT SERVICE)
1)Who-Is 及び I-Am サービス(Who-Is and I-Am Services) Who-Is 及び I-Am サービスは、I-Am サービスのプリミティブ構造を除いて、BACnet 規格 16.9 Who-Is and I-Am Services による。I-Am サービス
をステータス管理にも使用できるようにするため、パラメータを拡張する。拡張した仕様は次による。
1.1)I-Am サービス(I-Am Service) I-Am サービスは、Who-Is サービス要求に対する応答、ステータス管理、参入離脱等に使用される。I-Am サービスは確認無しサービスである。I-Am サービスプリ
ミティブの構造を除いて、BACnet 規格 16.9 Who-Is and I-Am Services の規格に従う。プリミティ
ブ構造の修正は、I-Am サービスをステータス管理にも使用できるようにするためである。
1.1.1)I-Am サービス(I-Am Service)のプリミティブ構造 I-Am サービスのプリミティブの構造を表4.2.2 に示す。
表 4.2.2 Structure of I-Am Service Primitives(I-Am サービスプリミティブの構造)
Parameter Name(パラメータ名)
要求
指示
M
M(=)
Argument(アーギュメント)M
M(=)
I-Am Device Identifier(I-Am 装置名)
M
M(=)
Max APDU Length Accepted(最大 APDU長)
M
M(=)
Segmentation Supported(セグメンテーション)
M
M(=)
Vendor Identifier(ベンダ識別子)
M
C

System_Status(システム状態)
Off-line Reason(離脱要因)
2

M(=)
C(=)

IEIEJ-p 変更提案書

1.1.1.1) Argument(アーギュメント)…………
1.1.1.1.5)System_Status(システム状態) このパラメータは、Device オブジェクトの System_Status プロパ
ティと同じ値でなければならない。このパラメータはネットワークに対するデバイスの状態を表し、次の 5 つのいずれかである。
1.1.1.1.5.1)OPERATIONAL：リード／ライト可能な状態を示す。ネットワークに参加して通常している状態を示す。
1.1.1.1.5.2)OPERATIONAL_READ_ONLY：そのデバイスに対して情報の参照のみできる状態を示す。立
ち上がり時の状態確定作業実行中でリードには応答できるがライトはまだできない状態を示す。
1.1.1.1.5.3)DOWNLOAD_REQUIRED：ダウンロードを必要としている状態、または最初のダウンロードを発行している状態を示す。
1.1.1.1.5.4)DOWNLOAD_IN_PROGRESS：ダウンロード実行中であることを示す。
1.1.1.1.5.5)NON_OPERATIONAL：ネットワーク経由で何らアクセスできない状態を示す。
1.1.1.1.6)Off-line Reason(離脱要因) この Off-line Reason タイプパラメータは、Device オブジェクトの離脱要因プロパティの値と同じでなければならない。離脱要因はデバイスがネットワークからの離脱したときの要因を表し、キャラクターストリングで表す。

５．自立分散協調制御
5.2.4 ステータス管理機能ネットワーク参加デバイス監視機能 ステータス管理ネットワーク参加デバ
イスの監視は、すべてのデバイスが自分にとって管理を必要とするデバイス(原則としては全デバイス)のネットワークに参加しているか否かの情報をステータスを管理する。管理した結果どのような機能を実現するかは原則としてベンダマターであるが、システムとしてステータス管理の他デバイスのネットワーク参加を監視するための機能を備えることとする。ステータス管理はネットワーク参加デバイス監視は BACnet 規格の I-Am サービスを使用して実現する。
I-Am サービスは 4.2.1 BACnet 準拠サービスの I-Am サービスを参照のこと。
各デバイスは本 I-Am サービスを BACnet 規格の Who-Is、I-Am サービスに従うとともに、一定周期、かつ System_Status に変化が生じたときに発信する。一定周期で発信するのは、確認なしの同報なので受信側で何らかの原因による受信もれを救うためである。周期は 1 分とする。一定周期の I-Am サービスを発するデバイスはネットワークに参加していると判断されるが、さらに詳細にそのステータス情報が必要なときは ReadProperty サービスを使用して System_Status プロパティを読み込むものとする。
各デバイスは本 I-Am サービスの System_Status の情報によって、デバイスのステータスネットワーク参加を認識するとともに、各デバイス毎の I-Am サービスの受信を時限監視して周期送信の周期の2.5 倍の時間本サービスを受信できなかったとき又は NON_OPERATIONAL のステータスを受信した
ときに System_Status=NON_ OPERATIONAL の UnconfirmedEventNotification を受信したときに、そのデバイスがネットワークから離脱したと判断する。本ステータス管理ネットワーク参加デバイス監視の目的は・ オペレータへのシステム構成機器の状態通知
・ 離脱したデバイスの離脱要因の把握
・ 正常にデマンド要求に答えられない状態を把握して、応答時間の遅延を防ぐ等がある。
5.2.5 参入離脱手順a)参入シーケンス 各デバイスは System_Status プロパティが取り得る状態数と同じ数のイベント登録オブジェクトを実装し、その変化をアルゴリズム変化報告としてブロードキャストする。参入シーケンスの中では以下の機能を実行する。ただし、Icont の機能によっては参入シーケンスを必要としないものも
3

IEIEJ-p 変更提案書あり、その場合は立ち上がり終了時に I-Am サービスを同報して参加してもよい。
① System_Status ＝DOWNLOAD_REQUIRED の I-Am サービスを同報する。次いで、System_ Status＝DOWNLOAD_REQUIRED の UnconfirmedEventNotification サービスを同報する。
② 他のデバイスのステータス確定③ システム時刻を確定する。
④ 外部モード情報を確定する。
⑤ 休日情報を確定する。
⑥ 連動情報を確定する。
⑦ System_Status ＝OPERATIONAL の I-Am サービス UnconfirmedEventNotification サービスを同報する。
(②〜⑥は必ずしも順番を規定するものではない。②〜⑥は必要に応じて実行する)
System_Status は通常時はDOWNLOAD_REQUIRED→DOWNLOAD_IN_PROGRESS→OPERATIONAL_READ_ONLY→OPERATIONALと遷移するものとする。各状態遷移のタイミングはベンダマターであるが、BASM デバイスはDOWNLOAD_IN_PROGRESS ステータスの UnconfirmedEventNotification サービスを受信したときに、周期での TimeSynchronization Service とは別に TimeSynchronization Service を実行するものとする。し必ずしも全ての遷移状態を経由する必要はない。
b)離脱 離脱シーケンスの中では以下のことを実行する。
①System_Status ＝NON_OPERATIONAL で離脱要因を示す I-Am サービス MessageText プロパティに離脱要因を表した、下記のような UnconfirmedEventNotification サービスを同報する。
離脱要因を示す I-Am サービス UnconfirmedEventNotification サービスの送信が完了することを待ってから離脱する。もちろん突然の電源断等 I-Am サービス UnconfirmedEventNotification サービスを同報できずに離脱するケースもあるが、それは I-Am サービス UnconfirmedEventNotification サービスを同報しないで離脱したということで認識できる。
Service=UnconfirmedEventNotification (同報)ProcessIdentifier=N1
InitiatingDeviceIdentifier=( Device, Instance N3 )EventObjectIdentifier =( EventEnrollment, Instance N2 )TimeStamp=( SequenceNumber, N4 )NotificationClass=N5
Priority=N6
EventType=CHANGE_OF_STATE
MessageText='XXXXXXXXXX'NotifyType=EVENT
From State=NORMAL
ToState=OFFNORMAL
EventValues=[(NewState, SystemStatus=NON_OPERATIONAL),(StatusFlags, F,F,F,F) ]c)参入シーケンス
ネットワークへ参加

I-Am サービスおよびUnconfirmedEvent
Notification 同報

電源投入、リセット等の要因でのデバイスの立ち上がりを意味する。デバイスがネットワークへ参加する時は、他のデバイスは本デバイスに関する必要な情報を持っていることを前提とする。
I-Am サービスの同報を開始する。
次に System_Status＝DOWNLOAD_REQUIRED で下記のような Unconfirmed
EventNotification サービスを同報する。
4

IEIEJ-p 変更提案書

I-Am サ ー ビ ス 、UnconfirmedEventNotification サ ー ビ ス
Service=UnconfirmedEventNotification (同報)ProcessIdentifier=N1InitiatingDeviceIdentifier=( Device, Instance N3 )EventObjectIdentifier =( EventEnrollment, Instance N7 )TimeStamp=( SequenceNumber, N4 )NotificationClass=N5
Priority=N6
EventType=CHANGE_OF_STATE
NotifyType=EVENT
From State=OFFNORMAL
ToState=NORMAL
EventValues=[(NewState, SystemStatus=DOWNLOAD_REQUIRED),(StatusFlags, F,F,F,F) ]他 Icont ステータスの確定

システム時刻の確定

Who-Is サービスを同報して、他の Icont の I-Am サービスを促す。I-Am サー
ビスを受信し、自分に必要な他デバイスのステータスを確定する。受信できなかった場合は、前回値またはデフォルト値としてシーケンスを進める。
System_Status ＝ DOWNLOAD_IN_PROGRESS で 下 記 の よ う な Unconfirmed
EventNotification を同報し、時刻マスターデバイスからの TimeSynchronization
Service を受信して時刻を確定する。ある時間内に受信できなかったら現在時刻でシーケンスを進める。現在時刻が存在しない場合は受信できるまで待つ。
時刻マスターデバイスは受信した他デバイスの I-Am サービスのステータスを判断して System_Status＝DOWNLOAD_IN_PROGRESS で UnconfirmedEvent
Notification サ ー ビ ス を 受 信 し た ら 定 周 期 と は 別 の TimeSynchronization
Service を実行する。
UnconfirmedEventNotification、 TimeSynchronization ServiceService=UnconfirmedEventNotification (同報)*1ProcessIdentifier=N1
InitiatingDeviceIdentifier=( Device, Instance N3 )EventObjectIdentifier =( EventEnrollment, Instance N8 )TimeStamp=( SequenceNumber, N4 )NotificationClass=N5
Priority=N6
EventType=CHANGE_OF_STATE
NotifyType=EVENT
From State=OFFNORMAL
ToState=NORMAL
EventValues=[(NewState, SystemStatus=DOWNLOAD_IN_PROGRESS),(StatusFlags, F,F,F,F) ]外部モード情報の確定

動的の場合には Who-has、I-have サービスで自分に必要な外部モード情報を持つデバイスを特定し、またそのデバイスに対して静的の場合にはReadPropertyMultiple を用いて外部モード情報を入手して確定する。受信できなかった場合は、関連の制御は実行しないものとする。
Who-has、I-have、ReadPropertyMultiple Service(外 部 モ ー ド サ ー ビ ス)

休日情報の確定

Who-has、I-have サービスで自分に必要な外部モード情報を持つデバイスを特定し、その Icont に対して ReadPropertyMultiple を用いて休日情報を入手して確定する。受信できなかった場合は、前回値またはデフォルト値としてシーケンスを進める。
Who-has、I-have、ReadPropertyMultiple Service
5

IEIEJ-p 変更提案書

連動情報の確定

外部モード情報と同様に自分に必要な連動情報を受信して確定する。受信できなかった場合は、前回値またはデフォルト値としてシーケンスを進める。
外 部 モ ー ド サ ー ビ ス 、ReadProperty(Multiple) Service

参入シーケンス終了
I-Am サービス
UnconfirmedEvent
Notification サービス
同報

System_Status=OPERATIONAL で I-Am サービスを下記のような UnconfirmedEventNotification サービスを同報する。
I-Am サ ー ビ ス UnconfirmedEventNotification サ ー ビ ス
Service=UnconfirmedEventNotification (同報)ProcessIdentifier=N1InitiatingDeviceIdentifier=( Device, Instance N3 )EventObjectIdentifier =( EventEnrollment, Instance N9 )TimeStamp=( SequenceNumber, N4 )/ (DateTime, YYYY 年 MM 月 DD 日(W) HH:MM:SS.XX )NotificationClass=N5
Priority=N6
EventType=CHANGE_OF_STATE
NotifyType=EVENT
From State=OFFNORMAL
ToState=NORMAL
EventValues=[(NewState,SystemStatus=OPERATIONAL),(StatusFlags, F,F,F,F) ]本提案においては、DOWNLOAD_IN_PROGRESS のステータスは時刻合わせ時に 1 度しか同報しないため、従来のように参入デバイスの定周期(1 分)の I-Am(DOWNLOAD_IN_PROGRESS)サービスのため何度も TimeSynchronization サービスが同報されるという問題は生じない。

*1

６．APDUと符号化規則
6.2 公式定義
6.2.2 サービスの公式定義--****************Unconfirmed Remote Device Management Services ************************
I-Am-リクエスト ::= SEQUENCE{
iAmDeviceIdentifier
maxAPDULengthAccepted
segmentationSupported
vendorID
systemStatus
off-lineReason

BACnetObjectIdentifier
Unsigned
BACnetSegmentation
Unsigned
BACnetDeviceStatus
CharacterString}

以上6