JPH04176549A - Diagnostic method for failure of production line - Google Patents

Diagnostic method for failure of production line

Info

Publication number
JPH04176549A
JPH04176549A JP2304023A JP30402390A JPH04176549A JP H04176549 A JPH04176549 A JP H04176549A JP 2304023 A JP2304023 A JP 2304023A JP 30402390 A JP30402390 A JP 30402390A JP H04176549 A JPH04176549 A JP H04176549A
Authority
JP
Japan
Prior art keywords
block
time
motion
program
failure
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
JP2304023A
Other languages
Japanese (ja)
Other versions
JP3096056B2 (en
Inventor
Toshiharu Sakamoto
俊治 坂本
Toshihiko Hoshino
星野 俊彦
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.)
Mazda Motor Corp
Original Assignee
Mazda Motor Corp
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 Mazda Motor Corp filed Critical Mazda Motor Corp
Priority to JP02304023A priority Critical patent/JP3096056B2/en
Priority to EP91114592A priority patent/EP0473174B1/en
Priority to DE69119327T priority patent/DE69119327T2/en
Priority to KR1019910015192A priority patent/KR950001413B1/en
Publication of JPH04176549A publication Critical patent/JPH04176549A/en
Priority to US08/270,225 priority patent/US5410469A/en
Application granted granted Critical
Publication of JP3096056B2 publication Critical patent/JP3096056B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Abstract

PURPOSE:To specify a failure part in a production line by comparing the possible motion time of a ladder program element with the actual motion time spent for changing of the ON/OFF states of a confirmation device for confirming the motion of the output device of the ladder program element. CONSTITUTION:In the case of there having been an actuator motion completion the proper block number (i) and step number informed from a ladder program side are read. And from this block number (i) the timer value TSsi, TSei and from a motion step map the execution prediction time tau of the proper motion step, are read, and an elapsed time TS,Y is operated. In the case of it being decided as TSxi-tau>delta0 (delta0 is constant), the motion block belongs to the motion step thereof is marked as failure, and the renewal of the prediction time tauis performed. Also, the motion step marked as under execution is searched, the elapsed time upto the present is calculated, and the proper block is marked as a step hungup failure, in case of Tp-TSsi>delta1 (delta1 is a constant).

Description

【発明の詳細な説明】[Detailed description of the invention] 【産業上の利用分野】[Industrial application field]

本発明は、生産ラインの故障診断方法に関し、特に、シ
ーケンサにより制御される生産ラインにおける故障部位
の特定の改良に関する。
The present invention relates to a method for diagnosing a fault in a production line, and in particular to an improvement in identifying a faulty part in a production line controlled by a sequencer.

【従来の技術】[Conventional technology]

