KR20130079046A - Hmi 시뮬레이터 및 plc 시뮬레이터간의 통신 시뮬레이션 시스템 - Google Patents
Hmi 시뮬레이터 및 plc 시뮬레이터간의 통신 시뮬레이션 시스템 Download PDFInfo
- Publication number
- KR20130079046A KR20130079046A KR1020120000297A KR20120000297A KR20130079046A KR 20130079046 A KR20130079046 A KR 20130079046A KR 1020120000297 A KR1020120000297 A KR 1020120000297A KR 20120000297 A KR20120000297 A KR 20120000297A KR 20130079046 A KR20130079046 A KR 20130079046A
- Authority
- KR
- South Korea
- Prior art keywords
- plc
- hmi
- simulator
- unit
- debugging
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- G05B19/058—Safety, monitoring
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B17/00—Systems involving the use of models or simulators of said systems
- G05B17/02—Systems involving the use of models or simulators of said systems electric
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/70—Services for machine-to-machine communication [M2M] or machine type communication [MTC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Programmable Controllers (AREA)
Abstract
본 발명의 실시예에 따른 시뮬레이션 시스템은 프로그래머블 로직 컨트롤러(PLC)와 휴먼 머신 인터페이스(HMI)간의 시뮬레이션 시스템에 있어서, HMI의 동작을 시뮬레이션하는 HMI연산부, 상기 시뮬레이션 HMI의 동작에 의한 PLC에서의 동작 결과 데이터를 수신하는 HMI통신부 및 상기 HMI의 동작 또는 상기 동작 결과 데이터를 표시하기 위한 표시부를 포함하는 HMI 시뮬레이터; 및 상기 HMI 시뮬레이터와 통신하기 위한 PLC통신부, 상기 HMI의 동작에 따른 PLC 연산을 수행하는 PLC연산부를 포함하는 PLC 시뮬레이터를 포함한다.
Description
본 발명은 HMI 시뮬레이터 및 PLC 시뮬레이터간의 통신 시뮬레이션 시스템 에 관한 것이다.
전통적인 산업현장에서 자동화 설비는 릴레이등을 사용한 기계적인 장비로 구성되어 있었다. 기계적인 장비로 되어 있는 자동화 설비의 기능을 바꾸기 위해서는 설비 내부회로의 배선을 다시 일일히 고쳐야 하는 어려움이 있었다. 이러한 점을 해결하고자 만들어진 것이 프로그래머블 로직 컨트롤러(PLC)이다. 첨단 기술로 인하여 자동화 분야가 발전을 하면서 다양한 종류의 공장 자동화를 위해서도 PLC 시스템은 점점 더 중요해지고 있다. 산업현장 안에서 사람의 뇌의 역할을 하는 PLC 시스템은 더욱 더 첨단화가 되어가고 있는 것이다.
PLC는 프로그램 가능한 논리적인 컨트롤러이다. PLC는 일반적으로 컴퓨터와 같은 역할을 하는데, 기계등의 설비에서 오는 신호를 받아서 내부에 프로그램된 내용대로 처리한 이후에 처리된 신호를 설비로 출력한다. PLC는 릴레이, 타이머 및 카운터 등과 같은 제어장치의 기능을 집적소자 및 트랜지스터 등과 같은 반도체 소자로 대체한 것으로서 기본적인 시퀀스 제어 기능에 수치 연산 기능을 추가하여 프로그램 제어가 가능하고, 내부의 메모리에 미리 저장된 프로그램에 따라 소정의 로직을 수행한다. PLC는 장치제어, 장치 수치세팅, 시간제어, 실시간감시, 실시간 데이타수집, 및 안전장치 가동등 다양한 작업에 적용될 수 있다.
최근에는 산업현장에서 PLC 시스템은 매우 중요한 요소가 되었다. PLC 시스템을 잘 동작시킨다는 것은 공장 내부의 자동화 기기들이 효율적으로 동작하고 있다는 것을 의미한다. 따라서 PLC 시스템이 잘 동작하는 것에 대해서 PLC 시스템의 동작을 시뮬레이션 하고, 로직을 디버깅 하기 위한 PLC 시뮬레이터가 제안되었다. 또한, PLC 시스템을 모니터링하고, 그 제어를 쉽게 하기 위한 휴먼 머신 인터페이스(HMI)가 제안되었는데, HMI 또한 그 동작을 시뮬레이션 하여 미리 조작 결과를 예측하고, 디버깅 할 수 있는 시뮬레이터가 존재한다.
도 1은 일반적인 HMI 시뮬레이터를 도시한 블록도이다.
도 1을 참조하면, 일반적인 HMI 시뮬레이터(10)는 PLC의 상태와 동작 결과를 표시하기 위한 표시부(11), 표시부의 동작을 제어하고 입출력 데이터를 연산하는 연산부(12) 및 입출력되는 데이터를 저장하기 위한 가상 메모리(13)를 포함한다.
일반적인 HMI 시뮬레이터(10)는 가상 메모리(13)에 작업자가 직접 입력한 값을 기초로 PLC의 동작을 예측하고, 연산부(12)에서는 예측된 PLC의 동작에 대응하는 스크립트를 수행하는 등의 연산을 한 후, 그 결과를 표시부(110로 출력한다.
한편, 도 2는 일반적인 HMI 시뮬레이터 및 PLC 시뮬레이터간 통신 가능한 시뮬레이션 시스템을 나타낸 블록도이다.
도 2를 참조하면 일반적인 시뮬레이션 시스템은 HMI 시뮬레이터(10)와 PLC 시뮬레이터(20)는 각각 독립적으로 동작하되, 공용 메모리(13)에 상호간 입출력 데이터를 저장한다. 즉, HMI 시뮬레이터(10)에서 HMI연산부(12)를 통해 PLC에 입력될 값을 공용 메모리(13)에 저장하고, PLC연산부(21)에서는 공용 메모리(13)로부터 PLC입력될 값을 로드하여 PLC제어부(22)로 전송한다. PLC제어부(22)는 PLC연산부(21)와 통신하며 PLC 시뮬레이션 연산을 수행하여 그 결과를 다시 공용 메모리(13)에 저장한다. HMI연산부(21)는 공용 메모리(13)결과값을 다시 로드하여 표시부(11)에 표시한다.
이와 같이 일반적인 HMI 시뮬레이터와 PLC 시뮬레이터는 공용 메모리 또는 가상 메모리를 사용하여 사용자가 직접 결과값을 입력하거나, HMI와 PLC의 상호 연동 없이 독립적으로 실행되면서 메모리를 공유하는 방법이 사용되고 있다. 그러나, 이와 같은 시뮬레이션 시스템에는 다음과 같은 문제점이 있다.
먼저, PLC 와 HMI간의 데이터의 연계성이 부족한 문제점이 있다. 특히, 가상 메모리를 사용하는 경우 사용자가 임의의 PLC 동작 결과값을 직접 입력해야 하므로 정확성이 떨어질 수 있다. 또한, HMI사용자는 PLC 동작 결과값 입력시 PLC 전체의 동작을 이해해야 하나, 일반적으로 HMI작업자와 PLC작업자는 동일한 사용자가 아닐 수 있으므로, 상호간 동작 이해에 어려움이 있다.
또한, PLC 시뮬레이터와 HMI 시뮬레이터가 공유 메모리를 사용하는 경우, 동시에 해당 메모리에 접근하거나, 어느 한 쪽 시뮬레이터에 오류가 발생하여 메모리 접근에 문제가 발생한 경우, 다른 한 쪽의 시뮬레이터의 메모리 접근에도 문제가 발생하게 되므로 PLC 시뮬레이터와 HMI 시뮬레이터간의 동기화가 어려운 문제점이 있다.
마지막으로, HMI 시뮬레이터가 단독으로 동작할 경우에는 PLC 장치에서의 오류 발생 여부까지는 시뮬레이션할 수 없어 HMI 시뮬레이터의 신뢰도에도 문제가 발생할 수 있다.
본 발명의 목적은, 상술한 문제점들을 해결하기 위한 시뮬레이션 시스템을 제공함에 있다.
그리고, HMI 시뮬레이터와 PLC 시뮬레이터간의 통신 연동을 지원하는 시뮬레이션 시스템을 제공하는 데 있다.
또한, HMI 시뮬레이터와 PLC 시뮬레이터간의 데이터 동기화를 지원하여 정확성을 높이고, 예상치 못했던 오류 등을 사전에 검증 가능한 시스템을 제공함에 있다.
상기 목적을 달성하기 위한 본 발명의 실시예에 따른 시뮬레이션 시스템은 프로그래머블 로직 컨트롤러(PLC)와 휴먼 머신 인터페이스(HMI)간의 시뮬레이션 시스템에 있어서, HMI의 동작을 시뮬레이션하는 HMI연산부, 상기 시뮬레이션 HMI의 동작에 의한 PLC에서의 동작 결과 데이터를 수신하는 HMI통신부 및 상기 HMI의 동작 또는 상기 동작 결과 데이터를 표시하기 위한 표시부를 포함하는 HMI 시뮬레이터; 및 상기 HMI 시뮬레이터와 통신하기 위한 PLC통신부, 상기 HMI의 동작에 따른 PLC 연산을 수행하는 PLC연산부를 포함하는 PLC 시뮬레이터를 포함한다.
상기 목적을 달성하기 위한 본 발명의 실시예에 따른 시뮬레이션 시스템의 동작 방법은 프로그래머블 로직 컨트롤러(PLC)와 휴먼 머신 인터페이스(HMI)간의 시뮬레이션 시스템의 구동 방법에 있어서, HMI 시뮬레이터 및 PLC 시뮬레이터의 구동을 시작하는 단계; 상기 PLC 시뮬레이터를 구동하기 위한 메모리를 생성하는 단계; 상기 HMI 시뮬레이터 및 상기 PLC시뮬레이터간의 데이터 송수신을 수행하는 단계; 상기 송수신된 데이터에 기초하여 상기 HMI시뮬레이터와 상기 PLC시뮬레이터의 시뮬레이션 연산을 수행하는 단계; 및 상기 연산 수행 결과를 디스플레이 하는 단계를 포함하고, 상기 HMI 시뮬레이터와 상기 PLC 시뮬레이터는 상기 생성된 메모리를 이용하여 상기 시뮬레이션 연산 또는 상기 데이터 송수신을 수행한다.
본 발명의 실시예에 따르면, HMI 시뮬레이터와 PLC 시뮬레이터간의 통신 연동을 지원하여 HMI 시뮬레이터와 PLC 시뮬레이터간 통신 시뮬레이션이 용이하게 된다.
또한, HMI 시뮬레이터와 PLC 시뮬레이터간의 데이터 동기화를 지원하여 정확성을 높이고, 예상치 못했던 오류 등을 사전에 검증 가능하게 된다.
한편, PLC 시뮬레이터의 모니터링 및 디버깅이 가능하게 되어 시뮬레이션 시스템의 신뢰도를 향상시킬 수 있다.
도 1은 가상 메모리를 이용한 일반적인 HMI 시뮬레이터를 도시한 블록도이다.
도 2는 일반적인 HMI 시뮬레이터와 PLC 시뮬레이터간의 공용 메모리를 이용한 시뮬레이션 시스템을 도시한 도면이다.
도 3은 본 발명의 일 실시예에 따른 시뮬레이션 시스템을 도시한 도면이다.
도 4는 본 발명의 다른 일 실시예에 따라 시뮬레이션된 HMI 시뮬레이터를 PLC 장치와 연결하는 것을 나타낸 도면이다.
도 5는 본 발명의 다른 일 실시예에 따라 HMI시뮬레이터와 PLC장치와의 연결 구성을 나타낸 도면이다.
도 6는 본 발명의 일 실시예에 따른 시뮬레이터 시스템의 동작 방법을 나타내기 위한 흐름도이다.
도 2는 일반적인 HMI 시뮬레이터와 PLC 시뮬레이터간의 공용 메모리를 이용한 시뮬레이션 시스템을 도시한 도면이다.
도 3은 본 발명의 일 실시예에 따른 시뮬레이션 시스템을 도시한 도면이다.
도 4는 본 발명의 다른 일 실시예에 따라 시뮬레이션된 HMI 시뮬레이터를 PLC 장치와 연결하는 것을 나타낸 도면이다.
도 5는 본 발명의 다른 일 실시예에 따라 HMI시뮬레이터와 PLC장치와의 연결 구성을 나타낸 도면이다.
도 6는 본 발명의 일 실시예에 따른 시뮬레이터 시스템의 동작 방법을 나타내기 위한 흐름도이다.
이하의 내용은 단지 본 발명의 원리를 예시한다. 그러므로 당업자는 비록 본 명세서에 명확히 설명되거나 도시되지 않았지만 본 발명의 원리를 구현하고 본 발명의 개념과 범위에 포함된 다양한 장치를 발명할 수 있는 것이다. 또한, 본 명세서에 열거된 모든 조건부 용어 및 실시예들은 원칙적으로, 본 발명의 개념이 이해되도록 하기 위한 목적으로만 명백히 의도되고, 이와 같이 특별히 열거된 실시예들 및 상태들에 제한적이지 않는 것으로 이해되어야 한다.
또한, 본 발명의 원리, 관점 및 실시예들 뿐만 아니라 특정 실시예를 열거하는 모든 상세한 설명은 이러한 사항의 구조적 및 기능적 균등물을 포함하도록 의도되는 것으로 이해되어야 한다. 또한 이러한 균등물들은 현재 공지된 균등물뿐만 아니라 장래에 개발될 균등물 즉 구조와 무관하게 동일한 기능을 수행하도록 발명된 모든 소자를 포함하는 것으로 이해되어야 한다.
따라서, 예를 들어, 본 명세서의 블럭도는 본 발명의 원리를 구체화하는 예시적인 회로의 개념적인 관점을 나타내는 것으로 이해되어야 한다. 이와 유사하게, 모든 흐름도, 상태 변환도, 의사 코드 등은 컴퓨터가 판독 가능한 매체에 실질적으로 나타낼 수 있고 컴퓨터 또는 프로세서가 명백히 도시되었는지 여부를 불문하고 컴퓨터 또는 프로세서에 의해 수행되는 다양한 프로세스를 나타내는 것으로 이해되어야 한다.
프로세서 또는 이와 유사한 개념으로 표시된 기능 블럭을 포함하는 도면에 도시된 다양한 소자의 기능은 전용 하드웨어뿐만 아니라 적절한 소프트웨어와 관련하여 소프트웨어를 실행할 능력을 가진 하드웨어의 사용으로 제공될 수 있다. 프로세서에 의해 제공될 때, 상기 기능은 단일 전용 프로세서, 단일 공유 프로세서 또는 복수의 개별적 프로세서에 의해 제공될 수 있고, 이들 중 일부는 공유될 수 있다.
또한 프로세서, 제어 또는 이와 유사한 개념으로 제시되는 용어의 명확한 사용은 소프트웨어를 실행할 능력을 가진 하드웨어를 배타적으로 인용하여 해석되어서는 아니되고, 제한 없이 디지털 신호 프로세서(DSP) 하드웨어, 소프트웨어를 저장하기 위한 롬(ROM), 램(RAM) 및 비 휘발성 메모리를 암시적으로 포함하는 것으로 이해되어야 한다. 주지관용의 다른 하드웨어도 포함될 수 있다.
본 명세서의 청구범위에서, 상세한 설명에 기재된 기능을 수행하기 위한 수단으로 표현된 구성요소는 예를 들어 상기 기능을 수행하는 회로 소자의 조합 또는 펌웨어/마이크로 코드 등을 포함하는 모든 형식의 소프트웨어를 포함하는 기능을 수행하는 모든 방법을 포함하는 것으로 의도되었으며, 상기 기능을 수행하도록 상기 소프트웨어를 실행하기 위한 적절한 회로와 결합된다. 이러한 청구범위에 의해 정의되는 본 발명은 다양하게 열거된 수단에 의해 제공되는 기능들이 결합되고 청구항이 요구하는 방식과 결합되기 때문에 상기 기능을 제공할 수 있는 어떠한 수단도 본 명세서로부터 파악되는 것과 균등한 것으로 이해되어야 한다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명하기로 한다.
도 3은 본 발명의 일실시예에 따른 HMI 시뮬레이터와 PLC 시뮬레이터를 포함하는 시뮬레이션 시스템을 나타낸 블록도이다.
도 3에 도시된 바와 같이, 본 발명의 일 실시예에 따른 시뮬레이션 시스템은 표시부(110), HMI연산부(130) 및 HMI통신부(120)을 포함하는 HMI 시뮬레이터(100)와, PLC통신부(210), PLC 제어부(220), PLC연산부(230), 메모리부(240) 및 디버깅부(250)를 포함하는 PLC 시뮬레이터(200)를 포함하여 구성된다.
HMI연산부(130)는 HMI 시뮬레이터(100)의 구동 정보 또는 데이터 통신 정보를 사용자 또는 외부로부터 수신하여 HMI의 구동을 시뮬레이션 연산하고, PLC를 동작시키기 위한 데이터 HMI통신부(120)로 전송한다.
그리고, HMI(통신부)는 수신한 PLC 동작 데이터를 PLC와 통신 가능한 프로토콜로 변환하여 PLC통신부(210)로 전송한다.
한편, PLC연산부(230)는, PLC제어부(220)의 제어에 따라 PLC의 구동을 시뮬레이션 연산하며, PLC통신부(210)를 통하여 PLC 동작 데이터를 수신한다. 그리고, PLC연산부(230)는 메모리부(240)를 이용하여 수신한 동작 데이터에 대한 PLC 시뮬레이션 결과를 저장하며, PLC통신부(210)로 출력한다.
또한, 디버깅부(250)는 사용자에 의한 디버깅 명령이 있는 경우에는, PLC연산부(230)의 동작을 정지하고, 디버깅 명령을 수행하며, 메모리부(240)를 통하여 디버깅된 PLC 동작 데이터를 저장한다. 이후, PLC연산부(230)는 디버깅된 PLC동작을 로드하여 시뮬레이션 연산을 다시 수행한다.
그리고, PLC통신부(210)는 시뮬레이션 결과 데이터를 HMI통신부(120)로 전송하고, HMI연산부(130)는 HMI통신부(120)로부터 시뮬레이션 결과 데이터를 수신하여 HMI 연산을 재수행하며, 표시부(110)에 그 결과를 디스플레이한다.
표시부(110)는 HMI연산부(130)에 의해 결과를 디스플레이 한다. 표시부(110)는 PDP, LCD, OLED, 플렉시블 디스플레이(flexible display), 3차원 디스플레이(3D display) 등이 가능할 수 있으며, 터치 스크린으로 구성되어 디스플레이 장치 이외에 입력 장치로 사용되는 것도 가능하다.
도 4는 본 발명의 다른 일 실시예에 따라 HMI 시뮬레이터(100)를 PLC 장치(400)와 연결하는 것을 나타낸 도면이다.
도 4와 같이, HMI 시뮬레이터(100)는 노트북 또는 태블릿 PC 등의 프로세서를 포함하는 장치 일 수 있다.
이와 같은 HMI 시뮬레이터(100)는 통신 수단(300)을 이용하여 PLC 장치(400)와 연결될 수 있다. 따라서, HMI 시뮬레이터(100)를 이용하여 직접 PLC 장치(400)의 동작을 제어 가능하다. 이 경우 시뮬레이션 시스템의 구성에 대하여는 후술한다.
한편, 통신 수단(300)은 유선 통신 또는 무선 통신 수단 중 어느 하나를 이용할 수 있으며, 유선 통신 수단의 경우에는 예를 들어, RS232C, RS422, RS485 또는 이더넷 중 어느 하나의 방식을 이용할 수 있다.
또한 무선 통신 수단의 경우에는 예를 들어, 블루투스(Bluetooth), RFID(Radio Frequency Identification), 적외선 통신(IrDA, infrared Data Association), UWB(Ultra Wideband), 지그비(ZigBee), DLNA (Digital Living Network Alliance) 등의 통신 규격을 이용하여 PLC 장치(400)와 연결될 수 있다.
도 5는 도 4에서 도시한 시뮬레이션 시스템을 블록도로 설명하기 위해 도시한 도면이다.
도 5를 참조하면, 본 발명의 다른 일 실시예에 따른 시뮬레이션 시스템은 표시부(100) 및 HMI통신부(120)을 포함하는 HMI시뮬레이터(100) 및 PLC통신부(410), PLC제어부(430) 및 PLC연산부(420)를 포함하는 PLC 장치(400)를 포함하여 구성된다.
도 5의 경우에는, HMI 시뮬레이터(100)가 내부 메모리를 사용하지 않으며, HMI통신부(120)를 이용하여 PLC 장치(400)와 직접 통신이 이루어져 시뮬레이션이 가능하게 된다. 따라서, 직접 PCL 장치(400)의 동작을 확인할 수 있으면서도 메모리의 사용을 줄일 수 있는 효과가 있다.
즉, 상술한 노트북 또는 태블릿 컴퓨터의 프로세서와 같은 HMI 제어부(미도시)는 HMI통신부(120)와 표시부(110)를 제어하고, PLC 장치(400)와 직접 통신하여 사용자에게 HMI와 PLC의 시뮬레이션 상태 및 동작 데이터를 제공한다.
따라서, PLC 장치(400)는 PLC통신부(410)를 통하여 HMI 시뮬레이터(100)로부터 PLC 동작 데이터를 수신하고, 이를 이용하여 PLC 연산을 수행하며, 다시 PLC통신부(410)를 통하여 HMI 시뮬레이터(100)로 전송하게 되면 HMI시뮬레이터(100)는 상술한 바와 같은 HMI와 PLC의 시뮬레이션 상태 및 동작 데이터를 사용자에게 제공하게 된다. 상태 및 동작 데이터는 PLC 장치(400)의 내부 상태 및 제어 시스템 I/0 인터페이스 접근 정보 중 적어도 하나를 포함할 수 있으며, 이를 이용하여 사용자는 정확한 PLC 장치(400)의 상태 및 동작을 모니터링할 수 있는 효과가 있다. 또한 시뮬레이션 과정에서 PLC의 로직을 이해하는 과정이 생략되므로, 사용자 편의를 증진시킬 수 있는 효과가 있다.
도 6은 본 발명의 일 실시예에 따른 HMI와 PLC 시뮬레이션 시스템의 동작 방법을 나타낸 흐름도이다.
도 6을 참조하면, HMI 시뮬레이터(100)는 구동을 시작하고(S1000), PLC 시뮬레이터도 마찬가지로 구동을 시작한다(S1010).
그리고, PLC 시뮬레이터(200)는 PLC 시뮬레이션을 위한 메모리를 생성한다(S1020). 메모리는 PLC 시뮬레이터의 메모리부(240)에 생성되며, 상기 메모리부(240)는 예를 들어 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램, 롬(EEPROM 등) 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
그리고, PLC 시뮬레이터(200)는 디버깅 모드인지를 판단한다(S1030). 디버깅 모드의 판단은 디버깅부(250)에서 이루어진다. 디버깅 여부의 결정은 사용자에 의해 하드웨어 또는 프로그램적인 디버그 인터럽트 입력이 이루어졌는지로 판단할 수 있다.
이후, 디버깅 모드인 경우, PLC 시뮬레이터(200)는 디버깅부(250)를 통하여 디버깅 연산을 수행하고, 그 결과를 PCL 연산부(230)로 전송하여 반영하도록 한다(S1040). PCL 연산부(230)는 디버깅된 결과에 따라 구동 방식 또는 PLC 로직을 변경하여 재구동할 수 있다.
한편, HMI 시뮬레이터(100)는 구동 이후, PLC와의 연동 시뮬레이션을 위해 PLC 시뮬레이터(200)로 통신 프로토콜을 요청한다(S1050). 통신 프로토콜의 요청은 HMI통신부(120)에서 수행될 수 있다.
그리고, 디버깅 결과가 반영되거나, 상기 S1030에서 판단 결과 디버깅 모드가 아닌 경우에는 PLC 시뮬레이터(200)는 HMI 시뮬레이터(100)로부터 PLC통신부(210)를 통해 상술한 바와 같은 통신 프로토콜 요청이 있는지를 판단한다(S1060).
PLC시뮬레이터(200)는 HMI 시뮬레이터(100)로부터 통신 프로토콜 요청이 있는 경우, HMI시뮬레이터(100)로부터 PLC통신부(210)를 통해 PLC구동 데이터를 수신한다. PLC 시뮬레이터(200)는 수신한 데이터를 상술한 메모리에 로드하고(S1070), PLC연산부(230)를 통해 이에 대한 PLC 연산을 수행하여 결과 데이터를 출력한뒤, 출력된 결과 데이터를 PLC통신부(210)를 통해 HMI통신부(120)로 전송한다(S1080).
이후, HMI 시뮬레이터(100)는 HMI통신부(120)를 통해 상기 출력된 결과 데이터를 수신하고, HMI 연산부(130)는 이에 기초하여 HMI 시뮬레이션 연산을 수행한다(S1090). 그리고, 수행된 연산을 표시 가능한 데이터로 변환하여 표시부(110)로 전송하고, 표시부는(110) HMI 시뮬레이션 연산 및 PLC 시뮬레이션 연산 결과를 디스플레이한다.
한편, 상술한 시뮬레이션 과정이 완료된 경우, HMI 시뮬레이터(100)는 종료 인터럽트가 발생하였는지 판단한다(S1110). 또한 PLC 시뮬레이터도 종료 인터럽트가 발생하였는지 판단한다(S1130). 종료 인터럽트는 사용자의 입력에 의한 종료 인터럽트 일 수 있으며, 기 설정된 프로그램에 따라 발생한 종료 인터럽트 일 수 있다. 종료 인터럽트는 각 시뮬레이터를 종료하기 위한 종료 신호를 포함할 수 있다.
그리고, 상기 S1110판단 결과, 종료 인터럽트가 발생한 경우, HMI 시뮬레이터(100)는 종료되고, 구동을 중지한다(S1120). 또한 상기 S1140판단 결과 종료 인터럽트가 발생한 경우 마찬가지로 PLC 시뮬레이터(200)는 종료되고, 구동을 중지한다(S1140).
상술한 시뮬레이션 시스템의 구동 방법에 의하여 HMI 시뮬레이터와 PLC 시뮬레이터간의 통신 및 상호간 구동을 시뮬레이션 할 수 있다. 이와 같은 시뮬레이션 방법을 통하여, PLC 시뮬레이터와 HMI 시뮬레이터간의 정확성 높은 데이터 전송이 가능하며, 상호간 결과값만을 이용하여 구동되므로, 사용자는 PLC 로직에 대해 이해하고 있지 못하더라도 시뮬레이션 결과를 바로 확인하고 쉽게 이해할 수 있는 효과가 있다.
한편, PLC 시뮬레이터의 동작에 디버깅 과정이 포함됨으로써, 보다 정확한 동작 결과를 예측할 수 있다. 따라서, 시뮬레이터의 신뢰도를 향상시킬 수 있다.
상술한 본 발명에 따른 시뮬레이션 시스템의 구동 방법은 컴퓨터에서 실행되기 위한 프로그램으로 제작되어 컴퓨터가 읽을 수 있는 기록 매체에 저장될 수 있으며, 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다.
컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 상기 방법을 구현하기 위한 기능적인(function) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형 실시가 가능한 것은 물론이고, 이러한 변형 실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해 되어서는 안될 것이다.
100: HMI 시뮬레이터 110: 표시부
120: HMI통신부 130: HMI연산부
200: PLC 시뮬레이터 210: PLC통신부
220: PLC제어부 230: PLC연산부
240: 메모리부 250: 디버깅부
120: HMI통신부 130: HMI연산부
200: PLC 시뮬레이터 210: PLC통신부
220: PLC제어부 230: PLC연산부
240: 메모리부 250: 디버깅부
Claims (9)
- 프로그래머블 로직 컨트롤러(PLC)와 휴먼 머신 인터페이스(HMI)간의 시뮬레이션 시스템에 있어서,
HMI의 동작을 시뮬레이션하는 HMI연산부, 상기 시뮬레이션 HMI의 동작에 의한 PLC에서의 동작 결과 데이터를 수신하는 HMI통신부 및 상기 HMI의 동작 또는 상기 동작 결과 데이터를 표시하기 위한 표시부를 포함하는 HMI 시뮬레이터; 및
상기 HMI 시뮬레이터와 통신하기 위한 PLC통신부, 상기 HMI의 동작에 따른 PLC 연산을 수행하는 PLC연산부를 포함하는 PLC 시뮬레이터를 포함하는 시뮬레이션 시스템. - 제1항에 있어서,
상기 HMI통신부는 상기 HMI의 동작 데이터를 상기 PLC 시뮬레이터에서 인식가능한 프로토콜로 변환하여 상기 PCL 시뮬레이터로 전송하는 시뮬레이션 시스템. - 제1항에 있어서,
상기 PLC 시뮬레이터는 상기 PCL 시뮬레이터를 모니터링하고, 디버깅하기 위한 디버깅부를 더 포함하는 시뮬레이션 시스템. - 제1항에 있어서,
상기 PLC 시뮬레이터는 상기 PLC 시뮬레이터의 동작 수행 결과를 저장하기 위한 메모리부를 더 포함하는 시뮬레이션 시스템. - 제1항에 있어서,
상기 HMI통신부는 RS232C, RS422, 이더넷, 무선 통신 중 적어도 하나의 프로토콜을 이용하여 통신하는 시뮬레이션 시스템. - 제1항에 있어서,
상기 HMI 시뮬레이터는 PLC 제어 시스템과 연결 가능한 인터페이스부를 더 구비하는 시뮬레이션 시스템. - 제3항에 있어서,
상기 모니터부는 디버깅 모드인 경우, 디버깅 정보를 수신하여 상기 PLC 연산부를 디버깅하고, 상기 디버깅 결과를 메모리부에 갱신하여 저장하는 시뮬레이션 시스템. - 프로그래머블 로직 컨트롤러(PLC)와 휴먼 머신 인터페이스(HMI)간의 시뮬레이션 시스템의 구동 방법에 있어서,
HMI 시뮬레이터 및 PLC 시뮬레이터의 구동을 시작하는 단계;
상기 PLC 시뮬레이터를 구동하기 위한 메모리를 생성하는 단계;
상기 HMI 시뮬레이터 및 상기 PLC시뮬레이터간의 데이터 송수신을 수행하는 단계;
상기 송수신된 데이터에 기초하여 상기 HMI시뮬레이터와 상기 PLC시뮬레이터의 시뮬레이션 연산을 수행하는 단계; 및
상기 연산 수행 결과를 디스플레이 하는 단계를 포함하고,
상기 HMI 시뮬레이터와 상기 PLC 시뮬레이터는 상기 생성된 메모리를 이용하여 상기 시뮬레이션 연산 또는 상기 데이터 송수신을 수행하는 시뮬레이션 시스템의 구동 방법. - 제8항에 있어서,
상기 시뮬레이션 연산을 수행하는 단계는
상기 PLC 시뮬레이터가 디버깅 모드인 경우 디버깅 연산을 수행하는 단계; 및
상기 디버깅 연산 결과를 상기 메모리에 반영하는 단계를 포함하는 시뮬레이션 시스템의 구동 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120000297A KR101323937B1 (ko) | 2012-01-02 | 2012-01-02 | Hmi 시뮬레이터 및 plc 시뮬레이터간의 통신 시뮬레이션 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120000297A KR101323937B1 (ko) | 2012-01-02 | 2012-01-02 | Hmi 시뮬레이터 및 plc 시뮬레이터간의 통신 시뮬레이션 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130079046A true KR20130079046A (ko) | 2013-07-10 |
KR101323937B1 KR101323937B1 (ko) | 2013-10-31 |
Family
ID=48991877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120000297A KR101323937B1 (ko) | 2012-01-02 | 2012-01-02 | Hmi 시뮬레이터 및 plc 시뮬레이터간의 통신 시뮬레이션 시스템 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101323937B1 (ko) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017129957A (ja) * | 2016-01-19 | 2017-07-27 | 東芝三菱電機産業システム株式会社 | インタフェース試験装置およびインタフェース試験システム |
JP2017130139A (ja) * | 2016-01-22 | 2017-07-27 | 東芝三菱電機産業システム株式会社 | インタフェース試験システム |
KR20230103538A (ko) | 2021-12-31 | 2023-07-07 | 한전케이피에스 주식회사 | 다중 전기회로 시퀀스 점검용 장치 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101806356B1 (ko) * | 2015-04-27 | 2017-12-15 | 주식회사 셈웨어 | 블록 다이어그램과 plc 시뮬레이터를 이용한 가상 플랜트 시뮬레이터 및 이를 이용한 시뮬레이터 실행 방법 |
PH12017000087A1 (en) * | 2017-03-10 | 2019-01-21 | Ribomapil D Nacorda | Computer-assisted programmable logic controller-based input-output simulator |
KR101965848B1 (ko) * | 2017-08-24 | 2019-04-04 | 한국수자원공사 | 수열원을 이용한 열교환 가변 제어형 히트펌프 시스템 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100294633B1 (ko) * | 1997-09-04 | 2001-07-12 | 이종수 | 피엘씨의시뮬레이터 |
KR200341577Y1 (ko) * | 2003-09-05 | 2004-02-11 | 김준식 | 네트웍을 통한 프로그래머블 로직 콘트롤러 교육장치 |
-
2012
- 2012-01-02 KR KR1020120000297A patent/KR101323937B1/ko active IP Right Grant
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017129957A (ja) * | 2016-01-19 | 2017-07-27 | 東芝三菱電機産業システム株式会社 | インタフェース試験装置およびインタフェース試験システム |
JP2017130139A (ja) * | 2016-01-22 | 2017-07-27 | 東芝三菱電機産業システム株式会社 | インタフェース試験システム |
KR20230103538A (ko) | 2021-12-31 | 2023-07-07 | 한전케이피에스 주식회사 | 다중 전기회로 시퀀스 점검용 장치 |
Also Published As
Publication number | Publication date |
---|---|
KR101323937B1 (ko) | 2013-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10977014B2 (en) | Web-based programming environment for embedded devices | |
KR101323937B1 (ko) | Hmi 시뮬레이터 및 plc 시뮬레이터간의 통신 시뮬레이션 시스템 | |
EP2738632B1 (en) | Input output cloning for industrial automation | |
JP2015060600A (ja) | 仮想制御装置をリアルタイムテストするためのテスト装置 | |
US10025286B2 (en) | Simulation system, programmable controller, simulation device, and engineering tool | |
KR101306556B1 (ko) | 스마트 기기 기반 통합 로봇 제어 시스템 | |
JP2008170998A (ja) | タービン制御シミュレーションのためのシステム及び方法 | |
US10761513B2 (en) | Information processing device, information processing method, and non-transitory computer-readable recording medium | |
CN104503898A (zh) | 一种嵌入式软件调试参数实时查看的方法及系统 | |
WO2012069883A1 (en) | Method of debugging software and corresponding computer program product | |
JP6362821B2 (ja) | 制御装置、制御方法および命令セット | |
KR20130017698A (ko) | 실시간 로봇 제어 프레임워크 | |
CN103425055A (zh) | 一种半虚拟式的控制系统功能测试装置及方法 | |
CN102135762B (zh) | 时间触发型实时仿真控制系统 | |
CN111324045A (zh) | 一种仿真及实物结合的产线模拟系统及方法 | |
JP5212508B2 (ja) | デバッグ装置 | |
CN115080113A (zh) | 项目代码检测方法和装置、可读存储介质、电子设备 | |
US11474496B2 (en) | System and method for creating a human-machine interface | |
CN113075915A (zh) | 基于em-plant的虚拟仿真实现方法、系统及设备 | |
WO2011115590A1 (en) | Communication and process sequencing architecture, system, and method for hardware-in-the-loop simulation | |
US11287789B2 (en) | Program development support device, program development support system, program development support method, and non-transitory computer-readable recording medium | |
CN110546618A (zh) | 开发辅助装置 | |
CN219980888U (zh) | 一种可二次开发的嵌入式安防监控设备 | |
US10013266B2 (en) | System and method for executing operations specified in a procedure language | |
CN115793582A (zh) | 工业控制算法调试方法、系统、装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20161010 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20171011 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20181001 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20191001 Year of fee payment: 7 |