[go: up one dir, main page]

KR102282850B1 - System for Evaluating Communication Performance Between Soft PLC and IO Device Using Robot Process Automation - Google Patents

System for Evaluating Communication Performance Between Soft PLC and IO Device Using Robot Process Automation Download PDF

Info

Publication number
KR102282850B1
KR102282850B1 KR1020200049850A KR20200049850A KR102282850B1 KR 102282850 B1 KR102282850 B1 KR 102282850B1 KR 1020200049850 A KR1020200049850 A KR 1020200049850A KR 20200049850 A KR20200049850 A KR 20200049850A KR 102282850 B1 KR102282850 B1 KR 102282850B1
Authority
KR
South Korea
Prior art keywords
output device
verification
signal
input
module
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.)
Active
Application number
KR1020200049850A
Other languages
Korean (ko)
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 KR1020200049850A priority Critical patent/KR102282850B1/en
Application granted granted Critical
Publication of KR102282850B1 publication Critical patent/KR102282850B1/en
Active 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
    • 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
    • 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/054Input/output
    • 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/056Programming the PLC
    • 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/1181Detection of I-O faults, shut down of I-O
    • 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/14Plc safety
    • G05B2219/14037Fault in I-O communication

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Abstract

In accordance with an embodiment of the present invention, a system for evaluating communication performance between an input/output (I/O) device and soft PLC by using robot process automation can automatically set an I/O device and evaluate communication performance between the I/O device and soft PLC. The system comprises: a script generation unit for generating an automated script including a verification task for verification of a test I/O device; a script execution unit for performing the verification task by executing the automated script; a first module which is connected to a verified target I/O device and generates a confirmation signal based on a verification signal received through the target I/O device in accordance with the execution of the verification task; and a second module which is connected to the test I/O device, generates the verification signal in accordance with the execution of the verification task, provides the same to the first module, and evaluates the performance of the test I/O device by comparing the confirmation signal, received from the first module through the test I/O device, with the verification signal.

Description

로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템{System for Evaluating Communication Performance Between Soft PLC and IO Device Using Robot Process Automation}System for Evaluating Communication Performance Between Soft PLC and IO Device Using Robot Process Automation

본 발명은 PLC에 관한 것으로서, 보다 구체적으로 소프트 PLC에 관한 것이다.The present invention relates to a PLC, and more particularly to a soft PLC.

PLC(Programmable Logic Controller)는 산업 플랜트의 자동제어 및 감시를 위해 사용되는 제어 장치이다.  PLC는 입력 데이터를 프로그램에 의해 순차적으로 논리 처리하고 그 출력 결과를 이용하여 PLC에 연결된 외부장치를 제어한다.  PLC는 제어 및 운영이 요구되는 산업현장에 맞게 다양한 외부장치와 인터페이스 됨으로써 원하는 제어 및 운영이 실현되도록 프로그램으로 구현되고, 이러한 프로그램이 PLC 전용 하드웨어(H/W)에 다운로드 되어 그 기능을 수행하게 된다.PLC (Programmable Logic Controller) is a control device used for automatic control and monitoring of industrial plants. PLC logically processes input data sequentially by a program and uses the output result to control an external device connected to the PLC. PLC is implemented as a program to realize desired control and operation by interfacing with various external devices according to industrial sites requiring control and operation, and these programs are downloaded to PLC dedicated hardware (H/W) and perform their functions. .

기존의 PLC는 일반적인 임베디드 컴퓨터에 설치되었기 때문에 많은 제약이 발생할 수 밖에 없어, 산업용 컴퓨터(Industrial PC: IPC)에 소프트웨어를 탑재하여 구현한 소프트 PLC가 제안된 바 있다. 소프트 PLC는 산업용 컴퓨터를 기반으로 구현되기 때문에 메모리 용량이나, 프로그램 수행 주기, 다양한 인터페이스 등을 보다 효율적이고 유연하게 사용할 수 있다.Since the existing PLC is installed in a general embedded computer, many restrictions are inevitable, so a soft PLC implemented by loading software on an Industrial PC (IPC) has been proposed. Since soft PLC is implemented based on an industrial computer, memory capacity, program execution cycle, and various interfaces can be used more efficiently and flexibly.

이러한 소프트 PLC에 새로운 입출력장치(예컨대, 디지털 입출력장치 또는 아날로그 입출력장치)를 연결하는 경우, 연결된 입출력장치에 대한 설정 및 성능검증이 요구된다.When a new input/output device (eg, digital input/output device or analog input/output device) is connected to such a soft PLC, setting and performance verification of the connected input/output device are required.

기존에는 새로운 입출력장치를 소프트 PLC에 연결하고자 하는 경우, 체계적인 절차나 별도의 검증장치가 구비되지 않았기 때문에 엔지니어의 개인 노하우에 따라 각기 다른 방식으로 입출력장치를 설정을 할 수 밖에 없었고, 입출력 장치의 성능 검증 결과도 엔지니어 자체 평가에 의존할 수 밖에 없었다.In the past, when a new input/output device was to be connected to the soft PLC, there was no systematic procedure or separate verification device, so it was necessary to set the input/output device in different ways according to the engineer’s personal know-how, and The verification results had no choice but to rely on the engineers' self-evaluation.

또한, 엔지니어의 개인 노하우에 따라 입출력장치의 성능 검증이 가능하더라도 검증결과의 정확성을 담보할 수 없을 뿐만 아니라, 엔지니어가 직접 수행할 수 있는 시험횟수는 제한적일 수 밖에 없어 반복적인 성능 검증이 불가능하다는 단점이 있었다.In addition, even if the performance of the input/output device can be verified according to the engineer's personal know-how, the accuracy of the verification result cannot be guaranteed, and the number of tests that the engineer can directly perform is limited, making repeated performance verification impossible. there was

본 발명은 상술한 문제점을 해결하기 위한 것으로서, 입출력장치의 설정 및 입출력장치와 소프트 PLC간의 통신성능 검증을 자동으로 수행할 수 있는 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템을 제공하는 것을 그 기술적 과제로 한다.The present invention is to solve the above problems, and provides a communication performance verification system between the input/output device and the soft PLC using robot process automation that can automatically perform the setting of the input/output device and the communication performance verification between the input/output device and the soft PLC make it a technical task.

또한, 본 발명은 로봇 프로세스 자동화를 이용하여 입출력장치의 성능검증을 반복 수행할 수 있는 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템을 제공하는 것을 다른 기술적 과제로 한다.Another technical task of the present invention is to provide a communication performance verification system between an input/output device and a soft PLC using robot process automation that can repeatedly perform performance verification of an input/output device using robot process automation.

상술한 목적을 달성하기 위한 본 발명의 일 측면에 따른 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템은, 테스트 입출력장치의 검증을 위한 검증 태스크를 포함하는 자동화 스크립트를 생성하는 스크립트 생성부; 상기 자동화 스크립트를 실행하여 상기 검증 태스크를 수행하는 스크립트 실행부; 검증이 완료된 타겟 입출력장치에 연결되고, 상기 검증 태스크의 수행에 따라 상기 타겟 입출력장치를 통해 수신되는 검증신호를 기초로 확인신호를 생성하는 제1 모듈; 및 상기 테스트 입출력장치에 연결되고, 상기 검증 태스크의 수행에 따라 상기 검증신호를 생성하여 상기 제1 모듈로 제공하고, 상기 테스트 입출력장치를 통해 상기 제1 모듈로부터 수신되는 확인신호와 상기 검증신호를 비교하여 상기 테스트 입출력장치의 성능을 검증하는 제2 모듈을 포함하는 것을 특징으로 한다.A communication performance verification system between an input/output device and a soft PLC using robot process automation according to an aspect of the present invention for achieving the above object is a script generation that generates an automated script including a verification task for verification of the test input/output device wealth; a script execution unit that executes the automation script to perform the verification task; a first module connected to the target input/output device for which verification has been completed, and generating a verification signal based on a verification signal received through the target input/output device according to the execution of the verification task; and connected to the test input/output device, generating the verification signal according to the execution of the verification task, providing the verification signal to the first module, and receiving the verification signal and the verification signal received from the first module through the test input/output device and a second module that compares and verifies the performance of the test input/output device.

상술한 바와 같이 본 발명에 따르면, 자동화 스크립트에 포함된 검증 태스크의 실행을 통해 테스트 입출력장치의 통신성능 검증을 자동으로 수행할 수 있기 때문에 테스트 입출력장치의 성능 검증에 대한 전문지식이 없는 엔지니어도 성능 검증을 수행할 수 있고, 엔지니어의 기술 숙련도나 조작 미숙에 따른 편차 없이 일정한 성능 검증 결과를 담보할 수 있다는 효과가 있다. As described above, according to the present invention, since the communication performance verification of the test input/output device can be automatically performed through the execution of the verification task included in the automation script, even an engineer without expertise in the performance verification of the test input/output device can perform performance It has the effect of being able to perform verification and guaranteeing a certain performance verification result without deviation due to the engineer's technical proficiency or inexperienced operation.

또한, 본 발명에 따르면 로봇 프로세스 자동화를 이용하여 테스트 입출력장치의 통신성능 검증은 물론 설정까지도 자동으로 수행할 있고, 전문가가 아니더라도 소프트 PLC에 테스트 입출력장치를 손쉽게 설치할 수 있다는 효과가 있다.In addition, according to the present invention, communication performance verification and setting of the test input/output device can be automatically performed using robot process automation, and there is an effect that the test input/output device can be easily installed in the soft PLC even if you are not an expert.

또한, 본 발명에 따르면 테스트 입출력장치의 통신 성능 검증을 반복적으로 수행할 수 있어, 테스트 입출력장치의 통신 성능 검증 작업에 투입되는 시간을 획기적으로 단축시킬 수 있다는 효과가 있다.In addition, according to the present invention, since communication performance verification of the test input/output device can be repeatedly performed, there is an effect that the time required for the communication performance verification operation of the test input/output device can be remarkably reduced.

또한, 본 발명에 따르면 로봇 프로세스 자동화를 이용하여 다수의 소프트 PLC에서 입출력장치의 설정 및 통신 성능 검증을 동시에 수행할 수 있어, 입출력장치의 설정 및 통신 성능 검증 작업에 투입되는 시간 단축을 극대화시킬 수 있다는 효과가 있다.In addition, according to the present invention, it is possible to simultaneously perform input/output device setting and communication performance verification in multiple soft PLCs using robot process automation, thereby maximizing the reduction of time invested in input/output device setting and communication performance verification work. there is an effect that