自動車の組立ラインの如くの生産ラインにおいて、設置
された種々の設備に対してコンピュータを内蔵したシー
ケンス制御部を設け、かかるシーケンス制御部により各
設備が順次行なうべき動作についてのシーケンス制御を
行なうようにすることが知られている。かかるシーケン
ス制御が行なわれる際には、シーケンス制御部に内蔵さ
れたコンピュータに制御プログラムがロードされ、シー
ケンス制御部が生産ラインに設置された種々の設備の夫
々に対する動作制御の各段階をシーケンス動作制御プロ
グラムに従って順次進めてい(。 このような生産ラインに設置された種々の設備の動作に
ついてのシーケンス制御が行われるにあたっては、その
制御状態を監視して各設備における故障を検知する故障
診断が、シーケンス制御に並行して行われるようにされ
ることが多い。そして、シーケンス制御に関連した故障
診断は種々の形式がとられている。例えば、特開昭60
−238906号公報には、設備が正常に作動している
状態におけるシーケンス制御回路部の構成要素の動作態
様を基準動作態様として予め設定しておき、設備の実際
の作動時におけるシーケンス制御回路部の構成要素の動
作態様を上記基準動作態様と順次比較していき、その差
に基づいて故障検出を行うようなことが、シーケンス制
御に関連した故障診断の一つとして提案されている。 上記故障検出は、完全に停止してしまったような故障に
対して有効であるが、完全停止に至らないような軽故障
、例えば、設備が経年変化により、その動作に多少多く
の時間がかかるような故障に対しては、そのような軽故
障のパターンを全て基準動作態様として記憶することは
不可能なので実質的に無力である。 このような軽故障を検出する手法として、所謂「トラッ
プ法Jと呼ばれる故障診断方法も提案されている。この
トラップ法は、シーケンス制御ラダープログラムにおけ
る出力デバイスに出力にあったことをもってタイマを起
動し、このタイマがタイムアウトするまでの時間内に、
出力デバイスの動作を確認する確認デバイスが作動する
か否かを確認する監視ラダープログラムを作成するもの
である。
In a production line such as an automobile assembly line, a sequence control unit with a built-in computer is provided for the various installed equipment, and the sequence control unit performs sequence control of the operations that each equipment should perform sequentially. It is known to do. When such sequence control is performed, a control program is loaded into a computer built into the sequence control unit, and the sequence control unit performs sequence operation control on each stage of operation control for each of the various equipment installed on the production line. When sequence control is performed on the operation of various equipment installed on a production line, failure diagnosis is performed to monitor the control status and detect failures in each equipment. It is often performed in parallel with control.There are various forms of fault diagnosis related to sequence control.For example, Japanese Patent Laid-Open No. 60
Publication No. 238906 states that the operation mode of the components of the sequence control circuit section when the equipment is operating normally is set in advance as the standard operation mode, and the operation mode of the sequence control circuit section when the equipment is actually operating is set in advance. As one method of fault diagnosis related to sequence control, it has been proposed to sequentially compare the operation mode of a component with the reference operation mode and detect a failure based on the difference. The above failure detection is effective for failures that cause a complete stop, but for minor failures that do not result in a complete stop, for example, equipment that takes a little longer to operate due to aging. For such failures, it is virtually impossible to store all the patterns of such minor failures as standard operating modes, so it is virtually powerless. As a method for detecting such minor faults, a fault diagnosis method called "Trap Method J" has also been proposed. This trap method starts a timer based on the presence of an output on an output device in a sequence control ladder program. , before this timer times out,
A monitoring ladder program is created to check whether a checking device that checks the operation of an output device is working.

【発明が解決しようとする課題】[Problem to be solved by the invention]

ところが、上述のトラップ法では、個々のラダープログ
ラム要素に対して、その各々に対してトラップ用のラダ
ープログラムを作成する必要があり、このことは極めて
効率の悪いことである。 そこで、本発明の目的は、故障検出用のラダープログラ
ムが個々の設備に対して不要で、しかも、故障検出を的
確に行なうこ−とのできる生産ラインの故障診断方法を
提案するものである。 本発明の更なる目的は、経時変化により設備の動作に時
間変化が生じるような場合に対しても対処することので
きる生産ラインの故障診断方法を提案するものである。
However, in the trap method described above, it is necessary to create a trap ladder program for each individual ladder program element, which is extremely inefficient. SUMMARY OF THE INVENTION Therefore, an object of the present invention is to propose a production line fault diagnosis method that does not require a fault detection ladder program for each piece of equipment, and that can accurately detect faults. A further object of the present invention is to propose a production line failure diagnosis method that can deal with cases where the operation of equipment changes over time due to changes over time.

【課題を達成するための手段及び作用】上記課題を達成
するための本発明の構成は、個々の設備の動作を記述し
たマツプに基づいて作成したラダープログラムに従って
制御される生産ラインにおいて、前記マツプに、前記側
々の設備の動作に対応する個々のラダープログラム要素
の予想動作時間を前もって格納し、前記ラダープログラ
ム要素の出力デバイスの動作を確認するための確認デバ
イスのオン/オフ状態が変化するのに要した実動作時間
と前記予想動作時間とを比較することにより、生産ライ
ンにおける故障部位を特定することを特徴とする。 上記発明の故障診断方法によれば、予想時間はマツプ化
でき、しかも、実際の動作時間との比較だけで、故障判
定が行なえる。換言すれば、ラダープログラム側には、
従来のようなタイマ監視回路は不要となる。 また、予想動作時間を実動作時間に基づいて補正するこ
とにより、予想動作時間を実動作時間に併せて修正がで
き、経年変化があっても精度の高い故障診断が行なえる
。 以下余白
[Means and operations for achieving the object] The configuration of the present invention for achieving the above object is such that a production line controlled according to a ladder program created based on a map that describes the operation of individual equipment, pre-storing the expected operating time of each ladder program element corresponding to the operation of said side equipment, and changing the on/off state of a verification device for verifying the operation of the output device of said ladder program element; The present invention is characterized in that a faulty part in the production line is identified by comparing the actual operating time required for the production line with the predicted operating time. According to the fault diagnosis method of the above invention, the predicted time can be mapped, and moreover, a fault can be determined simply by comparing it with the actual operating time. In other words, on the ladder program side,
A conventional timer monitoring circuit is not required. Further, by correcting the expected operating time based on the actual operating time, the expected operating time can be corrected in accordance with the actual operating time, and even if there is a change over time, highly accurate failure diagnosis can be performed. Margin below

【実施例】【Example】

以下添付図面を参照して、本発明を自動車の生産ライン
のためのシーケンス制御/故障診断に適用した場合の実
施例を説明する。 この実施例システムは、第1図に示すように、シーケン
ス制御のためのラダープログラムならびに復旧用プログ
ラムを自動生成するサブシステム106と、生成された
ラダープログラムを実行するサブシステム101と、故
障を検出するサブシステム104と、検出された故障に
基づいて故障部位を特定して故障診断を行なうサブシス
テム105と、システムを復旧する復旧サブシステム1
03とを有する。 第1図は本実施例のシステムを概念的に説明する。ステ
ップラダープログラム101は、シーケンサ等にロード
されて、設備100を制御するためのプログラムであり
、自動生成サブシステム106により生成される。この
プログラム101の実行は監視サブシステム104によ
りモニタされ、設備100における故障が検出される。 本実施例の故障検出サブシステム104では、rブロッ
クハングアップjと1ステツプタイムオーバ」と1ステ
ツプハングアツプjという3種類の故障が検出され、こ
れらの検出手順については、後程、図面に基づいて説明
されるであろう。「ブロックハングアップjは、1つの
動作ブロック(この「動作ブロック」の概念については
、第6図に関連して説明する)からそれに続く他の動作
ブロックに遷移する過程で発生するハングアップであり
、従来技術では検出不可能であったものである。また、
「ステップタイムオーバ」や「ステップハングアップ」
とは、ある動作ステップ(この「動作ステップ」の概念
については、第8図に関連して説明する)においての経
過時間が予想よりも長過ぎたか、その動作ステップでハ
ングアップしたような故障である。これらの「ブロック
ハングアップ」や「ステップタイムオーバ」や「ステッ
プハングアップ」という故障を検出するために、本故障
検出サブシステム104では、後述するように、「ブロ
ックタイマカウンタ」や「ステップタイマカウンタ」な
るものを導入している。 故障診断サブシステム105は、モニタシステム104
により故障を更に解析して故障部位(故障の発生した動
作ステップ)を特定する。この故障診断のための手順も
、後程、図面に基づいて説明されるであろう。復旧サブ
システム103は、診断サブシステム105により特定
された動作ステップに最も適切な復旧プログラム102
を起動してシステムを復旧するものである。この復旧プ
ログラム102は、自動生成サブシステム106が後述
の「動作ブロックマツプ」や「動作ステップマツプj等
に基づいて作成する。この復旧サブシステム及び復旧プ
ログラムの自動生成の説明により、従来では困難であっ
た、復旧プログラムの自動作成及び的確な自動復旧が本
システムにおいて実現されることが理解されるであろう
。 先ず、シーケンス制御プログラム101の制御対象とな
る車両組立ラインについて説明する。次に、シーケンス
制御プログラムの自動生成サブシステム106を説明す
ることにより、本実施例の故障診断に重要な概念である
動作ブロックと動作ステップについて言及する。そして
、その後に、本実施例の特徴部分である故障検出/故障
診断/復旧について説明する。 肛ユ二ヱ上 先ず、生成されるべきシーケンス制御プログラムの制御
対象となる車両組立ラインの一例について、第2図及び
第3図を参照して述べる。 第2図及び第3図に示される車両組立ラインは、例示的
に、3つのステーションSTI、ST2、ST3からな
る。位置決めステーションST1は、車両のボディ11
を受台12上に受け、受台12の位置を制御して受台1
2上におけるボディ11との位置決めを行う。ドツキン
グステーションST2は、パレット13上における所定
の位置に載置されたエンジン14とフロントサスペンシ
ョンアッセンブリ(不図示)とリアサスペンションアッ
センブリ15とボディ11とを組み合わせる。締結ステ
ーションST3は、ボディ11に対して、これにSTに
て組み合わされたエンジン14とフロントサスペンショ
ン組立15とを、螺子を用いて締結固定留する。また、
位置決めステーションSTIとドツキングステーション
ST2との間には、ボディ11を保持して搬送するオー
バーヘッド式の移載位置16が設けられている。 ドツキングステーションST2と締結ステーションST
3との間には、パレット13を搬送するパレット搬送位
置17が設けられている。 位置決めステーションSTIにおける受台12は、レー
ル18に沿って往復走行移動する。位置決めステーショ
ンSTIには、受台12をレール18に直交する方向(
車幅方向)に移動させることにより、受台12上に載置
されたボディ11を、その前部の車幅方向についての位
置決めを行う位置決め手段(BF)並びにその後部の車
幅方向の位置決めを行う位置決め手段(B R)と、受
台12をレール18に沿う方向(前後方向)に移動させ
ることにより、その前後方向における位置決めを行う位
置決め手段(TL)とが設けられている。さらに、ST
Iには、ボディ11における前方左右部及び後方左右部
に係合することにより、ボディ11の、受台12に対す
る位置決めを行う昇降基準ビン(FL、FR,RL、R
R)が設けられている。そして、これらの位置決め手段
及び昇降基準ビンによって、位置決めステーションST
Iにおける位置決め装置19が構成されている。即ち、
これらの位置決め手段及び昇降基準ビンが、シーケンス
制御プログラムの位置決め装置19についての制御対象
となる。 移載装置16は、位置決めステーションSTIとドツキ
ングステーションST2との上方において両者間に掛は
渡されて配されたガイドレール20と、ガイドレール2
0に沿って移動するキャリア21とから成る。キャリア
21には、昇降ハンガーフレーム21Bが取り付けられ
ていて、ボディ11は昇降ハンガーフレーム22により
支持される。昇降ハンガーフレーム22には、第4図に
示されるように、左前方支持アーム22FL、右前方支
持アーム22FRが夫々一対の前方アームクランプ部2
2Aを介して取付けられている共に、左後方支持アーム
22RL、右後方支持アーム22RR(不図示)が夫々
一対の前方アームクランプ部22Bを介して取付けられ
ている。左前方支持アーム22FL、右前方支持アーム
22FRの夫々は、前方アームアームクランプ部22A
を回動中心として回動し、前方アームクランプ22Aに
よるクランプが解除された状態においては、ガイドレー
ル20に沿って伸びる位置を取り、また、前方アームク
ランプ部22Aによるクランプがなされるときには、第
4図に示される如く、ガイドレール20に直交する方向
に伸びる位置をとる。同様に、左後方支持アーム22R
L。 右後方支持アーム22RRの夫々も、後方アームクラン
プ部22Bを回動中心として回動し、後方アームクラン
プ部22Aによるクランプが解除された状態においては
、ガイド20に沿って伸びる位置をとり、また、後方ア
ームクランプ部22Bによるクランプがなされるときに
は、ガイドレール20に直交する方向に伸びる位置をと
る。 移載装置16にボディ11が移載されるにあたっては、
移載装置16が、第2図において一点鎖線により示され
るように、レール18の前端部上方の位置(原位置)に
、左前方支持アーム22FL、右前方支持アーム22F
Hの夫々が前方アームクランプ部22Aによるクランプ
が解除されてガイドレール20に沿って伸びる。また、
左後方支持アーム22RL、右後方支持アーム22RR
の夫々が後方アームクランプ部22Bによるクランプが
解除されてガイドレール20に沿って伸びて、その後、
昇降ハンガーフレーム21Bが下降せしめられる。かか
る状態で、ボディ11が載置された受台12が、レール
18に沿ってその前端部にまで移動せしめられ、降下さ
れていた移載装置16の昇降ハンガーフレーム21Bに
対応する位置を取るようにされる。そして、左前方支持
アーム22FL、右前方支持アーム22FHの夫々が、
回動されてボディ11の前部の下方においてガイドレー
ル20に直交する方向に伸びる位置をとって、前方アー
ムクランプ部22Aによるクランプがなされた状態とな
る。また、左後方支持ア−ム22 RL、右後方支持ア
ーム22RRの夫々が、回動されてボディ11の後部の
下方においてガイドレール20に直交する方向に伸びる
位置をとって、後方アームクランプ部22Bによるクラ
ンプがなされた状態となる。その後、昇降ハンガーフレ
ーム21Bが上昇させられて、第4図に示されるように
、ボディ11が、移載装置16の昇降ハンガーフレーム
21Bに取付けられた左前方支持アーム22FL、右前
方支持アーム22FRと左後方支持アーム22RL、右
後方支持アーム22RRとにより支持される。 また、パレット搬送装置17は、夫々パレット13の下
面を受ける多数の支持ローラ23が設けられた一対のガ
イド部24L及び24Rと、このガイド部24L及び2
4Hに夫々並行に延設された一対の搬送レール25L及
び25Rと、各々がパレット13を係止するパレット係
止部26を有し、夫々搬送レール25L及び25Rに沿
って移動するものとされたパレット搬送台27L及び2
7Rと、これらのパレット搬送台27L及び27Rを駆
動するりニアモータ機構(図示は省略されている)とを
備える。 ドツキングステーションST2には、フロントサスペン
ションアセンブリ及びリアサスペンションアッセンブリ
15の夫々の組み付は時において、フロントサスペンシ
ョンアッセンブリのストラット及びリアサスペンション
アッセンブリ15のストラット15Aを夫々支持して組
付姿勢をとらせる一対の左右前方クランプアーム30L
及び30Rと、及び、一対の左右後方クランプアーム3
1L及び31Rとが設けられている。この左右前方クラ
ンプアーム30L及び30Rは、夫々、搬送レール25
L及び25Hに直交する方向に進退勤可能に、取付板部
32L及び32Rに取り付けられるとともに、左右後方
クランプアーム31L及び31Rは、夫々、取付板部3
3L及び33Rに、搬送レール25L及び25Hに直交
する方向に進退勤可能に取り付けられている。左右前方
クランプアーム30L及び30Rの相互対向先端部と、
左右後方クランプアーム31L及び31Rの相互対向先
端部とは、夫々、フロントサスペンションアッセンブリ
のストラットもしくはリアサスペンションアッセンブリ
15のストラット15Aに係合する係合部を有する。そ
して、前記取付板部32Lは、アームスライド34Lに
より固定基台35Lに対して、搬送レール25L及び2
5Rに沿う方向に移動可能とされる。取付板部32Rは
アームスライド34Rにより固定基台35Rに対して、
搬送レール25L及び25Rに沿う方向に移動可能とさ
れる。取付板部33Lは、アームスライド36Lにより
固定基台37Lに対して、搬送レール25L及び25H
に沿う方向に移動可能とさ゛れる。さらに、取付板部3
3Rは、アームスライド36Rにより固定基台37Rに
対して、搬送レール25L及び25Hに沿う方向に移動
可能とされている。従って、左右前方クランプアーム3
0L及び30Rは、それらの先端部がフロントサスペン
ションアッセンブリのストラットに係合した状態のもと
で、前後左右に移動可能となる。また、左右後方クラン
プアーム31L及び31Rは、それらの先端部がリアサ
スペンションアッセンブリ15のストラット15Aに係
合した状態のもとで、前後左右に移動可能となる。また
、これらの左右前方クランプアーム30L及び30R,
アームスライド34L及び34R9左右後方クランプア
ーム31L及び31R1及びアームスライド36L及び
36Rが、ドツキング装置40を構成している。 さらに、ドツキングステーションST2には、搬送レー
ル25L及び25Hに夫々平行に伸びるように設置され
た一対のスライドレール41L及び41Rと、このスラ
イドレール41L及び41Rに沿ってスライドするもの
とされた可動部材42、可動部材42を駆動するモータ
43等から成るスライド装置45とが設けられている。 このスライド装置45における可動部材42には、パレ
ット13上に設けられた可動エンジン支持部材(図示は
省略されている)に係合する係合手段46と、パレット
13を所定の位置に位置決めするための2個の昇降パレ
ット基準ピン47とが設けられている。スライド装置4
5においては、移載装置16における昇降ハンガーフレ
ーム22により支持されたボディ11に、パレット13
上に配されたエンジン14.フロントサスペンションア
ッセンブリ及びリアサスペンションアッセンブリ15と
を組み合わせる際に、その係合手段46が昇降パレット
基準ビン47により位置決めされたパレット13上の可
動エンジン支持部材に係合した状態で前後動せしめられ
、それにより、ボディ11に対してエンジン14を前後
動させて、ボディ11とエンジン14との干渉を回避す
るようになっている。 締結ステーションST3には、ボディ11に、これに組
み合わされたエンジン14及びフロントサスペンション
アッセンブリを締結するための螺子締め作業を行うため
のロボット48Aと、ボディ11に、これに組み合わさ
れたリアサスペンションアッセンブリ15を締結するた
めの螺子締め作業を行うためのロボット48Bとが配置
されている。さらに、締結ステーションST3において
は、パレット13を所定の位置に位置決めするための2
個の昇降パレット基準ビン47が設けられている。 第2図乃至第4図により説明した車両組立ラインにおい
て、位置決めステーションSTIにおける位置決め装置
19.移載装置16、そして、ドツキングステーション
ST2におけるドツキング装置40及びスライド装置4
5.パレット搬送装置17、そして、締結ステーション
ST3におけるロボット48A及び48Bは、それらに
接続されたシーケンス制御部により、本実施例のプログ
ラム生成装置によって生成されたシーケンス制御プログ
ラムに基づいてシーケンス制御が行われる。即ち、これ
らの上記位置決め装置19.移載装置16等は、シーケ
ンス制御対象の“設備”とされる。 シーケンスビプログラムの 重 第2図の生産ラインにおける組立動作は、即ち、上記の
シーケンス制御対象の”設備”の全てが行う動作は複数
の“動作ブロック”に分解することができる。ここで“
動作ブロック”とは、■:複数の単位動作の集合である と定義することができる。動作ブロックの最も重要な性
質は、 ■:ある動作ブロックの開始から終了に至るまでの中間
過程で、他の動作ブロックから独立して干渉を受けるこ
となく、動作を完結することができるということである
。 この■、■の性質のために、動作ブロックを1つのブロ
ック(かたまり)として表記することが可能となる。換
言すれば、動作ブロックは、動作ブロックのレベルにお
いてのみ、他の動作ブロックと関係する。動作ブロック
が動作を開始できるためには、他の動作ブロックにおけ
る動作の終了が必要となる。この他の動作ブロックは、
1つの場合もあれば、複数の場合もあろう。即ち、1つ
の動作ブロックの動作終了がそれに連結する別の動作ブ
ロック(1つまたは複数の動作ブロック)の起動条件に
なったり、複数の動作ブロックの動作終了が起動条件に
なったりするということである。 また、上記性質によれば、1つの動作ブロックにおける
動作の中間段階で、他の動作ブロックに対して起動をか
けるということはない。また、1つの動作ブロックの中
間段階で、他の動作ブロックからの起動を待つというこ
ともない。 上記■、■の動作ブロックの定義から、次の付随的な動
作ブロックの性質■を導くことができる。 ■:動作ブロックは、上記■、■の性質を満足する単位
動作の集合のなかで、最大のものであることが望まし゛
い。 この■の性質は絶対的に必要なものではない。 しかし、■を満足すると、生産ラインを記述する動作ブ
ロックの数が減り、工程全体の記述が単純化され、大変
見易いものとなる。 第2図、第3図に示した生産ラインを、■乃至■の条件
を満足する動作ブロックにより記述すると、以下の如(
に、AO−A4と、BO〜Bllの17個の動作ブロッ
クが得られる。 上記17個の動作ブロックのうち、BO−B11の12
個の動作ブロックについて夫々説明する。 ブロックBO:受台12とその上のボディ11−の、位
置決め装置19による位置決めを行う動作ブロック。こ
の動作ブロックを受台位置決めブロックと呼ぶ。 ブロックB1:移載位置16による、ボディ11の移載
のための準備を行う動作ブロック。この動作ブロックを
移載装置準備ブロックと呼ぶ。 ブロックB2:ドツキング装置40が、左右前方クラン
プアーム30L、30Rでもってフロントサスペンショ
ンアッセンブリのストラットをクランプし、また、左右
後方クランプアーム31 L。 31Rでもってリアサスペンションアッセンブリ15の
ストラット15Aをクランプするための準備を行う動作
ブロック。この動作ブロックをストラットクランプ準備
ブロックと呼ぶ。 ブロックB3:位置決め装置19による位置決めがなさ
れた受台12上のボディ11が、移載装置16における
昇降ハンガーフレーム22へと移載され、搬送される状
態とされる動作ブロック。この動作ブロックを移載装置
受取りブロックと呼ぶ。 ブロックB4ニスライド装置45による、その可動部材
42に設けられた係合手段46をパレット13上の可動
エンジン支持部材に係合させるための準備を行う動作ブ
ロック。この動作ブロックをスライド装置準備ブロック
と呼ぶ。 ブロックB5:位置決め装置19により、受台12を原
位置に戻す動作ブロック。この動作ブロックを受台原位
置戻しブロックと呼ぶ。 ブロックB6:移載装置16の昇降ハンガーフレーム2
2により支持されたボディ11に対して、パレット13
上に配されたエンジン14と、パレット13上に配され
左右前方クランプアーム30L、30Rによりクランプ
されたフロントサスペンションアッセンブリのストラッ
トと、左右後方クランプアーム31L、31Rによりク
ランプされたリアサスペンションアッセンブリ15のス
トラット15Aとを組み合わせる動作ブロック。この動
作ブロックをエンジン/サスペンション・ドツキングブ
ロックと呼ぶ。 ブロックB7:移載装置16が原位置に戻る動作ブロッ
ク。この動作ブロックを移載装置原位置戻りブロックと
呼ぶ。 ブロックB8:ドッキング装置40による、左右前方ク
ランプアーム30L、30Rと、左右後方クランプアー
ム31L、31Rとの夫々を原位置に戻す動作ブロック
。この動作ブロックをクランプアーム原位置戻しブロッ
クと呼ぶ。 ブロックB9:パレット搬送装置17がリニアモータを
動作させて、エンジン14.フロントサスペンションア
ッセンブリ、リアサスペンションアッセンブリ15が組
み合わされたボディ11が載置されたパレット13を締
結ステーションST3へ搬送する動作ブロック。この動
作ブロックをリニアモータ推進ブロックと呼ぶ。 ブロックB10:ロボット48Aによる、ボディ11に
組み合わされたエンジン14とフロントサスペンション
アッセンブリとをボディ11に締結するための螺子締め
作業を行う動作ブロック、この動作ブロックを螺子締め
第1動作ブロックと呼ぶ。 ブロックB11:ロボット48Bによる、ボディ11に
組み合わされたリアサスペンションアッセンブリ15を
ボディ11に締結するための螺子締め作業を行う動作ブ
ロック。この動作ブロックを螺子締め第2ブロツクと呼
ぶ。 第5図は、第2図〜第4図に示された生産ラインにおけ
る、AO〜A4とBO〜Bllの17個の動作ブロック
間の関連を示したものである。この第5図は、第2図〜
第4図に示された生産ラインのシーケンス制御プログラ
ムを作成しようとするプログラマが、この生産ラインに
おける動作を分析した上で作成したものである。 第5図において、移載装置16のブロックB3は、位置
決め装置19の動作ブロックBOと移載装置16の動作
ブロックBlとから2つのラインが引かれている。この
線は、ブロックB3が、位置決め装置19にて、受台1
2とその上のボディ11の位置決め動作(動作ブロック
BO)が終了し、移載位置16にて、ボディ11の移載
準備(動作ブロックBl)が終了してから起動されると
いうことである。換言すれば、動作ブロックBOとB1
とは並列動作を行なう。 上述の動作ブロックBO〜Bllの夫々は、夫々が出力
動作を伴う複数の動作ステップに区分される。ここで、
動作ステップとは、出力動作を伴なうことを要件とする
。但し、動作ステップは動作ブロックの構成要素である
から、1つの動作ブロック内の動作ステップは、他の動
作ブロックの動作ステップに対して出力動作を行なうこ
とはない。 例えば、受台位置決め動作ブロックBOについては、以
下の如くにBO30−BO39の10個の動作ステップ
に区分される。 BOSO: 動作ブロックBOが起動されるための各種条件を確認す
る動作ステップ(条件確認動作ステップと呼ぶ)。 BO3I: 位置決め手段BFにより受台12が移動されて、ボディ
11の前部の車両方向における位置決めが行われる動作
ステップ(BF位置決め動作ステップ)。 BO32+ 位置決め手段BRにより受台12が移動されて、ボディ
11の後部の車幅方向における位置決めが行われる動作
ステップ(BR位置決め動作ステップ)。 BO33: 位置決め手段TLにより受台12が移動されて、ボディ
11のレール18に沿う方向(前後方向)における位置
決めが行われる動作ステップ(TL位置決め動作ステッ
プ)。 BO34: 昇降基準ビンFLがボディ11の前方左側部に係合する
動作ステップ(FL係合動作ステップ)。 BO35: 昇降基準ビンFRがボディ11の前方右側部に係合する
動作ステップ(FR係合動作ステップ)。 BO36: 昇降基準ビンRLがボディ11の後方左側部に係合する
動作ステップ(RL係合動作ステップ)。 BO37: 昇降基準ビンRRがボディ11の後方右側部に係合する
動作ステップ(RR係合動作ステップ)。 BO38: 位置決め手段BFがボディ11の前部の車幅方向におけ
る位置決めをした後に、原位置に戻る動作ステップ(B
F原位置戻り動作ステップ)。 BOS9 : 位置決め手段BRがボディ11の後部の車幅方向におけ
る位置決めをした後に、原位置に戻る動作ステップ(B
R原位置戻り動作ステップ)。 第2図の生産ラインの動作ステップの一例を第8図に示
す。 第9A図は、第2図の生産ラインの例えば昇降基準ビン
等を駆動する動作回路素子を表わす。このような素子に
おける入力は、この素子の機械要素としてのソレノイド
を駆動するための入力信号Yoであり、このY。はシー
ケンスラダープログラム要素からの出力である。また、
この素子がらの出力として、素子の作動状態を確認する
ために、駆動された事を確認するためのリミットスイッ
チからの出力(出力確認L/S)と、原位置に戻された
ことを確認するためのリミットスイッチからの出力(戻
り確認L/S)がある。 第9B図は、第9A図の素子の出力駆動動作の論理を説
明する図である。ソレノイドがオンするためには、イン
ターロック条件ILCが満足されることである。インタ
ーロック条件ILCは、−般に、その動作ステップに特
有の種々の起動条件を含む。 第9C図は全体シーケンスを自動生成する際に用いる定
型的な動作回路の一例を示す。第9C図において、条件
MAは自動モード(生産ラインがシーケンス制御プログ
ラムに従って動作するモードである)でこの動作回路が
動作しているときは閉じられる。条件M3は手動モード
でこの動作回路が動作しているときに閉じられる。M3
は通常閉じられている。従って、通常の自動モードでは
、インターロック条件ILC,とxlが満足されれば、
出力Y。が出力される。一方、I LC。 は手動モードにおける動作条件の論理を記述する。手動
モードでは、接点M、が開(ので、条件X、、ILC,
が同時に満足するか、条件X−2XIが同時に満足すれ
ば、Yoは出力される。−般に、X、は、手動動作のイ
ンターロック条件工LC,を殺すための論理である。 以上のことから明らかなように、接点条件MA、 Mm
 、X +等はいかなる生産ラインにも共通なものであ
るので、システムがプログラマの手を煩わすことなく定
型的に設定できるものである。 第12図は、第1図で説明した実施例システムを、ハー
ドウェア構成の観点から改めて書き直した一例のもので
ある。シーケンス制御/故陣診断/復旧のための本シス
テムは、第12図に示すように、シーケンス制御対象設
備50(第1図の設備100に対応)に接続されて、そ
れに対するシーケンス動作制御を行うシーケンス制御部
51 (第1図のシーケンサ101に対応)と、自動生
成部90(第1図のサブシステム106に対応)と、故
障診断部52(第1図のサブシステム103.104,
105に対応)と、CRT (陰極線管)操作盤部53
とから成る。 シーケンス制御部51は、シーケンス動作制御ラダープ
ログラム(第11図)が格納されるプログラムメモリ5
5、及び、送受信インターフェース54を備えるコンピ
ュータを内蔵する。故障診断部52は、パスライン61
を通じて接続された中央処理ユニット(CPU)62.
メモリ63゜入出力インターフェース(I10インター
フェース)64及び送受信インターフェース65を有し
ており、さらに、I10インターフェース64に接続さ
れたキーボード66、デイスプレィ用のCRT67及び
プリンタ68が備えられている。また、CRT操作盤部
53は、パスライン71を通じて接続されたCPU72
.メモリ73.送受信インターフェース74及び75、
及び、I10インターフェース76を有しており、さら
に、I10インターフェース76に接続された補助メモ
リとしてのハードディスク装置77、デイスプレィ用の
CRT78及びデータ及び制御コード入力用のキーボー
ド79、及び、送受信インターフェース74に接続され
たタッチパネル80が備えられている。タッチパネル8
0はCRT78のフェースプレート部外面に取り付けら
れている。 また、自動生成部90は、シーケンス制御用のラダープ
ログラム(第11図)ならびに復旧用のラダープログラ
ムを自動生成する部分である。尚、シーケンス制御用の
ラダープログラムを自動生成するサブシステムについて
は、本出願人から、特願平1−253991 (rシー
ケンス制御プログラムの自動作成装置」が出願されてい
る。 シーケンス制御部51が内蔵するコンピュータに備えら
れた送受信インターフェース54と故障診断部52に設
けられた送受信インターフェース65及びCRT操作盤
部53に設けられた送受信インターフェース75の夫々
とが相互接続され、さらに、故障診断部52に設けられ
た送受信インターフェース65とCRT操作盤部53に
設けられた送受信インターフェース75と、自動生成部
90のインターフェース96とが相互接続されている。 また、故障診断部52は、シーケンス制御部51から送
受信インターフェース54及び65を通じて、シーケン
ス制御部51におけるシーケンス動作制御ラダープログ
ラム及びシュミレーションプログラムの作動状態をあら
れすプログラム処理データを受は取り、それをCPU6
2により処理して、プログラム処理データに基づく表示
信号及び出力信号を得、I10インターフェース64を
通じて、表示信号をCRT67に、また、出力信号をプ
リンタ68に夫々供給する。 続いて、上述の如くの車両組立ラインの各設備の動作に
対してシーケンス制御を行なうためのシーケンス制御プ
ログラムを自動作成するための手順を概略的に説明する
。 かかる制御プログラムの自動生成に必要なデータは、定
型の「ステップラダーパターン」と「入出カマツブ」と
前述の「動作ブロックマツプ」。 「動作ステップマツプ」である。定型ステップラダーパ
ターンとは、生産ラインの制御プログラムに必要な全て
の動作を表記する動作回路のシンボルを記憶するデータ
ベースである。このような定型パターンの例は前述の第
9C図のようなものである。 入出カマツブとは、−船釣に生産ラインに使われる可能
性のある多(の動作回路についての、その各々の入力出
力関係を記述したデータベースである。この入出カマツ
ブデータベースの一例を第7図に示す。上記の定型ステ
ップラダーパターンデータベースと入出カマツブデータ
ベースは、生産ラインに共通なデータであり、ある特定
の生産ラインに固有なデータではない。 固有なデータは動作ブロックマツプデータと動作ステッ
プマツプデータの2つである。動作ブロックマツプとは
、前述の動作ブロックの個々を記述し、且つ、これらの
動作ブロック間の連係関係を記述するデータである。第
2図の生産ラインについて固有な動作ブロックマツプデ
ータの例を第6図に示す。動作ステップマツプとは、あ
る特定の生産ラインに固有な動作ブロックの各々に含ま
れる動作ステップを記述する固有なデータである。第2
図の生産ラインについて固有な動作ステップマツプの一
例を第8図に示す。 かかる2つの定型データベースと2つの固有なデータと
に基づいてシーケンス制御プログラムが生成される。 先ず、定型のステップラダーパターンデータベースにつ
いて第10図に従って説明する。第]OA図は、動作ブ
ロックの開始と停止を定型的に記述するパターンである
。第10B図は、第9C図に関連して説明したパターン
と同じである。第10C図は、第10B図のパターンに
更に1つの接点条件を付加したものである。 次に、入出カマツブについて説明する。この入出カマツ
ブは、予め生産ラインに使用される全ての設備について
、その入出力の態様をテーブルとして記述したものであ
る。第7図の入出カマツブは、第2図の位置決め装置1
9についてのものである。この入出カマツブにおいて、
“コメント”は、入出力動作の内容をあられす。また“
良、”は自動作成される。また、“コメント”、“動作
”及び“原位置”についてのデータはキーボード67が
操作されることにより入力される。“出力コイルデイバ
イス”、“確認入力接点デイバイス”及び“手動入力接
点デイバイス”は自動設定される。 例えば、AozのBF(位置決め)という動作回路は、
動作タイプが“出力”であり、出力コイルの端子はYl
である。出力されたときの確認入力接点名は”Xl”で
ある。また、手動入力の接点名は“X、”である。 次に、動作ブロックマツプについて説明する。 このマツプのデータは、対象の生産ラインの動作を分析
し、前述の定義に従った動作ブロックにより、その生産
ラインの工程を表現することにより得られる。第5図の
動作ブロックのマツプは、第2図の生産ラインについて
分析した結果、第5図に示したような動作ブロックチャ
ートが得られた場合に、そのチャートを表現するテーブ
ルである。換言すれば、この第6図のテーブル(マツプ
)は第5図のチャートと略等価である。 第6図において、”5C−REG”は、16ビツトのレ
ジスタをあられし、動作ブロックBO〜Bllの夫々に
1個づつ設けられたものである。 このレジスタは、対応する動作ブロック内で、現在、ど
の動作ステップが実行されているのかを表わす。例えば
、動作ブロックB。で現在B0S。 (第8図参照)の動作ステップが実行されているのであ
れば、動作ブロックB0の5CREGには“B、S、”
が格納される。 動作ブロックマツプの“FROM”は、当該動作ブロッ
クの動作が開始される条件となる直前の動作ブロックを
あられす。例えば、動作ブロックB、は動作ブロックB
0.B、の終了が起動−条件となる。また、“To”は
当該動作ブロックの動作完了によって動作を開始せしめ
られるところの、当該動作ブロックの直後につながる動
作ブロックをあられす。例えば、動作ブロックB、の終
了は、動作ブロックB、、B、の起動を意味する。“ク
リア条件”は、当該動作ブロックに関わる設備が原状に
戻る動作ブロックをあられす。さらに、“設備”は、当
該動作ブロックに関わるシーケンス制御対象設備をあら
れす。 “No”及び“5C−REG”の内容は自動作′ 成さ
れる。一方、“ブロック名称”、“FROM”、“To
”、“クリア条件”及び“設備”の内容は、プログラマ
がキーボード67を操作して入力する。 次に、第8図の動作ステップマツプについて説明する。 前述したように、動作ステップは、各動作ブロック内の
具体的な動作の内容を記述する。 換言すれば、入出カマツブ(第7図)は、動作のシーケ
ンスを表わしてはいない。しかし、動作ステップマツプ
の個々の設備の動作シーケンスをも表現する。第8図は
、動作ブロックB。の動作ステップマツプの例を示した
ものである。第8図において、”No”はシステムが自
動的に付与する。即ち、動作ステップ順序を表わす“N
o”は例えば動作ブロックB0については“B oo。 ”から始まって、“BoS、”〜“B、S、”まで、プ
ログラマが“コメント”をキーボード67から入力する
毎にシステムが生成する。尚、“Bo。。”は当該動作
ブロックの準備を意味する動作ステップであり、ラダー
プログラムにおいて各動作ブロックの先頭に置かれる。 また、” B 11119”は当該動作ブロックの完了
を意味する動作ステップであり、ラダープログラムにお
いて各動作ブロックの最後尾に置かれる。 動作ステップマツプの生成で最低限必要なものは、ステ
ップのシーケンス順に入力する“コメント”の情報であ
る。例えば、ステップ番号″B0So”において、プロ
グラマが“条件確認”を入力すれば、入出カマツブの先
頭にある“ワーク有”のコメント名を有する番号“A 
o +”のデータを読出す。入出カマツブの“A o 
+”のデータは確認入力接点が“Xo”、手動入力接点
が“XA”であるので、これらのデータを第8図の対応
位置に書込む。ステップ“B、S、”の出力コイルの“
Yo”は、動作ブロックの先頭動作ステップに与えられ
る出力者である。続いて、プログラマが動作ステップB
、S、″′においてコメント“BF(位置決め)”と入
力し、動作タイプを“出力”と入力すれば、このタイト
ルから入出カマツブを索引して、番号“A 62”のデ
ータを得る。番号“八〇2”のデータは、“出力コイル
”が”Yl”、“確認入力接点”が“Xl”、“手動入
力接点゛が“XIl”であるので、第8図の動作ステッ
プBoS、”に対応するデータを書込む。 このように、動作ステップマツプ(第8図)は、プログ
ラマが入力した“コメント”と“動作タイプとに基づい
て、対応するデータを入出カマツブ(第7図)内に検索
し、作成していく。また、このような動作ステップマツ
プを各動作ブロックについて作成する。 尚、第8図の動作ステップマツプにおいて、−香石側の
データては、各動作ステップの作動予測時間である。こ
のデータでは、前述のrステップタイムオーバ」と「ス
テップハングアップ1故陣の検出判断を行なうのに重要
なデータである。 第11図はこのようにして生成されたブロックB0につ
いてのシーケンスラダープログラムである。第11図の
ラダープログラムと第8図の動作ステップマツプとを対
比すると、ラダープログラムの構成がよく理解できる。 例えば、動作ステップB。Soにおいては、接点MAが
閉じている自動動作モードにおいては、接点デバイスX
0は閉じているので出力Y1が出力される。Y、が出力
されると、BoSIにおいてその確認入力接点Xoは閉
じるので¥1が出力される。 以上が本実施例システムにおけるシーケンス制御ラダー
プログラムの自動生成に関する説明であり、この説明に
より、動作ブロックマツプ(第6図)により、各動作ブ
ロック間の相互動作が理解されたであろう。また、動作
ステップマツプ及び入出カマツブ(第7図)により、制
御プログラムの自動生成がいかに効率良く行なわれるの
かが理解できたであろう。 以下余白 シーケンス1  酎    診 以上、本実施例システムにおけるラダープログラムの自
動生成について説明した。またその過程で、動作ブロッ
クマツプ及び動作ステップステップがどういうものかが
理解できた。 第13図は、第1図の故障検出/故障診断サブシステム
104,105における制御プログラム間の関係、並び
に、それらとステップラダープログラム200(第1図
の101)との関係を説明するものである。同図を用い
て、本システムのシーケンス制御及び監視及び故障診断
について説明する。上述のプログラムの自動生成はシー
ケンス制御及び故障診断とは別個独立に動作するプログ
ラムであるのに対し、後に明らかになるように、・シー
ケンス制御プログラム及び故障検出/診断プログラムは
、互いに密接に関わりながら動作する。 第13図において、ステップラダープログラム200と
は、第11図に示されたラダープログラムであり、第1
1図に関連して説明したように、個々の動作ステップに
おける個々のアクチュエータの具体的な動作を記述する
ものである。また、マツプ制御プログラム201は、動
作ブロックマツプ(第6図)及び動作ステップマツプ(
第7図)を参照しながらラダープログラム200が実行
する設備の動作をモニタする。このマツプ制御プログラ
ム201の詳細は第16A図に示される。また、動作監
視プログラム202は、マツプ制御プログラム201と
ラダープログラム200間とのやり取りを監視しながら
、故障の発生を検知するものであり、その詳細は第16
B図に示される。さらに、故障診断プログラム203は
、監視プログラム202の通知により故障が発生したこ
とを知られされると、故障診断を行なうものである。こ
の故障の発生したアクチュエータ(即ち、動作ステップ
)は、監視プログラム202とマツプ制御プログラム2
01とが配録している後述のステップカウンタの内容を
診断プログラム203が調べることにより知れる。アク
チュエータ内の具体的なデバイス若しくは接点は、診断
プログラム203が、入出カマツブ(第7図)のデータ
に基づいて検出することができる。 故障診断システムを理解するためには、動作ブロック毎
に設定された前述の5C−REG (C8と略記する)
等の理解が必要である。 第14図は、ある動作ブロックi (BL、)に設けら
れた上記CSレジスタと、タイムレジスタ(TS、、、
TS、、)と、ブロックタイムレジスタTB、を説明す
るものである。csレジスタC81は、ブロックiで最
後に実行終了した動作ステップの番号を格納する。また
、ステップタイムレジスタTS、、は、最後に実行され
た、あるいは現在実行中の動作ステップが開始された時
刻を格納する。TS、、は最後に実行が終了した動作ス
テップがその終了した時刻が格納される。また、ブロッ
クタイムレジスタTB、は、当該ブロックが起動可能に
なるまではゼロである。起動可能になると、TB、には
起動可能になった時刻が格納される。 第15図は、個々のブロックには、各々の上記レジスタ
が設定されている様子を示している。 ある動作ステップの実行が終了した時点では、T S 
、、= T S 、、−T S 、、    ・・・・
・・(1)が、その動作ステップを実行するのに要した
時間となる。前述したように、カウンタC8,は、ブロ
ックiが最後に実行終了した動作ステップの番号(実際
には、その動作ステップの次の動作ステップ番号を示す
)を記憶するから、このC8,の内容から、最後に終了
した動作ステップの実行に要した時間TS0を計算する
ことができる。本実施例の故障診断システムでは、この
TS、、と第8図の動作ステップマツプに記憶されてい
る個々の動作ステップの実行に要する標準時間てとを比
較することにより、 TS、、−τ〉δ0      ・・・・・・(2)で
あれば、その動作ステップの実行に障害(前述のrステ
ップタイムオーバJ)があったと判断する。ここでδ。 は定数である。 また、本故障診断システムでは、定期的に実行が終了し
ていない動作ステップをスキャンし、現在までの経過時
間T p  T S s lが、Tp −TSm、>δ
1      ・・・・・・(3)であれば、当該動作
ステップはループ若しくはハングアップしていると判断
する。ここで、T、は現在の時刻であり、また、δ1は
定数である。 δ1は、通常、その生産ラインの動作ステップの実行に
要する時間のなかで最大のものにある許容幅をもたせた
ものである。かかる故障が「ステップハングアップ」で
ある。 ブロックハングアップ 第15図、第19A図乃至第19E図を用いて「ブロッ
クハングアップ」について説明する。 第15図若しくは第5図に示すように、互いに並行動作
を行なう複数のブロックが存在する。かかる複数のブロ
ックをグループと考えると、ある1つのグループ(第1
5図の例では、BLIが1つのグループを形成する)の
全ステップ動作が終了して、そのグループに続く他のグ
ループ(第15図の例では、BL2.BL3.BL4か
らなるGRI)が実行されるまでの時間経過を監視する
必要がある。前述のブロックタイムレジスタTB、は、
上記ブロックグループが起動されるまでの経過時間であ
る。各グループについて、測定動作時間を基準時間と比
較しつつモニタすることにより、各グループ毎の異常、
換言すれば、ブロックから別のブロック間に遷移する過
程で発生した故障を診断することができるようになって
いる。 このような故障がrブロックハングアップ1である。本
実施例システムにおいては、ブロックハングアップが発
生した場合は、更に、その原因となった動作ステップを
特定することまでを行なう。 rブロックハングアップ」の原因となった動作ステップ
を特定する手法について、第19A図乃至第19E図を
用いて説明する。これらの第19A図乃至第19E図は
、第5図に示された生産ラインを、rブロックハングア
ップ」の説明を容易にするために、簡略化したものであ
る。第19A図においては、生産ラインは、簡単に4つ
の動作ブロックから構成される。これらの動作ブロック
に対する動作ブロックマツプは、簡略化して第19B図
のように示される。 第19B図では、ブロック1からブロック2が起動され
るまでに要する時間な「12、ブロック1からブロック
3が起動されるまでに要する時間をr13等と表わされ
ている。これらの遷移時間「は前もって設定可能だから
である。例えば、ブロック4は、並行したブロック2,
3の終了により起動される。第15図に関連して説明し
たように、ブロックタイムレジスタTB、は、当該ブロ
ックが起動可能になるまではゼロである。そして、起動
可能になると、その時刻が格納される。従って、レジス
タTB、の値がゼロでな(、現在までの経過時間が上記
「よりも十分に大きいときは、ブロックハングアップが
起こっているものと判断できる。従って、ブロック2.
3の終了から、時間r 24.1734が経過してもブ
ロック4が起動されない場合は、ブロックハングアップ
として故障認識される。 ブロック4が起動されないためにブロックハングアップ
が検出されたときは、その原因となった動作ステップは
ブロック2,3のいずれかにある筈である。第19C図
は動作ブロック2の動作ステップマツプを、第19D図
はブロック3の動作ステップマツプを示す。第19C図
によれば、ブロック2には4つの動作ステップが設定さ
れ、各々のステップにおける出力は、Yl、Y−、・・
・Y4であり、それらの出力アクチュエータの確認スイ
ッチをX、、X、、・・・x4である。また、第19D
図によれば、ブロック3には3つの動作ステップが設定
され、各々のステップにおける出力は、Ys 、Y、、
Y、であり、それらの出力アクチュエータの確認スイッ
チをX、、X、、X、である。上記確認スイッチX1乃
至X、の状態は、ブロック2,3を終了する時点では、
ブロック毎にユニークであり、且つ、事前に知り得るも
のである。第19E図の起動条件マツプは、第19A図
の例に示された4つの動作ブロックの夫々が起動される
ための条件、即ち、動作確認スイッチの状態論理を示す
ものである。図中、ブロック4について言えば、ブロッ
ク2では出力¥1乃至Y4がオンされて、確認スイッチ
X、乃至X4までがオンされている。また、ブロック3
では出力Y4乃至Y、がオンされて、確認スイッチX4
乃至X7までがオンされている。従って、ブロック4が
正常に起動されるときは、 X+ *X2 *  ・・・ *X。 でなくてはならない。ブロック2,3はブロック1の終
了によって起動される。従って、ブロック2、ブロック
3の起動条件はブロックlの全動作ステップの確認スイ
ッチの状態の論理積となる。 尚、第19E図において、(N>は、確認スイッチが出
力Yが”出”状態にあることを確認する状態にあること
を意味し、<I>は、確認スイッチが出力Yが“戻り”
状態にあることを確認する状態にあることを意味する。 このように、各動作ブロックの起動条件に、そのブロッ
クの前段のブロックの全動作ステップの出力を確認する
デバイスの状態を論理積として組み合せたものをプログ
ラム化すれば、当該動作ブロックの起動は、前段の動作
ブロックの全動作ステップの正常な終了を確認しない限
り行なわれない。換言すれば、起動条件が満足されなけ
れば、前述のブロックハングアップが起こって、故障と
正しく検知されるのである。しかも、故障が検知された
ブロックが認識されれば、起動条件マツプと、実際の確
認スイッチの状態とを比較すれば、どのスイッチが異常
であるか、そして、入出カマツブ(第7図)と動作ステ
ップマツプ(第8図)とを参照することにより、どの動
作ステップのどの出力アクチュエータがおかしかったか
を速やかに知ることができる。 生産ラインにおけるシーケンス制御には、経験上、動作
ステップのアクチュエータが、「出」状態でもなく、「
戻」状態でもない状態で停止したり、あるいは、[出J
状態と[戻J状態の両方を示したりする場合がある。こ
の原因の1つは、重量の重いアクチュエータがバウンド
により「出」状態でもな(、「戻」状態でもない「中途
半端」な状態に陥ってしまうからである。そして、従来
では、このような状態は、見掛は上は、シーケンス制御
は正常に進んでいくから、その不良確認スイッチの状態
によって起動される(別の動作ブロックの)筈の動作ス
テップが何時までも起動されないという理由で故障と認
識されるに至るものの、しかしながら、その停止点は、
実際に障害が発生した動作ステップとはかけ離れた動作
ステップである可能性が高い。 しかしながら、本実施例のブロックハングアップ検知の
手法によれば、前述したように、各動作ブロックの起動
条件に、第19E図のような、前段ブロックの全確認デ
バイスのあるべき論理状態の論理積を設定しているので
、ある1つの動作ブロックの動作ステップで上述の中途
半端なスイッチ状態に陥って、その動作ステップで故障
と認識できなくても、その動作ブロックが終了して、次
に続く動作ブロックが起動される際に、ブロックハング
アップとして確認できる。即ち、故障のあった動作ステ
ップと故障認識が行なわれた動作ステップとが時間的に
も空間的に余り離れたものとはならず、故障診断が正確
になるばかりでなく、復旧もより速やかになるという効
果がある。 上述したような、ステップタイムオーバ、ステップハン
グアップ、ブロックハングアップ等により故障が検知さ
れると、故障ステップの特定により、動作ステップマツ
プ(第8図)から、障害のあるアクチュエータが特定さ
れる。第8図に示すように、1つの動作ステップは1つ
のアクチュエータに対応するからである。ここで、故障
アクチュエータから、このアクチュエータがどのような
状態で停止しているか、即ち、このアクチュエータの動
作を定義するLS(出と戻りの2つリミットスイッチL
S)がどのような状態になっているかを知る必要がある
。 第7図の入出カマツブ及び第8図の動作ステップマツプ
はこのLSの状態を知るのに使われる。 第8図の動作ステップマツプにおいては、アクチュエー
タ識別番号欄が設けられている。この識別番号は、それ
に対応するステップ(例えば、BoSo)で使われるア
クチュエータを識別する番号(例えば、AOI)である
。この識別番号は入出カマツブの個々のアイテムの番号
である。第7図の入出カマツブは、個々のアクチュエー
タの動作タイプや接点名を示すだけではなく、出状態を
示す接点と戻り状態を示す接点との関係をも記述する。 アクチュエータは往復動作を行なうから、1つのアクチ
ュエータには必ず、出状態と戻り状態とがベアで存在す
る。第7図の入出カマツブにおいて、「対応関係」は、
そのベア関係を記述している。例えば、BFというアク
チュエータ(このアクチュエータは番号AO2で識別さ
れる)の対応関係の欄には“AO3”と記されている。 即ち、BFアクチュエータが出状態にあるときを番号A
O2により特定し、この出状態に対応する戻り状態は、
番号AO3にあるということを示している。 従って、故障診断システムは、故障ブロック番号と故障
動作ステップ番号とを得たならば、動作ステップマツプ
から故障したアクチュエータの識別番号を知り、この番
号から、この故障アクチュエータには、どのようなLS
が設定されているかを知ることができる。そして、どの
LSが設けられているかを知ることができれば、そのL
Sの状態を読出して、例えば、表示すること等により、
操作者に故障状態を伝えることができる。 第7図の入出カマツブは、実際の動作シーケンスを記述
する動作ステップマツプ(第8図)や、ラダープログラ
ム(第11図)とは独立している。即ち、生産ラインが
変更されて、動作ステップマツプ(第8図)やラダープ
ログラム(第11図)が修正されても、入出カマツブを
修正する必要はない。即ち、生産ラインの変更毎に故障
診断プログラムを修正する労力から解放される。 尚、上記標準実行時間ては、例えば、正常作動時におけ
る所定回数のサイクルについての測定動作時間の平均値
TS□と標準偏差値σとで規定される、例えば、 y=Tsx++ 3a           ・・” 
 (4)と定義することが好ましい。より好ましくはサ
イクル毎にデータτが更新される方がよい。何故なら、
アクチュエータの動作特性は経年変化するからである。 また、ブロックハングアップの検出に用いる時間r(第
6図の動作ブロックマツプを参照)についても、経年変
化を考慮して、実際に要した時間に基づいて更新するこ
とが望ましい。 1前止I 次に、第16A図乃至第16C図に従って、本実施例シ
ステムにおける制御動作を説明する。 第16A図は、動作ブロックマツプ、動作ステップマツ
プに従って、当該生産ラインの各アクチュエータをラダ
ープログラム200の動作を監視するマツプ制御プログ
ラム201の制御手順である。このプログラムが起動さ
れるとステップS2で、初期化を行ない、起動可能な最
初のブロックグループを検出する。このグループには1
つのブロックを含む場合もあれば複数のブロックを含む
場合もある。 ステップS4では、新たに起動可能とされたブロックの
存在を調べる。このステップS4の目的は、主に、ある
1つの動作ブロックの全ステップ動作が終了して、この
動作ブロックに続く実行可能な動作ブロックが存在する
かを調べるものである。このようなブロックが存在すれ
ば(ステップS2から起動された場合は、実行可能な動
作ブロックは存在する筈である)、ステップS6では、
そのブロック番号を検出する。かかるブロック番号をi
とし、この番号は、当然、複数の番号を含み得るもので
ある。グループで実行可能な場合があるからである。 ステップS8では、そのような動作ブロックの動作ステ
ップマツプを読み込み、ステップSlOでその動作ブロ
ックを実行中とマークする。ステップS12では、実行
可能な動作ステップがあるかを調べる。動作ステップが
実行可能となるのは、CSレジスタに示されている動作
ステップの動作が終了しているときであり、監視プログ
ラム202のステップ554(第16B図)で行なわれ
る。実行可能な動作ステップが当該動作ブロックにあれ
ば、ステップS32で、当該動作ブロックiのタイマレ
ジスタTS、、に現在時刻を開始時刻として書込む。ス
テップS32の動作を実行可能な動作ステップがある限
り行なう。実際には、グループ内に複数の動作ブロック
が存在すれば、その動作ブロックの各々で1つの動作ス
テップが実行されることになろう。 実行可能な動作ステップが全て起動されると、いずれか
の動作ステップの動作が終了するまでは、ステップS1
2の判断はNOとなって、ステップS14に進み、いず
れかの動作ステップの実行終了を待つ。 いずれかの動作ステップの実行が終了したと終了信号が
ラダープログラム側からシーケンス制御プログラムに伝
えられたら、ステップS14からステップ316に進む
。ここで、終了した動作ブロック番号iと動作ステップ
番号(第13図参照)を読む。このiにより終了した動
作ステップを含む動作ブロックが特定できる。ステップ
818では、終了時刻を当該動作ブロックiのタイマレ
ジスタTS1に書込み、ステップS20では、次に実行
すべき動作ステップを示すためにCSレジスタを1つイ
ンクリメントする。 このような動作を行なっていけば、アクチュエータ動作
を終了した動作ステップから順に、対応するブロックの
CSレジスタが更新されると共にT S −1も更新さ
れていく。 一方、監視プログラム202は、第16B図のステップ
S40において、ラダープログラム200からのステッ
プ終了信号を監視している。いずれかのラダー要素でア
クチュエータ動作終了があったときは、ステップS42
に進み、ラダープログラム側から知らされた当該ブロッ
ク番号i、ステップ番号を読取る。そして、ステップS
44で、このブロック番号iからそのブロックのタイマ
値TS、、とTS、、並びに、動作ステップマツプから
当該動作ステップの実行予測時間τを読取り、(1)式
に従って経過時間TSつ、を演算する。そしてステップ
346で、実行に要した時間TS、、が異常に長かった
かを判断する。 ステップS46の判断がOKであれば、ステップS52
に進んで、当該動作ブロックのタイマレジスタの内容を
クリアし、ステップS54では、現在レジスタC8,に
示されている動作ステップを実行可能とマークする。こ
のC81で示される動作ステップは、ステップS20で
更新したように、終了した次の動作ステップである。 ある動作ブロックの動作ステップが実行可能とマークさ
れると、シーケンス制御プログラムの第16A図のステ
ップSL2でYESと判断されて次の動作ステップの実
行が行なわれていく。 このように次々と動作ステップが実行されると、ある動
作ブロックについて、ステップS22において、CSレ
ジスタの内容が最終ステップ番号を超えるとき、即ち、
その動作ブロックの全処理を終了したとなるときが(る
。このときはステップS24で、当該ブロックを終了と
マークし、ステップS26では、現在のブロックの次に
起動されるべきブロックのためのタイマTB、、に現在
時刻を書込む。ここで、TB、Jは、ブロックiが終了
して、このブロックiの次に起動されるべきブロックj
が存在することを明示するためのタイマであり、第19
B図のU lx等に対応する。尚、タイムレジスタTB
は次に起動されるべき動作ブロックの最初の動作ステッ
プが起動されれば、ステップS30でクリアされる。 ステップS26からステップSS4に戻り、新たに実行
可能な動作ブロックを探す。例えば、第5図の例で、B
Oの処理が終了してステップS4に戻ったときに、まだ
B1の処理が終了していなければ、B3は実行可能とマ
ークされない。 次に、第16B図のステップS46に戻って、ステップ
タイムオーバ故障の発見の手順について説明する。 ステップ346で、 TS、。−て〉δ。 と判断されたときは、当該動作ステップの実行にかかっ
た時間が異常に長かったのであるから、ステップS48
で、その動作ステップの属する動作ブロックを故障とマ
ークし、ステップS49で、予想時間ての更新を行なう
。この更新処理は第16D図にその詳細が示されており
、動作ステップの処理に実際に要した時間T8□と予想
時間τとの差が小さくて、即ち、 T8□−τ □くε   ((1) て であって、要した時間Telかてよりも若干長かった場
合には、それは設備の経年変化によるものと判断して、
ステップ5102において、過去のTXI と今回のT
XI とから、次回のためのてを計算して更新する。こ
のような更新により経年変化をも考慮した正確な故障検
知が可能となる。 第16B図の制御手順において、ステップS50で診断
プログラム(第16C図)を起動してから、ステップS
40に戻る。ステップS40に戻るのは、他の動作ブロ
ックの動作ステップにおいても故障を検出するためであ
る。また、故障検出を行なってシーケンス制御プログラ
ム(第16A図)の実行を停止しないのは、1つの動作
ブロックを停止しても、並行動作すべき動作ブロックが
あるので、その動作ブロックの動作を停止してはならな
いからである。他の動作ブロックを停止しなくてもよい
のは、そもそも、動作ブロックが他の動作ブロックと独
立して動作することを条件に定義されたものだからであ
る。 ステップ356以下は、ブロックハングアップ若しくは
ステップハングアップを検出する手順である。 ある動作ステップでラダープログラムがハングアップし
た場合の対処を説明する。かかる場合は終了信号は発生
しない。従って、ステップS40からステップS56に
進む。ステップS56では、一定時間の経過を見る。こ
れは、前回ステップS56に来てから現在時点(時刻T
、)までの経過時間が一定の値を超えたかを見るもので
あり、換言すれば、ブロックハングアップ若しくはステ
ップハングアップの有無はほこの一定時間毎にチエツク
されるということである。ステップS58では、実行中
とマークされている動作ステップをサーチする。これは
、実行中とマークされている動作ブロックの各CSレジ
スタの内容が特定の動作ステップを指し、且つ、TS□
に開始時間が書込まれていながら、TS、、が未だ更新
されていないものである。ステップS60では、現在ま
での経過時間Tp−TS、、を計算し、ステップS62
では、(3)式に従って、 T p  T S s + >δ、      −・・
・・・(3)を判断する。判断がYESであれば、ステ
ップS64に進み当該ブロックをステップハングアップ
故障とマークする。 ステップS58で、実行中の動作ステップがないと判断
された場合について説明する。この場合は、ステップS
70では、ブロックタイムレジスタTB、、の値がゼロ
でないブロックjをサーチする。ステップS26に関連
して前述したように、TB、がゼロでないものは、ブロ
ックiが終了してもそれに続(ブロックjが未だ起動さ
れていないことを示す。ステップS72では、そのよう
なブロックにおける動作ステップが未起動のままの経過
時間と前記予想時間「1.との差、(T、−TB、、)
−r、。 を計算する。そして、その差が定数62よりも大きいな
らば、ステップ376でブロックハングアップと判断す
る。ステップ578では、故障診断プログラム(第16
C図)を起動する。 第16C図に従って、故障診断プログラム203につい
て説明する。 この故障診断プログラムは、故障がブロックハングアッ
プであるか、あるいは、ステップタイムオーバ、ステッ
プハングアップであるかにより、処理を若干具にする。 ステップタイムオーバ、ステップハングアップが検出さ
れれば、故障動作ステップが直接的に知ることができる
のに対し、ブロックハングアップの場合は、故障動作ス
テップを通って追跡する必要があるからである。 ステップタイムオーバ、ステップハングアップ故障の場
合は、ステップS82において、故障とマークされたブ
ロックをサーチする。このマークはステップS48若し
くはステップS66でなされたものである。ステップS
72では、検出されたブロックのCSレジスタの内容を
読み、故障した動作ステップを特定する。ステップS7
4では、動作ステップマツプから故障したアクチュエー
タの識別番号を知る。ステップS76では、この識別番
号から入出カマツブ(第7図)をサーチし、ステップS
78で、この識別番号を有するアクチュエータの出と戻
りのLSの番号を知る。ステップS80では、これら知
り得た。故障の起こった動作ブロック番号、動作ステッ
プ番号、アクチュエータ番号、LS番号を表示して、操
作者に対処をうながす。 ステップS80でブロックハングアップが検出された場
合について説明する。この場合は、ステップS96で、
ブロックハングアップが検出されたブロック番号に対応
する起動条件マツプ(第19E図)を読み込む。ステッ
プ398では、マツプに書かれている確認スイッチの論
理状態と、それらの確認スイッチの実際状態とを比較し
て不一致の確認スイッチを探す。この不一致スイッチデ
バイスの特定がなされれば、次に、ステップ5100で
、ハングアップが検出されたブロックの親ブロックをブ
ロックマツプ(第6図)からサーチする。ステップ51
02では、検出された親ブロックの動作ステップマツプ
(第8図)から、上記不一致スイッチを使用している動
作ステップを特定、これからステップ5102で、この
動作ステップのアクチュエータ番号やL/S番号を特定
してステップS92に進む。ステップS92では、これ
らを表示する0以上のようにしてサーチされた故障箇所
が、デイスプレィ装置8のモニタ画面上で所定の色で強
調表示される。そして、作業者による故障箇所の復旧作
業が行なわれる。 以上説明したrステップタイムオーバ」やrステップハ
ングアップ」の検出は、基本的には、ステップラダープ
ログラム203とは独立したプログラムにより行なわれ
ている=このことは次のような効果を奏する。即ち、ス
テップラダープログラムには、上記故障検出するための
所謂、[トラップ回路」を設ける必要がなくなるという
ことである。第20図の(b)において、Mlは、イン
ターロック条件ILCが満足されたことによる出力であ
り、Myが出力されると、アクチュエータ出力Yが出力
される。従来では、第20図の(b)に示すように、ス
イッチM、が閉じたら起動されるタイマ回路Tを設け、
このタイマがタイムアウトする前に、出力Yを確認する
スイッチXL3が開かなければ故障(ALMオン)とす
るものであった。しかし、本実施例によれば、このよう
なタイマ回路は不要になり、第20図(a)のように、
本来の生産シーケンス制御に必要なステップラダープロ
グラムのみを作成すればよいことになる。 故Jl旧 以上が、本実施例システムに用意された故障検出/故障
診断の手法である。次に、このように検出された故障か
らシステム全体を再起動する手法(第1図の故障復旧サ
ブシステム103)について説明する。 第1図に関連して説明したように、この復旧サブシステ
ム103は、前もって生成された復旧プログラム102
に基づいて復旧を行なうものである。従って、本システ
ムにおける復旧プログラムの自動生成について説明する
。 第21図は、本復旧サブシステムの動作原理を説明する
。あるブロックB、、の実行中に、その動作ステップB
I、S、において故障があったとすると、従来では、マ
ニュアル操作により、BnS。 −BllS6・・・とステップを進めていた。しかしな
がら、この従来の手法では、復旧処理が自動化されない
ばかりでなく、マニュアルによるステップ進行が途中で
行き詰まってしまう場合が多発していた。 本復旧サブシステムでは、第21図に示すように、故障
した動作ステップB、、Ssから、逆戻りを行ない、こ
のブロックB、の先頭B、S、まで戻し、この先頭の動
作ステップB。Slから再起動をかけるものである。即
ち、リカバリ処理における逆戻りのラダープログラム(
RRPと称する)は、通常のシーケンス制御時における
ラダープログラムが第11図のものであれば、第22図
のようなものになる。第11図と第22図とを比較すれ
ば分るように、このリカバリ用のラダープログラムRR
Pは、第11図のある動作ステップにおける出力Y、の
動作確認スイッチを、その前段の動作ステップの手動イ
ンターロック条件とするというものである。 具体的に説明する。第8図の動作ステップマツプをラダ
ープログラム化した第11図のステップラダープログラ
ムにおいて、動作ステップB0S1の出力Y1は、その
動作をスイッチX1により確認され、動作ステップB。 S2における出力Y2となる。この出力Y2はその動作
をスイッチX2により確認されるようになっている。一
方、第22図のRR,では、出力Y3の確認スイッチX
3が閉じることにより、マニュアル的に出力Y2が出力
され、このY2の確認スイッチX2がとじると、RR,
において、出力Y1が出力される。このように、リカバ
リ用のラダープログラムRRPでは、RRPに対応する
ステップラダープログラムSRPの出力の確認スイッチ
を、当該RRPの後段のインターロック条件に入力する
ことにより、第21図で説明した逆戻り制御を実現して
いる。 第17図は、上述の逆戻り用のラダープログラムRRP
を自動生成するためのプログラムのフローチャートであ
り、このプログラムは第1図のサブシステム106にあ
り、あるいは、第13図の自動生成部90に格納されて
いる。 この自動生成プログラムが起動されると、第17図のス
テップ5150において、生成対象のブロック番号nを
指定するように操作者に促す。ステップ5152では、
そのブロック番号に該当する動作ステップマツプを読み
込む。ステップ5154では、シーケンス制御ラダープ
ログラムSRPのステップ番号に相当するmを最大値に
初期化する。ステップ8156では、リカバリプログラ
ムRRPのステップ番号に相当するkを“1”に初期化
する。ステップ5158では、動作ステップマツプから
、SRPのB、、S=の出力Y、を、RRP、の出力Y
kに割り付ける。ステップ8160では、B、、S、の
出力Y1の確認スイッチX、をRRPkのインターロッ
ク条件に割り付ける。ステップ8162では、kをイン
クリメントし、ステップ8164では、mを1つデクリ
メントする。上記操作を、ステップ8166で、m=0
となるまで繰返す。 このようにして、復旧プログラム102が自動生成され
、復旧スイッチ(不図示)が操作者により押されるまで
起動されずに、ハードウェアディスク77に格納されて
いる。 第18図は、上記復旧スイッチが操作者により押された
場合に起動される復旧サブシステムの制御プログラムの
制御手順を示す。故障が発生した場合は、その故障がス
テップタイムオーバあるいはステップハングアップであ
れば、発生したブロックにおいて、故障動作ステップが
第16C図の制御手順によりCSレジスタにより示され
て停止している。その他のブロックは、当該故障プロッ
りの再起動を待って待機している。また、ブロックハン
グアップであれば、第16C図の制御手順により、故障
動作ステップが特定された状態でシステムは再起動を待
っている。第18図においてスイッチが押されると、ス
テップ5182で、上述のようにして特定された故障ブ
ロック及び故障動作ステップを入力する。ステップ51
84では故障ブロックに対応する復旧プログラムをディ
スク77から読出してきて、そのプログラムをシーケン
サにロードする。ステップ8186では、このリカバリ
ラダープログラムRRPを、ステップ8182で知った
故障動作ステップに対応するステップ番号kから起動す
る。ステップ5188では、このリカバリプログラムの
終了を待って、ステップ5190で、ステップラダープ
ログラムSRPをシーケンサに再ロードして、ステップ
5192でこのラダープログラムを再起動する。 支五阻二匁1 以上、説明したように、本実施例の故障検知/故障診断
/復旧システムによれば、 ■ニステップタイムオーバ検出、ステップハングアップ
検出、ブロックハングアップ検出により、簡単で的確な
故障検出ができる。 即ち、本実施例システムのステップタイムオーバ検出、
ステップハングアップ検出では、従来のように、故障検
出回路をラダープログラムに組み込む必要がなくなり、
簡素化がなされた。 特に、ステップタイムオーバ検出では、基準予想時間τ
は実際のデータを基に更新されるので、その検出精度は
確保される。 また、ブロック起動条件を各ブロックの起動条件に組み
込むことにより、中途半端な状態に確認スイッチが入っ
てしまったというような故障状態を、ブロックハングア
ップ状態として認識することができる。この認識により
、動作ステップが多(進まないうちの早目に、かかる故
障状態がブロックハングアップとして検出でき、その結
果より的確な故障診断が行なえる。 ■ニジーケンスラダープログラムSRPの出力Yの確認
スイッチを、リカバリラダープログラムRRPのインタ
ーロック条件とすることにより、動作ステップマツプだ
けを便りにして、リカバリプログラムが極めて容易に自
動生成することができる。また、このリカバリプログラ
ムを起動させて、故障したブロックを一旦初期状態に戻
してから再起動を欠けるという手法を取ることにより、
復旧がより確実なものとなる。 良形ヨ 本発明はその主旨を逸脱しない範囲で種々変形が可能で
ある。例えば、上記実施例は本発明を自動車の生産ライ
ンに適用したものであったが、当然ながら本発明はその
ような適用分野に限定されるものではない、少なくとも
シーケンス制御を行なうものであれば適用可能である。 以下余白 【発明の効果] 以上説明したように本発明の故障検出方法は、個々の設
備の動作を記述したマツプに基づいて作成したラダープ
ログラムに従って制御される生産ラインにおいて、前記
マツプに、前記個々の設備の動作に対応する個々のラダ
ープログラム要素の予想動作時間を前もって格納し、前
記ラダープログラム要素の出力デバイスの動作を確認す
るための確認デバイスのオン/オフ状態が変化するのに
要した実動作時間と前記予想動作時間とを比較すること
により、生産ラインにおける故障部位を特定することを
特徴とする。 上記発明の故障診断方法によれば、予想時間はマツプ化
でき、しかも、実際の動作時間との比較だけで、故障判
定が行なえる。換言すれば、ラダープログラム側には、
従来のようなタイマ監視回路は不要となる。 また、予想動作時間を実動作時間に基づいて補正するこ
とにより、予想動作時間を実動作時間に併せて修正がで
き、経年変化があっても精度の高い故障診断が行なえる
DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment in which the present invention is applied to sequence control/fault diagnosis for an automobile production line will be described below with reference to the accompanying drawings. As shown in FIG. 1, this embodiment system includes a subsystem 106 that automatically generates a ladder program for sequence control and a recovery program, a subsystem 101 that executes the generated ladder program, and a subsystem 101 that detects failures. a subsystem 104 that performs fault diagnosis by identifying a fault location based on a detected fault, and a recovery subsystem 1 that restores the system.
03. FIG. 1 conceptually explains the system of this embodiment. The step ladder program 101 is a program that is loaded into a sequencer or the like to control the equipment 100, and is generated by the automatic generation subsystem 106. The execution of this program 101 is monitored by a monitoring subsystem 104 to detect a failure in the equipment 100. The fault detection subsystem 104 of this embodiment detects three types of faults: r-block hang-up j, 1-step time over, and 1-step hang-up j, and the detection procedures for these will be described later based on the drawings. It will be explained. "Block hang-up j" is a hang-up that occurs during the transition from one motion block (the concept of "motion block" will be explained in conjunction with FIG. 6) to another motion block that follows it. , which could not be detected using conventional techniques. Also,
"Step time over" or "step hang up"
This means that the elapsed time in a certain operating step (the concept of "operating step" will be explained in conjunction with Figure 8) was longer than expected, or a malfunction occurred such as a hang-up at that operating step. be. In order to detect these failures such as "block hang-up,""step time over," and "step hang-up," the fault detection subsystem 104 uses a "block timer counter" and "step timer counter" as described later. ” has been introduced. The failure diagnosis subsystem 105 includes the monitor system 104
The failure is further analyzed to identify the failure location (operation step where the failure occurred). The procedure for this fault diagnosis will also be explained later based on the drawings. The recovery subsystem 103 selects a recovery program 102 that is most appropriate for the operational steps identified by the diagnostic subsystem 105.
is used to start up and restore the system. This recovery program 102 is created by an automatic generation subsystem 106 based on an “operation block map”, “operation step map j”, etc., which will be described later.The explanation of this recovery subsystem and automatic generation of a recovery program will explain the process that would be difficult in the past. It will be understood that automatic creation of a recovery program and accurate automatic recovery are realized in this system. First, the vehicle assembly line to be controlled by the sequence control program 101 will be explained.Next, By explaining the sequence control program automatic generation subsystem 106, we will refer to operation blocks and operation steps, which are important concepts for fault diagnosis in this embodiment.After that, we will explain the fault diagnosis, which is a characteristic part of this embodiment. Detection/Failure Diagnosis/Recovery will be explained. First, an example of a vehicle assembly line to be controlled by a sequence control program to be generated will be described with reference to FIGS. 2 and 3. The vehicle assembly line shown in Figures 2 and 3 exemplarily consists of three stations STI, ST2, ST3.
is received on the pedestal 12, and the position of the pedestal 12 is controlled.
2 and the body 11 is positioned. The docking station ST2 combines the engine 14, the front suspension assembly (not shown), the rear suspension assembly 15, and the body 11 placed at a predetermined position on the pallet 13. The fastening station ST3 fastens and fixes the engine 14 and front suspension assembly 15, which are combined at ST, to the body 11 using screws. Also,
An overhead transfer position 16 for holding and transporting the body 11 is provided between the positioning station STI and the docking station ST2. Docking station ST2 and fastening station ST
A pallet conveyance position 17 for conveying the pallet 13 is provided between the pallet 3 and the pallet 13. The pedestal 12 at the positioning station STI reciprocates along the rail 18. In the positioning station STI, the pedestal 12 is placed in a direction perpendicular to the rail 18 (
By moving the body 11 placed on the pedestal 12 in the vehicle width direction, the positioning means (BF) positions the front part of the body 11 in the vehicle width direction, and also positions the rear part of the body 11 in the vehicle width direction. and positioning means (TL) for positioning the pedestal 12 in the front-back direction by moving it in the direction along the rail 18 (back-and-forth direction). Furthermore, ST
I includes vertical reference bins (FL, FR, RL, R) that position the body 11 relative to the pedestal 12 by engaging with the front left and right parts and the rear left and right parts of the body 11.
R) is provided. Then, by these positioning means and the lifting reference bin, the positioning station ST
A positioning device 19 at I is constructed. That is,
These positioning means and the lifting reference bin are the control targets of the positioning device 19 in the sequence control program. The transfer device 16 includes a guide rail 20 disposed above the positioning station STI and the docking station ST2 with a hook passing between them;
0, and a carrier 21 that moves along 0. An elevating hanger frame 21B is attached to the carrier 21, and the body 11 is supported by the elevating hanger frame 22. As shown in FIG. 4, the lift hanger frame 22 includes a left front support arm 22FL and a right front support arm 22FR, each of which has a pair of front arm clamp parts 2.
2A, and a left rear support arm 22RL and a right rear support arm 22RR (not shown) are each attached via a pair of front arm clamp parts 22B. Each of the left front support arm 22FL and the right front support arm 22FR has a front arm clamp portion 22A.
When the front arm clamp 22A is released from the clamp, it assumes a position extending along the guide rail 20, and when the front arm clamp 22A is clamped, the fourth As shown in the figure, it takes a position extending in a direction perpendicular to the guide rail 20. Similarly, left rear support arm 22R
L. Each of the right rear support arms 22RR also rotates around the rear arm clamp part 22B, and assumes a position extending along the guide 20 when the clamp by the rear arm clamp part 22A is released. When clamping is performed by the rear arm clamp section 22B, the rear arm clamp section 22B assumes a position extending in a direction perpendicular to the guide rail 20. When the body 11 is transferred to the transfer device 16,
As shown by the dashed line in FIG. 2, the transfer device 16 has a left front support arm 22FL and a right front support arm 22F at a position above the front end of the rail 18 (original position).
Each of H extends along the guide rail 20 after being unclamped by the front arm clamp portion 22A. Also,
Left rear support arm 22RL, right rear support arm 22RR
Each of them is unclamped by the rear arm clamp part 22B and extends along the guide rail 20, and then,
The elevating hanger frame 21B is lowered. In this state, the pedestal 12 on which the body 11 is placed is moved along the rail 18 to its front end, and takes a position corresponding to the lifting hanger frame 21B of the transfer device 16 that has been lowered. be made into Each of the left front support arm 22FL and the right front support arm 22FH is
It is rotated to a position extending in a direction perpendicular to the guide rail 20 below the front part of the body 11, and is in a state where it is clamped by the front arm clamp part 22A. Further, each of the left rear support arm 22 RL and the right rear support arm 22 RR is rotated to a position extending in a direction perpendicular to the guide rail 20 below the rear part of the body 11, and the rear arm clamp portion 22B It is in a state where it is clamped. Thereafter, the lifting hanger frame 21B is raised, and as shown in FIG. It is supported by a left rear support arm 22RL and a right rear support arm 22RR. Further, the pallet conveying device 17 includes a pair of guide portions 24L and 24R each provided with a large number of support rollers 23 for receiving the lower surface of the pallet 13, and a pair of guide portions 24L and 24R.
A pair of conveyor rails 25L and 25R extending in parallel to each other on 4H, each having a pallet locking part 26 for locking a pallet 13, and moving along the conveyor rails 25L and 25R, respectively. Pallet transport platform 27L and 2
7R, and a near motor mechanism (not shown) for driving these pallet conveyance tables 27L and 27R. At the docking station ST2, when the front suspension assembly and the rear suspension assembly 15 are respectively assembled, there are a pair of parts that support the struts of the front suspension assembly and the struts 15A of the rear suspension assembly 15, respectively, to take the assembly posture. Left and right front clamp arms 30L
and 30R, and a pair of left and right rear clamp arms 3
1L and 31R are provided. These left and right front clamp arms 30L and 30R are connected to the transport rail 25, respectively.
The left and right rear clamp arms 31L and 31R are attached to the mounting plate parts 32L and 32R so as to be able to move forward and backward in the direction perpendicular to L and 25H, and the left and right rear clamp arms 31L and 31R are attached to the mounting plate part 3, respectively.
It is attached to 3L and 33R so that it can move forward and backward in a direction perpendicular to the transport rails 25L and 25H. mutually opposing tips of left and right front clamp arms 30L and 30R;
The mutually opposing tips of the left and right rear clamp arms 31L and 31R each have an engaging portion that engages with a strut of the front suspension assembly or a strut 15A of the rear suspension assembly 15. The mounting plate portion 32L is mounted on the transport rails 25L and 2 with respect to the fixed base 35L by the arm slide 34L.
It is movable in the direction along 5R. The mounting plate portion 32R is attached to the fixed base 35R by the arm slide 34R.
It is made movable in the direction along the transport rails 25L and 25R. The mounting plate portion 33L is attached to the transport rails 25L and 25H with respect to the fixed base 37L by the arm slide 36L.
It is possible to move along the direction. Furthermore, the mounting plate part 3
3R is movable in the direction along the transport rails 25L and 25H with respect to the fixed base 37R by an arm slide 36R. Therefore, the left and right front clamp arms 3
0L and 30R are movable back and forth, right and left, with their tips engaged with the struts of the front suspension assembly. Further, the left and right rear clamp arms 31L and 31R are movable back and forth and left and right while their tips are engaged with the struts 15A of the rear suspension assembly 15. In addition, these left and right front clamp arms 30L and 30R,
The arm slides 34L and 34R9, the left and right rear clamp arms 31L and 31R1, and the arm slides 36L and 36R constitute a docking device 40. Furthermore, the docking station ST2 includes a pair of slide rails 41L and 41R installed to extend parallel to the transport rails 25L and 25H, respectively, and a movable member that slides along the slide rails 41L and 41R. 42, and a slide device 45 consisting of a motor 43 and the like that drive the movable member 42. The movable member 42 of this slide device 45 includes an engaging means 46 for engaging with a movable engine support member (not shown) provided on the pallet 13, and an engaging means 46 for positioning the pallet 13 at a predetermined position. Two elevating pallet reference pins 47 are provided. Slide device 4
5, a pallet 13 is attached to a body 11 supported by an elevating hanger frame 22 in a transfer device 16.
Engine 14 placed above. When the front suspension assembly and the rear suspension assembly 15 are assembled, the engaging means 46 thereof is moved back and forth while being engaged with the movable engine support member on the pallet 13 positioned by the lifting pallet reference bin 47. The engine 14 is moved back and forth with respect to the body 11 to avoid interference between the body 11 and the engine 14. The fastening station ST3 includes a robot 48A for tightening screws to fasten the engine 14 and front suspension assembly combined to the body 11, and a robot 48A for fastening screws to the body 11 and the rear suspension assembly 15 combined to the body 11. A robot 48B is arranged to perform screw tightening work to fasten the parts. Further, at the fastening station ST3, two
Elevating pallet reference bins 47 are provided. In the vehicle assembly line illustrated in FIGS. 2 to 4, the positioning device 19 at the positioning station STI. Transfer device 16, and docking device 40 and slide device 4 in docking station ST2
5. The pallet transport device 17 and the robots 48A and 48B in the fastening station ST3 are subjected to sequence control by a sequence control unit connected thereto based on a sequence control program generated by the program generation device of this embodiment. That is, these positioning devices 19. The transfer device 16 and the like are regarded as "equipment" to be subjected to sequence control. The assembly operations on the production line shown in FIG. 2, that is, the operations performed by all of the "equipment" subject to sequence control described above, can be broken down into a plurality of "operation blocks."here"
``Action block'' can be defined as ■: a set of multiple unit actions. The most important property of a movement block is: This means that the motion can be completed independently from the motion block of In other words, an action block is related to other action blocks only at the level of the action block.The completion of the action in the other action block is necessary for the action block to be able to start its action. Other operating blocks are
There may be one case, or there may be multiple cases. In other words, the completion of the operation of one action block becomes the start condition for another action block (one or more action blocks) connected to it, or the end of the action of multiple action blocks becomes the start condition. be. Further, according to the above property, there is no need to activate another motion block at an intermediate stage of the motion in one motion block. Further, there is no need to wait for activation from another action block at an intermediate stage of one action block. From the definition of the action block in (1) and (2) above, the following property (2) of the incidental action block can be derived. (2): It is desirable that the action block be the largest among the set of unit actions that satisfy the properties (2) and (3) above. This property of ■ is not absolutely necessary. However, if (2) is satisfied, the number of action blocks that describe the production line is reduced, and the description of the entire process is simplified and becomes very easy to read. If the production line shown in Figs. 2 and 3 is described using operation blocks that satisfy the conditions (1) to (3), the following (
Then, 17 operation blocks of AO-A4 and BO to Bll are obtained. Of the 17 movement blocks above, 12 of BO-B11
Each operation block will be explained. Block BO: An operation block for positioning the pedestal 12 and the body 11- thereon by the positioning device 19. This operation block is called a pedestal positioning block. Block B1: An operation block for making preparations for transferring the body 11 to the transfer position 16. This operation block is called a transfer device preparation block. Block B2: The docking device 40 clamps the struts of the front suspension assembly with the left and right front clamp arms 30L and 30R, and the left and right rear clamp arms 31L. An operation block that prepares for clamping the strut 15A of the rear suspension assembly 15 with 31R. This operation block is called a strut clamp preparation block. Block B3: An operation block in which the body 11 on the pedestal 12, which has been positioned by the positioning device 19, is transferred to the lifting hanger frame 22 in the transfer device 16 and transported. This operation block is called a transfer device receiving block. Block B4 An operational block for preparing the slide device 45 for engaging the engagement means 46 provided on its movable member 42 with the movable engine support member on the pallet 13. This operation block is called a slide device preparation block. Block B5: An operation block in which the positioning device 19 returns the pedestal 12 to its original position. This operation block is called the pedestal original position return block. Block B6: Lifting hanger frame 2 of transfer device 16
Pallet 13
The engine 14 placed above, the struts of the front suspension assembly placed on the pallet 13 and clamped by left and right front clamp arms 30L and 30R, and the struts of the rear suspension assembly 15 clamped by left and right rear clamp arms 31L and 31R. Operation block that combines with 15A. This operating block is called the engine/suspension docking block. Block B7: An operation block in which the transfer device 16 returns to its original position. This operation block is called a transfer device original position return block. Block B8: An operation block in which the docking device 40 returns the left and right front clamp arms 30L, 30R and the left and right rear clamp arms 31L, 31R to their original positions. This operation block is called a clamp arm original position return block. Block B9: The pallet transport device 17 operates the linear motor, and the engine 14. An operation block that transports a pallet 13 on which a body 11 on which a front suspension assembly and a rear suspension assembly 15 are combined is placed to a fastening station ST3. This operation block is called a linear motor propulsion block. Block B10: An operation block in which the robot 48A performs a screw tightening operation for fastening the engine 14 and the front suspension assembly combined to the body 11 to the body 11. This operation block is referred to as a screw tightening first operation block. Block B11: An operation block in which the robot 48B performs screw tightening work for fastening the rear suspension assembly 15 combined with the body 11 to the body 11. This action block is called the second screw tightening block. FIG. 5 shows the relationship between 17 operation blocks, AO to A4 and BO to Bll, in the production line shown in FIGS. 2 to 4. This figure 5 is similar to figures 2~
A programmer who intended to create a sequence control program for the production line shown in FIG. 4 analyzed the operations on this production line and created it. In FIG. 5, two lines are drawn for the block B3 of the transfer device 16 from the operation block BO of the positioning device 19 and the operation block Bl of the transfer device 16. This line is connected to the block B3 by the positioning device 19.
2 and the body 11 thereon (action block BO) are completed, and the preparation for transferring the body 11 at the transfer position 16 (action block Bl) is completed, and then the operation is started. In other words, operation blocks BO and B1
and perform parallel operations. Each of the above-mentioned operation blocks BO to Bll is divided into a plurality of operation steps, each of which involves an output operation. here,
The operation step is required to be accompanied by an output operation. However, since the action steps are constituent elements of action blocks, the action steps within one action block do not perform an output action with respect to the action steps of other action blocks. For example, the pedestal positioning operation block BO is divided into 10 operation steps BO30 to BO39 as follows. BOSO: An operation step for checking various conditions for starting the operation block BO (referred to as a condition confirmation operation step). BO3I: Operation step (BF positioning operation step) in which the pedestal 12 is moved by the positioning means BF and the front part of the body 11 is positioned in the vehicle direction. BO32+ Operation step (BR positioning operation step) in which the pedestal 12 is moved by the positioning means BR and the rear part of the body 11 is positioned in the vehicle width direction. BO33: Operation step (TL positioning operation step) in which the pedestal 12 is moved by the positioning means TL and the body 11 is positioned in the direction along the rail 18 (front-back direction). BO34: Operation step in which the lift reference bin FL engages with the front left side of the body 11 (FL engagement operation step). BO35: Operation step in which the lifting reference bin FR engages with the front right side of the body 11 (FR engagement operation step). BO36: Operation step in which the lifting reference bin RL engages with the rear left side of the body 11 (RL engagement operation step). BO37: Operation step in which the lifting reference bin RR engages with the rear right side of the body 11 (RR engagement operation step). BO38: Operation step (B
F original position return operation step). BOS9: After the positioning means BR positions the rear part of the body 11 in the vehicle width direction, an operation step (B
R original position return operation step). FIG. 8 shows an example of the operational steps of the production line shown in FIG. 2. FIG. 9A represents operating circuit elements for driving, for example, the lifting reference bins, etc. of the production line of FIG. 2. FIG. The input to such an element is an input signal Yo for driving a solenoid as a mechanical element of this element, and this Y. is the output from the sequence ladder program element. Also,
As the output of this element, in order to confirm the operating state of the element, there is an output from the limit switch (output confirmation L/S) to confirm that it has been driven, and to confirm that it has been returned to the original position. There is an output from the limit switch (return confirmation L/S) for this purpose. FIG. 9B is a diagram illustrating the logic of the output drive operation of the element in FIG. 9A. In order for the solenoid to turn on, interlock condition ILC must be satisfied. The interlock conditions ILC - generally include various activation conditions specific to that operating step. FIG. 9C shows an example of a typical operating circuit used when automatically generating the entire sequence. In FIG. 9C, condition MA is closed when this operating circuit is operating in automatic mode (a mode in which the production line operates according to a sequence control program). Condition M3 is closed when this operating circuit is operating in manual mode. M3
is normally closed. Therefore, in normal automatic mode, if interlock conditions ILC and xl are satisfied,
Output Y. is output. On the other hand, ILC. describes the logic of operating conditions in manual mode. In manual mode, contact M is open (so condition X, ILC,
If both are satisfied at the same time, or if conditions X-2XI are satisfied at the same time, then Yo is output. - Generally, X is the logic for killing the manual operation interlock conditioner LC. As is clear from the above, contact conditions MA, Mm
, FIG. 12 shows an example of the embodiment system described in FIG. 1 rewritten from the viewpoint of the hardware configuration. As shown in FIG. 12, this system for sequence control/damage diagnosis/recovery is connected to sequence control target equipment 50 (corresponding to equipment 100 in FIG. 1) and performs sequence operation control thereon. A sequence control section 51 (corresponding to the sequencer 101 in FIG. 1), an automatic generation section 90 (corresponding to the subsystem 106 in FIG. 1), and a failure diagnosis section 52 (subsystems 103, 104, and 104 in FIG.
105) and CRT (cathode ray tube) operation panel section 53
It consists of The sequence control unit 51 includes a program memory 5 in which a sequence operation control ladder program (FIG. 11) is stored.
5, and a computer having a transmitting/receiving interface 54. The failure diagnosis unit 52 detects the path line 61
a central processing unit (CPU) connected through 62.
It has a memory 63, an input/output interface (I10 interface) 64, and a transmission/reception interface 65, and is further provided with a keyboard 66 connected to the I10 interface 64, a CRT 67 for display, and a printer 68. Further, the CRT operation panel section 53 is connected to a CPU 72 through a path line 71.
.. Memory 73. transmission/reception interfaces 74 and 75;
It also has an I10 interface 76, and is further connected to a hard disk device 77 as an auxiliary memory connected to the I10 interface 76, a CRT 78 for display, a keyboard 79 for inputting data and control codes, and a transmission/reception interface 74. A touch panel 80 is provided. touch panel 8
0 is attached to the outer surface of the face plate portion of the CRT 78. Further, the automatic generation section 90 is a section that automatically generates a ladder program for sequence control (FIG. 11) and a ladder program for recovery. Regarding a subsystem that automatically generates a ladder program for sequence control, the present applicant has filed Japanese Patent Application No. 1-253991 (R Sequence Control Program Automatic Creation Device). The transmitting/receiving interface 54 provided in the computer, the transmitting/receiving interface 65 provided in the fault diagnosis section 52, and the transmitting/receiving interface 75 provided in the CRT operation panel section 53 are interconnected. The transmission/reception interface 65 provided in the CRT operation panel section 53, the transmission/reception interface 75 provided on the CRT operation panel section 53, and the interface 96 of the automatic generation section 90 are interconnected. Through 54 and 65, program processing data indicating the operating status of the sequence operation control ladder program and simulation program in the sequence control unit 51 is received and sent to the CPU 6.
2 to obtain a display signal and an output signal based on the program processing data, and supply the display signal to the CRT 67 and the output signal to the printer 68 through the I10 interface 64, respectively. Next, a procedure for automatically creating a sequence control program for sequentially controlling the operation of each facility on the vehicle assembly line as described above will be schematically explained. The data required to automatically generate such a control program are the standard "step ladder pattern", "input/output loop", and the aforementioned "operation block map". This is a "movement step map." The standard step ladder pattern is a database that stores symbols of operation circuits that describe all operations necessary for a production line control program. An example of such a regular pattern is the one shown in FIG. 9C described above. The input/output kamatsubu is a database that describes the input/output relationship of each of the operating circuits that may be used in the production line for boat fishing. An example of this input/output kamatsubu database is shown in Figure 7. The above-mentioned standard step ladder pattern database and input/output step map database are data common to the production line, and are not unique to a particular production line.The unique data is the motion block map data and motion step map data. The operation block map is data that describes each of the above-mentioned operation blocks and also describes the cooperative relationship between these operation blocks. An example of block map data is shown in Fig. 6.A movement step map is unique data that describes the movement steps included in each movement block that is unique to a certain production line.
An example of an operation step map specific to the production line shown in FIG. 8 is shown in FIG. A sequence control program is generated based on these two standard databases and two unique data. First, the standard step ladder pattern database will be explained according to FIG. The OA diagram is a pattern that describes the start and stop of an action block in a typical manner. Figure 10B is the same pattern as described in connection with Figure 9C. FIG. 10C shows one contact condition added to the pattern of FIG. 10B. Next, the input and output will be explained. This input/output guide is a table in which the input/output modes of all equipment used in the production line are described in advance. The input/output hook in Figure 7 is the positioning device 1 in Figure 2.
It is about 9. In this input and output,
“Comment” indicates the contents of the input/output operation. Also"
"Good" is automatically created. Data regarding "Comment", "Operation" and "Original position" are input by operating the keyboard 67. "Output coil device", "Confirmation input contact device" ” and “manual input contact device” are automatically set. For example, the operation circuit called BF (positioning) of Aoz is
The operation type is "output" and the output coil terminal is Yl.
It is. The confirmation input contact name when output is "Xl". Further, the contact name for manual input is "X,". Next, the motion block map will be explained. The data of this map is obtained by analyzing the operation of the target production line and expressing the process of the production line using operation blocks according to the above definition. The operational block map shown in FIG. 5 is a table that represents the operational block chart shown in FIG. 5 when it is obtained as a result of analyzing the production line shown in FIG. In other words, the table (map) of FIG. 6 is approximately equivalent to the chart of FIG. 5. In FIG. 6, "5C-REG" is a 16-bit register, one of which is provided for each of operation blocks BO to Bll. This register indicates which operational step is currently being executed within the corresponding operational block. For example, action block B. And now B0S. If the operation step (see Fig. 8) is being executed, “B, S,” is written in 5CREG of operation block B0.
is stored. "FROM" in the action block map indicates the immediately preceding action block that is the condition for starting the action of the relevant action block. For example, motion block B is motion block B.
0. The completion of B becomes the activation condition. Furthermore, "To" indicates an action block immediately following the action block whose action is started upon completion of the action of the action block. For example, the end of action block B, means the activation of action blocks B, , B,. The "clear condition" is a motion block in which the equipment related to the motion block returns to its original state. Furthermore, "equipment" refers to the sequence control target equipment related to the relevant operation block. The contents of "No" and "5C-REG" are automatically created. On the other hand, “block name”, “FROM”, “To
”, “clear condition” and “equipment” are entered by the programmer by operating the keyboard 67. Next, the operation step map shown in FIG. 8 will be explained. As mentioned above, the operation steps are Describe the details of the specific operations within the block.In other words, the entry/exit switch (Figure 7) does not represent the sequence of operations.However, it also expresses the operation sequence of individual equipment in the operation step map. Figure 8 shows an example of the operation step map of operation block B. In Figure 8, "No" is automatically assigned by the system.
For example, "B oo" for operation block B0. Starting from ``BoS,'' to ``B, S,'', the system generates a ``comment'' each time the programmer inputs a ``comment'' from the keyboard 67. Note that ``Bo. . "B11119" is a motion step that means the preparation of the corresponding motion block, and is placed at the beginning of each motion block in the ladder program.Also, "B 11119" is a motion step that means the completion of the corresponding motion block, and is placed at the beginning of each motion block in the ladder program. It is placed at the end of each motion block.The minimum requirement for generating a motion step map is "comment" information that is input in the order of the step sequence.For example, in step number "B0So", the programmer enters "condition If you enter "Confirm", the number "A" with the comment name "Work present" at the beginning of the input/output Kamatsubu will be displayed.
Read the data of “A o +” of input and output.
Since the confirmation input contact is "Xo" and the manual input contact is "XA", these data are written to the corresponding positions in Fig. 8.The data of "+" is written to the corresponding position in Fig. 8.
"Yo" is the output person given to the first action step of the action block.Subsequently, the programmer selects action step B.
, S, ``'', enter the comment ``BF (positioning)'' and the operation type ``output'', then index the input/output kamatsubu from this title and obtain the data with number ``A 62''.Number `` The data for ``802'' is ``Yl'' for the ``output coil,''``Xl'' for the ``confirmation input contact,'' and ``XIl'' for the ``manual input contact.'' Write the corresponding data. In this way, the motion step map (Figure 8) writes the corresponding data into the input/output map (Figure 7) based on the "comment" and "motion type" entered by the programmer. Search and create. Further, such a motion step map is created for each motion block. In the operation step map shown in FIG. 8, the data on the side of -Koseki is the predicted operation time of each operation step. This data is important data for detecting and determining the above-mentioned ``step time over'' and ``step hang-up 1 error.'' Figure 11 shows the sequence ladder program for block B0 generated in this way. The structure of the ladder program can be better understood by comparing the ladder program in Fig. 11 with the operation step map in Fig. 8.For example, in operation step B.So, the automatic operation mode in which contact MA is closed In this case, contact device
Since 0 is closed, output Y1 is output. When Y is output, the confirmation input contact Xo is closed in BoSI, so ¥1 is output. The above is a description of the automatic generation of the sequence control ladder program in the system of this embodiment, and through this explanation, the mutual operations between the respective operation blocks will be understood using the operation block map (FIG. 6). Also, the operation step map and the input/output map (FIG. 7) will help you understand how efficiently the control program can be automatically generated. Below, we have explained the automatic generation of the ladder program in the system of this embodiment. Also, in the process, I was able to understand what a motion block map and motion steps are. FIG. 13 explains the relationship between the control programs in the fault detection/fault diagnosis subsystems 104 and 105 in FIG. 1, and the relationship between them and the step ladder program 200 (101 in FIG. 1). . Sequence control, monitoring, and failure diagnosis of this system will be explained using the same figure. While the automatic program generation described above is a program that operates separately and independently from the sequence control and fault diagnosis, as will become clear later, the sequence control program and the fault detection/diagnosis program are closely related to each other. Operate. In FIG. 13, the step ladder program 200 is the ladder program shown in FIG.
As explained in connection with FIG. 1, specific operations of individual actuators in individual operation steps are described. The map control program 201 also includes an operation block map (Fig. 6) and an operation step map (Fig. 6).
The operation of the equipment executed by the ladder program 200 is monitored while referring to FIG. Details of this map control program 201 are shown in FIG. 16A. Further, the operation monitoring program 202 detects the occurrence of a failure while monitoring the exchange between the map control program 201 and the ladder program 200.
Shown in Figure B. Further, the failure diagnosis program 203 performs a failure diagnosis when notified by the monitoring program 202 that a failure has occurred. The actuator (that is, the operation step) in which this failure occurred is determined by the monitoring program 202 and the map control program 2.
This can be known by the diagnostic program 203 examining the contents of a step counter, which will be described later, and which is recorded by 01. The specific device or contact within the actuator can be detected by the diagnostic program 203 based on the data of the input and output ports (FIG. 7). In order to understand the failure diagnosis system, the above-mentioned 5C-REG (abbreviated as C8) set for each operation block is required.
It is necessary to understand the following. FIG. 14 shows the above CS register and time register (TS,...) provided in a certain operation block i (BL,).
TS, ) and the block time register TB. The cs register C81 stores the number of the last completed operation step in block i. Further, the step time register TS stores the time when the last executed or currently executed operation step was started. TS, , stores the time at which the last action step that was executed ended. Further, the block time register TB is zero until the block becomes activated. When activation becomes possible, the time when activation becomes possible is stored in TB. FIG. 15 shows how each of the above registers is set in each block. At the point when the execution of a certain operation step is finished, T S
,,=T S ,,-T S ,,...
...(1) is the time required to execute the operation step. As mentioned above, counter C8, stores the number of the last operation step that block i finished executing (actually, it indicates the number of the next operation step after that operation step), so from the contents of C8, , the time TSO required to execute the last completed operational step can be calculated. In the fault diagnosis system of this embodiment, by comparing this TS, , with the standard time required to execute each operation step stored in the operation step map shown in FIG. 8, TS, , -τ> If δ0...(2), it is determined that there was a failure (r step time over J described above) in the execution of the operation step. Here δ. is a constant. In addition, in this fault diagnosis system, the operation steps that have not yet been executed are periodically scanned, and the elapsed time T p T S s l up to the present time is determined as Tp −TSm, > δ
1 (3), it is determined that the operation step is in a loop or hangs up. Here, T is the current time, and δ1 is a constant. δ1 is typically the maximum time required to perform an operational step on the production line, with some tolerance. Such a failure is a "step hang-up." Block hang-up "Block hang-up" will be explained using FIG. 15 and FIGS. 19A to 19E. As shown in FIG. 15 or 5, there are a plurality of blocks that operate in parallel with each other. Considering such a plurality of blocks as a group, one group (first
In the example in Figure 5, all the step operations of the group (BLI forms one group) are completed, and the other group following that group (in the example in Figure 15, the GRI consisting of BL2, BL3, and BL4) is executed. It is necessary to monitor the elapsed time until the The block time register TB mentioned above is
This is the elapsed time until the block group is activated. By monitoring the measurement operation time for each group and comparing it with the reference time, we can detect abnormalities in each group.
In other words, it is now possible to diagnose a fault that occurs during the transition from one block to another. Such a failure is r-block hang-up 1. In the system of this embodiment, when a block hang-up occurs, further steps are performed to identify the operation step that caused the block hang-up. A method for identifying the operation step that caused "r block hang-up" will be explained using FIGS. 19A to 19E. These FIGS. 19A to 19E are simplified versions of the production line shown in FIG. 5 in order to facilitate the explanation of "r-block hang-up." In FIG. 19A, the production line simply consists of four operating blocks. The motion block map for these motion blocks is shown in a simplified manner as shown in FIG. 19B. In FIG. 19B, the time required from block 1 to block 2 to be activated is expressed as "12," the time required from block 1 to block 3 to be activated is expressed as r13, etc. These transition times are expressed as " This is because block 4 can be set in advance.For example, block 4 can be configured in parallel with block 2,
It is activated upon completion of step 3. As explained in connection with FIG. 15, the block time register TB is zero until the block is ready to start. Then, when it becomes possible to start, the time is stored. Therefore, if the value of register TB is not zero (and the elapsed time up to the present time is sufficiently larger than the above value, it can be determined that a block hang-up has occurred. Therefore, block 2.
If block 4 is not activated even after time r 24.1734 has elapsed since the end of block 3, the failure is recognized as block hang-up. When a block hangup is detected because block 4 is not activated, the operational step that caused it must be in either block 2 or 3. FIG. 19C shows the action step map of action block 2, and FIG. 19D shows the action step map of block 3. According to FIG. 19C, four operation steps are set in block 2, and the output at each step is Yl, Y-,...
・Y4, and the confirmation switches of those output actuators are X, , X, . . . x4. Also, the 19th D
According to the figure, three operation steps are set in block 3, and the outputs at each step are Ys, Y,...
Y, and the confirmation switches of their output actuators are X,,X,,X,. The states of the confirmation switches X1 to X are as follows at the time of ending blocks 2 and 3.
Each block is unique and can be known in advance. The activation condition map of FIG. 19E shows the conditions for activating each of the four operation blocks shown in the example of FIG. 19A, that is, the state logic of the operation confirmation switch. Regarding block 4 in the figure, in block 2, outputs ¥1 to Y4 are turned on, and confirmation switches X to X4 are turned on. Also, block 3
Then, outputs Y4 to Y are turned on, and confirmation switch X4 is turned on.
7 to X7 are turned on. Therefore, when block 4 is activated normally, X+ *X2 * ... *X. Must be. Blocks 2 and 3 are activated by the end of block 1. Therefore, the activation condition for blocks 2 and 3 is the logical product of the confirmation switch states of all the operation steps of block 1. In FIG. 19E, (N> means that the confirmation switch is in the state of confirming that output Y is in the "out" state, and <I> means that the confirmation switch is in the state of confirming that output Y is in the "return" state.
It means to be in a state to confirm that it is in a state. In this way, if the activation condition of each operation block is programmed with the logical product of the device states that confirm the outputs of all operation steps of the block preceding the block, the activation of the operation block will be as follows: It is not performed unless it is confirmed that all the operation steps of the previous operation block have completed normally. In other words, if the activation conditions are not satisfied, the aforementioned block hang-up occurs and is correctly detected as a failure. Moreover, once the block in which a failure has been detected is recognized, by comparing the startup condition map and the actual state of the confirmation switch, it is possible to determine which switch is abnormal, and whether the input/output switch (Figure 7) is operating correctly. By referring to the step map (FIG. 8), it is possible to quickly find out which output actuator in which operation step is at fault. In sequence control on a production line, from experience, the actuator of the operation step is not in the "out" state, but in the "out" state.
If the machine stops in a state where it is not in the "return" state, or if
In some cases, it may indicate both the state and the [Return] state. One of the reasons for this is that the heavy actuator falls into a "halfway" state due to bounce, neither in the "out" state (nor in the "return" state). The situation is that the sequence control appears to be proceeding normally, but the operation step (of another operation block) that is supposed to be activated due to the status of the defective confirmation switch is not activated for a long time, resulting in a failure. However, the stopping point is,
There is a high possibility that this is an operation step that is far away from the operation step where the failure actually occurred. However, according to the block hang-up detection method of this embodiment, as described above, the activation condition of each operation block is a logical product of the logical states that all check devices of the previous block should be in, as shown in FIG. 19E. is set, so even if you fall into the above-mentioned halfway switch state at the operation step of one operation block and cannot recognize it as a failure at that operation step, that operation block will end and the next one will continue. This can be seen as a block hangup when a motion block is activated. In other words, the operational step in which the failure occurred and the operational step in which the failure was recognized are not too far apart in time and space, which not only makes failure diagnosis more accurate, but also speeds up recovery. It has the effect of becoming. When a failure is detected due to step time over, step hang-up, block hang-up, etc. as described above, the faulty actuator is identified from the operation step map (FIG. 8) by identifying the failure step. This is because, as shown in FIG. 8, one operation step corresponds to one actuator. Here, from the faulty actuator, the state in which this actuator is stopped, that is, the LS (two limit switches L for output and return) that define the operation of this actuator.
It is necessary to know what state S) is in. The input/output switch in FIG. 7 and the operation step map in FIG. 8 are used to know the state of this LS. In the operation step map of FIG. 8, an actuator identification number column is provided. This identification number is a number (eg, AOI) that identifies the actuator used in the corresponding step (eg, BoSo). This identification number is the number of each individual item in the inlet and outlet. The input/output switch in FIG. 7 not only indicates the operation type and contact name of each actuator, but also describes the relationship between the contact indicating the out state and the contact indicating the return state. Since the actuator performs reciprocating motion, one actuator always has an output state and a return state. In the input/output kamatsubu in Figure 7, the "correspondence" is as follows:
The bear relationship is described. For example, "AO3" is written in the correspondence column for the actuator BF (this actuator is identified by the number AO2). In other words, number A indicates when the BF actuator is in the extended state.
The return state specified by O2 and corresponding to this exit state is:
It shows that it is at number AO3. Therefore, once the fault diagnosis system has obtained the fault block number and fault operation step number, it knows the identification number of the faulty actuator from the action step map, and from this number, what kind of LS is assigned to this faulty actuator?
You can check whether it is set. Then, if you can know which LS is installed,
By reading out the state of S and displaying it, for example,
The failure status can be communicated to the operator. The input/output switch in FIG. 7 is independent of the motion step map (FIG. 8) that describes the actual motion sequence and the ladder program (FIG. 11). That is, even if the production line is changed and the operation step map (FIG. 8) or ladder program (FIG. 11) is modified, there is no need to modify the input and output ports. That is, the user is freed from the effort of modifying the fault diagnosis program every time the production line is changed. The above-mentioned standard execution time is defined by, for example, the average value TS□ of the measured operation time for a predetermined number of cycles during normal operation and the standard deviation value σ, for example, y=Tsx++ 3a..."
(4) is preferably defined. More preferably, the data τ is updated every cycle. Because,
This is because the operating characteristics of the actuator change over time. Furthermore, it is desirable to update the time r (see the operation block map in FIG. 6) used for detecting block hang-up based on the actual time required, taking into account changes over time. 1 Pre-Stop I Next, the control operation in the system of this embodiment will be explained according to FIGS. 16A to 16C. FIG. 16A shows a control procedure of the map control program 201 which monitors the operation of each actuator on the production line in accordance with the operation block map and the operation step map in the ladder program 200. When this program is started, in step S2, initialization is performed and the first block group that can be started is detected. This group has 1
It may contain one block or it may contain multiple blocks. In step S4, the existence of a newly enabled block is checked. The purpose of step S4 is mainly to check whether there is any executable action block following the completion of all the steps of one action block. If such a block exists (if it is started from step S2, there must be an executable action block), then in step S6,
Detect that block number. Let such block number be i
Of course, this number can include multiple numbers. This is because there are cases where it can be executed by a group. In step S8, the action step map of such an action block is read, and in step SIO, the action block is marked as being executed. In step S12, it is checked whether there are any executable action steps. The operation step becomes executable when the operation of the operation step indicated in the CS register is completed, and is performed at step 554 (FIG. 16B) of the monitoring program 202. If there is an executable action step in the action block, the current time is written in the timer register TS of the action block i as the start time in step S32. The operation in step S32 is performed as long as there are executable operation steps. In practice, if there are multiple action blocks within a group, one action step will be performed in each of the action blocks. Once all executable action steps have been activated, step S1 continues until the action of any action step is completed.
If the determination in step 2 is NO, the process proceeds to step S14 and waits for the completion of execution of any of the operation steps. When an end signal is transmitted from the ladder program to the sequence control program indicating that the execution of any of the operation steps has ended, the process advances from step S14 to step 316. Here, the completed operation block number i and operation step number (see FIG. 13) are read. The action block including the completed action step can be specified by this i. In step 818, the end time is written to the timer register TS1 of the operation block i, and in step S20, the CS register is incremented by one to indicate the next operation step to be executed. If such an operation is performed, the CS register of the corresponding block will be updated and T S -1 will also be updated in order from the operation step where the actuator operation is completed. On the other hand, the monitoring program 202 monitors the step end signal from the ladder program 200 in step S40 of FIG. 16B. If the actuator operation ends in any ladder element, step S42
Then, read the block number i and step number notified from the ladder program. And step S
At step 44, the timer values TS, , TS, of the block are read from the block number i, as well as the predicted execution time τ of the operation step from the operation step map, and the elapsed time TS is calculated according to equation (1). . Then, in step 346, it is determined whether the time TS required for execution was abnormally long. If the determination in step S46 is OK, step S52
In step S54, the content of the timer register of the operation block is cleared, and in step S54, the operation step currently indicated in register C8 is marked as executable. The operation step indicated by C81 is the next operation step that has been completed, as updated in step S20. When an action step of a certain action block is marked as executable, YES is determined in step SL2 of FIG. 16A of the sequence control program, and the next action step is executed. When the operation steps are executed one after another in this way, in step S22 for a certain operation block, when the contents of the CS register exceed the final step number, that is,
There is a time when all processing of the operation block is completed (in this case, in step S24, the block is marked as finished, and in step S26, a timer is set for the block to be activated next to the current block). Write the current time to TB, , where TB,J is the block j that should be activated next to block i after block i has finished.
This is a timer to clearly indicate the existence of the 19th
This corresponds to U lx etc. in Figure B. In addition, time register TB
is cleared in step S30 when the first action step of the action block to be started next is started. Returning from step S26 to step SS4, a new executable action block is searched for. For example, in the example of Figure 5, B
When the processing of O is completed and the process returns to step S4, if the processing of B1 has not yet been completed, B3 is not marked as executable. Next, returning to step S46 in FIG. 16B, the procedure for discovering a step time-over failure will be described. In step 346, TS. −te〉δ. If it is determined that the time taken to execute the operation step is abnormally long, step S48 is executed.
Then, the operation block to which the operation step belongs is marked as a failure, and at step S49, the estimated time is updated. The details of this update process are shown in FIG. 16D, and the difference between the time T8□ actually required to process the motion step and the expected time τ is small, that is, T8□−τ □ ε (( 1) If the time required is slightly longer than before, it is assumed that this is due to aging of the equipment, and
In step 5102, past TXI and current T
From XI, calculate and update the value for the next time. Such updates enable accurate failure detection that also takes secular changes into account. In the control procedure of FIG. 16B, the diagnostic program (FIG. 16C) is started in step S50, and then step S
Return to 40. The reason why the process returns to step S40 is to detect a failure also in the operation steps of other operation blocks. Furthermore, the reason why the execution of the sequence control program (Figure 16A) is not stopped after detecting a failure is because even if one operation block is stopped, there are other operation blocks that should run in parallel, so the operation of that operation block is stopped. This is because you must not do so. The reason why it is not necessary to stop other motion blocks is because the motion blocks are originally defined on the condition that they operate independently of other motion blocks. Step 356 and subsequent steps are procedures for detecting block hangup or step hangup. This section explains what to do when the ladder program hangs up at a certain operation step. In such a case, no end signal is generated. Therefore, the process advances from step S40 to step S56. In step S56, the passage of a certain period of time is checked. This is the current point in time (time T
, ) exceeds a certain value. In other words, the presence or absence of block hang-up or step hang-up is checked at regular intervals. In step S58, an operation step marked as being executed is searched for. This means that the contents of each CS register of an operation block marked as being executed points to a specific operation step, and the TS□
Although the start time has been written in TS, , has not been updated yet. In step S60, the elapsed time Tp-TS up to the present time is calculated, and in step S62
Then, according to equation (3), T p T S s + > δ, -...
...Determine (3). If the determination is YES, the process proceeds to step S64 and the block is marked as a step hang-up failure. A case where it is determined in step S58 that there is no operation step being executed will be described. In this case, step S
At 70, a search is made for a block j whose block time register TB, . . . has a non-zero value. As described above in relation to step S26, if TB is not zero, this indicates that even after block i has ended, the subsequent block (block j) has not yet been activated. In step S72, the Difference between the elapsed time during which the operation step remains unactivated and the expected time "1," (T, -TB, ,)
-r,. Calculate. If the difference is greater than the constant 62, it is determined in step 376 that the block is hung up. In step 578, the fault diagnosis program (16th
(Figure C). The failure diagnosis program 203 will be explained according to FIG. 16C. This fault diagnosis program has slightly different processing depending on whether the fault is a block hang-up, a step time over, or a step hang-up. This is because if step time over or step hangup is detected, the faulty operation step can be directly known, whereas in the case of block hangup, it is necessary to trace through the faulty action steps. In the case of a step time-over or step hang-up failure, a block marked as failure is searched for in step S82. This mark was made in step S48 or step S66. Step S
At 72, the contents of the CS register of the detected block are read to identify the failed operational step. Step S7
In step 4, the identification number of the failed actuator is determined from the operation step map. In step S76, the incoming and outgoing kamatsubu (Fig. 7) is searched based on this identification number, and step S76 is performed.
At 78, the outgoing and returning LS numbers of the actuator having this identification number are determined. In step S80, these things were known. The operation block number, operation step number, actuator number, and LS number where the failure occurred are displayed to prompt the operator to take corrective action. A case where block hang-up is detected in step S80 will be described. In this case, in step S96,
The activation condition map (FIG. 19E) corresponding to the block number in which block hang-up has been detected is read. In step 398, the logical states of the confirmation switches written on the map are compared with the actual states of those confirmation switches to find a confirmation switch that does not match. Once this mismatched switch device has been identified, next, in step 5100, the block map (FIG. 6) is searched for the parent block of the block in which the hang-up has been detected. Step 51
In step 02, the operation step that uses the mismatched switch is identified from the operation step map (Fig. 8) of the detected parent block, and from now on, in step 5102, the actuator number and L/S number of this operation step are identified. The process then proceeds to step S92. In step S92, the fault locations searched in the manner of 0 or more are highlighted in a predetermined color on the monitor screen of the display device 8. Then, the worker performs restoration work at the failed location. The detection of "r-step time over" and "r-step hang-up" described above is basically performed by a program independent of the step ladder program 203. This has the following effects. That is, it is no longer necessary to provide a so-called "trap circuit" for detecting the above-mentioned failure in the step ladder program. In FIG. 20(b), Ml is an output due to satisfaction of interlock condition ILC, and when My is output, actuator output Y is output. Conventionally, as shown in FIG. 20(b), a timer circuit T is provided which is activated when the switch M is closed.
If the switch XL3, which checks the output Y, is not opened before this timer times out, a failure (ALM on) is determined. However, according to this embodiment, such a timer circuit is no longer necessary, and as shown in FIG. 20(a),
This means that it is only necessary to create step ladder programs necessary for original production sequence control. The above are the fault detection/fault diagnosis methods provided in the system of this embodiment. Next, a method for restarting the entire system from a fault detected in this way (failure recovery subsystem 103 in FIG. 1) will be described. As explained in connection with FIG. 1, this recovery subsystem 103 includes a previously generated recovery program 102.
Restoration will be carried out based on the following. Therefore, automatic generation of a recovery program in this system will be explained. FIG. 21 explains the operating principle of this recovery subsystem. During the execution of a certain block B, , its operation step B
In the past, if there was a failure in I, S, BnS was manually operated. -BllS6... and proceeded with the steps. However, with this conventional method, not only is the recovery process not automated, but the manual step progression often gets stuck in the middle. In this recovery subsystem, as shown in FIG. 21, the operation is reversed from the failed operation step B, , Ss, to the beginning B, S of this block B, and the operation step B at the beginning is returned. This is to restart from Sl. In other words, the backward ladder program (
If the ladder program during normal sequence control is the one shown in FIG. 11, the RRP (referred to as RRP) will be as shown in FIG. 22. As can be seen by comparing Figures 11 and 22, this recovery ladder program RR
P is such that the operation confirmation switch of output Y in a certain operation step in FIG. 11 is set as a manual interlock condition for the preceding operation step. I will explain in detail. In the step ladder program shown in FIG. 11, which is a ladder program of the action step map shown in FIG. This becomes the output Y2 in S2. The operation of this output Y2 is checked by a switch X2. On the other hand, in RR of FIG. 22, the confirmation switch X of output Y3
3 is closed, output Y2 is output manually, and when confirmation switch X2 of this Y2 is closed, RR,
At this point, an output Y1 is output. In this way, in the recovery ladder program RRP, the reverse control explained in FIG. It has been realized. FIG. 17 shows the above-mentioned backward ladder program RRP.
13 is a flowchart of a program for automatically generating . This program is stored in the subsystem 106 in FIG. 1 or in the automatic generation unit 90 in FIG. 13. When this automatic generation program is started, in step 5150 of FIG. 17, the operator is prompted to specify the block number n to be generated. In step 5152,
Read the operation step map corresponding to that block number. In step 5154, m, which corresponds to the step number of the sequence control ladder program SRP, is initialized to the maximum value. In step 8156, k corresponding to the step number of the recovery program RRP is initialized to "1". In step 5158, from the operation step map, the output Y of SRP, B, , S=, and the output Y of RRP,
Assign to k. In step 8160, the confirmation switch X of the output Y1 of B, , S, is assigned to the interlock condition of RRPk. In step 8162, k is incremented, and in step 8164, m is decremented by one. The above operation is performed in step 8166, m=0
Repeat until . In this way, the recovery program 102 is automatically generated and stored in the hardware disk 77 without being activated until the recovery switch (not shown) is pressed by the operator. FIG. 18 shows the control procedure of the control program for the recovery subsystem that is activated when the recovery switch is pressed by the operator. When a failure occurs, if the failure is step time over or step hang-up, the failure operation step in the block where the failure occurred is indicated by the CS register and stopped according to the control procedure of FIG. 16C. The other blocks are waiting for the failed plot to restart. If the block hangs up, the system waits for restart with the failed operation step identified according to the control procedure shown in FIG. 16C. When the switch is pressed in FIG. 18, in step 5182, the faulty block and faulty action step identified as described above are input. Step 51
At step 84, the recovery program corresponding to the failed block is read from the disk 77, and the program is loaded into the sequencer. In step 8186, this recovery ladder program RRP is started from step number k corresponding to the failed operation step known in step 8182. In step 5188, the end of this recovery program is waited for, and in step 5190, the step ladder program SRP is reloaded into the sequencer, and in step 5192, this ladder program is restarted. As explained above, according to the failure detection/diagnosis/recovery system of this embodiment, ■ easy and accurate detection of two-step time over, step hang-up, and block hang-up; It is possible to detect failures. That is, the step time over detection of the system of this embodiment,
With step hang-up detection, there is no need to incorporate a failure detection circuit into the ladder program as in the past.
Simplifications have been made. In particular, in step time over detection, the standard expected time τ
is updated based on actual data, so its detection accuracy is ensured. Furthermore, by incorporating the block activation condition into the activation condition of each block, a failure state such as a confirmation switch being turned on in a halfway state can be recognized as a block hang-up state. By this recognition, such a fault condition can be detected as a block hang-up at an early stage before the number of operation steps has progressed, and as a result, more accurate fault diagnosis can be performed. By setting the confirmation switch as an interlock condition for the recovery ladder program RRP, a recovery program can be automatically generated very easily using only the operation step map.In addition, by starting this recovery program, By taking the method of returning the blocked block to its initial state and then skipping the restart,
Recovery will be more certain. The present invention can be modified in various ways without departing from the spirit thereof. For example, in the above embodiment, the present invention was applied to an automobile production line, but of course the present invention is not limited to such an application field, and can be applied at least as long as sequence control is performed. It is possible. Blank space below [Effects of the Invention] As explained above, the fault detection method of the present invention is such that, in a production line that is controlled according to a ladder program created based on a map that describes the operation of each piece of equipment, The expected operating time of each ladder program element corresponding to the operation of the equipment is stored in advance, and the actual time required for the on/off state of the verification device to confirm the operation of the output device of said ladder program element is stored in advance. The present invention is characterized in that a faulty part in the production line is identified by comparing the operating time with the predicted operating time. According to the fault diagnosis method of the above invention, the predicted time can be mapped, and moreover, a fault can be determined simply by comparing it with the actual operating time. In other words, on the ladder program side,
A conventional timer monitoring circuit is not required. Further, by correcting the expected operating time based on the actual operating time, the expected operating time can be corrected in accordance with the actual operating time, and even if there is a change over time, highly accurate failure diagnosis can be performed.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明の好適な実施例に具備された機能をブロ
ック的に示した図、 第2図乃至第4図は本発明を自動車の組立ラインに適用
した場合の、その組立ラインの構成を説明する図、 第5図は上記組立ラインを動作ブロックに分解した場合
における、それらの動作ブロック間の接続関係を説明す
る図、 第6図は動作ブロックマツプの構造を説明する図、 第7図は入出カマツブの構造を説明する図、第8図は動
作ステップマツプの構造を説明する図、 第9A図は設備をアクチュエータによりシンボル化した
場合の表記を説明する図、 第9B図は1つのアクチュエータの論理を説明する図、 第9C図はステップラダーパターンの1つの例を示す図
、 第10A図乃至第10C図はステップラダーパターンの
他の例を示す図、 第11図は第5図に示した例の動作ブロックOについて
のラダープログラム要素を示す図、第12図は実施例シ
ステムのハード構成を説明するブロック図、 第13図は本実施例システムにおける、ラダープログラ
ムとシーケンス制御プログラムと監視プログラムと故障
診断プログラムとの関係を説明する図、 第14図、第15図は故障検出の手法を説明する図、 第16A図乃至第16C図は夫々、シーケンス制御プロ
グラムと監視プログラムと故障診断プログラムの制御手
順を示すフローチャート、第16D図は動作ステップの
実行予想時間を実際のデータに併せるための制御手順の
フローチャート、 第17図は、復旧用のラダープログラムを自動生成する
ための制御プログラムの手順を示すフローチャート、 第18図は自動生成された復旧用ラダープログラムを実
行するための制御プログラムの手順を示すフローチャー
ト、 第19A図乃至第19E図はブロックハングアップを検
出するための原理を説明する図、第20図は、本実施例
システムにおける、基準時間を設定し、この基準時間と
動作ステップの経過時間とを比較することにより動作ス
テップにおける故障を検出することの優位性を従来例と
の比較で説明する図、 第21図は本実施例における復旧手順を原理的に説明す
る図、 第22図はりカバリラダープログラムの一例を示す図で
ある。
Fig. 1 is a block diagram showing the functions provided in a preferred embodiment of the present invention, and Figs. 2 to 4 show the configuration of an assembly line for automobiles when the present invention is applied to the assembly line. FIG. 5 is a diagram explaining the connection relationship between the operation blocks when the assembly line is disassembled into operation blocks. FIG. 6 is a diagram explaining the structure of the operation block map. Figure 8 is a diagram explaining the structure of the input/output switch, Figure 8 is a diagram explaining the structure of the operation step map, Figure 9A is a diagram explaining the notation when equipment is symbolized by an actuator, and Figure 9B is a diagram explaining the structure of a single actuator. A diagram explaining the logic of the actuator, FIG. 9C is a diagram showing one example of a step ladder pattern, FIGS. 10A to 10C are diagrams showing other examples of step ladder patterns, and FIG. 11 is similar to FIG. FIG. 12 is a block diagram illustrating the hardware configuration of the example system. FIG. 13 is a diagram showing the ladder program, sequence control program, and monitoring in the example system. Figures 14 and 15 are diagrams explaining the relationship between the program and the fault diagnosis program. Figures 14 and 15 are diagrams explaining the fault detection method. Figures 16A to 16C are the sequence control program, monitoring program, and failure diagnosis program, respectively. FIG. 16D is a flowchart of a control procedure for matching the expected execution time of an operation step with actual data. FIG. 17 is a flowchart of a control program for automatically generating a recovery ladder program. 18 is a flowchart showing the procedure of a control program for executing an automatically generated recovery ladder program, and FIGS. 19A to 19E are diagrams explaining the principle for detecting block hang-up. , FIG. 20 shows a comparison between the system of the present embodiment and the conventional system, which shows the advantage of detecting a failure in an operation step by setting a reference time and comparing this reference time with the elapsed time of the operation step. FIG. 21 is a diagram explaining the principle of the recovery procedure in this embodiment, and FIG. 22 is a diagram showing an example of a beam recovery ladder program.

Claims (2)

【特許請求の範囲】[Claims] (1)個々の設備の動作を記述したマップに基づいて作
成したラダープログラムに従って制御される生産ライン
において、 前記マップに、前記個々の設備の動作に対応する個々の
ラダープログラム要素の予想動作時間を前もって格納し
、 前記ラダープログラム要素の出力デバイスの動作を確認
するための確認デバイスのオン/オフ状態が変化するの
に要した実動作時間と前記予想動作時間とを比較するこ
とにより、生産ラインにおける故障部位を特定すること
を特徴とする生産ラインの故障診断方法。
(1) In a production line that is controlled according to a ladder program created based on a map that describes the operation of each piece of equipment, the map includes the expected operating time of each ladder program element corresponding to the operation of each piece of equipment. A check for checking the operation of the output device of the ladder program element by comparing the actual operation time required for the on/off state of the output device to change with the expected operation time. A production line failure diagnosis method characterized by identifying a failure part.
(2)前記予想動作時間が前記実動作時間と異なるとき
は、予想動作時間を実動作時間に基づいて補正すること
を特徴とする請求項の第1項に記載の生産ラインの故障
診断方法。
(2) The production line failure diagnosis method according to claim 1, wherein when the expected operating time is different from the actual operating time, the estimated operating time is corrected based on the actual operating time.
JP02304023A 1990-08-31 1990-11-13 Fault diagnosis method for production line Expired - Fee Related JP3096056B2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP02304023A JP3096056B2 (en) 1990-11-13 1990-11-13 Fault diagnosis method for production line
EP91114592A EP0473174B1 (en) 1990-08-31 1991-08-29 Diagnostic method for production line
DE69119327T DE69119327T2 (en) 1990-08-31 1991-08-29 Diagnostic procedure for a production line
KR1019910015192A KR950001413B1 (en) 1990-08-31 1991-08-31 Diagnostic method for production line
US08/270,225 US5410469A (en) 1990-08-31 1994-07-01 Diagnostic method for production line

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP02304023A JP3096056B2 (en) 1990-11-13 1990-11-13 Fault diagnosis method for production line

Publications (2)

Publication Number Publication Date
JPH04176549A true JPH04176549A (en) 1992-06-24
JP3096056B2 JP3096056B2 (en) 2000-10-10

Family

ID=17928146

Family Applications (1)

Application Number Title Priority Date Filing Date
JP02304023A Expired - Fee Related JP3096056B2 (en) 1990-08-31 1990-11-13 Fault diagnosis method for production line

Country Status (1)

Country Link
JP (1) JP3096056B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008225987A (en) * 2007-03-14 2008-09-25 Koyo Electronics Ind Co Ltd Process abnormal condition automatic extracting system

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102565177B1 (en) * 2021-03-09 2023-08-09 (주) 제이티아이 Bidirectional IC CARD Module

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008225987A (en) * 2007-03-14 2008-09-25 Koyo Electronics Ind Co Ltd Process abnormal condition automatic extracting system

Also Published As

Publication number Publication date
JP3096056B2 (en) 2000-10-10

Similar Documents

Publication Publication Date Title
KR950001413B1 (en) Diagnostic method for production line
US7664985B2 (en) Watchdog system in a distributed computerized application environment
JPH04176549A (en) Diagnostic method for failure of production line
EP0389991B1 (en) Method and system for restarting sequentially controlled equipment installed in a production line
CN115461190A (en) Assembly system
JPH04176550A (en) Diagnostic method for failure of production line
JPH04177505A (en) Generating method for fault release program
JPH0577143A (en) Failure diagnosis device for automated line
JP3040443B2 (en) Actuator failure detection method for sequence control
JPH03116304A (en) Production line trouble restoring device
JP2522841B2 (en) Recovery method in case of production line failure and device used for its implementation
KR940007722B1 (en) Method and system for restarting sequentially controlled equipment installed in a production line
JP2939300B2 (en) How to recover from a production line failure
JP3004331B2 (en) Production line failure analysis method
JPH06202717A (en) Method for verifying sequence operation of equipment
KR940007723B1 (en) System for automatically generating a sequential control program
JPH06190692A (en) Return device for production facility
JP2965304B2 (en) Fault diagnosis method for production line
JPH047704A (en) Method for restoring production line at the time of its failure
Parsaeian Implementation of a framework for restart after unforeseen errors in manufacturing systems
JPS62210549A (en) Diagnosis system for information processing system
JPH03180905A (en) Method for diagnosing failure of production line
JPH08286714A (en) Monitor device for programmable display device
JPH0529192A (en) Semiconductor exposure apparatus
JP2940979B2 (en) How to start the operation system on the production line

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees