通信システム
【課題】 マスタ装置に対し、接続されるスレーブ装置の装置数が増えた場合においては、スレーブ装置の情報をマスタ装置がリアルタイムに入手できなくなってしまう場合があり改善の余地があった。
【解決手段】 マスタ装置とスレーブ装置を組み合わせて1つのシステムとして考えた場合、システムの状況に応じて、マスタ装置が各スレーブ装置に対し、リアルタイムで取得する情報を、指定することにより、リアルタイムでスレーブ装置の情報をマスタ装置が取得することが可能となる。この時スレーブ装置からステータス信号を受信するのと並行して(ステータス信号を受信するためのクロック信号に同期して)、リアルタイムで取得する情報を、指定することでリアルタイム性を維持できる。
【解決手段】 マスタ装置とスレーブ装置を組み合わせて1つのシステムとして考えた場合、システムの状況に応じて、マスタ装置が各スレーブ装置に対し、リアルタイムで取得する情報を、指定することにより、リアルタイムでスレーブ装置の情報をマスタ装置が取得することが可能となる。この時スレーブ装置からステータス信号を受信するのと並行して(ステータス信号を受信するためのクロック信号に同期して)、リアルタイムで取得する情報を、指定することでリアルタイム性を維持できる。
【発明の詳細な説明】
【技術分野】
【0001】
マスタ装置とスレーブ装置とを含むシステムにおけるシリアル通信技術に関する。
【背景技術】
【0002】
従来、画像形成装置とそのオプション装置とを備えるシステムなどで、シリアル通信が利用されている。特許文献1によれば、マスタ装置とスレーブ装置とを備えるシリアル通信システムにおいて、マスタ装置からコマンド信号を受信するのと並行して、各スレーブ装置が、リアルタイム性を要求される情報をステータス信号に搭載して送信することが提案されている。これにより、特許文献1では、マスタ装置は問い合わせを送信することなく、リアルタイム性を要求される情報を各スレーブ装置から入手できる方法が提案されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2008−176743号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1によれば、信号線を増やすことなくマスタ装置からデータを送信するためのハンドシェイクを実現し、マスタ装置は各スレーブ装置からリアルタイム性を要求される情報を入手できるというメリットがある。しかし、特許文献1に記載の発明では、マスタ装置に接続されるスレーブ装置の装置数が増えた場合においては、リアルタイム性を要求される情報を入手できなくなってしまう場合があり改善の余地があった。
【0005】
そこで、本願は、スレーブ装置からステータス信号を受信するのと並行して(ステータス信号を受信するためのクロック信号に同期して)、各スレーブ装置に対し、マスタ装置がリアルタイムで取得する情報を、マスタ装置から指定可能にすることを目的とする。
【課題を解決するための手段】
【0006】
本発明は、上記課題を鑑みてなされたものであり、マスタ装置と1以上のスレーブ装置と、前記マスタ装置から前記スレーブ装置へクロック信号を送信するためのクロック信号線と、前記クロック信号に同期して、前記マスタ装置から前記スレーブ装置へデータ信号を送信するためのコマンド信号線と、前記クロック信号に同期して、少なくとも1つ以上の前記スレーブ装置から前記マスタ装置へデータ信号を送信するための状態信号線と、前記マスタ装置に備えられ、前記全てのスレーブ装置について前記状態信号線の信号レベルが変化すると、前記状態信号を送信させるためのクロック信号を前記クロック信号線へ送出するクロック発生手段と、前記各スレーブ装置から伸びる状態信号線の支線が論理和接続させるための論理和接続手段とを備えたシリアル通信システムをマスタ装置と1以上のスレーブ装置からなる通信システムであって、前記マスタ装置は、クロック信号及び第1データ信号を前記スレーブ装置へ送信し、クロック信号及び第1データ信号の送信に同期して、前記スレーブ装置から、論理和接続手段にて第4データ信号を受信する手段を有し、第1データ信号の送信と、第4データ信号の受信完了を意味する状態信号線のレベルの変化により、前記マスタ装置は、クロック信号及び第3データ信号を前記スレーブ装置へ送信し、クロック信号及び第3データ信号の送信に同期して、前記スレーブ装置から、第2データ信号を受信する手段を有し、前記第3データ信号は、システムの動作状況に応じて、前記第4データ信号を可変にするデータ信号であることを特徴とする通信システム。
【発明の効果】
【0007】
本願によれば、スレーブ装置からステータス信号を受信するのと並行して(ステータス信号を受信するためのクロック信号に同期して)、各スレーブ装置に対し、マスタ装置がリアルタイムで取得する情報を、マスタ装置から指定可能になる。
【図面の簡単な説明】
【0008】
【図1】画像形成装置の全体構成の一例を示す図である。
【図2】本体装置とオプション装置とのインターフェースのブロック図の一例である。
【図3】各制御CPUに実装される主要機能についての例示的な機能ブロック図である。
【図4】本体装置とオプション装置とのインターフェースのブロック図の一例である。
【図5】本体装置とオプション装置とのシリアル通信処理のタイミングチャートである。
【図6】本体装置とオプション装置とのシリアル通信処理のタイミングチャートである。
【図7】本体装置の処理についてのフローチャートである。
【図8】オプション装置の処理についてのフローチャートである。
【図9】における本体装置とオプション装置とのシリアル通信処理のタイミングチャートである。
【図10】おける本体装置とオプション装置とのシリアル通信処理のタイミングチャートである。
【図11】本体装置の処理についてのフローチャートである。
【図12】オプション装置の処理についてのフローチャートである。
【発明を実施するための形態】
【0009】
本発明に係るシリアル通システムを搭載した画像形成装置を図面に即して説明する。
なお、実施形態では、電子写真方式の多色画像形成装置を一例として紹介するが、本発明は、画像形成方式や単色か多色かの違いに依存することはない。また、画像形成装置以外の電子装置(コンピュータ、周辺機器、情報処理装置、家電製品)などにも、適用可能である。ただし、マスタ装置は、複数のスレーブ装置が接続可能であれば、特に本発明の効果が発揮されやすい。
【0010】
また、スレーブ装置に動作を指示するデータ信号を「コマンド」、スレーブ装置がコマンドによって指示された動作の状態をマスタ装置へ報知するためのデータ信号(状態信号)を「ステータス」と呼ぶ。また、マスタ装置とスレーブ装置の動作状況に応じて、スレーブ装置に関する情報を、マスタ装置から可変にすることを指示するデータ信号を「リアルタイムステータスコマンド」と呼ぶ。また、スレーブ装置に関する情報のデータ信号を「リアルタイムステータス」と呼ぶことにする。
【0011】
[実施形態1]
本実施形態では、マスタ装置がカラーレーザプリンタの本体装置に相当し、スレーブ装置が、オプション装置(例:増設可能なオプション装置やオプション排紙装置)に相当する。本体装置は、各オプション装置とデータを送受信する際には共通のクロックを利用したシリアル通信を実行する。その際に、本体装置とオプション装置の通信において「コマンド」、「ステータス」「リアルタイムステータスコマンド」「リアルタイムステータス」を使用する。これにより、本体装置に接続されるオプション装置の数が増えた画像形成装置においても、装置全体としてのスループット(単位時間あたりのプリント枚数)を向上させるためのシリアル通信を実現する。
【0012】
(本体装置)
図1は、各実施形態に対して共通に適用される画像形成装置の全体構成図である。画像形成装置100に1以上のオプション装置が接続されている。画像形成装置100は、4個の画像形成ステーションを備えている。各ステーションは、像担持体である感光ドラム1を有している。それぞれの感光ドラム1の周囲には回転方向に従って順に、帯電装置2、露光装置3、現像装置4、転写部材5、クリーニング装置6が配設されている。帯電装置2は、感光ドラム表面を一様に帯電させる。露光装置3は、画像情報に基づいてレーザービームを照射することで感光体ドラム上に静電潜像を形成する.現像装置4は、静電潜像にトナーを付着させてトナー像として顕像化する。転写部材5は、感光体ドラム上のトナー像を用紙に転写させる。クリーニング装置6は、転写後の感光体ドラム表面に残留した転写後トナーを除去する。ここで、感光体ドラム1と帯電装置2、現像装置4、クリーニング装置6は一体的にカートリッジ化され、いわゆるプロセスカートリッジ7を形成している。
【0013】
給送部は、オプション装置20aおよびオプション装置20b、20c、20d、20e、20fにより構成されている。給送部から給送された用紙は、搬送ベルトで構成された搬送装置9によって各ステーションへ搬送され、各色のトナー像が順じ転写されて多色画像が形成される。定着装置10は、用紙上の未定着像を加熱定着する。最終的に、用紙は、排出装置50へ排出される。排出装置50は、例えば、ソーターなどである。
【0014】
(給送部)
オプション装置20aは、本体装置に内蔵された給送装置であり、本体給送部と呼ばれることもある。ピックアップローラ21aは、一枚ずつ用紙を分離して給送する。搬送ローラ22a、23aは、さらに搬送方向の下流に向けて用紙を搬送する。給送部から給送された用紙は、レジストローラ15によって搬送装置9へ搬送される。なお、オプション装置20aは本体装置に内蔵されているため、一般にはオプション装置と呼べないかもしれない。しかし、本願明細書では、オプション装置20aもシリアル通信システムのスレーブ装置として動作するため、オプション装置の一種として取り扱うものとする。
【0015】
オプション装置20b、20c、20d、20e、20f、20gは本体装置に接続可能なオプションの給送部である。オプション装置20bは、ピックアップローラ21bによって一枚ずつ用紙を分離給送する。その後、用紙は、オプション装置の搬送ローラ22b、23bを介してオプション装置20aへ搬送される。オプション装置20c、20d、20e、20f、20gもオプション装置20bと同様、ピックアップローラ21c、21d、21e、21f、21gによって一枚ずつ分離給送する。その後、用紙は、オプション装置の搬送ローラ22c、23c、22d、23d、22e、23e、22f、23f、22g、23gを介して搬送方向の下流に接続されている各オプション装置へ搬送される。なお、用紙は、例えば、記録材、記録媒体、シート、転写材、転写紙と呼ばれることもある。
【0016】
24a、24b、24c、24d、24e、24f、24gは、用紙を検出するシートセンサである。シートセンサ24a、24b、24c、24d、24e、24f、24gが検出した用紙の有無を表す情報は、状態情報の好例である。一般に画像形成装置は、用紙の先端が到着したタイミングを起点として様々な制御(搬送制御や画像形成制御)を実行する。特に、画像形成装置のスループットを高速にするためには、リアルタイムかつ低遅延で状態情報をオプション装置から本体装置へと伝送することが要求される。
【0017】
(通信システム)
図2は、本体装置とオプション装置とのインターフェースを説明するための基本的なブロック図である。ここでは、オプション装置20b、20c、20d、20e、20f、20gについては記載の簡潔化のために省略されているが、オプション装置20b、20c、20d、20e、20f、20gもオプション装置20aと同様の構成を採用している。
【0018】
本体装置の制御CPU200とオプション装置20aの制御CPU210との間のインターフェース信号線は、クロック信号線201、コマンド信号線202及びステータス信号線203である。クロック信号線201は、マスタ装置から各スレーブ装置へクロック信号を送信するための信号線である。コマンド信号線202は、クロック信号に同期してマスタ装置から各スレーブ装置へコマンド信号を送信するための信号線である。ステータス信号線203は、クロック信号に同期して少なくとも1つのスレーブ装置からマスタ装置へスレーブ装置の状態を表す状態信号を送信する状態信号線である。なお、クロック信号を「CLK信号」、コマンド信号を「CMD信号」、ステータス信号(状態信号)を「STS信号」と呼ぶことにする。なお、CMD信号は、外部割込みのための入力ポート211にも入力されるよう配線されている。また、STS信号も、外部割込みのための入力ポート207にも入力されるよう配線されている。なお、CMD信号及びSTS信号はデータ信号である。
【0019】
本体装置制御CPU200は、CLK発生部204、CMD送信部205及びSTS受信部206を備えている。CLK発生部204は、クロック発生源であり、クロック信号線201を送出する。例えば、CLK発生部204は、マスタ装置に接続されているすべてのスレーブ装置についてステータス信号線の信号レベルが変化すると、スレーブ装置にSTS信号を送信させるためのCLK信号をクロック信号線201へ送出する。CMD送信部205は、CLK信号に同期してCMD信号をコマンド信号線202へ送出する。STS受信部206は、CLK信号に同期してステータス信号線203を介してSTS信号を受信する。
【0020】
オプション装置の制御CPU210は、CLK入力部214、CMD受信部215及びSTS送信部216を備えている。CLK入力部214、クロック信号線201を介してCLK信号を受信する。CMD受信部215は、CLK信号に同期してコマンド信号線202を介してCMD信号を受信する。例えば、CMD受信部215は、コマンド信号線202の信号レベルが変化するとコマンド信号線を介してCMD信号を受信すべく待機し、マスタ装置からクロック信号が送出されるとCLK信号に同期してCMD信号を受信する。STS送信部216は、CLK信号に同期してステータス信号線203を介してSTS信号を送信する。
【0021】
このように、本体装置は、CLK信号とCMD信号を供給するマスタ装置として働く。また、オプション装置20aは、本体装置から供給されたCLK信号及びCMD信号に応じて動作し、STS信号を出力するスレーブ装置として働く。
【0022】
図3は、各制御CPUに実装される主要機能についての例示的な機能ブロック図である。
CMD送信部205に含まれる伝達部301は、コマンド信号線202の信号レベルを変化させることで、コマンド信号線202を介してコマンド信号を送信することを各スレーブ装置に伝達する。STS受信部206に含まれる検出部302は、すべてのスレーブ装置についてステータス信号線203の信号レベルが変化したことを検出する。
【0023】
CMD受信部215に含まれる検知部311は、スレーブ装置に接続されたコマンド信号線202の信号レベルが変化したことを検知する。STS送信部216に含まれる通知部312は、スレーブ装置が接続されたステータス信号線203の信号レベルを変化させる。そしてこれにより、STS信号を送信する準備が整ったこともしくは、リアルタイムステータスコマンドとしてのCMD信号を受信する準備が整ったことをマスタ装置に通知する。
【0024】
状態情報送信部313は、STS信号を送信するためのCLK信号に同期させてSTS信号をマスタ装置へ送信する。また、状態情報送信部313は、CMD信号を受信するためのCLK信号に同期させてステータスやリアルタイムステータスを伝送するためのSTS信号をマスタ装置へ送信する。例えば、リアルタイム性が要求されるような情報は、リアルタイムステータスとして処理されることが望ましい。取得部314は、例えば、シートセンサなどの状態検出センサを利用して、ステータスやリアルタイムステータスなどを取得する。
【0025】
本実施形態では、複数のオプション装置のSTS信号線がHigh trueのワイヤードOR形式で接続されていることが特徴である。ワイヤードOR(論理和接続)は、入力された信号がすべてHighになると出力もHighになるが、入力された信号の1つでもLowであれば出力もLowとなるような論理回路である。なお、ワイヤードORは、実際にはANDとして機能することに注意が必要である。すなわち、ワイヤードORは、N(2以上の自然数)入力・1出力のAND素子のようなものである。
【0026】
例えば、各オプション装置は、送信または受信準備が完了すると、それぞれSTS信号をHighにしていく。そして、各オプション装置からのSTS信号がすべてHighになると、本体装置に入力されるSTS信号もHighとなる。すなわち、本体装置に入力されるSTS信号がHighになったという事実は、すべてのオプション装置のハンドシェイクが完了したことを意味するのである。
【0027】
図4は、本実施形態における本体装置とオプション装置のインターフェースを説明するためのブロック図である。制御CPU220、230、240、250、260、270の内部構成は、図2に示した制御CPU210と同様である。
【0028】
図4に示されているように、ステータス信号線203は、図5に示される各オプション装置から延びる状態信号線の支線503、504、505、506、507、508、509がワイヤードORにより接続されている。各スレーブ装置から伸びるステータス信号線の支線を検出部302に対して論理和接続させるための論理和接続手段としてAND素子を使用する。AND素子は概念的なものにすぎず、実際の回路設計では良く知られた回路素子により実現される。本体装置に入力されるSTS信号(STS_in)は、各オプション装置のSTS信号(STS_out1、STS_out2、STS_out3、STS_out4、STS_out5、STS_out6、STS_out7)のワイヤードOR出力となる。STS_out1、STS_out2、STS_out3、STS_out4、STS_out5、STS_out6、STS_out7がすべてHighになれば、Sts_inもHighになる。
【0029】
図5は、本体装置と各オプション装置とのシリアル通信方式の具体例を説明するためのタイミングチャートである。この例は、オプション装置20cを指定したコマンドが送信され、オプション装置20cがステータスを返信することを前提としている。
【0030】
t1は、通信開始タイミングを示す。t2は、すべてのオプション装置のハンドシェイクが完了したタイミングを示す。t3は、通信終了タイミングを示す。本体装置は、通信開始前はコマンド信号線202の信号レベルをHighに保持し、通信開始タイミング(t1)が到来するとLowレベルに変化させる。
【0031】
一方、オプション装置20a、20b、20c、20d、20e、20d、20f、20gは、コマンド信号線202による割り込みによって、それぞれSTS信号をLowとし、シリアル受信モードに移行する。各オプション装置は、CLK信号510、511に同期して第1及び第2CMD信号514、515(第1データ信号)を受信し、コマンドの内容を解析する。各オプション装置は、解析された内容に応じてSTS信号を準備する。
【0032】
ここで、各CMD信号には、コマンドを実行すべき(ステータスを返信すべき)オプション装置を指定するための指定情報が含まれている。指定情報は、各オプション装置に割り当てられた識別情報などである。したがって、各オプション装置は、自己が指定されているか否かを判定する。ここでは、オプション装置20cが指定されているものとする。
【0033】
オプション装置20a、20b、20d、20e、20f、20gは指定されていないため、FFhを送信データとして設定する。FFhは、2進数ではオール1(すべてHigh)となるが、これは、ワイヤードORによりステータス信号線の支線が接続されていることを考慮したものである。一方、オプション装置20cは、自己が指定されているため、コマンド(514、515)に対応するステータスを設定した第1STS信号(1st status)516(第2データ信号)を作成する。同様に、第2STS信号(2nd status)517(第2データ信号)も用意される。
【0034】
各オプション装置は、STS信号の送信準備が完了すると、それぞれSTS信号(STS_out1、STS_out2、STS_out3、STS_out4、STS_out5、STS_out6、STS_out7)のワイヤードOR出力となる。STS_out1、STS_out2、STS_out3、STS_out4、STS_out5、STS_out6、STS_out7)をHighレベルに切り替えて維持する。ステータス信号線203にはワイヤードOR形式の接続が採用されている。そのため、すべてのSTS信号(STS_out1、STS_out2、STS_out3、STS_out4、STS_out5、STS_out6、STS_out7)のワイヤードOR出力となる。STS_out1、STS_out2、STS_out3、STS_out4、STS_out5、STS_out6、STS_out7)がHighになると、マスタ装置へのSTS信号(Sts_in)がHighとなる(t2)。
【0035】
その後、CLK信号512に同期して、オプション装置20a、20b、20d、20e、20f、20gはFFhをステータス信号線に出力する。また、オプション装置20cは、1st status(518)を送信する。同様に、CLK信号507に同期して、オプション装置20a、20b、20d、20e、20d、20f、20gはFFhをステータス信号線に出力する。また、オプション装置20cは、2nd status(519)を送信する。
【0036】
STS_out1〜Sts_out7信号はワイヤードOR形式で接続されている。そのため、1st status(518)、2nd status(519)がSTS_inに反映され、それぞれ1st status(516)、2nd status(517)となる。
【0037】
各オプション装置20a、20b、20c、20d、20e、20d、20f、20gは、STS信号をLowレベルに設定する。そして、指定されたオプション装置20cのみが、コマンドを実行する。各オプション装置は、通信準備が整ったら、再びSTS信号をHighレベルに変更する。
ワイヤードOR形式による接続のため、全てのSTS信号がHighになると、マスタ装置へのSTS信号が再びHighとなる(t3)。これにより、マスタ装置は、全オプション装置の通信準備が整ったことを認識する。
【0038】
本実施形態では、複数のスレーブ装置を1つのマスタ装置に接続する場合であっても、ハンドシェイクのための専用線を設けずに、スレーブ装置からマスタ装置へデータを送信する際のハンドシェイクを実現できる。従来であれば、複数あるオプション装置の各処理時間の内、最大処理時間を共通の待ち時間としていたため、効率が悪かった。しかし、本実施形態であれば、各オプション装置は、処理が終わり次第ハンドシェイクして次の通信ステップへ進むことで可能となるため、処理時間の短縮も可能となる。
【0039】
また、信号線の接続にワイヤードORなどの論理和接続手段を採用することで、オプション装置の数が増減するような画像形成装置にも本発明の技術思想を容易に適用できる利点がある。
【0040】
複数のオプション装置が接続された画像形成装置において、装置全体としてのスループット(単位時間あたりのプリント枚数)を向上させるためには、各オプション装置の用紙搬送状態をリアルタイムでモニタすることが望ましい。例えば、各オプション装置に対して個別にセンサ状態を問い合わせると、各オプション装置の情報が更新されるまでの時間が長くなってしまうため、情報のリアルタイム性が失われやすい。これでは、好適に用紙搬送制御を行うのが困難となる。
【0041】
そこで、本実施形態は、ステータス要求コマンドを送信しなくても、本体装置に接続された全てのオプション装置に関する必要な情報をリアルタイムで取得できるようになる。これにより、本体装置は、リアルタイム性を欠くことなく、すべてのオプション装置の状態情報を監視できるようになる。
【0042】
具体的にはマスタ装置がスレーブ装置からSTS信号を受信するのと並行して(STS信号を受信するためのクロック信号に同期して)、マスタ装置が、リアルタイムステータスが必要とされるスレーブ装置を、リアルタイムステータスコマンドを使用して指定する。つまり、画像形成装置の動作状況に応じて、マスタ装置がリアルタイムステータスを必要とするスレーブ装置の指定を可変にする。
マスタ装置から指定されたスレーブ装置は、マスタ装置からCMD信号を受信するのと並行して(CMD信号を受信するためのクロック信号に同期して)、リアルタイムステータスをSTS信号に搭載して送信する。これにより、マスタ装置がスレーブ装置のリアルタイムステータスを各スレーブ装置から入手できるようになる。
【0043】
図6は、本体装置と各オプション装置とのシリアル通信方式の具体例を説明するためのタイミングチャートである。なお、図5と共通する部分には、同一の参照符号が付されている。
【0044】
各オプション装置は、CMD信号による割り込みがあると(t11)、それぞれSTS信号をLowレベルに切り換えることでシリアル送受信モードに移行する。さらに、各オプション装置は、リアルタイムステータスコマンド601で指定された給紙段の紙有無センサや搬送センサの情報をリアルタイムステータス611として確定する。
【0045】
各オプション装置は、確定したリアルタイムステータス611を送信データとして設定する。各オプション装置がリアルタイムステータスを送信するために利用できるビットの位置(送信期間)は異なっている。
【0046】
図6によれば、リアルタイムステータスコマンド601で指定された各オプション装置のリアルタイムステータスは2bitずつである。2ビットのうち、1番目のビットを紙有無センサの検出結果とし、2番目のビットを搬送センサの検出結果として利用できる。オプション装置20aのリアルタイムステータスを返送するSTS信号が612(第4データ信号)である。オプション装置20bのリアルタイムステータスを返送するSTS信号が613(第4データ信号)である。
【0047】
オプション装置20cとオプション装置20dとオプション装置20eはリアルタイムステータスコマンド(第3データ信号)で指定されていないため、リアルタイムステータスを返送するSTS信号はない。オプション装置20fのリアルタイムステータスを返送するSTS信号は614である。オプション装置20gのリアルタイムステータスを返送するSTS信号は615である。各STS信号がCLK信号510、511に同期して送出される。なお、ビットの内容は、例えば、紙無しならHigh、紙有りならLowである。
【0048】
また、リアルタイムステータスコマンドで各オプションを指定する場合は、LSBを除いて左からオプション装置20a、20b、20c、装置20d、装置20e、装置20f、装置20gとなる。そして、指定するオプション装置の部分に対してはHigh、指定しないオプション装置の部分に対してはLowとする。なおLSBは1に固定する。
【0049】
全てのオプション装置は、リアルタイムステータスコマンド601を受信した際に、自装置がリアルタイムステータスを返送する装置となっているか否かを自装置の装置IDにより判断する。リアルタイムステータスを返送する装置となっていると判断した場合、リアルタイムステータスの何bit目に情報を載せるのかを判断する。具体的には、自装置がリアルタイムステータスコマンドのLSBから数えて何bit目で指定されているのかということにより判断する。例えば、図6によれば、1段目、2段目、6段目、7段目の装置にい対して、リアルタイムステータスを返送するようにリアルタイムステータスコマンド601で指示されている。
【0050】
1段目、2段目、6段目、7段目の各給紙段は、自装置の指示bitが1となっているので、リアルタイムステータスを返送すると判断する。
【0051】
そして、1段目の給紙段はリアルタイムステータスのLSBから1bit目と2bit目に情報を載せると判断する。2段目の給紙段は、LSBから何個1が指定されているのかを数える(ただしLSBは除く)。この場合はLSBから数えて、2個の装置が指定されており、この2個目装置が自装置であることから、リアルタイムステータスのLSBから3bit目と4bit目に情報を載せると判断する。同様に、6段目の給紙段は、リアルタイムステータスコマンドのLSBから数えて3個目の装置として自装置が指示されていることから、リアルタイムステータスのLSBから5bit目と6bit目に情報を載せると判断する。
【0052】
以上のようにして、リアルタイムステータスコマンド601(第3データ信号)で指定されたオプション装置は、リアルタイムステータスの各オプション装置毎に割り当てられたbitに紙有無センサの情報や搬送センサの情報を載せる。
【0053】
最終的に、各オプション装置からのSTS信号はワイヤードORによって結合され、1つのSTS信号602となる(第4データ信号)。なお、各オプション装置は、自己がリアルタイムステータスを送信するビット位置以外のビット位置では、Highを出力する。これはワイヤードORを採用しているための対策である。
【0054】
各オプション装置は、最初のSTS信号の送信が完了すると、一旦、STS信号をLowに変化させる。これは、CLK信号511に同期して受信するCMD信号610を待つためである。各オプション装置は、CLK信号511に同期して受信するリアルタイムステータス信号612、613、614、615の送信準備をする。すなわち、各オプション装置は、リアルタイム性が必要とされるオプション装置の状態情報(例えば、紙有無センサの情報や搬送センサの情報)を取得する。
【0055】
ここで、CLK信号510に同期して送信したリアルタイムステータスとCLK信号511に同期して送信するリアルタイムステータスとを同一内容としてもよい。本実施例の場合は同一内容とするため、図中の番号を同じにしている。本体装置のSTS受信部は、CLK信号510に同期してオプション装置から受信したリアルタイムステータスとCLK信号511に同期してオプション装置から受信したリアルタイムステータスとが同一であれば採用し、違っていれば不採用とする。これにより、リアルタイムステータスの送受信時に発生したノイズなどによるエラーを除去できる利点がある。
【0056】
このように、各オプション装置の状態情報送信部313は、それぞれ同一のCLK信号に対する送信期間(例:8ビットの送信期間)を分割して得られる複数の送信タイミングのうちそれぞれ異なる送信タイミングでリアルタイムステータスを送信する。一方で、コマンド信号609、610により指定されたスレーブ装置に備えられている状態情報送信部313は、コマンド信号609、610に対するステータスを伝送するためのSTS信号617、618を送信する。そして、コマンド信号により指定されなかったスレーブ装置に備えられている状態情報送信部313は、ステータス信号線の信号レベルをハイレベルに維持する。
【0057】
また、取得部314は、コマンド信号線202の信号レベルが変化すると、ステータスとリアルタイムステータスとの少なくとも一方を確定する。上述したように、ステータスは、コマンド信号に対応するオプション装置の状態の情報であり、リアルタイムステータスは、画像形成装置の動作の状況に応じてマスタ装置が必要とする、スレーブ装置に関する情報である。
【0058】
図7は、本体装置の処理についてのフローチャートである。
ステップS701で、STS受信部206の検出部302は、STS信号がHighかどうかを判定する。STS信号がHighになると、ステップS702へ進み、CMD送信部205の伝達部301は、CMD信号の信号レベルをLowに変化させる。
ステップS703で、制御CPU200は、1st Commandの送信が完了し、かつ、オプション装置20a、20b、20c、20d、20e、20f、20gからのリアルタイムステータス信号602の受信完了を判定する。双方が完了すると、ステップS704に進み、制御CPU200は、2nd Commandの送信が完了し、かつ、各オプション装置からのリアルタイムステータス信号602の受信が完了したか否かを判定する。双方が完了すると、ステップS705へ進む。
【0059】
ステップS705で、制御CPU200は、CLK信号510に同期して受信したリアルタイムステータス602とCLK信号511に同期して受信したリアルタイムステータス602とを比較し、両者が同一内容であるか否かを判定する。同一内容であれば、ステップS706へ進み、制御CPU200は不図示の記憶装置に保持している各オプション装置のリアルタイムステータスを更新する。一方、同一でなければ、リアルタイムステータスを更新することなく、ステップS707へ進む。その後、S707が実行される。
【0060】
ステップS707で、STS受信部206の検出部302は、STS信号がHighかどうかを再び判定する。STS信号がHighになると、ステップS708へ進み、CMD送信部205の伝達部301は、CMD信号の信号レベルをLowに変化させる。
【0061】
ステップS709で、制御CPU200は、1st Statusを受信し、かつ、リアルタイムステータスコマンドを送信する。
ステップS710では、制御CPU200が、2nd Statusを受信し、かつ、ステップS709で送信したリアルタイムステータスコマンドと同一の内容のリアルタイムステータスコマンドを送信する。
【0062】
図8はオプション装置の処理についてのフローチャートである。
【0063】
ステップS801で、本体装置から2回受信するリアルタイムステータスコマンド601が同一内容であることの判断を行う。リアルタイムステータスコマンド601が同一内容である場合は、ステップS802へ進む。リアルタイムステータスコマンド601が同一内容でない場合はリアルタイムステータス611を更新せずステップS804へ進む。
ステップS802で各オプション装置の取得部314は、紙有無センサや紙搬送センサなどからリアルタイムステータス611を取得して内容を確定し、リアルタイムステータス611を更新して、ステップS803へ進む。
ステップS803では、各オプション装置の状態情報送信部313は、1番目のリアルタイムステータスを送信データとして設定し、クロック信号510に同期して送信するSTS信号612、613、614、615を生成する。
ステップS804で、各オプション装置の通知部312は、STS信号をLowに変化させる。ステップS805で、各オプション装置の制御CPUは、1st Commandを受信し、かつ、CLK信号510に同期するリアルタイムステータスの送信が完了したか否かを判定する。双方が完了していれば、ステップS806へ進む。ステップS806で、各オプション装置の状態情報送信部313は、CLK信号511に同期して送信するリアルタイムステータスを送信データとして設定し、CLK信号511に同期して送信するSTS信号612、613、614、615を生成する。なお、エラー制御の観点から同一の内容の状態信号を複数回送信する場合は、CLK信号510に同期して送信されるリアルタイムステータスと、CLK信号511に同期して送信されるリアルタイムステータスが同一内容となる。
【0064】
ステップS807で、各オプション装置の通知部312は、STS信号をLowに変化させる。ステップS808で、各オプション装置の制御CPUは2nd Commandを受信し、かつ、CLK信号511に同期させるリアルタイムステータスの送信が完了したか否かを判定する。双方が完了していれば、上述したステップS809へ進み、CMD受信部215は、受信したコマンドの内容を解析する。ステップS810で、状態情報送信部313は、1st statusを準備するために、受信したコマンド609、610に応じたステータスを送信データに設定する。ステップS811で、通知部312は、STS信号をHighに変化させることで、STS送信部216は、送信待ち状態となる。また、CMD受信部215は受信待ち状態となる。その後、クロック信号が入力されると、状態情報送信部313は、クロック信号512に同期して1st statusの送信と、リアルタイムステータスコマンド616の受信を行う。ステップS812で、STS送信部216は、1st statusの送信が完了したか否かを判定する。またCMD受信部215は、リアルタイムステータスコマンドの受信を行う。完了すると、ステップS813へ進み、2nd statusを準備するために、受信したコマンド609、610に応じたステータスを送信データに設定する。ステップS814で、通知部312は、STS信号をHighに変化させることで、STS送信部216は送信待ち状態になり、CMD受信部215は受信待ち状態になる。
【0065】
ステップS815で、STS送信部216は、2nd Statsuの送信が完了したことと、CMD受信部215は、リアルタイムステータスコマンド616の受信が完了したことを判定する。完了すると、ステップS816へ進み、通知部312は、STS信号をLowに変化させる。ステップS817で、制御CPU210は、受信したコマンドの内容に応じた処理と、リアルタイムステータスコマンドの解析を行う。ステップS818で、通知部312は、STS信号をHighに変化させる。
【0066】
以上説明したように、本実施形態によれば、スレーブ装置からステータス信号を受信するのと並行して(ステータス信号を受信するためのクロック信号に同期して)、各スレーブ装置に対し、リアルタイム通信を行える。具体的には、マスタ装置がリアルタイムで取得する情報を、マスタ装置から指定することにより、スレーブ装置の装置数が増えた場合においても、マスタ装置がスレーブ装置の情報をリアルタイムで入手できるようになる。
【0067】
本実施形態では、1st Command及び2nd Commandとも8bitであり、1st Status及び2nd Statusも8bitとして説明しているが、これは一例にすぎない。コマンドを2つに分割せずに、16bit長の1つのデータとしてもよい。リアルタイムステータスコマンドも同様である。また、本実施形態ではステータス信号線を介してコマンド信号を送信することを各スレーブ装置に伝達してもよい。これにより、ハンドシェイクのための専用線を設けずに、マスタ装置からスレーブ装置へデータを送信する際のハンドシェイクを実現できる。
【0068】
[実施形態2]
実施形態2も実施形態1と同様に画像形成装置とオプション装置との間の通信に関するものである。そのため以下では、実施形態1と同様な部分については説明を省略し、本実施形態の特徴的な部分を中心に説明する。
【0069】
複数のオプション装置が接続された画像形成装置において、装置全体としてスループットを向上させるためには、各オプション装置の用紙搬送状態をリアルタイムでモニタすることが望ましい。特に、特定のオプション装置から連続で用紙を給紙し、用紙を搬送している場合にはリアルタイム性が必要とされる状態情報はある程度限られている。例えば、給紙を行うオプション装置の紙有無センサと搬送センサの情報と、給紙を行うオプション装置より用紙搬送方向に対して下流に接続されている、全てのオプション装置の搬送センサの情報である。給紙を行うオプション装置の紙有無センサの情報は、主に連続給紙中のラスト紙検知のために有効であり、この情報をリアルタイムでモニタすることにより、不必要なJAMなどを回避する点に対して有効である。また、給紙を行うオプション装置とそれより用紙搬送方向に対して下流に接続されている全てのオプション装置の搬送センサの情報をリアルタイムでモニタすることは、好適に用紙搬送制御を行うために有効である。
【0070】
そこで、本実施形態は、リアルタイムステータスコマンドにて給紙を行うオプション装置を接続されている全てのオプション装置に通知する。これにより、リアルタイム性を要求される情報(上述した条件においての紙有無センサと搬送センサの情報)を各スレーブ装置から入手でき、スループットが向上する。本実施形態では、具体的には、スループットを満足することが一番困難である、オプション装置20gからの連続プリントの場合を考える。
【0071】
図9は、本体装置と各オプション装置とのシリアル通信方式の具体例を説明するためのタイミングチャートである。なお、図5や図6と共通する部分には、同一の参照符号が付されている。
【0072】
各オプション装置は、CMD信号による割り込みがあると(t11)、それぞれのSTS信号をLowレベルに切り換えることで、シリアル送受信モードに移行する。さらに、各オプション装置は、リアルタイムステータスの情報を取得して確定する。本実施形態の場合、オプション装置20gから給紙を行っているため、オプション装置20a、20b、20c、20d、20e、20fは搬送センサの情報を、オプション装置20gは紙有無センサの情報と搬送センサの情報をそれぞれ取得して確定する。
【0073】
各オプション装置は、確定したリアルタイムステータスを送信データとして設定する。各オプション装置がリアルタイムステータスを送信するために利用できるビットの位置(送信期間)は異なっている。図9によれば、オプション装置20aの搬送センサの情報はLSBに配置される。続いてオプション装置20bの搬送センサの情報は左から2番目に配置される。さらにオプション装置20c、20d、20e、20fの搬送センサの情報は左からそれぞれ3番目、4番目、5番目、6番目に配置され、オプション装置20gの搬送センサ情報は7番目に、紙有無センサの情報は8番目に配置する。図9によれば、オプション装置20aのリアルタイムステータスの情報を返送するSTS信号が908である。オプション装置20bのリアルタイムステータスの情報を返送するSTS信号が909である。オプション装置20cのリアルタイムステータスの情報を返送するSTS信号が910である。オプション装置20dのリアルタイムステータスの情報を返送するSTS信号が911である。オプション装置20eのリアルタイムステータスの情報を返送するSTS信号が912である。オプション装置20fのリアルタイムステータスの情報を返送するSTS信号が913である。オプション装置20gのリアルタイムステータスの情報を返送するSTS信号が914である。各STS信号がCLK信号510に同期して送出される。なお、ビットの内容は、例えば搬送センサに紙が無い場合はHigh、ある場合はLowである。
【0074】
また、リアルタイムステータスコマンド920での給紙口の指定は、例えばリアルタイムステータスコマンド920によると、8bitの内訳のうち、LSBはLowに固定し、残りの7bitにおいて2進数のコード給紙口を指定する。本実施形態の場合はオプション装置20gから給紙するため、用紙搬送方向下流から7段目に接続されているオプション装置から給紙を行う。したがって、この7bitには0000111を設定し指定する。
【0075】
全てのオプション装置は、リアルタイムステータスコマンド920を受信すると、どの情報をリアルタイムステータスとして返送するのかを判断する。リアルタイムステータスコマンド920で指示されたコードと同じ数のIDを持つ給紙段は、搬送センサと紙有無センサの情報をリアルタイムステータスコマンドとして返送する。他方、それ以外の給紙段は搬送センサの情報のみをリアルタイムステータスコマンドとして返送する。
このとき、装置IDの若い順に、リアルタイムステータスの1bit目から順番に1bitずつ情報を載せていく。リアルタイムステータスコマンド920で指定された給紙段は搬送センサと紙有無センサの2つの情報を返送する必要があるため、リアルタイムステータスの2bit分を使用して情報を載せる。
【0076】
最終的に、各オプション装置からのSTS信号はワイヤードORによって結合され、1つのSTS信号900となる。なお、各オプション装置は、自己が状態情報を送信するビット位置以外のビット位置では、Highを出力する。これは、ワイヤードORを採用しているための対策である。
【0077】
各オプション装置は、最初のリアルタイムステータス信号の送信が完了すると、一旦、STS信号をLowに変化させる。これはCLK信号511に同期して受信するCMD信号515を待つためである。各オプション装置は、CLK信号511に同期したリアルタイムステータス信号908、909、910、911、912、913、914の送信準備をする。すなわち、各オプション装置は、搬送センサの値と紙有無センサの値を取得する。ここで、CLK信号510に同期して送信したリアルタイムステータス信号915とCLK信号511に同期して送信したリアルタイムステータス信号915とを同一内容としてもよい。本実施例では同一内容とする。本体装置のSTS受信部は、CLK信号510に同期して受信したリアルタイムステータス915とCLK信号511に同期して受信したリアルタイムステータス915とが同一内容であれば採用し、違っていれば不採用とする。これにより、リアルタイムステータスの送受信時に発生したノイズなどによるエラーを除去できる利点がある。リアルタイムステータスコマンドについても同様であり、CLK信号512に同期して本体装置から送信するリアルタイムステータスコマンドとCLK信号513に同期して本体装置から送信するリアルタイムステータスコマンドを同一内容としてもよい。本実施形態ではリアルタイムステータス同様、リアルタイムステータスコマンドも同一内容とする。
【0078】
このように、各オプション装置の状態情報送信部313は、それぞれ同一のCLK信号に対する送信期間(例:8ビットの送信期間)を分割してえられる複数の送信タイミングのうちそれぞれ異なる送信タイミングでリアルタイムステータスを送信する。一方で、コマンド609、610に対応するステータスを送信するためのSTS信号619、620を送信する。そして、コマンド信号により指定されなかったスレーブ装置に備えられている状態情報送信部313は、ステータス信号線の信号レベルをハイレベルに維持する。
【0079】
また、取得部314は、コマンド信号線202の信号レベルが変化すると、ステータスとリアルタイムステータスとの少なくとも一方を確定する。上述したように、ステータスは、コマンド信号に対応するオプション装置の状態の情報であり、リアルタイムステータスは、画像形成装置の動作の状況に応じてマスタ装置が必要とする、スレーブ装置に関する情報である。
【0080】
本体装置の処理についてのフローチャートは図7と同様である。またオプション装置の処理についてのフローチャートは図8と同様である。
【0081】
以上説明したように、本体装置はリアルタイムステータスコマンドにて、接続されている全てのオプション装置に対して給紙を行うオプション装置を通知する。これにより、リアルタイム性が要求される情報(上述した条件においての紙有無センサと搬送センサの情報)を各スレーブ装置からリアルタイムステータスにて入手し、スループットが向上させることが可能となる。
【0082】
[実施形態3]
以下、本発明に関わる実施形態3について説明する。実施形態3も実施形態1、2と同様に画像形成装置とオプション装置との間の通信に関するものである。そのため、以下では、実施形態1、2と同様な部分については説明を省略し、本実施形態の特徴的な部分を中心に説明する。
【0083】
画像形成装置の状態は、ユーザーの使用方法により刻々と変化している。例えば、用紙搬送途中でのJAMや、故障、また長時間画像形成装置が使用されない場合はwait中になり、wait中からの復帰なども突然発生する。ユーザーによって画像形成装置のドアが開けられた場合などもその1例であり、これらは画像形成装置の状態変化である。
【0084】
画像形成装置において、これらの状態変化の詳細な状態を知ることが可能である。例えば、用紙搬送途中でのJAMの場合は、画像形成装置内のJAMの位置が詳細な状態に相当し、また、ユーザーによってドアが開けられた場合は、開けられたドアの種類の情報も、詳細な状態に相当する。そして、故障については、故障部分が詳細な状態に相当する。
【0085】
本体装置の制御CPUは、本体装置の状態変化とその詳細情報をリアルタイムで認識することが可能である。しかし、オプション装置の状態変化は、本体装置とオプション装置との間の通信で伝えられる為、本体装置の制御CPUがこれらの状態変化を認識するまでにある程度時間がかかってしまう。さらに、従来は、各オプション装置の状態変化情報を本体装置の制御CPUが取得する際CMD信号を送信し、それに対するSTS信号を受信する通信を1サイクルの通信とした場合、接続されているオプション装置1台について1サイクルの通信を行う必要がある。従って、接続されている全てのオプション装置の状態変化情報を取得するためには、接続されている全オプション装置分のサイクルの通信が必要であった。例えば、7台のオプション装置が本体装置に接続されていた場合、CMD信号に対するSTS信号の通信を7回する必要があった。
【0086】
本体装置の制御CPUが、上記のような無駄な通信サイクルを実行することなく、オプション装置の状態変化を短時間で認識することが可能になれば、ユーザーの手を煩わせるようなJAMや、故障による不必要な部品の破損などをより回避できる。即ち、より精度の高いオプション装置の制御を行うことができる。
【0087】
具体的には、本体装置がオプション装置に対してリアルタイムステータスコマンドにて状態変化の問い合わせを全てのオプション装置に一斉に送信する。そして、それに対して、各オプション装置は、状態変化情報を、CMD信号を受信するためのCLK信号に同期させて送信するリアルタイムステータスにて本体装置に送信する。本体装置は各オプション装置から取得した状態変化情報から、状態が変化したオプション装置にのみ、状態変化詳細情報を問い合わせるステータス要求コマンドを送信する。これにより、本体装置の制御CPUは従来よりも効率よくオプション装置の状態変化を取得することが可能となる。
【0088】
図10は、本体装置と各オプション装置とのシリアル通信方式の具体例を説明するためのタイミングチャートである。なお、図5や図6と共通する部分には、同一の参照符号が付されている。
【0089】
各オプション装置は、CMD信号による割り込みがあると(t11)、それぞれSTS信号をLowレベルに切り換えることでシリアル送受信モードに移行する。さらに、各オプション装置は、オプション装置の状態変化情報を取得して確定する。
【0090】
各オプション装置は、確定した状態変化情報を送信データとして設定する。各オプション装置が状態変化情報を送信するために利用できるビット位置(送信期間)は異なっている。図10によればLSBから2bit分はHighに固定する。それらを除いて左から、故障情報、wait中情報、JAM情報、用紙無し情報、ドアオープン情報、エンジン診断中情報を設定する。状態に変化があればLowを、変化が無ければHighを設定する。また、リアルタイムステータスコマンドは、LSBのみをHighに設定し、残りのbitを全てLowにすることで、オプション装置に状態変化情報を要求することを意味する。
【0091】
最終的に、各オプション装置からのSTS信号はワイヤードORによって結合され、1つのリアルタイムステータス信号1002となる。
【0092】
各オプション装置は、CLK信号510に同期したリアルタイムステータスの送信が完了すると、一旦、STS信号をLowに変化させる。これは、CLK信号511に同期して受信するCMD信号610を待つためである。また、STS信号のLowは、シリアル送受信モードへの移行を意味する。各オプション装置は、CLK信号511に同期して本体装置に送信するリアルタイムステータス1002の送信準備をする。すなわち、各オプション装置は、状態変化情報を取得する。
【0093】
ここで、CLK信号510に同期して送信する状態変化情報(リアルタイムステータス1002)とCLK信号511に同期して送信する状態変化情報(リアルタイムステータス信号1002)を同一内容としてもよい。なお、本実施形態においては同一内容とした。
【0094】
本体装置のSTS受信部は、CLK信号510に同期して送信する状態変化情報(リアルタイムステータス1002)とCLK信号511に同期して送信する状態変化情報(リアルタイムステータス信号1002)が同じであれば採用し違っていれば不採用とする。これにより、状態変化情報の送受信時に発生したノイズなどによるエラーを除去できる利点がある。
【0095】
このように、各オプション装置の状態情報送信部313は、それぞれ同一のCLK信号に対する送信期間を分割して得られる複数の送信タイミングの内、それぞれ異なる送信タイミングでリアルタイムステータスとして状態変化情報信号を送信する。
【0096】
各オプション装置は、CLK信号511に同期したリアルタイムステータスの送信が完了すると、STS信号をHighに変化させる(t12)。これは、オプションがCLK信号512に同期して送信するSTS信号612の送信とリアルタイムステータスコマンド1004の受信を待つためである。
【0097】
コマンド信号609、610により指定されたスレーブ装置に備えられている状態情報伝送部313は、コマンド信号609、610に対応するSTS信号612、613を送信する。そしてコマンド信号により指定されたかったスレーブ装置に備えられている状態情報送信部313は、ステータス信号線の信号レベルをハイレベルに維持する。
【0098】
オプション装置は、STS信号612、613の送信が終了すると、STS信号線をHighに変化させる(t13)。これにより、1サイクルの通信が終了したことを意味する。1サイクルの通信はc1である。
【0099】
なお、本体装置の制御CPU200は、c1の通信でオプション装置から得られた状態変化情報を元に、c1と同一形態の通信を行う次の通信サイクルで、状態変化詳細情報を問い合わせるCMD信号を、オプション装置に送信する。
【0100】
図11は、本体装置の処理についてのフローチャートである。
【0101】
ステップS1101で、STS受信部206の検出部302は、STS信号がHighかどうかを判定する。STS信号がHighになると、ステップS1102へ進み、CMD送信部205の伝達部301は、CMD信号の信号レベルをLowに変化させる。
【0102】
ステップS1103で、制御CPU200は、1st Commandの送信が完了し、且つCLK信号510に同期するオプション装置20a、〜20gからのリアルタイムステータス信号1001の受信が完了したか否かを判定する。双方が完了すると、ステップS1104に進み、制御CPU200は、2nd Commandの送信が完了し、かつ、CLK信号511に同期する各オプション装置からのリアルタイムステータス信号1001の受信が完了したか否かを判定する。双方が完了すると、ステップS1105へ進む。
【0103】
ステップS1105で、制御CPU200は、CLK信号510に同期するリアルタイムステータス信号1001とCLK信号511に同期するリアルタイムステータス信号1001とを比較し、両者が同一内容であるか否かを判定する。同一内容であれば、ステップS1106へ進み、制御CPU200は不図示の記憶装置に保持している各オプション装置の状態変化情報を更新する。一方、同一でなければ、状態変化情報を更新することなく、ステップS1107へ進む。その後、S1107が実行される。
【0104】
ステップS1107で、STS受信部206の検出部302は、STS信号がHighかどうかを再び判定する。STS信号がHighになると、ステップS1108へ進み、CMD送信部205の伝達部301は、CMD信号の信号レベルをLowに変化させる。
【0105】
ステップS1109で、制御CPU200は、1st Statusを受信し、かつ、CLK信号512に同期させてオプション装置に対して状態変化情報を要求するリアルタイムステータスコマンド1004を送信する。
【0106】
ステップS1110では、制御CPU200が、2nd Statusを受信し、かつ、ステップS1109で送信したリアルタイムステータスコマンドと同一の内容のリアルタイムステータスコマンドをCLK信号513に同期させて送信する。
【0107】
ステップS1111では、制御CPU200がオプション装置から受信した状態変化情報を判断し、状態変化があったことを通知されていれば(どれかのbitがLowであれば)ステップS1112を実行する。状態変化が無かった場合(全てのbitがHigh)は、ステップS1101に戻る。
【0108】
ステップS1112では次の通信サイクルでオプション装置に状態変化詳細を問い合わせるCMD信号を確定する。
【0109】
図12はオプション装置の処理についてのフローチャートである。ステップS1201 で本体装置から2回受信するリアルタイムステータスコマンド1000が同一内容であることの判断を行う。リアルタイムステータスコマンド1000が同一内容である場合は、ステップS1202へ進む。リアルタイムステータスコマンド1000が同一内容で無い場合は状態変化情報を送信データに設定せずにステップS1204へ進む。
【0110】
ステップS1202で、各オプション装置の取得部314は、オプション装置の状態変化情報からリアルタイムステータス1003を確定し、次のステップS1203で状態変化情報を送信データに設定する。この時クロック信号510に同期して送信するリアルタイムステータス1003に状態変化情報を設定する。
【0111】
ステップS1204で、各オプション装置の通知部312は、STS信号をLowに変化させる。ステップS1205で各オプション装置の制御CPUは、1st Commandを受信し、かつ、CLK信号510に同期する各オプションの状態変化情報を載せたリアルタイムステータスの送信が完了したか否かを判定する。双方が完了していれば、ステップS1206に進む。ステップS1206で、各オプション装置の状態情報送信部313は、CLK信号511に同期して送信する状態変化情報を送信データとして設置し、CLK信号511に同期して送信するリアルタイムステータス1003を生成する。
【0112】
なお、エラー制御の観点から同一内容の状態変化情報を複数回送信する場合は、CLK信号510に同期して送信される状態変化情報と、CLK信号511に同期して送信される状態変化情報が同一内容となる。
【0113】
ステップS1207で、各オプション装置の通知部312は、STS信号をLowに変化させる。ステップS1208で、各オプション装置の制御CPUは2nd Commandを受信し、かつ、CLK信号511に同期させるリアルタイムステータスの送信が完了したか否かを判定する。双方が完了していれば、ステップS1209へ進み、CMD受信部215は、受信したコマンドの内容を解析する。ステップS1210で、状態情報送信部313は、1st Statusを準備するために、受信したコマンド609、610に応じたステータスを送信データに設定する。ステップS1211で、通知部312は、STS信号をHighに変化させることで、STS送信部216は、送信待ち状態となる。またCMD受信部215は受信待ち状態となる。その後、クロック信号が入力されると、状態情報送信部313は、クロック信号512に同期して1st Statusの送信と、リアルタイムステータスコマンド1004の受信を行う。ステップS1212で、STS送信部216は、1st Statusの送信が完了したか否かを判定する。またCMD受信部215は、CLK信号512に同期してリアルタイムステータスコマンドの受信を行う。完了すると、ステップS1213へ進み、2nd Statusを準備するために、受信したコマンド609、610に応じたステータスを送信データに設定する。ステップS1214で、通知部312は、STS信号をHighに変化させることで、STS送信部216は送信待ち状態になり、CMD受信部215は受信待ち状態になる。
【0114】
ステップS1215で、STS送信部216は、2nd Statusの送信が完了したこと、CMD受信部215は、リアルタイムステータスコマンド1004を受信したことを判定する。完了すると、ステップS1216へ進み、通知部312は、STS信号をLowに変化させる。ステップS1217で、制CPU210は、受信したコマンドの内容に応じた処理と、リアルタイムステータスコマンドの解析を行う。ステップS1218で、通知部312は、STS信号をHighに変化させる。
【0115】
以上説明したように、本実施形態によれば、マスタ装置からCMD信号を受信するのと並行して(CMD信号を受信するためのクロック信号に同期して)、各スレーブ装置が、それぞれの状態変化情報をSTS信号に搭載して送信する。これにより、マスタ装置の制御CPUが、上記のような無駄な通信サイクルを実行することなく、スレーブ装置の状態変化を短時間で認識することが可能になり、より精度の高いスレーブ装置の制御を行うことができる。
【符号の説明】
【0116】
9 ベルト
9c 従動コロ
9e 吸着ローラ
15 レジローラ
【技術分野】
【0001】
マスタ装置とスレーブ装置とを含むシステムにおけるシリアル通信技術に関する。
【背景技術】
【0002】
従来、画像形成装置とそのオプション装置とを備えるシステムなどで、シリアル通信が利用されている。特許文献1によれば、マスタ装置とスレーブ装置とを備えるシリアル通信システムにおいて、マスタ装置からコマンド信号を受信するのと並行して、各スレーブ装置が、リアルタイム性を要求される情報をステータス信号に搭載して送信することが提案されている。これにより、特許文献1では、マスタ装置は問い合わせを送信することなく、リアルタイム性を要求される情報を各スレーブ装置から入手できる方法が提案されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2008−176743号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1によれば、信号線を増やすことなくマスタ装置からデータを送信するためのハンドシェイクを実現し、マスタ装置は各スレーブ装置からリアルタイム性を要求される情報を入手できるというメリットがある。しかし、特許文献1に記載の発明では、マスタ装置に接続されるスレーブ装置の装置数が増えた場合においては、リアルタイム性を要求される情報を入手できなくなってしまう場合があり改善の余地があった。
【0005】
そこで、本願は、スレーブ装置からステータス信号を受信するのと並行して(ステータス信号を受信するためのクロック信号に同期して)、各スレーブ装置に対し、マスタ装置がリアルタイムで取得する情報を、マスタ装置から指定可能にすることを目的とする。
【課題を解決するための手段】
【0006】
本発明は、上記課題を鑑みてなされたものであり、マスタ装置と1以上のスレーブ装置と、前記マスタ装置から前記スレーブ装置へクロック信号を送信するためのクロック信号線と、前記クロック信号に同期して、前記マスタ装置から前記スレーブ装置へデータ信号を送信するためのコマンド信号線と、前記クロック信号に同期して、少なくとも1つ以上の前記スレーブ装置から前記マスタ装置へデータ信号を送信するための状態信号線と、前記マスタ装置に備えられ、前記全てのスレーブ装置について前記状態信号線の信号レベルが変化すると、前記状態信号を送信させるためのクロック信号を前記クロック信号線へ送出するクロック発生手段と、前記各スレーブ装置から伸びる状態信号線の支線が論理和接続させるための論理和接続手段とを備えたシリアル通信システムをマスタ装置と1以上のスレーブ装置からなる通信システムであって、前記マスタ装置は、クロック信号及び第1データ信号を前記スレーブ装置へ送信し、クロック信号及び第1データ信号の送信に同期して、前記スレーブ装置から、論理和接続手段にて第4データ信号を受信する手段を有し、第1データ信号の送信と、第4データ信号の受信完了を意味する状態信号線のレベルの変化により、前記マスタ装置は、クロック信号及び第3データ信号を前記スレーブ装置へ送信し、クロック信号及び第3データ信号の送信に同期して、前記スレーブ装置から、第2データ信号を受信する手段を有し、前記第3データ信号は、システムの動作状況に応じて、前記第4データ信号を可変にするデータ信号であることを特徴とする通信システム。
【発明の効果】
【0007】
本願によれば、スレーブ装置からステータス信号を受信するのと並行して(ステータス信号を受信するためのクロック信号に同期して)、各スレーブ装置に対し、マスタ装置がリアルタイムで取得する情報を、マスタ装置から指定可能になる。
【図面の簡単な説明】
【0008】
【図1】画像形成装置の全体構成の一例を示す図である。
【図2】本体装置とオプション装置とのインターフェースのブロック図の一例である。
【図3】各制御CPUに実装される主要機能についての例示的な機能ブロック図である。
【図4】本体装置とオプション装置とのインターフェースのブロック図の一例である。
【図5】本体装置とオプション装置とのシリアル通信処理のタイミングチャートである。
【図6】本体装置とオプション装置とのシリアル通信処理のタイミングチャートである。
【図7】本体装置の処理についてのフローチャートである。
【図8】オプション装置の処理についてのフローチャートである。
【図9】における本体装置とオプション装置とのシリアル通信処理のタイミングチャートである。
【図10】おける本体装置とオプション装置とのシリアル通信処理のタイミングチャートである。
【図11】本体装置の処理についてのフローチャートである。
【図12】オプション装置の処理についてのフローチャートである。
【発明を実施するための形態】
【0009】
本発明に係るシリアル通システムを搭載した画像形成装置を図面に即して説明する。
なお、実施形態では、電子写真方式の多色画像形成装置を一例として紹介するが、本発明は、画像形成方式や単色か多色かの違いに依存することはない。また、画像形成装置以外の電子装置(コンピュータ、周辺機器、情報処理装置、家電製品)などにも、適用可能である。ただし、マスタ装置は、複数のスレーブ装置が接続可能であれば、特に本発明の効果が発揮されやすい。
【0010】
また、スレーブ装置に動作を指示するデータ信号を「コマンド」、スレーブ装置がコマンドによって指示された動作の状態をマスタ装置へ報知するためのデータ信号(状態信号)を「ステータス」と呼ぶ。また、マスタ装置とスレーブ装置の動作状況に応じて、スレーブ装置に関する情報を、マスタ装置から可変にすることを指示するデータ信号を「リアルタイムステータスコマンド」と呼ぶ。また、スレーブ装置に関する情報のデータ信号を「リアルタイムステータス」と呼ぶことにする。
【0011】
[実施形態1]
本実施形態では、マスタ装置がカラーレーザプリンタの本体装置に相当し、スレーブ装置が、オプション装置(例:増設可能なオプション装置やオプション排紙装置)に相当する。本体装置は、各オプション装置とデータを送受信する際には共通のクロックを利用したシリアル通信を実行する。その際に、本体装置とオプション装置の通信において「コマンド」、「ステータス」「リアルタイムステータスコマンド」「リアルタイムステータス」を使用する。これにより、本体装置に接続されるオプション装置の数が増えた画像形成装置においても、装置全体としてのスループット(単位時間あたりのプリント枚数)を向上させるためのシリアル通信を実現する。
【0012】
(本体装置)
図1は、各実施形態に対して共通に適用される画像形成装置の全体構成図である。画像形成装置100に1以上のオプション装置が接続されている。画像形成装置100は、4個の画像形成ステーションを備えている。各ステーションは、像担持体である感光ドラム1を有している。それぞれの感光ドラム1の周囲には回転方向に従って順に、帯電装置2、露光装置3、現像装置4、転写部材5、クリーニング装置6が配設されている。帯電装置2は、感光ドラム表面を一様に帯電させる。露光装置3は、画像情報に基づいてレーザービームを照射することで感光体ドラム上に静電潜像を形成する.現像装置4は、静電潜像にトナーを付着させてトナー像として顕像化する。転写部材5は、感光体ドラム上のトナー像を用紙に転写させる。クリーニング装置6は、転写後の感光体ドラム表面に残留した転写後トナーを除去する。ここで、感光体ドラム1と帯電装置2、現像装置4、クリーニング装置6は一体的にカートリッジ化され、いわゆるプロセスカートリッジ7を形成している。
【0013】
給送部は、オプション装置20aおよびオプション装置20b、20c、20d、20e、20fにより構成されている。給送部から給送された用紙は、搬送ベルトで構成された搬送装置9によって各ステーションへ搬送され、各色のトナー像が順じ転写されて多色画像が形成される。定着装置10は、用紙上の未定着像を加熱定着する。最終的に、用紙は、排出装置50へ排出される。排出装置50は、例えば、ソーターなどである。
【0014】
(給送部)
オプション装置20aは、本体装置に内蔵された給送装置であり、本体給送部と呼ばれることもある。ピックアップローラ21aは、一枚ずつ用紙を分離して給送する。搬送ローラ22a、23aは、さらに搬送方向の下流に向けて用紙を搬送する。給送部から給送された用紙は、レジストローラ15によって搬送装置9へ搬送される。なお、オプション装置20aは本体装置に内蔵されているため、一般にはオプション装置と呼べないかもしれない。しかし、本願明細書では、オプション装置20aもシリアル通信システムのスレーブ装置として動作するため、オプション装置の一種として取り扱うものとする。
【0015】
オプション装置20b、20c、20d、20e、20f、20gは本体装置に接続可能なオプションの給送部である。オプション装置20bは、ピックアップローラ21bによって一枚ずつ用紙を分離給送する。その後、用紙は、オプション装置の搬送ローラ22b、23bを介してオプション装置20aへ搬送される。オプション装置20c、20d、20e、20f、20gもオプション装置20bと同様、ピックアップローラ21c、21d、21e、21f、21gによって一枚ずつ分離給送する。その後、用紙は、オプション装置の搬送ローラ22c、23c、22d、23d、22e、23e、22f、23f、22g、23gを介して搬送方向の下流に接続されている各オプション装置へ搬送される。なお、用紙は、例えば、記録材、記録媒体、シート、転写材、転写紙と呼ばれることもある。
【0016】
24a、24b、24c、24d、24e、24f、24gは、用紙を検出するシートセンサである。シートセンサ24a、24b、24c、24d、24e、24f、24gが検出した用紙の有無を表す情報は、状態情報の好例である。一般に画像形成装置は、用紙の先端が到着したタイミングを起点として様々な制御(搬送制御や画像形成制御)を実行する。特に、画像形成装置のスループットを高速にするためには、リアルタイムかつ低遅延で状態情報をオプション装置から本体装置へと伝送することが要求される。
【0017】
(通信システム)
図2は、本体装置とオプション装置とのインターフェースを説明するための基本的なブロック図である。ここでは、オプション装置20b、20c、20d、20e、20f、20gについては記載の簡潔化のために省略されているが、オプション装置20b、20c、20d、20e、20f、20gもオプション装置20aと同様の構成を採用している。
【0018】
本体装置の制御CPU200とオプション装置20aの制御CPU210との間のインターフェース信号線は、クロック信号線201、コマンド信号線202及びステータス信号線203である。クロック信号線201は、マスタ装置から各スレーブ装置へクロック信号を送信するための信号線である。コマンド信号線202は、クロック信号に同期してマスタ装置から各スレーブ装置へコマンド信号を送信するための信号線である。ステータス信号線203は、クロック信号に同期して少なくとも1つのスレーブ装置からマスタ装置へスレーブ装置の状態を表す状態信号を送信する状態信号線である。なお、クロック信号を「CLK信号」、コマンド信号を「CMD信号」、ステータス信号(状態信号)を「STS信号」と呼ぶことにする。なお、CMD信号は、外部割込みのための入力ポート211にも入力されるよう配線されている。また、STS信号も、外部割込みのための入力ポート207にも入力されるよう配線されている。なお、CMD信号及びSTS信号はデータ信号である。
【0019】
本体装置制御CPU200は、CLK発生部204、CMD送信部205及びSTS受信部206を備えている。CLK発生部204は、クロック発生源であり、クロック信号線201を送出する。例えば、CLK発生部204は、マスタ装置に接続されているすべてのスレーブ装置についてステータス信号線の信号レベルが変化すると、スレーブ装置にSTS信号を送信させるためのCLK信号をクロック信号線201へ送出する。CMD送信部205は、CLK信号に同期してCMD信号をコマンド信号線202へ送出する。STS受信部206は、CLK信号に同期してステータス信号線203を介してSTS信号を受信する。
【0020】
オプション装置の制御CPU210は、CLK入力部214、CMD受信部215及びSTS送信部216を備えている。CLK入力部214、クロック信号線201を介してCLK信号を受信する。CMD受信部215は、CLK信号に同期してコマンド信号線202を介してCMD信号を受信する。例えば、CMD受信部215は、コマンド信号線202の信号レベルが変化するとコマンド信号線を介してCMD信号を受信すべく待機し、マスタ装置からクロック信号が送出されるとCLK信号に同期してCMD信号を受信する。STS送信部216は、CLK信号に同期してステータス信号線203を介してSTS信号を送信する。
【0021】
このように、本体装置は、CLK信号とCMD信号を供給するマスタ装置として働く。また、オプション装置20aは、本体装置から供給されたCLK信号及びCMD信号に応じて動作し、STS信号を出力するスレーブ装置として働く。
【0022】
図3は、各制御CPUに実装される主要機能についての例示的な機能ブロック図である。
CMD送信部205に含まれる伝達部301は、コマンド信号線202の信号レベルを変化させることで、コマンド信号線202を介してコマンド信号を送信することを各スレーブ装置に伝達する。STS受信部206に含まれる検出部302は、すべてのスレーブ装置についてステータス信号線203の信号レベルが変化したことを検出する。
【0023】
CMD受信部215に含まれる検知部311は、スレーブ装置に接続されたコマンド信号線202の信号レベルが変化したことを検知する。STS送信部216に含まれる通知部312は、スレーブ装置が接続されたステータス信号線203の信号レベルを変化させる。そしてこれにより、STS信号を送信する準備が整ったこともしくは、リアルタイムステータスコマンドとしてのCMD信号を受信する準備が整ったことをマスタ装置に通知する。
【0024】
状態情報送信部313は、STS信号を送信するためのCLK信号に同期させてSTS信号をマスタ装置へ送信する。また、状態情報送信部313は、CMD信号を受信するためのCLK信号に同期させてステータスやリアルタイムステータスを伝送するためのSTS信号をマスタ装置へ送信する。例えば、リアルタイム性が要求されるような情報は、リアルタイムステータスとして処理されることが望ましい。取得部314は、例えば、シートセンサなどの状態検出センサを利用して、ステータスやリアルタイムステータスなどを取得する。
【0025】
本実施形態では、複数のオプション装置のSTS信号線がHigh trueのワイヤードOR形式で接続されていることが特徴である。ワイヤードOR(論理和接続)は、入力された信号がすべてHighになると出力もHighになるが、入力された信号の1つでもLowであれば出力もLowとなるような論理回路である。なお、ワイヤードORは、実際にはANDとして機能することに注意が必要である。すなわち、ワイヤードORは、N(2以上の自然数)入力・1出力のAND素子のようなものである。
【0026】
例えば、各オプション装置は、送信または受信準備が完了すると、それぞれSTS信号をHighにしていく。そして、各オプション装置からのSTS信号がすべてHighになると、本体装置に入力されるSTS信号もHighとなる。すなわち、本体装置に入力されるSTS信号がHighになったという事実は、すべてのオプション装置のハンドシェイクが完了したことを意味するのである。
【0027】
図4は、本実施形態における本体装置とオプション装置のインターフェースを説明するためのブロック図である。制御CPU220、230、240、250、260、270の内部構成は、図2に示した制御CPU210と同様である。
【0028】
図4に示されているように、ステータス信号線203は、図5に示される各オプション装置から延びる状態信号線の支線503、504、505、506、507、508、509がワイヤードORにより接続されている。各スレーブ装置から伸びるステータス信号線の支線を検出部302に対して論理和接続させるための論理和接続手段としてAND素子を使用する。AND素子は概念的なものにすぎず、実際の回路設計では良く知られた回路素子により実現される。本体装置に入力されるSTS信号(STS_in)は、各オプション装置のSTS信号(STS_out1、STS_out2、STS_out3、STS_out4、STS_out5、STS_out6、STS_out7)のワイヤードOR出力となる。STS_out1、STS_out2、STS_out3、STS_out4、STS_out5、STS_out6、STS_out7がすべてHighになれば、Sts_inもHighになる。
【0029】
図5は、本体装置と各オプション装置とのシリアル通信方式の具体例を説明するためのタイミングチャートである。この例は、オプション装置20cを指定したコマンドが送信され、オプション装置20cがステータスを返信することを前提としている。
【0030】
t1は、通信開始タイミングを示す。t2は、すべてのオプション装置のハンドシェイクが完了したタイミングを示す。t3は、通信終了タイミングを示す。本体装置は、通信開始前はコマンド信号線202の信号レベルをHighに保持し、通信開始タイミング(t1)が到来するとLowレベルに変化させる。
【0031】
一方、オプション装置20a、20b、20c、20d、20e、20d、20f、20gは、コマンド信号線202による割り込みによって、それぞれSTS信号をLowとし、シリアル受信モードに移行する。各オプション装置は、CLK信号510、511に同期して第1及び第2CMD信号514、515(第1データ信号)を受信し、コマンドの内容を解析する。各オプション装置は、解析された内容に応じてSTS信号を準備する。
【0032】
ここで、各CMD信号には、コマンドを実行すべき(ステータスを返信すべき)オプション装置を指定するための指定情報が含まれている。指定情報は、各オプション装置に割り当てられた識別情報などである。したがって、各オプション装置は、自己が指定されているか否かを判定する。ここでは、オプション装置20cが指定されているものとする。
【0033】
オプション装置20a、20b、20d、20e、20f、20gは指定されていないため、FFhを送信データとして設定する。FFhは、2進数ではオール1(すべてHigh)となるが、これは、ワイヤードORによりステータス信号線の支線が接続されていることを考慮したものである。一方、オプション装置20cは、自己が指定されているため、コマンド(514、515)に対応するステータスを設定した第1STS信号(1st status)516(第2データ信号)を作成する。同様に、第2STS信号(2nd status)517(第2データ信号)も用意される。
【0034】
各オプション装置は、STS信号の送信準備が完了すると、それぞれSTS信号(STS_out1、STS_out2、STS_out3、STS_out4、STS_out5、STS_out6、STS_out7)のワイヤードOR出力となる。STS_out1、STS_out2、STS_out3、STS_out4、STS_out5、STS_out6、STS_out7)をHighレベルに切り替えて維持する。ステータス信号線203にはワイヤードOR形式の接続が採用されている。そのため、すべてのSTS信号(STS_out1、STS_out2、STS_out3、STS_out4、STS_out5、STS_out6、STS_out7)のワイヤードOR出力となる。STS_out1、STS_out2、STS_out3、STS_out4、STS_out5、STS_out6、STS_out7)がHighになると、マスタ装置へのSTS信号(Sts_in)がHighとなる(t2)。
【0035】
その後、CLK信号512に同期して、オプション装置20a、20b、20d、20e、20f、20gはFFhをステータス信号線に出力する。また、オプション装置20cは、1st status(518)を送信する。同様に、CLK信号507に同期して、オプション装置20a、20b、20d、20e、20d、20f、20gはFFhをステータス信号線に出力する。また、オプション装置20cは、2nd status(519)を送信する。
【0036】
STS_out1〜Sts_out7信号はワイヤードOR形式で接続されている。そのため、1st status(518)、2nd status(519)がSTS_inに反映され、それぞれ1st status(516)、2nd status(517)となる。
【0037】
各オプション装置20a、20b、20c、20d、20e、20d、20f、20gは、STS信号をLowレベルに設定する。そして、指定されたオプション装置20cのみが、コマンドを実行する。各オプション装置は、通信準備が整ったら、再びSTS信号をHighレベルに変更する。
ワイヤードOR形式による接続のため、全てのSTS信号がHighになると、マスタ装置へのSTS信号が再びHighとなる(t3)。これにより、マスタ装置は、全オプション装置の通信準備が整ったことを認識する。
【0038】
本実施形態では、複数のスレーブ装置を1つのマスタ装置に接続する場合であっても、ハンドシェイクのための専用線を設けずに、スレーブ装置からマスタ装置へデータを送信する際のハンドシェイクを実現できる。従来であれば、複数あるオプション装置の各処理時間の内、最大処理時間を共通の待ち時間としていたため、効率が悪かった。しかし、本実施形態であれば、各オプション装置は、処理が終わり次第ハンドシェイクして次の通信ステップへ進むことで可能となるため、処理時間の短縮も可能となる。
【0039】
また、信号線の接続にワイヤードORなどの論理和接続手段を採用することで、オプション装置の数が増減するような画像形成装置にも本発明の技術思想を容易に適用できる利点がある。
【0040】
複数のオプション装置が接続された画像形成装置において、装置全体としてのスループット(単位時間あたりのプリント枚数)を向上させるためには、各オプション装置の用紙搬送状態をリアルタイムでモニタすることが望ましい。例えば、各オプション装置に対して個別にセンサ状態を問い合わせると、各オプション装置の情報が更新されるまでの時間が長くなってしまうため、情報のリアルタイム性が失われやすい。これでは、好適に用紙搬送制御を行うのが困難となる。
【0041】
そこで、本実施形態は、ステータス要求コマンドを送信しなくても、本体装置に接続された全てのオプション装置に関する必要な情報をリアルタイムで取得できるようになる。これにより、本体装置は、リアルタイム性を欠くことなく、すべてのオプション装置の状態情報を監視できるようになる。
【0042】
具体的にはマスタ装置がスレーブ装置からSTS信号を受信するのと並行して(STS信号を受信するためのクロック信号に同期して)、マスタ装置が、リアルタイムステータスが必要とされるスレーブ装置を、リアルタイムステータスコマンドを使用して指定する。つまり、画像形成装置の動作状況に応じて、マスタ装置がリアルタイムステータスを必要とするスレーブ装置の指定を可変にする。
マスタ装置から指定されたスレーブ装置は、マスタ装置からCMD信号を受信するのと並行して(CMD信号を受信するためのクロック信号に同期して)、リアルタイムステータスをSTS信号に搭載して送信する。これにより、マスタ装置がスレーブ装置のリアルタイムステータスを各スレーブ装置から入手できるようになる。
【0043】
図6は、本体装置と各オプション装置とのシリアル通信方式の具体例を説明するためのタイミングチャートである。なお、図5と共通する部分には、同一の参照符号が付されている。
【0044】
各オプション装置は、CMD信号による割り込みがあると(t11)、それぞれSTS信号をLowレベルに切り換えることでシリアル送受信モードに移行する。さらに、各オプション装置は、リアルタイムステータスコマンド601で指定された給紙段の紙有無センサや搬送センサの情報をリアルタイムステータス611として確定する。
【0045】
各オプション装置は、確定したリアルタイムステータス611を送信データとして設定する。各オプション装置がリアルタイムステータスを送信するために利用できるビットの位置(送信期間)は異なっている。
【0046】
図6によれば、リアルタイムステータスコマンド601で指定された各オプション装置のリアルタイムステータスは2bitずつである。2ビットのうち、1番目のビットを紙有無センサの検出結果とし、2番目のビットを搬送センサの検出結果として利用できる。オプション装置20aのリアルタイムステータスを返送するSTS信号が612(第4データ信号)である。オプション装置20bのリアルタイムステータスを返送するSTS信号が613(第4データ信号)である。
【0047】
オプション装置20cとオプション装置20dとオプション装置20eはリアルタイムステータスコマンド(第3データ信号)で指定されていないため、リアルタイムステータスを返送するSTS信号はない。オプション装置20fのリアルタイムステータスを返送するSTS信号は614である。オプション装置20gのリアルタイムステータスを返送するSTS信号は615である。各STS信号がCLK信号510、511に同期して送出される。なお、ビットの内容は、例えば、紙無しならHigh、紙有りならLowである。
【0048】
また、リアルタイムステータスコマンドで各オプションを指定する場合は、LSBを除いて左からオプション装置20a、20b、20c、装置20d、装置20e、装置20f、装置20gとなる。そして、指定するオプション装置の部分に対してはHigh、指定しないオプション装置の部分に対してはLowとする。なおLSBは1に固定する。
【0049】
全てのオプション装置は、リアルタイムステータスコマンド601を受信した際に、自装置がリアルタイムステータスを返送する装置となっているか否かを自装置の装置IDにより判断する。リアルタイムステータスを返送する装置となっていると判断した場合、リアルタイムステータスの何bit目に情報を載せるのかを判断する。具体的には、自装置がリアルタイムステータスコマンドのLSBから数えて何bit目で指定されているのかということにより判断する。例えば、図6によれば、1段目、2段目、6段目、7段目の装置にい対して、リアルタイムステータスを返送するようにリアルタイムステータスコマンド601で指示されている。
【0050】
1段目、2段目、6段目、7段目の各給紙段は、自装置の指示bitが1となっているので、リアルタイムステータスを返送すると判断する。
【0051】
そして、1段目の給紙段はリアルタイムステータスのLSBから1bit目と2bit目に情報を載せると判断する。2段目の給紙段は、LSBから何個1が指定されているのかを数える(ただしLSBは除く)。この場合はLSBから数えて、2個の装置が指定されており、この2個目装置が自装置であることから、リアルタイムステータスのLSBから3bit目と4bit目に情報を載せると判断する。同様に、6段目の給紙段は、リアルタイムステータスコマンドのLSBから数えて3個目の装置として自装置が指示されていることから、リアルタイムステータスのLSBから5bit目と6bit目に情報を載せると判断する。
【0052】
以上のようにして、リアルタイムステータスコマンド601(第3データ信号)で指定されたオプション装置は、リアルタイムステータスの各オプション装置毎に割り当てられたbitに紙有無センサの情報や搬送センサの情報を載せる。
【0053】
最終的に、各オプション装置からのSTS信号はワイヤードORによって結合され、1つのSTS信号602となる(第4データ信号)。なお、各オプション装置は、自己がリアルタイムステータスを送信するビット位置以外のビット位置では、Highを出力する。これはワイヤードORを採用しているための対策である。
【0054】
各オプション装置は、最初のSTS信号の送信が完了すると、一旦、STS信号をLowに変化させる。これは、CLK信号511に同期して受信するCMD信号610を待つためである。各オプション装置は、CLK信号511に同期して受信するリアルタイムステータス信号612、613、614、615の送信準備をする。すなわち、各オプション装置は、リアルタイム性が必要とされるオプション装置の状態情報(例えば、紙有無センサの情報や搬送センサの情報)を取得する。
【0055】
ここで、CLK信号510に同期して送信したリアルタイムステータスとCLK信号511に同期して送信するリアルタイムステータスとを同一内容としてもよい。本実施例の場合は同一内容とするため、図中の番号を同じにしている。本体装置のSTS受信部は、CLK信号510に同期してオプション装置から受信したリアルタイムステータスとCLK信号511に同期してオプション装置から受信したリアルタイムステータスとが同一であれば採用し、違っていれば不採用とする。これにより、リアルタイムステータスの送受信時に発生したノイズなどによるエラーを除去できる利点がある。
【0056】
このように、各オプション装置の状態情報送信部313は、それぞれ同一のCLK信号に対する送信期間(例:8ビットの送信期間)を分割して得られる複数の送信タイミングのうちそれぞれ異なる送信タイミングでリアルタイムステータスを送信する。一方で、コマンド信号609、610により指定されたスレーブ装置に備えられている状態情報送信部313は、コマンド信号609、610に対するステータスを伝送するためのSTS信号617、618を送信する。そして、コマンド信号により指定されなかったスレーブ装置に備えられている状態情報送信部313は、ステータス信号線の信号レベルをハイレベルに維持する。
【0057】
また、取得部314は、コマンド信号線202の信号レベルが変化すると、ステータスとリアルタイムステータスとの少なくとも一方を確定する。上述したように、ステータスは、コマンド信号に対応するオプション装置の状態の情報であり、リアルタイムステータスは、画像形成装置の動作の状況に応じてマスタ装置が必要とする、スレーブ装置に関する情報である。
【0058】
図7は、本体装置の処理についてのフローチャートである。
ステップS701で、STS受信部206の検出部302は、STS信号がHighかどうかを判定する。STS信号がHighになると、ステップS702へ進み、CMD送信部205の伝達部301は、CMD信号の信号レベルをLowに変化させる。
ステップS703で、制御CPU200は、1st Commandの送信が完了し、かつ、オプション装置20a、20b、20c、20d、20e、20f、20gからのリアルタイムステータス信号602の受信完了を判定する。双方が完了すると、ステップS704に進み、制御CPU200は、2nd Commandの送信が完了し、かつ、各オプション装置からのリアルタイムステータス信号602の受信が完了したか否かを判定する。双方が完了すると、ステップS705へ進む。
【0059】
ステップS705で、制御CPU200は、CLK信号510に同期して受信したリアルタイムステータス602とCLK信号511に同期して受信したリアルタイムステータス602とを比較し、両者が同一内容であるか否かを判定する。同一内容であれば、ステップS706へ進み、制御CPU200は不図示の記憶装置に保持している各オプション装置のリアルタイムステータスを更新する。一方、同一でなければ、リアルタイムステータスを更新することなく、ステップS707へ進む。その後、S707が実行される。
【0060】
ステップS707で、STS受信部206の検出部302は、STS信号がHighかどうかを再び判定する。STS信号がHighになると、ステップS708へ進み、CMD送信部205の伝達部301は、CMD信号の信号レベルをLowに変化させる。
【0061】
ステップS709で、制御CPU200は、1st Statusを受信し、かつ、リアルタイムステータスコマンドを送信する。
ステップS710では、制御CPU200が、2nd Statusを受信し、かつ、ステップS709で送信したリアルタイムステータスコマンドと同一の内容のリアルタイムステータスコマンドを送信する。
【0062】
図8はオプション装置の処理についてのフローチャートである。
【0063】
ステップS801で、本体装置から2回受信するリアルタイムステータスコマンド601が同一内容であることの判断を行う。リアルタイムステータスコマンド601が同一内容である場合は、ステップS802へ進む。リアルタイムステータスコマンド601が同一内容でない場合はリアルタイムステータス611を更新せずステップS804へ進む。
ステップS802で各オプション装置の取得部314は、紙有無センサや紙搬送センサなどからリアルタイムステータス611を取得して内容を確定し、リアルタイムステータス611を更新して、ステップS803へ進む。
ステップS803では、各オプション装置の状態情報送信部313は、1番目のリアルタイムステータスを送信データとして設定し、クロック信号510に同期して送信するSTS信号612、613、614、615を生成する。
ステップS804で、各オプション装置の通知部312は、STS信号をLowに変化させる。ステップS805で、各オプション装置の制御CPUは、1st Commandを受信し、かつ、CLK信号510に同期するリアルタイムステータスの送信が完了したか否かを判定する。双方が完了していれば、ステップS806へ進む。ステップS806で、各オプション装置の状態情報送信部313は、CLK信号511に同期して送信するリアルタイムステータスを送信データとして設定し、CLK信号511に同期して送信するSTS信号612、613、614、615を生成する。なお、エラー制御の観点から同一の内容の状態信号を複数回送信する場合は、CLK信号510に同期して送信されるリアルタイムステータスと、CLK信号511に同期して送信されるリアルタイムステータスが同一内容となる。
【0064】
ステップS807で、各オプション装置の通知部312は、STS信号をLowに変化させる。ステップS808で、各オプション装置の制御CPUは2nd Commandを受信し、かつ、CLK信号511に同期させるリアルタイムステータスの送信が完了したか否かを判定する。双方が完了していれば、上述したステップS809へ進み、CMD受信部215は、受信したコマンドの内容を解析する。ステップS810で、状態情報送信部313は、1st statusを準備するために、受信したコマンド609、610に応じたステータスを送信データに設定する。ステップS811で、通知部312は、STS信号をHighに変化させることで、STS送信部216は、送信待ち状態となる。また、CMD受信部215は受信待ち状態となる。その後、クロック信号が入力されると、状態情報送信部313は、クロック信号512に同期して1st statusの送信と、リアルタイムステータスコマンド616の受信を行う。ステップS812で、STS送信部216は、1st statusの送信が完了したか否かを判定する。またCMD受信部215は、リアルタイムステータスコマンドの受信を行う。完了すると、ステップS813へ進み、2nd statusを準備するために、受信したコマンド609、610に応じたステータスを送信データに設定する。ステップS814で、通知部312は、STS信号をHighに変化させることで、STS送信部216は送信待ち状態になり、CMD受信部215は受信待ち状態になる。
【0065】
ステップS815で、STS送信部216は、2nd Statsuの送信が完了したことと、CMD受信部215は、リアルタイムステータスコマンド616の受信が完了したことを判定する。完了すると、ステップS816へ進み、通知部312は、STS信号をLowに変化させる。ステップS817で、制御CPU210は、受信したコマンドの内容に応じた処理と、リアルタイムステータスコマンドの解析を行う。ステップS818で、通知部312は、STS信号をHighに変化させる。
【0066】
以上説明したように、本実施形態によれば、スレーブ装置からステータス信号を受信するのと並行して(ステータス信号を受信するためのクロック信号に同期して)、各スレーブ装置に対し、リアルタイム通信を行える。具体的には、マスタ装置がリアルタイムで取得する情報を、マスタ装置から指定することにより、スレーブ装置の装置数が増えた場合においても、マスタ装置がスレーブ装置の情報をリアルタイムで入手できるようになる。
【0067】
本実施形態では、1st Command及び2nd Commandとも8bitであり、1st Status及び2nd Statusも8bitとして説明しているが、これは一例にすぎない。コマンドを2つに分割せずに、16bit長の1つのデータとしてもよい。リアルタイムステータスコマンドも同様である。また、本実施形態ではステータス信号線を介してコマンド信号を送信することを各スレーブ装置に伝達してもよい。これにより、ハンドシェイクのための専用線を設けずに、マスタ装置からスレーブ装置へデータを送信する際のハンドシェイクを実現できる。
【0068】
[実施形態2]
実施形態2も実施形態1と同様に画像形成装置とオプション装置との間の通信に関するものである。そのため以下では、実施形態1と同様な部分については説明を省略し、本実施形態の特徴的な部分を中心に説明する。
【0069】
複数のオプション装置が接続された画像形成装置において、装置全体としてスループットを向上させるためには、各オプション装置の用紙搬送状態をリアルタイムでモニタすることが望ましい。特に、特定のオプション装置から連続で用紙を給紙し、用紙を搬送している場合にはリアルタイム性が必要とされる状態情報はある程度限られている。例えば、給紙を行うオプション装置の紙有無センサと搬送センサの情報と、給紙を行うオプション装置より用紙搬送方向に対して下流に接続されている、全てのオプション装置の搬送センサの情報である。給紙を行うオプション装置の紙有無センサの情報は、主に連続給紙中のラスト紙検知のために有効であり、この情報をリアルタイムでモニタすることにより、不必要なJAMなどを回避する点に対して有効である。また、給紙を行うオプション装置とそれより用紙搬送方向に対して下流に接続されている全てのオプション装置の搬送センサの情報をリアルタイムでモニタすることは、好適に用紙搬送制御を行うために有効である。
【0070】
そこで、本実施形態は、リアルタイムステータスコマンドにて給紙を行うオプション装置を接続されている全てのオプション装置に通知する。これにより、リアルタイム性を要求される情報(上述した条件においての紙有無センサと搬送センサの情報)を各スレーブ装置から入手でき、スループットが向上する。本実施形態では、具体的には、スループットを満足することが一番困難である、オプション装置20gからの連続プリントの場合を考える。
【0071】
図9は、本体装置と各オプション装置とのシリアル通信方式の具体例を説明するためのタイミングチャートである。なお、図5や図6と共通する部分には、同一の参照符号が付されている。
【0072】
各オプション装置は、CMD信号による割り込みがあると(t11)、それぞれのSTS信号をLowレベルに切り換えることで、シリアル送受信モードに移行する。さらに、各オプション装置は、リアルタイムステータスの情報を取得して確定する。本実施形態の場合、オプション装置20gから給紙を行っているため、オプション装置20a、20b、20c、20d、20e、20fは搬送センサの情報を、オプション装置20gは紙有無センサの情報と搬送センサの情報をそれぞれ取得して確定する。
【0073】
各オプション装置は、確定したリアルタイムステータスを送信データとして設定する。各オプション装置がリアルタイムステータスを送信するために利用できるビットの位置(送信期間)は異なっている。図9によれば、オプション装置20aの搬送センサの情報はLSBに配置される。続いてオプション装置20bの搬送センサの情報は左から2番目に配置される。さらにオプション装置20c、20d、20e、20fの搬送センサの情報は左からそれぞれ3番目、4番目、5番目、6番目に配置され、オプション装置20gの搬送センサ情報は7番目に、紙有無センサの情報は8番目に配置する。図9によれば、オプション装置20aのリアルタイムステータスの情報を返送するSTS信号が908である。オプション装置20bのリアルタイムステータスの情報を返送するSTS信号が909である。オプション装置20cのリアルタイムステータスの情報を返送するSTS信号が910である。オプション装置20dのリアルタイムステータスの情報を返送するSTS信号が911である。オプション装置20eのリアルタイムステータスの情報を返送するSTS信号が912である。オプション装置20fのリアルタイムステータスの情報を返送するSTS信号が913である。オプション装置20gのリアルタイムステータスの情報を返送するSTS信号が914である。各STS信号がCLK信号510に同期して送出される。なお、ビットの内容は、例えば搬送センサに紙が無い場合はHigh、ある場合はLowである。
【0074】
また、リアルタイムステータスコマンド920での給紙口の指定は、例えばリアルタイムステータスコマンド920によると、8bitの内訳のうち、LSBはLowに固定し、残りの7bitにおいて2進数のコード給紙口を指定する。本実施形態の場合はオプション装置20gから給紙するため、用紙搬送方向下流から7段目に接続されているオプション装置から給紙を行う。したがって、この7bitには0000111を設定し指定する。
【0075】
全てのオプション装置は、リアルタイムステータスコマンド920を受信すると、どの情報をリアルタイムステータスとして返送するのかを判断する。リアルタイムステータスコマンド920で指示されたコードと同じ数のIDを持つ給紙段は、搬送センサと紙有無センサの情報をリアルタイムステータスコマンドとして返送する。他方、それ以外の給紙段は搬送センサの情報のみをリアルタイムステータスコマンドとして返送する。
このとき、装置IDの若い順に、リアルタイムステータスの1bit目から順番に1bitずつ情報を載せていく。リアルタイムステータスコマンド920で指定された給紙段は搬送センサと紙有無センサの2つの情報を返送する必要があるため、リアルタイムステータスの2bit分を使用して情報を載せる。
【0076】
最終的に、各オプション装置からのSTS信号はワイヤードORによって結合され、1つのSTS信号900となる。なお、各オプション装置は、自己が状態情報を送信するビット位置以外のビット位置では、Highを出力する。これは、ワイヤードORを採用しているための対策である。
【0077】
各オプション装置は、最初のリアルタイムステータス信号の送信が完了すると、一旦、STS信号をLowに変化させる。これはCLK信号511に同期して受信するCMD信号515を待つためである。各オプション装置は、CLK信号511に同期したリアルタイムステータス信号908、909、910、911、912、913、914の送信準備をする。すなわち、各オプション装置は、搬送センサの値と紙有無センサの値を取得する。ここで、CLK信号510に同期して送信したリアルタイムステータス信号915とCLK信号511に同期して送信したリアルタイムステータス信号915とを同一内容としてもよい。本実施例では同一内容とする。本体装置のSTS受信部は、CLK信号510に同期して受信したリアルタイムステータス915とCLK信号511に同期して受信したリアルタイムステータス915とが同一内容であれば採用し、違っていれば不採用とする。これにより、リアルタイムステータスの送受信時に発生したノイズなどによるエラーを除去できる利点がある。リアルタイムステータスコマンドについても同様であり、CLK信号512に同期して本体装置から送信するリアルタイムステータスコマンドとCLK信号513に同期して本体装置から送信するリアルタイムステータスコマンドを同一内容としてもよい。本実施形態ではリアルタイムステータス同様、リアルタイムステータスコマンドも同一内容とする。
【0078】
このように、各オプション装置の状態情報送信部313は、それぞれ同一のCLK信号に対する送信期間(例:8ビットの送信期間)を分割してえられる複数の送信タイミングのうちそれぞれ異なる送信タイミングでリアルタイムステータスを送信する。一方で、コマンド609、610に対応するステータスを送信するためのSTS信号619、620を送信する。そして、コマンド信号により指定されなかったスレーブ装置に備えられている状態情報送信部313は、ステータス信号線の信号レベルをハイレベルに維持する。
【0079】
また、取得部314は、コマンド信号線202の信号レベルが変化すると、ステータスとリアルタイムステータスとの少なくとも一方を確定する。上述したように、ステータスは、コマンド信号に対応するオプション装置の状態の情報であり、リアルタイムステータスは、画像形成装置の動作の状況に応じてマスタ装置が必要とする、スレーブ装置に関する情報である。
【0080】
本体装置の処理についてのフローチャートは図7と同様である。またオプション装置の処理についてのフローチャートは図8と同様である。
【0081】
以上説明したように、本体装置はリアルタイムステータスコマンドにて、接続されている全てのオプション装置に対して給紙を行うオプション装置を通知する。これにより、リアルタイム性が要求される情報(上述した条件においての紙有無センサと搬送センサの情報)を各スレーブ装置からリアルタイムステータスにて入手し、スループットが向上させることが可能となる。
【0082】
[実施形態3]
以下、本発明に関わる実施形態3について説明する。実施形態3も実施形態1、2と同様に画像形成装置とオプション装置との間の通信に関するものである。そのため、以下では、実施形態1、2と同様な部分については説明を省略し、本実施形態の特徴的な部分を中心に説明する。
【0083】
画像形成装置の状態は、ユーザーの使用方法により刻々と変化している。例えば、用紙搬送途中でのJAMや、故障、また長時間画像形成装置が使用されない場合はwait中になり、wait中からの復帰なども突然発生する。ユーザーによって画像形成装置のドアが開けられた場合などもその1例であり、これらは画像形成装置の状態変化である。
【0084】
画像形成装置において、これらの状態変化の詳細な状態を知ることが可能である。例えば、用紙搬送途中でのJAMの場合は、画像形成装置内のJAMの位置が詳細な状態に相当し、また、ユーザーによってドアが開けられた場合は、開けられたドアの種類の情報も、詳細な状態に相当する。そして、故障については、故障部分が詳細な状態に相当する。
【0085】
本体装置の制御CPUは、本体装置の状態変化とその詳細情報をリアルタイムで認識することが可能である。しかし、オプション装置の状態変化は、本体装置とオプション装置との間の通信で伝えられる為、本体装置の制御CPUがこれらの状態変化を認識するまでにある程度時間がかかってしまう。さらに、従来は、各オプション装置の状態変化情報を本体装置の制御CPUが取得する際CMD信号を送信し、それに対するSTS信号を受信する通信を1サイクルの通信とした場合、接続されているオプション装置1台について1サイクルの通信を行う必要がある。従って、接続されている全てのオプション装置の状態変化情報を取得するためには、接続されている全オプション装置分のサイクルの通信が必要であった。例えば、7台のオプション装置が本体装置に接続されていた場合、CMD信号に対するSTS信号の通信を7回する必要があった。
【0086】
本体装置の制御CPUが、上記のような無駄な通信サイクルを実行することなく、オプション装置の状態変化を短時間で認識することが可能になれば、ユーザーの手を煩わせるようなJAMや、故障による不必要な部品の破損などをより回避できる。即ち、より精度の高いオプション装置の制御を行うことができる。
【0087】
具体的には、本体装置がオプション装置に対してリアルタイムステータスコマンドにて状態変化の問い合わせを全てのオプション装置に一斉に送信する。そして、それに対して、各オプション装置は、状態変化情報を、CMD信号を受信するためのCLK信号に同期させて送信するリアルタイムステータスにて本体装置に送信する。本体装置は各オプション装置から取得した状態変化情報から、状態が変化したオプション装置にのみ、状態変化詳細情報を問い合わせるステータス要求コマンドを送信する。これにより、本体装置の制御CPUは従来よりも効率よくオプション装置の状態変化を取得することが可能となる。
【0088】
図10は、本体装置と各オプション装置とのシリアル通信方式の具体例を説明するためのタイミングチャートである。なお、図5や図6と共通する部分には、同一の参照符号が付されている。
【0089】
各オプション装置は、CMD信号による割り込みがあると(t11)、それぞれSTS信号をLowレベルに切り換えることでシリアル送受信モードに移行する。さらに、各オプション装置は、オプション装置の状態変化情報を取得して確定する。
【0090】
各オプション装置は、確定した状態変化情報を送信データとして設定する。各オプション装置が状態変化情報を送信するために利用できるビット位置(送信期間)は異なっている。図10によればLSBから2bit分はHighに固定する。それらを除いて左から、故障情報、wait中情報、JAM情報、用紙無し情報、ドアオープン情報、エンジン診断中情報を設定する。状態に変化があればLowを、変化が無ければHighを設定する。また、リアルタイムステータスコマンドは、LSBのみをHighに設定し、残りのbitを全てLowにすることで、オプション装置に状態変化情報を要求することを意味する。
【0091】
最終的に、各オプション装置からのSTS信号はワイヤードORによって結合され、1つのリアルタイムステータス信号1002となる。
【0092】
各オプション装置は、CLK信号510に同期したリアルタイムステータスの送信が完了すると、一旦、STS信号をLowに変化させる。これは、CLK信号511に同期して受信するCMD信号610を待つためである。また、STS信号のLowは、シリアル送受信モードへの移行を意味する。各オプション装置は、CLK信号511に同期して本体装置に送信するリアルタイムステータス1002の送信準備をする。すなわち、各オプション装置は、状態変化情報を取得する。
【0093】
ここで、CLK信号510に同期して送信する状態変化情報(リアルタイムステータス1002)とCLK信号511に同期して送信する状態変化情報(リアルタイムステータス信号1002)を同一内容としてもよい。なお、本実施形態においては同一内容とした。
【0094】
本体装置のSTS受信部は、CLK信号510に同期して送信する状態変化情報(リアルタイムステータス1002)とCLK信号511に同期して送信する状態変化情報(リアルタイムステータス信号1002)が同じであれば採用し違っていれば不採用とする。これにより、状態変化情報の送受信時に発生したノイズなどによるエラーを除去できる利点がある。
【0095】
このように、各オプション装置の状態情報送信部313は、それぞれ同一のCLK信号に対する送信期間を分割して得られる複数の送信タイミングの内、それぞれ異なる送信タイミングでリアルタイムステータスとして状態変化情報信号を送信する。
【0096】
各オプション装置は、CLK信号511に同期したリアルタイムステータスの送信が完了すると、STS信号をHighに変化させる(t12)。これは、オプションがCLK信号512に同期して送信するSTS信号612の送信とリアルタイムステータスコマンド1004の受信を待つためである。
【0097】
コマンド信号609、610により指定されたスレーブ装置に備えられている状態情報伝送部313は、コマンド信号609、610に対応するSTS信号612、613を送信する。そしてコマンド信号により指定されたかったスレーブ装置に備えられている状態情報送信部313は、ステータス信号線の信号レベルをハイレベルに維持する。
【0098】
オプション装置は、STS信号612、613の送信が終了すると、STS信号線をHighに変化させる(t13)。これにより、1サイクルの通信が終了したことを意味する。1サイクルの通信はc1である。
【0099】
なお、本体装置の制御CPU200は、c1の通信でオプション装置から得られた状態変化情報を元に、c1と同一形態の通信を行う次の通信サイクルで、状態変化詳細情報を問い合わせるCMD信号を、オプション装置に送信する。
【0100】
図11は、本体装置の処理についてのフローチャートである。
【0101】
ステップS1101で、STS受信部206の検出部302は、STS信号がHighかどうかを判定する。STS信号がHighになると、ステップS1102へ進み、CMD送信部205の伝達部301は、CMD信号の信号レベルをLowに変化させる。
【0102】
ステップS1103で、制御CPU200は、1st Commandの送信が完了し、且つCLK信号510に同期するオプション装置20a、〜20gからのリアルタイムステータス信号1001の受信が完了したか否かを判定する。双方が完了すると、ステップS1104に進み、制御CPU200は、2nd Commandの送信が完了し、かつ、CLK信号511に同期する各オプション装置からのリアルタイムステータス信号1001の受信が完了したか否かを判定する。双方が完了すると、ステップS1105へ進む。
【0103】
ステップS1105で、制御CPU200は、CLK信号510に同期するリアルタイムステータス信号1001とCLK信号511に同期するリアルタイムステータス信号1001とを比較し、両者が同一内容であるか否かを判定する。同一内容であれば、ステップS1106へ進み、制御CPU200は不図示の記憶装置に保持している各オプション装置の状態変化情報を更新する。一方、同一でなければ、状態変化情報を更新することなく、ステップS1107へ進む。その後、S1107が実行される。
【0104】
ステップS1107で、STS受信部206の検出部302は、STS信号がHighかどうかを再び判定する。STS信号がHighになると、ステップS1108へ進み、CMD送信部205の伝達部301は、CMD信号の信号レベルをLowに変化させる。
【0105】
ステップS1109で、制御CPU200は、1st Statusを受信し、かつ、CLK信号512に同期させてオプション装置に対して状態変化情報を要求するリアルタイムステータスコマンド1004を送信する。
【0106】
ステップS1110では、制御CPU200が、2nd Statusを受信し、かつ、ステップS1109で送信したリアルタイムステータスコマンドと同一の内容のリアルタイムステータスコマンドをCLK信号513に同期させて送信する。
【0107】
ステップS1111では、制御CPU200がオプション装置から受信した状態変化情報を判断し、状態変化があったことを通知されていれば(どれかのbitがLowであれば)ステップS1112を実行する。状態変化が無かった場合(全てのbitがHigh)は、ステップS1101に戻る。
【0108】
ステップS1112では次の通信サイクルでオプション装置に状態変化詳細を問い合わせるCMD信号を確定する。
【0109】
図12はオプション装置の処理についてのフローチャートである。ステップS1201 で本体装置から2回受信するリアルタイムステータスコマンド1000が同一内容であることの判断を行う。リアルタイムステータスコマンド1000が同一内容である場合は、ステップS1202へ進む。リアルタイムステータスコマンド1000が同一内容で無い場合は状態変化情報を送信データに設定せずにステップS1204へ進む。
【0110】
ステップS1202で、各オプション装置の取得部314は、オプション装置の状態変化情報からリアルタイムステータス1003を確定し、次のステップS1203で状態変化情報を送信データに設定する。この時クロック信号510に同期して送信するリアルタイムステータス1003に状態変化情報を設定する。
【0111】
ステップS1204で、各オプション装置の通知部312は、STS信号をLowに変化させる。ステップS1205で各オプション装置の制御CPUは、1st Commandを受信し、かつ、CLK信号510に同期する各オプションの状態変化情報を載せたリアルタイムステータスの送信が完了したか否かを判定する。双方が完了していれば、ステップS1206に進む。ステップS1206で、各オプション装置の状態情報送信部313は、CLK信号511に同期して送信する状態変化情報を送信データとして設置し、CLK信号511に同期して送信するリアルタイムステータス1003を生成する。
【0112】
なお、エラー制御の観点から同一内容の状態変化情報を複数回送信する場合は、CLK信号510に同期して送信される状態変化情報と、CLK信号511に同期して送信される状態変化情報が同一内容となる。
【0113】
ステップS1207で、各オプション装置の通知部312は、STS信号をLowに変化させる。ステップS1208で、各オプション装置の制御CPUは2nd Commandを受信し、かつ、CLK信号511に同期させるリアルタイムステータスの送信が完了したか否かを判定する。双方が完了していれば、ステップS1209へ進み、CMD受信部215は、受信したコマンドの内容を解析する。ステップS1210で、状態情報送信部313は、1st Statusを準備するために、受信したコマンド609、610に応じたステータスを送信データに設定する。ステップS1211で、通知部312は、STS信号をHighに変化させることで、STS送信部216は、送信待ち状態となる。またCMD受信部215は受信待ち状態となる。その後、クロック信号が入力されると、状態情報送信部313は、クロック信号512に同期して1st Statusの送信と、リアルタイムステータスコマンド1004の受信を行う。ステップS1212で、STS送信部216は、1st Statusの送信が完了したか否かを判定する。またCMD受信部215は、CLK信号512に同期してリアルタイムステータスコマンドの受信を行う。完了すると、ステップS1213へ進み、2nd Statusを準備するために、受信したコマンド609、610に応じたステータスを送信データに設定する。ステップS1214で、通知部312は、STS信号をHighに変化させることで、STS送信部216は送信待ち状態になり、CMD受信部215は受信待ち状態になる。
【0114】
ステップS1215で、STS送信部216は、2nd Statusの送信が完了したこと、CMD受信部215は、リアルタイムステータスコマンド1004を受信したことを判定する。完了すると、ステップS1216へ進み、通知部312は、STS信号をLowに変化させる。ステップS1217で、制CPU210は、受信したコマンドの内容に応じた処理と、リアルタイムステータスコマンドの解析を行う。ステップS1218で、通知部312は、STS信号をHighに変化させる。
【0115】
以上説明したように、本実施形態によれば、マスタ装置からCMD信号を受信するのと並行して(CMD信号を受信するためのクロック信号に同期して)、各スレーブ装置が、それぞれの状態変化情報をSTS信号に搭載して送信する。これにより、マスタ装置の制御CPUが、上記のような無駄な通信サイクルを実行することなく、スレーブ装置の状態変化を短時間で認識することが可能になり、より精度の高いスレーブ装置の制御を行うことができる。
【符号の説明】
【0116】
9 ベルト
9c 従動コロ
9e 吸着ローラ
15 レジローラ
【特許請求の範囲】
【請求項1】
マスタ装置と1以上のスレーブ装置と、前記マスタ装置から前記スレーブ装置へクロック信号を送信するためのクロック信号線と、前記クロック信号に同期して、前記マスタ装置から前記スレーブ装置へデータ信号を送信するためのコマンド信号線と、前記クロック信号に同期して、少なくとも1つ以上の前記スレーブ装置から前記マスタ装置へデータ信号を送信するための状態信号線と、前記マスタ装置に備えられ、前記全てのスレーブ装置について前記状態信号線の信号レベルが変化すると、前記状態信号を送信させるためのクロック信号を前記クロック信号線へ送出するクロック発生手段と、前記各スレーブ装置から伸びる状態信号線の支線が論理和接続させるための論理和接続手段とを備えたシリアル通信システムをマスタ装置と1以上のスレーブ装置からなる通信システムであって、
前記マスタ装置は、クロック信号及び第1データ信号を前記スレーブ装置へ送信し、クロック信号及び第1データ信号の送信に同期して、前記スレーブ装置から、論理和接続手段にて第4データ信号を受信する手段を有し、
第1データ信号の送信と、第4データ信号の受信完了を意味する状態信号線のレベルの変化により、前記マスタ装置は、クロック信号及び第3データ信号を前記スレーブ装置へ送信し、クロック信号及び第3データ信号の送信に同期して、前記スレーブ装置から、第2データ信号を受信する手段を有し、
前記第3データ信号は、システムの動作状況に応じて、前記第4データ信号を可変にするデータ信号であることを特徴とする通信システム。
【請求項2】
前記第1データ信号は、前記スレーブ装置に動作を指示するデータ信号であり、前記第2データ信号は、前記スレーブ装置が前記コマンドによって指示された動作の状態を前記マスタ装置へ報知するためのデータ信号であり、前記第3データ信号とは、前記マスタ装置が該スレーブ装置に関する情報を取得するためのデータ信号であって、前記マスタ装置と1以上のスレーブ装置からなるシステムの動作状況に応じて、必要とする前記スレーブ装置に関する情報を該スレーブ装置に対して可変に指示するデータ信号であり、
前記第4データ信号は、前記マスタ装置と1以上のスレーブ装置からなるシステムの動作状況に応じて前記マスタ装置が必要とする該スレーブ装置に関する情報のデータ信号であり、前記第3データ信号によって指示された該スレーブ装置の状態を示す情報を含むことを特徴とする請求項1に記載のシリアル通信システム。
【請求項3】
前記マスタ装置は、画像形成装置であって、前記スレーブ装置は前記画像形成装置に接続されるオプション装置であることを特徴とする、請求項1乃至2に記載のマスタ装置と1以上のスレーブ装置からなる通信システム。
【請求項1】
マスタ装置と1以上のスレーブ装置と、前記マスタ装置から前記スレーブ装置へクロック信号を送信するためのクロック信号線と、前記クロック信号に同期して、前記マスタ装置から前記スレーブ装置へデータ信号を送信するためのコマンド信号線と、前記クロック信号に同期して、少なくとも1つ以上の前記スレーブ装置から前記マスタ装置へデータ信号を送信するための状態信号線と、前記マスタ装置に備えられ、前記全てのスレーブ装置について前記状態信号線の信号レベルが変化すると、前記状態信号を送信させるためのクロック信号を前記クロック信号線へ送出するクロック発生手段と、前記各スレーブ装置から伸びる状態信号線の支線が論理和接続させるための論理和接続手段とを備えたシリアル通信システムをマスタ装置と1以上のスレーブ装置からなる通信システムであって、
前記マスタ装置は、クロック信号及び第1データ信号を前記スレーブ装置へ送信し、クロック信号及び第1データ信号の送信に同期して、前記スレーブ装置から、論理和接続手段にて第4データ信号を受信する手段を有し、
第1データ信号の送信と、第4データ信号の受信完了を意味する状態信号線のレベルの変化により、前記マスタ装置は、クロック信号及び第3データ信号を前記スレーブ装置へ送信し、クロック信号及び第3データ信号の送信に同期して、前記スレーブ装置から、第2データ信号を受信する手段を有し、
前記第3データ信号は、システムの動作状況に応じて、前記第4データ信号を可変にするデータ信号であることを特徴とする通信システム。
【請求項2】
前記第1データ信号は、前記スレーブ装置に動作を指示するデータ信号であり、前記第2データ信号は、前記スレーブ装置が前記コマンドによって指示された動作の状態を前記マスタ装置へ報知するためのデータ信号であり、前記第3データ信号とは、前記マスタ装置が該スレーブ装置に関する情報を取得するためのデータ信号であって、前記マスタ装置と1以上のスレーブ装置からなるシステムの動作状況に応じて、必要とする前記スレーブ装置に関する情報を該スレーブ装置に対して可変に指示するデータ信号であり、
前記第4データ信号は、前記マスタ装置と1以上のスレーブ装置からなるシステムの動作状況に応じて前記マスタ装置が必要とする該スレーブ装置に関する情報のデータ信号であり、前記第3データ信号によって指示された該スレーブ装置の状態を示す情報を含むことを特徴とする請求項1に記載のシリアル通信システム。
【請求項3】
前記マスタ装置は、画像形成装置であって、前記スレーブ装置は前記画像形成装置に接続されるオプション装置であることを特徴とする、請求項1乃至2に記載のマスタ装置と1以上のスレーブ装置からなる通信システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2011−4358(P2011−4358A)
【公開日】平成23年1月6日(2011.1.6)
【国際特許分類】
【出願番号】特願2009−148009(P2009−148009)
【出願日】平成21年6月22日(2009.6.22)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成23年1月6日(2011.1.6)
【国際特許分類】
【出願日】平成21年6月22日(2009.6.22)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]