도 1은 본 발명의 일 실시예에 따른 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템의 구성을 보여주는 도면이다.
도 2는 본 발명의 일 실시예에 따른 태스크 설정부가 설정 태스크를 구성하는 복수개의 이벤트들을 생성하는 방식을 보여주는 도면이다.
도 3은 본 발명의 일 실시예에 따른 태스크 설정부가 검증 태스크를 구성하는 복수개의 이벤트들을 생성하는 방식을 보여주는 도면이다.
도 4는 디지털 형태의 검증신호의 예를 보여주는 도면이다.
도 5a는 스텝형태로 생성된 검증신호의 예를 보여주는 도면이다.
도 5b는 사인파 형태로 생성된 검증신호의 예를 보여주는 도면이다.
1 is a diagram showing the configuration of a communication performance verification system between an input/output device and a soft PLC using robot process automation according to an embodiment of the present invention.
2 is a diagram illustrating a method in which a task setting unit generates a plurality of events constituting a setting task according to an embodiment of the present invention.
3 is a diagram illustrating a method in which a task setting unit generates a plurality of events constituting a verification task according to an embodiment of the present invention.
4 is a diagram showing an example of a digital verification signal.
5A is a diagram showing an example of a verification signal generated in the form of a step.
5B is a diagram showing an example of a verification signal generated in the form of a sine wave.

명세서 전체에 걸쳐서 동일한 참조번호들은 실질적으로 동일한 구성요소들을 의미한다. 이하의 설명에서, 본 발명의 핵심 구성과 관련이 없는 경우 및 본 발명의 기술분야에 공지된 구성과 기능에 대한 상세한 설명은 생략될 수 있다. 본 명세서에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.Like reference numerals refer to substantially identical elements throughout. In the following description, detailed descriptions of configurations and functions known in the art and cases not related to the core configuration of the present invention may be omitted. The meaning of the terms described herein should be understood as follows.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.Advantages and features of the present invention and methods of achieving them will become apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but will be implemented in a variety of different forms, and only these embodiments allow the disclosure of the present invention to be complete, and common knowledge in the technical field to which the present invention belongs It is provided to fully inform the possessor of the scope of the invention, and the present invention is only defined by the scope of the claims.

본 발명의 실시예를 설명하기 위한 도면에 개시된 형상, 크기, 비율, 각도, 개수 등은 예시적인 것이므로 본 발명이 도시된 사항에 한정되는 것은 아니다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다. 또한, 본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명은 생략한다.The shapes, sizes, proportions, angles, numbers, etc. disclosed in the drawings for explaining the embodiments of the present invention are exemplary, and thus the present invention is not limited to the illustrated matters. Like reference numerals refer to like elements throughout. In addition, in describing the present invention, if it is determined that a detailed description of a related known technology may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted.

본 명세서에서 언급된 '포함한다', '갖는다', '이루어진다' 등이 사용되는 경우 '~만'이 사용되지 않는 이상 다른 부분이 추가될 수 있다. 구성 요소를 단수로 표현한 경우에 특별히 명시적인 기재 사항이 없는 한 복수를 포함하는 경우를 포함한다.When 'including', 'having', 'consisting', etc. mentioned in this specification are used, other parts may be added unless 'only' is used. When a component is expressed in the singular, the case in which the plural is included is included unless otherwise explicitly stated.

구성 요소를 해석함에 있어서, 별도의 명시적 기재가 없더라도 오차 범위를 포함하는 것으로 해석한다.In interpreting the components, it is interpreted as including an error range even if there is no separate explicit description.

위치 관계에 대한 설명일 경우, 예를 들어, '~상에', '~상부에', '~하부에', '~옆에' 등으로 두 부분의 위치 관계가 설명되는 경우, '바로' 또는 '직접'이 사용되지 않는 이상 두 부분 사이에 하나 이상의 다른 부분이 위치할 수도 있다.In the case of a description of the positional relationship, for example, when the positional relationship of two parts is described as 'on', 'on', 'on', 'beside', etc., 'right' Alternatively, one or more other parts may be positioned between the two parts unless 'directly' is used.

시간 관계에 대한 설명일 경우, 예를 들어, '~후에', '~에 이어서', '~다음에', '~전에' 등으로 시간적 선후 관계가 설명되는 경우, '바로' 또는 '직접'이 사용되지 않는 이상 연속적이지 않은 경우도 포함할 수 있다.In the case of a description of a temporal relationship, for example, 'immediately' or 'directly' when a temporal relationship is described with 'after', 'following', 'after', 'before', etc. It may include cases that are not continuous unless this is used.

제1, 제2 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않는다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있다.Although the first, second, etc. are used to describe various components, these components are not limited by these terms. These terms are only used to distinguish one component from another. Accordingly, the first component mentioned below may be the second component within the spirit of the present invention.

"적어도 하나"의 용어는 하나 이상의 관련 항목으로부터 제시 가능한 모든 조합을 포함하는 것으로 이해되어야 한다. 예를 들어, "제1 항목, 제2 항목 및 제 3 항목 중에서 적어도 하나"의 의미는 제1 항목, 제2 항목 또는 제3 항목 각각 뿐만 아니라 제1 항목, 제2 항목 및 제3 항목 중에서 2개 이상으로부터 제시될 수 있는 모든 항목의 조합을 의미할 수 있다. The term “at least one” should be understood to include all possible combinations from one or more related items. For example, the meaning of “at least one of the first, second, and third items” means each of the first, second, or third items as well as two of the first, second and third items. It may mean a combination of all items that can be presented from more than one.

본 발명의 여러 실시예들의 각각 특징들이 부분적으로 또는 전체적으로 서로 결합 또는 조합 가능하고, 기술적으로 다양한 연동 및 구동이 가능하며, 각 실시예들이 서로에 대하여 독립적으로 실시 가능할 수도 있고 연관 관계로 함께 실시할 수도 있다.Each feature of the various embodiments of the present invention may be partially or wholly combined or combined with each other, technically various interlocking and driving are possible, and each of the embodiments may be implemented independently of each other or may be implemented together in a related relationship. may be

이하, 첨부된 도면을 참조하여 본 발명에 따른 실시예를 구체적으로 설명한다.Hereinafter, an embodiment according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템의 구성을 보여주는 도면이다. 도 1에 도시된 바와 같이, 로봇 프로세스 자동화를 이용한 입출력장치와의 소프트 PLC(Programmable Logic Controller)간의 통신 성능 검증 시스템(10, 이하, '통신성능 검증 시스템'이라 함)은 소프트 PLC(100), 테스트 입출력장치(200), 및 타겟 입출력장치(300)를 포함한다.1 is a diagram showing the configuration of a communication performance verification system between an input/output device and a soft PLC using robot process automation according to an embodiment of the present invention. As shown in Figure 1, the communication performance verification system (10, hereinafter referred to as 'communication performance verification system') between the input/output device and the soft PLC (Programmable Logic Controller) using robot process automation is a soft PLC 100, It includes a test input/output device 200 and a target input/output device 300 .

소프트 PLC(100)는 산업용 컴퓨터(Industrial PC: IPC)에 PLC 어플리케이션을 탑재함으로써 PLC를 소프트웨어 형태로 구현한 것으로서, 제어대상이 되는 장치들의 제어를 위해 구현된 로직에 따라 제어동작을 수행함으로써 산업 플랜트의 자동제어 및 감시를 수행한다. 이와 같이, 본 발명은 기존의 PLC를 소프트웨어 타입으로 구현하여 산업용 컴퓨터에 탑재시킴으로써, 메모리 용량이나, 프로그램 수행 주기, 다양한 인터페이스 등을 보다 효율적이고 유연하게 사용할 수 있다.The soft PLC 100 is implemented in a software form by mounting a PLC application on an industrial computer (Industrial PC: IPC), and by performing a control operation according to the implemented logic for controlling devices to be controlled, an industrial plant automatic control and monitoring of As described above, in the present invention, the memory capacity, program execution cycle, various interfaces, and the like can be used more efficiently and flexibly by implementing the existing PLC as a software type and mounting it on an industrial computer.

특히, 본 발명에 따른 소프트 PLC(100)는 테스트 입출력장치(200)의 설정 및 통신성능 검증을 로봇 프로세스 자동화(Robot Process Automation: RPA)를 이용하여 자동으로 수행하기 위해 스크립트 생성부(110), 스크립트 실행부(120), 제1 모듈(130), 제2 모듈(140), 제3 모듈(150), 테스트 통신카드(160), 및 타겟 통신카드(170)를 포함한다.In particular, the soft PLC 100 according to the present invention includes a script generating unit 110 to automatically perform the setting and communication performance verification of the test input/output device 200 using a robot process automation (RPA); It includes a script execution unit 120 , a first module 130 , a second module 140 , a third module 150 , a test communication card 160 , and a target communication card 170 .

로봇 프로세스 자동화란 사용자의 업무 패턴을 녹화하여 자동화 스크립트(Script)로 저장 후 재생함으로써 사람의 업무를 대신하게 하는 솔루션으로서, 메일 클라이언트 등 여러 가지 업무용 소프트웨어가 설치된 사용자의 컴퓨터에 로봇(소프트웨어)를 설치하여, 반복적이거나 정형화된 업무를 자동화 자동화 스크립트로 작성하여 재실행하는 소프트웨어를 의미한다.Robot process automation is a solution that records the user's work pattern, stores it as an automation script, and then plays it back to replace human work. A robot (software) is installed on the user's computer with various work software such as a mail client installed. Therefore, it refers to software that re-executes repetitive or standardized tasks as automated automation scripts.

따라서, 본 발명에서는 테스트 입출력장치(200)의 통신성능 검증업무와 테스트 입출력장치(200)의 설정 업무를 자동화 스크립트로 작성하여 실행함으로써, 테스트 입출력장치(200)의 통신성능 검증업무와 설정업무가 로봇에 의해 자동 및 반복적으로 수행될 수 있도록 한다.Therefore, in the present invention, by writing and executing the communication performance verification task of the test input/output device 200 and the setting task of the test input/output device 200 as an automated script, the communication performance verification task and the setting task of the test input/output device 200 are reduced in the present invention. to be performed automatically and repeatedly by the robot.

