液体レンズと、前記液体レンズに電圧を印加して当該液体レンズの焦点距離を調節するフォーカス駆動手段と、前記液体レンズの焦点距離と当該液体レンズへの印加電圧との対応関係を示す印加電圧テーブルを記憶する記憶手段と、前記液体レンズによる撮像方向の画像データを取得するための撮像手段と、前記撮像方向にレーザ光ビームを出射する発光手段と、前記レーザ光ビームを出射させた状態で前記撮像手段に被写体の画像データを取得させ、当該画像データにおける前記レーザ光ビームによる輝点の位置に基づいて前記被写体までの焦点距離を求めることでフォーカス調整を行うレーザフォーカス手段と、予め設定された変更範囲に亘り前記液体レンズの焦点距離を変化させながら被写体の画像データを前記撮像手段に各々取得させ、取得された当該画像データに含まれる前記被写体のコントラストの大小に基づいて前記被写体に合焦するフォーカス調整を行うコントラストフォーカス手段と、前記レーザフォーカス手段により求められた前記被写体までの焦点距離と、前記コントラストフォーカス手段により前記被写体に合焦された際の対応印加電圧とに基づいて、前記印加電圧テーブルの内容を修正する修正手段と、を備えることを特徴とするコード読取装置。前記修正手段は、前記レーザフォーカス手段によるフォーカス調整に基づいて取得された前記画像データに含まれるシンボルの読み取りに失敗した場合に、前記コントラストフォーカス手段によるフォーカス調整を行い、前記レーザフォーカス手段により求められた焦点距離と、前記コントラストフォーカス手段により前記シンボルに合焦された際の前記対応印加電圧とに基づいて、前記印加電圧テーブルの内容を修正することを特徴とする請求項1に記載のコード読取装置。前記修正手段は、前記レーザフォーカス手段により求められた焦点距離と、前記対応印加電圧とを対応付けて前記印加電圧テーブルに追加することを特徴とする請求項1又は2に記載のコード読取装置。前記修正手段は、前記レーザフォーカス手段により求められた焦点距離と、前記対応印加電圧とを前記印加電圧テーブルに記録されているデータのうち、所定の条件により定められたものと置き換えることを特徴とする請求項1又は2に記載のコード読取装置。前記修正手段は、前記レーザフォーカス手段により求められた焦点距離と、前記対応印加電圧とに基づき、前記印加電圧テーブルに記録されている前記印加電圧の値を修正することを特徴とする請求項1又は2に記載のコード読取装置。前記コントラストフォーカス手段は、前記予め設定された変更範囲として、前記レーザフォーカス手段により求められた焦点距離に対応して前記印加電圧テーブルに基づき求められる印加電圧を中心とする範囲を設定することを特徴とする請求項1~5の何れか一項に記載のコード読取装置。前記レーザフォーカス手段及び前記コントラストフォーカス手段は、前記撮像手段により取得可能な撮像範囲のうち、各々所定の一部の範囲内の画像データに基づいてフォーカス調整を行うことを特徴とする請求項1~6の何れか一項に記載のコード読取装置。前記撮像方向を照明する照明手段を備え、前記コントラストフォーカス手段は、フォーカス調整時に当該照明手段を点灯させることを特徴とする請求項1~7の何れか一項に記載のコード読取装置。液体レンズと、前記液体レンズに電圧を印加して当該液体レンズの焦点距離を調節するフォーカス駆動手段と、前記液体レンズが向けられた撮像方向の画像データを取得するための撮像手段と、前記撮像方向にレーザビーム光を出射する発光手段と、を備え、コード読取装置に用いられるコンピュータを、前記液体レンズの焦点距離と当該液体レンズへの印加電圧との対応関係を示す印加電圧テーブルを記憶する記憶手段と、前記レーザ光ビームを出射させた状態で前記撮像手段に被写体の画像データを取得させ、当該画像データにおける前記レーザ光ビームによる輝点の位置に基づいて前記被写体までの焦点距離を求めることでフォーカス調整を行うレーザフォーカス手段と、予め設定された変更範囲に亘り前記液体レンズの焦点距離を変化させながら被写体の画像データを前記撮像手段に各々取得させ、取得された当該画像データに含まれる前記被写体のコントラストの大小に基づいて前記被写体に合焦するフォーカス調整を行うコントラストフォーカス手段と、前記レーザフォーカス手段により求められた前記被写体までの焦点距離と、前記コントラストフォーカス手段により前記被写体に合焦された際の対応印加電圧とに基づいて、前記印加電圧テーブルの内容を修正する修正手段と、として機能させるためのプログラム。しかしながら、液体レンズには、液体の性質が徐々に変化してしまうという問題がある。その結果、経年的に液体レンズの焦点距離と印加電圧との関係が変化するので、当初の焦点距離と印加電圧との関係をテーブルとして保持して利用する形態では、徐々に読み取り対象に焦点が合わなくなっていくという課題がある。この発明の目的は、オートフォーカスの精度とフォーカス速度とを維持可能なコード読取装置を提供することにある。本発明は、上記目的を達成するため、液体レンズと、前記液体レンズに電圧を印加して当該液体レンズの焦点距離を調節するフォーカス駆動手段と、前記液体レンズの焦点距離と当該液体レンズへの印加電圧との対応関係を示す印加電圧テーブルを記憶する記憶手段と、前記液体レンズによる撮像方向の画像データを取得するための撮像手段と、前記撮像方向にレーザ光ビームを出射する発光手段と、前記レーザ光ビームを出射させた状態で前記撮像手段に被写体の画像データを取得させ、当該画像データにおける前記レーザ光ビームによる輝点の位置に基づいて前記被写体までの焦点距離を求めることでフォーカス調整を行うレーザフォーカス手段と、予め設定された変更範囲に亘り前記液体レンズの焦点距離を変化させながら被写体の画像データを前記撮像手段に各々取得させ、取得された当該画像データに含まれる前記被写体のコントラストの大小に基づいて前記被写体に合焦するフォーカス調整を行うコントラストフォーカス手段と、前記レーザフォーカス手段により求められた前記被写体までの焦点距離と、前記コントラストフォーカス手段により前記被写体に合焦された際の対応印加電圧とに基づいて、前記印加電圧テーブルの内容を修正する修正手段と、を備えることを特徴とするコード読取装置である。本発明に従うと、コード読取装置において、オートフォーカスの精度とフォーカス速度とを維持することができるという効果がある。以下、本発明の実施の形態を図面に基づいて説明する。図1は、本発明の実施形態のコード読取装置の全体構造を示す正面図である。本実施の形態のコード読取装置1コンピュータは、一次元バーコード、二次元コード等のシンボルの読み取り機能を有する携帯機器である。また、このコード読取装置1は、情報の入力、情報の送受信、及び、情報の記憶が可能となっている。コード読取装置1は、筐体としてのケース2を備える。コード読取装置1は、ケース2の正面に、トリガキー12Aと、各種キー12Bと、表示部14と、スピーカ18Aとを備える。コード読取装置1は、ケース2の側面に、トリガキー12Cを備える。また、コード読取装置1は、ケース2の先端部に、イメージャモジュール21を備える。トリガキー12A、12Cは、イメージャモジュール21によるシンボル読み取り動作の開始命令の入力を受け付けるトリガキーである。各種キー12Bは、数字、文字等の入力キー、機能キー等からなり、各種情報の入力操作を受け付ける。表示部14は、入力操作に係るメニューやステータスなどの情報、及び、イメージャモジュール21を用いたシンボル読み取り動作の実行時の、ステータスやデコード結果等の情報を表示する。スピーカ18Aは、コード読み取り装置の動作状態を示す音声や読み取り成功を報知するブザー音を出力する。図2は、コード読取装置1の内部構成を示すブロック図である。コード読取装置1は、CPUCentralProcessingUnit11レーザフォーカス手段、コントラストフォーカス手段、修正手段と、操作部12と、RAMRandomAccessMemory13と、表示部14と、記憶手段としての記憶部15と、通信部16と、音声出力部18と、イメージャコントローラ19と、イメージャモジュール21と、電源部22と、レーザ駆動電源23と、を備える。コード読取装置1のイメージャモジュール21及び電源部22を除く各部は、バス24を介して互いに接続され、メイン基板上に配置されている。イメージャモジュール21は、撮像手段としての撮像素子211と、液体レンズ212と、液体レンズ212を駆動して焦点を調節するフォーカス駆動手段としてのフォーカス機構213と、発光手段としてのエイマー214と、照明手段としてのイルミネーション215と、を有する。CPU11は、コード読取装置1の各部を制御する。CPU11は、記憶部15から種々のプログラムを読み出してRAM13に展開し、RAM13に展開されたプログラムとの協働で各種処理を実行する。操作部12は、各種キー12B、トリガキー12A、12C等のキー群を有し、当該キー群の各キーの押下操作を受け付け、その操作情報を入力信号に変換してCPU11へ出力する。RAM13は、揮発性の半導体メモリであり、CPU11に作業用メモリ空間を提供する。RAM13は、各種データの一時記憶、及び、各種プログラムを実行する際の展開に用いられる。表示部14は、LCDLiquidCrystalDisplayや、ELElectroLuminescentディスプレイ等で構成され、CPU11から入力される表示情報に応じて各種情報を表示する。記憶部15は、読み書き可能な不揮発性メモリであり、例えば、フラッシュメモリである。記憶部15には、予め種々のプログラムや設定データが格納されている。或いは、記憶部15は、EEPROMElectricallyErasableandProgrammableReadOnlyMemoryであってもよいし、ハードディスクであってもよい。また、読み取り専用の記憶部として、ROMReadOnlyMemoryを併せて備えることとしてもよい。この記憶部15に格納されたプログラムには、フォーカス機構213の動作を制御してシンボルへ焦点を合わせ、シンボルを読み取る処理を行うプログラム151が含まれ、CPU11は、このプログラム151をRAM13に展開し、後述する処理フローで示すシンボル読取制御処理を実行する。また、記憶部15には、イメージャモジュール21の液体レンズ212の焦点距離と、液体レンズ212の焦点距離を調節するフォーカス機構213による液体レンズ212への印加電圧との関係を示すフォーカステーブル印加電圧テーブル152が含まれている。通信部16は、通信アンテナ、信号処理部、変調部、復調部等を備え、アクセスポイントと無線通信する。アクセスポイントは、通信を中継する機器である。つまり、コード読取装置1は、通信部16により、アクセスポイントを介して、当該アクセスポイントに接続されたサーバ装置等の外部機器と通信する。通信部16は、送信情報の信号を信号処理部で処理し、変調部で変調して通信アンテナから電波としてアクセスポイントに送信情報を無線送信する。また、通信部16は、通信アンテナによりアクセスポイントから送信された電波を受信して復調部で復調し、その信号を信号処理部で信号処理して受信情報を取得する。また、通信部16は、携帯電話通信方式により、基地局を介してサーバ装置と無線通信する無線通信部としてもよい。また、通信部16は、コード読取装置1を載置するクレードル、又は通信ケーブルを介して、サーバ装置と有線通信する有線通信部としてもよい。音声出力部18は、音源部、アンプ、スピーカ18Aを備え、デコード成功時のブザー音を出力する。音声出力部18は、CPU11から入力されたブザー音出力の指示に応じて、音源部でブザー音の信号を生成し、アンプで増幅して、スピーカ18Aから音に変換して出力する。イメージャコントローラ19は、イメージャモジュール21の動作を制御し、また、イメージャモジュール21から出力された画像データに基づく演算、制御処理を行う。イメージャコントローラ19は、ASICApplicationSpecificIntegratedCircuit等の半導体回路により構成されている。イメージャコントローラ19には、撮像素子211から、キャプチャされた画像データの1フレームの出力タイミングに同期したフレーム同期信号と、画像データの1ラインの出力タイミングに同期したライン同期信号と、画像データに同期するためのクロック信号と、が入力される。イメージャコントローラ19は、これらフレーム同期信号、ライン同期信号及びクロック信号に基づいて、RAM13への画像データの転送タイミングを監視する。そして、イメージャコントローラ19は、監視状況に応じてフォーカス機構213の動作を制御することにより液体レンズ212の焦点をリアルタイムに変化させる。また、イメージャコントローラ19は、撮像素子211からイメージャコントローラ19に入力された画像データをRAM13に直接DMADirectMemoryAccess転送するDMA転送機能を有する。イメージャモジュール21は、液体レンズ212の焦点距離を調整してコードシンボルを撮像するモジュールである。撮像素子211は、特には限られないが、CMOSComplementaryMetalOxideSemiconductor:相補性金属酸化膜半導体イメージセンサである。撮像素子211は、液体レンズ212を含む光学系を介して入射された被写体像を光電変換して電気信号に変換することで、画像データを取得する。撮像素子211は、イメージャコントローラ19から入力された画像領域指定信号により指定されたラインの画像データを1ラインずつラインデータとしてイメージャコントローラ19に出力する。また、撮像素子211は、フレーム同期信号、ライン同期信号、及び、クロック信号をイメージャコントローラ19に出力する。液体レンズ212は、イメージャモジュール21の光学系の一部を構成する光学素子である。フォーカス機構213は、液体レンズ212の焦点位置を調節する駆動部である。液体レンズ212及びフォーカス機構213については、後に詳述する。エイマー214は、イメージャモジュール21と被写体であるシンボルとの距離の測定指標、及び、イメージャモジュール21の撮像方向と被写体方向とを合わせるための基準となるスポット光目標光としてのレーザ光ビームを出射するレーザダイオードLDである。レーザ光ビームが投影される面内に形成される輝点の形状は、特に限られないが、中心点に対して対称であることが望ましく、例えば、円形である。イルミネーション215は、例えば、LEDLightEmittingDiodeといった光源により構成され、被写体及びその周囲の領域を明るくするための照射光を出射する。電源部22は、二次電池等で構成され、コード読取装置1の各部に電力供給を行う。レーザ駆動電源23は、エイマー214を駆動してスポット光を出射させる際の電力を供給する。次いで、図3を参照して、イメージャモジュール21の各部の配置を詳細に説明する。図3は、イメージャモジュール21の平面図である。イメージャモジュール21において、液体レンズ212を含む光学系212Aは、当該イメージャモジュール21の外側を撮像可能に配置される。また、撮像素子211は、光学系212Aの光軸に対して垂直に配置され、光学系212Aからの光が入射される。エイマー214及びイルミネーション215は、光学系212A及びフォーカス機構213に並列して配置されている。エイマー214は、出射するビーム状のレーザ光が光学系212Aについて変更可能な焦点距離内において撮像素子211により撮像可能な画角内に含まれる配置となっている。本実施形態では、このレーザ光ビームは、光学系212Aの光軸に平行な方向に出射される。また、イルミネーション215は、扇状に照射する光が光学系212Aについて変更可能な焦点距離内において、撮像素子211により撮像可能な画角内を明るく照らす配置となっている。次に、液体レンズ212及びフォーカス機構213の構成、及び、焦点距離の変化について説明する。図4には、液体レンズ212における焦点距離の変化を説明する図を示す。液体レンズ212は、液体部2121、2122と容器2123とを有する。液体部2121、2122は、互いに屈折率が異なり比重が同じ水溶液及び油である。容器2123は、液体部2121、2122を密閉した容器である。フォーカス機構213の電極2131a、2131bは、液体部2121、2122の周囲に設けられ、液体レンズ212に電圧を印加する。液体部2121側の電極2131a、2131bと、液体部2122側の電極2131a、2131bとの間には、電源2132が接続されている。電源2132により、液体部2121側の電極2131a、2131bと、液体部2122側の電極2131a、2131bとの間に電圧を印加し、液体部2121、2122の界面をレンズのように湾曲させることでレンズの機能を実現する。電源2132の印加電圧を高くすることで、液体部2121、2122の界面における湾曲が大きくなる。界面の湾曲が小さい場合には、液体レンズ212の焦点距離が長くなり、界面の湾曲が大きくなると、液体レンズ212の焦点距離が短くなる。また、液体レンズ212にかかる電圧の大きさに応じてレンズ曲率が変化するため、従来の機械的なオートフォーカス機構のようなレンズの物理的な移動が発生せず、電気的に高速に液体レンズ212のレンズ曲率を変化させることができる。このように、印加電圧の調整によるレンズ曲率変化により、液体レンズ212の焦点調整を行うことができる。また、印加電圧レベルは高電圧であるが電流が流れないので、消費電力は少ない。このとき、液体レンズ212において液体部2121、2122を構成する水溶液及び油の粘性が界面の曲率に影響を与えるが、水溶液及び油の経年変化により粘性が変化すると、同じ電圧を印加しても同一の曲率を得られなくなる。次いで、光学系212Aのフォーカス調整方法について説明する。本発明では、レーザフォーカス法及びコントラストフォーカス法の二種類のフォーカス調整方法が用いられる。先ず、レーザフォーカス法について説明する。図5は、第1位置及び第1位置よりも遠い第2位置にシンボルが置かれた場合の様子を説明する図である。また、図6は、第1位置及び第2位置に置かれたシンボルを撮像したフレーム画像を示す図である。また、図7は、焦点距離と他の変数との対応を示すフォーカステーブルの例を示す図である。図5において、第1位置D1に一次元バーコードのシンボル41が表示された平面が配置されている場合には、図6aに示すように、フレーム画像q1内にシンボル41の像Q1が得られる。このとき、エイマー214からレーザ光ビームが出射されると、このレーザ光ビームがシンボル41の面内に到達して輝点を形成する。図6aの例では、シンボル41の像Q1の右端付近に輝点E1が形成されている。なお、バーコードシンボル41は、特に限られないが、例えば、白紙に印刷されたものである。また、一次元バーコード以外の二次元コード等の読み取りの場合でも、同様のフォーカス調整方法を用いた処理が行われる。一方、図5において、第1位置D1よりもイメージャモジュール21から離れた第2位置D2にシンボル41が表示された平面が配置されている場合には、図6bに示すように、取得されるフレーム画像q2においてシンボル41の像Q2が占める面積は、フレーム画像q1においてシンボル41の像Q1が占める面積に比して相対的に小さくなる。また、このとき、エイマー214からレーザ光ビームが出射されてシンボル41の右端付近を照射すると、フレーム画像q2において形成される輝点E2の位置は、フレーム画像q1における輝点E1の位置と比較して、よりフレーム画像q2の中心に近い位置となる。即ち、フレーム画像において、光学系212A及び撮像素子211により取得される同一の被写体コードシンボルの撮像面積は、イメージャモジュール21からの距離の二乗に略反比例して小さくなる。また、フレーム画像において、その中心からレーザ光ビームにより形成される輝点位置までの距離は、イメージャモジュール21からシンボル41までの距離に略反比例して小さくなり、徐々にフレーム画像の中央に近づいていく。従って、フレーム画像内における輝点の位置座標により、イメージャモジュール21からシンボル41までの距離、即ち、イメージャモジュール21が設定すべき液体レンズ212の焦点距離を求めることが出来る。焦点距離の算出方法としては、図7に示すように、フォーカステーブル152に輝点の座標と焦点距離とを記憶させておくことで焦点距離を求めることとしてもよいし、数式に基づく演算を行うプログラムを実行することで毎回算出することとしても良い。レーザフォーカス法では、上述の原理に基づいて、エイマー214を点灯してフレーム画像を取得し、フレーム画像中の輝点の座標を同定し、この輝点の座標に基づいて焦点距離を算出する。このとき、イメージャモジュール21から輝点までの距離と液体レンズ212の焦点距離とが合っていない場合には、輝点の像が不明瞭となる。このような場合であっても、検出された輝点による明部の重心位置を求めることで輝点の座標が求められる。従って、エイマー214から出射されて被写体上に形成された輝点がフレーム画像に含まれていれば、一度の撮像により短時間で焦点距離を求めることができる。焦点距離が求められると、フォーカステーブル152が参照されて、図7に示すように、焦点距離に対応する印加電圧が求められる。求められた焦点距離がフォーカステーブル152に記憶されている焦点距離データと一致しない場合は、例えば、線形補完により印加電圧が求められる。そして、フォーカス機構213により液体レンズ212にこの印加電圧が加えられることで、液体レンズ212の焦点距離が求められた焦点距離に合わせられる。次に、コントラストフォーカス法について説明する。図8は、液体レンズの焦点距離が第1位置までの距離及び第2位置までの距離にそれぞれ等しい場合に、第2位置に置かれたシンボルを撮像したフレーム画像を示す図である。一次元バーコードのシンボル41が図5における位置D2に置かれた場合には、液体レンズ212の焦点が位置D2と重なったときに得られる撮像データが最も明瞭となり、焦点が位置D2に対して前後にずれると、得られる撮像データが不明瞭になる。例えば、図8aに示すように、液体レンズ212の焦点が位置D1にある場合には、このときの焦点距離は、シンボル41が配置された位置D2までの距離よりも短くなり、従って、得られるフレーム画像q3におけるバーコード画像Q3は、全体的に不明瞭なものとなる。その結果、バーコード画像Q3を含む所定の領域F3において、バーコードシンボルにおける明部であるスペース部分と暗部であるバー部分との間では、コントラストが小さくなる。一方、図8bに示すように、液体レンズ212の焦点が位置D2と重なる場合には、得られるフレーム画像q4におけるバーコード画像Q4の輪郭が明瞭となって明部と暗部が分離し、バーコード画像Q4を含む所定の領域F4においてコントラストが大きくなる。コントラストフォーカス法では、上述の特徴を利用して、液体レンズ212に印加する電圧を変化させながらフレーム画像データを取得し、フレーム画像毎にコントラスト値を算出してコントラスト値が最大となる印加電圧の値対応印加電圧を探索することでシンボルに対する焦点距離を定める。従って、フォーカステーブル152に記憶された印加電圧と焦点距離との関係によらず、シンボルに焦点が合う印加電圧が求められる。算出されるコントラスト値としては、特には限られないが、例えば、MRD値MinimumReflectanceDifferenceが用いられる。このMRD値は、明部であるスペース部分の最小反射率と暗部であるバー部分の最大反射率との差によって求められる。コントラスト値の算出は、フレーム画像データから図8a、bにおける領域F3、F4のデータを抜き出して行われる。この領域F3、F4は、バーコード画像Q3、Q4以外の領域が占める割合を減らすように、例えば、フレーム画像q3、q4の中心付近に設定される。この領域F3、F4の設定は、必ずしもバーコード画像Q3、Q4全体を含まなくてもよい。図8cには、イメージャモジュール21においてフォーカス機構213により液体レンズ212への印加電圧焦点距離を順番に変化させていく場合のコントラスト値の変化パターンの例を示す。印加電圧を所定の間隔で変化させることで、予め設定された変更範囲で焦点を前後にずらしながらフレーム画像を取得し、各フレーム画像において設定された領域のコントラスト値を順番に求めていく。すると、取得されたフレーム画像内の設定された領域にバーコード像が存在する場合には、求められたコントラスト値は、途中で最大値極大値を示す。この最大値を示したときの印加電圧に対応する液体レンズ212の焦点距離は、液体レンズ212からバーコードシンボルが置かれた位置までの距離に最も近いと期待される。従って、コントラスト値が最大の値を示す印加電圧を液体レンズ212に印加し、改めて撮像することで得られるフレーム画像データを用いてバーコードシンボルの解読処理を行う。次いで、本実施形態における焦点距離の補正動作に関して説明する。図9は、本実施形態におけるシンボル読取処理のCPU11による制御手順を示したフローチャートである。CPU11により実行されるシンボル読取制御処理は、通常行われるシンボルの読取の際に、フォーカステーブル152を用いたレーザフォーカス法によるフォーカス調整ではシンボルに焦点が合わなかった場合にフォーカステーブル152を修正する処理を含む。シンボル読取制御処理が、例えば、ユーザによるトリガキーの操作により開始されると、CPU11は、先ず、初期設定を行うステップS11。この初期設定は、具体的には、レーザ駆動電源23やイメージャモジュール21フォーカス機構213への電圧供給の設定、開始や、液体レンズ212の焦点距離を初期値に合わせる設定などである。次に、CPU11は、レーザフォーカス法によるフォーカス調整を開始する。具体的には、CPU11は、先ず、レーザ駆動電源23に指令を送り、エイマー214を点灯させるステップS12。CPU11は、イメージャコントローラ19へ指令を送り、撮像素子211に撮像動作キャプチャを行わせ、このエイマー214による輝点を含む範囲の画像データを取得させる。それから、CPU11は、イメージャコントローラ19に、この取得された画像データをRAM13へDMA転送させるステップS13。CPU11は、RAM13に転送されて取り込まれた画像データから輝点の座標を同定し、同定された輝点の座標を用いてシンボルまでの焦点距離を算出するステップS14。この焦点距離の算出方法としては、記憶部15に換算テーブルを記憶させておき、参照することとしても良いし、プログラム151内又はプログラム151の実行時に読み込まれる設定ファイルに含まれる数式を用いて計算することとしてもよい。CPU11は、フォーカステーブル152を参照して、算出された焦点距離に対応する印加電圧の値を取得し、イメージャコントローラ19に指令を送ってフォーカス機構213にこの印加電圧を印加させる制御信号を送信させるステップS15。これにより、液体レンズ212の焦点距離が上記算出された焦点距離と一致する。続いて、CPU11は、レーザ駆動電源23に信号を送ってエイマー214を消灯させステップS16、また、イメージャコントローラ19に指令を送ってイルミネーション215を点灯させるステップS17。それから、CPU11は、イメージャコントローラ19に指令を送って撮像素子211にシンボルを撮像させ、また、撮像されたフレーム画像データをRAM13へDMA転送させるステップS18。フレーム画像データがRAM13に転送されると、CPU11は、イメージャコントローラ19へ指令を送ってイルミネーション215を消灯させるステップS19。それから、CPU11は、RAM13に記憶されたフレーム画像データに含まれるシンボル画像の範囲を検出してバーコード領域として設定し、このバーコード領域のデータからシンボルを解読するステップS20。CPU11は、シンボルの解読に成功したか否かを判別するステップS21。解読に成功したと判別された場合には、CPU11の処理は、ステップS51へ移行する。解読に成功しなかったと判別された場合には、CPU11の処理は、ステップS31へ移行して、コントラストフォーカス法によるフォーカス調整を開始する。CPU11の処理がステップS31へ移行すると、CPU11は、イメージャコントローラ19へ指令を送ってイルミネーション215を点灯させる。続いて、CPU11は、コントラストフォーカス法を用いる際の印加電圧の変更範囲、変更間隔、及び、初期値を設定し、それから、イメージャコントローラ19へ指令を送って、液体レンズ212の焦点距離を設定値に変更させるステップS32。具体的には、CPU11は、ステップS14の処理で算出された焦点距離に対応してフォーカステーブル152から抽出された印加電圧を中央値として設定し、この中央値の上下所定の範囲内を印加電圧の変更範囲とする。CPU11は、例えば、この変更範囲の上限値又は下限値を初期設定値として設定し、イメージャコントローラ19にフォーカス機構213を動作させて液体レンズ212の焦点距離を変更させる。CPU11は、イメージャコントローラ19へ指令を送って、当該焦点距離で撮像素子211に撮像させる。そして、CPU11は、イメージャコントローラ19に、撮像された画像のうち所定の範囲のデータをRAM13へDMA転送させるステップS33。この所定の範囲としては、例えば、撮像されたフレーム画像の中央部分である。また、バーコードの読み取り時と二次元コードの読み取り時とで、長方形や正方形に形状を変更することとしてもよい。CPU11は、RAM13に転送されて記憶された画像データ部分からコントラスト値の算出を行うステップS34。そして、CPU11は、求められたコントラスト値が印加電圧の変更範囲内において極大値ピークを示しているか否かを判別するステップS35。極大値が検出されたと判別された場合には、CPU11の処理は、ステップS36へ移行する。極大値が検出されていないと判別された場合には、CPU11の処理は、ステップS32の処理へ戻り、CPU11は、印加電圧の所定の範囲内において隣接する次の印加電圧を設定し、ステップS32~S35の処理を繰り返す。なお、検出された極大値が最大値ではない場合を除外するために、当該極大値に対して最低基準値を設けたり、ピーク検出後、更に、所定のステップ数コントラスト値の算出を続けたりすることとしても良い。ステップS36の処理へ移行すると、CPU11は、イメージャコントローラ19へ指令を送り、コントラスト値の極大値最大値が検出された印加電圧値に基づいて液体レンズ212の焦点距離を変化させる。そして、CPU11は、イメージャコントローラ19に、撮像素子211へ制御信号を送らせてこの焦点距離での撮像を行わせ、フレーム画像全体のデータをRAM13にDMA転送させるステップS37。それから、CPU11は、イメージャコントローラ19に指令を送って、イルミネーション215を消灯させるステップS38。CPU11は、RAM13に転送されたフレーム画像データを用いてシンボルの解読を行うステップS39。そして、CPU11は、シンボルの解読に成功したか否かを判別するステップS40。シンボルの解読に成功したと判別された場合には、CPU11は、このときの印加電圧値とレーザフォーカス法で求められていた焦点距離とに基づいて、フォーカステーブル152の書き換えを行うステップS41。それから、CPU11の処理は、ステップS51へ移行する。シンボルの解読に失敗したと判別された場合には、CPU11の処理はステップS12へ戻って、CPU11は、再びレーザフォーカス法によるフォーカス調整を行う。シンボルの解読に成功してステップS51の処理へ移行すると、CPU11は、デコード結果を表示部14に表示させる制御信号を表示部14へ送信する。また、CPU11は、音声出力部18へ制御信号を送ってスピーカ18Aによりブザーを鳴動させるステップS52。そして、シンボル読取制御処理を終了する。次に、ステップS41の処理におけるフォーカステーブル152の書き換えについて説明する。液体レンズ212は、液体の性質が徐々に変化していくと、その焦点距離と印加電圧との関係がずれていく。そこで、これらの関係を示すフォーカステーブル152を必要に応じて修正する。上記のように、レーザフォーカス法によるフォーカス調整によって設定された印加電圧では正しい焦点距離に設定することができない場合には、コントラストフォーカス法により当該焦点距離に対応する印加電圧が求められる。本実施形態のフォーカステーブル152の修正においては、この求められた印加電圧及び焦点距離を対応付けて追加登録する。本実施形態のフォーカステーブル152は、図7に示すように、追加登録用のメモリ領域を備えており、追加登録が行われるたびにフォーカステーブル152に設定されるデータが増加していく。ここで、焦点距離と印加電圧との関係は、時間経過と共に徐々に進行する。従って、レーザフォーカス法では読み取り対象のシンボルに焦点が合わなくなった場合に、補正印加電圧データを一つずつ追加していくことにより、焦点距離と印加電圧との対応関係は、徐々に変化していく。なお、図7に示した例では、焦点距離、印加電圧とともに、対応する輝点の座標が示されている。従って、新たな焦点距離のデータが追加される場合には、予め設定された数式に基づいてこの輝点の座標も算出して追加することとなる。或いは、焦点距離に対応する輝点の座標をフォーカステーブル152に記載せず、別個のテーブルを備えることとして、修正処理を簡略化することとしても良い。[変形例1]図10は、変形例1のフォーカステーブルの修正について説明する図である。変形例1のフォーカステーブル152aの修正においては、テーブルに記憶させる行数を固定し、新しい修正データを追加する毎に古い行データを削除する。例えば、フォーカステーブル152に格納されている最も古いデータを削除することで、常に最新のデータによるフォーカステーブルが得られる。また、このようにテーブルの内容を置き換えていくことで、記憶部15の容量をフォーカステーブル152aの修正追加用に予め確保しておく必要が無い。[変形例2]図11は、変形例2をフォーカステーブルの修正について説明する図である。変形例2のフォーカステーブル152bにおいて、図11aに示すように焦点距離Dk、Dk1の間の焦点距離Dn1における印加電圧Vn1が修正データとして取得された場合に、置換されて削除される旧データは、当該修正データに係る焦点距離に最も近い行データとしてもよい。図11bでは、焦点距離Dn1に最も近い焦点距離Dkのデータが削除されて、新しい焦点距離Dn1におけるデータが追加されている。このような置換方法を用いることで、多くのデータが置換された結果、テーブル内の焦点距離が特定の部分に偏ってしまう事態を避けながら、フォーカステーブルを更新していくことができる。[変形例3]図12aは変形例3のフォーカステーブルの修正について説明する図である。変形例3のフォーカステーブル152cにおいて、図11aに示すように焦点距離Dk、Dk1の間の焦点距離Dn1における印加電圧Vn1が修正データとして取得された場合に、この焦点距離Dn1のデータ自体が追加されるのではなく、隣接する焦点距離Dk、Dk1における印加電圧を、例えば、更に隣の焦点距離Dk-1、Dk2における印加電圧Vk-1、Vk2及び印加電圧Vn1の間における線形補完により求める。そして、図12aに示すように、これらの求められた印加電圧VMk、VMk1を元の印加電圧Vk、Vk1と置き換えてフォーカステーブル152cに格納する。[変形例4]図12bは変形例4のフォーカステーブルの修正について説明する図である。変形例4のフォーカステーブル152dにおいて、図11aに示すように焦点距離Dk、Dk1の間の焦点距離Dn1における印加電圧Vn1が修正データとして取得された場合に、焦点距離Dk、Dk1における印加電圧から線形補完により求められる焦点距離Dn1における印加電圧と、修正データとして求められた焦点距離Dn1における印加電圧Vn1との差を電圧差ΔVとする。そして、図12bに示すように、フォーカステーブル152dに格納されている全ての印加電圧データに対し、電圧差ΔVにそれぞれ所定の係数α1~αnを乗じた値を加算することでフォーカステーブル152dを修正する。係数α1~αnは、例えば、焦点距離Dn1から各焦点距離D1~Dnまでの距離に基づいて設定される値である。或いは、焦点距離Dkと印加電圧Vkとの関係が数式近似式を含むで表現可能である場合には、当該数式に基づいて係数α1~αnが設定される。これらフォーカステーブル152c、152dの修正方法により、修正書込みが必要になるのは印加電圧のデータのみとなり、従って、フォーカステーブル152c、152dにおける焦点距離の間隔を適切に保ちながら、必要に応じて更新していくことが可能になる。以上のように、本発明の実施形態及び変形例におけるコード読取装置1によれば、液体レンズ212と、液体レンズ212に電圧を印加することで焦点を変更させるフォーカス機構213を備えており、エイマー214から出射したレーザ光ビームがシンボルを含む面内に形成する輝点の座標に基づいてシンボルへの焦点距離を算出し、当該求められた焦点距離と、フォーカス機構213により液体レンズ212に印加される印加電圧との対応をフォーカステーブル152に記憶させ、このフォーカステーブル152を参照して液体レンズ212に適切な電圧を印加することでフォーカス調整を行うレーザフォーカス法を用いるとともに、予め設定された範囲内で液体レンズ212の焦点距離をさせながら各焦点距離における取得画像データのコントラスト値を算出し、コントラスト値がピークを示すときの印加電圧を探索することでフォーカス調整を行うコントラストフォーカス法を用い、レーザフォーカス法により求められた焦点距離とコントラストフォーカス法で求められた印加電圧とを対応させてフォーカステーブル152の記憶内容を修正する構成であるので、液体レンズ212の性質が時間経過と共に徐々に変化していっても、フォーカステーブル152の精度を落とさずに利用することができ、従って、長期間に亘ってレーザフォーカス法による高速なフォーカス調整を行うことができる。また、レーザフォーカス法によるフォーカス調整の際に、液体レンズ212を構成する液体の性質が変化していてフォーカステーブル152のデータが不正確になり、シンボルへ正確に焦点を合わせられなくなった場合に、コントラストフォーカス法を用い、レーザフォーカス法により求められた焦点距離とコントラストフォーカス法で求められた印加電圧とを対応させてフォーカステーブル152の記憶内容を修正する構成であるので、必要最小限の頻度で自動的にコントラストフォーカス法を利用したフォーカステーブル152の更新を行い、従って、長期間に亘ってレーザフォーカス法による高速なフォーカス調整を行うことができる。また、コントラストフォーカス法を用いて焦点距離に対応する新たな印加電圧が求められた場合には、当該焦点距離と印加電圧とをフォーカステーブル152に追加記載することで、フォーカステーブルのデータを徐々に更新していくことができる。また、コントラストフォーカス法を用いて焦点距離に対応する新たな印加電圧が求められた場合には、当該焦点距離及び印加電圧のデータを、この時にフォーカステーブル152に記憶されている最も古いデータと置き換えることで、時間経過と共に新しい対応データのみによって高い精度で印加電圧を求めることができる。或いは、新たに求められた焦点距離及び印加電圧のデータをこの時にフォーカステーブル152に記憶されている焦点距離の中で最も新たに求められた焦点距離に近いデータと置き換えることで、フォーカステーブル152に記憶されているデータの数を増やさず、データ内における各焦点距離の偏りを起こさずに印加電圧を求めることができる。また、コントラストフォーカス法を用いて焦点距離に対応する新たな印加電圧が求められた場合には、当該焦点距離及び印加電圧のデータに基づき、フォーカステーブル152に設定記憶された各焦点距離のうち、この求められた焦点距離に隣接する印加電圧のデータを線形補完などにより新しい値に更新することができるので、フォーカステーブル152のサイズ、および焦点距離の配列を変更せずに、容易にバランスよくフォーカステーブル152を更新していくことができる。或いは、当該新たに求められた印加電圧の従来の印加電圧からの変化量に基づき、フォーカステーブル152に設定記憶された全ての印加電圧の値を所定の係数を用いて補正することで、一度の修正でフォーカステーブル152全体を容易に更新することができる。また、コントラストフォーカス法によりフォーカス調整を行う際には、レーザフォーカス法により算出された焦点距離に対応する従来の印加電圧から所定の範囲内のみで印加電圧を変化させてコントラストを算出するので、早期にコントラスト値のピークが検出されることが期待でき、従って、印加電圧の変化ステップ数に依存して長い時間を要するコントラストフォーカス法の時間を短縮し、フォーカステーブル152の修正を行う場合でもシンボルの解読速度の低下を最小限に抑えることができる。また、レーザフォーカス法においてエイマー214により輝点が形成されうる範囲のみのデータを利用して輝点を探索することで当該輝点の座標を求め、コントラストフォーカス法において、濃淡が明瞭なシンボル部分またはシンボルの一部のみを用いてコントラスト値を算出することで、演算量を低減することができ、フォーカス調整の所要時間を短縮させることができる。また、コントラストフォーカス法を用いてフォーカス調整を行う際には、イルミネーション215を点灯させてシンボル部分を照明させるので、よりシンボルの明暗が明瞭になり、確実にコントラスト値のピークを検出することができる。なお、本発明のコード読取装置及びプログラムは、上記実施の形態及び変形例に示された具体的な構成や手順に関する記載に限られるものではなく、様々な変更が可能である。例えば、上記実施の形態では、RAM13にDMA転送された撮像データに基づいてCPU11がエイマー214の輝点検出、輝点座標に基づく焦点位置の同定、コントラスト値の算出、及び、バーコードシンボルの解読処理を行ったが、イメージャコントローラ19がこれらの処理機能をASIC基板上に実装してハードウェア的に演算可能としても良い。反対に、イメージャコントローラ19を用いずに全てCPU11が直接制御する構成としても良い。また、上記実施の形態では、コントラストフォーカス処理によるシンボルの解読に失敗した場合には、レーザフォーカス処理へ戻ることとしたが、コントラストフォーカス処理における焦点距離印加電圧の設定範囲を再設定してコントラストフォーカス処理を再度行うこととしてもよい。また、上記実施の形態では、通常のコードシンボルの読み取り時に、レーザフォーカス処理によるシンボルの読み取りの可否に基づいてフォーカステーブル152の書き換えに係る処理を追加して行ったが、通常のシンボル読取処理とフォーカステーブルの書き換え処理とを別個に行うことも可能である。この場合には、コントラストフォーカス処理の際の被写体は、バーコードや二次元コードに限られない。また、上記実施の形態では、本発明に係るプログラムのコンピュータ読み取り可能な媒体として記憶部15例えば、フラッシュメモリ、EEPROM、ハードディスク、ROMを使用した例を開示したが、この例に限定されない。その他のコンピュータ読み取り可能な媒体として、CD-ROM等の可搬型記録媒体を適用することが可能である。また、本発明に係るプログラムのデータを通信回線を介して提供する媒体として、キャリアウエーブ搬送波も本発明に適用される。その他、上記実施の形態で示した数値、制御の順序などの具体的な細部は、本発明の趣旨を逸脱しない範囲において適宜変更可能である。本発明のいくつかの実施形態を説明したが、本発明の範囲は、上述の実施の形態に限定するものではなく、特許請求の範囲に記載された発明の範囲とその均等の範囲を含む。以下に、この出願の願書に最初に添付した特許請求の範囲に記載した発明を付記する。付記に記載した請求項の項番は、この出願の願書に最初に添付した特許請求の範囲の通りである。[付記]<請求項1>液体レンズと、前記液体レンズに電圧を印加して当該液体レンズの焦点距離を調節するフォーカス駆動手段と、前記液体レンズの焦点距離と当該液体レンズへの印加電圧との対応関係を示す印加電圧テーブルを記憶する記憶手段と、前記液体レンズによる撮像方向の画像データを取得するための撮像手段と、前記撮像方向にレーザ光ビームを出射する発光手段と、前記レーザ光ビームを出射させた状態で前記撮像手段に被写体の画像データを取得させ、当該画像データにおける前記レーザ光ビームによる輝点の位置に基づいて前記被写体までの焦点距離を求めることでフォーカス調整を行うレーザフォーカス手段と、予め設定された変更範囲に亘り前記液体レンズの焦点距離を変化させながら被写体の画像データを前記撮像手段に各々取得させ、取得された当該画像データに含まれる前記被写体のコントラストの大小に基づいて前記被写体に合焦するフォーカス調整を行うコントラストフォーカス手段と、前記レーザフォーカス手段により求められた前記被写体までの焦点距離と、前記コントラストフォーカス手段により前記被写体に合焦された際の対応印加電圧とに基づいて、前記印加電圧テーブルの内容を修正する修正手段と、を備えることを特徴とするコード読取装置。<請求項2>前記修正手段は、前記レーザフォーカス手段によるフォーカス調整に基づいて取得された前記画像データに含まれるシンボルの読み取りに失敗した場合に、前記コントラストフォーカス手段によるフォーカス調整を行い、前記レーザフォーカス手段により求められた焦点距離と、前記コントラストフォーカス手段により前記シンボルに合焦された際の前記対応印加電圧とに基づいて、前記印加電圧テーブルの内容を修正することを特徴とする請求項1に記載のコード読取装置。<請求項3>前記修正手段は、前記レーザフォーカス手段により求められた焦点距離と、前記対応印加電圧とを対応付けて前記印加電圧テーブルに追加することを特徴とする請求項1又は2に記載のコード読取装置。<請求項4>前記修正手段は、前記レーザフォーカス手段により求められた焦点距離と、前記対応印加電圧とを前記印加電圧テーブルに記録されているデータのうち、所定の条件により定められたものと置き換えることを特徴とする請求項1又は2に記載のコード読取装置。<請求項5>前記修正手段は、前記レーザフォーカス手段により求められた焦点距離と、前記対応印加電圧とに基づき、前記印加電圧テーブルに記録されている前記印加電圧の値を修正することを特徴とする請求項1又は2に記載のコード読取装置。<請求項6>前記コントラストフォーカス手段は、前記予め設定された変更範囲として、前記レーザフォーカス手段により求められた焦点距離に対応して前記印加電圧テーブルに基づき求められる印加電圧を中心とする範囲を設定することを特徴とする請求項1~5の何れか一項に記載のコード読取装置。<請求項7>前記レーザフォーカス手段及び前記コントラストフォーカス手段は、前記撮像手段により取得可能な撮像範囲のうち、各々所定の一部の範囲内の画像データに基づいてフォーカス調整を行うことを特徴とする請求項1~6の何れか一項に記載のコード読取装置。<請求項8>前記撮像方向を照明する照明手段を備え、前記コントラストフォーカス手段は、フォーカス調整時に当該照明手段を点灯させることを特徴とする請求項1~7の何れか一項に記載のコード読取装置。<請求項9>液体レンズと、前記液体レンズに電圧を印加して当該液体レンズの焦点距離を調節するフォーカス駆動手段と、前記液体レンズが向けられた撮像方向の画像データを取得するための撮像手段と、前記撮像方向にレーザビーム光を出射する発光手段と、を備え、コード読取装置に用いられるコンピュータを、前記液体レンズの焦点距離と当該液体レンズへの印加電圧との対応関係を示す印加電圧テーブルを記憶する記憶手段と、前記レーザ光ビームを出射させた状態で前記撮像手段に被写体の画像データを取得させ、当該画像データにおける前記レーザ光ビームによる輝点の位置に基づいて前記被写体までの焦点距離を求めることでフォーカス調整を行うレーザフォーカス手段と、予め設定された変更範囲に亘り前記液体レンズの焦点距離を変化させながら被写体の画像データを前記撮像手段に各々取得させ、取得された当該画像データに含まれる前記被写体のコントラストの大小に基づいて前記被写体に合焦するフォーカス調整を行うコントラストフォーカス手段と、前記レーザフォーカス手段により求められた前記被写体までの焦点距離と、前記コントラストフォーカス手段により前記被写体に合焦された際の対応印加電圧とに基づいて、前記印加電圧テーブルの内容を修正する修正手段と、として機能させるためのプログラム。