JP3340592B2 - 回路図作成装置および回路図翻訳装置 - Google Patents
回路図作成装置および回路図翻訳装置Info
- Publication number
- JP3340592B2 JP3340592B2 JP16062895A JP16062895A JP3340592B2 JP 3340592 B2 JP3340592 B2 JP 3340592B2 JP 16062895 A JP16062895 A JP 16062895A JP 16062895 A JP16062895 A JP 16062895A JP 3340592 B2 JP3340592 B2 JP 3340592B2
- Authority
- JP
- Japan
- Prior art keywords
- output
- input
- name
- symbol
- condition
- 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.)
- Expired - Fee Related
Links
Classifications
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Programmable Controllers (AREA)
Description
ローラ(以下、PCと略称する)上で動作するプログラ
ムを作成するための回路図作成装置、および、この回路
図をPC用の言語に変換する装置に関する。
化あるいはCIM(Cmoputer Integrated Manufacturin
g )化が行われた工場の生産ラインにおいては、例え
ば、ベルトコンベアの出口を通過した製品が所定数量に
達したことを示す物量的情報、あるいは、裁断機が稼働
中であるときに危険領域内に移動物を検出したことを示
す論理的情報等の制御すべき様々な情報がある。そし
て、これら検出された様々な情報に応じて自動化生産ラ
インにおける所定の出力制御(シーケンス制御)を行う
装置としてプログラマブルコントローラ(以下、PCと
称する)が広く用いられている。
コンピュータプログラミングとは全く異なる記述形式を
伴う。一般には、たとえば、図32に示すPC化以前か
ら現場で用いられていたa接点(常時開スイッチ)A,
B,D,b接点(常時閉スイッチ)Eや、コイルC,F
等のシンボルマークによるリレー回路の展開接続図(ラ
ダー図)が用いられる。或いはまた、例えば図33に示
す条件表が用いられる場合もある。
あって、同じプログラム内容を表したものである。すな
わち、両図において図32のリレー回路a−1と図33
の条件表の縦列b−1とが互いに対応しており、これら
は入力A且つ入力Bを条件とする出力Cを表している。
また、同じくリレー回路a−2と条件表縦列b−2とが
互いに対応しており、これらは入力D且つ入力Eを条件
とする出力Fを表している。
1または条件表の縦列b−1の内容に対応するプログラ
ムの動作を真偽値表で示したものであり、また、図35
は、リレー回路a−2または条件表の縦列b−2の内容
に対応するプログラムの動作を真偽値表で示したもので
ある。
置(プログラムローダ)によって所定形式のプログラム
に変換されてPCに格納される。このプログラムは、一
般にPC内部でそのまま実行できる機械語ではなく、P
Cが解析しやすい中間言語で記述されている。
「(F op1 op2・・・ opn)」の形式を持
つ関数型(作用型)言語の構造になっている。上記基本
構造において「(」は命令の始まり、「F」は命令の名
称、「)」は命令の終わりを示す。また、「op1」、
「op2」、・・・「opn」等は、命令のオペランド
であり、これらオペランドが更に命令となって全体とし
て階層構造を取り得るようになっている。この関数型言
語はPC上で直接動作する機械語と1対1に対応してお
り、機械語に容易に変換することができる。
順等の現場の態様は流動的なものである。このため現場
のシーケンス制御の手順(プログラム)は、元来、初め
から仕様が決められるものではなく、PCの試運転中や
実際の運転中に、現場の実情に合わせて変更や修正が絶
えず繰り返されることによって定まって行く。したがっ
て、これらの変化に容易に対処できるように、上述のラ
ダー図や条件表は、変化に対応してどのように複雑な制
御内容でも容易に記述できるものであることが望まし
い。
流れで模擬したものであるため、論理を回路に変換する
時には、電気的専門知識がある程度要求される。例え
ば、図36の論理回路に対して、その論理の流れを電流
の流れに変換すると、図37のラダー図が作成できる
が、この変換には高度の熟練を要し、初心者では容易に
は変換できないという問題点があった。
回路とが等価であることを認識するためにも、同様にか
なりの熟練を要し、これもまた、初心者では容易には認
識できないという問題があった。
な問題がある。すなわち、例えば、図38に示すような
単純な論理回路の場合は、図39に示す条件表に変換で
きるが、前述した図36の論理回路のように、論理演算
の結果を次々に他の論理演算に用いるような複雑な論理
回路(論理が深い)の場合は、条件表に変換することは
できない。また、図40のような遅延動作を有する回路
41を含む論理回路を条件表で表すことはできない。こ
のように、条件表は、必要な論理回路を全て記述するこ
とができるわけではなく、条件表の活用には限界がある
という問題があった。
要とせずに作成でき、遅延動作(タイマ)を含む如何な
る論理回路をも記述可能であり、可読性に優れ、表形式
で記述することのできるプログラミング方法(表形式回
路記述)、およびこの表形式回路記述をPC用のプログ
ラム(関数型言語)に変換する言語変換装置(関数型言
語変換装置)に関する発明(特開平6−149311号) を以
前出願した。
動作を行わせる回路における自動運転等の起動条件や運
転条件の監視は、それら条件に対応して個々に割り付け
られるPCの外部入力接点情報や、PCの内部メモリの
内容を、監視情報として監視装置に送信することにより
行っている。
り、この監視装置で動作する監視用プログラムを共通化
して使用するためには、アクセス単位であるメモリ内の
1ワードの中に上記各条件となる外部入力接点情報や内
部メモリの内容をまとめておくと都合が良い。
割り付けられている自動運転等の起動条件や運転条件
を、ワードメモリに並べ換える場合、ラダー図やFB図
では、それぞれ図41、図42のような表現となり、回
路が非常に長いものとなってしまうため、回路図作成の
労力が大きくなる。
43に示すように、表全体が大きくかつ長くなるため、
可読性が悪くなる。尚、上記各図において、I.001
A,I.0005,I.003B,I.0003は外部
入力接点情報であり、M.0000,M0001,M.
0002,M.000Fは、1ワードでのアクセスが可
能な内部メモリであるワードメモリ(WM000)の各
0,1,2,Fビット目を表している。
作成したワードメモリを使用して起動条件や運転条件等
を作成する場合には、図44に示すような回路を作成す
る必要がある。
103)への並び換えに使用したビット(図44の例で
は、WS0103.0,WS0103.1,WS010
3.2)を、さらにこの条件(図44の例では、M.0
002の作成)でも使用するため、この条件を決定して
いる上記ワードメモリ(WS0103)の各ビットの継
ながり(論理積回路)が分かりにくくなり可読性が悪
い。
条件監視用のワードメモリにおいては、回路の実際の動
作状態を視覚的に認識しやすくするための手段が無く、
故障等が発生した場合、その原因を直ちにつきとめるこ
とが難しかった。
は、機器の運転条件等を全てそろえるプログラムを簡単
に作成するために、1つの出力条件を構成する入力が縦
に一列に並ぶように構成されており、出力条件が成立し
ていないときには、その下に並んでいる入力条件をモニ
タすることにより、出力条件を成立させ得ない入力条件
を簡単に見つけることができるようになっている。しか
し、実際の制御では、何かの要因(一次要因:第一次故
障要因と呼ぶ)で入力条件が整わず、出力条件が成立し
ない場合、その出力の二次要因によって、さらに入力条
件が成立しなくなることがとが多々ある。その時、特開
平6−149311号公報に記載されているモニタでは一次要
因と二次要因がともに成立していないため、出力条件が
成立しない真の要因を見つけることができない。
あり、自動運転等の起動条件や運転条件等を監視する際
に監視すべき外部入力接点情報や内部メモリ等の監視情
報を1ワードのメモリの中に収集するための回路記述
を、小規模な回路で可読性良く表形式で記述できるよう
にすることを第1の目的とする。
用いたワードメモリを用いて起動条件や運転条件を作成
するための回路を可読性に優れた表形式で記述できるよ
うにすることを第2の目的とする。
するために設けられる条件監視用のワードメモリに、回
路の実際の動作状態を視覚的に認識しやすくするための
手段を設け、動作状態の把握を迅速に行える表形式の回
路記述を提供することを第3の目的とする。
路記述をPC用の言語に変換する方式を提供することを
第4の目的とする。
発明の手段を説明する。本発明の回路図作成装置は、プ
ログラマブルコントローラ上で動作するプログラムを記
述した回路図を作成するものである。
マットの回路図作成領域に各種情報を記述する。即ち、
回路図作成領域は、出力を記述するための複数の出力記
述行10と、その出力に対応する入力を記述するための
複数の入力記述行20とからなる。そして、各出力記述
行10−1、10−2、・・・は、出力信号の名称を記
述する出力名称部11と、出力条件を記述する出力条件
部12とを有する。一方、各入力記述行20−1、20
−2、・・・は、入力信号の名称を記述する入力名称部
21と、入力条件を記述する入力条件部22とを有す
る。さらに、複数の入力記述行20−1、20−2、・
・・に対して論理回路を記述する論理部23を有する。
3において、入力名称部11に記述された名称の信号の
入力を意味する入力記号と、それら入力信号に対する論
理演算を意味する論理演算記号を記述する。
おいて、入力名称部21に名称が記述されている入力信
号または論理部23の論理演算結果が、当該出力記述行
(ここでは、「A」が記述されている行10−3)に対
応する出力メモリ31に書き込まれていることを示すメ
モリ割付記号(ここでは、「A」で表している)を記述
する。出力メモリ31は、例えば、ワードメモリであ
る。
において、入力名称部21に名称が記述されている入力
信号または論理部23の論理演算結果を出力メモリ31
に書き込むときの出力メモリ31内のビット位置を指定
するビット位置指定記号を記述する。なお、出力メモリ
31は、上記メモリ割付記号が記述されている出力記述
行に対応して設けられている。
手段によって記述される各記号を上記形式の回路図記述
領域と対応づけて格納する。上記記述手段は、上記機能
に加え、出力条件部12において、当該出力記述行(こ
こでは、「F」が記入されている行10−1)に対応す
る監視用メモリ32の内容に基づいて、上記ビット位置
指定記号の中の該当するものを強調表示させることを指
定する強調表示記号(ここでは「F」で表している)を
記述する。
成装置が作成する回路図をプログラマブルコントローラ
用の言語に翻訳するものであり、以下の手段を有する。
入出力条件抽出・記憶手段は、出力条件部12から出力
条件を抽出し、入力条件部22から入力条件を抽出して
それぞれ記憶する。
11から出力名称を抽出し、これを出力行情報として記
憶する。入力論理抽出・記憶手段は、論理部23に記述
されている論理回路を所定の言語の対応するステートメ
ントに変換して記憶する。
件抽出・記憶手段を参照して上記メモリ割付記号が記述
されている出力記述行を抽出し、この抽出情報から出力
メモリ31のベースアドレスを作成する。また、上記入
出力条件抽出・記憶手段、上記出力行情報抽出・記憶手
段および上記入力論理抽出・記憶手段に記憶されている
抽出情報を読み出し、これらの抽出情報および上記出力
メモリ31のベースアドレスに基づいて、上記メモリビ
ット位置指定記号が指定する出力メモリ31のビット
に、該メモリビット位置指定記号が記述されている入力
記述行に対応する入力信号または上記論理部の論理演算
結果を書き込むビット収集命令を作成するそして、これ
を上記記憶手段の所定の領域に格納する。
力条件抽出・記憶手段および上記出力行情報抽出・記憶
手段を参照して上記強調表示記号が記述されている出力
記述行を抽出し、この抽出した出力記述行に対応する監
視用メモリ32の内容に基づいて上記ビット位置指定記
号の中の該当記号を強調表示させるための監視ワード生
成命令を作成する。そして、これを上記記憶手段の所定
領域に格納する。
力記述行(ここでは、20−2)の入力条件部22にお
いて、出力メモリ31のビット位置を指定するメモリビ
ット位置指定記号を記述(ここでは斜線部に記述)でき
る。このメモリビット位置指定記号によって指定された
出力メモリ31内のビットには、たとえば、論理部23
の演算結果が行20−2に達している論理演算結果が書
き込まれる。
−3)の出力条件部12において、自己行に対応する出
力メモリ31にデータが格納されていることを示すメモ
リ割付記号を記述できる。
号と上記メモリ割付記号とを併用することにより、出力
メモリ31にデータが格納されているか否か、およびデ
ータが格納されている場合にはどのビットに格納されて
いるかを認識できる。
れば、起動条件や運動条件の監視のために監視する必要
がある外部入力接点情報や内部メモリ等の監視情報を、
任意の1ワード内に収集でき、上記情報のための回路記
述を小規模な回路で可読性良く記述できる共に、上記ワ
ードメモリの任意のビットを用いる起動条件や運転条件
等を監視する回路も、可読性良く記述できる。
−1)の出力条件部12において、この出力記述行(1
0−1)に対応する監視用メモリ32の内容に基づい
て、ビット位置指定記号のうちの該当するものを強調表
示させる強調表示記号を記述することができる。たとえ
ば、監視用メモリ32の内容が、入力記述行20−2の
入力条件部22に記述されているビット位置指定記号と
一致していれば、そのビット位置指定記号に従って出力
メモリへの書込みが行われれいる信号に対応するビット
位置指定記号を強調表示信号させる。
ローラ上で実行されている処理に係わる起動条件や運転
条件等を強調表示させることができるので、障害等によ
ってそれら条件に欠落が発生した場合には容易に認識で
きる。
成装置によって作成される回路図を解読して入出力条
件、論理演算等を抽出し、ビット位置指定記号、メモリ
割付記号、強調表示記号の内容に従って、プログラマブ
ルコントローラ用のビット収集命令および監視ワード生
成命令を生成する。
件等を監視する場合に、このような条件となる外部入力
接点情報や内部メモリ等の監視情報(これらの名称は、
入力名称部21に記述される)を1ワードのメモリの中
に収集するための回路記述およびこのようにして1ワー
ドメモリに収集される外部入力接点情報や内部メモリ等
を用いて起動条件や運動条件等を記述するための回路記
述を、プログラマブルコントローラ上で動作可能な言語
に変換する。また、上記形式の回路図の出力記述行の出
力条件部12に記述された強調表示記号が、その出力記
述行に対応する監視用メモリの内容に従って、上記出力
メモリ(ワードメモリ)を作成するために使用されるビ
ット位置記号を強調表示するためのプログラマブルコン
トローラ上で動作可能なプログラム命令に変換される。
は、たとえば、プログラマブルコントローラが直接理解
できる機械語に1:1に対応する中間言語(関数型言
語)で記述される。
を説明する。図2は、本発明の一実施例であるPC上で
動作するプログラムを作成するための表形式回路記述の
方法を説明するための図である。
等価になっている。すなわち、図2に示す表形式回路記
述は、図3に示す論理回路を定義したものである。そし
て、この表形式回路記述は、出力を記述するための複数
の出力記述行100と上記出力に対応する入力を記述す
るための複数の入力記述行200からなる。
述する出力名称部a、タイマ設定を記述するタイマ設定
値部c、出力条件を記述する出力条件部e、およびコメ
ントを記述するコメント部gからなる。
述する入力名称部b、論理回路を記述する論理部d、入
力条件を記述する入力条件部f、およびコメントを記述
するコメント部hからなる。
部e、及び入力条件部fに記述する記号の意味を図4と
ともに説明する。 <論理部dの記号> 矢印・・・入力信号の入力を意味する入力記号。
号の反転入力を意味する入力反転記号。 一本の縦線・・・入力された信号の論理和を意味する論
理和記号。
の論理積を意味する論理積記号。 <出力条件部eの記号> W・・・論理の演算結果を出力信号に代入することを意
味するセット記号。
信号をONにし、論理の演算結果が偽のときに無処理を
意味するセット記号。 R・・・論理の演算結果が真のときに出力信号をOFF
にし、論理の演算結果が偽のときに無処理を意味するリ
セット記号。
ードメモリ内のビット位置に、その入力条件部fの当該
位置(当該入力記述行)に入力される信号を代入するこ
とを意味するワードメモリ割付記号。
っているビットに対して書き込みを行っている入力条件
部fのワードメモリビット位置記号(この記号について
は後述する)を強調表示させることを意味する強調表示
記号。 <入力条件部fの記号> ○・・・該当する入力記述行200の入力名称部bの信
号、または、論理部dの結果を使用することを意味する
正論理記号。
名称部bの信号、または、論理部dの結果を反転して使
用することを意味する負論理記号。 「0」〜「9」および「A」〜「F」・・・該当する入
力記述行200の入力信号を代入する出力ワードメモリ
のビット位置を指定するワードメモリビット位置指定記
号。
述を関数型言語に変換する回路図翻訳装置の全体構成を
示すブロック図である。なお、この関数型言語はPC上
で直接動作する機械語と1対1に対応しており、コンパ
イルによって容易にこの機械語に変換される。
表形式回路記述を記憶する。入出力条件抽出装置411
は、図2に示す出力条件部eを列単位に検索して、下記
の処理〜を行う。 上記「W」、「R」または「S」記号が存在する出
力記述行の行番号、およびそれらの記号が存在する出力
記述行に書き込まれている記号を抽出する。
置412に格納する。 出力条件部e内の「A」または「F」記号(A出力
またはF出力)を「W」記号(W命令)が存在する列毎
に抽出し、「A」または「F」記号が存在する出力記述
行についての情報を、上記各列毎に入出力条件格納装置
412に格納する。 入力条件部fを列単位に検索して前記「○」または
「×」記号を抽出し、これらの記号を上記入出力条件格
納装置412に格納する。 入力条件部fを列単位に検索してワードメモリビッ
ト位置記号によって設定されている出力ワードメモリの
ビット位置を抽出し、この抽出結果を入出力条件格納装
置412に格納する。
よびタイマ設定値部cを行単位に検索し、出力名称およ
びタイマ設定値を抽出する。そして、これらを出力行情
報格納装置422に格納する。
位で論理部dの結果を検索して下記の処理およびを
行う。 検索した入力記述行に論理部記号の最終端(結果)
が存在する場合、その最終端から論理を追跡し、この論
理を関数型言語に変換する。そして、変換された関数型
言語を入力論理格納装置432に格納する。 検索した入力記述行に論理部記号が存在しない場
合、入力名称部bの対応する行の名称を抽出し、この名
称を入力論理格納装置432に格納する。
条件格納装置412に格納されている出力条件部e並び
に入力条件部fの各列の情報を1列目から順番に検索し
て、「W」、「S」または「R」の各記号を、それぞれ
関数型言語の「W」、「S」または「R」の各命令とし
て抽出し、これらを関数型言語格納装置501の所定の
領域に格納する。
格納装置422に格納されている情報を基に、タイマ設
定値部cにタイマ値が設定されている全ての出力記述行
について、その出力名称部aから出力名称を抽出する。
そして、この出力名称を基にしてタイマ現在値名称を作
成する。さらに、これらを関数型言語格納装置501内
の所定の領域に格納する。
置)441は、入出力条件格納装置412に格納されて
いる情報を基に、下記の処理〜を行う。 出力条件部eにおいて「A」記号が存在する出力記
述行があるか否か調べ、存在すれば、その出力記述行の
出力記述行に記述されている名称に対応するワードアド
レスからビットベースアドレスを作成し、これをビット
ベースアドレス格納装置442に格納する。 入力条件部fにおいて「A」記号が存在する列(該
当列)を全て検索し、これらの該当列においてワードメ
モリビット位置記号(「0」〜「F」の16進数値)が
存在する入力記述行の行番号を抽出する。そして、この
行番号を有する行の名称(該当名称)を入力論理格納装
置432から抽出する。 上記処理で作成したビットベースアドレスに上記
処理で抽出したワードメモリビット位置記号が示す1
6進数値を付加して得られるビットアドレスに、上記処
理で抽出した該当名称を書き込む命令を作成して、こ
れをビット収集命令格納装置443に格納する。
格納装置412に格納されている情報を基に、下記の処
理〜を行う。 出力条件部eにおいて「W」、「S」または「R」
記号が存在する出力記述行においてそれらの記号が存在
する列(該当列)の入力条件部fに「○」、「×」また
はワードメモリビット位置記号(16進数値)が複数存
在する場合、「&」命令を関数型言語格納装置501の
所定領域へ格納すると共に、この格納を記憶しておく。
なお、上記該当列に「○」、「×」またはワードメモリ
ビット位置記号(16進数値)が1つのみの場合には、
何の処理も行わない。 入力条件部fにおける上記該当列に「○」または
「×」が存在する入力記述行の行番号を抽出し、これら
の行番号を有する入力記述行の入力名称部bに記述され
ている名称(該当名称)を、入力論理格納装置432か
ら読み出して関数型言語格納装置501の所定領域に格
納する。
は、上記該当名称がアトムとリストの場合で処理が異な
り、以下のようにする。 1)アトムのとき “!”をアトムの先頭に付加する。
の関数命令が「NOT」のときは、その「NOT」関数
を取り去る)。
号名称であるとき(後述する図10の1行目,2行目,
及び6行目参照)、これをアトムと呼び、一方、オペラ
ンドが関数(後述する図10の3行目参照)であるとき
は、これをリストと呼ぶ。 入力条件部fにおいて、上記該当行にワードメモリ
ビット位置記号(16進数値)が存在する入力記述行
(該当行)を抽出し、この行番号を基に該当するビット
収集命令(A命令)をビット収集命令格納装置443か
ら読み出し関数型言語格納装置501の所定領域に格納
する。
報格納装置422に格納されている情報を基に、タイマ
設定値部cにタイマ値が設定されている出力記述行を探
し、この出力記述行のタイマ設定値部cに記述されてい
るタイマ設定値を、関数型言語装置501の所定領域に
格納する。このとき、&命令作成装置433により既に
&命令が関数型言語格納装置501に格納されている場
合には、その&命令に対応する「)」も格納する。
作成装置424によって関数型言語格納装置501に設
定されたタイマ設定値が記述されている出力記述行の出
力名称を出力行情報格納装置422から読み出し、関数
型言語格納装置501の所定領域に格納する。
装置)451は、入出力条件格納装置412に格納され
ている情報を基に、出力条件部eにおいて「F」記号が
記述されている出力記述行があるか否かを調べ、そのよ
うな行があれば、この行の出力名称をオペランドとする
監視ワード生成命令を作成して、この命令を関数型言語
格納装置501の所定の領域に格納する。
の動作を具体的な表形式回路記述の例を取り上げながら
説明する。図6は、本実施例の表形式回路記述の一具体
例を示す図である。
マ設定値部cおよび出力条件部eからなる出力記述行4
1が設けられ、下方に入力名称部b、論理部dおよび入
力条件部fから成る入力記述行42が設けられている。
なお、出力記述行41および入力記述行42は、いずれ
もその行数に制約はなく、論理の深さに応じて増加す
る。
000」、「I.0001」、「I.0002」、
「I.0003」、「I.0004」および「I.00
05」が記述されている。
0」〜「I.0005」に対して施される論理演算が記
述されている。上記入力信号「I.0002」及び
「I.0003」の入力がそれぞれ矢印47−0及び黒
丸の付いた矢印47−1で記述され、それらの矢印47
−0、47−1によって表される信号が加わるアンド回
路が2本の縦線47−2で記述されている。そして、こ
のアンド回路47−2の演算結果が矢印47−3で記述
され、この演算結果47−3が加わるオア回路が縦1本
の線47−4で記述されている。
矢印47−5で記述され、この入力47−5が上記オア
回路47−4に入力する旨が記述されている。そして、
このオア回路47−4の演算結果が矢印47−6で記述
されており、この矢印47−6が入力記述行の第3行目
の入力条件部fに入力されている。すなわち、上記入力
信号「I.0002」〜「I.0004」に対して論理
部dに記述されている上記演算が実施されたとき、その
演算結果が入力記述行の第3行目に対応するように記述
されている。
共通に列48−1,48−2,・・が設けられている。
各列は、PCの1つの動作に対応する。入力条件部fの
1列目48−1には、その1行目において○印が記述さ
れ、2行目において×印が記述されている。この○印
は、対応する行の入力信号、または論理部dの演算結果
を使用することを表す。ここでは、入力条件部fの1行
目にその演算結果を入力するような論理回路が論理部d
に記述されていないので、対応する行の入力信号、すな
わち入力信号「I.0000」を使用することを意味す
る。一方、×印は、対応する行の入力信号または論理部
dの演算結果を反転して使用することを表している。こ
こでは、入力信号「I.0001」の反転信号を使用す
ることを意味する。
述される論理回路の演算結果としてオア回路47−4の
出力が対応づけられるとともに、同行の列48−1には
ワードメモリビット位置記号(16進数値)として
「0」が記述されている。また、列48−1の6行目に
は、ワードメモリビット位置記号(16進数値)として
「1」が記述されている。
条件部eにおいて「A」記号が記述されている出力記述
行の出力名称部aに記述されている名称「WM000
0」を有するワードメモリの0ビット目、1ビット目に
それぞれ上記オア回路47−4の出力及び入力信号
「I.0005」が書き込まれることを表している。
SSTIM」、「WM0000」、「SI0000」お
よび「M.RD−F」が記述されている。そして、出力
信号「T.SSTIM」に対応する出力記述行のタイマ
設定値部cには、タイマ設定値が格納されているアドレ
ス「DIABCD」が記述されており、さらにその出力
条件部eの1列目にはライト記号「W」が記述されてい
る。この意味は、出力信号「T.SSTIM」に関する
処理に際して、アドレス「DIABCD」に設定されて
いるタイマ値を読み出し、そのタイマ値が経過した時点
で実際の処理(ここでは、ライト処理)を実行するもの
である。
し、入力記述行42で設定される論理演算結果を出力信
号「T.SSTIM」に代入することを指定している。
ここでは、入力条件部fの1列目48−1に入力条件と
して、1つの○印(1行目)、1つの×印(2行目)、
2つのワードメモリビット位置記号「0」(3行目)お
よび「1」(6行目)が記述されているので、入力記述
行42の1列目48−1で設定される論理演算結果は、
入力信号「I.0000」、入力信号「I.0001」
の反転信号、オア回路47−4の演算結果47−6及び
入力信号「I.0005」の4つの信号の論理積という
ことになる。尚、「W」記号と同様に、「S」記号また
は「R」記号が記述されていた場合においても、その記
号が記述されている列に記述されている○印、×印およ
びワードメモリビット位置記号が存在する入力記述行に
対応する信号の論理積が論理演算結果として使用され
る。
00」が記述されている出力記述行のタイマ設定値部c
にはタイマ設定値の記述はなく、出力条件部eの1列目
にワードメモリ割付記号「A」が記述されている。
ている列(ここでは、列48−1)にワードメモリビッ
ト位置記号(16進数値)が記述されている各入力記述
行に入力される信号を、この「A」記号が記述されてい
る出力記述行(2行目)の出力名称部aに記述されてい
る名称が割り当てられている出力ワードメモリにおいて
上記16進数値で示されるビット位置に代入することを
表している。即ち、図6に示す場合には、名称「WM0
000」が割り当てられている出力ワードメモリの第0
ビット「M.0000」にオア回路47−4の論理演算
結果47−6を代入し、同出力ワードメモリの第1ビッ
ト「M.0001」に入力信号「I.0005」が代入
されることになる。
0000」が記述されている出力記述行(3行目)で
は、タイマ設定値部cにはタイマ設定値の記述は無く、
出力条件部eの1列目(48−1)に強調表示記号
「F」が記述されている。
ている出力記述行の出力名称部aに記述されている名称
「SI.0000」が割り当てられている出力ワードメ
モリの内容に従って、この「F」記号が記述されている
列(48−1)内の所定位置を強調表示させるための監
視ワード生成命令を作成することを指定するものであ
る。なお、この強調表示については、後述詳しく説明す
る。
−F」が記述されている出力記述行(4行目)では、タ
イマ設定値部cにはタイマ設定値の記述は無く、出力条
件部eの2列目にライト記号「W」が記述されている。
記述されている入力信号「I.0005」を出力信号
「M.RD−F」に書き込むことを指示するものであ
る。上述のような表形式回路記述がユーザが作成すべき
回路プログラム即ちソースプログラムである。
す関数型言語と等価である。この関数型言語は、ソース
プログラムとオブジェクトプログラムとを結ぶ中間言語
であり、機械語に容易に変換され得るものである。
目及び11行目における命令「W」は、上述した図4の
出力条件記号「W」と同義である。また、1行目の命令
「TON」は、出力を所定時間(秒)後に行うように指
示するタイマ命令である。
ペランドである「I.0000」、3行目の第2オペラ
ンドである「!I.0001」、6行目の第3オペラン
ドである「M.0000」、及び7行目の第4オペラン
ドである「M.0001」との論理積を求める演算命令
である。また、4行目の命令「&」は、同じく4行目の
第1オペランド「I.0002」と第2オペランド「!
I.0003」との論理積を求める演算命令である。
は、4行目の第1オペランドである「(& I.000
2 !I.0003)」と5行目の第2オペランドであ
る「I.0004」との論理和を求める演算命令であ
る。
「I.0001」、「I.0004」の直前に付加され
ている記号「!」は、それらの信号を反転させることを
表している。
て上記図6に示す表形式回路記述の出力条件部eおよび
入力条件部fから抽出され、入出力条件格納装置412
に格納される入出力条件の格納状態図である。
したデータ構成において、その1行目(412−1)
は、上記表形式回路記述の出力条件部eに記述される記
号「W」、「S」または「R」を格納する領域であり、
ここでは、1列目および2列目ともに記号「W」(ライ
ト記号)が格納されている。2行目(412−2)の1
列目および2列目には、各記号「W」が記述されている
出力記述行の行番号「1」および「4」がそれぞれ格納
されている。
−4)は、それぞれ上記表形式回路記述の出力条件部e
においてワードメモリ割付記号「A」、強調表示記号
「F」が記述されている場合に、それらの記号が記述さ
れている出力記述行の行番号を格納する領域である。図
6に示す例では、出力記述行の2行目及び3行目にそれ
ぞれワードメモリ割付記号「A」、強調表示記号「F」
が記述されているので、ここでは、それぞれ行番号
「2」,「3」が格納されている。
されている。すなわち、5〜7行目(412−5〜41
2−7)の1列目、および10行目(412−10)の
1列目および2列目には、図6に示した表形式回路記述
の入力条件部fの同行同列に記述された入力条件記号
「○」、「×」またはワードメモリビット位置記号(1
6進数値「0」、「1」)が格納されている。そして、
上記表形式回路記述の出力条件部eおよび入力条件部f
において入出力条件記号の記述がないマトリクス位置に
対応する箇所には「無」が格納されている。
力記述行から抽出され、出力行情報格納装置422に格
納される出力行情報の格納状態図である。同図の例で
は、図6に示した表形式回路記述の1行目の出力記述行
の出力名称部aおよびタイマ設定値部cに記述された出
力信号名「T.SSTIM」及びタイマ設定値「DIA
BCD」が1行目に格納され、上記表形式回路記述の2
行目の出力記述行の出力名称部aに記述された出力信号
名「WM0000」が2行目に格納されている。さら
に、図6に示した表形式回路記述の3および4行目の出
力記述行の出力名称部aに記述され出力信号名「SI0
000」、「M.RD−F」が、続く3行目,4行目に
格納されている。なお、図6において、タイマ設定値部
cにタイマ値が記述されていない行に対しては、「無」
が格納される。
て上記表形式回路記述から抽出され入力論理格納装置4
32に格納される入力信号および関数型言語に変換され
た論理部dの論理演算回路(入力論理)の格納状態図で
ある。
理演算の記述がなされなかった入力信号名「I.000
0」、「I.0001」および「I.0005」は、そ
の表形式回路記述の入力名称部bと同一の行にそのまま
格納されている。一方、論理部dで論理演算の記述がな
された入力信号名は、その論理演算結果が入力される入
力条件部fの行と同一の行に、上記論理演算と等価な関
数型言語記述がパラメータとして格納されている。すな
わち、入力信号「I.0002」〜「I.0004」に
対して施される論理演算を関数型言語で記述したものが
3行目に格納される。
て、図11〜図22のフローチャートを用いて説明す
る。この処理では、図5に示す回路図変換装置の特には
図示しないCPU(中央演算処理装置)による制御の下
に、この回路図変換装置を構成する各装置によって、ソ
ース格納装置401に格納されている表形式回路記述が
関数型言語に変換される。なお、この変換処理に先立っ
て入出力条件格納装置412、出力行情報格納装置42
2、入力論理格納装置432,ビット収集命令格納装置
443およびビットベースアドレス格納装置442のデ
ータ内容は全てクリアされる。
すゼネラルフローチャートである。このフローチャート
内の各処理S111〜S120は、後述する図12〜図
22で詳述する。
形式回路記述の出力条件部e並びに入力条件部fの1列
目について入出力条件抽出装置411によって入出力条
件の抽出処理を行い、続いて、ステップS112で、出
力行抽出装置421によって出力行情報の抽出処理を行
う。そして、ステップS113で、入力論理抽出装置4
31によって入力論理の抽出処理を行う。
た3つの各ステップS111〜S113で抽出された入
出力条件、出力行情報、及び入力論理に基づいて、関数
型言語への変換処理を行う。
S,R命令作成装置413によって、W,S,R命令を
作成する。次に、ステップS115では、タイマ命令作
成装置423により、タイマ命令の作成処理を行い、続
いて、ステップS116でビット収集命令作成装置(A
命令作成装置)441によりビット収集命令の作成処理
を、ステップS117では、&命令作成装置433によ
り$命令の作成処理を行う。ステップS118では、タ
イマ設定値作成装置424により、タイマ設定値の作成
処理を行い、さらに、ステップS119では、出力命令
作成装置425により、出力命令の作成処理を行う。そ
して、最後に、ステップS120で、監視ワード生成命
令作成装置(F命令作成装置)451により監視ワード
生成命令の作成処理を行う。
条件部fの2列目)が検索され、この列に命令(出力条
件記号)「W」、「S」または「R」があるか否かを判
別する。そして、いずれかの命令(出力条件記号)があ
れば、ステップS114に戻ってステップS114〜S
120を繰り返えす。
について行うことにより、図5のソース格納装置401
に格納されている図6に示す表形式回路記述が、図7に
示す関数型言語に変換されて、図5の関数型言語格納装
置501に格納される。
の各処理を詳細に説明する。図12は、上記ステップS
114における入出力条件抽出処理のフローチャートで
ある。
は、まず、図6に示す表形式回路記述の出力条件部eを
列単位に検索して、a)記号「W」、「R」、「S」と
それらの記号が記述されている行番号を抽出し、b)記
号「A」が記述されている行番号を抽出し、さらにc)
記号「F」が記述されている行番号を抽出する(ステッ
プS131)。そして、これらの抽出結果を入出力条件
格納装置412の所定領域に格納する(ステップS13
2)。
fを列単位に検索し、記号「○」、「×」およびワード
メモリビット位置記号(16進数値)とそれら記号が記
述されている入力記述行の行番号を抽出する(ステップ
S133)。そして、これらの抽出結果を入出力条件格
納装置412に格納する(ステップS134)。
は、上述した図8に示すデータが格納される。図13
は、上記ステップS115における出力行情報抽出処理
のフローチャートである。
式回路記述の出力名称部aおよびタイマ設定値部cを行
単位に検索し、出力名称およびタイマ設定値を抽出する
(ステップS141)。そして、これら抽出した出力名
称およびタイマ設定値を出力行情報格納装置422に格
納する(ステップS142)。
は、上述した図9に示すデータが格納される。図14
は、上記ステップS123における入力論理抽出処理の
フローチャートである。
示す表形式回路記述の論理部dを行単位に検索し(ステ
ップS151)、検索行に論理記号の最終端(論理演算
の結果)が存在するか否か判別する(ステップS15
2)。そして、最終端が存在した場合は、この最終端か
ら論理を追跡し、この論理を関数型言語に変換する(ス
テップS153)。さらに、この関数型言語を入力論理
格納装置432の所定領域に格納する(ステップS15
4)。
索行に論理記号の最終端(論理演算の結果)が存在しな
い場合は、対応する行の入力名称部bに記述されている
入力信号名称を抽出し(ステップS156)、この入力
信号名称を入力論理格納装置432の所定領域に格納す
る(ステップS157)。
上述した図10に示す格納状態が実現される。図15
は、上記ステップS114におけるW,S,R命令作成
処理のフローチャートである。
示す入出力条件格納装置412内のデータの1列目から
「W」、「S」、「R」命令の種別(同図の例では
「W」)を抽出し(ステップS161)、その抽出した
命令「W」を関数型言語格納装置501の所定の領域に
格納する(ステップS162)。
は、図23に示すW命令「(W」格納される。図16
は、上記ステップS115におけるタイマ命令作成処理
のフローチャートである。
入出力条件格納装置412に格納されているデータの1
列目にある出力行番号(図8に示す例では、例えば、そ
の1列目に「1」が格納されている)を抽出する(ステ
ップS171)。次に、図9に示す出力行情報格納装置
422に格納されているデータを読み出し、上記抽出し
た出力行番号の行(この場合は1行目)にタイマ設定値
が存在するか否か判別する(ステップS172)。タイ
マ設定値が記述されている場合には、そのタイマ設定値
(同図の例では「DIABCD」)およびこのタイマ設
定値が記述されている行の出力名称部aに設定されてい
る出力信号名称(同図の例では「T.SSTIM」)を
抽出し(ステップS173)、この出力信号名称「T.
SSTIM」に基づいてタイマ現在値名称「TRSST
IM」を作成する(ステップS174)。この処理にお
いて、本実施例では、出力信号名称とタイマ現在値名称
とが図24に示すような形式で1対1に対応づけられて
おり、この対応関係に基づいてタイマ現在値名称を作成
する。
「TRSSTIM」とタイマ命令「TON」を、関数型
言語格納装置501の所定領域(前回格納した「W」命
令の次のアドレス)に格納する(ステップS175)。
には、図25に示すような関数型言語の記述が格納され
る。尚、上記ステップS172においてタイマ設定値が
存在しない場合は、ステップS173〜S175の処理
は行わず直ちにタイマ命令作成処理を終了する。
ビット収集命令作成処理のフローチャートである。同図
において、ビット収集命令作成装置(A命令作成装置)
441は、まず、入出力条件格納装置412を検索し、
図8に示す格納データから出力条件部eの該当列におい
て「A」記号が存在する出力記述行である出力記述行の
番号(A出力行番号)を抽出する。つづいて、出力行情
報格納装置422からこのA出力行の出力名称部aに記
述されている出力名称を取り出し、この出力名称を基に
出力ワードメモリのビットベースアドレスを生成する。
そして、これをビットベースアドレス格納装置442に
格納する(ステップS176)。
出力行である2行目の出力記述行の出力名称部aに記述
されている出力名称「WM0000」からワードメモリ
のビットベースアドレス「M.0000」を生成し、こ
れをビットベースアドレス格納装置442に格納する。
を検索し、入力条件部fの該当列にワードメモリビット
位置記号(16進数値)が存在する入力記述行が有るか
否か調べ(ステップS177)、有る場合にはその入力
記述行の行番号を抽出し、この行番号に該当する名称を
入力論理格納装置432から抽出する(ステップS17
8)。上記作成した出力ワードメモリのビットベースア
ドレスのビットディスプレイスメントの部分に上記ワー
ドメモリビット位置記号が示す16進数値を加えて出力
ワードメモリのビットアドレスを作成する(ステップS
179)。そして、このビットアドレスに上記抽出した
名称を書き込む命令を作成し、これを図5のビット収集
命令格納装置443に格納する(ステップS180)。
記述の場合、ビット収集命令格納装置443には図26
に示すような2行にわたるビット収集命令が格納され
る。このビット収集命令は、起動条件や運転条件などを
規定するものである。ここで、ワードメモリビット位置
記号が示す16進数値が「0」である場合には、これら
の条件は出力ワードメモリの第0ビットに格納される。
すなわち、上記出力ワードメモリのビットベースアドレ
ス「M.0000」に上記16進数値「0」を加えたア
ドレスに上記条件を格納する。図6に示す回路図では、
起動条件または運転条件である(>=1 (& I.0002 !I.000
3) I.0004) を出力ワードメモリの第0ビットである
M.0000に書き込むことを指定する回路記述を、出
力条件部eの「A」記号、論理部dおよび入力条件部f
のワードメモリビット位置記号(16進数値)とを用い
て可読性よく簡潔に記述できる。
17における&命令作成処理のフローチャートである。
&命令作成装置433は、まず、入出力条件格納装置4
12を検索し(ステップS181)、図8に示す格納デ
ータの各列毎に、「○」,「×」またはワードメモリビ
ット位置記号(16進数値)が複数存在するか否か判別
する(ステップS182)。
「&」命令を関数型言語格納装置501の所定領域に格
納し(ステップS183)、さらに、この「&」命令を
関数型言語格納装置501に格納したことを記憶して
(ステップS184)、ステップS185に進む。これ
により、関数型言語格納装置501の格納状態は、図2
7に示すようになる。
索した列に「○」,「×」またはワードメモリビット位
置記号(16進数値)が複数個存在しない場合は、ステ
ップS183およびS184の処理を行わず、直ちにス
テップS185に進む。
タ領域を検索(ステップS185)して図8に示す格納
データから該当列において「○」または「×」のある行
番号を抽出し、図10に示す入力論理格納装置432の
格納データから上記抽出した行番号の入力記述行に記述
されている該当名称を抽出し、この抽出した該当名称を
関数型言語格納装置501の所定領域に格納する(ステ
ップS186)。
転を示す「×」であったか否か判別し(ステップS18
7)、「×」であれば、上記格納した該当名称がアトム
であるか否か判別する(ステップS188)。
あれば、この該当名称の先頭に反転を表す「!」を付加
して(ステップS189)、ステップS193へ進む。
一方、上記判別で、格納した該当名称がリストのとき
は、そのリストの関数名が反転命令の「NOT」である
か否か判別する(ステップS190)。関数名が「NO
T」であれば、その「NOT」関数を取り除くことによ
り、その反転命令「NOT」をさらに反転させて(ステ
ップS191)、ステップS193へすすむ。関数名が
「NOT」でないときは、そのリストを「(NOT
)」でくくって「NOT」関数として値を反転(ステ
ップS192)させてステップS193へ進む。
の格納データを基に入力条件部fの該当列の各行に記述
されているデータを検索し(ステップS193)、ワー
ドメモリビット位置記号(16進数値)が存在する入力
記述行の行番号を抽出する。そして、図26に示すビッ
ト収集格納装置443の格納データから、この抽出した
行番号に対応するビット収集命令を取り出し、これを図
5の関数型言語格納装置501の所定領域に格納する
(ステップS194)。例えば、図6において、ワード
メモリビット位置記号(16進数値)は、入力記述行の
3行目と6行目に記述されているが、これら各行に記述
されている値はそれぞれ「0」、「1」であるので、図
26に示すデータの「0」および「1」から入力論理を
取り出してこれを関数型言語格納装置501の所定領域
に格納する。
は、図28に示す状態まで関数型言語が格納される。こ
のように、&命令は、ある列の入力条件部fに「○」,
「×」またはワードメモリビット位置記号(16進数
値)が複数個存在するときに、それら記号が記述されて
いる入力記述行の各信号・論理式の論理和をとらせる命
令である。
タイマ設定値作成処理のタイムチャートである。タイマ
設定値作成装置424は、まず、図9に示す出力行情報
格納装置422の格納データを検索し(ステップS19
5)、該当行にタイマ設定値名称が存在するか否か判別
する(ステップS196)。そして、タイマ設定値名称
が存在すれば、次に、そのタイマ設定値(同図の例では
「DIABCD」)を、関数型言語格納装置501の所
定領域に格納する(ステップS197)。そして、前述
した&命令作成処理において&命令の作成が記憶されて
いれば、その&命令「(&」の終了を示す「)」を続い
て格納する(ステップS198)。
は、ステップS198は行わず直ちにタイマ設定値作成
処理を終了する。また、上記ステップS195で、タイ
マ設定値名称が存在しない場合にも、直ちにその処理を
終了する。
198が実行されると、関数型言語格納装置501に
は、図29に示す状態にまで関数型言語が格納される。
図21は、上記ステップS119の出力命令処理のフロ
ーチャートである。
力行情報格納装置422の格納データから、記号
「W」、「S」または「R」が記述されていいる出力記
述行に対応する出力信号名称(この例の場合は、「T.
SSTIM」)を抽出し、この信号名称を関数型言語格
納装置501の所定領域に格納して(ステップS20
1)、処理を終了する。
1には、図30に示す状態まで、関数型言語が格納され
る。図22は、上記ステップS120における監視ワー
ド生成命令作成処理のフローチャートである。
装置)451は、まず、入出力条件格納装置412を検
索する(ステップS211)。そして、図8に示す格納
データから出力条件部eの該当列において「F」記号が
存在する出力記述行の行番号を抽出する。また、出力行
情報格納装置422から上記「F」記号が存在する出力
記述行の出力名称部aに記述されている出力名称(この
場合、SI000)を抽出する。さらに、入力条件部f
においてこの抽出した出力名称に対応する出力ワードメ
モリ(監視用ワードメモリ)内でOFF設定されている
ビットの位置を指定するワードメモリビット位置記号
(16進数値)を強調表示させるための監視ワード生成
命令を作成する。そして、この命令(ここでは、:=SI00
00 SI0000)を図5の関数型言語格納装置501の所定
領域に格納する。
01には、図7に示す501−10の部分までの関数型
言語が格納される。ここで、上記監視ワード生成命
令「:=SI0000 SI0000 」について説明する。この命令
は、出力ワードメモリSI0000の内容を同一のワー
ドメモリSI0000に代入する動作を表す。この動作
は、同一メモリに対する同一メモリ内容の代入でありP
C上では意味を持たない。しかし、プログラミング装置
(回路図作成・翻訳装置)上では、このメモリのアドレ
スを記憶する必要があるため、このような疑似命令コー
ドを作成する。
図6に示す表形式回路記述を表示するモニタ画面上で、
入力条件部fにおいて強調表示すべきワードメモリビッ
ト位置記号(16進数値)を指定するデータを格納す
る。たとえば、オンラインモニタ時に出力ワードメモリ
SI0000の内容が16進数「FFFE」であったとする
と、この値は2進数表現では16桁で表されその最下位
ビットのみが「0」となる(ビット位置0がオフ)。こ
の場合、入力条件部fにおいてワードメモリビット位置
記号として「0」が記述されている部分を強調表示す
る。即ち、図6に示す例では、出力条件部eにおいて
「F」記号が設定されている列(48−1)上の16進
数値「0」(I.0002が記述されている入力記述
行)を、例えば赤色に強調表示する。
容が16進数「FFFD」であったとすると、この値は2進
数表現では16桁で表されその最下位ビットから2ビッ
ト目のみが「0」となる(ビット位置1がオフ)。この
場合は、I.0005が記述されている行のワードメモ
リビット位置記号(16進数値)「1」を強調表示す
る。また、出力ワードメモリSI0000の内容が16
進数「FFFC」であったとすると、この値は2進数表現で
は16桁で表されその最下位ビットおよび最下位ビット
から2ビット目が「0」となる(ビット位置0および1
がオフ)。この場合、I.0002およびI.0005
が記述されている行のワードメモリビット位置記号(1
6進数値)「0」および「1」を共に強調表示する。
面の例である。同図は、列51に関する処理が実行され
ているときのモニタ画面を示している。このとき、列5
1では、出力記述行「K」に記述されている記号「F」
に従って、入力記述行「B」および「G」に記述されて
いるワードメモリビット位置記号(16進数値)が強調
表示されている。ここでは、●印で示している。
出力ワードメモリ上において、ワードメモリビット位置
記号が示す16進数値に対応するビットに格納されてい
る。例えば、ワードメモリビット位置記号が示す16進
数値が「0」であれば、上記条件等は、ビットM.00
00に格納される。一方、出力条件部eにおいて記号
「F」が記述されている行の名称「SI0000」に対
応する出力ワードメモリにおいて、たとえば、16進数
で「FFFE」を設定しておけば、その16進数値が「0」
であるワードメモリビット位置記号を強調表示させる。
すなわち、出力ワードメモリSI0000に16進数で
「FFFE」を設定しておけば、ビットM.0000が故障
要因となる場合、このビットM.0000に関与してい
る入力条件部fのワードメモリビット位置記号「0」を
強調表示させることができる。ここで、ワードメモリビ
ット位置記号「0」に対応する論理式は、論理部dに記
述されているので、列48−1に関する処理においてビ
ットM.0000が故障要因となる場合には、入力信号
「I.0002」、「I.0003」または「I.00
04」のいれかに原因があることが容易に認識でき、故
障解析を迅速に行うことができる。
ップS111〜S120によって、図6に示す表形式回
路記述の出力条件部e並びに入力条件部fの1列目の記
述データに基づく関数型言語変換が行われる。そして、
続くステップS114〜S120が繰り返されて2列目
以降についても上記変換が行われ、図6の表形式回路記
述が図7に示す関数型言語に変換されて、関数型言語格
納装置501に格納される。
記号「A」およびワードメモリビット位置記号(16進
数値)を用いることにより、ビットメモリ(I.000
2,I.0003,I.0004,I.0005)に割
り付けられた自動運転等の起動条件や運動条件等を、出
力ワードメモリ(M.0000,M0001)に収集す
る記述が容易に可能である。
リの各ビット(M0000,M0001)を使用して起
動条件や運転条件等を作成するための論理を、可読性良
く記述することも可能である。
いて故障要因となるワードメモリを強調表示することが
できる。
以下の効果が得られる。出力記述行の出力条件部にワー
ドメモリ割付記号を記述することにより、任意のワード
メモリのビットベースアドレスを指定でき、さらに入力
記述行の入力条件部にワードメモリビット位置指定記号
を記述することにより、上記ビットベースアドレスの任
意のビット位置を指定できる。そして、上記ワードメモ
リ割付記号により、このビット位置に論理部の論理演算
結果または入力名称部に名称が記述されている入力信号
を書き込む指定ができるので、自動運転等の起動条件や
運転条件を監視する場合に監視すべき外部入力接点情報
や内部メモリ等の監視情報を1ワードのメモリの中に収
集するための回路記述を小規模な回路で可読性良く表形
式で記述できると共に、上記のようにして監視情報の収
集に用いたワードメモリの任意のビットを用いて起動条
件や運転条件等を監視するための回路をも可読性良く表
形式で記述できる。
記号を記述することにより、その強調表示記号を記述し
た出力記述行に対応するワードメモリに内容に従って、
所定のワードメモリビット位置記号を強調表示させるこ
とができる。そして、この強調表示に係わる記述は、小
さなスペースで行うことができ、可読性もよい。このた
め、プログラマブルコントローラの動作状態を把握しや
すく、障害等が発生した場合には、迅速に切りわけを行
うことができる。
ワードメモリ割付記号及びワードメモリビット位置記号
により指定されるあるワードメモリへのビット収集動作
を、PC上で実行可能なプログラム命令に自動的に変換
できる。また、強調表示記号を用いて指定されるワード
メモリビット位置記号を強調表示させるための記述をP
C上で実行可能なプログラム命令に自動的に変換でき
る。
明するための図である。
る。
る図である。
図である。
す図である。
る。
る。
る。
ある。
る。
ある。
である。
である。
る。
トである。
を説明する図(その1)である。
説明する図である。
を説明する図(その2)である。
を説明する図(その3)である。
を説明する図(その4)である。
を説明する図(その5)である。
を説明する図(その6)である。
る。
記述を説明する図である。
明する図である。
の並換えを説明する図である。
るためのワードメモリの作成の一例を示す図である。
置) 442 ビットベースアドレス格納装置 443 ビット収集命令格納装置 451 監視ワード生成命令作成装置(F命令作成
装置) 501 関数型言語格納装置
Claims (5)
- 【請求項1】 プログラマブルコントローラ上で動作す
るプログラムを記述した回路図を作成する回路図作成装
置であって、 出力を記述するための複数の出力記述行および該出力に
対応する入力を記述するための複数の入力記述行から構
成され、上記各出力記述行が、出力信号の名称を記述す
る出力名称部および出力条件を記述する出力条件部を有
し、上記各入力記述行が、入力信号の名称を記述する入
力名称部および入力条件を記述する入力条件部を有し、
複数の入力記述行に対して論理回路を記述する論路部が
設けられており、上記入力条件部および出力条件部がそ
れぞれ互いに対応する列構造を有しているフォーマット
の回路図記述用ひな形を格納するひな形格納手段と、 上記出力名称部に出力信号の名称を記述する出力名称入
力手段と、 上記出力条件部に出力条件を記述する出力条件入力手段
と、 上記入力名称部に入力信号の名称を記述する入力名称入
力手段と、 上記論路部において、上記入力名称部に記述された名称
の信号の入力を意味する入力記号とそれら入力信号に対
する論理演算を意味する論理演算記号を記述する論理入
力手段と、 上記出力条件部において、上記入力名称部に名称が記述
されている入力信号または上記論理部の論理演算結果が
当該出力記述行に対応する出力メモリに書き込まれてい
ることを示すメモリ割付記号を記述するメモリ割付記号
入力手段と、 上記入力条件部において、上記入力名称部に名称が記述
されている入力信号または上記論理部の論理演算結果を
上記出力メモリに書き込むときの該出力メモリ内のビッ
ト位置を指定するビット位置指定記号を記述するビット
位置指定記号入力手段と、 上記各手段により入力された記号を上記ひな形の回路図
記述領域と対応づけて格納する記憶手段と、を有し、 上記メモリ割付記号が設定されている出力記述行に対応
する信号は、そのメモリ割付記号が設定されている列に
対応する列においてビット位置指定記号が記述されてい
る行の入力信号または論理演算結果により表されること
を特徴とする回路図作成装置。 - 【請求項2】 上記論理部に記述されている論理演算記
号に基づき上記入力名称部に記述されている名称を用い
て上記ビット位置指定記号に対応する論理式を作成し、
該論理式を上記ビット位置指定記号と対応づけて上記記
憶手段に格納することを特徴とする請求項1に記載の回
路図作成装置。 - 【請求項3】 上記出力条件部において、当該出力記述
行に対応する監視用メモリの内容に基づいて、上記ビッ
ト位置指定記号の中の該当するものを強調表示させるこ
とを指定する強調表示記号を記述する手段をさらに有
し、 上記記憶手段は、強調表示記号を上記形式の回路図記述
領域に対応づけて格納することを特徴とする請求項1に
記載の回路図作成装置。 - 【請求項4】 請求項1に記載の回路図作成装置により
作成された回路図をプログラマブルコントローラ用の言
語に翻訳する回路図翻訳装置であって、 上記出力条件部から出力条件を抽出し、上記入力条件部
から入力条件を抽出してそれぞれ記憶する入出力条件抽
出・記憶手段と、 上記出力名称部から出力名称を抽出し、これを出力行情
報として記憶する出力行情報抽出・記憶手段と、 上記論理部に記述されている論理回路を所定の言語に対
応するステートメントに変換して記憶する入力論理抽出
・記憶手段と、 上記入出力条件抽出・記憶手段を参照して上記メモリ割
付記号が記述されている出力記述行を抽出し、この抽出
情報から上記出力メモリのベースアドレスを作成すると
共に、上記入出力条件抽出・記憶手段、上記出力行情報
抽出・記憶手段および上記入力論理抽出・記憶手段に記
憶されている抽出情報を読み出し、これらの抽出情報お
よび上記出力メモリのベースアドレスに基づいて、上記
メモリビット位置指定記号が指定する上記出力メモリ内
におけるビットに、該メモリビット位置指定記号が記述
されている入力記述行に対応する入力信号または上記論
理部の論理演算結果を書き込むビット収集命令を作成
し、これを上記記憶手段の所定領域に格納するビット収
集命令作成手段と、 を有することを特徴とする回路図翻訳装置。 - 【請求項5】 請求項3に記載の回路図作成装置により
作成された回路図をプログラマブルコントローラ用の言
語に翻訳する回路図翻訳装置であって、 上記出力条件部から出力条件を抽出し、上記入力条件部
から入力条件を抽出してそれぞれ記憶する入出力条件抽
出・記憶手段と、 上記出力名称部から出力名称を抽出し、これを出力行情
報として記憶する出力行情報抽出・記憶手段と、 上記入出力条件抽出・記憶手段および上記出力行情報抽
出・記憶手段を参照して上記強調表示記号が記述されて
いる出力記述行を抽出し、この抽出した出力記述行に対
応する監視用メモリの内容に基づいて、上記ビット位置
指定記号の中の該当記号を強調表示させるための監視ワ
ード生成命令を作成し、これを上記記憶手段の所定領域
に格納する監視ワード生成命令作成手段と、 を有することを特徴とする回路図翻訳装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP16062895A JP3340592B2 (ja) | 1995-06-27 | 1995-06-27 | 回路図作成装置および回路図翻訳装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP16062895A JP3340592B2 (ja) | 1995-06-27 | 1995-06-27 | 回路図作成装置および回路図翻訳装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0916219A JPH0916219A (ja) | 1997-01-17 |
| JP3340592B2 true JP3340592B2 (ja) | 2002-11-05 |
Family
ID=15719049
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP16062895A Expired - Fee Related JP3340592B2 (ja) | 1995-06-27 | 1995-06-27 | 回路図作成装置および回路図翻訳装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3340592B2 (ja) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7096078B2 (en) * | 2003-05-30 | 2006-08-22 | Fisher-Rosemount Systems, Inc. | Boolean logic function block |
-
1995
- 1995-06-27 JP JP16062895A patent/JP3340592B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0916219A (ja) | 1997-01-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2765969B2 (ja) | 図式データ駆動型プログラム開発支援装置 | |
| US4885717A (en) | System for graphically representing operation of object-oriented programs | |
| JP3195839B2 (ja) | 発電所の施設の運転を監視する方法 | |
| EP0553731A2 (en) | Programmable controller | |
| US20080162104A1 (en) | Simulation data creation supporting device | |
| JP3340592B2 (ja) | 回路図作成装置および回路図翻訳装置 | |
| CN113711142A (zh) | 调试辅助装置、调试辅助方法、调试辅助程序 | |
| US20260029995A1 (en) | Method for generating a control program for an automation system and development environment | |
| Lin et al. | Data structure visualization on the web | |
| US20220350601A1 (en) | Heterogeneous embedded method and device for tabular processing and execution of operation flow | |
| JP3124131B2 (ja) | 表形式回路記述装置及びその方法、並びに関数型言語変換装置及びその方法 | |
| Chmiel et al. | The way of ladder diagram analysis for small compact programmable controller | |
| KR102509859B1 (ko) | Plc 래더정보로부터 공용 명령어정보를 추출하는 장치 및 방법 | |
| JPH01229321A (ja) | ユーザインタフェース作成装置 | |
| KR100423742B1 (ko) | 순차기능챠트에 의한 전용 제어 시스템 | |
| EP0416509A2 (en) | Programmable controller, and method and apparatus for programming same | |
| JPS6378238A (ja) | 目的コ−ド生成装置 | |
| JPS62165684A (ja) | 運転訓練用シミユレ−タ | |
| JP3164730B2 (ja) | 表形式回路記述生成装置とその方法 | |
| CN121478298A (zh) | 目标程序生成方法、系统、计算机设备及计算机程序产品 | |
| JP2519250B2 (ja) | シ−ケンス論理プログラム生成装置 | |
| JP2827724B2 (ja) | プログラムデバッグ処理方法 | |
| JPH0443281B2 (ja) | ||
| JP2629955B2 (ja) | 専門家システム構築装置 | |
| JPH0334021A (ja) | プログラム言語変換方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20020806 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070816 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080816 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080816 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090816 Year of fee payment: 7 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313117 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090816 Year of fee payment: 7 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090816 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100816 Year of fee payment: 8 |
|
| LAPS | Cancellation because of no payment of annual fees |