스크립트 생성부(110)는 테스트 입출력장치(200)의 설정을 위한 설정 태스크 및 테스트 입출력장치(200)의 통신성능 검증을 위함 검증 태스크를 포함하는 자동화 스크립트(Script)를 생성한다. 자동화 스크립트란 사용자가 수행하는 반복적이거나 정형화된 업무를 로봇이 대신하여 자동으로 수행할 수 있도록 하기 위해 작성되는 문서를 의미한다. 로봇에 의해 자동화 스크립트가 실행됨으로써, 사용자가 수행해야 하는 업무가 사용자가 수행하는 것과 동일하게 재현될 수 있게 된다.The script generating unit 110 generates an automated script including a setting task for setting the test input/output device 200 and a verification task for verifying communication performance of the test input/output device 200 . An automation script means a document written to enable a robot to automatically perform repetitive or standardized tasks performed by a user. By executing the automation script by the robot, the task to be performed by the user can be reproduced in the same way as the user does.

일 실시예에 있어서, 스크립트 생성부(110)는 자동화 스크립트 생성을 위해 사용자에게 스크립트 생성을 위한 툴(예컨대, 자동화 스크립트 에디터)을 제공하고, 사용자는 스크립트 에디터를 통해 프로세서(Process), 태스크(Task), 및 이벤트(Event) 중 적어도 하나를 구체적으로 설정한 후 디버깅(Debugging)을 수행함으로써 자동화 스크립트를 생성할 수 있게 된다. In one embodiment, the script generating unit 110 provides a tool (eg, an automated script editor) for script generation to a user to generate an automated script, and the user uses the script editor to generate a processor (Process) and a task (Task). ), and by performing debugging after setting at least one of the events in detail, it is possible to generate an automation script.

자동화 스크립트를 통해 설정되는 이벤트(Event)란 사용자가 특정 객체(Object)에 대해 임의의 동작(Action)을 하거나 또는 사용자의 의지와 관계없이 운영체제(Operating System: OS)가 발생시키는 사건을 의미하는 것으로서, 윈도우 오브젝트 검출, 웹 오브젝트 검출, UI(User Interface) 개체 검출, 이미지 검출, OCR(Optical Character Reader) 검출, 키(Key) 입력, 또는 마우스 입력 등을 포함할 수 있다.An event set through an automation script means an event that the operating system (OS) generates regardless of the user's arbitrary action on a specific object or the user's will. , window object detection, web object detection, UI (User Interface) object detection, image detection, OCR (Optical Character Reader) detection, key input, or mouse input.

또한, 자동화 스크립트를 통해 설정되는 태스크(Task)란 하나 이상의 이벤트로 구성된 사용자의 단위 실행동작을 의미하고, 프로세스(Process)란 하나 이상의 태스크로 구성된 사용자의 단위 컴퓨팅 업무를 의미한다. In addition, a task set through an automation script means a unit execution action of a user composed of one or more events, and a process means a unit computing task of a user composed of one or more tasks.

본 발명에서는 테스트 입출력장치(200)의 설정 및 통신성능 검증업무가 하나의 프로세스로 구성될 수 있다. 다른 실시예에 있어서, 테스트 입출력장치(200)의 설정이 하나의 프로세스로 구성되고, 테스트 입출력장치(200)의 통신성능 검증업무가 다른 프로세스로 구성될 수도 있다. 이하에서는 설명의 편의를 위해 테스트 입출력장치(200)의 설정 및 통신성능 검증업무가 하나의 프로세스로 구성되는 것으로 가정하여 설명하기로 한다.In the present invention, the setting of the test input/output device 200 and the communication performance verification task may be configured as one process. In another embodiment, the setting of the test input/output device 200 may be configured as one process, and the communication performance verification task of the test input/output device 200 may be configured with another process. Hereinafter, for convenience of description, it is assumed that the setting and communication performance verification tasks of the test input/output device 200 are configured as one process.

스크립트 생성부(110)는 도 1에 도시된 바와 같이, 프로세스 설정부(112), 태스크 설정부(114), 및 스크립트 제작부(116)를 포함할 수 있다.The script generating unit 110 may include a process setting unit 112 , a task setting unit 114 , and a script manufacturing unit 116 as shown in FIG. 1 .

프로세스 설정부(112)는 사용자에게 프로세스를 설정하고 편집할 수 있는 기능을 제공한다. 예컨대, 프로세스 설정부(112)는 사용자에게 프로세스를 설정하고 편집할 수 있는 프로세스 에디터를 제공하고, 사용자는 프로세스 에디터를 통해 하나 이상의 태스크를 생성하거나 선택하고 이에 대한 속성, 실행조건, 실행순서 등을 결정하여 프로세스를 설정한다. 이를 위해, 프로세스 에디터는 하나 이상의 태스크의 생성을 관리하는 태스크 생성 관리자, 하나 이상의 태스크의 속성을 관리하는 태스크 속성 관리자, 하나 이상의 태스크의 상호 연결을 관리하는 태스크 연결관리자 등을 포함할 수 있다.The process setting unit 112 provides a function for setting and editing a process to the user. For example, the process setting unit 112 provides a process editor capable of setting and editing a process to the user, and the user creates or selects one or more tasks through the process editor, and sets properties, execution conditions, execution order, etc. Decide to set up the process. To this end, the process editor may include a task creation manager that manages creation of one or more tasks, a task property manager that manages properties of one or more tasks, a task connection manager that manages interconnection of one or more tasks, and the like.

특히, 본 발명에 따른 프로세스 설정부(112)는 테스트 입출력장치(200)의 설정을 위한 설정 태스크와 통신성능 검증을 위한 검증 태스크의 생성을 위해 사용자에게 프로세스 에디터를 제공하고, 사용자는 프로세스 설정부(112)를 통해 제공되는 프로세스 에디터를 통해 설정 태스크 및 검증 태스크를 생성하며, 이들의 속성, 실행조건, 실행순서 등을 설정한다. 이때, 태스크의 속성은 태스크의 명칭, 입력자료, 입력방법, 출력자료, 출력방법, 처리시간, 및 지연시간 중 적어도 하나가 될 수 있으며, 실행조건은 기 설정된 선행 태스크가 종료되면 실행, 기 설정된 입력자료가 수신되면 실행, 및 기 설정된 실행시각에 실행 중 적어도 하나를 포함할 수 있다. 실행순서는 각각의 태스크가 연속적으로 입력 및 출력 관계가 되어 복수개의 태스크가 상호 연결됨으로써 하나의 프로세스가 생성될 수 있다.In particular, the process setting unit 112 according to the present invention provides a process editor to the user to create a setting task for setting the test input/output device 200 and a verification task for verifying communication performance, and the user can use the process setting unit A setting task and a verification task are created through the process editor provided through 112, and their properties, execution conditions, execution order, and the like are set. In this case, the attribute of the task may be at least one of the name of the task, input data, input method, output data, output method, processing time, and delay time, and the execution condition is execution when a preset preceding task is finished, and a preset When input data is received, it may include at least one of execution and execution at a preset execution time. In the order of execution, each task becomes an input and output relationship in succession, and a plurality of tasks are interconnected, so that one process can be created.

보다 구체적으로, 사용자는 프로세스 에디터를 통해 테스트 입출력장치(200)의 설정을 위한 설정 태스크와 테스트 입출력 장치(200)의 통신성능 검증을 위한 검증 태스크를 생성하여, 속성, 실행조건 등을 각각 설정하고, 이들 태스크들을 화살표로 연결하여 실행순서를 결정한다.More specifically, the user creates a setting task for setting the test input/output device 200 and a verification task for verifying the communication performance of the test input/output device 200 through the process editor, and sets properties, execution conditions, etc., respectively , determine the execution order by connecting these tasks with arrows.

일 실시예에 있어서, 프로세스 설정부(112)는 테스트 입출력장치(200)의 설정을 위한 설정 태스크가 먼저 실행된 이후 테스트 입출력 장치(200)의 통신성능 검증을 위한 검증 태스크가 실행되도록 실행순서를 결정할 수 있다.In one embodiment, the process setting unit 112 sets the execution order so that the setting task for setting the test input/output device 200 is first executed, and then the verification task for verifying the communication performance of the test input/output device 200 is executed. can decide

태스크 설정부(114)는 사용자에게 태스크를 설정하고 편집할 수 있는 기능을 제공한다. 예컨대, 태스크 설정부(114)는 사용자에게 태스크를 설정하고 편집할 수 있는 태스크 에디터를 제공하고, 사용자는 태스크 에디터를 통해 하나 이상의 이벤트를 생성하거나 선택하고 이에 대한 속성, 실행조건, 실행순서 등을 결정하여 태스크를 설정한다. The task setting unit 114 provides a function for setting and editing a task to the user. For example, the task setting unit 114 provides a task editor capable of setting and editing a task to the user, and the user creates or selects one or more events through the task editor and sets properties, execution conditions, execution order, etc. Decide and set the task.

이러한 실시예에 따르는 경우, 사용자는 태스크 설정부(114)에 의해 제공되는 태스크 에디터를 통해 하나 이상의 이벤트를 생성하고 이들의 속성, 실행조건, 실행순서 등을 설정한다. 일 실시예에 있어서, 이벤트의 속성은 이벤트의 명칭, 대상(예; 텍스트, 이미지, 오브젝트, 파일), 실행방법(예; 오브젝트 검출, 키 입력, 마우스 입력), 실행결과(예; 단순 실행, 텍스트 저장, 이미지 저장, 파일 생성), 및 실행시간 중 적어도 하나를 포함할 수 있고, 실행조건은 기 설정된 선행 이벤트가 종료되면 실행, 기 설정된 선행 이벤트가 종료되면 일정 시간 경과 후 실행, 및 기 설정된 실행시각에 실행 중 적어도 하나를 포함할 수 있다. 실행순서는 각각의 이벤트가 연속적으로 입력 및 출력 관계가 되어 복수개의 이벤트가 상호 연결됨으로써 하나의 태스크가 생성될 수 있다.According to this embodiment, the user creates one or more events through the task editor provided by the task setting unit 114 and sets their properties, execution conditions, execution order, and the like. In one embodiment, the properties of the event include the name of the event, a target (eg, text, image, object, file), an execution method (eg, object detection, key input, mouse input), and execution result (eg, simple execution, text storage, image storage, file generation), and at least one of an execution time, and the execution condition is executed when a preset precedent event ends, execution after a predetermined time has elapsed when a preset precedent event ends, and a preset execution time It may include at least one of the executions at execution time. In the execution order, each event becomes an input and output relationship in succession, so that a plurality of events are interconnected, so that one task can be created.

특히, 본 발명에 따른 태스크 설정부(114)는 테스트 입출력장치(120)의 설정을 위한 설정 태스크를 구성하는 복수개의 이벤트들의 생성 및 검증 태스크를 구성하는 복수개의 이벤트들의 생성을 위한 태스크 에디터를 사용자에게 제공하고, 사용자는 태스크 설정부(114)에 의해 제공되는 태스크 에디터를 통해 각 태스크들을 구성하는 복수개의 이벤트들을 생하고, 이들의 속성, 실행조건, 실행순서 등을 설정한다.In particular, the task setting unit 114 according to the present invention generates a plurality of events constituting the setting task for setting the test input/output device 120 and a task editor for generating a plurality of events constituting the verification task. , and the user generates a plurality of events constituting each task through the task editor provided by the task setting unit 114 and sets their properties, execution conditions, execution order, and the like.

이하, 도 2 및 도 3을 참조하여 설정 태스크 및 검증 태스크를 구성하는 복수개의 이벤트들의 생성에 대해 보다 구체적으로 설명한다.Hereinafter, generation of a plurality of events constituting the setting task and the verification task will be described in more detail with reference to FIGS. 2 and 3 .

도 2는 본 발명의 일 실시예에 따른 태스크 설정부가 설정 태스크를 구성하는 복수개의 이벤트들을 생성하는 방식을 보여주는 도면이다.2 is a diagram illustrating a method in which a task setting unit generates a plurality of events constituting a setting task according to an embodiment of the present invention.

도 2에 도시된 바와 같이, 태스크 설정부(114)는 제1 모듈(130)이 사용자에게 테스트 입출력장치(200)의 모델명 및 소프트 PLC(100)의 IP 주소 입력을 위한 객체를 제공하게 하는 객체제공 이벤트(E1-1), 객체를 통해 입력된 모델명을 기초로 제1 모듈(130)이 테스트 입출력장치(200)의 제조사 홈페이지에 접속하게 하는 접속 이벤트(E1-2), 제1 모듈(130)이 제조사 홈페이지에서 테스트 입출력장치(200)의 설치파일을 다운로드 받게 하는 다운로드 이벤트(E1-3), 및 제1 모듈(130)이 다운로드 받은 설치파일을 소프트 PLC(100)에 인스톨하여 소프트 PLC(100)에 테스트 입출력장치(200)를 설치하게 하는 설치 이벤트(E1-4)를 생성한다.As shown in FIG. 2 , the task setting unit 114 provides an object for the first module 130 to input the model name of the test input/output device 200 and the IP address of the soft PLC 100 to the user. Provided event (E1-1), access event (E1-2) for allowing the first module 130 to access the manufacturer homepage of the test input/output device 200 based on the model name input through the object (E1-2), the first module 130 ) download event (E1-3) for downloading the installation file of the test input/output device 200 from the manufacturer's website, and the first module 130 installs the downloaded installation file on the soft PLC 100 to install the software PLC ( An installation event (E1-4) for installing the test input/output device 200 in 100) is generated.

이후, 태스크 설정부(114)는 생성된 각 이벤트들의 속성 또는 실행조건을 각각 설정하고, 이벤트들을 화살표로 연결함으로써 실행순서를 결정한다.Thereafter, the task setting unit 114 sets the properties or execution conditions of each generated event, and determines the execution order by connecting the events with arrows.

도 2에서는 설명의 편의를 위해 테스트 입출력장치(200)의 설정을 위한 핵심적인 이벤트 위주로 나열하였지만, 실제 구현에 있어서는 제1 태스크에 보다 세분화된 이벤트들이 더 포함될 수 있다.In FIG. 2 , key events for setting the test input/output device 200 are mainly listed for convenience of explanation, but in actual implementation, more detailed events may be further included in the first task.

도 3은 본 발명의 일 실시예에 따른 태스크 설정부가 검증 태스크를 구성하는 복수개의 이벤트들을 생성하는 방식을 보여주는 도면이다.3 is a diagram illustrating a method in which a task setting unit generates a plurality of events constituting a verification task according to an embodiment of the present invention.

태스크 설정부(114)는 제2 모듈(140)이 테스트 입출력장치(200)의 검증을 위해 미리 정해진 형태의 검증신호를 생성하게 하는 검증신호 생성 이벤트(E2-1), 제2 모듈(140)이 생성된 검증신호 제3 모듈(150)로 전송하게 하는 검증신호 전송이벤트(E2-2), 제3 모듈(150)이 검증신호를 수신하게 하는 검증신호 수신 이벤트(E2-3), 제3 모듈(150)이 수신된 검증신호를 기초로 확인신호를 생성하게 하는 확인신호 생성 이벤트(E2-4), 제3 모듈(150)이 확인신호를 제2 모듈(140)로 전송하게 하는 확인신호 전송 이벤트(E2-5), 제2 모듈(140)이 확인신호를 수신하게 하는 확인신호 수신 이벤트(E2-6), 제2 모듈(140)이 수신된 확인신호를 검증신호와 비교하여 테스트 입출력장치(200)의 통신성능을 검증하게 하는 검증 이벤트(E2-7)를 생성한다.The task setting unit 114 includes a verification signal generation event E2-1 that causes the second module 140 to generate a verification signal of a predetermined form for verification of the test input/output device 200, and the second module 140 A verification signal transmission event (E2-2) for transmitting the generated verification signal to the third module 150, a verification signal reception event (E2-3) for causing the third module 150 to receive the verification signal, the third Confirmation signal generation event (E2-4) causing the module 150 to generate a confirmation signal based on the received confirmation signal, confirmation signal causing the third module 150 to transmit the confirmation signal to the second module 140 The transmission event (E2-5), the confirmation signal reception event (E2-6) causing the second module 140 to receive the confirmation signal, and the second module 140 compare the received confirmation signal with the verification signal to test input/output A verification event E2-7 for verifying the communication performance of the device 200 is generated.

이후, 태스크 설정부(114)는 생성된 각 이벤트들의 속성 또는 실행조건을 각각 설정하고, 이벤트들을 화살표로 연결함으로써 실행순서를 결정한다. 이때, 태스크 설정부(114)는 생성된 이벤트들(E2-1~E2-7)이 도 3에 도시된 바와 같은 순서로 실행될 수 있도록 각 이벤트들(E2-1~E2-7)을 화살표로 연결할 수 있다.Thereafter, the task setting unit 114 sets the properties or execution conditions of each generated event, and determines the execution order by connecting the events with arrows. At this time, the task setting unit 114 sets each of the events E2-1 to E2-7 as arrows so that the generated events E2-1 to E2-7 can be executed in the order shown in FIG. 3 . can connect

일 실시예에 있어서, 본 발명에 따른 태스크 설정부(114) 도 3에 도시된 바와 같이, 검증 태스크에 포함된 복수개의 이벤트들이 반복하여 수행되도록 함으로써 검증 태스크를 N회 반복하여 실행할 수 있고, 이를 통해 테스트 입출력장치(200)의 통신성능 검증업무가 반복적으로 수행되도록 할 수 있다. 이러한 실시예에 따르는 경우 태스크 설정부(114)는 검증 태스크의 N회 반복수행결과를 로그로 저장할 수 있다.In one embodiment, the task setting unit 114 according to the present invention, as shown in FIG. 3 , the verification task may be repeatedly executed N times by repeatedly performing a plurality of events included in the verification task, and this Through this, the communication performance verification task of the test input/output device 200 can be repeatedly performed. According to this embodiment, the task setting unit 114 may store a result of performing N iterations of the verification task as a log.

한편, 상술한 프로세스 설정부(112)와 태스크 설정부(114)는 사용자가 프로세스와 태스크를 실행하는 행동 패턴을 레코딩하여 프로세스 레코딩 자료와 태스크 레코딩 자료(참고로, 컴퓨팅 환경 정보가 반영됨)를 생성하고, 프로세스/태스크 레코딩 자료에 기초하여 프로세스와 태스크의 속성, 실행조건, 실행순서 등을 추출할 수 있다.On the other hand, the above-described process setting unit 112 and task setting unit 114 records the behavior pattern of the user executing the process and task to generate process recording material and task recording material (for reference, computing environment information is reflected) And, on the basis of the process/task recording data, attributes of processes and tasks, execution conditions, execution order, etc. can be extracted.

상술한 바와 같이 본 발명에 따르면 테스트 입출력장치(200)의 설정 및 통신 성능 검증을 로봇 프로세서 자동화 기법을 이용하여 자동으로 수행할 수 있기 때문에 테스트 입출력장치(200)의 성능 검증에 대한 전문지식이 없는 엔지니어도 테스트 입출력장치(200)의 설정 및 성능 검증을 수행할 수 있고, 엔지니어의 기술 숙련도나 조작 미숙에 따른 편차 없이 일정한 성능 검증 결과를 담보할 수 있게 된다. As described above, according to the present invention, since the setting and communication performance verification of the test input/output device 200 can be automatically performed using the robot processor automation technique, there is no expert knowledge about the performance verification of the test input/output device 200 . The engineer can also perform the setting and performance verification of the test input/output device 200 , and can guarantee a certain performance verification result without deviation due to the engineer's technical proficiency or inexperienced operation.

또한, 본 발명에 따르면 테스트 입출력장치(200)의 통신 성능 검증을 반복적으로 수행할 수 있어, 테스트 입출력장치(200)의 통신 성능 검증 작업에 투입되는 시간을 획기적으로 단축시킬 수 있고, 다수의 소프트 PLC(100)에 연결되는 입출력장치들의 설정 및 통신 성능 검증을 동시에 수행할 수 있어, 입출력장치의 설정 및 통신 성능 검증 작업에 투입되는 시간 단축을 극대화시킬 수 있게 된다.In addition, according to the present invention, the communication performance verification of the test input/output device 200 can be repeatedly performed, so that the time required for the communication performance verification operation of the test input/output device 200 can be drastically reduced, and a plurality of software Since the setting and communication performance verification of input/output devices connected to the PLC 100 can be simultaneously performed, it is possible to maximize the reduction of the time invested in setting the input/output device and verifying the communication performance.

다시 도 1을 참조하면, 스크립트 제작부(116)는 사용자가 프로세스 설정부(112) 및 태스크 설정부(114)를 통해 설정된 프로세스 및 태스크가 실제 자동으로 실행될 수 있도록 자동화 스크립트를 제작한다.Referring back to FIG. 1 , the script production unit 116 creates an automation script so that the processes and tasks set by the user through the process setting unit 112 and the task setting unit 114 can be actually automatically executed.

