JP4025331B2 - データ通信システム - Google Patents

データ通信システム Download PDF

Info

Publication number
JP4025331B2
JP4025331B2 JP2005048185A JP2005048185A JP4025331B2 JP 4025331 B2 JP4025331 B2 JP 4025331B2 JP 2005048185 A JP2005048185 A JP 2005048185A JP 2005048185 A JP2005048185 A JP 2005048185A JP 4025331 B2 JP4025331 B2 JP 4025331B2
Authority
JP
Japan
Prior art keywords
data
transmission
information
file
communication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005048185A
Other languages
English (en)
Other versions
JP2005176407A5 (ja
JP2005176407A (ja
Inventor
教子 榛葉
大 松井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2005048185A priority Critical patent/JP4025331B2/ja
Publication of JP2005176407A publication Critical patent/JP2005176407A/ja
Publication of JP2005176407A5 publication Critical patent/JP2005176407A5/ja
Application granted granted Critical
Publication of JP4025331B2 publication Critical patent/JP4025331B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Communication Control (AREA)

Description

本発明は、ネットワーク接続の確立した2つの通信機器間においてデータ転送を行う際の通信方法に関する。
2つの通信機器間でデータ通信を行う場合、それらの通信機器間でネットワーク接続が確立していても、データの送受信が可能になっており、かつ、所望のデータの種別、データ形式、データサイズ等が、双方の通信機器で扱えなければ、実際にデータ通信が行えないか、通信したデータが無効となる。従来は、機器メーカーが独自で定めた通信方法に基づいて通信を行っていた。通信方法の例として、データ送信側機器がデータを送信できるか否かを判断し、または要求されたデータを送信できるか否かを判断する方法、データ送信側機器が送信可能なデータの種別と、データ受信側機器で有効なデータの種別とを比較して通信対象機器とデータの種別とを判断する方法、データ送信側機器が送信可能なデータの種別やデータの数、データの識別情報を取得して通信する方法等がある。さらに、これらの手順の一部を省略したり、複数の方法を組み合わせて、一定の通信シーケンスを実行する方法が採られている。例えば、特許文献1を参照されたい。
特開平9−244942号公報
従って、種々のデータ種別、データ形式、データサイズからなる様々な組み合わせによるデータ通信を行おうとすると、無効なデータの通信や通信形態の通知や確認のために通信機器間で通信情報量が増加し、通信トラフィックの増大と、トラフィックの増大によるデータ転送速度の低下を引き起こしていた。また、特定の通信シーケンスでデータ転送を行うことにより、同じ通信機器間での複数回のデータ転送の際にも、毎回重複する情報をやり取りしなければならず、通信情報量の増加とデータ転送速度の低下が起こるという問題があった。
これでは、例えば大きなファイルを分割して送受信しなければならない通信環境において、分割の手順、分割データのサイズ等の設定が各アプリケーションのベンダーにより独自に記述されることとなり、アプリケーションが異なる機器間では通信がとれない。
本発明の目的は、少ない情報交換で効率よく通信形態や通信データの通知・確認を行い、データ通信の対象となる機器および有効データを判断して、データ通信を行う際の通信トラフィックの減少とデータ通信速度の向上を実現することである。
本発明のデータ通信方法は、ネットワークに接続している2つ以上の通信機器が相互にデータ通信を行う際に有用である。このデータ通信方法は、前記通信機器のメモリ上に設けたデータ通信に関する機能を保持するデータ通信機能テーブルと、データ通信制御部を備え、前記データ通信機能テーブルへの書込み、読み出しを、データ通信制御部が行うことにより前記通信機器の相互のデータ通信を行う。この方法によれば、同じデータの送信を行う必要がないのでネットワークトラフィックが減少するという効果を有する。データ通信時間が短くてすむため、各通信機器にとっては、データ通信速度の向上と同様の効果を得ることができる。
データ通信機能テーブルは、送信可能なデータの種類、または受信可能なデータの種類を表すコードを含んでいてもよい。送信不可能なデータの要求、受信不可能または無効なデータの送信がなくなることによりネットワークトラフィックを減少させることができる。
また、データ通信機能テーブルは、自発通信機能または要求応答通信の有無を表す項目を含んでいてもよい。自発通信データの取得を行える通信機器に対してのみデータ通信を行うか、要求応答通信の要求に応答可能な通信機器に対してのみ通信の要求を行うことによりネットワークトラフィックを減少させることができる。
データ通信機能テーブルはデータ通信に最も効率よいデータの分割サイズを表す項目を含んでいてもよい。任意の通信メディアで構成されたネットワークに対して、通信速度が最も効率のよいデータ通信を行うことが可能となる。
通信装置は、メモリ上にデータ通信に関する機能を保持するデータ通信機能テーブルを設け、前記データ通信機能テーブルへの書込み、読み出しを行うことにより前記通信機器の相互のデータ通信を行うデータ通信制御部を備えている。データ通信機能テーブルは、自発送信データ種別、自発受信データ種別、応答送信データ種別、要求受信データ種別の内の少なくともひとつを有する。またデータ通信機能テーブルは、送信データ情報、データ転送状態、種別毎データ数、データ分割数、転送データの内の少なくともひとつを保持している。一方、通信相手のデータ通信機能テーブルは、自発送信データ種別、自発受信データ種別、応答送信データ種別、要求受信データ種別、送信データ情報、データ転送状態、種別毎データ数、データ分割数、転送データの内の少なくともひとつの情報を有する。そして送信側と受信側とがその情報を互いに共通化してもよい。これによれば、同じデータの送信を行う必要がないのでネットワークトラフィックが減少するという効果を有する。データ通信時間が短くてすむため、各通信機器にとっては、データ通信速度の向上と同様の効果を得ることができる。
通信装置は、メモリ上にデータ通信に関する機能を保持するデータ通信機能テーブルを設け、前記データ通信機能テーブルへの書込み、読み出しを行うことにより前記通信機器の相互のデータ通信を行うデータ通信制御部を備えている。データ通信機能テーブルは、自発送信データ種別、自発受信データ種別、応答送信データ種別、要求受信データ種別の内の少なくともひとつを保持する。一方、通信相手のデータ通信機能テーブルは、自発送信データ種別、自発受信データ種別、応答送信データ種別、要求受信データ種別の内の少なくともひとつの情報を有する。そして送信側と受信側とがその情報を互いに共通化してもよい。これによれば、同じデータの送信を行う必要がないのでネットワークトラフィックが減少するという効果を有する。データ通信時間が短くてすむため、各通信機器にとっては、データ通信速度の向上と同様の効果を得ることができる。
本発明によれば、上述のデータ通信方法をコンピュータに機能させるためのプログラムを記録したデータ通信方法の記録媒体が提供される。このようなプログラムは、記録媒体に記録されてもよい。
また本発明によれば、上述のデータ通信方法はコンピュータに機能させるためのプログラムとしても提供される。
通信装置は、メモリ上にデータ通信に関する機能を保持するデータ通信機能テーブルを設け、前記データ通信機能テーブルへの書込み、読み出しを行うことにより前記通信機器の相互のデータ通信を行うデータ通信制御部を備えている。データ通信機能テーブルは、自発送信データ種別、自発受信データ種別、応答送信データ種別、要求受信データ種別の内の少なくともひとつを有する。またデータ通信機能テーブルは、送信データ情報、データ転送状態、種別毎データ数、データ分割数、転送データの内の少なくともひとつを保持する。通信相手のデータ通信機能テーブルは、自発送信データ種別、自発受信データ種別、応答送信データ種別、要求受信データ種別、送信データ情報、データ転送状態、種別毎データ数、データ分割数、転送データの内の少なくともひとつの情報を有する。そして送信側と受信側とがその情報を互いに共通化してもよい。
通信装置は、メモリ上にデータ通信に関する機能を保持するデータ通信機能テーブルを設け、前記データ通信機能テーブルへの書込み、読み出しを行うことにより前記通信機器の相互のデータ通信を行うデータ通信制御部を備えている。データ通信機能テーブルは、自発送信データ種別、自発受信データ種別、応答送信データ種別、要求受信データ種別の内の少なくともひとつを保持する。通信相手のデータ通信機能テーブルは、自発送信データ種別、自発受信データ種別、応答送信データ種別、要求受信データ種別の内の少なくともひとつの情報を有する。そして送信側と受信側とがその情報を互いに共通化してもよい。
以上説明したように本発明のデータ通信方法によれば、通信に関する機能テーブルの共通化を行うことで、自発通信または要求応答通信によるデータ通信を行うことが可能な通信機器の判断、送信データ種別の判定、データ数、各データ識別情報の取得、最適サイズにデータを分割してデータ通信を行うことが可能となり、データ通信において、通信トラフィックの削減と通信の高速化を実現することが可能となる。
以下、本発明の実施の形態について図面を参照しながら説明する。まず各実施の形態を説明するに先立って、本発明の概念を説明する。
図50は、本発明による通信方法に基づいてデータを送受信する通信システム100の構成を示す図である。通信システム100は、2つの通信機器1、2と、これらを接続するネットワーク3とから構成されている。
本明細書で想定する通信システム100の例は、通信可能な状態で家電機器を相互に接続した家庭内LANである。通信機器1、2は、基本的には同様の通信機能および構成を有する家電機器、例えば空調機器(エアコン)、冷蔵庫、電子レンジ、室外カメラである。ネットワーク3は、家電機器に電力を供給する電灯線である。ネットワーク3は電灯線であることから、例えば最大9600bpsという比較的低速な通信速度の通信媒体であるとする。ネットワーク3として、家庭内LANに代えて、より低速な通信速度(例えば最大2400bps)の無線で通信を行う無線ネットワークを採用することもできる。いずれの場合でも、新規な配線の敷設は不要である。なおネットワーク3は一般の通信ネットワークであってもよい。
以下の説明では、通信機器1が通信機器2に対してデータファイルを送信し、通信機器2がそのデータファイルを処理するとして説明する。例えば通信機器1を来訪者用の室外カメラ、通信機器2をモニタを有する制御機器(コントローラ)とし、室外カメラが撮影した画像データファイルを、ネットワーク3を介してコントローラのモニタに表示するとする。なおデータファイルには、ファイルとして名称等が付加されていない単なるデータも含むとする。
通信機器1の構成は以下のとおりである。すなわち通信機器1は、アプリケーションソフトウェア101と、サービスミドルウェア102と、サービスAPI(Application Program Interface)103と、基本API104−1、104−2と、通信処理部(通信ミドルウェア)105と、サービスオブジェクト107と、下位通信ソフトウェア108と、共通下位通信インターフェース109とを備えている。「ソフトウェア」と記載されていることから明らかなように、図50に示す通信機器1の構成は、通信機器1の通信機能に関するレイヤの概念モデルである。物理的な構成に基づくブロック図は、例えば後述の図1等に記載されているとおりである。
本発明の主要な特徴の1つは、通信システム100の通信機器1および2のいずれにも、サービスミドルウェア102およびサービスオブジェクト107を設け、通信の際の処理手順を統一したことにある。データファイル送信側の通信機器1とデータファイル受信側の通信機器2とにおいて必要な機能は異なるため、サービスミドルウェア102およびサービスオブジェクト107の具体的な内容は異なる。しかし以下に説明するように、データファイルの授受に必要な情報を予め規定して所定の手順で通信することにより、効率のよい通信形態や通信データの通知・確認が可能となり、それにより容易にデータ通信の対象となる機器および有効データを判断できる。その結果、比較的低速な伝送速度のネットワーク3において十分な実用性を確保している。
アプリケーションソフトウェア101は、通信機器1の主要な処理を実行するソフトウェアである。例えば、通信機器1においては、室外カメラによる撮影、符号化等を行うソフトウェアである。通信機器2においては、受信した画像を復号等して表示処理を行うソフトウェアが該当する。アプリケーションソフトウェア101は単独で存在してもよいし、特定の処理を行う複数のソフトウェアの集合であってもよい。
サービスミドルウェア102は、アプリケーションソフトウェア101の共通的、基本的な処理を規定するプログラムである。より具体的には、サービスミドルウェア102は、比較的大きなデータファイルを送受信するための処理(データファイルの転送シーケンスの管理、分割されて受信したデータファイルの組み立て(復元)処理)を行う。サービスミドルウェア102は、特定のアプリケーションソフトウェアの一部に位置付けられる。したがって、サービスミドルウェア102は、内部処理において、通信ミドルウェア105の機能を利用する際には、基本API104−2を利用する。そのため通信ミドルウェア105からすれば、サービスミドルウェア102はアプリケーションソフトウェア101の1つとして扱われる。サービスミドルウェア102によって共通処理機能を定義することにより、アプリケーションソフトウェアの開発負担を軽減することができ、またソフトウェアベンダーが、より本質的な機能、性能でのシステム、機器開発に集中できるようになり、ユーザにとって有益なシステム関連製品の提供が可能になる。サービスミドルウェア102については、後に詳述する。
サービスAPI103は、サービスミドルウェア102をアプリケーションソフトウェア101からアクセスするためのAPIである。サービスAPI103は、サービスミドルウェア102により提供される。サービスAPI103を利用することにより、アプリケーションソフトウェア101はサービスミドルウェア102に要求を渡すことができ、また、アプリケーションソフトウェア101はサービスミドルウェア102から処理の結果を受け取ることができる。
一般に、APIとは、アプリケーションからOSの用意した各機能を呼び出すためのインターフェースをいう。一般にAPIは広く公開されているため、APIを利用すればアプリケーションを効率的に開発できる。
次に基本API104−1および104−2は、アプリケーションソフトウェアが通信ミドルウェア105とデータファイルを授受する際に利用するインターフェースである。上述のように、通信ミドルウェア105からみればサービスミドルウェア102はアプリケーションソフトウェアの一部であるから、基本APIは共通化されている。しかし理解の容易のため、便宜的に、アプリケーションソフトウェア101に対しては基本API104−1が利用され、サービスミドルウェア102に対しては基本API104−2が利用されることを明示している。
通信ミドルウェア105は、機器オブジェクト106およびサービスオブジェクト107を利用して、データファイルの送受信に関する通信処理を行う。具体的には、ネットワーク3を介して受信した電文の解析等のフレーム処理、サービスオブジェクト107のプロパティに従った処理、サービスオブジェクト107への書き込み、読み出し処理である。データファイルは、アプリケーションソフトウェア101および/またはサービスミドルウェア102から受け取ったファイル、および、ネットワーク3から受信したファイルのいずれをも含む。
通信ミドルウェア105に備えられた機器オブジェクト106を説明する。機器オブジェクト106は、機器に関する種々の情報を規定するオブジェクトである。通信機器1の機器オブジェクト106は、ネットワーク内のクラス、インスタンス、プロパティ、プロパティ値等を含む。これらにより規定される情報として、例えばカメラを特定するID番号、外部カメラの動作状態を示すフラグ、シャッター速度、シャッター絞り等のシャッター設定、取得画像の格納位置等があげられる。クラスとインスタンスにより、機器オブジェクトのメモリ領域を指定し、検索できる。
サービスオブジェクト107は、ネットワークに公開されたサービスミドルウェア102の機能や設定情報であり、より詳しくは、機能、サービス、プロパティを規定したクラス仕様のオブジェクトモデルである。サービスオブジェクト107を定義した目的は、サービスミドルウェア102をネットワーク3からアクセスすることにより効率的にシステムを構築できるようにするためである。サービスオブジェクト107は、送信/受信可能なデータファイルの種類を表すコード、自発通信機能または要求応答通信機能を表す項目等を含む。サービスオブジェクト107の具体的な構成の例は、図2〜8、図17〜19等に記載の「機能テーブル」に示すとおりである。これらの詳細は各実施の形態において説明する。
下位通信ソフトウェア108は、ネットワーク3へのアクセスを可能にするための処理を行う。具体的には下位通信ソフトウェア108は、異なる通信媒体のプロトコルの差異を吸収して、共通定義の共通下位通信インターフェース109とのデータの受け渡しを行う。共通下位通信インターフェース109は、そのデータファイルを媒介する。逆に通信ミドルウェア105からネットワーク3に送信すべきデータファイルを受け取ると、下位通信ソフトウェア108は、共通下位通信インターフェース109を介してそのデータファイルを受け取り、そのデータファイルを所定のプロトコルでネットワーク3へ送出する。
以上、通信機器1の通信機能に関する構成を説明した。なお通信機器2の基本的な構成は、実質的に通信機器1と同じである。ただし通信機器2はコントローラとして機能するため、通信機器1以外の機器との通信を行う必要がある。そのため通信機器2のサービスオブジェクト117については、通信の対象となる各機器に対して1つづつ設けてもよい。
ここで本発明の主要な特徴であるサービスミドルウェア102をより詳細に説明する。サービスミドルウェア102は、比較的小さな伝送容量のネットワーク3でデータファイルを送受信する場合のファイル転送をサポートする。このファイル転送処理をファイル転送サービスと称する。
サービスミドルウェア102が管理するデータファイルの転送シーケンスは、大きく2つに分類できる。第1は、通信機器1が自発的にデータファイルを送信する場合の一連の通信シーケンスである。この形態の通信を、「自発通信」または「PUSH型データ通信」と称する。具体的には、カメラ(通信機器1)からコントローラ(通信機器2)に自発的に撮影データファイルを送信する場合の通信シーケンスである。第2は、通信機器2が通信機器1に対してデータファイルの転送を要求し、その要求に応答して通信機器1がそのデータファイルを送信する際の一連のシーケンスである。この形態の通信を、「要求応答通信」または「PULL型データ通信」と称する。具体的には、ユーザがカメラ(通信機器1)の画像を見たい場合等に、コントローラ(通信機器2)がカメラ(通信機器1)に撮影データファイルを要求して、その要求を受けたカメラ(通信機器1)が撮影を行い、撮影データファイルをコントローラに送信する場合の通信シーケンスである。いずれの通信シーケンスも、後の実施の形態で詳しく説明する。
サービスミドルウェア102により行われるデータファイルの分割は、ネットワーク3の伝送容量や、送信先の通信機器2が通信で一度に扱うことのできるデータサイズに基づいて決定される。カメラ(通信機器1)のサービスミドルウェア102は、電源投入時等において、下位通信ソフトウェア108からの情報に基づいて現在のネットワーク3の伝送容量を認識してもよい。また、送信先の通信機器2が特定されたときに、通信機器2のサービスオブジェクト117等を参照して、通信機器2が通信で一度に扱うことのできるデータサイズを取得する。そして送信したいデータファイルがその大きさよりも大きい場合には、伝送容量以下のサイズになるようにデータファイルを分割して送信する。
いま、ネットワーク3において一度に送受信できるデータ長を、最大131バイトであるとする。例えばカメラが撮影した画像データのデータサイズが5kバイト(約5000バイト)である場合には、カメラのサービスミドルウェア102は、コントローラ(通信機器2)が通信で一度に扱うことのできるデータサイズを考慮して、131バイトごとにその画像データを分割してコントローラ(通信機器2)に送信する。分割に関連して、サービスミドルウェア102は、送信するデータに関する情報(データ分割情報)をサービスオブジェクト107に設定する。データ分割情報は、データ送信側のカメラが通信で一度に扱うことのできるデータサイズである。さらにサービスオブジェクト107には、分割された個々の画像データを特定するID、順番、個数等を含んでもよい。
受信側のコントローラ(通信機器2)は、分割された個々の画像データを受信する。そして通信機器2のサービスミドルウェア112は、カメラ(通信機器1)のサービスオブジェクト107を参照して、受信したデータが、すべての分割されたデータであるかを確認する。揃っていなかった場合には、カメラ(通信機器1)に不足しているデータの再送信を要求する。すべての分割されたデータが揃った場合には、サービスミドルウェア112は、カメラ(通信機器1)のサービスオブジェクト107に設定されたデータ分割情報に基づいて分割されたデータを組み立て、もとの画像データファイルを得る。サービスミドルウェア112は、アプリケーションソフトウェア111からの要求に応じて、サービスAPI113を介して画像データファイルを提供する。
次に上述のデータ転送サービスに関連して、サービスオブジェクト107、117をより詳しく説明する。データファイルの転送に関連して、送信側の通信機器1にはファイル送信に関するサービスオブジェクト107(ファイル送信サービスオブジェクト107)が搭載されている。また受信側の通信機器2にはファイル受信に関するサービスオブジェクト117(ファイル受信サービスオブジェクト117)が搭載されている。いずれのファイル送信/受信サービスオブジェクトも、ファイル転送方式(PUSH型、PULL型)に応じて、必須のプロパティを実装している。「プロパティ」とは、本ファイル転送サービスの稼動状態、送信状態、送信内容等のサービスそのものの属性や機能を個々に表現したものである。
ファイル送信サービスオブジェクト107は、送信設定、送信状態、送信内容等を公開するオブジェクトである。具体的な内容は、図21、図22、図35、図36に記載されている。一方ファイル受信サービスオブジェクト117は、データファイルを受信する窓口として公開されるオブジェクトである。具体的な内容は、図20、図34に記載されている。なおPUSH送信/受信用取扱オブジェクト情報は、それぞれPUSH送信/受信が可能なデータの種別等を表し、PULL送信/受信用取扱オブジェクト情報は、それぞれPULL送信/受信が可能なデータの種別等を表す。
(実施の形態1)
図1は、本発明による通信方法に基づいてデータを送受信する通信システム100の構成を示す図である。図50と同様、通信システム100は、ネットワーク3を介して接続された通信機器1と通信機器2とから構成されている。
通信機器1は、中央処理部(CPU)(10)、メモリ11、データ通信制御部12、メモリ管理部13、ネットワーク制御部14を有する。CPU10は、通信機器1の動作を総合的に制御する。CPU10の制御により、他の構成要素(メモリ11、データ通信制御部12、メモリ管理部13、ネットワーク制御部14)が適切なタイミングで動作し、適切な処理を行う。メモリ11は、データ通信機能テーブル15を有する。データ通信機能テーブル15は、データ通信の機能を規定する情報や通信の処理手順に関する情報を保持している。メモリ11は、通信機器1において実行されるソフトウェアを格納する。すなわち、アプリケーションソフトウェア101およびサービスミドルウェア102である。さらにメモリは、通信ミドルウェア105を動作させるためのミドルウェア(図示せず)も格納している。データ通信制御部12は、テーブル共通化制御部16を有し、後述するテーブル共通化処理に関する制御を行う。メモリ管理部13は、テーブル値読出し部17、テーブル値書込み部18、テーブル共通化処理部19を有し、データ通信機能テーブル15の内容について、他の通信機器2との共通化処理を行う。ネットワーク制御部14は、他の通信機器との間で通信処理を行う。
一方、通信機器2も通信機器1と同様の構成でよい。通信機器2は、CPU20、メモリ21、データ通信制御部22、メモリ管理部23、ネットワーク制御部24を有する。メモリ21には、データ通信機能テーブル25、アプリケーションソフトウェア111およびサービスミドルウェア112が格納されている。通信機器2の各構成要素には、通信機器1の構成要素と異なる参照符号を付しているが、同名の構成要素は同じ構成および機能を有する。したがって通信機器2の各構成要素については、個別の説明は省略する。
次に再び図50を参照して、図50に示す通信機器1のモデル構造が、図1のいずれの構成要素に相当するかを説明する。
まずアプリケーションソフトウェア101およびサービスミドルウェア102は、図1に示すようにメモリ11(図1)に格納されている。サービスミドルウェア102は、メモリ11(図1)から読み出されてCPU10(図1)により実行される。CPU10は、サービスミドルウェア102の命令に基づいて、メモリ11(図1)に格納された機器オブジェクト106およびサービスオブジェクト107に適宜アクセスして処理を行う。アプリケーションソフトウェア101もまた、メモリ11(図1)から読み出されてCPU10(図1)により実行される。その処理に際し、CPU10は、アプリケーションソフトウェア101の命令に基づいて、サービスAPI103を利用してサービスミドルウェア102の処理結果を利用し、またはサービスミドルウェア102に要求を送る。
機器オブジェクト106およびサービスオブジェクト107は、データ通信機能テーブル15(図1)に相当する。いずれもテーブル形式で格納されている。
通信ミドルウェア105は、メモリ11(図1)に格納されている。CPU10は、通信機器1の通信を管理するミドルウェア(図示せず)に基づいて、適宜メモリ11のデータ通信機能テーブル15(図1)にアクセスしながらデータ通信制御部12(図1)およびメモリ管理部13(図1)を動作させる。
下位通信ソフトウェア108および共通下位通信インターフェース109は、ネットワーク制御部14(図1)に相当する。ネットワーク制御部14(図1)は、シリアルインターフェース(例えばRS−232C)を備えたインターフェースカード、ボード等の通信モジュールとして実現される。下位通信ソフトウェア108は、そのような通信モジュール内に設けられたメモリ(例えばEEPROM)に格納され、同様に設けられた別個のCPUにより実行され、所定のプロトコルに従った通信を実現する。
通信機器2についても、図1と図50との対応関係は原則として通信機器1と同じである。したがって、通信機器2の機器オブジェクトおよびサービスオブジェクトは、データ通信機能テーブル25(図1)に対応する。ただし、通信機器1のデータ通信機能テーブル15と、通信機器2のデータ通信機能テーブル25とは、備えているべき機器オブジェクトおよびサービスオブジェクトは異なる。通信機器1がデータ送信側のノードで、通信機器2がデータ送信側のノードの場合には、通信機器1のサービスオブジェクト107(図50)はファイル送信サービスオブジェクトを備え、通信機器2のサービスオブジェクト117(図50)はファイル受信サービスオブジェクトを備えている必要がある。
以下、本実施の形態のデータ通信の動作について説明する。まず、端末機器からコントローラへ、転送データを自発的に送信する場合について、説明する。ネットワーク接続している通信機器1は、自発送信機能を持つエアコンであり、通信機器2は、自発送信に対する受信機能、即ち自発受信機能を持つエアコンなどを集中制御するコントローラとする。自発送信と自発受信による通信を自発通信と呼ぶことにする。
最初に、エアコン1のデータ通信制御部12からの指令によって、ネットワーク接続確立時またはデータ通信を行う時点で、相手通信機器がデータ通信機能テーブルを有する機器かどうかの確認を行っておくものとする。この確認には、そのための通信電文を予め決めておき、相手の通信機器に問い合せ、返信を得ることにより、行える。さらに、データ通信機能テーブルを有する機器かどうかの確認を行うと同時に、データ通信機能テーブルに格納されている各情報の存在を問い合わせ、返信を得ることにより、自発受信機能をもつ機器かどうかの確認を行ってもよい。なお、この確認は、コントローラ2が、接続されている各機器との間で、データ通信の前に、或いは、定期的に行ってもよい。また、コントローラ2が相手の通信機器に対してデータ通信機能テーブルに格納されている情報の存在を問い合わせを行うことにより、自発送信機能をもつ機器かどうかの確認を行ってもよい。
図2は、エアコン1のデータ通信機能テーブル15とコントローラ2のデータ通信機能テーブルのデータ通信前状態を示す図である。図3は、送信データ情報の一例を示す図である。図4は、エアコン1とコントローラ2のデータ通信機能テーブル15、25のデータ通信終了直前の状態を示す図である。
図2に示すエアコン1の初期状態のデータ通信機能テーブル201には、以下の情報が、格納されている。自発送信データ種別211は、エアコン1が、テーブル形式のデータを意味する“CSV”形式と、テキスト形式のデータを意味する“TXT”形式の2種類を、自発的に送信することができる状態を意味する値になっている。自発受信側データ種別214は、自発送信を受信する相手側が扱えるデータ種別を意味するが、相手の状態が分からないので、未設定になっている。送信データ情報212は、エアコン1が、データを自発送信する際のデータの形式、例えば、データ種別、データ名称、データの作成日付、データのサイズで、図3に示したものである。初期状態では、値は未設定である。データ転送状態213は、送信中かどうかを示すもので、当初は“未送信”である。データ分割情報215は、自発受信先が扱えるデータ分割サイズであって、当初は分からないので未設定である。転送データ216は、転送するデータそのものであり、当初は未設定である。
コントローラ2の初期状態のデータ通信機能テーブル202には、以下の情報が、格納されている。自発受信側データ種別224は、自発送信を受信するコントローラ2が扱えるデータ種別を意味し、“TXT”を扱うことが出来る状態であることを示している。送信データ情報222は、自発送信元のエアコン1が自発送信する際のデータの形式、例えば、データ種別、データ名称、データの作成日付、データのサイズで、図3に示すフォーマットの情報である。初期状態では、どんな形式の電文が来るのか分からないので、未設定である。データ転送状態223は、送信中かどうかを示すもので、当初は“未送信”である。データ分割情報225は、自発受信先、即ちコントローラ2自身が扱えるデータ分割サイズであって、1024になっている。転送データ226は、受信するデータであり、送信前であるので、当初は未設定である。
次に、エアコン1は、コントローラ2が自発送信相手先となりうる通信機器であるかどうかの確認を以下のようにして行う。エアコン1のテーブル共通化制御部16はテーブル共通化処理部19に対して、自発受信側データ種別214のデータを共通化する指令を送る。指令を受けたテーブル共通化処理部19はネットワーク制御部14に指示して、自発受信側データ種別の共通化を行うための電文を、予めデータ通信機能テーブルを有する構成となっていることを確認済みの通信機器、この例では、コントローラ2に対して送らせる。
電文を受信したコントローラ2は、ネットワーク制御部24からテーブル共通化処理部29に受信情報を送り、テーブル共通化処理部29はテーブル値読出し部27によりデータ通信機能テーブル25、即ち、図2のデータ通信機能テーブル202内の自発受信側データ種別224の値“TXT”の読出しを行い、テーブル共通化処理部手段29に返す。テーブル共通化処理部29はネットワーク制御部24に指示して、この読出した値を、電文を送ってきた機器に対して送出、返信させる。この値を受けたエアコン1は、ネットワーク制御部14からテーブル共通化処理部19にこの情報を送り、テーブル共通化処理部19はテーブル値書込み部18に指示して、取得した値をデータ通信機能テーブル15に書き込ませる。このようにして、エアコン1のデータ通信機能テーブル15の自発受信側データ種別に“TXT”の値が、図4の414に示すように、書き込まれ、データ通信機能テーブルのひとつの項目の共通化が行われる。
次に、エアコン1のテーブル共通化処理部19は、自発受信側データ種別214が自発受信相手先の自発受信側データ種別224と共通化されたことをデータ通信制御部12に通知し、データ通信制御部12は書き込まれた自発受信側データ種別214の値“TXT”と自発送信データ種別211の値“CSV”、“TXT”とを比較し、一致するデータ種別が存在するので、送信可能と判断する。一致する種別のデータがない場合には自発送信をできない相手先と判断される。また、コントローラ2のデータ通信機能テーブル25の自発受信側データ種別224に“全て”を表す値が入っていた場合は、エアコン1側の自発送信データ種別211に含まれる全てのデータが送信できると判断される。
次に、エアコン1のデータ通信制御部12はデータの自発送信を行うために、テーブル値書込み部17に指令を出すことによってデータ通信機能テーブル15のデータ転送状態213の値を、図4の413のように“転送中”状態に設定した後、同じくテーブル値書込み部17に指令を出すことによって、データ通信機能テーブル15の送信データ情報212として、最新の情報である、図3に示したデータ種別301、データ名称302、日付情報303、データバイト数304を設定する。この送信データ情報212は、今回転送しようとしている転送データの形式を自発受信先に通知するためものである。また同時に、転送データの本体である転送データ216として最新のデータを設定する。この状態を、図4の412、416に示す。
次に、データ通信制御部12はテーブル共通化制御部16を用いて、送信データ情報の共通化を行う。即ち、テーブル共通化処理部19は、設定された送信データ情報412を、テーブル値読出し部17に読み出させ、ネットワーク制御部14に渡して、コントローラ2に送信させる。送信データ情報412を受信したコントローラ2側のテーブル共通化処理部29は、テーブル値書込み部28を介して、データ通信機能テーブル25内の送信データ情報422に対して送信データ情報412を書き込ませる。
そして、送信データ情報の共通化が行われたことをデータ通信制御部22に通知し、データ通信制御部22は送信データ情報により通知されたデータ種別とデータサイズなどから受信可能なデータであるかどうかを判断し、受信可能である場合には、テーブル値書込み部28により、データ通信機能テーブル25のデータ転送状態423を“転送中”に設定する。その後にデータ通信制御部22のテーブル共通化制御部26は、テーブル共通化処理部29に指示して、データ通信機能テーブル25のデータ分割情報425の値“1024”を読み出させ、ネットワーク制御部24よりエアコン1に通知させる。
エアコン1は、受信したデータ分割情報425の値“1024”をエアコン1のデータ通信機能テーブル15にデータ分割情報415として格納し、コントローラ2と共通化する。これで、転送データの転送準備が出来たことになる。そこで、データ通信制御部12がテーブル共通化制御部16により、データ通信機能テーブル15の転送データ416の値の共通化を指令する。即ち、転送データ416のデータ分割を1024バイト単位として作成し、エアコン1からコントローラ2へのデータの自発送信を実行する。これによりコントローラ2側のデータ通信機能テーブル25の転送データ226に転送データが426として書き込まれ、エアコンからコントローラにデータが転送される。
最後に、エアコン1とコントローラ2のそれぞれのデータ通信制御部12、22が転送データの共通化が完了したと判断した時点で、データ転送状態413、423は、待機中、未送信、又は未設定に書き換えられ213、223の状態となる。データ転送状態以外の項目については共通化した値が保持される。従って、これ以降は、同じ情報を共通化するためのデータ通信は不要となる。
なお、自発受信側データ種別224を伝送する際に、データ分割情報225を、同時に、或いは、続けて、伝送してもよい。
(実施の形態2)
次に、コントローラから端末機器に、転送データを要求する要求応答通信の例について説明する。その一例として、照明機器と、照明機器などを集中制御するコントローラとの間のデータ通信について説明する。構成は図1と同様の図で表すことができる。この実施の形態では、図1において、通信機器1は照明機器1、通信機器2はコントローラ2とする。コントローラ2が照明機器1に対してデータ転送を要求し、照明機器1が応答送信し、コントローラ2が、要求受信する場合であり、このようなデータ通信を要求応答通信と呼ぶことにする。
図5は照明機器1とコントローラ2のデータ通信機能テーブル15、25のデータ通信前状態を示す図であり、図6は照明機器1とコントローラ2のデータ通信機能テーブル15、25のデータ通信終了直前の状態を示す図である。
照明機器1のデータ通信機能テーブル15には、図5の501に示すように、初期状態として、以下の情報が、格納されている。応答送信データ種別511は、照明機器1が、テーブル形式のデータを意味する“CSV”形式のデータを送信することが出来る状態を意味する値である。送信データ情報512は、照明機器1が、データを応答送信する際のデータの形式、例えば、データ種別、データ名称、データの作成日付、データのサイズで、図3に示したものであるが、初期状態では、未設定である。データ転送状態513は、送信中かどうかを示すもので、当初は“未送信”である。データ分割情報515は、要求受信先が扱えるデータ分割サイズであって、当初は分からないので未設定である。転送データ516は、転送するデータそのものであり、当初は未設定である。種別毎データ数517は、“CSV”、“TXT”などのデータ形式毎に、何個のファイルなどの単位でのデータを送信するかを示す情報であり、この実施の形態では、当初は、511に示す“CSV”であり、1個に設定されている。
コントローラ2のデータ通信機能テーブル25には、図5の502に示すように、初期状態として、以下の情報が、格納されている。応答送信データ種別521は、応答送信元が、応答送信するデータの種別を示すもので、当初は分からないので未設定である。送信データ情報522は、応答送信元の照明機器1が、データを応答送信する際のデータの形式、例えば、データ種別、データ名称、データの作成日付、データのサイズで、図3に示したものであるが、初期状態では、未だ分からないので未設定である。データ転送状態523は、送信中かどうかを示すもので、当初は“未送信”である。データ分割情報525は、要求受信先であるコントローラ2自身が扱えるデータ分割サイズであって、1024に設定されている。転送データ526は、要求受信するデータそのものであり、当初は未設定である。種別毎データ数527は、“CSV”、“TXT”などのデータ形式毎に、何個のファイルなどの単位でのデータを送信してくるかを示す情報であり、当初は未設定である。要求受信側データ種別524は、コントローラ2が扱えるデータ種別であり、“CSV”、“TXT”の2種類を要求受信可能になっている。
以下、本実施の形態のデータ通信の動作について説明する。最初に、コントローラ2のデータ通信制御部12からの指令によって、ネットワーク接続確立時またはデータ通信を行う時点で、相手通信機器がデータ通信機能テーブルを有する機器かどうかの確認を行っておくものとする。この確認には、そのための通信電文を予め決めておき、相手の通信機器に問い合せ、返信を得ることにより、行える。さらに、データ通信機能テーブルを有する機器かどうかの確認を行うと同時に、データ通信機能テーブルに格納されている各情報の存在を問い合わせ、返信を得ることにより、応答送信機能をもつ機器かどうかの確認を行ってもよい。なお、この確認は、照明機器1が、接続されている各機器との間で、データ通信の前に、或いは、定期的に行ってもよい。また、照明機器1が相手の通信機器に対してデータ通信機能テーブルに格納されている情報の存在を問い合わせを行うことにより、要求受信機能をもつ機器かどうかの確認を行ってもよい。
次に、送信要求機能を持つコントローラ2は、データ通信制御部22からの指令によって、ネットワーク接続確立時またはデータ通信を行う時点で、送信要求先となり得る通信機器であるかどうかの確認を以下のように行う。コントローラ2はデータ通信制御部22のテーブル共通化制御部26によって、照明機器1のデータ通信機能テーブル15内の、図5に示したテーブル501の応答送信データ種別511の値である“CSV”をコントローラ2の機能テーブル25の応答送信データ種別521に取り込む。このために、テーブル共通化処理部29は、ネットワーク制御部24に、応答送信種別データを要求する電文を作成させ、照明機器1に送信する。
照明機器1は、受信した電文をネットワーク制御部14において解析して、要求内容をテーブル共通化処理部19に渡し、テーブル共通化処理部19は、テーブル値読出し部17を介して、応答送信データ種別511の値“CSV”を取り出し、返信電文に格納して、ネットワーク制御部14より、コントローラ2に返信、即ち、要求送信する。コントローラ2は、要求受信した電文から応答送信データ種別511の値“CSV”を取り出し、図6の応答送信データ種別621として、データ通信機能テーブル25に書き込む。次にコントローラ2のデータ通信制御部26は書き込まれた応答送信データ種別“CSV”と要求受信側データ種別524の値である“CSV”と“TXT”を比較する。一致する種別のデータが存在するので、応答送信を要求受信することが可能であると判断する。この時、一致する種別のデータがない場合は要求受信できないと判断される。
次に、コントローラ2のデータ通信制御部26は要求可能なデータの情報を取得するために種別毎データ数517の共通化を要求することにより、コントローラ2の種別毎データ数527に、種別毎データ数517の値1が、種別毎データ数527として設定される。この共通化も、上記応答送信データ種別511、521の611、621への共通化と類似の手順で電文をやり取りすることにより行える。この場合データ数が1つのため、要求できるデータ数は、1個となる。
次に、コントローラ2のデータ通信制御部26はデータの要求を行うために、データ通信機能テーブル25のデータ転送状態523の値を、図6の623に示すように、“転送中”に設定した後、テーブル共通化制御部26を用いて、照明機器1のデータ転送状態613の値を“転送中”に設定する。この共通化も、上記と類似の手順により行える。これにより、照明機器1のデータ通信機能テーブル15には、転送データ516と送信データ情報512として最新のデータ情報616、612を設定するために必要な情報が揃ったことになる。
以降は、実施の形態1と同じ制御手順により照明機器1からコントローラ2にデータが転送される。
最後に、照明機器1とコントローラ2のそれぞれのデータ通信制御部12、22が転送データ616、626の共通化が完了したと判断した時点で、データ転送状態613、623は“完了”に設定され、データ転送状態613、626以外の項目については共通化した値が保持される。従って、同じ情報を共通化するためのデータ通信は、以降不要となる。
(実施の形態3)
次に、端末機器からコントローラに対して、転送データの送信を要求する要求応答通信の場合について説明する。図1において、通信機器1は、端末機器群を集中制御するコントローラ1、通信機器2は、電子レンジ2とする。
図7はコントローラ1と電子レンジ2のデータ通信機能テーブル15、25のデータ通信前状態を示す図であり、図8はコントローラ1と電子レンジ2のデータ通信機能テーブル15、25のデータ通信終了直前状態を示す図である。
コントローラ1のデータ通信機能テーブル15には、図7の701に示すように、初期状態として、以下の情報が、格納されている。応答送信データ種別711は、コントローラ1が、ハイパーテキストマークアップ言語形式のデータを意味する“HTM”とテキスト形式のデータを意味する“TXT”形式のデータを送信することが出来る状態にあることを意味する。送信データ情報712は、コントローラ1が、データを応答送信する際のデータの形式、例えば、データ種別、データ名称、データの作成日付、データのサイズで、図3に示したものであり、応答送信可能なデータ種別、“HTM”、“TXT”毎に、図3の形式の送信データ情報を格納している。データ転送状態713は、送信中かどうかを示すもので、当初は“未送信”である。データ分割情報715は、要求受信先が扱えるデータ分割サイズであって、当初は分からないので未設定である。転送データ716は、転送するデータそのものであり、当初は未設定である。種別毎データ数717は、“HTM”、“TXT”などのデータ形式毎に、ファイルなどの単位で何個のデータを送信するかを示す情報であり、この実施の形態では、当初は、“HTM”形式で10個、“TXT”形式で5個に設定されている。
電子レンジ2のデータ通信機能テーブル25には、図7の702に示すように、初期状態として、以下の情報が、格納されている。応答送信データ種別721は、応答送信元が、応答送信できるデータの種別を示すもので、当初は分からないので未設定である。送信データ情報722は、コントローラ1が、データを応答送信する際のデータの形式、例えば、データ種別、データ名称、データの作成日付、データのサイズで、図3に示したものであるが、初期状態では、未だ分からないで未設定である。データ転送状態723は、送信中かどうかを示すもので、当初は“未送信”である。データ分割情報725は、要求受信先である電子レンジ2が扱えるデータ分割サイズであって、1024に設定されている。転送データ726は、要求受信するデータを格納する場所であり、当初は、空、即ち未設定である。種別毎データ数727は、“HTM”、“TXT”などのデータ形式毎に、何個のファイルなどの単位でのデータを送信してくるかを示す情報であり、当初は未設定である。要求受信側データ種別724は、電子レンジ2が扱えるデータ種別であり、“HTM”1種類を要求受信可能になっている。
以下、本実施の形態のデータ通信の動作について説明する。まず、送信要求機能を持つ電子レンジ2は、ネットワーク接続確立時またはデータ通信を行う時点で、送信要求先となり得る通信機器であるかどうかの確認を以下のように行う。つまり、電子レンジ2はテーブル共通化処理部29を用いて、コントローラ1のデータ通信機能テーブル15内から応答送信データ種別711の値“HTM”、“TXT”を取得して821に格納し、要求受信側データ種別724の値“HTM”と比較して、コントローラ1からデータ種別が“HTM”の場合のデータ受信が可能であると判断する。
次に、電子レンジ2はテーブル共通化処理部29を用いて、コントローラ1のデータ通信機能テーブル15から、種別毎データ数717の値10と5を取得し827に格納する。電子レンジ2はこの対象となるデータの中から取得するデータの選択を行うために、テーブル共通化処理部29を用いてコントローラ1のデータ通信機能テーブルの送信データ情報712とのテーブル共通化を行う。この時コントローラ1は、712に示すように、送信対象となる全データの送信データ情報を保持しているため、電子レンジ2は対象データ全ての送信データ情報712を取得して、送信データ情報822としてデータ通信機能テーブル25に格納することができる。複数種類ある送信データ情報の中から要求するデータの選択をすることが可能となる。しかし、この実施の形態では、受信可能なものは、“HTM”1種類であるので、“HTM”種別を選択することができるのみである。
次に、電子レンジ2のデータ通信制御部22は送信データ情報822で取得したデータ種別のうち“HTM”データの内の3番目のデータ要求を行うために、データ通信機能テーブル25のデータ転送状態723を、図8の823に示すように“3番転送中”に設定した後、テーブル共通化制御部26を用いて、コントローラ1のデータ転送状態713の値を、図8の813に示すように“3番転送中”に設定する。これにより、コントローラ1のデータ通信制御部12は、転送データ716と送信データ情報712に最新のデータ情報を設定することができる。
以降は(実施の形態1)と同じ制御によりコントローラから電子レンジに指定のデータが転送される。
また、コントローラ内のデータが可変の場合つまり種別毎データ数、各データの送信データ情報、転送データの値が可変の場合、データ転送状態が“転送中”の場合は書込み不可の状態となる。また、データ転送状態を“転送中”とは別に“書込み不可”状態に設定することが可能となり、この状態の時には種別毎データ数、各送信データ情報、各データ情報の各値を不変とすることが可能となる。
最後に、コントローラ1と電子レンジ2のそれぞれのデータ通信制御部12、22が転送データの共通化が完了したと判断した時点で、データ転送状態は“完了”に設定され、データ転送状態以外の項目については共通化した値が保持される。従って、同じ情報を共通化するためのデータ通信は、以降は不要となる。
上記3つの実施の形態において、データの伝送が必要になった起動側(トリガ側)の通信機器と、その相手の通信機器の各データ通信機能テーブルの情報を共通化するための機器の構成、機器の動作、処理手順を説明した。実施の形態1では、自発通信の自発送信側が、自発受信側のデータ種別に合わせた。実施の形態2、3では、要求応答通信の要求受信側が、応答送信側のデータ種別に合わせた。
両者に共通するデータ種別がなければ、データ転送を行うことができないので、データ転送不可能であることを、通信機器の一方又は両方が、表示するようにしてもよい。
或いは、データ種別を変換する機能を持った別の通信機器をネットワークに接続、設けておいて、この変換器を介して、データ転送を行うようにしてもよい。このような変換機能を通信機器内に備えておけば、データ種別が不一致の場合も、どちらかの有するデータ種別に合わせて変換したデータを送信、受信することができる。
また、所望のデータ種別の受信ができる別の通信機器が、代わりに、転送データを受取っておき、後で届けるようにしてもよい。
また、データ種別が互いに不一致の場合、送信したいデータ種別に合わせた、転送シーケンスや、データ種別の転送データを処理できるプログラムを、別の通信機器に問い合わせ、その通信機器から通信機器1、通信機器2のうち、対応できない機器にダウンロードして、所望のデータ種別を、所望の種別データ数、データ分割により、扱えるようにしてもよい。
一方、2つの通信機器に共通のデータ種別が、複数種類存在する場合は、そのどのデータ種別によっても、データ転送ができる。通常転送データは、その種別が、“TXT”、“CSV”、“HTM”など予め決まっているので、転送を所望するデータファイルにあわせたデータ種別を設定する必要がある。必要とするファイルのデータ種別を調べてから、複数あるデータ種別情報から選択して、共通化するようにしてもよい。
本発明で用いているデータ通信機能テーブルは、データ通信に関わる一連の手順、即ちオブジェクトを規定する働きを持っており、テーブル自身がひとつのオブジェクトとみなせる。データ送信に関わる情報を各情報毎に共通化することだけでなく、転送タスクというオブジェクトとして、即ち、オブジェクトを共通化することにより、データ通信の開始に伴う両通信機器間のネゴシエーションを円滑化し、不要な通信輻輳を逓減できる。
先に説明した自発送信データ種別、送信データ情報、データ転送状態、転送データ、自発受信側データ種別、応答送信データ種別、要求受信データ種別、データ分割数、種別毎データ数は、データ通信のサービスの形態を決めるためのプロパティと呼ぶパラメータである。これらのパラメータの決め方には種々あるが、その具体例を図9、図10、図11に示す。図9と図10は、[A]データ送信サービスに関連するプロパティである。
(1)PUSH送信用取扱タイプ情報(自発送信データ種別)
<値の詳細>
・PUSH型でデータ送信を行う場合の扱うデータのMAXバイト数、タイプ数、各データタイプとMAXデータ数を表すプロパティ。
・取扱データMAXバイト数:送信可能な1データの最大バイト数を表す。
・タイプ数:取扱うデータタイプの数。この値が0の場合は全データ種類が対象となりえることを示す。
・MAXデータ数:タイプ毎の扱うデータのMAX数。
<読出し・書込み・通知のタイミングなど>
・データ転送状態に関わらず、この値の読出しは常に可能である。
(2)PULL送信用取扱タイプ情報(応答送信データ種別)
<値の詳細>
・PULL型でデータ送信を行う場合の扱うデータのMAXバイト数、タイプ数、各データタイプとMAXデータ数を表すプロパティ。
・取扱データMAXバイト数:送信可能な1データの最大バイト数を表す。
・タイプ数:取扱うデータタイプの数。この値が0の場合は全データ種類が対象となりえることを示す。
・MAXデータ数:タイプ毎の扱うデータのMAX数。
<読出し・書込み・通知のタイミングなど>
・データ転送状態に関わらず、この値の読出しは常に可能である。
(3)PULL送信用タイプ別データ数(種別毎データ数)
<値の詳細>
・タイプ毎の現在のデータ数。
・タイプの並び順はPULL送信用取扱タイプ情報と同じとするが、データ数0のタイプを省略することも可能。
・データ転送状態に指定するデータNo.も、このタイプの順に並んでいる。
<読出し・書込み・通知のタイミングなど>
・データ転送状態が転送中、書込ロック中の場合には、データ数が変更されることはない。
・データ転送状態に関わらず、この値の読出しは常に可能である。
(4)送信データ情報
<値の詳細>
・送信対象となる各データのタイプや名称、日付、バイト数などの情報。
・1送信データの情報が1配列の配列扱いのプロパティであり、配列要素No.はデータNo.となる。また、データNo.順はPULL送信用取扱タイプ情報で指定されたタイプ順に並んでいる。
・日付情報:データの日付をXX:YY:MN:DD:HH:MM:SSで表す。
(20〜99):(0〜99):(1〜12):(1〜31):(0〜23):
(0〜59):(0〜59)
オブジェクトが日付情報をもたない場合は各バイトデータを0に設定。
・データバイト数:送信データ全体のバイト数。
・チェックコード:送信データ全体の各バイトデータを合計しその2の補数。
<読出し・書込み・通知のタイミングなど>
・データ転送状態が転送中、書込ロック中の場合には、この情報が変更されることはない。
・要素指定による送信データ情報の読出しは常に可能である。
(5)データ転送状態
<値の詳細>
・現在のデータ転送状態を表し、転送中の場合はデータNo.を表す。
・送信タイプ情報、指定タイプのデータ数と各データ情報の値を変更させないための書込ロック状態に設定することも可能。
<読出し・書込み・通知のタイミングなど>
・データ転送状態が書込みロックまたは転送中の場合は、再度データNo.の書込みを行ってデータ転送を開始するか、正常終了または異常終了の終了状態に戻す必要がある。
・データ転送後一定時間を経過しても欠損データの要求またはデータ転送状態の設定がない場合は、自端末がデータ転送状態を異常終了に設定する。
・データ転送状態が書込みロック中または転送中の場合には、転送処理を行っている端末以外の端末からのこの値の書込みはできない。
・この値の読出しは常に可能である。
(6)データ転送
<値の詳細>
・データ転送状態にデータNo.が指定された場合に、そのデータを、データ分割情報から求められた分割サイズに分割し、配列型として連続送信する。
・全配列数:分割送信する全配列の数。
・分割データサイズ:このフレームの分割データバイト数。
<読出し・書込み・通知のタイミングなど>
・データ分割情報通知を受信後に、送信側から転送データ本体を通知送信する。
図11は、[B]データ受信サービスに関するプロパティである。
(1)PUSH受信用取扱タイプ情報(自発受信側データ種別)
<値の詳細>
・PUSH型でデータ受信を行う場合の扱うデータのMAXバイト数、タイプ数、各データタイプを表すプロパティ。
・取扱データMAXバイト数:受信可能な1データの最大バイト数を表す。
・タイプ数:取扱うデータタイプの数。この値が0の場合は全データ種類が受信可能であることを示す。
<読出し・書込み・通知のタイミングなど>
・データ転送状態に関わらず、この値の読出しは常に可能である。
(2)PULL受信用取扱タイプ情報(要求受信側データ種別)
<値の詳細>
・PULL型でデータ受信を行う場合の扱うデータのMAXバイト数、タイプ数、各データタイプを表すプロパティ。
・取扱データMAXバイト数:受信可能な1データの最大バイト数を表す。
・タイプ数:取扱うデータタイプの数。この値が0の場合は全データ種類が受信可能であることを示す。
<読出し・書込み・通知のタイミングなど>
・データ転送状態に関わらず、この値の読出しは常に可能である。
(3)データ分割情報
<値の詳細>
・受信側が受信に最適な搭載データの最大バイト数。
・セットされた搭載データ最大バイト数、自端末が一度に送信可能な搭載データ最大バイト数。
・搭載データ最大バイト数の中の最小バイト数で、データ転送の搭載データを構成できるように、送信データを分割してデータ転送処理を行う。
<読出し・書込み・通知のタイミングなど>
・データ転送状態が転送中の場合には、値の書込みはできない。
次に、上記3つの実施の形態において説明したデータ通信の方法、手順を実行するために、図9、図10、図11の各プロパティを使用した電文の例について、説明する。
自発通信(PUSH型データ通信)の処理では、送信側から自動発信によりデータ転送を行う場合、受信側のPUSH受信用取扱タイプを要求して転送データ種類の確認を行った後、送信データ情報の通知を行い、受信側からの応答であるデータ転送確定に続いて、送信側からの分割データ転送を行うことによりデータ転送を行う。自発通信(PUSH型データ通信)の代表的な通信シーケンスを図12に示す。これは、送信側が内部のトリガによりデータを自動送信する処理である。
<事前処理>
(1)取扱タイプ情報要求(送信側→受信側)
送信側が受信側に対して、PUSH受信用取扱タイプ情報を読出し要求する。
(2)取扱タイプ情報応答(受信側→送信側)
要求を受けて、受信側はPUSH受信用取扱タイプ情報を応答送信する。
<データ送信処理>
(3)送信データ情報通知(送信側→受信側)
送信側は「データ転送状態」に送信データNo.を書込み転送中にセットした後、受信側に対して転送データのサイズ、チェックサムなどの送信データ情報を通知する。受信側は、送信データ情報からデータ受信可能かを判定し、受信できない場合はデータ転送完了設定で異常終了を設定する。
(4)分割データ情報通知(受信側→送信側)
受信側は、受信可能であると判定した場合は、自端末の受信可能な搭載最大バイト数を送信する。
(5)分割データ転送(送信側→受信側)
送信側は受信側に対して、データを分割して連続送信する。
(6)指定分割データ要求(受信側→送信側)
受信側は最終分割データを受信した後、または分割データ受信待ちのタイムアウトが発生した時点で、正しく受信できなかった分割データがある場合は、分割データの配列要素番号を指定して送信要求を行う。
(7)指定分割データ転送(送信側→受信側)
送信側は、受信側から指定分割データの要求があった場合に、指定された配列要素の分割データを送信する。
(8)データ転送完了設定(受信側→送信側)
受信側は送信側に対して、データが正しく受信できた場合または何らかの理由によりデータ転送処理を終了する場合に、データ転送状態を完了にするデータを送信する。
※但し、このフレームが送信されない場合もある。従って、データ送信側は指定分割データの要求とデータ転送完了設定のフレーム受信待ちの処理においてタイムアウトを設け、データ転送状態を処理中から完了に変更する処理を行う。
図13の(1)〜(8)は、上記各シーケンスに用いる電文の一例である。図13において、OHDはオブジェクトヘッダ、SEOJは送信元オブジェクト、DEOJは受信先オブジェクト、EPCはプロパティ名称コード、ESVはプロパティサービス内容である。その後に、必要に応じて各種データを搭載する。これらの電文は、通信機器1と2のアドレスを、送信元アドレス、受信先アドレスの何れかとして、付加することにより、ネットワーク制御部14と15の間で、送受信される。
要求応答通信(PULL型データ通信)の処理では、受信側からデータ転送の要求を行う場合、送信側のPUSH送信用取扱タイプを要求して転送データの確認を行った後、必要に応じてデータ情報収集処理を行い、次に、受信側がデータ転送開始トリガを送信する。このトリガを受けてデータ送信側が指定データの送信データ情報を通知し、以降はPUSH型と同じデータ転送処理を行う。
図14に、要求応答通信(PULL型データ通信)の代表的な通信シーケンスを示す。各電文について簡単に説明する。
<事前処理>
(1)取扱タイプ情報要求(受信側→送信側)
送信側が受信側に対して、PULL送信用取扱タイプ情報を読出し要求する。
(2)取扱タイプ情報応答(送信側→受信側)
要求を受けて、受信側はPULL送信用取扱タイプ情報を応答送信する。
<対象データ情報収集処理>
データ選択処理は以下の通り。但し、これらの各処理は必要に応じて行う。また、データ転送を行わずに、各処理を単独で行うことができる。
(3)データ転送状態要求(受信側→送信側)
受信側が送信側に対して、データ転送状態を要求する。この要求を受けて、送信側はデータ転送状態を応答する。
(4)データ転送状態応答(送信側→受信側)
送信側が受信側に対して、データ転送状態応答を送信する。受信側は、データ転送状態が未処理または終了状態の場合は、書込みロックまたはデータ転送開始トリガを送信する。
(5)書込みロック(受信側→送信側)
カレントデータ種別やデータ情報の書き換えを送信側が行わないようにロックするために、データ転送状態を書込みロックにする。この書込みロックは必要に応じて行う。このロックを行った後には必ず、データ転送状態にデータNo.をセットしてデータ転送を開始するか、終了状態に設定する必要がある。
(6)タイプ別データ数要求(受信側→送信側)
必要に応じてデータ転送開始直前の情報を収集するために、送信タイプ毎のデータ数を要求する。
(7)タイプ別データ数応答(送信側→受信側)
要求に応じて、タイプ毎のデータ数を応答する。
(8)指定送信データ情報要求(受信側→送信側)
データ転送処理前に、データ送信の対象となるデータ情報を取得したい場合は、データ番号を指定することにより、送信データ情報を要求する。
(9)指定送信データ情報応答(送信側→受信側)
送信側は要求に応じて、指定の送信データ情報を応答する。
<送信処理>
(10)データ転送開始トリガ(受信側→送信側)
受信側が送信側に対して、データ転送状態を処理中にするフレームを送信することにより、データ転送開始のトリガを送信する。このトリガを受けて、送信側は次の処理を行う。
※以降は「PUSH型データ転送」に同じである。
図15、図16は、上記PULL型シーケンスの通信電文の例である。
次に、データ通信機能テーブルの別の実施の形態を、図17、図18に示す。図17、図18において、通信機器1のデータ通信機能テーブル901は、自発送信データ種別911、自発受信データ種別912、応答送信データ種別913、要求受信データ種別914、送信データ情報915、データ転送状態916、種別毎データ数917、データ分割数918、転送データ919を備えている。通信機器2のデータ通信機能テーブル902も、自発送信データ種別921、自発受信データ種別922、応答送信データ種別923、要求受信データ種別924、送信データ情報925、データ転送状態926、種別毎データ数927、データ分割数928、転送データ929を備えている。
各データエリアは、(a)と(b)に分かれており、(a)には自己のデータが格納され、(b)には相手のデータが格納される。自己データ(a)の内、自発送信データ種別911、921、自発受信データ種別912、922、応答送信データ種別913、923、要求受信データ種別914、924、種別毎データ数917、927、データ分割数918、928には、通信機器自身が扱うことが出来るデータの種別やデー多数データ分割数が格納されている。送信データ情報915、925、データ転送状態916、926は、データ通信の実行過程で決まる値であり、初期状態では、未設定である。データ転送状態916、926の未設定は、“未送信”の意味である。各データの内、(b)は、初期状態では、相手の状態が分からないので、これらも未設定である。
通信機器1が自発送信をする場合について説明する。通信機器1は、通信機器2に対して、自発受信データ種別922(a)とデータ分割情報928(a)を送るように電文を発信し、通信機器2は、これに応答してデータを送る。通信機器1は、受信した自発受信データ種別922(a)とデータ分割情報928(a)を、912(b)と918(b)に、それぞれ格納し、911(a)、918(a)と比較し、共通するものがあることを確認し、共通するものの中から所望のデータ種別を選んで、送信データ情報915(a)に書き込む。図18の場合は、“HTM”が911(a)と912(b)の中で共通し、1024が918(a)と918(b)の中で共通している。
通信機器1は、“HTM”形式のファイルAを自発送信することにし、送信データ情報915(a)を、図3のフォーマットに従って、データ種別“HTM”、データ名称ファイルA、日付2002/3/10、データバイト数5500と設定し、このデータを通信機器2に送る。通信機器2は、受信したデータを送信データ情報925(b)に格納する。そして、通信機器1は、ファイルAを転送データ919(a)に準備する。データ転送状態916(a)を“転送中”に設定し、設定したデータを送信して、通信機器2に対して、転送を実行することを知らせる。通信機器2は、受信したデータ転送状態916(a)を926(b)に格納し、ファイルの受信準備をする。
次に、通信機器1は、転送データ919(a)のファイルAを、1024バイト毎に分割して転送する。通信機器2は、分割受信したファイルAを、転送データ929(b)に受信順に格納する。ファイルAが、複数のサブファイルからなっている場合は、サブファイルの番号に従って、“3番転送中”のように、データ転送状態916(a)を、サブファイル番号に従って変えてゆけば、転送状態とサブファイルの番号管理が行える。また、通信機器2の方でも、926(b)により、転送状態とサブファイルの番号管理が行える。送信データ情報915(a)を送信する際に、種別毎データ数917(a)を、同時に、または、別途に送信しておけば、通信機器2は、転送実行において送られてくるファイルの数が、予め分かり、受信が完了したかどうかの判断ができる。
このように、通信機器1と2のそれぞれが扱えるデータ種別、データ分割数、種別毎データ数などを、どちらかが入手して、自己の処理能力と比較して、お互いの処理能力を共通化しておく。また、ファイルなどの転送データを選んで転送する際には、その転送データのデータ種別、データ名称などをお互いに共通化しておく。その次に、転送データを転送実行によりお互いに共通化する。このようにデータ通信機能テーブルを使用して、お互いを共通化することにより、通信機器1、2間での通信の調停が確実に、少ない通信量で行うことができる。
図17、図18のデータ通信機能テーブルでは、通信機器1、2共に、自発送信、自発受信、応答送信、要求受信ができる場合としたが、その一部だけを行う機器では、不要なデータエリア、そのうちの(a)、(b)の一方、又は、両方を省略してもよい。実施の形態1、2、3は、そのような場合に相当するものである。共通化のためには、転送データの送信側になる通信機器の方で、扱えるデータ種別、データ分割情報、種別毎データ数などを共通化するのが、好ましいが、受信側において、共通化に対応して受信準備をするようにしてもよい。とくに、受信側が、受信する転送データの属性、状況に合わせて対応を変えられる場合は、このようにしても差し支えない。
図17、図18のデータ通信機能テーブルにおいて、自発送信データ種別911と応答送信データ種別913をまとめて、ひとつの送信データ種別911とし、自発受信データ種別912と要求受信データ種別914をまとめて、ひとつの受信データ種別912とし、913、914を削除してもよい。この場合は、自発通信では、相手の受信データ種別を取り寄せて、自己の送信データ種別と相手の受信データ種別を比較することになる。また、要求応答通信では、相手の送信データ種別を取り寄せて、自己の受信データ種別と相手の送信データ種別を比較することになる。
上記説明したように、個々のプロパティを、手順を追って転送して共通化する代わりに、データ通信機能テーブルの形で転送することにより、共通化を行ってもよい。この場合、データ通信機能テーブルの中身は、必要なものの未設定して送ることになる。一回の転送で済ます場合もあるが、一般的には、通信機器1、2の双方の間で、数回の転送を行うことになる。
(実施の形態4)
図1の構成を持つ端末機器とコントローラについて、端末機器からコントローラへデータを自発的に送信する場合について説明する。一例として、データを自発送信する端末機器をエアコン1、受信側をコントローラ2とし、エアコン1がメンテナンスデータを一定期間蓄積すると自発的にコントローラ2に送信する場合の説明を行う。
図19に示すように、エアコン1には送信機能テーブル1001、コントローラ2には受信機能テーブル1002が用意されており、両者は通信ネットワークを介して通信相手のテーブルに対して参照や、書き込みを行うことでデータの送受信を行う。以下、送信機能テーブルと受信機能テーブルを総称して通信機能テーブルと呼ぶ。
送信機能テーブル1001には以下の情報を格納する。動作状態1011は、送信機能テーブル1001全体の動作が有効かどうかを示し、例えばON=0x30、OFF=0x31の2値で表現する。1012はデータ提供機器・機能情報で、送信データを提供する機器種別およびその機能を表すコードを格納する。エアコンの一定期間のメンテナンスデータを送信する場合には、エアコンを表すコード0x013001とメンテナンスデータを表すコード0xF0を組み合わせた0x013001F0を1012に格納する(コードは例である)。機器と機能によってこのコードはユニークとする。1013は送信データ情報で、例えば図3に示すように、データ種別(ビットマップ形式、テキスト形式など)、データ名称、データの作成日付、送信データのサイズで構成する。1014はデータ送信状態で、送信中か否かを示す。1015はデータ分割情報で、受信側のコントローラ2が扱えるデータサイズである。また、1016は送信データそのものである。
一方、受信機能テーブル1002には以下の情報を格納する。動作状態1021は、受信機能テーブル1002全体の動作が有効かどうかを示し、例えばON=0x30、OFF=0x31の2値で表現する。1022は1012と同じくデータ提供機器・機能情報で、送信データを提供する機器種別およびその機能を表すコードを格納する。1024はデータ受信状態で、受信中か否かを示す。1025はデータ分割情報で、受信側が扱えるデータサイズである。
以下に、本実施の形態の動作について説明する。まず、エアコン1とコントローラ2はお互いに通信相手を認識する必要がある。特に、送信側であるエアコン1は、送信先であるコントローラ2の存在を確認して初めてコントローラ2に対してデータ送信が可能となるため、この確認シーケンスは必須である。これは以下の通信手順によって行う。
エアコン1およびコントローラ2は電源が入った直後に、自身が持つ通信機能テーブルの情報をネットワーク上に通知する仕様となっている。エアコン1の電源がコントローラ2より後に入った場合、コントローラ2は、エアコン1の送信機能テーブル1001搭載の通知を受けた後、エアコン1の送信機能テーブル1001の動作状態1011に対してONの書き込み電文を送る。このエアコン1に対する書き込み電文には、コントローラ2のアドレスや受信機能テーブル1002を搭載することを示す情報が入っている。エアコン1は、該電文を受けることにより、受信機能テーブルを持つ機器の存在を知る。
一方、コントローラ2の方が後に電源が入った場合、エアコン1は、コントローラ2の受信機能テーブル1002搭載の通知を受けることができるので、送信相手先を認識することは可能であるが、コントローラ2の受信機能テーブル1002搭載の通知を受けた後、コントローラ2の受信機能テーブル1002の動作状態1021に対してONの書き込み電文を送って、コントローラ2にエアコン1の存在を認識させても良い。
なお、上記の通信手順の代わりに、エアコン1およびコントローラ2は、電源が入って自身が持つ通信機能テーブルの情報をネットワーク上に通知した後、相手の通信機能テーブルに動作状態の参照/通知要求電文を送り、該電文に対する応答によって通信相手の確認を行っても良い。例えば、送信機能テーブルを持つエアコン1が起動した時は、ネットワーク上の受信機能テーブルを持つすべての機器に対して動作状態の参照/通知要求電文を送る。この電文を受けたコントローラ2が受信機能テーブル1002の動作状態1021を読み出して応答電文を作成してエアコン1に送れば、エアコン1はコントローラ2の受信機能テーブル1002の存在を確認することができる。
以上により、データ送信を行う事前処理として、エアコン1は自発送信の相手先であるコントローラ2を認識することが可能となる。
次にエアコン1とコントローラ2とのデータの送受信について述べる。エアコン1は、例えばある一定期間のメンテナンスデータが蓄積されると、データ提供機器・機能情報を作成し、コントローラ2に送信する。コントローラ2は、エアコン1のデータ提供機器・機能情報を受け取ると該情報の中身を吟味し、メンテナンスデータの取得を行う場合には、エアコン1の送信機能テーブル1001のデータ送信状態1014に対して“送信中”を表すコードを書き込む電文をエアコン1に送る。また同時にコントローラ2は自身の受信機能テーブル1002のデータ受信状態1024に“受信中”を表すコードを書き込む。なお、コントローラ2がメンテナンスデータの取得を行わない場合には、エアコン1の送信機能テーブル1001のデータ送信状態1014に対して“異常終了”を表すコードを書き込む電文をエアコン1に送る。この場合、コントローラ2は自身の受信機能テーブル1002のデータ受信状態1024には何も書き込まない。
エアコン1はコントローラ2による“送信中”書き込み電文受信をトリガにして、まず送信機能テーブル1001より送信データ情報1013を読み出し、コントローラ2に送信する。しかる後に、送信データ1016を読み出し、データ分割情報1015に格納されたデータサイズに送信データを分割してコントローラ2への自発送信を実行する。コントローラ2は、分割された送信データを全て受信すると、データを組み立てて、先に受信した送信データ情報とリンクして保存する。
なお、エアコン1がコントローラ2にデータ提供機器・機能情報を送信する際、送信データ情報1013を付加してもよい。この場合、エアコン1はコントローラ2からの“送信中”書き込み電文を受信すると、即座に分割した送信データをコントローラ2に送ることになる。
以上により、本実施の形態4では、データを自発送信する機能を持った端末機器と、それを受信するコントローラにおいて、端末機器がデータを送信する前に、端末機器の機器・機能情報を含めたデータに関する情報をコントローラに送るので、コントローラはデータを提供する機器・機能情報を明確に把握した上でデータを取得することができる。
(実施の形態5)
図1の構成を持つ端末機器とコントローラについて、コントローラから端末機器にデータを要求する場合について説明する。一例として、端末機器を静止画像を取るカメラ1、受信側をコントローラ2とし、コントローラ2がカメラ1の静止画像データを要求する場合の、データ送受信の方法を説明する。
カメラ1とコントローラ2は、それぞれ図19に示す送信機能テーブル1001、受信機能テーブル1002を持つ。各テーブルの構成は実施の形態4と同様なので、その説明は省略する。なお、送信機能テーブル1001のデータ提供機器・機能情報1012には、カメラ1を表すコード0x06C001と静止画像データを表すコード0xF1を組み合わせた0x06C001F1が格納されている(コードは例である)。
以下に、本実施の形態の動作について説明する。まず、コントローラ2はカメラ1の存在を認識しなければならない。これは以下の通信手順によって行う。
実施の形態4と同じく、カメラ1およびコントローラ2は電源が入った直後に、自身が持つ通信機能テーブルの情報をネットワーク上に通知する仕様となっている。コントローラ2の電源がカメラ1より後に入った場合、カメラ1はコントローラ2の受信機能テーブル1002搭載の通知を受けると、コントローラ2の受信機能テーブル1002の動作状態1021に対してONの書き込みを行う。このコントローラ2に対する書き込み電文には、カメラ1のアドレスや送信機能テーブル1001を搭載することを示す情報が入っている。コントローラ2は、該電文を受けることにより、送信機能テーブルを持つ機器の存在を知る。
逆に、カメラ1の方が後に電源が入った場合、コントローラ2は、カメラ1の送信機能テーブル1001搭載の通知を受けることができるので、データ要求先を認識することは可能であるが、カメラ1の送信機能テーブル1001搭載の通知を受けた後、カメラ1の送信機能テーブル1001の動作状態1011に対してONの書き込み電文を送って、カメラ1にコントローラ2の存在を認識させても良い。
なお、上記の通信手順の代わりに、実施の形態4と同じく、カメラ1およびコントローラ2は、電源が入って自身が持つ通信機能テーブルの情報をネットワーク上に通知した後、相手の通信機能テーブルに動作状態の参照/通知要求電文を送り、該電文に対する応答によって通信相手の確認を行っても良い。
以上により、データ送信を行う事前処理として、コントローラ2はデータ要求先であるカメラ1を認識することが可能となる。
次にカメラ1とコントローラ2とのデータの送受信について述べる。コントローラ2はカメラ1の送信機能テーブル1001のデータ提供機器・機能情報1012に対しデータ供給元の機器および機能の情報を取得するための参照要求電文をカメラ1に送信する。コントローラ2はカメラ1の応答電文より、カメラ1のデータ供給元の機器および機能の情報(本実施の形態では「カメラの静止画像」という情報)を取得し、カメラ1からデータを取得するかどうかを判断する。コントローラ2がカメラ1からデータを取得する場合、まずカメラ1の送信機能テーブル1001のデータ送信状態1014の参照要求電文をカメラ1に送信する。コントローラ2はカメラ1からの応答電文を受けてカメラ1の送信状態を確認し、送信状態が“READY”であれば、カメラ1の送信機能テーブル1001のデータ送信状態1014に“送信中”コードの書き込み要求電文をカメラ1に送信する。またコントローラ2は自身の受信機能テーブル1002のデータ受信状態1024に“受信中”を表すコードを書き込む。
カメラ1はコントローラ2より送信機能テーブル1001のデータ送信状態1014に“送信中”コードを書き込まれると、送信データ情報1013を作成し、コントローラ2に送信する。その後、送信データ1016を読み出し、データ分割情報1015に格納されたデータサイズに送信データを分割してコントローラ2への自発送信を実行する。コントローラ2は、分割された送信データを全て受信すると、データを組み立てて、先に受信した送信データ情報とリンクして保存する。
以上により、本実施の形態5では、データを保持する端末機器と、それを要求するコントローラにおいて、コントローラは端末機器にデータを要求する前に、端末機器の機器・機能情報を含めたデータに関する情報を取得するので、コントローラはデータを提供する機器・機能情報を明確に把握した上で端末機器のデータを取得することができる。
(実施の形態6)
上記実施の形態4と実施の形態5で説明したデータ通信の方法、手順を実現するためのプロパティの具体例を図20、図21、図22に示す。
図20は、データ受信サービスに関連するプロパティである。
(1)PUSH受信用取扱オブジェクト情報
<値の詳細>
・ 取扱ファイルMAXバイト数:PUSH受信可能な組み立て後のファイルのMAXバイト数。
・ ファイル提供機器オブジェクト/プロパティ数:PUSH受信可能なファイルを提供する自ノードまたは他ノード機器のプロパティ数。最大値は40。
・ ファイル提供機器オブジェクト/プロパティ:PUSH受信可能なファイルを提供する自ノードまたは他ノード機器のオブジェクトコードとプロパティコードを組み合わせたもの。
・ ファイル数:受信し保持することが可能な機器オブジェクト・プロパティ毎のファイル数を表す。
・ 0〜0xFFFE=ファイル数。0xFFFF=特に制限がないことを表す。
<読出し・書込み・通知のタイミングなど>
・ 本プロパティ値の読み出しは、常に可能である。
(2)PULL受信用取扱オブジェクト情報
<値の詳細>
・ 取扱ファイルMAXバイト数:PULL受信可能な組み立て後のファイルのMAXバイト数。
・ ファイル提供機器オブジェクト/プロパティ数:PULL受信可能なファイルを提供する自ノードまたは他ノード機器のプロパティ数。最大値は40。
・ ファイル提供機器オブジェクト/プロパティ:PULL受信可能なファイルを提供する自ノードまたは他ノード機器のオブジェクトコードとプロパティコードを組み合わせたもの。
・ ファイル数:受信し保持することが可能な機器オブジェクト毎のファイル数を表す。0〜0xFFFE=ファイル数。0xFFFF=特に制限がないことを表す。
<読出し・書込み・通知のタイミングなど>
・ 本プロパティ値の読み出しは、常に可能である。
(3)データ分割情報
<値の詳細>
・ 受信に最適なEDT最大バイト数を表す。
<読出し・書込み・通知のタイミングなど>
・ 送信側が送信データ通知を行なう前に、読出しを行なう。
・ 本プロパティ値の読み出しは、常に可能である。
図21は、データ送信サービスに関連するプロパティの一部である。
(1) PUSH送信用取扱オブジェクト情報
<値の詳細>
・ 取扱ファイルMAXバイト数:PUSH送信可能な分割前のファイルのMAXバイト数。
・ ファイル提供機器オブジェクト/プロパティ数:PUSH送信可能なファイルを提供する自ノードまたは他ノード機器のプロパティ数。最大値は40。
・ ファイル提供機器オブジェクト/プロパティ:PUSH受信可能なファイルを提供する自ノードまたは他ノード機器のオブジェクトコードとプロパティコードを組み合わせたもの。
・ ファイル数:機器オブジェクト・プロパティ毎に保持しているファイル数を表す。
<読出し・書込み・通知のタイミングなど>
・ 本プロパティ値の読み出しは、送信状態に関わらず可能である。
・ 本プロパティ値のファイル数は、送信状態が送信中または書込みロック中の場合には変更されない。
(2)PULL送信用取扱オブジェクト情報
<値の詳細>
・ 取扱ファイルMAXバイト数:PULL送信可能な分割前のファイルのMAXバイト数。
・ ファイル提供機器オブジェクト/プロパティ数:PULL送信可能なファイルを提供する自ノードまたは他ノード機器のプロパティ数。最大値は40。
・ ファイル提供機器オブジェクト/プロパティ:PULL受信可能なファイルを提供する自ノードまたは他ノード機器のオブジェクトコードとプロパティコードを組み合わせたもの。
・ ファイル数:機器オブジェクト・プロパティ毎に保持しているファイル数を表す。
<読出し・書込み・通知のタイミングなど>
・ 本プロパティ値の読み出しは、送信状態に関わらず可能である。
・ 本プロパティ値のファイル数は、送信状態が送信中または書込みロック中の場合には変更されない。
図22は、データ送信サービスに関連するプロパティの一部である。
(3)送信状態
<値の詳細>
・ READY/前回正常終了=0:処理待機中で、送信実行前または前回正常終了した。
・ 送信開始=0x01:送信処理開始(送信処理中)
・ 書込みロック中=0x10:送信対象情報、送信ファイル情報、送信データの各値を変更させないためのモード
・ 前回異常終了=0xFF:処理待機中で、前回異常終了した。
<読出し・書込み・通知のタイミングなど>
・ 本プロパティ値の読み出しは常に可能である。
・ 送信状態が送信中または書込みロック中の場合には、送信状態の書込みを行なったファイル受信側ノード以外から本プロパティ値の書込みはできない。
・ データ送信中に本プロパティへの正常終了、または異常終了の書込みにより、送信処理の中断が可能。
・ 送信状態が送信中または書込みロック中の場合には、正常終了または異常終了の終了状態に戻すか、再度「送信開始」の書込みを行なって送信を開始する必要がある。
(4)送信対象情報
<値の詳細>
・ ファイル提供機器オブジェクト/プロパティ:取扱オブジェクト情報の中で、送信対象となる機器オブジェクト/プロパティ情報
・ ファイル番号:複数のファイルを扱える場合の、ファイル番号。
<読出し・書込み・通知のタイミングなど>
・ PUSH型送信の場合は、送信側ノードから受信側ノードに対して通知を行なう。
・ PULL型送信の場合は、受信側ノードから送信側ノードに対して、書込みを行なう。
・ 本プロパティ値は、送信状態が送信中または書込みロック中の場合には変更されない。
・ 本プロパティ値は、送信状態が送信中または書込みロック中の場合には、常に読出し可能である。
(5)送信ファイル情報
<値の詳細>
・ 送信ファイルの名称、日付情報、ファイルバイト数、チェックコードを示す。
・ 名称:ASCII8文字で表現されるファイル名称。
・ 属性:ASCII3文字で表現されるファイル属性。
・ 日付情報:ファイル日付を Y1Y2/MN/DD HH:MM:SSの形式で表す。
Y1=0x13〜0x63(19〜99), Y2=0x00〜0x63(00〜99), MN=0x01〜0x0C(1〜12),
DD=0x01〜0x1F(1〜31), HH=0x00〜0x17(0〜23), MM=0x00〜0x3B(0〜59),
SS=0x00〜0x3B(0〜59)
ファイルが日付情報を持たない場合は各バイトデータは0に設定される。
・ ファイルバイト数:送信ファイル全体のバイト数。
・ チェックコード:送信ファイル全体の各バイトを合計しその2の補数。
<読出し・書込み・通知のタイミングなど>
・ PULL型送信の場合は、送信側ノードは、受信側ノードから送信状態プロパティに「送信中」の書込みが行なわれた後、本プロパティ値を受信側ノードに通知する。
・ PUSH型送信の場合は、送信側ノードは、送信状態プロパティを「送信中」に変更した後に、本プロパティ値を受信側ノードに通知する。
・ 本プロパティ値は、送信状態が送信中または書込みロック中の場合には変更されない。
・ 本プロパティ値は、送信状態が送信中または書込みロック中の場合には、常に読出し可能である。
(6)送信データ
<値の詳細>
・ 全配列数:分割送信する全配列の数。
・ 分割データサイズ:分割データのバイト数。全配列数が2以上の最終配列要素以外は、分割データサイズは等しく、また、(分割データサイズ+6)がEDTサイズと等しいものとする。
・ 分割データ:分割したデータ本体。最終配列要素は、他の配列とEDTサイズを等しくし、分割データサイズ以降のデータは0パディングする。
<読出し・書込み・通知のタイミングなど>
・ 受信側のデータ分割情報を受信後に、送信側ノードから送信データの通知を行なう。
・ 送信状態が送信中でない場合は、本プロパティ値の通知や読み出しはできない。
つぎに、上記実施の形態4と実施の形態5で説明したデータ通信の方法、手順を実現するために、図20、21、22の各プロパティを使用したシーケンスの例について、説明する。
機器立ち上げ時の処理は、各ノードの立ち上がりシーケンスでインスタンス変化クラス通知を行なうことを利用し、PUSH型ファイル転送を行なう場合は、送信側が受信側ノードのEAを、PULL型ファイル転送を行なう場合は、受信側が送信側ノードのEAを取得する。
図23は、受信側が送信側より先に立ち上がる場合のシーケンスである。
<受信側ノードが先に立ち上がり、送信側ノードが後で立ち上がったときの処理>
(1)インスタンス変化クラス通知(送信側→受信側)
立ち上げシーケンスに従い、受信側に対してインスタンス変化クラスの通知を行なう。この通知を受けた受信側は、送信サービスオブジェクトを搭載している機器のEAを取得することが可能となる。
(2)動作状態ON書込要求(受信側→送信側)
受信側がPUSH型でファイル受信が可能な場合、インスタンス変化クラスの通知を受けて受信側は送信サービスオブジェクトの動作状態をONにする書込み要求を行なう。この要求を受けた送信側は、受信サービスオブジェクトを搭載している機器のEAを取得することが可能となる。
図24は、送信側が受信側より先に立ち上がる場合のシーケンスである。
<送信側ノードが先に立ち上がり、受信側ノードが後で立ち上がったときの処理>
(1)インスタンス変化クラス通知(受信側→送信側)
立ち上げシーケンスに従い、送信側に対してインスタンス変化クラスの通知を行なう。この通知を受けた送信側は、受信サービスオブジェクトを搭載している機器のEAを取得することが可能となる。
(2)動作状態ON書込要求(送信側→受信側)
送信側がPULL型でファイル送信が可能な場合、インスタンス変化クラスの通知を受けて送信側は受信サービスオブジェクトの動作状態をONにする書込み要求を行なう。この要求を受けた受信側は、送信サービスオブジェクトを搭載している機器のEAを取得することが可能となる。
自発通信(PUSH型データ通信)の処理では、送信側から自動発信によりファイル転送を行う場合、受信側のPUSH受信用取扱オブジェクト情報を要求し、必要に応じて送信対象情報の通知を行った後、送信ファイル情報の通知に続いて、送信側からの分割データ送信を行うことによりファイル送信を行う。
図25は、自発通信の代表的な通信シーケンスである。
<事前処理>
(1)取扱オブジェクト情報要求(送信側→受信側)
送信側が受信側に対して、PUSH受信用取扱オブジェクト情報を読出し要求する。
(2)取扱オブジェクト情報応答(受信側→送信側)
要求を受けて、受信側はPUSH受信用取扱オブジェクト情報を応答送信する。
なお上述の(1)、(2)は省略することができる。
<送信処理>
(3)送信対象情報通知(送信側→受信側)
送信側は、受信側の受信取扱オブジェクト情報が複数ある場合、どの機器オブジェクトに対してデータを送信するかを指定するために、送信対象情報を送信する。
(4)送信状態書込要求(受信側→送信側)
受信側は送信対象情報通知を受けて、送信対象となるデータを受信可能な場合には送信サービスオブジェクトの送信状態を「送信開始」にする書込み要求を行なう。送信対象となるデータを取得できない場合は、送信状態を「前回異常終了」とする書込み要求を行なう。
(5)送信ファイル情報通知(送信側→受信側)
送信側は「送信状態」に「送信開始」をセットした後、受信側に対して送信ファイルのサイズ、チェックサムなどの送信ファイル情報を通知する。受信側は、送信ファイル情報から受信可能かを判定し、受信できない場合は送信完了設定で異常終了を設定する。
(6)送信ファイル情報通知応答(受信側→送信側)
受信側は、通知応答を返す。
(7)分割データ送信(送信側→受信側)
送信側は受信側に対して、ファイルを分割して連続送信する。
(8)指定分割データ要求(受信側→送信側)
受信側は最終分割データを受信した後、または分割データ受信待ちのタイムアウトが発生した時点で、正しく受信できなかった分割データがある場合は、分割データの配列要素番号を指定して送信要求を行う。
(9)指定分割データ送信(送信側→受信側)
送信側は、受信側から指定分割データの要求があった場合に、指定された配列要素の分割データを送信する。
なお上述の(8)、(9)は省略することができる。
(10)送信完了設定(受信側→送信側)
受信側は送信側に対して、ファイルが正しく受信できた場合または何らかの理由により送信処理を終了する場合に、送信状態を終了状態に設定する。ただし、送信完了設定が行なわれない場合もある。したがって、送信側は指定分割データの要求と送信完了設定のフレーム受信待ちの処理においてタイムアウトを設け、送信状態を送信中から前回正常終了に変更する処理を行う。
要求応答通信(PULL型データ通信)の処理では、受信側からファイル送信の要求を行う場合、送信側のPUSH送信用取扱オブジェクト情報を要求して送信ファイルの確認を行った後、必要に応じて送信ファイル情報収集を行った後、受信側が送信開始トリガーを送信する。このトリガーを受けて送信側が指定対象オブジェクトの送信ファイル情報を通知し、以降はPUSH型と同じ送信処理を行う。
図26は、要求応答通信の代表的な通信シーケンスである。
<事前処理>
(1)取扱オブジェクト情報要求(受信側→送信側)
送信側が受信側に対して、PULL送信用取扱オブジェクト情報を読出し要求する。
(2)取扱オブジェクト情報応答(送信側→受信側)
要求を受けて、受信側はPULL送信用取扱オブジェクト情報を応答送信する。
<ファイル情報収集処理>
(3)送信状態要求 (受信側→送信側)
受信側が送信側に対して、送信状態を要求する。この要求を受けて、送信側は送信状態を応答する。
(4)送信状態応答 (送信側→受信側)
送信側が受信側に対して、送信状態応答を送信する。受信側は、送信状態が未処理または終了状態の場合は、書込みロックまたは送信開始トリガーを送信する。
(5)書込みロック (受信側→送信側)
送信ファイル情報の書き換えを送信側が行わないようにロックするために、送信状態に「書込みロック」の書込み要求をする。送信側は書込み要求に応じて、送信状態を「書込みロック」に設定する。この書込みロックは必要に応じて行う。なお、送信状態を「書込みロック」にセットた後には必ず、送信状態に「送信開始」.をセットして送信を開始するか、終了状態に設定する必要がある。
(6)送信状態書込み応答 (送信側→受信側)
書込み要求に対する応答を行なう。
(7)送信対象情報書込み要求(受信側→送信側)
必要に応じて各種ファイル情報を収集するために、送信対象情報の書込み要求をする。
(8)送信対象情報書込み応答(送信側→受信側)
書込み要求に対する応答を行なう。
(9)指定送信ファイル情報要求(受信側→送信側)
送信処理前に、送信対象となる送信ファイル情報を取得したい場合は、送信ファイル情報を要求する。
(10)指定送信ファイル情報応答(送信側→受信側)
送信側は要求に応じて、指定の送信ファイル情報を応答する。
<送信処理>
(11)送信開始トリガー(受信側→送信側)
受信側が送信側に対して、送信状態を処理中にする書込み要求を行なうことにより、送信開始のトリガーを送信する。このトリガーを受けて、送信側は次の処理を行う。送信ファイル情報通知以降は「PUSH型ファイル転送」に同じである。
なお上述の(5)〜(11)は省略することができる。
(実施の形態7)
実施の形態4と5で説明したデータ通信の方法、手順を実現するためのプロパティの具体例を図27、図28、図29に示す。
図27は、データ受信サービスに関連するプロパティである。
(1)動作状態
ファイル受信サービス機能の動作状態を示す。停止中の場合は0x31、通常動作中の場合は0x30となる。
(2)PUSH受信用取扱オブジェクト情報
PUSH型で受信を行なう場合に取扱ファイルMAXバイト数やファイル提供機器オブジェクトとプロパティなどの情報を表すプロパティ。本プロパティの存在がPUSH型でファイル受信が可能であることを表す。PUSH型でファイル受信を行なう場合は、本プロパティは必須である。なお、受信側ノードに本サービスオブジェクトを複数インスタンス搭載する場合、各インスタンスの本プロパティ値は重複しないように実装する。
<値の詳細>
・ 取扱ファイルMAXバイト数:PUSH受信可能な組み立て後のファイルのMAXバイト数。
・ ファイル格納機器クラス/プロパティ数:PUSH受信可能なファイルを格納するクラスとプロパティの組み合わせ数。最大値は40。
・ ファイル格納機器クラス/プロパティ:PUSH受信可能なファイルを格納する自ノードまたは他ノード機器のクラスグループコードとクラスコードとプロパティコードを組み合わせたもの。
・ ファイル数:受信し保持することが可能な機器クラス・プロパティ毎のファイル数を表す。0〜0xFFFE=ファイル数。0xFFFF=特に制限がないことを表す。
<読出し・書込み・通知のタイミングなど>
・ 本プロパティ値の読み出しは、常に可能である。
(3)データ分割情報
受信可能なデータの最大分割サイズを表すプロパティ。送信側ノードは、通知された本プロパティ値と自ノードが送信可能な分割サイズを比較して、小さい方のサイズにファイルを分割して送信するために、読出すためのプロパティ。
<値の詳細>
・ 受信可能なEDT最大バイト数を表す。
<読出し・書込み・通知のタイミングなど>
・ 送信側が送信データ通知を行なう前に、読出しを行なう。
・ 本プロパティ値の読み出しは、常に可能である。
図28は、データ送信サービスに関連するプロパティである。
(1)動作状態
ファイル送信サービス機能の動作状態を示す。停止中の場合は0x31、通常動作中の場合は0x30となる。
(2)PULL送信用取扱オブジェクト情報
PULL型でファイル送信を行なう場合に取扱ファイルMAXバイト数やファイル提供機器オブジェクトとプロパティなどを表すプロパティ。本プロパティの存在がPULL型でファイル送信が可能であることを表す。なお、受信側ノードに本サービスオブジェクトを複数インスタンス搭載する場合、各インスタンスの本プロパティ値は重複しないように実装する。
PULL型でファイル送信を行なう場合は、本プロパティは必須である。
<値の詳細>
・ 取扱ファイルMAXバイト数:PULL送信可能な分割前のファイルのMAXバイト数。
・ ファイル提供機器オブジェクト/プロパティ数:PULL送信可能なファイルを提供する自ノードまたは他ノード機器オブジェクトとプロパティ組合わせの数。最大値は40。
・ ファイル提供機器オブジェクト/プロパティ:PULL受信可能なファイルを提供する自ノードまたは他ノード機器のクラスグループコード、クラスコード、インスタンスコードで示される機器オブジェクトとプロパティコードを組み合わせたもの。
・ ファイル数:機器オブジェクト・プロパティ毎に保持しているファイル数を表す。
<読出し・書込み・通知のタイミングなど>
・ 本プロパティ値の読み出しは、送信状態に関わらず可能である。
・ 本プロパティ値のファイル数は、送信状態が送信中または書込みロック中の場合には変更されない。
図29は、データ送信サービスに関連するプロパティである。
(3)送受信設定
受信ノードから送信トリガや送受信結果を書き込むためのプロパティ。本プロパティ値は、書込みと同時に「送信状態」プロパティに反映される。
<値の詳細>
・ 正常終了=0x00:送信は正常終了
・ 強制終了=0x01:受信側ノードによる強制終了。
・ 書込みロック設定=0x10:本プロパティの書込みを行った受信側ノード以外から本プロパティ値の書込みを許可しない設定。この設定により本プロパティの書込みを行った受信側ノード以外へのファイル送信はしない。
・ 送信開始=0x20:送信処理開始
<読出し・書込み・通知のタイミングなど>
・ 本プロパティへの値の書込みは、書込み直後に「送信状態」プロパティに反映され、本プロパティ値に「送信開始」を書き込んだ場合は送信状態は「送信中」に、「書込みロック」の場合は「書込みロック中」に、その他の場合は「READY」に設定される。「送信状態」プロパティが送信中または書込みロック中の場合には、本プロパティへの書込みを行なった受信側ノード以外から本プロパティ値の書込みはできない。
・ データ送信中に本プロパティへの正常終了、または異常終了の書込みにより、送信処理の中断が可能。
(3)送信状態
自インスタンスが送信処理中か否かの送信状態を表すプロパティ。本プロパティ値が送信中の場合は、送信対象情報、送信ファイル情報、送信データは変更しない。
<値の詳細>
・ READY=0:待機中。
・ 書込みロック中=0x10:送受信設定プロパティに書込みを行った受信側ノード以外へのファイル送信をプロテクトするモード。
・ 送信中=0x20:送信処理中。
<読出し・書込み・通知のタイミングなど>
・ 本プロパティ値の読み出しは常に可能である。
「送受信設定」プロパティに書き込まれた値は、本プロパティに反映される。
(4)送信対象情報
送信対象となる取扱オブジェクト情報の中から、実際に送信するファイルを特定するためのプロパティ。取扱オブジェクト情報のファイル提供機器オブジェクト/プロパティ数が1つで、そのファイル数も1つの場合は、このプロパティによるファイルの特定は必要ない。
<値の詳細>
・ ファイル提供機器オブジェクト/プロパティ:取扱オブジェクト情報の中で、送信対象となる機器オブジェクト/プロパティ情報
・ ファイル番号:複数のファイルを扱える場合の、ファイル番号。
<読出し・書込み・通知のタイミングなど>
・ PUSH型送信の場合は、送信側ノードから受信側ノードに対して通知を行なう。
・ PULL型送信の場合は、受信側ノードから送信側ノードに対して、書込みを行なう。
・ 本プロパティ値は、送信状態が送信中の場合には変更できない。
・ 本プロパティ値は、送信状態が送信中または書込みロック中の場合には、常に読出し可能である。
・ 本プロパティ値は、送信状態が送信中または書込みロック中でない場合は、各値に0パディングしたデータを読み出すこととなる。
(5)送信ファイル情報
送信対象となるファイルの名称や属性、日付情報、バイト数などの情報を表すプロパティ。本プロパティにより、PULL型での送受信の際、送受信するファイルを選択するための情報を取得が可能となる。
<値の詳細>
・ 送信ファイルの名称、日付情報、ファイルバイト数、チェックコードを示す。
・ 名称:ASCII8文字で表現されるファイル名称。
・ 属性:ASCII3文字で表現されるファイル属性。
・ 日付情報:ファイル日付を Y1Y2/MN/DD HH:MM:SSの形式で表す。
Y1=0x13〜0x63(19〜99), Y2=0x00〜0x63(00〜99), MN=0x01〜0x0C(1〜12),
DD=0x01〜0x1F(1〜31), HH=0x00〜0x17(0〜23), MM=0x00〜0x3B(0〜59),
SS=0x00〜0x3B(0〜59)
ファイルが日付情報を持たない場合は各バイトデータは0に設定される。
・ ファイルバイト数:送信ファイル全体のバイト数。
・ チェックコード:送信ファイル全体の各バイトを合計しその2の補数。
<読出し・書込み・通知のタイミングなど>
・ PULL型送信の場合は、送信側ノードは、受信側ノードから送信状態プロパティに「送信中」の書込みが行なわれた後、本プロパティ値を受信側ノードに通知する。
・ PUSH型送信の場合は、送信側ノードは、送信状態プロパティを「送信中」に変更した後に、本プロパティ値を受信側ノードに通知する。
・ 本プロパティ値は、送信状態が送信中の場合には変更されない。
・ 本プロパティ値は、送信状態が送信中または書込みロック中の場合には、常に読出し可能である。
・ 本プロパティ値は、送信状態が送信中または書込みロック中でない場合は、各値に0パディングしたデータを読み出すこととなる。
(6)送信データ
送信ファイルデータを配列として示すプロパティ。
<値の詳細>
・ 全配列数:分割送信する全配列の数。
・ 分割データサイズ:分割データのバイト数。全配列数が2以上の最終配列要素以外は、分割データサイズは等しく、また、(分割データサイズ+6)がEDTサイズと等しいものとする。
・ 分割データ:分割したデータ本体。最終配列要素は、他の配列とEDTサイズを等しくし、分割データサイズ以降のデータは0パディングする。
<読出し・書込み・通知のタイミングなど>
・ 受信側ノードの送信ファイル情報通知応答を受信後に、送信側ノードから送信データの通知を行なう。
・ 送信状態が送信中でない場合は、本プロパティ値の通知や読み出しはできない。
つぎに、実施の形態4と5で説明したデータ通信の方法、手順を実現するために、図27、28、29の各プロパティを使用したシーケンスの例について、説明する。
機器立ち上げ時の処理は、各ノードの立ち上がりシーケンスでインスタンス変化クラス通知を行なうことを利用し、PUSH型ファイル転送を行なう場合は、送信側が受信側ノードのEAを、PULL型ファイル転送を行なう場合は、受信側が送信側ノードのEAを取得する。
図30は、受信側が送信側より先に立ち上がる場合のシーケンスである。
<受信側ノードが先に立ち上がり、送信側ノードが後で立ち上がったときの処理>
(1)インスタンス変化クラス通知(送信側→受信側)
立ち上げシーケンスに従い、受信側ノードに対してインスタンス変化クラスの通知を行なう。この通知を受けた受信側ノードのアプリケーションは、ファイル送信サービスオブジェクトを搭載している送信側ノードのEAを取得することが可能となる。(送信側ノード通知サービス)
(2)動作状態通知(受信側→送信側)
受信側ノードがPUSH型でファイル受信が可能な場合、インスタンス変化クラスの通知を受けてファイル受信サービスオブジェクトの動作状態通知を行なう。この通知を受けた送信側ノードのアプリケーションは、ファイル受信サービスオブジェクトを搭載している受信側ノードのEAを取得することが可能となる。(受信側ノード通知サービス)
図31は、送信側が受信側より先に立ち上がる場合のシーケンスである。
<送信側ノードが先に立ち上がり、受信側ノードが後で立ち上がったときの処理>
(1)インスタンス変化クラス通知(受信側→送信側)
立ち上げシーケンスに従い、送信側ノードに対してインスタンス変化クラスの通知を行なう。この通知を受けた送信側ノードのアプリケーションは、ファイル受信サービスオブジェクトを搭載している受信側ノードのEAを取得することが可能となる。(受信側ノード通知サービス)
(2)動作状態通知(送信側→受信側)
送信側がPULL型でファイル送信が可能な場合、インスタンス変化クラスの通知を受けて送信側ノードはファイル送信サービスオブジェクトの動作状態通知を行なう。この通知を受けた受信側のアプリケーションは、ファイル送信サービスオブジェクトを搭載している送信側ノードのEAを取得することが可能となる。(送信側ノード通知サービス)
自発通信(PUSH型データ通信)の処理では、送信側ノードから受信側ノードのPUSH受信用取扱オブジェクト情報を要求し、必要に応じて送信対象情報の通知を行った後、送信ファイル情報の通知に続いて、送信側ノードからの分割データ送信を行うことによりファイル送信を行う。
図32は、自発通信の代表的な通信シーケンスである。
<事前処理>
(1)取扱オブジェクト情報要求(送信側→受信側)
送信側ノードのアプリケーションが受信側ノードの受信サービスオブジェクトに対して、PUSH受信用取扱オブジェクト情報を読出し要求する。(取扱オブジェクト情報要求サービス)送信側ノードのファイル転送サービスミドルウェアは、受信側ノードに受信サービスオブジェクトが複数搭載されていることを想定し、インスタンス全体への一斉同報を行っても良い。
(2)取扱オブジェクト情報応答(受信側→送信側)
要求を受けて、受信側ノードはPUSH受信用取扱オブジェクト情報を応答送信する。
なお上述の(1)、(2)は省略することができる。
<送信処理>
(3)送信対象情報通知(送信側→受信側)
送信側ノードのアプリケーションは、受信側ノードの受信取扱オブジェクト情報が複数ある場合、どの機器オブジェクトに対してデータを送信するかを指定するために、送信対象情報を送信する。この通知は、アプリケーションからファイル転送サービスミドルウェアに対する要求がトリガとなる。(ファイル送信要求サービス)
(4)送受信設定書込要求(受信側→送信側)
受信側ノードのアプリケーションは送信対象情報通知を受けて、送信対象となるデータを受信可能な場合には送信サービスオブジェクトの送受信設定を「送信開始」にする書込み要求を行なう。送信対象となるデータを取得できない場合、あるいは取得しない場合は、送受信設定を0x01:強制終了とする書込み要求を行なう。(送信設定書込みサービス)
(5)送信ファイル情報通知(送信側→受信側)
送信側ノードのファイル転送サービスミドルウェアは、送受信設定書込要求(4)において「送信開始」を受信後、受信側ノードに対して送信ファイルのサイズ、チェックサムなどの送信ファイル情報を通知する。また、ファイル送信で使用する送信サービスオブジェクトの「送信状態」プロパティを0x20:送信中とする。
(6)送信ファイル情報通知応答(受信側→送信側)
受信側ノードは、送信側ノードに通知応答を返す。
(7)分割データ送信(送信側→受信側)
送信側ノードは受信側ノードに対して、ファイルを分割して連続送信する。
(8)指定分割データ要求(受信側→送信側)
受信側ノードは最終分割データを受信した後、または分割データ受信待ちのタイムアウト(=1分)が発生した時点で、正しく受信できなかった分割データがある場合は、分割データの配列要素番号を指定して送信要求を行う。
(9)指定分割データ送信(送信側→受信側)
送信側ノードは、受信側ノードから指定分割データの要求があった場合には必ず、指定された配列要素の分割データを送信する。
なお上述の(8)、(9)は省略することができる。
(10)送信完了設定(受信側→送信側)
受信側ノードのファイル転送サービスミドルウェアは送信側ノードに対して、ファイルが正しく受信できた場合または何らかの理由により送信処理を終了する場合に、送受信設定を0x00:正常終了、もしくは0x01:強制終了に設定する。
ただし、送信完了設定が行なわれない場合もある。したがって、送信側ノードは指定分割データの要求と送信完了設定のフレーム受信待ちの処理においてタイムアウト1分を設け、「送信状態」プロパティを0x00:READYに設定する。
なお、受信側ノードのファイル転送サービスミドルウェアは、分割データ送信で得た複数のデータを1つのファイルに組み立てて、送信ファイル情報通知で得たファイル情報と併せてアプリケーションに通知する。(ファイル受信通知サービス)
要求応答通信(PULL型データ通信)の処理では、受信側ノードから送信側ノードのPUSH送信用取扱オブジェクト情報を要求して送信ファイルの確認を行った後、必要に応じて送信ファイル情報収集を行い、受信側ノードが送信開始トリガーを送信する。このトリガーを受けて送信側ノードが指定対象オブジェクトの送信ファイル情報を通知し、以降はPUSH型と同じ送信処理を行う。
図33は、要求応答通信の代表的な通信シーケンスである。
<事前処理>
(1)取扱オブジェクト情報要求(受信側→送信側)
受信側ノードのアプリケーションが送信側ノードに対して、PULL送信用取扱オブジェクト情報を読出し要求する。(取扱オブジェクト情報要求サービス)受信側ノードのファイル転送サービスミドルウェアは、送信側ノードに送信サービスオブジェクトが複数搭載されていることを想定し、インスタンス全体への一斉同報を行っても良い。
(2)取扱オブジェクト情報応答(送信側→受信側)
要求を受けて、送信側ノードはPULL送信用取扱オブジェクト情報を応答送信する。
<ファイル情報収集処理>
(3)送信状態要求 (受信側→送信側)
受信側ノードのファイル転送ミドルウェアが、取扱オブジェクト情報要求(1)で得た送信側ノードの送信サービスオブジェクトに対して、送信状態を要求する。
(4)送信状態応答 (送信側→受信側)
送信側ノードが受信側ノードに対して、送信状態応答を送信する。受信側ノードは、送信状態が「READY」の場合は、書込みロックまたは送信開始トリガーを送信する。
(5)書込みロック (受信側→送信側)
他のノードが受信要求をプロテクトするために、「送受信設定」プロパティに0x02:書込みロックの書込み要求をする。送信側ノードは書込み要求に応じて、「送信状態」プロパティを0x02:書込みロックに設定する。この書込みロックは必要に応じて行う。
なお、「送受信設定」プロパティを0x02:書込みロックにセットした後には必ず、該プロパティに0x20:送信開始をセットして送信を開始するか、終了状態に設定する必要がある。
書込みロック要求の後、受信側からの何らかの書込み要求に対してタイムアウト1分を設け、送信状態を0x00:READYに設定する。
(6)送受信設定書込み応答 (送信側→受信側)
書込み要求に対する応答を行なう。
(7)送信対象情報書込み要求(受信側→送信側)
必要に応じて、送信対象情報の書込み要求をする。
(8)送信対象情報書込み応答(送信側→受信側)
書込み要求に対する応答を行なう。
なお上述の(3)〜(8)は省略することができる。
(9)送信開始トリガー(受信側→送信側)
受信側ノードのファイル転送サービスミドルウェアが送信側ノードに対して、送受信設定を0x20:送信開始にする書込み要求を行なうことにより、送信開始のトリガーを送信する。このトリガーを受けて、送信側ノードのファイル転送サービスミドルウェアは「送信状態」プロパティを0x20:送信中に設定する。
送信ファイル情報通知以降のシーケンスは自発通信の送信ファイル情報通知以降のシーケンスと同様となる。
図32に示す送信側ノードのサービスである、PUSH型ファイル送信関連サービスを以下に示す。
(1)受信側ノード通知サービス
PUSH型でファイルを送信する送信先となる受信側ノードのECHONETアドレスをアプリケーションに通知するサービス。入力データはなし、応答データは受信側ノードのECHONETアドレスとなる。
(2)取扱オブジェクト情報要求サービス
受信側ノードに対してPUSH受信用取扱オブジェクト情報の取得を行うサービス。入力データは受信側ノードのECHONETアドレス。応答データはPUSH受信用取扱取扱オブジェクト情報となる。
(3)ファイル送信要求サービス
自ノードのファイル送信オブジェクトに対してデータをセットし、PUSH型でファイル送信を行うサービス。入力データは送信対象情報、送信ファイル名称、送信ファイル属性、送信ファイル日付、送信データである送信ファイル本体へのポインタ。応答データは、送信完了または送信失敗を示す送信結果となる。
図33に示す送信側ノードのサービスである、PULL型ファイル送信関連サービスを以下に示す。
(1)書込みロック通知サービス
受信側ノードから送信側ノードの送受信設定に対して書込みロックの書込みが行われた場合、その旨をアプリケーションに通知するサービス。入力データ、応答データはない。
(2)送信対象情報通知サービス
受信側ノードから送信側ノードの送信対象情報に対して書込みが行われた場合、書き込まれた送信対象情報をアプリケーションに通知する。入力データはなし、応答データは送信対象情報となる。
(3)ファイル更新要求サービス
自ノードのファイル送信オブジェクトに対してデータをセットするサービス。ファイル送信オブジェクトの送信状態が書込みロック中または送信中の場合は、更新不可である。入力データは送信対象情報、送信ファイル名称、送信ファイル属性、送信ファイル日付、送信データである送信ファイル本体へのポインタ。応答データは更新完了または更新失敗の送信結果となる。
図32に示す受信側ノードのサービスである、PUSH型ファイル受信関連サービスを以下に示す。
(1)送信対象情報通知サービス
PUSH型ファイル送信を行う送信側ノードから送信対象情報の通知を受信した場合、受信した情報をアプリケーションに通知するサービス。入力データはなし。応答データは送信側ノードのECHONETアドレス、送信対象情報となる。
(2)送受信設定書込み要求サービス
送信対象情報通知サービスにより受け取った送信対象情報が受信可能である場合、送信側ノードのファイル送信サービスオブジェクトの送受信設定プロパティに「送信開始」書込み要求を行うサービス。入力データ、応答データはない。
(3)ファイル受信通知サービス
送信側ノードからPUSH型で送信されるファイルを受信完了した時、受信ファイルの情報をアプリケーションに対して通知するサービス。入力データはなし、応答データは送信ファイル名称、送信ファイル属性、送信ファイル日付、送信データである送信ファイル本体へのポインタとなる。
図33に示す受信側ノードのサービスである、PULL型ファイル受信関連サービスを以下に示す。
(1)送信側ノード通知サービス
PUSH型でファイルを送信する送信元となる送信側ノードのECHONETアドレスをアプリケーションに通知するサービス。入力データはなし、応答データは送信側ノードのECHONETアドレスとなる。
(2)取扱オブジェクト情報要求サービス
送信側ノードのファイル送信オブジェクトに対してPULL送信用取扱オブジェクト情報の要求を行うサービス。入力データは送信側のECHONETアドレス、応答データはPULL送信用取扱オブジェクト情報となる。
(3)ファイル受信要求サービス
送信側ノードのファイル送信サービスオブジェクトに対して、指定したファイル提供機器オブジェクト、プロパティ、ファイル番号のファイルを送信するよう要求する。ファイル転送サービスミドルウェアは、送信側ノードの送信状態の確認、送信開始トリガーの送信、ファイルの受信、受信完了設定までの一連のシーケンスを制御し、ファイルを受信完了すると「受信完了」を返すサービス。入力データは送信元となるECHONETアドレス、送信対象情報、受信処理の最初に送信ファイルサービスオブジェクトの送受信設定を書込みロックにするか否かのフラグである書込みロック設定。応答データは受信完了または受信失敗を示す受信結果となる。
(実施の形態8)
図1の構成を持つ2つの端末間でファイルの転送を行う場合のデータ通信の方法、手順を実現するためのプロパティの具体例を図34、図35、図36に示す。
図34は、データ受信サービスに関連するプロパティである。
(1)動作状態
ファイル受信サービス機能の動作(ON/OFF)を設定し、動作状態を取得する。動作ON(サービス提供)の場合は0x30、動作OFF(サービス停止)の場合は0x31となる。なお、動作OFF時は、その他のプロパティへのアクセスは保証されるものではない。
図45は、PUSH受信取扱オブジェクト情報の構成図である。
(2)PUSH受信用取扱オブジェクト情報
PUSH型で受信を行なう場合に取扱ファイルMAXバイト数やファイル提供機器オブジェクトとプロパティなどの情報を表すプロパティ。PUSH型でファイル受信を行なう場合は、本プロパティは必須である。各インスタンスにおいて本プロパティのファイル格納機器情報の値は重複してはならない。
<値の詳細>
・ 取扱ファイルMAXバイト数:PUSH受信可能な組み立て後のファイルのMAXバイト数。
・ ファイル情報数:PUSH受信可能なファイルを格納するファイル格納情報の数。最大値は40。
・ ファイル格納情報:PUSH受信可能なファイルを格納する機器の情報であるファイル格納機器情報とファイル格納機器毎に受信することが可能なファイル数を組み合わせたもの。
・ ファイル格納機器情報:ファイルを格納する機器のクラスグループコードとクラスコードとプロパティコード。
・ ファイル数:受信し保持することが可能なファイル格納機器情報毎のファイル数を表す。0〜0xFFFE=ファイル数。0xFFFF=特に制限がないことを表す。
(3)データ分割情報
受信可能なデータの最大分割サイズを表すプロパティ。送信側ノードは、通知された本プロパティ値と自ノードが送信可能な分割サイズを比較して、小さい方のサイズにファイルを分割して送信するために、読出すためのプロパティ。
<値の詳細>
・ 受信可能なEDT最大バイト数を表す。
<読出し・書込み・通知のタイミングなど>
・ 送信側が送信データ通知を行なう前に、読出しを行なう。
図35は、データ送信サービスに関連するプロパティである。
(1)動作状態
ファイル送信サービス機能の動作(ON/OFF)を設定し、動作状態を取得する。動作ON(サービス提供)の場合は0x30、動作OFF(サービス停止)の場合は0x31となる。なお、動作OFF時は、その他のプロパティへのアクセスは保証されるものではない。
図46は、PULL送信取扱オブジェクト情報の構成図である。
(2)PULL送信用取扱オブジェクト情報
PULL型でファイル送信を行なう場合に取扱ファイルMAXバイト数やファイル提供機器オブジェクトとプロパティなどを表すプロパティ。各インスタンスにおいて本プロパティのファイル提供機器情報の値は重複してはならない。
PULL型でファイル送信を行なう場合は、本プロパティは必須である。
<値の詳細>
・ 取扱ファイルMAXバイト数:PULL送信可能な分割前のファイルのMAXバイト数。
・ ファイル提供情報数:PULL送信可能なファイルを提供するファイル提供情報の数。最大値は40。
・ ファイル提供情報:PULL送信可能なファイルを提供するファイル提供機器情報とファイル提供機器情報毎に保持しているファイル数を表す。
・ ファイル提供機器情報:PULL送信可能なファイルを提供する機器のクラスグループコード、クラスコード、インスタンスコードで示される機器オブジェクトとプロパティコードを組み合わせたもの。
・ ファイル数:機器オブジェクト・プロパティ毎に保持しているファイル数を表す。
<読出し・書込み・通知のタイミングなど>
・ 本プロパティ値のファイル数は、「送信状態」プロパティが送信中の場合には変更されない。
図36は、データ送信サービスに関連するプロパティである。
(3)送受信設定
受信側ノードから送信トリガや送受信結果を書き込むためのプロパティ。本プロパティ値は、書込みと同時に「送信状態」プロパティに反映される。
<値の詳細>
・ 正常終了=0x00:送信は正常終了
・ 強制終了=0x01:受信側ノードによる強制終了。
・ 送信開始=0x20:送信処理開始
<読出し・書込み・通知のタイミングなど>
・ 本プロパティへの値の書込みは、書込み直後に「送信状態」プロパティに反映され、本プロパティ値に送信開始を書き込んだ場合は「送信状態」プロパティは送信中に、その他の場合はREADYに設定される。「送信状態」プロパティが送信中の場合には、本プロパティへの書込みを行なった受信側ノード以外から本プロパティ値の書込みはできない。
・ データ送信中に本プロパティへの正常終了、または強制終了の書込みにより、送信処理の中断が可能。
(4)送信状態
自インスタンスが送信処理中か否かの送信状態を表すプロパティ。本プロパティ値が送信中の場合は、「送信ファイル情報」プロパティと「送信データ」プロパティは変更してはならない。
<値の詳細>
・ READY=0:待機中。
・ 送信中=0x20:送信処理中。
<読出し・書込み・通知のタイミングなど>
・ 「送受信設定」プロパティに書き込まれた値は、本プロパティに反映される。
・ 「送信状態」プロパティがREADYに遷移するタイミングは、1.ノード起動直後、2.「送受信設定」プロパティに0x00正常終了、0x01:強制終了Set直後、3.タイムアウト経過後、3つのタイミングである。
・ 「送信状態」プロパティが送信中に遷移するタイミングは、1.「送受信設定」プロパティに0x20:送信開始Set直後、のタイミングである。
図47は、送信対象情報の構成図である。
(5)送信対象情報
送信処理の対象となるファイル提供機器情報を特定するためのプロパティ。PUSH型では、送信側ノードは受信側ノードに本プロパティ値を通知することにより、本プロパティ値が示すファイル提供機器のファイルを送信する意思を示す。一方、PULL型では、受信側ノードは送信側ノードの本プロパティに書き込むことにより、送信側ノードでファイル提供機器のファイルを確保するように依頼する。これを受けて送信側ノードは、ファイル確保の成功,失敗に関わらず、本プロパテイ値を受信側ノードに通知する。
<値の詳細>
・ ファイル提供機器情報:取扱オブジェクト情報の中で、送信対象となるファイル提供機器情報
・ ファイル番号:ファイル提供機器情報のファイル番号。ファイル番号の付け方は、送信側ノードにおいて実装依存とする。ただし、ファイル提供機器オブジェクト/プロパティが配列扱いの場合には、ファイル番号は配列要素No.と等しくする。
<読出し・書込み・通知のタイミングなど>
・ PUSH型送信の場合は、受信側ノードのファイル受信サービスオブジェクトに対して本プロパティの通知を行なう。
・ PULL型送信の場合は、受信側ノードから本プロパティに書込みが行われる
この書き込み要求電文を受けると、送信対象情報を受信側ノードのファイル受信サービスオブジェクトに折り返し通知する。ただし、正しく書き込みが行われなかった場合はファイル番号を0xFFFFとした送信対象情報を通知する。
図48は、送信ファイル情報の構成図である。
(6)送信ファイル情報
送信対象となるファイルの名称や属性、日付情報、バイト数などの情報を表すプロパティ。本プロパティにより、PULL型での送受信の際、送受信するファイルを選択するための情報の取得が可能となる。
<値の詳細>
・ 送信ファイルの名称、日付情報、ファイルバイト数、チェックコードを示す。
・ 名称:ASCII8文字で表現されるファイル名称。ファイル名称は前詰めし、空き領域は0x00埋めする。
・ 属性:ASCII3文字で表現されるファイル属性。ファイル名称は前詰めし、空き領域は0x00埋めする。
・ 日付情報:ファイル日付を Y1Y2/MN/DD HH:MM:SSの形式で表す。
Y1=0x13〜0x63(19〜99), Y2=0x00〜0x63(00〜99), MN=0x01〜0x0C(1〜12),
DD=0x01〜0x1F(1〜31), HH=0x00〜0x17(0〜23), MM=0x00〜0x3B(0〜59),
SS=0x00〜0x3B(0〜59)
ファイルが日付情報を持たない場合は各バイトデータは0に設定される。また、Y1が0x00のときは、日付データは無効とする。
・ ファイルバイト数:送信ファイル全体のバイト数。
・ チェックコード:送信ファイル全体の各バイトを合計しその2の補数。
<読出し・書込み・通知のタイミングなど>
・ 送信側ノードは、「送受信設定」プロパティに書込みが行われ、「送信状態」プロパティが送信中に変更された場合、受信側ノードに本プロパティを通知する。
・ 本プロパティは、「送信対象情報」プロパティ値が「PULL送信用取扱オブジェクト情報」プロパティのファイル提供機器オブジェクト/プロパティに含まれていない(送信対象情報が妥当でない)場合は、本プロパティのファイルバイト数に0をセットして通知する。
図49は、送信データの構成図である。
(7)送信データ
送信ファイルデータを分割データサイズ毎に分割したデータを配列として示すプロパティ。この配列要素は連続でなければならない。
<値の詳細>
・ 配列要素No.:送信ファイルを分割データサイズごとに分割し、それぞれの分割データを送信ファイルの先頭から順に番号付けを行った番号を配列要素No.とする。
・ 全配列数:分割送信する全配列の数。
・ 分割データサイズ:分割データのバイト数。全配列数が2以上の最終配列要素以外は、分割データサイズは等しく、また、(分割データサイズ+6)がEDTサイズと等しいものとする。
・ 分割データ:送信ファイルを分割した個々のデータ。最終配列要素は、他の配列とEDTサイズを等しくし、分割データサイズ以降のデータは0パディングする。
<読出し・書込み・通知のタイミングなど>
・ 受信側ノードの送信ファイル情報通知応答を受信後に、送信側ノードから送信データの通知を行なう。
・ 「送信状態」プロパティが送信中でない場合は、不可応答を返す。
つぎに、図1の構成を持つ2つの端末間でファイルの転送を行う場合のデータ通信の方法、手順を実現するために、図34、35、36の各プロパティを使用したシーケンスの例について、説明する。なお、本実施例においては、自発通信によりファイルを転送する方式をPUSH型、要求応答通信によりファイルを転送する方式をPULL型とし、それぞれの方式のファイル転送をPUSH型ファイル転送、PULL型ファイル転送とする。
機器立ち上げ時の処理は、各ノードの立ち上がりシーケンスでインスタンス変化クラス通知を行なうことを利用し、PUSH型ファイル転送を行なう場合は、送信側が受信側ノードのEAを、PULL型ファイル転送を行なう場合は、受信側が送信側ノードのEAを取得する。
図37は、受信側が送信側より先に立ち上がる場合のシーケンスである。
<受信側ノードが先に立ち上がり、送信側ノードが後で立ち上がったときの処理>
(1)インスタンス変化クラス通知(送信側→受信側)
[送信側ノード処理]
立ち上げシーケンスに従い、受信側ノードに対してインスタンス変化クラスの通知を行なう。
[受信側ノード処理]
受信側ノードのファイル転送サービスミドルウエアは、この通知電文を受けると、アプリケーションにファイル送信サービスオブジェクトを搭載している送信側ノードのEAを通知する。(送信側ノード通知サービス)。受信側ノードのアプリケーションは、送信側ノードのEAを管理する。
(2)動作状態通知(受信側→送信側)
[受信側ノード処理] 受信側ノードのファイル転送サービスミドルウエアは、(1)インスタンス変化クラス通知を受けると、PUSH型でファイル受信が可能な全てのファイル受信サービスオブジェクトの動作状態通知を送信側ノードに通知しなければならない(必須)。
[送信側ノード処理]
送信側ノードのファイル転送サービスミドルウエアは、この通知電文を受け取ると、アプリケーションにファイル受信サービスオブジェクトを搭載している受信側ノードのEAを通知する(受信側ノード通知サービス)。送信側ノードのアプリケーションは、受信側ノードのEAを管理する。
図38は、送信側が受信側より先に立ち上がる場合のシーケンスである。
<送信側ノードが先に立ち上がり、受信側ノードが後で立ち上がったときの処理>
(1)インスタンス変化クラス通知(受信側→送信側)
[受信側ノード処理]
立ち上げシーケンスに従い、送信側ノードに対してインスタンス変化クラスの通知を行なう。
[送信側ノード処理]
送信側ノードのファイル転送サービスミドルウエアは、この通知電文を受けるとアプリケーションにファイル受信サービスオブジェクトを搭載している受信側ノードのEAを通知する(受信側ノード通知サービス)。送信側ノードのアプリケーションは、受信側ノードのEAを管理する。
(2)動作状態通知(送信側→受信側)
[送信側ノード処理]
送信側ノードのファイル転送サービスミドルウエアは、(1)インスタンス変化クラス通知を受けると、PULL型でファイル送信が可能な全てのファイル送信サービスオブジェクトの動作状態を受信側ノードに通知しなければならない(必須)。
[受信側ノード処理]
受信側のファイル転送サービスミドルウエアは、この通知電文を受け取ると、アプリケーションにファイル送信サービスオブジェクトを搭載している送信側ノードのEAを通知する(送信側ノード通知サービス)。受信側ノードのアプリケーションは送信側ノードのEAを管理する。
送信側ノードから自動発信によりファイル転送を行う場合、受信側ノードの「PUSH受信用取扱オブジェクト情報」プロパティを要求し、必要に応じて「送信対象情報」プロパティの通知を行った後、「送信ファイル情報」プロパティの通知に続いて、対象データを分割して送信を行うことによりファイル送信を行う。
図39は自発通信の代表的な通信シーケンスでであり、図41、図42は自発通信の通信シーケンスに用いる電文の例を示す図である。
<事前処理>
(1)取扱オブジェクト情報要求(送信側→受信側)
[送信側ノード処理]
送信側ノードのアプリケーションが受信側ノードの受信サービス
オブジェクトに対して、「PUSH受信用取扱オブジェクト情報」プロパティを読出し要求する。(取扱オブジェクト情報要求サービス)送信側ノードのファイル転送サービスミドルウェアは、受信側ノードに受信サービスオブジェクトが複数搭載されていることを想定し、インスタンス全体への一斉同報を行っても良い。
(2)取扱オブジェクト情報応答(受信側→送信側)
[受信側ノード処理]
(1)取扱オブジェクト情報要求を受けて、受信側ノードの全ての受信サービスオブジェクトは「PUSH受信用取扱オブジェクト情報」プロパティを応答送信する。
[送信側ノード処理]
送信側ノードのファイル転送サービスミドルウェアは、この応答電文を受けると、該電文中のSEOJを、受信側ノードのファイル送信サービスオブジェクトとして取扱オブジェクト情報とリンクして記憶し、アプリケーションに対して取扱オブジェクト情報要求サービスの応答を返す。
<送信処理>
(3)送信対象情報通知(送信側→受信側)
[送信側ノード処理]
送信側ノードのアプリケーションはファイル転送サービスミドルウェアに送信対象情報を設定する(ファイル取得通知サービス)。これを受けたファイル転送サービスミドルウエアは、送信側ノードは受信側ノードに対し送信対象情報通知を行う。(必須)このとき、ファイル転送サービスミドルウェアは、通知電文のSEOJおよびDEOJを以下のように決定する。SEOJは、送信窓口としてのファイル送信サービスオブジェクトを任意に選択する。DEOJは、受信側ノードのファイル受信サービスオブジェクト(シーケンス(2)で取得)のうち、ファイル取得通知サービスで受けたファイル提供機器情報を扱えるものを選択する。
[受信側ノード処理]
受信側ノードのファイル転送サービスミドルウェアは、この通知電文中のSEOJを送信側ノードのファイル送信サービスオブジェクトとして記憶する(送信対象情報通知サービス)。
(4)送信開始トリガー(受信側→送信側)
[受信側ノード処理]
受信側ノードのアプリケーションは(3)送信対象情報通知を受けて、ファイル転送サービスミドルウエアに対してファイル受信可能かを判断した結果を設定する(ファイル受信設定サービス)。受信側ノードのファイル転送サービスミドルウエアはファイル受信する場合には、送信対象情報通知の送信元のファイル送信サービスオブジェクトに対し「送受信設定」プロパティを0x20:送信開始に設定する送信開始トリガーを送信する。送信対象情報で指定されたファイルが取得できない場合、あるいは取得しない場合は、「送受信設定」プロパティを0x01:強制終了とする書込み要求を行なう(必須)。
[送信側ノード処理]
送信側ノードのファイル転送サービスミドルウェアは、受信側ノードの「送受信設定」プロパティに対する書込み結果をアプリケーションに通知する(ファイル送信設定通知サービス)。なお、送信側ノードのファイル転送サービスミドルウェアは、「送受信設定」プロパティへの書込みデータに応じて、「送信状態」プロパティに書込みを行う(必須)。
(5)送信ファイル情報通知(送信側→受信側)
[送信側ノード処理]
送信側ノードのアプリケーションは、ファイル送信設定サービスを受けて、ファイル転送サービスミドルウェアに送信ファイルと、送信ファイル情報を設定する(ファイル送信要求サービス)。これを受けてファイル転送サービスミドルウェアは、受信側ノードのファイル受信サービスオブジェクトに対し、送信ファイル情報を通知する(必須)。
(6)送信ファイル情報通知応答(受信側→送信側)
[受信側ノード処理]
受信側ノードは、送信側ノードに通知応答を返す。
(7)分割データ送信(送信側→受信側)
[送信側ノード処理]
(6)送信ファイル情報通知応答を受けて、送信側ノードのファイル転送サービスミドルウエアは、送信ファイルを分割データサイズ毎に分割して、受信側ノードのEAとファイル受信サービスオブジェクトを指定して配列要素NO.の小さい順に連続送信する(必須)。
(8)指定分割データ要求(受信側→送信側)
[受信側ノード処理]
受信側ノードのファイル転送サービスミドルウエアは、正しく受信できなかった分割データがある場合は、分割データの配列要素No.を指定して送信要求を送信側ノードに対して行う。
(9)指定分割データ送信(送信側→受信側)
[送信側ノード処理]
送信側ノードのミドルウェアは、受信側ノードから(8)指定分割データ要求を受けると、指定された配列要素の分割データを受信側ノードに送信する。
(10) 送信完了設定(受信側→送信側)
[受信側ノード処理]
受信側ノードのファイル転送サービスミドルウェアは、送信側ノードのファイル送信サービスオブジェクトの「送受信設定」プロパティに、ファイルが正しく受信できた場合は0x00:正常終了、何らかの理由により送信処理を終了する場合に0x01:強制終了に設定する(必須)。
なお、受信側ノードのファイル転送サービスミドルウェアは、(7)分割データ送信で得た複数のデータを1つのファイルに組み立てて、送信ファイル情報通知(5)で得たファイル情報と併せてアプリケーションに通知する(ファイル受信設定サービスの応答)。一方、送信側ノードのファイル転送サービスミドルウェアは、受信側ノードから(10)送信完了設定やファイル送信の強制終了設定を受けるとアプリケーションに通知する。ファイル受信に失敗した場合は、その旨をアプリケーションに通知する。(ファイル送信サービスの応答)。
[送信側ノード処理]
送信側ノードは、受信側ノードからの送信完了設定を受けて、「送信状態」プロパティを0x00:READYに設定する。送信完了設定が行なわれない場合に備えて、送信側ノードは指定分割データの要求と送信完了設定のフレーム受信待ちの処理においてタイムアウト1分以上を設け、タイムアウト時間経過後に「送信状態」プロパティを0x00:READYに設定する。なお、送信側ノードは該タイムアウト1分以内は、受信側ノードからの再送要求を受け付けられるようにする(必須)。
また、また、送信側ノードのファイル転送サービスミドルウェアは、(10)受信側ノードから(10)送信完了設定やファイル送信の強制終了設定を受けるとアプリケーションに通知する。(ファイル送信サービスの応答)。
要求応答通信(PULL型データ通信)の処理では、受信側ノードからファイル送信の要求を行う場合、送信側ノードの「PUSH送信用取扱オブジェクト情報」プロパティを要求して送信ファイルの確認を行った後、必要に応じて送信ファイル情報収集を行い、受信側ノードが送信開始トリガーを送信する。このトリガーを受けて送信側ノードが指定対象オブジェクトの送信ファイル情報を通知し、以降はPUSH型と同じ送信処理を行う。
図40は、要求応答通信の代表的な通信シーケンスであり、図43、図44は要求応答通信の通信シーケンスに用いる電文の例を示す図である。
<事前処理>
(1)取扱オブジェクト情報要求(受信側→送信側)
[受信側ノード処理]
受信側ノードのアプリケーションが送信側ノードに対して、「PULL送信用取扱オブジェクト情報」プロパティを読出し要求する(取扱オブジェクト情報要求サービス)。受信側ノードのファイル転送サービスミドルウェアは、送信側ノードに送信サービスオブジェクトが複数搭載されていることを想定し、インスタンス全体への一斉同報を行っても良い。
(2)取扱オブジェクト情報応答(送信側→受信側)
[送信側ノード処理]
取扱オブジェクト情報要求(1)を受けて、送信側ノードの全ての送信サービスオブジェクトは「PULL送信用取扱オブジェクト情報」プロパティを応答送信する。
[受信側ノード処理]
受信側ノードのファイル転送サービスミドルウェアは、この応答電文を受けると、該電文中のSEOJを、送信側ノードのファイル送信サービスオブジェクトとして取扱オブジェクト情報とリンクして記憶し、アプリケーションに対して取扱オブジェクト情報要求サービスの応答を返す。
<送信処理>
受信側ノードのアプリケーションが、ファイル転送サービスミドルウェアにファイル受信要求を出すことにより、以下のシーケンスによりファイル転送を行う。
(3)送信対象情報書込要求(受信側→送信側)
[受信側ノード処理]
受信側ノードのアプリケーションは、送信側ノードのファイル提供機器からファイル確保を要求するときは、ファイル転送サービスミドルウェアに対しファイル確保したい送信側ノードのEAと送信対象情報を設定する(ファイル予約サービス)。これを受けて、ファイル転送サービスミドルウェアは送信側ノードのファイル送信サービスオブジェクトに対して「送信対象情報」プロパティの書込み要求をする(必須)。
このとき、ファイル転送サービスミドルウェアは、書込要求電文のSEOJおよびDEOJを以下のように決定する。SEOJは、受信窓口としてのファイル受信サービスオブジェクトを任意に選択する。DEOJは、送信側ノードのファイル送信サービスオブジェクト(シーケンス(2)で取得)のうち、ファイル予約サービスで受けたファイル提供機器情報を扱えるものを選択する。
[送信側ノード処理]
送信側ノードにおいて、ファイル転送サービスミドルウェアは、送信対象情報書込み要求電文を受け取ると該電文中のSEA、SEOJ、DEOJを、それぞれ受信側ノードのEA、ファイル受信サービスオブジェクト、自ノードのファイル送信サービスオブジェクトとして記憶する。さらに、ファイルの予約Noを発行して、送信対象情報と共にアプリケーションに通知する(送信対象情報通知サービス)。このとき、予約NoはSEA、SEOJ、DEOJの組み合わせ毎にユニークに割り振る。送信側ノードのアプリケーションは、送信対象情報通知サービスを受け、送信対象情報で指定された機器オブジェクトとプロパティで決まるファイルを確保し、送信対象情報通知サービスで受けた予約Noと共に管理する。同じ予約Noを持つ送信対象情報通知サービスを連続して受けると、最後に受けたサービスのみが有効となる。確保したファイルは、タイムアウト時間経過後、破棄される。なお、タイムアウトはアプリケーションの実装依存となる。
(4)送信対象情報通知(送信側→受信側)
[送信側ノード処理]
送信側ノードのファイル転送サービスミドルウェアは、(3)送信対象情報書込要求により書き込まれた送信対象情報が、ファイル送信サービスオブジェクトの「PULL送信用取扱オブジェクト情報」プロパティのファイル提供機器情報に含まれているか検査し、含まれている(送信対象情報が妥当な)場合は送信対象情報を折り返し通知し、含まれていない(送信対象情報が妥当でない)場合、あるいは含まれている(送信対象情報が妥当である)がファイルが確保できない場合はファイル番号を0xFFFFとした送信対象情報を通知する(必須)。
[受信側ノード処理]
受信側ノードのファイル転送サービスミドルウェアはこの通知を受け、アプリケーションに応答を返す(ファイル予約サービスの応答)。
(5)送信状態要求 (受信側→送信側)
[受信側ノード処理]
受信側ノードのアプリケーションは、ファイル予約サービスの応答により送信側ノードがファイル確保できたと判明した場合には、ファイル受信する旨をファイル転送サービスミドルウェアに設定する(ファイル受信設定サービス)。
受信側ノードのファイル転送ミドルウェアは、(1)取扱オブジェクト情報要求で得た送信側ノードの送信サービスオブジェクトに対して、「送信状態」プロパティを要求する。
(6)送信状態応答 (送信側→受信側)
[送信側ノード処理]
読出要求に対して、応答を送信する。
(7)送信開始トリガー(受信側→送信側)
[受信側ノード処理]
ファイル受信サービス、もしくは送信状態応答のREADYを受けて、ファイル転送サービスミドルウェアは送信側ノードのファイル送信サービスオブジェクトに対して、「送受信設定」プロパティに0x20:送信開始を書き込む送信開始トリガーを送信する(必須)。
[送信側ノード処理]
送信側ノードのファイル転送サービスミドルウェアは、受信側ノードからの送信開始トリガーを受けて、「送信状態」プロパティを0x20:送信中に変更する(必須)。また、送信開始トリガー電文中のSEA、SEOJ、DEOJからファイルの予約No.を検索し、この予約No.をアプリケーションに通知する(ファイル送信設定通知サービス)。
送信ファイル情報通知以降のシーケンスは自発通信の送信ファイル情報通知以降のシーケンスと同様となる。
図39に示す送信側ノードのサービスである、PUSH型ファイル送信関連サービスを以下に示す。
(1)受信側ノード通知サービス
PUSH型でファイルを送信する送信先となる受信側ノードのECHONETアドレスをアプリケーションに通知するサービス。
入力データは受信側ノードのECHONETアドレス、応答データはなしとなる。
(2)取扱オブジェクト情報要求サービス
受信側ノードに対して「PUSH受信用取扱オブジェクト情報」プロパティの取得を行う。入力データは受信側ノードのECHONETアドレス。応答データはPUSH受信用取扱オブジェクト情報となる。
(3)ファイル取得通知サービス
受信側ノードに対して「送信対象情報」プロパティを通知することを要求する。入力データは送信対象情報。応答データはなし。
(4)ファイル送信設定通知サービス
受信側ノードからの送受信設定の書込み要求があったことを、アプリケーションに対して通知する。入力データは送信開始、または強制終了を示す送受信設定情報、応答データはなしとなる。
(5)ファイル送信要求サービス
自ノードのファイル送信サービスオブジェクトに対してデータをセットし、ファイル送信を行う。入力データは、送信ファイル名称、属性、日付、ファイルバイト数、送信ファイルへのポインタ。応答データは、送信完了または送信失敗を示す送信結果となる。
図39に示す受信側ノードのサービスである、PUSH型ファイル受信関連サービスを以下に示す。
(1)送信対象情報通知サービス
PUSH型ファイル送信を行う送信側ノードから「送信対象情報」プロパティの通知を受信した場合、受信した情報をアプリケーションに通知する。入力データは送信側ノードのECHONETアドレス、送信対象情報、応答データはなしとなる。
(2)ファイル受信設定サービス
送信対象情報通知サービスにより受け取った送信対象情報が受信可能である場合、送信側ノードのファイル送信サービスオブジェクトの「送受信設定」プロパティに送信開始の書込み要求を行、ファイルを受信する。入力データは送受信設定、送信元EA、ファイル提供機器情報、ファイル番号となる。応答データは受信結果、ファイル名称、属性、日付、ファイルバイト数、受信ファイルへのポインタとなる。
図40に示す送信側ノードのサービスである、PULL型ファイル送信関連サービスを以下に示す。
(1)送信対象情報通知サービス(ファイル予約)
受信側ノードから送信側ノードの「送信対象情報」プロパティに対して書込みが行われた場合、書き込まれた「送信対象情報」プロパティの値をアプリケーションに通知する。入力データは登録された送信対象情報の予約No.と送信対象情報、応答データはなしとなる。
(2)ファイル送信設定通知サービス
受信側ノードからの送信開始トリガーを受信したことを、アプリケーションに対して通知するサービス。入力データは予約Noと送信開始または強制終了を表す送受信設定、応答データはなしとなる。
(3)ファイル送信要求サービス
自ノードのファイル送信オブジェクトに対してデータをセットし、ファイル送信を行うサービス。入力データは予約No、送信ファイル名称、属性、日付、ファイルバイト数、送信ファイルへのポインタ。応答データは送信完了または送信失敗の送信結果となる。
図40に示す受信側ノードのサービスである、PULL型ファイル受信関連サービスを以下に示す。
(1)送信側ノード通知サービス
PUSH型でファイルを送信する送信元となる送信側ノードのECHONETアドレスをアプリケーションに通知する。入力データはは送信側ノードのECHONETアドレス、応答データはなしとなる。
(2)取扱オブジェクト情報要求サービス
送信側ノードのファイル送信オブジェクトに対して「PULL送信用取扱オブジェクト情報」プロパティの要求を行う。入力データは送信側のECHONETアドレス、応答データはPULL送信用取扱オブジェクト情報となる。
(3)ファイル予約サービス
送信側ノードのファイル送信サービスオブジェクトに対して、指定したファイル提供機器オブジェクト、プロパティ、ファイル番号のファイルを送信させるための予約を行う。ファイル転送サービスミドルウェアは、指定された情報を送信対象情報書込要求により送信側ノードに対して書込みを行い、送信側ノードからの送信対象情報通知を受ける。入力データは送信側ノードのECHONETアドレスと送信対象情報。応答データは予約完了または予約失敗を表す予約結果となる。
(4)ファイル受信設定サービス
送信側ノードのファイル送信サービスオブジェクトに対して、ファイル予約サービスにより予約したファイルを送信するよう要求する。ファイル転送サービスミドルウエアは、送信側ノードの送信状態の確認、送信開始トリガーの送信、ファイルの受信、受信完了設定までの一連のシーケンスを制御し、ファイルを受信完了すると「受信完了」を返す。入力データは受信許可または受信不可を表す送受信設定、送信元となるECHONETアドレス、送信対象情報。応答データは受信完了または受信失敗を示す受信結果、受信ファイル名称、属性、日付、ファイルバイト数、受信ファイル本体へポインタとなる。
なお、本発明において、コントローラのように、複数の種々の端末機器と通信を行う通信機器の場合は、データ通信機能テーブルを複数個備え、一旦共通化したテーブルを保存できるようにして、次回のデータ通信に使うようにしてもよい。
なお、本発明のデータ通信方法のプログラムを記録した記録媒体は、プログラムを記録したROM、RAM、フレキシブルディスク、CD−ROM、DVD、メモリカード、ハードディスクなどの記録媒体をいう。また、電話回線、搬送路などの通信媒体も含む概念である。
本発明のデータ通信を行う通信機器の構成図の一例を示す図である。 エアコンとコントローラのデータ通信機能テーブルのデータ通信前状態を示す図である。 送信データ情報の一例を示す図である。 エアコンとコントローラのデータ通信機能テーブルのデータ通信後状態を示す図である。 照明とコントローラのデータ通信機能テーブルのデータ通信前状態を示す図である。 照明とコントローラのデータ通信機能テーブルのデータ通信後状態を示す図である。 コントローラと電子レンジのデータ通信機能テーブルのデータ通信前状態を示す図である。 コントローラと電子レンジのデータ通信機能テーブルのデータ通信後状態を示す図である。 データ送信サービスに関連するプロパティの例を示す図である。 データ送信サービスに関連するプロパティの例を示す図である。 データ受信サービスに関連するプロパティの例を示す図である。 自発通信の通信シーケンスの例を示す図である。 自発通信の通信シーケンスに用いる電文の例を示す図である。 要求応答通信の通信シーケンスの例を示す図である。 要求応答通信の通信シーケンスに用いる電文の例を示す図である。 要求応答通信の通信シーケンスに用いる電文の例を示す図である。 別のデータ通信機能テーブルのデータ通信前状態を示す図である。 別のデータ通信機能テーブルのデータ通信後状態を示す図である。 端末機器の送信機能テーブルと、コントローラの受信機能テーブルを示す図である。 データ受信サービスに関連するプロパティの例を示す図である。 データ送信サービスに関連するプロパティの例を示す図である。 データ送信サービスに関連するプロパティの例を示す図である。 データ通信に関するノード立ち上げシーケンスの例を示す図である。 データ通信に関するノード立ち上げシーケンスの例を示す図である。 自発通信の通信シーケンスの例を示す図である。 要求応答通信の通信シーケンスの例を示す図である。 データ受信サービスに関連するプロパティの例を示す図である。 データ送信サービスに関連するプロパティの例を示す図である。 データ送信サービスに関連するプロパティの例を示す図である。 データ通信に関するノード立ち上げシーケンスの例を示す図である。 データ通信に関するノード立ち上げシーケンスの例を示す図である。 自発通信の通信シーケンスの例を示す図である。 要求応答通信の通信シーケンスの例を示す図である。 データ受信サービスに関連するプロパティの例を示す図である。 データ送信サービスに関連するプロパティの例を示す図である。 データ送信サービスに関連するプロパティの例を示す図である。 データ通信に関するノード立ち上げシーケンスの例を示す図である。 データ通信に関するノード立ち上げシーケンスの例を示す図である。 自発通信の通信シーケンスの例を示す図である。 要求応答通信の通信シーケンスの例を示す図である。 自発通信の通信シーケンスに用いる電文の例を示す図である。 自発通信の通信シーケンスに用いる電文の例を示す図である。 要求応答通信の通信シーケンスに用いる電文の例を示す図である。 要求応答通信の通信シーケンスに用いる電文の例を示す図である。 PUSH受信取扱オブジェクト情報の構成図である。 PULL送信取扱オブジェクト情報の構成図である。 送信対象情報の構成図である。 送信ファイル情報の構成図である。 送信データの構成図である。 本発明による通信方法に基づいてデータを送受信する通信システム100の構成を示す図である。
符号の説明
1、2 通信機器
3 ネットワーク
10、20 CPU
11、21 メモリ
12、22 データ通信制御部
13、23 メモリ管理部
14、24 ネットワーク制御部
15、25 データ通信機能テーブル
16、26 テーブル共通化制御部
17、27 テーブル値読出し部
18、28 テーブル値書込み部
19、29 テーブル共通化処理部
100 通信システム
101、111 アプリケーションソフトウェア
102、112 サービスミドルウェア
103、113 サービスAPI
104−1、104−2 基本API
105 通信ミドルウェア
106 機器オブジェクト
107、117 サービスオブジェクト
108 下位通信ソフトウェア
109 共通下位通信インターフェース

Claims (7)

  1. ホームネットワークにおいて、データをデータ受信機器に送信するデータ送信機器であって、前記データは、ホームネットワーク上の機器に関する情報を規定する機器オブジェクトのプロパティに対応するものであって、
    前記データ受信機器からのデータ送信要求を受けて前記データを送信するプル送信に関連するプル送信情報と、データ送信処理中か否かの送信状態を表す送信状態プロパティと、送信対象となる前記データの属性に関連する送信データ情報プロパティとを含むデータ送信オブジェクトを記憶するデータ送信オブジェクト記憶手段と、
    前記データ受信機器からの前記プル送信情報の要求を受信する要求受信手段と、
    前記要求受信手段が前記プル送信情報の要求を受信した場合に、前記データ受信機器に前記プル送信情報を送信するプル送信情報送信手段と、
    を具備し、
    前記プル送信情報は、前記プル送信が可能な分割前の前記データの最大サイズを示す最大サイズ情報と、前記プル送信が可能な前記データを提供する機器の情報であるデータ提供機器情報と前記データ提供機器情報毎に保持しているデータ数とを含むデータ提供情報と、を含み、
    前記データ受信機器から送信処理の対象となるデータ提供情報を特定する送信対象情報として、送信対象となるデータ提供機器情報と前記データ提供機器情報のデータ番号とを受信し、前記送信対象情報に基づくデータの確保を判定し、
    前記送信状態プロパティが送信中に変更された場合、前記送信データ情報プロパティを前記データ受信機器へ通知することを特徴とするデータ送信機器。
  2. 前記送信データ情報プロパティの属性として、前記データの名称、日付情報、バイト数を含む請求項1記載のデータ送信機器。
  3. 前記送信対象情報が示すデータ提供機器情報がプル送信情報に含まれていない場合は、前記送信データ情報プロパティのバイト数を0にセットする請求項2記載のデータ送信機器。
  4. 前記送信データオブジェクトは、前記データを所定の分割データサイズ毎に分割し、前記データの先頭から順に番号付けを行った送信データを含む請求項1から3のいずれか一項に記載のデータ送信機器。
  5. ホームネットワークにおいて、データをデータ受信機器に送信するデータ送信方法であって、前記データは、ホームネットワーク上の機器に関する情報を規定する機器オブジェクトのプロパティに対応するものであって、
    前記データ受信機器からのデータ送信要求を受けて前記データを送信するプル送信に関連するプル送信情報と、データ送信処理中か否かの送信状態を表す送信状態プロパティと、送信対象となる前記データの属性に関連する送信データ情報プロパティとを含むデータ送信オブジェクトを記憶し、
    前記データ受信機器からの前記プル送信情報の要求を受信し、
    前記要求受信手段が前記プル送信情報の要求を受信した場合に、前記データ受信機器に前記プル送信情報を送信し、
    前記プル送信情報は、前記プル送信が可能な分割前の前記データの最大サイズを示す最大サイズ情報と、前記プル送信が可能な前記データを提供する機器の情報であるデータ提供機器情報と前記データ提供機器情報毎に保持しているデータ数とを含むデータ提供情報と、を含み、
    前記データ受信機器から送信処理の対象となるデータ提供情報を特定する送信対象情報として、送信対象となるデータ提供機器情報と前記データ提供機器情報のデータ番号とを受信し、前記送信対象情報に基づくデータの確保を判定し、
    前記送信状態プロパティが送信中に変更された場合、前記送信データ情報プロパティを前記データ受信機器へ通知することを特徴とするデータ送信方法。
  6. ホームネットワークにおいて、データをデータ受信機器に送信するデータ送信方法をコンピュータに実行させるためのデータ送信プログラムであって、前記データは、ホームネットワーク上の機器に関する情報を規定する機器オブジェクトのプロパティに対応するものであって、
    前記データ受信機器からのデータ送信要求を受けて前記データを送信するプル送信に関連するプル送信情報と、データ送信処理中か否かの送信状態を表す送信状態プロパティと、送信対象となる前記データの属性に関連する送信データ情報プロパティとを含むデータ送信オブジェクトを記憶し、
    前記データ受信機器からの前記プル送信情報の要求を受信し、
    前記要求受信手段が前記プル送信情報の要求を受信した場合に、前記データ受信機器に前記プル送信情報を送信し、
    前記プル送信情報は、前記プル送信が可能な分割前の前記データの最大サイズを示す最大サイズ情報と、前記プル送信が可能な前記データを提供する機器の情報であるデータ提供機器情報と前記データ提供機器情報毎に保持しているデータ数とを含むデータ提供情報と、を含み、
    前記データ受信機器から送信処理の対象となるデータ提供情報を特定する送信対象情報として、送信対象となるデータ提供機器情報と前記データ提供機器情報のデータ番号とを受信し、前記送信対象情報に基づくデータの確保を判定し、
    前記送信状態プロパティが送信中に変更された場合、前記送信データ情報プロパティを前記データ受信機器へ通知することを特徴とするデータ送信プログラム。
  7. 請求項6に記載のデータ送信プログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2005048185A 2002-03-13 2005-02-24 データ通信システム Expired - Fee Related JP4025331B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005048185A JP4025331B2 (ja) 2002-03-13 2005-02-24 データ通信システム

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP2002068651 2002-03-13
JP2002211453 2002-07-19
JP2002227869 2002-08-05
JP2002265663 2002-09-11
JP2005048185A JP4025331B2 (ja) 2002-03-13 2005-02-24 データ通信システム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2003068514A Division JP3667322B2 (ja) 2002-03-13 2003-03-13 データ通信方法

Publications (3)

Publication Number Publication Date
JP2005176407A JP2005176407A (ja) 2005-06-30
JP2005176407A5 JP2005176407A5 (ja) 2006-03-09
JP4025331B2 true JP4025331B2 (ja) 2007-12-19

Family

ID=34743906

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005048185A Expired - Fee Related JP4025331B2 (ja) 2002-03-13 2005-02-24 データ通信システム

Country Status (1)

Country Link
JP (1) JP4025331B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11483362B2 (en) 2017-08-03 2022-10-25 Aptpod, Inc. Client apparatus, data collection system, data transmission method, and program
US10783010B2 (en) * 2018-09-24 2020-09-22 Salesforce.Com, Inc. Offline briefcase synchronization

Also Published As

Publication number Publication date
JP2005176407A (ja) 2005-06-30

Similar Documents

Publication Publication Date Title
KR100565000B1 (ko) 데이터 통신 방법
US6092078A (en) Method and apparatus for interfacing network peripheral devices with a browser
EP1638290B1 (en) System, method and intermediary server for transmitting operational requests and responses between apparatuses
KR100874773B1 (ko) 복수의 디바이스들간의 데이터 동기화를 가능하게 하는방법, 디바이스 및 시스템
JP2006345560A (ja) スキャナからネットワークを介してクライアント・コンピュータに画像情報を伝送するための画像伝送方法、画像伝送システム、コンピュータにより利用可能な媒体、および、メモリ
JP2003348086A (ja) ネットワーキング方法およびその装置
MXPA04005736A (es) Sistema y metodo para descargar informacion usando un representante.
JP3877738B2 (ja) 個別に独立して存在するネットワークを接続する装置及び方法
US20190097685A1 (en) File transmission/reception device and control method of file transmission/reception device
JP4025331B2 (ja) データ通信システム
JP2001256308A (ja) 介護情報交換方法および介護情報交換システム
JP2004139586A (ja) 仲介装置、通信システム、仲介装置の制御方法、プログラム及び記録媒体
JP3667322B2 (ja) データ通信方法
JP3728448B2 (ja) データ通信システム
JP3728444B2 (ja) データ通信システム
JP3728445B2 (ja) データ送信機器及びデータ送信方法
JP3728446B2 (ja) データ通信システム
JP3728447B2 (ja) データ通信システム
CN100484070C (zh) 通信控制装置及方法
CN111884938A (zh) 路由器信息采集方法及装置
JP4160480B2 (ja) 仲介装置、通信システム、仲介装置の制御方法、プログラム及び記録媒体
CN106105253A (zh) 控制器、控制系统以及控制系统的控制方法
US20060080340A1 (en) Communication system, communication apparatus, and communication method
JPH11239170A (ja) 分散型メールシステム並びにメール到着確認用プログラムを記録した記録媒体
JP2004334427A (ja) 通信装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060119

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060119

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070822

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070904

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071004

R150 Certificate of patent or registration of utility model

Ref document number: 4025331

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101012

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111012

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121012

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131012

Year of fee payment: 6

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees