이하 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 우선 각 도면의 구성 요소들에 참조부호를 부가함에 있어서, 동일한 구성 요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다.
또한, 하기의 설명에서 구체적인 설계 구조와 같은 많은 특정 상세들은 본 발명의 보다 전반적인 이해를 제공하기 위해 나타나 있다. 이들 특정 상세들 없이 본 발명이 실시될 수 있다는 것은 이 기술분야에서 통상의 지식을 가진 자에게는 자명할 것이다.
그리고 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 공지 기능 및 구성에 대한 상세한 설명은 생략한다.
도 1은 본 발명의 바람직한 실시 예에 따른 동작 상태 테스트 장치가 적용된 감시제어 및 데이터취득 시스템(SCADA)의 전체 구성을 보여주는 도면이다.
이를 참조하면, 참조부호 100으로 대표될 수 있는 참조부호 100-1 및 100-2는 SCADA 시스템에서 사용되는 중앙통제 컴퓨터로서, 통상 스카다 서버라 칭하기도 한다.
상기 스카다 서버는 원격지의 각 현장에 설치되어 있는 설비의 상황을 실시간으로 운영자가 감시, 제어하며, 통상은 Workstation급의 프로세서와 UNIX환경, 혹은 PC(Personal Computer)기반의 HMI(Human Machine Interface) 소프트웨어의 결합을 통해 구축된다.
상기 스카다 서버는 공유 데이터베이스의 관리, 그리고 이력 데이터의 수집 및 데이터베이스의 관리, 전체 네트워크 및 시스템 관리를 수행한다.
참조부호 200은 본 출원인에 의해 제안되어 출원된 데이터 전송 프로토콜 변환기이며, 이는 제어 및 감시, 관리가 필요한 원격지 상의 통신 유닛 형태로서 구현된다.
상기 데이터 전송 프로토콜 변환기는 상기 스카다 서버와 통신 링크를 형성하며, 상기 형성된 통신 링크를 통해 상기 스카다 서버와 필요한 데이터 교환을 수행한다.
상기 데이터 전송 프로토콜 변환기는, 이미 구축된 SCADA 시스템의 성능 개선과 더불어, 다양한 원격지 장비들의 추가 구축, 그리고 기능의 추가 구현 등의 연유에 따라 시스템 상의 하드웨어 장비 변경이 이루어질 경우, SCADA 시스템의 정상 동작을 위해 성능 개선 및 추가되는 장비들 간의 통신 링크를 형성하는 데이터 전송 프로토콜이 동일하도록 데이터 전송 프로토콜을 변환하도록 하는 장치가 된다.
즉, 서로 다른 데이터 전송 프로토콜을 사용하는 중앙통제 컴퓨터와 원격지 장비들 간에도 데이터의 상호 교환이 자유로이 이루어질 수 있도록 하는 데이터 전송 프로토콜 변환기가 되는 것이다.
상기 데이터 전송 프로토콜 변환기를 통해 형성된 통신 링크는, 통상 TCP/IP 프로토콜을 기반으로 하는 어플리케이션 레이어 상의 IEC 60870-104(101), DNP 3.0, 해리스 프로토콜을 만족하여 형성된다.
즉, 상기 스카다 서버와 상기 데이터 전송 프로토콜 변환기는 IEC 60870-104(101), DNP 3.0, 해리스 프로토콜에 따라 필요한 데이터 교환을 행하게 된다.
또한, 상기 데이터 전송 프로토콜 변환기는 하위 단으로 구성되는 장비들, 이하 설명되는 원격지 상의 장비들과 통신 링크를 형성한다.
통상 상기 하위 단의 장비들과 상기 상위 단의 장비, 즉 스카다 서버는 서로 다른 제조자의 제품으로 구성될 시, 혹은 기능의 추가 구현 및 성능의 개선에 따라 서로 다른 데이터 전송 프로토콜을 가질 수 있다.
이 경우 상기 데이터 전송 프로토콜 변환기는 상기 서로 다른 데이터 전송 프로토콜간의 데이터 변환을 수행하여 상기 스카다 서버와 상기 하위 단의 장비들간의 통신 링크 형성이 가능하도록 한다.
실 예로서, 상기 스카다 서버와의 데이터 전송 프로토콜은 앞서 설명한 바와 같이 IEC 60870-104(101), DNP 3.0, 해리스 프로토콜 등이 되며, 하위 장비들과의 데이터 전송 프로토콜은 IEC 60870-103, DNP 3.0 프로토콜 등이 된다.
상위 단, 그리고 하위 단 모두 DNP 3.0 프로토콜을 사용할 경우, 데이터 전송 프로토콜이 일치하여 그에 따른 데이터 전송에 있어 별 문제가 되지 않는다.
그러나, 상기 IEC 60870-104(101)와 IEC 60870-103 프로토콜의 경우 서로 다른 코드, 즉 104(101) 및 103을 사용하므로 이들간에 정상적인 데이터 교환을 이루는 통신 링크의 형성은 이루어지지 않는다.
참고로, 상기 IEC 60870 전송 프로토콜의 경우 철도 제어 시스템으로 적용되는 스카다 시스템에서 널리 사용되고 있다.
따라서 상기 데이터 전송 프로토콜 변환기는 상기 코드 104(101) 및 103 간의 프로토콜 변환을 수행하게 된다.
또한, 상기 데이터 전송 프로토콜 변환기는 본 발명의 실시에 따라 구현된 테스트 터미널이 접속되며, 상기 스카다 서버, 그리고 원격지 장비들로부터 전송되는 데이터를 미리 지정된 프로토콜에 따라 상기 접속된 테스트 터미널로 전송 처리한다.
참조부호 300은 스타 커플러(Star Coupler)로서, 상기 데이터 전송 프로토콜 변환 장치와 오픈 모드 버스 방식으로 하위 레이어 상에서 통신 링크를 형성한다. 이의 상위 레이어는 TCP/IP 프로토콜이 되며, 이의 상위 레이어, 즉 어플리케이션 레이어 상에서는 상기 IEC 60870-103, DNP 3.0 프로토콜이 된다.
상기 스타 커플러를 통해 하나의 프로토콜 변환기, 즉 상기 통신 유닛과 다수 원격지 장비간의 통신 경로가 형성된다.
참조부호 400은 MU(Majority Unit)로서 상기 프로토콜 변환 장치와 직렬 방식의 통신 링크를 형성한다. 대표적 직렬 방식으로 RS 232C 혹은 RS 485 방식이 있다.
그러나, 실시자의 요구에 따라 IEC 60870-101, IEC 60870-104 프로토콜을 만족하는 통신 링크를 형성할 수 도 있다. 이 경우 본 발명의 실시에 따른 상기 데이터 전송 프로토콜 변환 장치의 경우 동일한 프로토콜간의 데이터 전송을 처리하게 된다.
참조부호 500-1 및 500-N은 원격지 상에 설치되는 원격지 장비들로서, 실제 현장 상태의 감시 및 제어, 그리고 경보 및 이벤트의 감시, 실시간 트렌드의 표시 동작을 행한다.
또한, 기타 보고서 조회 및 출력, 이력 이벤트의 조회 및 출력 기능을 부가적으로 수행하게 된다.
상기 원격지 장비들은 현장 데이터를 수집하게 되며, 이를 상위 시스템, 즉 스카다 서버로 전송하게 된다.
마찬가지로 스카다 서버로부터 전송된 제어 데이터를 수신하여 이를 현장으로 전송하게 된다.
상기 원격지 장비들은 상기 스타 커플러와 통신 링크를 형성하며, 상기 형성된 통신 링크는 TCP/IP 프로토콜을 기반으로 하여, 어플리케이션 레이어 상에서 IEC 60870-103, DNP 3.0, 해리스 프로토콜을 만족하도록 하여 형성된다.
참조부호 600은 본 발명의 실시에 따라 구현된 테스트 터미널로서, 이는 통상의 휴대용 컴퓨터 장치로서 구현된다.
상기 테스트 터미널은 본 발명의 실시에 따라 상기 SCADA 시스템의 동작 상태를 테스트하게 된다. 상기 테스트 터미널의 조작을 통해 운영자는 상기 SCADA 시스템의 동작 상태를 테스트하고 그 결과를 확인할 수 있게 된다.
상기 테스트 터미널은 본 발명의 실시에 있어 상기 데이터 전송 프로토콜 변환기로 접속 가능하도록 구현된다.
운영자는 SCADA 시스템의 전반적인 관리를 행함에 있어, 정상적인 동작 상태에 있는지를 상기 테스트 터미널의 조작과, 그에 따른 테스트 결과로서 확인할 수 있게 된다.
이를 통해 이상 부위, 고장 부위 등을 찾아낼 수도 있다.
도 2는 본 발명의 바람직한 실시 예에 따른 동작 상태 테스트 장치가 접속되는 감시제어 및 데이터취득 시스템(SCADA)의 데이터 전송 프로토콜 변환기 내부 모듈 구성을 보여주는 도면이다.
이를 참조하면, 본 발명의 실시에 따른 상기 데이터 전송 프로토콜 변환기의 내부는 크게 상위 프로토콜 해석기 210, 하위 프로토콜 해석기 240, 그리고 상기 상위 프로토콜 해석기 210 및 하위 프로토콜 해석기 240 상에서 해석 및 전송되는 패킷, 메시지를 데이터 형태로서 저장하는 송수신 버퍼 220, 230, 그리고 상위 및 하위 장비들로부터 전송 및 전송 요구되는 데이터를 상기 테스트 터미널로 전송, 혹은 수신하는 테스트 인터페이스 모듈로 구성된다.
먼저, 상기 상위 프로토콜 해석기 210은 SCADA 서버 100과의 통신 링크를 형성한다. 그리고 상기 형성된 통신 링크를 통해 상기 SCADA 서버 100으로부터의 패킷 수신을 처리하고, 수신된 패킷의 검증을 처리한다. 그리고 상기 수신된 패킷을 상기 테스트 인터페이스 모듈 250으로 전송 처리한다.
또한, 상기 상위 프로토콜 해석기 210은 원격지 장비들 500으로부터 전송된 후, 상기 스타 커플러 300, 혹은 상기 MU 400을 통해 전송되어 저장된 상태에 있어 데이터를 검색한다. 상기 검색된 데이터에서 요구된 데이터가 검출되고, 상기 검출된 데이터는 상기 SCADA 서버 100으로 전송 처리된다.
상기 스카다 서버 100과의 데이터 전송은 IEC 60870-104(101), DNP 3.0, 해리스 프로토콜을 만족하는 패킷 형태로서 이루어진다.
상기 하위 프로토콜 해석기 240은 상기 스타커플러 300, 상기 MU 400과의 통신 링크를 형성한다. 그리고 상기 형성된 링크를 통해 상기 스타커플러 300 및 상기 MU 400으로부터 전송되는 패킷 및 메시지의 수신 및 해석 처리를 행한다. 또한, 상기 수신된 패킷 및 메시지의 검증을 처리한다.
그리고, 상기 검증 처리된 패킷 및 메시지로부터 데이터 검출 동작을 행하며, 검출된 데이터를 송수신 버퍼 230, 240으로 저장 처리하는 동작을 수행한다.
상기 하위 프로토콜 해석기 240은 상기 스타커플러 300 및 상기 MU 400과의 패킷 및 메시지 전송을 오픈 모드 버스 상에서 IEC 60870-103, DNP 3.0 프로토콜에 따라 처리하여 수행한다.
또한, 상기 수신된 패킷 및 메시지를 상기 테스트 인터페이스 모듈로 전송 처리한다.
수신 버퍼 220은 상기 하위 프로토콜 해석기 240을 통해 해석된 후 검증된패킷 및 메시지를 저장하며, 상기 패킷 및 메시지의 저장은 상기 패킷 및 메시지로부터 추출된 데이터 형태로서 이루어진다.
상기 저장된 데이터는 상기 스카다 서버 100으로부터의 요구에 따라 상기 상위 프로토콜 해석기 210의 구동을 통해 검색 및 검출되어 패킷 화되어 상기 스카다 서버 100으로 전송된다.
송신 버퍼 230은 상기 스카다 서버 100으로부터 요구되는 패킷을 데이터 형태로서 저장하거나, 혹은, 상기 스카다 서버 100으로부터 상시 원격 장비들 500으로 전송되는 패킷을 데이터 형태로서 저장한다.
상기 송신 버퍼 230으로 저장되는 데이터는 상기 하위 프로토콜 해석기 240의 구동을 통해 상기 스타 커플러 300, 또는 상기 MU 400으로 패킷 및 메시지 형태로서 전송된다.
상기 전송되는 데이터는 IEC 60870-103, DNP 3.0 프로토콜에 따라 패킷 및 메시지로 변환 처리된 후 전송되는 것이다.
테스트 인터페이스 모듈 250은 상기 테스트 터미널 600과 통신 링크를 형성한다. 통신 링크 형성은 상기 테스트 터미널 600의 접속과, 미리 정해진 전송 프로토콜의 만족을 통해 이루어진다.
상기 테스트 터미널 600과 상기 테스트 인터페이스 모듈간의 통신 링크 형성이 이루어지고, 상기 테스트 터미널 600을 통해 운영자로부터 요구된 테스트 명령이 수신되면, 상기 인터페이스 모듈은 상기 명령에 해당하는 패킷, 메시지 등을 상기 테스트 터미널 600으로 전송 처리한다.
한편, 본 발명의 실시에 따른 테스트 장치의 구현에 있어서, 상기 데이터 전송 프로토콜 변환기 200의 내부로 상기 인터페이스 모듈 250이 내장된다.
이로서 본 발명의 실시에 따른 SCADA 시스템의 동작 상태 테스트는 상기 데이터 전송 프로토콜 변환기 200을 통해서 이루어지게 된다.
도 3은 본 발명의 바람직한 실시 예에 따른 감시제어 및 데이터취득 시스템(SCADA)의 동작 상태 테스트 장치의 테스트 동작 흐름을 보여주는 제어 흐름도로서, 상기 테스트 터미널 상에서 동작되는 동작의 흐름을 보여주는 도면이다.
이를 참조하면, 30단계에서 테스트 수행에 따른 강제 설정 모드 요구가 있는지 여부를 판단한다. 강제 설정 모드 요구가 있는 경우, 31단계에서 강제 설정 항목의 지정이 수행된다.
이 경우 운영자, 즉, 테스트를 수행하여 그 결과를 확인하고자 하는 운영자는 테스트 하고자 하는 항목을 강제 설정 항목으로 지정한다. 여기서 강제 설정 항목이라 함은, 상기 SCADA 시스템 상의 원격지 장비, 중앙통제 컴퓨터, 기타 관련 장비들의 동작 상태를 점검함에 필요한 항목들이 되며, 특히, 운영자가 강제로 상태를 지정하고 그 결과를 확인하고자 하는 항목을 의미한다.
이를 보다 상세히 설명하면, 테스트 하고자 하는 항목들 중에 특정 항목의 정상 상태 여부를 테스트 하고자 하는 경우, 현재 구동되는 시스템 상에서 송수신 및 전송, 교환되는 데이터, 혹은 메시지, 패킷들을 이용하여 해당 항목에 따른 동작 상태를 테스트하는 것이 아니라, 미리 정해진 정상 상태에 해당하는 데이터, 메시지, 패킷들을 강제로 이용하여 해당 항목에 따른 동작 상태를 테스트하도록 함에그에 해당하는 항목을 지정하는 단계의 동작이다.
31단계에서 강제 설정 항목의 지정이 이루어지면, 32단계에서 강제 리셋 요구가 있는지 여부를 판단한다. 상기 31단계에서 상제 리셋 요구가 있는 것으로 판단되면, 33단계에서 상기 지정된 상제 설정 항목들을 리셋 상태로 처리한다, 또 다른 의미로서 지정된 항목을 초기화시킨다.
상기 32단계에서 강제 리셋 요구가 없는 경우는, 상기 33단계의 동작을 수행하지 않고 다음 단계의 동작을 연속하여 수행한다.
34단계에서는 상기 테스트 터미널 600을 통해 테스트에 따른 결과 표시 시. 표시될 데이터가 상기 31단계를 통해 강제 설정 항목으로 지정된 항목에 해당하는 데이터가 되는지 여부를 판단한다. 그러한 경우 35단계에서 상기 강제 설정된 데이터를 통해 해당 항목의 상태를 표시한다.
이는 SCADA 시스템의 동작 상태가 정상 상태에 있는지 여부를 테스트하여 확인하기 위한 동작이 되며, 정상 상태의 데이터를 전송한 후 그에 따른 상기 SCADA 시스템의 응답 상태를 테스트 함으로서 SCADA 시스템의 정상 상태를 확인하는 테스트 동작이 된다.
그러나, 상기 34단계에서 강제 설정 항목으로 지정된 항목에 해당하는 데이터가 아닌 경우는, 36단계에서 현재 수신되는 데이터를 통해 해당 항목의 상태를 그대로 표시한다.
이는, SCADA 시스템의 동작 상태가 정상 상태에 있는지 여부를 테스트하여 확인하기 위한 또 다른 상태의 동작이 되며, 이는 현재 SCADA 시스템의 동작 실시에 따라 상기 테스트 터미널 600으로 수신되는 데이터를 그대로 이용하여 시스템의 정상 상태를 확인하는 테스트 동작이 된다.
37단계에서는 종료 요구 여부를 판단하고, 해당 테스트 동작을 종료 처리한다.
종료 요구가 없는 경우, 상기 30단계의 동작을 되풀이하여 수행한다.
첨부된 도 4는 본 발명의 바람직한 실시 예에 따른 감시제어 및 데이터취득 시스템(SCADA)의 동작 상태 테스트 장치의 테스트 항목 지정 상태와 그에 따라 수신 및 사용되는 데이터의 상태를 테이블 형태로서 구분하여 나타내는 도면이다.
이를 참조하면, 테스트 하고자 하는 각 항목별로, 강제 설정 상태 여부, 강제 설정될 시 사용되는 설정 데이터, 그리고 강제 설정 상태가 아닐시 사용되는 현재의 수신 데이터 상태를 알 수 있다.
실 예로, 테스트 대상이 되는 A 항목의 경우 강제 설정 상태에 있음을 알 수 있다. 이 경우 상기 테스트 터미널을 통해 SCADA 시스템의 동작 상태를 테스트할 시, 설정 데이터 영역의 200이 사용된다.
반대로, 테스트 대상이 되는 B 항목의 경우 강제 설정 상태에 있지 않음을 알 수 있다. 이 경우는, 상기 테스트 터미널을 통해 SCADA 시스템의 동작 상태를 테스트할 시, 수신 데이터 영역의 300이 사용된다. 이는 별도의 강제 설정 없이, SCADA 시스템 상에서 전송되는 데이터를 이용 해당 시스템의 동작 상태를 테스트하는 경우가 된다.
한편, 본 발명의 상세한 설명에서는 구체적인 실시 예를 들어 설명하였으나,본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 안되며 후술하는 특허청구의 범위뿐 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.