KR20020053927A - 공유메모리영역을 이용한 실시간 통신에서의통신보드고장탐지방법 - Google Patents

공유메모리영역을 이용한 실시간 통신에서의통신보드고장탐지방법 Download PDF

Info

Publication number
KR20020053927A
KR20020053927A KR1020000081904A KR20000081904A KR20020053927A KR 20020053927 A KR20020053927 A KR 20020053927A KR 1020000081904 A KR1020000081904 A KR 1020000081904A KR 20000081904 A KR20000081904 A KR 20000081904A KR 20020053927 A KR20020053927 A KR 20020053927A
Authority
KR
South Korea
Prior art keywords
node
shared memory
data value
address
nodes
Prior art date
Application number
KR1020000081904A
Other languages
English (en)
Inventor
김용수
Original Assignee
이구택
주식회사 포스코
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 이구택, 주식회사 포스코 filed Critical 이구택
Priority to KR1020000081904A priority Critical patent/KR20020053927A/ko
Publication of KR20020053927A publication Critical patent/KR20020053927A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Hardware Redundancy (AREA)

Abstract

이 발명은 다수의 노드를 포함하고 각각의 노드는 공유메모리영역을 지정하여 운용하며 전체 노드의 공유메모리영역을 일치시키기 위한 통신결선이 일방향통신으로 이루어진 제어시스템에서 어떤 노드에서의 통신보드의 고장을 용이하게 탐지할 수 있게 하려는 것이며, 이 발명에 따르면, 각 공유메모리의 동일한 영역의 어드레스를 통신점검 데이터를 위한 영역으로 지정하는 단계와, 지정된 영역에 기입할 데이터값이 자신의 노드번호와 동일하면 바로 직전 노드번호으로 바꾸는 단계와, 각 노드가 호스트디바이스에 상태변화여부를 알리는 신호를 출력하는 단계와, 출력신호를 사이클릭화 하여 변화신호가 두 노드 이상의 연속되다가 불변신호가 나타나는 노드를 고장발생노드로 판단하는 단계를 포함하는 방법이 제공되며, 상기 판단단계에서 출력신호에서 변화신호가 두 노드 이상 연속되는 것이 발견되지 않으면, 상기 판단단계의 전에 호스트디바이스가 변화신호를 출력한 노드의 다음 다음 노드에 상기 지정영역에 기입할 데이터값을 출력하는 단계를 부가적으로 포함하는 것이 양호하다.

Description

