(57)【特許請求の範囲】
【請求項１】
液体を吐出する複数の駆動素子それぞれを識別する識別子及び該識別子に対応しており、前記駆動素子に供給すべき電圧を記憶するメモリとの通信を行うメモリインタフェースと、
それぞれ異なる電圧に変更可能な複数の電源回路との通信を行う電源インタフェースと
を備え、
前記各識別子及び該各識別子に対応した各電圧を前記メモリから読み出す読出処理と、
該読出処理にて読み出した各電圧に基づいて、前記複数の電源回路のいずれかを前記各識別子に対して設定する設定処理と、
該設定処理にて設定したそれぞれの前記電源回路に異常が発生しているか否か検出する異常検出処理と、
該異常検出処理にて前記電源回路のいずれかに異常を検出したことに基づいて、前記各識別子に対し、異常が未検出の前記電源回路のいずれかを設定する再設定処理と
を実行する制御回路。
【請求項２】
前記再設定処理において、
異常を検出した前記電源回路に対応する前記識別子に対し、異常を検出した前記電源回路の電圧に最も近い電圧を有し且つ異常が未検出の前記電源回路を設定する第１設定処理
を実行する請求項１に記載の制御回路。
【請求項３】
前記第１設定処理において、
異常を検出した前記電源回路の電圧に最も近い電圧を有し、異常が未検出の前記電源回路が複数存在することに基づいて、異常を検出した前記電源回路に対応する前記識別子に対して、駆動素子数が最少の前記電源回路を設定する
請求項２に記載の制御回路。
【請求項４】
前記第１設定処理において、
異常を検出した前記電源回路に対応する駆動素子数と、異常を検出した前記電源回路の電圧に最も近い電圧を有し且つ異常が未検出の前記電源回路の駆動素子数との合計が予め定めた閾値未満であるか否かを判定する第１判定処理と、
該第１判定処理にて、前記合計が前記閾値未満であると判定したことに基づいて、異常を検出した前記電源回路に対応する前記識別子に対し、異常を検出した前記電源回路の電圧に最も近い電圧を有する前記電源回路を設定し、
前記第１判定処理にて、前記合計が前記閾値未満でないと判定したことに基づいて、最少駆動素子数を有し且つ異常が未検出の前記電源回路を検索する検索処理と、
該検索処理にて検索した前記電源回路に対応する前記識別子及び電圧と、異常を検出した前記電源回路に対応する前記識別子及び電圧とを入れ替える入れ替え処理と
を実行し、
前記入れ替え処理にて前記識別子及び電圧を入れ替えた後、前記第１判定処理による判定を再度実行する
請求項２又は３に記載の制御回路。
【請求項５】
前記再設定処理において、
異常を検出した前記電源回路に対応する前記識別子に対し、異常が未検出であり且つ最少駆動素子数を有する前記電源回路又は異常が未検出であり且つ最少駆動素子数の次に駆動素子数の少ない前記電源回路を設定する第２設定処理
を実行する請求項１に記載の制御回路。
【請求項６】
前記制御回路は、
複数の回路構成部品と、
ビットストリーム情報を記憶する他のメモリと通信する受信インタフェースと
を備え、
前記受信インタフェースが受信した前記他のメモリが記憶する前記ビットストリーム情報に従って、前記読出処理、前記設定処理、前記異常検出処理及び前記再設定処理を実行するロジック回路を構成すべく前記複数の回路構成部品の接続関係を構築するＦＰＧＡである
請求項１から５のいずれか一つに記載の制御回路。
【請求項７】
前記制御回路は、
複数の回路構成部品を備え、
前記メモリインタフェースが受信した、前記メモリが記憶するビットストリーム情報に従って、前記読出処理、前記設定処理、前記異常検出処理、及び前記再設定処理、を実行するロジック回路を構成すべく前記複数の回路構成部品の接続関係を構築するＦＰＧＡである請求項１から５のいずれか一つに記載の制御回路。
【請求項８】
液体を吐出する複数の駆動素子それぞれを識別する識別子及び該識別子に対応しており、前記駆動素子に供給すべき電圧を記憶するメモリとの通信を行うメモリインタフェースと、
それぞれ異なる電圧に変更可能な複数の電源回路との通信を行う電源インタフェースと
を備え、
前記各識別子及び該各識別子に対応した各電圧を前記メモリから読み出す読出部と、
該読出部にて読み出した各電圧に基づいて、複数の電源回路のいずれかを、各識別子に対して設定する設定部と、
該設定部にて設定したそれぞれの前記電源回路に異常が発生しているか否か検出する異常検出部と、
該異常検出部にて前記電源回路のいずれかに異常を検出したことに基づいて、前記各識別子に対し、異常が未検出の前記電源回路のいずれかを設定する再設定部と
を備える制御回路。
【請求項９】
前記複数の駆動素子を有するインクジェットヘッドと、
前記メモリと、
請求項１から８のいずれか一つに記載の制御回路と
を備えるインクジェットヘッドシステム。
【請求項１０】
液体を吐出する複数の駆動素子それぞれを識別する識別子及び該識別子に対応しており、前記駆動素子に供給すべき電圧を記憶するメモリが記憶する前記各識別子及び該各識別子に対応した各電圧を読み出し、
読み出した各電圧に基づいて、それぞれ異なる電圧に変更可能な複数の電源回路のいずれかを各識別子に対して設定し、
設定したそれぞれの前記電源回路に異常が発生しているか否か検出し、
前記電源回路のいずれかに異常を検出したことに基づいて、前記各識別子に対し、異常が未検出の前記電源回路のいずれかを設定する
制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、液体を吐出する駆動素子に電圧を供給する電源回路を制御する制御回路、当該制御回路を含むインクジェットヘッドシステム及び制御方法に関する。
【背景技術】
【０００２】
インクジェットヘッドは複数のノズルを備えている。各ノズルは圧電体を有し、圧電体の特性に起因した吐出特性を備える。以前より、各ノズルの吐出特性に応じて、異なる電圧を有する三つの電源から適切な電圧を有する電源を選択し、ノズルに電圧を供給する記録要素制御回路が知られている（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特公昭６４−７５９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、上記記録要素制御回路は、電源が故障した場合について考慮していない。
【０００５】
本実施例は斯かる事情に鑑みてなされたものであり、電源が故障した場合においても、ノズル等の駆動素子を継続して駆動させることができる制御回路、インクジェットヘッドシステム及び制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本実施例に係る制御回路は、液体を吐出する複数の駆動素子それぞれを識別する識別子及び該識別子に対応しており、前記駆動素子に供給すべき電圧を記憶するメモリとの通信を行うメモリインタフェースと、それぞれ異なる電圧に変更可能な複数の電源回路との通信を行う電源インタフェースとを備え、前記各識別子及び該各識別子に対応した各電圧を前記メモリから読み出す読出処理と、該読出処理にて読み出した各電圧に基づいて、前記複数の電源回路のいずれかを前記各識別子に対して設定する設定処理と、該設定処理にて設定したそれぞれの前記電源回路に異常が発生しているか否か検出する異常検出処理と、該異常検出処理にて前記電源回路のいずれかに異常を検出したことに基づいて、前記各識別子に対し、異常が未検出の前記電源回路のいずれかを設定する再設定処理とを実行する。
【０００７】
本実施例に係るインクジェットヘッドシステムは、前記複数の駆動素子を有するインクジェットヘッドと、前記メモリと、上述した制御回路とを備える。
【０００８】
本実施例に係る制御方法は、液体を吐出する複数の駆動素子それぞれを識別する識別子及び該識別子に対応しており、前記駆動素子に供給すべき電圧を記憶するメモリが記憶する前記各識別子及び該各識別子に対応した各電圧を読み出し、読み出した各電圧に基づいて、それぞれ異なる電圧に変更可能な複数の電源回路のいずれかを各識別子に対して設定し、設定したそれぞれの前記電源回路に異常が発生しているか否か検出し、前記電源回路のいずれかに異常を検出したことに基づいて、前記各識別子に対し、異常が未検出の前記電源回路のいずれかを設定する。
【発明の効果】
【０００９】
本実施例に係る制御回路、インクジェットヘッドシステム及び制御方法によれば、電源回路が故障した場合においても、駆動素子を継続して駆動させることができる。
【図面の簡単な説明】
【００１０】
【図１】実施の形態１に係る印刷装置を略示する平面図である。
【図２】図１に示すＩＩ−ＩＩ線を切断線とした略示断面図である。
【図３】インクジェットヘッドの底面図である。
【図４】制御装置及びヘッドユニットの接続を略示するブロック図である。
【図５】電源回路付近の構成を略示するブロック図である。
【図６】ノズルを駆動するＣＭＯＳ回路の構成を略示する回路図である。
【図７】電圧設定処理を説明するフローチャートである。
【図８】再設定処理を説明するフローチャートである。
【図９】実施の形態２に係る第２再設定処理を説明するフローチャートである。
【図１０】ＡＳＩＣの構成を示す機能ブロック図である。
【発明を実施するための形態】
【００１１】
（実施の形態１）
以下実施の形態１に係る印刷装置を図面に基づいて説明する。図１は、印刷装置を略示する平面図である。
【００１２】
図１において、記録用紙１００の搬送方向下流側を印刷装置１の前方、搬送方向上流側を印刷装置１の後方と定義する。また、記録用紙１００が搬送される面（図１の紙面と平行な面）と平行で、且つ、前記搬送方向と直交する用紙幅方向を、印刷装置１の左右方向と定義する。尚、図の左側が印刷装置１の左方、図の右側が印刷装置１の右方である。さらに、記録用紙１００の搬送面と直交する方向（図１の紙面に直交する方向）を、印刷装置１の上下方向と定義する。図１において、表側が上方、裏側が下方である。以下では、前後左右上下を適宜使用して説明する。
【００１３】
図１に示すように、印刷装置１は、筐体２と、プラテン３と、四つのインクジェットヘッド４と、二つの搬送ローラ５、６と、制御装置７とを備える。
【００１４】
プラテン３は筐体２内に配置されている。プラテン３は、その上面において、二つの搬送ローラ５、６のいずれかによって搬送される記録用紙１００を支持する。四つのインクジェットヘッド４は、プラテン３の上方において、それぞれが前後方向に並んだ状態で配置されている。二つの搬送ローラ５、６は、プラテン３に対して後側と前側にそれぞれ配置されている。二つの搬送ローラ５、６は、図示しないモータによってそれぞれ駆動される。このモータによって、二つの搬送ローラ５、６は、プラテン３上の記録用紙１００を前方へ搬送する。
【００１５】
制御装置７は、ＰＣ等の外部装置９とデータ通信可能に接続されている。制御装置７は、外部装置９から送信された印刷データに基づいて、印刷装置１の各部を制御する。
【００１６】
例えば制御装置７は、２つの搬送ローラ５、６を駆動するモータを制御して、搬送ローラ５、６に記録用紙１００を搬送方向に搬送させる。また制御装置７は、２つの搬送ローラ５、６に記録用紙１００を搬送させている間に、インクジェットヘッド４を制御して記録用紙１００に向けてインクを吐出させる。これにより、記録用紙１００に画像が印刷される。
【００１７】
筐体２には、複数のヘッドホルダ８が配置されている。複数のヘッドホルダ８は、プラテン３の上方で、且つ、二つの搬送ローラ５、６の間の位置において、前後にそれぞれ配置されている。各ヘッドホルダ８は、各インクジェットヘッド４を保持する。
【００１８】
四つのインクジェットヘッド４は、それぞれ、シアン（Ｃ）、マゼンタ（Ｍ）、イエロー（Ｙ）、ブラック（Ｋ）の４色のインクを吐出する。各インクジェットヘッド４には、図示しないインクタンクから、対応する色のインクが供給される。
【００１９】
図２は、図１に示すＩＩ−ＩＩ線を切断線とした略示断面図、図３は、インクジェットヘッド４の底面図である。図２に示すように、各インクジェットヘッド４は、ホルダ１０と、九つのヘッドユニット１１と、を備えている。ホルダ１０は、その形状が、用紙幅方向に長い矩形板状となっている。またホルダ１０は、複数のヘッドユニット１１を保持する。なお、１つのインクジェットヘッド４が、九つ以外の数のヘッドユニット１１を備えても良い。
【００２０】
各ヘッドユニット１１の下面には、例えば１８０個のノズル１１ａが形成されている。なお、図３では、丸がノズル１１ａを示しており且つ１つのヘッドユニット１１が１８個のノズル１１ａを有していることが記載されている。この図３における丸の数は便宜上の都合であり、実際は１つのヘッドユニット１１に１８０個のノズル１１ａが形成されている。なお、インクジェットヘッド４としては、ノズル１１ａを１６２０個有する。
【００２１】
ヘッドユニット１１は、それぞれのノズル１１ａに対応して、後述する１８０対（個）の圧電体１１ｂ、１１ｂ′（駆動素子）を備える（図６参照）。図３に示すように、ヘッドユニット１１の複数のノズル１１ａは、インクジェットヘッド４の長手方向である、用紙幅方向に沿って形成されている。九つのヘッドユニット１１同士は、搬送方向及び用紙幅方向（配列方向）において、千鳥状に配置されている。以下、搬送方向において後方（搬送方向上流）側の複数のヘッドユニット１１を、第１ヘッド列８１とする。また、搬送方向において前方（搬送方向下流）側の複数のヘッドユニット１１を、第２ヘッド列８２とする。なお複数のヘッドユニット１１が、搬送方向と直交する用紙幅方向に沿って配置されているが、搬送方向とは９０度以外の角度で交差する方向に沿って、いわば斜めに、複数のヘッドユニット１１が配列されていてもよい。
【００２２】
図３に示すように、第１ヘッド列８１のヘッドユニット１１の左端部と第２ヘッド列８２のヘッドユニット１１の右端部とが左右方向において同位置にある。換言すれば、第１ヘッド列８１のヘッドユニット１１の左端のノズルの前方に、第２ヘッド列８２のヘッドユニット１１の右端のノズルが位置している
【００２３】
図２に示すように、フレキシブル基板５１が、各ヘッドユニット１１と接続している。このフレキシブル基板５１は、制御装置７と接続している。したがって、フレキシブル基板５１を介して、ヘッドユニット１１と制御装置７とが接続している。
【００２４】
図１及び図２に示すように、リザーバ１２が複数のヘッドユニット１１の上方に配置されている。
【００２５】
リザーバ１２は、インクタンク（図示略）にチューブ１６を介して接続されている。またリザーバ１２は、インクタンクから供給されたインクが一時的に貯留される。リザーバ１２の下部は複数のヘッドユニット１１に接続されている。複数のヘッドユニット１１には、リザーバ１２からインクが供給される。
【００２６】
図４は、制御装置７及びヘッドユニット１１の接続を略示するブロック図、図５は、電源回路付近の構成を略示するブロック図、図６は、ノズル１１ａを駆動するＣＭＯＳ(Complementary Metal-Oxide-Semiconductor)回路の構成を略示する回路図である。
【００２７】
図４に示すように、制御装置７は、第１基板７１及び第２基板７２を備える。第１基板７１はＦＰＧＡ（Field Programmable Gate Array）７１ａを有する。第２基板７２は複数のＦＰＧＡ７２ａ、７２ａ、・・・７２ａを有する。図５に示すように、ＦＰＧＡ７２ａは、メモリインタフェース（メモリＩ／Ｆ）７２ｂ、電源インタフェース（電源Ｉ／Ｆ）７２ｃ及び受信インタフェース（受信Ｉ／Ｆ）７２ｄを備える。
【００２８】
ＦＰＧＡ７１ａは、複数のＦＰＧＡ７２ａにそれぞれ接続されており、複数のＦＰＧＡ７２ａの駆動を制御する。また、ＦＰＧＡ７１ａの数は、四つであり、インクジェットヘッド４の数と同じである。複数の第２基板７２、即ち複数のＦＰＧＡ７２ａは複数のヘッドユニット１１にそれぞれ対応している、したがって、ＦＰＧＡ７２ａの数は九つであり、これはヘッドユニット１１の数と同じである。複数のＦＰＧＡ７２ａ及び複数のヘッドユニット１１はそれぞれ接続されている。すなわち、九つのヘッドユニット１１を有する一つのインクジェットヘッド４に対して、一つのＦＰＧＡ７１ａと、九つのＦＰＧＡ７２ａとが対応している。なお、ＦＰＧＡ７１ａ、ＦＰＧＡ７２ａ及びヘッドユニット１１それぞれの数は上述した各数に限定されない。
なお一つの第２基板７２に複数のヘッドユニット１１が対応することも可能である。例えば一つの第２基板７２に二つのヘッドユニット１１が対応する場合、ＦＰＧＡ７２ａは、二つのヘッドユニット１１の全ノズル１１ａ、すなわち３６０個のノズル１１ａに対して、制御を行う。
【００２９】
図４に示すように、ヘッドユニット１１は基板１１ｃを備えている。基板１１ｃは、着脱可能なコネクタ１１ｄ、不揮発性メモリ１１ｅ及びドライバＩＣ１１ｆを有する。ヘッドユニット１１は、コネクタ１１ｄを介して、取り外し可能に第２基板７２に接続されている。ドライバＩＣ１１ｆは、後述するスイッチング回路２７を備える。
【００３０】
図５に示すように、第２基板７２はＤ／Ａ(Digital/Analog)コンバータ２０を有する。また第２基板７２は電源回路ユニット７３を有する。電源回路ユニット７３は複数の電源回路を備えており、例えば第１電源回路２１〜第６電源回路２６を有する。第１電源回路２１〜第６電源回路２６は、ＦＥＴ及び抵抗等を有し、出力電圧を変更することができる。また、第２基板７２は、Ａ／Ｄコンバータ７４を有する。
【００３１】
第１電源回路２１〜第６電源回路２６は、Ｄ／Ａコンバータ２０及びＡ／Ｄコンバータ７４を介して、ＦＰＧＡ７２ａにそれぞれ接続されている。ＦＰＧＡ７２ａは、Ｄ／Ａコンバータ２０を介して、第１電源回路２１〜第６電源回路２６に、出力電圧を設定する信号を出力する。第１電源回路２１〜第６電源回路２６は、Ａ／Ｄコンバータ７４及び電源Ｉ／Ｆ７２ｃを介して、それぞれの出力電圧を、ＦＰＧＡ７２ａに入力する。
【００３２】
第１電源回路２１〜第６電源回路２６は、ドライバＩＣ１１ｆのスイッチング回路２７を介して、第１電源線３４（１）〜第１８０電源線３４（１８０）に接続されている。この電源線３４の数は、ノズル１１ａ又は圧電体１１ｂ、１１ｂ′に対応しており、圧電体１１ｂ、１１ｂの対と同じ数である。スイッチング回路２７は、第１電源線３４（１）〜第１８０電源線３４（１８０）それぞれを第１電源回路２１〜第６電源回路２６のいずれかに接続させる。例えば、第１電源回路２１の出力電圧が最も高く、第１電源回路２１の出力側は端子ＨＶＤＤ及び端子ＶＣＯＭに接続されている。
【００３３】
図６に示すように、印刷装置１は、圧電体１１ｂ、１１ｂ′を駆動するＣＭＯＳ回路３０を備える。ＣＭＯＣ回路３０の数は、圧電体１１ｂ、１１ｂ′の対の数（単数の圧電体１１ｂのみが設けられている場合は、圧電体１１ｂの数）に対応し、例えば同じ数である。ＦＰＧＡ７２ａは、第１制御線３３（１）〜第１８０制御線３３（１８０）を介して、ＣＭＯＳ回路３０にゲート信号を出力する。なお第１制御線３３（１）〜第１８０制御線３３（１８０）及び第１電源線３４（１）〜第１８０電源線３４（１８０）は対応している。すなわち、第１制御線３３（１）は第１電源線３４（１）に対応し、第１８０制御線３３（１８０）は第１８０電源線３４（１８０）に対応する。
【００３４】
ＦＰＧＡ７２ａは、例えば、スイッチング回路２７に対して、第１電源線３４（１）〜第１８０電源線３４（１８０）それぞれを第１電源回路２１〜第６電源回路２６のいずれかに接続させる信号を出力する。ＦＰＧＡ７２ａは、メモリＩ／Ｆ７２ｂを介して不揮発性メモリ１１ｅにアクセスする。不揮発性メモリ１１ｅは、複数の各ノズル１１ａを識別する複数のノズルアドレス（換言すれば識別子）及び該複数のノズルアドレスに対応した電圧等の情報を記憶する。不揮発性メモリ１１ｅに記憶された情報ついては後述する。
【００３５】
なお外部のメモリ７５が、後述する電圧設定処理及び再設定処理を実行するためのビットストリーム情報を記憶している。ＦＰＧＡ７２ａはロジック回路を構成する複数の回路構成部品を備える。ＦＰＧＡ７２ａは、メモリ７５から受信Ｉ／Ｆ７２ｃを介してビットストリーム情報を受信する。そして、ＦＰＧＡ７２ａは、受信したビットストリーム情報に従って、複数の回路構成部品の接続関係を構築する。これにより、ＦＰＧＡ７２ａは、前記電圧設定処理及び再設定処理を実行するロジック回路を構成する。なお不揮発性メモリ１１ｅがビットストリーム情報を記憶し、ＦＰＧＡ７２ａは、メモリＩ／Ｆ７２ｂを介してビットストリーム情報を受信してもよい。
【００３６】
図６に示すように、ＣＭＯＳ回路３０は、ＰＭＯＳ(P-type Metal-Oxide-Semiconductor)トランジスタ３１、ＮＭＯＳ(N-type Metal-Oxide-Semiconductor)トランジスタ３２、抵抗３５、二つの圧電体１１ｂ、１１ｂ′等を備える。圧電体１１ｂ、１１ｂ′はキャパシタとして機能する。なお単数の圧電体１１ｂのみを設けてもよい。ＰＭＯＳトランジスタ３１のソース端子３１ａは、例えば第ｎ電源線３４（ｎ）に接続されている。ＮＭＯＳトランジスタ３２のソース端子３２ａは、グランドに接続されている。
【００３７】
ＰＭＯＳトランジスタ３１及びＮＭＯＳトランジスタ３２のドレイン端子３１ｂ、３２ｂは、抵抗３５の一端に接続されている。抵抗３５の他端は、一方の圧電体１１ｂ′の他端及び他方の圧電体１１ｂの一端に接続されている。一方の圧電体１１ｂ′の一端は端子ＶＣＯＭ（共通電源）に接続され、他方の圧電体１１ｂの他端はグランドに接続されている。
【００３８】
ＰＭＯＳトランジスタ３１及びＮＭＯＳトランジスタ３２のゲート端子３１ｃ、３２ｃは、いずれかの第１制御線３３（１）〜第１８０制御線３３（１８０）に接続している。いずれかの第１制御線３３（１）〜第１８０制御線３３（１８０）は、ＰＭＯＳトランジスタ３１のソース端子３１ａに接続された電源線に対応している。ＰＭＯＳトランジスタ３１は端子ＨＶＤＤ（ドレイン側電源）に接続されている。
【００３９】
ＦＰＧＡ７２ａが、「Ｌ」の出力信号を、ＰＭＯＳトランジスタ３１及びＮＭＯＳトランジスタ３２のゲート端子３１ｃ、３２ｃに入力したことに応じて、ＰＭＯＳトランジスタ３１が導通する。すると、圧電体１１ｂは充電状態となり、圧電体１１ｂ′は放電状態となる。ＦＰＧＡ７２ａが、「Ｈ」の出力信号を、ＰＭＯＳトランジスタ３１及びＮＭＯＳトランジスタ３２のゲート端子３１ｃ、３２ｃに入力したことに応じて、ＮＭＯＳトランジスタ３２が導通する。すると、圧電体１１ｂは放電状態となり、１１ｂ′は充電状態となる。圧電体１１ｂ、１１ｂ′が充電状態及び放電状態となることによって、圧電体１１ｂ、１１ｂ′が変形する。圧電体１１ｂ、１１ｂ′の変形によって、ノズル１１ａからインクが吐出する。
【００４０】
不揮発性メモリ１１ｅは第１記憶領域及び第２記憶領域を備える。第１記憶領域には、初期値として、例えば以下の表１に示すデータテーブルが記憶されている。なお第２記憶領域には、後述する再設定処理後のデータテーブルが記憶される。
【００４１】
【表１】
0006690368.tif 000002
【００４２】
データテーブルにおいて、「設定電圧」は、第１電源回路２１〜第６電源回路２６に設定する出力電圧を示す。「アドレス」は、各ノズル１１ａを識別する識別子を示す。例えば、ノズル１１ａの総数は１８０であり、複数のノズル１１ａにはそれぞれ識別子「ｃｈ１」〜「ｃｈ１８０」がそれぞれ付与されている。すなわち、「ｃｈ１」が１個目のノズル１１ａに対応し、「ｃｈ２」が２個目のノズル１１ａに対応し、「ｃｈ１８０」が１８０個目のノズル１１ａに対応する。
【００４３】
識別子「ｃｈ１」〜「ｃｈ１８０」の各欄において、ある識別子に対応するノズル１１ａに印加する電圧を出力電圧とした電源回路に対し、「１」が設定され、それ以外の電源回路に対しては「０」が設定される。表１において、例えば、「ｃｈ１」に対応する１個目のノズル１１ａに印加する電圧を出力電圧とする電源回路は、第４電源回路（出力電圧は２５Ｖ）である。「ｃｈ１」に対応する１個目のノズル１１ａについては、第１乃至３電源回路、第５及び第６電源回路の出力電圧は設定されない。また、例えば、「ｃｈ２」に対応する２個目のノズル１１ａに印加する電圧を出力電圧とする電源回路は、第３電源回路（出力電圧は２７Ｖ）である。また、例えば、「ｃｈ１８０」に対応する１８０個目のノズル１１ａに印加する電圧を出力電圧とする電源回路は、第２電源回路（出力電圧は２９Ｖ）である。
【００４４】
「割合」は、１つのヘッドユニット１１が備えるノズル総数（すなわち１８０個）に対する、第１電源回路２１〜第６電源回路２６それぞれに対応するノズル数の割合を示す。表１において、例えば、第３電源回路２３の割合が３０％であることから、第３電源回路２３が出力する電圧（２７Ｖ）が設定されたノズル数は、５４個である。また例えば、
第５電源回路２４の割合が２０％であることから、第５電源回路２４が出力する電圧（２３Ｖ）が設定されたノズル数は、３６個である。なお「割合」に代えて、第１電源回路２１〜第６電源回路２６それぞれに対応するノズル数をデータテーブルに記憶してもよい。
【００４５】
電源回路２１〜２６それぞれに対し、ＦＰＧＡ７２ａは、出力電圧を設定する電圧設定処理を実行する。図７は、電圧設定処理を説明するフローチャートである。ＦＰＧＡ７２ａは、外部装置９から電源設定要求を受信するまで待機する（ステップＳ１：ＮＯ）。
【００４６】
ＦＰＧＡ７２ａは、外部装置９から電源設定要求を受信したことに基づいて（ステップＳ１：ＹＥＳ）、ＦＰＧＡ７２ａは、外部装置９から電源回路２１〜２６の異常を示す情報を受信したか否かを判定する（ステップＳ２）。なお外部装置９は、電源設定要求を行うときであって、且つ電源回路２１〜２６の異常を示す情報が外部装置９のメモリに記憶されているとき、電源回路２１〜２６の異常を示す情報をＦＰＧＡ７２ａに送信する。
【００４７】
外部装置９から電源回路２１〜２６の異常を示す情報を受信していないことに基づいて（ステップＳ２：ＮＯ）、ＦＰＧＡ７２ａは不揮発性メモリ１１ｅの第１記憶領域からデータテーブルを読み出して取得する（ステップＳ３、表１参照）。ＦＰＧＡ７２ａは取得したデータテーブルに基づいて、第１電源回路２１〜第６電源回路２６それぞれに出力電圧を設定する（ステップＳ４）。すなわち、第１電源回路２１に対して３１Ｖが、第２電源回路２２に対して２９Ｖが、第３電源回路２３に対して２７Ｖが、第４電源回路２４に対して２５Ｖが、第５電源回路２５に対して２３Ｖが、第６電源回路２６に対して２１Ｖが設定される。また、ＦＰＧＡ７２ａは取得したデータテーブルに基づいて、各ノズル１１ａの識別子をいずれかの第１電源回路２１〜第６電源回路２６に対応させる（ステップＳ４）。
【００４８】
ＦＰＧＡ７２ａは、電源Ｉ／Ｆ７２ｃを介して、第１電源回路２１〜第６電源回路２６それぞれから電圧を取得する（ステップＳ５）。ＦＰＧＡ７２ａは、第１電源回路２１〜第６電源回路２６の全てについて、取得した電圧（取得電圧）が設定した出力電圧（設定電圧）に対応しているか否か判定する（ステップＳ６）。例えば、ステップＳ６において、ＦＰＧＡ７２ａは、第１電源回路２１の設定電圧が３１Ｖである場合、第１電源回路２１の取得電圧が２９．５〜３１．５Ｖの範囲内にあるか否かを判定する。なお前記範囲は電源回路の仕様に応じて適宜設定される。
【００４９】
第１電源回路２１〜第６電源回路２６の全てについて、取得電圧が設定電圧に対応していると判定したことに基づいて（ステップＳ６：ＹＥＳ）、ＦＰＧＡ７２ａはステップＳ１に示す処理を実行する。第１電源回路２１〜第６電源回路２６の少なくとも一つについて、取得電圧が設定電圧に対応していないと判定したことに基づいて（ステップＳ６：ＮＯ）、ステップＳ７に示す処理を実行する。ステップＳ７において、ＦＰＧＡ７２ａは、取得電圧が設定電圧に対応していないいずれかの電源回路２１〜２６、すなわち異常が発生したいずれかの電源回路２１〜２６に対して、異常フラグを設定する（ステップＳ７）。以下、異常フラグを設定した電源回路２１〜２６を異常電源回路とも称する。
【００５０】
ステップＳ７に示す処理の後に、ＦＰＧＡ７２ａは、後述する再設定処理を実行し（ステップＳ８）、再設定処理後のデータテーブルを第２記憶領域に記憶する（ステップＳ９）。ステップＳ９に示す処理の後に、ＦＰＧＡ７２ａは電源回路２１〜２６の異常を示す情報を外部装置９に送信し（ステップＳ１０）、その後ステップＳ１に示す処理を実行する。
【００５１】
ステップＳ２において、外部装置９から電源回路２１〜２６の異常を示す情報を受信したことに基づいて（ステップＳ２：ＹＥＳ）、ＦＰＧＡ７２ａは第２記憶領域からデータテーブルを取得する（ステップＳ１１）。ステップＳ１１に示す処理の後に、ＦＰＧＡ７２ａは、ステップＳ４に示す処理を実行する。
【００５２】
なおステップＳ３又はステップＳ１１は読出処理に対応し、ステップＳ４は設定処理に対応し、ステップＳ２は異常検出処理に対応し、ステップＳ８は再設定処理に対応する。
【００５３】
図８は、再設定処理を説明するフローチャートである。ステップＳ８において、ＦＰＧＡ７２ａは、異常電源回路の設定電圧に最も近い設定電圧を有する一又は複数の電源回路２１〜２６を検索する（ステップＳ２１）。異常電源回路は、上述したように、異常フラグを設定したいずれかの電源回路２１〜２６に対応する。また以下、検索された電源回路２１〜２６を検索電源回路とも称する。
【００５４】
例えば、表１において、第２電源回路２２に対して異常フラグが設定されていることに基づいて、ＦＰＧＡ７２ａは、第１電源回路２１及び第３電源回路２３を検索する。第２電源回路２２の設定電圧が２９Ｖであることから、これに最も近い電源回路は、設定電圧が３１Ｖである第１電源回路２１及び設定電圧が２７Ｖである第３電源回路２３である。すなわち、異常電源回路の設定電圧に最も近い設定電圧が２つあるケースでは、ＦＰＧＡ７２ａは２つの電源回路を検索する。一方、例えば、第１電源回路２１に対して異常フラグが設定されていることに基づいて、ＦＰＧＡ７２ａは、第１電源回路２１の設定電圧に最も近い設定電圧を有する第２電源回路２２を検索する。すなわち、異常電源回路の設定電圧に最も近い設定電圧が１つのみあるケースでは、ＦＰＧＡ７２ａは単数の電源回路を検索する。
【００５５】
ＦＰＧＡ７２ａは、異常フラグが設定された電源回路に対応するノズル数及び検索した電源回路に対応するノズル数の和を演算する（ステップＳ２２）。例えば、第２電源回路２２に対して異常フラグが設定されている場合、ＦＰＧＡ７２ａは、第２電源回路２２に対応するノズル数と、第１電源回路２１に対応するノズル数との和（後述する第１の和に相当）を演算する。さらに、第２電源回路２２は、その設定電圧が、第３電源回路２３の設定電圧にも近いため、第２電源回路２２に対応するノズル数と、第３電源回路２３に対応するノズル数との和（後述する第２の和に相当）を演算する。すなわち、異常電源回路の設定電圧に最も近い設定電圧が２つあるケースでは、ＦＰＧＡ７２ａはノズル数の和を複数演算する。一方、例えば、第１電源回路２１に対して異常フラグが設定されている場合、ＦＰＧＡ７２ａは、第１電源回路２１に対応するノズル数と、第２電源回路２２に対応するノズル数との和を演算する。すなわち、異常電源回路の設定電圧に最も近い設定電圧が１つのみあるケースでは、ＦＰＧＡ７２ａはノズル数の和を単数演算する。なお、ＦＰＧＡ７２ａは、電源回路２１〜２６に対応する、ノズル数の各割合の和を演算しても良い。
【００５６】
ＦＰＧＡ７２ａは、ノズル数の和が複数（本実施例においては二つ）存在するか否か判定する（ステップＳ２３）。ノズル数の和が複数存在すると判定したことに基づいて（ステップＳ２３：ＹＥＳ）、ＦＰＧＡ７２ａは、第１の和が閾値未満であるか否か判定する（ステップＳ２４）。第１の和は、異常電源回路の設定電圧と、異常電源回路よりも設定電圧が大きい検索電源回路の設定電圧との和である。なお閾値は不揮発性メモリ１１ｅに予め設定されており、例えば、ノズル全体の数１８０に占める割合に換算すると７２（割合にして４０％）である。
【００５７】
第１の和が閾値未満であると判定したことに基づいて（ステップＳ２４：ＹＥＳ）、ＦＰＧＡ７２ａは、第２の和が閾値（７２（割合にして４０％））未満であるか否か判定する（ステップＳ２５）。第２の和は、異常電源回路の設定電圧と、異常電源回路よりも設定電圧が小さい検索電源回路の設定電圧との和である。
【００５８】
第２の和が閾値未満でないと判定したことに基づいて（ステップＳ２５：ＮＯ）、ＦＰＧＡ７２ａは、設定を変更する電源回路を、異常電源回路よりも設定電圧が大きい検索電源回路に決定する（ステップＳ２７）。その後、ＦＰＧＡ７２ａは、異常電源回路のノズル数ａが、決定した検索電源回路のノズル数ｂよりも大きいか否か判定する（ステップＳ２８）。
【００５９】
異常電源回路のノズル数ａが、決定した検索電源回路のノズル数ｂよりも大きいと判定したことに基づいて（ステップＳ２８：ＹＥＳ）、ＦＰＧＡ７２ａは、ステップＳ２９に示す処理を実行する。ステップＳ２９において、ＦＰＧＡ７２ａは、決定した検索電源回路の設定電圧を、異常電源回路の設定電圧に変更する。その後、ＦＰＧＡ７２ａは、異常電源回路に対応した各ノズル１１ａの識別子を、決定した検索電源回路に対応付ける（ステップＳ３０）。
【００６０】
例えば、第１記憶領域に表１に示すデータテーブルが記憶され且つ異常電源回路が第２電源回路２２である場合、以下に示す表２のように、ＦＰＧＡ７２ａは、データテーブルを変更する。
【００６１】
【表２】
0006690368.tif 000003
【００６２】
表２において、太枠は異常電源回路に対応するデータを示す。第１電源回路２１の設定電圧は３１Ｖから２９Ｖに変更されている。また第２電源回路２２に対応した各ノズル１１ａの識別子は、第１電源回路２１に対応付けられている。例えば第１電源回路２１における識別子「ｃｈ１８０」の値は０から１に変更されている。なお、第１電源回路２１の「割合」について更新しなくてもいいが、表２においては便宜上１２％と記載している。この１２％は、第１記憶領域に記憶される第１電源回路２１に対応する割合（又はノズル数）の２％と、第１記憶領域に記憶される第２電源回路２２に対応する割合の１０％（又はノズル数）との和に等しい。
【００６３】
ＦＰＧＡ７２ａは、全ての異常電源回路に対して再設定処理を実行したか否か判定する（ステップＳ３１）。全ての異常電源回路に対して再設定処理を実行したと判定したことに基づいて（ステップＳ３１：ＹＥＳ）、ＦＰＧＡ７２ａは、ステップＳ９に示す処理を実行する。そしてステップＳ９において、ＦＰＧＡ７２ａは、変更したデータテーブルを第２記憶領域に記憶する。
【００６４】
全ての異常電源回路に対して再設定処理を実行していないと判定したことに基づいて（ステップＳ３１：ＮＯ）、ＦＰＧＡ７２ａはステップＳ２１に示す処理を実行する。なお再設定処理を繰り返す場合（ステップＳ３１：ＮＯ）、ＦＰＧＡ７２ａは、設定電圧の変更又は識別子の対応付けを行った異常電源回路を無視する。一方でＦＰＧＡ７２ａは、設定電圧の変更又は識別子の対応付けを行っていない他の異常電源回路について、再設定処理を実行する。
【００６５】
ステップＳ２５において、第２の和が閾値未満であると判定したことに基づいて（ステップＳ２５：ＹＥＳ）、ＦＰＧＡ７２ａは、第１の和が第２の和よりも小さいか否か判定する（ステップＳ２６）。
【００６６】
第１の和が第２の和よりも小さいと判定したことに基づいて（ステップＳ２６：ＹＥＳ）、ＦＰＧＡ７２ａは、ステップＳ２７に示す処理を実行する。ステップＳ２７において、ＦＰＧＡ７２ａは、設定を変更する電源回路を、異常電源回路よりも設定電圧が大きい検索電源回路に決定する。その後、ＦＰＧＡ７２ａは、異常電源回路のノズル数ａが、決定した検索電源回路のノズル数ｂよりも大きいか否か判定する（ステップＳ２８）。
【００６７】
異常電源回路のノズル数ａが、決定した検索電源回路のノズル数ｂよりも大きくないと判定したことに基づいて（ステップＳ２８：ＮＯ）、ＦＰＧＡ７２ａは、ステップＳ３２に示す処理を実行する。ステップＳ３２において、ＦＰＧＡ７２ａは、決定した検索電源回路の設定電圧を維持する。その後、ＦＰＧＡ７２ａは、異常電源回路に対応した各ノズル１１ａの識別子を、決定した検索電源回路に対応付ける（ステップＳ３０）。
【００６８】
例えば、第１記憶領域に、初期値として、以下の表３に示すデータテーブルが記憶され且つ異常電源回路が第２電源回路２２である場合、以下の表４のように、ＦＰＧＡ７２ａは、データテーブルを変更する。この場合、決定した検索電源回路（設定を変更する電源回路）は第１電源回路２１である。
【００６９】
【表３】
0006690368.tif 000004
【００７０】
【表４】
0006690368.tif 000005
【００７１】
表４において、太枠は異常電源回路に対応するデータを示す。第１電源回路２１の設定電圧は維持されている。また、第２電源回路２２に対応した各ノズル１１ａの識別子は第１電源回路２６に対応付けられている。また、第１電源回路２１における識別子「ｃｈ１８０」の値は０から１に変更されている。なお、第１電源回路２１の「割合」について更新しなくてもいいが、表４においては便宜上２５％と記載している。この２５％は、第１記憶領域に記憶される第１電源回路２１に対応する割合（又はノズル数）の１５％と、第１記憶領域に記憶される第２電源回路２２に対応する割合の１０％（又はノズル数）との和に等しい。
【００７２】
ステップＳ２６において、第１の和が第２の和よりも小さくないと判定したことに基づいて（ステップＳ２６：ＮＯ）、ＦＰＧＡ７２ａは、ステップＳ３４に示す処理を実行する。ステップＳ３４において、ＦＰＧＡ３２ａは、設定を変更する電源回路を、異常電源回路よりも設定電圧が小さい検索電源回路に決定する。例えば、第１記憶領域に、以下の表５のデータテーブルが記憶され、異常電源回路が第４電源回路２４である場合、ＦＰＧＡ７２ａは第５電源回路２５を検索電源回路（設定を変更する電源回路）に決定する。
【００７３】
【表５】
0006690368.tif 000006
【００７４】
ＦＰＧＡ７２ａは、異常電源回路のノズル数ａが、決定した検索電源回路のノズル数ｃよりも大きいか否か判定する（ステップＳ３５）。異常電源回路のノズル数ａが、決定した検索電源回路のノズル数ｃよりも大きいと判定したことに基づいて（ステップＳ３５：ＹＥＳ）、ＦＰＧＡ７２ａは、ステップＳ２９に示す処理を実行する。ステップＳ２９において、ＦＰＧＡ７２ａは、決定した検索電源回路の設定電圧を、異常電源回路の設定電圧に変更する（ステップＳ２９）。その後、ＦＰＧＡ７２ａは、異常電源回路に対応した各ノズル１１ａの識別子を、決定した検索電源回路に対応付ける（ステップＳ３０）。
【００７５】
例えば、第１記憶領域に、上記表５に示すデータテーブルが記憶され且つ異常電源回路が第４電源回路２４である場合、以下の表６のように、ＦＰＧＡ７２ａは、データテーブルを変更する。
【００７６】
【表６】
0006690368.tif 000007
【００７７】
表６において、太枠は異常電源回路に対応するデータを示す。第５電源回路２５の設定電圧は２３Ｖから２５Ｖ（異常電源回路の設定電圧）に変更されている。また第４電源回路２４に対応した各ノズル１１ａの識別子は、第５電源回路２６に対応付けられている。また、例えば第５電源回路２６における識別子「ｃｈ１」の値は０から１に変更されている。なお、第５電源回路２５の「割合」について更新しなくてもいいが、表６においては便宜上３８％と記載している。この３８％は、第１記憶領域に記憶される第４電源回路２４に対応する割合（又はノズル数）の２３％と、第１記憶領域に記憶される第５電源回路２５に対応する割合の１５％（又はノズル数）との和に等しい。
【００７８】
ステップＳ２６において、第１の和が第２の和よりも小さくなく（ステップＳ２６：ＮＯ）且つステップＳ３５において、異常電源回路のノズル数ａが、決定した検索電源回路のノズル数ｃよりも大きくないと判定したことに基づいて（ステップＳ３５：ＮＯ）、ＦＰＧＡ７２ａは、ステップＳ３２に示す処理を実行する。ステップＳ３２において、ＦＰＧＡ７２ａは、決定した検索電源回路の設定電圧を維持（ステップＳ３２）する。その後、ＦＰＧＡ７２ａｈａ、異常電源回路に対応した各ノズル１１ａの識別子を、決定した検索電源回路に対応付ける（ステップＳ３０）。
【００７９】
例えば、第１記憶領域に、初期値として、以下の表７に示すデータテーブルが記憶され且つ異常電源回路が第２電源回路２２である場合、以下の表８のように、ＦＰＧＡ７２ａは、データテーブルを変更する。この場合、ＦＰＧＡ７２ａが決定した検索電源回路（設定を変更する電源回路）は第３電源回路２３である。
【００８０】
【表７】
0006690368.tif 000008
【００８１】
【表８】
0006690368.tif 000009
【００８２】
表８において、太枠は異常電源回路に対応するデータを示す。第３電源回路２３の設定電圧は維持されている。また、第２電源回路２２に対応した各ノズル１１ａの識別子は第３電源回路２６に対応付けられている。また、第３電源回路２３における識別子「ｃｈ１８０」の値は０から１に変更されている。なお、第３電源回路２３の「割合」について更新しなくてもいいが、表８においては便宜上２５％と記載している。この２５％は、第１記憶領域に記憶される第２電源回路２２に対応する割合（又はノズル数）の１０％と、第１記憶領域に記憶される第３電源回路２３に対応する割合の１５％（又はノズル数）との和に等しい。
【００８３】
ステップＳ２４において、第１の和が閾値未満でないと判定したことに基づいて（ステップＳ２４：ＮＯ）、ＦＰＧＡ７２ａは、ステップＳ３３に示す処理を実行する。ステップＳ３３において、ＦＰＧＡ７２ａは、第２の和が閾値未満であるか否か判定する。第２の和は、異常電源回路の設定電圧と、異常電源回路よりも設定電圧が小さい検索電源回路の設定電圧との和である。
【００８４】
第２の和が閾値未満であると判定したことに基づいて（ステップＳ３３：ＹＥＳ）、ＦＰＧＡ７２ａは、ステップＳ３４に示す処理を実行する。ステップＳ３４において、ＦＰＧＡ７２ａは、設定を変更する電源回路を、異常電源回路よりも設定電圧が小さい検索電源回路に決定する。例えば、第１記憶領域に、前記表１のデータテーブルが記憶され、異常電源回路が第５電源回路２５である場合、ＦＰＧＡ７２ａは第６電源回路２６を検索電源回路に決定する。
【００８５】
ＦＰＧＡ７２ａは、異常電源回路のノズル数ａが、決定した検索電源回路のノズル数ｃよりも大きいか否か判定する（ステップＳ３５）。異常電源回路のノズル数ａが、決定した検索電源回路のノズル数ｃよりも大きいと判定したことに基づいて（ステップＳ３５：ＹＥＳ）、ステップＳ２９に示す処理を実行する。ステップＳ２９において、ＦＰＧＡ７２ａは、決定した検索電源回路の設定電圧を、異常電源回路の設定電圧に変更する。その後、ＦＰＧＡ７２ａは、異常電源回路に対応した各ノズル１１ａの識別子を、決定した検索電源回路に対応付ける（ステップＳ３０）。
【００８６】
例えば、第１記憶領域に、上記表１に示すデータテーブルが記憶され且つ異常電源回路が第５電源回路２５である場合、以下の表９のように、ＦＰＧＡ７２ａは、データテーブルを変更する。
【００８７】
【表９】
0006690368.tif 000010
【００８８】
表９において、太枠は異常電源回路に対応するデータを示す。第６電源回路２６の設定電圧は２１Ｖから２３Ｖ（異常電源回路の設定電圧）に変更されている。また第５電源回路２５に対応した各ノズル１１ａの識別子は、第６電源回路２６に対応付けられている。なお、第６電源回路２６の「割合」について更新しなくてもいいが、表９においては便宜上２３％と記載している。この２３％は、第１記憶領域に記憶される第５電源回路２５に対応する割合（又はノズル数）の２０％と、第１記憶領域に記憶される第６電源回路２６に対応する割合の３％（又はノズル数）との和に等しい。
【００８９】
ステップＳ２３において、ノズル数（又は割合）の和が複数存在しないと判定したことに基づいて（ステップＳ２３：ＮＯ）、ＦＰＧＡ７２ａは、ステップＳ３６に示す処理を実行する。なお、ノズル数（又は割合）の和が複数存在しない際は、ノズル数（又は割合）の和が単数存在する場合である。ステップＳ３６において、ＦＰＧＡ７２ａは、ノズル数（又は割合）の和が閾値未満であるか否か判定する。例えば、前記表１において、第１電源回路２１又は第６電源回路２６が異常電源回路である場合、ノズル数（又は割合）の和は単数のみ存在する。なお第１電源回路２１が異常電源回路である場合、第２電源回路２２が検索電源回路である。また、第６電源回路２６が異常電源回路である場合、第５電源回路２５が検索電源回路である。
【００９０】
ノズル数（又は割合）の和が閾値未満であると判定したことに基づいて（ステップＳ３６：ＹＥＳ）、ＦＰＧＡ７２ａは、検索電源回路を、設定を変更する電源回路に決定する（ステップＳ３７）。ＦＰＧＡ７２ａは、異常電源回路のノズル数ａが、決定した検索電源回路のノズル数ｄよりも大きいか否か判定する（ステップＳ３８）。
【００９１】
異常電源回路のノズル数（又は割合）ａが、決定した検索電源回路のノズル数ｄ（又は割合）よりも大きいと判定したことに基づいて（ステップＳ３８：ＹＥＳ）、ＦＰＧＡ７２ａは、ステップＳ２９に示す処理を実行する。異常電源回路のノズル数ａが、決定した検索電源回路のノズル数ｄよりも大きくないと判定したことに基づいて（ステップＳ３８：ＮＯ）、ＦＰＧＡ７２ａは、ステップＳ３２に示す処理を実行する。
【００９２】
ステップＳ３３において、第２の和が閾値未満でないと判定したことに基づいて（ステップＳ３３：ＮＯ）、又はステップＳ３６において、ノズル数（又は割合）の和が閾値未満でないと判定したことに基づいて（ステップＳ３６：ＮＯ）、ＦＰＧＡ７２ａは、ステップＳ３９に示す処理を実行する。ステップＳ３９において、ＦＰＧＡ７２ａは、最少ノズル数の電源回路を検索する。その後、ＦＰＧＡ７２ａは、最少ノズル数の電源回路の設定電圧と異常電源回路の設定電圧とを入れ替え、且つ異常電源回路に対応する各ノズル１１ａの識別子と最少ノズル数の電源回路に対応する各ノズル１１ａの識別子とを入れ替える（ステップＳ４０）。そしてＦＰＧＡ７２ａはステップＳ２１に示す処理を実行する。
【００９３】
例えば、第１記憶領域に、上記表１に示すデータテーブルが記憶され且つ異常電源回路が第４電源回路２４である場合、以下の表１０のように、ＦＰＧＡ７２ａは、データテーブルを変更する。
【００９４】
【表１０】
0006690368.tif 000011
【００９５】
表１０において、太枠は異常電源回路に対応するデータを示す。第４電源回路２４の設定電圧（２５Ｖ）と、第１電源回路２１の設定電圧（３１Ｖ）とは入れ替わっている。また第４電源回路２４に対応した各ノズル１１ａの識別子と、第１電源回路２１に対応した各ノズル１１ａの識別子とは入れ替わっている。例えば、１個目のノズル１１ａに対応する「ｃｈ１」の識別子については、表１０において、第４電源回路２４については「０」であり、第１電源回路２１についてが「１」となっている。なお、第１電源回路２１及び第４電源回路２４の「割合」について更新しなくてもいいが、表１０においては便宜上それぞれ、３５％と、２％と記載している。この３５％は、第１記憶領域に記憶される第４電源回路２４に対応する割合（又はノズル数）の３５％である。この２％は、第１記憶領域に記憶される第１電源回路２１に対応する割合の２％（又はノズル数）である。
【００９６】
上記表１０の状態で、ＦＰＧＡ７２ａは、ステップＳ２１に示す処理を実行した結果、下記表１１に示すようにデータテーブルは変更される。
【００９７】
【表１１】
0006690368.tif 000012
【００９８】
表１１において直接図示はされていないが、表１０に示すデータテーブルの第４電源回路２４に対応した各ノズル１１ａの識別子が、第２電源回路２２に対応付けられることになる。なお、第２電源回路２２の「割合」について更新しなくてもいいが、表１１においては便宜上１２％と記載している。この１２％は、表１０が示す第２記憶領域に記憶される第２電源回路２２に対応する割合（又はノズル数）の１０％と、表１０が示す第２記憶領域に記憶される第４電源回路２２に対応する割合の２％（又はノズル数）との和に等しい。
【００９９】
実施の形態１に係る印刷装置は、異常が検出された電源回路２１〜２６に対応するノズル１１ａの識別子に対し、異常が生じていない電源回路２１〜２６を設定する。そのため、電源回路２１〜２６が故障した場合においても、圧電体１１ｂ、１１ｂ′（駆動素子）を継続して駆動させることができる。
【０１００】
また上記の印刷装置は、異常が検出された電源回路２１〜２６に最も近い電圧を有し且つ異常が未検出の（正常な）電源回路２１〜２６に、異常が検出された電源回路２１〜２６の識別子を割り当てる。これにより、圧電体１１ｂ、１１ｂ′の継続的な駆動を実現する。
【０１０１】
また上記の印刷装置は、異常が検出された電源回路２１〜２６の電圧に最も近い電圧を有する正常な電源回路２１〜２６が複数存在する場合、ノズル数（駆動素子数）が最少の正常な電源回路２１〜２６に、異常が検出された電源回路２１〜２６に対応する識別子を設定する。これにより、圧電体１１ｂ、１１ｂ′の継続的な駆動を実現する。
【０１０２】
また上記の印刷装置は、異常が検出された電源回路２１〜２６の電圧に最も近い電圧を有する正常な電源回路２１〜２６のノズル数と、異常回路の駆動素子数との合計が閾値未満でない場合、異常が検出された電源回路２１〜２６の識別子及び電圧を、最少ノズル数（最少駆動素子数）を有する正常な電源回路２１〜２６の識別子及び電圧と入れ替える。そして上記の印刷装置は、再度、異常が検出された電源回路２１〜２６の電圧に最も近い電圧を有する正常な電源回路２１〜２６を探索する。
【０１０３】
また制御装置７はＦＰＧＡ７２ａを備える。ＦＰＧＡ７２ａのロジック回路を構成する為のビットストリーム情報は、例えばメモリ１１ｅに記憶される。ビットストリーム情報は、異常が検出された電源回路２１〜２６に対応するノズル１１ａの識別子に対し、異常が生じていない電源回路２１〜２６を設定する処理を実現するロジック回路を構成する為の情報を含む。
【０１０４】
本実施例においては、制御装置７は、異常が検出された電源回路２１〜２６に対応するノズル１１ａの識別子に対し、異常が生じていない電源回路２１〜２６を設定する処理を実行する専用ハードウェア、例えばＡＳＩＣ７２１によっても構成され得る。
【０１０５】
（実施の形態２）
以下実施の形態２に係る印刷装置を図面に基づいて説明する。ＦＰＧＡ７２ａは、上述した電圧設定処理において、複数の異常電源回路を検出した場合、上述した再設定処理に代えて、以下に説明する第２設定処理を実行してもよい。図９は、第２再設定処理を説明するフローチャートである。
【０１０６】
以下二つの異常電源回路を検出した場合について説明する。二つの異常電源回路はそれぞれ第１異常電源回路及び第２異常電源回路と称する。また第１異常電源回路の設定電圧を第１設定電圧Ｖ１と称し、識別子を第１識別子Ｓ１と称する。また第２異常電源回路の設定電圧を第２設定電圧Ｖ２と称し、識別子を第２識別子Ｓ２と称する。また最少ノズル数を有する電源回路（以下最少ノズル数電源回路）の設定電圧をＶｍと称し、最少ノズル数の次にノズル数の少ない電源回路（以下次点ノズル数電源回路という）の設定電圧をＶｎと称する。
【０１０７】
ＦＰＧＡ７２ａは、最少ノズル数を有する電源回路を検索し（ステップＳ５１）、次点ノズル数電源回路を検索する（ステップＳ５２）。ＦＰＧＡ７２ａは、Ｖ１とＶｍの差分Ａ及びＶ１とＶｎの差分Ｂを演算し（ステップＳ５３）、差分Ａが差分Ｂよりも小さいか否かを判定する（ステップＳ５４）。
【０１０８】
差分Ａが差分Ｂよりも小さいと判定したことに基づいて（ステップＳ５４：ＹＥＳ）、ＦＰＧＡ７２ａは、ステップＳ５５に示す処理を実行する。差分Ａが差分Ｂよりも小さい場合は、第１設定電圧Ｖ１がＶｎよりもＶｍに近い場合であることに対応する。ステップＳ５５において、ＦＰＧＡ７２ａは、第１設定電圧Ｖ１を、最少ノズル数電源回路に設定する。その後、ＦＰＧＡ７２ａは、第１識別子Ｓ１を、最少ノズル数電源回路に対応付ける（ステップＳ５６）。さらに、ＦＰＧＡ７２ａは、第２設定電圧Ｖ２を、次点ノズル数電源回路に設定する。（ステップＳ５７）。またさらにＦＰＧＡ７２ａは、第２識別子Ｓ２を、次点ノズル数電源回路に対応付ける（ステップＳ５８）。
【０１０９】
ＦＰＧＡ７２ａは、最少ノズル数電源回路及び次点ノズル数電源回路の識別子を、設定電圧が最も近い他の電源回路に割り当て可能であるか否かを判定する（ステップＳ５９）。前記他の電源回路に割り当て可能であると判定したことに基づいて（ステップＳ５９：ＹＥＳ）、ＦＰＧＡ７２ａは、最少ノズル数電源回路及び次点ノズル数電源回路の識別子を前記他の電源回路に対応付ける（ステップＳ６０）。その後ＦＰＧＡ７２ａは、ステップＳ９に示す処理を実行する。前記他の電源回路に割り当て可能でないと判定した場合（ステップＳ５９：ＮＯ）、ＦＰＧＡ７２ａはステップＳ９に示す処理を実行する。
【０１１０】
差分Ａが差分Ｂよりも小さくないと判定したことに基づいて（ステップＳ５４：ＮＯ）、ＦＰＧＡ７２ａは、ステップＳ６１に示す処理を実行する。差分Ａが差分Ｂよりも小さくない場合は、第１設定電圧Ｖ１がＶｍよりもＶｎに近い場合であることに対応する。ステップＳ６１において、ＦＰＧＡ７２ａは、第１設定電圧Ｖ１を、次点ノズル数電源回路に設定する。その後、ＦＰＧＡ７２ａは、第１識別子Ｓ１を、次点ノズル数電源回路に対応付ける（ステップＳ６２）。さらに、ＦＰＧＡ７２ａ、第２設定電圧Ｖ２を、最少ノズル数電源回路に設定する（ステップＳ６３）。またさらにＦＰＧＡ７２ａは、第２識別子Ｓ２を、最少ノズル数電源回路に対応付け（ステップＳ６４）、ステップＳ５９に示す処理を実行する。
【０１１１】
例えば、例えば、第１記憶領域に表１に示すデータテーブルが記憶され且つ第１異常電源回路が第２電源回路２２であり、第２異常電源回路が第４電源回路である場合、以下に示す表１２のように、データテーブルは変更される。
【０１１２】
【表１２】
0006690368.tif 000013
【０１１３】
表１２において、太枠は異常電源回路に対応するデータを示す。最少ノズル数電源回路は第１電源回路２１であり、次点ノズル数電源回路は第６電源回路２６である。第２電源回路２２の設定電圧は、第６電源回路２６の設定電圧よりも第１電源回路２１の設定電圧に近いので、第１電源回路２１の設定電圧は、第２電源回路２２の設定電圧に変更されている。
【０１１４】
第４電源回路２４の設定電圧は、第１電源回路２１の設定電圧よりも第６電源回路２６の設定電圧に近いので、第６電源回路２６の設定電圧は、第４電源回路２４の設定電圧に変更されている。
【０１１５】
第２電源回路２２は異常電源回路なので、第１電源回路２１の識別子を、設定電圧が最も近い第２電源回路２２に対応させることはできない。そのため、第１電源回路２１の識別子は他の電源回路に対応付けられていない。
【０１１６】
一方、第５電源回路２５は異常電源回路ではないので、第６電源回路２６の識別子を第５電源回路２５に対応付けることができる。そのため、第６電源回路２６の識別子は第５電源回路２５に対応付けられている。なお、第１電源回路２１、第５電源回路２５及び第６電眼回路２６の「割合」について更新しなくてもいいが、表１２においては、それぞれ便宜上１２％、２３％及び３５％と記載している。この１２％は、第１記憶領域に記憶される第１電源回路２１に対応する割合（又はノズル数）の２％と、第２電源回路２２に対応する割合（又はノズル数）の１０％との和に等しい。前記２３％は、第１記憶領域に記憶される第５電源回路２５に対応する割合（又はノズル数）の２０％と、第６電源回路２６に対応する割合（又はノズル数）の３％との和に等しい。前記３５％は、第１記憶領域に記憶される第４電源回路２４に対応する割合（又はノズル数）の３５％に等しい。
【０１１７】
実施の形態２にあっては、最少ノズル数又は最少ノズル数の次に少ないノズル数を有する正常な電源回路２１〜２６に、異常が検出された電源回路２１〜２６の識別子を設定し、ノズル１１ａの継続的な駆動を実現する。
【０１１８】
なお上記実施の形態において、ＦＰＧＡ７２ａに代えて、ＡＳＩＣ７２１を用いても良い。図１０は、ＡＳＩＣ７２１の構成を示す機能ブロック図である。ＡＳＩＣ７２１は、読出部７２１ａと、設定部７２１ｂと、異常検出部７２１ｃと、再設定部７２１ｄと、メモリインタフェース７２１ｅと、電源インタフェース７２１ｆとを備える。読出部７２１ａは、電源回路に対応した識別子及び各識別子に対応した各電圧を不揮発性メモリ１１ｅから読み出す。設定部７２１ｂは、該読出部７２１ａにて読み出した各電圧に基づいて、複数の電源回路２１〜２６のいずれかを、各識別子に対して設定する。異常検出部７２１ｃは、該設定部７２１ｂにて設定したそれぞれの前記電源回路に異常が発生しているか否か検出する。再設定部７２１ｄは、該異常検出部７２１ｃにて前記電源回路のいずれかに異常を検出したことに基づいて、前記各識別子に対し、異常が未検出の前記電源回路のいずれかを設定する。メモリインタフェース７２１ｅは、メモリとの通信を行う。電源インタフェース７２１ｆは、複数の電源回路２１〜２６との通信を行う。ＡＳＩＣ７２１は、上述した電圧設定処理、再設定処理及び第２再設定処理を実行する。なおＦＰＧＡに代えて、上述した電圧設定処理、再設定処理及び第２再設定処理を示すプログラムを、ＣＰＵ等のプロセッサに実行させてもよい。
【０１１９】
今回開示した実施の形態は、全ての点で例示であって、制限的なものではないと考えられるべきである。各実施例にて記載されている技術的特徴は互いに組み合わせることができ、本実施例の範囲は、特許請求の範囲内での全ての変更及び特許請求の範囲と均等の範囲が含まれることが意図される。
【符号の説明】
【０１２０】
１  印刷装置
７  制御装置
７１  第１基板
７２  第２基板
７２ａ  ＦＰＧＡ（制御回路）
７２ｂ  メモリインタフェース
７２ｃ  電源インタフェース
７２ｄ  受信インタフェース
１１  ヘッドユニット
１１ａ  ノズル
１１ｂ、１１ｂ′  圧電体（駆動素子）
１１ｅ  不揮発性メモリ（メモリ）
【図１】
0006690368.tif 000014
【図２】
0006690368.tif 000015
【図３】
0006690368.tif 000016
【図４】
0006690368.tif 000017
【図５】
0006690368.tif 000018
【図６】
0006690368.tif 000019
【図７】
0006690368.tif 000020
【図８】
0006690368.tif 000021
【図９】
0006690368.tif 000022
【図１０】
0006690368.tif 000023