JP2585708B2 - プログラマブルコントローラ - Google Patents
プログラマブルコントローラInfo
- Publication number
- JP2585708B2 JP2585708B2 JP63106252A JP10625288A JP2585708B2 JP 2585708 B2 JP2585708 B2 JP 2585708B2 JP 63106252 A JP63106252 A JP 63106252A JP 10625288 A JP10625288 A JP 10625288A JP 2585708 B2 JP2585708 B2 JP 2585708B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- state
- address
- command
- executed
- 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 - Lifetime
Links
Landscapes
- Programmable Controllers (AREA)
Description
【発明の詳細な説明】 [発明の目的] (産業上の利用分野) この発明はプログラマブルコントローラにおけるフロ
ーチャート形式のプログラミング言語の処理方式に関す
る。
ーチャート形式のプログラミング言語の処理方式に関す
る。
(従来の技術) プログラマブルコントローラのプログラミング言語と
して、ニーモニック方式の言語、ファンクションブロッ
ク方式の言語、ラダーダイアグラム方式の言語、フロー
チャート方式の言語等が知られている。フローチャート
方式の言語には、フローチャートがそのままプログラム
となる方式のものと、フローチャートによりプログラム
の構文を決定し、フローチャート中の処理内容はニーモ
ニック方式、ファンクションブロック方式、ラダーダイ
アグラム方式などで記述する方式のものがある。
して、ニーモニック方式の言語、ファンクションブロッ
ク方式の言語、ラダーダイアグラム方式の言語、フロー
チャート方式の言語等が知られている。フローチャート
方式の言語には、フローチャートがそのままプログラム
となる方式のものと、フローチャートによりプログラム
の構文を決定し、フローチャート中の処理内容はニーモ
ニック方式、ファンクションブロック方式、ラダーダイ
アグラム方式などで記述する方式のものがある。
後者のフローチャート方式の言語はシーケンシャルフ
ァンクションチャート(以下SFC)と称されている。
ァンクションチャート(以下SFC)と称されている。
第11図にSFCのプログラム例を示す。第11図におい
て、S0〜S2はステップと呼ばれ、フローチャートにおけ
る処理の箱を示す。S0は特にイニシャルステップと呼ば
れ、プログラムの初めを示す。ACT0〜ACT2はステップに
おける処理内容を示す。ACT0〜ACT2はラダーダイアグラ
ム方式の言語で記述されている。T0〜T2はトランジショ
ンと呼ばれ、前記ステップ間での処理の流れを制御する
ものである。TRS0〜TRS2はトランジションの処理を示
す。TRS0〜TRS2はラダーダイアグラム方式の言語で記述
されている。
て、S0〜S2はステップと呼ばれ、フローチャートにおけ
る処理の箱を示す。S0は特にイニシャルステップと呼ば
れ、プログラムの初めを示す。ACT0〜ACT2はステップに
おける処理内容を示す。ACT0〜ACT2はラダーダイアグラ
ム方式の言語で記述されている。T0〜T2はトランジショ
ンと呼ばれ、前記ステップ間での処理の流れを制御する
ものである。TRS0〜TRS2はトランジションの処理を示
す。TRS0〜TRS2はラダーダイアグラム方式の言語で記述
されている。
理解を容易にするためラダーダイアグラムのプログラ
ムについて簡単に説明する。ラダーダイアグラムのプロ
グラムにおいて、 はいわゆるA接点を、 はB接点を、( )はコイル等を、[ ]は機能(関数
等)を意味する。左端の垂直方向のラインは母線と呼ば
れる。
ムについて簡単に説明する。ラダーダイアグラムのプロ
グラムにおいて、 はいわゆるA接点を、 はB接点を、( )はコイル等を、[ ]は機能(関数
等)を意味する。左端の垂直方向のラインは母線と呼ば
れる。
ラダーダイアグラム方式のプログラムは、母線がオン
の状態では、プログラム中の論理演算処理を実行し、演
算結果に基づいた出力がなされる。母線がオフの状態で
は、プログラム中の論理演算処理は実行されず、出力は
オフ状態となる。即ち、リセット処理が行われる。
の状態では、プログラム中の論理演算処理を実行し、演
算結果に基づいた出力がなされる。母線がオフの状態で
は、プログラム中の論理演算処理は実行されず、出力は
オフ状態となる。即ち、リセット処理が行われる。
各ステップには、そのステップがアクテブな状態かイ
ンアクテブな状態かを示すフラグ(以下ステップフラ
グ)が設けられている。
ンアクテブな状態かを示すフラグ(以下ステップフラ
グ)が設けられている。
第11図のプログラムが起動されると、イニシャルステ
ップS0に附随するステップフラグに“1"がセットされ
る。イニシャルステップS0はアクテブな状態となり、イ
ニシャルステップS0の処理ACT0が母線オンの状態で実行
される。ACT0の実行が完了すると、トランジションT0の
処理TRS0が実行される。TRS0の実行結果はトランジショ
ンT0で評価される。TRS0の実行結果がオフの場合、イニ
シャルステップS0はアクテブな状態のままとなる。これ
により、再度イニシャルステップS0の処理ACT0が実行さ
れ、実行完了後、トランジションT0の処理TRS0が実行さ
れる。これらの処理はTRS0の実行結果がオンとなるまで
繰返される。
ップS0に附随するステップフラグに“1"がセットされ
る。イニシャルステップS0はアクテブな状態となり、イ
ニシャルステップS0の処理ACT0が母線オンの状態で実行
される。ACT0の実行が完了すると、トランジションT0の
処理TRS0が実行される。TRS0の実行結果はトランジショ
ンT0で評価される。TRS0の実行結果がオフの場合、イニ
シャルステップS0はアクテブな状態のままとなる。これ
により、再度イニシャルステップS0の処理ACT0が実行さ
れ、実行完了後、トランジションT0の処理TRS0が実行さ
れる。これらの処理はTRS0の実行結果がオンとなるまで
繰返される。
TRS0の実行結果がオンの場合、トランジションT0によ
り、イニシャルステップS0のステップフラグに“0"がセ
ットされる。イニシャルステップS0はインアクテブな状
態となる。次に、イニシャルステップS0の処理ACT0が母
線オフの状態で実行される。つまり、イニシャルステッ
プS0のACT0のリセット処理が行わる。母線オフの状態で
のACT0の実行が完了すると、ステップS1のステップフラ
グに“1"がセットされる。これにより、ステップS1はア
クテブな状態となる。
り、イニシャルステップS0のステップフラグに“0"がセ
ットされる。イニシャルステップS0はインアクテブな状
態となる。次に、イニシャルステップS0の処理ACT0が母
線オフの状態で実行される。つまり、イニシャルステッ
プS0のACT0のリセット処理が行わる。母線オフの状態で
のACT0の実行が完了すると、ステップS1のステップフラ
グに“1"がセットされる。これにより、ステップS1はア
クテブな状態となる。
ステップS1がアクテブな状態となったことにより、ス
テップS1の処理ACT1が母線オンの状態で実行される。AC
T1の実行が完了すると、トランジションT1の処理TRS1が
実行される。TRS1の実行結果がオンになるまで、ACT1と
TRS1の実行が繰返される。TRS1の実行結果がオンになる
と、ステップS1のステップフラグS1がリセットされ、ス
テップS1はインアクテブな状態となる。ステップS1の処
理ACT1が母線オフの状態で実行され、ステップS2のステ
ップフラグがオンされ、同様の処理が行われる。
テップS1の処理ACT1が母線オンの状態で実行される。AC
T1の実行が完了すると、トランジションT1の処理TRS1が
実行される。TRS1の実行結果がオンになるまで、ACT1と
TRS1の実行が繰返される。TRS1の実行結果がオンになる
と、ステップS1のステップフラグS1がリセットされ、ス
テップS1はインアクテブな状態となる。ステップS1の処
理ACT1が母線オフの状態で実行され、ステップS2のステ
ップフラグがオンされ、同様の処理が行われる。
トランジションT2はイニシャルステップS0へ接続され
ている。このため、トランジションT2が実行された後、
コントロールはステップS0にリターンし、上述の一連の
処理がサイクリックに実行される。
ている。このため、トランジションT2が実行された後、
コントロールはステップS0にリターンし、上述の一連の
処理がサイクリックに実行される。
SFCプログラムの解釈と処理を行うため、プログラマ
ブルコントローラ本体に保持されるプログラムの一例を
第12図に示す。第12図では、プログラムの起動後、ステ
ップ番号nを指すポインタを0にセットし、イニシャル
ステップから処理を実行する(ステップST1〜ST3)。イ
ニシャルステップの処理終了後、トランジションが成立
しているか否かが検出される(ステップST4)。トラン
ジション不成立の場合、ステップST1〜ST3が繰返され
る。トランジションが成立した場合、ステップS0の処理
ACT0をリセットする(ステップST5、ST6)。コントロー
ルはステップ番号nを更新し、指示されたステップの処
理を行う(ステップST7.ST8.ST2〜ST6)。全ステップの
処理終了が検出された場合には(ステップST8)、コン
トロールはステップST1にリターンし、イニシャルステ
ップから処理を行う。
ブルコントローラ本体に保持されるプログラムの一例を
第12図に示す。第12図では、プログラムの起動後、ステ
ップ番号nを指すポインタを0にセットし、イニシャル
ステップから処理を実行する(ステップST1〜ST3)。イ
ニシャルステップの処理終了後、トランジションが成立
しているか否かが検出される(ステップST4)。トラン
ジション不成立の場合、ステップST1〜ST3が繰返され
る。トランジションが成立した場合、ステップS0の処理
ACT0をリセットする(ステップST5、ST6)。コントロー
ルはステップ番号nを更新し、指示されたステップの処
理を行う(ステップST7.ST8.ST2〜ST6)。全ステップの
処理終了が検出された場合には(ステップST8)、コン
トロールはステップST1にリターンし、イニシャルステ
ップから処理を行う。
(発明が解決しようとする課題) 以上説明したように、SFCプログラムでは、ラダーダ
イアグラム方式のプログラムの解釈・実行の他に、フロ
ーチャートの制御のための処理も必要であり、マイクロ
プロセッサはインタプリタ方式の処理を行う必要があ
り、負担が大きい。このため、SFCプログラムを実行す
るプログラマブルコントローラにあっては、SFC専用の
コントローラとするか、SFCプログラムとその他のプロ
グラムを別々に処理するしかなかった。
イアグラム方式のプログラムの解釈・実行の他に、フロ
ーチャートの制御のための処理も必要であり、マイクロ
プロセッサはインタプリタ方式の処理を行う必要があ
り、負担が大きい。このため、SFCプログラムを実行す
るプログラマブルコントローラにあっては、SFC専用の
コントローラとするか、SFCプログラムとその他のプロ
グラムを別々に処理するしかなかった。
この発明は以上の点に鑑みてなされたものであり、従
来のラダーダイアグラム方式の処理に何等変更を加える
ことなく、SFCプログラムを実行できるプログラマブル
コントローラを提供することである。
来のラダーダイアグラム方式の処理に何等変更を加える
ことなく、SFCプログラムを実行できるプログラマブル
コントローラを提供することである。
[発明の構成] (課題を解決するための手段) 上記目的を達成するため、この発明では、ラダーダイ
アグラム方式のプログラムを実行するプログラマブルコ
ントローラが、 命令語中にアドレス指定を持ち、入力状態とアドレス
指定されたメモリエリアの内容をオア演算し、このオア
演算の結果を前記アドレス指定されたメモリエリアに格
納し、前記アドレス指定されたメモリエリアの演算前の
内容を出力状態とするステップ命令と、 命令語中にアドレス指定を持ち、入力状態が論理“1"
のときに、アドレス指定されたメモリエリアの内容を理
論“0"とし、出力状態を理論“1"とするステップリセッ
ト命令と、を内蔵し、 前記ステップ命令と前記ステップリセット命令で同一
メモリアドレスを指定し、 前記ステップ命令と前記ステップリセット命令で第1の
ラダーダイアグラム方式のプログラムを挟み、 前記ステップ命令と前記ステップリセット命令により
アドレス指定されたメモリエリアの内容で、第2のラダ
ーダイアグラム方式のプログラムの実行状態を制御可能
なように構成することによりフローチャート式プログラ
ムを処理可能に構成されている。
アグラム方式のプログラムを実行するプログラマブルコ
ントローラが、 命令語中にアドレス指定を持ち、入力状態とアドレス
指定されたメモリエリアの内容をオア演算し、このオア
演算の結果を前記アドレス指定されたメモリエリアに格
納し、前記アドレス指定されたメモリエリアの演算前の
内容を出力状態とするステップ命令と、 命令語中にアドレス指定を持ち、入力状態が論理“1"
のときに、アドレス指定されたメモリエリアの内容を理
論“0"とし、出力状態を理論“1"とするステップリセッ
ト命令と、を内蔵し、 前記ステップ命令と前記ステップリセット命令で同一
メモリアドレスを指定し、 前記ステップ命令と前記ステップリセット命令で第1の
ラダーダイアグラム方式のプログラムを挟み、 前記ステップ命令と前記ステップリセット命令により
アドレス指定されたメモリエリアの内容で、第2のラダ
ーダイアグラム方式のプログラムの実行状態を制御可能
なように構成することによりフローチャート式プログラ
ムを処理可能に構成されている。
また、前記ステップ命令及びステップリセット命令を
ビット演算プロセッサで処理すると良い。
ビット演算プロセッサで処理すると良い。
また、ステップ命令は、入力状態をアドレス指定され
たメモリエリアの内容をオア演算処理した結果論理“1"
の時、アドレス値をスタックメモリに保持し、前記ステ
ップリセット命令は命令語中にアドレス指定を持たず、
スタックメモリの内容を取り出して、取り出した内容で
指定されたメモリエリアの内容を論理“0"とするように
構成しても良い。
たメモリエリアの内容をオア演算処理した結果論理“1"
の時、アドレス値をスタックメモリに保持し、前記ステ
ップリセット命令は命令語中にアドレス指定を持たず、
スタックメモリの内容を取り出して、取り出した内容で
指定されたメモリエリアの内容を論理“0"とするように
構成しても良い。
(作用) 以上のように構成することにより、最初のスキャンで
ステップフラグSFnが“0"で、ステプSnに対する入力状
態が“0"のときには、ステップSnの処理TRSnは母線オフ
状態で実行される。以後のスキャンで、ステップSnに対
する入力状態が“1"になると、ステップSnの処理TRSnは
母線がオンの状態で実行される。しかし、このスキャン
では、トランジションの処理TRSnは評価されない。次の
スキャンからトランジションの処理TRSnが評価され、結
果が“1"となるまで、ステップSnの処理ACTnは母線がオ
ン状態にて実行される。結果が“1"となったスキャンで
は、ステップフラグSFnが“0"にされるので、ステップS
nの処理ACTnは母線がオフの状態での実行となる。
ステップフラグSFnが“0"で、ステプSnに対する入力状
態が“0"のときには、ステップSnの処理TRSnは母線オフ
状態で実行される。以後のスキャンで、ステップSnに対
する入力状態が“1"になると、ステップSnの処理TRSnは
母線がオンの状態で実行される。しかし、このスキャン
では、トランジションの処理TRSnは評価されない。次の
スキャンからトランジションの処理TRSnが評価され、結
果が“1"となるまで、ステップSnの処理ACTnは母線がオ
ン状態にて実行される。結果が“1"となったスキャンで
は、ステップフラグSFnが“0"にされるので、ステップS
nの処理ACTnは母線がオフの状態での実行となる。
(実施例) 以下、図面を参照してこの発明の一実施例に係るプロ
グラマブルコントローラを説明する。
グラマブルコントローラを説明する。
この実施例に係るプログラマブルコントローラは第2
図に示されるような構成を有する。
図に示されるような構成を有する。
第2図において、CPU1は制御部本体を構成するもので
あり、RAM2はCPU1の制御動作に必要なデータなどを保持
する、ROM3はCPU1の動作を規定するプログラム、その他
の固定データなどを記憶する。周辺回路4は外部バス
5、制御対象等に接続されCPU1と外部装置との間のデー
タの入/出力を制御したり、制御対処からの各種情報の
入力、制御対象への各種制御信号の出力等を行う。CPU
1、RAM2、ROM3、周辺回路4は内部バス6により接続さ
れている。
あり、RAM2はCPU1の制御動作に必要なデータなどを保持
する、ROM3はCPU1の動作を規定するプログラム、その他
の固定データなどを記憶する。周辺回路4は外部バス
5、制御対象等に接続されCPU1と外部装置との間のデー
タの入/出力を制御したり、制御対処からの各種情報の
入力、制御対象への各種制御信号の出力等を行う。CPU
1、RAM2、ROM3、周辺回路4は内部バス6により接続さ
れている。
ラダーダイアグラム方式のプログマブルコントローラ
では、プログラムされた命令語を先頭から解釈実行し、
最終命令まで実行した後、再び先頭から実行するスキャ
ン方式を採用している。
では、プログラムされた命令語を先頭から解釈実行し、
最終命令まで実行した後、再び先頭から実行するスキャ
ン方式を採用している。
このスキャン実行方式にて、SFCプログラムを処理す
るために、この実施例では、第1図のように、ステップ
Snをステップ命令SPnと、ステップリセット命令SRnで、
トランジション処理TRSnを挟むような構成にしている。
そして、ステップ命令SPnとステップリセット命令SRnに
て共通に指定したステップフラグSFnにてステップSnの
処理ACTnを制御するように構成している。
るために、この実施例では、第1図のように、ステップ
Snをステップ命令SPnと、ステップリセット命令SRnで、
トランジション処理TRSnを挟むような構成にしている。
そして、ステップ命令SPnとステップリセット命令SRnに
て共通に指定したステップフラグSFnにてステップSnの
処理ACTnを制御するように構成している。
第1図のステップ命令SPnは、第3図に示す入出力論
理を持つ。つまり、入力状態とステップフラグSFn(以
前のステップフラグという意味でSFn-1)のオア演算結
果をステップフラグSFnに格納し、ステップフラグSFnの
演算前の状態(SFn-1)を出力状態としている。ステッ
プリセット命令SRnは入力状態が“1"の時、ステップフ
ラグSFnを“0"にリセットする。
理を持つ。つまり、入力状態とステップフラグSFn(以
前のステップフラグという意味でSFn-1)のオア演算結
果をステップフラグSFnに格納し、ステップフラグSFnの
演算前の状態(SFn-1)を出力状態としている。ステッ
プリセット命令SRnは入力状態が“1"の時、ステップフ
ラグSFnを“0"にリセットする。
第3図に基づいて第1図に示されるプログラムの実行
について考える。例えば、ステップフラグSFnが“0"の
状態で、入力状態が“1"となると、ステップ命令SPnに
より、ステップフラグSFnが“1"となり、出力状態は
“0"とされる。ステップ命令SPnの出力状態が“0"のた
め、トランジション処理TRSnは処理されずステップリセ
ット命令SRnも実行されない。この後に、ステップSnの
処理ACTnが処理される。ステップ命令SPnによりステッ
プフラグSFnがオンしているので、ステップSnの処理ACT
nが母線がオンの状態と等しい状態で実行される。
について考える。例えば、ステップフラグSFnが“0"の
状態で、入力状態が“1"となると、ステップ命令SPnに
より、ステップフラグSFnが“1"となり、出力状態は
“0"とされる。ステップ命令SPnの出力状態が“0"のた
め、トランジション処理TRSnは処理されずステップリセ
ット命令SRnも実行されない。この後に、ステップSnの
処理ACTnが処理される。ステップ命令SPnによりステッ
プフラグSFnがオンしているので、ステップSnの処理ACT
nが母線がオンの状態と等しい状態で実行される。
ステップフラグSFnが“1"の状態で、ステップ命令SPn
の入力状態が“0"となると、ステップフラグSFnは“1"
のままで、出力状態は“1"となる。このため、トランジ
ション処理TRSnが実行される。トランジション処理TRSn
の処理の結果が“0"のときには、ステップリセット命令
SRnは実行されない。ステップSnの処理ACTnはステップ
フラグSFnがオンしているので、母線オンの状態と等し
い状態で実行される。トランジション処理TRSnの処理結
果が“1"の時には、ステップリセット命令SRnが実行さ
れる。ステップリセット命令SRnの実行により、ステッ
プフラグSFnが“0"にされる。このとき、ステップSnの
処理ACTnはステップフラグSFnが“0"なので、母線がオ
フの状態と等しい状態で実行される。
の入力状態が“0"となると、ステップフラグSFnは“1"
のままで、出力状態は“1"となる。このため、トランジ
ション処理TRSnが実行される。トランジション処理TRSn
の処理の結果が“0"のときには、ステップリセット命令
SRnは実行されない。ステップSnの処理ACTnはステップ
フラグSFnがオンしているので、母線オンの状態と等し
い状態で実行される。トランジション処理TRSnの処理結
果が“1"の時には、ステップリセット命令SRnが実行さ
れる。ステップリセット命令SRnの実行により、ステッ
プフラグSFnが“0"にされる。このとき、ステップSnの
処理ACTnはステップフラグSFnが“0"なので、母線がオ
フの状態と等しい状態で実行される。
ステップフラグSFnが“0"の状態において、ステップ
命令SRnの入力状態が“0"となると、ステップフラグSFn
は“0"のままで、出力状態は“0"となる。ステップSnの
処理ACTnは母線がオフの状態と等しい状態で実行され
る。
命令SRnの入力状態が“0"となると、ステップフラグSFn
は“0"のままで、出力状態は“0"となる。ステップSnの
処理ACTnは母線がオフの状態と等しい状態で実行され
る。
以上のように構成することにより、最初のスキャンで
ステップフラグSFnが“0"で、ステプSnに対する入力状
態が“0"のときには、ステップSnの処理TRSnは母線オフ
状態で実行される。以後のスキャンで、ステップSnに対
する入力状態が“1"になると、ステップSnの処理TRSnは
母線がオンの状態で実行される。しかし、このスキャン
では、トランジションの処理TRSnは評価されない。次の
スキャンからトランジションの処理TRSnが評価され、結
果が“1"となるまで、ステップSnの処理TRSnは母線がオ
ン状態にて実行される。結果が“1"となったスキャンで
は、ステップフラグSFnが“0"にされるので、ステップS
nの処理TRSnは母線がオフの状態での実行となる。
ステップフラグSFnが“0"で、ステプSnに対する入力状
態が“0"のときには、ステップSnの処理TRSnは母線オフ
状態で実行される。以後のスキャンで、ステップSnに対
する入力状態が“1"になると、ステップSnの処理TRSnは
母線がオンの状態で実行される。しかし、このスキャン
では、トランジションの処理TRSnは評価されない。次の
スキャンからトランジションの処理TRSnが評価され、結
果が“1"となるまで、ステップSnの処理TRSnは母線がオ
ン状態にて実行される。結果が“1"となったスキャンで
は、ステップフラグSFnが“0"にされるので、ステップS
nの処理TRSnは母線がオフの状態での実行となる。
上記の実施例をより具体的に第4図、5図を参照して
説明する。
説明する。
第4図は第11図に示すSFCプログラムをこの実施例に
係る方式で記載したものである。
係る方式で記載したものである。
第4図において、S0〜S2はステップ、SP0〜SP2はステ
ップ命令、SR0〜SR2はステップリセト命令、ACT0〜ACT2
はステップの処理、SF0〜SF2はステップフラグ、TRS0〜
TRS2はトランジション処理、EはSFCプログラムのエン
ド命令をそれぞれ示す。
ップ命令、SR0〜SR2はステップリセト命令、ACT0〜ACT2
はステップの処理、SF0〜SF2はステップフラグ、TRS0〜
TRS2はトランジション処理、EはSFCプログラムのエン
ド命令をそれぞれ示す。
第5図は第4図のプログラムの動作状態をスキャン毎
に示したタイムチャートである。第5図において、C1〜
C19はスキャンのタイミングを示し、ステップS0〜S2の
タイムチャートでは、上側がそのステップがアクテブな
状態であることを、下側がそのステプがインアクテブな
状態であることを示す。トランジション処理TRS0〜TRS2
のタイムチャートでは、上側がそのトランジションが成
立していることを下側がそのトランジションが不成立で
あることを示している。
に示したタイムチャートである。第5図において、C1〜
C19はスキャンのタイミングを示し、ステップS0〜S2の
タイムチャートでは、上側がそのステップがアクテブな
状態であることを、下側がそのステプがインアクテブな
状態であることを示す。トランジション処理TRS0〜TRS2
のタイムチャートでは、上側がそのトランジションが成
立していることを下側がそのトランジションが不成立で
あることを示している。
CPU1は第4図に示されるプログラムを1回のスキャン
で、S0、S1、S2、E、ACT0、ACT1、ACT2の順にスキャン
する。
で、S0、S1、S2、E、ACT0、ACT1、ACT2の順にスキャン
する。
プログラムは起動前は、全てのステップフラグに“0"
がセットされており、全てのステップはインアクテブな
状態である。
がセットされており、全てのステップはインアクテブな
状態である。
プログラムの起動により、ステップS0の入力状態が
“1"にされる。ステップS0のステップ命令SP0が実行さ
れ、ステップフラグSF0に“1"がセットされ、ステップS
0がアクテブな状態となる。第2図から理解できるよう
に、ステップ命令SP0の出力状態は“0"である。このた
め、トランジション処理TRS0は不成立となり(トランジ
ション処理TRS0は実質的に実行されない)、ステップリ
セット命令SR0も実行されず、ステップS0の出力状態は
“0"となる。ステップS1では、入力状態が“0"となり、
ステップ命令SP1は実行されず、ステップフラグSF1に
“0"のままであり、ステップS1はインアクテブな状態の
ままである。ステップ命令SP1の出力状態は“0"であ
り、トランジション処理TRS1は不成立となり、ステップ
リセット命令SR1も実行されず、ステップS1の出力状態
は“0"となる。ステップS2では、入力状態が“0"とな
り、ステップ命令SP2は実行されず、ステップフラグSF2
は“0"のままであり、ステップS2はインアクテブな状態
のままである。ステップ命令SP2の出力状態は“0"であ
り、トランジション処理TRS2は不成立となり、ステップ
リセット命令SR2も実行されず、ステップS2の出力状態
は“0"となる。エンド命令Eは入力状態が“0"であるた
め実行されない。以上の処理で、ステップフラグSF0は
“1"、SF1は“0"、SF2は“0"と設定される。これに対応
して、ACT0が母線オンの状態で実行され、ACT1、ACT2が
母線オフの状態での実行される。以上で、1スキャンC1
の実行が終了する。
“1"にされる。ステップS0のステップ命令SP0が実行さ
れ、ステップフラグSF0に“1"がセットされ、ステップS
0がアクテブな状態となる。第2図から理解できるよう
に、ステップ命令SP0の出力状態は“0"である。このた
め、トランジション処理TRS0は不成立となり(トランジ
ション処理TRS0は実質的に実行されない)、ステップリ
セット命令SR0も実行されず、ステップS0の出力状態は
“0"となる。ステップS1では、入力状態が“0"となり、
ステップ命令SP1は実行されず、ステップフラグSF1に
“0"のままであり、ステップS1はインアクテブな状態の
ままである。ステップ命令SP1の出力状態は“0"であ
り、トランジション処理TRS1は不成立となり、ステップ
リセット命令SR1も実行されず、ステップS1の出力状態
は“0"となる。ステップS2では、入力状態が“0"とな
り、ステップ命令SP2は実行されず、ステップフラグSF2
は“0"のままであり、ステップS2はインアクテブな状態
のままである。ステップ命令SP2の出力状態は“0"であ
り、トランジション処理TRS2は不成立となり、ステップ
リセット命令SR2も実行されず、ステップS2の出力状態
は“0"となる。エンド命令Eは入力状態が“0"であるた
め実行されない。以上の処理で、ステップフラグSF0は
“1"、SF1は“0"、SF2は“0"と設定される。これに対応
して、ACT0が母線オンの状態で実行され、ACT1、ACT2が
母線オフの状態での実行される。以上で、1スキャンC1
の実行が終了する。
スキャンC2では、スキャンC1でのステップS2の出力が
“0"であることより、ステップS0の入力状態は“0"とな
る。ステップフラグSF0が“1"であるため、ステップフ
ラグSF0は“1"のまま維持され、ステップS0はアクテブ
な状態を保持し、ステップ命令SP0は“1"を出力する。
トランジション処理TRS0は入力が“1"であり、実質的に
実行される。トランジション処理TRS0が成立していれば
“1"が出力され、トランジション処理TRS0が不成立であ
れば、“0"が出力される。第5図は、トランジション処
理TRS0が不成立の場合を想定している。トランジション
処理TRS0が不成立の場合、ステップリセット命令SR0の
入力は“0"となり、ステップリセット命令SR0は実行さ
れず、ステップS0の出力状態は“0"のままとなる。以
後、スキャンC1と同様に処理が進む。従って、ステップ
フラグSF0がはオン、ステップフラグSF1、SF2はオフの
状態が維持される。従って、処理ACT0が母線オンの状態
で実行され、処理ACT1、ACT2は母線オフの状態で実行さ
れる。
“0"であることより、ステップS0の入力状態は“0"とな
る。ステップフラグSF0が“1"であるため、ステップフ
ラグSF0は“1"のまま維持され、ステップS0はアクテブ
な状態を保持し、ステップ命令SP0は“1"を出力する。
トランジション処理TRS0は入力が“1"であり、実質的に
実行される。トランジション処理TRS0が成立していれば
“1"が出力され、トランジション処理TRS0が不成立であ
れば、“0"が出力される。第5図は、トランジション処
理TRS0が不成立の場合を想定している。トランジション
処理TRS0が不成立の場合、ステップリセット命令SR0の
入力は“0"となり、ステップリセット命令SR0は実行さ
れず、ステップS0の出力状態は“0"のままとなる。以
後、スキャンC1と同様に処理が進む。従って、ステップ
フラグSF0がはオン、ステップフラグSF1、SF2はオフの
状態が維持される。従って、処理ACT0が母線オンの状態
で実行され、処理ACT1、ACT2は母線オフの状態で実行さ
れる。
スキャンC3では、ステップS0はアクテブな状態で、ス
テップ命令SP0は“1"を出力する。第5図に示すよう
に、トランジション処理TRS0が成立すると“1"が出力さ
れる。トランジション処理TRS0の出力“1"を受け、ステ
ップリセット命令SP0が実行される。ステップリセット
命令SP0の実行により、ステップフラグSF0がリセットさ
れる。この時点で、ステップS0はインアクテブな状態に
変化する。ステップリセット命令SR0の実行により、ス
テップS0の出力状態は“1"となり、ステップS1の入力状
態も“1"となる。これにより、ステップ命令SP1が実行
され、ステップフラグSF1に“1"がセットされ、ステッ
プS1はアクテブな状態へ変化する。ステップ命令SP1の
出力状態は“0"であり、トランジション処理TRS1は不成
立となり、ステップリセット命令SR1も実行されず、ス
テップS1の出力状態は“0"となる。ステップS2は、入力
状態が“0"であるため、インアクテブな状態のままであ
る。以上の処理により、スキャンC3では、ステップS0、
S2の処理ACT0、ACT2が母線オフの状態での実行となり、
ステップS01の処理ACT1が母線オンの状態で実行され
る。
テップ命令SP0は“1"を出力する。第5図に示すよう
に、トランジション処理TRS0が成立すると“1"が出力さ
れる。トランジション処理TRS0の出力“1"を受け、ステ
ップリセット命令SP0が実行される。ステップリセット
命令SP0の実行により、ステップフラグSF0がリセットさ
れる。この時点で、ステップS0はインアクテブな状態に
変化する。ステップリセット命令SR0の実行により、ス
テップS0の出力状態は“1"となり、ステップS1の入力状
態も“1"となる。これにより、ステップ命令SP1が実行
され、ステップフラグSF1に“1"がセットされ、ステッ
プS1はアクテブな状態へ変化する。ステップ命令SP1の
出力状態は“0"であり、トランジション処理TRS1は不成
立となり、ステップリセット命令SR1も実行されず、ス
テップS1の出力状態は“0"となる。ステップS2は、入力
状態が“0"であるため、インアクテブな状態のままであ
る。以上の処理により、スキャンC3では、ステップS0、
S2の処理ACT0、ACT2が母線オフの状態での実行となり、
ステップS01の処理ACT1が母線オンの状態で実行され
る。
以上の処理で、第11図に示されるSFCプログラムのACT
0とトランジションTRS0の実行が繰返され、トランジシ
ョンTRS0が成立し、処理ACT0が母線オフの状態で実行
(リセット)され、ステップS1の処理ACT1の1回目が実
行されたのと同一の状態が実現される。
0とトランジションTRS0の実行が繰返され、トランジシ
ョンTRS0が成立し、処理ACT0が母線オフの状態で実行
(リセット)され、ステップS1の処理ACT1の1回目が実
行されたのと同一の状態が実現される。
以降、スキャンC5で、ステップS1のトランジション処
理TRS1が成立したものと仮定すると、前述と同様の処理
により、ステップS1がインアクテブとなりステップS2が
アクテブとなる。
理TRS1が成立したものと仮定すると、前述と同様の処理
により、ステップS1がインアクテブとなりステップS2が
アクテブとなる。
スキャンC9にて、ステップS2のトランジション処理TR
S1が成立した時には、ステップS2がインアクテブな状態
に変化する。その後、エンド命令にて、ステップS1のス
テップフラグSF0がセットされる。これにより、ACT0が
母線“1"の状態で実行され、ACT2が母線“0"の状態で実
行され、リセットされる。次のスキャンでは、ステップ
S0がアクテブとなり、処理が進められる。
S1が成立した時には、ステップS2がインアクテブな状態
に変化する。その後、エンド命令にて、ステップS1のス
テップフラグSF0がセットされる。これにより、ACT0が
母線“1"の状態で実行され、ACT2が母線“0"の状態で実
行され、リセットされる。次のスキャンでは、ステップ
S0がアクテブとなり、処理が進められる。
このようにしてSFCプログラムのサイクリックな実行
が可能となる。
が可能となる。
プログラムが3つのステップから構成される場合を例
に説明したが、これに限定されず、ステップSn及びステ
ップの処理ACTnを直列に接続することにより、処理ステ
ップ数を増やすことができる。
に説明したが、これに限定されず、ステップSn及びステ
ップの処理ACTnを直列に接続することにより、処理ステ
ップ数を増やすことができる。
第1、第4に示されるプログラムにおいて、ステップ
命令、ステップリセット命令、ラダーダイアグラム方式
のプログラムの実行は1ビットのデータ処理で足りる。
従って、これらの処理のために、専用のビットプロセッ
サを設けると、メインCPUの負担が軽くなり、高速スキ
ャンが可能となる。第6図はそのような、ビットプロセ
ッサを追加した場合のプログラマブルコントローラの構
成を示す。
命令、ステップリセット命令、ラダーダイアグラム方式
のプログラムの実行は1ビットのデータ処理で足りる。
従って、これらの処理のために、専用のビットプロセッ
サを設けると、メインCPUの負担が軽くなり、高速スキ
ャンが可能となる。第6図はそのような、ビットプロセ
ッサを追加した場合のプログラマブルコントローラの構
成を示す。
第6図において、ビットプロセッサ8は1ビットのデ
ータ処理を専門に行うものである。ビットプロセッサ8
にはステップ命令、ステップリセット命令、ラダーダイ
アグラム等を記憶するメモリ9が第2内部バス10を介し
て接続される。
ータ処理を専門に行うものである。ビットプロセッサ8
にはステップ命令、ステップリセット命令、ラダーダイ
アグラム等を記憶するメモリ9が第2内部バス10を介し
て接続される。
必要に応じて、ビットプロセッサ8に1ワード単位で
データ処理を行うワードプロセッサ11を接続して、協同
して動作するように構成しても良い。
データ処理を行うワードプロセッサ11を接続して、協同
して動作するように構成しても良い。
前記実施例においては、ステップ命令とステップリセ
ット命令の両方にステップフラグSFnを設定した。この
発明はこれに限定されない。例えば、前記ステップ命令
は、入力状態とステップフラグ(アドレス指定されたメ
モリエリアの内容)をオア演算処理した結果が論理“1"
の時、アドレス値をスタックメモリに保持し、前記ステ
ップリセット命令は命令語中にアドレス指定を持たず、
前記スタックメモリの内容により特定されるステップフ
ラグを論理“0"とするように構成されても良い。このよ
うに構成された実施例を第7図を参照して説明する。
ット命令の両方にステップフラグSFnを設定した。この
発明はこれに限定されない。例えば、前記ステップ命令
は、入力状態とステップフラグ(アドレス指定されたメ
モリエリアの内容)をオア演算処理した結果が論理“1"
の時、アドレス値をスタックメモリに保持し、前記ステ
ップリセット命令は命令語中にアドレス指定を持たず、
前記スタックメモリの内容により特定されるステップフ
ラグを論理“0"とするように構成されても良い。このよ
うに構成された実施例を第7図を参照して説明する。
第7図は第1図に対応しており、第1図と同一部分に
は同一符号を付し説明を省略する。第7図の特徴点は、
ステップリセット命令SRnにステップフラグSFnの指定が
ないこと、スタックメモリ(後入先出しメモリ)12が設
けられていることである。
は同一符号を付し説明を省略する。第7図の特徴点は、
ステップリセット命令SRnにステップフラグSFnの指定が
ないこと、スタックメモリ(後入先出しメモリ)12が設
けられていることである。
第7図に示されるプログラムにおいて、ステップ命令
は第8図に示される入出力論理を有する。この論理は第
3図に示されるものと同一である。さらに、ステップ命
令SPnはステップフラグSFnの論理に従い、ステップフラ
グSFnのアドレス値をスタックメモリ12にセットする機
能を有する。ステップリセット命令は入力状態が“1"の
際には、スタックメモリ12に保持されたステップフラグ
SFnのアドレスのうちで、最後にセットされたものを取
出し、そのアドレス位置の内容を論理“0"にリセットす
る。即ち、ステップフラグをリセットする。また、プロ
グラムの終了を指示するエンド命令ENDはスタックメモ
リ12に保持された全てのアドレス値をクリアする機能を
有する。
は第8図に示される入出力論理を有する。この論理は第
3図に示されるものと同一である。さらに、ステップ命
令SPnはステップフラグSFnの論理に従い、ステップフラ
グSFnのアドレス値をスタックメモリ12にセットする機
能を有する。ステップリセット命令は入力状態が“1"の
際には、スタックメモリ12に保持されたステップフラグ
SFnのアドレスのうちで、最後にセットされたものを取
出し、そのアドレス位置の内容を論理“0"にリセットす
る。即ち、ステップフラグをリセットする。また、プロ
グラムの終了を指示するエンド命令ENDはスタックメモ
リ12に保持された全てのアドレス値をクリアする機能を
有する。
第7図に示されるプログラムの実行を具体的に検討す
る。ステップフラグSFnが“0"の状態で、入力状態が
“1"となると、ステップ命令SPnにより、ステップフラ
グSFnが“1"となり、ステップフラグSFnのアドレス値が
スタックメモリ12にセットされ、出力状態は“0"とされ
る。ステップ命令SPnの出力状態が“0"のため、トラン
ジション処理TRSnは処理されずステップリセット命令SR
nも実行されない。ステップ命令SPnによりステップフラ
グSFnがオンしているので、ステップSnの処理ACTnが母
線がオンの状態と等しい状態で実行される。
る。ステップフラグSFnが“0"の状態で、入力状態が
“1"となると、ステップ命令SPnにより、ステップフラ
グSFnが“1"となり、ステップフラグSFnのアドレス値が
スタックメモリ12にセットされ、出力状態は“0"とされ
る。ステップ命令SPnの出力状態が“0"のため、トラン
ジション処理TRSnは処理されずステップリセット命令SR
nも実行されない。ステップ命令SPnによりステップフラ
グSFnがオンしているので、ステップSnの処理ACTnが母
線がオンの状態と等しい状態で実行される。
ステップフラグSFnが“1"の状態で、ステップ命令SPn
の入力状態が“0"となると、ステップフラグSFnは“1"
のままで、ステップ命令はステップフラグSFn(のアド
レス)をスタックメモリ12に保持する。出力状態は“1"
となるため、トランジション処理TRSnが実行される。ト
ランジション処理TRSnの処理の結果が“0"のときには、
ステップリセット命令SRnは実行されない。ステップSn
の処理ACTnはステップフラグSFnがオンしているので、
母線オンの状態と等しい状態で実行される。トランジシ
ョン処理TRSnの処理結果が“1"の時には、ステップリセ
ット命令SRnが実行される。ステップリセット命令SRnの
実行により、スタックメモリ12からステップフラグSFn
のアドレスが読み出され、そのアドレス位置の内容を
“0"にリセットする。これにより、リセット命令SRn自
身がステップフラグSFnを含む第1の実施例の場合と同
様にステップフラグSFnがリセットされる。ステップSn
の処理ACTnはステップフラグSFnが“0"なので、母線が
オフの状態と等しい状態で実行される。
の入力状態が“0"となると、ステップフラグSFnは“1"
のままで、ステップ命令はステップフラグSFn(のアド
レス)をスタックメモリ12に保持する。出力状態は“1"
となるため、トランジション処理TRSnが実行される。ト
ランジション処理TRSnの処理の結果が“0"のときには、
ステップリセット命令SRnは実行されない。ステップSn
の処理ACTnはステップフラグSFnがオンしているので、
母線オンの状態と等しい状態で実行される。トランジシ
ョン処理TRSnの処理結果が“1"の時には、ステップリセ
ット命令SRnが実行される。ステップリセット命令SRnの
実行により、スタックメモリ12からステップフラグSFn
のアドレスが読み出され、そのアドレス位置の内容を
“0"にリセットする。これにより、リセット命令SRn自
身がステップフラグSFnを含む第1の実施例の場合と同
様にステップフラグSFnがリセットされる。ステップSn
の処理ACTnはステップフラグSFnが“0"なので、母線が
オフの状態と等しい状態で実行される。
ステップフラグSFnが“0"の状態において、ステップ
命令SPnの入力状態が“0"となると、ステップフラグSFn
は“0"のままで、ステップ命令SPnはステップフラグの
番地をスタックメモリ12にセットすることなく、出力状
態は“0"となる。ステップSnの処理ACTnは母線がオフの
状態と等しい状態で実行される。
命令SPnの入力状態が“0"となると、ステップフラグSFn
は“0"のままで、ステップ命令SPnはステップフラグの
番地をスタックメモリ12にセットすることなく、出力状
態は“0"となる。ステップSnの処理ACTnは母線がオフの
状態と等しい状態で実行される。
トランジションTRSnが成立しなかった場合、あるい
は、トランジションTRSnの入力が“0"で、トランジショ
ンが母線オフの状態で実行された場合には、リセット命
令SRnは実行されない。このため、そのようなステップ
のステップフラグSRnのアドレス値はスタックメモリ12
にいつまでも残る。しかし、この点はプログラムの最後
に設けられたEND命令により、スタックメモリ12をクリ
アすることにより解決される。
は、トランジションTRSnの入力が“0"で、トランジショ
ンが母線オフの状態で実行された場合には、リセット命
令SRnは実行されない。このため、そのようなステップ
のステップフラグSRnのアドレス値はスタックメモリ12
にいつまでも残る。しかし、この点はプログラムの最後
に設けられたEND命令により、スタックメモリ12をクリ
アすることにより解決される。
このような、構成とすることにより、この実施例で
は、ステップリセット命令にステップフラグSRnを設け
なくても第1図に示されるプログラムと同一の処理を実
行できる。
は、ステップリセット命令にステップフラグSRnを設け
なくても第1図に示されるプログラムと同一の処理を実
行できる。
さらに、スタックメモリを用いることにより、複雑な
プログラムであっても確実に実行できる。例えば、第9
図に示されるように、a又はbの条件が成立している処
理へステップが移行するような条件分枝処理の場合、a
又はbでステップリセット処理が行われる。この場合、
ステップフラグSRnのアドレスをスタックにセットして
おけば、a、bの処理を共通化できる。また、第10図に
示されるように、aの条件成立を条件としてA、B両方
のステップを実行する並列処理の場合、cにおいて
A′、B′のフラグをリセットする必要がある。この場
合にも、スタックを用いることにより、スタックから
A′、B′のステップフラグSRnを2つ取出してリセッ
トすることにより、処理を実行できる。
プログラムであっても確実に実行できる。例えば、第9
図に示されるように、a又はbの条件が成立している処
理へステップが移行するような条件分枝処理の場合、a
又はbでステップリセット処理が行われる。この場合、
ステップフラグSRnのアドレスをスタックにセットして
おけば、a、bの処理を共通化できる。また、第10図に
示されるように、aの条件成立を条件としてA、B両方
のステップを実行する並列処理の場合、cにおいて
A′、B′のフラグをリセットする必要がある。この場
合にも、スタックを用いることにより、スタックから
A′、B′のステップフラグSRnを2つ取出してリセッ
トすることにより、処理を実行できる。
[発明の効果] この発明によれば、ラダーダイアグラム方式のプログ
ラマブルコントローラにステップ命令とステップリセッ
ト命令を追加するのみで、コントローラ本体のプログラ
ムに何等変更なくSFCプログラムを実行可能となる。
ラマブルコントローラにステップ命令とステップリセッ
ト命令を追加するのみで、コントローラ本体のプログラ
ムに何等変更なくSFCプログラムを実行可能となる。
第1図はこの発明の一実施例に係るSFC方式のプログラ
ムの記載例、第2図はこの発明の一実施例に係るプログ
ラマブルコントローラの構造を示すブロック図、第3図
は第1図のステップ命令の入/出力特性図、第4図はこ
の発明に係るプログラムの実際の記載例、第5図は第4
図に示されるプログラムをランさせた場合の、動作状況
を示すタイムチャート、第6図はこの発明に係るプログ
ラマブルコントローラの他の構成例を示すブロック図、
第7図はこの発明の第2の実施例に係るSFC方式のプロ
グラムの記載例を示す図、第8図は第7図のステップ命
令の入/出力特性と動作を示す図、第9図は条件分枝を
有するプログラムを前記実施例により実行する場合のス
テップスラグのセットとリセットの関係を示す図、第10
図は並列処理を有するプログラムを前記実施例により実
行する場合のステップスラグのセットとリセットの関係
を示す図、第11図は第5図に示されるプログラムと実質
的に同一の内容のSFCプログラム、第12図は第7図に示
されるプログラムを実行するための本体側プログラムの
動作を示すフローチャートである。 1……プログラマブルコントローラ、2……CPU、3…
…RAM、4……ROM、5……周辺回路、6……内部バス、
7……システムバス、8……ビットプロセッサ、9……
メモリ、10……第2の内部バス、11……ワードプロセッ
サ、12……スタックメモリ。
ムの記載例、第2図はこの発明の一実施例に係るプログ
ラマブルコントローラの構造を示すブロック図、第3図
は第1図のステップ命令の入/出力特性図、第4図はこ
の発明に係るプログラムの実際の記載例、第5図は第4
図に示されるプログラムをランさせた場合の、動作状況
を示すタイムチャート、第6図はこの発明に係るプログ
ラマブルコントローラの他の構成例を示すブロック図、
第7図はこの発明の第2の実施例に係るSFC方式のプロ
グラムの記載例を示す図、第8図は第7図のステップ命
令の入/出力特性と動作を示す図、第9図は条件分枝を
有するプログラムを前記実施例により実行する場合のス
テップスラグのセットとリセットの関係を示す図、第10
図は並列処理を有するプログラムを前記実施例により実
行する場合のステップスラグのセットとリセットの関係
を示す図、第11図は第5図に示されるプログラムと実質
的に同一の内容のSFCプログラム、第12図は第7図に示
されるプログラムを実行するための本体側プログラムの
動作を示すフローチャートである。 1……プログラマブルコントローラ、2……CPU、3…
…RAM、4……ROM、5……周辺回路、6……内部バス、
7……システムバス、8……ビットプロセッサ、9……
メモリ、10……第2の内部バス、11……ワードプロセッ
サ、12……スタックメモリ。
Claims (3)
- 【請求項1】ラダーダイアグラム方式のプログラムをス
キャン実行するプログラマブルコントローラにおいて 命令語中にアドレス指定を持ち、入力状態とアドレス指
定されたメモリエリアの内容をオア演算し、このオア演
算の結果を前記アドレス指定されたメモリエリアに格納
し、前記アドレス指定されたメモリエリアの演算前の内
容を出力状態とするステップ命令と、 命令語中にアドレス指定を持ち、入力状態が論理“1"の
ときに、アドレス指定されたメモリエリアの内容を理論
“0"とし、出力状態を論理“1"とするステップリセット
命令と、を内蔵し、 前記ステップ命令と前記ステップリセット命令で同一メ
モリアドレスを指定し、 前記ステップ命令と前記ステップリセット命令で第1の
ラダーダイアグラム方式のプログラムを挟み、 前記ステップ命令と前記ステップリセット命令によりア
ドレス指定されたメモリエリアの内容で、第2のラダー
ダイアグラム方式のプログラムの実行状態を制御可能な
ように構成することによりフローチャート式プログラム
を処理可能としたことを特徴とするプログラマブルコン
トローラ。 - 【請求項2】前記ステップ命令及びステップリセット命
令をビット演算プロセッサで処理することを特徴とする
請求項1記載のプログラマブルコントローラ。 - 【請求項3】ラダーダイアグラム方式のプログラムをス
キャン実行するプログラマブルコントローラにおいて、 命令語中にアドレス指定を持ち、入力状態とアドレス指
定されたメモリエリアの内容をオア演算し、このオア演
算の結果を前記アドレス指定されたメモリエリアに格納
し、前記アドレス指定されたメモリエリアの演算前の内
容を出力状態とし、前記オア演算の結果が論理“1"の
時、前記アドレス値をスタックメモリに格納するステッ
プ命令と、 命令語中にアドレス指定を持たず、入力状態が論理“1"
のとき、前記スタックメモリの内容を取出して、その内
容によりアドレス指定し、指定されたメモリエリアの内
容を論理“0"とし、出力状態を論理“1"とするステップ
リセット命令と、を内蔵し、 前記ステップ命令と前記ステップリセット命令で第1の
ラダーダイアグラム方式のプログラムを挟み、 前記ステップ命令によりアドレス指定されたメモリエリ
アの内容で、第2のラダーダイアグラム方式のプログラ
ムの実行状態を制御可能なように構成することによりフ
ローチャート式プログラムを処理可能としたことを特徴
とするプログラマブルコントローラ。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63106252A JP2585708B2 (ja) | 1988-04-28 | 1988-04-28 | プログラマブルコントローラ |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63106252A JP2585708B2 (ja) | 1988-04-28 | 1988-04-28 | プログラマブルコントローラ |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH01276308A JPH01276308A (ja) | 1989-11-06 |
| JP2585708B2 true JP2585708B2 (ja) | 1997-02-26 |
Family
ID=14428910
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63106252A Expired - Lifetime JP2585708B2 (ja) | 1988-04-28 | 1988-04-28 | プログラマブルコントローラ |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2585708B2 (ja) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2522564B2 (ja) * | 1989-11-15 | 1996-08-07 | 松下電工株式会社 | プログラマブルコントロ―ラ |
| JP2526686B2 (ja) * | 1989-12-26 | 1996-08-21 | 三菱電機株式会社 | プログラマブルコントロ―ラの制御プログラムにおけるプログラム内容の修正方法 |
-
1988
- 1988-04-28 JP JP63106252A patent/JP2585708B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPH01276308A (ja) | 1989-11-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5611061A (en) | Method and processor for reliably processing interrupt demands in a pipeline processor | |
| JPS6239780B2 (ja) | ||
| US5504869A (en) | High speed processing system capable of executing strings of instructions in order without waiting completion of previous memory access instruction | |
| JP2585708B2 (ja) | プログラマブルコントローラ | |
| JP2752076B2 (ja) | プログラマブル・コントローラ | |
| JPH0214730B2 (ja) | ||
| JP2518029B2 (ja) | 入出力制御方式 | |
| JP3074809B2 (ja) | プログラマブル・コントローラ | |
| JPH082727Y2 (ja) | プログラマブルシ−ケンサ | |
| JPH0683639A (ja) | レジスタ装置 | |
| JPH03288906A (ja) | Pcの命令実行方式 | |
| JPH06324861A (ja) | Cpu制御システム及び制御方法 | |
| KR930005707B1 (ko) | Plc의 명령어 처리방법 | |
| JPH0731527B2 (ja) | プログラマブルコントロ−ラ | |
| JPS61103245A (ja) | 機械語命令体系の拡張方式 | |
| JPH0883188A (ja) | マルチタスク処理を行う計算機 | |
| JPS63168729A (ja) | マイクロプロセツサ | |
| JPH05100720A (ja) | プログラムの管理装置 | |
| JPH0194437A (ja) | 情報処理装置 | |
| JPH01234957A (ja) | Dma制御方法及び装置 | |
| JPS6227830A (ja) | 割込み制御方式 | |
| JPH0119168B2 (ja) | ||
| JPH0654471B2 (ja) | 並列処理プロセッサ | |
| JPH04232506A (ja) | ロボットの制御装置 | |
| JPS6367604A (ja) | プロセス信号の変換装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071205 Year of fee payment: 11 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081205 Year of fee payment: 12 |
|
| EXPY | Cancellation because of completion of term | ||
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081205 Year of fee payment: 12 |