(第1実施形態)
以下に図面を参照して、本発明の好適な実施形態を例示的に説明する。ただし、本発明については、その趣旨を逸脱しない範囲で、当業者の通常の知識に基づいて、以下に記載する実施形態に対して適宜変更、改良が加えられたものについても本発明の範囲に入ることが理解されるべきである。
図1を用いて、本実施形態に係る通信装置について説明する。通信装置として、本実施形態ではプリンタ(印刷装置)を例示しているが、これに限定されず、後述の情報処理装置と接続を行うことが可能な装置であれば、種々のものを適用可能である。例えば、プリンタであれば、インクジェットプリンタ、フルカラーレーザービームプリンタ、モノクロプリンタ等に適用することができる。またプリンタのみならず複写機やファクシミリ装置、携帯端末、スマートホン、PC(パーソナルコンピュータ)、タブレット端末、PDA(Personal Digital Assistant)、デジタルカメラ、スマートスピーカ等にも適用可能である。なお、スマートスピーカとは、ユーザが発する音声に従って、同一のネットワークに存在する機器に対して処理を指示したり、ユーザが発する音声に対応して、ネットワークを介して取得した情報をユーザに通知したりするための装置である。その他、複写機能、FAX機能、印刷機能を備える複合機にも適用可能である。また、情報処理装置として、本実施形態ではPCを例示しているが、これに限定されず、携帯端末、スマートホン、タブレット端末、PDA、デジタルカメラ等、種々のものを適用可能である。
まず、本発明の通信装置の構成について図1のブロック図を参照して説明する。また、本実施形態では以下の構成を例に記載するが、本実施形態は情報処理装置と接続を行うことが可能な通信装置に関して適用可能なものであり、特にこの図のとおりに機能を限定するものではない。
CPU101は、システム制御部であり、通信装置100の全体を制御する。
ROM102は、CPU101が実行する制御プログラムやデータテーブル、組み込みオペレーティングシステム(OS)プログラム等の固定データを格納する。本発明では、ROM102に格納されている各制御プログラムは、ROM102に格納されている組み込みOSプログラムの管理下で、スケジューリングやタスクスイッチ、割り込み処理等のソフトウェア実行制御等を行う。
RAM103は、バックアップ電源を必要とするSRAM(Static Random Access Memory)等で構成され、図示しないデータバックアップ用の1次電池によってデータが保持されている。RAM103は、プログラム制御変数等を格納する。また、RAM103には、無線LAN設定などユーザが登録した設定値や通信装置100の管理データ、電源投入後の最初の通信装置100の設定時(以下、初期設定時)か否かを示す情報等を格納するメモリエリアも設けられている。なお、初期設定時とは言い換えれば、通信装置100が後述の初期設定時クリーニング処理を一度も実行していない初期設定状態である時である。
画像メモリ104は、DRAM(Dynamic Random Access Memory)等で構成され、画像データを蓄積する。また、画像メモリ104には、一部の領域がソフトウェア処理の実行のためのワークエリアとして確保されている。
データ変換部105は、ページ記述言語(PDL:Page DescriptionLanguage)等の解析や、キャラクタデータのCG(Computer Graphics)展開等、画像データの生成を行う。また、データ変換部105は、情報処理装置200から受信した圧縮済みの画像データを伸長する処理を行っても良い。
読取部107は、CISイメージセンサ等によって原稿を光学的に読み取る。
読取制御部106は、読取部107が読み取った画像を電気的な画像データに変換し、図示しない画像処理制御部を介して、2値化処理や中間調処理等の各種画像処理を施し、高精細な画像データを出力する。なお、読取制御部106、読取部107は、下記の2つの方式のどちらの制御方式を利用してもよい。第1の方式は、原稿を搬送しながら、固定されているCISイメージセンサで読み取りを行うシート読取制御方式である。また、第2の方式は、原稿台に固定されている原稿を、移動するCISイメージセンサでスキャンするブック読取制御方式である。
表示操作部108は、数値入力キー、モード設定キー、決定キー、取り消しキー等のキーと、LED(発光ダイオード)やLCD(液晶ディスプレイ)などから構成される。本実施形態では、情報を表示するための表示部はLEDによるセグメントディスプレイで構成されており、ユーザからの操作を受け付けるキーは物理ボタンで構成されているものとする。通信装置100は、表示操作部108を介してユーザによって操作されることで、通信装置100の各種機能の起動や各種設定を行うことができる。なお、表示操作部108は、LEDやLCDで構成される表示部がない構成としても良い。また、本実施形態のように、LEDで構成される表示部はあるが、LCDで構成される表示部がない構成としても良い。
FAX通信制御部109は、電話回線に接続し、図示しないFAX機との間でFAX画像の送受信を行う。
解像度変換処理部110は、ミリ系の画像データとインチ系の画像データの相互変換や拡大縮小処理等の解像度変換制御を行う。
符号復号化処理部111は、通信装置100で扱う画像データ(非圧縮、MH、MR、MMR、JBIG、JPEG等)の符号復号化処理や、拡大縮小処理を行う。記録制御部112は、印刷される画像データに対し、図示しない画像処理制御部を介して、スムージング処理や記録濃度補正処理、色補正等の各種画像処理を施すことにより、高精細な画像データに変換し、記録部113に出力する。
記録部113は、レーザビームプリンタやインクジェットプリンタ等からなる記録部であり、記録制御部112で生成したカラー画像データ、またはモノクロ画像データに基づき、記録媒体上に記録剤を付加することによって画像を印刷する。なお、使用される記録媒体は紙に限定されず、フィルム等の種々の媒体が利用されて良い。また、使用される記録媒体のサイズや形状も特に限定されない。また、使用される記録剤は、インク、トナー等である。
なお、本実施形態では、通信装置100は、インクジェットプリンタであるものとし、記録部113は、記録媒体上にインクを吐出するための記録ヘッド及び、記録ヘッドに供給されるインクを保持するインクタンクを含むものとする。また、記録部113は、記録ヘッドとインクタンクとが一体型に形成されているインクカートリッジを用いる形態であるものとし、記録部113は、インクカートリッジが着脱され、印刷時に記録媒体上を走査するキャリッジを含むものとする。通信装置100は、キャリッジにインクカートリッジが取り付けられているか否かを、不図示のカートリッジセンサ(検知部)によって検知することができる。なお、記録ヘッドとインクタンクとが別体として形成されており、記録ヘッドとインクタンクとが、記録部113内のそれぞれ異なる取り付け部に取り付けられる形態であっても良い。
なお、通信装置100には、通信装置100の開口部を覆うカバーが備えられている。カバーは、通信装置100の開口部を開放する開放位置と、通信装置100の開口部を覆う閉じ位置との間で回動ないし移動可能である。カバーが開放位置に位置することで、ユーザは、通信装置100の開口部から通信装置100の内部を視認して、インクカートリッジを記録部113に取り付けることができる。通信装置100は、カバーが閉じ位置に位置するか否かを検知するための不図示のカバーセンサを有している。そして通信装置100は、カバーセンサによりカバーが閉じ位置から移動したことを検知した場合、キャリッジを待機位置から開口部の位置(カートリッジ取り付け位置)まで移動させる。そして、ユーザは、キャリッジにインクカートリッジを取り付ける。その後通信装置100は、センサによりカバーが閉じ位置に戻ったことを検知した場合、キャリッジをカートリッジ取り付け位置から待機位置まで移動させる。
USBファンクション制御部114は、USBインターフェースの接続制御を行うものであり、USB接続規格に従って、プロトコル制御を行う。具体的には、USBファンクション制御部114は、CPU101が実行するUSBファンクション制御タスクからのデータをパケットに変換し、情報処理装置200にUSBパケット送信を行う。さらに、USBファンクション制御部114は、外部のPCからのUSBパケットをデータに変換してCPU101に対し送信を行う。さらに、USBファンクション制御部114は、通信装置100が情報処理装置200とUSBで接続されたことを検知する。USBホスト制御部115は、USB接続規格で定められたプロトコルで接続を行う為の制御部である。USB接続規格は、双方向のデータ接続を高速に行うことが出来る規格であり、該規格を利用することで、1台のホスト(マスター)に対し、複数台のハブまたはファンクション(スレーブ)を接続することが出来る。USBホスト制御部115は、USB接続におけるホストの機能を有する。
WLANユニット116は、無線接続によってネットワーク(TCP/IPに従った接続が可能なネットワーク)上の端末と接続する。WLANユニット116は、アクセスポイント(以下、APという。)118や情報処理装置200とWLAN接続を行うためのユニットであり、例えばIEEE802.11シリーズに準拠したWireless LAN(以後、WLANという。)システムにおけるデータ(パケット)接続が可能である。
通信装置100は、通信モードを設定することによって、該通信モードに応じた接続形態によってWLANユニット116を介して通信可能に動作する。すなわち、本実施形態では、通信装置100は、設定された通信モードに応じた接続形態による通信を、WLANによって実行するものとする。通信装置100には、例えば、接続設定モード、Wi-Fi Direct(登録商標)(以後、WFDという。)モード、ソフトAPモード、インフラストラクチャーモード(以後、インフラモードという。)、アドホックモードなどの通信モードが設定される。
接続設定モードは、通信装置100に通信モードを設定する際に利用されるモードである。通信装置100に通信モードを設定する処理とは、言い換えれば、通信装置100と、通信装置100の外部の装置とを接続させるための接続設定処理である。すなわち、通信装置100は、設定された通信モードに応じた接続形態で、通信装置100の外部の装置と接続する。通信装置100は、接続設定モードで動作する場合、ソフトウェアの設定によりAP118を有効にする有効化処理を行う。なおAP118は、接続設定モード時のみ有効にされるAPであり、いうなれば、接続設定モード専用のAPである。AP118が有効化されると、通信装置100は定期的にAP118のSSID等を含むビーコン信号(パケット)を送出する。このため、通信装置100と通信可能な情報処理装置は、AP探索を行うことによりAP118を検出することができる。AP118のSSIDは予め決められた規則に沿った形式で構成されており、情報処理装置は、該規則を認識することで通信装置100を特定可能となる。情報処理装置は、AP118を特定することで、AP118を介してピアツーピア(以後、P2Pという。)で通信装置100と通信する。なお、P2Pによる通信は、通信装置100の外部且つ情報処理装置の外部の装置(例えば、無線LANルータのAP等)を介さずに、情報処理装置と直接通信する形態を指す。該規則としては、例えば通信装置100の機種や当該機種を含むシリーズを特定する情報、通信装置100のMACアドレス、メーカー名などが利用される。このSSIDは、ROM102などに予め記憶されている。通信装置100は、接続設定モードとなることで、通信装置100周辺のネットワーク状況に応じた通信モードを自身に設定することができる。例えば、通信モードの設定は、設定情報を情報処理装置から受信する受信処理を実行することで行われる。設定情報は例えば、後述するAP情報や、通信装置100に設定される通信モードに関する情報である。この処理はケーブルレスで行うことが可能なため、接続設定モードはケーブルレスセットアップモードと呼ばれることもある。
WFDモードは、WFDの規格に基づいた無線接続を行うモードである。通信装置100がWFDモードで動作している場合、通信装置100は、情報処理装置とP2Pの接続方式で直接無線接続を行う。このとき、どちらの装置内のAPを介して接続するかはGroup Owner Negotiationによって決まる。なお、WFDモードの通信装置100は、Group Owner Negotiationを実行せずに、必ず通信装置100内のAPを介して情報処理装置と接続しても良い。情報処理装置200は、WFDモードを通信装置100に設定する場合、WFDモードを示す設定情報を接続設定モードで動作する通信装置100に送信する。
ソフトAPモードは、通信装置100内のAPを介して、情報処理装置とP2Pで直接無線接続を行うためのモードである。なお、このとき有効にされるAPは、接続設定モード時に有効にされるAPやWFDモード時に有効にされるAPと異なるAPであるものとする。すなわち、接続設定モード時に有効にされるAPと、WFDモード時に有効にされるAPと、ソフトAPモード時に有効にされるAPは、それぞれSSIDやパスワードが異なるものとする。情報処理装置200は、ソフトAPモードを通信装置100に設定する場合、ソフトAPモードを示す設定情報を接続設定モードで動作する通信装置100に送信する。
インフラモードは、通信装置100が、通信装置100や情報処理装置以外の装置(無線LANルータ内のAP等)を介して接続する接続方式で情報処理装置との無線接続を行うモードである。なお、通信装置100は、インフラモードで動作するためには、通信装置100がインフラモードで利用するAPのSSID及び通信装置100が該APを利用するためのパラメータ(以後、これらをAP情報という。)を情報処理装置等から受信し、通信装置100自身に登録する必要がある。
アドホックモードは、通信装置100と情報処理装置がP2Pで直接無線接続を行うモードである。アドホックモードは、WFDモードやソフトAPモードとは異なり、接続を行う装置内のAPを介さず接続を行う。通信装置100がアドホックモードで動作するためには、情報処理装置と共通の無線接続パラメータを設定情報として受信して、通信装置100に登録する必要がある。
なお、これらのモードは排他的に設定されるものに限らず、複数のモードが同時に設定されることもある。具体的には例えば、通信装置100は、ソフトAPモードとインフラモードで同時に動作したり、WFDモードとインフラモードで同時に動作したりしても良い。
上記の構成要素は、CPU101が管理するCPUバス121を介して、相互に接続されている。
通信装置100の電源状態について説明する。本実施形態では通信装置100は、ハードオフ状態、ソフトオフ状態、ソフトオン状態の少なくとも3つの電源状態のいずれかで動作するものとする。
ハードオフ状態とは、通信装置100に電力が全く供給されていない状態である。そのため当然、通信装置100は、ハードオフ状態では、カバーが閉じ位置から移動したことを検知することはできず、キャリッジをカートリッジ取り付け位置から待機位置まで移動させることができない。通信装置100は、電源との接続線が通信装置100から抜かれたり、不図示のハードオフ電源ボタンが押下されたりすることで、ソフトオフ状態やソフトオン状態からハードオフ状態に移行する。
ソフトオフ状態とは、通信装置100に電力が供給されているが、通信装置100の少なくとも1部のハードウェアに対して、電力の供給の停止や、電力の供給量の制限等の省電力制御が実行されている状態である。本実施形態では、通信装置100がソフトオフ状態である場合、少なくともカバーセンサに省電力制御が実行されているものとする。すなわち、通信装置100は、ソフトオフ状態では、カバーが閉じ位置から移動したことを検知することはできず、キャリッジをカートリッジ取り付け位置から待機位置まで移動させることができないものとする。通信装置100は、ソフトオフ電源ボタン(表示操作部108の電源ボタン等)が押下されたり、通信装置100の外部の装置やユーザから一定時間以上、通信や操作を受け付けなかったりした場合に、ソフトオン状態からソフトオフ状態に移行する。また、通信装置100は、通信装置100に電源との接続線が挿入された場合等に、ハードオフ状態からソフトオフ状態に移行する。
ソフトオン状態とは、通信装置100に電力が供給されており、通信装置100が通常動作を実行可能なように、通信装置100の各ハードウェアに対して電力が供給されている状態である。通信装置100は、ソフトオン状態である場合に、カバーセンサやカートリッジセンサによる検知や、通信装置100の外部の装置やユーザから印刷の指示を受け付けて印刷を実行することができる。通信装置100は、ソフトオン電源ボタン(表示操作部108の電源ボタン等)が押下されたり、通信装置100の外部の装置やユーザから、通信や操作を受け付けたりした場合に、ソフトオフ状態からソフトオン状態に移行する。
なお、通信装置100の消費電力は、ハードオフ状態<ソフトオフ状態<ソフトオン時状態の順で大きくなる。
本発明の通信装置と接続する情報処理装置の構成について図2のブロック図を参照して説明する。以下の構成を例に記載するが、情報処理装置200は、通信装置100と接続を行うことが可能な情報処理装置に関して適用可能なものであり、特にこの図のとおりに機能を限定するものではない。
CPU201は、ROM202、RAM203、内部記憶装置204又は外部記憶装置205により外部記憶ディスク206等から読み出されたプログラムに従って、システムバスを介して情報処理装置200全体の動作を制御するものである。
ROM202は、CPU201の制御プログラム等を格納している。
RAM203は、一時的にプログラムや画像データを記憶し、処理を高速に動作させる。内部記憶装置204は、オペレーティングシステム、無線LAN設定アプリなど各種アプリケーションプログラムや画像データ等が格納する。通常、これらのアプリケーションソフトは、これらが記憶されたほかのコンピュータ可読媒体から外部記憶ディスク206(CD/DVDメディアなど)がデータを受け取り、外部記憶装置205を制御することにより、情報処理装置200にインストールされる。
操作部207は、ユーザからの指示入力手段としての不図示のキーボードやマウスを制御する。表示部208は、ユーザに対して各種表示を行う。AP212は、無線接続により、通信装置100や他の情報処理装置と接続を行う。
WLANユニット209は、WLANユニット116と同様の機能を有するため、詳細な説明は省略する。
USBホスト制御部210は、USB接続におけるホストの機能を有し、通信装置100との間で接続を行う。USBホスト制御部210は、USBホスト制御部115と同様の機能を有するため、詳細な説明は省略する。
ここで、本発明の課題について説明する。通信装置100は、上述したように、センサの検知結果に基づいてキャリッジをカートリッジ取り付け位置に移動させることで、ユーザからインクカートリッジの取り付け(装着)のための操作を受け付ける。なお、センサは、ソフトオフ状態やハードオフ状態では稼働しない。そのため、カートリッジ取り付け位置にてインクカートリッジが適切にキャリッジに取り付けられるためには、通信装置100は、ユーザからインクカートリッジの取り付けのための操作をソフトオン状態で受け付けることが好ましい。ゆえに本実施形態では、通信装置100に同梱される設置マニュアルには、インクカートリッジの取り付けのための操作を通信装置100がソフトオン状態で行うことをユーザに促すための記載がなされている。
しかしながら通信装置100は、例えばユーザが設置マニュアルを読んでいなかった場合等には、ユーザからインクカートリッジの取り付けのための操作をソフトオフ状態で受け付けることがある。ソフトオフ状態の通信装置100にインクカートリッジを取り付けさせるためには、例えばユーザは、無理やりキャリッジをカートリッジ取り付け位置に移動させる等の操作を実行することになる。このような操作は、例えばキャリッジの駆動系の損傷等の、記録部113に関するエラーを引き起こすことがある。
すなわち、通信装置100は、ユーザからインクカートリッジの取り付けのための操作をソフトオフ状態で受け付けた場合は、記録部113に関するエラー状態となっている可能性が高い。
なお、通信装置100は、記録部113に関するエラーが発生している状態(エラー状態)であるかどうかを検知する検知処理を、インクカートリッジのクリーニング処理時に実行する。通信装置100がエラー状態である場合、通信装置100と通信する情報処理装置に対して、通信装置100がエラー状態である旨を通知する通知処理が実行されることが好ましい。通知処理が実行されることで、情報処理装置が備える表示部に、通信装置100がエラー状態である旨を通知するための画面が表示され、情報処理装置を操作しているユーザは、通信装置100のメンテナンスを行うことができる。なお、通信装置100が表示部を有していなかったり、セグメントディスプレイ等の簡易な表示部しか有していなかったりすることから、通信装置100がエラー状態である旨を通知するための画面を通信装置100が自身で表示できない場合がある。このような場合は、通信装置100と通信する情報処理装置に対して通知処理が実行されることはなおさら好ましい。
しかしながら例えば、インクカートリッジのクリーニング処理時に情報処理装置が通信装置100に接続していない場合、通信装置100は、情報処理装置に対して、リアルタイムでエラーを通知することができないことがある。そのため、クリーニング処理後に情報処理装置との接続設定が行われる形態では、情報処理装置にエラーを通知することができないことがあるという課題がある。
また例えば、通信装置100がエラー状態である場合、クリーニング処理が完了しなかったり、着荷シーケンスが中断されたりすることがある。そのため、クリーニング処理後に情報処理装置との接続設定が行われる形態では、接続設定が開始されないことがあるという課題がある。
そこで、本実施形態では、通信装置100は、接続設定処理を適切なタイミングで行う。具体的には通信装置100は、ユーザからインクカートリッジの取り付けのための操作をソフトオフ状態で受け付けていた場合は、インクカートリッジのクリーニング処理の前に接続設定処理を行う。
図3は、本実施形態における通信装置100が初期設定時に行う処理である着荷時シーケンスの流れを示すフローチャートである。なお、本フローチャートは、CPU101が、ROM102又はHDD117に格納されているフローチャートに関する制御プログラムをRAM103にロードし、その制御プログラムを実行することにより実現されるものとする。なお、本フローチャートは、通信装置100がソフトオフ状態で開始されるものとする。
まず、S301にて、CPU101は、表示操作部108の電源ボタンが押下されたことを検知した場合、通信装置100をソフトオフ状態からソフトオン状態に移行させる。
次に、S302において、CPU101は、RAM103に保存されている初期設定時か否かを示す情報を参照して、初期設定時か否かを判定する。具体的には、ユーザが通信装置100を着荷後に初めて起動した場合、RAM103において初期設定時フラグがONとなっている。一方、着荷後2回目以降の通信装置100の起動処理では、RAM103において初期設定時フラグがOFFとなっている。CPU101は、初期設定時フラグのONとOFFを参照することによりS302の判定が実現される。なおこの判定は、例えば、通信装置100が過去に着荷時シーケンスを実行したか否かを判定しても良い。
CPU101は、初期設定時でない場合、処理を終了する。通信装置100の接続環境が変化した等の場合を除いて、通常、初期設定時でない場合に通信モードの設定が再度行われる必要はない。そのため、このような形態とすることで、通信装置100がソフトオン状態に移行する度に通信モードを設定する処理を行うことを避けることができる。なお、このとき、ユーザに通信モードを設定する処理を行うか否かを問うUI等を表し、ユーザの返答に応じて、通信モードを設定する処理を行う構成としても良い。
一方、CPU101は、初期設定時である場合、S303において、初期設定時か否かを示す情報を変更し、次回以降に通信装置100がソフトオン状態に移行した時が初期設定時でないことを示せるようにする。具体的には、CPU101は、初期設定時フラグの内容を変更する。なお、本実施形態では初期設定時フラグのON、OFFを用いてS302の処理を実行するがフラグ以外の情報を用いても良い。その場合例えば、着荷時からRAM103に初期設定時であることを示す情報を保存されているものとする。そして、S302では、初期設定時であることを示す情報がRAM103に保存されるか否かが判定され、その後の処理で初期設定時であることを示す情報が削除される。また、S303における処理は、初期設定時か否かの判定後であればいつ行われても良い。例えば、S314において通信装置100に通信モードを設定した後に行われても良いし、ステップS316において通信装置100の無線LAN設定の情報を無効にした後に行われても良い。
S304にて、CPU101は、検知部による検知結果に基づいて、記録部113にインクカートリッジが取り付けられているか否かを判定する。なお、記録ヘッドとインクタンクとが別体として形成されている形態であれば、少なくとも記録ヘッドが記録部113に取り付けられているか否かを判定する。CPU101は、YES判定であれば、S310に進み、NO判定であれば、S305に進む。
本実施形態では、S301にて通信装置100がソフトオン状態に移行した後からS304が実行されるまでの間はキャリッジに対するインクカートリッジや記録ヘッドの着脱が不可な構成であるものとする。すなわち、カバーが閉じ位置から移動しても、キャリッジがカートリッジ取り付け位置に移動しない構成であるものとする。そのため、S304にてYES判定が行われた場合は、通信装置100がソフトオン状態に移行する前から(すなわち、通信装置100がソフトオフ状態やハードオフ状態で)、記録部113にインクカートリッジが取り付けられていたことになる。
そのためS305にて、CPU101は、インクカートリッジがソフトオフ状態又はハードオフ状態で取り付けられたか否かを示す装着フラグ情報を、インクカートリッジがソフトオフ状態又はハードオフ状態で取り付けられたことを示す情報に設定する。これにより、装着フラグ情報がON状態となる。なお装着フラグ情報はRAM103に保存されている。その後、CPU101は、初期設定時クリーニング処理を実行することなく、S310に進む。なお、CPU101は、記録ヘッドによる記録媒体への記録位置の調整(以後、レジ調整)も、S310の前に実行しなくても良い。
一方、S304にてNO判定が行われた場合は、通信装置100がソフトオン状態に移行する前には(すなわち、通信装置100がソフトオフ状態やハードオフ状態で)、記録部113にインクカートリッジが取り付けられていないことになる。
そこで、S306にてCPU101は、表示操作部108のLED(発光ダイオード)を点滅させたり、表示操作部108のLCDに特定の画面を表示させたりすることにより、ユーザに対して記録部113に関する通知を行う。具体的には、CPU101は、通信装置100がインクカートリッジの取り付け待ちの状態であることを通知したり、インクカートリッジの取り付け方法を通知したりする。なお、通知の方法は特に限定されず、CPU101は、通知のための画面を表示操作部108のLCDに表示したり、表示操作部108のLEDを特定の方法で点滅させたり、音声によって通知をしたりして良い。
その後、CPU101は、S307にて、検知部による検知結果に基づいて、記録部113にインクカートリッジが取り付けられたか否かを判定する。なお、記録ヘッドとインクタンクとが別体として形成されている形態であれば、記録ヘッドとインクタンクの両方が記録部113に取り付けられたか否かを判定する。CPU101は、YES判定であれば、S308に進み、NO判定であれば、S307の処理を再度実行する。なお、S307の判定にタイムアウトはなく、YES判定となったり、通信装置100がソフトオフ状態やハードオフ状態に移行したりするまで、S307の判定は繰り返される。また、CPU101は、S307の判定がYES判定となるまで、S306における通知を継続して実行していても良い。
CPU101は、S308では、初期設定時クリーニング処理を開始する。具体的にはまず、CPU101は、廃インク吸収帯や、記録ヘッドの吐出口をキャッピングするキャッピング機構等のクリーニング部材が設置されている位置へ、キャリッジを移動させる。その後、CPU101は、キャッピング機構によって記録ヘッドの吐出口をキャッピングし、キャッピング機構に接続されているポンプを作動させる。これにより、CPU101は、キャッピング機構内部に負圧を発生させて吐出口から増粘インクや気泡等の異物を吸引排出することにより、吐出口内のインクをリフレッシュさせる。また、CPU101は記録ヘッドの吐出口面に付着したインク等の異物をワイパーによってワイピング(拭き取り清掃)する。なお、クリーニング処理は、例えば印刷開始前や、前回の印刷から所定の時間が経過した時、異常終了後のソフトオン時等、初期設定時以外のタイミングでも実行される。このような通常のクリーニング処理と初期設定時クリーニング処理とが異なっていても良い。具体的には、初期設定時には、ヘッドからノズル、またはインクタンクからヘッドまでの流路に対してインクを充填させることを目的として、通常のクリーニング動作よりも負圧吸引力を強くしたり、吸引量を多くしたり、吸引回数を多くしたりしても良い。あるいは、記録ヘッド内のインクを加熱して粘度を低下させても良い。
なお、CPU101は、初期設定時クリーニング処理を実行する際に、記録部113において生じているエラーを検出する。このとき検出されるエラーは、例えば、ヘッド不完全装着エラーやキャリッジ位置エラーである。
ヘッド不完全装着エラーは、インクカートリッジ(記録ヘッド)が、キャリッジに不完全な形で取り付けられているエラーである。例えば、インクカートリッジがキャリッジに不完全な形で取り付けられていると、キャリッジの駆動経路にインクカートリッジがはみ出すことがある。この場合、キャリッジの移動時にインクカートリッジが通信装置100内部の所定の構成にぶつかり、キャリッジが当該構成の位置でストップしてしまう。CPU101は、例えば、キャリッジの移動量を検知し、検知した移動量が、カートリッジ取り付け位置から当該構成の位置までの移動量に相当すれば、ヘッド不完全装着エラーが発生していることを検知する。また、例えば、インクカートリッジがキャリッジに不完全な形で取り付けられていると、キャリッジの移動中やクリーニング処理中にインクカートリッジがキャリッジから外れることがある。CPU101は、例えば、カートリッジセンサによってインクカートリッジがキャリッジに取り付けられているかを検知する。そして、CPU101は、キャリッジの移動中やクリーニング処理中に、インクカートリッジがキャリッジに取り付けられていないことがカートリッジセンサによって検知されたら、ヘッド不完全装着エラーが発生していることを検知する。なお、ヘッド不完全装着エラーは、ユーザが再びカバーを開けてインクカートリッジを正しく取り付け直すことで解消されるため、ヘッド不完全装着エラーの解消のために通信装置100がソフトオフ状態に移行する必要はない。
キャリッジ位置エラーは、キャリッジの駆動経路に異物があるエラーである。例えば、キャリッジの駆動経路に異物があると、異物がキャリッジの移動を阻害するため、キャリッジの移動量が小さくなる。そのため、CPU101は、例えば、キャリッジの実際の移動量とキャリッジを駆動させるのに要した力(駆動力)を検知し、駆動力に対して実際の移動量が小さければ、キャリッジ位置エラーが発生していることを検知する。キャリッジ位置エラーは、通信装置100がソフトオフ状態に移行し、異物が取り除かれることで解消される。
CPU101は、エラーを検知すると、検知したエラーを通知するためのエラー通知処理を実行する。具体的には例えば、表示操作部108に、検知したエラーを通知するための画面を表示する。また、後述のS318にて開始する初期設定時クリーニング処理においてエラーを検知した場合等は、通信装置100が情報処理装置と接続している。その場合は、CPU101は、検知したエラーを通知するための画面を情報処理装置が備える表示部に表示させるための情報を、情報処理装置に送信する。これにより、情報処理装置は地震が備える表示部に、通信装置100において発生したエラーに関する画面を表示する。なお、CPU101は、通信装置100が接続している情報処理装置から問い合わせがあった場合に、エラー通知処理を実行する形態であっても良い。
続いて、CPU101は、S309にて、初期設定時に必要な処理が完了したか否かを判定する。初期設定時に必要な処理が完了していない場合、CPU101は、該処理が終わるまでS309を繰り返し、初期設定時に必要な処理が完了している場合、S310以降の接続設定処理を行う。なお、本実施形態においては初期設定時に必要な処理が、初期設定時クリーニング処理であるものとしてS309の処理が実行されるが、この形態に限定されない。例えば、初期設定時に必要な処理にレジ調整が含まれていても良い。
このように、S304にてインクカートリッジが取り付けられていないと判定された場合は、S306及びS307の処理により通信装置100がソフトオン状態に移行した後に、インクカートリッジが取り付けられる。本実施形態では、このようにソフトオン状態の通信装置100にインクカートリッジが取り付けられたケースでは、インクカートリッジのクリーニング処理の後に接続設定処理を行う。この理由について説明する。
後述するように、通信装置100は、接続設定処理を実行するにあたり、接続設定モードとなるためにAP118を有効にする。AP118は、接続設定モード時のみ有効となるAPであり、接続設定処理のために情報処理装置200と簡易に接続可能である必要があるため、セキュリティが比較的低いAPである。そのため、AP118が長時間有効となっていることは好ましくなく、接続設定処理には、タイムアウト処理が設けられている。また、接続設定処理がタイムアウトして中断されると、クリーニング処理を含む着荷時シーケンス全てが中断されることがある。そのため、接続設定処理の後にクリーニング処理が実行される形態では、クリーニング処理が実行されないことがあるという課題がある。
また、接続設定処理が実行された後には、情報処理装置200と通信装置100が通信可能な状態となるため、情報処理装置200が印刷ジョブを通信装置100に送信可能な状態となってしまう。そのため、接続設定処理の後にクリーニング処理が実行される形態では、クリーニング処理が完了していない状態で印刷ジョブが送信され、クリーニング処理が適切に完了しなかったり、印刷ジョブの開始が遅れたりすることがあるという課題がある。
以上の理由から、ソフトオン状態の通信装置100にインクカートリッジが取り付けられたケースでは、ソフトオフ状態の通信装置100にインクカートリッジが取り付けられたケースと異なり、クリーニング処理の後に接続設定処理が行われる。なお、このような処理は本実施形態においては必須ではない。具体的には、ソフトオン状態の通信装置100にインクカートリッジが取り付けられたケースも、ソフトオフ状態の通信装置100にインクカートリッジが取り付けられたケースと同様にクリーニング処理の前に接続設定処理が行われても良い。
S310以降の処理により、CPU101は、接続設定処理を実行する。まずS310にて、CPU101は、通信装置100を接続設定モードに移行させる。これにより、通信装置100は、AP118のSSIDなどを含むビーコンを定期的に送出する状態となるため、情報処理装置(情報処理装置200等)からのAPサーチに対し、該ビーコンに含まれる情報を提供可能な状態となる。この状態で、情報処理装置200から接続要求があると、装置間で接続パラメータの交換等が行われ、通信装置100と情報処理装置200が、AP118を介して接続する。また、このとき、CPU101は、表示操作部108のLED(発光ダイオード)点滅をさせたり、LCDに特定の表示をしたりして、ユーザに対して通信装置100が接続設定モードに移行したことを通知してもいい。
前述したように、接続設定モードは、情報処理装置から設定情報を受信し、通信装置100に通信モードを設定するためのモードである。そこで、CPU101は、S311にて、情報処理装置200から設定情報を受信したか否かを判定する。受信していないと判定した場合、CPU101は、S312で接続設定処理がタイムアウトしたか否か判定する。接続設定処理におけるタイムアウトとは、S309にて通信装置100が接続設定モードに移行してから所定の時間以上、通信装置100が通信装置100の外部の装置と接続しない、または設定情報を受信しないことをいう。タイムアウトしていない場合、CPU101は、S311の処理を再び行う。タイムアウトした場合、CPU101は、S315にて、接続設定モードを終了し、AP118を無効化する。その後、CPU101は、S316にて、RAM103に保存されている無線LAN設定の情報を無効として処理を終了する。これは、タイムアウトした場合は、通信装置100の周辺に通信装置100と無線接続が可能な情報処理装置やAPがないと判定されるため、通信モードを設定できないためである。なお、このとき、CPU101は、タイムアウトした旨や、情報処理装置とのUSB接続を推奨する旨を表示操作部108に表示させてユーザに知らせても良い。その後、CPU101はS317に進む。
一方、S310にて設定情報を受信した場合、CPU101は、S312にて、接続設定モードを終了し、AP118を無効化する。これにより、AP118と情報処理装置との接続が一旦解除される。その後、CPU101は、S313にて、受信した設定情報に基づく通信モードの設定を行う。具体的には、CPU101は、設定情報としてインフラモードに対応する情報(AP情報等)を受信した場合、設定情報に対応するAPをインフラモードで利用するAPとしてRAM103に登録し、当該APとの接続処理を実行する。また、APを利用するために暗号キーが必要な場合は、CPU101は、暗号キーの登録等を行う。そして、適切にAPの登録が終了したら、CPU101は、登録したAP経由での接続が可能なインフラモードに通信装置100を設定する。これにより、通信装置100は、登録したAP経由での情報処理装置との無線接続が可能な状態で動作する。またCPU101は、設定情報としてWFDモードやソフトAPモードに対応する情報を受信した場合は、WFDモードやソフトAPモードに対応するAPと接続するための接続情報を、設定情報の送信元の情報処理装置に接続設定モードを終了する前に送信する。そして、CPU101は、接続設定モードを終了した後、WFDモードやソフトAPモードに対応するAPを有効化して、WFDモードやソフトAPモードで動作する。CPU101は、この状態で、設定情報の送信元の情報処理装置から、接続設定モードを終了する前に送信した接続情報を含む接続要求を受信した場合、通信装置100と情報処理装置とをP2P方式で接続させる。これにより、通信装置100は、情報処理装置とP2Pによる無線接続が可能な状態で動作する。その後、CPU101はS317に進む。
CPU101はS317にて、装着フラグ情報が、インクカートリッジがソフトオフ状態又はハードオフ状態で取り付けられたことを示す(ON状態)か否かを判定する。フラグ情報がON状態でない場合は、インクカートリッジがソフトオン状態で取り付けられたため、初期設定時クリーニング処理が実行されている。そのため、CPU101は、処理を終了する。一方、装着フラグ情報がON状態である場合は、インクカートリッジがソフトオフ状態又はハードオフ状態で取り付けられたため、初期設定時クリーニング処理が実行されていない。そのため、CPU101は、S318において、S308と同様にして初期設定時クリーニング処理を開始する。その後、CPU101は、S319において、装着フラグ情報を、インクカートリッジがソフトオフ状態又はハードオフ状態で取り付けられていないことを示す情報(OFF状態の情報)に更新し、処理を終了する。
なお、通信装置100は、USB(Universal Serial Bus)によって情報処理装置と通信することも可能である。上述で説明した通信モードは無線通信方式によって通信するためのモードであるため、通信装置100は、USBによって情報処理装置と通信する場合には、通信モードが設定される必要がない。そのため、例えば、通信装置100は、ソフトオン状態に移行した際に、USBによって情報処理装置と接続している場合には、接続設定処理を実行しない(接続設定モードに移行しない)形態としても良い。また例えば、通信装置100は、接続設定処理を実行している最中に、USBによって情報処理装置と接続した場合には、接続設定処理が完了していない状態でも接続設定処理を終了する(接続設定モードを終了する)形態としても良い。
図4は、情報処理装置200が本実施形態の通信装置に通信モードを設定する処理の流れを示すフローチャートである。なお、該フローチャートは、CPU201が、ROM202又はHDD211に格納されているフローチャートに関する制御プログラムをRAM203にロードし、その制御プログラムを実行することにより実現されるものとする。
まず、S401にて、CPU201は、ユーザの操作を受け付けて無線LAN設定アプリを起動させる。無線LAN設定アプリとは、通信装置100に通信モードを設定するためのアプリケーションである。なお、無線LAN設定アプリは、通信装置100に印刷ジョブを送信して印刷を実行させる機能等の、他の機能を有していても良い。無線LAN設定アプリは、内部記憶装置204に記憶されているプログラムであり、事前にユーザが情報処理装置200にインストールさせておくものである。以下の通信モードを設定するための処理は、CPU201が無線LAN設定アプリを実行することにより実現される。
ここでは、無線LAN設定アプリによって、インフラモードで利用するAPを通信装置100に登録することで、通信装置100をインフラモードに設定する例について説明する。なお、APの登録は、無線LAN設定アプリを利用せず、ウェブブラウザを介してインターネット上のサービスや、情報処理装置200及び通信装置100の他の機能等を利用して行われても良い。また、このとき、CPU201は、情報処理装置200が接続しているAPのAP情報を一時的にRAM203に保存しておく。
次に、S402では、CPU201は、WLANユニット209を介して、情報処理装置200がアクセス可能なAPのサーチを行う。APのサーチは、無線LAN設定アプリの起動時に自動で実行されてもよいし、ユーザによる指示に応答して実行されてもよい。APのサーチは、各APが送出するビーコンを、WLANユニット209が受信することによって行われる。
S403では、CPU201は、表示部208に、S402のAPサーチによって発見されたAPの一覧(APサーチ結果)を表示させる。このとき、例えば、CPU201は、各APの持つSSIDの一覧を表示させる。なお、S403において、CPU201は、AP118のSSIDを構成する上述の規則に沿った形式のSSIDを有するAPを自動で抽出し、表示する構成としても良い。このとき、上述の規則に沿った形式のSSIDが複数あった場合、それら複数のSSIDを表示させ、そこからユーザに選択させる。また、この構成とする場合、後述のS405における処理は行わなくても良い。
S403においてAPの表示が行われると、ユーザは、サーチ結果から、通信モードの設定対象となる通信装置内のAPを選択する。
S404では、CPU201は、ユーザによってAPの選択を受け付けたことを検出する。
S405では、CPU201は、S404で選択されたAPが、無線LAN設定アプリによる設定対象の通信装置内のAPであるか否かを判定する。このとき、具体的には、CPU201は、選択されたAPがAP118のSSIDを構成する上述の規則に沿った形式のSSIDを有するAPであるか否かを判定する。設定対象の通信装置内のAPでないと判定された場合は、CPU201は、再度、ユーザによるAPの選択を検出するのを待つ。なお、このとき、CPU201は、適切でないAPが選択された旨をユーザに伝えるための画面を表示部208に表示してもいい。また、設定対象となる通信装置に対応するAPが存在しない、またはユーザの所望の通信装置内のAPが存在しない場合は、CPU201は、処理を終了する構成としても良い。
なお、上述では、S403~S405の処理により、通信モードの設定対象となる通信装置のAPをユーザに手動で選択させる構成を説明したが、この形態に限定されない。例えば、CPU201は、S402でサーチしたAPから、上述の規則に沿った形式のSSID有するAPを、通信モードの設定対象となる通信装置のAPとして自動で選択しても良い。
S405で設定対象となる通信装置(ここでは通信装置100)内のAP(ここではAP118)が選択された場合、CPU201は、情報処理装置200と通信装置100とが無線接続を行うためのパラメータ(接続情報)の交換などを行う。なお、AP118と接続するための接続情報は、無線LAN設定アプリによって予め保持されている。そうすることで、情報処理装置200は、AP118に接続し、通信装置100との通信を確立する。
続いて、S406にて、CPU201は、S401にて一時的にRAM203に保存したAP情報を設定情報として、S405にて接続したAP118を介して通信装置100に送信する。通信装置100は、該AP情報を受信することで、該AP情報に基づいたAP経由で接続可能なインフラモードに設定される。
最後に、S407にて、CPU201は、AP118への接続をやめて、S401にて一時的にRAM203に保存したAP情報に基づくAPに再度接続することで、通信装置100と該APを介して通信可能となる。このとき、CPU201は、情報処理装置200が今後接続する通信装置として、通信装置100をRAM203に登録する。その後、CPU201は、無線LAN設定アプリを終了する。
なお、S402からS404の処理は、無線LAN設定アプリによって行うとは限らず、情報処理装置200にインストール済みの他のアプリなどによってAP118をサーチし、無線LAN設定アプリがその結果を取得する構成としてもよい。
また、上述では、CPU201は、AP118を介して通信装置100と通信しているため、IEEE802.11シリーズに準拠した通信方式(すなわち、Wi-Fi(登録商標))で、設定情報を通信装置100に送信していた。しかしながらこの形態に限定されず、CPU201は、例えば、IEEE802.11シリーズに準拠した通信方式と異なる通信方式で、設定情報を通信装置100に送信してもよい。このとき利用される通信方式は、例えば、Bluetooth(登録商標) Classic、Bluetooth Low Energy、Near Field Communication、Wi-Fi Aware等である。このような形態とすることで、CPU201は、インフラモードで使用されるAPとのWi-Fiによる接続を維持したまま、他の通信方式で、通信装置100に設定情報を送信することができる。
また、上述では、CPU201が、通信装置100にインフラモードを設定する形態を説明したが、この形態に限定されない。例えば、WFDモードやソフトAPモード等、他の通信モードを通信装置100に設定しても良い。通信装置100に設定する通信モードは、例えば、無線LAN設定アプリによって表示される画面を介してユーザの選択を受け付けることで決定されても良いし、情報処理装置200の通信環境に基づいて無線LAN設定アプリによって自動で決定されても良い。例えば、通信装置100に通信モードを設定する際に、情報処理装置200がいずれかのAPに接続している場合は、通信装置100に設定する通信モードとしてインフラモードが選択される。また例えば、通信装置100に通信モードを設定する際に、情報処理装置200がいずれのAPにも接続していない場合は、通信装置100に設定する通信モードとしてWFDモードやソフトAPモード等のP2P方式の通信モードが選択される。
このような形態とすることで、通信装置100は、適切なタイミングで接続設定処理を実行することが可能となる。
(その他の実施形態)
上述の実施形態では、通信装置100及び情報処理装置200の処理は、初期設定時に行う処理であると説明したが、これに限定されない。例えば、通信装置100及び情報処理装置200の処理は、通信装置100の無線LAN設定が無効となっている時に行ってもよいし、通信装置100の初期化処理をした時に行ってもよい。
上述の実施形態では、通信モードは、通信装置100が無線による接続形態によって通信可能に動作するモードであったが、これに限定されず、例えば有線やUSBによる接続形態によって通信可能に動作するモードであってもいい。この場合、有線通信モードやUSB通信モードが通信装置100に設定される。
本発明は、所定の被取り付け物の取り付けのための操作をユーザから受け付けるための所定の動作を実行する第1の状態と、前記所定の動作を実行しない第2の状態を含む複数の状態のうちいずれかで動作する通信装置において適用可能なものである。上述では、所定の被取り付け物が記録ヘッドであり、所定の動作がキャリッジの移動であり、通信装置が印刷装置である形態について説明したが、この形態に限定されない。例えば、通信装置がレーザービームプリンタであれば、被取り付け物が、トナーカートリッジであっても良い。また、例えば通信装置がPCであれば、所定の被取り付け物がCDやDVD等の記憶媒体であり、所定の動作が記憶媒体が取り付けられるカセットの移動や記憶媒体の挿入口の開閉であっても良い。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
上述した実施形態は、以下の処理を実行することによっても実現される。すなわち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPUやMPU等)がプログラムを読み出して実行する処理である。また、プログラムは、1つのコンピュータで実行させても、複数のコンピュータで連動させて実行させるようにしてもよい。また、上記した処理の全てをソフトウェアで実現する必要はなく、処理の一部または全部をASIC等のハードウェアで実現するようにしてもよい。また、CPUも1つのCPUで全ての処理を行うものに限らず、複数のCPUが適宜連携をしながら処理を行うものとしてもよい。