JP2007174247A - 送信装置、受信装置、送信プログラム、受信プログラム、および記録媒体 - Google Patents

送信装置、受信装置、送信プログラム、受信プログラム、および記録媒体 Download PDF

Info

Publication number
JP2007174247A
JP2007174247A JP2005368702A JP2005368702A JP2007174247A JP 2007174247 A JP2007174247 A JP 2007174247A JP 2005368702 A JP2005368702 A JP 2005368702A JP 2005368702 A JP2005368702 A JP 2005368702A JP 2007174247 A JP2007174247 A JP 2007174247A
Authority
JP
Japan
Prior art keywords
data
communication
reception
transmission
control unit
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.)
Pending
Application number
JP2005368702A
Other languages
English (en)
Inventor
Yoshinori Nishioka
良典 西岡
Masuo Shiomi
益男 塩見
Azusa Umemoto
あずさ 梅本
Seiichi Senoo
静一 妹尾
Katsuya Nakagawa
克哉 中川
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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP2005368702A priority Critical patent/JP2007174247A/ja
Publication of JP2007174247A publication Critical patent/JP2007174247A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Selective Calling Equipment (AREA)

Abstract

【課題】通信不具合の内容に応じた適切な送信処理を行う。
【解決手段】受信装置において受信処理の滞りが発生したことを検出する処理状況検出部1と、受信装置へのデータ送信時に通信エラーが生じたことを検出する通信状況検出部2とを備え、処理状況検出部1によって受信処理の滞りが発生したことを検出したときと、通信状況検出部2によって通信エラーを検出したときとで、制御部11に異なる処理を行わせる。
【選択図】図1

Description