공유메모리영역을 이용한 실시간 통신에서의 통신보드고장탐지방법 {Method for detecting board hindrance in a real time communication system using common memory addresses}
이 발명은 개방형 제어시스템에서의 각 통신보드의 고장을 탐지하는 방법에 관한 것이며, 좀더 자세하게는 공유메모리를 이용하여 고장을 탐지하는 방법에 관한 것이다.
기존의 공정제어시스템들은 데이터의 실시간 통신을 위해 광케이블을 이용한 업체별 고유의 통신을 많이 사용하여 새로운 기능을 추가하려고 할 때 다른 업체의시스템을 통신에 접속하기 어려웠다. 그래서 요즈음은 새로운 시스템 도입시 개방형 제어시스템을 채택하기 시작하였다.
개방형 제어시스템에서는 대용량의 실시간 통신을 위해 공유메모리영역을 설정해 두고 통신한다. 즉, 제어시스템을 이루는 각각의 노드는 자신의 메모리보드에서 공유메모리영역을 설정해 두고 모든 노드의 공유메모리영역의 정보를 일치시키는 통신을 한다. 이러한 통신은 도 1에 보이듯이 일방향통신이므로 수신노드에서 수신신호에 오류가 있는지의 여부의 점검은 가능하지만, 송신측에서 송신신호가 제대로 전달되었는지의 여부의 점검은 불가능하다. 도시된 도면에서는 5개의 노드로 구성된 제어시스템을 예시적으로 도시하고 있지만, 노드의 수는 필요에 따라 가감될 수 있으며, 노드의 수에 무관하게 공유메모리영역의 정보를 일치시키기 위한 통신은 일반적으로 일방향통신이다. 적어도 이 발명은 그러한 일방향통신으로 결선된 제어시스템에 적용할 것을 의도한 것이다.
이러한 일방향통신에서 어떤 노드에서의 수신신호에 오류가 개입되면, 그러한 오류개입신호는 전체 노드에 순차적으로 전파된다.
각각의 노드는 수신신호에 오류가 있음을 감지하면, 송신노드가 아닌 운전자가 모니터링하는 호스트디바이스에 오류통지신호를 전송해 준다. 오류를 인지한 운전자는 어느 한 노드의 공유메모리영역에 있는 데이터에서 오류를 수정해 줌으로써 전체 노드에 수정데이터가 전파되게 한다.
그런데, 어떤 노드의 통신보드에 고장이 있고, 그로 인해 수신신호의 오류여부를 감지하지 못한다거나 호스트디바이스에 오류통지신호를 전송해 주지 못한다면, 운전자는 제어데이터에 오류가 개입된 사실을 인지하지 못하게 된다. 이렇게 운전자가 인지하지 못한 상태에서 일부 노드에서의 수신신호에 오류가 있음에도 불구하고 조업을 계속하게 되면 제품불량 또는 심각하게는 설비손상을 유발한다.
운전자가 제어데이터에 오류가 개입되었음을 인지한다고 할지라도, 이미 전체 노드에 오류개입신호가 전파되었다면, 어떤 노드에서의 수신신호에 최초로 오류가 개입되었는지 알 수 없다. 즉 고장난 노드가 어느 노드인지 파악하기가 용이하지 않다.
그러므로, 이 발명은 다수의 노드를 포함하고 각각의 노드는 공유메모리영역을 지정하여 운용하며 전체 노드의 공유메모리영역을 일치시키기 위한 통신결선이 일방향통신으로 이루어진 제어시스템에서 어떤 노드에서의 통신보드의 고장을 용이하게 탐지할 수 있는 방법을 제안하려는 것이다.
도 1은 각각의 메모리보드에 공유메모리영역을 갖는 5개의 노드로 이루어진 제어시스템의 통신결선을 도시한 도면이며,
도 2는 각 노드들의 보드장애를 감지하기 위한 고장탐지신호의 전달순서를 설명하기 위한 도면이다.
위와 같은 기술적 과제를 해결하기 위한 이 발명에 따르면, 어떤 노드에서 고장이 발생했는지를 탐지하기 위하여, 각 공유메모리의 동일한 영역의 어드레스를 통신점검 데이터를 위한 영역으로 지정하는 단계와, 지정된 영역에 기입할 데이터값이 자신의 노드번호와 동일하면 바로 직전 노드번호으로 바꾸는 단계와, 각 노드가 호스트디바이스에 상태변화여부를 알리는 신호를 출력하는 단계와, 출력신호를 사이클릭화 하여 변화신호가 두 노드 이상의 연속되다가 불변신호가 나타나는 노드를 고장발생노드로 판단하는 단계를 포함하는 방법을 제공한다.
상기 판단단계에서 출력신호에서 변화신호가 두 노드 이상 연속되는 것이 발견되지 않으면, 상기 판단단계의 전에 호스트디바이스가 변화신호를 출력한 노드의 다음 다음 노드에 상기 지정영역에 기입할 데이터값을 출력하는 단계를 부가적으로 포함하는 것이 양호하다.
이하에서는 이 발명의 양호한 실시예에 따른 고장탐지방법을 첨부된 도면을 참조하여 상세히 설명한다. 이 실시예는 이 발명에 따른 고장탐지방법이 도 1에 보이듯이 5개의 노드가 결선된 제어시스템에 적용되는 것이다. 5개의 노드가 결선된 제어시스템에 적용된 이 실시예에 불구하고, 이 발명은 결선된 노드의 수에 무관하게 적용될 수 있다.
공유메모리를 이용한 실시간통신에서 각 노드(통신상에 연결된 각 제어용 컴퓨터)의 공유메모리보드는 메모리와 광통신부로 이루어져 있다. 각 노드에서 공유메모리에 쓴 데이터는 광통신부에 의해 실시간으로 인접노드의 공유메모리 보드의 메모리에 쓰여지고, 이 노드에서 다시 인접노드의 공유메모리에 쓰여진다.
도 1에서 노드 1에 쓰여진 데이터는 노드 2의 동일한 어드레스(Address)로 광통신으로 전달되고, 노드 2에서 노드 3으로 전달되고, 노드 3에서 노드 4로 전달되고, 노드 4에서 노드 5로 전달된다. 즉, 노드 1에 쓰여진 데이터는 다른 전체 노드의 공유메모리에 실시간으로 전달된다. 각 노드에서 노드로 전달되는 신호의 방향은 항상 제1도와 같이 단일 방향으로 전달된다. 각 노드 공유메모리 보드의 데이터는 각 메모리영역의 동일한 어드레스(Address)를 가지므로 각 노드의 동일한어드레스에는 동일한 데이터가 저장된다.
각 공유메모리 보드는 수신신호 자체의 오류는 점검하여 운전자에게 신호자체의 오류는 알려준다. 그러나 보드에 고장이 있으면 광신호 자체의 오류는 검출하지 못한 상태에서 데이터가 전달되지 못하므로 운전자는 이를 모르게 된다. 이를 해결하기 위해 각 공유메모리의 동일한 영역의 어드레스를 통신점검 데이터를 위해 사용한다. 각 노드는 이 어드레스의 데이터값이 자신의 노드번호와 동일하면 바로 직전 노드번호으로 바꾼다.
노드 1은 이 어드레스의 데이터값이 1이면 5로 바꾼다. 그러면, 이 어드레스의 데이터값은 노드 2 노드 3 노드 4 노드 5로 고속으로 전달되어 동일한 어드레스에 쓰여진다. 다음은 노드 5에서 이 어드레스의 데이터값이 5이므로 4로 바꾼다. 이때 이 어드레스의 데이터값은 노드 1 노드 2 노드 3 노드 4로 동일한 어드레스에 전달된다. 다음은 노드 4에서 이 어드레스의 데이터값이 4이므로 3으로 바꾸면, 이 데이터값은 노드 5 노드 1 노드 2 노드 3 으로 전달된다. 다른 노드들도 마찬가지로 동일한 방법으로 이 어드레스의 데이터값이 자신의 노드번호와 동일하면 바로 직전 노드번호으로 바꾼다. 그러면, 이 데이터값은 다음 노드로 전달되면서 전체 노드가 동일한 데이터값을 공유하게 된다.
노드 2의 공유메모리 보드에 장애가 발생할 때 5가지 경우가 있을 수 있다.
① 노드 1이 공유메모리에 데이터값을 쓸 때 노드 2의 공유메모리에 장애가 발생했을 경우:
이 때, 모든 노드에서 데이터값이 1이면 노드 1이 데이터값을 5로 바꾸지만노드 2의 공유메모리 보드에 장애가 있어 노드 2, 노드 3, 노드 4, 노드 5으로 전달되지 않으므로 메모리 데이터값은 1을 유지한 상태로 변하지 않는다.
도 2는 노드 1이 호스트디바이스의 역할을 하는 것으로 도시되어 있는데, 이 때, 각 노드는 메모리의 데이터값이 바뀐 경우 1을 출력하고, 노드의 데이터값이 바뀌지 않는 경우 0을 출력하여 데이터값의 변화상태를 노드 1에게 알려준다.
이 때 노드 1,노드 2,노드 3, 노드 4, 노드 5의 각 출력은 1, 0, 0, 0, 0 이 된다.
② 노드 2가 공유메모리에 데이터값을 쓸 때 노드 2의 공유메모리에 장애가 발생했을 경우:
이 때, 모든 노드의 공유메모리 데이터값이 2인 경우에 노드 2가 이 데이터값을 1로 바꾸지만 노드 2의 공유메모리에 장애가 있으므로 이 변경된 메모리의 데이터값은 노드 3으로 전달되지 못한다. 이 때, 노드 2만 데이터값이 1로 바뀌고 다른 노드는 데이터값이 2를 유지한 채 변하지 않는다.
따라서, 노드 1, 노드 2, 노드 3, 노드 4, 노드 5의 출력은 각기 0, 1, 0, 0, 0 이 된다.
③ 노드 3이 공유메모리에 데이터값을 쓸 때 노드 2의 공유메모리에 장애가 발생했을 경우:
이 때, 모든 노드의 공유메모리 데이터값이 3인 경우에 노드 3이 메모리의데이터값을 2로 바꾸면 공유메모리 데이터값은 노드 4로 전달되고, 다시 노드 5, 노드 1 순으로 전달된다. 그러나, 노드 2의 공유메모리에 장애가 있으므로 이 데이터값은 노드 2로 전달되지 않는다. 이 때, 노드 2를 제외한 다른 모든 노드의 공유메모리 데이터값은 바뀌게 된다.
따라서, 노드 1, 노드 2, 노드 3, 노드 4, 노드 5의 출력은 각기 1, 0, 1, 1, 1 이 된다.
④ 노드 4가 공유메모리에 데이터값을 쓸 때 노드 2의 공유메모리에 장애가 발생했을 경우:
이 때, 모든 노드의 공유메모리 데이터값이 4인 경우에 노드 4가 메모리의 데이터값을 3으로 바꾸면 공유메모리 데이터값은 노드 5와 노드 1으로 전달되어 공유메모리의 데이터값이 바뀌지만 노드 2의 공유메모리 장애로 노드 2와 노드 3에는 전달되지 않는다.
따라서 노드 1, 노드 2, 노드 3, 노드 4, 노드 5의 출력은 각기 1, 0, 0, 1, 1 이 된다.
⑤ 노드 5가 공유메모리에 데이터값을 쓸 때 노드 2의 공유메모리에 장애가 발생했을 경우:
이 때, 모든 노드의 공유메모리 데이터값이 5인 경우에 노드 5가 이 데이터값을 4로 바꾸면 공유메모리 데이터값은 노드 1로 전달되지만, 노드 2의 공유메모리 장애로 노드 2, 노드 3, 노드 4의 데이터값은 바뀌지 않는다.
따라서, 노드 1, 노드 2, 노드 3, 노드 4, 노드 5의 출력은 각기 1, 0, 0, 0, 1 이 된다.
위 ③, ④, ⑤에서 각 노드의 출력을 사이클릭으로 보면 두 노드 이상의 연속 1 다음에 처음으로 0 이 되는 노드의 공유메모리 보드에 장애가 있다.
즉, ④ 의 경우 각 노드의 출력이 1, 0, 0, 1, 1 이다. 이 것을 사이클릭으로 보면 표 1과 같다.
노드번호 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 ...
상태변화값 1 0 0 1 1 1 0 0 1 1 1 0 0 1 1 1 0 0 1 1 1 0 0 ...
표 1에서 두 노드 이상의 연속된 1 다음의 처음 0인 노드는 노드 2이므로 노드 2의 공유메모리 보드에 장애가 있다는 것을 알 수 있다.
③과 ⑤의 경우도 마찬가지이다.
그러나, 위 ①과 ② 의 경우는 출력이 두 노드 이상의 연속된 1이 아니므로 장애가 있는 보드를 찾기 어렵다. 연속된 1이 없는 경우에는 호스트디바이스인 노드 1에서 출력이 1인 노드의 다음 다음 노드로 공유메모리 데이터값을 출력한다[도 2]. 신호를 받은 노드는 공유메모리에 자신의 노드번호를 쓴다.
그러면, 위 ①과 ②의 경우의 상태변화값은 위 ③, ④ 또는 ⑤의 경우와 동일한 패턴을 갖는다.
즉, ①의 경우 1을 출력한 것은 노드 1이므로 노드 3이 공유메모리에 3의 데이터값을 쓰면 노드 4, 노드 5, 노드 1으로 데이터값이 전달되지만 노드 2에는 전달되지 않으므로 각 노드의 출력 데이터값이 1, 0, 1, 1, 1 가 되어 ③의 경우와 동일하게 되어 노드 2의 메모리 보드에 이상이 있음을 알 수 있다.
②의 경우는 1을 출력한 것이 노드 2이므로 노드 4가 공유메모리에 4의 데이터값을 쓰면 노드 5, 노드 1으로 데이터값이 전달되지만, 노드 2, 노드 3에는 데이터값이 전달되지 않으므로 각 노드의 출력 데이터값이 1, 0, 0, 1, 1 가 되어 ④의 경우와 동일하므로 노드 2에 장애가 있음을 알 수 있다.
다른 노드의 공유메모리 보드에 장애가 발생하여도 위의 5가지 패턴이 되므로 장애를 감지할 수 있다.
공유메모리를 이용하는 노드의 개수가 적거나 많아도 이상에서 기술한 동일한 방법으로 메모리 데이터값의 변화 여부를 출력하는 각 노드 출력 데이터값의 패턴에 의해 장애가 있는 보드를 감지하여 운전자에게 알려서 설비의 장애를 방지할 수 있다.
이 발명에 따른 방법을 이용하면, 다수의 노드를 포함하고 각각의 노드는 공유메모리영역을 지정하여 운용하며 전체 노드의 공유메모리영역을 일치시키기 위한 통신결선이 일방향통신으로 이루어진 제어시스템에서 어떤 노드에서의 통신보드의 고장을 용이하게 탐지할 수 있다.