그리고, 스크립트 제작부(116)는 스크립트 실행부(120)와 연동하여 태스크를 구성하는 하나 이상의 이벤트가 실제 실행순서대로 정상적으로 동작할 수 있는지 검증하여 디버깅(Debugging)하고, 마찬가지로 프로세스를 구성하는 하나 이상의 태스크가 실제 실행순서대로 정상적으로 동작할 수 있는지 검증하여 디버깅한다.In addition, the script production unit 116 interworks with the script execution unit 120 to verify that one or more events constituting the task can operate normally in the actual execution order, and debugs, and similarly, one or more tasks constituting the process. Debugging is verified by verifying that the program can operate normally in the actual execution order.

스크립트 제작부(116)는 이와 같이 생성된 자동화 스크립트가 실제 실행될 수 있도록 자동화 스크립트를 스크립트 실행부(120)로 전송하고, 추후 재사용 및 관리를 위해 자동화 스크립트를 저장할 수 있다.The script production unit 116 may transmit the automation script to the script execution unit 120 so that the generated automation script can be actually executed, and store the automation script for later reuse and management.

스크립트 실행부(120)는 스크립트 생성부(110)에 의해 생성된 자동화 스크립트를 실제로 실행함으로써 테스트 입출력장치(200)의 설정 및 통신성능 검증업무가 자동으로 실행될 수 있도록 한다. 구체적으로, 스크립트 실행부(120)는 스크립트 생성부(110)로부터 자동화 스크립트를 수신하고, 수신된 자동화 스크립트를 해석하여 각각의 이벤트, 태스크, 프로세스에 대해 속성, 실행조건, 우선순위 등을 판단하고 실행순서를 스케쥴링한다. 또한, 스크립트 실행부(120)는 각각의 이벤트들을 실행순서에 따라 순차적으로 실행함으로써 태스크를 실행하고, 또한 각각의 태스크들을 실행순서에 따라 실행함으로써 프로세스를 실행한다.The script execution unit 120 actually executes the automated script generated by the script generation unit 110 so that the setting and communication performance verification tasks of the test input/output device 200 can be automatically executed. Specifically, the script execution unit 120 receives the automation script from the script generation unit 110, interprets the received automation script to determine attributes, execution conditions, priority, etc. for each event, task, and process, and Schedule the execution sequence. In addition, the script execution unit 120 executes the task by sequentially executing each event according to the execution order, and also executes the process by executing each task according to the execution order.

제1 모듈(130)은 스크립트 실행부(120)에 의한 자동화 스크립트 실행에 따라 자동화 스크립트에 포함된 설정 태스크를 구성하는 복수개의 이벤트들을 순차적으로 실행한다.The first module 130 sequentially executes a plurality of events constituting the setting task included in the automation script according to the execution of the automation script by the script execution unit 120 .

구체적으로, 제1 모듈(130)은 상술한 도 2에 도시된 바와 같은 순서에 따라 사용자에게 테스트 입출력장치(200)의 모델명 및 소프트 PLC(100)의 IP 주소 입력을 위한 객체를 제공한다. 이후, 객체를 통해 테스트 입출력장치(200)의 모델명 및 소프트 PLC(100)의 IP 주소가 입력되면, 제1 모듈(130)은 IP주소를 기초로 테스트 입출력장치(200)의 제조사 홈페이지에 접속하고, 제조사 홈페이지에서 테스트 입출력장치(200)의 모델명에 대응되는 테스트 입출력장치(200)의 설치파일을 다운로드 받는다. 이후, 제1 모듈(130)은 다운로드 받은 설치파일을 소프트 PLC(100)에 인스톨함으로써 소프트 PLC(100)에 테스트 입출력장치(200)를 설치한다.Specifically, the first module 130 provides an object for inputting the model name of the test input/output device 200 and the IP address of the soft PLC 100 to the user according to the order shown in FIG. 2 described above. Thereafter, when the model name of the test input/output device 200 and the IP address of the soft PLC 100 are input through the object, the first module 130 accesses the manufacturer homepage of the test input/output device 200 based on the IP address and , download the installation file of the test input/output device 200 corresponding to the model name of the test input/output device 200 from the manufacturer's website. Thereafter, the first module 130 installs the test input/output device 200 in the soft PLC 100 by installing the downloaded installation file in the soft PLC 100 .

제2 모듈(140) 및 제3 모듈(150)은 서로 연동하여 동작함으로써 스크립트 실행부(120)에 의한 자동화 스크립트 실행에 따라 자동화 스크립트에 포함된 검증 태스크를 구성하는 복수개의 이벤트들을 순차적으로 실행한다.The second module 140 and the third module 150 sequentially execute a plurality of events constituting the verification task included in the automation script according to the execution of the automation script by the script execution unit 120 by operating in conjunction with each other. .

이를 위해, 제2 모듈(140)은 테스트 통신카드(160)를 통해 테스트 입출력장치(200)에 연결되고, 제3 모듈(150)은 타겟 통신카드(170)를 통해 타겟 입출력장치(300)에 연결된다.To this end, the second module 140 is connected to the test input/output device 200 through the test communication card 160 , and the third module 150 is connected to the target input/output device 300 through the target communication card 170 . Connected.

먼저, 제2 모듈(140)은 검증 태스크의 실행에 따라 먼저 도 3에 도시된 바와 같이, 테스트 입출력장치(200)의 검증을 위해 미리 정해진 형태의 검증신호를 생성한다.First, according to the execution of the verification task, the second module 140 first generates a verification signal in a predetermined form for verification of the test input/output device 200 as shown in FIG. 3 .

일 실시예에 있어서, 제2 모듈(140)은 타겟 입출력장치(200)의 검증을 위해 디지털 형태의 검증신호를 생성할 수 있다. 제2 모듈(140)이 생성한 디지털 형태의 검증신호의 예가 도 4에 도시되어 있다. 도 4에 도시된 바와 같이 제2 모듈(140)은 서로 다른 바이트(Byte)를 갖는 복수개의 검증신호를 순차적으로 생성할 수 있다.In an embodiment, the second module 140 may generate a digital verification signal for verification of the target input/output device 200 . An example of the digital verification signal generated by the second module 140 is shown in FIG. 4 . As shown in FIG. 4 , the second module 140 may sequentially generate a plurality of verification signals having different bytes.

다른 실시예에 있어서, 제2 모듈(140)은 검증신호를 아날로그 형태로 생성할 수도 있다. 제2 모듈(140)이 생성한 아날로그 형태의 검증신호의 예가 도 5a 및 도 5b에 도시되어 있다. 제2 모듈(140)은 검증신호를, 도 5a에 도시된 바와 같이 스텝(Step)형태로 생성하거나, 도 5b에 도시된 바와 같이 사인파(Sine) 형태로 생성할 수 있다. 제2 모듈(140)은 검증신호가 생성되면, 생성된 검증신호를 테스트 통신카드(160)를 통해 테스트 입출력장치(200)로 출력한다.In another embodiment, the second module 140 may generate the verification signal in an analog form. An example of an analog verification signal generated by the second module 140 is shown in FIGS. 5A and 5B . The second module 140 may generate the verification signal in the form of a step as shown in FIG. 5A or in the form of a sine wave as shown in FIG. 5B . When the verification signal is generated, the second module 140 outputs the generated verification signal to the test input/output device 200 through the test communication card 160 .

일 실시예에 있어서, 제2 모듈(140)은 검증신호를 아날로그 형태로 생성하는 경우 검증신호를 디지털 형태의 신호로 변환하여 테스트 통신카드(160) 및 테스트 입출력장치(200)를 통해 출력할 수 있다.In one embodiment, when generating the verification signal in analog form, the second module 140 converts the verification signal into a digital signal and outputs it through the test communication card 160 and the test input/output device 200 . there is.

제3 모듈(150)은 타겟 입출력장치(300) 및 타겟 통신카드(180)를 통해 제2 모듈(140)에 의해 생성된 검증신호를 수신한다. 일 실시예에 있어서, 제3 모듈(150)은 제2 모듈(140)에 의해 아날로그 형태의 검증신호가 생성된 경우, 타겟 입출력장치(300) 및 타겟 통신카드(180)를 통해 수신된 디지털 형태의 검증신호를 다시 아날로그 형태의 검증신호로 복원할 수 있다.The third module 150 receives the verification signal generated by the second module 140 through the target input/output device 300 and the target communication card 180 . In one embodiment, the third module 150 has a digital form received through the target input/output device 300 and the target communication card 180 when an analog verification signal is generated by the second module 140 . It is possible to restore the verification signal in the analog form back to the verification signal.

이후, 제3 모듈(150)은 수신된 검증신호를 기초로 확인신호를 생성한다. 일 실시예에 있어서, 검증신호가 아날로그 형태로 생성된 신호인 경우, 제3 모듈(150)은 확인신호 생성시 수신된 검증신호를 미리 정해진 비율만큼 스케일링(Scaling)함에 의해 확인신호를 생성할 수 있다. 다른 실시예에 있어서, 검증신호가 디지털 형태로 생성된 신호인 경우, 제3 모듈(130)은 확인신호 생성시 수신된 검증신호에서 2진수 형태의 비트를 미리 정해진 개수(또는 횟수)만큼 왼쪽으로 쉬프트시킴으로써 확인신호를 생성할 수 있다. 예컨대, 검증신호가 "00001010"이고 비트들을 왼쪽으로 2회 쉬프트 시키는 것으로 결정된 경우, 제3 모듈(130)은 검증신호 "00001010"의 비트들을 왼쪽으로 2회 쉬프트 시킴에 의해 "00101000"으로 구성된 확인신호를 생성할 수 있다. Thereafter, the third module 150 generates a confirmation signal based on the received verification signal. In one embodiment, when the verification signal is a signal generated in an analog form, the third module 150 may generate the verification signal by scaling the verification signal received at the time of generating the verification signal by a predetermined ratio. there is. In another embodiment, when the verification signal is a digitally generated signal, the third module 130 shifts the bits in binary form from the verification signal received when generating the verification signal to the left by a predetermined number (or number of times). A confirmation signal can be generated by shifting. For example, if the verification signal is “00001010” and it is determined to shift the bits to the left twice, the third module 130 confirms the configuration of “00101000” by shifting the bits of the verification signal “00001010” to the left twice signal can be generated.

이때, 미리 정해진 비율 및 쉬프트시킬 비트의 개수는 각 검증신호의 수신회차별로 상이하게 설정될 수 있다. 이를 통해 제3 모듈(150)은 각 수신회차 별로 수신된 검증신호를 서로 구분할 수 있게 된다.In this case, the predetermined ratio and the number of bits to be shifted may be set differently for each reception time of each verification signal. Through this, the third module 150 can distinguish the verification signals received for each reception cycle from each other.

