IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キヤノン株式会社の特許一覧

特許7589321アクセサリ装置、撮像装置および通信制御プログラム
<>
  • 特許-アクセサリ装置、撮像装置および通信制御プログラム 図1
  • 特許-アクセサリ装置、撮像装置および通信制御プログラム 図2
  • 特許-アクセサリ装置、撮像装置および通信制御プログラム 図3
  • 特許-アクセサリ装置、撮像装置および通信制御プログラム 図4
  • 特許-アクセサリ装置、撮像装置および通信制御プログラム 図5
  • 特許-アクセサリ装置、撮像装置および通信制御プログラム 図6
  • 特許-アクセサリ装置、撮像装置および通信制御プログラム 図7
  • 特許-アクセサリ装置、撮像装置および通信制御プログラム 図8
  • 特許-アクセサリ装置、撮像装置および通信制御プログラム 図9
  • 特許-アクセサリ装置、撮像装置および通信制御プログラム 図10
  • 特許-アクセサリ装置、撮像装置および通信制御プログラム 図11
  • 特許-アクセサリ装置、撮像装置および通信制御プログラム 図12
  • 特許-アクセサリ装置、撮像装置および通信制御プログラム 図13
  • 特許-アクセサリ装置、撮像装置および通信制御プログラム 図14
  • 特許-アクセサリ装置、撮像装置および通信制御プログラム 図15
  • 特許-アクセサリ装置、撮像装置および通信制御プログラム 図16
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-15
(45)【発行日】2024-11-25
(54)【発明の名称】アクセサリ装置、撮像装置および通信制御プログラム
(51)【国際特許分類】
   G03B 17/14 20210101AFI20241118BHJP
   H04N 23/66 20230101ALI20241118BHJP
