JPH06190692A - 生産設備の復帰装置 - Google Patents

生産設備の復帰装置

Info

Publication number
JPH06190692A
JPH06190692A JP34936392A JP34936392A JPH06190692A JP H06190692 A JPH06190692 A JP H06190692A JP 34936392 A JP34936392 A JP 34936392A JP 34936392 A JP34936392 A JP 34936392A JP H06190692 A JPH06190692 A JP H06190692A
Authority
JP
Japan
Prior art keywords
block
program
map
failure
ladder
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.)
Withdrawn
Application number
JP34936392A
Other languages
English (en)
Inventor
Eiji Iwata
英司 岩田
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 JP34936392A priority Critical patent/JPH06190692A/ja
Publication of JPH06190692A publication Critical patent/JPH06190692A/ja
Withdrawn 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]
    • 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/30Computing systems specially adapted for manufacturing

Abstract

(57)【要約】 【目的】 過去に発生した故障に対する復帰手順を記憶
し、同種故障が発生した場合には、この復帰手順を自動
的に再現することにより、正確で安定した復帰動作を再
現できる生産設備の復帰装置を提案する。 【構成】 生産設備において過去に発生した故障につい
ての復帰手順をその故障の種類に応じて前もって記憶し
ておき、故障が発生すると、発生した故障に対応した復
帰手順を前記記憶手段から読み出し、その読み出した復
帰手順に従って生産設備を、前記故障の発生前の状態に
復帰させる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、例えばシーケンサ等に
より制御される生産設備の故障からの復帰装置に関す
る。
【0002】
【従来の技術】自動車の組立ラインの如くの生産ライン
において、設置された種々の設備に対してコンピユータ
を内蔵したシーケンス制御部を設け、かかるシーケンス
制御部により各設備が順次行なうべき動作についてのシ
ーケンス制御を行なうようにすることが知られている。
かかるシーケンス制御では、シーケンス制御部に内蔵さ
れたコンピユータに制御プログラムがロードされ、その
シーケンス制御部が生産ラインに設置された種々の設備
の夫々に対する動作制御の各段階をシーケンス動作制御
プログラムに従って順次進めていくようになっている。
【0003】かかるシーケンス制御のための制御手法と
して、本出願人は、特願平1−335271号,2−1
10977号、2−30379号、1−253991
号、2−304022号、2−304023号、2−3
04024号、3−67290号、3−67291号、
3−67292号等を出願している。これらの出願にお
ける生産ラインの管理手法は、生産ラインの全設備のシ
ーケンサによる一般的な制御条件を入出力マップとして
記述し、その一方、ラインの具体的な順次動作を動作ブ
ロックと動作ステップという概念で把握し、その上で、
入出力マップ,動作ステップフローマップ,動作ブロッ
クフローマップとに基づいて、ラダープログラムを生成
するというものであった。
【0004】また、上記出願における故障診断において
は、設備が正常に作動している状態におけるシーケンス
制御回路部の構成要素の動作態様を基準動作態様として
予め設定しておき、設備の実際の作動時におけるシーケ
ンス制御回路部の構成要素の動作態様を上記基準動作態
様と順次比較していき、その差に基づいて故障検出を行
うようにしている。
【0005】更に、本出願人は、プログラム作成を効率
化し、且つ容易にできるようにするために、個々の動作
ステツプを記述するルールにおいて、その動作を端的に
表わす名称を付けて上記ルールをデータベース化して、
さらに、生産ラインを管理するシステムを、プログラム
の自動生成サブシステム、故障診断を行なうためのサブ
システム、ユーザインターフェースのためのサブシステ
ム、生成されたプログラムのシュミレーションを行なう
シュミレーションサブシステムの4つのサブシステムに
分け、これらのサブシステムのいずれからも上記データ
ベースを名前によりアクセスできるようにして、プログ
ラムの自動生成、プログラムの実行、故障の解析等のあ
るゆる操作において操作の簡便化、ミスの減少化を計っ
た。
【0006】
【発明が解決しようとする課題】上記出願における故障
からの復帰方法によれば、シーケンスラダープログラム
の逆動作を行なう復帰プログラムを自動生成し、故障発
生時に、その復帰プログラムを起動して、故障発生前の
状態に復帰させるものである。しかし、このような復帰
手順の自動生成は正確さに欠けるきらいがある。自動復
帰を嫌って人間による復帰を意図しても、操作者が初心
者であれば正確さがなくなり、また手際も悪くなる。正
確に、手際良く復帰させるには、所謂熟練者による復帰
に叶うものはない。しかしながら、熟練者を多く養成す
ることは時間の要することである。
【0007】また、本出願人は、特願平3−23774
0号において、過去に発生した故障に対する復帰手順を
記憶し、同種故障が発生した場合には、この復帰手順を
操作者の確認を得ながら再現することにより、正確で安
定した復帰動作を再現できる復帰方法及び装置を提案し
た。本発明は特願平3−237740号をさらに改良し
たもので、その目的は、過去に発生した故障に対する復
帰手順を記憶し、同種故障が発生した場合には、この復
帰手順を自動的に再現することにより、正確で安定した
復帰動作を再現できる復帰装置を提案するものである。
【0008】
【課題を達成するための手段】上記課題を達成するため
の本発明の生産設備の復帰装置の構成は、生産設備にお
いて過去に発生した故障についての復帰手順をその故障
の種類に応じて前もって記憶する記憶手段と、発生した
故障に対応した復帰手順を前記記憶手段から読み出す手
段と、その読み出した復帰手順に従って生産設備を、前
記故障の発生前の状態に復帰させる復帰手段とを具備し
たことを特徴とする。
【0009】
【実施例】以下、本発明を自動車の生産ラインのシーケ
ンス制御に適用した実施例を説明する。 〈実施例システムの特徴〉本実施例のシステムは、本出
願人の特願平3−67290,3−67291,3−6
7292を更に発展させたものである。ちなみに、上記
3件の特徴は、次のi〜iiiの3点にある。 : 生産ラインにおける管理対象となる設備の全ての
動作は、動作ブロックに分解され、そして、個々の動作
ブロックは更に複数の動作ステップに分解されている。ii : 各動作ブロック,各動作ステップには、それら
をプログラマ若しくは操作者(以下、操作者と略す)が
把握し易いように、その動作ブロック若しくは動作ステ
ップのそのものを、そしてその動作を想起でき易いよう
なユニークな『名称』が付けられている。iii : このシステムは、ラダープログラムの自動生
成、生成されたラダープログラムのシュミレーション、
実際の動作中若しくはシュミレーション中におけるシス
テム管理、故障診断等の機能を有するが、これらの機能
をプログラム化する過程において、システムと操作者と
のユーザインターフェースは、そして、プログラム間の
プログラムインターフェースは上記『名称』により行な
われる。換言すれば、上記機能及びユーザインターフェ
ース、そしてプログラムインターフェースにより、シー
ケンス制御プログラムの開発や、システムのメインテナ
ンスに必要な工数の削減が可能となる。即ち、iii−1 : 本システムでは、後述するように、シス
テム全体の全設備のデバイスや、そのデバイスを使うス
テツプや、それらのステツプからなる動作ブロックに、
換言すれば、このシステムでランされる全てのプログラ
ムにおいて変数となり得る全てのものに名称が付され、
それらの名称がライブラリ化される。従って、本システ
ムでランされる全てのプログラム(特に、シーケンスラ
ダープログラム)の作成過程で、ライブラリ化されたこ
れらの『名称』を使うことができるので、効率的なプロ
グラム開発が可能となる。iii−2 : 本システムでは、特にシーケンス制御プ
ログラム、シュミレーションプログラム、故障診断プロ
グラム、CRT操作盤の画面制御プログラムなど、生産
設備に何等かの関連性のある全てのプログラムは、共通
のデータベース(このデータベースの一部のデータを、
『実I/Oマップ』と呼ぶ)をアクセスすることができ
る。このデータベースには、その生産ラインの全デバイ
スに関する、そのデバイスを制御するのに必要な一般化
された情報(例えば、そのデバイスを駆動する信号名、
その駆動情報を確認する信号名など)を含む。従って、
上記のシーケンス制御プログラム、シュミレーションプ
ログラム、故障診断プログラム、CRT操作盤の画面制
御プログラムは、の作成過程においては、操作者はその
プログラム中でデバイス名、動作名等をプログラム中に
使うだけで、そのデバイスや動作に必要な情報を参照す
ることができる。
【0010】そして、上記システムの特徴i〜iiiに
加えて、これから説明する実施例システムの特徴は、iv : 故障発生時のシステムの状態のみならず、正常
動作時のシステムの状態を記憶してデータベース化して
おく。更に、故障が発生したときに、故障が検出された
動作ステツプの数ステップ前からその故障が検出された
動作ステツプまでのシステムの変化を記録する。これら
のデータを故障診断に役立てる。 : 故障が発生してから、復旧の工程を記憶してお
き、故障原因毎に復旧工程をデータベース化する。過去
の故障原因と同じ原因で故障が起こったときに、データ
ベースからその復旧工程を取り出す。その後の復旧工程
の処理について2つの手法を提案する。v−1 : 取り出した復旧工程を表示装置に表示する。
操作者は、その表示に従って、復旧を行なうようにす
る。即ち、過去の復旧シーケンスが今回の復旧のガイド
となる。これにより、復旧が早く行なえ、且つ、復旧操
作が操作者の熟練度に依らなくなる。v−2 : 取り出した復旧工程を自動的に装置が実行す
る。
【0011】これから説明する実施例は、自動車の生産
ラインのうちの、車体にエンジンやサスペンションをド
ッキングする工程におけるシーケンス制御プログラムの
自動生成等に本発明を適用したものである。従って、先
ず、シーケンス制御プログラム101の制御対象となる
車両組立ラインについて説明する。次に、本実施例のシ
ーケンス制御プログラムの自動生成等に重要な概念であ
る動作ブロックと動作ステップについて言及する。そし
て、その後に、本実施例の特徴部分である制御プログラ
ムの自動生成等について説明する。 〈組立ラインの一例〉先ず、生成されるべきシーケンス
制御プログラムの制御対象となる車両組立ラインの一例
について、第1図及び第2図を参照して述べる。
【0012】第1図及び第2図に、車両組立ラインの一
部が示されている。このラインは、例示的に、3つのス
テーションST1,ST2,ST3からなる。位置決め
ステーションST1では、車両のボデイ11を受台12
上に受け、受台12の位置を制御することによりボデイ
11の位置決めを行う。ドッキングステーションST2
では、パレット13上の所定の位置に載置されたエンジ
ン14とフロントサスペンションアッセンブリ(不図
示)とリアサスペンションアッセンブリ15とボデイ1
1とを組み合わせる。締結ステーションST3では、ボ
デイ11に対して、ST2にて組み合わされたエンジン
14とフロントサスペンション組立15とを、螺子を用
いて締結固定留する。また、位置決めステーションST
1とドッキングステーションST2との間には、ボデイ
11を保持して搬送するオーバーヘッド式の移載位置1
6が設けられている。ドッキングステーションST2と
締結ステーションST3との間には、パレット13を搬
送するパレット搬送位置17が設けられている。
【0013】位置決めステーションST1における受台
12は、レール18に沿って往復走行移動する。位置決
めステーションST1では、受台12をレール18に直
交する方向(車幅方向)に移動させることにより、受台
12上に載置されたボデイ11を、その前部の車幅方向
についての位置決めを行う位置決め手段(BF)並びに
その後部の車幅方向の位置決めを行う位置決め手段(B
R)と、受台12をレール18に沿う方向(前後方向)
に移動させることにより、その前後方向における位置決
めを行う位置決め手段(TL)とが設けられている。さ
らに、ST1には、ボデイ11における前方左右部及び
後方左右部に係合することにより、ボデイ11の、受台
12に対する位置決めを行う昇降基準ピン(FL,F
R,RL,RR)が設けられている。そして、これらの
位置決め手段及び昇降基準ピンによって、位置決めステ
ーションST1における位置決め装置19が構成されて
いる。即ち、これらの位置決め手段及び昇降基準ピン
が、シーケンス制御プログラムの位置決め装置19につ
いての制御対象となる。
【0014】移載装置16は、位置決めステーションS
T1とドッキングステーションST2との上方において
両者間に掛け渡されて配されたガイドレール20と、ガ
イドレール20に沿って移動するキャリア21とから成
る。キャリア21には、昇降ハンガーフレーム22が取
り付けられていて、ボデイ11はこの昇降ハンガーフレ
ーム22により支持される。昇降ハンガーフレーム22
には、第3図に示されるように、左前方支持アーム22
FL,右前方支持アーム22FRが夫々一対の前方アー
ムクランプ部22Aを介して取付けられている共に、左
後方支持アーム22RL,右後方支持アーム22RR
(不図示)が夫々一対の前方アームクランプ部22Bを
介して取付けられている。左前方支持アーム22FL,
右前方支持アーム22FRの夫々は、前方アームアーム
クランプ部22Aを回動中心として回動し、前方アーム
クランプ22Aによるクランプが解除された状態におい
ては、ガイドレール20に沿って伸びる位置を取り、ま
た、前方アームクランプ部22Aによるクランプがなさ
れるときには、第3図に示される如く、ガイドレール2
0に直交する方向に伸びる位置をとる。同様に、左後方
支持アーム22RL,右後方支持アーム22RRの夫々
も、後方アームクランプ部22Bを回動中心として回動
し、後方アームクランプ部22Aによるクランプが解除
された状態においては、ガイド20に沿って伸びる位置
をとり、また、後方アームクランプ部22Bによるクラ
ンプがなされるときには、ガイドレール20に直交する
方向に伸びる位置をとる。
【0015】移載装置16にボデイ11が移載されるに
あたっては、移載装置16が、第1図において一点鎖線
により示されるように、レール18の前端部上方の位置
(原位置)に、左前方支持アーム22FL,右前方支持
アーム22FRの夫々が前方アームクランプ部22Aに
よるクランプが解除されてガイドレール20に沿って伸
びる。また、左後方支持アーム22RL,右後方支持ア
ーム22RRの夫々が後方アームクランプ部22Bによ
るクランプが解除されてガイドレール20に沿って伸び
て、その後、昇降ハンガーフレーム21Bが下降せしめ
られる。かかる状態で、ボデイ11が載置された受台1
2がレール18に沿ってその前端部にまで移動せしめら
れ、降下されていた移載装置16の昇降ハンガーフレー
ム21Bに対応する位置を取るようにされる。そして、
左前方支持アーム22FL,右前方支持アーム22FR
の夫々が回動されて、ボデイ11の前部の下方において
ガイドレール20に直交する方向に伸びる位置をとっ
て、前方アームクランプ部22Aによるクランプがなさ
れた状態となる。また、左後方支持アーム22RL,右
後方支持アーム22RRの夫々が回動されて、ボデイ1
1の後部の下方においてガイドレール20に直交する方
向に伸びる位置をとって、後方アームクランプ部22B
によるクランプがなされた状態となる。その後、昇降ハ
ンガーフレーム21Bが上昇させられて、第3図に示さ
れるように、ボデイ11が、移載装置16の昇降ハンガ
ーフレーム21Bに取付けられた左前方支持アーム22
FL,右前方支持アーム22FRと左後方支持アーム2
2RL,右後方支持アーム22RRとにより支持され
る。
【0016】また、パレット搬送装置17は、夫々、パ
レット13の下面を受ける多数の支持ローラ23が設け
られた一対のガイド部24L及び24Rと、このガイド
部24L及び24Rに夫々並行に延設された一対の搬送
レール25L及び25Rと、各々がパレット13を係止
するパレット係止部26を有し、夫々搬送レール25L
及び25Rに沿って移動するものとされたパレット搬送
台27L及び27Rと、これらのパレット搬送台27L
及び27Rを駆動するリニアモータ機構(図示は省略さ
れている)とを備える。
【0017】ドッキングステーションST2には、フロ
ントサスペンションアセンブリ及びリアサスペンション
アッセンブリ15の夫々の組み付け時において、フロン
トサスペンションアッセンブリのストラット及びリアサ
スペンションアッセンブリ15のストラット15Aを夫
々支持して組付姿勢をとらせる一対の左右前方クランプ
アーム30L及び30Rと、及び、一対の左右後方クラ
ンプアーム31L及び31Rとが設けられている。この
左右前方クランプアーム30L及び30Rは、夫々、搬
送レール25L及び25Rに直交する方向に進退動可能
に、取付板部32L及び32Rに取り付けられるととも
に、左右後方クランプアーム31L及び31Rは、夫
々、取付板部33L及び33Rに、搬送レール25L及
び25Rに直交する方向に進退動可能に取り付けられて
いる。左右前方クランプアーム30L及び30Rの相互
に対向した先端部と、左右後方クランプアーム31L及
び31Rの相互に対向した先端部とは、夫々、フロント
サスペンションアッセンブリのストラットもしくはリア
サスペンションアッセンブリ15のストラット15Aに
係合する係合部を有する。そして、前記取付板部32L
は、アームスライド34Lにより固定基台35Lに対し
て、搬送レール25L及び25Rに沿う方向に移動可能
とされる。取付板部32Rはアームスライド34Rによ
り固定基台35Rに対して、搬送レール25L及び25
Rに沿う方向に移動可能とされる。取付板部33Lは、
アームスライド36Lにより固定基台37Lに対して、
搬送レール25L及び25Rに沿う方向に移動可能とさ
れる。さらに、取付板部33Rは、アームスライド36
Rにより固定基台37Rに対して、搬送レール25L及
び25Rに沿う方向に移動可能とされている。従って、
左右前方クランプアーム30L及び30Rは、それらの
先端部がフロントサスペンションアッセンブリのストラ
ットに係合した状態のもとで、前後左右に移動可能とな
る。また、左右後方クランプアーム31L及び31R
は、それらの先端部がリアサスペンションアッセンブリ
15のストラット15Aに係合した状態のもとで、前後
左右に移動可能となる。また、これらの左右前方クラン
プアーム30L及び30R,アームスライド34L及び
34R,左右後方クランプアーム31L及び31R、及
びアームスライド36L及び36Rが、ドッキング装置
40を構成している。
【0018】さらに、ドッキングステーションST2に
は、搬送レール25L及び25Rに夫々平行に伸びるよ
うに設置された一対のスライドレール41L及び41R
と、このスライドレール41L及び41Rに沿ってスラ
イドするものとされた可動部材42,可動部材42を駆
動するモータ43等から成るスライド装置45とが設け
られている。このスライド装置45における可動部材4
2には、パレット13上に設けられた可動エンジン支持
部材(図示は省略されている)に係合する係合手段46
と、パレット13を所定の位置に位置決めするための2
個の昇降パレット基準ピン47とが設けられている。ス
ライド装置45においては、移載装置16における昇降
ハンガーフレーム22により支持されたボデイ11に、
パレット13上に配されたエンジン14,フロントサス
ペンションアッセンブリ及びリアサスペンションアッセ
ンブリ15とを組み合わせる際に、その係合手段46が
昇降パレット基準ピン47により位置決めされたパレッ
ト13上の可動エンジン支持部材に係合した状態で前後
動せしめられ、それにより、ボデイ11に対してエンジ
ン14を前後動させて、ボデイ11とエンジン14との
干渉を回避するようになっている。
【0019】締結ステーションST3には、ボデイ11
に、これに組み合わされたエンジン14及びフロントサ
スペンションアッセンブリを締結するための螺子締め作
業を行うためのロボット48Aと、ボデイ11に、これ
に組み合わされたリアサスペンションアッセンブリ15
を締結するための螺子締め作業を行うためのロボット4
8Bとが配置されている。さらに、締結ステーションS
T3においては、パレット13を所定の位置に位置決め
するための2個の昇降パレット基準ピン47が設けられ
ている。
【0020】第1図乃至第3図により説明した車両組立
ラインにおいて、位置決めステーションST1における
位置決め装置19,移載装置16、そして、ドッキング
ステーションST2におけるドッキング装置40及びス
ライド装置45,パレット搬送装置17、そして、締結
ステーションST3におけるロボット48A及び48B
は、それらに接続されたシーケンス制御部により、本実
施例のプログラム生成装置によって生成されたシーケン
ス制御プログラムに基づいてシーケンス制御が行われ
る。即ち、これらの上記位置決め装置19,移載装置1
6等は、シーケンス制御対象であるところの“設備”で
ある。 〈動作ブロックと動作ステップ〉第1図,第2図の生産
ラインにおける組立動作は、即ち、上記のシーケンス制
御対象の“設備”の全てが行う動作は複数の“動作ブロ
ック”に分解することができる。ここで“動作ブロッ
ク”とは、 :複数の単位動作の集合であると定義することができ
る。動作ブロックの最も重要な性質は、 :ある動作ブロックの開始から終了に至るまでの中間
過程で、他の動作ブロックから独立して干渉を受けるこ
となく、動作を完結することができるということであ
る。
【0021】この,の性質のために、動作ブロック
を1つのブロック(かたまり)として表記することが可
能となる。換言すれば、動作ブロックは、動作ブロック
のレベルにおいてのみ、他の動作ブロックと関係する。
動作ブロックが動作を開始できるためには、他の動作ブ
ロックにおける動作の終了が必要となる。この他の動作
ブロックは、1つの場合もあれば、複数の場合もあろ
う。即ち、1つの動作ブロックの動作終了がそれに連結
する別の動作ブロック(1つまたは複数の動作ブロッ
ク)の起動条件になったり、複数の動作ブロックの動作
終了が起動条件になったりするということである。
【0022】また、上記性質によれば、動作ブロックに
おける動作の中間段階で、他の動作ブロックに対して起
動をかけるということはない。また、動作ブロックの中
間段階で、他の動作ブロックからの起動を待つというこ
ともない。上記,の動作ブロックの定義から、次の
付随的な動作ブロックの性質,を導くことができ
る。 :動作ブロックは、上記,の性質を満足する単位
動作の集合のなかで、最大のものであることが望まし
い。このの性質は絶対的に必要なものではない。しか
し、を満足すると、生産ラインを記述する動作ブロッ
クの数が減り、工程全体の記述が単純化され、大変見易
いものとなる。 :動作ブロックは、その動作ブロックにおいて行なわ
れる動作の種類に応じても制限される。即ち、デバイス
の動作は、「繰り返し動作」、「連続動作」、「ロボッ
ト動作」等に大別される。本システムでは、ラダープロ
グラムを、定型的なラダーパターンから自動生成するも
のであるが、このラダーパターンはその動作が異なれば
大きく異なるので、1つの動作ブロック中には同一種類
の動作だけを行なうデバイスを集める。但し、この要請
はプログラムの効率化という観点からのものであるの
で、このの要請を守らないと、ラダープログラムの自
動生成が行なうことができないというものではない。
【0023】第4図は、第1図,第2図の生産ラインに
おける動作の全体的な流れを示すものである。第1図,
第2図に示した生産ラインを、乃至の条件を満足す
る動作ブロックにより記述すると、この第4図に示すよ
うに、a〜sの19個の動作ブロックが得られる。この
ようにして得られたブロック図は第1図乃至第3図の生
産ラインにおける動作を操作者が分析した上で得られた
ものである。図中、横方向の二重線により結合された2
つ(以上)の動作ブロックは並行して動作することを意
味する。また、2つの動作ブロックが実線で上下に結合
されている場合、上方に位置した動作ブロックにおける
動作が終了して始めて下方に位置したブロックの動作が
始まる。また、二重線の四角形は各ブロックの先頭を意
味する。
【0024】動作ブロックaは受台12の前進動作を意
味し『荷受前進』と呼ぶ。この『荷受前進』ブロックが
終了すると、『基準出』という名称のブロックbと『受
具出』という名称のブロックcとが並行して行なわれ
る。『基準出』ブロックbでは、前述の各基準ピン(F
L基準ピン,RR基準ピンが「出」という名の位置に駆
動され、TL位置決め手段等が「戻り」という名の位置
に駆動される。ブロックcでは、受台12がドッキング
位置に移動する。ブロックdの『移載上昇』という名称
のブロックでは、移載装置16がステーションST1に
おいて上昇する。ブロックdの動作が終了すると、この
ブロックdに続いて2つの流れで動作ブロックが処理さ
れていく。即ち、『移載上昇』ブロックに続いて、『基
準戻り』という名称のブロックeと『移載前進』という
名称のブロックhとが並行して動作する。ブロックeで
は、ブロックbにおいて出された基準ピンを「戻り」位
置に戻すという動作が行なわれる。一方、ブロックhで
は、移載装置16がステーション2に前進する。
【0025】ブロックeに続く『荷受後退』という名称
のブロックfにおいて、受台12が後退するという動作
が行なわれる。ブロックhでは移載装置16がステーシ
ョンST2に前進する。一方、ガイド部、ストラットク
ランプ部、パレットスライド部においては、ブロックl
(『ピン上昇』)とブロックm(『リフト上昇』)とブ
ロックn(『パレット前進』)が夫々実行される。ブロ
ックm(『リフト上昇』)とブロックn(『パレット前
進』)との終了はブロックo(『アーム出』)を起動す
る。
【0026】ブロックhとブロックlとブロックoにお
ける動作が終了すると、『移載下降』という名称の動作
ブロックiが実行される。以上の第4図の動作ブロック
の集合からなるフローチャートは、上述の〜の条件
に合致するような動作の集合をブロック化したものであ
り、前述したように、操作者が後述のフローチヤート作
成プログラムで作成したものである。そして、各動作ブ
ロックに付けられた名称は、その動作ブロックにおける
動作(複数)の特徴を短い言葉で表現するものである。
本実施例のシステムの特徴は、前記iiに記したよう
に、各動作ブロックの名称はユニークなものであり、動
作ブロックは、この名称によりソフトウエア的に特定す
ることができる。
【0027】各動作ブロックは複数の動作ステップから
なる。1つの動作ステップにおける動作には原則的には
1つのアクチュエータ(ソレノイド等)による動作が対
応する。第7図は、『基準出』ブロックbにおいて行な
われる複数の動作ステップからなるフローチャートであ
る。同図において、各ステップに付されたラベルは操作
者が付したそのステップの名称である。第7図のフロー
チヤートによると、『RRスライド出』ステツプにおい
ては、リア側の右スライドレール41Rが「出」状態に
され、『FL基準ピンA出』及び『FL基準ピンB出』
ステツプでは、受台12に対して車体12を位置決めす
るための前述の昇降基準ピンA,B(前部左側)を
「出」の状態にする。『RR基準ピン出』ステツプにお
いては、同じく後部右側の昇降基準ピンを「出」状態に
する。また、『TL位置決戻』、『BR位置決戻』、
『BF位置決戻』の夫々のステツプにおいては、位置決
め手段TL,BR,BFが「戻り」位置に戻される。こ
のようにして、第4図の『基準出』ブロックbは、第7
図に示されたステップ動作により表現される。この動作
ステツプフローチヤートも前述のフローチヤート作成プ
ログラムで作成する。
【0028】1つの動作ブロックの動作を表現する例え
ば第7図のような動作ステップフローチャートにおける
各ラベルは、前述したように、その動作ステップで駆動
されるアクチュエータデバイスを特定し、そのアクチュ
エータの動作を端的に表現するものとなっている。例え
ば、RR基準ピンが「出」状態にされる『RR基準ピン
出』というステップに対して、『RR基準ピン出』とい
う名称が付されている。ここで、この名称の前半部分の
『RR基準ピン』はその動作ステップで駆動されるアク
チュエータを特定し、次の、『出』は、そのアクチュエ
ータの駆動状態を意味する。換言すれば、第4図,第7
図のフローチャートの各動作ブロック及び動作ステップ
の名称に与えられた意味が理解できる人間及び装置にと
っては、それらのフローチヤートが第1図の生産ライン
における動作を記述するものとなっていると理解するこ
とは容易である。本実施例のシーケンス制御プログラム
の自動生成システムの目標は、このような第4図,第7
図のフローチャートから第8図〜第10図のようなラダ
ープログラムを自動的に生成することである。尚、第8
図〜第10図のラダープログラムは、第7図に示された
動作ブロックbの動作の一部に対応するラダープログラ
ム要素である。 〈ラダープログラムのシンボル〉ここで、ラダープログ
ラムのシンボルについて説明する。第1図の生産ライン
の例えば昇降基準ピン等の設備そのものはラダープログ
ラム上では制御の対象とはならず、それを駆動する例え
ばソレノイド等が問題となる。従って、生産ラインの設
備は、第11図に示されるようなシリンダアクチュエー
タにより等価され得る。このアクチュエータは、シリン
ダ内を図面上左右に移動するピストンの位置により、そ
の「出」状態と「戻り」状態が規定される。ピストン
は、ソレノイドバルブが入力される信号B0により付勢
されあるいは消勢されることにより、その「出」状態と
「戻り」状態のいずれかを取る。これらの2つの状態は
2つのリミットスイッチにより確認される。即ち、第1
1図の「設備」からの出力として、駆動された事を確認
するためのリミットスイッチからの出力AO(「出確
認」信号)と、原位置に戻されたことを確認するための
リミットスイッチからの出力Ai(戻り確認信号)とが
ある。
【0029】第12図は、第11図の素子の出力駆動動
作の論理を説明する図である。ソレノイドがオンするた
めには、インターロック条件ILCが満足されることで
ある。インターロック条件ILCは、一般に、その動作
ステップに特有の種々の起動条件を含む。各動作ステッ
プは、その前段の動作ステップの動作終了が実行条件と
なるから、インターロック条件ILCには、例えば、前
段の動作ステップの出力状態が確認されたことを示す信
号(例えば、第11図のAO)が含まれるのが通常であ
る。さらに、このプログラムが生成したのではない外部
からの信号を含む。
【0030】第13図は全体シーケンスを自動生成する
際に用いる定型的な動作回路の一例を示す。第13図に
おいて、条件CAは自動モード(生産ラインがシーケン
ス制御プログラムに従って動作するモードである)でこ
の動作回路が動作しているときは閉じられる。条件CS
は手動モードでこの動作回路が動作しているときに閉じ
られる。CSは通常閉じられている。従って、通常の自
動モードでは、インターロック条件ILC0とAlが満足
されれば、出力BOが出力される。一方、ILC1は手動
モードにおける動作条件の論理を記述する。手動モード
では、接点CSが開くので、条件Xk,ILC1が同時に
満足するか、条件Xk,CIが同時に満足すれば、BO
出力される。一般に、CIは、手動動作のインターロッ
ク条件ILC1を殺すための論理である。
【0031】第13図のラダーパターンは、ある動作ス
テップのラダープログラムを表現するのに用いられる定
型的なパターンである。本システムに用意されている他
のラダーパターンを第14図〜第16図に示す。第14
図は、動作ブロックの開始と停止を定型的に記述するパ
ターンである。第15図は、第13図に関連して説明し
たパターンと同じである。第16図は、第15図のパタ
ーンに更に1つの接点条件を付加したものである。
【0032】第8図のラベル1360,1372は第7
図の『RRスライド出』に対応するラダープログラムで
ある。ラベル1360の論理において、5041番地の
「B4ステップ1出力」は、 (B4ステップOFF*基準ピン戻り*荷受台前進+B
4ステップ1出力)*B4ステップ2出力/*B4ステ
ップ3出力/= 1 が満足されると、“1”を出力する。ここで、B4は第
4図における『基準出』ブロックbのブロック番号であ
る。また、「/」は論理NOTを表記する。また、「B
4ステップOFF」は、ブロック4の全てのステップが
オフ(即ち、実行されていない)であることを意味す
る。また、1753番地の『基準ピン戻り』,『荷受台
前進』は、ブロック4の『基準出』に先行する『荷受前
進』ブロックにおける動作終了を意味する。また、B4
ステップ2出力/やB4ステップ3出力/についても容
易に推測ができよう。かくして、ラベル1360の動作
は、『基準出』ブロックの最初の動作ステップ『RRス
ライド出』が正しく起動されるべき条件を表わす。従っ
て、ブロックの『荷受前進』の全ての動作ステップが終
了していれば、上記条件式は満足されて、「B4ステッ
プ1出力」は“1”になる。一旦、「B4ステップ1出
力」が“1”になると、ラベル1360のラッチ条件に
より、「B4ステップ1出力」は“1”のままである。
【0033】第8図のラベル1372の出力「B4St
1RRスライド出」が“1”になるのは、 B4ステップ1出力*荷受台前進*B4動作ON*RR
スライド出/=1 が満足されたときである。ここで、B4St1はブロッ
ク番号4の最初のステップであることを表記する。『R
Rスライド出』なる動作がなされるのは、「B4ステッ
プ1出力」が“1”になって、『RRスライド』なるア
クチュエータがオンされていない状態で『荷受台前進』
ステップが実行されたときである。
【0034】第9図,第10図のラダープログラムは、
第7図の『FL基準ピンA出』,『FL基準ピンB出』
という2つの動作ステップに対応することは容易に理解
される。かくして、第4図のブロックbの『基準出』ブ
ロックが、第7図の動作ステップフローチャートに対応
する形で表わされた場合、その動作ステップフローチャ
ートの『RRスライド出』,『FL基準ピンA出』,
『FL基準ピンB出』という3つのステツプは第8図〜
第10図のラダープログラムに対応することが理解でき
よう。 〈システムの構成〉前述したように、本システムの大き
な目標は、第1図のような生産ラインの工程管理を如何
に効率良く行なうかである。そして、ラダープログラム
の自動生成、生成されたラダープログラムのシュミレー
ション、生成されたラダープログラムの実際の動作中若
しくはシュミレーション中におけるシステム管理、故障
診断等の機能を如何に自動化するかが大きな関心であ
る。
【0035】第17図は、ある生産ラインに、工程管理
を行なうシステムが導入されるプロセスを、一般化して
表わした概念図である。また、第19図は、実施例シス
テム全体に要求されるプログラム機能を図示したもので
あり、第18図は、本実施例のシステムに要求される機
能間の結合関係をブロック化して表わしたものである。
【0036】第17図に示すように、生産ライン及びそ
の管理システムの導入は、その基本設計から始まって、
更に詳細設計、シーケンスプログラムの作成、そのプロ
グラムのトライアル、そして実稼動という工程で表現さ
れる。第18図に示された本実施例に係るシステムは、
特に第17図における、「シーケンスプログラムの作
成」段階、「トライアル」段階、「稼動」段階で威力を
発揮する。そのためには、実施例システムは、第19図
に示すように、プログラムの自動生成機能、プログラム
実行中の故障の検出機能、故障が検出された場合の故障
箇所の解析機能、故障からの自動復旧機能、故障状態若
しくはトライアルにおけるシュミレーション機能、自動
生成されたプログラムの最適化機能等が要求される。
【0037】第18図に従って、本実施例システムのプ
ログラム構成をブロック的に説明する。第18図におい
て、マスタテーブル101は、対象の生産ラインの全設
備(アクチュエータ等)に関する、デバイス名称、その
動作の種類、そして、それらのデバイスを第11図〜第
13図のようなシンボルで表記した場合の入力信号,出
力信号の名称をテーブル化したもので、その詳細な一例
が第13図に示される。このマスタテーブルは、各デバ
イスの実際の入出力関係を表現するものであるから、以
下、『実I/Oマップ』と呼ぶ。
【0038】データベース100は、この生産ラインに
使われる全設備(アクチュエータ等のデバイス)に付け
られる名称等を記憶する「名称ライブラリ」108を含
む。このライブラリ108は、操作者によるデバイス名
称の付与に恣意性が入り込むのを排除するために設けら
れている。即ち、ある設備に対し、操作者AがAAと名
称を付け、操作者BがBBと名付ければAAの設備とB
Bの設備とは別物になってしまう。「名称ライブラリ」
108により1つの設備には1つの名称を付することに
より、統一を計る。
【0039】データベース100は、「名称ライブラ
リ」108の他に、「ラダーパターン」107,「ブロ
ックフローマップ」109,「ステップフローマップ」
110,「動作状態ファイル」111を含む。ラダーパ
ターン107は、第14図〜第16図に示したような基
本ラダーパターンを記憶する領域である。各設備はその
設備について前もって割り当てられた基本ラダーパター
ンを有する。
【0040】ブロックフローマップ109は第13図の
ようなマップであって、第4図〜第5図に示された人間
の理解の容易さを意図した動作ブロックフローチャート
を第13図のようにマップ化することにより、コンピユ
ータのデータ処理を可能にしたものである。ステップフ
ローマップ110は第7図に示された動作ステップフロ
ーチャートを第13図のようにマップ化することによ
り、コンピユータのデータ処理を可能にしたものであ
る。
【0041】動作状態ファイル111は、実際にシーケ
ンス制御プログラムが動作した時の各設備の各確認デバ
イスの信号(例えば、第11図のA0,A1)の変化を記
録する。第11図は動作状態ファイル111の構造を示
す。このファイルは、信号が変化した時点で変化した信
号について記録される。変化しない信号についての記録
は省かれる。このように、変化があったものについてだ
けファイル内に記憶するのは、全ての信号を単位時間毎
に記憶するようにすると、膨大な記憶容量を必要とする
からである。第11図において、ファイル111の1つ
のレコードは、「発生時刻」は信号の値が変化した時刻
を、「信号名」は変化のあった信号の名称を、「値」は
変化後の信号の値を、「故障/正常」は、ファイル11
1に記憶されているデータが、最終的に正常動作として
終わった(=1)ものか、故障として終わった(=0)
ものかを示す。第12図は、第11図に示された信号
A,B,C,Dについての動作状態ファイルからそれら
の信号の計時変化をタイミングチヤートとして復元した
ものである。尚、第11図の例では、時刻t0は初期設
定時刻である。
【0042】第18図のシステムは、上記のデータベー
ス100やマスタテーブル101内の『実I/Oマッ
プ』の他に、「データ生成」102、「自動プログラミ
ング」104、「シュミレーション」105、「故障診
断/復旧」106という4つのサブシステムからなる。
「自動プログラミング」サブシステム104はこれらの
データベース100やマスタテーブル101内の『実I
/Oマップ』を元にして、シーケンス制御のためのラダ
ープログラムを自動生成する。データ生成プログラム1
02は、上記のデータベース100やマスタテーブル1
01内の『実I/Oマップ』を作成し、あるいは修正す
る際の操作者とのインターフェースを司どるためのもの
である。このサブシステム102は主に第17図の「シ
ーケンスプログラム作成」過程において使われる。この
「自動プログラミング」サブシステムは、後述するよう
に、「ブロックフローマップ109」や「ステップフロ
ーマップ110」(これらのマップは、これからラダー
プログラムを自動生成しようとする対象となる生産ライ
ンを記述するものである)と、その生産ラインに使われ
るデバイスの入出力関係を一般的に表現する『実I/O
マップ』とを、結合することによりラダープログラムを
作成する。この結合は、「ブロックフローマップ10
9」や「ステップフローマップ110」に使われている
ブロックの名称やステップの名称やデバイスの名称と、
『実I/Oマップ』に記憶されているデバイスの名称と
をリンクすることによりなされる。
【0043】「シュミレーション」サブシステム105
は自動プログラミング104が生成したラダープログラ
ムをシュミレーションするプログラムを自動生成する。
この生成されたシュミレーションプログラムは、第17
図の「トライアル」段階において主に使われる。「故障
診断/復旧」サブシステム106は、第17図の「トラ
イアル」段階や「稼動」段階において、シュミレーショ
ン結果を診断したり、あるいは実際の稼動段階での故障
を診断するもので、それらの診断結果は主にCRT表示
装置に表示される。この表示装置では、操作者の理解が
容易なように、故障箇所の名称等を上記『実I/Oマッ
プ』のデバイス名称から索引するようになっている。
【0044】このように、本システムにおける中心的な
データは、マスタテーブル101内の『実I/Oマッ
プ』(第24図)であり、この『実I/Oマップ』とデ
ータベース100内のブロックフローマップ109やス
テップフローマップ110と、ラダーパターン107と
が有機的にリンクされて、ラダープログラムやシュミレ
ーションプログラム等が自動的に生成されるようになっ
ている。そこで、以下、本システムのハード構成を説明
し、そのあとで、上述の3つのマップを順に説明する。 〈ハード構成〉第25図は、第18図で説明した実施例
システムを、ハードウエア構成の観点から改めて書き直
したものである。同図に示すように、ハード構成の観点
から見た本システムは、制御対象設備50(第1図の各
種の「設備」に対応)とホストコンピュータ60と、ユ
ーザインタフェースとしてのCRTを制御するCRTパ
ネル制御ユニット53と、前述のマップやデータベース
を格納するデータファイル56とからなる。ホストコン
ピュータ60は3つのサブシステムを含み、ラダープロ
グラムの自動生成と前述のマップの生成とを行う自動プ
ログラミング/データ入力サブシステム104(10
2)と、故障診断及び復旧を行う故障診断/復旧サブシ
ステム106と、シュミレーション制御を行うシュミレ
ーションサブシステム105とから成る。これらのユニ
ットは通信回線61で接続され、データファイル56は
高速化を図るためにも半導体メモリまたは高速ハードデ
ィスクドライブが適当である。データファイル56は、
更に、ラダープログラムを自動作成する上で必要な生成
ルール112も記憶する。
【0045】CRTパネル制御部53は、CRT表示装
置58のほかに、その表示画面のうえに装着されたタッ
チパネル57を有する。本システムでは、自動プログラ
ミングの過程、シュミレーションの過程、故障診断の過
程などで操作者とのインターフェースが必要となるが、
制御ユニット53は、周知のマルチウインド表示制御に
より、複数のウインドをCRT58上に表示し、操作者
は表示されたウインド内の複数のアイテムの中からタッ
チパネル57を使って所望のアイテムを選択する。した
がって、タッチパネル57の代わりに、ポインテイング
デバイスを用いてもよいのは言うまでもない。 〈プログラム構成〉第26図は自動プログラミング/デ
ータ入力サブシステム104(102)におけるプログ
ラム構成を示す。
【0046】第26図において、最下層にはいわゆるオ
ペレーテイングシステム120が格納され、さらに、マ
ルチウインドシステム121と、日本語を入力するため
の日本語フロントエンドプロセサ(FEP)123と、
CRT58,タッチパネル57とのインターフェースを
司どるCRTインターフェースプログラム122と、フ
ローチャート作成するための図形プロセサ124と、ラ
イブラリを作成するプログラム125と、実I/Oマッ
プを作成するプログラム126と、フローマップを作成
するプログラム128と、このフローマップからラダー
プログラム(第6図)を作成するコンパイラ127と、
生成された自動シーケンスラダープログラムや生成ルー
ル112を最適化するための最適化プログラム129と
からなる。
【0047】プログラム123〜129が自動プログラ
ミングサブシステム105(102)を構成する。図形
プロセサ124は、第4図や第7図のフローチャートを
作成するためのプロセサで、フローチャートのシンボル
としてのボックスを書く機能と、そのボックスに名称を
付す機能と、そのボックスの中に文章を入力する機能
と、複数のボックス同士を連結する機能とからなる。こ
の図形プロセサ124が作動している最中は、CRT装
置58の画面上には、データファイル56内の前述のラ
イブラリから入力可能なアイテムが、マルチウインドモ
ードで表示される。ここで、アイテムとは、前述した、
デバイス名称、動作ステツプ名称、動作ブロック名称等
のリテラルデータである。操作者はタッチパネル57に
より、特定のアイテムを選択することにより所望の入力
が可能となる。また、ライブラリにない名称について
は、前述の日本語FEP123の助けにより自由な入力
が可能となる。入力可能なアイテムをウインド表示し、
その中から所望のアイテムを選択するようにしたのは、
名称が恣意的なものとならないようにするためである。
なお、このようなマルチウインド制御システムや、図形
プロセサ124、日本語FEP123はすでに周知であ
り、その詳細な説明は不要である。
【0048】第27図はライブラリに格納されたデータ
の一部を示す。同図に示すように、データは、「デバイ
ス名称」フィールドと「動作名称」フィールドとからな
る。これらのフィールドのデータは上記各種マップを作
成するときに、別々にウインド表示される。ライブラリ
中で、このように2つのフィールドに分割したのは、
「デバイス名称」と「動作名称」とが固有の意味を持つ
ように成っているからである。ブロックフローマップ 第22図は、本システムで重要な役割を有するブロック
フローマップであり、このマップは第4図の動作ブロッ
クフローチャートをホストコンピュータ60のフローマ
ップ作成プログラム128により変換したものであり、
データファイル56に格納される。このマップは、同図
に示すように、7つのアイテム、即ち、「ブロック番
号」、「ブロック名称」、「FROM」、「TO」、
「ステップフローマップポインタ」、「装置種別」、
「動作時間」からなる。ブロック名称はそのブロックに
つけられた名称である。ブロックはブロック名称により
ユニークに特定できるが、ブロック番号を付すことによ
り、そのブロックを簡単に特定することができる。第6
図のラダープログラムにおいて、信号名に例えば、「B
4」と付されているのは、このブロック番号を参照する
ことにより得たものである。「FROM」は、そのブロ
ックが、他の上位のどのブロックから連結されているか
を示す。「FROM」の部分に、複数のブロック番号が
記されている場合は、それらのブロックに当該ブロック
が接続されていることを示す。「TO」は、そのブロッ
クが、他の下位のどのブロックに連結されているかを示
す。「TO」の部分に、複数のブロック番号が記されて
いる場合は、それらのブロックに当該ブロックが接続さ
れていることを示す。第22図には、第4図のブロック
フローチャートにおけるブロック間の接続関係が示され
ている。前述したように、図形プロセサ124は、第4
図のフローチャートの各ボックスの連結関係をベクトル
データとして表現するから、そのようなデータから、第
22図のブロックフローマップを作成することは容易で
ある。
【0049】ブロックフローマップの「ステップフロー
マップポインタ」は当該ブロックのステップフローマッ
プ(第23図)がどのメモリ番地に作成されたかを示
す。このブロックフローマップは、自動プログラミング
部55が、第28図のステツプS16において、動作ブ
ロックフローチヤートから作成する。実I/Oマップ ステップフローマップを説明する前に、実I/Oマップ
を第24図により説明する。この実I/Oマップは、こ
れから設計しようとする生産ラインに設けられた全ての
設備(アクチュエータ)について所定の入出力関係を定
義したものである。図中、「名称」はそのアクチュエー
タデバイスに対してユニークにつけられた「名前」であ
る。このマップを定義する他のアイテムは、「動作」、
「出力B」、「確認A」、「手動A」の4つである。
「出力B」とは、論理値1の信号が「出力B」で規定さ
れるメモリ番地に書き込まれたときに、当該デバイスが
「動作」に規定された動作を行うためのデータである。
この「出力B」は第11図で説明した出力Bに相当す
る。「確認A」とは、当該デバイスが「動作」に規定さ
れた動作を行ったときに、システムがその動作を確認す
る時に参照するメモリ番地を示す。この「確認A」は第
11図で説明した「確認A」に相当する。「手動A」と
は、手動動作を行うようにプログラムを組むときに、
「手動A」に示されたメモリ番地に論理値1を書き込
む。
【0050】第24図により、実I/Oマップについて
具体的に説明すると、「BF位置決め」なるデバイスが
「出」動作を行うためには、「BA0」番地に1が書き
込まれ、その動作の結果は、「AC0」番地に1が書き
込まれたかを確認することにより確認される。また、
「BF位置決め」なるデバイスが「戻り」動作を行うた
めには、「BA1」番地に1が書き込まれ、その動作の
結果は、「AC1」番地に1が書き込まれたかを確認す
ることにより確認される。「BA0」や「ACo」などの
番地は、いわゆる、メモリマップI/Oの番地に対応す
る。これらの番地は、第14図のシーケンサ制御部51
のバックプレーンのピン番号に対応する。このピンは該
当するアクチュエータに接続されている。この制御部5
1は、これらのメモリ番地(「出力B」や「手動A」)
の内容をスキャンしており、これらの番地の内容が1に
なれば、対応するアクチュエータを駆動する。そして、
そのアクチュエータの確認スイッチ(第8図を参照)が
変化すれば、その論理値を、例えば、「AC0」番地に
書き込む。
【0051】この実I/Oマップは、日本語FEP12
3や実I/Oマップ作成プログラム126を使って作成
され、各「名称」や「動作」フィールドは検索可能に構
成されている。ステップフローマップ 第23図のステツプフローマップは、実際の生産ライン
における動作を記述するマップである。このマップのア
イテムは、第23図に示すように、当該ステップが属す
るブロックの番号を示す「ブロック番号」、「ステップ
番号」、当該ステップの「名称」、そのステップにおけ
る「動作」のタイプを表す「動作」、「FROM」、
「TO」、「出力B」、「確認A」「手動A」、「動作
時間」である。「FROM」、「TO」は、ブロックフ
ローマップの場合と同じように、ステップ間の接続関係
を表す。「動作時間」は、当該ステップが動作するのに
要する公称の時間である。
【0052】動作ステツプフローチヤート(第7図)
は、図形プロセツサ124を用いて作成したものであ
り、そのデータはベクトル化されている。ステツプフロ
ーマップの最初の6つのフィールド、即ち「ブロック番
号」、「ステップ番号」、「名称」、「動作」、「FR
OM」、「TO」のためのデータは、フローマップ作成
プログラム128が第28図のステツプS8において、
前記ベクトル化された動作ステツプフローチヤートか
ら、ブロックフローマップの作成と同じ要領で作成す
る。残りのフィールド、即ち「出力B」、「確認A」
「手動A」のためのデータは、自動プログラミング制御
部55のラダープログラムコンパイラ127がラダープ
ログラムを生成する時(第29図の手順が実行される
時)に、これらのフィールドに、前述の「実I/Oマッ
プ」からのデータを埋め込む。 〈ユーザインターフェース〉第19図において説明した
実施例システムの機能が有効に機能するためには、使い
やすいユーザインターフェースが必要である。本システ
ムでは、ユーザインターフェースはCRT58により行
われる。本システムのCRT表示装置58でのユーザイ
ンターフェースは2つの意味を有する。第1の意味は、
ラダーパターンの登録時、動作ブロックフローチヤート
や動作ステップフローチヤートの作成時、「実I/Oマ
ップ」の作成時などにおけるマルチウインドを介したユ
ーザインターフェースである。第2は、操作者がシステ
ムに操作指令を与えるために、タッチパネル57による
インターフェース(以下、所謂「ボタンアイコン」によ
るインターフェースと呼ぶ)である。この場合、操作者
は、CRT58に表示された内容によりシステムからの
メッセージを知り、そのメッセージに基づいて所定の位
置を押すことにより、システムに対して指令を与える。
【0053】かかるタッチパネルによるユーザインター
フェースは、例えば、第32図に示すように、矩形15
0の左上端座標と右下端座標(x1,y1)(x2,y
2)で規定される表示領域に、例えば『ON』と表示
し、矩形151の左上端座標と右下端座標(x3,y
3)(x4,y4)で規定されるタッチ検出領域の内部
の任意の領域で操作者がタッチしたことを検出したこと
をもって、所定の『ON』動作を行なうようにプログラ
ム化するというものである。本システムにおけるタッチ
パネル57を用いたユーザインターフェースも基本的に
はこの手法を用いているが、その特徴は、むしろ、CR
T58に表示されるボタンアイコンの表示データや機能
が、前述の実I/Oマップから与えられるという点にあ
る。即ち、実I/Oマップやステツプフローマップを介
して、シュミレーションプログラムやCRT表示プログ
ラム等が、他のサブシステム(自動プログラミングサブ
システム55)とプログラムインターフェースするとい
うことである。
【0054】本システムにおける1つのボタンアイコン
は、第33図のようなデータ構造により規定される。同
図中、150,151は第32図で説明した表示領域及
びタッチ検出領域を規定する座標である。第34図に示
すように、本システムのボタンアイコンは3行のデータ
表示フィールドを有する。第33図の152,153,
154はこれら3つのフィールドに表示されるテキスト
を表わす。155のS/Lは、このボタンアイコンが単
に表示(L)を行なうに過ぎないのか、スイッチ機能
(S)を有するのかを区別する情報である。156のM
/Aは、当該ボタンにスイッチ機能が与えられている場
合において、Mであればモメンタリスイッチとして機能
し、Aであればオルタネートスイッチとして機能するこ
とを意味する。157は、このボタンに与えられた機能
の結果を表わす出力が“0”若しくは“1”であるとき
に、このボタンの表示色を規定するフィールドである。
【0055】第35図はCRT装置58の画面に設けら
れた複数のボタンアイコンの配置を示す図である。これ
らのボタンアイコンの各々に、第33図のデータがアタ
ッチされる。第35図中の数字は表示位置を指定する番
号である。ユーザは、第37図に示すように、どのボタ
ンアイコン位置に、どのデバイスを表示させるかを個々
のボタン毎に指定することと、そして、個々のボタン毎
にフィールド157の色指定を行ない、スイッチのモー
ド(L/SとM/A)の指定を行なうだけでよい。第3
7図の表示位置番号は第35図の表示位置指定番号に等
しい。従来では、CRT装置に表示するデータは、ユー
ザが独自に設定し、それは面倒な作業であったが、本シ
ステムでは、ユーザは単に、ボタンの表示位置とデバイ
ス名称、そして色指定などを指定するだけでよい。
【0056】第33図は、実I/Oマップの各デバイス
の名称フィールドのデータ構成の一例を示す。『実I/
Oマップ』の名称フィールドの最初のlバイトは(第3
6図の例では『TL』)は、第34図に示すように、表
示データの第1段目(152)にコピーされ、名称フィ
ールドの次のmバイトは(第36図の例では『位置決
め』)は表示データの第2段目(153)にコピーされ
る。表示データの第3段目(154)は、本システムで
は、実I/Oマップの『確認A』フィールドの値が
“0”であるか“1”であるかに応じて、『動作』フィ
ールドのリテラルデータをもってくるようにしている。
即ち、デバイス名称が位置決めタイプのものであり、そ
のデバイスの『確認A』フィールドの値が“1”であれ
ば、第3段目には『出』を、“0”であれば『戻り』を
表示する。
【0057】第37図のボタンアイコンの指定は操作者
がデータ生成プログラム55を起動することにより行な
われる。このデータ生成プログラム55は、第37図の
ようなデータを操作者が作成したならば、実I/Oマッ
プを参照しながら、個々のボタンについて第33図のよ
うなボタン定義データを作成する。ボタン定義データの
フィールド150乃至154の作成については前述した
通りである。第36図の例のような『TL位置決め』な
るデバイスが選択された場合は、そのデバイスが『出』
状態になったか『戻り』状態になったかがそのアイコン
に表示されるべきである。『出』状態になったか否か
は、そのデバイスの実I/Oマップの『確認A』フィー
ルドに示されるメモリ番地のデータを参照することによ
り判断できる。第33図のフィールド158はその参照
番地を格納する。
【0058】かくして、1つの画面毎の全てのボタンア
イコンについての画面制御データ(第30図)が生成さ
れると、CRTパネル制御部53は、これらの画面制御
データを参照しながらCRT表示装置58上に画面表示
を行なう。もし、『0のときの色指定』が赤で、『1の
ときの色指定』が青ならば、『TL位置決め』デバイス
が『出』状態にあれば、青で表示される。
【0059】以下、第19図に示した順序に従って、本
システムの機能を、「プログラムの自動生成」、「故障
の検出」、「故障箇所の解析」、「シュミレーショ
ン」、「プログラムの最適化」という順で説明する。 〈プログラムの自動生成〉第29図,第30図は、ラダ
ープログラムを作成するコンパイラ(第26図の12
7)の制御手順を示すフローチヤートである。第29図
は、このコンパイラの、ステツプフローマップの「出力
B」、「確認A」「手動A」を作成するための制御手順
を示すフローチヤートであり、第30図がラダープログ
ラム要素を作成するためのフローチヤートである。
【0060】第29図において、ステップS10、ステ
ップS12では、夫々、ブロック番号、ステップ番号を
示すカウンタm,nを“0”に初期化する。ステップS
14では、既に(ステツプS6において)作成されてい
るブロックフローマップをサーチして、カウンタmに対
応する名称を有するブロックを探す。そして、そのブロ
ック名称を有するステップフローマップを捜す。対応す
るマップが無ければ、ステップS30に進んで、カウン
タmをインクリメントして、ステップS32を経てステ
ップS14に戻る。対応するマップがあれば、ステップ
S18で、該当するステップフローマップの中の、ブロ
ックmステップn(BmSn)の「名称」を有するデバ
イスを実I/Oマップ中にサーチする。ステップS2
0,ステップS22,ステップS24においては、サー
チして見つかったデバイスに対応する「出力B」、「確
認A」、「手動A」、「動作時間」フィールドを、ステ
ップフローマップ中にコピーする。ステップS26では
カウンタnをインクリメントする。尚、対応するステツ
プフローマップが見つかれば、そのマップのポインタア
ドレスをブロックフローマップ(第22図)の「ポイン
タ」フィールドに書き込む。
【0061】1つのステップフローマップ中では、デバ
イスが動作される順に並んでいるので、そのステップフ
ローマップの全てのステップについての、「出力B」、
「確認A」、「手動A」、「動作時間」フィールドを埋
めたならば、ステップS14に戻って、上述の手順を繰
り返す。第30図は、ラダープログラムを自動生成する
プログラム(このプログラムは、自動プログラミング制
御部55のプログラムの一部である)の手順を示す。
【0062】第30図のステップS40では、レイヤを
示すカウンタLを、最上位を示す値にセットする。ここ
でレイヤとは、ブロックフローチャートにおける層のレ
ベルを示す。第4図の例では、ブロックa,cが第1層
を、ブロックbを第2層、ブロックdを第3層と、ブロ
ックeを第4層と、ブロックfを第5層と、ブロックg
を第6層と呼ぶ。更に、ブロックl,m,nを第7層
と、ブロックoを第8層と、ブロックiを第9層と、ブ
ロックj,p,qを第10層と、ブロックkを第11層
と、ブロックr,sを第12層と呼ぶ。層に分けた理由
は、下位層のブロックが起動される条件は、そのブロッ
クの上位のブロックの動作終了条件に規定されるからで
ある。従って、階層のつけ方は、左側に位置する複数の
ブロックの中で、並列に起動される関係にあるブロック
同士(例えば、ブロックa,c)をグループ化してそれ
らを参照し、そのグループの全てのブロックに同じ階層
番号をつける。次に、これらのブロックに続く「枝」の
中で、並列関係が変化する最下位のブロック(例えば、
ブロックb)を探索する。並列関係が発生したところか
ら、並列関係が変化するところまでの複数のブロックに
対して、上から下に向けて順に階層番号を付していく。
【0063】ステップS40によれば、レイヤカウンタ
Lに対して、このように前もって付された階層番号の最
上位の番号がセットされる。第4図の例であれば、カウ
ンタLには1がセットされる。ステップS42では、カ
ウンタLに示される階層に属する1つのブロックをみつ
ける。このブロックの番号をカウンタmにセットする。
ステップ46では、このブロックの上位のブロックを全
てサーチする。カウンタLが3であれば、その層に属す
るブロックは、第4図の例では、ブロックdであり、こ
のブロックdの上位のブロックはb,cとなる。ステッ
プS48では、見つかったこれらの上位ブロックの動作
終了条件の積を生成する。例えば、あるブロックB2の
上位のブロックB1が4つの動作ステップからなり、各
々の動作ステップの動作終了を確認するスイッチ出力
を、例えば、A0,A1,A2,A3とすれば、ブロッ
クB2はブロックB1の全ての動作が終了していなくて
はならないから、ブロックB2の起動条件は、 A0*A1*A2*A3 となる。
【0064】尚、このブロックB2の起動条件の作成に
おいて、ブロックB1の各動作ステツプにおいては、通
常、『出』のためのデバイス動作(例えば、『BF位置
決め出』)と『戻り』のためのデバイス動作(例えば、
『BF位置決め戻り』)等のような相補関係の動作が存
在する。かかる動作に対応する論理は互いに消去し合う
ので、上記起動条件に含める必要はない。
【0065】また、並列動作を有するブロックを探索す
る手法は上記手法以外にもあり、例えば、下位のブロッ
クから上位のブロックを探索する手法等がある。ステッ
プS48〜ステップS50では、見つかった全ての上位
ブロックについての動作終了条件の積を生成する。ステ
ップS52では、これをカウンタmが示すブロックBm
の起動条件としたラダー要素を生成する。第8図の例
では、ラベル1360のラダー要素がこの起動条件を表
わしている。ここで生成されるラダー要素は、データフ
ァイル56(第23図)に前もってデータベース化され
ているラダーパターンのなかから、条件に合致したもの
を探す。ラダーパターンを探す手法は、本出願人によ
り、特願平1−253991、2−30378、2−3
0379、2−231843、2−231845に詳細
に開示されている。
【0066】ステップS54では、システムに固定のラ
ダー要素(第14図のSRTラダーと、STPラダーで
ある)を生成する。尚、ステップS52において自動生
成されたブロックmの起動条件は冗長な部分を含んでい
る場合が多い。冗長部分は最適化プログラム129によ
り最適化される。この最適化プログラムの詳細は後に説
明される。
【0067】ステップS56〜ステップS62は、1つ
のブロック内の全ての動作ステップに対応するラダー要
素を次々と生成していく手順である。先ず、ステップS
56で、ステップ番号を示すカウンタnをゼロに初期化
し、ステップS58では、動作ステップBmSnに対応
するラダー要素を生成する。この場合、番号BmSnの
ステップフローマップが参照される。そして、そのステ
ップの「出力B」、「確認A」「手動A」のメモリ番地
が参照され、ラダー要素が作成される。第8図の例でい
えば、「確認A」は「0C6」番地の『RRスライド
出』であり、「出力B」は「3041」番地の『B4S
t1RRスライド出』である。ステップS60では、こ
のステップBmSnが起動されるためのインターロック
条件を生成する。動作ステップが起動されるためには、
その前までの動作ステップが終了されていることが前提
である。この場合、動作ステップBmSn−1の終了条
件が、このブロックBmSnのインターロック条件とな
る。第8図の例でいえば、『B4ステップ1出力』『荷
受台前進』『B4動作ON』がインターロック条件とな
る。こうして生成されたインターロック条件は、次のサ
イクルで、動作ステップBmSn+1のインターロック
条件となる。尚、上述の、ラダー要素の生成は、本出願
人による、前述の特願平1−253991、2−303
78、2−30379、2−231843、2−231
845に詳細に開示されている。
【0068】ステップS56〜ステップS60の処理
を、同じブロックBm内の全ての動作ステップに対して
行なうと、ステツプS66に進む。そして、ステップS
66,ステップS72で、レイヤ番号Lに属する他の動
作ブロックを探して、そのような動作ブロックが見つか
ったならば、ステップS44に戻り、見つかった動作ブ
ロックについて、ステップS44〜ステップS62の処
理を繰り返す。
【0069】同じ階層に属するブロックに対する処理を
全て行なったならば、カウンタLをステップS68でイ
ンクリメントしてからステップS70で、上述の処理を
全ての階層に対して行なったかを判断する。全ての階層
のブロックに対して上述の処理を行なったのであれば、
ラダープログラムの生成処理は終了する。
【0070】尚、ステップフローマップにおいても、例
えば、第7図の『FL基準ピンA出』と『FL基準ピン
B出』のように、並列動作を行なう動作ステップが存在
する。動作ステップの並列性は、ステップフローマップ
における「FROM」と「TO」フィールドから判断で
きるのは、動作ブロックにおける並列性の判断と同じで
ある。並列関係にある複数の動作ステップ(例えば、
『FL基準ピンA出』と『FL基準ピンB出』)のイン
ターロック条件は、その上位の動作ステップ(「RRス
ライド出」ステップ)の終了条件が共通になっている。
また、この並列関係にある複数の動作ステップの下位の
動作ステップ(例えば、第7図の『RR基準ピン出』)
の起動条件は、その並列関係にある複数の動作ステップ
の終了条件の積であるのは、動作ブロックにおけるラダ
ープログラム要素の生成と同じである。
【0071】第31図は、第25図乃至第30図で説明
した処理を模式化して示した。第28図によれば、シス
テムの一部変更も、簡単に行なうことができる。即ち、
その変更が、デバイスの変更であれば、実I/Oマップ
において、その変更に係わる部分を「データ生成プログ
ラムにより修正すればよい。この場合、メモリ番地に変
更がない限りは、ラダープログラムの再生成は不要であ
ろう。また、変更がシーケンスの変更であれば、その変
更にかかる動作ブロックフローチヤート(第4図)また
は動作ステップフローチヤート(第7図)を修正し、再
度、第29図,第30図のプログラムをランさせて、ラ
ダープログラムを作成すればよい。この点において、本
システムの特徴は、実I/Oマップ(第22図)に全て
のデバイスに関する情報が集中し、このマップをデバイ
ス名称で索引できることにより、シーケンス手順の変
更、デバイスの変更等は、その変更に係る部分だけの修
正を行なうだけで済む。即ち、システムの変更、修正が
極めて簡単である。
【0072】尚、第1図の生産ラインでは、移載装置や
リニア搬送装置やねじ締めロボット等の設備が存在して
いる。これらの装置では、移載装置における動作は繰返
し動作であり、一方、連続搬送装置では連続動作であ
る。そして、繰り返し動作と連続動作とは、それらを表
現するラダーパターンは異なる。そこで、本システムの
データファイル(第23図)中では、あらかじめ準備し
たラダーパターンを移載装置や連続搬送装置やねじ締め
ロボット毎に異なるライブラリとして分離して記憶して
いる。また、この装置間の相違により、1つの動作ブロ
ックのは、移載装置や連続搬送装置やねじ締めロボット
が混在することはないようにしており、各動作ブロック
のブロックフローマップ(第22図)には、その種別を
表わすデータ(「装置種別」)が設けられている。ラダ
ープログラムを生成するときは、この種別を参照して、
対応するラダーパターンをライブラリから取り出すよう
にしている。これにより、ラダー要素の生成が速くな
る。尚、第38図に、連続搬送におけるラダーパターン
の一例を示す。 〈プログラム実行/故障監視/故障診断〉以上、本実施
例システムにおけるラダープログラムの自動生成及びユ
ーザインターフェースについて説明した。またその過程
で、ブロックステップ動作ブロックマップ及び動作ステ
ップがどういうものかが理解できた。
【0073】第39図,第40図,第41図は、シュミ
レーションサブシステム105,故障診断/復旧サブシ
ステム106の夫々のプログラム構成を示す。これらの
サブシステム105,106は、自動プログラミングサ
ブシステム104と同じく、マルチウインドシステム1
21とインターフェースするCRTインターフェースプ
ログラムを夫々有する。換言すれば、CRT58は、3
つのサブシステム104,105,106により共有さ
れる。同図はサブシステム105,106のプログラム
構成も示す。特に、故障診断/復旧サブシステム106
は、マップ制御プログラム201,動作監視プログラム
202,故障診断解析プログラム203,復旧プログラ
ム204等からなる。
【0074】故障診断は、故障の発生したことを特定す
る故障検出動作と故障の実際に発生した箇所の特定(解
析)動作とからなる。故障発生の検出 第40図,第41図を用いて、シーケンス制御及び監視
及び故障診断のためのプログラム構成について説明す
る。
【0075】第40図,第41図において、ラダープロ
グラム220は、個々の動作ステップにおける個々のア
クチュエータの具体的な動作を記述するものである。ま
た、マップ制御プログラム201は、動作ブロックマッ
プ(第22図)及び動作ステップマップ(第23図)を
参照しながらラダープログラム220が実行する設備の
動作をモニタする。このマップ制御プログラム201の
詳細は第49図に示さのる。また、動作監視プログラム
202は、マップ制御プログラム201とラダープログ
ラム220間とのやり取りを監視しながら、故障の発生
を検知するものであり、その詳細は第50図に示され
る。さらに、故障診断プログラム203は、監視プログ
ラム202の通知により故障が発生したことを知られさ
れると、故障診断を行なうものである。この故障の発生
したアクチュエータ(即ち、動作ステップ)は、監視プ
ログラム202とマップ制御プログラム201とが記録
している後述のステップカウンタの内容を診断プログラ
ム203が調べることにより知れる。アクチュエータ内
の具体的なデバイス若しくは接点は、診断プログラム2
03が、入出力マップ(I/Oマップ:第24図)のデ
ータに基づいて検出することができる。
【0076】故障診断システムを理解するためには、動
作ブロック毎に設定された前述のSC−REG(CSと
略記する)等の理解が必要である。第42図は、ある動
作ブロックi(BLi)に設けられた上記CSレジスタ
と、タイムレジスタ(TSsi,TSei)と、ブロックタ
イムレジスタTBSを説明するものである。CSレジス
タCSiは、ブロックiで最後に実行終了した動作ステ
ップの番号を格納する。また、ステップタイムレジスタ
TSSiは、最後に実行された、あるいは現在実行中の動
作ステップが開始された時刻を格納する。TSeiは最後
に実行が終了した動作ステップがその終了した時刻が格
納される。また、ブロックタイムレジスタTBiは、当
該ブロックが起動可能になるまではゼロである。起動可
能になると、TBiには起動可能になった時刻が格納さ
れる。ステップタイムオーバ 第43図は、個々のブロックに夫々のCSレジスタが設
定されている様子を示している。
【0077】ある動作ステップの実行が終了した時点で
は、 TSxi=TSei−TSSi‥‥‥(1) がその動作ステップを実行するのに要した時間となる。
前述したように、カウンタCSiは、ブロックiが最後
に実行終了した動作ステップの番号(実際には、その動
作ステップの次の動作ステップ番号を示す)を記憶する
から、このCSiの内容から、最後に終了した動作ステ
ップの実行に要した時間TSxiを計算することができ
る。本実施例の故障診断システムでは、このTSxiと第
23図の動作ステップマップに記憶されている個々の動
作ステップの実行に要する標準時間τ Siとを比較するこ
とにより、 TSxi−τsi>δ0 ‥‥‥(2) であれば、その動作ステップの実行に障害(『ステップ
タイムオーバ』)があったと判断する。ここでδ0は定
数である。ステップハングアップ また、本故障診断システムでは、定期的に実行が終了し
ていない動作ステップをスキャンし、現在までの経過時
間TP−TSSiが、 TP−TSSi>δ1 ‥‥‥(3) であれば、当該動作ステップはループ若しくはハングア
ップしていると判断する。ここで、TPは現在の時刻で
あり、また、δ1は定数である。δ1は、通常、その生産
ラインの動作ステップの実行に要する時間のなかで最大
のものにある許容幅をもたせたものである。かかる故障
が『ステップハングアップ』である。ブロックハングアップ 第43図,第44図乃至第48図を用いて『ブロックハ
ングアップ』について説明する。
【0078】第43図若しくは第5図に示すように、互
いに並行動作を行なう複数のブロックが存在する。かか
る複数のブロックをグループと考えると、ある1つのグ
ループ(第43図の例では、BL1が1つのグループを
形成する)の全ステップ動作が終了して、そのグループ
に続く他のグループ(第43図の例では、BL2,BL
3,BL4からなるGR1)が実行されるまでの時間経
過を監視する必要がある。前述のブロックタイムレジス
タTBiは、上記ブロックグループが起動されるまでの
経過時間である。各グループについて、測定動作時間を
基準時間と比較しつつモニタすることにより、各グルー
プ毎の異常、換言すれば、ブロックから別のブロック間
に遷移する過程で発生した故障を診断することができる
ようになっている。このような故障が『ブロックハング
アップ』である。本実施例システムにおいては、ブロッ
クハングアップが発生した場合は、更に、その原因とな
った動作ステップを特定することまでを行なう。
【0079】『ブロックハングアップ』の原因となった
動作ステップを特定する手法について、第44図乃至第
48図を用いて説明する。これらの図は、『ブロックハ
ングアップ』の説明を容易にするために、4つの動作ブ
ロックからなるある生産ラインの動作ブロックマップを
簡略化したものである。第44図の生産ラインは、簡単
に4つの動作ブロックから構成される。これらの動作ブ
ロックに対する動作ブロックマップは、簡略化して第4
5図のように示される。
【0080】第45図では、ブロック1からブロック2
が起動されるまでに要する時間をΓ 12、ブロック1から
ブロック3が起動されるまでに要する時間をΓ13等と表
わされている。これらの遷移時間Γは前もって設定可能
だからである。例えば、ブロック4は、並行したブロッ
ク2,3の終了により起動される。第43図に関連して
説明したように、ブロックタイムレジスタTBiは、当
該ブロックが起動可能になるまではゼロである。そし
て、起動可能になると、その時刻が格納される。従っ
て、レジスタTBiの値がゼロでなく、現在までの経過
時間が上記Γよりも十分に大きいときは、ブロックハン
グアップが起こっているものと判断できる。従って、ブ
ロック2,3の終了から、時間Γ24,Γ34が経過し
てもブロック4が起動されない場合は、ブロックハング
アップとして故障認識される。
【0081】ブロック4が起動されないためにブロック
ハングアップが検出されたときは、その原因となった動
作ステップはブロック2,3のいずれかにある筈であ
る。第46図は動作ブロック2の動作ステップマップ
を、第47図はブロック3の動作ステップマップを示
す。第46図によれば、ブロック2には4つの動作ステ
ップが設定され、各々のステップにおける出力は、Y
1,Y2,…Y4であり、それらの出力アクチュエータ
の確認スイツチはX1,X2,…X4である。また、第
47図によれば、ブロック3には3つの動作ステップが
設定され、各々のステップにおける出力は、Y5,Y
6,Y7であり、それらの出力アクチュエータの確認ス
イツチはX5,X6,X7である。上記確認スイツチX
1乃至X7の状態は、ブロック2,3を終了する時点で
は、ブロック毎にユニークであり、且つ、事前に知り得
るものである。第48図の起動条件マップは、第44図
の例に示された4つの動作ブロックの夫々が起動される
ための条件、即ち、動作確認スイツチの状態論理を示す
ものである。図中、ブロック4について言えば、ブロッ
ク2では出力Y1乃至Y4がオンされて、確認スイツチ
X1乃至X4までがオンされている。また、ブロック3
では出力Y4乃至Y7がオンされて、確認スイツチX4
乃至X7までがオンされている。従って、ブロック4が
正常に起動されるときは、 X1*X2* … *X7 でなくてはならない。ブロック2,3はブロック1の終
了によって起動される。従って、ブロック2,ブロック
3の起動条件はブロック1の全動作ステップの確認スイ
ツチの状態の論理積となる。尚、第48図において、
〈N〉は、確認スイツチが出力Yが“出”状態にあるこ
とを確認する状態にあることを意味し、〈I〉は、確認
スイツチが出力Yが“戻り”状態にあることを確認する
状態にあることを意味する。
【0082】このように、各動作ブロックの起動条件
に、そのブロックの前段のブロックの全動作ステップの
出力を確認するデバイスの状態を論理積として組み合せ
たものをプログラム化すれば、当該動作ブロックの起動
は、前段の動作ブロックの全動作ステップの正常な終了
を確認しない限り行なわれない。換言すれば、起動条件
が満足されなければ、前述のブロックハングアップが起
こって、故障と正しく検知されるのである。しかも、故
障が検知されたブロックが認識されれば、起動条件マッ
プと、実際の確認スイツチの状態とを比較すれば、どの
スイツチが異常であるか、そして、入出力マップ(第2
4図)と動作ステップマップ(第23図)とを参照する
ことにより、どの動作ステップのどの出力アクチュエー
タがおかしかったかを速やかに知ることができる。
【0083】生産ラインにおけるシーケンス制御には、
経験上、動作ステップのアクチュエータが、「出」状態
でもなく、「戻」状態でもない状態で停止したり、ある
いは、「出」状態と「戻」状態の両方を示したりする場
合がある。この原因の1つは、重量の重いアクチュエー
タがバウンドにより「出」状態でもなく、「戻」状態で
もない「中途半端」な状態に陥ってしまうからである。
そして、従来では、このような状態は、見掛け上は、シ
ーケンス制御は正常に進んでいくから、その不良確認ス
イツチの状態によって起動される(別の動作ブロック
の)筈の動作ステップが何時までも起動されないという
理由で故障と認識されるに至るものの、しかしながら、
その停止点は、実際に障害が発生した動作ステップとは
かけ離れた動作ステップである可能性が高い。
【0084】しかしながら、本実施例のブロックハング
アップ検知の手法によれば、前述したように、各動作ブ
ロックの起動条件に、第48図のような、前段ブロック
の全確認デバイスのあるべき論理状態の論理積を設定し
ているので、ある1つの動作ブロックの動作ステップで
上述の中途半端なスイツチ状態に陥って、その動作ステ
ップで故障と認識できなくても、その動作ブロックが終
了して、次に続く動作ブロックが起動される際に、ブロ
ックハングアップとして確認できる。即ち、故障のあっ
た動作ステップと故障認識が行なわれた動作ステップと
が時間的にも空間的に余り離れたものとはならず、故障
診断が正確になるばかりでなく、復旧もより速やかにな
るという効果がある。 〈故障箇所の解析〉上述したように、ステップタイムオ
ーバ、ステップハングアップ、ブロックハングアップ等
により故障が検知されると、故障ステップの特定によ
り、動作ステップマップ(第23図)から障害のあるア
クチュエータ(設備)が特定される。第23図に示すよ
うに、1つの動作ステップは設備の1つのアクチュエー
タに対応するからである。ここで、故障アクチュエータ
から、このアクチュエータがどのような状態で停止して
いるか、即ち、このアクチュエータの動作を定義するL
S(出と戻りの2つリミツトスイツチLS)がどのよう
な状態になっているかを知る必要がある。
【0085】第24図の入出力マップ及び第23図の動
作ステップマップはこのLSの状態を知るのに使われ
る。第23図の動作ステップマップにおいては、アクチ
ュエータ識別番号欄が設けられている。この識別番号
は、それに対応するステップ(例えば、B00)で使わ
れるアクチュエータを識別する番号(例えば、A01)で
ある。この識別番号は入出力マップの個々のアイテムの
番号である。第24図の入出力マップは、個々のアクチ
ュエータの動作タイプや接点名を示すだけではなく、出
状態を示す接点と戻り状態を示す接点との関係をも記述
する。アクチュエータは往復動作を行なうから、1つの
アクチュエータには必ず、出状態と戻り状態とがペアで
存在する。第24図の入出力マップにおいて、「対応関
係」は、そのペア関係を記述している。例えば、BFと
いうアクチュエータ(このアクチュエータは番号A02
で識別される)の対応関係の欄には“A03”と記され
ている。即ち、BFアクチュエータが出状態にあるとき
を番号A02により特定し、この出状態に対応する戻り
状態は、番号A03にあるということを示している。従
って、故障診断システムは、故障ブロック番号と故障動
作ステップ番号とを得たならば、動作ステップマップか
ら故障したアクチュエータの識別番号を知り、この番号
から、この故障アクチュエータには、どのようなLSが
設定されているかを知ることができる。そして、どのL
Sが設けられているかを知ることができれば、そのLS
の状態を読出して、例えば、表示すること等により、操
作者に故障状態を伝えることができる。
【0086】第24図の入出力マップは、実際の動作シ
ーケンスを記述する動作ステップマップ(第23図)
や、ラダープログラムとは独立している。即ち、生産ラ
インが変更されて、動作ステップマップ(第23図)や
ラダープログラムが修正されても、入出力マップを修正
する必要はない。即ち、生産ラインの変更毎に故障診断
プログラムを修正する労力から解放される。
【0087】尚、上記標準実行時間τは、例えば、正常
作動時における所定回数のサイクルについての測定動作
時間の平均値{TSxi}(ここで、記号{ }は平均を
表わすものとする)と標準偏差値σとで規定される、例
えば、 τ={TSxi}+3σ ‥‥‥(4) と定義することが好ましい。より好ましくはサイクル毎
にデータτが更新される方がよい。何故なら、アクチュ
エータの動作特性は経年変化するからである。また、ブ
ロックハングアップの検出に用いる時間Γ(第22図の
動作ブロックマップを参照)についても、経年変化を考
慮して、実際に要した時間に基づいて更新することが望
ましい。故障監視の制御手順 次に、第49図乃至第52図に従って本実施例システム
における、ラダープログラムの実行/故障監視の制御動
作を説明する。
【0088】第49図は、動作ブロックマップ,動作ス
テップマップに従って、当該生産ラインの各アクチュエ
ータをラダープログラム220の動作を監視するマップ
制御プログラム201の制御手順である。このプログラ
ムが起動されるとステップS82で、初期化を行ない、
起動可能な最初のブロックグループを検出する。このグ
ループには1つのブロックを含む場合もあれば複数のブ
ロックを含む場合もある。
【0089】ステップS84では、新たに起動可能とさ
れたブロックの存在を調べる。このステップS84の目
的は、主に、ある1つの動作ブロックの全ステップ動作
が終了して、この動作ブロックに続く実行可能な動作ブ
ロックが存在するかを調べるものである。このようなブ
ロックが存在すれば(ステップS82から起動された場
合は、実行可能な動作ブロックは存在する筈である)、
ステップS86では、そのブロック番号を検出する。か
かるブロック番号をiとし、この番号は、当然、複数の
番号を含み得るものである。グループで実行可能な場合
があるからである。
【0090】ステップS88では、そのような動作ブロ
ックの動作ステップマップを読み込み、ステップS90
でその動作ブロックを実行中とマークする。ステップS
92では、実行可能な動作ステップがあるかを調べる。
動作ステップが実行可能となるのは、CSレジスタに示
されている動作ステップの動作が終了しているときであ
り、監視プログラム202のステップS136(第50
図)で行なわれる。実行可能な動作ステップが当該動作
ブロックにあれば、ステップS110で、当該動作ブロ
ックiのタイマレジスタTSSiに現在時刻を開始時刻
として書込む。ステップS110の動作を実行可能な動
作ステップがある限り行なう。実際には、グループ内に
複数の動作ブロックが存在すれば、その動作ブロックの
各々で1つの動作ステップが実行されることになろう。
【0091】実行可能な動作ステップが全て起動される
と、いずれかの動作ステップの動作が終了するまでは、
ステップS92の判断はNOとなって、ステップS94
に進み、いずれかの動作ステップの実行終了を待つ。い
ずれかの動作ステップの実行が終了したと終了信号がラ
ダープログラム側からシーケンス制御プログラムに伝え
られたら、ステップS94からステップS96に進む。
ここで、終了した動作ブロック番号iと動作ステップ番
号を読む。このiにより終了した動作ステップを含む動
作ブロックが特定できる。ステップS98では、終了時
刻を当該動作ブロックiのタイマレジスタTSeiに書
込み、ステップS99で、当該動作ステツプが終了した
時刻、その動作ステツプに関連する確認スイツチの状態
を動作状態ファイル111に書き込む。終了した動作ス
テツプの状態を書き込むのは、第20図,第21図に関
連して説明したように、後に一連の動作ステツプの動作
を時間を追って復元するためである。ステップS100
では、次に実行すべき動作ステップを示すためにCSレ
ジスタを1つインクリメントする。
【0092】このような動作を行なっていけば、アクチ
ュエータ動作を終了した動作ステップから順に、対応す
るブロックのCSレジスタが更新されると共にTSei
も更新されていく。一方、監視プログラム202は、第
50図のステップS120において、ラダープログラム
220からのステップ終了信号を監視している。いずれ
かのラダー要素でアクチュエータ動作終了があったとき
は、ステップS122に進み、ラダープログラム側から
知らされた当該ブロック番号i、ステップ番号を読取
る。そして、ステップS124で、このブロック番号i
からそのブロックのタイマ値TSSiとTSei並び
に、動作ステップマップから当該動作ステップの実行予
測時間τを読取り、(1)式に従って経過時間TSxi
を演算する。そしてステップS46で、実行に要した時
間TSxiが異常に長かったかを判断する。
【0093】ステップS126の判断がOKであれば、
ステップS134に進んで、当該動作ブロックのタイマ
レジスタの内容をクリアし、ステップS136では、現
在レジスタCSi に示されている動作ステップを実行
可能とマークする。このCSiで示される動作ステップ
は、ステップS100で更新したように、終了した次の
動作ステップである。
【0094】ある動作ブロックの動作ステップが実行可
能とマークされると、シーケンス制御プログラムの第4
9図のステップS92でYESと判断されて次の動作ス
テップの実行が行なわれていく。このように次々と動作
ステップが実行されると、ある動作ブロックについて、
ステップS102において、CSレジスタの内容が最終
ステップ番号を超えるとき、即ち、その動作ブロックの
全処理を終了したとなるときがくる。このときはステッ
プS104で、当該ブロックを終了とマークする。そし
て、ステップS105で、全ての設備の確認スイツチの
状態を、動作状態ファイル111に当該動作ブロックの
終了時刻と共に書き込む。この全ての設備の確認スイツ
チの状態データは、後述するように、シュミレーション
を行なう時に利用される。
【0095】ステップS106では、現在のブロックの
次に起動されるべきブロックのためのタイマTBijに現
在時刻を書込む。ここで、TBijは、ブロックiが終了
して、このブロックiの次に起動されるべきブロックj
が存在することを明示するためのタイマであり、第45
図のΓ12等に対応する。尚、タイムレジスタTBは次に
起動されるべき動作ブロックの最初の動作ステップが起
動されれば、ステップS108でクリアされる。
【0096】ステップS106からステップS84に戻
り、新たに実行可能な動作ブロックを探す。例えば、第
5図の例で、B13の処理が終了してステップS84に
戻ったときに、まだブロックB17の処理が終了してい
なければ、ブロックB13は実行可能とマークされな
い。次に、第50図のステップS126に戻って、ステ
ップタイムオーバ故障の発見の手順について説明する。
【0097】ステップS126で、TSxi−τ>δ0
判断されたときは、当該動作ステップの実行にかかった
時間が異常に長かったのであるから、ステップS128
で、その動作ステップの属する動作ブロックを故障とマ
ークし、ステップS130で、予想時間τの更新を行な
う。この更新処理は第52図にその処理手順の詳細が示
されている。即ち、動作ステップの処理に実際に要した
時間Txiと予想時間τとの差が小さくて、即ち、 (Txi−τ)/τ<ε (ここで、ε《1) であって、要した時間Txiがτよりも若干長かった場合
には、それは設備の経年変化によるものと判断して、ス
テップS192において、過去のTxiと今回のT xiとか
ら、次回のためのτを計算して更新する。このような更
新により経年変化をも考慮した正確な故障検知が可能と
なる。
【0098】第50図の制御手順において、ステップS
132で診断プログラム(第51図)を起動してから、
ステップS120に戻る。ステップS120に戻るの
は、他の動作ブロックの動作ステップにおいても故障を
検出するためである。また、故障検出を行なってシーケ
ンス制御プログラムの実行を停止しないのは、1つの動
作ブロックを停止しても、並行動作すべき動作ブロック
があるので、その動作ブロックの動作を停止してはなら
ないからである。他の動作ブロックを停止しなくてもよ
いのは、そもそも、動作ブロックが他の動作ブロックと
独立して動作することを条件に定義されたものだからで
ある。
【0099】ステップS138以下は、ブロックハング
アップ若しくはステップハングアップを検出する手順で
ある。ある動作ステップでラダープログラムがハングア
ップした場合の対処を説明する。かかる場合は終了信号
は発生されない。従って、ステップS120からステッ
プS138に進む。ステップS138では一定時間の経
過を見る。これは、前回ステップS138に来てから現
在時点(時刻TP)までの経過時間が一定の値を超えた
かを見るものであり、換言すれば、ブロックハングアッ
プ若しくはステップハングアップの有無ははこの一定時
間毎にチェックされるということである。ステップS1
40では、実行中とマークされている動作ステップをサ
ーチする。これは、実行中とマークされている動作ブロ
ックの各CSレジスタの内容が特定の動作ステップを指
し、且つ、TSSiに開始時間が書込まれていながら、T
eiが未だ更新されていないものである。ステップS1
42では、現在までの経過時間TP−TSSiを計算し、
ステップS144では、(3)式に従って、 TP−TSSi>δ1 ‥‥‥(3) を判断する。判断がYESであれば、ステップS64に
進み当該ブロックをステップハングアップ故障とマーク
する。
【0100】ステップS140で、実行中の動作ステッ
プがないと判断された場合について説明する。この場合
は、ステップS150では、ブロックタイムレジスタT
Bijの値がゼロでないブロックjをサーチする。ステ
ップS106に関連して前述したように、TBijがゼロ
でないものは、ブロックiが終了してもそれに続くブロ
ックjが未だ起動されていないことを示す。ステップS
152では、そのようなブロックにおける動作ステップ
が未起動のままの経過時間と前記予想時間Γijとの差、 (TP−TBij)−Γij を計算する。そして、その差が定数δ2よりも大きいな
らば、ステップS156でブロックハングアップと判断
する。ステップS158では、故障診断プログラム(第
51図)を起動する。
【0101】第51図に従って、故障診断プログラム2
03について説明する。この故障診断プログラムは、故
障がブロックハングアップであるか、あるいは、ステッ
プタイムオーバ,ステップハングアップであるかによ
り、処理を若干異にする。ステップタイムオーバ,ステ
ップハングアップが検出されれば、故障動作ステップが
直接的に知ることができるのに対し、ブロックハングア
ップの場合は、故障動作ステップを遡って追跡する必要
があるからである。
【0102】ステップタイムオーバ,ステップハングア
ップ故障の場合は、ステップS162において、故障と
マークされたブロックをサーチする。このマークはステ
ップS128しくはステップS148でなされたもので
ある。ステップS164では、検出されたブロックのC
Sレジスタの内容を読み、故障が検出された動作ステッ
プを特定する。ステップS166では、動作ステップマ
ップから故障したアクチュエータの識別番号を知る。ス
テップS168では、この識別番号から入出力マップ
(第24図)をサーチし、ステップS170で、この識
別番号を有するアクチュエータの出と戻りのLSの番号
を知る。ステップS170では、これら知り得た、故障
の起こった動作ブロック番号,動作ステップ番号,アク
チュエータ番号,LS番号を表示して、操作者に対処を
うながす。
【0103】ステップS160でブロックハングアップ
が検出された場合について説明する。この場合は、ステ
ップS174で、ブロックハングアップが検出されたブ
ロック番号に対応する起動条件マップ(第48図)を読
み込む。ステップS176では、マップに書かれている
確認スイツチの論理状態と、それらの確認スイツチの実
際状態とを比較して不一致の確認スイツチを探す。この
不一致スイツチデバイスの特定がなされれば、次に、ス
テップS178で、ハングアップが検出されたブロック
の親ブロックをブロックマップ(第22図)からサーチ
する。ステップS180では、検出された親ブロックの
動作ステップマップ(第23図)から、上記不一致スイ
ツチを使用している動作ステップを特定、これからステ
ップS182で、この動作ステップのアクチュエータ番
号やL/S番号を特定してステップS184に進む。ス
テップS184では、これらを表示する。以上のように
してサーチされた故障箇所が、デイスプレイ装置8のモ
ニタ画面上で所定の色で強調表示される。そして、作業
者による故障箇所の復旧作業が行なわれる。
【0104】以上説明した『ステップタイムオーバ』や
『ステップハングアップ』の検出は、基本的には、ステ
ップラダープログラム203とは独立したプログラムに
より行なわれている。このことは次のような効果を奏す
る。即ち、ステップラダープログラムには、上記故障検
出するための所謂、「トラツプ回路」を設ける必要がな
くなるということである。第46図において、MYは、
インターロツク条件ILCが満足されたことによる出力
であり、MYが出力されると、アクチュエータ出力Yが
出力される。従来では、第46図に示すように、スイツ
チMYが閉じたら起動されるタイマ回路Tを設け、この
タイマがタイムアウトする前に、出力Yを確認するスイ
ツチXLSが開かなければ故障(ALMオン)とするもの
であった。しかし、本実施例によれば、このようなタイ
マ回路は不要になり、第45図のように、本来の生産シ
ーケンス制御に必要なステップラダープログラムのみを
作成すればよいことになる。 〈故障復旧〉次に、このように検出された故障からシス
テムを再起動可能状態(通常は、故障が発見された動作
ステツプを含む動作ブロックの先頭)に復旧して再起動
する手法について説明する。
【0105】本実施例システムの復旧方法の特徴は、再
起動可能状態への復帰に、マニュアルモードと自動モー
ドが用意されていることである。マニュアルモードと
は、オペレータが上記可能状態に復帰するように自分の
判断で順に手動スイツチをCRT58からセットしてい
くものである。このマニュアルモードでは、上記状態に
復帰すると、それまでに行なった手動スイツチのセット
シーケンスをファイル(第40図の210)に登録して
おく。このファイルは過去に起こった故障の復帰過程
を、故障の発生箇所毎に記録しているもので、後に故障
発生箇所をキーにして検索可能になっている。
【0106】自動復帰モードでは、その故障の発生箇所
に対応する過去記憶された復帰手順をファイル210か
ら呼び出して、その復帰シーケンスをシュミレートして
再起動可能状態に復帰する。同じ故障に対する復帰手順
は大体同じものである。従って、このような復帰手順を
記憶し、自動モードにおいて、そのシーケンスをシュミ
レートすれば、復帰操作が敏速に行なえるのみならず、
その手順が統一化され、例えば、初心者でも簡単に復帰
作業を実行することができる。
【0107】以下、第54図乃至第61図を参照しなが
ら、本実施例の復旧方法を説明する。第54図は、復旧
方法の説明のために例示されたある設備(ワーク把持設
備)におけるワーク把持動作を説明する。この設備で
は、ワークWを3つのシリンダが把持する。把持順序
は、シリンダY0→シリンダY1→シリンダY2である。
これらのシリンダYは、第55図に示すように、出状態
と戻り状態が2つのスイツチにより確認される。第56
図は、第54図の設備に対応する実I/Oマップの例で
ある。このI/Oマップでは、各シリンダに対して夫
々、出動作と戻り動作が定義されている。それらのシリ
ンダがアクテイベートされるためには、『出力』フィー
ルドに記されている番号のメモリに“1”が書き込まれ
ることが必要である。夫々のシリンダの動作は、対応す
る『確認A』『確認B』フィールドの番地の内容をチェ
ックすることにより確認できる。これら3つのシリンダ
の全部で6つの動作は全て、マニュアルでシュミレート
できる。第56図には、マニュアルでシュミレートする
ために“1”をセットすべきメモリ番地が『手動』フィ
ールドに設定されている。第57図及び第58図は、夫
々、3つのシリンダをシリンダY0→シリンダY1→シリ
ンダY2の順序で駆動してワークWを把持し、所定の加
工動作を行なってから、シリンダY2→シリンダY1→シ
リンダY0の順で把持を解除するという動作を示すとこ
ろの、動作ステツプマップ,ラダープログラムである。
第58図のラダープログラムをみても分るように、各シ
リンダは、独立して手動で出状態に、あるいは戻り状態
にセットすることができる。ラダープログラムで、MA
スイツチは自動実行モードにおいてシステムが閉じる自
動モードスイツチであり、MSは手動実行モードにおい
てシステムが閉じる手動実行モードスイツチである。
【0108】第54図の例で再起動可能状態は、シリン
ダが全て初期位置に戻った状態であると定義できる。も
し、シリンダY2がフェールしているならば、復帰手順
は、先ず、シリンダY2を戻し、次にY1を戻し、次にY
0を戻すことにより、再起動可能状態に復帰できる。
尚、第58図のラダープログラムの各スイツチの信号に
付された名称は、第57図の動作ステツプにより、I/
Oマップ(第56図)内のメモリ番地と関連付けられて
いる。
【0109】第59図は、CRT58の表示画面の例を
示す。図中、301はマニュアル復帰を指示するための
アイコンであり、302は自動復帰を指示するためのア
イコンである。300の表示領域にはラダープログラム
が表示される。領域300内の全ての表示要素はアイコ
ンとして機能する。即ち、領域300に手動スイツチが
表示されていれば、オペレータがそのスイツチの表示部
分を選択すると、システムはタッチパネル57を介して
そのスイツチが押されたと認識できる。オペレータがど
のスイツチを領域300内で選択したかをシステムが認
識できれば、システムはそのスイツチにI/Oマップ
(第56図)の該当番地に“1”を書き込むことができ
る。『SI』アイコンは、ラダープログラム要素の1つ
を実行させるアイコンである。
【0110】このようにして、システムはCRT58を
ユーザインターフェースのための入力出力装置として使
うことができる。第59図中、303は、領域300を
上下左右方向にスクロールするためのアイコンである。
また、304はブロック番号を指定するためのアイコ
ン、305はステップ番号を指定するためのアイコン、
307,308は指定されたブロック番号及びステップ
番号を表示する表示領域である。306は、『起動』ア
イコンであり、オペレータがシステムが再起動可能状態
に復帰したと判断してこのアイコンを選択すると、シス
テムはこれを検知して自動実行モードでラダープログラ
ムを再起動する。
【0111】第60図は、故障が上述の故障診断システ
ムで検知された後において、マニュアルモードでの復帰
を制御する手順を示し、第61図は自動モードでの復帰
の制御手順を示す。アイコン301(マニュアル復帰モ
ード)が選択されると、CRT58上に第59図のよう
な画面が現われる。ステップS270では、故障が検出
されたブロック番号ステップ番号Bxyを復帰プログラ
ムに入力する。CRT画面の領域300には入力された
ラダープログラムBxyが表示される。ステップS27
2では、ラダープログラムの自動実行モードを消勢し、
マニュアル実行モードを付勢するためにMS=1,MA
=0とする。ステップS274ではタッチパネル57か
らの入力を待つ。オペレータは領域300に表示された
各スイツチアイコンにタッチしながら、そのスイツチを
オンしたりオフしたりする。領域300に目的のステッ
プが表示されていない場合は、スクロール用のアイコン
303を操作し、または、目的のブロック番号,ステッ
プ番号を入力するためにアイコン304,306を操作
する(ステップS300またはステップS308,31
0)。
【0112】領域300上のいずれかのスイツチアイコ
ンがタッチされると、ステップS282で、タッチされ
た座標位置がどのスイツチに当るかを検出し、そのスイ
ツチの対応メモリアドレスをI/Oマップ(第56図)
から探し、そのアドレス中に指定された値を書き込む。
この場合、スイツチはモメンタリとなっているので、ス
イツチアイコンがオン状態を示している状態でタッチパ
ネル57にタッチすると、そのスイツチはオフ状態
(“0”が書き込まれる)になり、逆にオフ状態でタッ
チされるとオンになる(“1”が書き込まれる)。CR
Tに表示されているスイツチのインターロツクは前述し
たように、種々制御可能であるが、オン状態では例えば
緑に、オフ状態では赤に設定されている。ステップS2
86では、ステップS282で同定されたスイツチをそ
れが操作されたシーケンスと共に復旧シーケンスファイ
ル210に記憶する。
【0113】このようにスイツチが手動で変更された状
態で、『SI』アイコンが押されるとステップS290
でラダープログラムが1つ実行される。復帰プログラム
のいずれかのラダープログラム要素で、その要素は実行
される。即ち、例えば、シリンダY1が戻される条件が
揃っていれば、シリンダY1は初期位置に戻される。ス
テップS292では、そのアクチュエータが戻された
(あるいは起動された)後の確認スイツチ信号を入力
し、ステップS294でそれらのスイツチの表示の更新
を行なう。ステップS282〜ステップS286,ステ
ップS290〜ステップS294の動作を繰り返すこと
により設備は再起動可能状態に戻る。
【0114】操作者が再起動可能状態に戻った事を確認
し『再起動』アイコンを選択すると、ステップS302
で、ステップS286で記憶していたスイツチシーケン
スをファイルとして登録する。即ち、そのシーケンスは
ステップS270で入力された故障の発生したブロック
番号,ステップ番号と関連付けられて登録されて、以降
そのファイルにアクセスすることが可能となる。ステッ
プS304では、手動実行モードを解除し自動実行モー
ドに移るために、MS=0,MA=1とする。そして、
ステップS306でラダープログラムをスタートする。
【0115】第61図は、前述の手動再起動(第60
図)により蓄積された起動シーケンスに基づいて再起動
をかけるための制御手順を示すフローチヤートである。
故障箇所が特定され、操作者が『自動復帰』アイコンを
選択すると、この自動復旧プログラムが起動される。復
旧プログラムは、ステップS320で故障が検出された
ブロック番号ステップ番号BxSYを入力する。CRT
画面の領域300には入力されたラダープログラムBx
SYのラダー図が表示される。ステップS322では、
復帰シーケンスファイル210から該当するシーケンス
をサーチし、ステップS324でそにシーケンスデータ
を読み出す。ステップS326では、手動実行モードに
変えるために、MA=0,MS=1とする。ステップS
328〜ステップS332は、読み出されたシーケンス
に従ってスイツチをセットし、1ステツプずつラダープ
ログラムを実行するものである。ステップS334で
は、操作者が再起動アイコン306を選択するのを待
つ。このアイコンが選択されたなら、ステップS33
6,ステップS338で、元のシーケンス制御ラダープ
ログラムに従って生産が再開される。
【0116】かくして、上述の復帰方法によれば、操作
者の経験の多寡によらずに、正確で安定な復旧が可能と
なる。 〈実施例の効果〉以上、説明した実施例システムによれ
ば、 :ステツプタイムオーバ検出、ステツプハングアップ
検出、ブロツクハングアップ検出により、簡単で的確な
故障検出ができるようになった。 :過去の故障に対する復帰過程を記憶し、同一故障に
対しては、その過程を記憶から呼び戻してそのシーケン
スを再生するという復旧処理手法を採用することによ
り、難解な復旧処理が単純化され、操作の統一化が図れ
る。 〈変形例〉本発明はその主旨を逸脱しない範囲で種々変
形が可能である。例えば、上記実施例は本発明を自動車
の生産ラインに適用したものであったが、当然ながら本
発明はそのような適用分野に限定されるものではない。
少なくともシーケンス制御を行なうものであれば適用可
能である。復旧の他の手法 第61図に示した故障復旧方法は、システムがすべて自
動で復旧シーケンスファイルに従って復旧を行うという
ものである。これから説明する例は、セットされるべき
スイッチをシステムが色を変えて表示して操作者に復旧
シーケンスを提示する。
【0117】第62図は、そのための制御手順であっ
て、第61図のステップS328〜S332までの手順
と置きか得られるべきものである。即ち、シーケンスフ
ァイルに従って、ステップS560で、1つの1つのデ
バイスをマニュアルでセットすべきものとする意味で黄
色で表示する。操作者が対応スイッチをセットすれば、
ステップS564で対応メモリ番地の内容を更新し、ス
テップS566でラダープログラムを実行し、実行の結
果、変化があれば、表示をステップS568で更新す
る。
【0118】
【発明の効果】以上説明したように、本発明の生産設備
の復帰方法及び装置によれば、過去に発生した故障に対
する復帰手順を記憶し、同種故障が発生した場合には、
この復帰手順を自動的に再現することにより、元の状態
に復帰できる。即ち、正確で安定した復帰動作を再現で
きる。
【図面の簡単な説明】
【図1】,
【図2】,
【図3】本発明が適用された自動車の生産ラインを説明
する図。
【図4】,
【図5】,
【図6】図1の生産ラインにおける動作をブロック化
し、動作ブロックフローチヤートと呼ばれるフローチヤ
ート図。
【図7】図4の1つのブロックにおける動作を表わし、
動作ステツプフローチヤートと呼ばれるフローチヤート
図。
【図8】,
【図9】,
【図10】図7のステツプの一部動作を表わすラダープ
ログラム図,
【図11】生産ラインにおける設備をシンボル化した
図。
【図12】,
【図13】,
【図14】,
【図15】,
【図16】実施例システムで使われるラダー要素のパタ
ーン図。
【図17】生産ラインを管理するシステムを開発すると
きの手順を一般的に示す図。
【図18】本実施例システムにおけるプログラム及びデ
ータの互いの関連を説明する図。
【図19】本実施例システムの有する特徴的な機能を示
した図。
【図20】,
【図21】動作状態を表わすデータから動作状態の時間
変化を再生する手法を説明する図。
【図22】実施例システムにおいてブロックフローマッ
プと呼ばれるマップの図。
【図23】実施例システムにおいてステツプフローマッ
プと呼ばれるマップの図。
【図24】実施例システムにおいて実I/Oマップと呼
ばれるマップの図。
【図25】実施例システムのハードウエア構成を説明す
る図。
【図26】実施例システムの自動プログラミング/デー
タ入力部の構成を示す図。
【図27】デバイス名称と動作名称のライブラリ構造を
説明する図。
【図28】データ入力プログラムの動作手順を説明する
図。
【図29】,
【図30】ラダープログラムコンパイラの手順を示すフ
ローチヤート図。
【図31】本実施例システムの概略を説明する図。
【図32】タッチパネルと表示との関係を説明する図。
【図33】CRTにおける表示画面を制御するデータ構
造を説明する図。
【図34】CRTにおける表示例を示す図。
【図35】表示画面をセル分割した図。
【図36】デバイス名称の各フィールドが各々意味付け
られていることを説明する図。
【図37】CRTにおける表示を制御するためにユーザ
が入力するデータの構造を説明する図。
【図38】連続搬送動作のためのラダーパターンを説明
する図。
【図39】故障診断サブシステム106とシュミレーシ
ョンサブシステム105との関係を示す図。
【図40】,
【図41】実施例システムにおけるソフトウエア関係の
全体的に示す図。
【図42】,
【図43】,
【図44】,
【図45】,
【図46】,
【図47】,
【図48】ブロックハングアップ等の故障の検出原理を
説明する図。
【図49】マップ制御プログラムの制御手順を示すフロ
ーチヤート。
【図50】動作監視プログラムの制御手順を示すフロー
チヤート。
【図51】,
【図52】,
【図53】故障診断解析プログラムの制御手順を示すフ
ローチヤート。
【図54】,
【図55】復旧プログラムが適用される設備の一例を示
す図。
【図56】復旧プログラムが適用される設備のI/Oマ
ップを示す図。
【図57】復旧プログラムが適用される図63設備の動
作ステツプフローチヤートマップ図。
【図58】復旧対象の設備のシーケンス動作を示すラダ
ープログラム図。
【図59】復旧プログラムが実行されるときのユーザイ
ンターフェースのための表示画面例を示す図。
【図60】復旧プログラムの手動復帰モードにおける制
御手順を示すフローチヤート。
【図61】復旧プログラムの自動復帰モードにおける制
御手順を示すフローチヤート。
【図62】復旧の他の手法を説明するフローチャート。
【手続補正書】
【提出日】平成5年7月20日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】図面の簡単な説明
【補正方法】変更
【補正内容】
【図面の簡単な説明】
【図1】本発明が適用された自動車の生産ラインを説明
する図。
【図2】本発明が適用された自動車の生産ラインを説明
する図。
【図3】本発明が適用された自動車の生産ラインを説明
する図。
【図4】図1の生産ラインにおける動作をブロック化
し、動作ブロックフローチヤートと呼ばれるフローチヤ
ート図。
【図5】図1の生産ラインにおける動作をブロック化
し、動作ブロックフローチヤートと呼ばれるフローチヤ
ート図。
【図6】図1の生産ラインにおける動作をブロック化
し、動作ブロックフローチヤートと呼ばれるフローチヤ
ート図。
【図7】図4の1つのブロックにおける動作を表わし、
動作ステツプフローチヤートと呼ばれるフローチヤート
図。
【図8】図7のステツプの一部動作を表わすラダープロ
グラム図。
【図9】図7のステツプの一部動作を表わすラダープロ
グラム図。
【図10】図7のステツプの一部動作を表わすラダープ
ログラム図。
【図11】生産ラインにおける設備をシンボル化した
図。
【図12】実施例システムで使われるラダー要素のパタ
ーン図。
【図13】実施例システムで使われるラダー要素のパタ
ーン図。
【図14】実施例システムで使われるラダー要素のパタ
ーン図。
【図15】実施例システムで使われるラダー要素のパタ
ーン図。
【図16】実施例システムで使われるラダー要素のパタ
ーン図。
【図17】生産ラインを管理するシステムを開発すると
きの手順を一般的に示す図。
【図18】本実施例システムにおけるプログラム及びデ
ータの互いの関連を説明する図。
【図19】本実施例システムの有する特徴的な機能を示
した図。
【図20】動作状態を表わすデータから動作状態の時間
変化を再生する手法を説明する図。
【図21】動作状態を表わすデータから動作状態の時間
変化を再生する手法を説明する図。
【図22】実施例システムにおいてブロックフローマッ
プと呼ばれるマップの図。
【図23】実施例システムにおいてステツプフローマッ
プと呼ばれるマップの図。
【図24】実施例システムにおいて実I/Oマップと呼
ばれるマップの図。
【図25】実施例システムのハードウエア構成を説明す
る図。
【図26】実施例システムの自動プログラミング/デー
タ入力部の構成を示す図。
【図27】デバイス名称と動作名称のライブラリ構造を
説明する図。
【図28】データ入力プログラムの動作手順を説明する
図。
【図29】ラダープログラムコンパイラの手順を示すフ
ローチヤート図。
【図30】ラダープログラムコンパイラの手順を示すフ
ローチヤート図。
【図31】本実施例システムの概略を説明する図。
【図32】タッチパネルと表示との関係を説明する図。
【図33】CRTにおける表示画面を制御するデータ構
造を説明する図。
【図34】CRTにおける表示例を示す図。
【図35】表示画面をセル分割した図。
【図36】デバイス名称の各フィールドが各々意味付け
られていることを説明する図。
【図37】CRTにおける表示を制御するためにユーザ
が入力するデータの構造を説明する図。
【図38】連続搬送動作のためのラダーパターンを説明
する図。
【図39】故障診断サブシステム106とシュミレーシ
ョンサブシステム105との関係を示す図。
【図40】実施例システムにおけるソフトウエア関係の
全体的に示す図。
【図41】実施例システムにおけるソフトウエア関係の
全体的に示す図。
【図42】ブロックハングアップ等の故障の検出原理を
説明する図。
【図43】ブロックハングアップ等の故障の検出原理を
説明する図。
【図44】ブロックハングアップ等の故障の検出原理を
説明する図。
【図45】ブロックハングアップ等の故障の検出原理を
説明する図。
【図46】ブロックハングアップ等の故障の検出原理を
説明する図。
【図47】ブロックハングアップ等の故障の検出原理を
説明する図。
【図48】ブロックハングアップ等の故障の検出原理を
説明する図。
【図49】マップ制御プログラムの制御手順を示すフロ
ーチヤート。
【図50】動作監視プログラムの制御手順を示すフロー
チヤート。
【図51】故障診断解析プログラムの制御手順を示すフ
ローチヤート。
【図52】故障診断解析プログラムの制御手順を示すフ
ローチヤート。
【図53】故障診断解析プログラムの制御手順を示すフ
ローチヤート。
【図54】復旧プログラムが適用される設備の一例を示
す図。
【図55】復旧プログラムが適用される設備の一例を示
す図。
【図56】復旧プログラムが適用される設備のI/Oマ
ップを示す図。
【図57】復旧プログラムが適用される図63設備の動
作ステツプフローチヤートマップ図。
【図58】復旧対象の設備のシーケンス動作を示すラダ
ープログラム図。
【図59】復旧プログラムが実行されるときのユーザイ
ンターフェースのための表示画面例を示す図。
【図60】復旧プログラムの手動復帰モードにおける制
御手順を示すフローチヤート。
【図61】復旧プログラムの自動復帰モードにおける制
御手順を示すフローチヤート。
【図62】復旧の他の手法を説明するフローチャート。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 生産設備において過去に発生した故障に
    ついての復帰手順をその故障の種類に応じて前もって記
    憶する記憶手段と、 発生した故障に対応した復帰手順を前記記憶手段から読
    み出す手段と、 その読み出した復帰手順に従って生産設備を、前記故障
    の発生前の状態に復帰させる復帰手段とを具備した生産
    設備の復帰装置。
JP34936392A 1992-12-28 1992-12-28 生産設備の復帰装置 Withdrawn JPH06190692A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP34936392A JPH06190692A (ja) 1992-12-28 1992-12-28 生産設備の復帰装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP34936392A JPH06190692A (ja) 1992-12-28 1992-12-28 生産設備の復帰装置

Publications (1)

Publication Number Publication Date
JPH06190692A true JPH06190692A (ja) 1994-07-12

Family

ID=18403260

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34936392A Withdrawn JPH06190692A (ja) 1992-12-28 1992-12-28 生産設備の復帰装置

Country Status (1)

Country Link
JP (1) JPH06190692A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007213190A (ja) * 2006-02-08 2007-08-23 Advanced Telecommunication Research Institute International コミュニケーションロボット改良システム
WO2010092981A1 (ja) * 2009-02-12 2010-08-19 三菱電機株式会社 産業用ロボットシステム

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007213190A (ja) * 2006-02-08 2007-08-23 Advanced Telecommunication Research Institute International コミュニケーションロボット改良システム
WO2010092981A1 (ja) * 2009-02-12 2010-08-19 三菱電機株式会社 産業用ロボットシステム
CN102317044A (zh) * 2009-02-12 2012-01-11 三菱电机株式会社 产业用机器人系统
JPWO2010092981A1 (ja) * 2009-02-12 2012-08-16 三菱電機株式会社 産業用ロボットシステム
DE112010000775T5 (de) 2009-02-12 2013-03-28 Kyoto University Industrierobotersystem
JP5436460B2 (ja) * 2009-02-12 2014-03-05 三菱電機株式会社 産業用ロボットシステム
DE112010000775B4 (de) * 2009-02-12 2016-03-17 Kyoto University Industrierobotersystem
US9393691B2 (en) 2009-02-12 2016-07-19 Mitsubishi Electric Corporation Industrial robot system including action planning circuitry for temporary halts

Similar Documents

Publication Publication Date Title
JP3142595B2 (ja) 生産設備の制御システム設計支援及び故障診断方法
US7546232B2 (en) Mechanical-electrical template based method and apparatus
US20030182083A1 (en) Diagnostics method and apparatus for use with enterprise controls
US6157864A (en) System, method and article of manufacture for displaying an animated, realtime updated control sequence chart
EP3579100A1 (en) Apparatus and method for skill-based robot programming
CN105291118B (zh) 具备所比较的设定数据的差异反映功能的机器人控制装置
JP6737298B2 (ja) コントローラ、制御方法、および制御プログラム
CN113039499A (zh) 通过自主机器支持任务的对象标记
Long et al. Distributed multi-agent diagnosis and recovery from sensor failures
JP2000081906A (ja) 仮想工場シミュレーション装置および仮想工場シミュレーション方法
JPH0581009A (ja) 生産設備の故障診断方法
JPH06190692A (ja) 生産設備の復帰装置
JP2918709B2 (ja) シーケンスプログラムの自動生成方法
JP2000315105A (ja) Nc工作機械の管理システムおよび管理プログラム
JP3195000B2 (ja) 生産設備の復帰方法およびその装置
JP3305745B2 (ja) 設備の動作フロー表示装置
JP3326734B2 (ja) プログラム作成装置
JPH0573110A (ja) シユミレーシヨンプログラムの生成方法
JP2003133200A (ja) シミュレーション装置及びシミュレーション方法
JPH0573109A (ja) シーケンスプログラムの生成方法およびその装置
JPH04303208A (ja) 設備動作のシュミレーション方法
KR101085114B1 (ko) 피엘씨 소프트웨어 개발환경 제공 시스템
JP2019101757A (ja) 生産システム検証方法、生産システム検証装置、および生産システム
JPH04303206A (ja) シーケンスプログラムの自動生成方法
Rossmann et al. Virtual reality in the loop–providing an interface for an intelligent rule learning and planning system

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20000307