本発明は、データ送信を行う送信装置およびそれを受信する受信装置に関するものであり、より詳細には通信不具合が生じた時に不具合の内容に応じて適切な処理を行える送信装置および受信装置に関するものである。
近年、携帯端末から画像データ(コンテンツ)などのデータをテレビなどの表示装置に送信して表示させたり、プリンタに送信して印刷させたりする用途に無線通信技術が利用されている。また、このような無線通信において送信される画像データ等は高解像度化が進んでおり、単一の画像データであっても大容量化している。また、複数の画像データを一括して送信する場合には、一度に送信するデータは一層大容量になる。
これらデータを送信するには、受信側の装置(例えば表示装置やプリンタなど)が備える受信バッファや記憶装置の容量によっては、全てのデータを一度の送信処理で処理できない場合がある。また、特に、距離の離れた装置間での通信などでは、通信エラーや通信失敗が生じ易く、その場合にはデータの再送が必要になる。
ところが、受信側での処理が間に合わないことに起因する処理待ち状態と、通信の際の単純なエラーとを区別せずに一括してエラーと判断すると、処理待ちの状態であるにもかかわらず通信を中断してしまったり、再送信などの余計な操作を使用者に強いてしまったり、余計な待ち時間が生じて電力の消費量を増大させてしまったりする場合がある。
つまり、通信エラーではなく受信側装置の処理が滞ったために通信が待たされているような場合には、直ちに再送信を行っても受信側装置は再送信されたデータの処理を実行できない。したがって、通信不具合(通信異常)が生じた時には、不具合の内容に応じて適切な処理を行う必要がある。
不具合の内容に応じた処理を行う通信装置として、例えば特許文献1には、受信側の装置に異常が発生したことを検出すると、ジョブの実行に支障がないかを判断し、支障がある場合は送信側装置にその旨を通知することが記載されている。
また、特許文献2には、通信異常を検出した場合に、その異常の状況を判別して該当するエラーコードを決定してエラーコード別に管理し、後でそのエラーコードに基づいて状況を解析する技術が開示されている。
また、特許文献3には、受信側端末でデータメモリの空き容量が不足したときその不足容量が回復するまでの待ち時間を算出して送信側端末に通知し、待ち時間が経過してから送信側端末が通信回線を再接続する技術が開示されている。
特開平11−103363号公報(公開日:1999年4月13日) 特開平3−259642号公報(公開日:1991年11月19日) 特開2001−298602号公報(公開日:2001年10月26日)
しかしながら、上記特許文献1〜3の技術では、通信不具合の内容に応じたタイムリーな送信処理を行うことができないという問題がある。
つまり、上記特許文献2の技術は、通信異常の状況を判別して状況別に発生回数をカウントし、致命的エラーに至ったときにこのカウントを読み出してエラーに至る経緯を解析することが開示されているだけであり、エラーが発生したときにエラーの内容に応じたタイムリーな送信処理を行うものではない。
また、上記特許文献1では、受信側装置で生じた異常が送信側装置に通知されるだけであり、通知された内容に基づいて使用者がその後の処置を判断し、さらに送信側装置への操作入力を行う必要があるので、エラーの内容に応じたタイムリーな送信処理を行うことはできない。また、通知された内容に基づいて使用者がその後の処置を判断し、さらに送信側装置への操作入力を行う必要があるので、使用者にとって不便である。
また、特許文献3では、通信不具合が通信エラー(受信側装置のメモリの空き容量が不足している場合以外の通信不具合)である場合の処理については何ら開示されておらず、通信エラーの場合にタイムリーな送信処理を行うことができない。
また、特許文献3の技術は、受信側装置が送信側装置に待ち時間を通知し、送信側装置は待ち時間が経過するまで受信側装置との通信回線を切断し、待ち時間が経過すれば受信側装置との通信回線を接続する。つまり、送信側端末は、待ち時間が経過すれば自動的に通信回線を接続して送信を行う。このため、使用者は、いつ送信が再開されるのかがわからない。
したがって、通信可能な状態とするために何らかの条件がある場合(例えば、通信可能な距離が短いために受信側装置から所定の距離以内から送信処理を行う必要がある場合、受信側装置の受信可能な角度範囲が決まっている場合、指向性のある通信媒体(赤外線等)を用いて通信を行うために送信側装置の発光部を受信側装置の受光部に向ける必要がある場合、通信のために送信側装置のアンテナを引き出す等の処理が必要な場合、共通の通信回線に複数の通信装置が接続されており通信可能な状態にする装置を手動で切り替える必要がある場合など)には、使用者は、待ち時間が経過して再送信が行われるまで通信可能な状態を維持するための処置を行う必要がある。このため、使用者の負担が大きくなる。また、通信可能な状態を維持するために、電力の消費が必要な場合もある。
本発明は、上記の問題に鑑みてなされたものであり、その目的は、通信不具合の内容に応じた適切な送信処理を行える送信装置および受信装置を提供することにある。
本発明の送信装置は、上記の課題を解決するために、受信装置にデータを送信する送信装置であって、上記受信装置において受信処理の滞りが発生したことを検出する処理状況検出手段と、上記受信装置へのデータ送信時に通信エラーが生じたことを検出する通信状況検出手段と、上記処理状況検出手段によって上記受信処理の滞りが発生したことを検出したときと、上記通信状況検出手段によって通信エラーを検出したときとで、異なる処理を行う制御手段とを備えていることを特徴としている。
ここで、上記受信処理の滞りとは、送信装置と受信装置との間の伝送路では通信エラーが生じていないものの、受信装置の状態によって受信処理が滞ってしまうことを意味する。例えば、受信装置の受信バッファの容量が不足してオーバーフローしてしまった場合や、そのままのペースで送信を続けるとオーバーフローが発生してしまう場合などが考えられる。また、上記通信エラーとは、送信装置と受信装置との間の伝送路で生じるエラーであり、例えば、受信装置の受信したデータにパリティエラーやCRCエラーが生じた場合や、送信装置からデータ送信した後、所定の時間が経過しても受信装置に受信されなかった場合などが含まれる。
上記の構成によれば、受信処理の滞りが発生した場合には処理状況検出手段がそれを検出し、通信エラーが発生した場合には通信状況検出手段がそれを検出する。そして、上記制御手段は、受信処理の滞りが発生したときと通信エラーが発生したときとで、その後の処理を切り替えて異なる処理を行う。これにより、通信不具合の内容に応じた適切な送信処理を行うことができる。
なお、上記処理状況検出手段は、上記受信装置にデータを送信した後、該受信装置から返信されてくる返信データに基づいて、該受信装置において受信処理の滞りが発生したことを検出する構成であってもよい。このように、受信装置からの返信データに基づいて受信処理の滞りを検出することで、適切な検出を行うことができる。
また、上記処理状況検出手段は、上記受信装置から返信されてくる返信データに基づいて、該受信装置において発生した受信処理の滞りが解消するまでの待ち時間を検出する構成としてもよい。このように、受信処理の滞りが解消するまでの待ち時間を検出することで、その後の処理を適切に行うことができる。
また、上記通信状況検出手段は、上記受信装置にデータを送信した後、該受信装置から返信されてくる返信データに基づいて、上記通信エラーを検出する構成であってもよい。このように、受信装置からの返信データに基づいて通信エラーを検出することで、適切な検出を行うことができる。
また、上記受信装置にデータを送信してからの経過時間を計時する計時手段を備え、上記通信状況検出手段は、上記計時手段の計時時間が所定の時間に達するまでに上記受信装置から返信データを受信しなかったときに、上記通信エラーが生じたと判断する構成としてもよい。上記の構成によれば、送信したデータが受信装置に到達しなかった場合や、受信装置が返信データを送信できない状態の場合であっても、通信エラーとして検出することができる。
また、上記制御手段は、上記処理状況検出手段によって上記受信装置における処理の滞りを検出した場合には上記受信装置へのデータの送信を中断し、上記通信状態検出手段によって通信エラーを検出した場合には通信エラーの生じたデータを再送する構成としてもよい。
受信装置において受信処理の滞りが発生した場合、その滞りが解消するまでにデータを再送しても、受信装置では再送されたデータを適切に処理できない。また、再送のための電力を無駄に消費することになる。一方、通信エラーの場合には、データを再送することで正常に受信させられる可能性がある。そこで、上記の構成によれば、受信処理の滞りが発生した場合にはデータの送信を一端中断し、通信エラーの場合には通信エラーの生じたデータを再送する。これにより、通信不具合の内容に応じた適切な送信処理を行うことができる。
また、上記受信装置における処理状況を使用者に通知するための通知装置を備え、上記制御手段は、上記受信装置において受信処理の滞りが生じたことを上記通知装置によって使用者に通知する構成としてもよい。なお、上記通知装置としては、例えば、液晶表示パネル等の表示装置、スピーカ等の音声出力装置、バイブレーター等の振動出力装置、LED等の発光装置などを用いることができる。
上記の構成によれば、受信装置において受信処理の滞りが生じたことを使用者に知らせることができる。したがって、使用者は、その後の操作等を適切に判断できる。例えば、上記送信装置が指向性を有する通信媒体(赤外線,超音波等)を用いてデータの送信を行う送信装置の場合、使用者は、受信処理の滞りを把握することで、送信のために送信装置を所定の方向に向けた状態を解除するかどうかを判断できる。
また、上記受信装置における処理状況を使用者に通知するための通知装置を備え、上記制御手段は、上記通知装置によって上記待ち時間を使用者に通知する構成としてもよい。
上記の構成によれば、受信装置における受信処理の滞りが解消するまでの待ち時間を使用者に知らせることができる。したがって、使用者は、その後の操作等をより適切に判断できる。
また、上記処理状況検出手段が上記待ち時間を検出してからの経過時間を計時する計時手段を備え、上記制御手段は、上記待ち時間が経過したときに、待ち時間が経過したことを上記通知装置によって使用者に通知する構成としてもよい。
上記の構成によれば、使用者に、受信装置における受信処理の滞りが解消したことを知らせることができる。これにより、使用者は、例えば通信に失敗したデータを再送するなど、その後の処理を適切に行うことができる。
また、使用者からの入力指示を受け付ける入力手段と、上記処理状況検出手段が上記待ち時間を検出してからの経過時間を計時する計時手段とを備え、上記制御手段は、上記待ち時間が経過するまでの期間、上記入力指示を無効にする構成としてもよい。
上記の構成によれば、受信装置において受信処理の滞りが生じている期間、使用者の入力指示を無効にする。これにより、受信処理の滞りが生じている期間中に、例えば通信に成功していないデータを誤って消去してしまうといった不適切な処理が行われることを防止できる。
また、上記制御手段は、複数のデータを各データの通信の成否に関わらず上記受信装置に連続して送信する構成としてもよい。上記の構成によれば、1つのデータを送信する毎に通信の成否(受信装置が正常に受信できたかどうか)を確認して次のデータを送信する構成よりも、通信時間を短縮できる。
また、上記状況検出手段は、上記複数のデータを上記受信装置に送信した後、該受信装置から返信されてくる返信データに基づいて、通信時に上記受信処理の滞りによる不具合が発生したかどうかを上記各データのそれぞれについて判断する構成としてもよい。
上記の構成によれば、送信した各データのそれぞれについて、通信時に受信処理の滞りが発生したかどうかを判断できる。これにより、受信処理の滞りによる不具合が発生したときのデータに対して適切な処理を行うことができる。
また、上記通信検出手段は、上記複数のデータを上記受信装置に送信した後、該受信装置から返信されてくる返信データに基づいて、通信時に通信エラーが発生したかどうかを上記各データのそれぞれについて判断する構成としてもよい。
上記の構成によれば、送信した各データのそれぞれについて、通信時に通信エラーが発生したかどうかを判断できる。これにより、通信エラーの発生したデータに対して適切な処理を行うことができる。
また、表示装置を備え、上記制御手段は、上記受信処理の停滞による不具合が発生したデータと正常に受信されたデータとを上記表示装置に識別可能に表示する構成としてもよい。上記の構成によれば、使用者に、受信処理の停滞による不具合が発生したデータと正常に受信されたデータとを把握させることができる。
また、表示装置を備え、上記制御手段は、通信時に通信エラーが生じたデータと上記受信装置に正常に受信されたデータとを上記表示装置に識別可能に表示する構成としてもよい。上記の構成によれば、使用者に、通信エラーが発生したデータと正常に受信されたデータとを把握させることができる。
また、表示装置を備え、上記制御手段は、通信時に上記受信処理の停滞による不具合が発生したデータと通信エラーが生じたデータとを上記表示装置に識別可能に表示する構成としてもよい。上記の構成によれば、使用者に、受信処理の停滞による不具合が発生したデータと通信エラーが発生したデータとを把握させることができる。
また、使用者からの指示を受け付ける入力手段を備え、上記制御手段は、上記入力手段が上記表示装置に表示したデータのいずれか1つ以上を指定する指示を受け付けたときに、該指定されたデータを上記受信装置に送信する構成としてもよい。
上記の構成によれば、使用者は、表示装置に表示された内容を見て再送したいデータを指定するだけで、そのデータを再送させることができる。
また、上記制御手段は、通信時に上記受信装置において受信処理の滞りによる不具合が発生したと判断したデータのみを上記受信装置に再送する構成としてもよい。上記の構成によれば、制御手段が通信時に不具合の生じたデータを自動的に再送するので、使用者の負担を軽減できる。
また、上記制御手段は、送信時に受信エラーが発生したと判断したデータのみを上記受信装置に再送する構成としてもよい。上記の構成によれば、制御手段が通信エラーの発生したデータを自動的に再送するので、使用者の負担を軽減できる。
また、上記制御手段は、上記複数のデータを上記受信装置に送信する前に、該複数のデータの概略情報を上記受信装置に送信する構成としてもよい。ここで、上記概略情報とは、例えば各データのサムネイル、各データを特定するための情報を記載したリストなどである。
上記の構成によれば、受信装置にその後に送信する各データの概要を予め通知できるので、例えば大容量のデータをデータ毎に送信確認せずに送信しても、受信装置において各データについての通信エラーや受信処理の滞りによる不具合の有無の検出あるいはそれらの検出結果の管理を用意に行うことができる。また、通信時間を短縮できる。
また、本発明の他の送信装置は、受信装置に複数のデータを送信する送信装置であって、上記複数のデータを上記受信装置に送信する前に、該複数のデータの概略情報を上記受信装置に送信し、上記複数のデータを通信の成否に関わらず上記受信装置に連続して送信することを特徴としている。
上記の構成によれば、受信装置にその後に送信する各データの概要を予め通知できるので、複数のデータをデータ毎に送信確認せずに送信しても、受信装置において各データについての通信エラーや受信処理の滞りによる不具合の有無の検出あるいはそれらの検出結果の管理を容易に行うことができる。また、通信時間を短縮できる。
本発明の受信装置は、上記の課題を解決するために、送信装置から送信されてくるデータを受信する受信装置であって、受信処理の滞りが発生したことを検出する処理状況検出手段と、通信エラーが生じたことを検出する通信状況検出手段と、上記処理状況検出手段および通信状況検出手段の検出結果を含む返信データを作成するデータ作成手段と、上記処理状況検出手段が上記受信処理の滞りを検出したとき、および上記通信状況検出部が通信エラーを検出したときに、上記返信データを上記送信装置に送信する制御手段とを備えていることを特徴としている。
上記の構成によれば、受信処理の滞りが発生した場合には処理状況検出手段がそれを検出し、通信エラーが発生した場合には通信状況検出部がそれを検出する。そして、データ作成手段が、処理情報検出手段および通信状況検出手段の検出結果を含む返信データを作成し、処理状況検出手段が受信処理の滞りを検出したとき、または通信状況検出部が通信エラーを検出したときに、制御手段が上記返信データを送信装置に送信する。これにより、通信時に生じた不具合の内容を送信装置に適切に把握させることができる。したがって、送信装置において、不具合の内容に応じた適切な処理を行わせることができる。
また、上記処理状況検出手段が上記受信処理の滞りを検出したときに、当該受信処理の滞りが解消して正常に受信処理を行えるようになるまでの時間を算出する算出手段を備え、上記データ作成手段は、上記返信データに上記算出した時間を含める構成としてもよい。
上記の構成によれば、上記算出手段が、受信処理の滞りが発生したときに、それが解消して正常に受信できる状態になるまでの時間を算出し、データ作成部が上記算出した時間を返信データに含める。これにより、この返信データを送信装置に送信することで、送信装置に正常に受信できるようになるまでの待ち時間を把握させることができる。したがって、送信装置または送信装置の使用者に、不具合の内容に応じた適切な処理を行わせることができる。
本発明の他の受信装置は、送信装置から送信されてくる複数のデータを受信する受信装置であって、上記複数のデータのそれぞれについて正常に受信できたかどうかを検出する検出手段と、上記検出手段の検出結果を含む返信データを作成するデータ作成手段と、上記送信装置が上記複数のデータの送信を完了したときに、上記返信データを上記送信装置に送信することを特徴としている。
上記の構成によれば、上記複数のデータのそれぞれについて、正常に受信できたかどうかを検出手段が検出し、データ作成手段がその検出結果を含む返信データを作成する。そして、送信装置から上記複数のデータが送信された後、上記返信データを送信装置に送信する。これにより、正常に受信できたデータと正常に受信できなかったデータとを送信手段に把握させることができる。したがって、送信装置または送信装置の使用者に、受信結果に応じた適切な処理を行わせることができる。
また、本発明のさらに他の受信装置は、送信装置から送信されてくる複数のデータを受信する受信装置であって、表示装置と、上記複数のデータのそれぞれについて正常に受信できたかどうかを検出する検出手段と、上記検出手段の検出結果に基づいて、正常に受信できたデータと正常に受信できなかったデータとを上記表示装置に識別可能に表示させる制御手段とを備えていることを特徴としている。
上記の構成によれば、上記複数のデータのそれぞれについて、正常に受信できたかどうかを検出手段が検出し、上記制御手段が、検出手段の検出結果に基づいて、正常に受信できたデータと正常に受信できなかったデータとを表示装置に識別可能に表示させる。これにより、送信装置の使用者に、受信結果に応じた適切な処理を行わせることができる。
なお、上記送信装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記各手段として動作させることにより、上記送信装置をコンピュータにて実現させる送信プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に含まれる。
同様に、上記受信装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記各手段として動作させることにより、上記受信装置をコンピュータにて実現させる受信プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に含まれる。
以上のように、本発明の送信装置は、受信装置において受信処理の滞りが発生したことを検出する処理状況検出手段と、受信装置へのデータ送信時に通信エラーが生じたことを検出する通信状況検出手段と、上記処理状況検出手段によって上記受信処理の滞りが発生したことを検出したときと、上記通信状況検出手段によって通信エラーを検出したときとで、異なる処理を行う制御手段とを備えている。
それゆえ、受信処理の滞りを検出したときと通信エラーを検出したときとで、上記制御手段が異なる処理を行うことで、通信不具合の内容に応じた適切な送信処理を行うことができる。つまり、通信が正常に行われなかった場合、その原因が通信自体のエラーなのか、通信自体には問題ないが受信装置における処理の停滞によるものかによって送信装置の処理を柔軟に切り替えることで、不具合の内容に応じた適切なデータの送信を行える。
また、本発明の他の送信装置は、複数のデータを受信装置に送信する前に、該複数のデータの概略情報を受信装置に送信し、上記複数のデータを通信の成否に関わらず受信装置に連続して送信する。
これにより、受信装置にその後に送信する各データの概要を予め通知できるので、複数のデータをデータ毎に送信確認せずに送信しても、受信装置において各データについての通信エラーや受信処理の滞りによる不具合の有無の検出あるいはそれらの検出結果の管理を用意に行うことができる。また、通信時間を短縮できる。
本発明の受信装置は、上記の課題を解決するために、受信処理の滞りが発生したことを検出する処理状況検出手段と、通信エラーが生じたことを検出する通信状況検出手段と、上記処理状況検出手段および通信状況検出手段の検出結果を含む返信データを作成するデータ作成手段と、上記処理状況検出手段が上記受信処理の滞りを検出したとき、および上記通信状況検出部が通信エラーを検出したときに、上記返信データを上記送信装置に送信する制御手段とを備えている。
それゆえ、通信時に生じた不具合の内容を送信装置に適切に把握させることができるので、送信装置またはその使用者に、不具合の内容に応じた適切な処理を行わせることができる。
本発明の他の受信装置は、上記複数のデータのそれぞれについて正常に受信できたかどうかを検出する検出手段と、上記検出手段の検出結果を含む返信データを作成するデータ作成手段と、上記送信装置が上記複数のデータの送信を完了したときに、上記返信データを上記送信装置に送信する。
それゆえ、正常に受信できたデータと正常に受信できなかったデータとを送信手段に把握させることができるので、送信装置または送信装置の使用者に、受信結果に応じた適切な処理を行わせることができる。
また、本発明のさらに他の受信装置は、表示装置と、上記複数のデータのそれぞれについて正常に受信できたかどうかを検出する検出手段と、上記検出手段の検出結果に基づいて、正常に受信できたデータと正常に受信できなかったデータとを上記表示装置に識別可能に表示させる制御手段とを備えている。
それゆえ、正常に受信できたデータと正常に受信できなかったデータとを表示装置に識別可能に表示させて送信装置の使用者に受信結果を通知できるので、受信結果に応じた適切な処理を行わせることができる。
〔実施形態1〕
(1.1 送信装置100および受信装置200の構成)
本発明の一実施形態について説明する。図1は、本実施形態にかかる送信装置(コンテンツデータ送信装置)100の構成を示すブロック図である。また、図2は本実施形態にかかる受信装置(コンテンツデータ受信装置)200の構成を示すブロック図である。
なお、本実施形態では、主に、送信装置100は赤外線を用いて外部の装置とデータ通信を行う携帯電話であり、受信装置200は送信装置100から受信した画像データを記録紙に印刷するプリンタである場合について説明する。また、送信装置100が、自身に備えられる撮像手段(図示せず)によって撮影した画像データ(コンテンツデータ)、あるいはインターネット等を介して取得した画像データを受信装置200に送信する場合の例について説明する。ただし、送信装置100および受信装置200の構成はこれに限るものではない。また、送信装置100と受信装置200との間で通信されるデータは特に限定されるものではなく、例えば、二次元静止画像、三次元静止画像、二次元動画像、三次元動画像、音声、図形、テキスト等の各種のコンテンツデータであってもよい。
図1に示すように、送信装置100は、処理状況検出部1、通信状況検出部2、入力部3、入力制御部4、出力制御部5、出力部6、通信制御部7、通信部8、計時部9、記憶部10、制御部11を備えている。
処理状況検出部1は、通信を行っている相手先の受信装置におけるコンテンツ処理の進行状況を検出するものである。より詳細には、処理状況検出部1は、受信装置200から受信したパケットがステータスパケット(詳細は後述する)である場合に、このステータスパケットに格納(付加)されている情報を解析し、解析結果を制御部11に伝達する。
通信状況検出部2は、通信路の障害などによる受信失敗などの通信自体の状況を検出するものである。より詳細には、通信状況検出部2は、受信装置200から受信したパケットがACKかNACKかを判定し、データ通信に関して通信エラーが起きていないかどうかなど、通信自体の進行状況や通信エラーなどの障害状況を検出する。なお、本実施形態において、通信エラーとは、通信路における不具合等によって送信装置100から送信されたデータ等が受信装置200に到達しない場合や、受信装置200の受信したデータにパリティエラーやCRC(Cycle Redundancy Check)エラーなどの受信エラーが生じることを意味し、受信装置200自身の状態に起因する不具合(後述する「メモリFULL」,インク切れ,用紙切れ等)は含まないものとする。
入力部3は、使用者からの送信装置100に対する種々の指示を受け付け、制御部11に伝達するインターフェースであり、例えばボタンやキー等で構成されている。入力制御部4は、入力部3を制御して使用者の指示などを取込む制御を行うものである。
出力部(通知装置)6は、コンテンツデータ送信装置の状態やコンテンツ画像などを使用者に呈示するものであり、例えば液晶ディスプレイ(LCD)等の表示装置、LED等の発光手段、スピーカ等の音声出力手段、バイブレーター等の振動手段などである。なお、本実施形態では、主に、出力部6が表示装置である場合について説明する。出力制御部5は、出力部6を制御するものである。
通信部8は、受信装置200との間で赤外線を用いてデータの送受信を行うものである。通信制御部7は、通信部8の動作を制御するものである。なお、本実施形態では、通信部8は赤外線を用いて通信を行うものとするが、通信部8の用いる通信媒体は特に限定されるものではない。
計時部9は、種々の経過時間を計時するものである。
記憶部10は、コンテンツデータや送信装置100を制御するためのプログラムなどを格納するものである。
制御部11は、送信装置100に備えられる各部材の動作を制御するものである。
図2に示すように、受信装置200は、処理状況検出部12、通信状況検出部13、入力部14、入力制御部15、出力制御部16、出力部17、計時部18、算出部19、通信制御部20、通信部21、記憶部22、制御部23を備えている。
処理状況検出部12は、受信装置200におけるコンテンツ処理の進行状況を検出するものである。
通信状況検出部13は、通信路の障害などによる受信失敗などの通信自体の状況を検出するものである。例えば、通信状況検出部13は、受信したデータにパリティエラーやCRCエラーなどの受信エラーが生じたかどうかを判定する。
入力部14は、使用者からの受信装置200に対する種々の指示を受け付け、制御部23に伝達するインターフェースである。入力制御部15は、入力部14を制御して使用者の指示などを取込む制御を行うものである。
出力部17は、送信装置100から受信したコンテンツデータ等を記録紙に印刷するものであり、受信装置200がプリンタである場合、例えばプリンタのインク噴出部や紙送り部(用紙搬送部)などが含まれる。出力制御部16は、出力部17を制御し、受信したコンテンツデータ等を出力させるものである。なお、出力部17の構成はこれに限るものではなく、例えば受信したコンテンツデータ等を表示するものであってもよく、あるいは音声出力するものであってもよい。
計時部18は種々の経過時間を計時するものである。
算出部19は、コンテンツの処理に要する時間を算出するものである。
通信部21は、他の装置との間で通信(データの送受信)を行うものであり、送信装置100から送信された赤外線などを受信する。通信制御部20は、通信部21の動作を制御するものである。
記憶部22は、受信したコンテンツデータや受信側装置を制御するプログラムなどを格納するものである。
制御部23は、受信装置200に備えられる各部材の動作を制御するものである。
(1.2 通信に用いられるデータの構造)
図3は、送信装置100と受信装置200との間で通信を行う場合の使用状況を示す説明図である。この図に示すように、送信装置100から受信装置200にデータを送信する場合、使用者は送信装置100を手に持って送信装置100の発光部24を受信装置200の受光部25に向けた状態で入力部3を操作し、例えば送信装置100の記憶部10に記憶されている画像データ等を受信装置200に送信させる。受信装置200は、通信状況に応じて、後述するステータスパケット,ACK,NACK等を送信装置100に返信する。
図4は、送信装置100と受信装置200との間で通信されるデータ構造の一例を示す説明図である。この図に示すように、送信装置100と通信装置200との間の通信には、IDフィールドとデータフィールドからなるパケットが用いられる。IDフィールドには、データフィールドに格納(付加)されているデータの種別を表すIDが格納される。例えば、データフィールドに格納するデータが画像データである場合には、画像データであることを示すIDとその長さ(データサイズ)が格納される。また、通信の確認のために送信されるパケットである場合には、ACKやNACKを示すIDがIDフィールドに格納される。
また、本実施形態では、送信装置100と受信装置200との間で通信不具合が生じた場合に、受信装置200が、例えば不具合の内容や不具合が解消するまでの時間などを示すデータを含むステータスパケットを送信装置100に送信するようになっている。これにより、送信装置100では、受信したパケットの種類(ステータスパケット、ACK、NACK等)を識別し、またパケットの内容を解析することで、状況に応じた適切な処理を行うようになっている。
図5(a)は、ステータスパケット(STATUSパケット)の構成例を示す説明図である。この図に示すように、ステータスパケットは、IDフィールドと状態フィールドとoptionフィールドとから構成される。
IDフィールドには、このパケットがステータスパケットであることを示すIDが格納される。
状態フィールドには、受信装置200においてデータ受信を保留するに至った原因など、受信装置200の処理状態を示す。例えば、受信バッファにデータが溜まってきてこのまま受信を続けるとオーバーフローすること、あるいは受信バッファがオーバーフローしてしまったことを示す「メモリFULL(バッファFULL)」、インクがなくなったことを示す「インク切れ」、用紙がなくなったことを示す「用紙切れ」などである。
optionフィールドには、状態フィールドの情報を補完する内容が格納される。例えば、状態フィールドが「メモリFULL」の場合、optionフィールドには、受信バッファに溜まった内容を印刷(出力)して受信バッファに次の画像データを受信するための空き容量ができるまでの時間(待ち時間)などが格納される(図5(b)参照)。また、状態フィールドが「インク切れ」の場合には、インク切れになったインク色の情報などが格納される。また、状態フィールドが「用紙切れ」の場合には、用紙切れになった用紙の種類,サイズ等の情報などが格納される。この他、受信装置200の機能等に応じて状態フィールドとoptionフィールドに格納される情報は適宜設定される。
ここで、上記の「メモリFULL」の状態について、より詳細に説明する。受信装置(プリンタ)200は、受信した画像データを記憶部22の受信バッファに順次格納しながらFirst−in、First−outで、すなわち受信したデータから順に印刷していく。このときの印刷処理のスピードがデータの受信スピードより遅い場合、受信した画像データが受信バッファに溜まっていき、最後にはオーバーフローする。
受信装置200の処理状況検出部12は、受信バッファのデータ蓄積状況を監視して、このままのペースで受信していくと受信バッファがオーバーフローするかどうかを判断する機能を有している。そして、処理状況検出部12が、このままのペースで受信すると受信バッファがオーバーフローすると判断すると、算出部19が、受信バッファ内に溜まっているデータの量と、受信バッファからデータを読み出して印刷するスピードとから、送信装置100から受信装置200への画像データの送信を中断したあと、受信バッファに溜まった画像データを読み出して印刷し、受信バッファに次の画像データを受信するために必要な空き容量ができるまでの時間、すなわち受信装置200における処理の滞りを解消するのに要する「処理時間」を算出する。そして、受信装置200の制御部23が、処理状況検出部12の判断結果および算出部19の算出結果に基づいて、送信装置100に画像データの送信を停止させるためのステータスパケットを生成し、このステータスパケットをACKパケットの代わりに通信部21から送信装置100に送信させる。
処理状況検出部12におけるオーバーフローするかどうかの判断は、送信装置100から送信されてきて記憶部22の受信バッファに格納される単位時間あたりのデータバイト数Xと、受信バッファから印刷のために読み出される単位時間あたりのデータバイト数Yとの差X−Y(受信バッファ内のデータ増加速度)に受信バッファがオーバーフローするまでの許容時間TFを掛けた値(X−Y)×TF(TF経過した時点で増加するデータ量)と、受信バッファの残量(残容量)とを比較することにより実行される。すなわち、処理状況検出部12は、受信バッファの残量が(X−Y)×TFよりも小さい場合に、このままのペースで受信すると受信バッファがオーバーフローすると判断する。なお、受信バッファがオーバーフローするまでの許容時間TFは、受信バッファがオーバーフローしないための処理(例えば、処理状況検出部12がこのままのペースで受信すると受信バッファがオーバーフローすることを検出し、制御部23が送信装置100に画像データの送信を停止させるためのステータスパケットを生成して通信部21を介して送信装置100に送信し、送信装置100がこのステータスパケットを受信してデータ送信を中断する処理)に必要な最小時間であり、これらの各処理を行うアプリケーションや送信装置100、受信装置200における各部の性能などを加味して決められる。
(1.3 送信装置100の処理)
次に、送信装置100から受信装置200に画像データを送信する場合の処理について説明する。図6は送信装置100における処理の流れを示すフロー図であり、図7は受信装置200における処理の流れを示すフロー図である。
まず、送信装置100における処理について説明する。送信装置100の使用者は、ボタンやキー等からなる入力部3を操作し、記憶部10に格納(記憶)されている画像データを出力部(表示部)6に表示させるとともに、受信装置200に送信して印刷させたい画像を1枚または複数枚選択して指定する。制御部11は、入力部3を介して入力される使用者からの指示に応じて、記憶部10に格納している画像データを出力部6に表示させ、使用者の選択指示に応じて受信装置200に送信する画像データを選択する(S1)。
次に、使用者は、入力部3を介して選択した画像の受信装置200への送信開始指示を入力する。制御部11は、この送信開始指示を受け付けると、通信制御部7を制御し、通信部8から受信装置200に接続要求(CONNECTrequest)を送信させる(S2)。
さらに、制御部11は、受信装置200から接続応答(CONNECTresponse)を受信したかどうかを判断する(S3)。ここで、接続応答を受信していない場合には、引き続き接続応答を受信することを監視する。なお、所定時間経過しても接続応答を受信できない場合には、例えば接続要求を再送するようにしてもよく、あるいは接続できなかった旨を出力部6に表示させるようにしてもよい。
一方、接続応答を受信した場合、制御部11は、通信制御部7を制御し、通信部8から受信装置200へデータ送信を開始させる(S4)。そして、制御部11は、計時部9にデータ送信を開始してからの経過時間の計時を開始させる(タイマーをセットする)(S5)。
その後、制御部11は、通信状況検出部2に、計時部9の計時時間を監視させ、所定の時間T1が経過したかどうかを判定させる(S6)。なお、上記所定の時間T1は、通信のプロトコル等に応じて予め設定される。
S6において時間T1が経過したと判定された場合、制御部11は、通信エラーが生じたと判断し、出力制御部5を制御して出力部6に通信エラーが生じた旨を表示させる(S7)。
例えば、出力部6に「通信不可です。」、「通信エラーです。再送して下さい。」、「これ以上送信できません。しばらくしてから再送してください。」などの表示を行わせる。なお、この際、未送信の画像データを出力部6に表示させてもよい。あるいは、制御部11が未送信の画像データのサムネイル画像、リスト等を作成して出力部6に表示させてもよい。なお、この場合、送信に成功した画像データと未送信の画像データとを区別可能なように、それらの画像、サムネイル、リスト等を表示させてもよい。
図8および図9は、通信に成功した画像データと未送信の画像データとを識別可能に表示する場合の一例を示している。図8および図9では、各画像データのサムネイルの左上に表示されたチェック(レ点)が送信に成功した画像データを示している。いずれの例でも、当初送信を予定した6つの画像データのうち4つまでが送信済みであることを示している。なお、本実施形態では、S6において時間T1が経過したと判定された場合にすぐにS7の処理を行うものとしているが、これに限らず、後述するS15の処理と同様、送信に失敗した画像データを再送するようにしてもよい。
そして、制御部11は、その時点までに送信したデータなどの送信状態を示す情報(例えば複数の画像データを送信する場合にはどの画像データまで送信できたかを示す情報、あるいは各画像データを複数のデータファイルに分割して送信する場合には、どの画像データのどのデータファイルまで送信できたかを示す情報、あるいは送信に失敗した画像データやデータファイルを示す情報など)を記憶部10に保存する(S8)。さらに、制御部11は、通信制御部7を制御して通信部8から受信装置200に切断要求(DISCONNECTrequest)を送信させ、通信を切断して処理を終了する。
なお、S7で通信エラーの表示を行った後、使用者からの指示(再送指示あるいは通信切断指示)を待機し、その指示に応じた処理を行うようにしてもよい。つまり、使用者が、出力部6に表示された通信エラーに関する表示を見て、未送信の画像データを再送する指示を行うか、通信を切断するかを選択できるようにしてもよい。
また、S7で通信エラーの表示を行った後、さらに所定の時間が経過しても受信装置200からの応答がなかったときに、S8以降の処理を行うようにしてもよい。この場合、S7で通信エラーの表示を行った後、上記所定の時間が経過するまでに受信装置200からの応答があったときには、S10以降の処理を行うようにすればよい。
一方、S6において時間T1が経過していないと判定された場合、制御部11は、受信装置200からデータ(パケット)を受信したかどうかを判断する(S10)。そして、受信装置200からデータを受信していない場合にはS6に戻って引き続き通信状況検出部2に時間T1が経過したかどうかを判定させる。これに対して、S10において受信装置200からデータを受信したと判断した場合には、制御部11は、通信状況検出部2に受信したデータがACKであるかどうかを判断させる(S11)。つまり、制御部11は、通信状況検出部2に、先に送信したデータが受信装置200に正常に受信されたかどうかを判断させる。
そして、S11において通信状況検出部2がACKであると判断した場合、制御部11は、受信装置200に送信すべきデータがまだ残っているかどうかを判断する(S12)。そして、送信すべきデータがある場合、制御部11は、S4以降の処理を再び行う。また、S12において送信すべきデータが残っていないと判断した場合には、制御部11は、通信制御部7を制御して通信部8から受信装置200に切断要求(DISCONNECTrequest)を送信させ(S13)、処理を終了する。
一方、S11において通信状況検出部2が受信装置200から受信したデータはACKではないと判断した場合、制御部11は、通信状況検出部2に、受信装置200から受信したデータが通信エラーを示す信号(NACK)であるかどうかを判断させる(S14)。
そして、通信状況検出部2がNACKであると判断した場合、制御部11は、通信エラーが起こった画像データの送信がN回目の送信であるかどうかを判断する(S15)。そして、該画像データの送信回数がN回に達していない場合には、記憶部10に次の送信が何回目の送信であるかを示す情報を記憶させ、S4に戻って該画像データを再送する。制御部11は、S15において何回目の送信であるか判断する際、記憶部10に記憶させておいた送信回数に関する情報を参照する。このように、制御部11は、受信装置200からNACKを受信した場合、予め決めた適当な回数(N回;Nは任意の自然数)だけ送信に失敗した画像データを自動的にリトライ再送する。
なお、S15において該画像データの再送回数がN回目であると判断した場合、制御部11は、上記したS7〜S9の処理を行って処理を終了する。このように、制御部11は、N回目の再送に失敗するまでは、出力部6に通信エラーに関する情報を表示させずに再送処理を行うようになっている。したがって、1〜N−1回目までの再送で送信に成功した場合には、使用者は、通信エラーが生じたことを知らずにすみ、通信エラーが全く生じなかった場合と同様の操作で送信処理を終えることできる。ただし、これに限らず、制御部11が自動的に再送処理を行う際、再送処理の回数を出力部6に表示させるようにしてもかまわない。
一方、S14において通信状況検出部2がNACKではないと判断した場合、制御部11は、受信したパケットがACKでもなくNACKでもないので、ステータスパケットであると判断し、処理状況検出部1にステータスパケットに基づいて受信装置200の状態を検出させる(S16)。つまり、処理状況検出部1に、ステータスパケットの状態フィールドおよびoptionフィールドを参照して受信装置200の状態に関する情報を抽出させる。なお、制御部11が、処理状況検出部1に、受信装置200から受信したパケットのIDを参照させ、受信したパケットがステータスパケットであるかどうかを判定させ、ステータスパケットであった場合にそのステータスパケットに基づいて受信装置200の状態を検出させるようにしてもよい。
そして、制御部11は、処理状況検出部1の抽出した受信装置200の状態が「メモリFULL」であるかどうかを判断する(S17)。
S17において「メモリFULL」であると判断した場合、制御部11は、出力制御部5を制御し、処理状況検出部1がステータスパケットのoptionフィールドから読み出した待ち時間、すなわち受信装置200が受信バッファに溜まっていたデータを出力(印刷)して受信バッファに次の画像データを受信するための空き容量ができるまでの時間を、出力部6に表示させる(S18)。また、制御部11は、計時部9に「メモリFULL」のステータスパケットを受信してからの経過時間を計時させる。
この際、「メモリFULL」であることを示す表示を、待ち時間とともに表示させてもよい。例えば、「プリンタが処理中です。1分後に再送して下さい。」などの表示を出力部6に行わせてもよい。なお、表示する待ち時間は、時間の経過とともにカウントダウンさせてもよい。また、この際、未送信の画像データを出力部6に表示させてもよい。あるいは、制御部11が未送信の画像データのサムネイル画像、リスト等を作成して出力部6に表示させてもよい。なお、この場合、送信に成功した画像データと未送信の画像データとを区別可能なように、それらの画像、サムネイル、リスト等を表示させてもよい。
図10は、受信装置200の処理待ちであることを示す情報と、送信に成功した画像データおよび未送信の画像データを示す表示とを行う場合の一例を示している。図10では、各画像データのサムネイルの左上に表示されたチェック(レ点)が送信に成功した画像データを示しており、当初送信を予定した6つの画像データのうち4つまでが送信済みであることを示している。
なお、本実施形態では、受信装置200の処理待ちの状態である場合、この待ち時間が経過するまでは使用者が入力部3のボタンを操作しても制御部11がこの送信指示を受け付けないようになっている。例えば、処理待ちの期間には、入力制御部4が入力部3に対して行われた操作を制御部11に伝達しないようにしてもよく、制御部11が入力部3に対して行われた操作を伝達されてもそれを無効にするようにしてもよい。このように、受信装置200における処理の滞りが解消するまでは使用者の入力操作を受け付けないようにすることで、例えば使用者の指示によって誤ったデータ処理が行われることを防止できる。例えば、未送信のデータが誤って消去されたり、当初選択した画像データがわからなくなったり、同じデータが重複して送信されたりすることを防止できる。
また、使い勝手向上の側面から、待ち時間が経過するまでは使用者が入力部3のボタンを操作しても制御部11がこの送信指示を受け付けない旨を、ユーザに提示することが好ましい。例えば、図8や図9に示した「再送」の表示の色を変える(例えば灰色)、色を薄くするなど、表示を工夫することによって、ボタンを押す前から「今は操作できない」旨をユーザに理解させることができる。あるいは、ボタンを押したときに、エラーを想起させるような音(「ブーッ!」「コテッ」「ガシャーン!」など)を鳴らすことによって、間違った操作をした、ということを即時にユーザに伝えるようにしてもよい。あるいは、バイブレータを振動させたり、LEDを点灯させる、点灯させる色を変化させる、点滅させる、などの方法を用いてもよい。
一方、S17において「メモリFULL」ではないと判断した場合、制御部11は、出力制御部5を制御し、処理状況検出部1の抽出した受信装置200の状態に関する情報を出力部6に表示させる(S19)。例えば、受信装置200の状態がインク切れの場合、図11に示すように、出力部6に、「インク切れです:「シアン」 取り替えて再送してください。」などの表示を行わせる。この際、図11に示すように、送信に成功した画像データと未送信の画像データ、あるいはそれらのサムネイル画像、リスト等を出力部6に表示させてもよい。なお、この場合、例えば受信装置200におけるインク切れ,用紙切れ等の不具合が解消されるまで(例えば、不具合が解消した旨を示すデータが受信装置200から送信装置100に送信されるまで)は、使用者が入力部3のボタンを操作しても制御部11がその指示を受け付けない(あるいは無効にする)ようになっている。
また、制御部11は、S18またはS19の処理を行った後、あるいはS18またはS19の処理と並行して、その時点までに送信したデータなどの送信状態を示す情報(例えば複数の画像データを送信する場合にはどの画像データまで送信できたかを示す情報、あるいは各画像データを複数のデータファイルに分割して送信する場合には、どの画像データのどのデータファイルまで送信できたかを示す情報、あるいは送信に失敗した画像データやデータファイルを示す情報など)を記憶部10に保存する(S20)。さらに、制御部11は、通信制御部7を制御して通信部8から受信装置200に切断要求(DISCONNECTrequest)を送信させ(S21)、通信を一端切断させる。
その後、制御部11は、受信装置200における不具合が解消することを監視する(S22)。例えば、受信装置200における不具合が「メモリFULL」であった場合には、計時部9による計時時間(「メモリFULL」を示すステータスパケットを受信してからの経過時間)を参照し、受信装置200から通知された待ち時間(時間T2)が経過したかどうかを判断する。そして、この待ち時間が経過した場合には、受信装置200における不具合が解消したものと判断する。
また、例えば、受信装置200における不具合がインク切れや用紙切れなどであった場合には、インクの交換や用紙の補充に要する時間を予め想定して設定しておき、この時間が経過したときに、制御部11が受信装置200における不具合が解消したものとみなすようにしてもよい。この場合には、例えば、受信装置200からステータスパケットを受信してからの経過時間を計時部9に計時させておき、その計時させた時間を制御部11が参照するようにすればよい。
また、例えば、制御部11が、受信装置200から不具合が解消したこと(インクが補充されたことや、用紙が補充されたことなど)を示すデータを受信したかどうかを判断するようにしてもよい。この場合、受信装置200から送信装置100に送信される不具合が解消したことを示すデータは、画像データの通信に用いる通信媒体(本実施形態では赤外線)とは異なる通信媒体であってもよい。また、本実施形態では、受信装置200における不具合が解消されるまでは、使用者が入力部3のボタンを操作しても制御部11がその指示を受け付けないものとしているが、例えば受信装置200における不具合が解消したことを通知するためのボタンについては受け付け可能とし、このボタンが操作されたときに受信装置200の不具合が解消したと判断するようにしてもよい。
S22において、受信装置200の不具合が解消したと判断した場合、制御部11は、出力制御部5を制御し、出力部6に受信装置200の不具合が解消して通信を再開可能な状態になった旨を表示する(S23)。図12は、この場合における出力部6の表示画面の一例を示している。
その後、制御部11は、入力部3に対して未送信の画像データについての使用者からの再送指示があることを待機し(S24)、再送指示があった場合には未送信の画像データ(送信を中断した画像データ)を記憶部10から読み出し(S25)、S2以降の処理を再び行う。つまり、使用者が通信ボタンを押して通信指示(再送指示)を行うと、制御部11は、受信装置200に接続要求を送信して通信を接続し(セクションを張り)、通信が中断した画像データ(送信成功を示すチェック(レ点)の無いもの)の続きから受信装置200に再送信させる。したがって、使用者は通信指示を行うだけでよく、画像データの指定や通信接続の為の操作を行う必要がない。
(1.4 受信装置200の処理)
次に、受信装置200における処理の流れについて、図7を参照して説明する。
受信装置200の制御部23は、通信部21が送信装置100からの接続要求(CONNECTrequest)を受信することを、通信制御部20を介して監視しており(S101)、接続応答を受信した場合には接続応答(CONNECTresponse)を返信する(S102)。そして、制御部23は、計時部18に接続要求を受信してからの経過時間の計時を開始させる(S103)。
そして、制御部23は、計時部18の計時時間を監視し、所定の時間T3が経過したかどうかを判定する(S104)。なお、上記所定の時間T3は、通信のプロトコル等に応じて予め設定される。
S104において所定の時間T3が経過したと判断した場合、制御部23は、通信不可(通信エラー)と判断して通信制御部20に送信装置100との通信を切断させ(S105)、処理を終了する。
S104において所定の時間T3が経過していない場合、制御部23は、送信装置100からデータを受信したかどうかを判断する(S106)。ここで、データを受信していないと判断した場合、制御部23は、S104に戻って引き続き所定の時間T3が経過したかどうかを監視する。
S106においてデータを受信したと判断した場合、制御部23は、通信状況検出部13に、受信したデータにパリティエラーやCRCエラーなどの受信エラーが生じているかどうかを判定させる(S107)。なお、この際の判定方法は特に限定されるものではなく、従来から公知の種々の方法を用いてもよい。
そして、S107において受信エラーがあったと判定された場合、制御部23は、通信制御部20を制御して通信部21から送信装置100にNACKを送信させ(S108)、再びS103以降の処理を行う。
S107において受信エラーがなかったと判定された場合、制御部23は、受信したデータが切断要求であるかどうかを判断する(S109)。そして、切断要求であると判断した場合、制御部23は、通信制御部20に送信装置100との通信を切断させ(S105)、処理を終了する。
一方、S109において切断要求ではないと判断した場合、制御部23は、前述した「メモリFULL」の状態を検出するために、受信のスピードと(印刷)処理のスピードとを比較する。具体的には、例えば、制御部23は、処理状況検出部12に、送信装置100からのデータ受信速度X、すなわち送信装置100から送信されてきて記憶部22の受信バッファに格納される単位時間あたりのデータバイト数Xを算出させる(S110)。また、制御部23は、処理状況検出部12に、データ出力速度Y、すなわち受信バッファから印刷のために読み出される単位時間あたりのデータバイト数Yを算出させる(S111)。さらに、制御部23は、処理状況検出部12に、データ受信速度Xからデータ出力速度Yを減算させ(X−Yを算出させ)、この減算結果が0よりも大きいかどうか(X−Y>0であるかどうか)を判断させる(S112)。
S112においてX−Y>0であると判断した場合、制御部23は、処理状況検出部12に、X−Yに受信バッファがオーバーフローするまでの許容時間TFを掛けた値(X−Y)×TFを算出させ、この(X−Y)×TFが受信バッファの残量(残容量)よりも大きいかどうか(受信バッファの残容量<(X−Y)×TFであるかどうか)を判断させる(S113)。つまり、S112でデータ受信速度Xとデータ出力速度Yとを比較し、データ受信速度Xの方が速ければ受信バッファのオーバーフローが起こる可能性があると判断し、S113において受信バッファの残容量と、データ受信速度Xとデータ出力速度Yとの差(受信バッファ内のデータ増加速度)に受信バッファがオーバーフローするまでの許容時間TFを掛けた値(TF経過した時までに受信バッファにおいて増加するデータ量)とを比較させ、このままのペースで受信した場合に時間TF以内にオーバーフローするかどうかを判断する。
そして、S113において受信バッファの残容量が(X−Y)×TFよりも小さい(受信バッファの残容量<(X−Y)×TFである)と判断した場合、制御部23は、算出部19に、受信バッファにおいてオーバーフローを起こさせないための待ち時間を算出させる(S114)。算出部19は、受信バッファ内に溜まっているデータの量と、データ受信速度Xと、データ出力速度Yとに基づいて、受信バッファに次の画像データを受信するために必要な空き容量ができるまでの待ち時間を算出する。
その後、制御部23は、ステータスパケットを生成し、通信制御部20を制御して通信部21から送信装置100にステータスパケットを送信させ(S115)、S103の処理に戻る。なお、この場合、制御部23は、「メモリFULL」であることを示す情報を状態フィールドに載せ、待ち時間を示す情報をoptionフィールドに載せたステータスパケットを生成する。
一方、S112においてX−Y>0ではないと判断した場合、あるいはS113においてバッファ残容量<(X−F)×TFではないと判断した場合、制御部23は、受信装置200の状態検出を行う(S116)。ここでは、例えば、インク検出手段(図示せず)によってインク切れの有無を検出したり、用紙検出手段(図示せず)によって印刷に用いる用紙が用紙切れになっていないかを検出したり、搬送路検出手段(図示せず)によって紙詰まりが発生していないかを検出するなど、受信装置200において送信装置100から受信したデータに対する出力(印刷)処理に支障となるような不具合がないかを検出する。
そして、制御部23は、S116の状態検出結果に基づいて、送信装置100から受信したデータを出力可能な状態であるかどうかどうかを判断する(S117)。なお、上記したS110〜S114の処理とS116〜S117の処理とを並行して行ってもよく、あるいは図7に示した例とは異なる順序で行ってもよい。
S117において出力可能な状態ではないと判断した場合、制御部23は、ステータスパケットを生成し、通信制御部20を制御して通信部21から送信装置100にステータスパケットを送信させ(S115)、S103の処理に戻る。この場合、制御部は、S116で検出した不具合に応じて、不具合の原因を示す情報を状態フィールドに載せ(格納し)、不具合の詳細情報をoptionフィールドに載せたステータスパケットを生成する。例えば、状態フィールドにはインク切れ、用紙切れ、紙詰まり等が生じたことを示す情報が載せられ、optionフィールドにはインク切れになったインクの色、用紙切れになった用紙の種類,サイズなどが載せられる。
一方、S117において出力可能な状態であると判断した場合、制御部23は、ACKを生成し、通信制御部20を制御して通信部21から送信装置100にACKを送信させ(S118)、S103の処理に戻る。
(1.5 通信シーケンスの例)
図13は、送信装置100と受信装置200との間の通信シーケンスを示す説明図であり、受信装置200から送信装置100にNACK応答があった場合、および受信装置200から所定時間T1が経過しても送信装置100に何の応答もなかった場合の例を示している。
この図に示すように、まず、送信装置100(携帯電話)から受信装置200(プリンタ)へ通信接続の指示である接続要求(CONNECTrequest)が送信される。受信装置200は接続に対応できたことを示す接続応答(CONNECTresponse)を応答(返信)する。
送信装置100は受信装置200からCONNECTresponseが返ってくると1つめの画像データDATA1を送信する。なお、この画像データDATA1は、1つの画像についての画像データを全て含むものであってもよく、あるいは1つの画像についての画像データが複数の画像データに分割されたものであってもよい。つまり、1つの画像についての画像データを1回の送信処理(1つのパケット)で送信してもよく、あるいは複数回の送信処理(複数のパケット)に分割して送信してもよい。
送信装置100から送信されたDATA1を受信装置200が正常に受信できた場合、受信装置200は正常受信できたことを示すACKを送信装置100に返す。
送信装置100は、DATA1に対するACKが返ってくると、次の画像データDATA2を送信する。
送信装置100から送信されたDATA2を受信装置200が何らかの原因(例えば使用者の手ぶれ等)によって正常に受信できなかった場合、つまり通信自体は途切れなかったがパリティエラーやCRCエラーなどの受信エラーが生じた場合、受信装置200は送信装置100に正常に受信できなかったことを示すNACKを返す。つまり、受信装置200の通信状況検出部13が正常に受信できなかったことをCRCチェックなどで検出すると、制御部23は正常に受信できなかったことを示すNACKを返すように通信制御部20に指示し、通信部21を介して送信装置100にNACKを送信する。
送信装置100は、DATA2に対するNACKが返ってくると、通信自体は成立しているので、DATA2を受信装置200に再送信する。この再送信したDATA2に対して再びNACKが返ってきた場合には、再度DATA2を送信する。この再送信(リトライ)は、予め決められた回数(N回;例えば4回)だけ繰り返される。
図13の例では、所定回数以下の2回目のリトライでACKが返ってきたので、送信装置100は、出力部6に通信エラーが生じていたことは表示せずに、以降のデータDATA3,DATA4,DATA5を順次送信する。
所定回数リトライしてもNACKが続いている場合には、通信エラーが生じている旨(例えば「通信エラーです。再送して下さい」)を出力部6に表示して一旦リトライを中断する。このとき送信に成功した画像のサムネイルに送信成功を示す記号等(例えばチェック「ゝ」)を付加して画面に表示し、未送信の画像のサムネイルには送信成功を示す記号等を付加せずに表示(あるいは未送信を示す記号等を表示)してもよい。
また、送信装置100から受信装置200にデータを送信した後、所定時間T1が経過しても何の応答もない場合、送信装置100は通信エラーが生じたと判断して受信装置200に接続要求(DISCONNECTrequest)を送信して通信を切断する。図13の例では、DATA5を送信した後所定時間T1が経過しても応答がないので、切断要求(DISCONNECTrequest)を送信することによって通信を切断している。なお、この場合、出力部6に通信エラーが生じた旨(例えば「通信不可です。」)を表示させるようにしてもよい。
図14は、送信装置100と受信装置200との間の通信シーケンスを示す説明図であり、受信装置200から送信装置100にステータスパケットが返信された場合の例を示している。
この図に示すように、送信装置100から受信装置200に接続要求(CONNECTrequest)を送信することで通信を開始して、画像データをDATA1から順次送信するのは図13と同様である。ただし、図14の例では、DATA1からDATA4までは全て正常に送信できたが、DATA5を送信した後に、受信装置200から送信装置100にステータスパケットが返信されている。例えば、送信装置100から送信した画像データが印刷待ちのために受信装置200の受信バッファに溜まっていき、このままのペースで送信装置100から画像データを送信し続けると受信バッファがオーバーフローしてしまうと受信装置200の処理状況検出部12が判断した場合などに、制御部23がACKの代わりにステータスパケットを返信する。
送信装置100では、処理状況検出部1が受信したデータがステータスパケットであることを検出すると、上記したように制御部11が画像データの送信を一旦停止して通信を切断し、出力部6にステータスパケットに載せられた情報に応じた表示を行うなどの処理を行う。例えば、「メモリFULL」の場合には図10に示したような表示を行わせるとともに、待ち時間が経過することを監視し、待ち時間が経過したらそれを示す表示を行うなどの処理を行う。また、インク切れの場合には図11に示したような表示を行わせる。
(1.6 送信装置100および受信装置200の作用効果)
以上のように、本実施形態にかかる送信装置100は、通信相手である受信装置200におけるデータ処理状況を検出する処理状況検出部1と、送信装置100と通信装置200との間で生じた通信エラーなどの通信状況を検出する通信状況検出部2とを備えている。具体的には、受信装置200から受信したデータがステータスパケットである場合には処理状況検出部1がこのステータスパケットを検出して解析し、通信中に生じた不具合が受信装置200の状態に起因するものであると判断する。また、受信装置200から受信したデータがNACKである場合には、送信装置100と通信装置200との間で通信エラーが生じたと判断する。
そして、送信装置100の制御部11は、通信中に生じた不具合が受信装置200の状態に起因する場合と、通信エラーによる場合とで、その後の処理を切り替える。
例えば、処理状況検出部1が、「メモリFULL」を示すステータスパケットを検出した場合には、データの送信を一端中断し、処理の滞りが解消するまでの待ち時間が経過したときに、送信可能な状態になった旨を出力部6に表示させ、使用者からの指示に応じて中断したデータから送信を再開する。
また、インク切れ、用紙切れ、紙詰まりなどが生じていることを示すステータスパケットを受信した場合には、データの送信を一端中断し、受信装置200における不具合に関する情報を出力部6に表示させるなどの処理を行う。
また、通信状況検出部2がNACKを検出したときには、制御部11は、通信自体は成立しているので、通信エラーが生じたデータを再送信するリトライを行う。
このように、通信の不具合(障害)が生じた場合に、その不具合が受信装置200の状態(処理の遅滞)に起因するものであるのか、あるいは通信路の状態に起因するもの(通信エラー)であるのかを判断し、その後の処理を切り替えることで、状態に応じた最適なデータ転送を行うことができる。
また、処理状況検出部1が、ステータスパケットの状態フィールドに載せられた情報に基づいて受信装置200における処理の滞り(「メモリFULL」等)を検出し、optionフィールドに載せられた情報に基づいて処理の滞りが解消するまでの待ち時間を検出した場合、制御部11が、出力部6に受信装置200における処理の滞りが解消するまでの待ち時間を表示させる。
これにより、使用者は再送が可能となるまでの時間を把握できる。したがって、データ送信のために特別な状態を保持する必要がある場合でも、使用者が、その状態を保持して待機するべきか、あるいは一旦その状態を解除して待機するべきかを判断できる。例えば、指向性のある通信媒体(赤外線等)を用いており、データ送信を行う際に送信装置100の発光部を受信装置200の受光部に向ける必要があるような場合、使用者が、送信装置100をそれまでの方向に向けて保持するか、一旦それまでの通信方向へ向けた構えを外してもよいかの見通しを立てることができる。
また、データの送信中に通信エラーや受信装置200の状態に起因する不具合が生じた場合、制御部11は、送信に失敗したコンテンツ(受信装置200が受信に失敗したコンテンツ)またはそのコンテンツを示すサムネイルやリスト等を出力部6に表示させる。これにより、使用者は、表示されたコンテンツあるいはそのサムネイルやリスト等を見て、送信に失敗したコンテンツを容易に把握することができる。
(1.7 出力部の変形例)
なお、本実施形態では、主に、出力部(通知装置)6が表示部である場合について説明したが、これに限るものではない。例えば、出力部6は、スピーカ等の音声出力部であってもよく、バイブレーター等の振動出力部であってもよく、LED等の発光部であってもよい。
したがって、本実施形態では、処理状況検出部1がステータスパケットのoptionフィールドに基づいて受信装置200における処理の停滞が解消するまでの待ち時間を検出した場合に、この待ち時間を表示装置からなる出力部6に表示させることで使用者に通知するようにしているが、これに限らず、例えば、待ち時間を音声出力装置からなる出力部6によって音声で出力して通知するようにしてもよい。これにより、使用者は再送が可能となるまでの時間を音声で認識できるので、送信装置100の画面(出力部6)を見続けていなくても受信装置200の状態を容易に把握できる。
この場合、例えば、処理状況検出部1がステータスパケットを検出すると、データの送信を一旦停止し、ステータスパケットのoptionフィールドに書かれている受信装置200の処理停滞を解消するのに要する待ち時間を検出し、検出した待ち時間を「プリンタが処理中です。1分後に再送して下さい」などのように音声で出力してもよい。また、待ち時間が経過したときに、例えば「プリンタの処理が済みましたので送信を再開してください」などの音声を出力して使用者に知らせるようにすればよい。
また、上記の待ち時間を、振動出力部からなる出力部6によって、送信装置100の全体または一部を振動させることで使用者に通知するようにしてもよい。これにより、使用者は再送が可能となるまでの時間を触覚によって、すなわち振動を感知することによって認識でき、送信装置100の画面(出力部6)を見続けていなくても、あるいは周囲の騒音が大きいくて音声を聞き取りにくい場合や音声を出力したくない場合でも受信装置200の状態を容易に把握することができる。
この振動出力部は、例えば送信装置100の一部に取り付けられ(あるいは内蔵され)、出力制御部5の制御に応じて動作することによって送信装置100全体もしくは送信装置100における特定の部位だけを振動させ、使用者にその振動を感知させるようになっている。
この場合、例えば、処理状況検出部1がステータスパケットを検出すると、データの送信を一旦停止し、受信装置200におけす処理の停滞を待っている状態(時間待ち)であることを、振動出力部からなる出力部6を所定の振動パターン(例えば「−・・・・ − −」などの振動期間の長短を組み合わせたパターン。なお、「−」は振動期間の長い振動、「・」は振動期間の短い振動、「 」は振動なしの期間を示す。)で振動させて通知し、待ち時間が経過するまで通信を切断する。そして、待ち時間が経過すると、待ち時間が経過したことを示す別の振動パターン(例えば「− − −・−」など)で振動させて使用者に知らせる。
なお、例えば図15に示すように、複数の振動パターンと、各振動パターンの意味とを予め対応付けておくことが好ましい。これにより、使用者は、振動パターンを感じ取って受信装置200の状態、送信装置100の状態、送信装置100と受信装置200との間の通信状態などの各種情報を知ることができる。
また、LED等の発光手段を用いる場合にも、上記の振動パターンと同様、発光期間の長短を組み合わせた発光パターンとその意味を予め対応付けしておくことで、各種情報を使用者に通知できる。
また、出力部6は、表示部、音声出力部、振動出力部、発光部のいずれか2つ以上を組み合わせたものであってもよい。したがって、同じ情報を表示部に表示するとともに音声出力部によって音声でも出力したり、表示出力と振動出力とを同時に行ったりするようにしてもよい。
なお、本実施形態では、選択された各画像の画像データを全て送信したときに通信を切断するようにしているが、これに限らず、例えば複数の画像の画像データを送信する場合、1つの画像の画像データを送信するごとに通信接続をやり直す(セッションを張り直す)ようにしてもよい。
また、図13の例では、1つの画像の画像データが送信される毎に送信確認(ACK確認)を行っているが、送信確認を行う頻度はこれに限るものではない。すなわち、一度の送信で送信するデータ量は1つの画像の画像データ量と一致している必要はない。例えば、1つの画像の画像データを複数に分割し、分割した画像データ毎に送信確認を行ってもよい。この場合、どの画像のどの画像データの通信に失敗したのかをステータスパケットに記載するようにしてもよい。これにより、再送信時に送信されるデータ量を低減できる。
〔実施形態2〕
(2.1 送信装置100bおよび受信装置200bの構成)
本発明の他の実施形態について説明する。なお、説明の便宜上、実施形態1で説明した部材と同様の機能を奏する部材については、同じ符号を付してその説明を省略する。
図16は本実施形態にかかる送信装置100bの構成を示すブロック図であり、図17は本実施形態にかかる受信装置200bの構成を示すブロック図である。
図16に示すように、送信装置100bは、実施形態1に示した送信装置100の構成に加えて、サムネイル作成部31およびサムネイルリスト作成部32を備えている。また、図17に示すように、受信装置200bは、実施形態1に示した受信装置200の構成に加えて、リスト作成部33を備えている。なお、本実施形態にかかる受信装置200bは、実施形態1の受信装置200のようにステータスパケットを作成して送信する機能を備えていなくてもよい。
サムネイル作成部31は、制御部11の指示に応じて、受信装置200bに送信する画像のサムネイルを作成する。
サムネイルリスト作成部32は、制御部11の指示に応じて、受信装置200bに送信する画像のサムネイルリストを作成する。
図18は、サムネイルリスト作成部32の作成するサムネイルリストの一例を示す説明図である。この図に示すように、サムネイルリストは、受信装置200bに送信する画像を特定するためのID(A01〜A08)を記述する項目(画像ID欄)と、これらの画像のサムネイル画像へのリンクを示すサムネイル画像リンク(B01〜B08)を記述する項目(サムネイル画像リンク欄)と、各画像のステータスを記述する項目(ステータス欄)とから構成されている。なお、図18の例ではステータス欄には何も記載していないが、例えば各画像のデータサイズなどを記述してもよい。
受信装置200bのリスト作成部33は、送信装置100から受信したサムネイルリストのステータス欄に画像データの受信結果を記載した返信用のサムネイルリスト(返信リスト)を作成する。
図19は、リスト作成部33の作成するサムネイルリストの一例を示す説明図である。この図に示すように、リスト作成部33は、送信装置100から受信したサムネイルリストの各画像データについて、受信に成功したか失敗したかを示す情報を記載する。この図に示す例では、画像IDがA03とA06の画像データについて、受信に失敗している。
受信装置200bの制御部23は、リスト作成部33の作成した返信用のサムネイルリストを通信部8から送信装置100bに送信させる。送信装置100bの制御部11は、受信装置200bから返信されてきたサムネイルリストに基づいて、その後の処理を行う。
(2.2 送信装置100bの処理)
本実施形態における送信装置100bおよび受信装置200bの処理について、図20および図21を参照して説明する。図20は送信装置100bにおける処理の流れを示すフロー図であり、図21は受信装置200bにおける処理の流れを示すフロー図である。
まず、送信装置100bの処理について説明する。送信装置100bの使用者は、入力部3を操作し、記憶部10に格納されている画像データを出力部6に表示させるとともに、受信装置200bに送信したい画像を1枚または複数枚選択して指定する。制御部11は、入力部3を介して入力される使用者からの指示に応じて、記憶部10に格納している画像データを出力部6に表示させ、使用者の選択指示に応じて受信装置200bに送信する画像データを選択する(S201)。
次に、制御部11は、S201で選択された画像のサムネイルをサムネイル作成部31に作成させ(S202)、サムネイルリスト作成部32にサムネイルリストを作成させる(S203)。
次に、制御部11は、入力部3を介して使用者からの送信指示が入力されることを監視する(S204)。送信開始指示を受け付けると、制御部11は、通信制御部7を制御し、通信部8から受信装置200bに接続要求(CONNECTrequest)を送信させる(S205)。さらに、制御部11は、受信装置200bから接続応答(CONNECTresponse)を受信したかどうかを判断する(S206)。ここで、接続応答を受信していない場合には、引き続き接続応答を受信することを監視する。なお、所定時間経過しても接続応答を受信できない場合には、例えば接続要求を再送するようにしてもよく、あるいは接続できなかった旨を出力部6に表示させるようにしてもよい。
S206において接続応答を受信したと判断した場合、制御部11は、通信制御部7を制御し、S203で作成したサムネイルリストを通信部8から受信装置200bに送信させる(S207)。そして、制御部11は、計時部9にサムネイルリストを開始してからの経過時間の計時を開始させる(タイマーをセットする)(S208)。
その後、制御部11は、通信状況制御部2に計時部9の計時時間を監視させ、所定の時間T1が経過したかどうかを判定させる(S209)。なお、上記所定の時間T1は、通信のプロトコル等に応じて予め設定される。
S209において時間T1が経過したと判定された場合、制御部11は、通信エラーが生じたと判断し、出力制御部5を制御して出力部6に通信エラーが生じた旨を表示させる(S210)。そして、制御部11は、サムネイルリストを記憶部10に保存するとともに(S211)、通信制御部7を制御して通信部8から受信装置200bに切断要求を送信させ(s212)、通信を切断して処理を終了する。
一方、S209において時間T1が経過していないと判定された場合、制御部11は、受信装置200bからデータ(パケット)を受信したかどうかを判断する(S213)。そして、受信装置200bからデータを受信していない場合には引き続きS209に戻って時間T1が経過したかどうかを通信状況検出部2に判定させる。これに対して、S213において受信装置200bからデータを受信したと判断した場合には、制御部11は、通信状況検出部2に受信したデータがACKであるかどうかを判断させる(S214)。つまり、制御部11は、通信状況検出部2に、サムネイルリストが受信装置200bに正常に受信されたかどうかを判断させる。
そして、通信状況検出部2がACKではないと判断した場合、制御部11は、NACKを受信したと判断するとともに、該サムネイルリストの送信がN回目の送信であるかどうかを判断する(S215)。そして、該サムネイルリストの送信回数がN回に達していない場合には、記憶部10に次の送信が何回目の送信であるかを示す情報を記憶させ、S209に戻って該サムネイルリストを再送する。制御部11は、S215において何回目の送信であるか判断する際、記憶部10に記憶させておいた送信回数に関する情報を参照する。
なお、S215において該サムネイルリストの再送回数がN回目であると判断した場合、制御部11は、上記したS210〜S212の処理を行って処理を終了する。
一方、S214においてACKであると判断した場合、制御部11は、通信制御部7を制御し、通信部8から受信装置200bへS201で選択された画像データの送信を開始させる(S216)。なお、ここでは、画像データ毎の送信が成功かどうかの確認(ACK、NACKの受信確認)は行わず、S201で選択された画像データを連続して送信する。つまり、制御部11は、ビット欠けなどの通信エラーが起きていたとしても、選択された画像データを順次送信する。したがって、通信エラーが生じた場合には、受信装置200bが受信する画像データは、選択された画像のうちの一部が抜けた、いわゆる歯抜け状態となる場合もある。これにより、画像データの送信に要する時間を短縮できる。
その後、制御部11は、S201で選択された画像データを全て送信したかどうかを判断する(S217)。そして、未送信の画像データが残っていると判断した場合、制御部11は、S216の処理を引き続き行い、未送信の画像データを順次送信させる。
S217において、S201で選択された画像データを全て送信したと判断した場合、制御部11は、通信制御部7を制御し、通信部8から受信装置200bへ受信状況リクエストを送信させる(S218)。つまり、画像データの送信結果を記載したサムネイルリストの返信を要求させる。
そして、制御部11は、受信装置200bからサムネイルリストを受信することを監視し(S219)、サムネイルリストを受信すると、処理状況検出部1に、サムネイルリストのステータス欄に記載されている情報に基づいて受信に失敗した画像データがあったかどうかを判断させる(S220)。
受信に失敗した画像データがなかった場合、制御部11は、通信制御部7を制御して通信部8から受信装置200bへ切断要求を送信させ(S221)、処理を終了する。なお、この場合、選択された全画像の送信に成功した旨を示す表示を出力部6に行わせてもよい。
一方、S219において受信に失敗した画像データがあったと判断した場合、制御部11は、送信に失敗した画像データを記憶部10から読み出し(S222)、S216以降の処理を再び行う。
(2.3 受信装置200bの処理)
次に、受信装置200bの処理について図21を参照して説明する。
受信装置200bの制御部23は、通信部21が送信装置100bからの接続要求を受信することを、通信制御部20を介して監視しており(S301)、接続応答を受信した場合には接続応答を返信する(S302)。そして、制御部23は、計時部18に接続要求を受信してからの経過時間の計時を開始させる(S303)。
そして、制御部23は、計時部18の計時時間を監視し、所定の時間T3が経過したかどうかを判定する(S304)。なお、上記所定の時間T3は、通信のプロトコル等に応じて予め設定される。
S304において所定の時間T3が経過したと判断した場合、制御部23は、通信不可(通信エラー)と判断して通信制御部20に送信装置100bとの通信を切断させ(S305)、処理を終了する。
S304において所定の時間T3が経過していないと判断した場合、制御部23は、送信装置100bがサムネイルリストを受信したかどうかを判断する(S306)。ここで、サムネイルリストを受信していないと判断した場合、制御部23は、S304に戻って引き続き所定の時間T3が経過したかどうかを監視する。
S306においてサムネイルリストを受信したと判断した場合、制御部23は、そのサムネイルリストを記憶部22に記憶させるとともに、通信状況検出部13に、受信したサムネイルリストに受信エラーが生じているかどうかを判定させる(S307)。
そして、S307において受信エラーがあったと判定された場合、制御部23は、通信制御部20を制御して通信部21から送信装置100bにNACKを送信させ(S308)、再びS303以降の処理を行う。
S307において受信エラーがなかったと判定された場合、制御部23は、通信制御部20を制御して通信部21から送信装置100bにACKを送信させ(S309)、計時部18にACKを送信してからの経過時間の計時を開始させる(タイマーをリセットする)(S310)。そして、制御部23は、計時部18の計時時間を監視し、所定の時間T3が経過したかどうかを判定し(S311)、所定の時間T3が経過したと判断した場合には、通信不可(通信エラー)と判断して通信制御部20に送信装置100bとの通信を切断させ(S305)、処理を終了する。
S311において所定の時間T3が経過していないと判断した場合、制御部23は、送信装置100bが画像データを受信したかどうかを判断する(S312)。ここで、画像データを受信していないと判断した場合、制御部23は、S311に戻って引き続き所定の時間T3が経過したかどうかを監視する。
S312において画像データを受信したと判断した場合、制御部23は、通信状況検出部13および処理状況検出部12に、受信した画像データに受信エラーあるいは処理の滞りが生じているかどうかを判定させる(S313)。つまり、制御部23は、処理状況検出部12に画像データの受信中に受信バッファのオーバーフローが生じていないかを監視させ、通信状況検出部13に通信エラーが起こっていないかを監視させる。
そして、S311において受信バッファのオーバーフローや受信エラーがあったと判定された場合、制御部23は、リスト作成部33を制御し、記憶部22に記憶させた上記サムネイルリストを読み出させ、該当する画像のステータス欄に受信に失敗した旨を記載させて再び記憶部22に記憶させる(S314)。一方、S311において受信バッファのオーバーフローや受信エラーがなかったと判定された場合、制御部23は、リスト作成部33を制御し、記憶部22に記憶させた上記サムネイルリストを読み出させ、該当する画像のステータス欄に受信に成功した旨を記載させて再び記憶部22に記憶させる(S315)。
その後、制御部23は、送信装置100bから受信状況リクエストを受信したかどうかを判断する(S316)。そして、受信状況リクエストを受信していない場合には、S310以降の処理を再び行う。
一方、S316において送信装置100bから受信状況リクエストを受信した判断した場合、制御部23は、記憶部22に記憶されているサムネイルリストを読み出し、通信制御部20を制御して通信部21から送信装置100bに送信させる(S317)。
その後、制御部23は、記憶部22に記憶されているサムネイルリストを参照し、受信失敗した画像データがあったかどうかを判断する(S318)。そして、受信失敗した画像データがあった場合、制御部23は、S310以降の処理を再び行う。一方、受信失敗した画像データがなかった場合、制御部23は、通信制御部20に送信装置100bとの通信を切断させ(S319)、処理を終了する。
(2.4 通信シーケンスの例)
図22は、送信装置100bと受信装置200bとの間の通信シーケンスを示す説明図である。
送信装置100bと受信装置200bとの間で接続要求(CONNECTrequest)および接続応答(CONNECTresponse)をやり取りして通信接続を行うのは実施形態1と同様である。
接続ができると、送信装置100bはこれから送信する各画像データ(この図の例では画像データ1〜画像データ8)およびそれらのサムネイルとの対応を記述したサムネイルリストを受信装置200bに送信する。そして、このサムネイルリストに対するACKを受信すると、画像データ1〜画像データ8を連続して(画像データ毎の送信確認を行わずに)受信装置200bに送信する。つまり、画像データの送信中にエラーが起こっても修復はせずに続きの画像データの送信を続行する。図22は、画像データ3および画像データ6の送信に失敗し、受信装置200bにおいて正常に受信できなかった場合の例を示している。
予定した画像データを全て送信すると、送信装置100bは、受信装置200bに「受信状況リクエスト」を送信する。
受信装置200bは、この「受信状況リクエスト」を受信すると、先に受信したサムネイルリストに画像データごとに受信成功、または受信失敗を記入したものを返信する。
送信装置100bは、受信装置200bから返信されたサムネイルリストを参照し、送信に失敗した画像データ(この図の例では画像データ3および画像データ6)を認識し、送信に失敗した画像データを再送する。
(2.5 再送方法の変形例1)
なお、本実施形態では、送信装置100bの制御部11が、処理状況検出部1に、受信装置200bから受信したサムネイルリストを参照して送信に失敗した画像データを検出させ、該送信に失敗した画像データを自動的に再送するようにしているが、これに限るものではない。例えば、送信に失敗した画像データを出力部(表示部)6の画面に表示し、使用者の指示によってその後の処理を行うようにしてもよい。この場合の実施例を以下に示す。
図23は、受信装置200bから返信されるサムネイルリストを受信した後、使用者の指示に応じてその後の処理を行う場合における、送信装置100bの処理の一例を示すフロー図である。
なお、送信する画像データが最初に選択された後、サムネイルリストの送信や画像データの送信を行い、受信装置200bからサムネイルリストを受信するまでの処理(S201〜S219の処理)については、図20と同様であるので、説明を省略する。
S219においてサムネイルリストを受信したと判断した場合(S230)、制御部11は、受信に失敗した画像データがあったかどうかを判断する(S231)。そして、受信失敗した画像データがない場合、制御部11は、出力制御部5を制御して出力部6に選択された全ての画像の送信に成功した旨を表示させる(例えば「全画像送信に成功」と表示する)。その後、制御部11は、通信制御部7を制御して通信部8から受信装置200bへ切断要求を送信させ(S233)、処理を終了する。
一方、S231において受信失敗した画像データがあると判断した場合、制御部11は、処理状況検出部1に、受信装置200bから受信したサムネイルリストを参照させて受信失敗した画像データを抽出させるともに、出力制御部5を制御して受信失敗した画像データあるいはそのサムネイルを判別できるように出力部6に表示させる(S234)。例えば、図24に示すように、選択された全画像のサムネイルを表示するとともに、受信失敗した画像のサムネイルを受信成功した画像のサムネイルよりも明るく表示する。なお、図24では、受信装置200bにおいて受信に失敗して明るく表示されるサムネイルを太線で囲って示し、受信に成功して暗く表示されるサムネイルを破線で囲って示している。また、この図に示したように、受信結果の成否を示す記号等(例えば「○」または「×」)を各サムネイルに付して表示してもよい。また、受信に失敗した画像あるいはそのサムネイルだけを表示してもよい。
次に、制御部11は、入力部3を介して入力される使用者からの再送する画像についての選択指示を受け付ける(S235)。つまり、使用者は、S234で出力部に表示された内容を見て受信失敗した画像を把握し、受信失敗した画像の中から再送したい画像を選択して再送指示を入力部3に入力できるようになっている。もちろん、受信失敗した画像を全て再送するように指示してもかまわない。なお、再送を行わないように指示できるようにしてもよい。その場合には、制御部11は、通信制御部7を制御して通信部8から受信装置200bへ切断要求を送信させ、処理を終了すればよい。
S235で再送する画像が選択されると、制御部11は、図20のS202〜S219と同様の処理を行う(S236)。つまり、サムネイルリスト作成部32を制御して再送する画像についてのサムネイルリストを再生成させ、使用者からの送信指示に応じてそれを受信装置200bに送信し、初回の送信処理と同様の処理を行う。
このような処理を行うことにより、受信装置200bから返信されるサムネイルリストを受信した後も通信の接続は保持されたままなので、使用者は、再送する画像データを指定するだけでよく、通信の再接続のための処理を行う必要がない。
なお、受信装置200bにおける処理については、制御部23が、S318で受信失敗した画像データがあると判断した場合に、S310以降の処理を行うのではなく、S303以降の処理を行うようにする点を除いて図21と同様の処理を行うようにすればよい。
図25は、この場合の送信装置100bと受信装置200bとの間での通信シーケンスを示す説明図である。
この図に示すように、送信装置100bから受信装置200bに接続要求を送信した後、受信装置200bから返信されるサムネイルリストを送信装置100bが受信するまでの処理は、図22の場合と同様である。
受信装置200bから返信されるサムネイルリストを受信すると、送信装置100bは、そのサムネイルリストに基づいて受信失敗した画像を抽出し、受信失敗した画像またはそのサムネイルを判別可能なように出力部6に表示する。
使用者は、この表示を見て通信に失敗した画像を判別し、再送する画像を選択する。制御部11は、入力部3を介して入力される使用者からの再送する画像の選択指示を受け付けると、通信制御部7にその画像の画像データを再送信するように指示する。
以上のように、本実施形態では、画像データ(コンテンツデータ)を送信する前に、サムネイルリストを送信することで、受信装置200bにその後に送信する画像データの内容を通知する。これにより、その後に送信する各画像データについて送信確認を逐次行わなくても、受信装置200bにおいて各画像データの通信が成功したか失敗したかを確認することができる。したがって、例えば各画像データのデータ容量が大きい場合であっても、画像データ毎あるいは各画像データを複数に分割したデータ毎に送信確認を行うことなく送信できるので、通信時間を短縮できる。
また、受信装置200bにおいて各画像データの通信成否を判定した結果をサムネイルリストに反映させて送信装置100bに返信することで、送信装置100bでは、通信結果に応じた適切な処理を行える。
(2.6 再送方法の変形例2)
なお、本実施形態では、受信装置200bから送信装置100bに返信するサムネイルリストのステータス欄に、受信結果の成否(受信成功または受信失敗)のみを記載しているが、これに限るものではない。例えば、受信に失敗した原因、すなわち受信装置200bにおける処理の滞り等に起因して失敗したのか、あるいはパリティエラーやCRCエラー等の通信エラーが生じたために失敗したのかを示す情報をステータス欄に記載して返信してもよい。また、この場合、送信装置100bの制御部11は、処理状況検出部1および通信状況検出部2に受信失敗の原因を検出させ、受信装置200bにおける処理の滞りに起因するのか、あるいは通信エラーであるのかを区別して出力部6(表示部)に表示させるようにしてもよい。
受信装置200bにおける処理の滞り等の不具合(メモリFULL等)と、通信路における通信エラーとを区別してサムネイルリストに記載し、送信装置100bに返信する場合の実施例について、図31および図32を参照して説明する。
図31は、送信装置100bが、受信装置200bから返信されるサムネイルリストを受信した後、サムネイルリストのステータス欄に記載されている情報(受信装置200bのステータス)に基づいて、出力部6に受信装置200bの状況を表示する場合の処理の流れを示すフロー図である。なお、送信する画像データが選択された後、サムネイルリストの送信や画像データの送信を行い、受信装置200bから返信されるサムネイルリストを受信するまでの処理(S201〜S219の処理)については、図20と同様であるので、説明を省略する。
S219においてサムネイルリストを受信したと判断した場合(S3101)、制御部11は、処理状況検出部1に、サムネイルリストのステータス欄に記載されている情報に基づいて、受信に失敗した画像データがあったかどうか判断させる(S3102)。そして、受信失敗した画像データがない場合、制御部11は、出力制御部5を制御して出力部6に選択された全ての画像の送信に成功した旨を表示させる(S3103)。その後、制御部11は、通信制御部7を制御して通信部8から受信装置200bへ切断要求を送信させ(S3104)、処理を終了する。
一方、S3102において受信失敗した画像データがあると判断した場合、制御部11は、処理状況検出部1に、サムネイルリストのステータス欄に記載されている情報に基づいて失敗理由を判断させる(S3105)。ここで、受信失敗した画像データのステータスが全て通信エラーであれば、制御部11は、処理状況検出部1に、受信装置200bから受信したサムネイルリストを参照させて通信エラーが生じた画像データを抽出させるとともに、出力制御部5を制御して通信エラーが生じた画像データあるいはそのサムネイルをユーザが判別できるように出力部6に表示させる(S3111)。
その後、制御部11は、入力部3を介して入力される使用者からの再送する画像についての選択指示を受け付ける(S3112)。そして、S3112で再送する画像が選択されると、制御部11は、図20のS202〜S219と同様の処理を行って選択された画像を送信する(S3113)。
一方、S3105において、受信失敗の画像データが全て通信エラーでないと判断した場合、制御部11は、処理状況検出部1に、失敗理由にメモリFULLが含まれているかどうかを判断させる(S3106)。そして、失敗理由にメモリFULLが含まれている場合、制御部11は、出力制御部5を制御し、処理状況検出部1がサムネイルリストのoption欄から読み出したメモリが空くまでの待ち時間を、上述した実施形態1の場合と同様に出力部6に表示させる(S3107)。
なお、S3106において、失敗理由にメモリFULLが含まれていないと判断した場合、制御部11は、出力制御部5を制御し、処理状況検出部1がサムネイルリストのステータス欄およびoption欄から読み出した失敗理由に応じた状態表示を行わせる(S3108)。例えば、インク切れである旨、あるいは用紙切れである旨などを示すメッセージ等を出力部6に表示させる。
その後、制御部11は、受信装置200bの不具合が解消されたかどうが判断し、解消されれば、出力部6に送信が可能になったことを表示し(S3110)、受信失敗した画像データを表示し(S3111)、上記したS3112以降と同様の処理を行う。
図32は、受信装置200bにおいて、送信装置100bからサムネイルリストを受信した後、受信データの受信状況を判断し、サムネイルリストのステータス欄に受信状況を記載して返信する処理の流れを示すフロー図である。なお、画像データを受信したかどうかを判断するまでの処理(S301〜S312)、および、サムネイルリストのステータス欄に受信状況を記載した後の処理(S316〜S319)については、上述した図21の処理と同様であるので、説明を省略する。
S312において画像データを受信したと判断した場合、制御部23は、通信状況検出部13に、受信した画像データに受信エラーが生じているかどうかを判定させる(S3201)。
そして、通信状況検出部13が、受信エラーが生じたと判断した場合には、制御部23は、リスト作成部33を制御し、記憶部22に記憶させた上記サムネイルリストを読み出させ、該当する画像のステータス欄に受信エラーが生じた旨を記載させて再び記憶部22に記憶させる(S3202)。そして、図21のS316以降の処理を行う。
一方、S3201において受信エラーが生じていないと判断した場合、制御部23は、処理状況検出部12に、送信装置100bからのデータ受信速度X、すなわち送信装置100bから送信されてきて記憶部22の受信バッファに格納される単位時間あたりのデータバイト数Xを算出させる(S3203)。また、制御部23は、処理状況検出部12に、データ出力速度Y、すなわち受信バッファから印刷のために読み出される単位時間あたりのデータバイト数Yを算出させる(S3204)。
さらに、制御部23は、処理状況検出部12に、データ受信速度Xからデータ出力速度Yを減算させ(X−Yを算出させ)、この減算結果が0よりも大きいかどうか(X−Y>0であるかどうか)を判断させる(S3205)。
S3205においてX−Y>0であると判断した場合、制御部23は、処理状況検出部12に、X−Yに受信バッファがオーバーフローするまでの許容時間TFを掛けた値(X−Y)×TFを算出させ、この(X−Y)×TFが受信バッファの残量(残容量)よりも大きいかどうか(受信バッファの残容量<(X−Y)×TFであるかどうか)を判断させる(S3206)。
そして、S3206において受信バッファの残容量が(X−Y)×TFよりも小さい(受信バッファの残容量<(X−Y)×TFである)と判断した場合、制御部23は、算出部19に、受信バッファにおいてオーバーフローを起こさせないための待ち時間を算出させる(S3207)。
その後、制御部23は、リスト作成部33を制御し、記憶部22に記憶させた上記サムネイルリストを読み出させ、該当する画像のステータス欄およびoption欄に受信装置200bの状況を記載させる(S3208)。この場合、具体的には、該当する画像のステータス欄にメモリFULLが生じた旨を記載させ、option欄に待ち時間を記載させる。その後、図21のS316以降の処理を行う。
一方、S3205において出力速度Yが受信速度Xも速いと判断した場合、あるいはS3206において受信バッファの残容量≧(X−Y)×TFであると判断した場合、制御部23は、受信装置200bの状態検出を行う(S3209)。ここでは、例えば、インク検出手段(図示せず)によってインク切れの有無を検出したり、用紙検出手段(図示せず)によって印刷に用いる用紙が用紙切れになっていないかを検出したり、搬送路検出手段(図示せず)によって紙詰まりが発生していないかを検出するなど、受信装置200bにおいて送信装置100bから受信したデータに対する出力(印刷)処理に支障となるような不具合がないかを検出する。
そして、制御部23は、S3209の状態検出結果に基づいて、送信装置100bから受信したデータを出力可能な状態であるかどうかどうかを判断する(S3210)。なお、上記したS3203〜S3207の処理とS3209〜S32010の処理とを並行して行ってもよく、あるいは図32に示した例とは異なる順序で行ってもよい。
S3210において出力可能な状態ではないと判断した場合、制御部23は、リスト作成部33を制御し、記憶部22に記憶させた上記サムネイルリストを読み出させ、該当する画像のステータス欄およびoption欄に受信装置200bの状況を記載させ(S3208)、図21のS316以降の処理を行う。つまり、制御部23は、S3209で検出した不具合に応じて、不具合の原因を示す情報を状態フィールドに、不具合の詳細情報をoptionフィールドに記載する。例えば、状態フィールドにはインク切れ、用紙切れ、紙詰まり等が生じたことを示す情報が載せられ、optionフィールドにはインク切れになったインクの色、用紙切れになった用紙の種類,サイズなどが載せられる。
一方、S3210において出力可能な状態であると判断した場合、制御部23は、リスト作成部33を制御し、記憶部22に記憶させた上記サムネイルリストを読み出させ、該当する画像のステータス欄に受信に成功した旨を記載させ(S3211)、図21のS316以降の処理を行う。
図33は、受信装置200bから送信装置100bに送信されるサムネイルリストの一例を示す説明図である。画像ID、サムネイル画像リンクは図19と同様である。ステータス欄には、図19では受信成否のみを記載していたが、この実施例では受信失敗の場合にその失敗の原因(通信エラー、あるいはメモリFULL等の受信装置200bにおける不具合など)を記載する。受信装置200bの不具合の場合には、その不具合の詳細情報がoption欄に記載される。例えば、実施形態1と同様、メモリFULLの場合には待ち時間、インク切れの場合はインクの色などがoption欄に記載される。
〔実施形態3〕
(3.1 送信装置100bおよび受信装置200bの構成)
本発明のさらに他の実施形態について説明する。なお、説明の便宜上、実施形態1または2で説明した部材と同様の機能を奏する部材については、同じ符号を付してその説明を省略する。
本実施形態にかかる送信装置100bは、実施形態2に示した送信装置100bと略同様の構成である。ただし、処理状況検出部1を備えない構成としてもよい。
また、本実施形態にかかる受信装置200bは、実施形態2に示した受信装置200bと略同様の構成である。ただし、本実施形態では、受信装置200bは、例えば画像表示を行う画像モニター等の表示装置であるものとする。つまり、出力部17は、例えば液晶表示パネル等の表示画面である。なお、本実施形態にかかる受信装置200bは、受信装置200bにおける処理状況などを送信装置100bに通知する機能を備えていなくてもよい。
図26は、本実施形態における送信装置100b(携帯電話)と受信装置200b(表示装置)との間で通信を行う場合の使用状況を示す説明図である。この図に示すように、送信装置100bの使用者は、受信装置200bに表示させたい画像の画像データを送信装置100bから受信装置200bに送信させる。受信装置200bは、送信装置100bから受信した画像等を出力部17に表示させる。
(3.2 送信装置100bの処理)
本実施形態における送信装置100bおよび受信装置200bの処理について、図27および図28を参照して説明する。図27は送信装置100bにおける処理の流れを示すフロー図であり、図28は受信装置200bにおける処理の流れを示すフロー図である。
まず、送信装置100bにおける処理について説明する。送信装置100bの使用者は、入力部3を操作し、記憶部10に格納されている画像データを出力部6に表示させるとともに、受信装置200bに送信したい画像を1枚または複数枚選択して指定する。制御部11は、入力部3を介して入力される使用者からの指示に応じて、記憶部10に格納している画像データを出力部6に表示させ、使用者の選択指示に応じて受信装置200bに送信する画像データを選択する(S401)。
次に、制御部11は、S401で選択された画像のサムネイルをサムネイル作成部31に作成させ(S402)、サムネイルリスト作成部32にサムネイルリストを作成させる(S403)。
さらに、制御部11は、通信制御部7を制御し、通信部8から受信装置200bに接続要求、サムネイルリスト、サムネイルを順次送信させる(S404〜S406)。なお、実施形態1および2と同様、受信装置200bから接続応答、ACK、NACKを受信してから次の送信を行うようにしてもよい。
そして、サムネイルを送信した後、制御部11は、通信制御部7を制御し、通信部8から受信装置200bにS401で選択された画像データの送信を開始させる(S407)。なお、ここでは、通信の成否に関わらず、画像データを連続して送信する。つまり、制御部11は、ビット欠けなどの通信エラーが起きていたとしても、選択された画像データを順次送信する。したがって、通信エラーが生じた場合には、受信装置200bが受信する画像データは、選択された画像のうちの一部が抜けた、いわゆる歯抜け状態となる場合もある。
その後、制御部11は、選択された画像データを全て送信したかどうかを判断する(S408)。そして、未送信の画像データが残っていると判断した場合、制御部11は、S407の処理を引き続き行い、未送信の画像データを順次送信させる。
S408において、選択された画像データを全て送信したと判断した場合、制御部11は、通信制御部7を制御して通信部8から受信装置200bへ切断要求を送信させ(S410)、処理を終了する。
(3.3 受信装置200bの処理)
次に、本実施形態における受信装置200bの処理について図28を参照して説明する。
受信装置200bの制御部23は、通信部21が送信装置100bからの接続要求を受信することを、通信制御部20を介して監視している(S501)。そして、接続応答を受信すると、制御部23は、その後に送信されてくるサムネイルリスト,サムネイル,画像データを受信可能にするための処理(例えば接続応答を返信して通信接続を行うなど)を行う(S502)。
その後、制御部23は、通信制御部20を制御して送信装置100bから送信されてくるサムネイルリスト、サムネイルを順次受信し(S503、S504)、記憶部22に記憶させる。
サムネイルを受信すると、制御部23は、計時部18にサムネイルを受信してからの経過時間の計時を開始(タイマーセット)させる(S505)。
そして、制御部23は、通信状況検出部2に計時部18の計時時間を監視させ、所定の時間T1が経過したかどうかを判定させる(S506)。なお、上記所定の時間T1は、通信のプロトコル等に応じて適宜設定しておけばよい。
S506において所定の時間T1が経過したと判断された場合、制御部23は、後述するS513以降の処理を行う。
一方、S506において所定の時間T1が経過していないと判断された場合、制御部23は、送信装置100bからデータ(パケット)を受信したかどうかを判断する(S507)。そして、データを受信していないと判断した場合には、制御部23は、引き続きS507の処理を行い、画像データが受信することを監視する。
S507においてデータを受信したと判断した場合、制御部23は、受信したデータが切断要求であるかどうかを判断する(S508)。ここで、受信したデータが切断要求であると判断した場合、制御部23は、後述するS513以降の処理を行う。
S508において受信したデータが切断要求ではないと判断した場合、制御部23は、受信したデータが画像データであるがどうかを判断する(S509)。ここで、画像データではないと判断した場合、制御部23は、必要に応じてそのデータに応じた処理を行うとともに、S505の処理に戻る。
S509において画像データであると判断した場合、制御部23は、その画像データを正常に受信できたかどうかを判断する(S510)。つまり、制御部23は、処理状況検出部12に画像データの受信中に受信バッファのオーバーフローが生じていないかを監視させ、通信状況検出部13に通信エラーが起こっていないかを監視させており、これらの監視結果に基づいて正常に受信できたかどうかを判断する。
正常に受信できなかったと判断した場合、制御部23は、S505の処理に戻る。なお、リスト作成部33を制御して記憶部22に記憶したサムネイルリストにおける該当する画像のステータス欄に受信に失敗した旨を記載させてからS505の処理に戻るようにしてもよい。
一方、正常に受信できたと判断した場合、制御部23は、その画像データの画像IDを検出し(S511)、リスト作成部33を制御して記憶部22に記憶したサムネイルリストにおける該当する画像のステータス欄に受信に成功した旨を記載させる(S512)。そして、S505の処理に戻る。
なお、S506においてT1が経過したと判断した場合、あるいはS508において切断要求を受信したと判断した場合、制御部23は、通信制御部20に送信装置100bとの通信を切断させる。そして、制御部23は、リスト作成部33に、記憶部22に記憶しているサムネイルリストを読み出させ、その時点でステータス欄に受信に成功した旨を記載されていない画像のステータス欄に受信に失敗した旨を記載させる(S514)。
さらに、制御部23は、出力制御部16を制御し、上記のように作成したサムネイルリストに基づいて、受信結果(受信状況)の一覧を出力部17に表示させ(S515)、処理を終了する。
図29は、S515において出力部17の表示画面に表示される受信結果の一覧の例を示している。この図に示す例では、画像データ1〜8のサムネイルに、受信成功を示す「○」、受信失敗を示す「×」の記号を付加して表示している。つまり、図29は、画像データ3および画像データ6の受信に失敗し、画像データ1,2,4,5,7,8の受信に成功した場合の例を示している。
(3.4 通信シーケンスの例)
図30は、本実施形態における送信装置100bと受信装置200bとの間の通信シーケンスを示す説明図である。
この図に示すように、上述した各実施形態と同様、接続要求および接続応答のやり取りで通信接続を行う。なお、受信装置200bが送信装置100bへの返信機能を備えない場合などには、接続要求および接続応答のやりとりを省略してもかまわない。
そして、通信を接続できると、送信装置100bは、これから送信する各画像データのサムネイルリスト(画像データとサムネイルとの対応を記述したリスト)と、各画像のサムネイルとを受信装置200bに送信する。なお、この際、図30に示すようにACK確認を行うようにしてもよく、ACK確認を省略してもよい。
そして、サムネイルリストおよびサムネイルを送信した後、送信装置100bは送信する各画像の画像データを連続して(画像毎のACK確認を行わずに)受信装置200bに送信する。図30の例では、画像データ3と画像データ6とが通信に失敗し、受信装置200bで正常に受信できなかったことを示している。
なお、受信装置200bでは、処理状況検出部12および通信状況検出部13が各画像データを正常に受信できたかどうかを監視しており、その結果をサムネイルリストに記載していく。
予定された画像データを全て送信すると、送信装置100bは、切断要求を送信して通信を切断する。
受信装置200bは、切断要求を受信すると、サムネイルリストを参照し、各画像データのサムネイルに受信成功または受信失敗を示す記号を付して出力部17に表示する。
このように、受信に失敗した画像を識別できるように出力部17に表示させることで、使用者がこの表示を見て受信装置200bが受信に失敗した画像を把握することができる。したがって、通信に失敗した画像を選択して再送する操作を行うことで、適切な送信を行うことができる。
以上のように、本実施形態では、画像データ(コンテンツデータ)を送信する前に、サムネイルリストを送信することで、受信装置200bにその後に送信する画像データの内容を通知する。これにより、その後に送信する各画像データについて送信確認(ACK確認)を逐次行わなくても、受信装置200bにおいて各画像データの通信が成功したか失敗したかを確認することができる。したがって、例えば各画像データのデータ容量が大きい場合であっても、画像データ毎あるいは各画像データを複数に分割したデータ毎に送信確認を行うことなく送信できるので、通信時間を短縮できる。
また、受信装置200bは、送信装置100bからの切断要求を受信すると、各画像データの通信成否を判定した結果を出力部17に表示させる。これにより、使用者は、出力部17に表示された内容を見て通信結果を知ることができ、通信結果に応じた適切な処理を行うことができる。
また、上記各実施形態における送信装置の各ブロック(例えば制御部11、処理状況検出部1、通信状況検出部2、入力制御部4、出力制御部5、通信制御部7、サムネイル作成部31、サムネイルリスト作成部32)は、CPU等のプロセッサを用いてソフトウェアによって実現されるものであってもよい。また、上記各実施形態における受信装置の各ブロック(例えば制御部23、処理状況検出部12、通信状況検出部13、入力制御部15、出力制御部16、通信制御部20、リスト作成部33)についても同様に、CPU等のプロセッサを用いてソフトウェアによって実現されるものであってもよい。
すなわち、上記各実施形態における送信装置および受信装置は、各機能を実現する制御プログラムの命令を実行するCPU(central processing unit)、上記プログラムを格納したROM(read only memory)、上記プログラムを展開するRAM(random access memory)、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)などを備えた構成であってもよい。そして、本発明の目的は、上述した機能を実現するソフトウェアである送信装置および/または受信装置の制御プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、ソースプログラム)をコンピュータで読み取り可能に記録した記録媒体を、上記送信装置および/または受信装置に供給し、そのコンピュータ(またはCPUやMPU)が記録媒体に記録されているプログラムコードを読み出し実行することによって達成される。
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD/CD−R等の光ディスクを含むディスク系、ICカード(メモリカードを含む)/光カード等のカード系、あるいはマスクROM/EPROM/EEPROM/フラッシュROM等の半導体メモリ系などを用いることができる。
また、送信装置および/または受信装置を通信ネットワークと接続可能に構成し、通信ネットワークを介して上記プログラムコードを供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、LAN、ISDN、VAN、CATV通信網、仮想専用網(virtual private network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、IEEE1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL回線等の有線でも、IrDAやリモコンのような赤外線、Bluetooth(登録商標)、802.11無線、HDR、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
また、上記各実施形態における送信装置および/または受信装置の各ブロックは、ソフトウェアを用いて実現されるものに限らず、ハードウェアロジックによって構成されるものであってもよい。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
本発明は、データ送信を行う送信装置およびそれを受信する受信装置に適用できる。
本発明の一実施形態にかかる送信装置の構成を示すブロック図である。 本発明の一実施形態にかかる受信装置の構成を示すブロック図である。 本発明の一実施形態にかかる送信装置および受信装置の使用状況を示す説明図である。 本発明の一実施形態にかかる送信装置と受信装置との間で通信されるデータ構造の一例を示す説明図である。 (a)および(b)は、本発明の一実施形態において、受信装置から送信装置に送信されるステータスパケットの構成を示す説明図である。 本発明の一実施形態にかかる送信装置における処理の流れを示すフロー図である。 本発明の一実施形態にかかる受信装置における処理の流れを示すフロー図である。 本発明の一実施形態にかかる送信装置において、通信に成功した画像データと未送信の画像データとを識別可能に表示する場合の一例を示す説明図である。 本発明の一実施形態にかかる送信装置において、通信に成功した画像データと未送信の画像データとを識別可能に表示する場合の一例を示す説明図である。 本発明の一実施形態にかかる送信装置において、受信装置の処理待ちである旨と、送信に成功した画像データおよび未送信の画像データと表示する場合の一例を示す説明図である。 本発明の一実施形態にかかる送信装置において、受信装置で生じた不具合の内容を表示させる場合の一例を示す説明図である。 本発明の一実施形態にかかる送信装置において、受信装置で生じた不具合が解消して通信を再開可能になった旨を表示する場合の一例を示す説明図である。 本発明の一実施形態にかかる送信装置と受信装置との間で行われる通信のシーケンスの一例を示す説明図である。 本発明の一実施形態にかかる送信装置と受信装置との間で行われる通信のシーケンスの一例を示す説明図である。 本発明の一実施形態にかかる送信装置において、受信装置で生じた不具合等の各種情報を振動によって使用者に通知させる場合の、通知する情報と振動パターンとの対応関係の一例を示す説明図である。 本発明の他の実施形態にかかる送信装置の構成を示すブロック図である。 本発明の他の実施形態にかかる受信装置の構成を示すブロック図である。 本発明の他の実施形態にかかる送信装置において作成されるサムネイルリストの一例を示す説明図である。 本発明の他の実施形態にかかる受信装置において作成されるサムネイルリストの一例を示す説明図である。 本発明の他の実施形態にかかる送信装置における処理の流れを示すフロー図である。 本発明の他の実施形態にかかる受信装置における処理の流れを示すフロー図である。 本発明の他の実施形態にかかる送信装置と受信装置との間で行われる通信のシーケンスの一例を示す説明図である。 本発明の他の実施形態にかかる送信装置における処理の流れを示すフロー図である。 本発明の他の実施形態にかかる送信装置において、通信に成功した画像データと未送信の画像データとを識別可能に表示する場合の一例を示す説明図である。 本発明の他の実施形態にかかる送信装置と受信装置との間で行われる通信のシーケンスの一例を示す説明図である。 本発明のさらに他の実施形態にかかる送信装置および受信装置の使用状況を示す説明図である。 本発明のさらに他の実施形態にかかる送信装置における処理の流れを示すフロー図である。 本発明のさらに他の実施形態にかかる受信装置における処理の流れを示すフロー図である。 本発明のさらに他の実施形態にかかる受信装置に、受信結果の一覧を表示させる場合の一例を示す説明図である。 本発明のさらに他の実施形態にかかる送信装置と受信装置との間で行われる通信のシーケンスの一例を示す説明図である。 本発明の他の実施形態にかかる送信装置において、受信装置から返信されるサムネイルリストに基づいて受信装置の状況を表示する場合の処理の流れを示すフロー図である。 本発明の他の実施形態にかかる受信装置において、送信装置からサムネイルリストを受信した後、サムネイルリストに受信状況を記載して返信する処理の流れを示すフロー図である。 図32の処理によって受信装置から送信装置に送信されるサムネイルリストの一例を示す説明図である。
符号の説明
1 処理状況検出部(処理状況検出手段)
2 通信状況検出部(通信状況検出手段)
5 出力制御部
6 出力部(通知装置、表示装置)
7 通信制御部
8 通信部
9 計時部(計時手段)
10 記憶部
11 制御部(制御手段)
12 処理状況検出部(処理状況検出手段、検出手段)
13 通信状況検出部(通信状況検出手段、検出手段)
16 出力制御部
17 出力部(表示装置)
18 計時部
19 算出部(算出手段)
20 通信制御部
21 通信部
22 記憶部
23 制御部(制御手段)
31 サムネイル作成部
32 サムネイルリスト作成部
33 リスト作成部(データ作成手段)
100,100b 送信装置
200,200b 受信装置

Claims (29)

  1. 受信装置にデータを送信する送信装置であって、
    上記受信装置において受信処理の滞りが発生したことを検出する処理状況検出手段と、
    上記受信装置へのデータ送信時に通信エラーが生じたことを検出する通信状況検出手段と、
    上記処理状況検出手段によって上記受信処理の滞りが発生したことを検出したときと、上記通信状況検出手段によって通信エラーを検出したときとで、異なる処理を行う制御手段とを備えていることを特徴とする送信装置。
  2. 上記処理状況検出手段は、
    上記受信装置にデータを送信した後、該受信装置から返信されてくる返信データに基づいて、該受信装置において受信処理の滞りが発生したことを検出することを特徴とする請求項1に記載の送信装置。
  3. 上記処理状況検出手段は、
    上記受信装置から返信されてくる返信データに基づいて、該受信装置において発生した受信処理の滞りが解消するまでの待ち時間を検出することを特徴とする請求項2に記載の送信装置。
  4. 上記通信状況検出手段は、
    上記受信装置にデータを送信した後、該受信装置から返信されてくる返信データに基づいて、上記通信エラーを検出することを特徴とする請求項1〜3のいずれか1項に記載の送信装置。
  5. 上記受信装置にデータを送信してからの経過時間を計時する計時手段を備え、
    上記通信状況検出手段は、
    上記計時手段の計時時間が所定の時間に達するまでに上記受信装置から返信データを受信しなかったときに、上記通信エラーが生じたと判断することを特徴とする請求項1〜4のいずれか1項に記載の送信装置。
  6. 上記制御手段は、
    上記処理状況検出手段によって上記受信装置における受信処理の滞りを検出した場合には上記受信装置へのデータの送信を中断し、
    上記通信状態検出手段によって通信エラーを検出した場合には通信エラーの生じたデータを再送することを特徴とする請求項1〜5のいずれか1項に記載の送信装置。
  7. 上記受信装置における処理状況を使用者に通知するための通知装置を備え、
    上記制御手段は、
    上記受信装置において受信処理の滞りが生じたことを上記通知装置によって使用者に通知することを特徴とする請求項1〜6のいずれか1項に記載の送信装置。
  8. 上記受信装置における処理状況を使用者に通知するための通知装置を備え、
    上記制御手段は、
    上記通知装置によって上記待ち時間を使用者に通知することを特徴とする請求項3に記載の送信装置。
  9. 上記処理状況検出手段が上記待ち時間を検出してからの経過時間を計時する計時手段を備え、
    上記制御手段は、
    上記待ち時間が経過したときに、待ち時間が経過したことを上記通知装置によって使用者に通知することを特徴とする請求項3または8に記載の送信装置。
  10. 使用者からの入力指示を受け付ける入力手段と、
    上記処理状況検出手段が上記待ち時間を検出してからの経過時間を計時する計時手段とを備え、
    上記制御手段は、
    上記待ち時間が経過するまでの期間、上記入力指示を無効にすることを特徴とする請求項3、8、9のいずれか1項に記載の送信装置。
  11. 上記制御手段は、
    複数のデータを各データの通信の成否に関わらず上記受信装置に連続して送信することを特徴とする請求項1に記載の送信装置。
  12. 上記状況検出手段は、
    上記複数のデータを上記受信装置に送信した後、該受信装置から返信されてくる返信データに基づいて、通信時に上記受信処理の滞りによる不具合が発生したかどうかを上記各データのそれぞれについて判断することを特徴とする請求項11に記載の送信装置。
  13. 上記通信検出手段は、
    上記複数のデータを上記受信装置に送信した後、該受信装置から返信されてくる返信データに基づいて、通信時に通信エラーが発生したかどうかを上記各データのそれぞれについて判断することを特徴とする請求項11または12に記載の送信装置。
  14. 表示装置を備え、
    上記制御手段は、
    上記受信処理の停滞による不具合が発生したデータと正常に受信されたデータとを上記表示装置に識別可能に表示することを特徴とする請求項12に記載の送信装置。
  15. 表示装置を備え、
    上記制御手段は、
    通信時に通信エラーが生じたデータと上記受信装置に正常に受信されたデータとを上記表示装置に識別可能に表示することを特徴とする請求項13に記載の送信装置。
  16. 表示装置を備え、
    上記制御手段は、通信時に上記受信処理の停滞による不具合が発生したデータと通信エラーが生じたデータとを上記表示装置に識別可能に表示することを特徴とする請求項11〜15のいずれか1項に記載の送信装置。
  17. 使用者からの指示を受け付ける入力手段を備え、
    上記制御手段は、
    上記入力手段が上記表示装置に表示したデータのいずれか1つ以上を指定する指示を受け付けたときに、該指定されたデータを上記受信装置に送信することを特徴とする請求項14〜16のいずれか1項に記載の送信装置。
  18. 上記制御手段は、通信時に上記受信装置において受信処理の滞りによる不具合が発生したと判断したデータのみを上記受信装置に再送することを特徴とする請求項12に記載の送信装置。
  19. 上記制御手段は、送信時に受信エラーが発生したと判断したデータのみを上記受信装置に再送することを特徴とする請求項13に記載の送信装置。
  20. 上記制御手段は、
    上記複数のデータを上記受信装置に送信する前に、該複数のデータの概略情報を上記受信装置に送信することを特徴とする請求項11に記載の送信装置。
  21. 受信装置に複数のデータを送信する送信装置であって、
    上記複数のデータを上記受信装置に送信する前に、該複数のデータの概略情報を上記受信装置に送信し、
    上記複数のデータを通信の成否に関わらず上記受信装置に連続して送信することを特徴とする送信装置。
  22. 送信装置から送信されてくるデータを受信する受信装置であって、
    受信処理の滞りが発生したことを検出する処理状況検出手段と、
    通信エラーが生じたことを検出する通信状況検出手段と、
    上記処理状況検出手段および通信状況検出手段の検出結果を含む返信データを作成するデータ作成手段と、
    上記処理状況検出手段が上記受信処理の滞りを検出したとき、または上記通信状況検出部が通信エラーを検出したときに、上記返信データを上記送信装置に送信する制御手段とを備えていることを特徴とする受信装置。
  23. 上記処理状況検出手段が上記受信処理の滞りを検出したときに、当該受信処理の滞りが解消して正常に受信処理を行えるようになるまでの時間を算出する算出手段を備え、
    上記データ作成手段は、上記返信データに上記算出した時間を含めることを特徴とする請求項22に記載の受信装置。
  24. 送信装置から送信されてくる複数のデータを受信する受信装置であって、
    上記複数のデータのそれぞれについて正常に受信できたかどうかを検出する検出手段と、
    上記検出手段の検出結果を含む返信データを作成するデータ作成手段と、
    上記送信装置が上記複数のデータの送信を完了したときに、上記返信データを上記送信装置に送信することを特徴とする受信装置。
  25. 送信装置から送信されてくる複数のデータを受信する受信装置であって、
    表示装置と、
    上記複数のデータのそれぞれについて正常に受信できたかどうかを検出する検出手段と、
    上記検出手段の検出結果に基づいて、正常に受信できたデータと正常に受信できなかったデータとを上記表示装置に識別可能に表示させる制御手段とを備えていることを特徴とする受信装置。
  26. 請求項1〜21のいずれか1項に記載の送信装置を動作させる送信プログラムであって、コンピュータを上記各手段として機能させるための送信プログラム。
  27. 請求項26に記載の送信プログラムを記録したコンピュータ読み取り可能な記録媒体。
  28. 請求項22〜25のいずれか1項に記載の受信装置を動作させる受信プログラムであって、コンピュータを上記各手段として機能させるための受信プログラム。
  29. 請求項28に記載の受信プログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2005368702A 2005-12-21 2005-12-21 送信装置、受信装置、送信プログラム、受信プログラム、および記録媒体 Pending JP2007174247A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005368702A JP2007174247A (ja) 2005-12-21 2005-12-21 送信装置、受信装置、送信プログラム、受信プログラム、および記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005368702A JP2007174247A (ja) 2005-12-21 2005-12-21 送信装置、受信装置、送信プログラム、受信プログラム、および記録媒体

Publications (1)

Publication Number Publication Date
JP2007174247A true JP2007174247A (ja) 2007-07-05

Family

ID=38300227

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005368702A Pending JP2007174247A (ja) 2005-12-21 2005-12-21 送信装置、受信装置、送信プログラム、受信プログラム、および記録媒体

Country Status (1)

Country Link
JP (1) JP2007174247A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010001712A1 (en) * 2008-06-30 2010-01-07 Canon Kabushiki Kaisha Data receiving apparatus, data transmitting apparatus, method for controlling the same and program
JP2010006016A (ja) * 2008-06-30 2010-01-14 Canon Inc 画像形成装置及びその制御方法、画像供給装置及びその制御方法
CN104660843A (zh) * 2013-11-19 2015-05-27 佳能株式会社 信息处理装置及其控制方法
JP2016076909A (ja) * 2014-10-09 2016-05-12 株式会社バッファロー リモートコントロール装置、リモートコントロールシステム、及びプログラム
JP2018182488A (ja) * 2017-04-11 2018-11-15 大和機工株式会社 双方向通信システム
JP2020043554A (ja) * 2018-09-14 2020-03-19 オリンパス株式会社 撮像装置、通信システム及び通信方法
DE112020007298T5 (de) 2020-06-05 2023-05-11 Mitsubishi Electric Corporation Übertragungsgerät und Kommunikationssystem

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8731469B2 (en) 2008-06-30 2014-05-20 Canon Kabushiki Kaisha Data receiving apparatus, data transmitting apparatus, method for controlling the same and program
WO2010001712A1 (en) * 2008-06-30 2010-01-07 Canon Kabushiki Kaisha Data receiving apparatus, data transmitting apparatus, method for controlling the same and program
JP2010011363A (ja) * 2008-06-30 2010-01-14 Canon Inc データ供給装置、データ取得装置、それらの制御方法及びプログラム
CN102077581A (zh) * 2008-06-30 2011-05-25 佳能株式会社 数据接收设备、数据发送设备、及其控制方法和程序
RU2451420C1 (ru) * 2008-06-30 2012-05-20 Кэнон Кабусики Кайся Устройство приема данных, устройство передачи данных, способ для управления ими и программа
CN102077581B (zh) * 2008-06-30 2013-06-05 佳能株式会社 数据接收设备、数据发送设备、及其控制方法
JP2010006016A (ja) * 2008-06-30 2010-01-14 Canon Inc 画像形成装置及びその制御方法、画像供給装置及びその制御方法
CN104660843B (zh) * 2013-11-19 2017-12-05 佳能株式会社 信息处理装置及其控制方法
US9544098B2 (en) 2013-11-19 2017-01-10 Canon Kabushiki Kaisha Information processing apparatus, control method for the same and storage medium
CN104660843A (zh) * 2013-11-19 2015-05-27 佳能株式会社 信息处理装置及其控制方法
JP2016076909A (ja) * 2014-10-09 2016-05-12 株式会社バッファロー リモートコントロール装置、リモートコントロールシステム、及びプログラム
JP2018182488A (ja) * 2017-04-11 2018-11-15 大和機工株式会社 双方向通信システム
JP2020043554A (ja) * 2018-09-14 2020-03-19 オリンパス株式会社 撮像装置、通信システム及び通信方法
JP7214414B2 (ja) 2018-09-14 2023-01-30 オリンパス株式会社 撮像装置
DE112020007298T5 (de) 2020-06-05 2023-05-11 Mitsubishi Electric Corporation Übertragungsgerät und Kommunikationssystem

Similar Documents

Publication Publication Date Title
JP2007174247A (ja) 送信装置、受信装置、送信プログラム、受信プログラム、および記録媒体
US7667685B2 (en) Operations panel and image forming apparatus
EP2849050B1 (en) Image forming apparatus, remote control method, and computer-readable recording medium encoded with remote control program
US8838730B2 (en) Apparatus for displaying an image, system processing image data, and method of processing image data
KR100738946B1 (ko) 다른 전자장치에 데이터를 송신하여, 다른 전자장치가데이터 처리를 수행하게 하는 전자장치와, 데이터 처리방법
JP2008238563A (ja) 印刷装置
JP2007281755A (ja) デジタルカメラシステム
JP4508810B2 (ja) 撮像装置、撮像装置による撮影方法およびプログラム
JP5032035B2 (ja) 携帯機器
JP2010068494A (ja) 携帯機器
JP2007028219A (ja) 無線通信装置、無線通信方法及び無線通信システム
JP2006285456A (ja) 情報機器の保守システム
JPH09152997A (ja) データ転送制御装置
US20090210575A1 (en) Information processing apparatus and information processing system notifying information of optional devices
JP4250047B2 (ja) 画像形成装置
JP2022053356A (ja) 通信装置、通信装置の制御方法、プログラム
JP2008185927A (ja) 画像形成装置
US20130128850A1 (en) Wireless communication terminal
JP2003122707A (ja) I2cバスを備えた電子機器及びバス制御方法
JP3734037B2 (ja) 通信端末装置
JP2008068528A (ja) 画像形成装置およびその制御方法
JP2004234339A (ja) 印刷システム
JP5733755B2 (ja) 撮像装置
JP5733755B6 (ja) 撮像装置
JP2015046702A (ja) 写真撮影システム、データ送信方法