JP2011189709A - Equipment control system - Google Patents
Equipment control system Download PDFInfo
- Publication number
- JP2011189709A JP2011189709A JP2010059925A JP2010059925A JP2011189709A JP 2011189709 A JP2011189709 A JP 2011189709A JP 2010059925 A JP2010059925 A JP 2010059925A JP 2010059925 A JP2010059925 A JP 2010059925A JP 2011189709 A JP2011189709 A JP 2011189709A
- Authority
- JP
- Japan
- Prior art keywords
- control
- list
- cpu
- transition
- control module
- 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.)
- Granted
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
Description
本発明は、複数のCPU群を有する分散制御システムによって実現された機器制御システムに関する。 The present invention relates to a device control system realized by a distributed control system having a plurality of CPU groups.
従来、プリンタや複写機などの画像形成装置の制御では、単一のCPUによる集中制御が採用されていた。しかし、制御の一点集中によるCPU負荷の増大や、制御CPU基板から離れた負荷ドライバユニットまで引き回される制御通信束線の長大化が課題となっていた。このような課題を解決するために、電子写真システムを構成する各制御モジュールを個々のサブCPUに分割する分散制御システムが注目されている(特許文献1参照)。分散制御システムでは、分散配置された複数の制御モジュールが、制御情報や命令等を送受信しながら協調して動作する。よって、制御情報や命令が誤って伝えられると誤動作が発生する。通信データの誤りについては、パリティチェック等により検出でき、誤り訂正符号によってデータの誤りを訂正できる。また、特許文献2によれば、異常な数のパケットを受信していることを検出すると、LAN通信制御装置が機能停止することが記載されている。
Conventionally, centralized control by a single CPU has been adopted for controlling image forming apparatuses such as printers and copiers. However, an increase in the CPU load due to a single point of control and an increase in the length of the control communication bundle routed to the load driver unit away from the control CPU board have been problems. In order to solve such a problem, a distributed control system that divides each control module constituting the electrophotographic system into individual sub CPUs has attracted attention (see Patent Document 1). In a distributed control system, a plurality of distributed control modules operate in a coordinated manner while transmitting and receiving control information and commands. Therefore, a malfunction occurs when control information or a command is erroneously transmitted. Communication data errors can be detected by parity check or the like, and data errors can be corrected by error correction codes. Further, according to
ところで、画像形成装置は、紙搬送、ヒータ制御、印刷プロセス制御と言った制御上の独立性の高い複数の機能グループを備えている。よって、画像形成装置に分散制御システムを適用する場合、複数の分散制御モジュールが機能グループごとにまとまった階層構造を採用し、下位階層が上位階層からの命令を受けて動作することになろう。このような階層構造ではシステムの安全性を高めるには、上位階層と下位階層との間で通信データが正しく送受できているかだけでなく、各階層が相互に正常に動作しているかを検出する必要がある。誤り検出符号や誤り訂正符号は、通信路で発生する通信データの誤りは検出できるが、分散制御モジュールの誤動作によって発行される誤った制御命令は通信路で生じる誤りではないため検出できない。1つの分散制御モジュールの誤動作は、階層構造を通じて、他の分散制御モジュールに波及する恐れがあるため、適切に検出して対処する必要がある。なお、異常動作の原因は様々である。電磁気的なノイズの影響で直接的に分散制御モジュールが異常となるケースや、各種センサの出力が異常となり間接的に分散制御モジュールが異常となるケースもある。また、複数の分散制御モジュール間の同期ズレ(制御遅延)などによっても異常が発生するケースもある。このような一部の分散制御モジュールの異常が連携する他の分散制御モジュールに波及するのを防ぐためには個々の分散制御モジュールが正常に動作していることを相互に確認することが有効であろう。 Incidentally, the image forming apparatus includes a plurality of functional groups with high control independence such as paper conveyance, heater control, and printing process control. Therefore, when the distributed control system is applied to the image forming apparatus, a plurality of distributed control modules adopt a hierarchical structure for each functional group, and the lower hierarchy will operate in response to a command from the higher hierarchy. In such a hierarchical structure, in order to increase the safety of the system, it is detected not only whether communication data is correctly transmitted and received between the upper layer and the lower layer, but also whether each layer is operating normally with each other. There is a need. The error detection code and the error correction code can detect an error in communication data generated in the communication path, but cannot detect an erroneous control command issued by a malfunction of the distributed control module because it is not an error generated in the communication path. Since a malfunction of one distributed control module may spread to other distributed control modules through a hierarchical structure, it is necessary to appropriately detect and deal with it. There are various causes of abnormal operation. There are cases where the distributed control module becomes abnormal directly due to the influence of electromagnetic noise, and there are cases where the output of various sensors becomes abnormal and the distributed control module becomes abnormal indirectly. There are also cases where an abnormality occurs due to a synchronization shift (control delay) between a plurality of distributed control modules. In order to prevent such abnormalities in some distributed control modules from spreading to other distributed control modules that cooperate, it is effective to mutually confirm that the individual distributed control modules are operating normally. Let's go.
そこで、本発明は、このような課題および他の課題のうち、少なくとも1つを解決することを目的とする。例えば、複数の制御モジュールが連携して動作する機器制御システムにおいて、ある制御モジュールにおける異常動作が他の制御モジュールへ波及することを抑制するために、当該異常動作を検出することを目的とする。なお、他の課題については明細書の全体を通して理解できよう。 Therefore, an object of the present invention is to solve at least one of such problems and other problems. For example, in a device control system in which a plurality of control modules operate in cooperation, an object is to detect the abnormal operation in order to prevent an abnormal operation in a certain control module from spreading to other control modules. Other issues can be understood throughout the specification.
本発明は、例えば、通信線により接続された複数の制御モジュールを備えた機器制御システムに適用できる。複数の制御モジュールのうち少なくとも第1制御モジュールは、受信手段、リスト記憶手段および検出手段を備える。受信手段は、複数の制御モジュールのうち通信線を介して接続された第2制御モジュールから制御命令を受信する。リスト記憶手段は、3つあるリストのうち少なくとも1つのリストを備える。第1リストは、複数の制御命令のそれぞれに対応した第1制御モジュールの動作状態を示すリストである。第2リストは、第1制御モジュールにおける複数の動作状態間の遷移を示すリストである。第3リストは、複数の制御命令間の遷移を示すリストである。検出手段は、例えば、受信手段により受信された制御命令に対応する動作状態が第1リストによって禁止されている動作状態かどうかの判定を実行する。検出手段は、受信手段により受信された複数の制御命令に対応した複数の動作状態間の遷移が第2リストによって禁止されていない遷移かどうかの判定を実行する。さらに、検出手段は、受信手段により受信された複数の制御命令間の遷移が第3リストによって禁止されていない遷移かどうかの判定を実行する。検出手段は、これらの判定のうち少なくとも1つの判定を実行することで、実行を制約されるべき制御命令を検出する。 The present invention can be applied to, for example, a device control system including a plurality of control modules connected by communication lines. At least the first control module of the plurality of control modules includes a reception unit, a list storage unit, and a detection unit. The receiving means receives a control command from a second control module connected via a communication line among the plurality of control modules. The list storage means includes at least one list among the three lists. The first list is a list indicating the operating state of the first control module corresponding to each of the plurality of control commands. The second list is a list showing transitions between a plurality of operation states in the first control module. The third list is a list showing transitions between a plurality of control instructions. For example, the detection unit determines whether the operation state corresponding to the control command received by the reception unit is an operation state prohibited by the first list. The detecting unit determines whether or not the transition between the plurality of operation states corresponding to the plurality of control commands received by the receiving unit is a transition that is not prohibited by the second list. Further, the detecting means determines whether or not the transition between the plurality of control instructions received by the receiving means is a transition that is not prohibited by the third list. The detection means detects a control instruction whose execution is to be restricted by executing at least one of these determinations.
本発明によれば、許容されない動作状態、動作状態間の遷移または制御命令間の遷移などをリスト化しておくことで、実行を制約されるべき制御命令を適確に検出できるようになる。なお、実行を制約されるべき制御命令を検出できれば、その副次的な効果として、ある制御モジュールにおける異常動作が他の制御モジュールへ波及すること抑制できる効果も期待できよう。 According to the present invention, it is possible to accurately detect a control instruction whose execution is restricted by listing a list of operation states that are not allowed, transitions between operation states, transitions between control instructions, and the like. If a control command whose execution is to be restricted can be detected, as a secondary effect, an effect of suppressing an abnormal operation in one control module from spreading to another control module can be expected.
[実施例1]
<画像形成装置の構成>
本実施例では、通信線により相互に接続された複数の制御モジュールを備えた機器制御システムの一例として画像形成装置を取り上げる。なお、分散された複数の制御モジュールを採用する機器制御システムであれば本願発明の技術思想を適用できることはいうまでもない。図1に示すように、画像形成装置1000は、自動原稿搬送装置100、画像読取部200、画像形成部300および操作部10を備える。図1に示した画像形成装置は一般に複写機や複合機と呼ばれる製品形態をしている。以下で詳細に説明するように、画像形成装置1000は、複数の制御部(CPU)を用いて分散制御を実現する。自動原稿搬送装置100は、原稿を自動的に原稿台ガラス上に搬送する。画像読取部200は、自動原稿搬送装置100から搬送された原稿を読み取って画像データを出力する。画像形成部300は、画像読取部200から出力された画像データや通信線を介して接続された外部のホスト装置から入力された画像データに従って記録材に画像を形成する。操作部10は、ユーザが各種操作を行うためのGUI(グラフィカル・ユーザ・インタフェース)を有する。さらに、操作部10は、タッチパネル等の表示部を有し、ユーザに対して情報を提示する。
[Example 1]
<Configuration of image forming apparatus>
In this embodiment, an image forming apparatus is taken up as an example of a device control system including a plurality of control modules connected to each other by communication lines. Needless to say, the technical idea of the present invention can be applied to any device control system that employs a plurality of distributed control modules. As shown in FIG. 1, the
<画像形成部>
図2に示した画像形成部300の画像形成方式はとして電子写真方式を採用している。なお、本願発明の技術思想は、画像形成方式に依存するものではない。よって、本願発明は、インクジェット方式、熱転写方式やその他画像形成方式にも適用できる。なお、参照番号の末尾に示すアルファベットY、M、C、Kは、それぞれイエロー、マゼンダ、シアン、ブラックのトナーを示している。よって、各トナーに共通する事項について説明するときは末尾のアルファベットY、M、C、Kを省略する。各トナーについてそれぞれ個別の事項について説明する場合は参照番号の末尾にアルファベットY、M、C、Kを付記する。
<Image forming unit>
As an image forming method of the
感光ドラム(以下、「感光体225」と称する。)は、モータで矢印Aの方向に回転する。感光体225の周囲には、一次帯電装置221、露光装置218、現像装置223、転写装置220、クリーナ装置222および除電装置271が配置されている。現像装置223Kはモノクロ現像のための現像装置であり、感光体225K上の潜像をKのトナーで現像する。現像装置223Y、M、Cはフルカラー現像のための現像装置である。現像装置223Y、M、Cは、感光体225Y、M、C上の潜像をそれぞれY、M、Cのトナーで現像する。感光体225上に現像された各色のトナー像は、転写装置220によって中間転写体である転写ベルト226に一括で多重転写される。
A photosensitive drum (hereinafter referred to as “photosensitive member 225”) is rotated in the direction of arrow A by a motor. Around the photoconductor 225, a primary charging device 221, an exposure device 218, a developing device 223, a transfer device 220, a cleaner device 222, and a charge eliminating device 271 are arranged. The developing
転写ベルト226は、ローラ227、228、229に張架されている。ローラ227は、駆動源に結合されて転写ベルト226を駆動する駆動ローラとして機能し、ローラ228は転写ベルト226の張力を調節するテンションローラとして機能する。また、ローラ229は、二次転写装置231としての転写ローラのバックアップローラとして機能する。転写ローラ脱着ユニット250は、二次転写装置231を転写ベルト226に接着させるか、又は離脱させるための駆動ユニットである。二次転写装置231を通過した後の転写ベルト226の下部にはクリーナブレード232が設けられており、転写ベルト226上の残留トナーがブレードで掻き落とされる。
The
給紙カセット240、241および手差し給紙部253に格納された記録材は、レジストローラ255、給紙ローラ対235および縦パスローラ対236、237によってニップ部、つまり二次転写装置231と転写ベルト226との当接部に給送される。なお、その際に二次転写装置231は、転写ローラ脱着ユニット250によって転写ベルト226に当接されている。転写ベルト226上に形成されたトナー像は、このニップ部で記録材上に転写される。その後、トナー像が転写された記録材は、定着装置234でトナー像が熱定着されて装置外へ排出される。給紙カセット240、241および手差し給紙部253は、それぞれ記録材の有無を検知するためのシートなし検知センサ243、244、245を備える。また、給紙カセット240、241および手差し給紙部253は、それぞれ記録材のピックアップ不良を検知するための給紙センサ247、248、249を備える。
The recording materials stored in the
ここで、画像形成部300による画像形成動作について説明する。画像形成が開始されると、給紙カセット240、241および手差し給紙部253に格納された記録材は、ピックアップローラ238、239、254によりそれぞれ1枚ごとに給紙ローラ対235に搬送される。記録材は、給紙ローラ対235によりレジストローラ255へと搬送されると、その直前のレジストセンサ256により記録材の通過が検知される。レジストセンサ256により記録材の通過が検知された時点から所定の時間が経過した後に給紙ローラ対235は記録材の搬送動作を中断する。その結果、記録材は停止しているレジストローラ255に突き当たって停止する。レジストローラ255を起動させることにより、記録材は、二次転写装置231へ供給される。なお、レジストローラ255は、駆動源に結合され、クラッチによって駆動が伝えられることで回転駆動を行う。
Here, an image forming operation by the
次に、一次帯電装置221に電圧を印加して感光体225の表面を予定の帯電部電位で一様にマイナス帯電させる。続いて、帯電された感光体225上の画像部分が所定の露光部電位になるようにレーザスキャナ部を備えた露光装置218で露光を行い潜像が形成される。露光装置218はプリンタ制御I/F215を介してコントローラ460より送られてくる画像データに基づいてレーザ光をオン/オフすることによって画像に対応した潜像を形成する。現像装置223の現像ローラには各色ごとに予め設定された現像バイアスが印加されている。潜像は、現像ローラの位置を通過する際にトナーで現像され、トナー像として可視化される。トナー像は、転写装置220により転写ベルト226に転写され、さらに二次転写装置231で、給紙部より搬送されてきた記録材に転写された後、レジスト後搬送パス268を通過し、定着搬送ベルト230を介して、定着装置234へと搬送される。定着装置234では、画像乱れを防止するために、定着前帯電器251、252で帯電させトナーの吸着力を補強する。さらに定着ローラ233でトナー画像が熱定着される。その後、記録材は、排紙フラッパ257により排紙パス258側に搬送パスが切り換えられることにより、排紙ローラ270によってそのまま排紙トレー242に排紙される。感光体225上に残留したトナーは、クリーナ装置222で除去して回収される。感光体225は、除電装置271で一様に0ボルト付近まで除電されて、次の画像形成サイクルに備える。
Next, a voltage is applied to the primary charging device 221 to uniformly negatively charge the surface of the photoconductor 225 at a predetermined charged portion potential. Subsequently, exposure is performed by an exposure device 218 having a laser scanner unit so that the image portion on the charged photoconductor 225 has a predetermined exposure unit potential, and a latent image is formed. The exposure device 218 forms a latent image corresponding to the image by turning on / off the laser beam based on the image data sent from the
図3には通信線により相互に接続された複数の制御モジュールを示している。図2に示す各制御負荷は、図3に示す第1搬送モジュール280、第2搬送モジュール281、作像モジュール282および定着モジュール283という4つの制御ブロックによって制御される。マスタモジュール284は、これらの4つの制御ブロックを統括して画像形成装置として機能させるための制御モジュールである。マスタモジュール284には、マスタ制御部/第1層制御部としてのマスタCPU1001が設けられている。マスタCPU1001は、プリンタ制御I/F215を介してコントローラ460より受信した指示や命令、画像データに基づいて画像形成装置1000の全体を制御する。画像形成を実行するための第1搬送モジュール280、第2搬送モジュール281、作像モジュール282および定着モジュール283は、各機能を制御するサブマスタ制御部/第2層制御部としてサブマスタCPU601、901、701、801を備える。サブマスタCPU601、901、701、801はマスタCPU1001により制御される。各機能モジュールは、さらに、各機能を実行するための制御負荷を動作させるためのスレーブ制御部/第3層制御部としてスレーブCPU602、603、902、903、702、703、704、705、706、802、803を備える。スレーブCPU602、603はサブマスタCPU601に制御される。スレーブCPU902、903はサブマスタCPU901に制御される。スレーブCPU702、703、704、705、706はサブマスタCPU701に制御される。スレーブCPU802、803はサブマスタCPU801に制御される。
FIG. 3 shows a plurality of control modules connected to each other by communication lines. Each control load shown in FIG. 2 is controlled by four control blocks including a
図3に示すように、マスタCPU1001と複数のサブマスタCPU601、701、801、901は共通のネットワーク型通信バス1002によってバス接続される。サブマスタCPU601、701、801、901同士の間もネットワーク型通信バス1002によってバス接続される。なお、マスタCPU1001と複数のサブマスタCPU601、701、801、901はリング接続されるものでもよい。サブマスタCPU601は、さらに、シリアル通信バス612、613を介して、複数のスレーブCPU602、603のそれぞれと1対1接続されている。同様に、サブマスタCPU701は、シリアル通信バス711、712、713、714、715を介して、それぞれスレーブCPU702、703、704、705、706と接続される。サブマスタCPU801は、シリアル通信バス808、809を介して、それぞれスレーブCPU802、803と接続される。サブマスタCPU901は、シリアル通信バス909、910を介して、それぞれスレーブCPU902、903と接続される。ここで、シリアル通信バスは、短距離通信に用いられる。
As shown in FIG. 3, the
一方、サブマスタCPU601、701、801、901とマスタCPU1001との間では、精密な制御タイミングを必要としない、画像形成動作の大まかな処理の流れを統括するような通信だけが行われる。例えば、マスタCPU1001はサブマスタCPUに、画像形成前処理開始、給紙開始、画像形成後処理開始といった指示を出す。また、マスタCPU1001はサブマスタCPUに、コントローラ460から指示されたモード(例えばモノクロモードや両面画像形成モードなど)に基づいた指示を画像形成開始の前に出す。サブマスタCPU601、701、801、901のそれぞれの間でも、精密なタイミング制御を必要としない通信だけが行われる。すなわち、画像形成装置の制御を、相互に精密なタイミング制御を必要としない制御単位に分け、それぞれのサブマスタCPUがそれぞれの制御単位を精密なタイミングで制御する。これにより、画像形成装置1000では、通信トラフィックを最小限に抑え、低速で安価なネットワーク型通信バス1002で接続することを可能としている。なお、マスタCPU、サブマスタCPUおよびスレーブCPUについては、実装される制御基板が必ずしも図3に示したとおりの制御基板である必要はなく、実装上の事情に合わせて変更可能である。
On the other hand, between the
図4に示すように、様々な制御基板の構成を採用することができる。例えば、サブマスタCPU601とスレーブCPU602、603とは、同一の基板上に実装されている。また、サブマスタCPU701およびスレーブCPU702、703、704、又は、サブマスタCPU801およびスレーブCPU802、803のように、サブマスタCPUと個々のスレーブCPUが独立の基板上に実装されてもよい。スレーブCPU705、706のように一部のスレーブCPUが同一の基板上に実装されてもよい。サブマスタCPU901およびスレーブCPU902のように、サブマスタCPUとスレーブCPUの一部だけが同一基板上に配置されてもよい。
As shown in FIG. 4, various control board configurations can be employed. For example, the
スレーブCPU802は、定着搬送ベルト230を回転させるためのモータ804、定着ローラ233を回転させるためのモータ805を制御負荷とし、二次転写装置231から定着後の搬送パスに記録用シート媒体を引き渡すまでの制御を行う。スレーブCPU803は、定着装置234における加熱ヒータ806、温度検知サーミスタ807、定着前帯電器251、252を制御負荷とする。スレーブCPU803は、定着前帯電器251、252を制御してトナーを帯電させる。さらに、スレーブCPU803は、温度検知サーミスタ807の検知結果をフィードバックさせながら、加熱ヒータ806の温度を制御する。サブマスタCPU801とスレーブCPU802、803は共通のシリアル通信バス808により接続されている。
The
次に、本発明の特徴である制御モジュール間での制御命令の異常検知に関して説明する。複数の制御モジュールのうち少なくとも第1制御モジュールとして、図5に示した第1搬送モジュール280を一例として採用する。第1搬送モジュール280は、給紙カセット240、241および手差し給紙部253に格納された記録材を二次転写装置231と転写ベルト226との当接部に給送するまでの給紙制御を司っている。第1搬送モジュール280は、給紙制御を統括的に制御するサブマスタCPU601と、各負荷の駆動を行うスレーブCPU602、603を含む。また、各スレーブCPUには、直接制御される負荷群が接続されている。
Next, an abnormality detection of a control command between control modules, which is a feature of the present invention, will be described. The
スレーブCPU602は、第1通信インタフェース501、第2通信インタフェース502、ROM503およびRAM504を内蔵している。スレーブCPU602は、第1通信インタフェース501を介してサブマスタCPU601と制御命令やステータス情報などを送信および受信する。よって、第1通信インタフェース501は、複数の制御モジュールのうち通信線を介して接続された第2制御モジュールから制御命令を受信する受信手段として機能する。スレーブCPU602は、第2通信インタフェース502を介してセンサから情報を受信したり、モータなどに制御信号を送信したりする。ROM503には制御プログラム、データおよびリストなどが格納されている。RAM504にはセンサから取得したデータや受信した制御命令の履歴などが格納される。スレーブCPU602は、第3通信インタフェース505を介してスレーブCPU603との間でエラーの発生を示す通知を送受信してもよい。スレーブCPU602は、給紙カセット240に関連したピックアップローラ238を駆動させるためのモータ606、シートなし検知センサ243および給紙センサ247を負荷とし、給紙パス266に記録材を引き渡すまでの制御を行う。スレーブCPU602は、さらに、給紙カセット241に関連したピックアップローラ239を駆動させるためのモータ607、シートなし検知センサ244、給紙センサ248を負荷とし、給紙パス266に記録材を引き渡すまでの制御を行う。
The
スレーブCPU603の内部構成は、スレーブCPU602の内部構成とほぼ同様であるため、説明を省略する。スレーブCPU603は、手差し給紙部253に関連したピックアップローラ254を駆動させるためのモータ608、シートなし検知センサ245、給紙センサ249を負荷とし、給紙パス266に記録材を引き渡すまでの制御を行う。スレーブCPU603は、さらに、給紙ローラ対235、236、237を駆動させるためのモータ609、610、611、および、レジストセンサ256を負荷とする。スレーブCPU603は、これらの負荷を制御して、給紙カセット240、241、手差し給紙部253から引き渡された記録材をレジストローラ255まで搬送して一時停止させるまでの制御を行う。なお、本実施例では、サブマスタCPU601とスレーブCPU602、603は各々独立のシリアル通信バス612、613により1対1で対向接続されている。
The internal configuration of the
電磁気的なノイズの影響や複数の制御モジュール間の同期ズレ(制御遅延)などに起因していずれかの制御モジュールが異常動作を起こすことがある。異常動作が発生すると、制御命令の発行側の制御モジュールは、本来であれば発行しないような制御命令を発行してしまうかもしれない。この誤った制御命令を受信側の制御モジュールが実行してしまうと、設計上は想定されていない動作状態(禁止状態)に移行してしまうおそれがある。そして、この設計上は想定されていない動作状態においてセンサが検出した値を他の制御モジュールが利用してしまうと、機器制御システムの全体に異常動作が波及してしまうおそれがある。よって、実施例では、このような禁止状態へ制御モジュールを移行させてしまうような制御命令を検知することで、異常の波及を抑制する。例えば、複数の制御命令のそれぞれに対応した制御モジュールの動作状態を示す第1リスト、制御モジュールにおける複数の動作状態間の遷移を示す第2リスト、複数の制御命令間の遷移を示す第3リストのうち少なくとも1つの制約リストをメモリに記憶する。そして、受信手段により受信された制御命令に対応する動作状態が第1リストによって禁止されている動作状態かどうかの判定を実行してもよい。あるいは、受信手段により受信された複数の制御命令に対応した複数の動作状態間の遷移が第2リストによって禁止されていない遷移かどうかの判定を実行してもよい。あるいは、受信手段により受信された複数の制御命令間の遷移が第3リストによって禁止されていない遷移かどうかの判定を実行してもよい。すなわち、これら判定処理のうち少なくとも1つの判定処理を実行すれば、実行を制約されるべき制御命令を検出することができる。以下では、各スレーブCPUの動作上ありえない禁止状態をつくりだす制御命令を検出する検出手段として機能するスレーブCPU602、603を例にとってこの検出処理について説明する。
Any control module may cause an abnormal operation due to the influence of electromagnetic noise or a synchronization shift (control delay) between a plurality of control modules. When an abnormal operation occurs, the control module that issues the control command may issue a control command that would otherwise not be issued. If the control module on the receiving side executes this erroneous control command, there is a possibility that the operating state (prohibited state) that is not assumed in design may be entered. Then, if another control module uses a value detected by the sensor in an operation state that is not assumed in this design, there is a possibility that an abnormal operation may spread to the entire device control system. Therefore, in the embodiment, the spread of abnormalities is suppressed by detecting a control command that causes the control module to shift to such a prohibited state. For example, a first list indicating the operation state of the control module corresponding to each of the plurality of control instructions, a second list indicating a transition between the plurality of operation states in the control module, and a third list indicating a transition between the plurality of control instructions At least one constraint list is stored in the memory. Then, it may be determined whether or not the operating state corresponding to the control command received by the receiving unit is an operating state prohibited by the first list. Alternatively, it may be determined whether a transition between a plurality of operation states corresponding to a plurality of control commands received by the receiving unit is a transition that is not prohibited by the second list. Alternatively, it may be determined whether a transition between a plurality of control commands received by the receiving unit is a transition that is not prohibited by the third list. That is, if at least one of the determination processes is executed, a control command that should be restricted from execution can be detected. In the following, this detection process will be described by taking the
図6に示すように画像形成装置1000は画像形成を行う際に手差し給紙部253、給紙カセット240および給紙カセット241のいずれか1つから記録材を供給する。複数の給紙部が同時にて記録材の給紙動作状態へ移行することはない。すなわち、複数の給紙部に対して同時に給紙命令が発行されることはない。さらに、スレーブCPUに接続されるモータやセンサ等の負荷間にも動作上の制約が存在する。例えば、給紙カセット240から給紙する際にはモータ606がまず回転状態へ移行し、次に、給紙センサ247が記録材を検出している状態(オン状態)に移行し、さらにその後に後段のモータ611が駆動状態に移行する。また、給紙センサ247、レジストセンサ256がオフの状態に移行してから、モータ606、611は停止状態に移行する。このように、複数の動作状態には、時系列的に正しい遷移の順番が存在する。
As shown in FIG. 6, the
図7には、スレーブCPU602、603についての制約リストの一例を示している。スレーブCPU602、603はこの制約リストに応じて動作状態の制約や異常な制御命令の検出したり、制御命令の実行可否を判定したりする。つまり、スレーブCPU602、603は、内蔵ROMや外部のROMにこれらの制約リストを格納している。制約リストは、複数の駆動デバイス(機能グループやモータ等)間における排他的な動作制約、複数の駆動デバイスの同時(同期)動作制約、動作の前提となる条件(各種センサ入力等)による動作制約を考慮して予め作成されるものとする。ここでは、制約リストの一例として、状態リスト、状態遷移リストおよび命令遷移リストの3種類について説明する。これらは、上述した第1リスト、第2リスト、第3リストにそれぞれ対応している。これらの制約リストは、適宜、禁止されるべき制御命令間の遷移や動作状態間の遷移を登録した禁止リスト、または、許可されるべき制御命令間の遷移や動作状態間の遷移を登録した許可リストの形式で記述される。禁止リストと許可リストは同等の内容を表現することが可能である。よって、これらの使い分けはシステム上の制約により記述が容易なリストを選択すればよいであろう。例えば、機器の制約が少ないものは禁止リストで記述し、制約が多ければ許可リストで記述する。このように、リストのサイズが小さくなるような形式を採用すれば、リスト記憶手段として機能するROM503の記憶容量を節約できる利点がある。
FIG. 7 shows an example of a restriction list for the
禁止リストは、禁止された動作状態、禁止された複数の動作状態間の遷移、禁止された複数の制御命令間の遷移を記述したリストである。禁止リストに記述された動作状態、動作状態間の遷移、制御命令間の遷移が検知されれば、その制御命令は禁止命令であるとしてCPUによって決定される。許可リストは、許可された動作状態、許可された複数の動作状態間の遷移、許可された複数の制御命令間の遷移を記述したリストである。許可リストに記述された動作状態、複数の動作状態間の遷移、複数の制御命令間の遷移に該当しない制御命令は禁止命令であるとしてCPUによって決定される。 The prohibition list is a list in which prohibited operation states, transitions between prohibited operation states, and transitions between prohibited control commands are described. If an operation state described in the prohibition list, a transition between operation states, or a transition between control instructions is detected, the control instruction is determined as a prohibition instruction by the CPU. The permission list is a list in which permitted operation states, transitions between a plurality of permitted operation states, and transitions between a plurality of permitted control commands are described. A control command that does not correspond to an operation state described in the allow list, a transition between a plurality of operation states, or a transition between a plurality of control commands is determined by the CPU as a prohibited command.
動作状態リストは、制御モジュールによって制御される各負荷の動作状態を記述したリストである。CPUは、受信した制御命令を実際に実行する前に、仮想的に実行した後の動作状態を決定する。例えば、スレーブCPU602は、サブマスタCPU601からモータ606をONにせよとの制御命令を受信したと仮定する。この場合、スレーブCPU602は、この制御命令を実行すると、給紙カセット240に関する給紙センサ247が記録材を検知した状態に移行することを内部テーブルによって把握する。このような状態の決定手法を仮想的な実行と呼ぶことにする。通常、この制御命令を受信した時点において、給紙カセット241の給紙センサ248は記録材を検知した状態に移行してはいない。仮に給紙センサ247と給紙センサ248の双方が記録材を検知した動作状態に移行してしまうと、ジャムが発生するため、このような動作状態は動作状態リストによって禁止されているか、または、許可されていない。このように、スレーブCPU602は、受信した制御命令を実際に実行する前に、仮想的に実行した後の動作状態を決定する。そして、スレーブCPU602は、決定した動作状態と現在の動作状態に基づいて動作状態リストを参照し、決定した動作状態と現在の動作状態とが禁止された動作状態かどうかを判定する。決定した動作状態と現在の動作状態とが動作状態リストに記述されていれば、スレーブCPU602は、受信した制御命令を、実行を制約された制御命令であると検知する。
The operation state list is a list describing the operation state of each load controlled by the control module. The CPU determines the operation state after virtually executing the received control command before actually executing it. For example, assume that the
状態遷移リストは動作状態の遷移を示す制約リストである。状態遷移リストには、ある制御命令を実行する前の動作状態とこの制御命令を実行した後の動作状態とを関連付けて登録している。よって、スレーブCPUは、制御命令を受信すると、その時点での動作状態をセンサ等により取得する。さらに、スレーブCPUは、受信した制御命令を仮想的に実行した後の動作状態を決定する。この前後の動作状態が正しい動作状態の遷移を示しているかどうかをスレーブCPUが判定する。つまり、状態遷移リストには、複数の動作状態間の遷移が予め登録されている。スレーブCPUは、制御命令に基づいた複数の動作状態間の遷移が状態遷移リストに登録されている遷移であれば、受信した制御命令は正しい制御命令であると判定する。一方、スレーブCPUは、制御命令に基づいた複数の動作状態間の遷移が状態遷移リストに登録されていない遷移であれば、受信した制御命令は禁止命令であると判定する。 The state transition list is a restriction list indicating the transition of the operation state. In the state transition list, an operation state before executing a certain control command and an operation state after executing this control command are registered in association with each other. Therefore, when the slave CPU receives the control command, the slave CPU acquires the operation state at that time by a sensor or the like. Further, the slave CPU determines an operation state after virtually executing the received control command. The slave CPU determines whether the operation states before and after this indicate a transition of the correct operation state. That is, transitions between a plurality of operation states are registered in advance in the state transition list. The slave CPU determines that the received control command is a correct control command if the transition between the plurality of operation states based on the control command is a transition registered in the state transition list. On the other hand, if the transition between a plurality of operation states based on the control instruction is a transition that is not registered in the state transition list, the slave CPU determines that the received control instruction is a prohibition instruction.
命令遷移リストは、複数の制御命令の実行順番(発行順序)を登録した制約リストである。複数の制御命令間では、その実行順番に制約があることがある。スレーブCPUは、受信した制御命令の履歴をRAMに保持しておく。スレーブCPUは、新たな制御命令を受信すると、新たな制御命令と、直前に受信した1つ以上の制御命令との実行順番が命令遷移リストによって禁止された実行順番かどうかを判定する。 The instruction transition list is a restriction list in which the execution order (issue order) of a plurality of control instructions is registered. There may be a restriction in the execution order among a plurality of control instructions. The slave CPU keeps a history of received control commands in the RAM. When the slave CPU receives the new control instruction, the slave CPU determines whether the execution order of the new control instruction and the one or more control instructions received immediately before is the execution order prohibited by the instruction transition list.
図7には(a)から(g)まで複数のリストを例示したが、すべての制約リストが必須というわけではない。図7(a)によれば、スレーブCPU602に対する状態禁止リストが示されている。図中の○は動作状態を示し、×は停止状態を示している。1番目の状態リストは給紙カセット240が動作状態であり、給紙カセット241が停止状態であることを示している。2番目の状態リストは給紙カセット240が停止状態であり、給紙カセット241が動作状態であることを示している。3番目の状態リストは給紙カセット240が停止状態であり、給紙カセット241も停止状態であること示している。このように、図7(a)に示したリストは許可リストとして表現されている。よって、このリストでは、給紙カセット240と給紙カセット241の双方が動作状態となることは禁止されている。図7においては、機能グループの定義を省略している。機能グループの定義は、グループテーブル情報として規定できる。
FIG. 7 illustrates a plurality of lists from (a) to (g), but not all constraint lists are essential. FIG. 7A shows a state prohibition list for the
図7(a)のリストでは、同時に許可されるべき複数の動作状態を関連付けて登録しているが、さらに、制約レベルも登録されている。制約レベルは、ラーの深刻度に対応しており、禁止命令が発行されときに取りうるべきエラー対処方法を選択する基準となる。スレーブCPUは、制約リストを参照することで禁止命令に対応した制約レベルを特定し、特定されたレベルに対応したエラー対処方法を選択する。例えば、制約レベルにおいて「1」は、機器制御システムの安全に係わる違反であることを示している。よって、制約レベルが1であれば、スレーブCPUは異常の発生を他のCPUに通知し、即時に動作を停止する。制約レベルにおいて「2」は、機器制御システムの機能制約に係わる違反であることを示している。制約レベルが2であれば、スレーブCPUは、異常の発生を他のCPUに通知し、制御命令を実行せずに破棄(キャンセル)する。制約レベルにおいて「3」は、機器制御システムの動作条件違反を示している。制約レベルが3であれば、スレーブCPUは、その制御命令を実行するための前提条件が満たされるようになるまで、その制御命令の実行を延期する。 In the list of FIG. 7A, a plurality of operation states that should be permitted at the same time are registered in association with each other, but a constraint level is also registered. The restriction level corresponds to the severity of the error, and is a standard for selecting an error coping method that should be taken when a prohibition instruction is issued. The slave CPU specifies a restriction level corresponding to the prohibited instruction by referring to the restriction list, and selects an error handling method corresponding to the specified level. For example, “1” at the constraint level indicates a violation related to the safety of the device control system. Therefore, if the constraint level is 1, the slave CPU notifies other CPUs of the occurrence of an abnormality and immediately stops operation. In the restriction level, “2” indicates a violation related to the function restriction of the device control system. If the restriction level is 2, the slave CPU notifies other CPUs of the occurrence of the abnormality, and discards (cancels) without executing the control command. In the restriction level, “3” indicates a violation of the operation condition of the device control system. If the constraint level is 3, the slave CPU postpones execution of the control instruction until a precondition for executing the control instruction is satisfied.
モータ606、607はそれぞれ、図5の説明から明らかなように、給紙カセット240、241と同一機能グループに属し、これらを同時に動作させる制御命令は明らかに異常である。よって、異常な動作となったサブマスタCPU601からこれら2つのモータを同時に駆動状態とする制御命令を受信した場合、図7(a)の制約リストによりスレーブCPU602は、異常の発生を他のCPUに通知し、即時に動作を停止する。
As is apparent from the description of FIG. 5, the
図7(b)は、スレーブCPU602に対する動作状態リストを例示している。動作状態リストは禁止リストとして記述されている。このリストによれば、給紙センサ247が紙を検知している(オン)状態でのモータ606、607の駆動停止が禁止されている。スレーブCPU602は、給紙センサ247がオン状態かオフ状態かを監視している。給紙センサ247がオン状態であるときにモータ606、607の停止命令を受信すると、スレーブCPU602は、給紙センサ247がオフになるのを待って、モータ606、607を停止する。つまり、受信した制御命令を実行するための前提条件が満たされるまで待機してから、当該制御命令が実行される。ここで、スレーブCPU602について、図7(a)に示したリストと図7(b)に示したリストを使用して説明したが、これらのリストは、図7(g)に示す禁止リストへと統合されてもよい。
FIG. 7B illustrates an operation state list for the
上述したように、スレーブCPUは、受信した制御命令を実際に実行する前に、仮想的に実行した後の動作状態を決定し、決定した動作状態が状態リストによって禁止されている動作状態かどうかを判定する。禁止された動作状態であれば、スレーブCPUは、受信した制御命令を禁止命令であると決定する。よって、通信相手のCPUが異常動作に起因して誤った制御命令(禁止命令)が発行したとしても、スレーブCPUは禁止命令を実行しないため、誤動作を回避できる。また、通信相手のCPUの異常動作がスレーブCPUに波及しなくなる。また、スレーブCPUと連携して動作する他のCPUへ異常が波及することも抑制できる。複数の制御モジュールのうち制約が少ないものは禁止リストで記述し、制約が多ければ許可リストで記述すれば、メモリの記憶容量を節約できる利点がある。 As described above, the slave CPU determines the operation state after the virtual execution before actually executing the received control command, and whether or not the determined operation state is an operation state prohibited by the state list. Determine. If the operation state is prohibited, the slave CPU determines that the received control command is a prohibited command. Therefore, even if the communication partner CPU issues an incorrect control command (prohibition command) due to an abnormal operation, the slave CPU does not execute the prohibit command, so that a malfunction can be avoided. In addition, the abnormal operation of the communication partner CPU does not spread to the slave CPU. Further, it is possible to suppress the abnormality from spreading to other CPUs operating in cooperation with the slave CPU. Of the plurality of control modules, those with less restrictions are described in the prohibit list, and if there are more restrictions, they are described in the allow list, which has the advantage of saving the memory capacity of the memory.
図7(c)は動作状態遷移リストを許可リストによって実現した事例を示している。このリストには、給紙センサ247とモータ606の各動作状態の遷移が関連付けて登録されている。動作状態遷移リストは、複数の動作状態間の遷移が所定の順番で発生する場合に使用される。つまり、動作状態遷移リストによって定義されていない順番での遷移は禁止され、動作状態遷移リストによって定義されている順番での遷移が許可される。現在の動作状態から、実際に制御命令を実行する前に仮想的に実行した後の動作状態への遷移を、リストに登録された遷移と比較することで、スレーブCPUは、受信した制御命令が禁止命令かどうかを判定する。動作状態遷移リストに登録されていない遷移が発生すると、スレーブCPUは、その制御命令を実行せずに破棄する。あるいは、登録された遷移が実現されるまで、スレーブCPUは、受信した制御命令の実行を延期してもよい。このどちらを採用するかは、動作状態遷移リストに登録されている制約レベルに応じて決定すればよい。
FIG. 7C shows a case where the operation state transition list is realized by a permission list. In this list, transitions of the respective operation states of the
スレーブCPUは、動作状態リストに加えてまたは代えて、動作状態遷移リストを用いて制御命令の実行可否を判断することで、より厳密な制御命令の可否判定を実行できるであろう。つまり、複数の制御命令を実行した結果である動作状態の照合だけでなく、複数の動作状態間の遷移も参照すれば、判断要素が増えるだけに、判断の正確さが向上すると考えられる。 The slave CPU will be able to execute a stricter control command feasibility determination by using the operation state transition list to determine whether the control command can be executed in addition to or instead of the operation state list. That is, it is considered that the accuracy of determination is improved by increasing the number of determination elements by referring not only to the verification of the operation state as a result of executing a plurality of control instructions but also the transition between the plurality of operation states.
図7(d)、図7(e)は、スレーブCPU603に適用される制約リストである。これらは、対象となる駆動デバイス(レジストセンサ256とモータ611)が異なることを除けば、図7(b)と、図7(c)と同様の内容であるため説明は省略する。図7(f)は、スレーブCPU603についての制御命令遷移リストの一例を示している。関連する複数の制御命令間での発行の遷移に対する制約を示している。つまり、複数の制御命令には発行順番または実行順番が予め定義されており、その順番をこのリストで管理している。図7(f)のリストには、モータ611の制御命令とモータ608の制御命令について禁止されるべき遷移が登録されている。スレーブCPU603は、受信した制御命令の履歴をRAMに記憶しておく。スレーブCPU603は、新たな制御命令(Next)を受信すると、直前の制御命令(Current)を履歴から特定し、この2つの制御命令間の遷移が制御命令遷移リストに登録されている遷移かどうかを判定する。これにより、スレーブCPU603は、リストによって禁止された遷移であれば新たな制御命令を禁止命令と決定し、リストによって禁止されていない遷移であれば新たな制御命令を許可命令と決定する。具体的にはモータ608のオン命令を受信した後、モータ608のオン命令を受信したと仮定する。このような制御命令の遷移は、図7(f)の3番目の状態リストによって禁止されている。よって、スレーブCPU603は、モータ608のオン命令を実行せずに破棄する。なお、モータ608がオン状態で再度オン命令が発行されるような不要な命令が発行されたことは、図7(d)や図7(e)に示したリストからは検出できない。これは、同内容の制御命令が連続して発行されたときは、動作状態の遷移が発生しないからである。よって、制御命令遷移リストを導入すれば、動作状態の遷移からは検出できない異常を検出できるようになる。
FIG. 7D and FIG. 7E are constraint lists applied to the
図8を参照して、制御命令を受信した際のスレーブCPUの処理について説明する。S800で、スレーブCPUは、サブマスタCPUからの制御命令を受信したかどうかを判定する。制御命令を受信すると、S801に進む。S801で、スレーブCPUは、受信した制御命令を仮想的に実行した後の動作状態を決定する。なお、制御命令に対応した動作状態は予めテーブルに登録されていてもよい。スレーブCPUは、テーブルを参照することで、受信した制御命令に対応した動作状態を簡単に特定することができる。さらに、スレーブCPUは、決定した動作状態から複数の動作状態間の遷移を決定してもよい。さらに、スレーブCPUは、制御命令の履歴から、直前の制御命令と新たな制御命令間の遷移を特定してもよい。これらの処理は図7を用いて詳細に説明したとおりである。 With reference to FIG. 8, the processing of the slave CPU when receiving a control command will be described. In S800, the slave CPU determines whether a control command is received from the sub-master CPU. When the control command is received, the process proceeds to S801. In S801, the slave CPU determines an operation state after virtually executing the received control command. The operation state corresponding to the control command may be registered in advance in the table. The slave CPU can easily specify the operation state corresponding to the received control command by referring to the table. Further, the slave CPU may determine a transition between a plurality of operation states from the determined operation state. Further, the slave CPU may specify the transition between the immediately preceding control command and the new control command from the history of control commands. These processes are as described in detail with reference to FIG.
S802で、スレーブCPUは、受信した制御命令が禁止命令かどうかを判定する。スレーブCPUは、例えば、受信した制御命令に対応する動作状態が、複数の制御命令のそれぞれに対応した制御モジュールの動作状態を示す動作状態リストによって禁止されているかどうかを判定する。また、スレーブCPUは、現在の動作状態から受信した制御命令に対応する動作状態への遷移が、制御モジュールにおける複数の動作状態間の遷移を示す動作状態遷移リストによって禁止されているかどうかを判定する。また、スレーブCPUは、直前に実行した制御命令から新たに受信した制御命令への遷移が、複数の制御命令間の遷移を示す制御命令遷移リストによって禁止されているかどうかを判定する。これらの3つある判定処理のうち、1つ以上が実行されればよい。スレーブCPUは、いずれかの判定処理によって、受信した制御命令を禁止命令と判定すると、禁止命令に対応した制約レベルをリストから特定し、特定された制約レベルに応じた処理を実行するために、S810に進む。なお、受信した制御命令が禁止命令でなければ、S803に進む。 In S802, the slave CPU determines whether the received control command is a prohibition command. For example, the slave CPU determines whether or not the operation state corresponding to the received control command is prohibited by the operation state list indicating the operation state of the control module corresponding to each of the plurality of control commands. Further, the slave CPU determines whether or not the transition from the current operation state to the operation state corresponding to the received control command is prohibited by the operation state transition list indicating the transition between the plurality of operation states in the control module. . Further, the slave CPU determines whether or not the transition from the control instruction executed immediately before to the newly received control instruction is prohibited by the control instruction transition list indicating the transition between the plurality of control instructions. Of these three determination processes, one or more may be executed. When the slave CPU determines that the received control instruction is a prohibited instruction by any of the determination processes, the restriction level corresponding to the prohibited instruction is specified from the list, and in order to execute the process according to the specified restriction level, Proceed to S810. If the received control command is not a prohibition command, the process proceeds to S803.
S803で、スレーブCPUは、サブマスタCPUから受信した制御命令を正式に受け付けて実行する。S804で、スレーブCPUは、受信した制御命令を履歴に追記してRAMに書き込む。 In S803, the slave CPU formally receives and executes the control command received from the sub-master CPU. In S804, the slave CPU adds the received control command to the history and writes it to the RAM.
S810で、スレーブCPUは、禁止命令に対応した制約レベルをリストから特定し、特定された制約レベルがレベル1かどうかを判定する。レベル1であれば、S811に進み、スレーブCPUは、制御命令を実行せずに破棄するとともに、サブマスタCPUにエラーの発生を通知する。なお、スレーブCPUと連携している他のスレーブCPUが存在すれば、スレーブCPUは、他のスレーブCPUにも第3通信インタフェース505を通じてエラーの発生を通知してもよい。第3通信インタフェース505は、複数の制御モジュールのうち通信線を介して接続された他の制御モジュールに対して異常が発生していることを示す通知を送信する送信手段として機能する。さらに、スレーブCPUは、システムリセットをこれらのCPUに要求する。このように、スレーブCPUは、検出手段によって実行を制約されるべき制御命令が検出されると、制御命令を実行せずに破棄する破棄手段として機能する。
In S810, the slave CPU specifies a restriction level corresponding to the prohibition instruction from the list, and determines whether or not the specified restriction level is
特定された制約レベルがレベル1でなければ、S820に進む。ところで、禁止命令が検出されたということは、サブマスタCPUにエラーが発生している事を意味している。この場合に、他のスレーブCPUにエラーが発生しているとすれば、機器制御システムの全体でみると深刻なエラーが生じている可能性が高い。そこで、本実施例では、他の制御モジュールからエラーの発生を知らせる通知を受信すると、特定手段が特定したレベルを、レベルが示すエラーの深刻度よりも高い深刻度を示すレベルに変更することにする。S820で、スレーブCPUは、特定された制約レベルがレベル2かどうかを判定する。レベル2であれば、S821に進む。S821で、スレーブCPUは、連携している他のスレーブCPUからエラーの通知を受信しているかどうかを判定する。スレーブCPUは、複数の制御モジュールのうち第2制御モジュールとは異なる他の制御モジュールからエラーの発生を知らせる通知を受信しているかどうかを判定する判定手段として機能する。他のスレーブCPUにもエラーが発生していれば、機器制御システムに深刻なエラーが発生していると推定されるため、S811に進む。S811では、レベル2よりも深刻度の高いレベル1についてのエラー対処方法が実行される。このように、S820で特定されたレベル2を、レベル2が示すエラーの深刻度よりも高い深刻度を示すレベル1に変更している。
If the specified restriction level is not
一方で、連携している他のスレーブCPUからエラーの通知を受信していなければ、S822に進む。S822で、スレーブCPUは、サブマスタCPUにエラーを通知し、サブマスタCPUから受信した制御命令を実行せずに廃棄する。特定された制約レベルがレベル1でもレベル2でもなければ、S831に進む。S831で、スレーブCPUは、自己の動作状態を監視し、受信した制御命令を実行するための前提条件を動作状態が満たすまで待機し、前提条件が満たされると、当該制御命令を実行する。このように、スレーブCPUは、第1制御モジュールの動作状態を監視する監視手段として機能する。また、スレーブCPUは、監視手段によって監視された動作状態が制御命令を実行可能な状態に変化するまで、制御命令の実行を延期する実行延期手段として機能する。
On the other hand, if an error notification has not been received from the other slave CPUs that are linked, the process proceeds to S822. In S822, the slave CPU notifies the sub master CPU of the error, and discards it without executing the control command received from the sub master CPU. If the specified constraint level is neither
このように、本実施例によれば、許容されない動作状態、動作状態間の遷移または制御命令間の遷移などをリスト化しておくことで、実行を制約されるべき制御命令を適確に検出できるようになる。なお、実行を制約されるべき制御命令を検出できれば、その副次的な効果として、ある制御モジュールにおける異常動作が他の制御モジュールへ波及すること抑制できる効果も期待できよう。例えば、このような制御命令を実行せずに破棄したり、他の制御モジュールにエラーを通知したり、サブマスタCPUのエラーがスレーブCPUに波及することを抑制できる。また、エラーの深刻度が相対的に低ければ、監視された動作状態が制御命令を実行可能な状態に変化するまで制御命令の実行を延期してもよい。これにより、回復までに比較的に長い時間を消費するシステムリセットを回避できよう。このように、制約レベルに対応したエラー対処方法を選択することで、エラーの回復にかかる時間を短縮できよう。 As described above, according to the present embodiment, it is possible to accurately detect a control instruction whose execution is restricted by listing an unacceptable operation state, a transition between operation states, or a transition between control instructions. It becomes like this. If a control command whose execution is to be restricted can be detected, as a secondary effect, an effect of suppressing an abnormal operation in one control module from spreading to another control module can be expected. For example, it is possible to suppress such a control command from being discarded without executing it, notify an error to another control module, or prevent the sub-master CPU error from spreading to the slave CPU. If the error severity is relatively low, execution of the control command may be postponed until the monitored operating state changes to a state where the control command can be executed. This will avoid a system reset that takes a relatively long time to recover. Thus, by selecting an error handling method corresponding to the constraint level, the time required for error recovery can be shortened.
また、スレーブCPUは、相対的に低い制約レベルを検知し、かつ、他のスレーブCPUからのエラーも検知することがある。この場合、スレーブCPUは、相対的に高い制約レベルへと制約レベルを変更することで(S820、S821)、機器制御システム全体でのエラーの発生状況を個々のスレーブCPUに反映できる。自分だけでなく他のスレーブCPUでもエラーが発生していれば、機器制御システム全体では大きなエラーが発生していると考えられるからである。 In addition, the slave CPU may detect a relatively low restriction level and may also detect an error from another slave CPU. In this case, by changing the restriction level to a relatively high restriction level (S820, S821), the slave CPU can reflect the error occurrence status in the entire device control system to each slave CPU. This is because if an error occurs not only in itself but also in other slave CPUs, it is considered that a large error has occurred in the entire device control system.
図9(a)、図9(b)は、サブマスタCPU601とスレーブCPU602、603との間における制御命令と、給紙センサ247、256、モータ606、611の動作状態との関係を示すタイミングチャートである。とりわけ、図9(a)は正常に制御命令が発行された場合のタイミングチャートを示し、図9(b)は制約レベル3の禁止命令が発行された場合のタイミングチャートを示している。図9(a)のタイミング(A)ではサブマスタCPU601からスレーブCPU603にモータ611の停止命令が発行されている。図7(d)によれば、レジストセンサ256がオン状態のときにモータ611の停止命令の実行は禁止されている。一方で、レジストセンサ256はオフ状態のときにモータ611の停止命令の実行は許可されている。よって、タイミング(A)での停止命令は実行され、モータ611が停止する。図9(b)のタイミング(B)でも、モータ611の停止命令が発行されている。しかし、タイミング(b)ではレジストセンサ256はオン状態であるので、この停止命令は、図7(d)のリストによって禁止命令と判定される。なお、制約レベルが3であるため、停止命令は実行を延期される。レジストセンサ256がオフ状態に移行したタイミング(C)で、スレーブCPUは、モータ611の停止命令を実行する。図9(b)のタイミング(D)では、モータ607の動作開始を指示するための制御命令が発行されている。図7(a)のリストによれば、モータ606、607は同時に動作することが禁止されている。また、その制約レベルは2である。よって、この制御命令は実行されるに破棄される。また、スレーブCPU602からサブマスタCPU601へエラー通知が実行される。エラー通知を受信したサブマスタCPU601はマスタCPU1001に異常の発生を報知してもよい。マスタCPU1001は、操作部10が備える表示部にエラー発生を表示したり、図示せぬ外部ネットワークを経由したホスト装置にエラー情報を送信したりしてもよい。エラーを操作者やホスト装置に報知することにより、速やかにエラーの発生を操作者等に認識させることが可能となる。例えば、システムリセットを実行してもエラーが再発する場合は、操作者によるメンテナンスによって、エラーの発生原因を修復することが可能となろう。
FIGS. 9A and 9B are timing charts showing the relationship between control commands between the
図9(a)、図9(b)では、モータのオン/オフをサブマスタCPU601からの制御命令に応じてスレーブCPUが実行するものとして説明した。しかし、図7(c)や図7(e)のような動作状態遷移リストとその他のリストとを基にスレーブCPU602、603が自立的に制御を実行してもよい。この場合、サブマスタCPU601からの制御命令は動作開始命令のみにすることが可能となる。また、サブマスタCPU601のエラーがスレーブCPU602、603へ波及しにくくなる利点もある。
In FIG. 9A and FIG. 9B, it has been described that the slave CPU executes the on / off of the motor in response to a control command from the
以上説明したように、本実施例の機器制御システムにおいては、異常動作に起因した制御命令を適確に検出することが可能となる。また、常動作に起因して制御命令の発行タイミングがずれてしまった場合も、禁止命令として検出することができる。また、エラーレベルの深刻度を反映して定義された制約レベルを導入することで、エラーレベルに応じて制御命令の取り扱い方法を切り替えることも可能となる。 As described above, in the device control system of the present embodiment, it is possible to accurately detect a control command resulting from an abnormal operation. Further, even when the control command issuance timing is shifted due to the normal operation, it can be detected as a prohibited command. Also, by introducing a constraint level that is defined reflecting the severity of the error level, it is possible to switch the control instruction handling method according to the error level.
[他の実施例]
上述した実施例では制約リストをCPU個別に設けられるリストとして説明した。しかし、複数のCPUグループにとって共通の制約リストとして統合されてもよい。複数のCPUが個々の状態を相互に通知し合うことにより、個々のCPUへの制御命令がグループ全体として正常かどうかを判定することで、禁止命令の検出能力を向上させることが可能となろう。
[Other embodiments]
In the above-described embodiment, the restriction list is described as a list provided for each CPU. However, they may be integrated as a common restriction list for a plurality of CPU groups. A plurality of CPUs notify each other of each other, so that it is possible to improve the detection capability of the prohibited instruction by determining whether the control instruction to each CPU is normal as a whole group. .
図10は、スレーブCPU602、603の制約条件を1つに統合したリストの一例を示している。図7(a)のリストでは給紙カセット240、241の排他的な動作のみが禁止されていたが、図10(a)のリストでは給紙カセット240、241および手差し給紙部253の同時の給紙動作が禁止されている。図10(b)、図10(c)でも同様に3つ以上のモータやセンサで禁止命令が定義されている。図7(b)、図7(c)、図7(d)、図7(e)および図7(f)の示した各リストと比較し、より詳細に禁止命令が設定されている。このように、連携して動作する3つ以上のモジュールをグループ化して禁止命令を定義することで、より安全なシステムを構成することが可能となろう。また、異常動作に起因した禁止命令の検出はスレーブCPUのみで行うのではなく、他のCPUで実行してもよいことは既に説明したとおりである。さらに、本実施例では、禁止命令を検出することで、個々の制御モジュールにおける異常動作を検出してい。しかし、各制御モジュールのステータスをつき合わせることで、個々のステータスをシステム全体のステータスに置き換え、システム全体のステータスと禁止命令を定義したリストとを比較することで、異常動作を検出してもよい。
FIG. 10 shows an example of a list in which the constraint conditions of the
上述した実施例では、第1搬送モジュール280について説明したが、同様の技術思想は、第2搬送モジュール281、作像モジュール282および定着モジュール283にも適用できる。さらに、マスタCPU1001と、サブマスタCPU601、701、801、901との間にも同様の技術思想を適用してもよい。例えば、マスタCPU1001からの制御命令についてサブマスタCPU601は上述の異常動作の検出を実行することになる。この場合、スレーブCPU間でのエラー通知はサブマスタCPU間で実行されることになる。
In the embodiment described above, the
Claims (6)
前記複数の制御モジュールのうち少なくとも第1制御モジュールは、
前記複数の制御モジュールのうち前記通信線を介して接続された第2制御モジュールから制御命令を受信する受信手段と、
複数の制御命令のそれぞれに対応した前記第1制御モジュールの動作状態を示す第1リスト、該第1制御モジュールにおける複数の動作状態間の遷移を示す第2リスト、および、複数の制御命令間の遷移を示す第3リストのうち少なくとも1つのリストを記憶したリスト記憶手段と、
前記受信手段により受信された制御命令に対応する動作状態が前記第1リストによって禁止されている動作状態かどうかの判定、前記受信手段により受信された複数の制御命令に対応した複数の動作状態間の遷移が前記第2リストによって禁止されていない遷移かどうかの判定、および、前記受信手段により受信された複数の制御命令間の遷移が前記第3リストによって禁止されていない遷移かどうかの判定のうち少なくとも1つの判定を実行することで、実行を制約されるべき制御命令を検出する検出手段と
を備えることを特徴とする機器制御システム。 In a device control system comprising a plurality of control modules connected by communication lines,
At least the first control module of the plurality of control modules is
Receiving means for receiving a control command from a second control module connected via the communication line among the plurality of control modules;
A first list indicating an operation state of the first control module corresponding to each of a plurality of control instructions, a second list indicating a transition between the plurality of operation states in the first control module, and a plurality of control instructions List storage means for storing at least one of the third lists indicating transitions;
Determining whether the operating state corresponding to the control command received by the receiving means is an operating state prohibited by the first list, between a plurality of operating states corresponding to the plurality of control commands received by the receiving means And whether or not a transition between a plurality of control instructions received by the receiving means is a transition not prohibited by the third list. A device control system comprising: detection means for detecting a control command whose execution should be restricted by executing at least one of the determinations.
前記検出手段によって実行を制約されるべき制御命令が検出されると、該制御命令を実行せずに破棄する破棄手段をさらに備えることを特徴とする請求項1に記載の機器制御システム。 At least the first control module of the plurality of control modules is
The apparatus control system according to claim 1, further comprising: a discarding unit that discards the control command without executing the control command when a control command to be restricted by the detection unit is detected.
前記検出手段によって実行を制約されるべき制御命令が検出されると、前記複数の制御モジュールのうち前記通信線を介して接続された他の制御モジュールに対して異常が発生していることを示す通知を送信する送信手段をさらに備えることを特徴とする請求項1または2に記載の機器制御システム。 At least the first control module of the plurality of control modules is
When a control command whose execution is to be restricted is detected by the detection means, it indicates that an abnormality has occurred in another control module connected via the communication line among the plurality of control modules. The device control system according to claim 1, further comprising a transmission unit that transmits the notification.
前記第1制御モジュールの動作状態を監視する監視手段と、
前記検出手段によって実行を制約されるべき制御命令が検出されると、前記監視手段によって監視された動作状態が該制御命令を実行可能な状態に変化するまで、該制御命令の実行を延期する実行延期手段と
をさらに備えることを特徴とする請求項1に記載の機器制御システム。 At least the first control module of the plurality of control modules is
Monitoring means for monitoring an operating state of the first control module;
When a control instruction whose execution is to be restricted by the detection means is detected, execution to postpone execution of the control instruction until the operation state monitored by the monitoring means changes to a state in which the control instruction can be executed The device control system according to claim 1, further comprising a postponing unit.
前記複数の制御モジュールのうち少なくとも第1制御モジュールは、
前記実行を制約されるべき制御命令に対応したレベルを特定する特定手段と、
前記特定手段によって特定されたレベルに対応したエラー対処方法を選択する選択手段と
をさらに備えることを特徴とする請求項1ないし4のいずれか1項に記載の機器制御システム。 In each of the first list, the second list, and the third list, a level indicating the severity of an error corresponding to the control instruction to be restricted from execution is registered.
At least the first control module of the plurality of control modules is
Specifying means for specifying a level corresponding to a control instruction to be restricted from being executed;
5. The device control system according to claim 1, further comprising a selection unit that selects an error handling method corresponding to a level specified by the specifying unit.
前記複数の制御モジュールのうち前記第2制御モジュールとは異なる他の制御モジュールからエラーの発生を知らせる通知を受信しているかどうかを判定する判定手段と、
前記他の制御モジュールからエラーの発生を知らせる通知を受信すると、前記特定手段が特定したレベルを、該レベルが示すエラーの深刻度よりも高い深刻度を示すレベルに変更する変更手段と
をさらに備えることを特徴とする請求項5に記載の機器制御システム。 At least the first control module of the plurality of control modules is
Determining means for determining whether or not a notification notifying the occurrence of an error is received from another control module different from the second control module among the plurality of control modules;
When the notification notifying the occurrence of an error is received from the other control module, the information processing apparatus further includes a changing unit that changes the level specified by the specifying unit to a level indicating a severity higher than the severity of the error indicated by the level. The apparatus control system according to claim 5.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010059925A JP5513186B2 (en) | 2010-03-16 | 2010-03-16 | Equipment control system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010059925A JP5513186B2 (en) | 2010-03-16 | 2010-03-16 | Equipment control system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011189709A true JP2011189709A (en) | 2011-09-29 |
JP5513186B2 JP5513186B2 (en) | 2014-06-04 |
Family
ID=44795116
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010059925A Expired - Fee Related JP5513186B2 (en) | 2010-03-16 | 2010-03-16 | Equipment control system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5513186B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014021444A (en) * | 2012-07-23 | 2014-02-03 | Canon Inc | Information processing system |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09314959A (en) * | 1996-05-31 | 1997-12-09 | Canon Inc | Image forming apparatus and method for treating abnormal state in the apparatus |
JP2005184711A (en) * | 2003-12-24 | 2005-07-07 | Canon Software Inc | Remote control management server, remote control management method, program and recording medium |
JP2005181495A (en) * | 2003-12-17 | 2005-07-07 | Kyocera Mita Corp | Image forming apparatus |
JP2007203520A (en) * | 2006-01-31 | 2007-08-16 | Kyocera Mita Corp | Controller and image forming apparatus having the same |
JP2007290258A (en) * | 2006-04-25 | 2007-11-08 | Canon Inc | Image forming apparatus and its control method |
-
2010
- 2010-03-16 JP JP2010059925A patent/JP5513186B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09314959A (en) * | 1996-05-31 | 1997-12-09 | Canon Inc | Image forming apparatus and method for treating abnormal state in the apparatus |
JP2005181495A (en) * | 2003-12-17 | 2005-07-07 | Kyocera Mita Corp | Image forming apparatus |
JP2005184711A (en) * | 2003-12-24 | 2005-07-07 | Canon Software Inc | Remote control management server, remote control management method, program and recording medium |
JP2007203520A (en) * | 2006-01-31 | 2007-08-16 | Kyocera Mita Corp | Controller and image forming apparatus having the same |
JP2007290258A (en) * | 2006-04-25 | 2007-11-08 | Canon Inc | Image forming apparatus and its control method |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014021444A (en) * | 2012-07-23 | 2014-02-03 | Canon Inc | Information processing system |
Also Published As
Publication number | Publication date |
---|---|
JP5513186B2 (en) | 2014-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100670877B1 (en) | Image forming apparatus and its control method | |
US9285746B2 (en) | Abnormality monitoring system and image forming apparatus | |
JP5480598B2 (en) | Image forming apparatus | |
JP2010026477A (en) | Image forming apparatus | |
JP2010072208A (en) | Image forming system, sheet transportion control method therefor, image forming apparatus, and sheet feeding apparatus | |
JP2011164396A (en) | Medium carrying device, image forming apparatus and medium carrying method | |
US9083824B2 (en) | Image forming apparatus for detecting an abnormality | |
JP2010034636A (en) | Image processor, method for controlling image processor, and program | |
US8605306B2 (en) | Image forming apparatus | |
JP2008254868A (en) | Image forming device | |
JP5513186B2 (en) | Equipment control system | |
JP4715255B2 (en) | Image forming apparatus and program | |
JP5377273B2 (en) | Image forming apparatus | |
JP2008203498A (en) | Image forming apparatus and image forming method | |
JP6106581B2 (en) | Image forming apparatus | |
JP2013242811A (en) | Information processing apparatus, and abnormality processing method | |
JP5486297B2 (en) | Image forming apparatus and control method thereof | |
JP2006279177A (en) | Image forming apparatus and control system thereof | |
JP5587064B2 (en) | Image forming apparatus | |
JP2013054314A (en) | Image forming apparatus and operation control method | |
JP5414923B2 (en) | Image forming apparatus | |
JP7200592B2 (en) | IMAGE FORMING APPARATUS, IMAGE FORMING APPARATUS CONTROL METHOD, AND IMAGE FORMING APPARATUS CONTROL PROGRAM | |
JP2013225012A (en) | Image formation control device, image forming apparatus, and control method of image forming apparatus | |
JP2000238327A (en) | Image-forming system | |
JP2011138224A (en) | Image forming apparatus and method for controlling the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130314 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20131213 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131218 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140207 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20140228 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140327 |
|
LAPS | Cancellation because of no payment of annual fees |