상술한 실시예에 있어서, 제3 모듈(150)은 확인신호 생성시 검증신호의 비트를 미리 정해진 개수만큼 쉬프트시키거나 검증신호를 스케일링 하는 것으로 설명하였지만, 다른 실시예에 있어서 제3 모듈(150)은 확인신호 생성시 검증신호의 수신회차 별로 부여되어 있는 고유한 키(Key)값을 검증신호에 추가함에 의해 확인신호를 생성할 수도 있을 것이다.In the above-described embodiment, the third module 150 shifts the bits of the verification signal by a predetermined number or scales the verification signal when generating the verification signal, but in another embodiment, the third module 150 may generate a confirmation signal by adding a unique key value assigned to each reception cycle of the verification signal to the verification signal when generating the verification signal.

이후, 제3 모듈(150)은 생성된 확인신호를 타겟 통신카드(180) 및 타겟 입출력장치(300)를 통해 출력한다. 이때, 확인신호가 아날로그 형태의 신호인 경우 제3 모듈(150)은 확인신호를 디지털 형태의 신호로 변환하여 출력할 수 있다.Thereafter, the third module 150 outputs the generated confirmation signal through the target communication card 180 and the target input/output device 300 . In this case, when the confirmation signal is an analog signal, the third module 150 may convert the confirmation signal into a digital signal and output it.

제2 모듈(140)은 테스트 입출력장치(200) 및 테스트 통신카드(160)를 통해 제3 모듈(150)에 의해 생성된 확인신호를 수신한다. 이때, 확인신호가 아날로그 형태의 신호였던 경우 제3 모듈(150)은 수신된 확인신호를 아날로그 형태의 신호로 복원할 수 있다.The second module 140 receives the confirmation signal generated by the third module 150 through the test input/output device 200 and the test communication card 160 . In this case, when the confirmation signal is an analog signal, the third module 150 may restore the received confirmation signal to an analog signal.

이후, 제2 모듈(140)은 수신된 확인신호를 기초로 검증신호를 복원한다. 일 실시예에 있어서, 확인신호가 아날로그 형태로 생성된 신호인 경우, 제2 모듈(140)은 확인신호를 미리 정해진 비율만큼 역스케일링함에 의해 검증신호를 복원할 수 있다. 다른 실시예에 있어서, 확인신호가 디지털 형태로 생성된 신호인 경우, 제2 모듈(140)은 확인신호에서 2진수 형태의 비트를 미리 정해진 개수만큼 오른쪽으로 쉬프트시킴으로써 검증신호를 복원할 수 있다. 예컨대, 상술한 확인신호의 생성에 대한 예에서, "00001010"으로 구성된 검증신호로부터 비트들을 왼쪽으로 2회 쉬프트 시킴에 의해 "00101000"으로 구성된 확인신호가 생성된 경우, 제2 모듈(140)은 확인신호 "00101000"의 비트들을 다시 오른쪽으로 2회 쉬프트 시킴에 의해 "00001010"으로 구성된 검증신호를 복원할 수 있다. Thereafter, the second module 140 restores the verification signal based on the received verification signal. In an embodiment, when the confirmation signal is a signal generated in an analog form, the second module 140 may restore the verification signal by inversely scaling the confirmation signal by a predetermined ratio. In another embodiment, when the confirmation signal is a digitally generated signal, the second module 140 may restore the verification signal by shifting the bits of the binary number in the confirmation signal to the right by a predetermined number. For example, in the example of the generation of the confirmation signal described above, when the confirmation signal composed of “00101000” is generated by shifting bits to the left twice from the verification signal composed of “00001010”, the second module 140 is By shifting the bits of the confirmation signal “00101000” to the right twice again, the verification signal composed of “00001010” can be restored.

또 다른 예로, 확인신호에 미리 정해진 키값이 추가되어 있는 경우 제2 모듈(140)은 확인신호에서 미리 정해진 키 값을 제거함에 의해 검증신호를 복원할 수 있다.As another example, when a predetermined key value is added to the confirmation signal, the second module 140 may restore the verification signal by removing the predetermined key value from the confirmation signal.

이후, 제2 모듈(140)은 복원된 검증신호를 자신이 생성한 검증신호와 비교함으로써 테스트 입출력장치(200)의 통신상태를 검증한다.Thereafter, the second module 140 verifies the communication state of the test input/output device 200 by comparing the restored verification signal with the verification signal generated by the second module 140 .

일 실시예에 있어서, 제2 모듈(140)은 검증신호를 디지털 형태로 생성한 경우 복원된 검증신호가 자신이 생성한 검증신호와 동일한지 여부를 판단하여 동일한 경우 테스트 입출력장치(200)의 통신 성능이 건전한 것으로 판단할 수 있다.In one embodiment, the second module 140 determines whether the restored verification signal is the same as the verification signal generated by itself when the verification signal is generated in digital form, and when the verification signal is the same, the communication of the test input/output device 200 is the same. It can be judged that the performance is sound.

다른 실시예에 있어서, 제2 모듈(140)은 검증신호를 아날로그 형태로 생성한 경우 복원된 검증신호가 자신이 생성한 검증신호와 동일한지 여부를 판단하거나 복원된 검증신호의 대표값이 자신이 생성된 검증신호의 대표값의 오차범위 이내인지 여부를 판단하여 테스트 입출력장치(200)의 통신성능을 검증할 수 있다. 이때, 제2 모듈(140)은 복원된 검증신호가 자신이 생성한 검증신호와 동일하거나 복원된 검증신호의 대표값이 자신이 생성된 검증신호의 대표값의 오차범위 내에 포함되면 테스트 입출력장치(200)의 통신성능이 건전한 것으로 판단할 수 있다.In another embodiment, when the second module 140 generates the verification signal in an analog form, it determines whether the restored verification signal is the same as the verification signal it generates, or the representative value of the restored verification signal is its own. Communication performance of the test input/output device 200 may be verified by determining whether or not it is within an error range of the representative value of the generated verification signal. At this time, if the restored verification signal is the same as the verification signal generated by the second module 140 or the representative value of the restored verification signal is within the error range of the representative value of the verification signal generated by the second module 140, the test input/output device ( 200), it can be judged that the communication performance is sound.

일 실시예에 있어서, 검증신호가 도 5a에 도시된 바와 같은 스텝형태인 경우 대표값은 GEN_Cycle_Set, GEN_STEP, AM_Xout_Min, 및 AM_Xout_Max 중 적어도 하나로 결정될 수 있다. 이때, GEN_Cycle_Set은 하나의 스텝(Step)이 유지되는 시간 (또는 길이)를 설정하는 파라미터를 나타내고, GEN_STEP은 하나의 스텝의 높이를 설정하는 파라미터를 나타내며, AM_Xout_Min은 스텝파형이 시작되는 최소값을 설정하는 파라미터를 나타내고, AM_Xout_Max는 스텝파형의 최대값을 설정하는 파라미터를 나타내는 것으로서 스텝파형이 AM_Xout_Max에 도달하면 파형은 최소값으로 리셋된다.In an embodiment, when the verification signal has a step form as shown in FIG. 5A , the representative value may be determined as at least one of GEN_Cycle_Set, GEN_STEP, AM_Xout_Min, and AM_Xout_Max. At this time, GEN_Cycle_Set indicates a parameter that sets the time (or length) for which one step is maintained, GEN_STEP indicates a parameter that sets the height of one step, and AM_Xout_Min indicates the minimum value at which the step waveform starts. Indicates a parameter, and AM_Xout_Max indicates a parameter that sets the maximum value of the step waveform. When the step waveform reaches AM_Xout_Max, the waveform is reset to the minimum value.

다른 실시예에 있어서, 검증신호가 도 5b에 도시된 바와 같은 사인파형태인 경우 대표값은 GEN_PT, GEN_OS, GEN_DL, 및 GEN_AM등으로 결정될 수 있다. 이때, GEN_PT는 사인파의 1사이클(Cycle)의 주기(Period)를 나타내고, GEN_OS는 사인파의 오프셋(진폭 방향의 오프셋)을 나타내며, GEN_DL은 사인파의 진폭을 나타내고, GEN_AM은 사인파가 시작되는 시작지점(Start Point)의 딜레이 비율을 나타낸다.In another embodiment, when the verification signal is in the form of a sine wave as shown in FIG. 5B , representative values may be determined as GEN_PT, GEN_OS, GEN_DL, and GEN_AM. At this time, GEN_PT represents the period of one cycle of the sine wave, GEN_OS represents the offset (offset in the amplitude direction) of the sine wave, GEN_DL represents the amplitude of the sine wave, and GEN_AM is the starting point ( Start Point) delay ratio.

다시 도 1을 참조하면, 테스트 통신카드(160)는 테스트 입출력장치(200)와 제2 모듈(140)를 연결하고, 타겟 통신카드(170)는 타겟 입출력장치(300)와 제3 모듈(150)을 연결한다. 일 실시예에 있어서, 테스트 통신카드(160) 및 타겟 통신카드(170)는 프로피버스(Profibus-DP), 프로피넷(ProfiNet), 또는 이더캣(EtherCAT) 중 적어도 하나의 통신 프로토콜을 지원하는 통신카드일 수 있다.Referring back to FIG. 1 , the test communication card 160 connects the test input/output device 200 and the second module 140 , and the target communication card 170 connects the target input/output device 300 and the third module 150 . ) to connect In one embodiment, the test communication card 160 and the target communication card 170 is a communication that supports at least one communication protocol of Profibus (Profibus-DP), ProfiNet (ProfiNet), or EtherCAT (EtherCAT) It can be a card.

테스트 입출력 장치(200)는 통신성능 검증 대상이 되는 입출력장치를 의미하는 것으로서, 테스트 통신카드(160)를 통해 제2 모듈(140)에 연결된다. 또한, 테스트 입출력장치(200)는 타겟 입출력장치(300)와도 연결된다. 일 실시예에 있어서, 테스트 입출력장치(200)는 소프트 PLC(100)로부터 원격에 설치되는 리모트 테스트 입출력장치(200)일 수 있다.The test input/output device 200 refers to an input/output device that is a communication performance verification target, and is connected to the second module 140 through the test communication card 160 . In addition, the test input/output device 200 is also connected to the target input/output device 300 . In one embodiment, the test input/output device 200 may be a remote test input/output device 200 installed remotely from the soft PLC 100 .

