JP4349231B2 - プログラマブルコントローラ - Google Patents

プログラマブルコントローラ Download PDF

Info

Publication number
JP4349231B2
JP4349231B2 JP2004222816A JP2004222816A JP4349231B2 JP 4349231 B2 JP4349231 B2 JP 4349231B2 JP 2004222816 A JP2004222816 A JP 2004222816A JP 2004222816 A JP2004222816 A JP 2004222816A JP 4349231 B2 JP4349231 B2 JP 4349231B2
Authority
JP
Japan
Prior art keywords
input
input signal
group
diagnostic pulse
signal
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
Application number
JP2004222816A
Other languages
English (en)
Other versions
JP2006040195A (ja
Inventor
聖 加藤
力 荒木
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.)
JTEKT Corp
Original Assignee
JTEKT 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 JTEKT Corp filed Critical JTEKT Corp
Priority to JP2004222816A priority Critical patent/JP4349231B2/ja
Priority to CN200580025214.3A priority patent/CN100470419C/zh
Priority to US11/658,612 priority patent/US8072889B2/en
Priority to EP05767004A priority patent/EP1785791B1/en
Priority to PCT/JP2005/013904 priority patent/WO2006011583A1/ja
Publication of JP2006040195A publication Critical patent/JP2006040195A/ja
Application granted granted Critical
Publication of JP4349231B2 publication Critical patent/JP4349231B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B9/00Safety arrangements
    • G05B9/02Safety arrangements electric
    • G05B9/03Safety arrangements electric with multiple-channel loop, i.e. redundant control systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/058Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/11Plc I-O input output
    • G05B2219/1184Test ability of input for on, off capability
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/11Plc I-O input output
    • G05B2219/1186Redundant inputs parallel, outputs series, load safe switch off, AND condition
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/11Plc I-O input output
    • G05B2219/1189Duplicated I-O also triple
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/11Plc I-O input output
    • G05B2219/1195Critical I-O monitored by safety module connected to plc, other I-Os by plc self
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/14Plc safety
    • G05B2219/14007Plc as standalone for safety control of machine
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/14Plc safety
    • G05B2219/14054Self test
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/14Plc safety
    • G05B2219/14116Safe, emergency shutdown, esd of system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/14Plc safety
    • G05B2219/14126Redundant I-O points, two sensors, actuators for same point
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24173One sensor, two I-O channels each for different processor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24184Redundant I-O, software comparison of both channels
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24186Redundant processors are synchronised
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24196Plausibility check in channels for correct sequence or result

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Safety Devices In Control Systems (AREA)
  • Programmable Controllers (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Description

本発明は、ロボットや工作機械やそれらの周辺機器の動作に対するシーケンス制御に関わり、特に、プログラマブルコントローラ(PLC)に入力された入力信号に対する処理の確実性や安全性を高度に確保するために大いに有用なものである。
上記の様なシーケンス制御をプログラマブルコントローラで実行するシステムがある。近年では、システムの異常や緊急状態を正確に検出したり、システムを自動的に緊急安全停止させたりするためのシステムの安全管理に特化した独立構成のPLC(いわゆる安全PLC)が普及しつつある。下記の特許文献1、2には、この様ないわゆる安全PLCに関連した技術が例示されている。
他の技術として、図14に、従来のプログラマブルコントローラに利用されている公知の入力回路201の回路図(平常時)を例示する。この入力回路201は、実際に使用される入力回路を部分的に簡潔に示したものである。本回路では、非常停止スイッチであるスイッチSW1、SW0は二重化されており常閉接点であり、フォトカプラ10、20、30、40は常に電流が流れている動作状態で用いられている。スイッチSW1、SW0が開状態となると、フォトカプラ10、20を流れる電流、及び、フォトカプラ30、40を流れる電流が、それぞれ何れも遮断される。このように、スイッチSW1からの入力信号を入力して処理する回路系統(図示する入力回路201の上半分の系を以下、A系と言うことがある。)と、スイッチSW0からの入力信号を入力して処理する回路系統(図示する入力回路201の下半分の系を以下、B系と言うことがある。)とが二重に構成されている。
そして、この二重構成により、A系から検出されたスイッチSW1の開閉状態を示す入力信号と、B系から検出されたスイッチSW0の開閉状態を示す入力信号とが、一致した場合には、正常な入力信号として取扱い、その後の論理処理が実行されて出力機器が制御される。たとえば、非常停止スイッチが押下されて、接点が開状態になれば、そのスイッチから出力される2つの入力信号は共に開状態を示す信号となり一致するので、真正な入力信号として、全ての出力機器の動作を停止する非常停止処理が実行される。
これに対して、2つの系のスイッチSW1とスイッチSW0からの入力信号が一致しない場合には、異常が発生したとして、非常停止、すなわち、全ての出力機器の動作を瞬時に緊急停止させるようにしている。
一方、入力回路やその制御装置は、常に、自己診断されている。その方法を以下に示す。
図14において、符号a,b,c,dはそれぞれインバータ(論理反転器)を示している。図示する安全管理を司る図略のA系制御用のマイコンから、インバータbに対して診断パルスOA(図中の信号L)が出力されると、インバータbの反転作用により、フォトカプラ40の診断パルス入力端子40aの電位は上がる。これにより、フォトカプラ40が内蔵するLEDの発光は、パルス(信号L)の期間だけ一時的に中断されるので、フォトカプラ30を通っていた平常電流in は一旦遮断される。したがって、インバータcを介してもう片方の図略のB系制御用のマイコンに入力される診断結果(診断パルスOAに対する応答信号IB)は、一時的に1から0に変位する。
この関係を図15−Aに示す。即ち、本図15−Aは、端子P,Q間が短絡しておらず、かつ、スイッチSW1,SW0が何れも閉じている時に、上記の診断パルスOA(図中の信号L)が出力された際の、診断パルスOAと応答信号IBとの関係を示している。逆にB系制御用のマイコンから診断パルスOBを同様に発信した際にも、同様の対称的な関係が成り立つ。この診断パルスOBと前述の図14の応答信号IAとの関係を図15−Bに示す。これらの関係は、回路の対称性からも容易に理解することができる。
例えばこの様な、診断パルスの発信側とその診断パルスに対する応答信号の受信側とが相異なるコンピュータで構成された例えば上記の様な診断を、以下、クロス診断と言う。ただし、この様なクロス診断において、受信側で受信された上記の応答信号を即座に診断パルス発信側から参照可能とする様な通信手段や診断結果共有手段をマイコン間に設けても良い。
この様なクロス診断を行うことにより、各端子(O,P,Q,R)間の導通状態や回路の動作状態を常時相補的に協調しながら監視することができ、入力回路の二重化とその定常的な監視が行われる。また、診断パルスを異系統間で互いにクロスさせることにより、相手方系統の制御用マイコンの正常動作を常時監視する効果も同時に得られる。
従来装置においては、以上の様にして、スイッチ開閉信号の伝達線路やスイッチ自身等を図14の様に二重化することによって入力回路201が二重化され、これによってシステムの安全性が確保されている。
特開2004−46348 特開2002−358106
しかしながら、図16に示す様に入力回路201の二重化された同一入力機器に対する入力端子P,Q間が短絡すると、A系とB系のフォトカプラが直列接続されることになり、図中の短絡電流is が生じる。このため、各フォトカプラ10,20,30,40には、スイッチSW1,SW0の開閉状態に係わらず、電流が常時流れ続けることになる。したがって、非常停止スイッチSW1,SW0が開状態にされても、上記のスイッチ開閉信号(IA,IB)は何れも閉状態を示したまま変化しない。即ち、双方共に、常時1のままに据え置かれてしまう。したがって、この様な短絡による異常は、上述した二重化された応答信号IA,IB間の不一致を監視する周知の不一致検出手段を用いても、検出されることはない。
なお、異なる入力機器に対する端子間で短絡が生じた場合には、二重化されたスイッチが開状態となると、短絡していない端子の系の入力信号は、開状態となり、他方の系は閉状態を持続するが、二重化信号が不一致と判断されて、直ちに、非常停止処理が動作することになり、問題は生じない。
一方、上記の短絡が発生した後に、非常停止スイッチSW1,SW0が開状態となり、その後に、上記したクロス診断が実行される場合について説明する。実際には、図14の様な入力回路201が管理対象とすべき装置や周辺機器の数だけ必要となるので、図14の様な入力回路201は多数並列に配置される。この時、上記のA系制御用のマイコンとB系制御用のマイコンを中心として構成される従来の安全PLCでは、この様にして多数並列に配置された入力回路の各部の各入力端子の状態をそれぞれ周期的に診断パルスを各端子毎に出力して、入力信号を読むという処理を巡回して実行することで、システムの安全性を常時監視する。
この場合には、回路が短絡しているので、短絡している他の系の回路の電流も診断パルスにより遮断されることになり、この現象を入力信号のレベル変化で検出することができる。したがって、不一致検出手段が有効に作用しない場合であっても、この様な巡回診断を常時実施していれば、この巡回診断に基づいて前述の短絡故障を検出することは可能ではある。
しかしながら、この巡回診断は各端子に対してシーケンシャルに実行されるので、この巡回診断を実行する際の診断周期は、その診断対象の数に比例する。このため、後から図6などを用いて例示的に説明する様に、非常に長くなりがちであり、よって、上記の様な短絡などの異常を検出するまでに必要とされる所要時間は、十分に短くできるとは必ずしも言えないのが現状である。
また、巡回診断の診断周期は入力回路の入力端子数に比例するため、この様な問題は、システム規模が大きくなるに従って、今後ますます表面化又は顕在化していくものと思われる。
本発明は、上記の課題を解決するために成されたものであり、その目的は、故障発見をより確実に行い、非常停止をより確実かつ迅速に行えるようにすることである。
上記の課題を解決するためには、以下の手段が有効である。
即ち、本発明の第1の手段は、複数の外部入力機器とそれらの外部入力機器から入力される入力信号群を処理する処理装置が複数の系統に多重化され、全ての系統の入力信号群が一致した時に真正な入力信号とし、不一致の場合には異常停止処理を行うようにしたプログラマブルコントローラにおいて、一の系統の処理装置に、他の系統の処理装置に対して一の系統に固有のタイミングで診断パルス群をパラレル出力する診断パルス出力手段と、他の系統の処理装置の診断パルス出力手段から出力される診断パルス群を入力してそれらのパルス期間だけ入力信号群の伝搬を遮断するチェック手段と、自己の系統の診断パルス出力手段からの診断パルスの出力に対応する入力信号群(応答パターン)の信号(応答信号)が変化した場合には、異常停止処理を行う異常判定手段とを備えることである。
本発明における多重化の数は任意である。一の系統から他の系統に対して、診断パルスをパラレルで出力して、その他の系統の入力信号群の伝搬をパルス期間だけ遮断して、診断パルスを出力した自己の系統の入力信号群の状態を判定するのが、本件発明の特徴である。故障がなければ、系統は独立しているので、診断パルスを入力していない自己の系統の入力信号群は、診断パルスの影響を受けない。しかし、端子間にある種の短絡が発生していると、回路が形成され、他の系統に入力された診断パルスの影響を受けて、自己の系統の入力信号群の信号が変化する。このことにより、瞬時に、故障を発見して、非常停止処理を実行することができる。
なお、入力機器は特に限定されないが、一般的には、スイッチやリレーなどの接点を想定している。また、通常は、これらの接点は、常閉接点として用いられることが多い。この時、入力回路は常に電流が供給された状態で用いられ、スイッチが開状態となると回路の電流が遮断され、この変化が意味ある入力信号とされる。
また、本発明の第2の手段は、それぞれが二重に構成された外部入力機器群から出力される第1入力信号群を入力する第1入力端子群と、その第1入力端子に入力される第1入力信号群を処理する第1信号処理装置と、外部入力機器群から出力される第2入力信号群を入力する第2入力端子群と、その第2入力端子群に入力される第2入力信号群を処理する第2信号処理装置とで、二重に構成され、入力信号群の一要素である第1入力信号と、その信号と一対を成す第2入力信号とが一致した時に真正な入力信号とし、不一の場合には異常停止処理を行うようにしたプログラマブルコントローラにおいて、第1信号処理装置に、第2信号処理装置に対して第1診断パルス群をパラレル出力する第1診断パルス出力手段と、第2信号処理装置から出力される第2診断パルス群をパラレル入力してそれらのパルス期間だけ第1入力信号群の伝搬を遮断する第1チェック手段と、第1診断パルス出力手段からの第1診断パルス群の出力に対応して第1入力信号群が変化した場合には、異常と判定して異常停止処理をする第1異常判定手段とを備え、かつ、第2信号処理装置には、第1診断パルス群の出力とは異なるタイミングで、第1チェック手段に第2診断パルス群をパラレル出力する第2診断パルス出力手段と、第1診断パルス出力手段から出力される第1診断パルス群をパラレル入力してそれらのパルス期間だけ第2入力信号群の伝搬を遮断する第2チェック手段と、第2診断パルス出力手段からの第2診断パルス群の出力に対応して第2入力信号群が変化した場合には、異常と判定して異常停止処理をする第2異常判定手段とを備えることである。
この発明は、多重化数を2として構成したものである。各系統は対称的な回路構成をしており、請求項1の発明と同様に、診断パルスは他の系統に対して出力するのであるが、診断パルスをパラレルで出力した系統における入力信号群の状態を検出することで、異常判定が実施される。上記のような短絡故障が発生している状態で、入力機器であるスイッチが開状態となると、診断パルスを入力して、回路電流がパルス期間だけ遮断されると、他の回路の電流も遮断されることになる。診断パルスを入力していない他の回路からの入力信号群の状態を判定することで、異常状態を検出することができる。この検出は、診断パルスを入力端子群に対してパラレルで出力していることから、この出力タイミングから入力信号群の処理時間の遅延の後に、異常診断を完了することが可能となる。よって、非常停止スイッチが閉状態から開状態に変化してから遅延なく、非常停止を実施することが可能となる。ただし、厳密には、この時の遅延時間は、診断パルスの出力のサイクルタイムだけの時間、即ち、例えば、18msec程度となる。
また、本発明の第3の手段は、上記の第1の手段において、上記の異常判定手段によって、所定回数連続して入力信号群の同一入力端子からの信号が変化した場合に異常と判定して異常停止をすることである。
所定回数連続して判定するのは、雑音対策であり、所定回数連続して同一信号レベルが得られれば真正な値とし、得られなければ雑音と判断して真正な値としないものである。したがって、この回数は多いと耐雑音性が向上するが、非常停止に至るまでの時間は長くなる。この観点から、所定回数は適切に設定される。例えば、10回程度である。
また、本発明の第4の手段は、上記の第2の手段において、上記の第1異常判定手段を、所定回数連続して第1入力信号群の同一入力端子からの信号が変化した場合に異常と判定して異常停止をする手段とし、上記の第2異常判定手段を、所定回数連続して第2入力信号群の同一入力端子からの信号が変化した場合に異常と判定して異常停止をする手段とすることである。
なお、上記の所定回数については、上記の本発明の第3の手段と同じことが言える。
また、本発明の第5の手段は、上記の第1または第3の手段において、一の系統の信号処理装置に、他の系統の処理装置に対して入力端子毎にシリアルにシリアル診断パルスを出力するシリアル診断パルス出力手段と、他の系統の処理装置のシリアルパルス出力手段から入力端子毎にシリアルに出力されるシリアル診断パルスを入力して、そのパルス期間に対応して入力信号が変化しない場合に異常と判定して異常停止処理をするパルスチェック手段を備えることである。
また、本発明の第6の手段は、上記の第2または第4の何れか1つの手段において、上記の第1信号処理装置に、シリアルに第1シリアル診断パルスを入力端子毎の第2チエック手段に出力する第1シリアル診断パルス出力手段と、第2信号処理装置から入力端子毎の第1チェック手段にシリアルに出力された第2シリアル診断パルスを入力してそのパルス期間に対応して第1入力信号が変化しない場合に異常と判定して異常停止処理をする第1パルスチェック手段とを設け、かつ、上記の第2信号処理装置には、シリアルに第2シリアル診断パルスを入力端子毎の第1チエック手段に出力する第2シリアル診断パルス出力手段と、第1シリアル診断パルス出力手段から入力端子毎の第2チェック手段にシリアルに出力された第1シリアル診断パルスを入力してそのパルス期間に対応して第2入力信号が変化しない場合に異常と判定して異常停止処理をする第2パルスチェック手段とを設けることである。
また、本発明の第7の手段は、上記の第1、第3、または第5の何れか1つの手段において、入力信号を入力するフォトカプラと、そのフォトカプラの発光ダイオードに直列に接続されたフォトトランジスタと診断パルスを入力しフォトトランジスタに光信号を発する発光ダイオードとから成るフォトカプラとから上記のチェック手段を構成することである。
なお、信号を処理するフォトカプラ等の回路は、常に電流が供給された状態で用いられ、スイッチが開状態となると、回路の電流が遮断され、この変化が意味ある入力信号とされる。
また、本発明の第8の手段は、上記の第2、第4、または第6の何れか1つの手段において、上記の第1入力信号を入力するフォトカプラと、そのフォトカプラの発光ダイオードに直列に接続されたフォトトランジスタと第2診断パルスを入力しフォトトランジスタに光信号を発する発光ダイオードとから成るフォトカプラとから上記の第1チェック手段を構成し、かつ、上記の第2入力信号を入力するフォトカプラと、そのフォトカプラの発光ダイオードに直列に接続されたフォトトランジスタと第1診断パルスを入力しフォトトランジスタに光信号を発する発光ダイオードとから成るフォトカプラとから上記の第2チェック手段を構成することである。
以上の本発明の手段により、前記の課題を効果的、或いは合理的に解決することができる。
以上の本発明の手段によって得られる効果は以下の通りである。
即ち、本発明の第1の手段によれば、各系統間で相互に相異なる固有のタイミングで診断パルス群がパラレル出力されるので、この時、並列に多重化された各系統毎に保証されるべき個々の系統の独立性が短絡などによって破られていれば、本来何ら変化すべきでない自系統の入力信号群の中の少なくとも1信号が変化し、かつ、その変化が自系統において検出される。このため、本発明の第1の手段によれば、少なくとも自系統の独立性が破れていることを検出することができ、よって、多重化された各系統毎に保証されるべき個々の系統の独立性が短絡などによって破られた際には、上記の異常停止処理が実施されて、その結果、短絡などによる事故を未然に防止することができる。
以下、上記の本発明の第2の手段における第1信号処理装置が安全管理を司る系統をA系と言い、また、もう一方の第2信号処理装置が安全管理を司る系統をB系と言うことがある。
本発明の第2の手段によれば、A系とB系との間で相互に相異なる固有のタイミングで第1及び第2の各診断パルス群がパラレル出力されるので、この時、並列に二重化された各系統(即ち、A系とB系)毎に保証されるべき個々の系統の独立性が短絡などによって破られていれば、入力条件によっては、本来何ら変化すべきでない自系統の入力信号群の中の少なくとも1信号が変化することがあり、この時、その変化は自系統において検出される。このため、本発明の第2の手段によれば、第1又は第2の各異常判定手段に基づいて、自系統の独立性が破れていることを検出することができ、この場合、二重化された各系統毎に保証されるべき個々の系統の独立性が短絡などによって破られた際には、上記の異常停止処理が実施されて、その結果、短絡などによる事故を未然に防止することができる。
系統の独立性が破れている場合としては、例えば前述の図16に例示した短絡の例を上げることができる。この場合、端子PQ間に短絡があり、その短絡電流is は、A系の回路(フォトカプラ10,20)とB系の回路(フォトカプラ30,40)とを直列に通るので、この点で、系Aと系Bとの間の独立性は破られている。
そして、この時、スイッチSW1,SW0が共に開いている条件下では、その異常または緊急な状態は、図1−A又は図1−Bに示す診断パルス発信時の応答パターンによって検出することができる。即ち、図1−A又は図1−Bに例示される短絡故障の検出作用は、上記の本発明の作用を利用した事例であると言うことができる。
また、本発明の第3或いは第4の手段によれば、上記の入力信号群の中の同一入力端子からの信号か所定回数連続して変化した場合に、それが異常であると判定されるので、現場に入力信号に影響を与え得るノイズが多い場合にも、それらのノイズに影響されない安定した安全管理を実現することができる。この様な制御の安定化に関する対策は、ノイズを発生する動力機器を多用する現場において特に有効となる。
上記の本発明の第1乃至第4の何れか1つの手段によれば、個々の系統間の独立性を検証することができる。しかし、これらの検証(診断)は、個々の系統内で起る個々の回路間での不正な干渉や短絡などの故障までをも検証(診断)できるものではない。
しかしながら、本発明の第5又は第6の手段によれば、各入力端子毎にシリアルに上記のシリアル診断パルスが出力されるので、これにより、個々の系統内で起る個々の回路間での不正な干渉や短絡などの故障までをも検証(診断)することができる。
また、本発明の第7又は第8の手段によれば、診断を実施する際の回路のスイッチング動作や回路遮断検出動作が、フォトカプラによって実行される。これらの信号は所定の波長の光によって伝播されるので、以下の利点を得ることができる。
(1)現場環境におけるノイズが直接的に拾われ難い形態で、上記の回路のスイッチング動作や回路遮断検出動作を安定的に実現することができる。
(2)診断を実行する側の回路群と、診断される側の回路群との間のインターフェイスを光インターフェイスのみに限定することができる。これにより、双方の回路群の独立性が高まるので、例えば電源回路などの回路設計を個別に独立させて実施することが容易となる。
以下、本発明を具体的な実施例に基づいて説明する。
ただし、本発明の実施形態は、以下に示す個々の実施例に限定されるものではない。
図2は、本実施例1のプログラマブルコントローラの入力回路200の回路図である。入力端子O,Pはこの2端子で第1入力端子を構成している。また、同様に入力端子Q,Rは、第2入力端子を構成している。スイッチSW1,SW0は、手動の緊急停止ボタンを二重化構成にしたものであり、その緊急停止ボタンが押されると、スイッチSW1,SW0は双方ともに同時に開く。即ち、緊急停止ボタンが押されると、入力端子O,Q間、及び入力端子P,R間は何れも電気的な接続が絶たれる。この緊急停止ボタンは、外部入力機器を代表するものであって、実際には、その他にも図略の多数の外部入力機器が、この緊急停止ボタンに対して並列に、この緊急停止ボタンと同様に配置、接続されている。外部入力機器は、任意で良く、例えばスイッチ、リミットスイッチ、リレー、センサーなどの各種の接点を接続することができる。
ただし、装置の誤動作などによって現場環境下における安全性などが損なわれる恐れの少ない装置や、その恐れがない外部入力機器については、必ずしも入力回路を二重化する必要はない。
以下、各外部入力機器に対応する各入力回路がそれぞれ何れも二重化されている場合について説明する。
図2の入力端子Oは+24Vの直流電源端子になっている。また、入力端子Rはグランドレベル(±0V)に維持されている。そして、図2のスイッチSW1は平常時には常に閉じているので、平常時には入力端子O,P間には常時安定した24Vの直流電圧が印加されている。同様に、スイッチSW0も平常時には常に閉じているので、平常時には入力端子Q,R間にも常時安定した24Vの直流電圧が印加されている。
一方、各フォトカプラにおける光インターフェイスを境として、その境の右側(マイコン100A、マイコン100B側)は、何れの回路も5V電源系に構成されている。即ち、本図2中の電圧VB ,VA は何れも+5Vに設定されている。
図2のフォトカプラ10が備えるLEDからフォトカプラ20が備える光トランジスタに向って流れる電流は、平常時には常に流れている。これは、フォトカプラ20が備えるLEDに、平常時には常に電流を流しているためである。同様に、図2のフォトカプラ30が備えるLEDからフォトカプラ40が備える光トランジスタに向って流れる電流は、平常時には常に流れている。これは、フォトカプラ40が備えるLEDに、平常時には常に電流を流しているためである。
上記の図略の多数の外部入力機器は、上記の緊急停止ボタンと同様に上記の緊急停止ボタンと並列に接続されるので、上記の第1入力端子は群を成す。以下、その群を第1入力端子群と言う。また、上記の第2入力端子を含む第2入力端子群についても同様に定義する。各外部入力機器から出力され、上記の第1入力端子群に入力される入力信号を以下第1入力信号群と言う。また、各外部入力機器から出力され、上記の第2入力端子群に入力される入力信号を以下第2入力信号群と言う。
図2の入力回路200は、第1入力端子(O,P)と第1信号処理装置1000Aとを有し、これらによって、上半分の系統を構成している。以下、この系統をA系と言う。また、第2入力端子(Q,R)と第2信号処理装置1000Bとを有し、これらによって、下半分の系統を構成している。以下、この系統をB系と言う。
A系の安全管理を司るA系制御用のマイコン100Aの入力部には論理反転器(インバータa)が配設されている。したがって、フォトカプラ10から出力され,インバータaを介してマイコン100Aに入力される信号は、インバータaの前後でH/L(即ち、1/0)が反転する。その他のインバータb,c,dについても、同様の反転作用を奏する。
マイコン100Aの出力部には、第1診断パルス出力手段110Aが配置されている。この第1診断パルス出力手段110Aは、フォトカプラ40に対するのと同様に、並列接続されている他の外部入力機器の図略のフォトカプラに対しても、同時に診断パルスをパラレル出力することができる。勿論、従来装置と同様に、個々の外部入力機器に対して順次シリアルに個別に診断パルスを出力することもできる。
一方、マイコン100Bは、B系の安全管理を司るB系制御用のマイコンであり、フォトカプラ50を中心として構成された直流電源診断用の診断回路が付加されている点以外は、上記のマイコン100Aと同様に、上記のマイコン100Aと対称的に構成、配置されている。
例えば、マイコン100Bの出力部には、第2診断パルス出力手段110Bが配設されており、この第2診断パルス出力手段110Bは、フォトカプラ20に対するのと同様に、並列接続されている他の外部入力機器に接続された図略のフォトカプラに対しても、同時に診断パルスをパラレル出力することができる。勿論、従来装置と同様に、それらの個々の外部入力機器に対応するフォトカプラ(チェック手段)に対して順次個別に診断パルスをシリアル出力することもできる。
フォトカプラ10とフォトカプラ20は、本発明の第1チェック手段に相当する部分を構成している。この様なフォトカプラの対は、各外部入力機器に対応するA系の個々の入力回路中にそれぞれ配置されるので、これにより、上記の第1入力信号群の伝播を一時的に遮断することができる。また、同様にフォトカプラ30とフォトカプラ40は、本発明の第2チェック手段に相当する部分を構成している。即ち、これにより、上記の第2入力信号群の伝播を一時的に遮断することができる。
即ち、この遮断を制御するのが上記の診断パルスであり、上記の様にパラレルに(同時に)発信すれば、第1診断パルス出力手段110Aにより第1入力信号を、また、第2診断パルス出力手段110Bによれば第2入力信号を、何れの場合もそれぞれ同時に遮断することができる。
図3−Aに、上記の各マイコン(100A,100B)の動作に係わるタイムチャートを例示する。このマイコン100A,100Bの基本とする制御周期ΔTは、18msecに設定されている。図示する時間は、この制御周期の開始時刻を基準とした制御周期内の時刻tを表している。例えば、図示するクロス診断は、制御周期内の時刻tが13.5msecから15.5msecの間の一部の時間帯で実行される。このクロス診断では、両方のマイコン100A,100Bが用いられる。
また、制御周期内の時刻が15.5msecから16.5msecの間の一部の時間帯で実行される自己診断Aでは、マイコン100Aだけが用いられる。また、制御周期内の時刻tが16.5msecから17.5msecの間の一部の時間帯で実行される自己診断Bでは、マイコン100Bだけが用いられる。
〔クロス診断〕
図3−Bに、診断パルスに対応する応答パターン(各応答信号IA(m),IB(m)の入力パターン)を例示する。ただし、ここで、自然数mは各外部入力機器に連番で付けた通し番号であり、以下、本実施例1では、mの最大値は24であるものと仮定する。
自己診断Bでは、B系のマイコン100Bが有する第2診断パルス出力手段110Bから、上記の第1チェック手段に対してパラレルに出力される診断パルスOB(m)(1≦m≦24)に基づいて、A系のマイコン100Aに入力される応答信号IA(m)(1≦m≦24)は変化するはずであるが、この時、入力回路200におけるA系とB系との独立性が確保、維持されていれば、先に図14、図15−Bを用いて既に考察した様に、B系のマイコン100Bに入力される応答信号IB(m)(1≦m≦24)は何ら変化しないはずである。
したがって、図3−Bに例示される例外信号が検出された場合には、先に図1−Bを使って言及した様な、異常な事態が発生しているものと考えられる。
以下、この様な異常を検出するために、マイコン100A,100Bにて実行すべき制御手順について、詳細に例示する。
図4に、マイコン100Aが実行するクロス診断(A系)のフローチャートを例示する。このクロス診断は、本発明の第6の手段を具現するもので、これにより、図3−Aのクロス診断が実現される。即ち、本図中の診断パルスOA(m)は、上記の通り、m番目の外部入力機器のA系の入力回路を診断するための診断パルスであり、上記の第2チェック手段に対して出力される。この出力は、本図4のクロス診断(A系)では、各外部入力機器に対してシリアルに実施される。プログラム700は、次の図5のクロス診断(B系)を実行するプログラム800と相似で、対称的かつ相補的に構成されており、このプログラム700とプログラム800によって、図3−Aのクロス診断が実現される。
このプログラム700では、まず最初に、ステップ710で、制御変数の初期化を行う。制御変数mは、診断すべき外部入力機器の通し番号を常時指している。また、制御変数nは、同一の外部入力機器の入力回路(A系)に対して繰り返される同一の診断操作の回数を指している。この様な繰り返しを行う理由は、前述の本発明の第4の手段を実現するためである。
次のステップ720では、タイマー割り込み待ちをする。このタイミングは、図3−Aに示した様に、t=13.5[msec]のタイミングで良い。即ち、このタイミングでステップ730のサブルーチンコールが実行されて、これにより、図9の入力信号のサンプリング処理が開始される。この入力信号のサンプリング処理は、入力回路200に入力される信号(第1入力信号群及び第2入力信号群)を所定の統計操作により確定するためのものである。この統計操作については、後からその処理手順を具体的に詳しく説明するが、この統計操作はノイズ等の主に外乱に対する対策のために行うものである。しかし、その効果は必ずしも外乱対策だけには限定されない。
マイコン100B側に保持される応答信号IB(i)は、マイコン100A側から両マイコン間のバスまたは共有メモリなどを介して随時参照することが可能である。そこで、ステップ740では、マイコン100Aに入力された応答信号IA(i)(1≦i≦24)をそれぞれ全件(24ビット)所定の退避領域に保存し、更に、マイコン100Bに入力された応答信号IB(i)(1≦i≦24)についても、それぞれ全件(24ビット)所定の退避領域に保存する。
このタイミングでは、先に診断パルスOA(i),診断パルスOB(i)(1≦i≦24)が発行されていないので、後のステップ780では、応答信号IA(i)(1≦i≦24)が全ビット1であることが確認できれば、これらの入力ビット(第1入力信号群)については正常であると判定することができる。また、第2入力信号群(応答信号IB(i))についても同様である。
ステップ750では、m番目の外部入力機器のB系のチェック手段に対して、診断パルスOA(m)を出力する。本プログラム700と相似かつ対称的に構成された図5のプログラム800においては、本ステップ750に対応するステップ850において、m番目の外部入力機器のA系のチェック手段に対して診断パルスOB(m)が、略同時に出力されるので、この診断パルスの交差関係に基づいて前述のクロス診断が実現される。ただし、厳密には後述の通り相互に排他的なタイミングで、各診断パルスOA(m),OB(m)が出力される。
ステップ760では、上記のステップ740と同様の処理を実行する。ただし、勿論、入力データの退避領域は、別に設ける。これらの退避領域にそれぞれ蓄積された100回分の診断データに基づいて、ステップ780の異常判定を実施することができる。
なお、ステップ740からステップ760までの3つのステップで構成される一連の処理αは、後述の図5のステップ840からステップ860までの3つのステップで構成される一連の処理βとは、タイミングをずらして相互に排他的に実行する。この排他制御を実行するための同期は、マイコン100Aとマイコン100Bとの間で、順次相互に割り込みを入れあって実現しても良い。
また、ステップ770〜ステップ774は、上記の入力データの保存処理を100回繰り返し行うための制御を実現するためのステップである。即ち、この繰り返し制御は、本発明の第4の手段を具現するものである。
ステップ780では、m番目の外部入力機器のA系の入力回路に異常がないかを判定する。ここで、上記の診断データに基づいて、異常が検出された場合には、ステップ785にて緊急安全停止指令発行のサブルーチンをコールして本プログラム700の全処理を終了し、呼出元に制御を戻す。
ステップ790〜ステップ794は、合計24台接続されている外部入力機器に対する巡回処理を実現するための繰り返し制御を実行するものである。
図5のプログラム800においても、上記のプログラム700と同様に、B系に関する同等の処理を並列に実行する。そして、この様にして、診断パルスを異系統間で相互にクロスさせること(即ち、前述の処理α,βを相互に排他制御しながら交互に実行すること)により、相手方系統の制御用マイコンの正常動作を常時監視する効果も同時に得ることができる。
図3−Aからも判る様に、図4、図5のステップ720やステップ820の割り込み待ちが解除される基本的な制御周期は、ΔT=18msecである。したがって、図4、図5にそれぞれ図示する各巡回点(a)をその巡回制御が通過する周期も、同様に18msecとなる。また、1台の外部入力機器に関するクロス診断は、上記の通り連続100回実行されるので、図4、図5にそれぞれ図示する各巡回点(b)をその巡回制御が通過する周期は、100ΔT=1800msecとなる。また、本実施例では外部入力機器が合計24台接続されるので、図4、図5にそれぞれ図示する各巡回点(c)をその巡回制御が通過する周期は、24×100ΔT=43.2秒となる。
これらの関係をまとめたものが図6である。即ち、図6は、測定回数Nや端子数M(外部入力機器の総計台数)に依存する、上記のクロス診断に必要となる診断周期τを算定したものである。プログラム700とプログラム800によって実行される上記のクロス診断は、個々の入力端子の状態に関する綿密性には優れているものの、診断周期τが長くなってしまう傾向にある。このため、短絡故障や緊急事態の発生などに関する検出が必ずしも十分に短い時間内に実施できるとは限らない。
しかしながら、本実施例1では、図3−Aに示した様に、各系統(系Aと系B)ごとの並列多重化構成における独立性を検証する自己診断A及び自己診断Bを何れも短時間で実施するので、例えば前述の図1−A,−Bに例示される様な短絡故障や緊急事態を従来よりも短い診断周期で確実に検出することができる。
〔自己診断〕
図7に、マイコン100Aが行う自己診断Aの実行手順を例示する。このフローチャートに例示される自己診断Aの処理手順は、図4のクロス診断(A系)の処理手順に幾らか似ているが、しかし、以下の2点(1)、(2)において、図4のクロス診断(A系)の処理手順とは本質的に全く異なっている。
(1)図7の自己診断Aの処理をマイコン100Aが実行している間、B系のマイコン100Bの第2診断パルス出力手段110Bは一切使用されない。また、B系のマイコン100Bは、この時、少なくとも図7の自己診断Aの処理に係わる処理を一切実行せず、基本的には割り込み待ち状態とすべきである。ただし、入力信号や応答信号などに対する統計処理などを裏で並行に実行していても良い。
したがって、この様に診断パルスの出力のタイミングをプログラム300(図7)とプログラム400(図8)とでずらすことにより、診断処理の独立性が確保される。即ち、図7の自己診断Aでは、診断パルスを異系統間で相互にクロスさせるクロス診断は実施しない。
このため、A系とB系との独立性をA系側から簡潔に検証することができる。
(2)第1診断パルス出力手段110Aによって、第1診断パルス群がパラレルに同時に出力される。このため、各外部入力機器に対する巡回制御が必要ない。
このため、A系とB系との独立性をA系側から短時間に検証することができる。
具体的には、図7のプログラム300(自己診断A)では、以下の処理を実行する。
即ち、プログラム300ではまず最初に、ステップ310で、制御変数の初期化を行う。この制御変数nは、診断パルスの出力回数を指している。この様な繰り返しを行う理由は、前述の本発明の第4の手段を実現するためである。
次のステップ320では、タイマー割り込み待ちをする。このタイミングは、図3−Aに示した様に、t=15.5[msec]のタイミングで良い。即ち、このタイミングでステップ330のサブルーチンコールが実行されて、これにより、後から詳しく説明する図9の入力信号のサンプリング処理が開始される。この入力信号のサンプリング処理は、入力回路200に入力される信号(第1入力信号群及び第2入力信号群)を、不一致検出処理を中心とする所定の統計操作により確定するためのものである。
ステップ335は、前述のステップ740と同様の処理を実行する。勿論、入力データの退避領域は別に設ける。なお、ここのステップ335や後のステップ350では、A系の応答信号IAを全件(全24ビット)を保存しているが、前述の図4のステップ740や或いは図4のステップ760などと同様に、更に、B系の応答信号IBをも同時に全件保存する様にしても良い。
そして、これらの退避領域にそれぞれ蓄積された10回分の診断データに基づいて、ステップ380の異常判定を実施する。
ステップ340では、フォトカプラ30,40などから構成されるB系のチェック手段(第2チェック手段)に対して、第1診断パルス出力手段110Aから、診断パルスOA(i)(1≦i≦24)を全件同時にパラレルにインバータbを介して出力する。第2チェック手段には、フォトカプラ30,40の組が24組並列にそれぞれ具備されている。この診断パルスのパラレル出力により、例えば図2のB系のフォトカプラ40が有するLEDへの通電が一時的に中断されるので、フォトカプラ30が有するLEDへの通電も一時的に遮断される。即ち、この様な遮断が上記の24組全てで発生する。
ステップ350では、前述のステップ740と同様の処理を実行する。ただし、勿論、入力データの退避領域は、別に設ける。これらの退避領域にそれぞれ蓄積された10回分の診断データと、上記のステップ335で退避領域にそれぞれ蓄積された10回分の診断データとに基づいて、ステップ380の異常判定を実施することができる。即ち、ステップ360〜ステップ364は、上記の入力データの保存処理を10回繰り返し行うための制御を実現するためのステップである。この繰り返しは、本発明の第4の手段を具現するものである。
その後、ステップ380では、各応答信号IA(i)(1≦i≦24)をそれぞれ調べ、10回連続して全て0となっていた入力信号IA(i)が1つでもあれば、即ち、不当にもA系側のチェック手段(第1チェック手段)によって遮断されてしまう電流が1カ所でも検出されれば異常と判定する。
そして、異常が検出された場合には、ステップ390にて緊急安全停止指令発行のサブルーチンをコールして本プログラム300の全処理を終了し、呼出元に制御を戻す。
図8のプログラム400についても、図3−A及び図8に示す様に、図7のプログラム300とは実行時刻を1msec遅らせて、上記のプログラム300と同様の処理を実行する。この様に、プログラム400とプログラム300との実行時刻を十分にずらすことにより、自己診断Aと自己診断Bの処理の独立性を確保することができる。即ち、これらの自己診断A/Bでは、診断パルスが相互にクロスすることはない。
図7、図8にそれぞれ図示する各巡回点(d)をその繰り返し制御が通過する周期は、10ΔT=180msecとなる。即ち、自己診断A実行時のステップ364、または自己診断B実行時のステップ464が実行される周期(自己診断A、自己診断Bの各診断周期τ)は、図6からも判る様に、0.18秒となる。この時間の長さは、例えば緊急時に作業員がシステム停止用の緊急停止ボタンを押下する際の想定される遅延時間以内にあり、十分に許容範囲内にある長さであると言うことができる。
この様な制御方式により、例えば図1−A,−Bに例示される様な緊急事態があってもその状態を迅速に検出して、安全を確保することができる。
以下、図9〜図13を用いて、上記の入力信号のサンプリングの処理や、2重化された入力信号間の不一致検出処理を高速に実行する実行手順を例示する。
〔入力信号群のサンプリングと判定〕
図9は、入力信号のサンプリング(A系)の実行手順を例示するフローチャートである。このプログラム500Aの最初のステップ520Aでは、第1入力信号群IA′を入力する。この第1入力信号群IA′は、応答信号IAと同じインバータa(図2の入力部)からマイコン100Aに対して出力されるが、この第1入力信号群IA′は、診断パルスOBに対する応答信号ではなく、各外部入力機器のA系に関する入力回路200に入力された入力信号であり、よって、各ビットは各外部入力機器(計24台)にそれぞれ対応している。入力されたこの第1入力信号群IA′は、32ビットを1語とする1語領域上に右詰めにして保持される。上位の8ビットは常時0設定されるか、または無視される。
次に、ステップ540Aでは、同様の1語領域MA(i)上の所定の24ビットデータが、上記の第1入力信号群IA′と各ビット毎に対応ビット間で論理積(AND)演算される。ここで、整数iは、配列MAの引数であり、図示する通り基本的な制御周期ΔT内における各時刻t毎に、別々に割り振られている。そして、この論理演算の結果は1語領域MA(i)上に保持される。1語領域MA(i)の初期値は、左側の8ビットが0で、右側の24ビットは全て1とする。
ステップ560Aでは、ステップ540の実行回数を制御変数hでカウントする。
この様な手順に従えば、第1入力信号群IA′がその5回のサンプリング中に1度でも0となった入力信号については、論理積演算(AND命令)の作用により、1語領域MA(i)上の対応ビットの値はその後継続的に0に保存される。即ち、その5回のサンプリング中に1度でも0(:OFF状態)になった入力信号は、その後1語領域MA(i)上では継続的に0に保存される。この様にして、1語領域MA(i)上に、上記の5回分の診断結果を各ビット単位に要約して蓄積しておくことができる。
図10は、入力信号のサンプリング(B系)の実行手順を例示するフローチャートである。このプログラム500Bは、上記のプログラム500Aと相似であるが、図3−A、図7、図8、図9から判る様に、呼び出されるタイミングによって、引数i,kの規定が若干異なっている。例えば、第2入力信号群IB′の値は、図3−AのInput sampling の欄及び図10に示される様に、t=13.5ms,16.5ms,17.5msの3回に分けて、同一の制御周期内でサンプリングされる。これが5周期繰り返されることにより、合計15回のサンプリングデータが、各時刻t毎に3つの記憶領域MB(1),MB(2),MB(3)に分けられて、上記の様な論理演算を経て要約して蓄積される。
図11は、多数決処理(B系)の実行手順を例示するフローチャートである。このプログラム900Bでは、上記の様にして合計15回のサンプリングデータが、それぞれ5回(5制御周期)分の診断データずつ、各時刻t毎に3つの記憶領域MB(1),MB(2),MB(3)に分けられ、ステップ540Bの論理積演算を経て各記憶領域MB(k)に記憶された後に、ステップ940Bによって、3語MB(1),MB(2),MB(3)の間で、各外部入力機器にそれぞれ対応する24ビットの各ビット毎に、それぞれの対応ビット間における多数決が取られる。
次に、ステップ950Bでは、その多数決の結果を各ビット対応に保持する多数決語MBを、マイコン100Bからマイコン100Aに送信する。ステップ960B以降では、上記の3語MB(1),MB(2),MB(3)の初期値Xを再設定する。この初期値Xは、前述の通り左側の8ビットが0で、右側の24ビットは全て1とする。
図12は、不一致検出の実行手順を例示するフローチャートである。このプログラム900Aは、ステップ910Aからステップ970Aまでは、上記のプログラム900Bと略同様に、上記のプログラム900Bと対称的に構成されている。ただし、このプログラム900Aでは、ステップ950B(図11)で多数決語MBを送信していた代わりに、ステップ970A(図12)で多数決語MBをマイコン100Bから受信する。この送受信は、1次記憶装置を共有することによって実現しても良いし、バスなどを用いて実現しても良い。
このプログラム900Aのステップ975Aでは、ステップ940Aで作成された多数決語MAとステップ940Bで作成された多数決語MBとが一致するか否かを判定する。その結果、双方が一致すればステップ980Aに、不一致であればステップ990Aに制御を移す。ステップ980Aでは、マイコン100Aに接続されている図略の従来のシーケンサ(シーケンス制御装置または順序回路)に対して、多数決語MBまたは多数決語MAの何れか一方を送信(出力)する。
一方、多数決語MBと多数決語MAとが不一致であった場合には、ステップ990Aにて緊急安全停止指令を発行して、所定の緊急安全停止動作を実行する。通常、この緊急安全停止指令は、マイコン100Aまたはマイコン100Bが有する安全PLC出力ポートに接続された各停止手段に所定の停止信号として出力される。これらの停止手段としては、例えば、周知の非常停止ブレーキ、給電遮断器、或いはモータなどを接続することができる。
図13は、上記の多数決語MAの作成手順を例示するフローチャートである。このプログラム600Aは、A系の多数決語MAを作成するために構成されているが、B系でも同様の論理演算を実施すれば良い。このプログラム600Aは、上記のステップ940Aで呼び出されて実行されるべきサブルーチンである。勿論展開マクロ形式にしても良い。
このプログラム600Aでは、ステップ610にて、プログラム500Aで求めた前述の語MA(1)と語MA(2)との論理積を求めて、変数Y1に格納する。この論理積演算は、勿論各ビット対応に実施される。
同様にして、ステップ620、ステップ630でも、変数Y2、変数Y3に、語MA(2)と語MA(3)との論理積、及び、語MA(3)と語MA(1)との論理積をそれぞれ格納する。
ステップ640では、ここで求めた変数Y1、Y2の論理和を求めて、その演算結果を新たに変数Y2に格納し直す。この論理和演算は、勿論各ビット対応に実施される。
次のステップ650では、更に、ここで求めた変数Y2、Y3の論理和を求めて、その演算結果を多数決語MAに格納する。
以上の処理によれば、上記の5つのステップ610〜650(よって5つの論理演算命令)によって高速に所望の多数結語MAを求めることができる。
以上の図9〜図13の処理方式に従えば、図3−Aの上段で実行する処理、即ち、入力信号のサンプリング処理とそのサンプリングデータに基づいて実施すべき不一致検出処理とを、簡単で高速な論理演算によってそれぞれ何れも極めて高速に実行することができる。
〔その他の変形例〕
本発明の実施形態は、上記の形態に限定されるものではなく、その他にも以下に例示される様な変形を行っても良い。この様な変形や応用によっても、本発明の作用に基づいて本発明の効果を得ることができる。
(変形例1)
例えば、上記の実施例1の自己診断A(図7)においては、ステップ350にて応答信号IAの全ビットを毎回所定の退避領域にそれぞれ保存しているが、その後のステップ380における判定方法によっては、必ずしもその必要はない。
ステップ540A(図9)やステップ540B(図10)は、5回の内1回でも値が0の信号(入力が遮断されたことを示すOFF信号)が入力されれば該ビットは0と判定すると言う判定基準を利用して構成されたものであり、例えばこの様に巧く判定基準を利用すれば、判定処理の大部分を動的に実行することができ、この様な動的な手法によって、参照データ(入力信号)の退避領域を最小限に抑えることができる場合がある。
(変形例2)
また、上記の実施例1では、入力回路の二重化をA系とB系の2系統に分けて実施したが、入力回路の多重化は、3多重で実現しても4多重で実現しても良い。例えば、A系、B系、C系の3系統によって、入力回路を3重化した場合、不一致検出手段において不一致検出処理方式に多数決の理論を導入したり、或いは、1つの系統だけに異常が発生した時に、3重化のシステムを2重化のシステムに動的に縮退させたりすることが可能となる。これにより、システム停止の機会を大幅に削減することも可能となる。
本発明の作用は、本発明の手段を正しく構成することにより、これらの多重度に関わり無く導くことができるものである。即ち、本発明の本質的な作用原理は、システムの多重化を実施する際の多重度とは直接関係するものではない。
(変形例3)
また、上記の実施例1では、自己診断Aと自己診断Bとをタイミングを替えて、両方ともに実行しているが、自己診断Aまたは自己診断Bの何れか一方だけを実施する方式を採用した場合でも、上記の実施例1における上記の自己診断AまたはBの作用による、短絡故障検出効果を得ることができる。
これは、図1−A,−Bから判る様に、通常の短絡故障は、入力回路の対称性によって自己診断Aと自己診断Bの何れでも検出可能であるので、何れか一方を省略することによって、特段の支障が生じるわけではないからである。
ただし、自己診断Aと自己診断Bは殆ど同じプログラム700/800で制御可能であることや、時間をずらして実行するための期間を1制御周期内に確保することが可能または容易であることや、当該処理の二重化による処理の確実性や信頼性を確保したい事情や、或いは一時記憶装置の容量に余裕があることなどが理由で、当該処理(上記の自己診断)を二重化した方が良い場合も勿論少なくない。
他方、例えば自己診断Bを省略した場合、制御期間の最適化設計を行えば、上記の基本的な制御周期ΔTを更に短くできる場合もある。この場合には、診断周期τなどを短くできることや、或いはプログラム400の製造や取り扱いが不要となるなどの点でメリットを得ることができる。
(変形例4)
また、上記の実施例1では、各外部入力機器に関する個々の入力回路は、何れも2重化されていることを前提としたが、必ずしも全ての外部入力機器からの各入力信号をそれぞれ何れも二重化する必要はない。即ち、例えば緊急事態の発生に関連する恐れのない装置(外部入力機器)については、シングルモードで入力回路に入力信号を送信させても十分である。そして、例えばこの様に多重化されていない入力信号に対しては、例えば上記の実施例1などの様な不一致検出処理を実施する必要がないことは言うまでもない。
本発明は、プログラマブルコントローラ(PLC)に入力される入力信号に対する信頼性や、それらの入力信号に関する処理の確実性や、それらに基づいて確保されるべきシステムの安全性などを高度に確保するために大いに有用であり、よって、ロボットや工作機械やそれらの周辺機器の動作に対するシーケンス制御などに、効果的に利用することができる。
また、本発明は、上記の外部入力機器として各種のセンサ(検出装置)や情報処理機器などを想定すれば、自動車のオートクルーズシステムにおいても利用することができ、これにより安全なオートクルーズシステムを構成できる場合がある。
診断パルスと応答信号との関係を例示するグラフ(短絡時) 診断パルスと応答信号との関係を例示するグラフ(短絡時) 実施例1のプログラマブルコントローラの入力回路200の回路図 各処理装置(100A,100B)の動作に係わるタイムチャート 応答パターン(各応答信号の入力パターン)を例示するグラフ マイコン100Aが実行するクロス診断(A系)のフローチャート マイコン100Bが実行するクロス診断(B系)のフローチャート 測定回数Nや端子数Mに依存する診断周期τの算定表 マイコン100Aが行う自己診断Aの実行手順を例示するフローチャート マイコン100Bが行う自己診断Bの実行手順を例示するフローチャート 入力信号のサンプリング(A系)の実行手順を例示するフローチャート 入力信号のサンプリング(B系)の実行手順を例示するフローチャート 多数決処理(B系)の実行手順を例示するフローチャート 不一致検出の実行手順を例示するフローチャート 多数決語MAの作成手順を例示するフローチャート 従来の入力回路201の回路図(平常時) 診断パルスと応答信号との関係を例示するグラフ(平常時) 診断パルスと応答信号との関係を例示するグラフ(平常時) 従来の入力回路201の回路図(短絡時)
符号の説明
200 : 入力回路
1000A : 第1信号処理装置
1000B : 第2信号処理装置
100A : マイコン
100B : マイコン
110A : 第1診断パルス出力手段
110B : 第2診断パルス出力手段
10 : フォトカプラ
20 : フォトカプラ
a〜d : インバータ(論理反転器)
OA : A系のマイコンから出力される診断パルス
IA : A系のマイコンに入力される応答信号
OB : B系のマイコンから出力される診断パルス
IB : B系のマイコンに入力される応答信号
OA(m): m番目の端子に係わる診断パルスOA
IA(m): m番目の端子に係わる応答信号IA
O,P : 第1入力端子
Q,R : 第2入力端子

Claims (8)

  1. 複数の外部入力機器とそれらの外部入力機器から入力される入力信号群を処理する処理装置が複数の系統に多重化され、全ての系統の入力信号群が一致した時に真正な入力信号が入力されたと判定し、不一致の場合には異常停止処理を行うようにしたプログラマブルコントローラにおいて、
    一の系統の処理装置は、
    他の系統の処理装置に対して、一の系統に固有のタイミングで診断パルス群をパラレル出力する診断パルス出力手段と、
    他の系統の処理装置の診断パルス出力手段から出力される診断パルス群を入力して、それらのパルス期間だけ入力信号群の伝搬を遮断するチェック手段と、
    自己の系統の前記診断パルス出力手段からの診断パルスの出力に対応して前記入力信号群の信号が変化した場合には、異常停止処理を行う異常判定手段と
    を有する
    ことを特徴とするプログラマブルコントローラ。
  2. それぞれが二重に構成された外部入力機器群から出力される第1入力信号群を入力する第1入力端子群と、その第1入力端子に入力される第1入力信号群を処理する第1信号処理装置と、前記外部入力機器群から出力される第2入力信号群を入力する第2入力端子群と、その第2入力端子群に入力される前記第2入力信号群を処理する第2信号処理装置とで、二重に構成され、入力信号群の一要素である第1入力信号と、その信号と一対を成す第2入力信号とが一致した時に真正な入力信号が入力されたと判定し、不一の場合には異常停止処理を行うようにしたプログラマブルコントローラにおいて、
    前記第1信号処理装置は、
    前記第2信号処理装置に対して第1診断パルス群をパラレル出力する第1診断パルス出力手段と、
    前記第2信号処理装置から出力される第2診断パルス群をパラレル入力してそれらのパルス期間だけ前記第1入力信号群の伝搬を遮断する第1チェック手段と、
    前記第1診断パルス出力手段からの第1診断パルス群の出力に対応して前記第1入力信号群が変化した場合には、異常と判定して異常停止処理をする第1異常判定手段とを有し、
    前記第2信号処理装置は、
    前記第1診断パルス群の出力とは異なるタイミングで、前記第1チェック手段に、第2診断パルス群をパラレル出力する第2診断パルス出力手段と、
    前記第1診断パルス出力手段から出力される第1診断パルス群をパラレル入力して、それらのパルス期間だけ前記第2入力信号群の伝搬を遮断する第2チェック手段と、
    前記第2診断パルス出力手段からの第2診断パルス群の出力に対応して前記第2入力信号群が変化した場合には、異常と判定して異常停止処理をする第2異常判定手段とを有する
    ことを特徴とするプログラマブルコントローラ。
  3. 前記異常判定手段は、
    所定回数連続して前記入力信号群の同一入力端子からの信号が変化した場合に異常と判定して異常停止をする
    ことを特徴とする請求項1に記載のプログラマブルコントローラ。
  4. 前記第1異常判定手段は、
    所定回数連続して前記第1入力信号群の同一入力端子からの信号が変化した場合に異常と判定して異常停止をする手段であり、
    前記第2異常判定手段は、
    所定回数連続して前記第2入力信号群の同一入力端子からの信号が変化した場合に異常と判定して異常停止をする手段である
    ことを特徴とする請求項2に記載のプログラマブルコントローラ。
  5. 前記一の系統の信号処理装置は、
    他の系統の処理装置に対して、入力端子毎にシリアルにシリアル診断パルスを出力するシリアル診断パルス出力手段と、
    他の系統の処理装置のシリアルパルス出力手段から入力端子毎にシリアルに出力されるシリアル診断パルスを入力して、そのパルス期間に対応して入力信号が変化しない場合に異常と判定して、異常停止処理をするパルスチェック手段と
    を有する
    ことを特徴とする請求項1又は請求項3に記載のプログラマブルコントローラ。
  6. 前記第1信号処理装置は、
    入力端子毎の前記第2チエック手段に第1シリアル診断パルスをシリアルに出力する第1シリアル診断パルス出力手段と、
    前記第2信号処理装置から入力端子毎の前記第1チェック手段にシリアルに出力された第2シリアル診断パルスを入力して、そのパルス期間に対応して第1入力信号が変化しない場合に異常と判定して、異常停止処理をする第1パルスチェック手段と
    を有し、
    前記第2信号処理装置は、
    入力端子毎の前記第1チエック手段に第2シリアル診断パルスをシリアルに出力する第2シリアル診断パルス出力手段と、
    前記第1シリアル診断パルス出力手段から入力端子毎の前記第2チェック手段にシリアルに出力された第1シリアル診断パルスを入力して、そのパルス期間に対応して第2入力信号が変化しない場合に異常と判定して、異常停止処理をする第2パルスチェック手段と
    を有する
    ことを特徴とする請求項2又は請求項4に記載のプログラマブルコントローラ。
  7. 前記チェック手段は、
    前記入力信号を入力するフォトカプラと、そのフォトカプラの発光ダイオードに直列に接続されたフォトトランジスタと診断パルスを入力しフォトトランジスタに光信号を発する発光ダイオードとから成るフォトカプラとから成る
    ことを特徴とする請求項1、請求項3または請求項5の何れか1項に記載のプログラマブルコントローラ。
  8. 前記第1チェック手段は、
    前記第1入力信号を入力するフォトカプラと、そのフォトカプラの発光ダイオードに直列に接続されたフォトトランジスタと第2診断パルスを入力しフォトトランジスタに光信号を発する発光ダイオードとから成るフォトカプラとから成り、
    前記第2チェック手段は、
    前記第2入力信号を入力するフォトカプラと、そのフォトカプラの発光ダイオードに直列に接続されたフォトトランジスタと第1診断パルスを入力しフォトトランジスタに光信号を発する発光ダイオードとから成るフォトカプラとから成る
    ことを特徴とする請求項2、請求項4、または請求項6の何れか1項に記載のプログラマブルコントローラ。
JP2004222816A 2004-07-30 2004-07-30 プログラマブルコントローラ Expired - Fee Related JP4349231B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2004222816A JP4349231B2 (ja) 2004-07-30 2004-07-30 プログラマブルコントローラ
CN200580025214.3A CN100470419C (zh) 2004-07-30 2005-07-22 可编程控制器
US11/658,612 US8072889B2 (en) 2004-07-30 2005-07-22 Programmable controller
EP05767004A EP1785791B1 (en) 2004-07-30 2005-07-22 Programmable controller
PCT/JP2005/013904 WO2006011583A1 (ja) 2004-07-30 2005-07-22 プログラマブルコントローラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004222816A JP4349231B2 (ja) 2004-07-30 2004-07-30 プログラマブルコントローラ

Publications (2)

Publication Number Publication Date
JP2006040195A JP2006040195A (ja) 2006-02-09
JP4349231B2 true JP4349231B2 (ja) 2009-10-21

Family

ID=35786330

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004222816A Expired - Fee Related JP4349231B2 (ja) 2004-07-30 2004-07-30 プログラマブルコントローラ

Country Status (5)

Country Link
US (1) US8072889B2 (ja)
EP (1) EP1785791B1 (ja)
JP (1) JP4349231B2 (ja)
CN (1) CN100470419C (ja)
WO (1) WO2006011583A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5404442B2 (ja) * 2010-01-18 2014-01-29 株式会社東芝 安全入力装置
JP5318284B2 (ja) * 2010-04-26 2013-10-16 三菱電機株式会社 安全装置および故障検出方法
JP5590164B2 (ja) * 2013-01-28 2014-09-17 株式会社安川電機 ロボットシステム
DE102013106739A1 (de) * 2013-06-27 2014-12-31 Pilz Gmbh & Co. Kg Sicherheitsschaltvorrichtung mit fehlersicheren Eingängen
JP6340886B2 (ja) * 2014-04-10 2018-06-13 株式会社ジェイテクト プログラマブルロジックコントローラ用プログラムの作成支援装置及びプログラマブルロジックコントローラ用プログラムの作成支援方法
JP6825412B2 (ja) 2017-02-21 2021-02-03 オムロン株式会社 モータ制御装置
JP6870555B2 (ja) * 2017-09-29 2021-05-12 ブラザー工業株式会社 監視装置
KR102262090B1 (ko) * 2019-01-14 2021-06-07 안재봉 피엘씨의 입력 이중화 처리장치 및 방법

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08221116A (ja) 1995-02-20 1996-08-30 Hitachi Ltd 診断機能付きディジタル入力装置
JP3751746B2 (ja) 1998-03-11 2006-03-01 東日本旅客鉄道株式会社 フェールセーフ出力装置
JP2002358106A (ja) 2001-05-31 2002-12-13 Omron Corp 安全コントローラ
JP4131134B2 (ja) 2002-07-09 2008-08-13 株式会社ジェイテクト 制御装置、その入力回路及び制御装置の信号入力方法
JP4429650B2 (ja) 2003-07-25 2010-03-10 日本制禦機器株式会社 セーフティコントローラー

Also Published As

Publication number Publication date
JP2006040195A (ja) 2006-02-09
US8072889B2 (en) 2011-12-06
WO2006011583A1 (ja) 2006-02-02
CN101002149A (zh) 2007-07-18
EP1785791A1 (en) 2007-05-16
CN100470419C (zh) 2009-03-18
EP1785791A4 (en) 2010-07-21
US20080082212A1 (en) 2008-04-03
EP1785791B1 (en) 2012-03-07

Similar Documents

Publication Publication Date Title
EP1785791B1 (en) Programmable controller
US10006455B2 (en) Drive control apparatus
EP1717654B1 (en) Input device of a safety unit
EP1710642B1 (en) Distributed control apparatus
CN105759781A (zh) 机器人的布线方法
JP4263339B2 (ja) 安全スイッチ装置
EP2595018B1 (en) Method and apparatus for analogue output current control
JP4328352B2 (ja) 外部信号入出力ユニットの診断方法及びシステム
US5613064A (en) Output network for a fault tolerant control system
JP4616862B2 (ja) 診断装置
JP5582748B2 (ja) 車両用電子制御装置
JP7388290B2 (ja) 産業用制御装置の出力モジュール
JP4238687B2 (ja) セーフティコントローラおよびそれを用いたシステム
JP2557990B2 (ja) 二重系切換装置
CN114545829B (zh) 信号输出装置及信号输出控制方法、工程机械
JP2005003133A (ja) 安全リレーシステム、安全リレーシステム用グループ化出力ユニットおよび安全リレーの制御方法
JP4238690B2 (ja) 設定構造およびそれを用いたセーフティコントローラ
JP7076424B2 (ja) 電気的負荷を開閉するためのスイッチング装置
JPH0444762B2 (ja)
JP4788469B2 (ja) Cpu二重化システム
JP2021100075A (ja) 車両用電子制御装置
JP2018079737A (ja) 電子制御装置及びその診断方法
JPH11219207A (ja) マルチコントローラシステム
JPS63249230A (ja) 二重系切換方式
JPS61221698A (ja) 原子炉安全保護装置

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20060523

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070622

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090630

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090713

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120731

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4349231

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120731

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130731

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees