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