테스트 입출력장치(200)는 도 1에 도시된 바와 같이, 테스트 입력장치(210) 및 테스트 출력장치(220)를 포함한다. 일 실시예에 있어서, 테스트 입력장치(210) 및 테스트 출력장치(220)는 각각 디지털 신호를 입력 및 출력하는 디지털 입력카드 및 디지털 출력카드로 구현되거나, 각각 아날로그 신호를 입력 및 출력하는 아날로그 입력카드 및 아날로그 출력카드로 구현되거나 될 수 있다.As shown in FIG. 1 , the test input/output device 200 includes a test input device 210 and a test output device 220 . In one embodiment, the test input device 210 and the test output device 220 are implemented as a digital input card and a digital output card for inputting and outputting a digital signal, respectively, or an analog input card for inputting and outputting an analog signal, respectively. and an analog output card.

타겟 입출력 장치(300)는 이미 검증이 완료된 입출력장치를 의미하는 것으로서, 타겟 통신카드(170)를 통해 제3 모듈(150)에 연결된다. 또한, 타겟 입출력장치(300)는 테스트 입출력장치(200)와도 연결된다. 일 실시예에 있어서, 타겟 입출력장치(300)는 소프트 PLC(100)로부터 원격에 설치되는 리모트 타겟 입출력장치(300)일 수 있다.The target input/output device 300 refers to an input/output device that has already been verified, and is connected to the third module 150 through the target communication card 170 . In addition, the target input/output device 300 is also connected to the test input/output device 200 . In one embodiment, the target input/output device 300 may be a remote target input/output device 300 installed remotely from the soft PLC 100 .

구체적으로, 타겟 입출력장치(300)는 도 1에 도시된 바와 같이, 타겟 입력장치(310) 및 타겟 출력장치(320)를 포함한다. 일 실시예에 있어서, 타겟 입력장치(310) 및 타겟 출력장치(320)는 각각 디지털 신호를 입력 및 출력하는 디지털 입력카드 및 디지털 출력카드로 구현되거나, 각각 아날로그 신호를 입력 및 출력하는 아날로그 입력카드 및 아날로그 출력카드로 구현되거나 될 수 있다.Specifically, as shown in FIG. 1 , the target input/output device 300 includes a target input device 310 and a target output device 320 . In one embodiment, the target input device 310 and the target output device 320 are implemented as a digital input card and a digital output card for inputting and outputting a digital signal, respectively, or an analog input card for inputting and outputting an analog signal, respectively. and an analog output card.

이러한 실시예에 따르는 경우, 테스트 출력장치(220)는 테스트 통신카드(160)를 통해 제2 모듈(140)로부터 검증신호를 수신하여 타겟 입력장치(310)로 전달하고, 타겟 입력장치(310)는 수신된 검증신호를 타겟 통신카드(170)를 통해 제3 모듈(150)로 전달한다.According to this embodiment, the test output device 220 receives the verification signal from the second module 140 through the test communication card 160 and transmits it to the target input device 310 , and the target input device 310 . transmits the received verification signal to the third module 150 through the target communication card 170 .

또한, 타겟 출력장치(320)는 타겟 통신카드(170)를 통해 제3 모듈(150)로부터 확인신호를 수신하여 테스트 입력장치(210)로 전달하고, 테스트 입력장치(210)는 수신된 확인신호를 테스트 통신카드(160)를 통해 제2 모듈(140)로 전달한다.In addition, the target output device 320 receives the confirmation signal from the third module 150 through the target communication card 170 and transmits it to the test input device 210 , and the test input device 210 receives the confirmation signal is transmitted to the second module 140 through the test communication card 160 .

본 발명이 속하는 기술분야의 당업자는 상술한 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다.Those skilled in the art to which the present invention pertains will understand that the above-described present invention may be embodied in other specific forms without changing the technical spirit or essential characteristics thereof.

그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive. The scope of the present invention is indicated by the following claims rather than the above detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalent concepts should be interpreted as being included in the scope of the present invention. do.

10: 통신성능 검증 시스템 100: 소프트 PLC
110: 스크립트 생성부 120: 스크립트 실행부
130: 제1 모듈 140: 제2 모듈
150: 제3 모듈 160: 테스트 통신카드
170: 타겟 통신카드 200: 테스트 입출력장치
210: 타겟 입출력장치
10: Communication performance verification system 100: Soft PLC
110: script generation unit 120: script execution unit
130: first module 140: second module
150: third module 160: test communication card
170: target communication card 200: test input/output device
210: target input/output device

Claims (16)

