(57)【要約】【課題】例えば、ハンドシェイクのための専用線を設けずに、スレーブ装置からマスタ装置へデータを送信する際のハンドシェイクを実現する。【解決手段】シリアル通信システムは、マスタ装置と１以上のスレーブ装置とを含む。各スレーブ装置は、スレーブ装置に接続された状態信号線の信号レベルを変化させることで、状態信号を送信する準備が整ったことを通知する通知手段を備える。マスタ装置は、すべてのスレーブ装置について状態信号線の信号レベルが変化したことを検出する検出手段を備える。また、マスタ装置は、すべてのスレーブ装置について状態信号線の信号レベルが変化すると、状態信号を送信させるためのクロック信号をクロック信号線へ送出するクロック信号発生手段を備える。【選択図】図７
2008176743.tif 000002
【特許請求の範囲】
【請求項１】
マスタ装置と１以上のスレーブ装置とを含むシリアル通信システムであって、
前記マスタ装置から各スレーブ装置へクロック信号を送信するためのクロック信号線と、
前記クロック信号に同期して前記マスタ装置から各スレーブ装置へコマンド信号を送信するためのコマンド信号線と、
前記クロック信号に同期して少なくとも１つのスレーブ装置から前記マスタ装置へ該スレーブ装置の状態を表す状態信号を送信する状態信号線と、
各スレーブ装置に備えられ、該スレーブ装置に接続された状態信号線の信号レベルを変化させることで、前記状態信号を送信する準備が整ったことを通知する通知手段と、
前記マスタ装置に備えられ、すべてのスレーブ装置について前記状態信号線の信号レベルが変化したことを検出する検出手段と、
前記マスタ装置に備えられ、前記すべてのスレーブ装置について前記状態信号線の信号レベルが変化すると、前記状態信号を送信させるためのクロック信号を前記クロック信号線へ送出するクロック発生手段と
を含むことを特徴とするシリアル通信システム。
【請求項２】
前記マスタ装置に備えられ、前記コマンド信号線の信号レベルを変化させることで前記コマンド信号線を介してコマンド信号を送信することを伝達する伝達手段と、
各スレーブ装置に備えられ、該スレーブ装置に接続されたコマンド信号線の信号レベルが変化したことを検知する検知手段と、
各スレーブ装置に備えられ、前記コマンド信号線の信号レベルが変化すると前記コマンド信号線を介してコマンド信号を受信すべく待機し、前記クロック信号が送出されると該クロック信号に同期して該コマンド信号を受信するコマンド受信手段と
を含むことを特徴とする請求項１に記載のシリアル通信システム。
【請求項３】
各スレーブ装置から延びる状態信号線の支線が前記検出手段に対して論理和接続させるための論理和接続手段をさらに含むことを特徴とする請求項１又は２に記載のシリアル通信システム。
【請求項４】
各スレーブ装置は、前記クロック信号に同期して同一の内容の状態信号を複数回送信することを特徴とする請求項１乃至３のいずれか１項に記載のシリアル通信システム。
【請求項５】
各スレーブ装置に備えられ、該スレーブ装置の状態を表す状態情報のうち前記コマンド信号に依存する依存情報と前記コマンド信号に依存しない非依存情報とを取得する取得手段と、
各スレーブ装置に備えられ、前記状態信号を送信させるためのクロック信号に同期させて、前記依存情報を伝送するための状態信号を前記マスタ装置へ送信する第１送信手段と、
各スレーブ装置に備えられ、前記コマンド信号を受信するためのクロック信号に同期させて、前記非依存情報を伝送するための状態信号を前記マスタ装置へ送信する第２送信手段と
をさらに含むことを特徴とする請求項１乃至４のいずれか１項に記載のシリアル通信システム。
【請求項６】
各スレーブ装置に備えられた前記第２送信手段は、同一のクロック信号に対する送信期間を分割して得られる複数の送信タイミングのうちそれぞれ異なる送信タイミングで前記非依存情報を伝送するための状態信号を送信し、
各スレーブ装置に備えられた前記第１送信手段のうち、前記コマンド信号により指定されたスレーブ装置に備えられている第１送信手段のみが、前記依存情報を伝送するための状態信号を送信し、前記コマンド信号により指定されなかったスレーブ装置に備えられている第１送信手段は前記状態信号線の信号レベルを変化させない
ことを特徴とする請求項５に記載のシリアル通信システム。
【請求項７】
前記取得手段は、前記コマンド信号線の信号レベルが変化すると、前記依存情報と前記非依存情報との少なくとも一方を確定することを特徴とする請求項５に記載のシリアル通信システム。
【請求項８】
画像形成装置であって、
請求項１乃至７のいずれか１項に記載されたシリアル通信システムに含まれる前記マスタ装置を前記画像形成装置の本体に備え、前記画像形成装置に接続されたオプション装置に前記スレーブ装置を備えたことを特徴とする画像形成装置。
【請求項９】
マスタ装置と１以上のスレーブ装置との間で実行されるシリアル通信方法であって、
マスタ装置から各スレーブ装置へクロック信号線を介して送信されたクロック信号に同期して少なくとも１つのスレーブ装置から前記マスタ装置へ該スレーブ装置の状態を表す状態信号を送信する状態信号線の信号レベルを、各スレーブ装置において変化させることで、該スレーブ装置が前記状態信号を送信する準備が整ったことを通知する通知工程と、
前記マスタ装置において、すべてのスレーブ装置について前記状態信号線の信号レベルが変化したことを検出する検出工程と、
前記マスタ装置において、前記すべてのスレーブ装置について前記状態信号線の信号レベルが変化すると、前記状態信号を送信させるためのクロック信号を前記クロック信号線へ送出するクロック発生工程と
を含むことを特徴とするシリアル通信方法。
【請求項１０】
マスタ装置から各スレーブ装置へクロック信号を送信するためのクロック信号線と、
前記クロック信号に同期して前記マスタ装置から各スレーブ装置へコマンド信号を送信するためのコマンド信号線と、
前記クロック信号に同期して少なくとも１つのスレーブ装置から前記マスタ装置へ該スレーブ装置の状態を表す状態信号を送信する状態信号線と
を含むシリアル通信システムにおいて利用されるスレーブ装置であって、
前記状態信号線の信号レベルを変化させることで、前記スレーブ装置が状態信号を送信する準備が整ったことを前記マスタ装置へ通知する通知手段と、
前記マスタ装置に接続されたすべてのスレーブ装置について前記状態信号線の信号レベルが変化すると前記マスタ装置から出力されるクロック信号に同期して、前記状態信号を送信する送信手段と
を含むことを特徴とするスレーブ装置。
【請求項１１】
マスタ装置から各スレーブ装置へクロック信号を送信するためのクロック信号線と、
前記クロック信号に同期して前記マスタ装置から各スレーブ装置へコマンド信号を送信するためのコマンド信号線と、
前記クロック信号に同期して少なくとも１つのスレーブ装置から前記マスタ装置へ該スレーブ装置の状態を表す状態信号を送信する状態信号線と
を含むシリアル通信システムにおいて利用されるマスタ装置であって、
前記マスタ装置に接続されたすべてのスレーブ装置について前記状態信号線の信号レベルが変化したことを検出する検出手段と、
前記すべてのスレーブ装置について前記状態信号線の信号レベルが変化すると、前記状態信号を該スレーブ装置に送信させるためのクロック信号を前記クロック信号線へ送出するクロック発生手段と、
前記コマンド信号に対応する前記スレーブ装置から前記状態信号を受信する受信手段と
を含むことを特徴とするマスタ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シリアル通信を実現するシステム、装置及び方法並びにその応用に関する。
【背景技術】
【０００２】
従来、画像形成装置とそのオプション装置とを備えるシステムなどで、シリアル通信が利用されている。特許文献１によれば、マスタ装置とスレーブ装置とを備えるシリアル通信システムにおいて、マスタ装置がクロック信号及びデータ信号の一方のレベルを変化させることで、通信の開始を通知する方法が提案されている。
【０００３】
また、特許文献２によれば、複数スレーブ装置が接続されたマスタ装置が、各スレーブ装置を認識するための固有情報をデータに付加して複数のスレーブ装置に送信することにより、すべてのスレーブ装置の状態を監視する方法が提案されている。
【特許文献１】特開２００６−１３５５４５号公報
【特許文献２】特開２００６−２２５１０８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献１によれば、信号線を増やすことなくマスタ装置からデータを送信するためのハンドシェイクを実現できるメリットがある。しかし、特許文献１に記載の発明では、マスタ装置からのデータ受信が終了した後にスレーブ装置からマスタ装置へデータを送信する際のハンドシェイクが省略されている。そのため、スレーブ装置は、マスタ装置からのデータ受信してから常に一定時間待ってから、データの送信を行っていた。この待ち時間は、通信の状況次第では、長すぎることもあれば、短すぎることもあり、改善の余地があった。
【０００５】
また、１つのマスタ装置に対して複数のスレーブ装置が接続される場合、マスタ装置からデータを受信してからすべてのスレーブ装置がデータを送信するまでの時間も一定の時間として管理されていた。そのため、すべてのスレーブ装置がマスタ装置へデータを送信する際に非常に時間がかかってしまっていた。逆に、決められた時間内にマスタ装置からのデータ受信が終わらなければ、マスタ装置からのデータに対応するデータを送信できないようなスレーブ装置も生じてしまう可能性がある。
【０００６】
特許文献２に記載の発明によれば、マスタ装置は、各スレーブ装置ごとに状態監視のための通信を行う必要がなく、通信回数を減らすことできる利点がある。しかし、特許文献２の方法では、各スレーブ装置の状態を監視したいときには、スレーブ装置の状態情報を要求して取得するという通信が必ず１回は必要となるため、状態情報のリアルタイム性が失われてしまいやすい。
【０００７】
そこで、本願に記載された第１の発明は、例えば、ハンドシェイクのための専用線を設けずに、スレーブ装置からマスタ装置へデータを送信する際のハンドシェイクを実現することを目的とする。また、本願に記載された第２の発明は、状態情報のリアルタイム性を維持しやすくすることを目的とする。なお、他の課題及び目的については、明細書の全体から把握できるであろう。
【課題を解決するための手段】
【０００８】
本発明は、マスタ装置と１以上のスレーブ装置とを含むシリアル通信システムに適用できる。本発明は、マスタ装置から各スレーブ装置へクロック信号を送信するためのクロック信号線と、クロック信号に同期してマスタ装置から各スレーブ装置へコマンド信号を送信するためのコマンド信号線と、クロック信号に同期して少なくとも１つのスレーブ装置からマスタ装置へスレーブ装置の状態を表す状態信号を送信する状態信号線とを含む。各スレーブ装置は、スレーブ装置に接続された状態信号線の信号レベルを変化させることで、状態信号を送信する準備が整ったことを通知する通知手段を備える。マスタ装置は、すべてのスレーブ装置について状態信号線の信号レベルが変化したことを検出する検出手段を備える。また、マスタ装置は、すべてのスレーブ装置について状態信号線の信号レベルが変化すると、状態信号を送信させるためのクロック信号をクロック信号線へ送出するクロック信号発生手段を備える。
【０００９】
また、各スレーブ装置は、コマンド信号に依存する依存情報とコマンド信号に依存しない非依存情報とを取得する取得手段と、取得された依存情報を伝送するための状態信号を、状態信号を送信させるためのクロック信号に同期させてマスタ装置へ送信する第１送信手段とを備える。さらに、各スレーブ装置は、取得された非依存情報を伝送するための状態信号を、コマンド信号を受信するためのクロック信号に同期させてマスタ装置へ送信する第２送信手段を備える。
【発明の効果】
【００１０】
本発明によれば、スレーブ装置が、状態信号を送信する準備が整ったことを通知することで、ハンドシェイクのための専用線を設けずに、スレーブ装置からマスタ装置へデータを送信する際のハンドシェイクを実現できる。また、本発明によれば、コマンド信号を受信するためのクロック信号に同期させてスレーブ装置からマスタ装置へ状態情報を送信することで、状態情報のリアルタイム性を維持しやすくできる。
【発明を実施するための最良の形態】
【００１１】
本発明に係るシリアル通信システムを搭載した画像形成装置を図面に則して説明する。なお、実施形態では、電子写真方式の多色画像形成装置を一例として紹介するが、本発明は、画像形成方式や単色か多色かの違い依存することはない。また、画像形成装置以外の電子装置（コンピュータ、周辺機器、情報処理装置、家電製品）などにも適用可能である。ただし、マスタ装置は、複数のスレーブ装置が接続可能であれば、特に本発明の効果が発揮されやすい。
【００１２】
また、スレーブ装置がマスタ装置から受信するデータ（コマンド信号）を「コマンド」、スレーブ装置がマスタ装置へ送信する状態情報（状態信号）を「ステータス」と呼ぶことにする。
【００１３】
［実施形態１］
本実施形態では、マスタ装置がカラーレーザプリンタの本体装置に相当し、スレーブ装置が、オプション装置（例：増設可能なオプション装置やオプション排紙装置）に相当する。本体装置は、各オプション装置とデータを送受信する際には共通のクロックを利用したシリアル通信を実行する。とりわけ、本体装置とオプション装置間で通信を行う際にハンドシェイク専用の信号線を設けなくても、本体装置とオプション装置がハンドシェイクを実現できる。例えば、受信されたコマンドに対してステータスを返信する際や、ステータスの送信が終わり、次のコマンドを受信する際など、受信・送信の動作が終わるごとにオプション装置が信号を変化させることで、ハンドシェイクを実現する。
【００１４】
（本体装置）
図１は、各実施形態に対して共通に適用される画像形成装置の全体構成図である。画像形成装置１００は、４個の画像形成ステーションを備えている。各ステーションは、像担持体である感光体ドラム１を有している。それぞれの感光体ドラム１の周囲には回転方向にしたがって順に、帯電装置２、露光装置３、現像装置４、転写部材５、クリーニング装置６が配設されている。帯電装置２は、感光体ドラム表面を一様に帯電させる。露光装置３は、画像情報に基づいてレーザービームを照射することで感光体ドラム上に静電潜像を形成する。現像装置４は、静電潜像にトナーを付着させてトナー像として顕像化する。転写部材５は、感光体ドラム上のトナー像を用紙に転写させる。クリーニング装置６は、転写後の感光体ドラム表面に残留した転写後トナーを除去する。ここで、感光体ドラム１と帯電装置２、現像装置４、クリーニング装置６は一体的にカートリッジ化され、いわゆるプロセスカートリッジ７を形成している。
【００１５】
給送部は、オプション装置２０ａ及びオプション装置２０ｂ、２０ｃにより構成されている。給送部からから給送された用紙は、搬送ベルトで構成された搬送装置９によって各ステーションへ搬送され、各色のトナー像が順次転写されて多色画像が形成される。定着装置１０は、用紙上の未定着像を加熱定着する。最終的に、用紙は、排出装置５０へ排出される。排出装置５０は、例えば、ソーターなどである。
【００１６】
（給送部）
オプション装置２０ａは、本体装置に内蔵された給送装置であり、本体給送部と呼ばれることもある。ピックアップローラ２１ａは、一枚ずつ用紙を分離して給送する。搬送ローラ２２ａ、２３ａは、さらに搬送方向の下流に向けて用紙を搬送する。給送部から給送された用紙は、レジストローラ１５によって搬送装置９へ搬送される。なお、オプション装置２０ａは本体装置に内蔵されているため、一般にはオプション装置と呼べないかもしれない。しかし、本願明細書では、オプション装置２０ａもシリアル通信システムのスレーブ装置として動作するため、オプション装置の一種として取り扱うものとする。
【００１７】
オプション装置２０ｂ、２０ｃは、本体装置に接続可能なオプションの給送部である。オプション装置２０ｂは、ピックアップローラ２１ｂによって一枚ずつ用紙を分離給送する。その後、用紙は、オプション装置の搬送ローラ２２ｂ、２３ｂを介してオプション装置２０ａへ搬送される。オプション装置２０ｃは、ピックアップローラ２１ｃによって一枚ずつ用紙を分離給送する。その後、用紙は、オプション装置の搬送ローラ２２ｃ、搬送ローラ２３ｃを介して上段に位置するオプション装置２０ｂへ搬送される。なお、用紙は、例えば、記録材、記録媒体、シート、転写材、転写紙と呼ばれることもある。
【００１８】
２４ａ、２４ｂ及び２４ｃは、用紙を検出するシートセンサである。シートセンサ２４ａ、２４ｂ及び２４ｃが検出した用紙の有無を表す情報は、状態情報の好例である。一般に、画像形成装置は、用紙の先端が到着したタイミングを起点として様々な制御（搬送制御や画像形成制御）を実行する。特に、画像形成装置のスループットを高速にするためには、リアルタイムかつ低遅延で状態情報をオプション装置から本体装置へと伝送することが要求される。
【００１９】
（通信システム）
図２は、本実施形態における本体装置とオプション装置とのインターフェースを説明するためのブロック図である。ここでは、オプション装置２０ｂ、２０ｃについては記載の簡潔化のために省略されているが、オプション装置２０ｂ、２０ｃもオプション装置２０ａと同様の構成を採用している。
【００２０】
本体装置の制御ＣＰＵ２００とオプション装置２０ａの制御ＣＰＵ２１０との間のインターフェース信号線は、クロック信号線２０１、コマンド信号線２０２及びステータス信号線２０３である。クロック信号線２０１は、マスタ装置から各スレーブ装置へクロック信号を送信するための信号線である。コマンド信号線２０２は、クロック信号に同期してマスタ装置から各スレーブ装置へコマンド信号を送信するための信号線である。ステータス信号線２０３は、クロック信号に同期して少なくとも１つのスレーブ装置からマスタ装置へスレーブ装置の状態を表す状態信号を送信する状態信号線である。なお、クロック信号を「ＣＬＫ信号」、コマンド信号を「ＣＭＤ信号」ステータス信号（状態信号）を「ＳＴＳ信号」と呼ぶことにする。なお、ＣＭＤ信号は、外部割込みのための入力ポート２１１にも入力されるよう配線されている。なお、ＣＭＤ信号及びＳＴＳ信号はデータ信号である。
【００２１】
本体装置の制御ＣＰＵ２００は、ＣＬＫ発生部２０４、ＣＭＤ送信部２０５及びＳＴＳ受信部２０６を備えている。ＣＬＫ発生部２０４は、ＣＬＫ信号を発生させ、クロック信号線２０１を送出する。例えば、ＣＬＫ発生部２０４は、マスタ装置に接続されているすべてのスレーブ装置についてステータス信号線の信号レベルが変化すると、スレーブ装置にＳＴＳ信号を送信させるためのＣＬＫ信号をクロック信号線２０１へ送出する。ＣＭＤ送信部２０５は、ＣＬＫ信号に同期してＣＭＤ信号をコマンド信号線２０２へ送出する。ＳＴＳ受信部２０６は、ＣＬＫ信号に同期してステータス信号線２０３を介してＳＴＳ信号を受信する。
【００２２】
オプション装置の制御ＣＰＵ２１０は、ＣＬＫ入力部２１４、ＣＭＤ受信部２１５及びＳＴＳ送信部２１６を備えている。ＣＬＫ入力部２１４、クロック信号線２０１を介してＣＬＫ信号を受信する。ＣＭＤ受信部２１５は、ＣＬＫ信号に同期してコマンド信号線２０２を介してＣＭＤ信号を受信する。例えば、ＣＭＤ受信部２１５は、コマンド信号線２０２の信号レベルが変化するとコマンド信号線を介してＣＭＤ信号を受信すべく待機し、マスタ装置からクロック信号が送出されるとＣＬＫ信号に同期してＣＭＤ信号を受信する。ＳＴＳ送信部２１６は、ＣＬＫ信号に同期してステータス信号線２０３を介してＳＴＳ信号を送信する。
【００２３】
このように、本体装置は、ＣＬＫ信号とＣＭＤ信号を供給するマスタ装置として働く。また、オプション装置２０ａは、本体装置から供給されたＣＬＫ信号及びＣＭＤ信号に応じて動作し、ＳＴＳ信号を出力するスレーブ装置として働く。
【００２４】
図３は、各制御ＣＰＵに実装される主要機能についての例示的な機能ブロック図である。ＣＭＤ送信部２０５に含まれる伝達部３０１は、コマンド信号線２０２の信号レベルを変化させることで、コマンド信号線２０２を介してコマンド信号を送信することを各スレーブ装置に伝達する。ＳＴＳ受信部２０６に含まれる検出部３０２は、すべてのスレーブ装置についてステータス信号線２０３の信号レベルが変化したことを検出する。
【００２５】
ＣＭＤ受信部２１５に含まれる検知部３１１は、スレーブ装置に接続されたコマンド信号線２０２の信号レベルが変化したことを検知する。ＳＴＳ送信部２１６に含まれる通知部３１２は、スレーブ装置に接続されたステータス信号線２０３の信号レベルを変化させることで、ＳＴＳ信号を送信する準備が整ったことをマスタ装置に通知する。
【００２６】
状態情報送信部３１３は、依存情報を伝送するためのＳＴＳ信号を、ＳＴＳ信号を送信させるためのＣＬＫ信号に同期させてマスタ装置へ送信する。また、状態情報送信部３１３は、非依存情報を伝送するためのＳＴＳ信号を、ＣＭＤ信号を受信するためのＣＬＫ信号に同期させてマスタ装置へ送信する。ここで、依存情報は、ＣＭＤ信号に依存する状態情報（すなわち、明示的な問い合わせに対する応答）である。非依存情報は、ＣＭＤ信号に依存しない状態情報（すなわち、問い合わせがなくてもあらかじめ送信することが定められている情報）である。例えば、リアルタイム性が要求されるような情報は、非依存情報として処理されることが望ましい。取得部３１４は、例えば、シートセンサなどの状態検出センサを利用して、依存情報や非依存情報などを取得する。
【００２７】
図４は、本体装置とオプション装置とのシリアル通信方式の具体例を説明するためのタイミングチャートである。ここでは本体装置とオプション装置２０ａとの通信を例にあげて説明する。もちろん、本体装置とオプション装置２０ｂ、本体装置とオプション装置２０ｃに関しても同様の方法で通信可能である。
【００２８】
ｔ１は、通信開始タイミングを示している。ｔ２は、コマンドの送信区間からステータスの送信区間への切り替わりタイミングを示している。ｔ３は、通信終了タイミングを示している。
【００２９】
本体装置は、通常、ＣＭＤ信号の信号レベルをＨｉｇｈレベルに保持し、通信の開始タイミングｔ１に、Ｌｏｗレベルへ変化させる。一方、オプション装置２０ａは、入力ポート２１１にＬｏｗ（ｅｄｇｅ）レベルのＣＭＤ信号が入力される。これが、割り込み信号になる。オプション装置２０ａは、割り込みを検出し、ＳＴＳ信号をＬｏｗレベルに変化させる。これにより、オプション装置２０ａは、シリアル受信モードに移行し、複数あるうちの第１ＣＭＤ信号（１ｓｔ ｃｏｍｍａｎｄ）３０８の受信準備をする。
【００３０】
第１ＣＬＫ信号４０４に同期して第１ＣＭＤ信号４０８の受信が完了すると、オプション装置２０ａは、第２ＣＭＤ信号（２ｎｄ ｃｏｍｍａｎｄ）４０９の受信準備をする。第２ＣＬＫ信号４０５に同期して第２ＣＭＤ信号４０９の受信が完了すると、オプション装置２０ａは、受信したＣＭＤ信号に含まれるコマンドの内容を解析し、ステータスの返送準備を行う。このように、第１ＣＬＫ信号４０４及び第２ＣＬＫ信号４０５は、コマンドを受信するためのクロック信号である。
【００３１】
ステータスの返送準備が整ったら（ｔ２）、オプション装置２０ａは、ＳＴＳ信号をＨｉｇｈレベルに変化させ、シリアル送信モードに移行する。オプション装置２０ａは、第３ＣＬＫ信号４０６に同期して、ステータスを送信データとして搭載した第１ＳＴＳ信号（１ｓｔ ｓｔａｔｕｓ）４１０を送信する。さらに、オプション装置２０ａは、第４ＣＬＫ信号４０７に同期して、ステータスを送信データとして搭載した第２ＳＴＳ信号（２ｎｄ ｓｔａｔｕｓ）４１１を送信する。第２ＳＴＳ信号の送信が完了すると、オプション装置２０ａは、ＳＴＳ信号の信号レベルをＬｏｗレベルに変化させることで汎用ポートモードに移行する。そして、オプション装置２０ａは、受信したコマンドを実行し、次の通信準備をする。通信準備が整ったら（ｔ３）、オプション装置２０ａは、ＳＴＳ信号をＨｉｇｈレベルに変化させる。
【００３２】
図５は、本体装置において実行されるシリアル通信についてのフローチャートである。ステップＳ５０１で、ＳＴＳ受信部２０６の検出部３０２は、ＳＴＳ信号がＨｉｇｈかどうかを判定する。ＳＴＳ信号がＨｉｇｈになると、ステップＳ５０２へ進み、ＣＭＤ送信部２０５の伝達部３０１は、ＣＭＤ信号の信号レベルをＬｏｗに変化させる。
【００３３】
ステップＳ５０３で、ＣＭＤ送信部２０５は、１ｓｔ ｃｏｍｍａｎｄを送信する。ステップＳ５０４で、ＣＭＤ送信部２０５は、２ｎｄ ｃｏｍｍａｎｄを送信する。ステップＳ５０５で、ＳＴＳ受信部２０６の検出部３０２は、ＳＴＳ信号がＨｉｇｈに変化したかどうかを判定する。ＳＴＳ信号がＨｉｇｈに変化すると、ステップＳ５０６に進み、ＣＬＫ発生部２０４がＣＬＫ信号を送出し、ＳＴＳ受信部２０６が１ｓｔ ｓｔａｔｕｓを受信する。ステップＳ５０７で、ＣＬＫ発生部２０４がＣＬＫ信号を送出し、ＳＴＳ受信部２０６が２ｎｄ ｓｔａｔｕｓを受信する。
【００３４】
図６はオプション装置において実行されるシリアル通信についてのフローチャートである。ステップＳ６０１で、ＣＭＤ受信部２１５の検知部３１１は、ＣＭＤ信号をＬｏｗ変化させることによる割込みがあったかどうかを判定する。割込みがあったら、ステップＳ６０２へ進み、ＳＴＳ送信部２１６の通知部３１２は、ＳＴＳ信号をＬｏｗに変化させる。これにより、ＣＭＤ受信部２１５は、コマンドを受信すべく待機する。
【００３５】
ステップＳ６０３で、ＣＭＤ受信部２１５は、１ｓｔ ｃｏｍｍａｎｄの受信を完了したか否かを判定する。１ｓｔ ｃｏｍｍａｎｄの受信が完了したらステップＳ６０４に進み、通知部３１２は、ＳＴＳ信号をＬｏｗに変化させ、一方で、ＣＭＤ受信部２１５は、再び受信待ち状態に移行する。ステップＳ６０５で、ＣＭＤ受信部２１５は、２ｎｄ ｃｏｍｍａｎｄの受信を完了したか否かを判定する。２ｎｄ ｃｏｍｍａｎｄの受信が完了したらステップＳ６０６に進み、ＣＭＤ受信部２１５は、受信したコマンドの内容を解析する。
【００３６】
ステップＳ６０７で、状態情報送信部３１３は、１ｓｔ ｓｔａｔｕｓを準備するために、受信したコマンドに応じたステータスを送信データに設定する。ステップＳ６０８で、通知部３１２は、ＳＴＳ信号をＨｉｇｈに変化させることで、ＳＴＳ送信部２１６は送信待ち状態になる。その後、クロック信号が入力されると、状態情報送信部３１３は、クロック信号に同期して１ｓｔ ｓｔａｔｕｓを送信する。ステップＳ６０９で、ＳＴＳ送信部２１６は、１ｓｔ ｓｔａｔｕｓの送信が完了したか否かを判定する。
【００３７】
完了すると、ステップＳ６１０へ進み、２ｎｄ ｓｔａｔｕｓを準備するために、受信したコマンドに応じたステータスを送信データに設定する。ステップＳ６１１で、通知部３１２は、ＳＴＳ信号をＨｉｇｈに変化させることで、ＳＴＳ送信部２１６は送信待ち状態になる。ステップＳ６１２で、ＳＴＳ送信部２１６は、２ｎｄ ｓｔａｔｕｓの送信が完了したか否かを判定する。完了すると、ステップＳ６１３へ進み、通知部３１２は、ＳＴＳ信号をＬｏｗに変化させる。ステップＳ６１４で、制御ＣＰＵ２１０は、受信したコマンドの内容に応じた処理を実行する。ステップＳ６１５で、通知部３１２は、ＳＴＳ信号をＨｉｇｈに変化させる。
【００３８】
本実施形態によれば、スレーブ装置が、ＳＴＳ信号を送信する準備が整ったことを通知することで、ハンドシェイクのための専用線を設けずに、スレーブ装置からマスタ装置へデータを送信する際のハンドシェイクを実現できる。
【００３９】
また、本実施形態によれば、従来のようにコマンド受信後に常に一定時間待機するわけではなく、コマンドに応じた処理が終わればすぐにＳＴＳ信号によりハンドシェイクが実行される。よって、従来よりも処理効率が向上する。一般に、コマンド解析とコマンド実行の処理時間はコマンドの内容によって処理時間が異なる。そのため、従来は、想定される最大処理時間だけ待機処理を行って、次のステップに移行していた。それに対し、本実施形態では、常に最大処理時間だけ待つ必要がなくなるため、時間短縮が可能となった。
【００４０】
本実施形態では、１ｓｔ ｃｏｍｍａｎｄ 及び ２ｎｄ ｃｏｍｍａｎｄとも８ｂｉｔであり、１ｓｔ ｓｔａｔｕｓ 及び ２ｎｄ ｓｔａｔｕｓも８ｂｉｔとして説明しているが、これは一例にすぎない。コマンドを２つに分割せずに、１６ｂｉｔ長の１つのデータとしてもよい。ステータスも同様である。また、コマンド受信とステータス送信を時間軸上で分けているが、これも一例にすぎない。コマンドとステータスを並行して送受信する方式に対して、本発明に係るハンドシェイクを適用してもよい。
【００４１】
なお、マスタ装置が、コマンド信号線の信号レベルが変化させることで、コマンド信号線を介してコマンド信号を送信することを各スレーブ装置に伝達してもよい。これにより、ハンドシェイクのための専用線を設けずに、マスタ装置からスレーブ装置へデータを送信する際のハンドシェイクを実現できる。
【００４２】
［実施形態２］
実施形態２も実施形態１と同様に画像形成装置とオプション装置との間の通信に関するものである。実施形態１は、１つの本体装置に１つのオプション装置が接続された場合に、ハンドシェイク専用の信号線を新たに設けることなくハンドシェイクを実現するものであった。それに対し、実施形態２は、１つの本体装置に複数のオプション装置が接続された場合に、各オプション装置と本体装置間で、ハンドシェイク専用の信号線を新たに設けることなくハンドシェイクを実現する方法について説明する。以下では、実施形態１と同様な部分については説明を省略し、本実施形態の特徴的な部分を中心に説明する。
【００４３】
具体的には、複数のオプション装置のＳＴＳ信号線がＨｉｇｈ ｔｒｕｅのワイヤードＯＲ形式で接続されていることに特徴がある。ワイヤードＯＲ（論理和接続）は、入力された信号がすべてＨｉｇｈになると出力もＨｉｇｈになるが、入力された信号の１つでもＬｏｗであれば出力もＬｏｗとなるような論理回路である。なお、ワイヤードＯＲは、実際にはＡＮＤとして機能することに注意が必要である。すなわち、ワイヤードＯＲは、Ｎ（２以上の自然数）入力・１出力のＡＮＤ素子のようなものである。
【００４４】
例えば、各オプション装置は、送信又は受信の準備が完了すると、それぞれＳＴＳ信号をＨｉｇｈにしていく。そして、各オプション装置からのＳＴＳ信号がすべてＨｉｇｈになると、本体装置に入力されるＳＴＳ信号もＨｉｇｈとなる。すなわち、本体装置に入力されるＳＴＳ信号がＨｉｇｈになったという事実は、すべてのオプション装置のハンドシェイクが完了したことを意味するのである。
【００４５】
図７は、実施形態２における本体装置とオプション装置とのインターフェースを説明するためのブロック図である。制御ＣＰＵ２２０、２３０の内部構成は、図２、３に示した制御ＣＰＵ２１０と同様である。
【００４６】
図７に示されているように、ステータス信号線２０３は、各オプション装置から延びる状態信号線の支線７０１、７０２、７０３がワイヤードＯＲにより接続されている。ＡＮＤ素子７１１、７１２は、各スレーブ装置から延びるステータス信号線の支線を検出部３０２に対して論理和接続させるための論理和接続手段として機能する。ＡＮＤ素子７１１、７１２は概念的なものにすぎず、実際の回路設計では良く知られた好ましい回路素子により実現される。本体装置に入力されるＳＴＳ信号（ＳＴＳ＿ｉｎ）は、各オプション装置のＳＴＳ信号（ＳＴＳ＿ｏｕｔ１， ＳＴＳ＿ｏｕｔ２， ＳＴＳ＿ｏｕｔ３）のワイヤードＯＲ出力となる。ＳＴＳ＿ｏｕｔ１， ＳＴＳ＿ｏｕｔ２， ＳＴＳ＿ｏｕｔ３がすべてＨｉｇｈになれば、ＳＴＳ＿ｉｎもＨｉｇｈになる。
【００４７】
図８は、本体装置と各オプション装置とのシリアル通信方式の具体例を説明するためのタイミングチャートである。この例は、オプション装置２０ｃを指定したコマンドが送信され、オプション装置２０ｃがステータスを返信することを前提としている。
【００４８】
ｔ１１は、通信開始タイミングを示す。ｔ１２は、すべてのオプション装置のハンドシェイクが完了したタイミングを示す。ｔ１３は、通信終了タイミングを示す。本体装置は、通信開始前はコマンド信号線２０２の信号レベルをＨｉｇｈレベルに保持し、通信開始タイミング（ｔ１１）が到来するとＬｏｗレベルに変化させる。
【００４９】
一方、オプション装置２０ａ、２０ｂ、２０ｃは、コマンド信号線２０２による割り込みによって、それぞれＳＴＳ信号をＬｏｗとし、シリアル受信モードに移行する。各オプション装置は、ＣＬＫ信号８０４、８０５に同期して第１及び第２ＣＭＤ信号８０８、８０９を受信し、コマンドの内容を解析する。各オプション装置は、解析された内容に応じてＳＴＳ信号を準備する。
【００５０】
ここで、各ＣＭＤ信号には、コマンドを実行すべき（ステータスを返信すべき）オプション装置を指定するための指定情報が含まれている。指定情報は、各オプション装置に割り当てられた識別情報などである。したがって、各オプション装置は、自己が指定されているか否かを判定する。ここでは、オプション装置２０ｃが指定されているものとする。
【００５１】
オプション装置２０ａ、２０ｂは指定されていないため、ＦＦｈを送信データとして設定する。ＦＦｈは、２進数ではオール１（すべてＨｉｇｈ）となるが、これは、ワイヤードＯＲによりステータス信号線の支線が接続されていることを考慮したものである。一方、オプション装置２０ｃは、自己が指定されているため、コマンドに対応するステータスを設定したＳＴＳ信号（１ｓｔ ｓｔａｔｕｓ）８１７を作成する。同様に、ＳＴＳ信号（２ｎｄ ｓｔａｔｕｓ）８１８も用意される。
【００５２】
各オプション装置は、ＳＴＳ信号の送信準備が完了すると、それぞれＳＴＳ信号（ＳＴＳ＿ｏｕｔ１， ＳＴＳ＿ｏｕｔ２， ＳＴＳ＿ｏｕｔ３）をＨｉｇｈレベルに切り換えて維持する。これにより、各オプション装置は、シリアル送信モードに移行する。ステータス信号線２０３にはワイヤードＯＲ形式の接続が採用されている。そのため、すべてのＳＴＳ信号（ＳＴＳ＿ｏｕｔ１， ＳＴＳ＿ｏｕｔ２， ＳＴＳ＿ｏｕｔ３）がＨｉｇｈになると、マスタ装置へのＳＴＳ信号（ＳＴＳ＿ｉｎ）がＨｉｇｈとなる（ｔ１２）。
【００５３】
その後、ＣＬＫ信号８０６に同期して、オプション装置２０ａ／２０ｂはＦＦｈをステータス信号線に出力する。また、オプション装置２０ｃは、１ｓｔ ｓｔａｔｕｓ（８１７）を送信する。同様に、ＣＬＫ信号８０７に同期して、オプション装置２０ａ／２０ｂはＦＦｈをステータス信号線に出力する。また、オプション装置２０ｃは、２ｎｄ ｓｔａｔｕｓ（８１８）を送信する。
【００５４】
ＳＴＳ＿ｏｕｔ１〜ＳＴＳ＿ｏｕｔ３信号はワイヤードＯＲ形式で接続されている。そのため、１ｓｔ ｓｔａｔｕｓ（８１７）、２ｎｄ ｓｔａｔｕｓ（８１８）がＳＴＳ＿ｉｎに反映され、それぞれ１ｓｔ ｓｔａｔｕｓ（８１０）、２ｎｄ ｓｔａｔｕｓ（８１１）となる。
【００５５】
各オプション装置２０ａ、２０ｂ、２０ｃは、ＳＴＳ信号をＬｏｗレベルに設定し、汎用ポートモードに移行する。そして、指定されたオプション装置２０ｃのみが、コマンドを実行する。各オプション装置は、通信準備が整ったら、再びＳＴＳ信号をＨｉｇｈレベルに変更することで、汎用ポートモードに移行する。ワイヤードＯＲ形式による接続のため、すべてのＳＴＳ信号がＨｉｇｈになると、マスタ装置へのＳＴＳ信号が再びＨｉｇｈとなる（ｔ１３）。これにより、マスタ装置は、全オプション装置の通信準備が整ったことを認識する。
【００５６】
以上説明したように、本実施形態では、複数のスレーブ装置を１つのマスタ装置に接続する場合であっても、ハンドシェイクのための専用線を設けずに、スレーブ装置からマスタ装置へデータを送信する際のハンドシェイクを実現できる。従来であれば、複数あるオプション装置の各処理時間のうち最大処理時間を共通の待ち時間としていたため、効率がわるかった。しかし、本実施形態であれば、各オプション装置は、処理が終わり次第ハンドシェイクして次の通信ステップへ進むことで可能となるため、処理時間の短縮が可能となる。
【００５７】
また、信号線の接続にワイヤードＯＲなどの論理和接続手段を採用することで、オプション装置の数が増減するような画像形成装置にも本発明の技術思想を容易に適用できる利点がある。
【００５８】
［実施形態３］
以下、本発明に関わる実施形態３について説明する。実施形態３も実施形態１、２と同様に画像形成装置とオプション装置との間の通信に関するものである。そのため、以下では、実施形態１、２と同様な部分については説明を省略し、本実施形態の特徴的な部分を中心に説明する。
【００５９】
複数のオプション装置が接続された画像形成装置において、装置全体としてスループット（単位時間あたりのプリント枚数）を向上させるためには、各オプション装置の用紙搬送状態をリアルタイムでモニタすることが望ましい。例えば、各オプション装置に対して個別にセンサ状態を問い合せると、各オプション装置の情報が更新されるまでの時間が長くなるため、情報のリアルタイム性が失われやすい。これでは、好適に用紙搬送制御を行うことが困難となる。
【００６０】
そこで、本実施形態は、ステータス要求コマンドを送信しなくても、オプション装置に関する必要な情報をリアルタイムで取得できるようにする。これにより、本体装置は、リアルタイム性を欠くことなく、すべてのオプション装置の状態情報を監視できるようになる。
【００６１】
具体的には、マスタ装置からＣＭＤ信号を受信するのと並行して（ＣＭＤ信号を受信するためのクロック信号に同期して）、各スレーブ装置が、リアルタイム性を要求される情報をＳＴＳ信号に搭載して送信する。これにより、マスタ装置は、問い合せいを送信することなく、リアルタイム性を要求される情報を各スレーブ装置から入手できるようになる。
【００６２】
図９は、本体装置と各オプション装置とのシリアル通信方式の具体例を説明するためのタイミングチャートである。なお、図８と共通する部分には、同一の参照符号が付されている。
【００６３】
各オプション装置は、ＣＭＤ信号による割り込みがあると（ｔ１１）、それぞれＳＴＳ信号をＬｏｗレベルに切り換えることでシリアル送受信モードに移行する。さらに、各オプション装置は、リアルタイム性の必要とされる状態情報（例：紙有無センサや搬送センサの情報など）を取得して確定する。これにより、リアルタイム性を確保しやすくなる。
【００６４】
各オプション装置は、確定した状態情報を送信データとして設定する。各オプション装置が状態情報を送信するために利用できるビットの位置（送信期間）は異なっている。図９によれば、各オプション装置の状態情報は２ｂｉｔずつである。２ビットのうち、１番目のビットを紙有無センサの検出結果とし、２番目のビットを搬送センサの検出結果として利用できる。図９によれば、オプション装置２０ａの状態情報を搬送するＳＴＳ信号が９２１、９２２である。オプション装置２０ｂの状態情報を搬送するＳＴＳ信号が９２３、９２４である。オプション装置２０ｃの状態情報を搬送するＳＴＳ信号が９２５、９２６である。各ＳＴＳ信号がＣＬＫ信号８０４、８０５に同期して送出される。なお、ビットの内容は、例えば、紙無しならＨｉｇｈ、紙有りならＬｏｗである。
【００６５】
最終的に、各オプション装置からのＳＴＳ信号はワイヤードＯＲによって結合され、１つのＳＴＳ信号９１９、９２０となる。なお、各オプション装置は、自己が状態情報を送信するビット位置以外のビット位置では、Ｈｉｇｈを出力する。これは、ワイヤードＯＲを採用しているための対策である。
【００６６】
各オプション装置は、最初のＳＴＳ信号の送信が完了すると、一旦、ＳＴＳ信号をＬｏｗに変化させる。これは、２番目のＣＭＤ信号８０９を待つためである。また、ＳＴＳ信号のＬｏｗは、シリアル送受信モードへの移行を意味する。各オプション装置は、２番目のＳＴＳ信号９２２、９２４、９２６の送信準備をする。すなわち、各オプション装置は、リアルタイム性が必要とされる状態情報を取得する。
【００６７】
ここで、最初に送信した状態情報と２番目に送信する状態情報とを同一としてもよい。本体装置のＳＴＳ受信部は、１回目にオプション装置から受信した状態情報と２回目にオプション装置から受信した状態情報とが同一であれば採用し、違っていれば不採用とする。これにより、状態情報の送受信時に発生したノイズなどによるエラーを除去できる利点がある。
【００６８】
このように、各オプション装置の状態情報送信部３１３は、それぞれ同一のＣＬＫ信号に対する送信期間（例：８ビットの送信期間）を分割して得られる複数の送信タイミングのうちそれぞれ異なる送信タイミングで非依存情報の状態信号を送信する。一方で、コマンド信号により指定されたスレーブ装置に備えられている状態情報送信部３１３は、依存情報を伝送するためのＳＴＳ信号８１７、８１８を送信する。そして、コマンド信号により指定されなかったスレーブ装置に備えられている状態情報送信部３１３は、ステータス信号線の信号レベルをハイレベルに維持する。
【００６９】
また、取得部３１４は、コマンド信号線２０２の信号レベルが変化すると、依存情報と非依存情報との少なくとも一方を確定する。上述したように、依存情報は、ＣＭＤ信号に依存する状態情報であり、非依存情報は、ＣＭＤ信号に依存しない状態情報である。
【００７０】
図１０は、本体装置の処理についてのフローチャートである。なお、図５で説明した処理については同一の参照番号を付すことで、説明を省略する。ステップＳ５０１及びＳ５０２に続いて、ステップＳ１００１を実行する。
【００７１】
ステップＳ１００１で、制御ＣＰＵ２００は、１ｓｔ ｃｏｍｍａｎｄの送信が完了し、かつ、オプション装置２０ａ、２０ｂ、２０ｃからのＳＴＳ信号９１９の受信が完了したか否かを判定する。双方が完了すると、ステップＳ１００２に進み、制御ＣＰＵ２００は、２ｎｄ ｃｏｍｍａｎｄの送信が完了し、かつ、各オプション装置からのＳＴＳ信号９２０の受信が完了したか否かを判定する。双方が完了すると、ステップＳ１００３に進む。
【００７２】
ステップＳ１００３で、制御ＣＰＵ２００は、１番目のＳＴＳ信号９１９と２番目のＳＴＳ信号９２０とを比較し、両者が同一であるか否かを判定する。同一であれば、ステップＳ１００４に進み、制御ＣＰＵ２００は、不図示の記憶装置に保持している各オプション装置の状態情報を、受信した状態情報へと更新する。一方、同一でなければ、状態情報を更新することなく、ステップＳ５０５へ進む。その後、Ｓ５０５ないしＳ５０７が実行される。
【００７３】
図１１は、オプション装置の処理についてのフローチャートである。図６で説明した処理については同一の参照番号を付すことで、説明を省略する。ステップＳ６０２ないしＳ６０５が、Ｓ１１０１ないしＳ１１０７に置換されている。
【００７４】
ステップＳ１１０１で、各オプション装置の取得部３１４は、紙有無センサや紙搬送センサなどから状態情報を取得して内容を確定する。ステップＳ１１０２で、各オプション装置の状態情報送信部３１３は、１番目の状態情報を送信データとして設定し、ＳＴＳ信号９２１、９２３、９２５を生成する。
【００７５】
ステップＳ１１０３で、各オプション装置の通知部３１２は、ＳＴＳ信号をＬｏｗに変化させる。ステップＳ１１０４で、各オプション装置の制御ＣＰＵは、１ｓｔ ｃｏｍｍａｎｄを受信し、かつ、１番目の状態情報の送信が完了したか否かを判定する。双方が完了していれば、ステップＳ１１０５に進む。ステップＳ１１０５で、各オプション装置の状態情報送信部３１３は、２番目の状態情報を送信データとして設定し、ＳＴＳ信号９２２、９２４、９２６を生成する。なお、エラー抑制の観点から同一の内容の状態信号を複数回送信する場合は、２番目の状態情報が１番目の状態情報と同一となる。
【００７６】
ステップＳ１１０６で、各オプション装置の通知部３１２は、ＳＴＳ信号をＬｏｗに変化させる。ステップＳ１１０７で、各オプション装置の制御ＣＰＵは、２ｎｄ ｃｏｍｍａｎｄを受信し、かつ、２番目の状態情報の送信が完了したか否かを判定する。双方が完了していれば、上述したステップＳ６０６ないしＳ６１５を実行する。
【００７７】
以上説明したように、本実施形態によれば、マスタ装置からＣＭＤ信号を受信するのと並行して（ＣＭＤ信号を受信するためのクロック信号に同期して）、各スレーブ装置が、リアルタイム性を要求される情報をＳＴＳ信号に搭載して送信する。これにより、マスタ装置は、問い合せいを送信することなく、リアルタイム性を要求される情報を各スレーブ装置から入手できるようになる。よって、画像形成装置は、スループットを向上させやすくなる。なお、その他の効果については、実施形態１、２で説明したとおりである。
【図面の簡単な説明】
【００７８】
【図１】各実施形態共通に適用される画像形成装置の全体構成図である。
【図２】本実施形態における本体装置とオプション装置とのインターフェースを説明するためのブロック図である。
【図３】各制御ＣＰＵに実装される主要機能についての例示的な機能ブロック図である。
【図４】本体装置とオプション装置とのシリアル通信方式の具体例を説明するためのタイミングチャートである。
【図５】本体装置において実行されるシリアル通信についてのフローチャートである。
【図６】オプション装置において実行されるシリアル通信についてのフローチャートである。
【図７】実施形態２における本体装置とオプション装置とのインターフェースを説明するためのブロック図である。
【図８】本体装置と各オプション装置とのシリアル通信方式の具体例を説明するためのタイミングチャートである。
【図９】本体装置と各オプション装置とのシリアル通信方式の具体例を説明するためのタイミングチャートである。
【図１０】本体装置の処理についてのフローチャートである。
【図１１】オプション装置の処理についてのフローチャートである。
【図１】
2008176743.tif 000003
【図２】
2008176743.tif 000004
【図３】
2008176743.tif 000005
【図４】
2008176743.tif 000006
【図５】
2008176743.tif 000007
【図６】
2008176743.tif 000008
【図７】
2008176743.tif 000009
【図８】
2008176743.tif 000010
【図９】
2008176743.tif 000011
【図１０】
2008176743.tif 000012
【図１１】
2008176743.tif 000013