Claims (2)

  1. 다수의 노드를 포함하고 각각의 노드는 공유메모리영역을 지정하여 운용하며 전체 노드의 공유메모리영역을 일치시키기 위한 통신결선이 일방향통신으로 이루어진 제어시스템에서 어떤 노드에서 고장이 발생했는지를 탐지하는 방법에 있어서,
    각 공유메모리의 동일한 영역의 어드레스를 통신점검 데이터를 위한 영역으로 지정하는 단계와,
    지정된 영역에 기입할 데이터값이 자신의 노드번호와 동일하면 바로 직전 노드번호으로 바꾸는 단계와,
    각 노드가 호스트디바이스에 상태변화여부를 알리는 신호를 출력하는 단계와,
    출력신호를 사이클릭화 하여 변화신호가 두 노드 이상의 연속되다가 불변신호가 나타나는 노드를 고장발생노드로 판단하는 단계를 포함하는 것을 특징으로 하는 방법.
  2. 청구항 1에 있어서,
    상기 판단단계에서 출력신호에서 변화신호가 두 노드 이상 연속되는 것이 발견되지 않으면, 상기 판단단계의 전에 호스트디바이스가 변화신호를 출력한 노드의 다음 다음 노드에 상기 지정영역에 기입할 데이터값을 출력하는 단계를 부가적으로포함하는 것을 특징으로 하는 방법.