테스트 입출력장치의 검증을 위한 검증 태스크를 포함하는 자동화 스크립트를 생성하는 스크립트 생성부;
상기 자동화 스크립트를 실행하여 상기 검증 태스크를 수행하는 스크립트 실행부;
검증이 완료된 타겟 입출력장치에 연결되고, 상기 검증 태스크의 수행에 따라 상기 타겟 입출력장치를 통해 수신되는 검증신호를 기초로 확인신호를 생성하는 제1 모듈; 및
상기 테스트 입출력장치에 연결되고, 상기 검증 태스크의 수행에 따라 상기 검증신호를 생성하여 상기 제1 모듈로 제공하고, 상기 테스트 입출력장치를 통해 상기 제1 모듈로부터 수신되는 확인신호와 상기 검증신호를 비교하여 상기 테스트 입출력장치의 성능을 검증하는 제2 모듈을 포함하는 것을 특징으로 하는 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템.
a script generator for generating an automated script including a verification task for verification of the test input/output device;
a script execution unit that executes the automation script to perform the verification task;
a first module connected to a target input/output device for which verification is completed, and generating a verification signal based on a verification signal received through the target input/output device according to the execution of the verification task; and
It is connected to the test input/output device, generates the verification signal according to the execution of the verification task, provides the verification signal to the first module, and compares the verification signal with the verification signal received from the first module through the test input/output device to the communication performance verification system between the input/output device and the soft PLC using robot process automation, characterized in that it comprises a second module for verifying the performance of the test input/output device.
제1항에 있어서,
상기 제1 모듈은 상기 타겟 입출력장치를 통해 상기 제2 모듈로부터 상기 검증신호를 수신하고, 상기 검증신호가 아날로그 신호인 경우 상기 검증신호를 미리 정해진 비율만큼 스케일링(Scaling)함에 의해 상기 확인신호를 생성하고,
상기 제2 모듈은 상기 테스트 입출력장치를 통해 상기 확인신호가 수신되면, 상기 확인신호를 상기 비율만큼 역스케일링함에 의해 상기 확인신호로부터 검증신호를 복원하고, 복원된 검증신호를 상기 제2 모듈이 생성한 검증신호와 비교하는 것을 특징으로 하는 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템.
According to claim 1,
The first module receives the verification signal from the second module through the target input/output device, and generates the verification signal by scaling the verification signal by a predetermined ratio when the verification signal is an analog signal. do,
When the verification signal is received through the test input/output device, the second module restores the verification signal from the verification signal by inversely scaling the verification signal by the ratio, and the second module generates the restored verification signal Communication performance verification system between input/output device and soft PLC using robot process automation, characterized in that it is compared with one verification signal.
제1항에 있어서,
상기 제1 모듈은 상기 타겟 입출력장치를 통해 상기 제2 모듈로부터 상기 검증신호를 수신하고, 상기 검증신호가 디지털 신호인 경우 상기 검증신호에서 2진수 형태의 비트를 미리 정해진 개수만큼 왼쪽으로 쉬프트시킴으로써 상기 확인신호를 생성하고,
상기 제2 모듈은 상기 테스트 입출력장치를 통해 상기 확인신호가 수신되면, 상기 확인신호에서 2진수 형태의 비트를 미리 정해진 개수만큼 오른쪽으로 쉬프트시킴으로써 상기 확인신호로부터 검증신호를 복원하고, 복원된 검증신호를 상기 제2 모듈이 생성한 검증신호와 비교하는 것을 특징으로 하는 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템.
According to claim 1,
The first module receives the verification signal from the second module through the target input/output device, and when the verification signal is a digital signal, by shifting the bits in binary form in the verification signal to the left by a predetermined number, the generate a confirmation signal,
When the confirmation signal is received through the test input/output device, the second module restores the verification signal from the confirmation signal by shifting bits in the binary format to the right by a predetermined number in the confirmation signal, and restores the restored verification signal A communication performance verification system between the input/output device and the soft PLC using robot process automation, characterized in that compared with the verification signal generated by the second module.
제1항에 있어서,
상기 제2 모듈은 상기 검증신호가 디지털 신호인 경우, 상기 검증신호와 상기 확인신호가 동일하면 상기 테스트 입출력장치의 성능이 건전한 것으로 판단하는 것을 특징으로 하는 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템.
According to claim 1,
When the verification signal is a digital signal, the second module determines that the performance of the test input/output device is healthy if the verification signal and the verification signal are the same. Communication Performance Verification System.
제1항에 있어서,
상기 제2 모듈은 상기 검증신호가 아날로그 신호인 경우, 상기 검증신호와 상기 확인신호가 동일하거나 상기 확인신호의 대표값이 상기 검증신호의 대표값의 오차범위 이내이면 상기 테스트 입출력장치의 성능이 건전한 것으로 판단하는 것을 특징으로 하는 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템.
According to claim 1,
In the second module, when the verification signal is an analog signal, if the verification signal and the verification signal are the same or the representative value of the verification signal is within an error range of the representative value of the verification signal, the performance of the test input/output device is healthy Communication performance verification system between the input/output device and the soft PLC using robot process automation, characterized in that it is determined that
제5항에 있어서,
상기 아날로그 신호는 스텝형태의 신호이고,
상기 대표값은 상기 아날로그 신호가 스텝(Step) 형태인 경우 단위 스텝이 유지되는 시간, 단위 스텝의 높이, 스텝파형이 시작되는 최소값, 및 스텝파형의 최대값 중 적어도 하나를 포함하는 것을 특징으로 하는 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템.
6. The method of claim 5,
The analog signal is a step-type signal,
The representative value comprises at least one of a time for which a unit step is maintained, a height of a unit step, a minimum value at which the step waveform starts, and a maximum value of the step waveform when the analog signal is in the form of a step Communication performance verification system between input/output device and soft PLC using robot process automation.
제5항에 있어서,
상기 아날로그 신호는 사인파 형태의 신호이고,
상기 대표값은 사인파의 1사이클(Cycle)의 주기, 상기 사인파의 진폭 방향의 오프셋, 상기 사인파의 진폭, 및 상기 사인파가 시작되는 시작지점(Start Point)의 딜레이 비율 중 적어도 하나를 포함하는 것을 특징으로 하는 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템.
6. The method of claim 5,
The analog signal is a signal in the form of a sine wave,
The representative value comprises at least one of a period of one cycle of a sine wave, an offset in the amplitude direction of the sine wave, an amplitude of the sine wave, and a delay ratio of a start point where the sine wave starts Communication performance verification system between input/output device and soft PLC using robot process automation.
제1항에 있어서,
상기 스크립트 실행부는 상기 검증 태스크를 미리 정해진 횟수만큼 반복 실행하여 각 실행결과를 로그로 기록하는 것을 특징으로 하는 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템.
According to claim 1,
The script execution unit repeatedly executes the verification task a predetermined number of times and records each execution result as a log. Communication performance verification system between an input/output device and a soft PLC using robot process automation.
제1항에 있어서,
상기 타겟 입출력장치는,
상기 테스트 입출력장치로부터 상기 검증신호를 수신하여 상기 제1 모듈로 입력하는 타겟 입력장치; 및
상기 제1 모듈로부터 상기 확인신호를 수신하여 상기 테스트 입출력장치로 출력하는 타겟 출력장치를 포함하는 것을 특징으로 하는 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템.
According to claim 1,
The target input/output device,
a target input device receiving the verification signal from the test input/output device and inputting it to the first module; and
Communication performance verification system between the input/output device and the soft PLC using robot process automation, characterized in that it comprises a target output device for receiving the confirmation signal from the first module and outputting it to the test input/output device.
제1항에 있어서,
상기 테스트 입출력장치는,
상기 타겟 입출력장치로부터 상기 확인신호를 수신하여 상기 제2 모듈로 입력하는 테스트 입력장치; 및
상기 제2 모듈로부터 상기 검증신호를 수신하여 상기 타겟 입출력장치로 출력하는 테스트 출력장치를 포함하는 것을 특징으로 하는 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템.
According to claim 1,
The test input/output device,
a test input device receiving the confirmation signal from the target input/output device and inputting it to the second module; and
and a test output device for receiving the verification signal from the second module and outputting the verification signal to the target input/output device.
제1항에 있어서,
상기 타겟 입출력장치를 상기 제1 모듈에 연결시키는 타겟 통신카드; 및
상기 테스트 입출력장치를 상기 제2 모듈에 연결시키는 테스트 통신카드를 더 포함하고,
상기 테스트 입출력장치의 테스트 출력장치는 상기 타겟 입출력장치의 타겟 입력장치에 연결되고,
상기 테스트 입출력장치의 테스트 입력장치는 상기 타겟 입출력장치의 타겟 출력장치에 연결되는 것을 특징으로 하는 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템.
According to claim 1,
a target communication card connecting the target input/output device to the first module; and
Further comprising a test communication card for connecting the test input/output device to the second module,
the test output device of the test input/output device is connected to the target input device of the target input/output device;
The test input device of the test input/output device is a communication performance verification system between the input/output device and the soft PLC using robot process automation, characterized in that it is connected to the target output device of the target input/output device.
제11항에 있어서,
상기 타겟 통신카드 및 상기 테스트 통신카드는 프로피버스(Profibus), 프로피넷(Profinet), 및 이더캣(Ethercat) 중 적어도 하나의 통신 프로토콜을 지원하는 것을 특징으로 하는 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템.
12. The method of claim 11,
The target communication card and the test communication card are input/output devices and software using robot process automation, characterized in that they support at least one communication protocol of Profibus, Profinet, and Ethercat. Communication performance verification system between PLCs.
제1항에 있어서,
상기 검증 태스크는 상기 제2 모듈이 상기 검증신호를 생성하는 검증신호 생성 이벤트, 상기 제2 모듈이 상기 검증신호를 상기 제1 모듈로 전송하는 검증신호 전송이벤트, 상기 제1 모듈이 상기 검증신호를 수신하는 검증신호 수신 이벤트, 상기 제1 모듈이 상기 검증신호를 기초로 확인신호를 생성하는 확인신호 생성 이벤트, 상기 제1 모듈이 상기 확인신호를 상기 제2 모듈로 전송하는 확인신호 전송 이벤트, 상기 제2 모듈이 상기 확인신호를 수신하는 확인신호 수신 이벤트, 및 상기 제2 모듈이 상기 검증신호와 상기 확인신호를 비교하여 상기 테스트 입출력장치의 성능을 검증하는 검증 이벤트 중 적어도 하나를 포함하는 것을 특징으로 하는 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템.
According to claim 1,
The verification task includes a verification signal generation event in which the second module generates the verification signal, a verification signal transmission event in which the second module transmits the verification signal to the first module, and the first module receives the verification signal A verification signal reception event to be received, a verification signal generation event in which the first module generates a verification signal based on the verification signal, a verification signal transmission event in which the first module transmits the verification signal to the second module, the and at least one of a confirmation signal reception event in which the second module receives the confirmation signal, and a verification event in which the second module compares the verification signal and the confirmation signal to verify the performance of the test input/output device. Communication performance verification system between input/output device and soft PLC using robot process automation.
제1항에 있어서,
상기 자동화 스크립트는 상기 테스트 입출력장치의 설정을 위한 설정 태스크를 더 포함하는 것을 특징으로 하는 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템.
According to claim 1,
The automation script is a communication performance verification system between the input/output device and the soft PLC using robot process automation, characterized in that it further comprises a setting task for setting the test input/output device.
제14항에 있어서,
상기 설정 태스크의 수행에 따라 상기 테스트 입출력장치의 설치파일을 다운로드 받아 상기 소프트 PLC에 인스톨하는 제3 모듈을 더 포함하는 것을 특징으로 하는 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템.
15. The method of claim 14,
Communication performance verification system between the input/output device and the soft PLC using robot process automation, characterized in that it further comprises a third module for downloading the installation file of the test input/output device according to the execution of the setting task and installing it on the soft PLC.
제14항에 있어서,
상기 설정 태스크는 상기 테스트 입출력장치의 모델명 및 상기 소프트 PLC의 IP 주소 입력을 위한 객체를 제공하는 객체제공 이벤트, 상기 입력된 모델명을 기초로 상기 테스트 입출력장치의 제조사 홈페이지에 접속하는 접속 이벤트, 상기 제조사 홈페이지에서 상기 테스트 입출력장치의 설치파일을 다운로드 받는 다운로드 이벤트, 및 상기 다운로드 받은 설치파일을 상기 소프트 PLC에 인스톨하여 상기 소프트 PLC에 상기 테스트 입출력장치를 설치하는 설치 이벤트 중 적어도 하나를 포함하는 것을 특징으로 하는 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 PLC간의 통신 성능 검증 시스템.
15. The method of claim 14,
The setting task includes an object providing event for providing an object for inputting the model name of the test input/output device and the IP address of the soft PLC, a connection event for accessing the manufacturer homepage of the test input/output device based on the input model name, the manufacturer and at least one of a download event for downloading the installation file of the test input/output device from a homepage, and an installation event for installing the test input/output device in the soft PLC by installing the downloaded installation file to the soft PLC Communication performance verification system between input/output device and soft PLC using robot process automation.
KR1020200049850A 2020-04-24 2020-04-24 System for Evaluating Communication Performance Between Soft PLC and IO Device Using Robot Process Automation Active KR102282850B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200049850A KR102282850B1 (en) 2020-04-24 2020-04-24 System for Evaluating Communication Performance Between Soft PLC and IO Device Using Robot Process Automation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200049850A KR102282850B1 (en) 2020-04-24 2020-04-24 System for Evaluating Communication Performance Between Soft PLC and IO Device Using Robot Process Automation

Publications (1)

Publication Number Publication Date
KR102282850B1 true KR102282850B1 (en) 2021-07-27

Family

ID=77125555

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200049850A Active KR102282850B1 (en) 2020-04-24 2020-04-24 System for Evaluating Communication Performance Between Soft PLC and IO Device Using Robot Process Automation

Country Status (1)

Country Link
KR (1) KR102282850B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230029358A (en) 2021-08-24 2023-03-03 서울대학교병원 System monitoring apparatus and method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130096697A1 (en) * 2011-10-05 2013-04-18 Opteon Corporation Methods, apparatus, and systems for monitoring and/or controlling dynamic environments
JP2017129957A (en) * 2016-01-19 2017-07-27 東芝三菱電機産業システム株式会社 Interface test device and interface test system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130096697A1 (en) * 2011-10-05 2013-04-18 Opteon Corporation Methods, apparatus, and systems for monitoring and/or controlling dynamic environments
JP2017129957A (en) * 2016-01-19 2017-07-27 東芝三菱電機産業システム株式会社 Interface test device and interface test system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230029358A (en) 2021-08-24 2023-03-03 서울대학교병원 System monitoring apparatus and method

Similar Documents

Publication Publication Date Title
US11435728B2 (en) I/O virtualization for commissioning
CN112602025B (en) Automatic setup of digital twins of industrial controllers
US6442441B1 (en) Method of automatically generating and verifying programmable logic controller code
US20170068229A1 (en) Control system, method, program, and information processing device
CN111064628B (en) CAN bus automatic test system
EP3413149B1 (en) Field device commissioning system and field device commissioning method
WO2017040145A1 (en) Web-based programming environment for embedded devices
US11366945B2 (en) Soft-real-time hub providing data transport for processor-in-the-loop (PIL) simulations
CA2617913A1 (en) System and method for rapid prototyping and implementation of distributed scalable task control architecture
JP2008282363A (en) Programmable controller, program creation support device, computer program and programmable logic controller (plc) system
CN114035860B (en) Flow parameter configuration system based on RPA global variable module
KR102282850B1 (en) System for Evaluating Communication Performance Between Soft PLC and IO Device Using Robot Process Automation
Kutscher et al. Enhancing digital twin performance through simulation of computerized numerical control firmware
KR101243441B1 (en) Simulator based on reconfigurable components
CN111258915B (en) Method for carrying out automatic unit test on PLC program
CN111267111A (en) Robot control method, device and system
CN112099410A (en) Software automation control system and method
JP4962721B2 (en) Tool device and method for creating message transmission program
JP7044086B2 (en) Control systems, control methods, and control programs
KR20220098539A (en) Automatic development system for PLC program
CN113468256A (en) Method, device and medium for connecting various databases and executing SQL command
KR100928895B1 (en) Tool generator for control system development
CN111090447A (en) Firmware updating method of IO module and related device
CN118642426B (en) A remote monitoring and debugging method, system and terminal based on PLC
US20240419480A1 (en) Information processing system

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20200424

PA0201 Request for examination
E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20210531

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20210722

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20210722

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20240703

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20250630

Start annual number: 5

End annual number: 5