[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR101593216B1 - On-the-fly data transmission system and method for transmitting data to divide read and write period thereof - Google Patents

On-the-fly data transmission system and method for transmitting data to divide read and write period thereof Download PDF

Info

Publication number
KR101593216B1
KR101593216B1 KR1020140130841A KR20140130841A KR101593216B1 KR 101593216 B1 KR101593216 B1 KR 101593216B1 KR 1020140130841 A KR1020140130841 A KR 1020140130841A KR 20140130841 A KR20140130841 A KR 20140130841A KR 101593216 B1 KR101593216 B1 KR 101593216B1
Authority
KR
South Korea
Prior art keywords
data frame
mode
data
master device
datagram
Prior art date
Application number
KR1020140130841A
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 KR1020140130841A priority Critical patent/KR101593216B1/en
Application granted granted Critical
Publication of KR101593216B1 publication Critical patent/KR101593216B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/24Testing correct operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Systems (AREA)

Abstract

The present invention relates to an on-the-fly type data transmission system which can optimize a data transmission rate to transmit data by using an on-the-fly method, a data transmission rate optimization method thereof, and a slave device for the same. The slave device executes a read operation to extract datagram on the tip of a received data frame and executes a write operation by inserting the datagram to be transmitted to a master device into an end of the received data frame. Accordingly, the on-the-fly type data transmission system can simplify the process in a slave device and reduce process delays.

Description

온더플라이 방식의 데이터 전송 시스템 및 그의 읽기 및 쓰기 주기를 구분한 데이터 전송 방법{On-the-fly data transmission system and method for transmitting data to divide read and write period thereof}BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an on-the-fly data transmission system and a data transmission method for distinguishing between a read period and a write period.

본 발명은 산업용 데이터 전송 기술에 관한 것으로서, 더욱 상세하게는 온더플라이(On the fly) 방식으로 데이터를 전송하는데 있어서, 슬레이브 장치에서의 읽기 및 쓰기 주기를 구분하면서, 데이터 전송률을 최적화시키기 위한 온더플라이 방식의 데이터 전송 시스템 및 그의 읽기 및 쓰기 주기를 구분한 데이터 전송 방법에 관한 것이다.The present invention relates to an industrial data transmission technology, and more particularly, to an industrial data transmission technology in which an on-the-fly transmission method for optimizing a data transmission rate while distinguishing between reading and writing cycles in a slave device, The present invention relates to a data transfer system and a data transfer method for distinguishing between the read and write cycles.

이 부분에 기술된 내용은 단순히 본 실시 예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.The contents described in this section merely provide background information on the present embodiment and do not constitute the prior art.

산업용 데이터 전송 기술은 'Industrial Ethernet'를 기반으로 하여 발전하여 왔으며, 기술적인 측면, 표준화 상태 및 전략적 시장을 고려할 때, PROFINET(RT, IRT), POWERLINK, EtherNet/IP, EtherCAT과 SERCOS Ⅲ 등이 각광받고 있다.Industrial data transmission technology has been developed based on 'Industrial Ethernet', and considering PROFINET (RT, IRT), POWERLINK, EtherNet / IP, EtherCAT and SERCOS Ⅲ, .

이러한 이더넷 통신 방식을 기반으로 하는 산업용 네트워크는, 구성의 용이함과 확장성의 강점으로 널리 사용되고 있으나, 이더넷 규격의 데이터 포맷을 사용하기 때문에, 제어 데이터와 같은 소량의 데이터를 전송하는 경우, 데이터보다 많은 헤더 정보를 추가해야 하는 단점이 있다.Industrial networks based on the Ethernet communication method are widely used as the advantages of ease of configuration and scalability. However, since a data format of the Ethernet standard is used, when a small amount of data such as control data is transmitted, There is a drawback to add information.

특히, 최근 차세대 전력망이 발달함에 따라 1,000개 이상의 장치간 데이터를 보다 효율적으로 전송하기 위한 대량 객체간 데이터 전송 기술이 필요하게 되었다.In particular, as the next generation power network develops, there is a need for data transfer technology between mass objects to transmit data between more than 1,000 devices more efficiently.

일본공개특허 제4107110호, 2008년 04월 11일 등록(명칭: FIELD BUS SYSTEM, CNNECION CONFIRMING METHOD, MASTER AND SLAVE)Japanese Patent Publication No. 4107110, Registered on Apr. 11, 2008 (Name: FIELD BUS SYSTEM, CNNECION CONFIRMING METHOD, MASTER AND SLAVE)

본 발명은 종래 이더넷 기반 산업용 네트워크의 문제점을 해결하고자 제안된 것으로서, 특히, 온더플라이(On the fly) 방식으로 데이터를 전송하는데 있어서, 슬레이브 장치에서의 읽기 및 쓰기 주기를 구분하면서, 데이터 전송률을 최적화시키기 위한 온더플라이 방식의 데이터 전송 시스템 및 그의 읽기 및 쓰기 주기를 구분한 데이터 전송 방법을 제공하고자 한다.The present invention has been proposed to solve the problems of the conventional Ethernet based industrial network. In particular, in transmitting data on the fly, it is necessary to optimize the data transfer rate while distinguishing the read and write cycles in the slave device And to provide a data transmission method which distinguishes between the read and write cycles.

상술한 과제의 해결 수단으로서, 본 발명은, 링 형태로 연결되어, 온더플라이 방식으로 데이터를 전송하는 하나의 마스터 장치와, 복수의 슬레이브 장치를 구비하고, 상기 마스터 장치는, 제1 모드와 제2 모드를 교대로 수행하되, 상기 제1 모드에서 복수의 슬레이브 장치에 대응하는 복수의 데이터그램을 포함하는 제1 데이터 프레임을 송신하고, 제2 모드에서 헤더만을 포함하는 제2 데이터 프레임을 송신하고, 상기 복수의 슬레이브 장치는, 제1 모드와 제2 모드를 교대로 수행하되, 상기 제1 모드에서는 상기 제1 데이터 프레임을 수신하여 상기 제1 데이터 프레임의 헤더를 기준으로 선단에 위치한 데이터그램을 추출한 후 전달하고, 상기 제2 모드에서는 상기 제2 데이터 프레임을 수신하여, 수신된 제2 데이터 프레임의 말단에 응답데이터를 삽입한 후 전달하는 것을 특징으로 온더플라이 방식 데이터 전송 시스템을 제공한다.As a means for solving the above-mentioned problems, the present invention provides a master device and a slave device connected in a ring form for transmitting data in an on-the-fly manner and a plurality of slave devices, Two modes are alternately performed. In the first mode, a first data frame including a plurality of datagrams corresponding to a plurality of slave devices is transmitted. In the second mode, a second data frame including only a header is transmitted , The plurality of slave devices alternately performing a first mode and a second mode, wherein in the first mode, the first data frame is received and a datagram located at a front end based on the header of the first data frame is received Extracts the response data from the received second data frame, inserts the response data into the end of the received second data frame, The data transmission system of the present invention provides an on-the-fly data transmission system.

본 발명에 따른 온더플라이 방식 데이터 전송 시스템에 있어서, 상기 마스터 장치는, 상기 제1 모드에서, 소정 시간 후에 상기 제1 데이터 프레임이 수신되면, 상기 제1 데이터 프레임에 복수의 슬레이브 장치에서 추출되지 못한 데이터그램이 남아 있으면, 오류가 발생한 것으로 판단할 수 있다.In the on-the-fly data transmission system according to the present invention, when the first data frame is received after a predetermined time in the first mode, the master device can not extract the first data frame from the plurality of slave devices If a datagram remains, it can be determined that an error has occurred.

또한, 상기 마스터 장치는, 제2 모드에서, 소정 시간 후에 복수의 슬레이브 장치가 삽입한 응답 데이터들을 포함하는 제2 데이터 프레임을 수신하여 처리할 수 있다.In addition, the master device may receive and process a second data frame including response data inserted by a plurality of slave devices after a predetermined time in the second mode.

여기서, 제1 데이터 프레임 및 제2 데이터 프레임의 헤더는, 상기 제1 데이터 프레임과 제2데이터 프레임을 구분하기 위한 식별 정보를 각각 포함할 수 있다.Here, the header of the first data frame and the header of the second data frame may include identification information for distinguishing the first data frame and the second data frame, respectively.

더하여, 본 발명에 따른 마스터 장치는, 데이터 프레임을 송신하고 수신하기 위한 통신 인터페이스부; 및 제1 모드와 제2 모드를 교대로 수행하되, 상기 제1 모드에서 복수의 슬레이브 장치에 대응하는 복수의 데이터그램을 포함하는 제1 데이터 프레임을 생성하여 송신하고, 제2 모드에서 헤더만을 포함하는 제2 데이터 프레임을 생성하여 송신하도록 제어하는 제어부를 포함하여 이루어질 수 있다.In addition, a master device according to the present invention includes: a communication interface for transmitting and receiving a data frame; And generating and transmitting a first data frame including a plurality of datagrams corresponding to a plurality of slave devices in the first mode and transmitting only the header in the second mode, And a second data frame to be transmitted is generated and transmitted.

더하여, 본 발명에 따른 슬레이브 장치는, 데이터 프레임을 수신하는 제1 통신 인터페이스부; 데이터 프레임을 송신하는 제2 통신 인터페이스부; 및 제1 모드와 제2 모드를 교대로 수행하되, 상기 제1 모드에서는 제1 데이터 프레임을 수신하여, 상기 제1 데이터 프레임의 헤더를 기준으로 선단에 위치한 데이터그램을 추출한 후 송신하고, 상기 제2 모드에서는 제2 데이터 프레임을 수신하여, 수신된 제2 데이터 프레임의 말단에 응답데이터를 삽입한 후 송신하는 제어부를 포함하여 이루어질 수 있다.In addition, a slave device according to the present invention includes: a first communication interface unit for receiving a data frame; A second communication interface for transmitting a data frame; And receiving a first data frame in the first mode and extracting a datagram located at a front end based on a header of the first data frame and transmitting the datagram, 2 mode, the control unit may receive the second data frame, insert the response data at the end of the received second data frame, and transmit the response data.

또한, 본 발명은 상술한 과제의 다른 해결 수단으로서, 마스터 장치 및 복수의 슬레이브 장치가 링 형태로 직렬 연결되고, 마스터 장치로부터 전송된 데이터 프레임이 상기 복수의 슬레이브 장치를 순차로 통과하여 마스터 장치로 되돌아오는 온더플라이 방식 데이터 전송 방법에 있어서, 상기 마스터 장치가, 헤더 및 복수의 슬레이브 장치에 대응하는 복수의 데이터그램을 포함하는 제1 데이터 프레임을 인접한 장치로 송신하고, 소정 시간 후에 반환된 상기 제1 데이터 프레임을 수신하는 지를 확인하는 제1 모드 수행 단계; 및 상기 마스터 장치가, 헤더를 포함하는 제2 데이터 프레임을 인접한 장치로 송신하고, 소정 시간 후에 복수의 슬레이브 장치가 삽입한 응답 데이터를 포함하는 제2 데이터 프레임을 수신하는 제2 모드 수행 단계;를 포함하되, 상기 제1 모드 수행 단계와 제2 모드 수행 단계는 교대로 수행되는 것을 특징으로 하는 온더플라이 방식 데이터 전송 방법을 제공한다.Further, the present invention is characterized in that, as another solution to the above-mentioned problems, a master device and a plurality of slave devices are connected in series in a ring form, and a data frame transmitted from the master device sequentially passes through the plurality of slave devices, Wherein the master device transmits a first data frame including a plurality of datagrams corresponding to a header and a plurality of slave devices to an adjacent device, 1 < / RTI > data frame; And a second mode performing step of the master device transmitting a second data frame including a header to an adjacent device and receiving a second data frame including response data inserted by a plurality of slave devices after a predetermined time Wherein the first mode performing step and the second mode performing step are alternately performed.

또한, 본 발명은 상술한 과제의 다른 해결 수단으로서, 마스터 장치 및 복수의 슬레이브 장치가 링 형태로 직렬 연결되고, 마스터 장치로부터 전송된 데이터 프레임이 상기 복수의 슬레이브 장치를 순차로 통과하여 마스터 장치로 되돌아오는 온더플라이 방식 데이터 전송 방법에 있어서, 상기 슬레이브 장치가, 인접한 장치로부터 제1 데이터 프레임이 수신되면, 상기 수신된 제1 데이터 프레임의 헤더를 기준으로 선단에 위치한 데이터그램을 추출한 후 나머지 데이터그램을 포함하는 제1 데이터 프레임을 인접한 장치로 송신하는 제1 모드 수행 단계; 및 상기 슬레이브 장치가 인접한 장치로부터 제2 데이터 프레임이 수신되면, 상기 수신된 제2 데이터 프레임의 말단에 응답 데이터를 삽입한 후, 인접한 장치로 송신하는 제2 모드 수행 단계를 포함하되, 상기 제1 모드 수행 단계와 제2 모드 수행 단계는 교대로 수행되는 것을 특징으로 하는 온더플라이 방식 데이터 전송 방법을 제공한다.Further, the present invention is characterized in that, as another solution to the above-mentioned problems, a master device and a plurality of slave devices are connected in series in a ring form, and a data frame transmitted from the master device sequentially passes through the plurality of slave devices, Wherein the slave device extracts a datagram located at a front end based on a header of the received first data frame when a first data frame is received from an adjacent device, Transmitting a first data frame including the first data frame to an adjacent device; And a second mode performing step of, when the slave device receives a second data frame from an adjacent device, inserting response data at the end of the received second data frame and transmitting the response data to an adjacent device, And the mode-performing step and the second mode-performing step are performed alternately.

본 발명은 마스터 장치와 복수의 슬레이브 장치가 직렬로 연결되며, 복수의 슬레이브 장치에 대응하는 복수의 데이터그램을 포함하는 데이터 프레임이 상기 마스터 장치와 복수의 슬레이브 장치에 순차적으로 전송되는 온더플라이 방식 데이터 전송 시스템에 있어서, 슬레이브 장치에서의 읽기 주기와 쓰기 주기를 구분함으로써, 마스터 장치에서 슬레이브 장치로의 데이터 전송과 슬레이브 장치에서 마스터 장치로의 데이터 전송이 교대로 이루어지도록 함으로써, 링 구조로 연결된 다수 장치간에 데이터를 보다 효율적으로 전송할 수 있다.The present invention relates to an on-the-fly method in which a master device and a plurality of slave devices are connected in series and a data frame including a plurality of datagrams corresponding to a plurality of slave devices is sequentially transmitted to the master device and a plurality of slave devices In the transmission system, the data transmission from the master device to the slave device and the data transfer from the slave device to the master device are alternately performed by distinguishing the read period and the write period from each other in the slave device, The data can be transmitted more efficiently.

특히, 읽기 및 쓰기 주기가 교대로 이루어져 슬레이브 장치에서 읽기와 쓰기 동작 간에 시간 차가 발생함으로써, 슬레이브 장치는, 읽기 주기에 수신한 제어 명령을 실행한 후, 그 실행 결과를 쓰기 주기를 통해 전송할 수 있다.In particular, since the read and write cycles are alternately generated, a time difference occurs between the read and write operations in the slave device, so that the slave device can execute the control command received in the read cycle and transmit the execution result through the write cycle .

더하여, 본 발명은 마스터 장치가 읽기 및 쓰기 주기를 구분하여 교대로 전송하는데 있어서, 읽기 주기에서 마스터 장치가 복수의 슬레이브 장치로 전송할 복수의 데이터그램을 포함하는 제1 데이터 프레임을 전송하면, 복수의 슬레이브 장치가 각각 수신한 제1 데이터 프레임의 선단에 위치한 데이터그램을 추출한 후 인접한 장치로 전달하도록 하고, 쓰기 주기에서 마스터 장치가 헤더만을 포함하는 제2 데이터 프레임을 전송하면, 복수의 슬레이브 장치가 수신한 제2 데이터 프레임의 말단에 마스터 장치로 전송할 데이터그램을 삽입하여 전달하도록 함으로써, 슬레이브 장치에서의 처리를 단순화시켜, 처리 지연을 줄일 수 있는 우수한 효과가 있다.In addition, according to the present invention, when a master device transmits a first data frame including a plurality of datagrams to be transmitted to a plurality of slave devices in a read cycle, The slave device extracts a datagram located at the front end of the first received data frame and transmits the extracted datagram to an adjacent device. When the master device transmits a second data frame including only the header in the write period, It is possible to simplify the processing in the slave device and reduce the processing delay by inserting the datagram to be transmitted to the master device at the end of one second data frame and delivering it.

또한, 본 발명은 마스터 장치와 슬레이브 장치 간의 데이터 프레임 사이즈를 최소로 유지함으로써, 데이터 전송률을 최적화할 수 있다.Further, the present invention can optimize the data transfer rate by keeping the data frame size between the master device and the slave device to a minimum.

도 1은 본 발명의 일 실시 예에 따른 데이터 전송 시스템을 나타낸 블럭도이다.
도 2는 본 발명에 따른 마스터 장치의 구성을 나타낸 블럭도이다.
도 3은 본 발명에 따른 슬레이브 장치의 구성을 나타낸 블럭도이다.
도 4는 본 발명에 따른 마스터 장치의 데이터 전송 과정을 나타낸 순서도이다.
도 5는 본 발명에 따른 슬레이브 장치의 데이터 전송 과정을 나타낸 순서도이다.
도 6 및 도 7은 본 발명의 일 실시 예에 따른 데이터 전송 시스템에서 전송되는 데이터 프레임을 나타낸 도면이다.
1 is a block diagram illustrating a data transmission system according to an embodiment of the present invention.
2 is a block diagram showing a configuration of a master device according to the present invention.
3 is a block diagram showing a configuration of a slave device according to the present invention.
4 is a flowchart illustrating a data transfer process of the master device according to the present invention.
5 is a flowchart illustrating a data transmission process of the slave device according to the present invention.
6 and 7 are diagrams illustrating data frames transmitted in a data transmission system according to an embodiment of the present invention.

이하 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description and the accompanying drawings, detailed description of well-known functions or constructions that may obscure the subject matter of the present invention will be omitted. It should be noted that the same constituent elements are denoted by the same reference numerals as possible throughout the drawings.

이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.The terms and words used in the present specification and claims should not be construed to be limited to ordinary or dictionary meanings and the inventor is not limited to the concept of terminology for describing his or her invention in the best way. It should be interpreted as meaning and concept consistent with the technical idea of the present invention. Therefore, the embodiments described in the present specification and the configurations shown in the drawings are merely the most preferred embodiments of the present invention, and not all of the technical ideas of the present invention are described. Therefore, It is to be understood that equivalents and modifications are possible.

또한, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제2 구성요소는 제1 구성요소로 명명될 수 있고, 유사하게 제1 구성요소도 제2 구성요소로 명명될 수 있다.Also, terms including ordinal numbers such as first, second, etc. are used to describe various elements, and are used only for the purpose of distinguishing one element from another, Not used. For example, without departing from the scope of the present invention, the second component may be referred to as a first component, and similarly, the first component may also be referred to as a second component.

더하여, 어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급할 경우, 이는 논리적 또는 물리적으로 연결되거나, 접속될 수 있음을 의미한다. 다시 말해, 구성요소가 다른 구성요소에 직접적으로 연결되거나 접속되어 있을 수 있지만, 중간에 다른 구성요소가 존재할 수도 있으며, 간접적으로 연결되거나 접속될 수도 있다고 이해되어야 할 것이다.In addition, when referring to an element as being "connected" or "connected" to another element, it means that it can be connected or connected logically or physically. In other words, it is to be understood that although an element may be directly connected or connected to another element, there may be other elements in between, or indirectly connected or connected.

또한, 본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 본 명세서에서 기술되는 "포함 한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Also, the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. It is also to be understood that the terms such as " comprising "or" having ", as used herein, are intended to specify the presence of stated features, integers, It should be understood that the foregoing does not preclude the presence or addition of other features, numbers, steps, operations, elements, parts, or combinations thereof.

본 발명은 하나의 마스터 장치와 복수의 슬레이브 장치가 직렬로 연결되어 복수의 슬레이브 장치에 대응하는 복수의 데이터그램을 포함하는 데이터 프레임이 상기 복수의 슬레이브 장치를 순차로 통과하는 온더플라이 방식의 데이터 전송 시스템과 관련된다. 이때, 마스터 장치와 복수의 슬레이브 장치가 연결되는 네트워크 구조는 다양한 형상으로 이루어질 수 있다. 예를 들어, 상기 하나의 마스터 장치와 복수의 슬레이브 장치는 링 구조로 연결되는데, 이때, 하나의 마스터 장치와 복수의 슬레이브 장치는, 양방향 버스 혹은 단방향 버스로 연결될 수도 있고, 단일 링 혹은 이중 링 구조로 연결되어 이루어질 수 있다.The present invention relates to an on-the-fly data transmission method in which one master device and a plurality of slave devices are connected in series and a data frame including a plurality of datagrams corresponding to a plurality of slave devices sequentially passes through the plurality of slave devices System. At this time, the network structure in which the master device and the plurality of slave devices are connected may have various shapes. For example, the one master device and the plurality of slave devices are connected in a ring structure. In this case, one master device and a plurality of slave devices may be connected by a bidirectional bus or a unidirectional bus, As shown in FIG.

도 1은 본 발명에 따른 데이터 전송 시스템의 일 예를 보인 도면이다.1 is a diagram illustrating an example of a data transmission system according to the present invention.

본 발명의 제1 실시 예에 따른 데이터 전송 시스템은, 마스터 장치(100)와 복수의 슬레이브 장치(200)가 단방향 버스를 통해 직렬로 연결되는 링 구조로 이루어질 수 있다.The data transmission system according to the first embodiment of the present invention may have a ring structure in which a master device 100 and a plurality of slave devices 200 are connected in series via a unidirectional bus.

여기서, 마스터 장치(100)는 데이터 전송 시스템에서의 데이터 전송을 주체적으로 수행하는 객체이고, 복수의 슬레이브 장치(200)는 상기 마스터 장치(100)의 제어에 따라서 데이터 전송을 수동적으로 수행하는 객체이다.Here, the master device 100 is an object that performs data transfer in a data transfer system, and a plurality of slave devices 200 are objects that passively perform data transfer under the control of the master device 100 .

구체적으로, 마스터 장치(100)는 일정 주기로 복수의 슬레이브 장치(200)에 대응하는 복수의 데이터그램을 포함하는 데이터 프레임을 생성하여 제1 방향으로 인접한 슬레이브 장치(200a)로 전송한다.Specifically, the master device 100 generates a data frame including a plurality of datagrams corresponding to a plurality of slave devices 200 at regular intervals, and transmits the generated data frames to the adjacent slave device 200a in the first direction.

상기 데이터 프레임은 상기 제1 슬레이브 장치(200a), 제2 슬레이브 장치(200b), ...... , 제N 슬레이브 장치(200n)를 차례로 통과하여 상기 마스터 장치(100)의 제2 포트로 전달된다.The data frame is transmitted to the second port of the master device 100 through the first slave device 200a, the second slave device 200b, ..., the Nth slave device 200n in order, .

따라서, 상기 마스터 장치(100)는 일정 주기로 복수의 슬레이브 장치(200)로 전송할 복수의 데이터그램을 포함하는 데이터 프레임을 송신하고, 소정 시간 후에 인접한 제N 슬레이브 장치(200n)로부터 상기 데이터 프레임을 수신하게 된다.Accordingly, the master device 100 transmits a data frame including a plurality of datagrams to be transmitted to the plurality of slave devices 200 at regular intervals, and receives the data frame from the adjacent Nth slave device 200n after a predetermined time .

이때, 상기 복수의 슬레이브 장치(200)는 각각 제2 방향으로 인접한 장치(마스터 장치 혹은 슬레이브 장치)로부터 상기 데이터 프레임을 수신하고, 수신된 데이터 프레임에 대하여, 자신에게 할당된 데이터그램에 대한 읽기 및/또는 마스터 장치(100)로 전송할 데이터그램의 쓰기를 수행한 후 제1 방향으로 인접한 장치(마스터 장치 혹은 슬레이브 장치)로 상기 데이터 프레임을 전송한다.At this time, the plurality of slave devices 200 receive the data frame from a device (a master device or a slave device) adjacent in a second direction, and perform reading and writing of the received data frame, / The master device 100, and then transmits the data frame to the adjacent device (master device or slave device) in the first direction.

이에 따라서 복수의 슬레이브 장치(200)를 통과하여 마스터 장치(100)로 전달된 데이터 프레임은, 상기 마스터 장치(100)가 복수의 슬레이브 장치(200)로 전송하고자 했던 복수의 데이터그램 대신에, 상기 복수의 슬레이브 장치(200)가 마스터 장치(100)로 전송하고자 하는 복수의 데이터그램을 포함하게 된다.The data frame transmitted to the master device 100 through the plurality of slave devices 200 may be transmitted to the slave devices 200 in place of the plurality of datagrams that the master device 100 desires to transmit to the plurality of slave devices 200 A plurality of slave devices 200 include a plurality of datagrams to be transmitted to the master device 100.

상술한 바와 같은 데이터 전송 방식을 온더플라이(On the fly) 방식이라 한다.The data transmission method as described above is referred to as an on-the-fly method.

본 발명은 이러한 온더플라이 방식 데이터 전송 시스템에 있어서, 데이터 전송률을 최적화하고자 한 것으로서, 마스터 장치(100)가 슬레이브 장치(200)로 데이터를 전송하는 읽기 주기와 슬레이브 장치(200)가 마스터 장치(100)로 데이터를 전송하는 쓰기 주기를 구분하여, 데이터 전송을 수행하는 것을 특징으로 한다. 이하의 설명에서, 읽기 주기에서 이루어지는 동작 모드는 제1 모드라 하고, 쓰기 주기에서 이루어지는 동작 모드를 제2 모드라 한다.The present invention is directed to optimizing the data transfer rate in such an on-the-fly data transmission system. The slave device 200 transmits data to the slave device 200 via the master device 100 The data transfer is performed by dividing a write cycle for transferring data. In the following description, the operation mode in the read period is referred to as a first mode, and the operation mode in the write period is referred to as a second mode.

상기 마스터 장치(100)는, 제1 모드와 제2 모드를 교대로 수행하되, 상기 제1 모드에서 복수의 슬레이브 장치(200)에 대응하는 복수의 데이터그램을 포함하는 제1 데이터 프레임을 송신하고, 제2 모드에서 헤더만을 포함하는 제2 데이터 프레임을 송신한다.The master device 100 transmits a first data frame including a plurality of datagrams corresponding to a plurality of slave devices 200 in the first mode by alternately performing a first mode and a second mode , And transmits a second data frame including only the header in the second mode.

또한, 상기 복수의 슬레이브 장치(200)도, 제1 모드와 제2 모드를 교대로 수행하되, 상기 제1 모드에서는 상기 제1 데이터 프레임을 수신하여 상기 제1 데이터 프레임의 헤더를 기준으로 선단에 위치한 데이터그램을 추출한 후 전달한다. 상기 데이터그램의 추출에 의해서, 해당 데이터그램의 공간은 비어지게 되고, 이후, 상기 복수의 슬레이브 장치(200)는 상기 데이터 프레임의 나머지 데이터그램을 헤더 방향으로 쉬프트하여 제2 방향으로 인접한 장치로 전송한다. 이에 의하면, 데이터 프레임의 수신 시, 헤더로부터 두 번째로 위치했던 데이터그램이, 데이터 송신 시에는 헤더로부터 첫 번째 위치에 존재하게 된다.In addition, the plurality of slave devices 200 may alternately perform the first mode and the second mode. In the first mode, the first data frame is received and the first data frame is transmitted to the slave device 200 Extract the datagram that is located and deliver it. By extracting the datagram, the space of the corresponding datagram becomes empty, and then the plurality of slave devices 200 shifts the remaining datagram of the data frame in the header direction and transmits it to the adjacent device in the second direction do. According to this, when receiving a data frame, the datagram located second from the header exists at the first position from the header when data is transmitted.

아울러, 상기 복수의 슬레이브 장치(200)는, 상기 제2 모드에서는 상기 제2 데이터 프레임을 수신하면, 수신된 제2 데이터 프레임의 말단에 응답데이터를 삽입한 후 전달한다. In addition, when the second data frame is received in the second mode, the plurality of slave devices 200 insert the response data at the end of the received second data frame, and then transmit the response data.

상술한 바에 따르면, 본 발명에 따른 복수의 슬레이브 장치(200)는 한 주기에 데이터 읽기 및 쓰기를 동시에 수행하는 것이 아니라, 데이터 읽기와 데이터 쓰기를 교대로 수행함으로써, 처리 지연을 더 줄이 수 있으며, 마스터 장치(100)로부터 제어 명령을 수신 후, 다음 주기에서, 상기 제어 명령에 대한 처리 결과를 전송할 수 있게 된다. 특히, 본 발명에 따른 복수의 슬레이브 장치(200)는 자신에게 할당된 데이터그램의 위치를 확인하기 위한 헤더 분석 과정 없이, 무조건 수신된 데이터 프레임의 선단에 위치한 데이터그램을 추출하기만 하면 되므로, 데이터 처리가 간단해지고, 처리 시간도 단축될 수 있다. 이러한 효과는, 전송 지연 보다 슬레이브 장치(200)에서의 처리 지연이 더 큰 온더플라이 방식 데이터 전송에 더 큰 영향을 미칠 수 있다.According to the above description, the plurality of slave devices 200 according to the present invention perform data reading and data writing alternately instead of simultaneously reading and writing data in one cycle, thereby further reducing the processing delay , And after receiving the control command from the master device 100, the processing result for the control command can be transmitted in the next cycle. In particular, since a plurality of slave devices 200 according to the present invention merely need to extract a datagram located at the end of a data frame unconditionally received, without analyzing a header for identifying the location of the datagram allocated to the slave device 200, The processing can be simplified and the processing time can be shortened. This effect may have a greater effect on the on-the-fly data transmission in which the processing delay in the slave device 200 is larger than the transmission delay.

상술한 바와 같이 구성되는 본 발명에 따른 온더플라이 방식의 데이터 전송 시스템은, 전력 관리/제어, 공장 자동화, 로봇 제어 등과 같은 다양한 산업 분야에 적용될 수 있다.The on-the-fly data transmission system according to the present invention configured as described above can be applied to various industrial fields such as power management / control, factory automation, robot control, and the like.

이어서 상술한 온더플라이 방식 데이터 전송 시스템에서, 본 발명에 따른 데이터 전송률 최적화를 위한 기능을 수행하는 마스터 장치(100) 및 슬레이브 장치(200)의 구성과 그에 따른 동작을 더 구체적으로 설명한다.In the above-described on-the-fly data transmission system, the configuration and operation of the master device 100 and the slave device 200 that perform the function for optimizing the data rate according to the present invention will be described in more detail.

도 2는 본 발명에 따른 마스터 장치(100)의 구성을 나타낸 블럭도이다.2 is a block diagram showing a configuration of a master device 100 according to the present invention.

이를 참조하면, 본 발명의 실시 예에 따른 마스터 장치(100)는 제어부(110), 통신 인터페이스부(120) 및 저장부(130)를 포함하여 구성될 수 있다. 여기서, 제어부(110)는 복수의 슬레이브 장치(200)를 제어하기 위하여 제어 정보가 포함된 제1 데이터 프레임 및 상기 복수의 슬레이브 장치(200)로부터 응답 정보를 수신하기 위한 제2 데이터 프레임의 생성, 및 송수신 처리를 제어한다. 이를 위해, 제어부(110)는 주기 제어 모듈(111), 데이터 생성 모듈(112) 및 데이터 확인 모듈(113)을 포함한다.The master device 100 may include a control unit 110, a communication interface unit 120, and a storage unit 130. Referring to FIG. Here, the control unit 110 generates a first data frame including control information and a second data frame for receiving response information from the plurality of slave devices 200 to control the plurality of slave devices 200, And transmission / reception processing. The control unit 110 includes a periodic control module 111, a data generation module 112, and a data verification module 113.

주기 제어모듈(111)은 데이터 전송 주기를 제어하기 위한 구성으로서, 특히, 마스터 장치(100)에서 슬레이브 장치(200)로 데이터를 전송하기 위한 읽기 주기 및 슬레이브 장치(200)로부터 마스터 장치(100)로 데이터를 전송하기 위한 쓰기 주기가 교대로 수행되도록 제어한다. 구체적으로, 상기 주기 제어 모듈(111)은 읽기 주기 동안, 제1 모드로 동작하여, 복수의 슬레이브 장치(200)로 전송할 복수의 데이터그램을 포함하는 제1 데이터 프레임을 전송하고, 소정 시간 후에 복수의 슬레이브 장치(200)를 거쳐 전달되는 제1 데이터 프레임을 수신한다.The periodic control module 111 is a unit for controlling the data transmission period and particularly includes a reading period for transmitting data from the master device 100 to the slave device 200 and a reading period for transmitting data from the slave device 200 to the master device 100. [ So that a write cycle for transferring data is alternately performed. Specifically, the periodic control module 111 operates in a first mode during a read period to transmit a first data frame including a plurality of datagrams to be transmitted to a plurality of slave devices 200, The first data frame transmitted via the slave device 200 of FIG.

더하여, 상기 주기 제어모듈(111)은 마찬가지로, 쓰기 주기 동안, 제2 모드로 동작하여, 복수의 슬레이브 장치(200)로부터 응답 정보를 수신하기 위한 제2 데이터 프레임을 전송하고, 소정 시간 후에 복수의 슬레이브 장치(200)를 거쳐 전달되는 제2 데이터 프레임을 수신한다.In addition, the periodic control module 111 also operates in the second mode during the write period to transmit a second data frame for receiving response information from the plurality of slave devices 200, And receives the second data frame transmitted via the slave device 200. [

데이터 생성모듈(112)은 링 구 조의 경로 상에 위치한 복수의 슬레이브 장치(200)로 전송할 데이터 프레임을 생성하기 위한 구성으로서, 상기 주기 제어모듈(111)의 제어에 따라서, 제1 모드에서, 복수의 슬레이브 장치(200)에 전송할 제어 정보를 기반으로, 복수의 데이터그램을 생성하고, 상기 복수의 데이터그램을 대응하는 복수의 슬레이브 장치(200)의 배치 순서에 따라 헤더 뒤에 순차로 배치하여 제1 데이터 프레임을 생성하고, 제2 모드에서, 수의 슬레이브 장치(200)로부터 응답 정보를 수신하기 위해 헤더만으로 이루어지는 상기 제2 데이터 프레임을 생성한다.The data generation module 112 is configured to generate a data frame to be transmitted to a plurality of slave devices 200 located on the path of a ring structure, and in accordance with the control of the period control module 111, A plurality of datagrams are sequentially arranged after the header according to the arrangement order of the plurality of slave devices 200 corresponding to the plurality of slave devices 200, And generates the second data frame consisting of only the header to receive the response information from the slave slave device 200 in the second mode.

데이터 확인모듈(113)은 복수의 슬레이브 장치(200)를 통과한 후 수신된 데이터 프레임을 처리하기 위한 구성이다. 구체적으로, 상기 데이터 확인 모듈(113)은, 제1 모드에서 수신된 제1 데이터 프레임의 분석하여, 상기 제1 데이터 프레임에 존재하는 데이터그램의 수를 확인하고, 이를 기반으로 오류 발생 여부를 판단한다. 즉, 복수의 슬레이브 장치(200) 중 어느 곳에서도 장애가 발생하지 않은 경우, 상기 제1 데이터 프레임에 포함된 모든 데이터그램은 복수의 슬레이브 장치(200)에 의해 추출되어, 헤더만 남게 된다. 따라서, 수신한 제1 데이터 프레임이 헤더만을 구비한 경우, 데이터 전송이 정상적으로 이루어진 것으로 판단하고, 수신한 제1 데이터 프레임내에 하나 이상의 데이터그램이 그대로 존재하는 경우, 복수의 슬레이브 장치(200)중 어느 곳에서 데이터그램의 추출이 정상적으로 이루어지지 않은 것이므로, 전송 에러가 발생한 것으로 판단한다.The data confirmation module 113 is a structure for processing a received data frame after passing through a plurality of slave devices 200. [ Specifically, the data checking module 113 analyzes the first data frame received in the first mode, checks the number of datagrams existing in the first data frame, and determines whether an error has occurred based on the number of datagrams do. That is, if no failure occurs in any of the plurality of slave devices 200, all the datagrams included in the first data frame are extracted by the plurality of slave devices 200, and only the header is left. Therefore, when the received first data frame includes only the header, it is determined that the data transmission is normally performed. If one or more datagrams exist in the received first data frame, It is determined that a transmission error has occurred.

또한, 상기 데이터 확인모듈(113)은 제2 모드에서, 수신된 제2 데이터 프레임에 삽입된 복수의 데이터그램을 추출하고, 복수의 데이터그램을 분석하여, 상기 복수의 슬레이브 장치(200)의 응답 정보(예를 들어, 제어 명령의 정상 처리 여부)를 확인한다.In addition, the data checking module 113 extracts a plurality of datagrams inserted in the received second data frame in the second mode, analyzes the plurality of datagrams, and transmits the response of the plurality of slave devices 200 Information (for example, whether or not the control command is normally processed).

통신 인터페이스부(120)는 데이터를 송수신하기 위한 구성으로서, 상기 제어부(110)에서 생성된 제1,2 데이터 프레임을 인접한 슬레이브 장치(200a)로 전송하고, 인접한 슬레이브 장치(200n)으로부터 반환되는 제1,2 데이터 프레임을 수신하여 상기 제어부(110)로 전달한다.The communication interface unit 120 is a unit for transmitting and receiving data and transmits the first and second data frames generated by the control unit 110 to the adjacent slave devices 200a, 1 and 2 data frames to the controller 110.

저장부(130)는 마스터 장치(100)의 동작에 필요한 정보 및 프로그램을 저장하기 위한 구성으로서, 특히, 전송할 제어 정보 및 수신된 응답 정보 등을 저장할 수 있다. 이러한 저장부(130)는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media) 및 롬(ROM), 램(RAM, Random Access Memory), 플래시 메모리를 포함한다.The storage unit 130 is a structure for storing information and programs necessary for the operation of the master device 100, and may store control information to be transmitted and received response information. The storage unit 130 may be an optical recording medium such as a magnetic medium such as a hard disk, a floppy disk, and a magnetic tape, a compact disk read only memory (CD-ROM), and a digital video disk (DVD) A magneto-optical medium such as a floppy disk and a ROM, a random access memory (RAM), and a flash memory.

도 3은 본 발명에 따른 슬레이브 장치(200)의 구성을 나타낸 블럭도로서, 이를 참조하면, 본 발명에 따른 슬레이브 장치(200)는, 기본적으로, 제1,2 통신 인터페이스부(210, 220)와, 제어부(230)와, 저장부(240)를 포함한다.3 is a block diagram illustrating a configuration of a slave device 200 according to the present invention. The slave device 200 according to the present invention basically includes first and second communication interface units 210 and 220, A control unit 230, and a storage unit 240.

상기 제1 통신 인터페이스부(210)는 데이터 프레임의 송신하기 위한 구성이고, 제2 통신 인터페이스부(220)는 데이터 프레임을 수신하기 위한 구성으로서, 물리적인 접속 수단인 포트와, 데이터 송수신 처리를 수행하는 회로등을 포함하여 이루어질 수 있으며, 이는 버스를 통해서 인접한 장치와 버스를 통해 연결된다. The first communication interface unit 210 is configured to transmit a data frame. The second communication interface unit 220 has a configuration for receiving a data frame. The port is a physical connection unit. And the like, which are connected via a bus to an adjacent device and a bus.

예를 들어, 본 발명의 제1 실시 예에 따른 데이터 전송 시스템에 적용되는 슬레이브 장치(200)의 제1 통신 인터페이스부(210)는 제1 방향으로 인접한 장치(마스터 장치 혹은 슬레이브 장치)와 버스를 통해 연결되어 제1 방향을 인접한 장치로부터 데이터 프레임을 수신하고, 상기 제2 통신 인터페이스부(220)는 제2 방향으로 인접한 다른 장치(마스터 장치 혹은 슬레이브 장치)와 버스를 통해 연결되어 상기 제2 방향으로 인접한 다른 장치로 데이터 프레임을 전송한다.For example, the first communication interface 210 of the slave device 200, which is applied to the data transmission system according to the first embodiment of the present invention, may be connected to a device (master device or slave device) And the second communication interface 220 is connected to another device (master device or slave device) adjacent in the second direction via a bus and is connected to the second direction And transmits the data frame to another adjacent device.

상기 제어부(230)는 수신된 데이터 프레임에 대한 읽기 및 쓰기를 수행하기 위한 구성이다. 구체적으로, 상기 제어부(230)는 읽기 쓰기 및 쓰기 주기에 따라서 제1 모드와 제2 모드를 교대로 수행하는데, 제1 모드에서는 제1 통신 인터페이스부(210)로부터 수신된 제1 데이터 프레임의 선단에 위치한 데이터그램을 추출하여 읽기 동작을 수행한다. 그리고, 상기 선단의 데이터그램을 추출한 제1 데이터 프레임을 제2 통신 인터페이스부(220)를 통해 제2 방향으로 인접한 장치로 전송한다. 참고로, 이때, 상기 선단에 위치한 데이터그램의 추출 후, 나머지 데이터그램을 선단, 즉, 헤더 방향으로 쉬프트한다.The control unit 230 is configured to perform reading and writing of the received data frame. Specifically, the control unit 230 alternately performs the first mode and the second mode in accordance with the read / write and write cycles. In the first mode, the first data frame received from the first communication interface unit 210, And performs a read operation. Then, the first data frame from which the datagram at the front end is extracted is transmitted to the adjacent device in the second direction through the second communication interface unit 220. For reference, at this time, after extracting the datagram located at the front end, the remaining datagram is shifted to the front end, that is, the header direction.

또한, 상기 제어부(230)는 제2 모드에서는 제1 통신 인터페이스부(210)를 통해 수신된 제2 데이터 프레임의 말단에 마스터 장치(100)로 전송하고자 하는 데이터그램을 삽입하는 쓰기 동작을 수행한다. 그리고, 데이터그램을 삽입 한 제2 데이터 프레임을 제2 통신 인터페이스부(220)를 통해 제2 방향으로 인접한 장치로 전송한다. In addition, the controller 230 performs a write operation to insert a datagram to be transmitted to the master device 100 at the end of the second data frame received through the first communication interface 210 in the second mode . The second data frame inserted with the datagram is transmitted to the adjacent device in the second direction through the second communication interface unit 220.

그리고, 저장부(240)는 슬레이브 장치(200)에서 처리될 데이터를 저장하기 위한 구성으로서, 구체적으로 상기 제어부(230)에 의해 추출된 데이터그램 및 삽입될 데이터그램을 저장한다.The storage unit 240 stores data to be processed by the slave device 200. Specifically, the storage unit 240 stores a datagram extracted by the control unit 230 and a datagram to be inserted.

상술한 바와 같이 구성된 마스터 장치(100) 및 슬레이브 장치(200)의 동작을 도 4 내지 도 7을 참조하여 동작 순서에 따라서 설명한다.The operation of the master device 100 and the slave device 200 configured as described above will be described with reference to Figs.

먼저, 도 4는 본 발명에 따른 마스터 장치(100)의 데이터 전송 처리 과정을 나타낸 순서도이다.4 is a flowchart illustrating a data transfer process of the master device 100 according to the present invention.

이를 참조하면, 마스터 장치(100)는, 주기 제어 모듈(111)을 통해서 현재 쓰기 주기인지 읽기 주기인지 확인한다(S105). 상기 쓰기 주기와 읽기 주기는 기 설정된 데이터 전송 주기에서 교대로 이루어진다.Referring to FIG. 5, the master device 100 determines whether it is the current write period or the read period through the periodic control module 111 (S105). The write period and the read period are alternately performed in a predetermined data transfer cycle.

확인 결과, 읽기 주기인 경우, 상기 마스터 장치(100)는 제1 모드로 동작하여, S110 단계 내지 S125 단계를 수행한다. As a result of checking, if the reading period is the master mode, the master device 100 operates in the first mode and performs steps S110 to S125.

먼저, 마스터 장치(100)는 데이터 생성 모듈(120)을 통해서, 복수의 슬레이브 장치(200)로 전송할 제어 정보를 기반으로 복수의 데이터그램을 생성하고, 상기 복수의 데이터그램을 헤더를 기준으로 순차적으로 배치하여 제1 데이터 프레임을 생성한다(S110). 상기 제1 데이터 프레임의 헤더에는 제어 정보 전송을 위한 제1 데이터 프레임을 나타내는 식별 정보가 포함된다.First, the master device 100 generates a plurality of datagrams based on control information to be transmitted to a plurality of slave devices 200 through the data generation module 120, and transmits the plurality of datagrams sequentially To generate a first data frame (S110). The header of the first data frame includes identification information indicating a first data frame for transmission of control information.

그리고, 상기 생성한 제1 데이터 프레임을 통신 인터페이스부(120)를 통해 인접한 슬레이브 장치(200a)로 송신한다(S115).Then, the generated first data frame is transmitted to the adjacent slave device 200a via the communication interface 120 (S115).

상기 제1 데이터 프레임은 복수의 슬레이브 장치(200)들을 거쳐 상기 마스터 장치(100)로 반환된다.The first data frame is returned to the master device 100 through a plurality of slave devices 200. [

마스터 장치(100)는 상기 통신 인터페이스부(120)를 통해서 인접한 슬레이브 장치(200n)으로부터 반환되는 제1 데이터 프레임을 수신한다(S120).The master device 100 receives the first data frame returned from the adjacent slave device 200n through the communication interface 120 (S120).

이때, 상기 마스터 장치(100)로부터 전송된 제1 데이터 프레임이 모든 슬레이브 장치(200)에 정상적으로 송수신처리되고, 데이터그램의 추출이 이루어진 경우, 상기 반한되는 제1 데이터 프레임에는 데이터그램이 하나도 존재하지 않게 된다.At this time, when the first data frame transmitted from the master device 100 is normally transmitted / received to all the slave devices 200 and the datagram is extracted, there is no datagram in the first data frame .

따라서, 상기 마스터 장치(100)는 데이터 확인 모듈(113)을 통해서 수신된 제1 데이터 프레임에 데이터그램이 남아있는 지를 확인하여, 전송 오류를 체크한다(S125). 이때, 마스터 장치(100)로 수신된 제1 데이터 프레임에 추출되지 않은 데이터그램이 존재하는 경우, 상기 마스터 장치(100)는 전송 오류가 발생한 것으로 판단하여, 전송오류가 발생한 위치를 확인하기 위한 장애 처리 혹은 재전송 처리를 수행할 수 있다. 상기 장애 처리는, 복수의 슬레이브 장치(200)로 각각 장애 확인을 위한 메시지를 전송한 후 그에 대한 응답을 체크하는 식으로 이루어지거나, 상기 제1 데이터 프레임에 포함되는 각 데이터그램에 대응하는 복수의 슬레이브 장치(200)를 나타내는 식별 정보를 포함시킨 후, 상기 마스터 장치(100)가 수신된 제1 데이터 프레임에 남아 있는 데이터그램의 식별 정보를 체크함으로써, 장애가 발생한 슬레이브 장치(200)를 확인하도록 할 수 도 있다.Accordingly, the master device 100 checks whether there is a datagram in the first data frame received through the data checking module 113, and checks the transmission error (S125). At this time, if there is a datagram not extracted in the first data frame received by the master device 100, the master device 100 determines that a transmission error has occurred, Processing or retransmission processing can be performed. The failure processing may be performed by transmitting a message for confirming failure to each of the plurality of slave devices 200 and then checking a response to the failure message. Alternatively, a plurality of slave devices 200 corresponding to each datagram included in the first data frame After the identification information indicating the slave device 200 is included, the master device 100 checks the identification information of the datagram remaining in the received first data frame to identify the failed slave device 200 There is also water.

또한, 마스터 장치(100)는 복수의 슬레이브 장치(200)로 각각의 제어 명령이 정상적으로 전달될 때까지, 동일한 제1 데이터 프레임을 반복하여 재전송할 수 있다.Also, the master device 100 can repeatedly transmit the same first data frame until the respective control commands are normally transmitted to the plurality of slave devices 200.

반면, 상기 S105 단계에서 확인 결과, 쓰기 주기인 경우, 상기 마스터 장치(100)는 제2 모드로 전환하여 S130 단계 내지 S145 단계를 수행한다.On the other hand, if it is determined in step S105 that the write cycle is the write cycle, the master device 100 switches to the second mode and performs steps S130 through S145.

즉, 마스터 장치(100)는 데이터 생성 모듈(112)을 통해서 응답을 위한 제2 데이터 프레임임을 나타내는 식별 정보를 포함하는 헤더로 이루어지는 제2 데이터 프레임을 생성하여, 통신 인터페이스부(120)를 통해서 인접한 슬레이브 장치(200a)로 전송한다(S130). 상기 제2 데이터 프레임은, 복수의 슬레이브 장치(200)를 거쳐 반환되는데, 상기 복수의 슬레이브 장치(200)에 의해 응답 정보가 삽입된다.That is, the master device 100 generates a second data frame composed of a header including identification information indicating a second data frame for a response through the data generation module 112, To the slave device 200a (S130). The second data frame is returned via a plurality of slave devices 200, and response information is inserted by the plurality of slave devices 200.

이어서, 상기 마스터 장치(100)는 소정 시간 후, 슬레이브 장치(200n)로부터 반환되는 제2 데이터 프레임을 수신한다(S135). Then, the master device 100 receives a second data frame returned from the slave device 200n after a predetermined time (S135).

그리고, 마스터 장치(100)는 데이터 확인 모듈(113)을 통해서 상기 제2 데이터 프레임의 전송 오류를 체크하는데, 이는 상기 제2 데이터 프레임에 삽입된 데이터그램의 수를 확인함에 의해 이루어질 수 있다. 즉, 정상적으로 제2 데이터 프레임이 처리된 경우, 반환된 제2 데이터 프레임은 복수의 슬레이브 장치(200)의 수만큼의 데이터그램이 삽입된다. 따라서, 상기 마스터 장치(100)는 제2 데이터 프레임에 복수의 슬레이브 장치(200)의 수만큼의 데이터그램이 삽입되어 있는 지를 확인하여 전송 오류 여부를 체크한다. 더하여, 제2 데이터 프레임의 각 데이터그램은 해당 슬레이브 장치(200)를 구분할 수 있는 식별 정보를 포함하도록 함으로써, 상기 마스터 장치(100)가 수신된 제2 데이터 프레임의 데이터그램을 분석하여, 어떠한 슬레이브 장치(200)로부터 응답이 수신되지 않았는지를 확인하도록 할 수 있다.The master device 100 checks the transmission error of the second data frame through the data checking module 113. This can be done by checking the number of datagrams inserted in the second data frame. That is, when the second data frame is normally processed, the returned second data frame is inserted with as many datagrams as the number of slave devices 200. [ Therefore, the master device 100 checks whether or not a data error has occurred in the second data frame by inserting as many datagrams as the number of slave devices 200, and checks whether or not the data error has occurred. In addition, each datagram of the second data frame includes identification information that can distinguish the slave device 200, so that the master device 100 analyzes the datagram of the received second data frame, It is possible to confirm whether or not a response is received from the device 200. [

그리고, 상기 마스터 장치(100)는 상기 제2 데이터 프레임을 분석하여, 상기 복수의 슬레이브 장치(200)가 전송한 응답 정보를 추출하여 처리한다(S145).Then, the master device 100 analyzes the second data frame and extracts and processes the response information transmitted by the plurality of slave devices 200 (S145).

다음으로, 도 5는 본 발명의 실시 예에 따른 슬레이브 장치(200)의 데이터 전송 방법을 나타낸 순서도이다.5 is a flowchart illustrating a data transmission method of the slave device 200 according to an embodiment of the present invention.

이를 참조하면, 본 발명의 제1 실시 예에 따른 데이터 전송 시스템에서, 상기 슬레이브 장치(200)는, 제1 통신 인터페이스부(210)를 통해 제1 방향으로 인접한 장치로부터 데이터 프레임(제1 데이터 프레임 또는 제2 데이터 프레임)을 수신한다(S205).In the data transmission system according to the first embodiment of the present invention, the slave device 200 receives a data frame (first data frame) from a device adjacent in the first direction through the first communication interface 210, Or a second data frame) (S205).

이와 같이, 제1 통신 인터페이스부(210)로 데이터 프레임이 수신되면, 슬레이브 장치(200)의 제어부(230)는, 현재 주기가 읽기 주기인지 쓰기 주기인지를 판단한다(S210). 이는 기 설정된 타이밍을 확인함에 의해 판단될 수 도 있으나, 상기 수신된 데이터 프레임의 헤더에 포함된 식별 정보를 기반으로 판단 가능하다.When the data frame is received by the first communication interface unit 210, the controller 230 of the slave device 200 determines whether the current period is a read period or a write period (S210). This can be determined by checking the predetermined timing, but it can be determined based on the identification information included in the header of the received data frame.

즉, 수신된 데이터 프레임의 헤더를 확인하여, 수신된 데이터 프레임이 제1 데이터 프레임인 경우, 읽기 주기인 것으로 판단하고, 수신된 데이터 프레임이 제2 데이터 프레임인 경우, 쓰기 주기인 것으로 판단할 수 있다.That is, if the received data frame is the first data frame, it is determined that the received data frame is the read period. If the received data frame is the second data frame, have.

읽기 주기인 경우, 슬레이브 장치(200)는, 제1 모드로 동작하는데, 제1 모드에서, 상기 수신된 데이터 프레임에서, 헤더를 기준으로 선단에 위치한 데이터그램을 추출한다(S215). 이때, 슬레이브 장치(200)는 상기 데이터그램에 포함된 식별 정보를 더 확인하여, 상기 추출한 데이터그램이 자신에게 할당된 데이터그램인지를 확인할 수 있으며, 자신에게 할당된 데이터그램이 아닌 경우, 그 다음 데이터그램을 추출할 수 있다. 이에 의하면, 이전 슬레이브 장치(200)에서 데이터그램이 추출되지 못하더라도, 그 이후의 슬레이브 장치(200)는 안전하게 자신에게 할당된 데이터그램을 추출할 수 있게 된다.The slave device 200 operates in the first mode, and in the first mode, extracts a datagram located at the head based on the header in the received data frame (S215). At this time, the slave device 200 further verifies the identification information included in the datagram, and can confirm whether the extracted datagram is a datagram allocated to itself. If the extracted datagram is not a datagram allocated to the slave device 200, You can extract datagrams. Accordingly, even if the datagram can not be extracted from the previous slave device 200, the subsequent slave device 200 can securely extract the datagram allocated to the slave device 200 itself.

이어서 상기 제어부(230)는 상기 데이터 프레임의 나머지 데이터그램을 헤더 방향으로 쉬프트한다(S220). 이에 따라서, 수신된 데이터 프레임에서 헤더로부터 두번째 위치했던 데이터그램이 선단에 위치하게 된다.Then, the controller 230 shifts the remaining datagram of the data frame in the header direction (S220). Accordingly, the datagram which was located second from the header in the received data frame is located at the leading end.

더하여, 상기 제어부(230)는, 상기 데이터그램을 추출한 제1 데이터 프레임을 상기 제2 통신 인터페이스부(220)를 통해서 제2 방향으로 인접한 장치로 전송한다.In addition, the control unit 230 transmits the first data frame extracted from the datagram to the adjacent device in the second direction through the second communication interface unit 220.

상술한 바에 따르면, 도 1과 같은 구성되는 본 발명의 제1 실시 예에 따른 데이터 전송 시스템에 있어서, 슬레이브 장치(200)는 수신된 데이터 프레임의 분석과정 없이, 데이터 프레임의 선단에 위치한 데이터그램을 추출하여 마스터 장치(100)가 자신에게 전송한 데이터그램을 획득할 수 있다.In the data transmission system according to the first embodiment of the present invention configured as shown in FIG. 1, the slave device 200 transmits a datagram located at the front end of a data frame without analyzing the received data frame And obtain the datagram transmitted to the master device 100 by itself.

그리고, 상기 S210 단계의 판단 결과, 쓰기 주기인 경우, 슬레이브 장치(200)는 제2 모드로 동작하여, 상기 제1 통신 인터페이스부(210)로 수신된 제2 데이터 프레임의 말단에 상기 마스터 장치(100)로 전송할 응답 정보가 포함된 데이터그램을 삽입한다(S230). 이때, 상기 슬레이브 장치(200)는 자신을 나타내는 식별 정보를 상기 데이터그램에 포함시킬 수 있다.As a result of the determination in step S210, the slave device 200 operates in the second mode, and when the write cycle is completed, the slave device 200 operates at the end of the second data frame received by the first communication interface 210, 100) is inserted (S230). At this time, the slave device 200 may include identification information indicating itself in the datagram.

그리고, 상기 데이터그램을 삽입한 제2 데이터 프레임을 제2 통신 인터페이스부(220)를 통해 인접한 장치로 전달한다(S225).Then, the second data frame inserted with the datagram is transmitted to the adjacent apparatus through the second communication interface unit 220 (S225).

도 6은 본 발명의 일 실시 예에 따른 데이터 전송 시스템에서 전송되는 제1 데이터 프레임을 나타낸 도면으로서, (a)는 마스터 장치(100)로부터 슬레이브 장치(200a)로 전송되는 제1 데이터 프레임을 나타내는 것으로서, 헤더(H)를 기준으로 복수의 슬레이브 장치(200)에 각각 할당된 데이터그램(D1~DN)이 순차로 배치된다.6 is a diagram illustrating a first data frame transmitted in the data transmission system according to an embodiment of the present invention, wherein (a) shows a first data frame transmitted from the master device 100 to the slave device 200a The datagrams D1 to DN allocated to the plurality of slave devices 200 on the basis of the header H are sequentially arranged.

이러한 제1 데이터 프레임을 수신한 슬레이브 장치(200a)는 상기 제1 데이터 프레임의 선단에 위치한 데이터그램 D1을 추출하고, 나머지 데이터그램을 선단으로 쉬프트시킨 후 다음 슬레이브 장치(200b)로 전송한다.The slave device 200a receiving the first data frame extracts the datagram D1 located at the front end of the first data frame, shifts the remaining datagram to the front end, and transmits the data to the next slave device 200b.

따라서, 다음 슬레이브 장치(200b)로 전송되는 데이터 프레임은 도 6의 (b)에 도시된 바와 같이, 헤더(H)의 바로 뒤, 즉, 선단에 데이터그램 D2가 위치하고, 이어서, D3, ...... , DN이 위치하게 된다.Therefore, as shown in FIG. 6B, the data frame transmitted to the slave device 200b immediately after the header H, that is, the datagram D2 is located at the leading end, and then D3, ..., ..., DN.

이에, 슬레이브 장치(200b)도 수신된 제1 데이터 프레임 중 선단에 위치한 데이터그램 D2를 추출하고, 나머지 데이터그램을 선단으로 쉬프트한 후 다음 슬레이브 장치(200c)로 전송한다. Accordingly, the slave device 200b also extracts the datagram D2 located at the front end of the received first data frame, shifts the remaining datagram to the front end, and transmits the data to the next slave device 200c.

이러한 과정이 반복되어, 마지막 슬레이브 장치(200n)로 전송된 제1 데이터 프레임은, 도 6의 (c)에 도시된 바와 같이 헤더(H)를 기준으로 데이터그램 DN만 존재하게 된다.This process is repeated so that only the datagram DN exists in the first data frame transmitted to the last slave device 200n on the basis of the header H as shown in FIG. 6 (c).

마지막 슬레이브 장치(200b)도, 수신된 데이터 프레임의 선단에 위치할 데이터그램 DN을 추출한 후, 해당 제1 데이터 프레임을 마스터 장치(100)로 전송한다.The last slave device 200b also extracts the datagram DN to be positioned at the end of the received data frame and then transmits the first data frame to the master device 100. [

따라서, 마스터 장치(100)는 복수의 슬레이브 장치(200)가 모두 정상 동작한 경우, 헤더(H)만을 포함하는 제1 데이터 프레임을 수신하게 된다.Therefore, when all of the plurality of slave devices 200 operate normally, the master device 100 receives the first data frame including only the header H.

도 7은 본 발명의 실시 예에 따른 데이터 전송 시스템에서 전송되는 제2 데이터 프레임을 나타낸 도면이다.7 is a diagram illustrating a second data frame transmitted in a data transmission system according to an embodiment of the present invention.

마스터 장치(100)는 헤더(H)만을 포함하는 제2 데이터 프레임을 인접한 슬레이브 장치(200a)로 전송하고, 상기 슬레이브 장치(200a)는 수신한 제2 데이터 프레임의 말단에 마스터 장치(100)로 전송할 응답 정보가 실린 데이터그램(R1)을 삽입한 후, 다음 슬레이브 장치(200b)로 전달한다.The master device 100 transmits the second data frame including only the header H to the adjacent slave device 200a and the slave device 200a transmits the second data frame including the header H to the master device 100 at the end of the received second data frame Inserts the datagram R1 containing the response information to be transmitted, and transmits the datagram to the next slave device 200b.

도 7의 (a)는 슬레이브 장치(200a)로부터 다음 슬레이브 장치(200b)로 전송되는 제2 데이터 프레임을 나타내는 것으로서, 헤더(H)를 기준으로 첫번째 슬레이브 장치(200a)가 삽입한 데이터그램(R1)만이 존재한다.7A shows a second data frame transmitted from the slave device 200a to the next slave device 200b and includes a datagram R1 inserted in the first slave device 200a on the basis of the header H, ).

이러한 데이터 프레임을 수신한 다음 슬레이브 장치(200b)는 도 7의 (b)에 도시된 바와 같이, 상기 제2 데이터 프레임의 말단에 마스터 장치(100)로 전송할 응답 정보가 실린 데이터그램(R2)를 삽입하여 다음 슬레이브 장치(200c)로 전달한다.After receiving the data frame, the slave device 200b transmits a datagram R2 containing response information to be transmitted to the master device 100 at the end of the second data frame, as shown in FIG. 7 (b) And transmits it to the next slave device 200c.

상술한 과정은 모든 슬레이브 장치(200)에서 이루어지며, 따라서, 마지막 슬레이브 장치(200n)로부터 마스터 장치(100)로 전송되는 제2 데이터 프레임은, 도 7의 (c)에 도시된 바와 같이, 헤더(H)의 바로 뒤, 즉, 선단에 복수의 슬레이브 장치(200)가 마스터 장치(100)로 전송할 데이터그램 R1, R2, R3, ...... , RN이 삽입되게 된다.7 (c), the second data frame transmitted from the last slave device 200n to the master device 100 is transmitted from the slave device 200 to the master device 100. [ R2, R3,..., RN to be transmitted to the master device 100 by a plurality of slave devices 200 are inserted at the front end of the master device 100, that is, at the front end.

따라서, 상기 마스터 장치(100)는 제2 데이터 프레임으로부터 제1 데이터 프레임으로 전송한 제어 명령에 대응하는 응답 정보를 수신할 수 있게 된다.Accordingly, the master device 100 can receive the response information corresponding to the control command transmitted from the second data frame in the first data frame.

본 발명에 따른 마스터 장치(100) 및 슬레이브 장치(200)는 하나 이상의 프로세서로 하여금 상술한 기능과 프로세스를 수행하도록 하는 명령에 의하여 구동될 수 있다. 일 구현 예에서, 이 프로세서는 싱글 쓰레드(Single-threaded) 프로세서일 수 있으며, 다른 구현 예에서 본 프로세서는 멀티 쓰레드(Multithreaded) 프로세서일 수 있다. 나아가 본 프로세서는 메모리 혹은 저장 장치 상에 저장된 명령을 처리하는 것이 가능하다. 또한, 상기 명령으로는, 예컨대 JavaScript나 ECMAScript 명령 등의 스크립트 명령과 같은 해석되는 명령이나 실행 가능한 코드 혹은 컴퓨터로 판독 가능한 매체에 저장되는 기타의 명령이 포함될 수 있다.The master device 100 and the slave device 200 according to the present invention may be driven by instructions that cause one or more processors to perform the functions and processes described above. In one implementation, the processor may be a single-threaded processor, and in other embodiments, the processor may be a multithreaded processor. Further, the processor is capable of processing instructions stored on a memory or storage device. The instructions may also include interpreted instructions or executable code such as, for example, script commands, such as JavaScript or ECMAScript commands, or other instructions stored on a computer readable medium.

비록 본 명세서와 도면에서는 예시적인 장치 구성을 기술하고 있지만, 본 명세서에서 설명하는 기능적인 동작과 주제의 구현물들은 다른 유형의 디지털 전자 회로로 구현되거나, 본 명세서에서 개시하는 구조 및 그 구조적인 등가물들을 포함하는 컴퓨터 소프트웨어, 펌웨어 혹은 하드웨어로 구현되거나, 이들 중 하나 이상의 결합으로 구현 가능하다. 본 명세서에서 설명하는 주제의 구현물들은 하나 이상의 컴퓨터 프로그램 제품, 다시 말해 본 발명에 따른 장치의 동작을 제어하기 위하여 혹은 이것에 의한 실행을 위하여 유형의 프로그램 저장매체 상에 인코딩된 컴퓨터 프로그램 명령에 관한 하나 이상의 모듈로서 구현될 수 있다. 컴퓨터로 판독 가능한 매체는 기계로 판독 가능한 저장 장치, 기계로 판독 가능한 저장 기판, 메모리 장치, 기계로 판독 가능한 전파형 신호에 영향을 미치는 물질의 조성물 혹은 이들 중 하나 이상의 조합일 수 있다.Although the present specification and drawings describe exemplary device configurations, the functional operations and subject matter implementations described herein may be embodied in other types of digital electronic circuitry, or alternatively, of the structures disclosed herein and their structural equivalents May be embodied in computer software, firmware, or hardware, including, or in combination with, one or more of the foregoing. Implementations of the subject matter described herein may be embodied in one or more computer program products, i. E. One for computer program instructions encoded on a program storage medium of the type for < RTI ID = 0.0 & And can be implemented as a module as described above. The computer-readable medium can be a machine-readable storage device, a machine-readable storage substrate, a memory device, a composition of matter that affects the machine readable propagation type signal, or a combination of one or more of the foregoing.

본 발명에 따른 방법은 컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 어플리케이션, 스크립트 혹은 코드로도 알려져 있음)으로 구현되어, 컴퓨터로 판독가능한 기록매체에 기록될 수 있다. 여기서, 컴퓨터 프로그램은 컴파일 되거나 해석된 언어나 선험적 혹은 절차적 언어를 포함하는 프로그래밍 언어의 어떠한 형태로도 작성될 수 있으며, 독립형 프로그램이나 모듈, 컴포넌트, 서브루틴 혹은 컴퓨터 환경에서 사용하기에 적합한 다른 유닛을 포함하여 어떠한 형태로도 전개될 수 있다. 컴퓨터 프로그램은 파일 시스템의 파일에 반드시 대응하는 것은 아니다. 프로그램은 요청된 프로그램에 제공되는 단일 파일 내에, 혹은 다중의 상호 작용하는 파일(예컨대, 하나 이상의 모듈, 하위 프로그램 혹은 코드의 일부를 저장하는 파일) 내에, 혹은 다른 프로그램이나 데이터를 보유하는 파일의 일부(예컨대, 마크업 언어 문서 내에 저장되는 하나 이상의 스크립트) 내에 저장될 수 있다. 컴퓨터 프로그램은 하나의 사이트에 위치하거나 복수의 사이트에 걸쳐서 분산되어 통신 네트워크에 의해 상호 접속된 다중 컴퓨터나 하나의 컴퓨터 상에서 실행되도록 전개될 수 있다.The method according to the present invention can be implemented as a computer program (also known as a program, software, software application, script or code) and recorded on a computer readable recording medium. Here, a computer program may be written in any form of programming language including compiled or interpreted language, a priori or procedural language, and may be a stand alone program, module, component, subroutine, or other unit May be deployed in any form including. A computer program does not necessarily correspond to a file in the file system. The program may be stored in a single file provided to the requested program, or in multiple interactive files (e.g., a file storing one or more modules, subprograms, or portions of code) (E.g., one or more scripts stored in a markup language document). A computer program may be deployed to run on multiple computers or on one computer, located on a single site or distributed across multiple sites and interconnected by a communications network.

컴퓨터 프로그램 명령어와 데이터를 저장하기에 적합한 컴퓨터로 판독 가능한 매체는, 예컨대 EPROM, EEPROM 및 플래시메모리 장치와 같은 반도체 메모리 장치, 예컨대 내부 하드디스크나 외장형 디스크와 같은 자기 디스크, 자기광학 디스크 및 CD-ROM과 DVD-ROM 디스크를 포함하여 모든 형태의 비휘발성 메모리, 매체 및 메모리 장치를 포함한다. 프로세서와 메모리는 특수 목적의 논리 회로에 의해 보충되거나, 그것에 통합될 수 있다.Computer-readable media suitable for storing computer program instructions and data include semiconductor memory devices such as, for example, EPROM, EEPROM, and flash memory devices, such as magnetic disks such as internal hard disks or external disks, And DVD-ROM disks, including non-volatile memory, media and memory devices. The processor and memory may be supplemented by, or incorporated in, special purpose logic circuits.

본 명세서는 다수의 특정한 구현물의 세부사항들을 포함하지만, 이들은 어떠한 발명이나 청구 가능한 것의 범위에 대해서도 제한적인 것으로서 이해되어서는 안되며, 오히려 특정한 발명의 특정한 실시형태에 특유할 수 있는 특징들에 대한 설명으로서 이해되어야 한다. 개별적인 실시형태의 문맥에서 본 명세서에 기술된 특정한 특징들은 단일 실시형태에서 조합하여 구현될 수도 있다. 반대로, 단일 실시형태의 문맥에서 기술한 다양한 특징들 역시 개별적으로 혹은 어떠한 적절한 하위 조합으로도 복수의 실시형태에서 구현 가능하다. 나아가, 특징들이 특정한 조합으로 동작하고 초기에 그와 같이 청구된 바와 같이 묘사될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징들은 일부 경우에 그 조합으로부터 배제될 수 있으며, 그 청구된 조합은 하위 조합이나 하위 조합의 변형물로 변경될 수 있다.While the specification contains a number of specific implementation details, it should be understood that they are not to be construed as limitations on the scope of any invention or claim, but rather on the description of features that may be specific to a particular embodiment of a particular invention Should be understood. Certain features described herein in the context of separate embodiments may be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented in multiple embodiments, either individually or in any suitable subcombination. Further, although the features may operate in a particular combination and may be initially described as so claimed, one or more features from the claimed combination may in some cases be excluded from the combination, Or a variant of a subcombination.

마찬가지로, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. 또한, 상술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.Likewise, although the operations are depicted in the drawings in a particular order, it should be understood that such operations must be performed in that particular order or sequential order shown to achieve the desired result, or that all illustrated operations should be performed. In certain cases, multitasking and parallel processing may be advantageous. Also, the separation of the various system components of the above-described embodiments should not be understood as requiring such separation in all embodiments, and the described program components and systems will generally be integrated together into a single software product or packaged into multiple software products It should be understood.

본 명세서에서 설명한 주제의 특정한 실시형태를 설명하였다. 기타의 실시형태들은 이하의 청구항의 범위 내에 속한다. 예컨대, 청구항에서 인용된 동작들은 상이한 순서로 수행되면서도 여전히 바람직한 결과를 성취할 수 있다. 일 예로서, 첨부도면에 도시한 프로세스는 바람직한 결과를 얻기 위하여 반드시 그 특정한 도시된 순서나 순차적인 순서를 요구하지 않는다. 특정한 구현 예에서, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다.Certain embodiments of the subject matter described herein have been described. Other embodiments are within the scope of the following claims. For example, the operations recited in the claims may be performed in a different order and still achieve desirable results. By way of example, the process illustrated in the accompanying drawings does not necessarily require that particular illustrated or sequential order to obtain the desired results. In certain implementations, multitasking and parallel processing may be advantageous.

본 기술한 설명은 본 발명의 최상의 모드를 제시하고 있으며, 본 발명을 설명하기 위하여, 그리고 당업자가 본 발명을 제작 및 이용할 수 있도록 하기 위한 예를 제공하고 있다. 이렇게 작성된 명세서는 그 제시된 구체적인 용어에 본 발명을 제한하는 것이 아니다. 따라서, 상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 당업자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다.The description sets forth the best mode of the invention, and is provided to illustrate the invention and to enable those skilled in the art to make and use the invention. The written description is not intended to limit the invention to the specific terminology presented. Thus, while the present invention has been described in detail with reference to the above examples, those skilled in the art will be able to make adaptations, modifications, and variations on these examples without departing from the scope of the present invention.

따라서 본 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위에 의해 정하여져야 한다.Therefore, the scope of the present invention should not be limited by the described embodiments but should be defined by the claims.

본 발명은 마스터 장치와 복수의 슬레이브 장치가 직렬로 연결되며, 복수의 슬레이브 장치에 대응하는 복수의 데이터그램을 포함하는 데이터 프레임이 상기 마스터 장치와 복수의 슬레이브 장치에 순차적으로 전송되는 온더플라이 방식 데이터 전송 시스템에 있어서, 슬레이브 장치에서의 읽기 주기와 쓰기 주기를 구분함으로써, 마스터 장치에서 슬레이브 장치로의 데이터 전송과 슬레이브 장치에서 마스터 장치로의 데이터 전송이 교대로 이루어지도록 함으로써, 링 구조로 연결된 다수 장치간에 데이터를 보다 효율적으로 전송할 수 있다.The present invention relates to an on-the-fly method in which a master device and a plurality of slave devices are connected in series and a data frame including a plurality of datagrams corresponding to a plurality of slave devices is sequentially transmitted to the master device and a plurality of slave devices In the transmission system, the data transmission from the master device to the slave device and the data transfer from the slave device to the master device are alternately performed by distinguishing the read period and the write period from each other in the slave device, The data can be transmitted more efficiently.

특히, 읽기 및 쓰기 주기가 교대로 이루어져 슬레이브 장치에서 읽기와 쓰기 동작 간에 시간 차가 발생함으로써, 슬레이브 장치는, 읽기 주기에 수신한 제어 명령을 실행한 후, 그 실행 결과를 쓰기 주기를 통해 전송할 수 있다.In particular, since the read and write cycles are alternately generated, a time difference occurs between the read and write operations in the slave device, so that the slave device can execute the control command received in the read cycle and transmit the execution result through the write cycle .

더하여, 본 발명은 마스터 장치가 읽기 및 쓰기 주기를 구분하여 교대로 전송하는데 있어서, 읽기 주기에서 마스터 장치가 복수의 슬레이브 장치로 전송할 복수의 데이터그램을 포함하는 제1 데이터 프레임을 전송하면, 복수의 슬레이브 장치가 각각 수신한 제1 데이터 프레임의 선단에 위치한 데이터그램을 추출한 후 인접한 장치로 전달하도록 하고, 쓰기 주기에서 마스터 장치가 헤더만을 포함하는 제2 데이터 프레임을 전송하면, 복수의 슬레이브 장치가 수신한 제2 데이터 프레임의 말단에 마스터 장치로 전송할 데이터그램을 삽입하여 전달하도록 함으로써, 슬레이브 장치에서의 처리를 단순화시켜, 처리 지연을 줄일 수 있는 우수한 효과가 있다.In addition, according to the present invention, when a master device transmits a first data frame including a plurality of datagrams to be transmitted to a plurality of slave devices in a read cycle, The slave device extracts a datagram located at the front end of the first received data frame and transmits the extracted datagram to an adjacent device. When the master device transmits a second data frame including only the header in the write period, It is possible to simplify the processing in the slave device and reduce the processing delay by inserting the datagram to be transmitted to the master device at the end of one second data frame and delivering it.

또한, 본 발명은 마스터 장치와 슬레이브 장치 간의 데이터 프레임 사이즈를 최소로 유지함으로써, 데이터 전송률을 최적화할 수 있다.Further, the present invention can optimize the data transfer rate by keeping the data frame size between the master device and the slave device to a minimum.

100: 마스터 장치 110: 제어부
120: 통신 인터페이스부 130: 저장부
200, 200a~200n: 슬레이브 장치 210: 제1 통신 인터페이스부
220: 제2 통신 인터페이스부 230: 제어부
240: 저장부
100: master device 110:
120: communication interface unit 130:
200, 200a to 200n: slave device 210: first communication interface unit
220: second communication interface unit 230:
240:

Claims (11)

링 형태로 연결되어, 온더플라이 방식으로 데이터를 전송하는 하나의 마스터 장치와, 복수의 슬레이브 장치를 구비하고,
상기 마스터 장치는, 제1 모드와 제2 모드를 교대로 수행하되, 상기 제1 모드에서 복수의 슬레이브 장치에 대응하는 복수의 데이터그램을 포함하는 제1 데이터 프레임을 송신하고, 제2 모드에서 헤더만을 포함하는 제2 데이터 프레임을 송신하고,
상기 복수의 슬레이브 장치는, 제1 모드와 제2 모드를 교대로 수행하되, 상기 제1 모드에서는 상기 제1 데이터 프레임을 수신하여 상기 제1 데이터 프레임의 헤더를 기준으로 선단에 위치한 데이터그램을 추출한 후 전달하고, 상기 제2 모드에서는 상기 제2 데이터 프레임을 수신하여, 수신된 제2 데이터 프레임의 말단에 응답데이터를 삽입한 후 전달하는 것을 특징으로 온더플라이 방식 데이터 전송 시스템.
A master device connected in a ring form for transmitting data in an on-the-fly manner, and a plurality of slave devices,
Wherein the master device transmits a first data frame including a plurality of datagrams corresponding to a plurality of slave devices in the first mode in an alternating manner in a first mode and a second mode, A second data frame including only the first data frame,
The plurality of slave devices alternately perform a first mode and a second mode, wherein the first mode receives the first data frame and extracts a datagram located at a front end based on the header of the first data frame And the second mode receives the second data frame, inserts the response data into the end of the second data frame, and transmits the response data.
제1항에 있어서, 상기 마스터 장치는
상기 제1 모드에서, 소정 시간 후에 상기 제1 데이터 프레임이 수신되면, 상기 제1 데이터 프레임에 복수의 슬레이브 장치에서 추출되지 못한 데이터그램이 남아 있으면, 오류가 발생한 것으로 판단하는 것을 특징으로 하는 온더플라이 방식 데이터 전송 시스템.
2. The apparatus of claim 1, wherein the master device
Wherein when the first data frame is received after a predetermined time in the first mode and a datagram that can not be extracted from a plurality of slave devices remains in the first data frame, Method data transmission system.
제1항에 있어서, 상기 마스터 장치는
제2 모드에서, 소정 시간 후에 복수의 슬레이브 장치가 삽입한 응답 데이터들을 포함하는 제2 데이터 프레임을 수신하여 처리하는 것을 특징으로 하는 온더플라이 방식 데이터 전송 시스템.
2. The apparatus of claim 1, wherein the master device
Wherein the second mode receives and processes a second data frame including response data inserted by a plurality of slave devices after a predetermined time in the second mode.
제1항에 있어서,
상기 제1 데이터 프레임 및 제2 데이터 프레임의 헤더는, 상기 제1 데이터 프레임과 제2데이터 프레임을 구분하기 위한 식별 정보를 각각 포함하는 것을 특징으로 하는 온더플라이 방식 데이터 전송 시스템.
The method according to claim 1,
Wherein the header of the first data frame and the header of the second data frame each include identification information for distinguishing the first data frame from the second data frame.
데이터 프레임을 송신하고 수신하기 위한 통신 인터페이스부; 및
제1 모드와 제2 모드를 교대로 수행하되,
상기 제1 모드에서, 복수의 슬레이브 장치에 대응하는 복수의 데이터그램을 포함하는 제1 데이터 프레임을 생성하여 송신하고, 소정의 시간 후에 상기 제1 데이터 프레임이 수신되면 상기 제1 데이터 프레임에 복수의 슬레이브 장치에서 추출되지 못한 데이터그램을 확인하고 데이터그램이 남아 있으면 오류가 발생한 것으로 판단하고,
상기 제2 모드에서, 헤더만을 포함하는 제2 데이터 프레임을 생성하여 송신하고, 소정의 시간 후에 복수의 슬레이브 장치가 삽입한 응답 데이터들을 포함하는 상기 제2 데이터 프레임을 수신하여 처리하도록 제어하는 제어부를 포함하는 것을 특징으로 하는 마스터 장치.
A communication interface for transmitting and receiving a data frame; And
Alternately performing the first mode and the second mode,
A first data frame including a plurality of datagrams corresponding to a plurality of slave devices is generated and transmitted in a first mode, and when the first data frame is received after a predetermined time, If the datagram is not extracted from the slave device, it is determined that an error has occurred,
A control unit for generating and transmitting a second data frame including only a header in the second mode and controlling the receiving and processing of the second data frame including response data inserted by a plurality of slave devices after a predetermined time And a master device.
삭제delete 삭제delete 데이터 프레임을 수신하는 제1 통신 인터페이스부;
데이터 프레임을 송신하는 제2 통신 인터페이스부; 및
제1 모드와 제2 모드를 교대로 수행하되, 상기 제1 모드에서는 제1 데이터 프레임을 수신하여, 상기 제1 데이터 프레임의 헤더를 기준으로 선단에 위치한 데이터그램을 추출한 후 송신하고, 상기 제2 모드에서는 제2 데이터 프레임을 수신하여, 수신된 제2 데이터 프레임의 말단에 응답데이터를 삽입한 후 송신하는 제어부를 포함하는 것을 특징으로 슬레이브 장치.
A first communication interface for receiving a data frame;
A second communication interface for transmitting a data frame; And
Wherein the first mode and the second mode are alternately performed. In the first mode, a first data frame is received, a datagram located at a front end of the first data frame is extracted based on a header of the first data frame, Mode includes receiving a second data frame, inserting response data at the end of the received second data frame, and transmitting the response data.
마스터 장치 및 복수의 슬레이브 장치가 링 형태로 직렬 연결되고, 마스터 장치로부터 전송된 데이터 프레임이 상기 복수의 슬레이브 장치를 순차로 통과하여 마스터 장치로 되돌아오는 온더플라이 방식 데이터 전송 방법에 있어서,
상기 마스터 장치가, 헤더 및 복수의 슬레이브 장치에 대응하는 복수의 데이터그램을 포함하는 제1 데이터 프레임을 인접한 장치로 송신하고, 소정 시간 후에 반환된 상기 제1 데이터 프레임을 수신하는 지를 확인하는 제1 모드 수행 단계; 및
상기 마스터 장치가, 헤더를 포함하는 제2 데이터 프레임을 인접한 장치로 송신하고, 소정 시간 후에 복수의 슬레이브 장치가 삽입한 응답 데이터를 포함하는 제2 데이터 프레임을 수신하는 제2 모드 수행 단계;를 포함하되,
상기 제1 모드 수행 단계와 제2 모드 수행 단계는 교대로 수행되는 것을 특징으로 하는 온더플라이 방식 데이터 전송 방법.
1. An on-the-fly data transmission method in which a master device and a plurality of slave devices are connected in series in a ring form, and a data frame transmitted from the master device sequentially passes through the plurality of slave devices and returns to the master device,
Wherein the master device transmits a first data frame including a header and a plurality of datagrams corresponding to a plurality of slave devices to an adjacent device and confirms whether the first data frame returned after a predetermined time is received A mode performing step; And
And a second mode performing step of the master device transmitting a second data frame including a header to an adjacent device and receiving a second data frame including response data inserted by a plurality of slave devices after a predetermined time However,
Wherein the first mode performing step and the second mode performing step are performed alternately.
제9항에 있어서, 제1 모드 수행 단계에서,
상기 마스터 장치는, 수신된 제1 데이터 프레임에 남아 있는 데이터그램을 확인하여, 데이터그램이 남아 있는 경우 오류로 판단하는 것을 특징으로 하는 온더플라이 방식 데이터 전송 방법.
10. The method of claim 9, wherein in the first mode performing step,
Wherein the master device checks a datagram remaining in the received first data frame and determines that the datagram is an error if the datagram is left.
마스터 장치 및 복수의 슬레이브 장치가 링 형태로 직렬 연결되고, 마스터 장치로부터 전송된 데이터 프레임이 상기 복수의 슬레이브 장치를 순차로 통과하여 마스터 장치로 되돌아오는 온더플라이 방식 데이터 전송 방법에 있어서,
상기 슬레이브 장치가, 인접한 장치로부터 제1 데이터 프레임이 수신되면, 상기 수신된 제1 데이터 프레임의 헤더를 기준으로 선단에 위치한 데이터그램을 추출한 후 나머지 데이터그램을 포함하는 제1 데이터 프레임을 인접한 장치로 송신하는 제1 모드 수행 단계; 및
상기 슬레이브 장치가 인접한 장치로부터 제2 데이터 프레임이 수신되면, 상기 수신된 제2 데이터 프레임의 말단에 응답 데이터를 삽입한 후, 인접한 장치로 송신하는 제2 모드 수행 단계를 포함하되,
상기 제1 모드 수행 단계와 제2 모드 수행 단계는 교대로 수행되는 것을 특징으로 하는 온더플라이 방식 데이터 전송 방법.
1. An on-the-fly data transmission method in which a master device and a plurality of slave devices are connected in series in a ring form, and a data frame transmitted from the master device sequentially passes through the plurality of slave devices and returns to the master device,
When receiving a first data frame from an adjacent device, extracts a datagram located at a front end of the received first data frame based on the header of the received first data frame and transmits the first data frame including the remaining datagram to an adjacent device A first mode performing step of transmitting the first mode; And
And a second mode performing step of, when the slave device receives a second data frame from an adjacent device, inserting response data at the end of the received second data frame and transmitting the response data to an adjacent device,
Wherein the first mode performing step and the second mode performing step are performed alternately.
KR1020140130841A 2014-09-30 2014-09-30 On-the-fly data transmission system and method for transmitting data to divide read and write period thereof KR101593216B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140130841A KR101593216B1 (en) 2014-09-30 2014-09-30 On-the-fly data transmission system and method for transmitting data to divide read and write period thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140130841A KR101593216B1 (en) 2014-09-30 2014-09-30 On-the-fly data transmission system and method for transmitting data to divide read and write period thereof

Publications (1)

Publication Number Publication Date
KR101593216B1 true KR101593216B1 (en) 2016-02-12

Family

ID=55355228

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140130841A KR101593216B1 (en) 2014-09-30 2014-09-30 On-the-fly data transmission system and method for transmitting data to divide read and write period thereof

Country Status (1)

Country Link
KR (1) KR101593216B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113489759A (en) * 2021-06-04 2021-10-08 北京中航双兴科技有限公司 Real-time network card data transmission method and device based on OSI model and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04107110A (en) 1990-08-29 1992-04-08 Hitachi Chem Co Ltd Manufacture of pad with skin
KR20030035303A (en) * 2001-10-31 2003-05-09 삼성전자주식회사 Data transmitting/receiving system and method thereof
KR20140021304A (en) * 2012-08-10 2014-02-20 삼성중공업 주식회사 Communication system and real time data transmission method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04107110A (en) 1990-08-29 1992-04-08 Hitachi Chem Co Ltd Manufacture of pad with skin
KR20030035303A (en) * 2001-10-31 2003-05-09 삼성전자주식회사 Data transmitting/receiving system and method thereof
KR20140021304A (en) * 2012-08-10 2014-02-20 삼성중공업 주식회사 Communication system and real time data transmission method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113489759A (en) * 2021-06-04 2021-10-08 北京中航双兴科技有限公司 Real-time network card data transmission method and device based on OSI model and storage medium

Similar Documents

Publication Publication Date Title
US9621483B2 (en) Ethercat packet forwarding with distributed clocking
US9544258B2 (en) Network, head subscriber and data transmission method
CN104335192A (en) Process controller having multi-channel serial communications link
CN103918238A (en) Real-time distributed network module, real-time distributed network and method therefor
CN104025534A (en) Real-time distributed network slave device, real-time distributed network and method therefor
KR20110010707A (en) Direct data transfer between slave devices
US10735520B2 (en) Control device, control system, control method, and non-transitory computer-readable storage medium
CN108293014B (en) Communication network, method for operating the same and participants in the communication network
US10942771B2 (en) Method, apparatus and system for multi-module scheduling
KR101593216B1 (en) On-the-fly data transmission system and method for transmitting data to divide read and write period thereof
US9239813B2 (en) Ring-pattern bus connected information processing apparatus, information processing method, and storage medium
KR101576050B1 (en) Method, apparatus and system for upgrading software of nodes
US11055144B2 (en) Method, apparatus, and system for multi-module scheduling
US20150100745A1 (en) Method and apparatus for efficiently processing storage commands
KR101587421B1 (en) On-the-fly data transmission system, method for optimizing data transmission rate and slave device therefor
US8989203B2 (en) Electronic device, communication control method, and recording medium
US20150256383A1 (en) Method for transiting operation mode of routing processor
Marques et al. Efficient transient error recovery in FlexRay using the dynamic segment
JP2011119999A (en) Communication apparatus and master device
KR101562118B1 (en) Media Access Control Filtering method for high speed switching
KR101593218B1 (en) Method for transmitting of control frame based on variable datagram, node apparatus and system for the same
US20190149483A1 (en) Information processing device, information processing method and non-transitory computer-readable storage medium
KR101623076B1 (en) Integrated control Method, apparatus and system for nodes
CN112367280B (en) RCPU agent board health detection method and RCPU agent board
JP2018147017A (en) Control system and control apparatus

Legal Events

Date Code Title Description
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190131

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20200204

Year of fee payment: 5