KR1020000081904A 2000-12-26 2000-12-26 공유메모리영역을 이용한 실시간 통신에서의통신보드고장탐지방법 KR20020053927A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000081904A KR20020053927A (ko) 2000-12-26 2000-12-26 공유메모리영역을 이용한 실시간 통신에서의통신보드고장탐지방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000081904A KR20020053927A (ko) 2000-12-26 2000-12-26 공유메모리영역을 이용한 실시간 통신에서의통신보드고장탐지방법

Publications (1)

Publication Number Publication Date
KR20020053927A true KR20020053927A (ko) 2002-07-06

Family

ID=27685905

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000081904A KR20020053927A (ko) 2000-12-26 2000-12-26 공유메모리영역을 이용한 실시간 통신에서의통신보드고장탐지방법

Country Status (1)

Country Link
KR (1) KR20020053927A (ko)

Similar Documents

Publication Publication Date Title
JPH04242463A (ja) 状態変化通知装置及び方法
JPH01293450A (ja) 障害装置特定システム
US5758053A (en) Fault handling and recovery for system having plural processors
JPH09181737A (ja) 小規模ネットワークにおける通信方法
KR20080041688A (ko) 메시지 전송 방법
KR100293950B1 (ko) 주변소자 내부연결 버스 모니터를 이용한 장애 감지 장치 및 방법
KR20020053927A (ko) 공유메모리영역을 이용한 실시간 통신에서의통신보드고장탐지방법
KR100274390B1 (ko) 이중화된 통신선로를 갖는 통신시스템의 중복정보 판단방법
JP2005510955A (ja) 中央処理装置を持つバスシステムにあるモジュールの誤りなしの機能を検査する方法及び対応するモジュール及び中央処理装置
JPS61295738A (ja) 伝送制御装置
CN102291266A (zh) 环回检测方法及装置
JP2000040039A (ja) デイジーチェーン障害回避方式
JP2007266708A (ja) ケーブル誤接続検出装置及び方法
JP2682427B2 (ja) ループ状伝送路での障害箇所検出方式
KR0152229B1 (ko) 시스팀의 이중화를 위한 저가형 이중화 노드
JP2518517B2 (ja) 通信バス監視装置
JP2580557B2 (ja) 分散システムの試験方法および装置
KR0171005B1 (ko) 고속 패킷 라우터의 노드버퍼 제어장치
JP3133172B2 (ja) 複数波のリング形lanの障害管理システム
JPS62226238A (ja) コンピユ−タシステム
SU1603390A1 (ru) Устройство дл контрол цифровых узлов
KR950016088A (ko) 프로세서간 단위 통신망간의 상호 연결장치 및 그 운용방법
JP2978649B2 (ja) メモリスイッチ監視方式
JPH04101372A (ja) 誤接続検出回路
JPS63246946A (ja) ル−プ構造ネツトワ−クにおける通信装置の障害検出方式

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination