JP2011189709A - Equipment control system - Google Patents

Equipment control system Download PDF

Info

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
Application number
JP2010059925A
Other languages
Japanese (ja)
Other versions
JP5513186B2 (en
Inventor
Atsushi Otani
篤志 大谷
Shoji Takeda
庄司 武田
Satoru Yamamoto
悟 山本
Keita Takahashi
圭太 高橋
Hirotaka Seki
広高 関
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2010059925A priority Critical patent/JP5513186B2/en
Publication of JP2011189709A publication Critical patent/JP2011189709A/en
Application granted granted Critical
Publication of JP5513186B2 publication Critical patent/JP5513186B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To properly detect control commands of which execution should be restricted among a plurality of control modules connected via communicating wires. <P>SOLUTION: A detecting means executes determination whether or not the action condition corresponding to the control commands received by a receiving means, for example, is an action condition which is inhibited by the first list. The detecting means executes determination whether or not the transition among a plurality of action conditions corresponding to the plurality of control commands received by the receiving means is the transition which is not inhibited by the second list. Further, the detecting means executes determination whether or not the transition among a plurality of control commands received by the receiving means is the transition which is not inhibited by the third list. The detecting means detects the control commands of which the execution is restricted by executing at least one determination of the determinations described above. <P>COPYRIGHT: (C)2011,JPO&INPIT

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 Patent Document 2, it is described that the LAN communication control device stops functioning when it is detected that an abnormal number of packets are received.

特開平08−336189号公報Japanese Patent Laid-Open No. 08-336189 特開2000−295259号公報JP 2000-295259 A

ところで、画像形成装置は、紙搬送、ヒータ制御、印刷プロセス制御と言った制御上の独立性の高い複数の機能グループを備えている。よって、画像形成装置に分散制御システムを適用する場合、複数の分散制御モジュールが機能グループごとにまとまった階層構造を採用し、下位階層が上位階層からの命令を受けて動作することになろう。このような階層構造ではシステムの安全性を高めるには、上位階層と下位階層との間で通信データが正しく送受できているかだけでなく、各階層が相互に正常に動作しているかを検出する必要がある。誤り検出符号や誤り訂正符号は、通信路で発生する通信データの誤りは検出できるが、分散制御モジュールの誤動作によって発行される誤った制御命令は通信路で生じる誤りではないため検出できない。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.

本実施例に係る画像形成装置1000の概観を示す図である。1 is a diagram illustrating an overview of an image forming apparatus 1000 according to an embodiment. 本実施例に係る画像形成部300の構成例を示す断面図である。FIG. 3 is a cross-sectional view illustrating a configuration example of an image forming unit 300 according to the present embodiment. 本実施例に係るマスタCPU、サブマスタCPUおよびスレーブCPUの関連を模式的に示す図である。It is a figure which shows typically the relationship between the master CPU which concerns on a present Example, submaster CPU, and slave CPU. 本実施例に係る画像形成装置1000の制御基板の一例を示す図である。FIG. 3 is a diagram illustrating an example of a control board of the image forming apparatus 1000 according to the present embodiment. 本実施例に係るサブマスタCPU601、スレーブCPU602、603の接続関係を示す図である。It is a figure which shows the connection relationship of submaster CPU601 and slave CPU602, 603 which concern on a present Example. 本実施例に係る手差し給紙部253、給紙カセット240および給紙カセット241の排他的な動作を示すシーケンス図である。FIG. 11 is a sequence diagram illustrating exclusive operations of the manual paper feed unit 253, the paper feed cassette 240, and the paper feed cassette 241 according to the present embodiment. 本実施例に係る図5に示したサブマスタCPU602、603の制約リストを示す図である。It is a figure which shows the restrictions list | wrist of submaster CPU602, 603 shown in FIG. 5 which concerns on a present Example. 本実施例に係るスレーブCPUが制御命令を受信したときに実行する処理を示すフローチャートである。It is a flowchart which shows the process performed when the slave CPU which concerns on a present Example receives a control command. 本実施例に係る制約リストを用いた給紙制御を示したシーケンス図である。FIG. 10 is a sequence diagram illustrating sheet feed control using a restriction list according to the embodiment. 本実施例に係る複数のサブマスタCPUにより構成されたグループについて制約リストを示した図である。It is the figure which showed the restriction | limiting list about the group comprised by the some submaster CPU which concerns on a present Example.

[実施例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 image forming apparatus 1000 includes an automatic document feeder 100, an image reading unit 200, an image forming unit 300, and an operation unit 10. The image forming apparatus shown in FIG. 1 is generally in the form of a product called a copying machine or a multifunction machine. As will be described in detail below, the image forming apparatus 1000 implements distributed control using a plurality of control units (CPUs). The automatic document feeder 100 automatically conveys a document onto a platen glass. The image reading unit 200 reads a document conveyed from the automatic document conveying device 100 and outputs image data. The image forming unit 300 forms an image on a recording material according to image data output from the image reading unit 200 or image data input from an external host device connected via a communication line. The operation unit 10 has a GUI (graphical user interface) for a user to perform various operations. Furthermore, the operation unit 10 includes a display unit such as a touch panel and presents information to the user.

<画像形成部>
図2に示した画像形成部300の画像形成方式はとして電子写真方式を採用している。なお、本願発明の技術思想は、画像形成方式に依存するものではない。よって、本願発明は、インクジェット方式、熱転写方式やその他画像形成方式にも適用できる。なお、参照番号の末尾に示すアルファベットY、M、C、Kは、それぞれイエロー、マゼンダ、シアン、ブラックのトナーを示している。よって、各トナーに共通する事項について説明するときは末尾のアルファベットY、M、C、Kを省略する。各トナーについてそれぞれ個別の事項について説明する場合は参照番号の末尾にアルファベットY、M、C、Kを付記する。
<Image forming unit>
As an image forming method of the image forming unit 300 shown in FIG. 2, an electrophotographic method is adopted. The technical idea of the present invention does not depend on the image forming method. Therefore, the present invention can be applied to an ink jet method, a thermal transfer method, and other image forming methods. Note that alphabets Y, M, C, and K shown at the end of the reference numbers indicate yellow, magenta, cyan, and black toners, respectively. Therefore, the alphabets Y, M, C, and K at the end are omitted when describing items common to each toner. When describing individual items for each toner, alphabets Y, M, C, and K are added to the end of the reference number.

感光ドラム(以下、「感光体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 device 223K is a developing device for monochrome development, and develops the latent image on the photoreceptor 225K with K toner. The developing devices 223Y, M, and C are developing devices for full color development. The developing devices 223Y, M, and C develop the latent images on the photoreceptors 225Y, M, and C with Y, M, and C toners, respectively. The toner images of the respective colors developed on the photoconductor 225 are collectively transferred to the transfer belt 226, which is an intermediate transfer body, by the transfer device 220.

転写ベルト226は、ローラ227、228、229に張架されている。ローラ227は、駆動源に結合されて転写ベルト226を駆動する駆動ローラとして機能し、ローラ228は転写ベルト226の張力を調節するテンションローラとして機能する。また、ローラ229は、二次転写装置231としての転写ローラのバックアップローラとして機能する。転写ローラ脱着ユニット250は、二次転写装置231を転写ベルト226に接着させるか、又は離脱させるための駆動ユニットである。二次転写装置231を通過した後の転写ベルト226の下部にはクリーナブレード232が設けられており、転写ベルト226上の残留トナーがブレードで掻き落とされる。   The transfer belt 226 is stretched around rollers 227, 228, and 229. The roller 227 functions as a driving roller that is coupled to a driving source and drives the transfer belt 226, and the roller 228 functions as a tension roller that adjusts the tension of the transfer belt 226. The roller 229 functions as a backup roller for the transfer roller as the secondary transfer device 231. The transfer roller attaching / detaching unit 250 is a drive unit for adhering or releasing the secondary transfer device 231 to or from the transfer belt 226. A cleaner blade 232 is provided below the transfer belt 226 after passing through the secondary transfer device 231, and residual toner on the transfer belt 226 is scraped off by the blade.

給紙カセット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 paper feed cassettes 240 and 241 and the manual paper feed unit 253 are nipped by the registration roller 255, the paper feed roller pair 235, and the vertical pass roller pairs 236 and 237, that is, the secondary transfer device 231 and the transfer belt 226. Is fed to the contact portion. At this time, the secondary transfer device 231 is in contact with the transfer belt 226 by the transfer roller attaching / detaching unit 250. The toner image formed on the transfer belt 226 is transferred onto the recording material at this nip portion. Thereafter, the recording material onto which the toner image has been transferred is thermally fixed by the fixing device 234 and discharged outside the device. The sheet feeding cassettes 240 and 241 and the manual sheet feeding unit 253 include sheet-less detection sensors 243, 244, and 245 for detecting the presence or absence of a recording material, respectively. The paper feed cassettes 240 and 241 and the manual paper feed unit 253 include paper feed sensors 247, 248, and 249 for detecting a pickup failure of the recording material, respectively.

ここで、画像形成部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 image forming unit 300 will be described. When image formation is started, the recording materials stored in the paper feed cassettes 240 and 241 and the manual paper feed unit 253 are conveyed to the paper feed roller pair 235 one by one by the pickup rollers 238, 239, and 254, respectively. . When the recording material is conveyed to the registration roller 255 by the pair of paper feed rollers 235, the registration sensor 256 immediately before the recording material detects passage of the recording material. After a predetermined time has elapsed since the registration sensor 256 detected the passage of the recording material, the paper feed roller pair 235 interrupts the recording material conveyance operation. As a result, the recording material hits the stopped registration roller 255 and stops. By starting the registration roller 255, the recording material is supplied to the secondary transfer device 231. The registration roller 255 is coupled to a driving source and is driven to rotate by being transmitted by a clutch.

次に、一次帯電装置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 controller 460 via the printer control I / F 215. A developing bias set in advance for each color is applied to the developing roller of the developing device 223. The latent image is developed with toner when passing through the position of the developing roller, and is visualized as a toner image. The toner image is transferred to the transfer belt 226 by the transfer device 220, and further transferred to the recording material conveyed from the paper feeding unit by the secondary transfer device 231, and then passes through the post-registration conveyance path 268 to be fixed and conveyed. It is conveyed to the fixing device 234 via the belt 230. In the fixing device 234, in order to prevent image disturbance, the pre-fixing chargers 251 and 252 are charged to reinforce the toner adsorption force. Further, the toner image is thermally fixed by the fixing roller 233. Thereafter, the recording material is discharged to the discharge tray 242 as it is by the discharge roller 270 when the transport path is switched to the discharge path 258 side by the discharge flapper 257. The toner remaining on the photoreceptor 225 is removed and collected by the cleaner device 222. The photoconductor 225 is uniformly discharged to near 0 volts by the charge removing device 271 to prepare for the next image forming cycle.

図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 first transport module 280, a second transport module 281, an image forming module 282, and a fixing module 283 shown in FIG. The master module 284 is a control module that controls these four control blocks to function as an image forming apparatus. The master module 284 is provided with a master CPU 1001 as a master control unit / first layer control unit. The master CPU 1001 controls the entire image forming apparatus 1000 based on instructions, commands, and image data received from the controller 460 via the printer control I / F 215. The first transport module 280, the second transport module 281, the image forming module 282, and the fixing module 283 for performing image formation are sub-master CPUs 601, 901, and 701 as sub-master control units / second-layer control units that control each function. 801. The sub master CPUs 601, 901, 701 and 801 are controlled by the master CPU 1001. Each function module further includes slave CPUs 602, 603, 902, 903, 702, 703, 704, 705, 706, as slave control units / third layer control units for operating control loads for executing the respective functions. 802 and 803 are provided. The slave CPUs 602 and 603 are controlled by the sub master CPU 601. The slave CPUs 902 and 903 are controlled by the sub master CPU 901. The slave CPUs 702, 703, 704, 705, and 706 are controlled by the sub master CPU 701. The slave CPUs 802 and 803 are controlled by the sub master CPU 801.

図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 master CPU 1001 and the plurality of sub-master CPUs 601, 701, 801, and 901 are connected by a common network type communication bus 1002. The sub-master CPUs 601, 701, 801, and 901 are also connected by a network type communication bus 1002. Note that the master CPU 1001 and the plurality of sub-master CPUs 601, 701, 801, and 901 may be ring-connected. The sub-master CPU 601 is further connected to each of the plurality of slave CPUs 602 and 603 via the serial communication buses 612 and 613 in a one-to-one manner. Similarly, the sub-master CPU 701 is connected to slave CPUs 702, 703, 704, 705, and 706 via serial communication buses 711, 712, 713, 714, and 715, respectively. The sub master CPU 801 is connected to the slave CPUs 802 and 803 via serial communication buses 808 and 809, respectively. The sub master CPU 901 is connected to slave CPUs 902 and 903 via serial communication buses 909 and 910, respectively. Here, the serial communication bus is used for short-range communication.

一方、サブマスタ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 sub master CPUs 601, 701, 801, and 901 and the master CPU 1001, only communication that does not require precise control timing and that controls the rough processing flow of the image forming operation is performed. For example, the master CPU 1001 instructs the sub-master CPU to start pre-image formation processing, start paper feed, and start post-image formation processing. Further, the master CPU 1001 issues an instruction based on a mode (for example, a monochrome mode or a double-sided image formation mode) designated by the controller 460 to the sub-master CPU before starting image formation. Only communication that does not require precise timing control is performed between the sub-master CPUs 601, 701, 801, and 901. That is, the control of the image forming apparatus is divided into control units that do not require precise timing control, and each sub-master CPU controls each control unit at precise timing. As a result, the image forming apparatus 1000 can minimize the communication traffic and can be connected by the low-speed and inexpensive network type communication bus 1002. In addition, about the master CPU, submaster CPU, and slave CPU, the control board mounted does not necessarily need to be a control board as shown in FIG. 3, and can be changed according to the situation on mounting.

図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 sub master CPU 601 and the slave CPUs 602 and 603 are mounted on the same substrate. Further, like the sub master CPU 701 and the slave CPUs 702, 703, and 704, or the sub master CPU 801 and the slave CPUs 802 and 803, the sub master CPU and each slave CPU may be mounted on independent boards. Some slave CPUs such as slave CPUs 705 and 706 may be mounted on the same substrate. Like the sub master CPU 901 and the slave CPU 902, only a part of the sub master CPU and the slave CPU may be arranged on the same substrate.

スレーブCPU802は、定着搬送ベルト230を回転させるためのモータ804、定着ローラ233を回転させるためのモータ805を制御負荷とし、二次転写装置231から定着後の搬送パスに記録用シート媒体を引き渡すまでの制御を行う。スレーブCPU803は、定着装置234における加熱ヒータ806、温度検知サーミスタ807、定着前帯電器251、252を制御負荷とする。スレーブCPU803は、定着前帯電器251、252を制御してトナーを帯電させる。さらに、スレーブCPU803は、温度検知サーミスタ807の検知結果をフィードバックさせながら、加熱ヒータ806の温度を制御する。サブマスタCPU801とスレーブCPU802、803は共通のシリアル通信バス808により接続されている。   The slave CPU 802 uses the motor 804 for rotating the fixing conveyance belt 230 and the motor 805 for rotating the fixing roller 233 as control loads until the recording sheet medium is delivered from the secondary transfer device 231 to the conveyance path after fixing. Control. The slave CPU 803 uses the heater 806, the temperature detection thermistor 807, and the pre-fixing chargers 251 and 252 in the fixing device 234 as control loads. The slave CPU 803 controls the pre-fixing chargers 251 and 252 to charge the toner. Further, the slave CPU 803 controls the temperature of the heater 806 while feeding back the detection result of the temperature detection thermistor 807. The sub master CPU 801 and slave CPUs 802 and 803 are connected by a common serial communication bus 808.

次に、本発明の特徴である制御モジュール間での制御命令の異常検知に関して説明する。複数の制御モジュールのうち少なくとも第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 first transport module 280 shown in FIG. 5 is used as an example as at least the first control module among the plurality of control modules. The first transport module 280 performs paper feed control until the recording material stored in the paper feed cassettes 240 and 241 and the manual paper feed unit 253 is fed to the contact portion between the secondary transfer device 231 and the transfer belt 226. I am in charge. The first transport module 280 includes a sub-master CPU 601 that performs overall control of paper feed control, and slave CPUs 602 and 603 that drive each load. Each slave CPU is connected to a load group that is directly controlled.

スレーブ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 slave CPU 602 includes a first communication interface 501, a second communication interface 502, a ROM 503 and a RAM 504. The slave CPU 602 transmits and receives control commands, status information, and the like with the sub master CPU 601 via the first communication interface 501. Therefore, the first communication interface 501 functions as a receiving unit that receives a control command from the second control module connected via the communication line among the plurality of control modules. The slave CPU 602 receives information from the sensor via the second communication interface 502 or transmits a control signal to a motor or the like. The ROM 503 stores control programs, data, lists, and the like. The RAM 504 stores data acquired from sensors, a history of received control commands, and the like. The slave CPU 602 may transmit / receive a notification indicating the occurrence of an error to / from the slave CPU 603 via the third communication interface 505. The slave CPU 602 uses the motor 606 for driving the pickup roller 238 related to the paper feed cassette 240, the sheet absence detection sensor 243, and the paper feed sensor 247 as loads, and performs control until the recording material is delivered to the paper feed path 266. . Further, the slave CPU 602 uses the motor 607 for driving the pickup roller 239 related to the paper feed cassette 241, the sheet absence detection sensor 244, and the paper feed sensor 248 as loads, and controls until the recording material is delivered to the paper feed path 266. I do.

スレーブ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 slave CPU 603 is substantially the same as the internal configuration of the slave CPU 602, and thus the description thereof is omitted. The slave CPU 603 uses the motor 608 for driving the pickup roller 254 related to the manual paper feed unit 253, the sheet absence sensor 245, and the paper feed sensor 249 as loads, and performs control until the recording material is delivered to the paper feed path 266. Do. The slave CPU 603 further uses motors 609, 610, and 611 for driving the paper feed roller pairs 235, 236, and 237 and the registration sensor 256 as loads. The slave CPU 603 controls these loads until the recording material delivered from the paper feeding cassettes 240 and 241 and the manual paper feeding unit 253 is conveyed to the registration roller 255 and temporarily stopped. In this embodiment, the sub-master CPU 601 and the slave CPUs 602 and 603 are connected to each other in a one-to-one relationship by independent serial communication buses 612 and 613, respectively.

電磁気的なノイズの影響や複数の制御モジュール間の同期ズレ(制御遅延)などに起因していずれかの制御モジュールが異常動作を起こすことがある。異常動作が発生すると、制御命令の発行側の制御モジュールは、本来であれば発行しないような制御命令を発行してしまうかもしれない。この誤った制御命令を受信側の制御モジュールが実行してしまうと、設計上は想定されていない動作状態(禁止状態)に移行してしまうおそれがある。そして、この設計上は想定されていない動作状態においてセンサが検出した値を他の制御モジュールが利用してしまうと、機器制御システムの全体に異常動作が波及してしまうおそれがある。よって、実施例では、このような禁止状態へ制御モジュールを移行させてしまうような制御命令を検知することで、異常の波及を抑制する。例えば、複数の制御命令のそれぞれに対応した制御モジュールの動作状態を示す第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 slave CPUs 602 and 603 functioning as detection means for detecting a control command that creates a prohibited state that is impossible in the operation of each slave CPU as an example.

図6に示すように画像形成装置1000は画像形成を行う際に手差し給紙部253、給紙カセット240および給紙カセット241のいずれか1つから記録材を供給する。複数の給紙部が同時にて記録材の給紙動作状態へ移行することはない。すなわち、複数の給紙部に対して同時に給紙命令が発行されることはない。さらに、スレーブCPUに接続されるモータやセンサ等の負荷間にも動作上の制約が存在する。例えば、給紙カセット240から給紙する際にはモータ606がまず回転状態へ移行し、次に、給紙センサ247が記録材を検出している状態(オン状態)に移行し、さらにその後に後段のモータ611が駆動状態に移行する。また、給紙センサ247、レジストセンサ256がオフの状態に移行してから、モータ606、611は停止状態に移行する。このように、複数の動作状態には、時系列的に正しい遷移の順番が存在する。   As shown in FIG. 6, the image forming apparatus 1000 supplies the recording material from any one of the manual paper feed unit 253, the paper feed cassette 240, and the paper feed cassette 241 when performing image formation. The plurality of paper feeding units do not shift to the recording material feeding operation state at the same time. That is, no paper feed command is issued simultaneously to a plurality of paper feed units. Furthermore, there are operational restrictions between loads such as motors and sensors connected to the slave CPU. For example, when paper is fed from the paper feed cassette 240, the motor 606 first shifts to the rotation state, then shifts to a state where the paper feed sensor 247 detects the recording material (on state), and thereafter The subsequent motor 611 shifts to the driving state. In addition, after the paper feed sensor 247 and the registration sensor 256 are turned off, the motors 606 and 611 are moved to a stopped state. As described above, the plurality of operation states have a correct transition order in time series.

図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 slave CPUs 602 and 603. The slave CPUs 602 and 603 detect operation state restrictions and abnormal control instructions according to the restriction list, and determine whether or not the control instructions can be executed. That is, the slave CPUs 602 and 603 store these restriction lists in the built-in ROM or external ROM. The restriction list includes exclusive operation restrictions among multiple drive devices (function groups, motors, etc.), simultaneous (synchronous) operation restrictions of multiple drive devices, and operation restrictions based on conditions (such as various sensor inputs) that are preconditions for operation. It is assumed that it is created in advance. Here, three types of state lists, state transition lists, and instruction transition lists will be described as examples of constraint lists. These correspond to the above-described first list, second list, and third list, respectively. These restriction lists are, as appropriate, a prohibition list in which transitions between control instructions to be prohibited and transitions between operation states are registered, or a permission in which transitions between control instructions to be permitted and transitions between operation states are registered. Described in the form of a list. The forbidden list and the allowed list can express equivalent contents. Therefore, it is sufficient to select a list that is easy to describe due to system restrictions. For example, a device with few restrictions is described by a prohibit list, and if there are many restrictions, it is described by an allow list. In this way, if a format that reduces the size of the list is adopted, there is an advantage that the storage capacity of the ROM 503 functioning as the list storage means can be saved.

禁止リストは、禁止された動作状態、禁止された複数の動作状態間の遷移、禁止された複数の制御命令間の遷移を記述したリストである。禁止リストに記述された動作状態、動作状態間の遷移、制御命令間の遷移が検知されれば、その制御命令は禁止命令であるとして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 slave CPU 602 has received a control command from the sub-master CPU 601 to turn on the motor 606. In this case, when the slave CPU 602 executes this control command, the slave CPU 602 grasps from the internal table that the paper feed sensor 247 related to the paper feed cassette 240 shifts to a state in which the recording material is detected. Such a state determination method is called virtual execution. Normally, when this control command is received, the paper feed sensor 248 of the paper feed cassette 241 has not shifted to a state in which a recording material has been detected. If both the paper feed sensor 247 and the paper feed sensor 248 shift to the operation state in which the recording material is detected, a jam occurs, and such an operation state is prohibited by the operation state list, or Unauthorized. As described above, the slave CPU 602 determines an operation state after virtually executing the received control command before actually executing the received control command. Then, the slave CPU 602 refers to the operation state list based on the determined operation state and the current operation state, and determines whether the determined operation state and the current operation state are prohibited operation states. If the determined operation state and the current operation state are described in the operation state list, the slave CPU 602 detects that the received control command is a control command whose execution is restricted.

状態遷移リストは動作状態の遷移を示す制約リストである。状態遷移リストには、ある制御命令を実行する前の動作状態とこの制御命令を実行した後の動作状態とを関連付けて登録している。よって、スレーブ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 slave CPU 602. In the figure, ○ indicates an operating state, and × indicates a stopped state. The first status list indicates that the paper feed cassette 240 is in an operating state and the paper feed cassette 241 is in a stopped state. The second status list indicates that the paper feed cassette 240 is in a stopped state and the paper feed cassette 241 is in an operating state. The third status list indicates that the paper feed cassette 240 is in a stopped state and the paper feed cassette 241 is also in a stopped state. Thus, the list shown in FIG. 7A is expressed as an allow list. Therefore, in this list, it is prohibited that both the paper feed cassette 240 and the paper feed cassette 241 are in an operating state. In FIG. 7, the definition of the function group is omitted. The function group definition can be defined as group table information.

図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 motors 606 and 607 belong to the same functional group as the paper feed cassettes 240 and 241, respectively, and the control commands for operating them simultaneously are clearly abnormal. Therefore, when a control command for simultaneously driving these two motors is received from the sub-master CPU 601 that has operated abnormally, the slave CPU 602 notifies the other CPUs of the occurrence of the abnormality according to the restriction list in FIG. Immediately stop the operation.

図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 slave CPU 602. The operation state list is described as a prohibition list. According to this list, it is prohibited to stop driving the motors 606 and 607 when the paper feed sensor 247 is detecting paper (on). The slave CPU 602 monitors whether the paper feed sensor 247 is on or off. When the stop command for the motors 606 and 607 is received while the paper feed sensor 247 is on, the slave CPU 602 waits for the paper feed sensor 247 to turn off and stops the motors 606 and 607. That is, the control command is executed after waiting until a precondition for executing the received control command is satisfied. Here, the slave CPU 602 has been described using the list shown in FIG. 7A and the list shown in FIG. 7B. These lists are changed to the prohibit list shown in FIG. 7G. It may be integrated.

上述したように、スレーブ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 paper feed sensor 247 and the motor 606 are registered in association with each other. The operation state transition list is used when transitions between a plurality of operation states occur in a predetermined order. That is, transitions in the order not defined by the operation state transition list are prohibited, and transitions in the order defined by the operation state transition list are permitted. By comparing the transition from the current operating state to the operating state after virtually executing the control command before actually executing the control command with the transition registered in the list, the slave CPU can receive the received control command. Determine if it is a prohibited instruction. When a transition that is not registered in the operation state transition list occurs, the slave CPU discards it without executing the control command. Alternatively, the slave CPU may postpone the execution of the received control command until the registered transition is realized. Which of these should be adopted may be determined according to the restriction level registered in the operation state transition list.

スレーブ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 slave CPU 603. Since these are the same contents as FIG. 7 (b) and FIG. 7 (c) except that the target drive devices (registration sensor 256 and motor 611) are different, description thereof will be omitted. FIG. 7F shows an example of a control instruction transition list for the slave CPU 603. The constraint on the issue transition among a plurality of related control instructions is shown. That is, an issue order or an execution order is defined in advance for a plurality of control commands, and the order is managed in this list. In the list of FIG. 7F, transitions that should be prohibited for the control command for the motor 611 and the control command for the motor 608 are registered. The slave CPU 603 stores the received control command history in the RAM. When the slave CPU 603 receives a new control command (Next), the slave CPU 603 identifies the previous control command (Current) from the history, and determines whether the transition between the two control commands is a transition registered in the control command transition list. judge. As a result, the slave CPU 603 determines a new control command as a prohibited command if the transition is prohibited by the list, and determines a new control command as a permitted command if the transition is not prohibited by the list. Specifically, it is assumed that after an on command for the motor 608 is received, an on command for the motor 608 is received. Such a transition of the control command is prohibited by the third state list in FIG. Therefore, the slave CPU 603 discards the motor 608 without executing the ON command. It is not possible to detect from the lists shown in FIG. 7D and FIG. 7E that an unnecessary command that issues an ON command again while the motor 608 is ON is issued. This is because the transition of the operation state does not occur when the control instructions having the same contents are continuously issued. Therefore, if a control command transition list is introduced, an abnormality that cannot be detected from the transition of the operation state can be detected.

図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 level 1. If it is level 1, the process proceeds to S811, where the slave CPU discards the control command without executing it and notifies the sub-master CPU of the occurrence of an error. If there is another slave CPU linked with the slave CPU, the slave CPU may notify the other slave CPU of the occurrence of the error through the third communication interface 505. The third communication interface 505 functions as a transmission unit that transmits a notification indicating that an abnormality has occurred to another control module connected via a communication line among the plurality of control modules. Furthermore, the slave CPU requests these CPUs to perform a system reset. In this manner, the slave CPU functions as a discarding unit that discards a control command without executing the control command when a control command whose execution is restricted by the detection unit is detected.

特定された制約レベルがレベル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 level 1, the process proceeds to S820. By the way, the detection of the prohibit command means that an error has occurred in the sub-master CPU. In this case, if an error has occurred in another slave CPU, there is a high possibility that a serious error has occurred in the entire device control system. Therefore, in this embodiment, when a notification notifying the occurrence of an error is received from another control module, the level specified by the specifying unit is changed to a level indicating a higher severity than the error severity indicated by the level. To do. In S820, the slave CPU determines whether the specified restriction level is level 2. If it is level 2, the process proceeds to S821. In step S821, the slave CPU determines whether an error notification is received from another slave CPU with which the slave CPU is linked. The slave CPU functions as a determination unit that determines whether 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. If an error has occurred in other slave CPUs, it is presumed that a serious error has occurred in the device control system, and the process advances to step S811. In S811, an error handling method for level 1 having a higher severity than level 2 is executed. In this way, the level 2 specified in S820 is changed to level 1 indicating a higher severity than the error severity indicated by level 2.

一方で、連携している他のスレーブ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 level 1 nor level 2, the process advances to step S831. In S831, the slave CPU monitors its own operation state, waits until the operation state satisfies a precondition for executing the received control command, and executes the control command when the precondition is satisfied. Thus, the slave CPU functions as a monitoring unit that monitors the operating state of the first control module. Further, the slave CPU functions as an execution postponing unit that postpones the execution of the control command until the operation state monitored by the monitoring unit changes to a state in which the control command can be executed.

このように、本実施例によれば、許容されない動作状態、動作状態間の遷移または制御命令間の遷移などをリスト化しておくことで、実行を制約されるべき制御命令を適確に検出できるようになる。なお、実行を制約されるべき制御命令を検出できれば、その副次的な効果として、ある制御モジュールにおける異常動作が他の制御モジュールへ波及すること抑制できる効果も期待できよう。例えば、このような制御命令を実行せずに破棄したり、他の制御モジュールにエラーを通知したり、サブマスタ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 sub-master CPU 601 and the slave CPUs 602 and 603 and the operation states of the paper feed sensors 247 and 256 and the motors 606 and 611. is there. In particular, FIG. 9A shows a timing chart when a control instruction is normally issued, and FIG. 9B shows a timing chart when a restriction level 3 prohibition instruction is issued. At timing (A) in FIG. 9A, a sub-master CPU 601 issues a motor 611 stop command to the slave CPU 603. According to FIG. 7D, execution of a stop command for the motor 611 is prohibited when the registration sensor 256 is in an ON state. On the other hand, execution of a stop command for the motor 611 is permitted when the registration sensor 256 is in the OFF state. Therefore, the stop command at the timing (A) is executed, and the motor 611 stops. At timing (B) in FIG. 9B, a stop command for the motor 611 is issued. However, since the registration sensor 256 is in the ON state at the timing (b), this stop command is determined to be a prohibition command based on the list of FIG. Since the restriction level is 3, execution of the stop instruction is postponed. At the timing (C) when the registration sensor 256 shifts to the off state, the slave CPU executes a motor 611 stop command. At timing (D) in FIG. 9B, a control command for instructing the start of operation of the motor 607 is issued. According to the list of FIG. 7A, the motors 606 and 607 are prohibited from operating simultaneously. The restriction level is 2. Therefore, this control command is discarded when it is executed. Also, error notification is executed from the slave CPU 602 to the sub-master CPU 601. The sub master CPU 601 that has received the error notification may notify the master CPU 1001 of the occurrence of an abnormality. The master CPU 1001 may display an error occurrence on a display unit included in the operation unit 10 or may transmit error information to a host device via an external network (not shown). By notifying the operator and the host device of the error, it is possible to promptly recognize the occurrence of the error by the operator or the like. For example, if the error recurs even after the system reset is executed, the cause of the error may be repaired by maintenance by the operator.

図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 sub-master CPU 601. However, the slave CPUs 602 and 603 may autonomously execute control based on the operation state transition list as shown in FIG. 7C and FIG. 7E and other lists. In this case, the control command from the sub master CPU 601 can be only an operation start command. Further, there is an advantage that an error of the sub master CPU 601 is not easily propagated to the slave CPUs 602 and 603.

以上説明したように、本実施例の機器制御システムにおいては、異常動作に起因した制御命令を適確に検出することが可能となる。また、常動作に起因して制御命令の発行タイミングがずれてしまった場合も、禁止命令として検出することができる。また、エラーレベルの深刻度を反映して定義された制約レベルを導入することで、エラーレベルに応じて制御命令の取り扱い方法を切り替えることも可能となる。   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 slave CPUs 602 and 603 are integrated into one. In the list of FIG. 7A, only the exclusive operation of the paper feeding cassettes 240 and 241 is prohibited, but in the list of FIG. 10A, the simultaneous feeding of the paper feeding cassettes 240 and 241 and the manual paper feeding unit 253 is performed. Paper feeding operation is prohibited. Similarly, in FIG. 10B and FIG. 10C, the prohibit command is defined by three or more motors and sensors. Compared with the lists shown in FIG. 7B, FIG. 7C, FIG. 7D, FIG. 7E, and FIG. 7F, the prohibit command is set in more detail. In this way, it is possible to configure a safer system by grouping three or more modules operating in cooperation and defining a prohibition command. In addition, as described above, the prohibition instruction due to the abnormal operation may be detected not only by the slave CPU but also by another CPU. Further, in this embodiment, the abnormal operation in each control module is detected by detecting the prohibit command. However, the abnormal status may be detected by comparing the status of each control module, replacing each status with the status of the entire system, and comparing the status of the entire system with the list that defines the prohibit command. .

上述した実施例では、第1搬送モジュール280について説明したが、同様の技術思想は、第2搬送モジュール281、作像モジュール282および定着モジュール283にも適用できる。さらに、マスタCPU1001と、サブマスタCPU601、701、801、901との間にも同様の技術思想を適用してもよい。例えば、マスタCPU1001からの制御命令についてサブマスタCPU601は上述の異常動作の検出を実行することになる。この場合、スレーブCPU間でのエラー通知はサブマスタCPU間で実行されることになる。   In the embodiment described above, the first transport module 280 has been described, but the same technical idea can be applied to the second transport module 281, the image forming module 282, and the fixing module 283. Furthermore, the same technical idea may be applied between the master CPU 1001 and the sub-master CPUs 601, 701, 801, and 901. For example, the sub-master CPU 601 executes detection of the abnormal operation described above for a control command from the master CPU 1001. In this case, error notification between slave CPUs is executed between sub-master CPUs.

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制御モジュールは、
前記検出手段によって実行を制約されるべき制御命令が検出されると、該制御命令を実行せずに破棄する破棄手段をさらに備えることを特徴とする請求項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制御モジュールは、
前記検出手段によって実行を制約されるべき制御命令が検出されると、前記複数の制御モジュールのうち前記通信線を介して接続された他の制御モジュールに対して異常が発生していることを示す通知を送信する送信手段をさらに備えることを特徴とする請求項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制御モジュールの動作状態を監視する監視手段と、
前記検出手段によって実行を制約されるべき制御命令が検出されると、前記監視手段によって監視された動作状態が該制御命令を実行可能な状態に変化するまで、該制御命令の実行を延期する実行延期手段と
をさらに備えることを特徴とする請求項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リスト、前記第2リストおよび前記第3リストのそれぞれには、前記実行を制約されるべき制御命令に対応したエラーの深刻度を示すレベルが登録されており、
前記複数の制御モジュールのうち少なくとも第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.
前記複数の制御モジュールのうち少なくとも第1制御モジュールは、
前記複数の制御モジュールのうち前記第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.
JP2010059925A 2010-03-16 2010-03-16 Equipment control system Expired - Fee Related JP5513186B2 (en)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014021444A (en) * 2012-07-23 2014-02-03 Canon Inc Information processing system

Citations (5)

* Cited by examiner, † Cited by third party
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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