(57)【要約】【課題】  カメラ本体と交換レンズの間で適切な通信を実現すること。【解決手段】  アクセサリ装置１００が取り外し可能に装着され、アクセサリ装置との通信を行う撮像装置２００は、送信要求コマンドをアクセサリ装置１００に送信することで、アクセサリ装置１００に送信要求コマンドに対応したデータを送信させる。撮像装置２００が送信する送信要求コマンドに応じてアクセサリ装置１００から送信されるデータは、撮像装置２００とアクセサリ装置１００の間で予め行われる通信により指定される。【選択図】  図１４
2020080570.tif 000002
【特許請求の範囲】
【請求項１】
カメラボディに装着可能であり、前記カメラボディと通信可能なアクセサリであって、
駆動部により駆動される被駆動部材に関する情報を一つ以上の通信仕様で前記カメラボディへ送信することが可能である送信部と、
前記情報を前記カメラボディへ送信する通信仕様を示す第１の値を前記カメラボディから受信する受信部と、
を備え、
前記第１の値は、前記被駆動部材に関する情報が前記カメラボディへ送信されることを示し、
前記送信部は、前記第１の値が示す通信仕様で、前記被駆動部材に関する情報を前記カメラボディへ送信するアクセサリ。
【請求項２】
カメラボディに装着可能であり、前記カメラボディと通信可能なアクセサリであって、
駆動部により駆動される被駆動部材に関する複数の情報を前記カメラボディへ送信することが可能である第１の送信部と、
前記被駆動部材に関する複数の情報が前記カメラボディへ送信されることを示す第１の値を前記カメラボディから受信する受信部と、
を備え、
前記第１の送信部は、前記被駆動部材に関する複数の情報を前記カメラボディへ送信するアクセサリ。
【請求項３】
前記通信仕様は、前記被駆動部材に関する複数の情報の種類と順序に関する仕様であることを特徴とする請求項１に記載のアクセアリ。
【請求項４】
前記第１の値は、前記アクセサリから前記カメラボディへ送信される前記被駆動部材に関する複数の情報の種類と順序を示す情報であることを特徴とする請求項１または２に記載のアクセサリ。
【請求項５】
前記第１の値は、前記被駆動部材の状態及び前記被駆動部材の位置の少なくとも一つを含む情報が前記カメラボディへ送信されることを示す情報であることを特徴とする請求項１乃至４のいずれか一項に記載のアクセサリ。
【請求項６】
前記第１の値は、前記被駆動部材に関する情報として、フォーカスレンズに関する情報、防振レンズに関する情報、ズームレンズに関する情報及び開口絞りに関する情報のうち少なくとも一つを含む情報が前記カメラボディへ送信されることを示す情報であることを特徴とする請求項１乃至５のいずれか一項に記載のアクセサリ。
【請求項７】
前記アクセサリは、第１のタイミングにおいて前記カメラボディと通信を行うことで、前記アクセサリから前記カメラボディへ送信する前記駆動部材に関する複数の情報を決定し、
前記アクセサリは、前記第１のタイミングより後の第２のタイミングにおいて、前記第１のタイミングで行われた通信に基づく前記駆動部材に関する複数の情報を前記カメラボディへ送信することを特徴とする請求項１乃至６のいずれか一項に記載のアクセサリ。
【請求項８】
前記アクセサリは、撮像光学系を有する交換レンズであることを特徴とする請求項１乃至７のいずれか一項に記載のアクセサリ。
【請求項９】
アクセサリを装着可能であり、前記アクセサリと通信可能なカメラボディであって、
前記アクセサリの駆動部により駆動される前記アクセサリの被駆動部材に関する情報を前記アクセサリから前記カメラボディへ送信する際の通信仕様を示す第１の値を前記アクセサリへ送信する送信部と、
前記第１の値が示す通信仕様で前記アクセサリから送信された、前記被駆動部材に関する情報を受信することが可能である受信部と、
を備え、
前記第１の値は、前記被駆動部材に関する情報が前記アクセサリから前記カメラボディへ送信されることを示すことを特徴とするカメラボディ。
【請求項１０】
アクセサリを装着可能であり、前記アクセサリと通信可能なカメラボディであって、
前記アクセサリの駆動部により駆動される前記アクセサリの被駆動部材に関する複数の情報が前記カメラボディへ送信されることを示す第１の値を前記アクセサリへ送信する送信部と、
前記アクセサリから送信された、前記被駆動部材に関する複数の情報を受信することが可能である受信部と、
を備えることを特徴とするカメラボディ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、相互に通信が可能な撮像装置及びアクセサリ装置に関する。
【背景技術】
【０００２】
レンズ交換型のカメラシステムとして、カメラ本体が撮像処理、レンズ制御および画像記録を行い、交換レンズが、カメラ本体からの制御命令に従ってレンズ駆動や絞り駆動を行うものがある。このカメラシステムでは、カメラ本体から交換レンズへの制御命令の伝達と交換レンズからカメラ本体へのレンズデータの伝達が、相互に情報をやり取りするための通信システムを介して行われる。
【０００３】
また、デジタルカメラシステムでは、動画撮像時やライブビュー撮影時に撮像周期に合わせた滑らかなレンズ制御が求められている。このためには、カメラ本体の撮像タイミングと交換レンズの制御タイミングとの同期をとる必要があり、カメラ本体はレンズ制御に必要なレンズ情報の取得と交換レンズへの制御命令の送信を撮像周期内で完了させる必要がある。
【０００４】
近年は、従来よりも複雑な撮像制御が求められ、カメラ本体が交換レンズから取得するレンズ情報のデータ量が増加しており、また、撮像周期の短縮化に伴い大容量のデータ通信が要求されている。
【０００５】
特許文献１には、通信ワード数が固定された初期通信モードと、交換レンズの機能を制御するために通信ワード数を可変とした制御通信モードとを有する撮像システムが開示されている。初期通信モードは、カメラ本体と交換レンズ間の接続状態および交換レンズ内の制御対象を認識するために行われる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平０３−１１４３７１号公報
【発明の概要】
【０００７】
本発明のアクセサリは、カメラボディに装着可能であり、前記カメラボディと通信可能なアクセサリであって、駆動部により駆動される被駆動部材に関する情報を一つ以上の通信仕様で前記カメラボディへ送信することが可能である送信部と、前記情報を前記カメラボディへ送信する通信仕様を示す第１の値を前記カメラボディから受信する受信部と、を備え、前記第１の値は、前記被駆動部材に関する情報が前記カメラボディへ送信されることを示し、前記送信部は、前記第１の値が示す通信仕様で、前記被駆動部材に関する情報を前記カメラボディへ送信することを特徴としている。
【０００８】
また、本発明の他のアクセサリは、カメラボディに装着可能であり、前記カメラボディと通信可能なアクセサリであって、駆動部により駆動される被駆動部材に関する複数の情報を前記カメラボディへ送信することが可能である第１の送信部と、前記被駆動部材に関する複数の情報が前記カメラボディへ送信されることを示す第１の値を前記カメラボディから受信する受信部と、を備え、前記第１の送信部は、前記被駆動部材に関する複数の情報を前記カメラボディへ送信することを特徴としている。
【０００９】
また、本発明のカメラボディは、アクセサリを装着可能であり、前記アクセサリと通信可能なカメラボディであって、前記アクセサリの駆動部により駆動される前記アクセサリの被駆動部材に関する情報を前記アクセサリから前記カメラボディへ送信する際の通信仕様を示す第１の値を前記アクセサリへ送信する送信部と、前記第１の値が示す通信仕様で前記アクセサリから送信された、前記被駆動部材に関する情報を受信することが可能である受信部と、を備え、前記第１の値は、前記被駆動部材に関する情報が前記アクセサリから前記カメラボディへ送信されることを示すことを特徴とする。
【００１０】
本発明の他のカメラボディは、アクセサリを装着可能であり、前記アクセサリと通信可能なカメラボディであって、前記アクセサリの駆動部により駆動される前記アクセサリの被駆動部材に関する複数の情報が前記カメラボディへ送信されることを示す第１の値を前記アクセサリへ送信する送信部と、前記アクセサリから送信された、前記被駆動部材に関する複数の情報を受信することが可能である受信部と、を備えることを特徴とする。
【図面の簡単な説明】
【００１１】
【図１】本発明におけるカメラ本体と交換レンズの構成を示すブロック図である。
【図２】実施例１におけるカメラ本体（カメラマイコン）と交換レンズ（レンズマイコン）との間の通信回路を示す図である。
【図３】実施例１における第１の通信プロトコルを示す図である。
【図４】実施例１における第２の通信プロトコルの登録時の波形を示す図である。
【図５】実施例１における第２の通信プロトコルの取得時の波形を示す図である。
【図６】実施例１におけるカメラマイコン側のカスタムコマンド登録情報を、レンズマイコン側へ登録する処理を示す図である。
【図７】実施例１におけるレンズマイコン側のカスタムコマンド処理を示す図である。
【図８】実施例１におけるカメラマイコン側のカスタムコマンド登録情報の生成処理を示すフローチャートである。
【図９】実施例１におけるカメラマイコン側のカスタムコマンド登録処理を示すフローチャートである。
【図１０】実施例１におけるレンズマイコン側のカスタムコマンド登録処理を示すフローチャートである。
【図１１】実施例１におけるレンズマイコン側のカスタムコマンド受信時の処理を示すフローチャートである。
【図１２】固定長のデータ通信プロトコルを示す図である。
【図１３】実施例１におけるＥＮＴＲＹコマンドとＧＥＴコマンドの対応を示す図である。
【図１４】実施例１におけるカメラ本体と交換レンズの間の通信手順を示す図である。
【図１５】実施例２における第２の通信プロトコルの登録時の波形を示す図である。
【図１６】実施例２における第２の通信プロトコルの取得時の波形を示す図である。
【図１７】登録番号通知コマンドＥＩＤとデータ番号通知コマンドＧＩＤの構成を示す図である。
【図１８】垂直同期信号Ｖとクロック信号ＬＣＬＫの関係を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施例について図面を参照しながら説明する。
【００１３】
［実施例１］
図１には、本発明の実施例１である撮像装置（以下、カメラ本体という）２００およびアクセサリ装置としてのレンズ装置（以下、交換レンズという）１００を含む撮像システム（以下、カメラシステムという）の構成を示している。交換レンズ１００は、カメラ本体２００に対して取り外し可能に装着されている。カメラ本体２００と交換レンズ１００は互いに通信可能に電気的に接続されている。本実施例のカメラシステムでは、いわゆる登録型コマンド（カスタムコマンド）を用いて垂直同期信号の一周期内において複数のデータ通信を行うことで短時間に大容量のデータの伝送を実現する。
【００１４】
カメラ本体２００は、交換レンズ１００に対して、交換レンズ１００に各種制御を行わせるレンズ制御コマンドと、交換レンズ１００の内部情報に関するデータ（以下、レンズデータという）の送信を要求する送信要求コマンドとを通信により送信する。レンズデータは、交換レンズ１００に含まれる光学部材の位置情報、交換レンズ１００に含まれるアクチュエータの駆動状態を示す情報および交換レンズ１００の光学情報等を示すデータである。交換レンズ１００は、カメラ本体２００に対して、レンズ制御コマンドに応答して行った交換レンズ１００内での制御（以下、レンズ制御という）の状態を示す情報や、送信要求コマンドに対応するレンズデータを通信により送信する。
【００１５】
カメラ本体２００からの送信要求コマンドには、複数種類あるレンズデータのそれぞれを単独で指定して個別送信を要求する個別送信要求コマンドと、いくつかのレンズデータの組み合わせを指定してそれらの連続送信を要求する連続送信要求コマンドとがある。カメラ本体２００は、カメラ本体２００側の制御状況に応じてそれらを選択的に交換レンズ１００に送信する。
【００１６】
また、連続送信要求コマンドは、交換レンズ１００に対して、連続送信を要求するレンズデータの任意の組み合わせと任意の送信順序とを指示可能なコマンドである。カメラ本体２００は、カメラ本体２００側での撮像モードや制御形式に応じて最適なレンズデータの組み合わせと送信順序でレンズデータを受信することができる。さらに、カメラ本体２００は、交換レンズ１００が備える機能に応じて、交換レンズごとに異なるレンズデータの組み合わせと送信順序を選択することができる。
【００１７】
個別送信モードと連続送信モードのいずれにおいても、垂直同期信号の一周期内において最初に送信される送信要求コマンドの種類をカメラ本体２００と交換レンズ１００の間で予め決めておくことで、撮像タイミングを正確に共有することができる。
【００１８】
次に、交換レンズ１００とカメラ本体２００のより具体的な構成を説明する。交換レンズ１００とカメラ本体２００は、結合機構であるマウント３００を介して機械的および電気的に接続されている。交換レンズ１００は、マウント３００に設けられた電源端子部（図示せず）を介してカメラ本体２００から電源を取得し、後述する各種アクチュエータやレンズマイクロコンピュータ１１１の動作に必要な電源を供給する。また、交換レンズ１００とカメラ本体２００は、マウント３００に設けられた通信端子部（図２に示す）を介して相互に通信を行う。
【００１９】
交換レンズ１００は、撮像光学系を有する。撮像光学系は、被写体ＯＢＪ側から順に、フィールドレンズ１０１と、変倍を行う変倍レンズ１０２と、光量を調節する絞りユニット１１４と、振れ補正レンズ１０３と、焦点調節を行うフォーカスレンズ１０４とを含む。
【００２０】
変倍レンズ１０２とフォーカスレンズ１０４はそれぞれ、レンズ保持枠１０５、１０６により保持されている。レンズ保持枠１０５、１０６は、不図示のガイド軸により光軸方向（図中に破線で示す）に移動可能にガイドされており、ステッピングモータ１０７、１０８によって光軸方向に駆動される。ステッピングモータ１０７、１０８はそれぞれ、駆動パルスに同期して変倍レンズ１０２およびフォーカスレンズ１０４を移動させる。
【００２１】
振れ補正レンズ１０３は、撮像光学系の光軸に直交する方向にシフトすることで、カメラ振れ（手振れ等）に起因する像振れを低減する。
【００２２】
レンズマイクロコンピュータ（以下、レンズマイコンという）１１１は、交換レンズ１００内の各部の動作を制御するアクセサリ制御手段（レンズ制御手段）である。また、レンズマイコン１１１は、その内部に設けられたレンズ通信部１１２を介して、カメラ本体２００から送信された制御コマンドや送信要求コマンドを受信する。レンズマイコン１１１は、制御コマンドに対応するレンズ制御を行い、またレンズ通信部１１２を介して送信要求コマンドに対応するレンズデータをカメラ本体２００に送信する。
【００２３】
また、レンズマイコン１１１は、制御コマンドのうち変倍やフォーカシングに関するコマンドに応答してズーム駆動回路１１９およびフォーカス駆動回路１２０に駆動信号を出力してステッピングモータ１０７、１０８を駆動させる。これにより、変倍レンズ１０２による変倍動作を制御するズーム処理やフォーカスレンズ１０４による焦点調節動作を制御するＡＦ（オートフォーカス）処理を行う。
【００２４】
絞りユニット１１４は、絞り羽根１１４ａ、１１４ｂを備えて構成される。絞り羽根１１４ａ、１１４ｂの状態は、ホール素子１１５により検出され、増幅回路１２２およびＡ／Ｄ変換回路１２３を介してレンズマイコン１１１に入力される。レンズマイコン１１１は、Ａ／Ｄ変換回路１２３からの入力信号に基づいて絞り駆動回路１２１に駆動信号を出力して絞りアクチュエータ１１３を駆動させる。これにより、絞りユニット１１４による光量調節動作を制御する。
【００２５】
さらに、レンズマイコン１１１は、交換レンズ１００内に設けられたジャイロセンサ等の振れセンサ１２７により検出されたカメラ振れに応じて、防振駆動回路１２５を介して防振アクチュエータ（ボイスコイルモータ等）１２６を駆動する。これにより、振れ補正レンズ１０３のシフト動作（防振動作）を制御する防振処理が行われる。
【００２６】
カメラ本体２００は、ＣＣＤセンサやＣＭＯＳセンサ等の撮像素子２０１と、Ａ／Ｄ変換回路２０２と、信号処理回路２０３と、記録部２０４と、カメラマイクロコンピュータ（以下、カメラマイコンという）２０５と、表示部２０６とを有する。
【００２７】
撮像素子２０１は、交換レンズ１００内の撮像光学系により形成された被写体像を光電変換して電気信号（アナログ信号）を出力する。Ａ／Ｄ変換回路２０２は、撮像素子２０１からのアナログ信号をデジタル信号に変換する。信号処理回路２０３は、Ａ／Ｄ変換回路２０２からのデジタル信号に対して各種画像処理を行って映像信号を生成する。また、信号処理回路２０３は、映像信号から被写体像のコントラスト状態（撮像光学系の焦点状態）を示すフォーカス情報や露出状態を表す輝度情報も生成する。信号処理回路２０３は、映像信号を表示部２０６に出力し、表示部２０６は映像信号を構図やピント状態等の確認に用いられるライブビュー画像として表示する。
【００２８】
カメラ制御手段としてのカメラマイコン２０５は、不図示の撮像指示スイッチおよび各種設定スイッチ等のカメラ操作部材からの入力に応じてカメラ本体２００の制御を行う。また、カメラマイコン２０５は、その内部に設けられたカメラ通信部２０８を介して、不図示のズームスイッチの操作に応じて変倍レンズ１０２の変倍動作に関する制御コマンドをレンズマイコン１１１に送信する。さらに、カメラマイコン２０５は、カメラ通信部２０８を介して、輝度情報に応じた絞りユニット１１４の光量調節動作やフォーカス情報に応じたフォーカスレンズ１０４の焦点調節動作に関する制御コマンドをレンズマイコン１１１に送信する。
【００２９】
次に、カメラ本体２００（カメラマイコン２０５）と交換レンズ１００（レンズマイコン１１１）との間で構成される通信回路とこれらの間で行われる通信処理について説明する。
【００３０】
図２には、カメラマイコン２０５とレンズマイコン１１１との間に構成される通信回路を示している。カメラマイコン２０５とレンズマイコン１１１は、前述したマウント３００に設けられた通信端子部を介して通信を行う。撮像素子２０１は、信号生成回路２０９から出力される垂直同期信号の周期である垂直同期期間の所定期間において電荷蓄積を行う。カメラマイコン２０５は、垂直同期信号のタイミングをレンズマイコン１１１に通知する。後述するように、カメラマイコン２０５とレンズマイコン１１１は、垂直同期信号のタイミングに基づいてカメラ本体２００から送信されるクロック信号ＬＣＬＫに同期して通信を行う。
【００３１】
本実施例では、通信方式として、３線式クロック同期シリアル通信方式を用いる。ここにいう３線は、クロック信号ＬＣＬＫ用の通信線と、データ信号ＤＣＬ用の通信線と、データ信号ＤＬＣ用の通信線とを含む。クロック信号ＬＣＬＫは、マスターとしてのカメラマイコン２０５からスレーブとしてのレンズマイコン１１１に送られる。通信信号ＤＣＬは、カメラマイコン２０５からレンズマイコン１１１への制御コマンドや送信要求コマンド等を含む。データ信号ＤＬＣは、レンズマイコン１１１からカメラマイコン２０５にクロック信号に同期して送信されるレンズデータ等を含む。カメラマイコン２０５とレンズマイコン１１１は、共通のクロック信号に同期して相互かつ同時に送受信を行う全二重通信方式（フルデュープレックス方式）で通信を行う。
【００３２】
図３、図４、図５には、カメラマイコン２０５とレンズマイコン１１１とカメラマイコン２０５との間でやり取りされる通信信号の波形を示している。このやり取りの手順を取り決めたものを通信プロトコルと呼ぶ。カメラマイコン２０５とレンズマイコン１１１間では、大きく分けて、後述する個別通信プロトコルと連続通信プロトコルの２種類の通信プロトコルを用いてデータ通信を行う。カメラマイコン２０５は、カメラ本体２００の撮像モードや制御状況等に応じて、これら２つの通信プロトコルの中から適宜適切な通信プロトコルを選択する。
【００３３】
各通信プロトコルの仕様は以下の通りである。図３（Ａ）、（Ｂ）には、第１の通信プロトコルとしての個別通信プロトコルでの信号波形を示している。個別通信プロトコルは、例えば、カメラ本体２００にて設定されている撮像モードが静止画撮像モードであるときに選択される。
【００３４】
図３（Ａ）は最小の通信単位である１フレームの波形を示している。まず、カメラマイコン２０５は、８周期のパルスを１組とするクロック信号ＬＣＬＫを出力するとともに、クロック信号ＬＣＬＫに同期してレンズマイコン１１１に対してデータ信号ＤＣＬを送信する。これと同時に、カメラマイコン２０５は、クロック信号ＬＣＬＫに同期してレンズマイコン１１１から出力されたデータ信号ＤＬＣを受信する。このようにして、レンズマイコン１１１とカメラマイコン２０５との間で、１組のクロック信号ＬＣＬＫに同期して１バイト（８ビット）のデータが送受信される。このデータの送受信の後、後に詳細に説明する通信待機要求コマンド（以下、単に通信待機要求という）ＢＵＳＹにより通信休止期間が挿入される。クロック信号ＬＣＬＫの８周期の期間とこれに続く通信待機要求ＢＵＳＹの期間をひと組とする通信単位を１フレームと呼ぶ。
【００３５】
図３（Ｂ）には、それぞれ２フレームの通信を含む５つの通信シーケンス「通信ＣＭＤｎ」（ｎ＝１〜５）により構成されるデータ通信の流れを示している。「通信ＣＭＤｎ」に含まれる２フレームの通信は、例えば、カメラマイコン２０５がレンズマイコン１１１からレンズデータＤＴｎを取得する際に行われる。
【００３６】
「通信ＣＭＤ１」において、カメラマイコン２０５は、クロック信号ＬＣＬＫをレンズマイコン１１１に送信するとともに、送信を要求するレンズデータＤＴ１に対応する個別送信要求コマンドＣＭＤ１をデータ信号ＤＣＬとして送信する。このフレームでのデータ信号ＤＬＣは無効データとして扱われる。
【００３７】
続いて、カメラマイコン２０５は、クロック信号ＬＣＬＫを８周期出力した後に、カメラ本体２００側の通信端子状態を出力形式から入力形式に切り替える。レンズマイコン１１１は、カメラ本体２００側の通信端子状態の切り替えが完了した後、クロック信号ＬＣＬＫを出力形式に切り替え、通信待機要求ＢＵＳＹをカメラマイコン２０５に通知するために信号レベルをローレベルにする。カメラマイコン２０５は、通信待機要求ＢＵＳＹが通知されている期間は通信端子の入力形式を維持して、レンズマイコン１１１への通信を休止する。
【００３８】
レンズマイコン１１１は、通信待機要求ＢＵＳＹの通知期間中に、個別送信要求コマンドＣＭＤ１に対応するレンズデータＤＴ１を生成し、次のフレームのデータ信号ＤＬＣとして送信する準備の完了後にクロック信号ＬＣＬＫをハイレベルに切り替える。そして、通信待機要求ＢＵＳＹを解除する。カメラマイコン２０５は、通信待機要求ＢＵＳＹの解除を認識すると、１フレームのクロック信号ＬＣＬＫをレンズマイコン１１１に送信することでレンズマイコン１１１からレンズデータＤＴ１を受信する。これに続く「通信ＣＭＤ２」〜「通信ＣＭＤ５」の通信シーケンスでも「通信ＣＭＤ１」と同様のやり取りがカメラマイコン２０５とレンズマイコン１１１との間で行われる。これによりカメラマイコン２０５は、レンズデータＤＴ２〜ＤＴ５をそれぞれ個別に取得する。
【００３９】
図４は、第２の通信プロトコルとしての連続通信プロトコルでの信号波形を示している。連続通信プロトコルは、例えば、カメラ本体２００にて設定されている撮像モードが動画撮像モードであるときに選択される。
【００４０】
図４（Ａ）、（Ｂ）には、連続通信プロトコルにおけるレンズマイコン１１１へのカスタムコマンドの登録方法を示している。コマンド登録情報としてのカスタムコマンドは、個別通信プロトコルにおける個別送信要求コマンドＣＭＤｎ（ｎ＝１、２、・・・）の組み合わせによって構成される。連続通信プロトコルでは、ＣＭＤｎをコマンド要素という。
【００４１】
まず、図４（Ａ）を用いて、カスタムコマンドの第１の登録方法について説明する。図４（Ａ）には、カメラマイコン２０５が、連続通信プロトコルにより、レンズマイコン１１１から図５に示す５つのレンズデータＤＴ１、ＤＴ２、ＤＴ３、ＤＴ４、ＤＴ５をこの順番で取得するためのカスタムコマンド１を登録するときの信号波形を示している。
【００４２】
予めカメラマイコン２０５は、カメラ本体２００に装着されている交換レンズ１００が有する複数種類のレンズデータを通信により取得している。そして、該レンズデータに基づいてカスタムコマンドの登録テーブル（以下、カメラ側登録テーブルという）ＣＴＢＬ１を生成して保持している。カメラ側登録テーブルＣＴＢＬ１の生成手順については後に説明する。
【００４３】
まず、カメラマイコン２０５は、カメラ側登録テーブルＣＴＢＬ１を参照しつつ、カスタムコマンド１としての登録を要求する登録要求コマンドＥＮＴＲＹ１をレンズマイコン１１１に送信する。レンズマイコン１１１は、登録要求コマンドＥＮＴＲＹ１を受信すると、クロック信号ＬＣＬＫをローレベルに固定することで通信待機要求ＢＵＳＹをカメラマイコン２０５に通知するとともに、カスタムコマンド１の登録準備を開始する。続いて、レンズマイコン１１１は、登録準備が完了すると、通信待機要求ＢＵＳＹを解除する。
【００４４】
カメラマイコン２０５は、この通信待機要求ＢＵＳＹの解除を認識して、カスタムコマンド１をレンズマイコン１１１に送信する。具体的にはカメラマイコン２０５は、レンズマイコン１１１から送信を求める２種類以上のレンズデータＤＴｎの組み合わせと送信順序を示すカスタムコマンド１（コマンド要素ＣＭＤｎの組み合わせ）を該送信順序と同じ順序で送信する。
【００４５】
図４（Ａ）では、カメラマイコン２０５は、レンズマイコン１１１に対してレンズデータＤＴ１、ＤＴ２、ＤＴ３、ＤＴ４、ＤＴ５のこの順序での送信を求める。このため、カメラマイコン２０５は、カスタムデータ１を構成するコマンド要素ＣＭＤ１、ＣＭＤ２、ＣＭＤ３、ＣＭＤ４、ＣＭＤ５をこの順でレンズマイコン１１１に送信する。なお、レンズデータＤＴ３、ＤＴ２、ＤＴ１、ＤＴ５、ＤＴ４のこの順序での送信を求める際には、カメラマイコン２０５はカスタムデータを構成するコマンド要素ＣＭＤ３、ＣＭＤ２、ＣＭＤ１、ＣＭＤ５、ＣＭＤ４をこの順でレンズマイコン１１１に送信する。このようにしてカスタムデータ１（ＣＭＤ１〜ＣＭＤ５）をレンズマイコン１１１に送信したカメラマイコン２０５は、その後、レンズマイコン１１１に対して登録完了を通知するための登録完了コマンドＥＮＤを送信する。
【００４６】
一方、レンズマイコン１１１は、カメラマイコン２０５からデータ信号ＤＣＬとして送信されたカスタムデータ１を構成するコマンド要素ＣＭＤｎと同じ値ＣＭＤｎを、次の１バイト通信でデータ信号ＤＬＣとしてカメラマイコン２０５に送信する。これにより、カメラマイコン２０５は、コマンド要素ＣＭＤｎがレンズマイコン１１１に正しく通信されて登録されたことを確認することができる。
【００４７】
なお、図４（Ａ）では、レンズマイコン１１１が送信要求コマンドＣＭＤ１の受信後に通信待機要求ＢＵＳＹをカメラマイコン２０５に送信し、ＣＭＤ２以降の送信要求コマンドの受信後に通信待機要求ＢＵＳＹを送信しない場合を示している。すなわち、図４（Ａ）に示すデータ通信形式は、レンズマイコン１１１からカメラマイコン２０５に通知する通信待機要求ＢＵＳＹが付加されるコマンドフレームと該通信待機要求が付加されないデータフレームとにより構成される。ただし、これは例に過ぎず、レンズマイコン１１１での処理状況に応じて、ＣＭＤ２以降の送信要求コマンドの受信後に通信待機要求ＢＵＳＹを付加してもよい。
【００４８】
ここで、図６を用いて、レンズマイコン１１１がカスタムコマンド１を登録するために行う登録処理について説明する。カメラマイコン２０５には、前述した登録テーブル（以下、カメラ側登録テーブルという）ＣＴＢＬ１が保存されている。
【００４９】
レンズマイコン１１１は、登録要求コマンドＥＮＴＲＹ１を受信すると、レンズマイコン１１１内に保持されたカスタムコマンド１用のデータテーブル（以下、レンズ側登録テーブルという）ＬＴＢＬ１を選択する。次に、レンズマイコン１１１は、レンズ側登録テーブルＬＴＢＬ１における配列番号Ｎｏ．１のアドレスに、カメラマイコン２０５から１番目に受信したコマンド要素ＣＭＤ１と該ＣＭＤ１に対応するレンズデータＤＴ１とを保存する。続いてレンズマイコン１１１は、レンズ側登録テーブルＬＴＢＬ１における配列番号Ｎｏ．２のアドレスに、カメラマイコン２０５から２番目に受信したコマンド要素ＣＭＤ２と該ＣＭＤ２に対応するレンズデータＤＴ１とを保存する。そして、同様の処理を配列番号Ｎｏ．３からＮｏ．５のアドレスについても行う。この後、レンズマイコン１１１は、カメラマイコン２０５から登録完了コマンドＥＮＤを受信すると、レンズ側登録テーブルＬＴＢＬ１の登録処理を完了する。
【００５０】
また、図４（Ｂ）には、図４（Ａ）に示したカスタムコマンド１の登録と同様にして、カスタムコマンド１とは異なるカスタムコマンド２をレンズマイコン１１１に登録する方法を示している。図４（Ｂ）では、カメラマイコン２０５は、レンズマイコン１１１に対してレンズデータＤＴ６、ＤＴ７、ＤＴ８のこの順序での送信を求める。このため、カメラマイコン２０５は、レンズマイコン１１１に対して登録要求コマンドＥＮＴＲＹ２を送信した後、カスタムコマンド２を構成するコマンド要素ＣＭＤ６、ＣＭＤ７、ＣＭＤ８をこの順で送信する。なお、レンズデータＤＴ８、ＤＴ６、ＤＴ７の順序での送信を求める際には、カメラマイコン２０５はカスタムデータを構成するコマンド要素ＣＭＤ８、ＣＭＤ６、ＣＭＤ７をこの順でレンズマイコン１１１に送信する。このようにしてカスタムデータ２（ＣＭＤ６〜ＣＭＤ８）をレンズマイコン１１１に送信したカメラマイコン２０５は、その後、レンズマイコン１１１に対して登録完了コマンドＥＮＤを送信する。
【００５１】
図４（Ｂ）に示す場合でも、レンズマイコン１１１は、登録要求コマンドＥＮＴＲＹ２を受信すると、カスタムコマンド２用のレンズ側登録テーブルＬＴＢＬ２（図示せず）を選択する。そして、レンズマイコン１１１は、レンズ側登録テーブルＬＴＢＬ２における配列番号Ｎｏ．１〜３のアドレスに、カメラマイコン２０５から順次受信したコマンド要素ＣＭＤ６〜ＣＭＤ８およびこれらに対応するレンズデータＤＴ６〜ＤＴ８を保存する。この後、カメラマイコン２０５から登録完了コマンドＥＮＤを受信すると、レンズマイコン１１１はレンズ側登録テーブルＬＴＢＬ２の登録処理を完了する。
【００５２】
このようにレンズマイコン１１１に予め複数のカスタムコマンドを登録することにより、カメラ本体２００での処理に応じてカメラマイコン２０５がカスタムコマンド（つまりはレンズデータの組み合わせ）を選択することが可能となる。例えば、ＡＦ処理に必要なレンズデータの組み合わせを取得する際にはカスタムコマンド１を選択し、防振処理に必要なレンズデータの組み合わせを取得する際にはカスタムコマンド２を選択するといったことが可能となる。
【００５３】
なお、レンズ側登録テーブル内に保存されたレンズデータＤＴｎは固定値または変数であり、変数である場合はその変数が格納される交換レンズ１００内のＲＡＭ等のメモリのアドレス情報が保存される。
【００５４】
次に、図５を用いて、カメラマイコン２０５がレンズマイコン１１１からカスタムマンド１、２に対応したレンズデータを取得する方法について説明する。図５にはこのときの信号波形を示している。ここでは、カスタムコマンド１、２がレンズマイコン１１１に登録されているものとする。
【００５５】
図５において、まずカメラマイコン２０５は、第１のカメラ処理（例えばＡＦ処理）に必要なレンズデータＤＴ１〜ＤＴ５をレンズマイコン１１１から取得するため、該レンズデータの送信要求コマンドをレンズマイコン１１１に送信する。このとき、レンズデータＤＴ１〜ＤＴ５（つまりはコマンド要素ＣＭＤ１〜ＣＭＤ５）に対応するのはカスタムコマンド１である。このため、カメラマイコン２０５は、カスタムコマンド１に対応付けられた送信要求コマンドＧＥＴ１を生成してレンズマイコン１１１に送信する。
【００５６】
送信要求コマンドＧＥＴ１を受信したレンズマイコン１１１は、クロック信号ＬＣＬＫをローレベルに固定することで通信待機要求ＢＵＳＹをカメラマイコン２０５に通知する。そして、レンズマイコン１１１は、送信要求コマンドＧＥＴ１に対応するレンズデータＤＴ１〜ＤＴ５を生成する。レンズデータＤＴ１〜ＤＴ５を生成して送信準備が整うと、レンズマイコン１１１は、通信待機要求ＢＵＳＹを解除する。
【００５７】
通信待機要求ＢＵＳＹの解除を認識したカメラマイコン２０５は、送信要求コマンドＧＥＴ１に対応する５バイトのレンズデータＤＴ１〜ＤＴ５を取得するために、５フレームのクロック信号ＬＣＬＫを送信する。レンズマイコン１１１は、登録されたカスタムコマンド１（ＣＭＤ１、ＣＭＤ２、ＣＭＤ３、ＣＭＤ４、ＣＭＤ５）に対応する５つのレンズデータＤＴ１、ＤＴ２、ＤＴ３、ＤＴ４、ＤＴ５をこの順番でデータ信号ＤＬＣとしてカメラマイコン２０５に送信する。カメラマイコン２０５は、受信したレンズデータＤＴ１〜ＤＴ５を用いて第１のカメラ処理を行う。
【００５８】
第１のカメラ処理が完了すると、カメラマイコン２０５は、引き続き第２のカメラ処理（例えば防振処理）を行うため、カスタムコマンド２に対応付けられた送信要求コマンドＧＥＴ２を生成してレンズマイコン１１１に送信する。送信要求コマンドＧＥＴ２を受信したレンズマイコン１１１は、通信待機要求ＢＵＳＹをカメラマイコン２０５に通知するとともに送信要求コマンドＧＥＴ２に対応するレンズデータＤＴ６〜ＤＴ８を生成する。その後、通信待機要求ＢＵＳＹを解除したレンズマイコン１１１に対して、カメラマイコン２０５は、送信要求コマンドＧＥＴ２に対応する３バイトのレンズデータＤＴ６〜ＤＴ８を取得するために、３フレームのクロック信号ＬＣＬＫを送信する。レンズマイコン１１１は、登録されているカスタムコマンド１（ＣＭＤ６、ＣＭＤ７、ＣＭＤ８）に対応する３つのレンズデータＤＴ６、ＤＴ７、ＤＴ８をこの順番でカメラマイコン２０５に送信する。カメラマイコン２０５は、受信したレンズデータＤＴ６〜ＤＴ８を用いて第２のカメラ処理を行う。
【００５９】
図７には、レンズマイコン１１１がカメラマイコン２０５から送信要求コマンドＧＥＴ１、ＧＥＴ２を受信した場合に行うレンズデータＤＴｎの生成処理を示している。
【００６０】
前述したように、レンズマイコン１１１は、送信要求コマンドＧＥＴ１を受信すると、クロック信号ＬＣＬＫをローレベルに固定することで通信待機要求ＢＵＳＹをカメラマイコン２０５に通知する。また、レンズマイコン１１１内に保存されたカスタムコマンド１用のレンズ側登録テーブルＬＴＢＬ１を選択する。
【００６１】
次にレンズマイコン１１１は、レンズ側登録テーブルＬＴＢＬ１における配列番号Ｎｏ．１のアドレスを参照することで、１番目の登録レンズデータがＤＴ１であることを認識し、レンズデータＤＴ１を生成する。そして、生成したレンズデータＤＴ１を不図示の送信用ＦＩＦＯメモリに格納する。その後、レンズマイコン１１１は、同様の処理をレンズ側登録テーブルＬＴＢＬ１における配列番号Ｎｏ．２〜５のアドレスに対しても行う。こうして、配列番号Ｎｏ．５のアドレスの登録レンズデータに対応するレンズデータＤＴ５のＦＩＦＯメモリへの格納まで終了したことを確認すると、レンズマイコン１１１は送信要求コマンドＧＥＴ１に対応するレンズデータ生成処理を完了する。
【００６２】
こうしてレンズデータＤＴ１〜ＤＴ５の送信準備が整うと、レンズマイコン１１１は前述したように通信待機要求ＢＵＳＹを解除する。これにより、カメラマイコン２０５はレンズマイコン１１１との通信処理を再開し、５フレーム分のクロック信号ＬＣＬＫをレンズマイコン１１１送信する。レンズマイコン１１１は、該クロック信号ＬＣＬＫに同期したデータ信号ＤＬＣとしてレンズデータＤＴ１〜ＤＴ５をカメラマイコン２０５に連続して送信する。
【００６３】
このように本実施例では、レンズマイコン１１１に予め複数のカスタムコマンドを登録して、カメラマイコン２０５がカメラ本体２００で行うカメラ処理に応じてカスタムコマンドを選択してそれに対応する送信要求コマンドをレンズマイコン１１１に送信する。これにより、カメラマイコン２０５は、レンズマイコン１１１から大量のレンズデータを短時間で取得することが可能となり、この結果、カメラマイコン２０５は高速でカメラ処理を行うことができる。
【００６４】
本実施例では、個別通信プロトコルと連続通信プロトコルが選択される場合としてそれぞれ、静止画撮像モードと動画撮像モードが設定された場合を例として挙げた。しかし、これら２つの通信プロトコルが選択される場合はこれらに限定されるものではなく、カメラ本体２００で行う制御や処理に応じて選択すればよい。例えば、動画撮像モードであっても、ユーザの操作状態や撮像状態によっては連続通信プロトコルによる通信が不適切な場合もある。その場合には個別通信プロトコルを選択してもよい。また、静止画撮像モードであっても、予め決められた組み合せのレンズデータを用いるカメラ処理を行う場合には連続通信プロトコルを選択してもよい。
【００６５】
次に、図８〜図１１のフローチャートを用いて、カメラマイコン２０５が連続通信プロトコルを選択したときのカメラマイコン２０５およびレンズマイコン１１１が行う具体的な処理について説明する。図８および図９のフローチャートはカメラマイコン２０５が行う処理を示し、図１０および図１１のフローチャートはレンズマイコン１１１が行う処理を示している。カメラマイコン２０５およびレンズマイコン１１１はそれぞれ、コンピュータプログラムとしてのデータ通信制御プログラムに従ってこれらの処理を実行する。
【００６６】
図８には、カメラマイコン２０５がカスタムコマンドを生成するために行う処理（カメラマイコン処理１）を示している。カメラマイコン２０５は、ステップＳ１において、レンズマイコン１１１からレンズ機能情報（レンズ固有情報）ＩＤを取得する。レンズ機能情報ＩＤは、交換レンズ１００が有する機能（例えば、ＡＦ機能、防振機能およびズーム機能）の有無を示したり、交換レンズ１００（レンズマイコン１１１）が記憶しているレンズデータを示したりする情報である。さらに、レンズ機能情報ＩＤは、交換レンズ１００が受け入れ可能な個別送信要求コマンドを示す情報でもある。レンズ機能情報ＩＤは、交換レンズ１００の製品ごとに異なる、その交換レンズ１００に固有の情報である。
【００６７】
レンズ機能情報ＩＤは一般的には不変であるため、交換レンズ１００がカメラ本体２００に装着された時点で一度だけカメラマイコン２０５に送信されればよい。ただし、レンズ機能情報ＩＤが変更可能である場合には、その変更ごとに新たなレンズ機能情報ＩＤをレンズマイコン１１１からカメラマイコン２０５に送信する。
【００６８】
次に、ステップＳ２において、カメラマイコン２０５は、ステップＳ１で取得したレンズ機能情報ＩＤに基づいて、レンズマイコン１１１に登録させるべきカスタムコマンドｍ（ｍ＝１、２、・・・）を判断する。そして、ステップＳ３において、カスタムコマンドｍの生成処理を開始する。
【００６９】
ステップＳ４では、カメラマイコン２０５は、カスタムコマンドｍの生成処理として、まずカメラマイコン２０５内のメモリにカスタムコマンドｍを保存するデータテーブル（カメラ側登録テーブルＣＴＢＬｍ）の番号ｍを決定する。
【００７０】
次に、ステップＳ５では、カメラマイコン２０５は、カスタムコマンドｍに含ませるコマンド要素（つまりはレンズマイコン１１１に送信を要求する２種類以上のレンズデータ）の組み合せとそれらの順序を決定してカスタムコマンドｍを生成する。例えば、動画撮像中においてカメラマイコン２０５が行う処理として必要なレンズデータには、フォーカスに関する情報、防振に関する情報、絞りに関する情報および変倍に関する情報がある。また、これらの情報をカメラマイコン２０５が受信するときの順序として、連続通信プロトコルの通信データ長の中で、早い時期に取得すべき優先度の高い種類のレンズデータについてはその送信要求の順序が早くなるように設定する。
【００７１】
カメラマイコン２０５は、このようにしてステップＳ５で生成されたカスタムコマンドｍをステップＳ４で決定した番号ｍのデータテーブルに記憶させる。こうして、カメラマイコン２０５は、カスタムコマンドの生成処理を完了する。
【００７２】
図９には、カメラマイコン２０５がレンズマイコン１１１に対してカスタムコマンドを登録させるために行う処理（カメラマイコン処理２）を示している。ステップＳ１００では、カメラマイコン２０５は、レンズマイコン１１１に登録させるカスタムコマンドｍを判断する。カメラマイコン２０５内のメモリには、予め複数のカスタムコマンドｍのそれぞれを構成する２以上のコマンド要素ＣＭＤｎとその順序が決められて、カスタムコマンドごとにテーブルデータ（カメラ側登録テーブルＣＴＢＬｍ）として記憶されている。
【００７３】
次に、ステップＳ１０１では、カメラマイコン２０５は、レンズマイコン１１１に登録させると判断したカスタムコマンドｍに対応するカメラ側登録テーブルＣＴＢＬｍのデータを取得する。
【００７４】
次に、ステップＳ１０２では、カメラマイコン２０５は、レンズマイコン１１１に登録させるカスタムコマンドｍに対応する登録要求コマンドＥＮＴＲＹｍを決定する。
【００７５】
次に、ステップＳ１０３では、カメラマイコン２０５は、データ信号ＤＣＬとして登録要求コマンドＥＮＴＲＹｍをレンズマイコン１１１に送信する。
【００７６】
次に、ステップＳ１０４では、登録要求コマンドＥＮＴＲＹｍを送信完了したカメラマイコン２０５は、レンズマイコン１１１からの通信待機要求ＢＵＳＹの状態（解除か否か）を確認する。
【００７７】
そして、通信待機要求ＢＵＳＹの解除を確認したカメラマイコン２０５は、ステップＳ１０５において、再び選択したテーブルデータを参照してカスタムコマンドｍを構成する２以上のコマンド要素ＣＭＤｎを決定する。
【００７８】
さらに、カメラマイコン２０５は、ステップＳ１０６において、データ信号ＤＣＬとして、ステップＳ１０５にて決定したカスタムコマンドｍ、つまりは２以上のコマンド要素ＣＭＤｎを決められた順序でレンズマイコン１１１に送信する。
【００７９】
次に、ステップＳ１０７において、カメラマイコン２０５は、テーブルデータを参照して、そのテーブルデータ内の全てのコマンド要素ＣＭＤｎの送信が完了したか否かを判断する。まだ完了していない場合は、カメラマイコン２０５はステップＳ１０８に進み、次のコマンド要素ＣＭＤｎの送信順を１つ進めてステップＳ１０５に戻る。こうして、テーブルデータ内の全てのコマンド要素ＣＭＤｎのレンズマイコン１１１への送信が完了するまでステップＳ１０５〜Ｓ１０８を繰り返す。全てのコマンド要素ＣＭＤｎの送信が完了すると、カメラマイコン２０５は、ステップＳ１０９に進む。
【００８０】
ステップＳ１０９では、カメラマイコン２０５は、レンズマイコン１１１に対して、カスタムコマンドの登録完了を通知するコマンドＥＮＤを送信する。これにより、カメラマイコン２０５における１つのカスタムコマンドの登録処理が完了する。
【００８１】
続いて、ステップＳ１１０では、カメラマイコン２０５は、レンズマイコン１１１に登録すべき複数のカスタムコマンドの登録が全て完了したか否かを判断する。まだ完了していない場合はステップＳ１００に戻って、次のカスタムコマンドの登録処理を行う。一方、全てのカスタムコマンドの登録が完了すると、カメラマイコン２０５は、本処理を終了する。
【００８２】
図１０には、レンズマイコン１１１がカメラマイコン２０５から送信されたカスタムコマンドを登録する処理（レンズマイコン処理１）を示している。ステップＳ２００において、レンズマイコン１１１は、登録要求コマンドＥＮＴＲＹｍの受信の有無を判断する。登録要求コマンドＥＮＴＲＹｍの受信を確認したレンズマイコン１１１は、通信待機要求ＢＵＳＹをカメラマイコン２０５に通知する。
【００８３】
次に、ステップＳ２０２では、レンズマイコン１１１は、ステップＳ２００で受信した登録要求コマンドＥＮＴＲＹｍに対応するレンズ側登録テーブルＬＴＢＬｍを選択する。
【００８４】
次に、ステップＳ２０３では、レンズマイコン１１１は、カメラマイコン２０５から送信されてくるカスタムコマンドｍうち１番目のコマンド要素ＣＭＤｎを記憶（格納）するためのテーブルアドレスを設定する。そして、コマンド受信待機状態（第１のモード）となったレンズマイコン１１１は、ステップＳ２０４にて通信待機要求ＢＵＳＹを解除する。ステップＳ２０５では、レンズマイコン１１１は、カメラマイコン２０５から通信待機要求ＢＵＳＹの解除後に送信されてくる１番目のコマンド要素ＣＭＤｎの受信を待機する。
【００８５】
レンズマイコン１１１は、コマンド受信待機状態でカメラマイコン２０５から登録要求コマンドＥＮＴＲＹｍを受信すると、登録完了コマンドＥＮＤを受信するまで受信したコマンド要素ＣＭＤｎに対応するレンズデータを送信しない第２のモードに切り替わる。第２のモードでは、レンズマイコン１１１は、カメラマイコン２０５に対して、受信コマンド要素ＣＭＤｎを確認させるためのデータ（ＣＭＤｎ）を送信する。なお、第２のモードにてレンズマイコン１１１は、通信データ長または送信コマンド数（コマンド要素ＣＭＤｎの数）を通知するデータに基づいてカメラマイコン２０５の通信完了を判断し、第１のモードに切り替えてもよい。
【００８６】
ステップＳ２０３で１番目のコマンド要素ＣＭＤｎを受信したレンズマイコン１１１は、ステップＳ２０６でコマンド要素ＣＭＤをステップＳ２０２で選択したレンズ側登録テーブルＬＴＢＬｍのうちステップＳ２０３で設定したテーブルアドレスに格納する。また、ステップＳ２０７では、レンズマイコン１１１は、このコマンド要素ＣＭＤｎに対応するレンズデータＤＴｎも同テーブルアドレスに格納する。なお、前述したように、レンズ側登録テーブル内に格納されたレンズデータＤＴｎは固定値または変数であり、変数である場合はその変数が格納されるメモリのアドレス情報が保存される。
【００８７】
続いて、ステップＳ２０８では、レンズマイコン１１１は、カメラマイコン２０５からのデータ受信を待機し、受信したデータが登録完了コマンドＥＮＤであるか否かを判断する。登録完了コマンドＥＮＤではない場合は、レンズマイコン１１１は、ステップＳ２０９においてレンズ側登録テーブルＬＴＢＬｍにおける格納先のテーブルアドレスを示す配列番号を進めてステップＳ２０６に戻る。これ以降は、カメラマイコン２０５から送信される全てのコマンド要素ＣＭＤｎの受信および格納が完了して登録完了コマンドＥＮＤが受信されるまでステップＳ２０６〜Ｓ２０９を繰り返す。
【００８８】
ステップＳ２０８において登録完了コマンドＥＮＤを受信した場合は、レンズマイコン１１１は、ステップＳ２１０に進み、レンズ側登録テーブルＬＴＢＬｍ上の格納済みコマンド要素ＣＭＤｎおよびレンズデータＤＴｎの登録を完了する。このとき、レンズマイコン１１１は、登録完了コマンドＥＮＤの受信に応じて、上述した第２のモードから第１のモードに切り替わる。以上により、レンズマイコン１１１は本処理を終了する。
【００８９】
図１１には、レンズマイコン１１１がカメラマイコン２０５から送信要求コマンドＧＥＴｍを受信したときに行うレンズデータの送信処理（レンズマイコン処理２）を示している。ステップＳ３００では、レンズマイコン１１１は、送信要求コマンドＧＥＴｍの受信の有無を判断する。送信要求コマンドＧＥＴｍの受信を確認したレンズマイコン１１１は、ステップＳ３０１において通信待機要求ＢＵＳＹをカメラマイコン２０５に通知する。
【００９０】
次に、ステップＳ３０２では、レンズマイコン１１１は、ステップＳ３００で受信した送信要求コマンドＧＥＴｍに基づいて、対応するレンズ側登録テーブルＬＴＢＬｍを選択する。
【００９１】
次に、ステップＳ３０３では、レンズマイコン１１１は、選択したレンズ側登録テーブルＬＴＢＬｍ内に収められた２種類以上のレンズデータＤＴｎの格納先の情報を取得する。ここでは、レンズデータが変数であり、その変数が交換レンズ１００内のＲＡＭ等のメモリに格納されているものとする。
【００９２】
そして、ステップＳ３０４では、レンズマイコン１１１は、ステップＳ３０３で取得した情報に基づいてメモリから読み込んだ変数を用いてレンズデータＤＴｎを生成する。さらに、ステップＳ３０５では、レンズマイコン１１１は、生成したレンズデータＤＴｎをデータ信号ＤＬＣ送信用データバッファであるＦＩＦＯメモリに格納する。
【００９３】
続いて、ステップＳ３０６では、レンズマイコン１１１は、レンズ側登録テーブルＬＴＢＬｍ内に収められた全てのレンズデータＤＴｎの生成が完了したか否かを判断する。全レンズデータＤＴｎの生成が完了していない場合は、ステップＳ３０７に進み、レンズ側登録テーブルＬＴＢＬｍのテーブルアドレスを示す配列番号を１つ進めてステップＳ３０４に戻る。これ以降は、全てのレンズデータＤＴの生成が完了するまで、ステップＳ３０４〜Ｓ３０７の処理を繰り返す。
【００９４】
ステップＳ３０６にて全てのレンズデータＤＴｎの生成が完了すると、レンズマイコン１１１は、ステップＳ３０８において、レンズデータＤＴｎの送信準備処理が整った後に通信待機要求ＢＵＳＹを解除する。
【００９５】
次に、ステップＳ３０９では、レンズマイコン１１１は、通信待機要求ＢＵＳＹの解除を認識したカメラマイコン２０５から１フレーム分のクロック信号ＬＣＬＫが送信されるのを待つ。そして、クロック信号ＬＣＬＫを受信したレンズマイコン１１１は、該クロック信号ＬＣＬＫに同期させてＦＩＦＯメモリに格納した１つのレンズデータＤＴｎをカメラマイコン２０５に送信する。
【００９６】
そして、ステップＳ３１０において、レンズマイコン１１１は、ＦＩＦＯメモリに格納した全てのレンズデータＤＴｎの送信が完了したか否かを判断する。未送信レンズデータが残っている場合にはステップＳ３０９に戻り、カメラマイコン２０５から次のクロック信号ＬＣＬＫが送信されてくるのを待つ。これ以降は、レンズマイコン１１１は、ＦＩＦＯメモリに格納した全てのレンズデータＤＴｎの送信が完了するまで、ステップＳ３０９、Ｓ３１０の処理を繰り返す。この繰り返しにより、カスタムコマンドｍ（送信要求コマンドＧＥＴｍ）に対応する全てのレンズデータＤＴｎが、カスタムコマンドｍ（コマンド要素ＣＭＤｎ）により指定された順序でレンズマイコン１１１からカメラマイコン２０５に連続して送信される。
【００９７】
ステップＳ３１０において、ＦＩＦＯメモリ内の全てのレンズデータＤＴｎの送信が完了した場合には、レンズマイコン１１１は本処理を終了する。
【００９８】
次に、図１２〜図１４を用いてカメラ本体２００と交換レンズ１００の間で撮像タイミングを共有する方法について説明する。図１２は、垂直同期信号Ｖと同期して予め決められた種類及び容量のデータ通信が行われるときの通信波形を示している。図１２で示したデータ通信においては、固定長のデータ通信が行われ、なおかつ、カメラマイコン２０５とレンズマイコン１１１の間でやり取りされるデータの種類やタイミングが予め決められている。それゆえ、図１２で示したデータ通信においては、カメラ本体２００から交換レンズ１００に対して通信要求コマンドを送信する必要がない。垂直同期信号Ｖの立下りタイミングまたは立上りタイミングを垂直同期信号Ｖの出力タイミングとして、垂直同期信号Ｖの出力タイミングに同期したデータ通信が行われる。
【００９９】
一方、垂直同期信号Ｖに同期して送受信されるレンズデータの種類やタイミングが可変の通信プロトコルにおいては、交換レンズ１００が垂直同期信号Ｖの出力タイミングを認識できないことがある。本実施例では、垂直同期信号Ｖの一周期内で最初にカメラ本体２００から送信される送信要求コマンドの種類を予め決めておくことで、交換レンズ１００が垂直同期信号Ｖの出力タイミングを認識できるような構成としている。これにより、レンズマイコン１１１はカメラ本体２００における撮像タイミングを正確に認識し、レンズ制御に必要なレンズデータを精度よく算出することができる。
【０１００】
以下、精度の高いレンズデータを送受信する目的について説明する。垂直同期信号Ｖの一周期内で複数のデータ通信を行う場合、周期内の最初のデータ通信タイミングと周期内の最後のデータ通信タイミングとの時間差が大きくなり、レンズデータに変化が生じる。交換レンズ１００からカメラ本体２００に送信されるレンズデータとしては、フォーカスレンズ１０４の位置情報や振れセンサ１２７の出力等がある。
【０１０１】
カメラマイコン２０５は、フォーカスレンズ１０４の位置情報に基づいてフォーカス制御を行うため、特定のタイミングにおけるフォーカスレンズ１０４の位置を正確に把握することで合焦精度を向上させることができる。レンズマイコン１１１から送信される具体的なレンズデータとしては、垂直同期信号Ｖの出力タイミングから所定時間経過後のフォーカスレンズ１０４の位置情報や、フォーカスレンズ１０４の位置情報を取得したタイミングを示す情報が挙げられる。カメラマイコン２０５は、フォーカスレンズ１０４の位置情報とこの位置情報の取得タイミングを正確に認識することで、精度の高い合焦動作を行うことができる。
【０１０２】
また、カメラマイコン２０５が、垂直同期信号Ｖの出力タイミングと関連付けられた振れセンサ１２７の出力をレンズマイコン１１１から受信することで、カメラ本体２００における像振れ補正精度を高めることができる。例えば、交換レンズ１００に含まれる振れ補正レンズ１０３を駆動させて行う光学防振と、カメラ本体における画像処理によって行う電子防振を組み合わせて像振れ補正を行う場合に、光学防振と電子防振の振れ補正比率を適切に設定することが可能となる。さらに、振れセンサ１２７の出力とそのタイミングから被写体の移動速度を推測し、被写体の移動速度を考慮した像振れ補正を行うことが可能となる。
【０１０３】
続いて、交換レンズ１００とカメラ本体２００の間で垂直同期信号Ｖの出力タイミングを共有するための具体的な方法について図１３、図１４を用いて説明する。
【０１０４】
図１３に示すように、複数の送信要求コマンドＧＥＴの中で、垂直同期信号Ｖの一周期内の最初に送信可能なコマンド（ＧＥＴ８０〜ＧＥＴ８７）が決められている。また、これらの送信要求コマンド（ＧＥＴ８０〜ＧＥＴ８７）に対応する登録要求コマンドＥＮＴＲＹ（ＥＮＴＲＹ００〜ＥＮＴＲＹ０７）が設定されている。これにより、レンズマイコン１１１は、所定の送信要求コマンド（ＧＥＴ８０〜ＧＥＴ８７）をカメラマイコン２０５から受信することでカメラ本体２００における垂直同期信号Ｖの出力タイミングを認識することができる。送信要求コマンド（ＧＥＴ８０〜ＧＥＴ８７）及び登録要求コマンド（ＥＮＴＲＹ００〜ＥＮＴＲＹ０７）は、垂直同期信号Ｖの一周期内の最初に送信可能なコマンドであるため、先頭コマンド（先頭情報）と記載する。これら以外のコマンドを非先頭コマンド（非先頭情報）と記載する。
【０１０５】
例えば、送信要求コマンドＧＥＴがＧＥＴ＝８２である場合には、レンズマイコン１１１は、送信要求コマンド（ＧＥＴ＝８２）を垂直同期信号Ｖの一周期内における最初の送信要求コマンドであると認識する。なお、クロック信号ＬＣＬＫの出力タイミングは、垂直同期信号Ｖの立上りタイミングや立下りタイミングを基準に設定される。本実施例では、垂直同期信号Ｖの立下りタイミングからクロック信号ＬＣＬＫの出力タイミングまでの遅延時間Ｔｖを考慮して、各種レンズデータを作成する。なお、垂直同期信号Ｖの立上りタイミングを基準とした遅延時間に基づいて各種レンズデータを作成しても良い。
【０１０６】
遅延時間Ｔｖは予め決められた長さであっても良いし、適宜変更可能な長さとしても良い。送信要求コマンドと共にカメラマイコン２０５から送信される情報に遅延時間Ｔｖの長さを示す情報が含まれる構成とすれば、遅延時間Ｔｖを適宜変更することができる。遅延時間Ｔｖに関する情報の送受信は、カメラ本体２００と交換レンズ１００が電気的に接続されたタイミングで行われる初期通信において実行されてもよい。また、遅延時間Ｔｖの長さに応じて異なるコマンドが送受信されるプロトコルとすることで、遅延時間Ｔｖをカメラ本体２００と交換レンズ１００の間で容易に共有することができる。
【０１０７】
図１４は、連続通信プロトコルに基づく通信の流れを示している。本実施例では、連続通信プロトコルに基づく通信を行っているが、個別通信プログラムに基づく通信においても通信の流れは同じである。
【０１０８】
図１４では、垂直同期信号Ｖの一周期内における最初の送信要求コマンドとして、カメラマイコン２０５からレンズマイコン１１１に対してＧＥＴ＝８０が送信される。そして交換レンズ１００においてＧＥＴ＝８０に対応するレンズデータが作成され、作成されたレンズデータがレンズマイコン１１１からカメラマイコン２０５に送信される。ここでレンズマイコン１１１は、送信要求コマンドとは別に遅延時間Ｔｖを示す情報を取得し、この遅延時間Ｔｖを考慮したレンズデータを作成する。
【０１０９】
続いてカメラマイコン２０５からレンズマイコン１１１に対して送信要求コマンドＧＥＴ＝８８が送信される。図１３において説明したように、ＧＥＴ＝８８は先頭コマンドでないため、レンズマイコン１１１は、垂直同期信号Ｖの周期が継続していると認識し、垂直同期信号Ｖの出力タイミングからの経過時間を考慮したレンズデータをカメラマイコン２０５に送信する。続いて、レンズマイコン１１１は送信要求コマンドＧＥＴ＝８Ａを受信し、これに対応するレンズデータをカメラマイコン２０５に送信する。
【０１１０】
カメラマイコン２０５から先頭コマンドとしての送信要求コマンドＧＥＴ＝８３を受信することに応じて、レンズマイコン１１１は、垂直同期信号Ｖの周期が切り替わったことを認識する。以降、新たに認識した垂直同期信号Ｖの出力タイミングに応じたレンズデータを作成し、作成したデータをカメラマイコン２０５に送信する。
【０１１１】
以上のように、カメラマイコン２０５からレンズマイコン１１１に対して、垂直同期信号Ｖの一周期内における最初の送信要求コマンドであることを伝達することで、レンズマイコン１１１が、垂直同期信号Ｖの出力タイミングを正確に認識することができる。これにより、交換レンズ１００からカメラ本体２００に送信される各種レンズデータの精度を高めることができ、カメラ本体２００で実行される合焦制御や像振れ補正制御等の精度を向上させることができる。
【０１１２】
［実施例２］
続いて本発明の実施例２について説明する。カメラ本体２００や交換レンズ１００の基本的な構成は実施例１と同様である。実施例２では、カメラマイコン２０５とレンズマイコン１１１の間で、第２の通信プロトコルとしての連続通信プロトコルでのデータ通信が行われる。連続通信プロトコルの概要は実施例１で説明したものと同様である。
【０１１３】
実施例２では、個別送信要求コマンドＣＭＤの送信前に、カメラマイコン２０５がレンズマイコン１１１に対して登録番号通知コマンドＥＩＤやデータ番号通知コマンドＧＩＤを送信する。登録要求コマンドＥＮＴＲＹや送信要求コマンドＧＥＴが送信された後、個別送信要求コマンドＣＭＤの送信前に、登録番号通知コマンドＥＩＤやデータ番号通知コマンドＧＩＤの送信を行うことが本実施例の特徴である。
【０１１４】
図１５を用いてカスタムコマンドの登録方法について説明する。図１５（Ａ）では、カメラマイコン２０５は、登録要求コマンドＥＮＴＲＹをレンズマイコン１１１に送信する。レンズマイコン１１１は、登録要求コマンドＥＮＴＲＹを受信すると、クロック信号ＬＣＬＫをローレベルに固定することで通信待機要求ＢＵＳＹをカメラマイコン２０５に通知する。通信待機要求ＢＵＳＹの通知と共にカメラマイコン２０５から送信される情報の受信準備を行って通信待機要求ＢＵＳＹを解除する。
【０１１５】
カメラマイコン２０５は、通信待機要求ＢＵＳＹの解除を認識することに応じて、カスタムコマンド１の登録番号通知コマンドＥＩＤ１と、今回のカスタムコマンドに応じて送受信されるデータ容量を示す情報（ＥＮＯ１）をレンズマイコン１１１に送信する。レンズマイコン１１１は、通信待機要求ＢＵＳＹをカメラマイコン２０５に通知するとともに、カスタムコマンド１の登録準備を行って通信待機要求ＢＵＳＹを解除する。
【０１１６】
カメラマイコン２０５は、通信待機要求ＢＵＳＹの解除を認識することに応じて、個別送信要求コマンドＣＭＤをレンズマイコン１１１に送信する。カメラマイコン２０５は、レンズマイコン１１１からの送信を求める２種類以上のレンズデータＤＴｎ（ｎ＝１、２、・・・）の組み合わせと送信順序とを示すカスタムコマンド（コマンド要素ＣＭＤｎの組み合わせ）を該送信順序と同じ順序で送信する。
【０１１７】
図１５（Ａ）では、カメラマイコン２０５は、レンズマイコン１１１に対してレンズデータＤＴ２１、ＤＴ２２、ＤＴ２３、ＤＴ２４のこの順序での送信を求める。このため、カメラマイコン２０５は、カスタムデー１を構成するコマンド要素ＣＭＤ２１、ＣＭＤ２２、ＣＭＤ２３、ＣＭＤ２４をこの順でレンズマイコン１１１に送信する。
【０１１８】
ここで、本実施例では、個別送信要求コマンドＣＭＤの送信前に予めデータ容量を示す情報としてＥＮＯ１を送信しているため、実施例１で説明した登録完了コマンドＥＮＤは不要である。
【０１１９】
図１５（Ｂ）では、カメラマイコン２０５は、レンズマイコン１１１に対してレンズデータＤＴ２５、ＤＴ２６、ＤＴ２７のこの順序での送信を求める。図１５（Ａ）と同様に、カメラマイコン２０５は、登録要求コマンドＥＮＴＲＹを送信した後に、カスタムコマンド２の登録番号通知コマンドＥＩＤ２及びデータ容量を示す情報（ＥＮＯ２）をレンズマイコン１１１に送信する。その後、カメラマイコン２０５は、カスタムデータを構成するコマンド要素ＣＭＤ２５、ＣＭＤ２６、ＣＭＤ２７をこの順でレンズマイコン１１１に送信する。
【０１２０】
次に、図１６を用いて、カメラマイコン２０５がレンズマイコン１１１からカスタムコマンドに対応したレンズデータを取得する方法について説明する。図１６はこのときの信号波形を示している。ここでは、カスタムコマンドがレンズマイコン１１１に登録されているものとする。
【０１２１】
図１６（Ａ）は、カスタムコマンド１に対応付けられた送信要求コマンドＧＥＴ１に対するデータ通信の流れを示している。図１６（Ｂ）は、カスタムコマンド２に対応付けられた送信要求コマンドＧＥＴ２に対するデータ通信の流れを示している。図１６（Ａ）、（Ｂ）のデータ通信は、垂直同期信号Ｖの一周期内に連続して行われる。
【０１２２】
図１６（Ａ）において、カメラマイコン２０５は、カスタムコマンド１に対応付けられた送信要求コマンドＧＥＴを生成してレンズマイコン１１１に送信する。レンズマイコン１１１は、送信要求コマンドＧＥＴを受信すると、クロック信号ＬＣＬＫをローレベルに固定することで通信待機要求ＢＵＳＹをカメラマイコン２０５に通知する。通信待機要求ＢＵＳＹの通知と共に、データ番号通知コマンドＧＩＤ１および垂直同期信号Ｖの出力タイミングからの遅延時間ＶＤＴＩＭＥ１を示す情報の受信準備を行って通信待機要求ＢＵＳＹを解除する。
【０１２３】
カメラマイコン２０５は、この通信待機要求ＢＵＳＹの解除を認識することに応じて、データ番号通知コマンド（ＧＩＤ１）と、遅延時間ＶＤＴＩＭＥ１を示す情報をレンズマイコン１１１に送信する。レンズマイコン１１１は、通信待機要求ＢＵＳＹをカメラマイコン２０５に通知するとともに、必要なレンズデータの作成を行って通信待機要求ＢＵＳＹを解除する。そして、レンズマイコン１１１は、データ番号通知コマンドＧＩＤ１に対応付けられた登録番号通知コマンドＥＩＤ１に基づいて登録された順序でレンズデータＤＴ２１、ＤＴ２２、ＤＴ２３、ＤＴ２４をカメラマイコン２０５に送信する。
【０１２４】
ここで、図１７（Ｂ）に示すように、データ番号通知コマンドＧＩＤには、垂直同期信号Ｖの一周期内の最初に送信可能な送信要求コマンドであるか否かを示す先頭情報が含まれている。具体的には、データ番号通知コマンドＧＩＤの特定のビットを用いて、垂直同期信号Ｖの一周期内の最初に送信される送信要求コマンド（先頭コマンド）であるか否かを示している。例えば、データ番号通知コマンドＧＩＤの先頭ビットが１を示しているときには、先頭コマンドであることを表し、データ番号通知コマンドＧＩＤの先頭ビットが０を示しているときには、先頭コマンドでないことを表すものとする。これにより、レンズマイコン１１１は、カメラマイコン２０５から送信されたデータ番号通知コマンドＧＩＤが、先頭コマンドであるか否かを容易に判断することができる。
【０１２５】
図１７は、登録番号通知コマンドＥＩＤとデータ番号通知コマンドＧＩＤの構成を示す図である。図１７（Ａ）は、登録番号通知コマンドＥＩＤの構成を示している。登録番号通知コマンドＥＩＤの先頭ビットは未定義となっており、２番目から８番目のビットにより登録番号を定義している。図１７（Ｂ）は、送信要求コマンドＧＩＤの構成を示している。上述したように、データ番号通知コマンドＧＩＤの先頭ビットは先頭コマンドであるか否かを示しており、２番目から８番目のビットによりレンズマイコン２０５からの送信を要求するデータ番号を定義している。
【０１２６】
図１８は、遅延時間ＶＤＴＩＭＥを説明する図である。本実施例では、垂直同期信号Ｖの出力タイミング（本実施例では立下りタイミング）から、クロック同期信号ＬＣＬＫの送信タイミングまでの時間差を遅延時間ＶＤＴＩＭＥとしている。レンズマイコン２０５は、この遅延時間ＶＤＴＩＭＥに基づいて各種レンズデータを生成し、生成したレンズデータをカメラマイコン２０５に送信する。
【０１２７】
以上説明したように、実施例２では、送信要求コマンドＧＥＴの他に、データ番号通知コマンドＧＩＤや遅延時間ＶＤＴＩＭＥを示す情報を別途送受信する構成としている。データ番号通知コマンドＧＩＤに、先頭コマンドであるか否かを示すビット情報を付加することで、垂直同期信号Ｖの一周期内の最初に送信される送信要求コマンドをレンズマイコン２０５が容易に認識することができる。
【０１２８】
以上説明した実施例は代表的な例に過ぎず、本発明の実施に際しては、各実施例に対して種々の変形や変更が可能である。例えば、上記実施例では、アクセサリ装置として交換レンズを用いた例を示したが、撮像装置との通信機能を有するものであればストロボ等を用いてもよい。
【符号の説明】
【０１２９】
１００  交換レンズ
１１１  レンズマイコン
２００  カメラ本体
２０５  カメラマイコン
【図１】
2020080570.tif 000003
【図２】
2020080570.tif 000004
【図３】
2020080570.tif 000005
【図４】
2020080570.tif 000006
【図５】
2020080570.tif 000007
【図６】
2020080570.tif 000008
【図７】
2020080570.tif 000009
【図８】
2020080570.tif 000010
【図９】
2020080570.tif 000011
【図１０】
2020080570.tif 000012
【図１１】
2020080570.tif 000013
【図１２】
2020080570.tif 000014
【図１３】
2020080570.tif 000015
【図１４】
2020080570.tif 000016
【図１５】
2020080570.tif 000017
【図１６】
2020080570.tif 000018
【図１７】
2020080570.tif 000019
【図１８】
2020080570.tif 000020