【FI】
G03B17/14
H04N23/66
【請求項の数】 20
(21)【出願番号】P 2023205081
(22)【出願日】2023-12-05
(62)【分割の表示】P 2022122771の分割
【原出願日】2016-03-31
(65)【公開番号】P2024019290
(43)【公開日】2024-02-08
【審査請求日】2023-12-19
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100110412
【弁理士】
【氏名又は名称】藤元 亮輔
(74)【代理人】
【識別番号】100104628
【弁理士】
【氏名又は名称】水本 敦也
(74)【代理人】
【識別番号】100121614
【弁理士】
【氏名又は名称】平山 倫也
(72)【発明者】
【氏名】和田 克博
(72)【発明者】
【氏名】並木 和広
(72)【発明者】
【氏名】堀江 信行
【審査官】廣田 健介
(56)【参考文献】
【文献】特開2015-022136(JP,A)
【文献】特開2003-069542(JP,A)
【文献】特開2002-072328(JP,A)
【文献】特開2015-121638(JP,A)
【文献】特開平10-239748(JP,A)
【文献】特開2008-205739(JP,A)
【文献】特開2012-053443(JP,A)
【文献】特開2010-266595(JP,A)
【文献】特開2004-343800(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G03B 17/14
G03B 17/02
H04N 5/222-5/257
H04N 23/00
H04N 23/40-23/76
H04N 23/90-23/959
(57)【特許請求の範囲】
【請求項1】
撮像装置に取り外し可能に装着されるアクセサリ装置であって、
前記アクセサリ装置と前記撮像装置との間の通信を制御するアクセサリ制御手段を有し、
前記アクセサリ制御手段は、第1のチャネルの信号レベルが第1の信号レベルから第2の信号レベルに変化した後に、前記第1のチャネルの信号レベルが前記第2の信号レベルに維持されている間に第2のチャネルを介して前記撮像装置に複数フレームのアクセサリデータを送信し、前記第2のチャネルを介した前記アクセサリデータの送信が未完了の状態において、前記第1のチャネルの信号レベルが前記第2の信号レベルから前記第1の信号レベルに変化した場合には、前記第1の信号レベルの状態にて前記撮像装置への前記アクセサリデータの送信を行った後に、前記撮像装置への前記アクセサリデータの送信を停止することを特徴とするアクセサリ装置。
【請求項2】
前記アクセサリ制御手段は、前記複数フレームに含まれる第1のフレームのアクセサリデータの送信が途中の状態において、前記第1のチャネルの信号レベルが前記第2の信号レベルから前記第1の信号レベルに変化した場合には、前記第1のフレームの送信が完了した後に、前記撮像装置への前記アクセサリデータの送信を停止することを特徴とする請求項1に記載のアクセサリ装置。
【請求項3】
前記アクセサリ制御手段は、前記第1のチャネルの信号レベルが前記第2の信号レベルで維持されることに応じて行われる前記通信として、前記第2のチャネルを介した前記アクセサリデータの送信および第3のチャネルを介したカメラデータの受信を行うことを特徴とする請求項1または2に記載のアクセサリ装置。
【請求項4】
前記アクセサリ制御手段は、前記第1のチャネルの信号レベルが前記第2の信号レベルで維持されることに応じて行われる前記通信として、前記第2のチャネルを介した前記アクセサリデータの送信および当該送信に応じた前記第3のチャネルを介した前記カメラデータの受信を行うことを特徴とする請求項3に記載のアクセサリ装置。
【請求項5】
前記アクセサリ制御手段は、前記第1のチャネルの信号レベルが前記第2の信号レベルで維持されることに応じて行われる前記通信として、前記第2のチャネルおよび第3のチャネルを介して前記アクセサリデータの送信を行うことを特徴とする請求項1または2に記載のアクセサリ装置。
【請求項6】
前記アクセサリ制御手段は、前記アクセサリデータのデータサイズを示す情報を送信し、
前記アクセサリ制御手段は、前記第1のチャネルの信号レベルが前記第1の信号レベルから前記第2の信号レベルに変化した後に、前記第1のチャネルの信号レベルが前記第2の信号レベルに維持されている間に、前記第2のチャネルを介して前記情報によって示されたデータサイズに応じて前記アクセサリデータを送信することを特徴とする請求項1から5のいずれか一項に記載のアクセサリ装置。
【請求項7】
前記アクセサリデータは、1フレームごとにスタートビット及びストップビットを有することを特徴とする請求項1から6のいずれか一項に記載のアクセサリ装置。
【請求項8】
前記アクセサリ装置はレンズ装置であることを特徴とする請求項1から7のいずれか一項に記載のアクセサリ装置。
【請求項9】
前記第1及び第2のチャネルは、それぞれ異なる端子を介して接続されることを特徴とする請求項1から8のいずれか一項の記載のアクセサリ装置。
【請求項10】
アクセサリ装置が取り外し可能に装着される撮像装置であって、
前記撮像装置と前記アクセサリ装置との間の通信を制御するカメラ制御手段を有し、
前記カメラ制御手段は、第1のチャネルの信号レベルが第1の信号レベルから第2の信号レベルに変化した後に、前記第1のチャネルの信号レベルが前記第2の信号レベルに維持されている間に第2のチャネルを介して前記アクセサリ装置から複数フレームのアクセサリデータを受信し、前記第2のチャネルを介した前記アクセサリデータの受信が未完了の状態において、前記第1のチャネルの信号レベルが前記第2の信号レベルから前記第1の信号レベルに変化した場合には、前記第1の信号レベルの状態にて前記アクセサリデータの受信を行った後に、前記アクセサリデータの受信を停止することを特徴とする撮像装置。
【請求項11】
前記カメラ制御手段は、前記複数フレームに含まれる第1のフレームのアクセサリデータの受信が途中の状態において、前記第1のチャネルの信号レベルが前記第2の信号レベルから前記第1の信号レベルに変化した場合には、前記第1のフレームの受信が完了した後に、前記アクセサリデータの受信を停止することを特徴とする請求項10に記載の撮像装置。
【請求項12】
前記カメラ制御手段は、前記第1のチャネルの信号レベルが前記第2の信号レベルで維持されることに応じて行われる前記通信として、前記第2のチャネルを介した前記アクセサリデータの受信および第3のチャネルを介したカメラデータの送信を行うことを特徴とする請求項10または11に記載の撮像装置。
【請求項13】
前記カメラ制御手段は、前記第1のチャネルの信号レベルが前記第2の信号レベルで維持されることに応じて行われる前記通信として、前記第2のチャネルを介した前記アクセサリデータの受信および当該受信に応じた前記第3のチャネルを介した前記カメラデータの送信を行うことを特徴とする請求項12に記載の撮像装置。
【請求項14】
前記カメラ制御手段は、前記第1のチャネルの信号レベルが前記第2の信号レベルで維持されることに応じて行われる前記通信として、前記第2のチャネルおよび第3のチャネルを介して前記アクセサリデータの受信を行うことを特徴とする請求項10または11に記載の撮像装置。
【請求項15】
前記カメラ制御手段は、前記アクセサリデータのデータサイズを示す情報を受信し、
前記カメラ制御手段は、前記第1のチャネルの信号レベルが前記第1の信号レベルから前記第2の信号レベルに変化した後に、前記第1のチャネルの信号レベルが前記第2の信号レベルに維持されている間に、前記第2のチャネルを介して前記情報によって示されたデータサイズに応じて前記アクセサリデータを受信することを特徴とする請求項10から14のいずれか一項に記載の撮像装置。
【請求項16】
前記アクセサリデータは、1フレームごとにスタートビット及びストップビットを有することを特徴とする請求項10から15のいずれか一項に記載の撮像装置。
【請求項17】
前記アクセサリ装置はレンズ装置であることを特徴とする請求項10から16のいずれか一項に記載の撮像装置。
【請求項18】
前記第1及び第2のチャネルは、それぞれ異なる端子を介して接続されることを特徴とする請求項10から17のいずれか一項の記載の撮像装置。
【請求項19】
撮像装置に取り外し可能に装着されるアクセサリ装置において、前記アクセサリ装置と前記撮像装置との間の通信を制御する制御方法であって、
第1のチャネルの信号レベルが第1の信号レベルから第2の信号レベルに変化した後に、前記第1のチャネルの信号レベルが前記第2の信号レベルに維持されている間に第2のチャネルを介して前記撮像装置に複数フレームのアクセサリデータを送信する送信ステップを有し、
前記送信ステップでは、前記第2のチャネルを介した前記アクセサリデータの送信が未完了の状態において、前記第1のチャネルの信号レベルが前記第2の信号レベルから前記第1の信号レベルに変化した場合には、前記第1の信号レベルの状態にて前記撮像装置への前記アクセサリデータの送信を行った後に、前記撮像装置への前記アクセサリデータの送信を停止することを特徴とする制御方法。
【請求項20】
アクセサリ装置が取り外し可能に装着される撮像装置において、前記撮像装置と前記アクセサリ装置との間の通信を制御する制御方法であって、
第1のチャネルの信号レベルが第1の信号レベルから第2の信号レベルに変化した後に、前記第1のチャネルの信号レベルが前記第2の信号レベルに維持されている間に第2のチャネルを介して前記アクセサリ装置から複数フレームのアクセサリデータを受信する受信ステップを有し、
前記受信ステップでは、前記第2のチャネルを介した前記アクセサリデータの受信が未完了の状態において、前記第1のチャネルの信号レベルが前記第2の信号レベルから前記第1の信号レベルに変化した場合には、前記第1の信号レベルの状態にて前記アクセサリデータの受信を行った後に、前記アクセサリデータの受信を停止することを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は,相互に通信が可能な撮像装置(以下、カメラ本体という)と交換レンズ等のアクセサリ装置に関する。
【背景技術】
【0002】
アクセサリ装置が着脱可能なカメラ本体を含むアクセサリ交換型カメラシステムでは、カメラ本体がアクセサリ装置を制御したりアクセサリ装置がその制御や撮像に必要なデータをカメラ本体に提供したりするための通信が行われる。特に、交換レンズを用いて記録用動画やライブビュー表示用動画を撮像する際にはその撮像周期に合わせた滑らかなレンズ制御が求められるため、カメラ本体の撮像タイミングと交換レンズの制御タイミングとの同期をとる必要がある。したがって、カメラ本体は、交換レンズからのデータの受信と交換レンズへの各種命令や要求等の送信とを撮像周期内で完了させる必要がある。ただし、カメラ本体が交換レンズから受信するデータ量が増加したり撮像周期が短縮したり(高フレームレート化したり)することで、より短時間で大量のデータの通信が求められる。
【0003】
特許文献1には、一方向通信モード(以下、高速モードともいう)と双方向通信モード(以下、低速モードともいう)とを有するカメラシステムが開示されている。高速モードでは、カメラ本体から交換レンズへのデータ通信のための一方向通信チャネルと交換レンズからカメラ本体へのデータ通信のための別の一方向通信チャネルとを並列で用いた全二重通信により大量のデータを転送するバースト通信が行われる。一方、低速モードでは、1つの通信チャネルでカメラ本体および交換レンズのうち一方から他方への要求通信とこれに応じた他方から一方へのデータ通信とが通信方向を切り替えながら行われる。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2010-237514号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1にて開示されたカメラシステムでは、高速モードにおいて、交換レンズまたはカメラ本体に搭載されたマイクロコンピュータの処理速度不足により連続してデータ通信を行うことが困難となった場合に該データ通信を一時的に停止することができない。この結果、データ通信が破綻するおそれがある。データ通信の破綻を回避するためには、想定される様々なマイクロコンピュータの性能に対して十分に余裕をもった低めのデータ通信速度を通信規格として設けるか通信するデータ量を減らすかする必要がある。しかしながら、これではカメラ本体と交換レンズがともに高い処理性能を有するマイクロコンピュータを搭載していても、その処理性能を生かすことができず、高速なデータ通信を実現することができない。
【0006】
また、例えばカメラ本体において交換レンズから送信されたデータを格納するために設けられたバッファの容量がバースト通信により一気に交換レンズからカメラ本体に送信される大量のデータに対して少ないと、該データをバッファに格納しきれない場合もある。
【0007】
本発明は、大量のデータをスムーズかつ高速で通信することができるようにしたアクセサリ装置および撮像装置等を提供する。
【課題を解決するための手段】
【0008】
本発明の一側面としてのアクセサリ装置は、撮像装置に取り外し可能に装着されるアクセサリ装置であって、アクセサリ装置と撮像装置との間の通信を制御するアクセサリ制御手段を有し、アクセサリ制御手段は、第1のチャネルの信号レベルが第1の信号レベルから第2の信号レベルに変化した後に、第1のチャネルの信号レベルが第2の信号レベルに維持されている間に第2のチャネルを介して撮像装置に複数フレームのアクセサリデータを送信し、第2のチャネルを介したアクセサリデータの送信が未完了の状態において、第1のチャネルの信号レベルが第2の信号レベルから第1の信号レベルの状態にて撮像装置へのアクセサリデータの送信を行った場合には、第1の信号レベルに変化した後に、撮像装置へのアクセサリデータの送信を停止することを特徴とする。
【0009】
また、本発明の他の一側面としての撮像装置は、アクセサリ装置が取り外し可能に装着される撮像装置であって、撮像装置とアクセサリ装置との間の通信を制御するカメラ制御手段を有し、カメラ制御手段は、第1のチャネルの信号レベルが第1の信号レベルから第2の信号レベルに変化した後に、第1のチャネルの信号レベルが第2の信号レベルに維持されている間に第2のチャネルを介してアクセサリ装置から複数フレームのアクセサリデータを受信し、第2のチャネルを介したアクセサリデータの受信が未完了の状態において、第1のチャネルの信号レベルが第2の信号レベルから前記第1の信号レベルに変化した場合には、第1の信号レベルの状態にてアクセサリデータの受信を行った後に、アクセサリデータの受信を停止することを特徴とする。
【0011】
また、本発明の他の一側面としてのアクセサリ装置の制御方法は、撮像装置に取り外し可能に装着されるアクセサリ装置において、アクセサリ装置と撮像装置との間の通信を制御する制御方法であって、第1のチャネルの信号レベルが第1の信号レベルから第2の信号レベルに変化した後に、第1のチャネルの信号レベルが第2の信号レベルに維持されている間に第2のチャネルを介して撮像装置に複数フレームのアクセサリデータを送信する送信ステップを有し、送信ステップでは、第2のチャネルを介したアクセサリデータの送信が未完了の状態において、第1のチャネルの信号レベルが第2の信号レベルから第1の信号レベルに変化した場合には、第1の信号レベルの状態にて撮像装置へのアクセサリデータの送信を行った後に、撮像装置へのアクセサリデータの送信を停止することを特徴とする。
【0012】
さらに、本発明の他の一側面としての制御方法は、アクセサリ装置が取り外し可能に装着される撮像装置において、撮像装置とアクセサリ装置との間の通信を制御する制御方法であって、第1のチャネルの信号レベルが第1の信号レベルから第2の信号レベルに変化した後に、第1のチャネルの信号レベルが第2の信号レベルに維持されている間に第2のチャネルを介してアクセサリ装置から複数フレームのアクセサリデータを受信する受信ステップを有し、受信ステップでは、第2のチャネルを介したアクセサリデータの受信が未完了の状態において、第1のチャネルの信号レベルが第2の信号レベルから第1の信号レベルに変化した場合には、第1の信号レベルの状態にてアクセサリデータの受信を行った後に、アクセサリデータの受信を停止することを特徴とする。
【発明の効果】
【0018】
本発明によれば、アクセサリ装置および撮像装置のそれぞれが他方からのデータ送信を停止または終了させることができるため、アクセサリ装置と撮像装置との間で大量のデータをスムーズかつ高速で通信することができる。
【図面の簡単な説明】
【0019】
図1】本発明の実施例1であるカメラシステムの構成を示すブロック図。
図2】実施例1における第1の通信設定での通信回路を示すブロック図。
図3】実施例1における第1の通信設定でのカメラおよびレンズデータ送受信部の構成を示すブロック図。実施例1における第1の通信設定での通信部の構成を示すブロック図。
図4】実施例1において第1の通信設定でカメラ本体と交換レンズとの間でやり取りされる信号の波形を示す図。
図5】実施例1において第1の通信設定のうち非BUSY付加モードでカメラ本体と交換レンズとの間でやり取りされる信号の波形を示す図。
図6】実施例1における第2の通信設定での通信回路を示すブロック図。
図7】実施例1における第2の通信設定でのカメラおよびレンズデータ送受信部の構成を示すブロック図。
図8】実施例1において第2の通信設定でカメラ本体と交換レンズとの間でやり取りされる信号の波形を示す図。
図9】実施例1における第1の通信設定でカメラ本体と交換レンズとの間でやり取りされるデータフレームの関係を示す図。
図10】本発明の実施例2であるカメラシステムの構成を示すブロック図。
図11】実施例2における通信制御を示すフローチャート。
図12】実施例2においてカメラ本体と交換レンズとの間でやり取りされる信号の波形を示す図。
図13】本発明の実施例3であるカメラシステムにおける所定時間の設定例を示す図。
図14】本発明の実施例4における通信制御を示すフローチャート。
図15】実施例4におけるメモリコントローラの構成を示すブロック図。
図16】実施例4においてカメラ本体と交換レンズとの間でやり取りされる信号の波形を示す図。
【発明を実施するための形態】
【0020】
以下、本発明の実施例について図面を参照しながら説明する。
【実施例1】
【0021】
図1には、本発明の実施例1である撮像装置としてのカメラ本体200とこれに取り外し可能に装着されたアクセサリ装置としての交換レンズ100とを含む撮像システム(以下、カメラシステムという)の構成を示している。
【0022】
カメラ本体200と交換レンズ100は、それぞれが有する後述する通信部を介して制御命令や内部情報の伝送を行う。それぞれの通信部はともに複数の通信形式をサポートしており、通信するデータの種類や通信目的に応じて互いに同期して同一の通信フォーマットに切り替えることにより、様々な状況に対する最適な通信フォーマットを選択することが可能となっている。
【0023】
まず、交換レンズ100とカメラ本体200の具体的な構成について説明する。交換レンズ100とカメラ本体200は、結合機構であるマウント300を介して機械的および電気的に接続されている。交換レンズ100は、マウント300に設けられた電源端子部(図示せず)を介してカメラ本体200から電源の供給を受け、後述する各種アクチュエータやレンズマイクロコンピュータ(以下、レンズマイコンという)111を動作させる。また、交換レンズ100とカメラ本体200は、マウント300に設けられた通信端子部(図2に示す)を介して相互に通信を行う。
【0024】
交換レンズ100は、撮像光学系を有する。撮像光学系は、被写体OBJ側から順に、フィールドレンズ101と、変倍を行う変倍レンズ102と、光量を調節する絞りユニット114と、像振れ補正レンズ103と、焦点調節を行うフォーカスレンズ104とを含む。
【0025】
変倍レンズ102とフォーカスレンズ104はそれぞれ、レンズ保持枠105,106により保持されている。レンズ保持枠105,106は、不図示のガイド軸により図中に破線で示した光軸方向に移動可能にガイドされており、それぞれステッピングモータ107,108によって光軸方向に駆動される。ステッピングモータ107,108はそれぞれ、駆動パルスに同期して変倍レンズ102およびフォーカスレンズ104を移動させる。
【0026】
像振れ補正レンズ103は、撮像光学系の光軸に直交する方向に移動することで、手振れ等に起因する像振れを低減する。
【0027】
レンズマイコン111は、交換レンズ100内の各部の動作を制御するアクセサリ制御部である。レンズマイコン111は、アクセサリ通信部としてのレンズ通信部112(レンズデータ送受信部112b)を介して、カメラ本体200から送信された制御コマンドを受信し、レンズデータ(アクセサリデータ)の送信要求を受ける。また、レンズマイコン111は、制御コマンドに対応するレンズ制御を行い、レンズ通信部112を介して送信要求に対応するレンズデータをカメラ本体200に送信する。レンズマイコン111は、コンピュータプログラムとしての通信制御プログラムに従ってカメラ本体200(後述するカメラマイクロコンピュータ205)との通信に関する動作を行う。
【0028】
本実施例では、レンズマイコン111とカメラマイクロコンピュータ(以下、カメラマイコンという)205との間の通信方式として調歩同期式通信を採用している。レンズマイコン111とカメラマイコン205は、通信の異常(通信エラー)が生じたことを示すエラー情報を共有することができる。
【0029】
また、レンズマイコン111は、制御コマンドのうち変倍やフォーカシングに関するコマンドに応答してズーム駆動回路119およびフォーカス駆動回路120に駆動信号を出力してステッピングモータ107,108を駆動させる。これにより、変倍レンズ102による変倍動作を制御するズーム処理やフォーカスレンズ104による焦点調節動作を制御するAF(オートフォーカス)処理が行われる。
【0030】
交換レンズ100は、ユーザにより回転操作可能なマニュアルフォーカスリング130と、該マニュアルフォーカスリング130の回転操作量を検出するフォーカスエンコーダ131とを有する。レンズマイコン111は、フォーカスエンコーダ131により検出されたマニュアルフォーカスリング130の回転操作量に応じてフォーカス駆動回路120にステッピングモータ108を駆動させてフォーカスレンズ104を移動させる。これにより、MF(マニュアルフォーカス)が行われる。
【0031】
絞りユニット114は、絞り羽根114a,114bを備えて構成される。絞り羽根114a,114bの状態は、ホール素子115により検出され、増幅回路122およびA/D変換回路123を介してレンズマイコン111に入力される。レンズマイコン111は、A/D変換回路123からの入力信号に基づいて絞り駆動回路121に駆動信号を出力して絞りアクチュエータ113を駆動させる。これにより、絞りユニット114による光量調節動作を制御する。
【0032】
さらに、レンズマイコン111は、交換レンズ100内に設けられた振動ジャイロ等の不図示の振れセンサにより検出された振れに応じて、防振駆動回路125を介して防振アクチュエータ126を駆動する。これにより、像振れ補正レンズ103の移動を制御する防振処理が行われる。
【0033】
カメラ本体200は、CCDセンサやCMOSセンサ等の撮像素子201と、A/D変換回路202と、信号処理回路203と、記録部204と、カメラマイクロコンピュータ(以下、カメラマイコンという)205と、表示部206とを有する。
【0034】
撮像素子201は、交換レンズ100内の撮像光学系により形成された被写体像を光電変換して電気信号(アナログ信号)を出力する。A/D変換回路202は、撮像素子201からのアナログ信号をデジタル信号に変換する。信号処理回路203は、A/D変換回路202からのデジタル信号に対して各種画像処理を行って映像信号を生成する。信号処理回路203は、映像信号から被写体像のコントラスト状態、つまり撮像光学系の焦点状態を示すフォーカス情報や露出状態を表す輝度情報も生成する。信号処理回路203は、映像信号を表示部206に出力し、表示部206は映像信号を構図やピント状態等の確認に用いられるライブビュー画像として表示する。また、信号処理回路203は、映像信号を記録部204に出力し、記録部204は映像信号を記録する。
【0035】
メモリ(記憶部)210は、DDR(Double Data Rate SDRAM)等により構成される。メモリ210は、撮像素子201により得られたデジタル撮像信号または画像処理回路203により生成された映像信号を格納したり、レンズマイコン111から受信したレンズデータを格納したりする。
【0036】
カメラ制御部としてのカメラマイコン205は、不図示の撮像指示スイッチおよび各種設定スイッチ等を含むカメラ操作部207からの入力に応じてカメラ本体200の制御を行う。また、カメラマイコン205は、カメラ通信部208(カメラデータ送受信部208b)を介して、不図示のズームスイッチの操作に応じてズームレンズ102の変倍動作に関する制御コマンドをレンズマイコン111に送信する。さらに、カメラマイコン205は、カメラ通信部208を介して、輝度情報に応じた絞りユニット114の光量調節動作やフォーカス情報に応じたフォーカスレンズ104の焦点調節動作に関する制御コマンドをレンズマイコン111に送信する。カメラマイコン205は、コンピュータプログラムとしての通信制御プログラムに従ってレンズマイコン111との通信に関する動作を行う。
【0037】
次に、図2を用いてカメラ本体200(カメラマイコン205)と交換レンズ100(レンズマイコン111)との間で構成される通信回路とこれらの間で行われる通信について説明する。カメラマイコン205は、レンズマイコン111との間での通信方式や通信設定を管理する機能と、レンズマイコン111に対して送信要求等の通知を行う機能とを有する。また、レンズマイコン111は、レンズデータを生成する機能と該レンズデータを送信する機能とを有する。
【0038】
カメラマイコン205はカメラ通信インタフェース回路208aを有し、レンズマイコン111はレンズ通信インタフェース回路112aを有する。カメラマイコン205(カメラデータ送受信部208b)とレンズマイコン111(レンズデータ送受信部112b)は、マウント300に設けられた通信端子部(図中に3つの四角形で示す)と上記通信インタフェース回路208a,112aを介して通信を行う。本実施例では、カメラマイコン205とレンズマイコン111は、3つのチャネルを用いた(3線式の)調歩同期式シリアル通信を行う。カメラデータ送受信部208bとカメラ通信インタフェース回路208aとによりカメラ通信部112が構成され、レンズデータ送受信部112bとレンズ通信インタフェース回路112aとによりアクセサリ通信部としてのレンズ通信部112が構成される。
【0039】
上記3つのチャネルは、通知チャネルとしての送信要求チャネルと、第1のデータ通信チャネルと、第2のデータ通信チャネルとから構成される。送信要求チャネルは、カメラマイコン205からレンズマイコン111へのレンズデータの送信要求(送信指示)や後述する通信設定の切替え要求(切替え指示)等の通知に用いられる。送信要求チャネルでの通知は該送信要求チャネルでの信号のレベル(電圧レベル)をHigh(第1のレベル)とLow(第2のレベル)との間で切り替えることで行う。以下の説明では、送信要求チャネルに供給される信号を送信要求信号RTSという。
【0040】
第1のデータ通信チャネルは、レンズマイコン111からカメラマイコン205へのレンズデータ送信に用いられる。以下の説明では、第1のデータ通信チャネルでレンズマイコン111からカメラマイコン205に信号として送信されるレンズデータ(アクセサリデータ)を、レンズデータ信号DLCという。第2のデータ通信チャネルは、カメラマイコン205からレンズマイコン111へのカメラデータ送信に用いられる。以下の説明では、第2のデータ通信チャネルでカメラマイコン205からレンズマイコン111に信号として送信されるカメラデータを、カメラデータ信号DCLという。
【0041】
送信要求信号RTSは、通信マスタとしてのカメラマイコン205から通信スレーブとしてのレンズマイコン111に送られる。カメラデータ信号DCLは、カメラマイコン205からレンズマイコン111への制御コマンドや送信要求コマンド等を含む。レンズデータ信号DLCは、レンズマイコン111からカメラマイコン205に送信される様々なデータを含む。カメラマイコン205とレンズマイコン111は、予め通信速度を設定し、この設定に沿った通信ビットレートで送受信を行う。通信ビットレートとは、1秒間に転送することができるデータ量を示し、単位はbps(bits per second)で表される。カメラマイコン205とレンズマイコン111は、相互に送受信を行う全二重通信方式(フルデュープレックス方式)で通信する。
【0042】
なお、3つのチャネルを用いた調歩同期式シリアル通信に代えて、3つのチャネルを用いたクロック同期式シリアル通信を行ってもよい。また、レンズマイコン111からカメラマイコン205に送信されるデータ量が多い場合に、クロック同期式シリアル通信から調歩同期式シリアル通信に切り替えるようにしてもよい。この場合、通知チャネルを、カメラマイコン205からレンズマイコン111に対してクロック信号LCLKを供給するクロックラインとして用いることができる。これにより、新たなチャネルを追加することなく、調歩同期式シリアル通信とクロック同期式シリアル通信という2つの通信方式を切り替えて用いることができる。
【0043】
3つのチャネルを用いたクロック同期式シリアル通信では、通信マスタとしてのカメラマイコン205から通信スレーブとしてのレンズマイコン111にクロック信号LCLKがクロックチャネルを通じて出力される。カメラデータ信号DCLは、カメラマイコン205からレンズマイコン111への制御コマンドや送信要求コマンド等を含む。一方、レンズデータ信号DLCは、クロック信号LCLKに同期してレンズマイコン111からカメラマイコン205に送信される様々なデータを含む。クロック同期式シリアル通信においては、カメラマイコン205とレンズマイコン111は、共通のクロック信号LCLKに同期して相互に送受信を行う全二重通信方式で通信する。
【0044】
次に、図3図5および図9を用いて、カメラマイコン205とレンズマイコン111との間での通信設定である第1の通信設定について説明する。図3には、カメラマイコン205内のカメラデータ送受信部208bおよびレンズマイコン111内のレンズデータ送受信部112bの構成を示す。205aはカメラマイコン205の本体としてのCPUである。301はRTS制御部であり、302はRAM等により構成された送信データ用バッファ(カメラデータバッファ)である。303はRAM等で構成された受信データ用バッファであり、304は上記バッファ302,303へのデータ格納とデータ読み出しを制御するバッファ制御部である。
【0045】
また、図3には、カメラ本体200におけるカメラマイコン205内のカメラデータ送受信208bの構成を示す。205aはカメラマイコン205の本体としてのCPUである。301はRTS制御部であり、302はRAM等により構成された送信データ用バッファである。303はRAM等で構成された受信データ用バッファであり、304は上記バッファ302,303へのデータ格納とデータ読み出しを制御するバッファ制御部である。
【0046】
一方、レンズマイコン111内において、111aはレンズマイコン111の本体としてのCPUである。316はRTS検出部であり、311はRAM等により構成された受信データ用バッファである。312はRAM等で構成された送信データ用バッファ(アクセサリデータバッファ)であり、313は上記バッファ311,312へのデータ格納とデータ読み出しを制御するバッファ制御部である。
【0047】
カメラマイコン205からレンズマイコン111に送信されるカメラデータ信号DCLは送信データ用バッファ302に格納される。例えば、128バイトのカメラデータ信号DCLを送信する場合には、送信データ用バッファ302にこの128バイトのカメラデータ信号DCLを格納してから送信が開始される。バッファ制御部304は、送信データ用バッファ302から送信するカメラデータ信号DCLを1フレーム毎に読み出す。そして、読み出された1フレーム毎のカメラデータ信号DCLは、パラレル-シリアル変換部305にてパラレルデータ信号からシリアルデータ信号に変換され、第2のデータ通信チャネルでレンズマイコン111に送信される。
【0048】
カメラマイコン205から送信されたカメラデータ信号DCLは、レンズマイコン111内のシリアル-パラレル変換部314にてシリアルデータ信号からパラレルデータ信号に変換される。バッファ制御部313は、パラレルデータ信号に変換されたカメラデータ信号DCLを受信データ用バッファ311に格納する。
【0049】
レンズマイコン111からカメラマイコン205に送信されるレンズデータ信号DLCは送信データ用バッファ312に格納される。例えば、128バイトのレンズデータ信号DLCを送信する場合には、送信データ用バッファ312にこの128バイトのレンズデータ信号DLCを格納してから送信が開始される。バッファ制御部313は、送信データ用バッファ312から送信するレンズデータ信号DLCを1フレーム毎に読み出す。そして、読み出された1フレーム毎のレンズデータ信号DLCは、パラレル-シリアル変換部315にてパラレルデータ信号からシリアルデータ信号に変換され、第1のデータ通信チャネルでカメラマイコン205に送信される。
【0050】
レンズマイコン111から送信されたレンズデータ信号DLCは、カメラマイコン205内のシリアル-パラレル変換部306にてシリアルデータ信号からパラレルデータ信号に変換される。バッファ制御部304は、パラレルデータ信号に変換されたレンズデータ信号DLCを受信データ用バッファ303に格納する。受信データ用バッファ303に格納されたレンズデータ信号DLCは、DMA制御部307により受信データ用バッファ303から読み出され、該読み出されたデータはメモリ210に転送されて格納される。
【0051】
この第1の通信設定には、さらに以下に説明するように、BUSYフレームが付加される通信設定(以下、BUSY付加モードという)とBUSYフレームが付加されない通信設定(以下、非BUSY付加モードという)とが設けられている。図4(A)~(C)には、第1の通信設定においてカメラマイコン205とレンズマイコン111との間でやり取りされる信号の波形を示している。このやり取りの手順を取り決めたものを通信プロトコルと呼ぶ。
【0052】
図4(A)は通信単位である1フレームの信号波形を示している。1フレームのデータフォーマットの内訳は、レンズデータ信号DLCとカメラデータ信号DCLとでは一部異なる部分がある。
【0053】
まずレンズデータ信号DLCのデータフォーマットについて説明する。1フレームのレンズデータ信号DLCは、大きな区分けとして、前半のデータフレームとこれに続くBUSYフレームとにより構成されている。レンズデータ信号DLCは、データ送信を行っていない非送信状態では信号レベルはHighに維持されている。
【0054】
レンズマイコン111は、レンズデータ信号DLCの1フレームの送信開始をカメラマイコン205に通知するため、レンズデータ信号DLCの信号レベルを1ビット期間の間Lowとする。この1ビット期間を1フレームの開始を示すスタートビットSTと呼ぶ。すなわち、このスタートビットSTからデータフレームが開始される。スタートビットSTは、レンズデータ信号DLCの1フレームごとにその先頭ビットに設けられている。
【0055】
続いて、レンズマイコン111は、次の2ビット目から9ビット目までの8ビット期間で1バイトのレンズデータを送信する。データのビット配列はMSBファーストフォーマットとして、最上位のデータD7から始まり、順にデータD6、データD5と続き、最下位のデータD0で終わる。そして、レンズマイコン111は、10ビット目に1ビットのパリティー情報PAを付加し、1フレームの最後を示すストップビットSPの期間のレンズデータ信号DLCの信号レベルをHighとする。これにより、スタートビットSTから開始されたデータフレーム期間が終了する。
【0056】
次に、図中の「DLC(BUSY有)」に示すように、レンズマイコン111は、ストップビットSPの後にBUSYフレームを付加する。BUSYフレームは、レンズマイコン111からカメラマイコン205に通知する通信待機要求BUSYの期間を表す。レンズマイコン111は、通信待機要求BUSYを解除するまでレンズデータ信号DLCの信号レベルをLowに保持する。
【0057】
一方、レンズマイコン111からカメラマイコン205への通信待機要求BUSYの通知が不要な場合がある。この場合のために、図中の「DLC(BUSY無)」に示すように、BUSYフレーム(以下、BUSY通知ともいう)を付加せずに1フレームを構成するデータフォーマットも設けられている。つまり、レンズデータ信号DLCのデータフォーマットとしては、レンズマイコン側の処理状況に応じてBUSY通知を付加したものと付加しないものとを選択することができる。
【0058】
カメラマイコン205が行うBUSY通知の有無の識別方法について説明する。図4(A)中の「DLC(BUSY無)」に示す信号波形および図4(A)中の「DLC(BUSY有)」に示す信号波形には、B1とB2というビット位置が含まれている。カメラマイコン205は、これらB1とB2のいずれかのビット位置をBUSY通知の有無を識別するBUSY識別位置Pとして選択する。このように本実施例では、BUSY識別位置PをB1とB2のビット位置から選択するデータフォーマットを採用する。これにより、レンズマイコン111の処理性能によってレンズデータ信号DLCのデータフレーム送信後にBUSY通知(DLCのLow)が確定するまでの処理時間が異なる課題に対処することができる。
BUSY識別位置PをB1のビット位置とするかB2のビット位置とするかは、通信を行う前にカメラマイコン205とレンズマイコン111との間で通信により決定する。なお、BUSY識別位置PをB1とB2のビット位置のいずれかに固定する必要はなく、両マイコン205,111の処理能力に応じて変更してもよい。
【0059】
図4(B)は、図4(A)の「DLC(BUSY有)」に示すBUSY付加モードで連続的に通信を行う場合の信号波形を示している。レンズマイコン111からの通信待機要求BUSY(BUSYフレーム)は、第1のデータ通信チャネルでレンズデータ信号DLCを用いて通知され、通信待機要求BUSYが解除された後に次の通信が開始される。図4(B)に示したCMD1は、カメラマイコン205からレンズマイコン111にカメラデータ信号DCLとして送信される送信要求コマンドを示す。レンズマイコン111は、この送信要求コマンドCMD1を受信することに応じて、該送信要求コマンドCMD1に対応する2バイトのレンズデータ信号DT1(DT1a,DT1b)をカメラマイコン205に送信する。
【0060】
また、図4(C)は、BUSY付加モードと非BUSY付加モードとを切り替えて通信を行う場合の信号波形を示している。図4(C)の例では、最初にBUSY付加モードで通信を行い、その後に非BUSY付加モードで通信を行う。CMD2は、カメラマイコン205からレンズマイコン111にカメラデータ信号DCLとして送信される制御コマンドと送信要求コマンドを示す。なお、図では制御コマンドと送信要求コマンドを1フレームで送信する場合を示しているが、制御コマンドと送信要求コマンドを別々のフレームで送信してもよい。レンズマイコン111は、コマンドCMD2のうち制御コマンドを受信することに応じて通信設定(通信モード)をBUSY付加モードからBUSYフレームが付加されない方式に切り替える。そして、レンズマイコン111は、コマンドCMD2のうち送信要求コマンドを受信することに応じて、該送信要求コマンドに対応する3バイトのレンズデータ信号DT2(DT2a~DT2c)をカメラマイコン205に送信する。
【0061】
次に、カメラデータ信号DCLのデータフォーマットについて説明する。1フレームのデータフレームの仕様はレンズデータ信号DLCと共通である。ただし、カメラデータ信号DCLは、レンズデータ信号DLCとは異なり、BUSYフレームの付加が禁止されている。
【0062】
次に、カメラマイコン205とレンズマイコン111との間での第1の通信設定での通信の手順について説明する。まず、BUSY付加モードでの通信の手順について説明する。
【0063】
カメラマイコン205は、レンズマイコン111との通信を開始するイベントが発生すると、送信要求信号RTSのレベルをLowにする(以下、送信要求信号RTSをアサートするという)ことで、レンズマイコン111に対して送信要求を通知する。レンズマイコン111は、送信要求信号RTSのLowにより送信要求を検出すると、カメラマイコン205に送信するレンズデータ信号DLCの生成処理を行う。そして、該レンズデータ信号DLCの送信準備が整うと、第1のデータ通信チャネルでの1フレームのレンズデータ信号DLCの送信を開始する。ここで、レンズマイコン111は、送信要求信号RTSがLowとなった時点からカメラマイコン205とレンズマイコン111との間で相互に設定した設定時間内にレンズデータ信号DLCの送信を開始すればよい。すなわち、送信要求信号RTSがLowとなった時点からレンズデータ信号DLCの送信開始までの間に、最初のクロックパルスが入力される時点までに送信するレンズデータを確定させておく必要があるといった厳しい制約はない。
【0064】
次にカメラマイコン205は、レンズマイコン111から受信したレンズデータ信号DLCのデータフレームの先頭ビットであるスタートビットSTの検出に応じて、送信要求信号RTSのレベルをHighに戻す(以下、送信要求信号RTSをネゲートするという)。これにより、送信要求を解除するとともに第2のデータ通信チャネルでのカメラデータ信号DCLの送信を開始する。なお、送信要求信号RTSのネゲートとカメラデータ信号DCLの送信開始はどちらが先であってもよく、レンズデータ信号DLCのデータフレームの受信が完了するまでにこれらを行えばよい。
【0065】
レンズデータ信号DLCのデータフレームを送信したレンズマイコン111は、カメラマイコン205に通信待機要求BUSYを通知する必要がある場合に、レンズデータ信号DLCにBUSYフレームを付加する。カメラマイコン205は、通信待機要求BUSYの通知の有無を監視しており、通信待機要求BUSYが通知されている間は次の送信要求のために送信要求信号RTSをアサートすることが禁止される。レンズマイコン111は、通信待機要求BUSYによりカメラマイコン205からの通信を待機させている期間に必要な処理を実行し、次の通信準備が整った後に通信待機要求BUSYを解除する。カメラマイコン205は、通信待機要求BUSYが解除され、かつカメラデータ信号DCLのデータフレームの送信が完了したことを条件に、次の送信要求のために送信要求信号RTSをアサートすることが許可される。
【0066】
このように、本実施例では、カメラマイコン205での通信開始イベントがトリガとなって送信要求信号RTSがアサートされたことに応じて、レンズマイコン111がカメラマイコン205にレンズデータ信号DLCのデータフレームの送信を開始する。そして、カメラマイコン205は、レンズデータ信号DLCのスタートビットSTを検出することに応じて、カメラデータ信号DCLのデータフレームのレンズマイコン111への送信を開始する。ここでレンズマイコン111は、必要に応じて通信待機要求BUSYのためにレンズデータ信号DLCのデータフレームの後にBUSYフレームを付加し、その後、通信待機要求BUSYを解除することで1フレームの通信処理が完了する。この通信処理により、カメラマイコン205とレンズマイコン111との間で相互に1バイトのデータが送受信される。
【0067】
次に、非BUSY付加モードでの通信の手順について説明する。非BUSY付加モードは、BUSY付加モードに比べて、BUSYフレームが付加されない分、より高速なデータ通信が可能である。
【0068】
図5(A)には、非BUSY付加モードにおいてカメラマイコン205とレンズマイコン111との間でやり取りされる信号の波形を示している。図5(A)には、最小通信単位である1フレームが連続して3フレーム通信される際の信号波形を示している。先に述べたように、非BUSY付加モードでは、レンズデータ信号DLCに通信待機要求BUSYは付加されない。
【0069】
非BUSY付加モードでは、レンズデータ信号DLCのデータフォーマットは、1フレームがデータフレームのみで構成され、BUSYフレームは存在しない。このため、非BUSY付加モードでは、レンズマイコン111からカメラマイコン205への通信待機要求BUSYを通知することができない。このようなデータフォーマットは、比較的大きな容量のデータをカメラマイコン205とレンズマイコン111との間で転送する際に、フレーム間の間隔を短くした連続通信(バースト通信)を行う用途に用いられる。すなわち、非BUSY付加モードにより、大容量データの高速通信が可能となる。
【0070】
また、非BUSY付加モードでは、レンズデータ信号DLCのフレームごとの最終ビットであるストップビットSPの数を、カメラデータ信号DCLのフレームごとのストップビットSTの数よりも多い2としている。そして、このストップビット数の違いにより、レンズデータ信号DLCの1フレームのビット長をカメラデータ信号DCLの1フレームのビット長より長くしている。この目的については後述する。
【0071】
図5(B)には、カメラマイコン205とレンズマイコン111がそれぞれ、nフレームのカメラデータ信号DCLおよびレンズデータ信号DLCを連続して送受信する場合(すなわちバースト通信を行う場合)の信号の波形を示している。この通信の開始に先立って、カメラマイコン205は、図4(A)に示した1フレームのカメラデータ信号DCLの通信によって、レンズマイコン111から、送信されるデータサイズ情報(フレーム数)であるnフレームの通知を受けている。
【0072】
カメラマイコン205は、レンズマイコン111との通信を開始するイベントが発生すると、送信要求信号RTSをアサートする。その後、非BUSY付加モードでは、BUSY付加モードと異なり、カメラマイコン205は送信要求信号RTSを1フレームごとにネゲートする必要はなく、連続してデータ送受信が可能な状態である間は送信要求信号RTSのアサート状態を維持する。
【0073】
レンズマイコン111は、送信要求信号RTSのアサートにより送信要求を検出すると、カメラマイコン205に送信するレンズデータ信号DLCの生成処理を行う。そして、該レンズデータ信号DLCの送信準備が整うと、第1のデータ通信チャネルでのレンズデータ信号DLCの1フレーム目DL1の送信を開始する。
【0074】
1フレーム目のレンズデータ信号DLCのデータフレームを送信したレンズマイコン111は、再び送信要求信号RTSを確認する。このとき、送信要求信号RTSがアサート状態であった場合には、レンズマイコン111は送信が完了した1フレーム目に続けて次のレンズデータ信号DLCの2フレーム目DL2をカメラマイコン205に送信する。このようにして送信要求信号RTSのアサート状態が維持されている間はレンズマイコン111からのレンズデータ信号DLC(DL1~DLn)がカメラマイコン205に連続して送信される。そして、データサイズ情報に示されたフレーム数nの送信が完了すると、レンズデータ信号DLCの送信が停止される。
【0075】
カメラマイコン205からは、レンズマイコン111からのレンズデータ信号DCLのフレームごとのスタートビットSTを検出することに応じて、nフレームのカメラデータ信号DCL(DC1~DCn)の第2のデータ通信チャネルでの送信が行われる。このように、カメラマイコン205が送信要求信号RTSのアサート状態を維持することにより、データサイズ情報に対応するフレーム数のレンズデータ信号DLCおよびカメラデータ信号DCLの連続送受信を行うことができる。
【0076】
カメラマイコン205は、レンズマイコン111から連続受信したレンズデータ信号DLCをシリアル-パラレル変換部306を介して一旦、受信データ用バッファ303に格納する。DMA制御部307は、受信データ用バッファ303に格納されたレンズデータ信号DLCをメモリ210に転送して最終的に該メモリ210に格納する。このため、受信データ用バッファ303の容量を超えるデータ量のレンズデータ信号DLCを受信する際には、受信データ用バッファ303に先に格納されたレンズデータ信号DLCをメモリ210に転送して該バッファ303の空き容量を確保しておく必要がある。
【0077】
ただし、カメラ本体200に設けられた信号処理回路203の処理状況によってDMA制御部307がメモリ210にアクセスできない場合には、レンズマイコン111から連続受信したレンズデータ信号DLCをメモリ210に転送することができなくなる。この結果、受信データ用バッファ303の空き容量が確保できず、連続受信したレンズデータ信号DLCの一部をメモリ210に格納することができなくなる。例えば、既にカメラマイコン205にて受信されたレンズデータ信号DLCのうちメモリ210に転送されずに受信データ用バッファ303に残ったデータが後から受信されたデータによって上書きされることで、メモリ210に格納されないデータが生じてしまう。そこで、受信データ用バッファ303に格納されているデータが上書きされる前に、カメラマイコン205とレンズマイコン111との間で実行されている通信を一時的に停止する必要がある。
【0078】
図5(C)には、図5(B)で示した連続データ送受信の通信中にカメラマイコン205から又はレンズマイコン111から一時的な通信停止が指示された場合の信号の波形を示している。ここでも、カメラマイコン205から送信要求信号RTSがアサートされることでレンズマイコン111がレンズデータ信号DLCの送信を開始し、そのスタートビットSTの検出に応じてカメラマイコン205がカメラデータ信号DCLの送信を開始する。
【0079】
T2w1は、カメラマイコン205から通信停止が指示された期間である通信停止期間を示す。該指示は、カメラマイコン205が送信要求信号RTSを一時的にネゲートすることでレンズマイコン111に通知される。レンズマイコン111は、送信要求信号RTSがネゲートされたことを検出すると、その検出時点で送信途中のレンズデータ信号DLCのフレーム(図ではDL6:以下、停止フレームという)の送信を完了した後、送信を停止する。このレンズデータ信号DLCの送信停止を受けて、カメラマイコン205も、カメラデータ信号DCLのうち上記停止フレームに対応するフレーム(DC6)を送信した後にカメラデータ信号DCLの送信を停止する。このような通信制御により、連続データ送受信の通信中に通信停止指示が発生した場合でもレンズデータ信号DLCとカメラデータ信号DCLの送信済みフレーム数を同数にする(同期をとる)ように管理することができる。
【0080】
カメラマイコン205は、通信停止の要求イベントがなくなると、送信要求信号RTSを再びアサートすることでレンズマイコン111に対して通信再開を指示することができる。通信再開指示に応じて、レンズマイコン111は停止フレームの次のフレーム(DL7:以下、再開フレームという)からレンズデータ信号DLCの送信を再開する。そして、再開フレームのスタートビットSTの検出に応じて、カメラマイコン205はカメラデータ信号DCLの上記再開フレームに対応するフレーム(DC7)からの送信を再開する。
【0081】
このように、カメラマイコン205は、送信要求信号RTSを一時的にネゲートすることでレンズマイコン111との通信を停止する。そして、その時点で受信したレンズデータ信号DLCのフレーム数がデータサイズ情報に示されたフレーム数に満たない場合は、送信要求信号RTSを再びアサートすることで、レンズマイコン111からのレンズデータ信号DLCの受信を再開することができる。
【0082】
通信停止期間T2w1の終了後は、カメラマイコン205およびレンズマイコン111とも通信停止を指示または通知せず、上述した再開フレームDL7,DC7およびそれに続くフレームDL8,DC8~DL9,DC9の順で連続データ通信を行う。
【0083】
そして、レンズマイコン111内でフレームDL9の送信(カメラマイコン205でのフレームDC9の受信)が完了したときに通信停止要求イベントが発生することで、レンズマイコン111はカメラマイコン205に対して通信停止を通知する。該通知は、レンズマイコン111が送信要求信号RTSがアサート状態であってもレンズデータ信号DLCを送信しないことで行う。T2w2はレンズマイコン111から通信停止が通知された期間である通信停止期間を表している。
【0084】
カメラマイコン205は、レンズデータ信号DLCのフレームごとのスタートビットSTを常時監視しており、スタートビットSTを検出しない場合には次のカメラデータ信号DCLのフレームの送信を停止するよう取り決めている。このため、カメラマイコン205は、送信要求信号RTSをアサートしていてもレンズマイコン111からのレンズデータ信号DLC(図ではDL10)を受信しない場合はレンズマイコン111にカメラデータ信号DCL(DC10)を送信せずに通信を停止する。なお、カメラマイコン205は、レンズマイコン111からの指示による通信停止期間T2w2中は送信要求信号RTSをアサート状態に維持する。
【0085】
その後、レンズマイコン111内で通信停止要求イベントがなくなってレンズマイコン111がレンズデータ信号DLCの再開フレームDL10の送信を再開する。カメラマイコン205は、該再開フレームDL10のスタートビットSTを検出することに応じてカメラデータ信号DCLにおける対応フレームDC10の送信を再開する。
【0086】
次に、非BUSY付加モードにおいてカメラマイコン205が出力するカメラデータ信号DCLのビットレートとレンズマイコン111が出力するレンズデータ信号DLCのビットレートに差がある場合に生じ得る問題について、図9(A)を用いて説明する。図9(A)は、カメラデータ信号DCLとレンズデータ信号DLCの1フレーム(データフレーム)のビット長が同じで、カメラデータ信号DCLのビットレートがレンズデータ信号DLCのそれよりも遅い場合の両データ信号DCL,DLCのフレームの関係を示す。図中の矢印は、カメラマイコン205がレンズデータ信号DLCにおけるどのスタートビットSTを検出してカメラデータ信号DCLにおけるどのフレームをレンズマイコン111に送信するかを示す。
【0087】
カメラデータ信号DCLのフレームは、そのビットレートがレンズデータ信号DLCに比べて遅いため、レンズデータ信号DLCのフレームに対して徐々に遅延が大きくなる。連続データ通信が行われているために、フレーム間には隙間(非通信時間)がない。したがって、上記遅延が蓄積されることで、両データ信号DCL,DLC間のずれが1フレーム以上となり、両データ信号DCL,DLCの送信済みのフレーム数に差異が生ずる。また、カメラマイコン205が、レンズデータ信号DLCのスタートビットSTを1フレーム飛ばして検出することにより、約1フレームにわたってカメラデータ信号DCLが送信されない期間が生じる。このような状況が発生すると、カメラマイコン205とレンズマイコン111との間での通信データ数の管理が困難となったりデータ通信が破綻したりする。
【0088】
そこで、本実施例では、図5(A)および図9(B)に示すように、レンズデータ信号DLCのフレームごとの最終ビットであるストップビットSPの数を、カメラデータ信号DCLのフレームごとのストップビットSTの数よりも多くしている。具体的には、カメラデータ信号DCLのフレームごとのストップビットSTの数が1であるのに対して、レンズデータ信号DLCのフレームごとのストップビットSPの数を2としている。ストップビット数の違い以外はレンズデータ信号DLCのデータフォーマットとカメラデータ信号DCLのデータフォーマットは同じである。このストップビット数の違いにより、レンズデータ信号DLCの1フレーム(のデータフレーム)のビット数がカメラデータ信号DCLの1フレームのビット数より多くなる。言い換えれば、レンズデータ信号DLCの1フレームのビット長がカメラデータ信号DCLの1フレームのビット長より長くなる。これにより、カメラデータ信号DCLのビットレートがレンズデータ信号DLC信号のそれよりも遅い場合でも、レンズデータ信号DLCのフレームに対してカメラデータ信号DCLのフレームのずれが蓄積されることを防止することができる。
【0089】
レンズデータ信号DLCの1フレームのビット長がカメラデータ信号DCLの1フレームのビット長より長いことで、両データ信号DCL,DLCのビットレートが同一である場合はカメラデータ信号DCLの方が早く送信完了となる。さらに、ビットレート誤差によってカメラデータ信号DCLのビットレートがレンズデータ信号DLCのそれより遅い場合でも、1フレームのビット長差としての1ビットは、ビットレート誤差によるフレームごとの送信時間の差を吸収するには十分な余裕量である。
【0090】
なお、カメラデータ信号DCLのビットレートがレンズデータ信号DLCのそれよりも速い場合は、上記のようなフレームのずれの問題は生じない。これは、カメラデータ信号DCLのフレームがレンズデータ信号DLCのフレームのスタートビットSTを検出することに応じて送信されるように設定されているためである。また、カメラ本体200と交換レンズ100において設定できるビットレートが僅かに異なる場合であっても、レンズデータ信号DLCのストップビットSPのビット数をさらに増やすことによって対応することが可能である。
【0091】
このように本実施例では、第1の通信設定におけるBUSY付加モードでは、カメラマイコン205は送信要求信号RTSをネゲートすることで、レンズマイコン111に対して通信の停止を通知することができる。また、レンズマイコン111は、通信待機要求BUSY(BUSYフレーム)をレンズデータ信号DLCに付加することで通信の停止をカメラマイコン205に通知することができる。これにより、カメラマイコン205とレンズマイコン111はスムーズかつ高速にデータを通信することができる。一方、第1の通信設定における非BUSY付加モードでは、レンズマイコン111からカメラマイコン205へのバースト通信中にカメラマイコン205は送信要求信号RTSをネゲートすることでレンズマイコン111に対して通信の停止を通知することができる。これにより、カメラマイコン205とレンズマイコン111との間で大量のデータを同期をとりながら高速で通信することができる。
【0092】
次に、カメラマイコン205とレンズマイコン111との間の第2の通信設定について説明する。第2の通信設定では、図6に示すように、第2のデータ通信チャネルを、通信インタフェース回路208a,112a内での通信方向(通信設定)の切替えによってレンズマイコン111からカメラマイコン205へのレンズデータ送信に用いる。すなわち、第2のデータ通信チャネルの信号回路は、入出力方向の切り替えが可能なように入出力バッファが並列に構成されており、それぞれ排他的に選択可能となっている。以下の説明では、第2のデータ通信チャネルでレンズマイコン111からカメラマイコン205に信号として送信されるレンズデータを、第2のレンズデータ信号DLC2という。また、第2のレンズデータ信号DLC2の送信とともに第1のデータ通信チャネルでレンズマイコン111からカメラマイコン205に送信されるレンズデータ信号DLCを、第2のレンズデータ信号DLC2と区別するため、第1のレンズデータ信号DLCという。
【0093】
第2の通信設定では、第1および第2のデータ通信チャネルをともにレンズデータ信号のカメラマイコン205への連続通信(バースト通信)に用いる。これにより、第1の通信設定における非BUSY付加モードに比べてさらに高速で大量のデータの通信を可能とする。
【0094】
ただし、第1の通信設定から第2の通信設定への切替えに際して、第2のデータ通信チャネルでのカメラマイコン205から送信されるカメラデータ信号DCLとレンズマイコン111から送信されるレンズデータ信号DLC2との衝突を回避する必要がある。このため、本実施例では、カメラマイコン205およびレンズマイコン111は、以下に説明するように通信設定の切替え処理を行う。
【0095】
図7には、カメラマイコン205内のカメラデータ送受信部208bおよびレンズマイコン111内のレンズデータ送受信部112bの構成を示す。図7において、図3に示した構成要素と共通する構成要素については、図3と同符号を付して説明に代える。カメラデータ送受信部208bにおいて、1401は通信方向切替え部である。通信方向切替え部1401は、スイッチ1402を切り替えることで、第2のデータ通信チャネルでの通信方向をカメラマイコン205がレンズマイコン111から送信された第2のレンズデータ信号DLC2を受信する方向に切り替える。この後、カメラマイコン205は、第2のデータ通信チャネルでレンズマイコン111から受信した第2のレンズデータ信号DLC2をシリアル-パラレル変換部306でシリアルデータからパラレルデータに変換し、受信データ用バッファ303に格納する。なお、受信データ用バッファ303には、第1のデータ通信チャネルで受信されてシリアル-パラレル変換部306にてシリアルデータからパラレルデータに変換された第1のレンズデータ信号DLCも格納される。受信データ用バッファ303に格納された第2のレンズデータ信号DLC2は、DMA制御部307により読み出され、メモリ210に転送されて格納される。
【0096】
レンズデータ送受信部112bにおいて、1411は通信方向切替え部である。通信方向切替え部1411は、スイッチ1412を切り替えることで、第2のデータ通信チャネルでの通信方向をレンズマイコン111がカメラマイコン205に第2のレンズデータ信号DLC2を送信する方向に切り替える。この後、レンズマイコン111は、送信データ用バッファ312に格納した第2のレンズデータ信号DLC2をパラレル-シリアル変換部315でパラレルデータからシリアルデータに変換し、第2のデータ通信チャネルでカメラマイコン205に送信する。なお、レンズマイコン111は、送信データ用バッファ312に格納した第1のレンズデータ信号DLCをパラレル-シリアル変換部315でパラレルデータからシリアルデータに変換し、第1のデータ通信チャネルでカメラマイコン205に送信する。
【0097】
次に、第2の通信設定での通信の手順について説明する。図8(A)には、第2の通信設定においてカメラマイコン205とレンズマイコン111との間でやり取りされる信号の波形を示している。図8(A)には、最小通信単位である1フレームが連続して3フレーム通信される際の信号波形を示している。
【0098】
第2の通信設定では、第1および第2のレンズデータ信号DLC,DLC2の各フレームは、第1の通信設定における非BUSY付加モードと同様に、データフレームのみで構成され、BUSYフレームは存在しない。つまり、第1および第2のレンズデータ信号DLC,DLC2は、レンズマイコン111からカメラマイコン205に通信待機要求BUSYを通知することができないデータフォーマットを有する。また、第2の通信設定は、レンズマイコン111からカメラマイコン205へのデータ転送のみで使用される通信設定として特化されており、この第2の通信設定ではカメラマイコン205からレンズマイコン111へのデータ転送はできない。また、第1および第2のレンズデータ信号DLC,DLC2は、第1の通信設定における非BUSY付加モードと同様に、前フレームのストップビットSPと次フレームのスタートビットSTとの間を空けずに連続した通信が可能なデータフォーマットを有する。
【0099】
なお、第1および第2のレンズデータ信号DLC,DLC2のデータフレームは、互いに同一のデータフォーマットを有し、1フレームのビット長を互いに同じ長さとしている。これは、これらの通信途中に停止が発生した場合に、送信されたフレーム数を同じとして管理することが目的である。ただし、第1および第2のレンズデータ信号DLC,DLC2のデータフレームのビット位置の相対関係は必ずしも一致させる必要はなく、相互のビット位置のずれ量が1フレーム長を超えない範囲であれば許容される。
【0100】
図8(B)には、第2の通信設定において、レンズマイコン111が合計nフレームの第1および第2のレンズデータ信号DLC,DLC2を連続してカメラマイコン205に送信する場合(すなわちバースト通信を行う場合)の信号の波形を示している。
【0101】
カメラマイコン205は、レンズマイコン111との通信を開始するイベントが発生すると、送信要求信号RTSをアサートする。その後、カメラマイコン205は、送信要求信号RTSを1フレームごとにネゲートする必要はなく、連続してデータ送受信が可能な状態である間は送信要求信号RTSのアサート状態を維持する。
【0102】
レンズマイコン111は、送信要求信号RTSのアサートにより送信要求を検出すると、カメラマイコン205に送信する第1および第2のレンズデータ信号DLC,DLC2の生成処理を行う。そして、これら第1および第2のレンズデータ信号DLC,DLC2の送信準備が整うと、第1のデータ通信チャネルでの第1のレンズデータ信号DLCの1フレーム目DL1のカメラマイコン205への送信を開始する。またこれと同時に、第2のデータ通信チャネルでの第2のレンズデータ信号DLC2の2フレーム目DL2のカメラマイコン205への送信を開始する。
【0103】
第1および第2のレンズデータ信号DLC,DLC2の1および2フレーム目DL1,DL2の送信が完了した後、レンズマイコン111は送信要求信号RTSの状態を確認する。送信要求信号RTSがアサート状態であった場合には、レンズマイコン111は、1および2フレーム目に続けて第1および第2のレンズデータ信号DLC,DLC2の3および4フレーム目DL3,DL4のカメラマイコン205への送信を開始する。このようにして、カメラマイコン205により送信要求信号RTSのアサート状態が維持されることにより、レンズマイコン111は第1および第2のレンズデータ信号DLC,DLC2の合計nフレームのカメラマイコン205への連続送信を行うことができる。
【0104】
第1および第2のレンズデータ信号DLC,DLC2の合計フレーム数nを偶数として取り決めることで、第1および第2のデータ通信チャネルのそれぞれでレンズマイコン111からカメラマイコン205に送信されるフレーム数は同数になる。なお、図8(B)では、第1のデータ通信チャネルで送信される第1のレンズデータ信号DLCを奇数フレームのみで構成し、第2のデータ通信チャネルで送信される第2のレンズデータ信号DLC2を偶数フレームのみで構成した。しかし、第1および第2のレンズデータ信号DLC,DLC2はこれ以外のフレーム構成を有していてもよい。
【0105】
図8(C)には、図8(B)に示した第1および第2のレンズデータ信号DLC,DLC2の連続送信中にカメラマイコン205およびレンズマイコン111からそれぞれ通信停止が指示された場合の信号波形を示す。カメラマイコン205による送信要求信号RTSのアサートに応じてレンズマイコン111が第1および第2のレンズデータ信号DLC,DLC2の送信を開始した後、フレームDL11,DL12の送信中にカメラマイコン205から通信停止が指示される。T4w1はカメラマイコン205により通信停止が指示された期間である通信停止期間を示す。該指示は、カメラマイコン205が送信要求信号RTSを一時的にネゲートすることでレンズマイコン111に通知される。
【0106】
レンズマイコン111は、送信要求信号RTSがネゲートされたことを検出すると、その検出時点で送信途中の第1および第2のレンズデータ信号DLC,DLC2のフレーム(以下、停止フレームという)DL11,DL12の送信を完了した後、送信を停止する。
【0107】
カメラマイコン205は、通信停止の要求イベントがなくなると、送信要求信号RTSを再びアサートすることでレンズマイコン111に対して通信再開を指示する。通信再開指示に応じて、レンズマイコン111は、停止フレームの次のフレーム(以下、再開フレームという)DL13,DL14から第1および第2のレンズデータ信号DLC,DLC2の送信を再開する。
【0108】
レンズマイコン111は、再開フレームDL13,DL14とそれに続くフレームDL15,DL16およびフレームDL17,DL18の順で連続送信を行う。そして、フレームDL17,DL18の送信を終了した時点で通信停止要求イベントが発生することで、レンズマイコン111はカメラマイコン205に対して通信停止を通知する。T4w2はレンズマイコン111から通信停止が通知された期間である通信停止期間を表している。レンズマイコン111からの通信停止の通知は、レンズマイコン111が、送信要求信号RTSがアサート状態であっても第1および第2のレンズデータ信号DLC,DLC2を送信しないことで行う。なお、カメラマイコン205は、レンズマイコン111からの指示による通信停止期間T4w2中は送信要求信号RTSをアサート状態に維持する。
【0109】
その後、レンズマイコン111内での通信停止要求イベントがなくなると、レンズマイコン111は、第1および第2のレンズデータ信号DLC,DLC2の次の再開フレームDL19,DL20からカメラマイコン205への送信を再開する。これにより、レンズマイコン111は、第1および第2のレンズデータ信号DLC,DLC2のうち送信停止により未送信であったフレームをカメラマイコン205に送信することができる。
【0110】
このように、第2の通信設定においては、レンズマイコン111からカメラマイコン205への第1および第2のレンズデータ信号DLC,DLC2の送信を停止することで、カメラマイコン205とレンズマイコン111との間の通信を停止することができる。これにより、レンズマイコン111からカメラマイコン205に対して大量のデータを同期をとりながら高速で通信することができる。
【0111】
以上説明したように、本実施例では、第1および第2の通信設定の双方において、カメラマイコン205とレンズマイコン111の双方から通信の停止と再開を指示することができる。このため、カメラマイコン205とレンズマイコン111の双方の処理負荷や受信バッファの容量に応じた通信制御を行うことができ、大量のデータを通信の破綻を生じさせることなく高速で通信することができる。
【実施例2】
【0112】
次に、本発明の実施例2について説明する。本実施例では、実施例1で説明した第2の通信設定でのレンズマイコン111からカメラマイコン205への第1および第2のレンズデータ信号DLC,DLC2の連続送信(バースト通信)の強制停止について説明する。
【0113】
実施例1で説明した第2の通信設定では、第1および第2のデータ通信チャネルを双方ともレンズマイコン111からカメラマイコン205への第1および第2のレンズデータ信号DLC,DLC2の送信に用いることで大量のデータの高速通信を可能とする。しかし、本来はカメラデータ信号DCLの通信用の第2のデータ通信チャネルを第2のレンズデータ信号DLC2の通信用に用いるため、その通信中はカメラマイコン205からレンズマイコン111に対して制御コマンド等によって指示を通知することができない。このため、特にバースト通信中にカメラマイコン205が通信異常を認識しても、カメラマイコン205からレンズマイコン111に通信の強制停止を指示することができない。ここにいう通信異常とは、静電気によるデータ破損やユーザによって交換レンズがカメラ本体から突然外されてカメラマイコン205とレンズマイコン111との通信チャネルが遮断される等を含む。
【0114】
このような通信異常が生じた場合には速やかに通信を強制停止することが望ましい。しかし、第2の通信設定においてレンズマイコン111からカメラマイコン205へのバースト通信が完了してから第2のデータ通信チャネルをカメラデータ信号DCLの通信用に切り替えて強制停止を通知するのでは、通信の停止が遅くなる。本実施例では、このような通信異常の発生時に速やかに通信を強制停止させることができるようにする。
【0115】
図10には、本実施例におけるカメラ本体200′と交換レンズ100′とを含むカメラシステムの構成を示している。本実施例のカメラシステムにおいて、実施例1(図1)に示したカメラシステムと同じ構成要素については、実施例1と同符号を付して説明に代える。
【0116】
図10において、交換レンズ100′に設けられたタイマー114は、レンズマイコン111からの時間カウント開始命令から時間カウント終了命令までの時間を計測する。レンズマイコン111は、カメラマイコン205からの送信要求信号RTSがネゲートされることに応じてタイマー114に時間カウント開始命令を出力し、送信要求信号RTSがアサートされることに応じてタイマー114に時間カウント終了命令を出力する。これにより、送信要求信号RTSがネゲートされている時間(以下、レンズ側RTSネゲート時間という)が計測され、該レンズ側RTSネゲート時間の情報はレンズマイコン111に入力される。
【0117】
一方、カメラ本体200′に設けられたタイマー211は、カメラマイコン205からの時間カウント開始命令からの時間を計測する。カメラマイコン205は、送信要求信号RTSをネゲートするとともにタイマー211に時間カウント開始命令を出力する。これにより、カメラマイコン205が送信要求信号RTSをネゲートしている時間(以下、カメラ側RTSネゲート時間という)が計測され、該カメラ側RTSネゲート時間の情報はカメラマイコン205に入力される。
【0118】
図11のフローチャートを用いて、本実施例における通信制御のための処理について説明する。カメラマイコン205とレンズマイコン111は、コンピュータプログラムとしての通信制御プログラムに従ってこの処理を実行する。ここでは、実施例1で説明した第2の通信設定を用いている際に通信を強制停止させる場合について説明する。ただし、第1の通信設定を用いている際に通信を強制停止させてもよい。また、図11に示す処理は、第1の通信設定が設定されている状態から開始する。図11および以下の説明において、「S」はステップを意味する。
【0119】
S1101において、カメラマイコン205は、バースト通信要求コマンドを準備する。バースト通信要求コマンドには、バースト通信における通信データ量やビットレート等、レンズマイコン111がバースト通信を行うために必要な情報を含む。そして、S1102において、カメラマイコン205はカメラデータ信号DLCとして第2のデータ通信チャネルでレンズマイコン111にバースト通信要求コマンドを送信する。
【0120】
バースト通信要求コマンドを受信したレンズマイコン111は、S1201にて、バースト通信要求コマンドに含まれる情報に従った第1および第2のレンズデータ信号DLC,DLC2の生成と第1の通信設定から第2の通信設定への切替えとを含む通信準備を行う。そして、通信準備が整うと、レンズマイコン111は、S1202において、第1のカメラデータ信号DLCとして第1のデータ通信チャネルで準備完了通知をカメラマイコン205に送信する。
【0121】
準備完了通知を受信したカメラマイコン205は、S1103にてカメラマイコン205における通信準備も完了すること応じて、S1104にて送信要求信号RTSをアサートして送信要求をレンズマイコン111に通知する。送信要求を受けたレンズマイコン111は、S1203およびS1204のそれぞれにおいて、第1および第2のデータ通信チャネルで第1および第2のレンズデータ信号DLC,DLC2のカメラマイコン205への連続送信(バースト通信)を開始する。
【0122】
このバースト通信中において、カメラマイコン205は、通信エラーの発生の有無を常に監視する。ここでは、S1105において、カメラマイコン205が、第1のレンズデータ信号DLCまたは第2のレンズデータ信号DLC2の受信中に通信エラーが生じたと検出したものとする。通信エラーの検出は、図8(A)に示したように各フレームに付加されたパリティー情報PAと受信したデータ内容とに齟齬があることの判定によって行うことができる。これ以外にも、各フレームのストップビットSTを正常に検出できないことでも通信エラーを検出可能である。さらに、通信エラーは、ユーザにより交換レンズ100が突然カメラ本体200から取り外されて通信が不能となった場合等も含む。通信エラーを検出したカメラマイコン205はS1106に進む。通信エラーを検出しなかったカメラマイコン205は、第1および第2のレンズデータ信号DLC,DLC2の受信を続行する。
【0123】
S1106において、カメラマイコン205はタイマー211に時間カウント開始命令を与え、カメラ側RTSネゲート時間の計測を開始させる。そして、カメラマイコン205は、S1107において、レンズマイコン111に対して第1および第2のレンズデータ信号DLC,DLC2の送信停止を指示するために送信要求信号RTSをネゲートする。
【0124】
送信要求信号RTSのネゲートを検出したレンズマイコン111は、S1205において、第1および第2のレンズデータ信号DLC,DLC2の送信を停止する。さらに、レンズマイコン111は、S1206においてタイマー114に時間カウント開始命令を与え、レンズ側RTSネゲート時間の計測を開始させる。
【0125】
レンズマイコン111は、S1207において、タイマー114により計測されたレンズ側RTSネゲート時間が所定時間Aを超えたか否かを判定する。所定時間Aは、カメラマイコン205とレンズマイコン111との間で通信規格として予め設定しておいてもよい。また、所定時間Aは、S1102におけるカメラマイコン205からレンズマイコン111へのバースト通信要求コマンドの送信によって又はこれに続いて送信されるカメラデータ信号DCLによってレンズマイコン111に通知してもよい。所定時間Aの具体例については後の実施例3にて説明する。レンズ側RTSネゲート時間が所定時間Aを超える前にカメラマイコン205により送信要求信号RTSがアサートされた場合には、レンズマイコン111は第1および第2のレンズデータ信号DLC,DLC2の送信を再開する。
【0126】
S1108にてカメラ側RTSネゲート時間が所定時間Aを超えると、カメラマイコン205は、S1109にて送信要求信号RTSをアサートする。これにより、カメラマイコン205は、レンズマイコン111に対して第1および第2のレンズデータ信号DLC,DLC2の送信の強制停止を指示する。レンズ側RTSネゲート時間が所定時間Aを超えてから送信要求信号RTSのアサートを検出したレンズマイコン111は、それが第1および第2のレンズデータ信号DLC,DLC2の送信の強制停止の指示であると判断する。そして、レンズマイコン111は、S1208にて第1および第2のレンズデータ信号DLC,DLC2の送信を途中で停止し、S1209にてカメラマイコン205に第1のレンズデータ信号DLCとして送信する通知コマンドにより強制停止完了を通知する。
【0127】
レンズマイコン111からの強制停止完了の通知を受けたカメラマイコン205は、S1110にてレンズマイコン111からの第1および第2のレンズデータ信号DLC,DLC2の受信を終了する。そして、カメラマイコン205は、第2のデータ通信チャネルを第2のレンズデータ信号DLC2を受信可能な状態からカメラデータ信号DCLを送信可能な状態に切り替える。
【0128】
図12(A)には、第2の通信設定にてレンズマイコン111からカメラマイコン205に合計nフレーム(DL1~DLn)の第1および第2のレンズデータ信号DLC,DLC2が途中に通信停止期間T4w1を挟んで連続送信される際の信号波形を示す。カメラマイコン205による送信要求信号RTSのアサートに応じてレンズマイコン111が第1および第2のレンズデータ信号DLC,DLC2の送信を開始する。その後、レンズマイコン111からのフレームDL11,DL12の送信中に、カメラマイコン205が送信要求信号RTSを一時的にネゲートすることで、レンズマイコン111に通信停止が指示される。レンズマイコン111は、送信要求信号RTSがネゲートされたことを検出すると、その検出時点で送信途中の第1および第2のレンズデータ信号DLC,DLC2のフレーム(以下、停止フレームという)DL11,DL12の送信を完了した後、送信を停止する。ここから通信停止期間T4w1、すなわちカメラ側およびレンズ側RTSネゲート時間の計測が開始する。
【0129】
カメラマイコン205は、通信停止期間T4w1が所定時間Aを超える前に通信停止の要求イベントがなくなると、送信要求信号RTSを再びアサートすることでレンズマイコン111に対して通信再開を指示する。通信再開指示に応じて、レンズマイコン111は、停止フレームの次の再開フレームDL13,DL14から第1および第2のレンズデータ信号DLC,DLC2の送信を再開する。
【0130】
一方、図12(B)には、図12(A)で説明した通信停止期間T4w1が所定時間Aを超える場合においてカメラマイコン205およびレンズマイコン111間でやり取りされる信号の波形を示している。通信停止期間T4w1(カメラ側RTSネゲート時間)が所定時間Aを超えると、カメラマイコン205は、それまでネゲートしていた送信要求信号RTSをアサートすることで、レンズマイコン111に対して通信の強制停止を指示する。通信停止期間T4w1(レンズ側RTSネゲート時間)が所定時間Aを超えた時点で送信要求信号RTSのアサートを検出したレンズマイコン111は、これをカメラマイコン205による通信の強制停止の指示と判断する。これに応じてレンズマイコン111は、停止フレームDL11,DL12までの送信にて第1および第2のレンズデータ信号DLC,DLC2の送信を停止する。さらに、レンズマイコン111は、第1のレンズデータ信号DLCとして送信する通知コマンドによりカメラマイコン205に強制停止完了(END)を通知する。強制停止完了の通知は1フレームで行ってもよいし、複数フレームで行ってもよい。こうしてレンズマイコン111は、未送信フレームであるDL13~DLnのカメラマイコン205への送信は行わずに、これらをクリアする。
【0131】
このように、カメラマイコン205は、第2の通信設定でのレンズマイコン111からのバースト通信中において通信エラーが発生したときには、速やかに該バースト通信の強制停止をレンズマイコン111に指示することができる。
【0132】
なお、本実施例では、カメラ側およびレンズ側RTSネゲート時間が所定時間Aを超えた後の送信要求信号RTSのアサートを単なるバースト通信の強制停止の指示とする場合について説明した。しかし、この送信要求信号RTSのアサートを、バースト通信の再スタート(強制停止および最初からのやり直し)の指示としてもよい。
【実施例3】
【0133】
次に、本発明の実施例3について説明する。本実施例も、第2の通信設定でのレンズマイコン111からカメラマイコン205への第1および第2のレンズデータ信号DLC,DLC2の連続送信(バースト通信)の強制停止に関する。
【0134】
実施例1にて図7を用いて説明したように、第2の通信設定で受信データ用バッファ303に格納された第1および第2のレンズデータ信号DLC,DLC2は、DMA制御部307により受信データ用バッファ303から読み出されてメモリ210に転送される。これは、受信データ用バッファ303の容量が第1および第2のレンズデータ信号DLC,DLC2の全フレームのデータ量に対して不足するためである。ただし、メモリ210は、カメラ通信部208だけでなく、図1に示した信号処理回路203等からもアクセスされるため、アクセス競合時に待ち時間が生じたり処理速度不足が生じたりするおそれがある。この際、カメラマイコン205がレンズマイコン111に対してバースト通信の停止指示を行えないと、バースト通信が破綻するおそれがある。
【0135】
図13には、本実施例においてレンズマイコン111からカメラマイコン205へのバースト通信に対する強制停止をカメラマイコン205が指示するまでの所定時間Aの例を示す。所定時間Aは、バースト通信のデータ量に応じて設定されている。この例では、バースト通信のデータ量が受信データ用バッファ(Rx_RAM)303の容量以下である場合は所定期間Aを0msに設定する。また、バースト通信のデータ量が受信データ用バッファ(Rx_RAM)303の容量を超える場合は所定期間Aを20msに設定する。所定時間Aは、受信データ用バッファ303の容量の他、カメラマイコン205の処理能力等に応じて任意に設定可能である。また、所定時間Aを受信データ用バッファ303の容量等によらず一律に設定してもよい。
【0136】
バースト通信のデータ量に対する所定時間Aを示すテーブル情報をカメラマイコン205の内部メモリやメモリ210等に記憶させておいてもよい。これにより、カメラマイコン205はバースト通信の開始前にレンズマイコン111に対して所定時間Aの設定を通知することができる。
【0137】
また、レンズマイコン111の内部メモリ等に同様なテーブル情報を記憶させておき、バースト通信の開始前にレンズマイコン111がカメラマイコン205にバースト通信により送信するデータ量に応じて所定時間Aを決定してもよい。この場合は、所定時間Aの設定をカメラマイコン205からレンズマイコン111に通知しなくてもよい。
【0138】
所定時間Aが0msに設定された場合は、レンズマイコン111は、送信要求信号RTSがネゲート状態からアサートされると、それを通信再開の指示ではなく、通信の強制停止の指示と判断する。一方、所定時間Aが20msに設定された場合は、レンズマイコン111は、所定時間A内に送信要求信号RTSがネゲート状態からアサートされるとこれを通信再開の指示と判断する。しかし、所定時間Aを超えた後に送信要求信号RTSがネゲート状態からアサートされると、これを通信の強制停止の指示と判断する。
【0139】
本実施例によれば、受信データ用バッファ303の容量がバースト通信のデータ量に対して余裕がある場合には、バースト通信の強制停止までに要する時間を実施例2よりも短縮することができる。このため、第2の通信設定でのバースト通信中において、カメラマイコン205による通信エラーの検出時に速やかにバースト通信の強制停止をレンズマイコン111に指示することができる。したがって、カメラマイコン205は、速やかにレンズマイコン111にバースト通信を再スタートさせることができる。
【実施例4】
【0140】
以下、本発明の実施例4について説明する。本実施例では、図15に示すように、カメラ本体200″が、メモリ(DDR)210を制御するメモリコントローラ212を有する。なお、図15には、カメラマイコン205に含まれているカメラ通信部208をカメラマイコン205とは分けて示している。また、本実施例のカメラ本体200″は、実施例2で説明したカメラ本体200′にメモリコントローラ212を追加したものに相当し、本実施例の交換レンズ100′は実施例2で説明したものと同じである。
【0141】
メモリコントローラ212について説明する。図15において、バスIF506は、チップ内部のメモリアクセスを要求するマスターモジュールとのインタフェースを行うバスインターフェースモジュールである。マスターモジュールは、カメラマイコン205や信号処理回路203等のカメラ本体200″内の主たる処理部を指す。図では2つの互いに同一または異なる種類のバスに接続可能な構成を示している。
【0142】
アービター部501は、バスIF506が受け取ったメモリ210に対するメモリアクセス要求を調停し順序化する。キューバッファ502は、アービター部501で順序化されたメモリアクセス要求を一時的に保存可能なバッファとして用いられる。カメラマイコン205は、キューバッファ502に保存されたメモリアクセス要求からメモリアクセス要求の頻度(以下、メモリアクセス頻度という)の情報を得る。
【0143】
コマンド発行部503は、キューバッファ502に格納されたメモリアクセス要求を順に取り出し、その内容に基づいてメモリ210へのアクセスを行う。データIF504は、コマンド発行部503が発行したメモリアクセス要求に応じて、メモリ210に対するデータの読み出しおよび書き込みを行うためのインタフェースである。
【0144】
データ制御部505は、例えばアービター部501が選択したメモリアクセス要求がメモリ210へのデータ書き込みを要求するコマンドであった場合には、バスインターフェース1から書き込みデータを取り込む。データ制御部505は、取り込んだ書き込みデータを実際のデータ書き込みタイミングまで保存し、データIF504に出力する。また、データ制御部505は、アービター部501が選択したメモリアクセス要求がメモリ210へのデータ読み出しを要求するコマンドであった場合には、メモリ210から読み出されたデータをデータIF504に出力する。
【0145】
本実施例では、カメラ本体200″が上記メモリコントローラ212を有する場合に、第2の通信設定でのレンズマイコン111からカメラマイコン205へのバースト通信中に通信異常を検出したカメラマイコン205による通信の強制停止について説明する。図14のフローチャートには、本実施例におけるカメラマイコン205とレンズマイコン111との通信制御処理を示している。カメラマイコン205およびレンズマイコン111は、コンピュータプログラムとしての通信制御プログラムに従ってこの処理を行う。
【0146】
図14におけるS401では、カメラマイコン205はメモリコントローラ212(キューバッファ502)からメモリアクセス頻度の情報を取得する。メモリアクセス頻度が高いことは、最初のメモリアクセス要求がなされた時点からカメラ通信部208がレンズマイコン111からのバースト通信を受信可能になるまでの時間までのメモリアクセス要求待ち時間が長いことを意味する。
【0147】
次にS402では、カメラマイコン205は、S401にて取得したメモリアクセス頻度を用いて、カメラ本体200″において現在設定されている撮影モードがカメラ通信部208のメモリアクセス頻度が高い撮影モードか否かを判定する。そうであればS403に進み、メモリアクセス頻度が低い撮影モードであればS404に進む。
【0148】
S403では、カメラマイコン205は、メモリアクセス頻度が高いことに応じて、送信要求信号RTSをネゲートして通信を停止させる時間(以下、RTSネゲート時間という)の上限である所定時間Aを後述するS404で設定する時間より長く設定する。S404では、カメラマイコン205は、メモリアクセス頻度が低いことに応じて、所定時間AをS403で設定する時間より短い時間に設定する。すなわち、メモリアクセス要求待ち時間が長い場合は所定時間Aを長く設定し、メモリアクセス要求待ち時間が短い場合は所定時間Aを短く設定する。
【0149】
次にS405では、カメラマイコン205は、カメラデータ信号DLCとして第2のデータ通信チャネルでレンズマイコン111にバースト通信要求コマンドを送信する。バースト通信要求コマンドには、バースト通信における通信データ量やビットレート等、レンズマイコン111がバースト通信を行うために必要な情報を含む。
【0150】
バースト通信要求コマンドを受信したレンズマイコン111は、S406にてバースト通信要求コマンドに含まれる情報に従った第1および第2のレンズデータ信号DLC,DLC2の生成と第1の通信設定から第2の通信設定への切替えとを含む通信準備を行う。そして、通信準備が整うと、レンズマイコン111は、第1のカメラデータ信号DLCとして第1のデータ通信チャネルで準備完了通知をカメラマイコン205に送信する。
【0151】
準備完了通知を受信したカメラマイコン205は、S407にてカメラマイコン205における通信準備も完了すること応じて、送信要求信号RTSをアサートして送信要求をレンズマイコン111に通知する。送信要求を受けたレンズマイコン111は、第1および第2のデータ通信チャネルで第1および第2のレンズデータ信号DLC,DLC2のカメラマイコン205への連続送信(バースト通信)を開始する。
【0152】
このバースト通信中において、カメラマイコン205は、通信エラーの発生の有無を常に監視する。通信エラーの検出については、実施例2におけるS1105で説明した通りである。通信エラーを検出しなかった場合は、カメラマイコン205はS412に進む。
【0153】
一方、通信エラーを検出した場合は、カメラマイコン205は、S408にてレンズマイコン111に対して第1および第2のレンズデータ信号DLC,DLC2の送信停止を指示するために送信要求信号RTSをネゲートする。送信要求信号RTSのネゲートを検出したレンズマイコン111は、第1および第2のレンズデータ信号DLC,DLC2の送信を停止するとともに、タイマー114に時間カウント開始命令を与えてRTSネゲート時間の計測を開始させる。
【0154】
レンズマイコン111は、S409にて、タイマー114により計測されたRTSネゲート時間が所定時間Aを超えたか否かを判定する。レンズマイコン111は、RTSネゲート時間が所定時間Aを超えていない場合はS410に進み、カメラマイコン205により通信要求信号RTSが再度アサートされたか否かを判定する。通信要求信号RTSがアサートされた場合には、レンズマイコン111は、S411にて第1および第2のレンズデータ信号DLC,DLC2の送信を再開する。そして、S412にて、レンズマイコン111は、カメラマイコン205に対して送信すべき第1および第2のレンズデータ信号DLC,DLC2の全フレームの送信を完了したか否かを判定し、送信が完了した場合は本処理を終了する。S410にて通信要求信号RTSがアサートされていない場合には、レンズマイコン111はS409に戻る。
【0155】
S409にてタイマー114により計測されたRTSネゲート時間が所定時間Aを超えた場合は、レンズマイコン111は、S413に進み、カメラマイコン205により通信要求信号RTSが再度アサートされたか否かを判定する。通信要求信号RTSがアサートされた場合には、レンズマイコン111は、S414にて第1および第2のレンズデータ信号DLC,DLC2の送信を停止する。つまり、第1および第2のレンズデータ信号DLC,DLC2のうち未送信フレームのカメラマイコン205への送信は行わずに、これらをクリアする。そして、レンズマイコン111は、カメラマイコン205に対して、第1のレンズデータ信号DLCとして送信する通知コマンドにより強制停止完了を通知する。カメラマイコン205は、第2の通信設定に対応する状態から第1の通信設定に対応する状態に切り替えて本処理を終了する。
【0156】
このように、レンズマイコン111は、RTSネゲート時間が所定時間Aを超えない間に通信要求信号RTSが再アサートされた場合はこれをバースト通信の再開指示と判断して、停止していたバースト通信を再開する。一方、RTSネゲート時間が所定時間Aを超えてから通信要求信号RTSが再アサートされた場合はこれをバースト通信の強制停止の指示と判断して、バースト通信を終了する。
【0157】
図16(A),(B)には、第2の通信設定にてレンズマイコン111からカメラマイコン205に第1および第2のレンズデータ信号DLC,DLC2が連続送信されている途中にRTSネゲート時間としての通信停止期間T4w1が挿入された際の信号波形を示す。第1および第2のレンズデータ信号DLC,DLC2は、本来は図16(B)に示すように、合計nフレーム(DL1~DLn)を有する。
【0158】
これらの図において、カメラマイコン205による送信要求信号RTSのアサートに応じてレンズマイコン111が第1および第2のレンズデータ信号DLC,DLC2の送信を開始する。その後、レンズマイコン111からのフレームDL11,DL12の送信中に、カメラマイコン205が送信要求信号RTSを一時的にネゲートすることで、レンズマイコン111に通信停止が指示される。レンズマイコン111は、送信要求信号RTSがネゲートされたことを検出すると、その検出時点で送信途中の第1および第2のレンズデータ信号DLC,DLC2のフレーム(以下、停止フレームという)DL11,DL12の送信を完了した後、送信を停止する。ここから通信停止期間T4w1、すなわちRTSネゲート時間の計測が開始する。
【0159】
図16(A)には、撮影モードがカメラ通信部208のメモリアクセス頻度が高い撮影モードであるために、所定時間Aが長い時間に設定された場合を示している。一方、図16(B)には、撮影モードがカメラ通信部208のメモリアクセス頻度が低い撮影モードであるために、所定時間Aが短い時間に設定された場合を示している。
【0160】
図16(A)に示すように、通信停止期間T4w1が所定時間Aを超えた後にカメラマイコン205が送信要求信号RTSを再びアサートすることで、レンズマイコン111はこれを通信の強制停止の指示と判断する。これに応じてレンズマイコン111は、停止フレームDL11,DL12までの送信にて第1および第2のレンズデータ信号DLC,DLC2の送信を停止する。さらに、レンズマイコン111は、第1のレンズデータ信号DLCとして送信する通知コマンドにより強制停止完了(END)をカメラマイコン205に通知する。強制停止完了の通知は1フレームで行ってもよいし、複数フレームで行ってもよい。こうしてレンズマイコン111は、未送信フレームであるDL13~DLnのカメラマイコン205への送信は行わずに、これらをクリアする。
【0161】
一方、図16(B)に示すように、通信停止期間T4w1が所定時間Aを超える前にカメラマイコン205が送信要求信号RTSを再びアサートすることで、レンズマイコン111はこれを通信再開の指示と判断する。これに応じてレンズマイコン111は、停止フレームの次の再開フレームDL13,DL14から第1および第2のレンズデータ信号DLC,DLC2の送信を再開する。
【0162】
このように本実施例では、第1および第2のレンズデータ信号DLC,DLC2を最終的に格納するメモリ210に対するメモリアクセス頻度が異なるために生じるメモリアクセス要求待ち時間の相違に対して通信停止の上限時間(所定時間A)を可変としている。これにより、メモリ210への第1および第2のレンズデータ信号DLC,DLC2の格納速度に応じた最適な通信停止の上限時間を設定することができる。したがって、カメラ本体200″にて通信エラーを検出して通信を停止させた後に、速やかに通信の強制停止または通信再開をレンズマイコン111に判断させることができる。
【0163】
なお、本実施例では、RTSネゲート時間が所定時間Aを超えた後の送信要求信号RTSのアサートを、単なるバースト通信の強制停止の指示とする場合について説明した。しかし、この送信要求信号RTSのアサートを、バースト通信の再スタート(強制停止および最初からのやり直し)の指示としてもよい。また、RTSネゲート時間が所定時間Aを超えそうな場合にカメラマイコン205(カメラ通信部208)からメモリ210へのアクセス要求の優先度を上げてレンズマイコン111からのバースト通信を所定時間A内に完了できるように制御してもよい。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
以上説明した各実施例は代表的な例にすぎず、本発明の実施に際しては、各実施例に対して種々の変形や変更が可能である。
【符号の説明】
【0164】
100 交換レンズ
111 レンズマイコン
200 カメラ本体
205 カメラマイコン
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16