JP2005037824A - カメラアクセサリ、カメラおよびカメラシステム - Google Patents
カメラアクセサリ、カメラおよびカメラシステム Download PDFInfo
- Publication number
- JP2005037824A JP2005037824A JP2003276901A JP2003276901A JP2005037824A JP 2005037824 A JP2005037824 A JP 2005037824A JP 2003276901 A JP2003276901 A JP 2003276901A JP 2003276901 A JP2003276901 A JP 2003276901A JP 2005037824 A JP2005037824 A JP 2005037824A
- Authority
- JP
- Japan
- Prior art keywords
- camera
- data
- communication
- microcomputer
- accessory
- 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
Links
Images
Abstract
【課題】カメラおよびアクセサリの通信処理に関する負担を軽減する。
【解決手段】 カメラ10に対して装着可能なカメラアクセサリ1において、カメラと通信を行うための通信回路8と、該カメラアクセサリに関するデータを記憶したアクセサリデータ記憶手段7bと、アクセサリデータ記憶手段に記憶されたデータのうちカメラから通信回路を介して送信されてきたデータの送信要求コマンドに応じた1又は複数のデータを読み出してカメラに通信回路を介して送信する通信制御手段7aと、カメラに送信するデータを一時的に記憶する複数のレジスタとを有する。通信制御手段は、送信要求コマンドに応じたデータが複数あるときに、該複数のデータをデータごとに複数のレジスタに記憶させてからカメラに送信する。
【選択図】 図1
【解決手段】 カメラ10に対して装着可能なカメラアクセサリ1において、カメラと通信を行うための通信回路8と、該カメラアクセサリに関するデータを記憶したアクセサリデータ記憶手段7bと、アクセサリデータ記憶手段に記憶されたデータのうちカメラから通信回路を介して送信されてきたデータの送信要求コマンドに応じた1又は複数のデータを読み出してカメラに通信回路を介して送信する通信制御手段7aと、カメラに送信するデータを一時的に記憶する複数のレジスタとを有する。通信制御手段は、送信要求コマンドに応じたデータが複数あるときに、該複数のデータをデータごとに複数のレジスタに記憶させてからカメラに送信する。
【選択図】 図1
Description
本発明は、カメラに装着されるフラッシュ、交換レンズ、データパック等のカメラアクセサリに関するものである。
従来、カメラとアクセサリ間はメカ的な保持部材(マウント)で連結され、そのマウントには、電気的な接点が用意されている。そして、この電気的接点を通じて、図7に示すように、それぞれに設けられたマイクロコンピュータ(以下、マイコンと記す)が有するシリアル通信機能によってデータを交換する方式が一般的である。
図7において、Coutはカメラマイコンからアクセサリマイコンに対する出力データを送信するための出力端子、Cinはカメラマイコンに対するアクセサリマイコンからの出力データを受信する入力端子である。
CclkはCout、Cinを介したデータ通信において同期をとるためのカメラ同期出力クロック端子である。Linはアクセサリマイコンに対するカメラマイコンからの出力データを受信する入力端子である。
Loutはアクセサリマイコンからカメラマイコンに対する出力データを送信するための出力端子、LclkはLin、Loutを介したデータ通信において同期をとるためのアクセサリ同期入力クロック端子である。
図8には、図7に示した各信号端子を使った通信方法における、カメラマイコンの各端子への信号の入出力タイミングを示している。同図において、カメラマイコンがアクセサリマイコンに対して通信する場合には、同期クロックであるCclkがHiからLoに切り変わったときに、カメラマイコンはCoutを通じたアクセサリマイコンに対する出力データのHi/Loを切り換える。
また、アクセサリマイコンは、カメラマイコン(Cin)に対するデータのHi/Loを切り換える。次に、同期クロックであるCclkがLoからHiに切り変わったときに、カメラマイコンはCinを通じてアクセサリマイコンからのデータを内部レジスタに取り込む。また、アクセサリマイコンは、カメラマイコンのCoutからの出力データを内部レジスタに取り込む。
このやり取りを合計8回繰り返すことにより、カメラマイコンおよびアクセサリマイコンは1バイトのデータを記憶し、内部処理に使用する。同図において、この通信がMSBファーストである場合、カメラマイコン(Cin)には00110010B(Hex32)、アクセサリマイコン(Lin)には10011001B(Hex99)というデータがそれぞれ送信されていることが分かる。また、図中のBusyとは、各々のマイコンが送られた通信データを処理するために設けられた時間である。
図9は、カメラマイコンとアクセサリマイコン間でやり取りされるデータの意味を示した表である。
同図より、カメラマイコンはアクセサリマイコンに対して一方的な要求を送信する構成となっている。つまり、カメラマイコンはアクセサリマイコンに対してコマンドという特定のコードを送信し、アクセサリマイコンはそのコードを解読してカメラマイコンの要求に応えることになる。
同図はその例であり、例えば、カメラマイコンから送信されたコマンドが10Hの場合、アクセサリマイコンは特定の光学用データを次の通信以降に8バイトで送信することになる。アクセサリ側で保持するデータはこの光学系に関するデータが最も多く、アクセサリ側の状態が変化した場合は常にデータを更新する必要があり、カメラおよびアクセサリ共に最も通信に負担が掛かるデータである。
同じく、コマンドが12Hの場合、アクセサリマイコンは、例えばアクセサリ側に設けられたスイッチの状態、内蔵するモータの動作/非動作状態など現在のアクセサリの状態を次の通信以降に3バイトで送信することになる。
また、コマンドが14Hの場合、アクセサリマイコンはアクセサリが動作するための条件を設定したデータを次の通信以降に4バイトで受信しなければならない。この条件とは例えば内蔵するアクチュエータ(モータ等)の速度制限データである。
さらに、コマンドが20Hの場合、アクセサリマイコンは次の通信以降の2バイトを受信した後、内蔵されたモータを起動するように動作する。カメラマイコンから受信した2バイトのコマンドは、たとえばモータの駆動方向と駆動量を示すコマンドである。
このように、アクセサリマイコンでは、カメラマイコンの要求に応えるシステムとなっているのが一般的であり、今後もカメラの高性能化、高機能化によってデータの種類および数量が増える傾向にある。
このようなカメラ−アクセサリ間でのデータ量の増大に対し、特許文献1では、データ通信命令を出力するカメラと、上記通信命令に応じてカメラにデータを通信するカメラアクセサリとを有するカメラシステムにおいて、アクセサリは、前回通信したデータと今回通信しようとするデータとが量および内容等において同じであるときに所定信号をカメラに出力し、カメラは上記所定信号が入力されたときには今回のアクセサリからのデータ通信を制限するとともに、前回通信されたデータに基づいて処理動作するカメラシステムが提案されている。
特開平10−186488号公報(段落0009〜0011、図1等)
しかしながら、上記特許文献1にて提案のカメラシステムでは、アクセサリは一度送信したデータの内容に変更があるまでカメラにデータを送信しない。これを実現するには、カメラからは別コマンドを送り、アクセサリではその通信コマンドを解析し、その結果をカメラに送信するという一連の処理が必要となる。また、カメラはアクセサリデータが何時変更になるか分からないため、頻繁にアクセサリと別コマンドで通信する必要がある。このようなシステムでは、処理内容によってはかえって通信量が増大することが予想される。
また、近年のカメラは、高性能化によって内部に複数のマイコンを備え、各々のマイコンが交互にアクセサリと通信する構成となっているため、複数のマイコンが同じ内容の通信をアクセサリに要求した場合、アクセサリは一度通信したことで内容が変わっていないからといって通信しないことはできない。また、この対応方法として、どのカメラマイコンからの通信要求かを判別することが考えられる。しかし、アクセサリマイコンでの判別処理が必要となり、アクセサリへの通信に関わる負担が更に増加する。
このように、カメラとアクセサリという2つの機器を組み合わせて共通する通信を成立させようとした場合、各々のマイコンが持つ動作速度が同程度であれば問題は少ない。しかし、例えば、カメラは新しく高性能化していても、アクセサリが古いために通信が遅いような場合には、高性能化の意味がなくなってしまう。
一方、アクセサリにおいても、カメラの高性能化に合わせて通信処理能力の向上を図りたいが、コストが高くなる。つまり、価格の高低差が激しいアクセサリにおいては全て共通したシステム構成にできないため、結果的にカメラシステム全体の高性能化は難しくなる。
本発明は、カメラの高性能化、高機能化に伴うカメラ−アクセサリ間の通信の高速化および通信データの膨大化に対応するため、カメラおよびアクセサリの通信処理に関する負担を軽減することができるようにすることを目的としている。
上記の目的を達成するために、本発明では、カメラに対して装着可能なカメラアクセサリにおいて、カメラと通信を行うための通信回路と、カメラとの間で通信回路を介して1又は複数のデータの通信を行う通信制御手段と、カメラとの間での通信データを一時的に記憶する複数のレジスタとを有する。そして、通信制御手段は、通信データが複数あるときに、該複数の通信データをデータごとに複数のレジスタに記憶させてから該データに関わる処理を可能とする。
また、本発明では、カメラに対して装着可能なカメラアクセサリにおいて、カメラと通信を行うための通信回路と、該カメラアクセサリに関するデータを記憶したアクセサリデータ記憶手段と、アクセサリデータ記憶手段に記憶されたデータのうちカメラから通信回路を介して送信されてきたデータの送信要求コマンドに応じた1又は複数のデータを読み出してカメラに通信回路を介して送信する通信制御手段と、カメラに送信するデータを一時的に記憶する複数のレジスタとを有する。そして、通信制御手段は、送信要求コマンドに応じたデータが複数あるときに、該複数のデータをデータごとに複数のレジスタに記憶させてからカメラに送信する。
また、本発明では、カメラに対して装着可能なカメラアクセサリにおいて、カメラと通信を行うための通信回路と、該カメラアクセサリに関するデータを記憶したアクセサリデータ記憶手段と、アクセサリデータ記憶手段に記憶されたデータのうちカメラから通信回路を介して送信されてきたデータの送信要求コマンドに応じた1又は複数のデータを読み出してカメラに通信回路を介して送信する通信制御手段と、カメラに送信するデータを一時的に記憶する複数のレジスタとを有する。そして、通信制御手段は、送信要求コマンドに応じたデータが複数あるときに、該複数のデータをデータごとに複数のレジスタに記憶させてからカメラに送信する。
また、本発明では、カメラアクセサリが装着可能なカメラにおいて、カメラアクセサリと通信を行うための通信回路と、通信回路を介してカメラアクセサリとの間で1又は複数のデータを通信する通信制御手段と、カメラアクセサリとの通信データを一時的に記憶する複数のレジスタとを有する。そして、通信制御手段は、通信データが複数あるときに、該複数のデータをデータごとに前記複数のレジスタに記憶させてから該データに関わる処理を可能とする。
また、本発明では、カメラアクセサリが装着可能なカメラにおいて、カメラアクセサリと通信を行うための通信回路と、カメラアクセサリに対し通信回路を介してデータの送信要求コマンドを送信するとともに、カメラアクセサリから通信回路を介して送信されてきた、該送信要求コマンドに応じた1又は複数のデータを受信する通信制御手段と、該受信したデータを記憶する受信データ記憶手段と、カメラアクセサリから受信した情報を一時的に記憶する複数のレジスタとを有する。そして、通信制御手段は、カメラアクセサリから受信するデータが複数あるときに、該複数のデータをデータごとに複数のレジスタに記憶させてからカメラの該データに関わる処理を可能とする。
本発明のカメラアクセサリによれば、カメラとの通信データが複数ある場合にこれら複数のデータを複数のレジスタに一旦記憶させた後、処理(カメラへの送信やカメラアクセサリ内での制御)を可能とするため、従来のように1つのデータの通信ごとにBusy処理を行う必要がなくなり、通信制御手段の処理負担を軽減でき、高速で複数のデータの送信を行うことができる。
また、本発明のカメラにおいても、カメラアクセサリとの通信データが複数ある場合にこれら複数のデータを一旦複数のレジスタに記憶させた後、処理(カメラアクセサリへの送信やカメラ内での制御)を可能とするので、従来のように1つのデータの通信ごとにBusy処理を行う必要がなくなり、通信制御手段の処理負担を軽減でき、高速で複数のデータの受信を行うことができる。
なお、レジスタの数として、様々な種類の通信データのうち一度に通信される数が最大のもののデータ数以上の数とすることにより、すべてのデータの通信において上記効果が得られる。
また、通信制御手段に、上記複数のレジスタにデータを記憶させたことを示す情報を通信の相手方(カメラ又はカメラアクセサリ)に送信させることにより、相手方の通信制御を上記通信制御手段による通信制御に対応させることができ、最適な通信状態を確立することができる。
さらに、通信制御手段に、複数のレジスタに記憶されたデータがすべてカメラに送信されるまで又は送信要求コマンドに応じた複数のデータがすべてレジスタに記憶されるまでシリアル通信機能に関する動作を停止させるとよい。マイクロコンピュータ等の通信制御手段におけるシリアル通信機能(シリアルコミュニケーションインターフェースSCI)を使用すると必ずファームウエアが介在することになるが、本発明のように、複数のレジスタに記憶されたデータがすべてカメラに送信されるまで又は送信要求コマンドに応じた複数のデータがすべてレジスタに記憶されるまでSCIの動作を停止させ、通信処理を複数のレジスタを含むハード的な処理で行うことにより、ファームウエアの介在を極力避けることができる。
以下、本発明の実施例について図面を参照しながら説明する。
本実施例では、カメラアクセサリとしての交換レンズをデジタルカメラに装着する場合について説明する。
図1には、交換式オートフォーカスレンズ1とカメラ10の内部構成を示している。交換式オートフォーカスレンズ1において、2はフォーカスユニットである。フォーカスレンズユニット2は、フォーカスレンズを保持し、アクチュエータとしてのモータ3によって光軸方向に駆動されて被写体にピントを合わせる。モータ3としては、電磁式、振動型、ボイスコイル式などの各種モータを使用することができる。本実施例では、電磁式モータを採用している。フォーカスレンズと不図示のズームレンズおよび絞り等とにより、撮影光学系が形成されている。
4はモータ3の回転量(および回転速度)を検出するための移動量検出ユニットで、モータ3の回転に同期して回転する周方向に複数のスリットが形成されたスリット盤と、LEDから照射された光の該スリット盤による遮断状態と透過状態とに応じて電気信号(パルス信号)を出力するフォトインタラプタとにより構成される。フォーカスユニット2の移動量は、モータ3の回転量と比例するため、移動量検出ユニット4はフォーカスユニット2の移動量検出にも使用される。
5はフォーカスユニット2の絶対位置を検出するための位置検出ユニットである。この位置検出ユニット5は、フォーカスユニット2に連動して移動する複数の導電性のブラシがレンズ1の本体部材に固定された導電パターンに対して摺動する構成を有し、それらの接触位置によって変化する信号の値でフォーカスユニット2の絶対位置を検出する。
6はデータの書き換えが可能な不揮発性メモリであるEEPROM(又はフラッシュメモリ)である。このEEPROM6には、本実施例では、位置検出ユニット5の値(フォーカスユニット2の絶対位置)や、不図示の絞りの位置や、不図示の像振れ補正ユニットの位置や、不図示のオートフォーカス/マニュアルフォーカス切換えスイッチの状態や、フォーカスユニット2を所定の基準位置にリセットした回数などのデータが記憶される。
7はレンズ1の全ての制御をつかさどる、CPUやMPU等からなるレンズマイクロコンピュータ(以下、レンズマイコンという)である。レンズマイコン7には、カメラ10との通信を行うための通信コントローラ(通信制御手段)7aと、ROM及びRAMからなる内部メモリ7bと、図示しないリセット回路、A/D変換器、タイマー、入出力ポートおよびRAM等とが搭載されている。リセット回路は、マイコンへ供給している電源が仕様範囲以下の電圧になった場合に、マイコンの暴走を防止させるための回路である。
8はカメラ10との通信を行うための複数の導電接点(金属片)を有する接点ユニット(通信回路)である。カメラ10には、上記導電接点に対応した複数の導電突起が設けられており、レンズ1をカメラ10に装着することにより、導電接点と導電突起とが接触し、レンズマイコン7とカメラマイコン12との間の通信回線が形成される。
また、上記接点ユニット8内の所定の導電接点とこれに対応する導電突起とを介してレンズ1にカメラ10から電源が供給される。
カメラ10において、12はカメラ10のすべての制御をつかさどる、CPUやMPU等からなるカメラマイクロコンピュータ(以下、カメラマイコンという)である。カメラマイコン12には、レンズマイコン7との通信を行うための通信コントローラ(通信制御手段)12aと、RAM及びRAMからなる内部メモリ12bと、図示しないA/D変換器、電流検出器、タイマー、レンズへの電源供給スイッチ、入出力ポートおよびROM等とが搭載されている。
11はCCDやCMOSセンサ等により構成される撮像素子であり、レンズ1(撮影光学系)により形成された被写体像を光電変換する。光電変換により得られた信号は、カメラマイコン12内に設けられた画像処理回路(図示せず)によって各種処理が施されて画像信号とされ、この画像信号は半導体メモリ、磁気ディスク、光ディスク等の記録媒体13に記録されたり、不図示のディスプレイパネルに表示されたりする。
なお、本実施例では、撮像素子11における複数の撮像領域から出力された信号を用いて位相差検出方式により撮影光学系の被写体に対する焦点状態、すなわちピントのずれ量(デフォーカス量)を検出する。但し、焦点検出方式はこれに限らず、また被写体までの距離を測定してピントずれ量を算出する方法を用いてもよい。
カメラマイコン12は、不図示のAF開始スイッチが使用者によりオンされると、デフォーカス量を検出し、検出したデフォーカス量に基づいて合焦を得るために必要なフォーカスユニット2の駆動方向および駆動量(パルス換算値)を算出する。
このとき、被写体に適度なコントラストの差がない等の理由によりデフォーカス量が検出できない場合には、カメラマイコン12はサーチモードであることを接点ユニット8を介してレンズマイコン7に送信する。一方、デフォーカス量を検出できたときは、プレディクションモードであることをレンズマイコン7に送信するとともに、算出したフォーカスユニット2の駆動方向および駆動量をレンズマイコン7に送信する。
レンズマイコン7は、それぞれのモードに合わせてモータ3を駆動し、フォーカスユニット2を移動させる。プレディクションモードの場合は、レンズマイコン7は移動量検出ユニット4からのパルス信号をカウントし、カメラマイコン12から送信された駆動量と一致するようにフォーカスユニット2を移動させる。一方、サーチモードの場合は、位置検出ユニット5からの出力をモニターし、フォーカスユニット2の位置が無限遠端又は至近端となったときに直ちにフォーカスユニット2の駆動を停止させる。
レンズマイコン7は、フォーカスユニット2の駆動を開始すると、内部メモリ(アクセサリデータ記憶手段)7bにフォーカスユニット2が動作状態であることを書き込む。このメモリされた現在の状態を示す情報をステータス情報といい、カメラマイコン12はこのステータス情報の送信要求をレンズマイコン7へ時々送信する。レンズマイコン7は、この送信要求に応じてカメラマイコン12にステータス情報を送る。これにより、カメラマイコン12は、フォーカスユニット2の状態を検知できる。なお、ステータス情報には、絞りの状態(通電/非通電)や現在の絞り位置も含まれる。絞りを駆動するモータ(図示せず)は、カメラマイコン12からの駆動命令を受けたレンズマイコン7が動作させる。
また、レンズマイコン7の内部メモリ7bには、レンズ1に関する様々なデータが記憶されている。例えば、個々のレンズ1に割り当てられたIDデータ、カメラマイコン12において前述したフォーカスユニット2の駆動量を演算するための敏感度データ、個々のレンズ1の光学的な調整データや製造上の誤差データなどがある。
これらのステータス情報やIDデータ、光学データ(敏感度データ、調整データ、誤差データ)といったレンズデータは、通常8bitを1バイトデータとし、数バイトに分けられて(すなわち、複数バイトのデータとして)構成されている。具体的には、図9の表に示したように構成されている。
図10には、レンズマイコン7の内部に設けられた、カメラマイコン12とのシリアル通信を制御する通信コントローラ7aの構造を示している。通信コントローラ7aは、複数のレジスタ、すなわち8bitシフトレジスタ71と複数(n)個の8bitバッファレジスタ72−1,72−2,72−3…72−nとを有し、主にカメラマイコン12へのデータ出力(図8のLout)端子として接点ユニット8に接続されている(図8で説明したLin端子も同様な構成となっていてもよい)。8bitシフトレジスタ71と複数の8bitバッファレジスタ72−1,72−2,72−3…72−nの合計数は、カメラマイコン12からの様々な送信要求に対してレンズマイコン7から送信される各種レンズデータのうち、最大のデータ数(通信回数)以上の数とすることが望ましい。
次に、図8と図10を用いてカメラマイコン12との通信シーケンスを説明する。カメラマイコン12は、端子Cclkからレンズマイコン12の端子Lclkにクロック信号を入力する。通信コントローラ7aでは、クロック信号の立下りに同期して8bitシフトレジスタ71の下位側から1bitずつデータを上位側にシフトさせる。レンズマイコン7では、8bitシフトレジスタ71が全てデータで埋め尽くされると割り込み処理が発生する。これは1バイトのデータ通信が終了したことを判断するためであり、カメラマイコン12でも割り込みが発生する。
レンズマイコン7は8bitシフトレジスタ71のデータの内容を、BUSを通して確認する。このとき、レンズマイコン7は、カメラマイコン12に対し、データの内容を確認処理中であることをカメラマイコン12に知らせるため、LclkをLoに引き下げる処理を行う。これをBusy処理状態と呼ぶ。レンズマイコン7は、Busy処理が終了すると該Busy処理を解除するため、LclkをHiにし、再び通信可能であることをカメラマイコン12に知らせる。
レンズマイコン7は、このBusy処理中にLinから入力された1バイトデータの内容を確認し、このカメラマイコン12からのデータがコマンドデータであった場合、該コマンドを解析する。
解析の結果、コマンドが1バイト構成のデータの送信要求であった場合、該コマンドに対応するレンズデータを、内部メモリ7aから読み出して8bitシフトレジスタ71にBUSを通して転送し、これをカメラマイコン12に送信して処理を終了する。
また、解析の結果、コマンドが4バイト(すなわち、複数)構成のデータの送信要求であった場合、対応する4バイトのデータを決定し、これら4バイトのデータのうち最初に送信するデータをBUSを通して8bitシフトレジスタ71に転送して一旦記憶させる。また、次回の通信で送信するデータを8bitバッファレジスタ72−1に転送して一旦記憶させ、次々回の通信で送信するデータを8bitバッファレジスタ72−2に転送して一旦記憶させる。さらに、次々々回の通信で送信するデータを8bitバッファレジスタ72−3に転送して一旦記憶させる。
Busy処理が終了すると、通信コントローラ7aはカメラマイコン12へのデータ送信を行う。このとき、まずカメラマイコン12に送信されるデータは、8bitシフトレジスタ71に転送記憶されたデータである。そして、最初のデータの通信が終了すると、通信コントローラ7aは、予め組み込まれたロジック回路(図示せず)の動作によって、8bitバッファレジスタ72−1に記憶されていたデータを8bitシフトレジスタ71に、8bitバッファレジスタ72−2に記憶されていたデータを8bitバッファレジスタ72−1に、8bitバッファレジスタ72−3に記憶されていたデータを8bitバッファレジスタ72−2にそれぞれ転送する。(自動転送処理)
ここで、従来は1回の通信ごとにマイコンの割込み処理が行なわれ、Busy処理もその割込み処理で行うようにしていた。これに対し、本実施例では、それを必要な通信数に合わせて、全てのデータをバッファレジスタに転送させ、自動的にカメラに送信させることで割込み処理を入らなくしてマイコンへの負担を軽減させている。
ここで、従来は1回の通信ごとにマイコンの割込み処理が行なわれ、Busy処理もその割込み処理で行うようにしていた。これに対し、本実施例では、それを必要な通信数に合わせて、全てのデータをバッファレジスタに転送させ、自動的にカメラに送信させることで割込み処理を入らなくしてマイコンへの負担を軽減させている。
この通信では、Busy処理も内部のロジック回路によって自動的に発生/停止するように構成されている。カメラによってはレンズが必ずBusy処理を行なうことを前提に設計されているものがあり、この様な仕様のカメラにこのレンズが装着された場合は、必ずBusy処理をしないと、通信出来なくなる。このため、この場合は、ハード回路で自動Busyを発生させるようにすることでマイコンでの割込み処理を不必要にしている。さして、この場合、通信コントローラ7aは、自動Busy処理が終了すると再び通信を行う。
なお、Busy処理が必要なカメラか、不必要なカメラかはレンズマイコン12が判別する。そして、Busy処理はカメラマイコン12の通信処理がBusyの有無に影響しない場合は不要である。この詳細な内容は後述するフローチャートにおいて自動的なBusyが無い構成で説明する。
このとき、カメラマイコン12に送信されるデータは、8bitシフトレジスタ71に記憶されたデータであり、最初のBusy処理中にて8bitバッファレジスタ72−1に記憶されたデータである。
こうして、最初のBusy処理中にて8bitバッファレジスタ72−2および72−3に記憶されたデータが順次8bitシフトレジスタ71に転送されてカメラマイコン12に送信されると、一連の自動送信および自動Busyの設定を解除し、次回の通信に備える操作を内部ロジック回路によって行う。
このように、レンズマイコン7は最初のコマンドデータの解析処理において、カメラマイコン12に転送するデータを決定し、それが複数ある場合にはこれら複数のデータのうち最初に送信するデータを8bitシフトレジスタ71に記憶させるとともに、他のデータを8bitバッファレジスタ72−1〜72−nに記憶させることで、その後のカメラマイコン12へのデータ送信は、レンズマイコン7(通信コントローラ7a)のシリアル通信機能により連続して行われるため、レンズマイコン7の特にファームウエアに依存する通信処理が削減され、例えばカメラの高性能化によってカメラが頻繁に通信を要求してくる場合でも、対応することができる。
また、このようなバッファとして機能するレジスタを使用した通信処理の場合、レンズマイコン7におけるBusy処理は必要ないため、Busy処理を禁止するようにしてもよい(これについては後述のフローチャートで説明する)。さらに、Busy処理が無い場合は、レジスタ使用の通信であることをカメラマイコン12が判別することも可能なため、カメラマイコン12の処理をこれに対応させることで種々のカメラの仕様に合わせた、より早い通信も可能である。
なお、本実施例では、1つのデータを1バイト構成とした場合について説明したが、1つのデータを複数バイト構成とした場合でも本発明を適用することができる。例えば、1つのデータを16bit(2バイト)構成としてもよい。
また、本実施例では、レンズマイコン7の内部に8bitバッファレジスタを設けた場合について説明したが、レンズマイコンの外部にディスクリート部品構成で8bitバッファレジスタを設けることも可能である。これにより、レンズマイコン7として様々なマイクロコンピュータを使用することができ、レンズ1の仕様(例えば、コスト面)に合ったマイクロコンピュータを選択することができる。
さらに、本実施例では、8bitバッファレジスタ72−1〜72−3に記憶されたデータを、通信するごとに1つ隣のバッファレジスタに転送する形式になっているが、バッファレジスタを通信回数によって選択的に決定し、直接8bitシフトレジスタに内容を転送させることでも同じ効果を得ることが可能である。
図2は、カメラマイコン12における通信処理以外の処理動作(ここでは、オートフォーカス処理動作)を示したフローチャートである。以下、この図を用いてカメラマイコン12でのオートフォーカス処理動作の流れを説明する。なお、同図において、2重線で囲んだ処理はレンズマイコン7との通信を行う処理を表している。
(ステップ101,102)
カメラマイコン12は、不図示の各種スイッチの状態を検出し、カメラマイコン12内のメモリ12bに検出結果を書き込む。ここにいうスイッチには、オートフォーカス開始スイッチ、レンズ装着スイッチ、撮影開始スイッチ、モード切り換えスイッチ、ダイヤルスイッチおよびその他のスイッチがある。本実施例では、レンズ1はカメラ10に装着済みであり、カメラ10からレンズ1への電源供給も既に実行されているものとする。またここでの説明では、オートフォーカス開始スイッチがオンされたときの動作を中心に説明する。なお、オートフォーカス開始スイッチは、不図示のレリーズボタンが半押しされるとオンになる。
カメラマイコン12は、不図示の各種スイッチの状態を検出し、カメラマイコン12内のメモリ12bに検出結果を書き込む。ここにいうスイッチには、オートフォーカス開始スイッチ、レンズ装着スイッチ、撮影開始スイッチ、モード切り換えスイッチ、ダイヤルスイッチおよびその他のスイッチがある。本実施例では、レンズ1はカメラ10に装着済みであり、カメラ10からレンズ1への電源供給も既に実行されているものとする。またここでの説明では、オートフォーカス開始スイッチがオンされたときの動作を中心に説明する。なお、オートフォーカス開始スイッチは、不図示のレリーズボタンが半押しされるとオンになる。
(ステップ104)
カメラマイコン12は、レンズマイコン7に対してレンズデータの送信要求コマンドを接点ユニット8を介して送信する。レンズマイコン7は受信したコマンドを解析し、該コマンドに対応するレンズデータを接点ユニット8を介してカメラマイコン12に送信し、カメラマイコン12はこれを受信する。レンズデータは前述した通りであるが、ここでは、フォーカスユニット2の駆動量を演算するために必要な敏感度データ(例えば、フォーカスユニット2の移動量に対する撮像素子11の受光面でのピントの移動量の比率を表す)とする。
カメラマイコン12は、レンズマイコン7に対してレンズデータの送信要求コマンドを接点ユニット8を介して送信する。レンズマイコン7は受信したコマンドを解析し、該コマンドに対応するレンズデータを接点ユニット8を介してカメラマイコン12に送信し、カメラマイコン12はこれを受信する。レンズデータは前述した通りであるが、ここでは、フォーカスユニット2の駆動量を演算するために必要な敏感度データ(例えば、フォーカスユニット2の移動量に対する撮像素子11の受光面でのピントの移動量の比率を表す)とする。
レンズマイコン7は、上記送信要求コマンドを解析した結果、カメラマイコン12に送信すべき(カメラマイコン12が必要とする)データの内容(敏感度データ)とその数を決定する。図9に示したように、カメラマイコン12から送信されたコマンドが10Hexであった場合、レンズマイコン7は光学データ(敏感度データ)をカメラマイコン12に送信するためデータ数を確認する。図9によれば、データ数は8バイトである。
(ステップ105)
カメラマイコン12は、ステップ102で検出したオートフォーカス開始スイッチがオンされているか否かを判断し、オンの場合はステップ不指示の場合はステップ106に進み、オンでなければステップ102に戻る。
カメラマイコン12は、ステップ102で検出したオートフォーカス開始スイッチがオンされているか否かを判断し、オンの場合はステップ不指示の場合はステップ106に進み、オンでなければステップ102に戻る。
(ステップ106)
カメラマイコン12は、撮像素子11からの信号に基づいて撮影光学系の焦点状態(デフォーカス量)を検出する。なお、本実施例では、焦点状態を表す信号は常に撮像素子11から取り込んでおり、本ステップ106にてそのとき取り込んだ信号に基づいてデフォーカス量を得る。これにより、オートフォーカスに要する時間を短縮することができる。
カメラマイコン12は、撮像素子11からの信号に基づいて撮影光学系の焦点状態(デフォーカス量)を検出する。なお、本実施例では、焦点状態を表す信号は常に撮像素子11から取り込んでおり、本ステップ106にてそのとき取り込んだ信号に基づいてデフォーカス量を得る。これにより、オートフォーカスに要する時間を短縮することができる。
(ステップ107)
カメラマイコン12は、ステップ106で得たデフォーカス量のデータより、撮影光学系が被写体に対して合焦範囲(合焦とみなせる所定の範囲)にあるかどうかを判断する。合焦している場合は使用者に合焦中であることを、圧電ブザーによる音やLEDの点灯表示等によって知らせる。そして、ステップ111に進む。
カメラマイコン12は、ステップ106で得たデフォーカス量のデータより、撮影光学系が被写体に対して合焦範囲(合焦とみなせる所定の範囲)にあるかどうかを判断する。合焦している場合は使用者に合焦中であることを、圧電ブザーによる音やLEDの点灯表示等によって知らせる。そして、ステップ111に進む。
(ステップ108)
ステップ107において被写体に合焦していない場合は、カメラマイコン12は、現在、レンズ1のフォーカスユニット2が駆動中であるか否かを判断する。駆動中の場合はステップ102に戻る。
ステップ107において被写体に合焦していない場合は、カメラマイコン12は、現在、レンズ1のフォーカスユニット2が駆動中であるか否かを判断する。駆動中の場合はステップ102に戻る。
(ステップ109)
カメラマイコン12は、ステップ106で得たデフォーカス量のデータとステップ104でレンズマイコン7から得たフォーカスユニット2の敏感度データとに基づいて、合焦を得るために必要なフォーカスユニット2の駆動量(および駆動方向)を演算する。
カメラマイコン12は、ステップ106で得たデフォーカス量のデータとステップ104でレンズマイコン7から得たフォーカスユニット2の敏感度データとに基づいて、合焦を得るために必要なフォーカスユニット2の駆動量(および駆動方向)を演算する。
(ステップ110)
カメラマイコン12は、ステップ109での演算結果をレンズマイコン7に接点ユニット8を介して送信する。これが、レンズマイコン7に対するAF動作開始命令となる(図9参照)。レンズマイコン7は、このAF動作開始命令を受信すると、ただちにフォーカスユニット2の駆動を開始する。
カメラマイコン12は、ステップ109での演算結果をレンズマイコン7に接点ユニット8を介して送信する。これが、レンズマイコン7に対するAF動作開始命令となる(図9参照)。レンズマイコン7は、このAF動作開始命令を受信すると、ただちにフォーカスユニット2の駆動を開始する。
(ステップ111)
ステップ107において合焦範囲である場合は、カメラマイコン12は、レンズマイコン7に対してフォーカスユニット2の駆動停止命令を送信する(フォーカスユニット2の駆動が停止していても駆動していてもどちらでもよいように強制的に送信する)。
ステップ107において合焦範囲である場合は、カメラマイコン12は、レンズマイコン7に対してフォーカスユニット2の駆動停止命令を送信する(フォーカスユニット2の駆動が停止していても駆動していてもどちらでもよいように強制的に送信する)。
以上で、カメラマイコン12によるオートフォーカス処理動作が終了する。
図3は、レンズマイコン7の内部処理を示したフローチャートである。以下、同図を用いてレンズマイコン7の通信処理以外の処理動作(ここでは、オートフォーカス処理動作)の流れを説明する。
(ステップ201,202)
レンズマイコン7は、各種スイッチ類の状態を検出し、レンズマイコン7内のメモリ7bにその検出結果を書き込む。スイッチ類としては、オートフォーカス/マニュアルフォーカス切換えスイッチ(図示せず)、位置検出ユニット5およびズームユニットの位置を検出するズーム検出スイッチ(不図示)等がある。
レンズマイコン7は、各種スイッチ類の状態を検出し、レンズマイコン7内のメモリ7bにその検出結果を書き込む。スイッチ類としては、オートフォーカス/マニュアルフォーカス切換えスイッチ(図示せず)、位置検出ユニット5およびズームユニットの位置を検出するズーム検出スイッチ(不図示)等がある。
(ステップ203)
レンズマイコン7は、現在、フォーカスユニット2の駆動を行っているかを判別する。駆動中であればステップ204に進み、駆動中でなければステップ202に戻る。
レンズマイコン7は、現在、フォーカスユニット2の駆動を行っているかを判別する。駆動中であればステップ204に進み、駆動中でなければステップ202に戻る。
(ステップ204)
レンズマイコン7は、フォーカスユニット2の駆動開始から駆動現在までの駆動量(移動量検出ユニット4からのパルス信号のカウント値)とカメラマイコン12からのAF駆動開始命令に含まれた駆動量(パルス換算値)とを比較し、フォーカスユニット2の駆動量がAF駆動開始命令の駆動量に達していない場合はステップ202に戻り、達している場合はステップ205に進む。
レンズマイコン7は、フォーカスユニット2の駆動開始から駆動現在までの駆動量(移動量検出ユニット4からのパルス信号のカウント値)とカメラマイコン12からのAF駆動開始命令に含まれた駆動量(パルス換算値)とを比較し、フォーカスユニット2の駆動量がAF駆動開始命令の駆動量に達していない場合はステップ202に戻り、達している場合はステップ205に進む。
(ステップ205)
レンズマイコン7は、フォーカスユニット2の駆動を停止させ、ステップ202に戻る。これにより、合焦が得られる。
レンズマイコン7は、フォーカスユニット2の駆動を停止させ、ステップ202に戻る。これにより、合焦が得られる。
図4および図5は、カメラマイコン12の通信に関する内部処理を示したフローチャートである。以下、この図を用いてカメラマイコン12での通信処理の流れを説明する。なお、図4および図5において、同じ丸囲み数字が付された部分は互いにつながっていること示す。
(ステップ301,302)
カメラマイコン12は、図2において2重線で囲まれた処理(ステップ104,108,110,111)の中でレンズマイコン7との通信が必要な場合、この処理を行う。まずカメラマイコン12は、コマンド送信処理なのかコマンド送信後のデータ読み取り処理なのかを判別する。
カメラマイコン12は、図2において2重線で囲まれた処理(ステップ104,108,110,111)の中でレンズマイコン7との通信が必要な場合、この処理を行う。まずカメラマイコン12は、コマンド送信処理なのかコマンド送信後のデータ読み取り処理なのかを判別する。
(ステップ303)
コマンド送信処理の場合、カメラマイコン12は、レンズマイコン7がBusy処理中か否かを判断し、Busy処理中であれば該Busy処理が解除されるまで待つ。
コマンド送信処理の場合、カメラマイコン12は、レンズマイコン7がBusy処理中か否かを判断し、Busy処理中であれば該Busy処理が解除されるまで待つ。
(ステップ304)
カメラマイコン12は、レンズマイコン7に送信するコマンドをカメラマイコン12内のシリアル送信バッファである8bitシフトレジスタ(図示せず)に転送し、Cclkにクロック出力を発生させ、1バイト分のコマンドをレンズマイコン7に送信する。
カメラマイコン12は、レンズマイコン7に送信するコマンドをカメラマイコン12内のシリアル送信バッファである8bitシフトレジスタ(図示せず)に転送し、Cclkにクロック出力を発生させ、1バイト分のコマンドをレンズマイコン7に送信する。
(ステップ305)
カメラマイコン12は、ステップ304でのコマンド送信が終了するまで待つ。
カメラマイコン12は、ステップ304でのコマンド送信が終了するまで待つ。
(ステップ306)
カメラマイコン12による1バイト分のコマンド送信が終了すると、レンズマイコン7はLclkをLoに引き下げ(Busy状態)、コマンドを受信したことをカメラマイコン12に伝達する。カメラマイコン12は、CclkがLoに引き下げられるまで、すなわちレンズマイコン7がBusy状態になるまで待ち、通信処理を終了する(ステップ314)。
カメラマイコン12による1バイト分のコマンド送信が終了すると、レンズマイコン7はLclkをLoに引き下げ(Busy状態)、コマンドを受信したことをカメラマイコン12に伝達する。カメラマイコン12は、CclkがLoに引き下げられるまで、すなわちレンズマイコン7がBusy状態になるまで待ち、通信処理を終了する(ステップ314)。
(ステップ307)
カメラマイコン12は、ステップ302においてコマンド送信後のデータ読み取り処理のための通信であると判別すると、データ読み取りの最初の送信(初期通信)かどうかを判断する。
カメラマイコン12は、ステップ302においてコマンド送信後のデータ読み取り処理のための通信であると判別すると、データ読み取りの最初の送信(初期通信)かどうかを判断する。
(ステップ308)
初期通信であった場合は、カメラマイコン12はレンズマイコン7に送信するデータを上記シリアル送信バッファに転送し、Cclkにクロック出力を発生させ、1バイト分のデータをレンズマイコン7に通信する。ここで送信するデータは、レンズマイコン7が送信されたデータを読み取って、読み取ったことを返信することによってレンズ1が適正にカメラ10に装着されたかどうかを確認するためのものである。
初期通信であった場合は、カメラマイコン12はレンズマイコン7に送信するデータを上記シリアル送信バッファに転送し、Cclkにクロック出力を発生させ、1バイト分のデータをレンズマイコン7に通信する。ここで送信するデータは、レンズマイコン7が送信されたデータを読み取って、読み取ったことを返信することによってレンズ1が適正にカメラ10に装着されたかどうかを確認するためのものである。
(ステップ309)
カメラマイコン12は、ステップ308でのデータ送信が終了するまで待つ。
カメラマイコン12は、ステップ308でのデータ送信が終了するまで待つ。
(ステップ310)
カメラマイコン12は所定時間待つ。ここで、カメラマイコン12としては、装着されたレンズ1がLclkをBusyにするタイプかどうかを分からないため、予めレンズマイコン7がカメラマイコン12からのデータを受信してからBusy処理に入るまでの最大時間を所定時間として設定しておき、その所定時間が経過してもBusyにならなかっときは装着されたレンズ1がBusy処理をしないタイプであると判別する。ここでの処理によって、カメラの動作シーケンスを変更することが目的である。
カメラマイコン12は所定時間待つ。ここで、カメラマイコン12としては、装着されたレンズ1がLclkをBusyにするタイプかどうかを分からないため、予めレンズマイコン7がカメラマイコン12からのデータを受信してからBusy処理に入るまでの最大時間を所定時間として設定しておき、その所定時間が経過してもBusyにならなかっときは装着されたレンズ1がBusy処理をしないタイプであると判別する。ここでの処理によって、カメラの動作シーケンスを変更することが目的である。
(ステップ311)
カメラマイコン12は、ステップ310での待ち時間が所定時間に達すると、CclkがLo(Busy状態)かどうかを判別する。
カメラマイコン12は、ステップ310での待ち時間が所定時間に達すると、CclkがLo(Busy状態)かどうかを判別する。
(ステップ312)
カメラマイコン12は、レンズマイコン7がBusy処理中である場合は、通信の動作モードをモード1に設定する。
カメラマイコン12は、レンズマイコン7がBusy処理中である場合は、通信の動作モードをモード1に設定する。
(ステップ313)
カメラマイコン12は、レンズマイコン7がBusy処理中でない場合は、通信の動作モードをモード2に設定する。ステップ312および313からはステップ314に進み、通信処理を終了する。
カメラマイコン12は、レンズマイコン7がBusy処理中でない場合は、通信の動作モードをモード2に設定する。ステップ312および313からはステップ314に進み、通信処理を終了する。
ここで、ステップ312およびステップ313で設定されるモード1およびモード2について説明する。
図11は、レンズマイコン7とカメラマイコン12の通信時におけるLclkまたはCclkの信号波形を示している。
モード1は、装着されたレンズが通信のたびにBusy処理を行うタイプである場合に設定される。モード2は、装着されたレンズが通信のたびにはBusy処理を行わないタイプである場合に設定される。モード1において、レンズマイコン7がカメラマイコン12と通信をするごとにBusy処理を実行すると、レンズマイコン7の処理時間が増えてしまう。一方、図10に示した複数のレジスタ71,72−1〜72−nを備えたレンズがモード2でカメラマイコン12と通信する場合は、通信をするごとのBusy処理が不要であり、より高速な通信が可能となるとともにレンズマイコン7の負担も少なくなる。
また、上記複数のレジスタを備えたレンズであっても、Busy処理を内部のロジック回路或いはレンズマイコンの内蔵機能を使用して処理するようにしてもよい。但しこの場合は、カメラマイコン12にはステップ306のようなBusy解除待ちの時間が必要となる。
(ステップ400)
ステップ307で初期通信でないと判断した場合は、レンズ1がモード1での通信を行うタイプかモード2での通信を行うタイプかを判別する。モード1での通信を行うタイプである場合はステップ303に進み、モード2での通信を行うタイプである場合はステップ401に進む。
ステップ307で初期通信でないと判断した場合は、レンズ1がモード1での通信を行うタイプかモード2での通信を行うタイプかを判別する。モード1での通信を行うタイプである場合はステップ303に進み、モード2での通信を行うタイプである場合はステップ401に進む。
(ステップ401)
カメラマイコン12は、レンズマイコン7に送信するデータをシリアル送信バッファ(8bitシフトレジスタ)に転送し、Cclkにクロック出力を発生させ、1バイト分のデータをレンズマイコン7に送信する。
カメラマイコン12は、レンズマイコン7に送信するデータをシリアル送信バッファ(8bitシフトレジスタ)に転送し、Cclkにクロック出力を発生させ、1バイト分のデータをレンズマイコン7に送信する。
(ステップ402)
カメラマイコン12は、ステップ401での送信が終了するまで待ち、送信が終了すると通信処理を終了する(ステップ403)。
ならBusyが解除されるまで待つ。
カメラマイコン12は、ステップ401での送信が終了するまで待ち、送信が終了すると通信処理を終了する(ステップ403)。
ならBusyが解除されるまで待つ。
なお、ステップ400からステップ303に進んだ場合は、カメラマイコン12はレンズマイコン7がBusy中かを判断し、Busy中ならBusyが解除されるまで待つ。そして、ステップ304において、レンズマイコン7に送信するコマンドをシリアル送信バッファに転送し、Cclkにクロック出力を発生させ、1バイト分のコマンドをレンズマイコン7に送信する。この送信が終了すると(ステップ305)、レンズマイコン7はLclk(Cclk)をLoに引き下げ(Busy状態)、データを受信したことをカメラマイコン12に伝達する。カメラマイコン12は、CclkがBusy状態になるまで待ち(ステップ306)、通信処理を終了する(ステップ314)。
以上の説明で分かるように、レンズタイプの違いに対応したモード1とモード2でのカメラマイコン12での処理の違いは、ステップ306のBusy解除待ちがあるか無いかである。これによってカメラマイコン12もより早い処理を行うことができる。
図6は、レンズマイコン7の通信に関する処理を示したフローチャートである。以下、同図を用いてレンズマイコン7での通信処理の流れを説明する。この処理は、レンズマイコン7の内部では通信に関する割り込み処理とした方が、より高速な通信処理が可能である。
(ステップ501)
レンズマイコン7は、カメラマイコン12から送信されたデータ(コマンド)がレンズマイコン7内に設けられた受信用8bitシフトバッファ(図10に示した送信用8bitシフトバッファ71と構成が同じもの)に転送されると、本フローの処理を開始する。
レンズマイコン7は、カメラマイコン12から送信されたデータ(コマンド)がレンズマイコン7内に設けられた受信用8bitシフトバッファ(図10に示した送信用8bitシフトバッファ71と構成が同じもの)に転送されると、本フローの処理を開始する。
(ステップ502)
レンズマイコン7は、カメラマイコン12からのデータを受信すると、Lclkを引き下げ、Busy処理中であることを示すデータをカメラマイコン12に送信する。カメラマイコン12は、レンズマイコン7がBusy処理中であるためこの間は通信しない。
レンズマイコン7は、カメラマイコン12からのデータを受信すると、Lclkを引き下げ、Busy処理中であることを示すデータをカメラマイコン12に送信する。カメラマイコン12は、レンズマイコン7がBusy処理中であるためこの間は通信しない。
(ステップ503)
レンズマイコン7は、カメラマイコン12から受信した1バイトのデータの解析を行う。カメラマイコン12からのデータがコマンド(レンズマイコン7に対する要求命令)であった場合は、図9に示したようなテーブル(予め内部メモリ7bに記憶されている)の中からカメラマイコン12の要求内容とカメラマイコン12に送信するべきデータおよびその数を決定する。
レンズマイコン7は、カメラマイコン12から受信した1バイトのデータの解析を行う。カメラマイコン12からのデータがコマンド(レンズマイコン7に対する要求命令)であった場合は、図9に示したようなテーブル(予め内部メモリ7bに記憶されている)の中からカメラマイコン12の要求内容とカメラマイコン12に送信するべきデータおよびその数を決定する。
(ステップ504)
次に、レンズマイコン7は、カメラマイコン12から受信した1バイトのデータがフォーカスユニット2の駆動命令(AF駆動開始命令)かどうかを判断する。図9の例では、1バイトコマンドが20Hexの場合にその駆動命令と判断する。
次に、レンズマイコン7は、カメラマイコン12から受信した1バイトのデータがフォーカスユニット2の駆動命令(AF駆動開始命令)かどうかを判断する。図9の例では、1バイトコマンドが20Hexの場合にその駆動命令と判断する。
(ステップ505)
ステップ504でAF駆動開始命令であると判断した場合、モータ3を駆動してフォーカスユニット2の駆動を開始させる。
ステップ504でAF駆動開始命令であると判断した場合、モータ3を駆動してフォーカスユニット2の駆動を開始させる。
(ステップ506)
ステップ504でAF駆動開始命令でないと判断した場合、すなわちレンズ1の光学データやステータスデータであると判断した場合は、レンズマイコン7(通信コントローラ7a)は、図10を用いて説明したように、該コマンドに対応する(カメラマイコン12が必要としている)複数のデータのうち最初にカメラマイコン12に送信するデータを8bitシフトレジスタ71に転送して記憶させ、残りのデータをデータごとに複数の8bitバッファレジスタ72−1〜72−nに送信順に全て転送して記憶させる。この処理によって、次回の通信から順番にデータがカメラマイコン12に送信される。
ステップ504でAF駆動開始命令でないと判断した場合、すなわちレンズ1の光学データやステータスデータであると判断した場合は、レンズマイコン7(通信コントローラ7a)は、図10を用いて説明したように、該コマンドに対応する(カメラマイコン12が必要としている)複数のデータのうち最初にカメラマイコン12に送信するデータを8bitシフトレジスタ71に転送して記憶させ、残りのデータをデータごとに複数の8bitバッファレジスタ72−1〜72−nに送信順に全て転送して記憶させる。この処理によって、次回の通信から順番にデータがカメラマイコン12に送信される。
(ステップ507)
レンズマイコン7は、ステップ503において解析したコマンドに対応した、カメラマイコン12への送信データが複数であるか否か、つまりステップ506において8bitバッファレジスタ72−1〜72−nにデータ転送が行われたか送信データが1つ以下であるかを判断する。送信データが複数である場合はステップ508に、送信データが1つ以下の場合はステップ509に進む。
レンズマイコン7は、ステップ503において解析したコマンドに対応した、カメラマイコン12への送信データが複数であるか否か、つまりステップ506において8bitバッファレジスタ72−1〜72−nにデータ転送が行われたか送信データが1つ以下であるかを判断する。送信データが複数である場合はステップ508に、送信データが1つ以下の場合はステップ509に進む。
(ステップ508)
カメラマイコン12への送信データが複数の場合は、レンズマイコン7は、自動送信モードを設定し、カメラマイコン12がBusy処理が必要でる場合は自動Busyモードに設定する。
カメラマイコン12への送信データが複数の場合は、レンズマイコン7は、自動送信モードを設定し、カメラマイコン12がBusy処理が必要でる場合は自動Busyモードに設定する。
また、次回のこの通信割り込み処理を禁止設定する等の処理を行う。カメラマイコン12に送信すべきデータは全て8bitレジスタ71,72−1〜72−nに転送済みであるため、次回からの通信は自動的にカメラマイコン12に送信されるため、この割り込み処理自体が不必要となり、常にこの割り込みが入る従来のシステムに比べてレンズマイコン7の負担を減らすことができる。
(ステップ509)
ステップ507でカメラからのコマンドを解析した結果、カメラマイコン12に送信するデータが1つ以下の場合、つまりステップ506においていずれの8bitバッファレジスタ72−1〜72−nにもデータ転送が行われなかった場合は、自動通信解除、自動Busy解除、次回のこの通信割り込み処理の許可設定といった処理を行う。これによって、次回の通信もこの割り込み処理を行い、カメラマイコン12との通信に不具合が出ないシステムとなる。
ステップ507でカメラからのコマンドを解析した結果、カメラマイコン12に送信するデータが1つ以下の場合、つまりステップ506においていずれの8bitバッファレジスタ72−1〜72−nにもデータ転送が行われなかった場合は、自動通信解除、自動Busy解除、次回のこの通信割り込み処理の許可設定といった処理を行う。これによって、次回の通信もこの割り込み処理を行い、カメラマイコン12との通信に不具合が出ないシステムとなる。
(ステップ510)
レンズマイコン7は、Busy処理を中止し、通信割り込み処理を終了する(ステップ511)。
レンズマイコン7は、Busy処理を中止し、通信割り込み処理を終了する(ステップ511)。
これまでの説明で分かるように、カメラマイコン12からレンズマイコン7に送信するコマンドをできるだけ少なくする一方、該コマンドに対してレンズマイコン7からカメラマイコン12に送信するデータ数を増やすことにより、レンズマイコン7の通信処理に関する負担を軽減することができる。
実施例1では、主にレンズマイコン7に通信バッファとしてのレジスタ(8bitシフトレジスタおよび複数の8bitバッファレジスタ)を備えた場合について説明したが、カメラにも同様な通信バッファを設けることにより、更に大量のデータを短時間で交換でき、カメラマイコン12の通信処理に関する負担を軽減することができる。
以下、交換レンズ1の装着が可能なカメラ10にも、8bitバッファレジスタおよび複数の8bitバッファレジスタを設けた場合について説明する。なお、本実施例のレンズ1およびカメラ10の基本構成は実施例1で説明したものと同様であり、共通する構成要素には同符号を付す。
図12には、カメラマイコン12の内部に設けられた通信コントローラ12aの内部構造を示す。通信コントローラ12aは、8bitシフトレジスタ81と複数(n)個の8bitバッファレジスタ82−1〜82−nを有しており、主にレンズマイコン7からのデータ入力(図8のCin)端子として接点ユニット8に接続されている。8bitシフトレジスタ81と複数の8bitバッファレジスタ82−1,82−2,82−3…82−nの合計数は、カメラマイコン12からの様々な送信要求に対してレンズマイコン7から送信される各種レンズデータのうち、最大のデータ数(通信回数)以上の数とすることが望ましい。
図8と図12を使用してレンズマイコン7との通信におけるシーケンスを説明する。カメラマイコン12は、8bitシフトレジスタ81にコマンド(レンズへマイコンへの要求命令)をBUSを通して転送し、端子Cclkへクロックを発生させる。8bitシフトレジスタ81では、クロックの立下りに同期して下位側から1bitずつデータを上位側にシフトさせる。そして、カメラマイコン12では、8bitシフトレジスタ82が全てデータで埋め尽くされると割り込み処理が発生する。これは1バイトのデータ通信が終了したことを判断するためであり、レンズマイコン7でも割り込みが発生する。
Cinにつながっている8bitシフトレジスタ81がデータで埋まると、カメラマイコン12およびレンズマイコン7はデータの内容をBUSを通して確認する。このとき、レンズマイコン7は、カメラマイコン12に対し、内容確認処理中であることをカメラマイコン12に知らせるため、端子LclkをLoに引き下げる処理を行う。これをBusy処理状態と呼ぶ。レンズマイコン7はBusy処理が終了すると、Busy処理を解除するため端子LclkをHiにし、再び通信可能であることをカメラマイコン12に知らせる。
カメラマイコン12は、このBusy処理中にレンズマイコン7から端子Cinを通じて入力された1バイトデータの内容をBUSを通して確認し、レンズマイコン7からのデータを解析する。解析の結果、1バイト構成のデータであることを確認した場合、次に必要なデータを8bitシフトレジスタにBUSを通して転送する。ここにいう必要なデータとは、カメラの種類を示すIDコードやカメラの動作状態を示すステータス情報がある。また、単にレンズ情報を得るためだけの無意味な通信の場合もある。
カメラマイコン12は、装着されたレンズ1が自動通信を装備しているか否かを予めを判断しており、レンズマイコン7が自動通信に対応している場合は先にレンズマイコン7に送信したコマンドに対してレンズマイコン7から送信されてくるデータが複数であると認識し、次回からの通信を自動とするための設定を行う。
カメラマイコン12は、Busy処理が解除されたと同時にCclkからクロックを発生させ、全てのデータ送信が終了するのを待つ。この間、レンズマイコン7から送信されてきたデータは、8bitシフトレジスタ81を介して8bitバッファレジスタ82−1〜82−nに順次記憶される。
例えば、レンズマイコン7から送信されてくるデータが4バイト構成である場合、最初に送信されてきたデータをBUSを通して8bitシフトレジスタ81に転送して一旦記憶させる。また、次回の通信でデータが送信されてきた場合、8bitシフトレジスタ81に記憶されていた最初に送信されてきたデータを8bitバッファレジスタ82−1に転送して記憶させ、新たに送信されてきたデータを8bitシフトレジスタ81に記憶させる。
さらに、次々回の通信でデータが送信されてきた場合、最初に送信されてきたデータを8bitバッファレジスタ82−2に転送し、2回目に送信されてきたデータを8bitバッファレジスタ82−1に転送し、新たに送信されてきたデータを8bitシフトレジスタ81に記憶させる。
こうしてレンズマイコン7からのデータを全て受信した場合は、8bitシフトレジスタ81、8bitバッファレジスタ82−1〜82−nに一旦記憶されたデータをBUSを通して読み取り、各種処理および制御に使用する。例えば、内部メモリ12bに書き込む。
なお、実施例1で説明したレンズ1と実施例2で説明したカメラとを組み合わせたカメラシステムにおいては、レンズマイコン7とカメラマイコン12間でのデータ転送が双方とも自動で行われるため、レンズマイコン7およびカメラマイコン12は通信中に他の処理に専念することが可能となる。
また、上記各実施例では、デジタルカメラとこれに装着可能な交換レンズについて説明したが、本発明はフィルムカメラとこれに装着可能な交換レンズにも適用することができる。
また、上記各実施例では、カメラとの通信を行うカメラアクセサリが交換レンズである場合について説明したが、フラッシュ、データ保持用コンピュータボード(データパックなど)、赤外リモートコントロールユニットなどの他のカメラアクセサリおよびこれが装着されるカメラにも本発明を適用することができる。
また、実施例1ではカメラアクセサリ(レンズ)側の出力系に、実施例2ではカメラ側の入力系に複数のレジスタが設けられている場合について説明したが、アクセサリ側の入力系とカメラ側の出力系にも同様に複数のレジスタを設けることにより、カメラとアクセサリ間の双方向通信を高速かつ大容量で行うことが可能である。
1 交換レンズ
2 フォーカスユニット
3 モータ
4 移動量検出ユニット
5 位置検出ユニット
6 EEPROM
7 レンズマイコン
7a 通信コントローラ
7b 内部メモリ
8 接点ユニット
10 カメラ
11 撮像素子
12 カメラマイコン
12a 通信コントローラ
2 フォーカスユニット
3 モータ
4 移動量検出ユニット
5 位置検出ユニット
6 EEPROM
7 レンズマイコン
7a 通信コントローラ
7b 内部メモリ
8 接点ユニット
10 カメラ
11 撮像素子
12 カメラマイコン
12a 通信コントローラ
Claims (15)
- カメラに対して装着可能なカメラアクセサリであって、
前記カメラと通信を行うための通信回路と、
前記カメラとの間で前記通信回路を介して1又は複数のデータの通信を行う通信制御手段と、
前記カメラとの間での通信データを一時的に記憶する複数のレジスタとを有し、
前記通信制御手段は、前記通信データが複数あるときに、該複数の通信データをデータごとに前記複数のレジスタに記憶させてから該データに関わる処理を可能とすることを特徴とするカメラアクセサリ。 - カメラに対して装着可能なカメラアクセサリであって、
前記カメラと通信を行うための通信回路と、
該カメラアクセサリに関するデータを記憶したアクセサリデータ記憶手段と、
前記アクセサリデータ記憶手段に記憶されたデータのうち、前記カメラから前記通信回路を介して送信されてきた送信要求コマンドに応じた1又は複数のデータを読み出して前記カメラに前記通信回路を介して送信する通信制御手段と、
前記カメラに送信するデータを一時的に記憶する複数のレジスタとを有し、
前記通信制御手段は、前記送信要求コマンドに応じたデータが複数あるときに、該複数のデータをデータごとに前記複数のレジスタに記憶させてから前記カメラに送信することを特徴とするカメラアクセサリ。 - 前記複数のレジスタとして、前記カメラに送信する1つのデータを一時的に記憶するシフトレジスタと、該シフトレジスタに転送されるデータを一時的に記憶する1又は複数のバッファレジスタとを有することを特徴とする請求項2に記載のカメラアクセサリ。
- 前記レジスタの数は、前記送信要求コマンドに応じて前記カメラに送信するデータ数のうち最大数以上の数であることを特徴とする請求項2又は3に記載のカメラアクセサリ。
- 前記通信制御手段は、前記送信要求コマンドに応じたデータが複数あるときに限り、前記レジスタにデータを記憶させることを特徴とする請求項2から4のいずれか1つに記載のカメラアクセサリ。
- 前記通信制御手段は、前記レジスタにデータを記憶させたことを示す情報を前記カメラに送信することを特徴とする請求項2から5のいずれか1つに記載のカメラアクセサリ。
- 前記通信制御手段は、前記複数のレジスタに記憶されたデータがすべて前記カメラに送信されるまでシリアル通信機能に関わる動作を停止することを特徴とする請求項2から6のいずれか1つに記載のカメラアクセサリ。
- カメラアクセサリが装着可能なカメラであって、
前記カメラアクセサリと通信を行うための通信回路と、
前記通信回路を介して前記カメラアクセサリとの間で1又は複数のデータを通信する通信制御手段と、
前記カメラアクセサリとの通信データを一時的に記憶する複数のレジスタとを有し、
前記通信制御手段は、前記通信データが複数あるときに、該複数のデータをデータごとに前記複数のレジスタに記憶させてから該データに関わる処理を可能とすることを特徴とするカメラ。 - カメラアクセサリが装着可能なカメラであって、
前記カメラアクセサリと通信を行うための通信回路と、
前記カメラアクセサリに対し前記通信回路を介してデータの送信要求コマンドを送信するとともに、前記カメラアクセサリから前記通信回路を介して送信されてきた、前記送信要求コマンドに応じた1又は複数のデータを受信する通信制御手段と、
前記カメラアクセサリから受信した情報を一時的に記憶する複数のレジスタとを有し、
前記通信制御手段は、前記カメラアクセサリから受信するデータが複数あるときに、該複数のデータをデータごとに前記複数のレジスタに記憶させてから該データに関わる処理を可能とすることを特徴とするカメラ。 - 前記複数のレジスタとして、前記カメラから受信した1つのデータを一時的に記憶するシフトレジスタと、該シフトレジスタから転送されたデータを一時的に記憶する1又は複数のバッファレジスタとを有することを特徴とする請求項9に記載のカメラ。
- 前記レジスタの数は、前記送信要求コマンドに応じて前記カメラアクセサリから送信されてくるデータ数のうち最大数以上の数であることを特徴とする請求項9又は10に記載のカメラ。
- 前記通信制御手段は、前記送信要求コマンドに応じたデータが複数あるときに限り、前記レジスタにデータを記憶させることを特徴とする請求項9から11のいずれか1つに記載のカメラ。
- 前記通信制御手段は、前記送信要求コマンドに応じた複数のデータがすべて前記レジスタに記憶されるまでシリアル通信機能に関する動作を停止することを特徴とする請求項9から12のいずれか1つに記載のカメラ。
- 請求項1から7のうちいずれか1つに記載のカメラアクセサリと、このカメラアクセサリが装着可能なカメラとを有することを特徴とするカメラシステム。
- 前記カメラは、請求項8から13のいずれか1つに記載のカメラであることを特徴とする請求項14に記載のカメラシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003276901A JP2005037824A (ja) | 2003-07-18 | 2003-07-18 | カメラアクセサリ、カメラおよびカメラシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003276901A JP2005037824A (ja) | 2003-07-18 | 2003-07-18 | カメラアクセサリ、カメラおよびカメラシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005037824A true JP2005037824A (ja) | 2005-02-10 |
Family
ID=34213081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003276901A Pending JP2005037824A (ja) | 2003-07-18 | 2003-07-18 | カメラアクセサリ、カメラおよびカメラシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005037824A (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010049034A (ja) * | 2008-08-22 | 2010-03-04 | Sigma Corp | 交換レンズ及びカメラシステム、並びにレンズデータ通信方法 |
US7978967B2 (en) | 2008-05-16 | 2011-07-12 | Panasonic Corporation | Camera body, interchangeable lens, and imaging apparatus |
JP4978745B1 (ja) * | 2011-02-25 | 2012-07-18 | 株式会社ニコン | アクセサリー、カメラボディおよびカメラシステム |
JP2013167895A (ja) * | 2010-10-27 | 2013-08-29 | Canon Inc | 撮像装置及びアクセサリ |
JP2017015980A (ja) * | 2015-07-02 | 2017-01-19 | キヤノン株式会社 | 撮像装置、レンズ装置およびデータ通信処理プログラム |
US9591200B2 (en) | 2010-10-27 | 2017-03-07 | Canon Kabushiki Kaisha | Imaging apparatus and accessory, and method and system of the same, and medium |
DE102017116470A1 (de) | 2016-07-25 | 2018-01-25 | Canon Kabushiki Kaisha | Bildaufnahmevorrichtung, Zubehörteilvorrichtung und zugehöriges Steuerverfahren |
JP2021119390A (ja) * | 2011-09-12 | 2021-08-12 | 株式会社ニコン | カメラボディ |
-
2003
- 2003-07-18 JP JP2003276901A patent/JP2005037824A/ja active Pending
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7978967B2 (en) | 2008-05-16 | 2011-07-12 | Panasonic Corporation | Camera body, interchangeable lens, and imaging apparatus |
JP2010049034A (ja) * | 2008-08-22 | 2010-03-04 | Sigma Corp | 交換レンズ及びカメラシステム、並びにレンズデータ通信方法 |
JP2013167895A (ja) * | 2010-10-27 | 2013-08-29 | Canon Inc | 撮像装置及びアクセサリ |
US9591200B2 (en) | 2010-10-27 | 2017-03-07 | Canon Kabushiki Kaisha | Imaging apparatus and accessory, and method and system of the same, and medium |
US8342760B2 (en) | 2011-02-25 | 2013-01-01 | Nikon Corporation | Camera accessory, camera body, and camera system |
US8746996B2 (en) | 2011-02-25 | 2014-06-10 | Nikon Corporation | Camera accessory, camera body and camera system |
US9110356B2 (en) | 2011-02-25 | 2015-08-18 | Nikon Corporation | Camera accessory, camera body and camera system |
US9360738B2 (en) | 2011-02-25 | 2016-06-07 | Nikon Corporation | Camera accessory, camera body and camera system |
JP4978745B1 (ja) * | 2011-02-25 | 2012-07-18 | 株式会社ニコン | アクセサリー、カメラボディおよびカメラシステム |
JP2021119390A (ja) * | 2011-09-12 | 2021-08-12 | 株式会社ニコン | カメラボディ |
JP2017015980A (ja) * | 2015-07-02 | 2017-01-19 | キヤノン株式会社 | 撮像装置、レンズ装置およびデータ通信処理プログラム |
DE102017116470A1 (de) | 2016-07-25 | 2018-01-25 | Canon Kabushiki Kaisha | Bildaufnahmevorrichtung, Zubehörteilvorrichtung und zugehöriges Steuerverfahren |
US10306130B2 (en) | 2016-07-25 | 2019-05-28 | Canon Kabushiki Kaisha | Image-capturing apparatus, accessory apparatus and control method therefor |
US10868952B2 (en) | 2016-07-25 | 2020-12-15 | Canon Kabushiki Kaisha | Image-capturing apparatus, accessory apparatus and control method therefor |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
USRE47109E1 (en) | Adapter, camera system, and adapter control program | |
US5161026A (en) | Interchangeable lens camera system having improved control information communication facility | |
WO2009119091A1 (ja) | カメラシステム | |
JP5406830B2 (ja) | カメラシステム | |
CN108989619B (zh) | 配件设备和摄像设备及其控制方法 | |
JP2008216439A (ja) | カメラシステム | |
JP7135062B2 (ja) | アクセサリ装置および撮像装置 | |
US11543736B2 (en) | Camera, accessory apparatus, communication control method, storage medium, and camera system | |
JP2020064301A (ja) | 撮像装置、アクセサリ装置及びこれらの制御方法 | |
JP5661335B2 (ja) | カメラシステム、交換レンズ、及びカメラ本体 | |
JP6479242B2 (ja) | カメラおよびその通信制御方法 | |
JP2005037824A (ja) | カメラアクセサリ、カメラおよびカメラシステム | |
KR101670055B1 (ko) | 디지털 영상 처리 장치의 제어 방법, 상기 방법을 적용한 디지털 영상 처리 장치, 상기 디지털 영상 처리 장치를 포함하는 통신 시스템 | |
WO2018221588A1 (ja) | アクセサリ装置、カメラおよび通信制御プログラム | |
US10841477B2 (en) | Accessory apparatus, camera system having the same, and storage medium | |
WO2018221558A1 (ja) | カメラおよびその通信制御方法 | |
JP2016110000A (ja) | 撮像装置 | |
JP2017181832A (ja) | アクセサリ装置、撮像装置およびこれらの制御方法 | |
JPH09218450A (ja) | カメラボディ及びカメラアクセサリ | |
JPH1073861A (ja) | カメラシステム及びカメラ及びカメラ用付属装置 | |
JP2005070624A (ja) | カメラシステム及びその制御方法 | |
JP2013064945A (ja) | アダプター、カメラシステム、およびアダプター制御プログラム | |
JP2020166196A (ja) | 通信システム及びその制御方法 | |
JP2019095721A (ja) | アクセサリ装置、撮像装置、および通信制御プログラム | |
JP2017085210A (ja) | 撮影システム |