JP2015123700A - 割込み制御装置及び画像形成装置 - Google Patents
割込み制御装置及び画像形成装置 Download PDFInfo
- Publication number
- JP2015123700A JP2015123700A JP2013270743A JP2013270743A JP2015123700A JP 2015123700 A JP2015123700 A JP 2015123700A JP 2013270743 A JP2013270743 A JP 2013270743A JP 2013270743 A JP2013270743 A JP 2013270743A JP 2015123700 A JP2015123700 A JP 2015123700A
- Authority
- JP
- Japan
- Prior art keywords
- interrupt
- motor
- register
- control unit
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Handling Of Sheets (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
【課題】特定の割込み処理の完了を監視することによって、ステッピングモータを安定して制御することができるようにする。
【解決手段】ステッピングモータの割込み制御処理を実行する制御部と、割込み要求を発生する割込みソースと、割込みソースのうちの特定の割込みソースの割込み要求が発生してからの時間が制限時間を経過するとカウントアップ信号を出力する割込み時間監視カウンタと、ステッピングモータの状態を示すモータ状態情報を格納して出力するモータ状態情報レジスタと、カウントアップ信号が出力されると、モータ状態情報レジスタが出力したモータ状態情報に付加情報を付加する情報付加部とを有し、特定の割込みソースの割込み要求が発生すると割込み制御処理を開始し、モータ状態情報の読取りを行い、モータ状態情報に付加情報が付加されている場合には割込み制御処理を途中で終了する。
【選択図】図1
【解決手段】ステッピングモータの割込み制御処理を実行する制御部と、割込み要求を発生する割込みソースと、割込みソースのうちの特定の割込みソースの割込み要求が発生してからの時間が制限時間を経過するとカウントアップ信号を出力する割込み時間監視カウンタと、ステッピングモータの状態を示すモータ状態情報を格納して出力するモータ状態情報レジスタと、カウントアップ信号が出力されると、モータ状態情報レジスタが出力したモータ状態情報に付加情報を付加する情報付加部とを有し、特定の割込みソースの割込み要求が発生すると割込み制御処理を開始し、モータ状態情報の読取りを行い、モータ状態情報に付加情報が付加されている場合には割込み制御処理を途中で終了する。
【選択図】図1
Description
本発明は、割込み制御装置及び画像形成装置に関するものである。
従来、プリンタ、複写機、ファクシミリ機等の画像形成装置においては、印刷用紙等の媒体を搬送したり、印字ヘッド等のヘッドを駆動したりするためにステッピングモータが使用されている。そして、該ステッピングモータの回転は、該ステッピングモータに供給される電流を切替えることによって制御されるところ、前記電流を切替えるための相切替信号を出力するタイミングは、タイマによって管理されている。
例えば、相切替信号が出力されてから次の相切替信号が出力されるまでの所定の時間、すなわち、相切替時間は、タイマによってカウントされる。そして、前記相切替時間がカウントアップされると、前記相切替信号が出力されるとともに、次の相切替信号が出力されるまでの相切替時間のカウントが開始される。同時に、割込み処理が実行され、次の割込みタイミングで設定される相切替時間の設定がプログラムによって行われる。ステッピングモータの制御においては、相切替えの割込み処理をステッピングモータの速度に関連した時間間隔で実行し、かつ、該時間間隔内に割込み処理を完了することが重要である(例えば、特許文献1参照。)。
しかしながら、前記従来の画像形成装置においては、相切替えの割込み処理のように定期的に実行される割込み処理よりも優先度の高い処理が実行中である場合、前記割込み処理の実行開始が待機させられてしまう。そして、実行開始が待機させられると、前記割込み処理が完了するタイミングが遅延してしまい、その遅延が大きい場合には、次の割込みタイミングに間に合わなくなってしまう。このように、次の割込みタイミングまでに割込み処理が完了しなくなると、ステッピングモータの定期的な制御が不可能となり、異常状態となってしまう。
本発明は、前記従来の問題点を解決して、特定の割込み処理の完了を監視することによって、ステッピングモータを安定して制御することができる割込み制御装置及び画像形成装置を提供することを目的とする。
そのために、本発明の割込み制御装置においては、ステッピングモータの割込み制御処理を実行する制御部と、割込み要求を発生する割込みソースと、該割込みソースのうちの特定の割込みソースの割込み要求が発生してからの時間が制限時間を経過するとカウントアップ信号を出力する割込み時間監視カウンタと、前記ステッピングモータの状態を示すモータ状態情報を格納して出力するモータ状態情報レジスタと、前記カウントアップ信号が出力されると、前記モータ状態情報レジスタが出力したモータ状態情報に付加情報を付加する情報付加部とを有し、前記制御部は、前記特定の割込みソースの割込み要求が発生すると前記割込み制御処理を開始し、前記モータ状態情報の読取りを行い、該モータ状態情報に前記付加情報が付加されている場合には前記割込み制御処理を途中で終了する。
本発明によれば、割込み制御装置は、特定の割込み処理の完了を監視する。これにより、ステッピングモータを安定して制御することができる。
以下、本発明の実施の形態について図面を参照しながら詳細に説明する。
図1は本発明の第1の実施の形態における画像形成装置の構成を示すブロック図である。
図において、10は画像形成装置であり、例えば、プリンタ、ファクシミリ機、複写機、プリンタ、ファクシミリ機及び複写機の機能を併せ持つ複合機(MFP:Multi Function Printer)等であって、インクジェット方式、電子写真方式、熱転写方式等の各種の画像形成方式を利用して、印刷用紙等の媒体に画像を形成することが可能な装置であれば、いかなる種類の画像形成装置であってもよい。なお、本実施の形態においては、前記画像形成装置10が熱転写方式のプリンタである場合について説明する。
そして、前記画像形成装置10は、図示されないネットワーク、USB(Universal Serial Bus)回線等の通信回線を介して、上位装置としてのホスト装置11と通信可能に接続されている。該ホスト装置11は、印刷データを含む印刷コマンドを作成して画像形成装置10に送信することができる装置であれば、いかなる種類の装置であってもよく、例えば、サーバ、PDA(Personal Digital Assistant)、電子手帳、ゲーム機、携帯電話機等であってもよいが、ここでは、例えば、CPU、MPU等の演算手段、磁気ディスク、半導体メモリ等の記憶手段、キーボード、マウス、タッチパネル等の入力手段、CRT、液晶ディスプレイ等の表示手段、通信インターフェイス等を備えるパーソナルコンピュータであるものとして説明する。
また、前記画像形成装置10は、該画像形成装置10の各部の動作を制御する制御装置としての制御ユニット12、記憶手段としてのROM13、記憶手段としてのRAM14、電源電圧分圧部としての電源電圧分圧回路15、温度検出手段としての温度センサ16、ユーザインターフェイスとしての操作パネル17、画像形成部である熱転写ヘッドとしてのサーマルヘッド18、モータ駆動部としてのモータドライバ回路19及びステッピングモータとしての媒体搬送モータ20を有する。
ここで、前記ROM13は、画像形成装置10を制御するプログラムとしてのプリンタ制御プログラムを格納する。また、前記RAM14は、前記プリンタ制御プログラムや画像形成装置10の制御に必要な各種データを格納する。さらに、前記電源電圧分圧回路15は、画像形成装置10の電源の電圧が規定している範囲を超えることがないか否かを確認する。さらに、前記温度センサ16は、発熱によって変化する媒体搬送モータ20の温度を検出し、該温度をアナログ信号に変換して出力する。
さらに、前記操作パネル17は、画像形成装置10のユーザが操作を行うためのスイッチ、画像形成装置10の状態を確認するための表示パネル等を備える。さらに、前記サーマルヘッド18は、熱転写印刷を行うことによって媒体に画像を形成する。さらに、前記モータドライバ回路19は、前記媒体搬送モータ20を駆動する。さらに、該媒体搬送モータ20は、媒体を搬送するローラ、ベルト等を駆動するための駆動源である。
また、前記制御ユニット12は、メモリ制御部22とCPU23とを含む制御部としての中央制御部21、A/Dコンバータ24、パネルI/F制御部25、割込み制御部26、印刷制御部27、モータ制御部28、タイマ29及びホストI/F制御部30を備える。なお、前記メモリ制御部22、CPU23、A/Dコンバータ24、パネルI/F制御部25、割込み制御部26、印刷制御部27、モータ制御部28、タイマ29及びホストI/F制御部30は、通信回線としての内部バス31を介して、相互に通信可能に接続されている。
ここで、前記中央制御部21は、ステッピングモータとしての媒体搬送モータ20の割込み制御処理を実行する。そして、前記メモリ制御部22は、前記ROM13及びRAM14と通信可能に接続され、前記ROM13及びRAM14のリード(読取り)及びライト(書込み)を行う。また、前記CPU23は、演算手段であって、前記メモリ制御部22を介してリードしたプリンタ制御プログラムを実行する。さらに、前記A/Dコンバータ24は、電源電圧分圧回路15及び温度センサ16が出力するアナログ信号をデジタル信号に変換する。さらに、前記パネルI/F制御部25は、前記操作パネル17にアクセスし、該操作パネル17のスイッチのリードや、表示パネルの表示指示を行う。
そして、前記ホストI/F制御部30は、ホスト装置11に接続され、印刷データの受信や制御データの送受信を行う。また、前記タイマ29は、計時手段であって、操作パネル17の制御等、周期的に処理を発生させるためのトリガとして機能する。さらに、前記モータ制御部28は、媒体搬送モータ20を駆動するための信号制御を行う。具体的には、ステッピングモータである媒体搬送モータ20へ供給される電流を切替えるための相切替信号37a、及び、各相の電流値に相当するPWM(Pulse Width Modulation:パルス幅変調)制御のオンデューティ時間を決定するための電流制御信号37bを、媒体搬送モータ20を駆動するモータドライバ回路19に出力する。
また、前記印刷制御部27は、サーマルヘッド18を駆動するための信号制御を行う。さらに、前記割込み制御部26は、モータ制御部28、タイマ29及びホストI/F制御部30から出力される第1〜第3割込み要求信号32a〜32cを監視し、割込み要求が発生したことを検出するとCPU23に通知する。
なお、前記モータ制御部28から割込み制御部26へ出力される割込み要求信号としての第1割込み要求信号32aは、ステッピングモータである媒体搬送モータ20の相切替タイミングをCPU23に通知するために使用される。また、前記タイマ29から割込み制御部26へ出力される割込み要求信号としての第2割込み要求信号32bは、操作パネル17の定期的な監視を行うために、一定の間隔でCPU23に通知するために使用される。さらに、前記ホストI/F制御部30から割込み制御部26へ出力される割込み要求信号としての第3割込み要求信号32cは、ホスト装置11からの印刷データの処理を速やかに実行するために、ホスト装置11からの印刷データの受信が検出されたときにCPU23に通知するために使用される。
次に、前記制御ユニット12の構成について詳細に説明する。
図2は本発明の第1の実施の形態における制御ユニットの要部の構成を示すブロック図である。
本実施の形態における割込み処理のための制御は、主として、中央制御部21、A/Dコンバータ24、割込み制御部26及びモータ制御部28によって実行される。そして、前記割込み制御部26は、図に示されるように、割込み要求レジスタ33、割込み時間監視カウンタ34及び割込み監視時間設定レジスタ35を備える。
前記割込み要求レジスタ33は、割込み要求を発生する特定の割込みソースとしてのモータ制御部28からの第1割込み要求信号32a、並びに、割込み要求を発生するその他の割込みソースとしてのタイマ29及びホストI/F制御部30からの第2割込み要求信号32b及び第3割込み要求信号32cを受信し、CPU23に割込み要求が発生したことを通知する。また、前記割込み要求レジスタ33は、設定に応じて、割込み時間監視カウンタ34にも、割込み要求が発生したことを通知する。
そして、前記割込み時間監視カウンタ34は、割込みソースのうちの特定の割込みソースの割込み要求が発生してからの時間が制限時間を経過するとカウントアップ信号を出力する。具体的には、割込み要求レジスタ33から特定の割込みソースの割込み要求が発生した旨の通知を受けると、カウントを開始する。これは、割込み要求が発生した時点からの時間をカウントするためである。
本実施の形態の場合、前記割込み要求レジスタ33は、第1割込み要求信号32aがハイレベルになったことを検出すると、割込み時間監視カウンタ34へ割込み要求が発生したことを通知する。しかし、第2割込み要求信号32b又は第3割込み要求信号32cがハイレベルになったことを検出しても、割込み時間監視カウンタ34へは割込み要求が発生したことを通知しない。
一般的に、ステッピングモータの制御においては、割込み発生タイミング毎に制御を確実に実行しなければならない。そのため、前記割込み時間監視カウンタ34は、モータ制御部28からの割込み要求だけを監視する必要がある。しかし、タイマ29やホストI/F制御部30からの割込み要求については、割込み処理の開始が遅れても致命的な障害が発生しないため、前記割込み時間監視カウンタ34が監視を行う必要はない。
前記割込み監視時間設定レジスタ35は、割込み時間監視カウンタ34がカウントする時間を格納しておくレジスタである。前記カウントする時間は、前記制限時間であって、あらかじめ中央制御部21によって、割込み時間監視カウンタ34に設定されている。そして、前記カウントする時間が経過したタイミングにおいて、前記割込み時間監視カウンタ34は、カウントアップ信号としての時間監視カウントアップ信号36を出力する。具体的には、時間監視カウントアップ信号36をハイレベルにして、A/Dコンバータ24へ出力する。
該A/Dコンバータ24は、レジスタとしての第1レジスタ41及び第2レジスタ42、セレクタ部としてのセレクタ回路43、情報付加部としての情報付加回路44、デコード部としてのデコード回路45並びにA/D変換部46を備える。
そして、前記第1レジスタ41は、第1チャンネルCH1を介して電源電圧分圧回路15から入力されたアナログ信号の電圧値をA/D変換部46によってデジタル値に変換した値を格納する。また、前記第2レジスタ42は、ステッピングモータの状態を示すモータ状態情報を格納して出力するモータ状態情報レジスタとして機能する。具体的には、第2チャンネルCH2を介して温度センサ16から入力されたアナログ信号の電圧値をA/D変換部46によってデジタル値に変換した値を格納する。
さらに、前記デコード回路45は、中央制御部21からレジスタのリード要求が発生した場合、中央制御部21から出力されたアドレスデータ49で要求されたレジスタアドレスの値に基づいて、第1レジスタ41及び第2レジスタ42から該当するレジスタを選択する。具体的には、前記デコード回路45は、中央制御部21から出力されたアドレスデータ49に該当するレジスタが第1レジスタ41であるか、第2レジスタ42であるかを決定し、セレクタ回路43に対してレジスタセレクト信号51を出力する。
そして、前記セレクタ回路43は、デコード回路45が選択したレジスタに格納されている値を、情報付加回路44に出力する。具体的には、前記セレクタ回路43は、入力されている複数のレジスタのデータから、レジスタセレクト信号51によって指定されたレジスタのデータを選択し、レジスタデータ47として、情報付加回路44に出力する。
該情報付加回路44は、時間監視カウントアップ信号36が出力されると、第2レジスタ42が出力したモータ状態情報に付加情報を付加する。具体的には、割込み時間監視カウンタ34から入力された時間監視カウントアップ信号36の値を、内部バス31に出力するレジスタリードデータ48のMSB(Most Significant Bit:最上位のビット)に付加情報として付加する。そして、レジスタリードデータ48のMSB以外の部分には、セレクタ回路43から入力されるレジスタデータ47をセットする。
本実施の形態においては、時間監視カウントアップ信号36の値をレジスタリードデータ48のMSBに付加する場合について説明したが、時間監視カウントアップ信号36の値を付加していることを認識することができるのであれば、時間監視カウントアップ信号36の値を付加する部分は、必ずしもMSBに限定されるものではなく、例えば、LSB(Least Significant Bit:最下位のビット)であってもよく、いかなる部分であってもよい。
次に、前記構成の画像形成装置10の動作について説明する。ここでは、媒体搬送モータ20を制御するための割込み制御処理であるモータ制御割込み処理の動作について説明する。まず、モータ制御割込み処理に対する時間監視制御について説明する。
図3は本発明の第1の実施の形態におけるモータ制御割込み処理に対する時間監視制御を示すタイムチャートである。
ステッピングモータである媒体搬送モータ20が回転中であれば、相切替のタイミング毎にモータ制御割込み処理が発生する。
本実施の形態において、割込み要求レジスタ33は、特定の割込みソースとしてのモータ制御部28からの割込み要求信号である第1割込み要求信号32aがハイレベルになったことを検出すると、割込み時間監視カウンタ34へ割込み要求が発生したことを通知する。しかし、その他の割込みソースとしてのタイマ29及びホストI/F制御部30からの割込み要求信号である第2割込み要求信号32b及び第3割込み要求信号32cがハイレベルになったことを検出しても、割込み時間監視カウンタ34へは割込み要求が発生したことを通知しない。
そして、ステッピングモータである媒体搬送モータ20が回転中であれば、モータ制御部28は、図に示されるように、ステッピングモータである媒体搬送モータ20へ供給される電流を切替えるための相切替信号37aを出力するとともに、第1割込み要求信号32aを出力する。該第1割込み要求信号32aは、相切替信号37aがハイレベルになるタイミング、すなわち、相切替えタイミング毎にアサートされてハイレベルになる。そして、第1割込み要求信号32aがハイレベルになると、割込み要求レジスタ33は、割込み時間監視カウンタ34へ割込み要求が発生したことを通知する。すると、割込み時間監視カウンタ34は、割込み監視時間設定レジスタ35に設定されている値、すなわち、制限時間をロードしてカウント動作を開始する。なお、割込み監視時間設定レジスタ35に設定される値は、相切替えタイミングの間隔、すなわち、割込み発生間隔よりも短い時間にする。
そして、割込み時間監視カウンタ34のカウント値が0になると、カウントアップとなり、割込み時間監視カウンタ34は、時間監視カウントアップ信号36をハイレベルにして、A/Dコンバータ24へ出力する。すると、情報付加回路44は、時間監視カウントアップ信号36の値をレジスタリードデータ48のMSBに付加する。これにより、A/Dコンバータ24から出されるレジスタリードデータ48のMSBの値が1になる。
次に、中央制御部21が実行するモータ制御割込み処理について説明する。
図4は本発明の第1の実施の形態におけるモータ制御割込み処理の動作を示すフローチャートである。
特定の割込みソースとしてのモータ制御部28からの割込み要求信号である第1割込み要求信号32aがハイレベルになって割込み要求が発生すると、中央制御部21は、モータ制御割込み処理を開始し、媒体搬送モータ20の相切替制御を継続するために、モータ制御部28に次の相切替時間を設定する。なお、前回のモータ制御割込み処理において、媒体搬送モータ20の回転速度の補正値が算出された場合には、該補正値を適用する。
続いて、中央制御部21は、媒体搬送モータ20の温度を把握するために、A/Dコンバータ24の第2レジスタ42のリードを行う。具体的には、時間監視カウントアップ信号36の値がMSBに付加されたレジスタリードデータ48のリードを行う。
続いて、中央制御部21は、レジスタリードデータ48のMSB=1であるか否かを判断する。つまり、リードを行ったレジスタリードデータ48のMSBの値を確認し、MSB=1であるか、MSB=0であるかを判断する。
そして、MSB=1である場合、割込み要求発生からの時間が制限時間を経過している、すなわち、オーバーしていると判断することができるので、中央制御部21は、割込み発生間隔を守るため、以降の動作を実行することなく、直ちにモータ制御割込み処理を終了する。
なお、制限時間をオーバーしている状態が発生した要因としては、例えば、割込み要求発生時点で、モータ制御割込み処理よりも高いプライオリティが与えられた他の処理が実行されていることが考えられる。中央制御部21が他の処理を実行していると、モータ制御割込み処理の開始が待たされる。そして、長い時間待たされた後に処理を開始しても、モータ制御割込み処理のすべての処理ステップを実行完了する前に、次回のモータ制御割込みが発生してしまう。そのため、割込み要求発生からの時間が制限時間をオーバーしていた場合には、未実行の処理ステップを実行せずに、直ちにモータ制御割込み処理を終了する必要がある。
ここで、前記未実行の処理ステップは、媒体搬送モータ20の温度情報に関する処理である。該温度情報に関する処理とは、媒体搬送モータ20の温度の情報を認識して、モータ制御部28にフィードバックを行う処理のことである。しかし、ステッピングモータである媒体搬送モータ20の相切替タイミングの間隔、すなわち、割込み発生間隔は、数百〔μs〕程度の短時間であり、このような短時間では媒体搬送モータ20の温度は急激には変化しない。したがって、前記温度情報に関する処理を今回のモータ制御割込み処理内に実行することができなくても、次回のモータ制御割込み処理で実行することができれば、媒体搬送モータ20の制御において重大な不具合が発生することはない。
また、レジスタリードデータ48のMSB=1であるか否かを判断してMSB=0である場合、中央制御部21は、A/Dコンバータ24の値をモータ温度に換算する。具体的には、レジスタリードデータ48のリードを行って得られたデータに含まれる温度センサ16から入力された値を媒体搬送モータ20の温度に換算する。
続いて、中央制御部21は、モータ温度が規定温度より低いか否かを判断する。具体的には、媒体搬送モータ20の温度があらかじめ設定された規定温度よりも低いか否かを判断する。
そして、モータ温度が規定温度より低くない、すなわち、規定温度以上である場合、中央制御部21は、現状の温度に対応したモータ制御の補正値を算出し、モータ制御割込み処理を終了する。具体的には、媒体搬送モータ20の温度を下げるために、媒体搬送モータ20の回転速度を低下させるための補正値を算出するとともに、媒体搬送モータ20を駆動するモータドライバ回路19へ出力される電流制御信号37bの補正値を算出して、モータ制御割込み処理を終了する。前記補正値は、次回のモータ制御割込み処理で適用される。
また、モータ温度が規定温度より低いか否かを判断して低い場合、すなわち、媒体搬送モータ20の温度があらかじめ設定された規定温度よりも低い場合、媒体搬送モータ20の温度を下げる必要がないので、中央制御部21は、直ちにモータ制御割込み処理を終了する。
次に、フローチャートについて説明する。
ステップS1 媒体搬送モータ20の相切替時間を設定する。
ステップS2 A/Dコンバータ24の第2レジスタ42のリードを行う。
ステップS3 レジスタリードデータ48のMSB=1か否かを判断する。レジスタリードデータ48のMSB=1である場合は処理を終了し、レジスタリードデータ48のMSB=1でない場合はステップS4に進む。
ステップS4 A/Dコンバータ24の値を媒体搬送モータ20の温度に換算する。
ステップS5 媒体搬送モータ20の温度が規定温度よりも低いか否かを判断する。媒体搬送モータ20の温度が規定温度よりも低い場合は処理を終了し、媒体搬送モータ20の温度が規定温度より低くない場合はステップS6に進む。
ステップS6 現状の温度に対応したモータ制御の補正値を算出し、処理を終了する。
ステップS1 媒体搬送モータ20の相切替時間を設定する。
ステップS2 A/Dコンバータ24の第2レジスタ42のリードを行う。
ステップS3 レジスタリードデータ48のMSB=1か否かを判断する。レジスタリードデータ48のMSB=1である場合は処理を終了し、レジスタリードデータ48のMSB=1でない場合はステップS4に進む。
ステップS4 A/Dコンバータ24の値を媒体搬送モータ20の温度に換算する。
ステップS5 媒体搬送モータ20の温度が規定温度よりも低いか否かを判断する。媒体搬送モータ20の温度が規定温度よりも低い場合は処理を終了し、媒体搬送モータ20の温度が規定温度より低くない場合はステップS6に進む。
ステップS6 現状の温度に対応したモータ制御の補正値を算出し、処理を終了する。
このように、本実施の形態において、中央制御部21は、特定の割込みソースとしてのモータ制御部28の割込み要求が発生するとモータ割込み制御処理を開始し、モータ状態情報としての第2レジスタ42のレジスタリードデータ48の読取りを行い、該レジスタリードデータ48に付加情報が付加されている場合にはモータ割込み制御処理を途中で終了する。なお、レジスタリードデータ48に付加情報が付加されていない場合には、モータ状態情報としてのモータ温度に基づくフィードバック処理を実行した後に、モータ割込み制御処理を終了する。
ここで、割込み要求レジスタ33は、特定の割込みソースとしてのモータ制御部28からの割込み要求信号がハイレベルになったことを検出すると、割込み時間監視カウンタ34へ割込み要求が発生したことを通知するが、その他の割込みソースからの割込み要求信号がハイレベルになったことを検出しても割込み時間監視カウンタ34へは割込み要求が発生したことを通知しないようになっている。そして、割込み時間監視カウンタ34は、割込み要求が発生したことが通知されると、レジスタリードデータ48の特定の部分に割込み要求が発生した旨を示す情報を付加する。
これにより、レジスタリードデータ48のリードを行う通常のレジスタリードサイクルによって、割込み要求が発生した旨を示す情報を読取ることができ、周期的に発生するステッピングモータである媒体搬送モータ20の相切替タイミングの間隔に影響を与えないようにモータ制御割込み処理を途中で終了する等、処理内容を変更することができる。
したがって、ステッピングモータである媒体搬送モータ20の相切替タイミングに影響を与えることなく、媒体搬送モータ20を安定して制御することができる。
換言すると、割込み処理時間が規定された制限時間を超えたことを割込み処理内で通常リードするレジスタリードデータ48の特定ビットに付加する情報付加回路44によって、読取りを行ったレジスタリードデータ48の値から割込み処理時間の状況を判断することができる機能を備える。このように、レジスタリードデータ48のリードサイクルによって割込み処理時間の経過状況を認識することができるので、制限時間が経過してしまった場合には、モータ制御割込み処理を途中で終了することができる。モータ制御割込み処理の実行時に制限時間の経過を認識することで、モータ制御割込み処理の継続可否を判断することができる。定期的に発生するモータ制御割込み処理において、処理の継続や終了を判断することによって、モータ制御割込み処理を、次回の割込み発生タイミングを超えずに終了することができる。
次に、本発明の第2の実施の形態について説明する。なお、第1の実施の形態と同じ構成を有するものについては、同じ符号を付与することによって、その説明を省略する。また、前記第1の実施の形態と同じ動作及び同じ効果についても、その説明を省略する。
図5は本発明の第2の実施の形態における制御ユニットの要部の構成を示すブロック図である。
本実施の形態において、A/Dコンバータ24は、第1レジスタ41、第2レジスタ42、セレクタ回路43、情報付加回路44、デコード回路45及びA/D変換部46に加えて、リード回数カウンタ52を備える。
該リード回数カウンタ52は、直近の過去において、特定の割込みソースの割込み要求が発生してからの時間が制限時間を経過した回数をカウントして経過回数を出力する経過回数カウンタとして機能する。具体的には、割込み時間監視カウンタ34が出力する時間監視カウントアップ信号36、及び、デコード回路45が出力するレジスタセレクト信号51を監視する。そして、該レジスタセレクト信号51に基づいて、レジスタとしての第1レジスタ41及び第2レジスタ42に対するアクセスが行われているか否かを認識することができる。また、前記時間監視カウントアップ信号36に基づいて、割込み要求発生からの時間が制限時間を経過しているか否かを認識することができる。
つまり、リード回数カウンタ52は、割込み要求発生からの時間が制限時間を経過したという条件の下で該当するレジスタに対するアクセスが行われたか否かを認識することができ、アクセスが行われた場合には、その回数をカウントする。そして、レジスタに対する連続アクセスを検出した場合、リード回数カウンタ52は、連続アクセス検出信号53を情報付加回路44に対して出力する。
本実施の形態における情報付加回路44は、割込み時間監視カウンタ34から入力された時間監視カウントアップ信号36の値を、内部バス31に出力するレジスタリードデータ48のMSBに付加する機能に加えて、リード回数カウンタ52が出力した連続アクセス検出信号53の情報をMSBから下位1ビットに付加する機能を備える。したがって、レジスタリードデータ48の最上位2ビットを読取ることによって、モータ制御割込み処理におけるレジスタリードサイクルに関する情報を取得することができる。また、レジスタリードデータ48の最上位2ビット以外の部分には、セレクタ回路43から入力されるレジスタデータ47をセットする。
例えば、第2レジスタ42のリードを行う場合、デコード回路45は、中央制御部21から出力されたアドレスデータ49で要求されたレジスタアドレスの値に基づいて該当するレジスタを決定し、セレクタ回路43に対してレジスタセレクト信号51を出力する。すると、該レジスタセレクト信号51が入力されたセレクタ回路43は、入力されている複数のレジスタのデータから、前記デコード回路45が決定したレジスタのデータを選択し、レジスタデータ47として情報付加回路44に対して出力する。そして、該情報付加回路44は、入力されたレジスタデータ47をレジスタリードデータ48の最上位2ビット以外の部分にそのままセットし、時間監視カウントアップ信号36及び連続アクセス検出信号53の値をレジスタリードデータ48の最上位2ビットにセットする。
本実施の形態においては、時間監視カウントアップ信号36及び連続アクセス検出信号53の値をレジスタリードデータ48の最上位2ビットに付加する場合について説明したが、時間監視カウントアップ信号36及び連続アクセス検出信号53の値を付加していることを認識することができるのであれば、時間監視カウントアップ信号36及び連続アクセス検出信号53の値を付加する部分は、必ずしも最上位2ビットに限定されるものではなく、いかなる部分であってもよい。
なお、その他の点の構成については、前記第1の実施の形態と同様であるので、その説明を省略する。
次に、本実施の形態における画像形成装置10の動作について説明する。ここでは、媒体搬送モータ20を制御するための割込み処理であるモータ制御割込み処理の動作について説明する。まず、モータ制御割込み処理に対する時間監視制御について説明する。
図6は本発明の第2の実施の形態におけるモータ制御割込み処理に対する時間監視制御を示すタイムチャートである。
前記第1の実施の形態と同様に、ステッピングモータである媒体搬送モータ20が回転中であれば、相切替のタイミング毎にモータ制御割込み処理が発生する。
リード回数カウンタ52は、前述のように、時間監視カウントアップ信号36及びレジスタセレクト信号51を入力信号とする。そして、時間監視カウントアップ信号36がハイレベルのときにレジスタセレクト信号51がハイレベルであれば、リード回数カウンタ52は、その値をインクリメントする。これは、前記リード回数カウンタ52が、割込み要求発生からの時間が制限時間を経過しているタイミングで該当するレジスタのリードが行われたことを検出するためのカウンタであるからである。
また、時間監視カウントアップ信号36がローレベルのときにレジスタセレクト信号51がハイレベルになったときには、割込み要求発生からの時間が制限時間を経過しないタイミングで該当するレジスタのリードが行われたことになるので、リード回数カウンタ52は、その値をインクリメントしない。
そして、本実施の形態において、経過回数カウンタとしてのリード回数カウンタ52は、直近の過去の複数回(例えば、2回)の割込み制御処理において特定の割込みソースの割込み要求が発生してからの時間が制限時間を連続して経過した回数をカウントして経過回数を出力する。具体的には、2回連続して、割込み要求発生からの時間が制限時間を経過しているタイミングで該当するレジスタのリードが行われた場合、すなわち、リード回数カウンタ52の値が2となった場合、該リード回数カウンタ52が出力する連続アクセス検出信号53がハイレベルになる。該連続アクセス検出信号53がハイレベルになると、レジスタリードデータ48の最上位2ビットの値が「11」又は「01」に変化する。最上位2ビットの内の下位のビットは、連続アクセス検出信号53の状態を示している。
このように、2回連続して、割込み要求発生からの時間が制限時間を経過しているタイミングで該当するレジスタのリードが行われた場合、レジスタリードデータ48の最上位2ビットの値が変化するので、中央制御部21は、連続アクセスを認識することができる。
なお、モータ制御割込み処理に対する時間監視制御におけるその他の点の動作については、前記第1の実施の形態と同様であるので、その説明を省略する。
次に、中央制御部21が実行するモータ制御割込み処理について説明する。
図7は本発明の第2の実施の形態におけるモータ制御割込み処理の動作を示すフローチャートである。
特定の割込みソースとしてのモータ制御部28からの割込み要求信号である第1割込み要求信号32aがハイレベルになって割込み要求が発生すると、中央制御部21は、モータ制御割込み処理を開始し、速度ダウンの指示があるか否かを判断する。速度ダウンの指示がある状態とは、前回のモータ制御割込み処理において、媒体搬送モータ20の回転速度を低下させるための速度ダウン指示フラグがオンに設定されている状態である。
そして、速度ダウンの指示がない場合、中央制御部21は、媒体搬送モータ20の相切替制御を継続するために、モータ制御部28に次の相切替時間を設定する。なお、前回のモータ制御割込み処理において、媒体搬送モータ20の回転速度の補正値が算出された場合には、該補正値を適用する。
また、速度ダウンの指示がある場合、中央制御部21は、媒体搬送モータ20の回転速度を低下させるために、モータ制御部28に次の相切替時間を設定する。すなわち、減速設定を行う。これは、モータ制御割込み処理を途中で終了することなく、すべての処理ステップを実行するために十分な時間を確保することを目的とするものである。ただし、急激な回転速度の低下は媒体搬送モータ20の脱調を引き起こすので、段階的な減速が必要になる場合もある。
続いて、中央制御部21は、媒体搬送モータ20の温度を把握するために、A/Dコンバータ24の第2レジスタ42のリードを行う。具体的には、時間監視カウントアップ信号36の値がMSBに付加されたレジスタリードデータ48のリードを行う。
続いて、中央制御部21は、レジスタリードデータ48の最上位2ビットの値を判断する。つまり、リードを行ったレジスタリードデータ48の最上位2ビットの値を確認し、「00」若しくは「01」であるか、「11」であるか、又は、「10」であるかを判断する。
そして、レジスタリードデータ48の最上位2ビットの値が「00」である場合、割込み要求発生からの時間が制限時間を経過していない、すなわち、オーバーしていないと判断することができるので、中央制御部21は、温度情報の設定を行う。具体的には、A/Dコンバータ24のレジスタリードデータ48のリードを行って得られたデータに含まれる温度センサ16から入力された値を媒体搬送モータ20の温度に換算する。
また、レジスタリードデータ48の最上位2ビットの値が「01」である場合も、「00」である場合と同様に、割込み要求発生からの時間が制限時間を経過していないと判断することができるので、中央制御部21は、温度情報の設定を行う。
続いて、中央制御部21は、モータ温度が規定温度より低いか否かを判断する。具体的には、媒体搬送モータ20の温度があらかじめ設定された規定温度よりも低いか否かを判断する。
そして、モータ温度が規定温度より低くない、すなわち、規定温度以上である場合、中央制御部21は、現状の温度に対応したモータ制御の補正値を算出し、モータ制御割込み処理を終了する。具体的には、媒体搬送モータ20の温度を下げるために、媒体搬送モータ20の回転速度を低下させるための補正値を算出するとともに、媒体搬送モータ20を駆動するモータドライバ回路19へ出力される電流制御信号37bの補正値を算出して、モータ制御割込み処理を終了する。前記補正値は、次回のモータ制御割込み処理で適用される。
また、モータ温度が規定温度より低いか否かを判断して低い場合、すなわち、媒体搬送モータ20の温度があらかじめ設定された規定温度よりも低い場合、媒体搬送モータ20の温度を下げる必要がないので、中央制御部21は、直ちにモータ制御割込み処理を終了する。
一方、レジスタリードデータ48の最上位2ビットの値を判断して「11」である場合、2回連続して、割込み要求発生からの時間が制限時間を経過しているタイミングで該当するレジスタのリードが行われた状態であって、割込み要求発生からの時間が制限時間をオーバーしているので、次回のモータ制御割込みにおいて、温度情報からのフィードバック処理を実行することができるように制御しなければならない。そのため、中央制御部21は、速度ダウン指示フラグをオンにする。これにより、次回のモータ制御割込み処理において、減速設定が行われる。このように、制限時間をオーバーしてレジスタのリードが実行された状態を連続して検出した場合には、処理を完了させるための制御を行うことができる。
さらに、レジスタリードデータ48の最上位2ビットの値を判断して「10」である場合、割込み要求発生からの時間が制限時間を経過している、すなわち、オーバーしていると判断することができるので、中央制御部21は、割込み発生間隔を守るため、以降の動作を実行することなく、直ちにモータ制御割込み処理を終了する。前記第1の実施の形態で説明したように、温度情報に関する処理を今回のモータ制御割込み処理内に実行することができなくても、次回のモータ制御割込み処理で実行することができれば、媒体搬送モータ20の制御において重大な不具合が発生することはない。
次に、フローチャートについて説明する。
ステップS11 速度ダウンの指示があるか否かを判断する。速度ダウンの指示がない場合はステップS12に進み、速度ダウンの指示がある場合はステップS13に進む。
ステップS12 媒体搬送モータ20の相切替時間を設定する。
ステップS13 媒体搬送モータ20の相切替時間を設定(減速設定)する。
ステップS14 A/Dコンバータ24の第2レジスタ42のリードを行う。
ステップS15 レジスタリードデータ48の最上位2ビットの値を判断する。レジスタリードデータ48の最上位2ビットの値が00又は01の場合はステップS16に進み、レジスタリードデータ48の最上位2ビットの値が11の場合はステップS19に進み、レジスタリードデータ48の最上位2ビットの値が10の場合は処理を終了する。
ステップS16 媒体搬送モータ20の温度情報を設定する。
ステップS17 媒体搬送モータ20の温度が規定温度よりも低いか否かを判断する。媒体搬送モータ20の温度が規定温度よりも低い場合は処理を終了し、媒体搬送モータ20の温度が規定温度より低くない場合はステップS18に進む。
ステップS18 現状の温度に対応したモータ制御の補正値を算出し、処理を終了する。
ステップS19 速度ダウンの指示フラグをオンにし、処理を終了する。
ステップS11 速度ダウンの指示があるか否かを判断する。速度ダウンの指示がない場合はステップS12に進み、速度ダウンの指示がある場合はステップS13に進む。
ステップS12 媒体搬送モータ20の相切替時間を設定する。
ステップS13 媒体搬送モータ20の相切替時間を設定(減速設定)する。
ステップS14 A/Dコンバータ24の第2レジスタ42のリードを行う。
ステップS15 レジスタリードデータ48の最上位2ビットの値を判断する。レジスタリードデータ48の最上位2ビットの値が00又は01の場合はステップS16に進み、レジスタリードデータ48の最上位2ビットの値が11の場合はステップS19に進み、レジスタリードデータ48の最上位2ビットの値が10の場合は処理を終了する。
ステップS16 媒体搬送モータ20の温度情報を設定する。
ステップS17 媒体搬送モータ20の温度が規定温度よりも低いか否かを判断する。媒体搬送モータ20の温度が規定温度よりも低い場合は処理を終了し、媒体搬送モータ20の温度が規定温度より低くない場合はステップS18に進む。
ステップS18 現状の温度に対応したモータ制御の補正値を算出し、処理を終了する。
ステップS19 速度ダウンの指示フラグをオンにし、処理を終了する。
このように、本実施の形態においては、連続して割込み要求発生からの時間が制限時間を経過しているタイミングで該当するレジスタのリードが行われたことを検出するリード回数カウンタ52が追加され、該リード回数カウンタ52の検出結果を示す情報がレジスタリードデータ48の特定の部分に付加される。
これにより、レジスタリードデータ48のリードを行う通常のレジスタリードサイクルによって、連続して割込み要求が発生した旨を示す情報を読取ることができ、媒体搬送モータ20の回転速度を落として処理時間を延ばすといった対応処理をすることができる。
したがって、モータ制御割込み処理を正常に完了することができなかったという現象が続いたとしても、ステッピングモータである媒体搬送モータ20の制御に大きな影響を及ぼすことがない。
なお、前記第1及び第2の実施の形態においては、画像形成装置10が熱転写方式のプリンタである例について説明したが、本発明は、インクジェット方式や電子写真方式のプリンタ、ファクシミリ機、複写機及びMFPにも適用することができる。
また、本発明は前記実施の形態に限定されるものではなく、本発明の趣旨に基づいて種々変形させることが可能であり、それらを本発明の範囲から排除するものではない。
本発明は、割込み制御装置及び画像形成装置に利用することができる。
10 画像形成装置
12 制御ユニット
20 媒体搬送モータ
21 中央制御部
28 モータ制御部
29 タイマ
30 ホストI/F制御部
33 割込み要求レジスタ
34 割込み時間監視カウンタ
36 時間監視カウントアップ信号
42 第2レジスタ
44 情報付加回路
52 リード回数カウンタ
12 制御ユニット
20 媒体搬送モータ
21 中央制御部
28 モータ制御部
29 タイマ
30 ホストI/F制御部
33 割込み要求レジスタ
34 割込み時間監視カウンタ
36 時間監視カウントアップ信号
42 第2レジスタ
44 情報付加回路
52 リード回数カウンタ
Claims (11)
- ステッピングモータの割込み制御処理を実行する制御部と、
割込み要求を発生する割込みソースと、
該割込みソースのうちの特定の割込みソースの割込み要求が発生してからの時間が制限時間を経過するとカウントアップ信号を出力する割込み時間監視カウンタと、
前記ステッピングモータの状態を示すモータ状態情報を格納して出力するモータ状態情報レジスタと、
前記カウントアップ信号が出力されると、前記モータ状態情報レジスタが出力したモータ状態情報に付加情報を付加する情報付加部とを有し、
前記制御部は、前記特定の割込みソースの割込み要求が発生すると前記割込み制御処理を開始し、前記モータ状態情報の読取りを行い、該モータ状態情報に前記付加情報が付加されている場合には前記割込み制御処理を途中で終了することを特徴とする割込み制御装置。 - 前記割込み要求が発生した旨を前記制御部及び割込み時間監視カウンタに通知する割込み要求レジスタを更に有し、
該割込み要求レジスタは、前記割込みソースのうちの特定の割込みソースの割込み要求が発生した旨のみを前記割込み時間監視カウンタに通知する請求項1に記載の割込み制御装置。 - 前記割込み時間監視カウンタは、前記割込み要求レジスタから前記特定の割込みソースの割込み要求が発生した旨の通知を受けると、前記制限時間のカウントを開始する請求項2に記載の割込み制御装置。
- 前記情報付加部は、前記モータ状態情報の特定のビットに前記付加情報を付加する請求項1〜3のいずれか1項に記載の割込み制御装置。
- 前記制御部は、前記モータ状態情報に前記付加情報が付加されている場合には前記割込み制御処理を途中で終了することによって、次回の割込み制御処理の発生タイミングに影響を及ぼさないようにする請求項1〜4のいずれか1項に記載の割込み制御装置。
- 前記制御部は、前記モータ状態情報に前記付加情報が付加されていない場合には、前記モータ状態情報に基づくフィードバック処理を実行した後に、前記割込み制御処理を終了する請求項1〜5のいずれか1項に記載の割込み制御装置。
- 直近の過去において前記特定の割込みソースの割込み要求が発生してからの時間が制限時間を経過した回数をカウントして経過回数を出力する経過回数カウンタを更に有し、
前記情報付加部は、前記経過回数を前記付加情報に更に付加し、
前記制御部は、前記モータ状態情報に前記付加情報が付加され、かつ、前記経過回数が所定回数以上である場合には前記割込み制御処理を途中で終了する請求項1〜6のいずれか1項に記載の割込み制御装置。 - 前記制御部は、前記モータ状態情報に前記付加情報が付加され、かつ、前記経過回数が所定回数未満である場合には、次回の割込み制御処理の処理時間を延ばした後に、前記割込み制御処理を終了する請求項7に記載の割込み制御装置。
- 前記経過回数カウンタは、直近の過去の複数回の割込み制御処理において前記特定の割込みソースの割込み要求が発生してからの時間が制限時間を連続して経過した回数をカウントして経過回数を出力する請求項7又は8に記載の割込み制御装置。
- 前記情報付加部は、前記モータ状態情報の特定の複数のビットに前記モータ状態情報が付加された付加情報を付加する請求項7〜9のいずれか1項に記載の割込み制御装置。
- 請求項1〜10のいずれか1項に記載の割込み制御装置を備える画像形成装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013270743A JP2015123700A (ja) | 2013-12-27 | 2013-12-27 | 割込み制御装置及び画像形成装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013270743A JP2015123700A (ja) | 2013-12-27 | 2013-12-27 | 割込み制御装置及び画像形成装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2015123700A true JP2015123700A (ja) | 2015-07-06 |
Family
ID=53534771
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2013270743A Pending JP2015123700A (ja) | 2013-12-27 | 2013-12-27 | 割込み制御装置及び画像形成装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2015123700A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN120546553A (zh) * | 2025-04-29 | 2025-08-26 | 无锡星驱动力科技有限公司 | 电机功能安全监控方法、装置、电子设备及存储介质 |
-
2013
- 2013-12-27 JP JP2013270743A patent/JP2015123700A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN120546553A (zh) * | 2025-04-29 | 2025-08-26 | 无锡星驱动力科技有限公司 | 电机功能安全监控方法、装置、电子设备及存储介质 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CA2345593C (en) | Device for and method of generating interrupt signals | |
| JP5777467B2 (ja) | 制御装置およびプログラム | |
| JP5949017B2 (ja) | 画像形成装置、ネットワークプリントシステム、省電力制御方法及び省電力制御プログラム | |
| JP2009230670A (ja) | プロセッサシステム | |
| JP6256251B2 (ja) | 電源管理回路及びこれを備えた画像形成装置 | |
| JP5678784B2 (ja) | 回路、電子機器、及び印刷装置 | |
| CN112579010B (zh) | 信息处理装置、方法、存储介质及计算机程序产品 | |
| JP2010193320A (ja) | 画像形成システム及びサーバ並びにプログラム | |
| JP6000238B2 (ja) | 画像形成装置 | |
| EP2703905B1 (en) | Printing apparatus | |
| JP2010129042A (ja) | 電源切り換え制御回路、画像形成装置、電源切り換え制御方法、及びコンピュータプログラム | |
| JP2017151752A (ja) | 画像処理装置、画像処理システム、画像処理方法及びプログラム | |
| JP5783348B2 (ja) | 制御装置、制御プログラム、画像形成装置 | |
| JP7508345B2 (ja) | 通信装置、制御方法、及びプログラム | |
| JP2007026309A (ja) | 画像形成装置及びその制御方法 | |
| JP7244737B2 (ja) | モータ制御回路及びモータ制御装置 | |
| JP2010218208A (ja) | 画像形成装置、ジョブ管理装置及びジョブ管理方法 | |
| US20140126020A1 (en) | Method of controlling speed of ethernet connection in power save mode and image forming apparatus performing the same | |
| JP6648541B2 (ja) | 制御装置 | |
| JP2022168646A (ja) | 画像形成装置 | |
| JP5732991B2 (ja) | 回路及び電子機器 | |
| JP5777670B2 (ja) | 画像形成システムおよび省電力印刷方法 | |
| JP2012221443A (ja) | コントローラー、電子機器、及び画像処理装置 | |
| JP2007102323A (ja) | 情報処理装置 | |
| JP2004148569A (ja) | 画像形成装置 |