KR19990080192A - 이더넷 통신모듈 및 그의 제어방법 - Google Patents

이더넷 통신모듈 및 그의 제어방법 Download PDF

Info

Publication number
KR19990080192A
KR19990080192A KR1019980013258A KR19980013258A KR19990080192A KR 19990080192 A KR19990080192 A KR 19990080192A KR 1019980013258 A KR1019980013258 A KR 1019980013258A KR 19980013258 A KR19980013258 A KR 19980013258A KR 19990080192 A KR19990080192 A KR 19990080192A
Authority
KR
South Korea
Prior art keywords
frame
data
determining whether
determination result
determination
Prior art date
Application number
KR1019980013258A
Other languages
English (en)
Other versions
KR100264149B1 (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 KR1019980013258A priority Critical patent/KR100264149B1/ko
Publication of KR19990080192A publication Critical patent/KR19990080192A/ko
Application granted granted Critical
Publication of KR100264149B1 publication Critical patent/KR100264149B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/351Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
    • 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/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/20Network management software packages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Environmental & Geological Engineering (AREA)
  • Communication Control (AREA)

Abstract

본 발명은 이더넷 통신모듈 및 그의 제어방법에 관한 것으로, 종래의 기술에 있어서는 자사의 통신 프로토콜을 사용하지 않는 다른 이더넷 통신모듈과는 통신을 할 수가 없어 기존에 설치된 시스템에 새로운 시스템을 접속하기가 어렵고, 서로 다른 이더넷 통신모듈과의 접속이 불가능하며, 또한 피씨와 통신을 하기 위해서는 기존에 다른 소프트웨어 드라이버를 사용하고 있더라도 새로운 프트웨어 드라이브를 구입하거나 이더넷 통신모듈에 맞는 드라이버를 사용하여야만 통신을 할 수 있다는 문제점이 있었다.
따라서, 본 발명은 상기와 같은 종래의 문제점을 해결하기 위하여 창안한 것으로, 다른 모든 통신모듈의 프로토콜을 정의하고, 수신 및 검사할 데이터 등을 사용자가 정의할 수 있도록 하는 피씨용 이더넷 프레임 편집기를 통해서 정의된 프레임을 이더넷 통신모듈의 프레임 영역에 다운로드 받아 사용자가 사용한 펑션블록과 연계해서 동작하게 함으로써, 서로 다른 통신 프로토콜을 사용하는 이더넷 통신모듈과의 통신이 이루어지도록 하는 장치와 방법을 제공함으로써, 사용자가 프로그램 내에서 보다 편리하고 유연하게 시스템을 제어하며, 다른 통신 프로토콜을 사용하는 이더넷 통신장치와 데이터 송수신이 가능한 효과가 있다.

Description

이더넷 통신모듈 및 그의 제어방법
본 발명은 이더넷 통신모듈 및 그의 제어방법에 관한 것으로, 특히 공장자동화를 위해 시스템을 감시, 제어하고자 할 때 사용되는 이더넷(Ethernet) 통신에 있어서, 캐리어 검출 다중접근/충돌검출(Carrier Sense Multiple Detection/Collision Detection)(이하 "CSMA/CD"라 함)방식을 채용하고, 상위 프로토콜로 전송제어 프로토콜/인터넷 프로토콜(Transmission Control Protocol/Internet Protocol)(이하 "TCP/IP"라 함)을 사용하는 통신모듈과의 데이터 송수신이 가능하도록 하는 이더넷 통신모듈 및 그의 제어방법에 관한 것이다.
산업용에 쓰이는 통신모듈은 필드버스(Fieldbus), 이더넷(Ethernet), 미니맵(Minimap), 프로피버스(Profibus) 등등 여러 종류가 있으며, 이러한 통신모듈들은 각각의 특성에 맞게 선택해서 사용되어지고 있다. 예를들어 도 1에 도시된 바와 같이 필드버스(Fieldbus)나 디바이스 모듈은 디바이스를 직접 액세스(Access)하고자 할 때 주로 사용되며, 미니맵(Minimap)과 프로피버스(Profibus) 모듈은 피엘씨(PLC)간의 통신에 이용되는데, 상기 필드버스 모듈보다는 상위 시스템에 적용하여 사용하고, 이더넷 모듈은 인터넷에서 사용되는 TCP/IP를 이용한 통신을 말하며, 주로 피씨(PC)와 피씨(PC)간의 통신과 피씨와 타 이더넷 모듈과의 통신에 주로 사용되기 때문에 시스템을 전체적으로 감시하고 제어하기 위해 주로 상위 시스템의 통신방법으로 사용되고 있다.
물론 상기 미니맵(Minimap), 필드버스(fieldbus) 모듈도 피씨와의 통신을 할 수 있지만 이 경우에는 피씨에 장착할 피씨용 보드가 필요하기 때문에 비용도 많이들고, 기존에 사용하고 있는 피씨용 소프트웨어 툴을 이용할 수 없다는 단점이 있다. 이에 반하여 이더넷 모듈은 기존에 피씨간의 통신에 사용되는 근거리 통신망(LAN) 카드(3Com)만 있으면 통신을 할 수 있고, 소프트웨어만으로도 피엘씨와 통신이 가능하다. 또한 이더넷 통신을 하는 기기 및 모듈이 많이 사용되고 있기 때문에 다른 시스템과의 접속도 용이하고, 시스템의 확장에도 편리하기 때문에 많은 시스템에서 이더넷 모듈을 사용하고 있다.
이와 같이 구성된 종래 장치의 동작 과정을 설명하면 다음과 같다.
도 2는 종래 TCP/IP 프로토콜의 구성을 보인 블록도이고, 도 3은 종래 TCP/IP 프레임의 구성을 보인 블록도로서, 이에 도시된 바와 같이 이더넷 통신모듈의 OSI 7층 구조에 의한 물리층은 CSMA/CD방식을 사용하고, 802.2 데이터 링크를 지원하며, 네트워크층에선 IP가 사용되고, 트랜스포트층에서는 TCP가 사용되며, 가장 상위층에는 규격이 오픈된 프로토콜(FTP, TELET, 자사 서비스 등)이 사용된다.
따라서, 이더넷 통신을 지원하는 통신기기들은 상기 규격이 오픈된 프로토콜(FTP, TELET 등)을 사용하면 같은 프로토콜을 사용한 통신기기와도 통신을 할 수 있다. 그러나, 피씨와 피엘씨간의 통신은 사기 오픈된 프로토콜(FTP, TELET 등)보다는 자사에서 제공하는 서비스 즉, 자사의 통신 프로토콜을 이용하는 서비스를 주로 이용하기 때문에 피씨에서는 피엘씨 이더넷 통신모듈에서 사용하는 프로토콜을 사용해야 통신이 가능하다. 이와 같은 이유 때문에 사용자는 피엘씨 업체에서 제공하는 피씨용 소프트웨어 드라이버를 구입한 뒤 그 드라이버를 이용해서 피엘씨와 통신을 해야한다. 마찬가지로 서로 다른 프로토콜을 사용하는 피엘씨간의 이더넷 통신도 전혀 이루어지지 않는다.
도 4는 종래 이더넷 통신모듈을 이용한 피엘씨간의 통신을 하는 시스템의 구성을 보인 예시도이고, 도 5는 종래 이더넷 통신모듈의 구성을 보인 블록도로서, 이에 도시된 바와 같이 통신부의 근거리 통신망 케이블은 10BASE5(Thick 케이블), 10BASE2(Thin 케이블), 10BASE-T(트위스트 케이블)를 사용할 수 있고, 피엘씨1에서는 자국과 통신하고자 하는 다른 국에 대한 정보를 파라메터 영역에 설정하고, 피엘씨를 운전하면 타국과 이더넷 통신을 하게 된다.
상기 파라메터 영역에는 이더넷 통신에 필요한 모든 정보를 설정해야 하며, 도 6에 도시된 바와 같이 TCP/IP 통신을 예를 들어 설명(UDP/IP 통신의 설명은 생략)하면 먼저 피엘씨1은 파라메터 영역에 설정된 파라메터를 근거로 동작을 하게 되는데, 이 파라메터 영역에는 상대국의 IP 주소와 상대국 포트 및 자국 포트 등의 정보가 있다. 따라서 이더넷 통신모듈에서는 먼저 상대국과 통신을 하기 위해 커넥션을 설립하는 동작을 하게 된다.
도 7은 종래 채널 설립을 위한 동작 흐름도로서, 이에 도시된 바와 같이 사용자가 채널 설립을 요구하면 시스템 O/S에서 채널을 설립하고, 파라메터 영역에 설정된 타국의 주소 및 포트를 이용하여 도 2에서와 같이 TCP/IP에 맞게 프로토콜을 조립해서(사용자의 데이터를 자사의 프로토콜 형태로 변환) 채널 설립 프레임을 만들어 이를 상대국에 송신하며, 송신 후 상대국으로부터 채널 요구에 대한 응답이 수신되었는지를 판단하고, 판단결과 응답을 수신하였으면 에러가 발생하였는지를 판단하며, 판단결과 에러가 발생하지 않았으면 사용자에게 통신 채널이 설립되었다는 신호를 전달하고, 사용자는 채널이 설립되었다는 신호를 이용해서 상대국과 통신을 하게 된다.
도 8은 종래 이더넷 모듈을 통한 데이터의 송수신을 보인 흐름도로서, 이에 도시된 바와 같이 사용자가 데이터의 송신을 요구하면 이더넷 통신모듈에서는 채널이 설립되었는지를 검사하며, 검사결과 채널이 설립되어 있으면 사용자의 데이터를 자사에서 사용하는 통신 프로토콜로 데이터를 변환하여 상대국에 데이터를 송신하고, 데이터를 송신한 후, 상대국으로부터 응답(ACK)을 수신하면 사용자에게 송신완료 신호를 전달한다.
또한, 데이터를 수신 할 때에는 응답 데이터가 수신되었는지를 판단하며, 판단결과 응답 데이터가 수신되었으면 수신오류가 있는지를 판단하고, 판단결과 없으면 수신된 프레임의 하위 프로토콜이 이더넷 통신 프로토콜에 맞는지를 확인하며, 확인결과 이더넷 통신 프로토콜이면 상위 통신 프로토콜을 검사해서 일치할 경우에만 사용자에게 데이터를 전달한다.
이와 같이 이더넷 통신은 하위의 이더넷 통신 프로토콜과 상위 어프리케이션 프로토콜이 맞아야만 통신을 할 수 있다. 즉 이더넷 통신은 상위 데이터 프로토콜이 맞아야 하기 때문에 자사가 아닌 타사의 피엘씨 이더넷 통신모듈로 연결되었으면 통신 프로토콜이 맞지 않으므로 통신이 불가능하게 된다.
모든 통신이 끝나면 기존에 설립된 연결을 해체하라는 사용자 요구에 따라 이더넷 통신모듈은 연결 해체 동작을 수행하고, 연결 해체 결과를 사용자에게 알려준다.
상기와 같이 종래의 기술에 있어서는 자사의 통신 프로토콜을 사용하지 않는 다른 이더넷 통신모듈과는 통신을 할 수가 없어 기존에 설치된 시스템에 새로운 시스템을 접속하기가 어렵고, 서로 다른 이더넷 통신모듈과의 접속이 불가능하며, 또한 피씨와 통신을 하기 위해서는 기존에 다른 소프트웨어 드라이버를 사용하고 있더라도 새로운 프트웨어 드라이브를 구입하거나 이더넷 통신모듈에 맞는 드라이버를 사용하여야만 통신을 할 수 있다는 문제점이 있었다.
따라서, 본 발명은 상기와 같은 종래의 문제점을 해결하기 위하여 창안한 것으로, 다른 모든 통신모듈의 프로토콜을 정의하고, 수신 및 검사할 데이터 등을 사용자가 정의하게 하는 피씨용 이더넷 프레임 편집기와 사용자가 프로그램 내에서 편리하고 유연하게 시스템을 제어하게 하는 펑션블록 등을 이용하여 정의한 프레임을 이더넷 통신모듈의 프레임 영역에 다운로드 받아 사용자가 사용한 펑션블록과 연계해서 동작하게 함으로써, 서로 다른 통신 프로토콜을 사용하는 이더넷 통신모듈과의 통신이 이루어지도록 하는 장치와 방법을 제공함에 그 목적이 있다.
도 1은 종래 통신모듈의 구성을 보인 블록도.
도 2는 종래 TCP/IP 프로토콜의 구성을 보인 블록도.
도 3은 종래 TCP/IP 프레임의 구성을 보인 블록도.
도 4는 종래 이더넷 통신모듈을 이용한 피엘씨간의 통신을 하는 시스템의 구성을 보인 예시도.
도 5는 종래 이더넷 통신모듈의 구성을 보인 블록도.
도 6은 종래 파라메터 영역의 구성을 보인 블록도.
도 7은 종래 채널 설립을 위한 동작 흐름도.
도 8은 종래 이더넷 모듈을 통한 데이터의 송수신을 보인 흐름도.
도 9는 본 발명 이더넷 통신모듈의 구성을 보인 블록도.
도 10은 본 발명에서 채널 설립을 위한 동작 흐름도.
도 11은 본 발명의 송신 프로토콜의 형태를 보인 예시도.
도 12는 본 발명의 데이터 송신 동작 흐름도.
도 13은 도 12에서 사용자 정의 프레임 생성을 보인 동작 흐름도.
도 14는 본 발명의 데이터 수신 동작 흐름도.
도 15는 도 14에서 사용자 정의 프레임 찾기 및 분석을 보인 동작 흐름도.
도 16은 본 발명에 따른 데이터 프레임 구성을 보인 예시도.
도 17a는 본 발명의 피씨용 프레임 편집기의 초기화면 구성을 보인 예시도.
도 17b는 본 발명의 피씨용 프레임 편집기의 프레임 설정화면 구성을 보인 예시도.
도 17c는 본 발명의
도 18은 본 발명의 이더넷용 기능부에서 제공하는 기능의 종류를 보인 블록도.
도 19는 본 발명을 이용하여 통신을 하기 위한 사용자 프로그램.
이와 같은 목적을 달성하기 위한 본 발명의 구성은, 이더넷 통신이 가능한 장치와 이더넷 통신을 하는데 있어서, 이더넷 통신을 위해 다른 모든 통신모듈의 프로토콜을 정의하고, 수신 및 검사할 데이터 등을 사용자가 정의하게 하는 프레임 편집기를 구비함을 특징으로 한다.
또한 상기 편집기에 의해 설정된 프레임을 이더넷 모듈에 다운로드하여 저장하고, 이 저장한 프레임과 이더넷 기능블록에서 제공한 기능을 통해서 데이터를 송수신하는 것을 특징으로 한다.
그리고, 제어방법에 있어서는 피엘씨로부터 채널설립 요구가 들어왔는지를 판단하는 채널설립 판단단계와; 상기 채널설립 판단단계의 판단결과에 따라 프레임 영역에 사용자 데이터가 다운로드 되었는지를 판단하는 제2 단계와; 상기 제2 단계의 판단결과에 따라 프레임 정보작업 영역에 정리하고, 채널설립 프레임을 송신하는 프레임 송신단계와; 상기 프레임송신 단계의 수행 후, 송신 에러가 발생하였는가를 판단하는 송신에러 판단단계와; 상기 송신에러 판단단계의 판단에 따라 채널설립 프레임을 수신하였는가를 판단하여 수신하였으면 피엘씨에 수신이 되었음을 전달하는 채널설립 수신판단단계와; 상기 채널설립 수신판단단계의 판단결과 수신되지 않았으면 설정한 수신시간을 경과 하였는지를 판단하는 수신시간 판단단계와; 상기 수신시간 판단단계의 판단결과에 따라 경과하였으면 피엘씨에 에러신호를 전달하고, 시간이 경과하지 않았으면 상기 채널설립 수신판단단계로 되돌아가는 수신시간 판단에 따른 수행단계로 이루어진 것을 특징으로 한다.
피엘씨 데이터의 송신요구가 들어왔는지 판단하는 제1 단계와; 상기 제1 단계의 판단결과에 따라 피엘씨에 데이터 송신에러를 전달하거나 채널이 설립되었는지를 판단하는 제2 단계와; 상기 제2 단계의 판단결과에 따라 사용자 정의 통신인가를 판단하는 제3 단계와; 상기 제3 단계의 판단결과 사용자 정의 통신이 아니면 전용통신인가를 판단하는 제4 단계와; 상기 제4 단계의 판단결과에 따라 전용 프레임을 생성하거나 언포맷 프레임을 생성하여 프레임을 송신하는 제5 단계와; 상기 제3 단계의 판단결과 사용자 정의 통신이면 프레임 영역에 사용자 데이터가 다운로드 되었는지를 판단하는 제6 단계와; 상기 제6 단계의 판단결과에 따라 피엘씨에 데이터 송신에러를 전달하거나 프레임 이름이 프레임 영역에 존재하는지를 판단하는 제7 단계와; 상기 제7 단계의 판단결과에 따라 피엘씨에 데이터 송신에러를 전달하거나 사용자 정의 프레임을 생성하여 프레임을 송신한 후, 송신에러가 발생하였는지를 판단하는 제8 단계와; 상기 제8 단계의 판단결과에 따라 피엘씨에 데이터 송신에러를 전달하거나 피엘씨에 데이터 수신완료를 전달하는 제9 단계로 이루어진 것을 특징으로 한다.
응답 데이터를 수신하였는지를 판단하는 제1 단계와; 상기 제1 단계의 판단결과에 따라 수신에러가 발생하였는지를 판단하는 제2 단계와; 상기 제2 단계의 판단결과에 따라 수신 프레임을 해체하거나 사용자 정의 통신인가를 판단하는 제3 단계와; 상기 제3 단계의 판단결과 사용자 정의 통신이 아니면 전용 통신인가를 판단하는 제4 단계와; 상기 제3 단계의 판단결과 사용자 정의 통신이면 프레임 영역에 사용자 데이터가 다운로드 되었는지를 판단하는 제5 단계와; 상기 제4 단계의 판단결과 전용통신이 아니면 언포맷 프레임을 분석하여 데이터 영역에 저장하고, 수신된 프레임 데이터를 피엘씨에 전달하는 제6 단계와; 상기 제4 단계의 판단결과 전용통신이면 전용 프레임을 분석하고, 수신 데이터 판단하는 제7 단계와; 상기 제7 단계의 판단결과에 따라 수신 프레임을 해체하거나 수신된 프레임 데이터를 피엘씨에 전달하는 제8 단계와; 상기 제3 단계의 판단결과 사용자 정의 통신이면 프레임 영역에 사용자 데이터가 다운로드 되었는지를 판단하는 제9 단계와; 상기 제9 단계의 판단결과에 따라 수신 프레임을 해체하거나 사용자 정의 프레임을 찾아 분석하여 프레임 이름이 프레임 영역에 존재하는지를 판단하는 제10 단계와; 상기 제10 단계의 판단결과에 따라 수신 프레임을 해체하거나 수신된 프레임 데이터를 피엘씨에 전달하는 제11 단계로 이루어진 것을 특징으로 한다.
이하, 본 발명에 따른 실시예를 첨부한 도면을 참조하여 상세히 설명하면 다음과 같다.
도 9는 본 발명 이더넷 통신모듈의 구성을 보인 블록도로서, 이에 도시한 바와 같이 프레임 영역이 사용자가 편집기를 통해서 설정한 프레임을 다운로드 받아서 저장하는 영역으로 총 크기는 128K 바이트이다.
타사 피엘씨와 TCP/IP 통신을 하기 위해서는 먼저 채널을 설립해야 하는데, 도 10은 본 발명에서 채널 설립을 위한 동작 흐름도로서, 이에 도시한 바와 같이 피엘씨로부터 채널설립 요구가 들어왔는지를 판단하여 판단결과에 따라 프레임 영역에 사용자 데이터가 다운로드 되었는지를 판단하고, 판단결과에 따라 피엘씨에 에러를 전달하거나 프레임 정보작업 영역에 다운로드하여 정리하고, 채널설립 프레임을 송신하며, 상기 프레임의 송신을 수행한 후, 송신 에러가 발생하였는가를 판단하고, 이 판단결과에 따라 채널설립 프레임을 수신하였는가를 판단하여 수신하였으면 피엘씨에 수신이 되었음을 전달하며, 판단결과 수신되지 않았으면 설정한 수신시간이 경과 하였는지를 다시 판단하여 판단결과에 따라 경과하였으면 피엘씨에 에러신호를 전달하고, 시간이 경과하지 않았으면 다시 상기 채널설립 프레임을 수신하였는가의 판단을 반복한다.
연결이 정상적으로 이루어지면 사용자는 도 18에서와 같이 TCP_SEND를 이용하여 데이터를 송신하는데, 이때 가장 중요한 점은 TCP_SEND에서 프레임 이름(이하 "FNAME"라 함)의 지정이다. 이 FNAME은 사용자가 편집기에서 정의한 여러 가지 프로토콜 중 하나를 선택하는 것이다.
사용자가 프레임을 'M_SEND'로 하고, 이더넷 통신모듈에 컨스턴트로 구성된 데이터의 송신을 요구하면 상기 이더넷 통신모듈은 요구한 국과의 채널이 설립 되었는지를 체크하며, 채널이 설립되었으면 프로토콜을 만드는 작업을 수행한다.
도 12는 본 발명의 데이터 송신 동작 흐름도로서, 이에 도시한 바와 같이 피엘씨 데이터의 송신요구가 들어왔는지 판단하여 이 판단결과에 따라 피엘씨에 데이터 송신에러를 전달하거나 채널이 설립되었는지를 판단하며, 이 판단결과에 따라 사용자 정의 통신인가를 판단하고, 이 판단결과 사용자 정의 통신이 아니면 전용통신인가를 판단하여 전용 프레임을 생성하거나 언포맷 프레임을 생성하여 프레임을 송신하고, 상기 판단결과 사용자 정의 통신이면 프레임 영역에 사용자 데이터가 다운로드 되었는지를 판단하여 피엘씨에 데이터 송신에러를 전달하거나, 프레임 이름이 프레임 영역에 존재하는지를 판단하며, 이 판단결과에 따라 피엘씨에 데이터 송신에러를 전달하거나, 사용자 정의 프레임을 생성하여 프레임을 송신한 후, 송신에러가 발생하였는지를 판단하여 피엘씨에 데이터 송신에러를 전달하거나 피엘씨에 데이터 수신완료를 전달하는데, 상기 사용자 정의 프레임 생성 과정은 도 13에 도시한 바와 같이 어레이의 총 개수와 사용자 송신 데이터 개수가 같은지를 판단하여 다르면 에러를 발생하거나 같으면 세그먼트 설정 개수가 '0'인지를 판단하고, 이 판단결과에 따라 '0'이면 나머지 어레이 개수가 '0'인지를 판단하여 에러를 발생하거나 리턴하며, 상기 판단결과 '0'이 아니면 송신할 데이터가 상수로 설정되어 있는지를 판단하여 상수로 설정되어 있으면 이를 송신영역으로 설정하고, 세그먼트 설정 개수를 설정한 다음 상기 세그먼트 설정 개수가 '0'인지를 판단하는 동작을 반복하며, 상기 판단결과 상수로 설정되어 있지 않으면 어레이로 설정되어 있는지를 판단하여 판단결과에 따라 사용자 데이터(어레이 개수)를 송신영역으로 하고, 나머지 어레이 개수를 총 어레이 개수에서 저장한 어레이 개수를 감산한 것으로 하며, 세그먼트 설정 개수를 설정한 다음 상기 세그먼트 설정 개수가 '0'인지를 판단하는 동작을 반복한다.
이렇게 완성된 프로토콜 배열은 도 16에 도시한 바와 같은 상대국에서의 프로토콜과 동일한 결과를 나타낸다. 따라서 상기 완성된 프로토콜은 상대국에 송신하면 상대국의 피엘씨는 자사의 프로토콜로 인식하여 수신된 데이터를 자사의 이더넷 통신모듈에서 해석하여 그에 대한 응답을 하게된다.
도 17a는 본 발명의 피씨용 프레임 편집기의 초기화면 구성을 보인 예시도이고, 도 17b는 본 발명의 피씨용 프레임 편집기의 송신 프레임 설정화면 구성을 보인 예시도이며, 도 17c는 본 발명의 피씨용 프레임 편집기의 송신 프레임 설정화면 구성을 보인 예시도로서, 이에 도시한 바와 같이 초기화면에는 설정될 프레임의 전체적인 내용을 보여주고, 그룹별 등록상황을 알 수 있으며, 프레임 설정화면에는 프레임의 이름과 프레임 타입 및 프레임의 데이터 구조 등을 설정하는데, 프레임 구조에는 데이터의 종류(상수, 어레이, 스킵)와 송,수신할 데이터 크기를 8개의 세그먼트로 분리해서 설정할 수 있어 타사의 여러 제품과도 동시에 데이터 교환을 할 수 있다.
또한, 타국으로부터 도 16과 같은 데이터를 수신했다면 이더넷 통신모듈에서는 사용자가 설정한 수신 프레임 중 M_RCV1에서 상기 도 16과 동일한 프레임이 있는지를 세그먼트 순서대로 비교 분석하며, 이때 사용자가 정의한 어레이는 순수 데이터(4바이트)부분 이므로 비교하지 않고, 피엘씨에 전달 할 수 있도록 처리한다. 이와 같이 비교 분석한 결과 M_RCV1 프레임과 동일한 프레임이라는 결과가 나오면 그 결과를 피엘씨에 전달한다.
이와 같은 과정을 도 14를 참조하여 자세히 설명하면 먼저, 응답 데이터를 수신하였는지를 판단하고, 이 판단결과에 따라 수신 에러가 발생하였는지를 판단한 다음 이 판단결과에 따라 수신 프레임을 해체하거나 사용자 정의 통신인가를 판단하며, 상기 판단결과 사용자 정의 통신이면 프레임 영역에 사용자 데이터가 다운로드 되었는지를 판단하고, 상기 판단결과 사용자 정의 통신이 아니면 전용 통신인가를 판단하여 전용통신이 아니면 언포맷 프레임을 분석하여 데이터 영역에 저장하고, 수신된 프레임 데이터를 피엘씨에 전달하며, 상기 판단결과 전용통신이면 전용 프레임을 분석하고, 수신 데이터 판단하여 수신 프레임을 해체하거나 수신된 프레임 데이터를 피엘씨에 전달하며, 상기 판단결과 사용자 정의 통신이면 프레임 영역에사용자 데이터가 다운로드 되었는지를 판단하여 수신 프레임을 해체하거나 사용자 정의 프레임을 찾아 분석한 다음 프레임 이름이 프레임 영역에 존재하는지를 판단하고, 이 판단결과에 따라 수신 프레임을 해체하거나 수신된 프레임 데이터를 피엘씨에 전달하는데, 상기 사용자 정의 프레임 찾기 및 분석 과정은 도 15에 도시한 바와 같이 수신용 프레임 개수가 '0'인가를 판단하여 그에따라 에러를 발생하고 리턴하거나, 세그먼트 설정 총 개수가 수신된 데이터 개수와 같은지를 판단하고, 이 판단결과에 따라 세그먼트 개수를 다시 설정하고 상기 수신용 프레임 개수가 '0'인가를 판단을 반복하거나, 세그먼트 설정 개수가 '0'인지를 판단하여 '0'이면 나머지 어레이 개수가 '0'인지를 판단하며, 상기 판단결과에 따라 수신용 프레임 개수를 설정하고, 상기 수신용 프레임 개수가 '0'인가를 판단을 반복하거나 리턴하며, 상기 판단결과 세그먼트 설정 개수가 '0'이 아니면 수신할 데이터가 상수로 설정되어 있는지를 판단하여 상수로 설정되어 있으면 이를 수신영역 데이터와 설정된 상수를 비교하여 같은가를 판단하고, 상기 판단결과 상수로 설정되어 있지 않으면 어레이로 설정되어 있는지를 판단하여 어레이로 설정되지 않았으면 설정 개수만큼 스킵하여 수신영역 포인터를 갱신한 다음 세그먼트 설정 개수를 다시 설정하고, 상기 세그먼트 개수가 '0'인가를 판단하는 동작을 반복하며, 상기 판단결과 어레이로 설정되었으면 수신된 데이터(어레이 개수)를 저장영역으로 한 후, 세그먼트 설정 개수를 다시 설정하고 상기 세그먼트 개수가 '0'인가를 판단하는 동작을 반복하며, 상기 수신영역 데이터와 설정된 상수를 비교하여 같은가의 판단결과에 따라 세그먼트 설정개수를 다시 설정하거나, 수신영역 포인터를 갱신한 후, 세그먼트 설정개수를 다시 설정한 다음 상기 세그먼트 개수가 '0'인가를 판단하는 동작을 반복하여 수행한다.
상기의 동작을 예를들어 설명하면 도 11은 본 발명의 송신 프로토콜의 형태를 보인 예시도로서, 이에 도시한 바와 같이 자사 이더넷 통신모듈과 타사의 이더넷 통신모듈과 통신을 하기 위해 먼저 편집기를 이용하여 통신하고자 하는 모듈의 프로토콜을 설정하고, 송신할 데이터는 15바이트로 하며, 수신할 데이터를 60바이트로 정하여(타사의 D1000 영역으로부터 데이터를 읽고자 한다.) 타사의 이더넷 통신모듈과 통신하기 위한 편집기 설정이 끝나면 이더넷 통신모듈에 프레임을 다운로드하고, 다운로드가 끝나면 프로그램에서 사용자 프로그램을 작성하는데, 도 19는 본 발명을 이용하여 통신을 하기 위한 사용자 프로그램이고, 도 18은 본 발명의 이더넷용 기능부에서 제공하는 기능의 종류를 보인 블록도로서, 이에 도시한 바와 같이 5가지 종류를 제공하는데, E_CONN 기능블록(이하 "FB"라 함)은 연결 설립 기능을 제공하고, TCP_SEND, TCP_RCV FB는 TCP/IP 송수신 기능을 제공하며, UDP_SEND, UDP_RCV FB는 UDP/IP 송수신 기능을 제공하는데, 피엘씨 동작이 구동되면 먼저 E_CONN FB에 의해서 상대국의 IP 어드레스와 포트를 상대국과 TCP_ACTIVE 연결을 하도록 이더넷 모듈에 요구하면 이더넷 통신모듈에서는 수신된 정보를 이용해서 타국과 연결을 설립하고, 그 결과를 중앙처리장치(CPU)에 알려주며, 연결이 정상적으로 이루어지면 E_CONN FB의 CH_EN이 '1'로 되고, 상기 TCP_SEND FB가 동작을 하게되며, 상기 TCP_SEND FB에서는 'FNAME'에 의한 프레임을 'M_SEND'로서 이더넷 모듈에 요구하게 된다.
이더넷 모듈에서는 프레임 영역에서 'M_SEND'로 설정되어 있는 'FNAME'을 찾아서 사용자가 설정한 프레임데로 프레임을 변환하여 상대국에 송신하고, 그 결과를 중앙처리장치에 알려준다.
타국으로부터 데이터를 수신할 때에는 수신된 데이터 프레임이 사용자가 설정한 프레임 중 일치하는 프레임이 있는지를 검사하고, 일치하는 프레임이 있을 경우(M_SEND_OK) 중앙처리장치에 플래그를 통해서 전달하한다. 그러면 중앙처리장치에서 TCP_RCV FB가 동작하게 되어 수신된 프레임 중에서 사용자가 어레이로 설정한 데이터 개수만큼 데이터를 수신할 수 있다.
따라서, 사용자가 프레임을 설정하기만 하면 어느 이더넷 통신모듈과도 통신을 할 수 있으며, 중앙처리장치에서 기능블록을 이용하여 시스템을 용이하게 제어할 수 있다. 즉 여러개의 타사 이더넷 모듈로 구성한 시스템에서도 자사의 이더넷 통신모듈을 통해서 모든 이더넷 데이터를 공유할 수 있게 한다.
이상에서 설명한 바와 같이 본 발명 이더넷 통신모듈은 사용자가 프로그램 내에서 보다 편리하고 유연하게 시스템을 제어하며, 다른 통신 프로토콜을 사용하는 이더넷 통신장치와 데이터 송수신이 가능한 효과가 있다.

Claims (7)

  1. 이더넷 통신이 가능한 장치와 이더넷 통신을 하는데 있어서, 이더넷 통신을 위해 타사의 프레임과 내부의 데이터를 액세스할 수 있도록 설정하는 피씨용 프레임 편집기와; 프로그램내에서 사용할 기능을 제공하는 이더넷 기능블록을 포함하여 구성함을 특징으로 하는 이더넷 통신모듈.
  2. 제1항에 있어서, 상기 편집기에 의해 설정된 프레임을 이더넷 모듈에 다운로드(Dowmload)하여 저장하고, 이 저장한 프레임과 이더넷 기능블록에서 제공한 기능을 통해서 데이터를 송수신하는 것을 특징으로 하는 이더넷 통신모듈.
  3. 피엘씨로부터 채널설립 요구가 들어왔는지를 판단하는 채널설립 판단단계와; 상기 채널설립 판단단계의 판단결과에 따라 프레임 영역에 사용자 데이터가 다운로드 되었는지를 판단하는 제2 단계와; 상기 제2 단계의 판단결과에 따라 프레임 정보작업 영역에 정리하고, 채널설립 프레임을 송신하는 프레임 송신단계와; 상기 프레임송신 단계의 수행 후, 송신 에러가 발생하였는가를 판단하는 송신에러 판단단계와; 상기 송신에러 판단단계의 판단에 따라 채널설립 프레임을 수신하였는가를 판단하여 수신하였으면 피엘씨에 수신이 되었음을 전달하는 채널설립 수신판단단계와; 상기 채널설립 수신판단단계의 판단결과 수신되지 않았으면 설정한 수신시간을 경과 하였는지를 판단하는 수신시간 판단단계와; 상기 수신시간 판단단계의 판단결과에 따라 경과하였으면 피엘씨에 에러신호를 전달하고, 시간이 경과하지 않았으면 상기 채널설립 수신판단단계로 되돌아가는 수신시간 판단에 따른 수행단계로 이루어진 것을 특징으로 하는 이더넷 통신모듈 제어방법.
  4. 피엘씨 데이터의 송신요구가 들어왔는지 판단하는 제1 단계와; 상기 제1 단계의 판단결과에 따라 피엘씨에 데이터 송신에러를 전달하거나 채널이 설립되었는지를 판단하는 제2 단계와; 상기 제2 단계의 판단결과에 따라 사용자 정의 통신인가를 판단하는 제3 단계와; 상기 제3 단계의 판단결과 사용자 정의 통신이 아니면 전용통신인가를 판단하는 제4 단계와; 상기 제4 단계의 판단결과에 따라 전용 프레임을 생성하거나 언포맷 프레임을 생성하여 프레임을 송신하는 제5 단계와; 상기 제3 단계의 판단결과 사용자 정의 통신이면 프레임 영역에 사용자 데이터가 다운로드 되었는지를 판단하는 제6 단계와; 상기 제6 단계의 판단결과에 따라 피엘씨에 데이터 송신에러를 전달하거나 프레임 이름이 프레임 영역에 존재하는지를 판단하는 제7 단계와; 상기 제7 단계의 판단결과에 따라 피엘씨에 데이터 송신에러를 전달하거나 사용자 정의 프레임을 생성하여 프레임을 송신한 후, 송신에러가 발생하였는지를 판단하는 제8 단계와; 상기 제8 단계의 판단결과에 따라 피엘씨에 데이터 송신에러를 전달하거나 피엘씨에 데이터 수신완료를 전달하는 제9 단계로 이루어진 것을 특징으로 하는 이더넷 통신모듈 제어방법.
  5. 제4항에 있어서, 상기 제8 단계는 어레이의 총 개수와 사용자 송신 데이터 개수가 같은지를 판단하는 제1 단계와; 상기 제1 단계의 판단결과에 따라 다르면 에러를 발생하거나 같으면 세그먼트 설정 개수가 '0'인지를 판단하는 제2 단계와; 상기 제2 단계의 판단결과에 따라 '0'이면 나머지 어레이 개수가 '0'인지를 판단하여 에러를 발생하거나 리턴하는 제3 단계와; 상기 제2 단계의 판단결과에 따라 '0'이 아니면 송신할 데이터가 상수로 설정되어 있는지를 판단하는 제4 단계와; 상기 제4 단계의 판단결과 상수로 설정되어 있으면 이를 송신영역으로 설정하고, 세그먼트 설정 개수를 설정한 다음 상기 제2 단계로 되돌아가는 제5 단계와; 상기 제4 단계의 판단결과 상수로 설정되어 있지 않으면 어레이로 설정되어 있는지를 판단하는 제6 단계와; 상기 제6 단계의 판단결과에 따라 사용자 데이터(어레이 개수)를 송신영역으로 하고, 나머지 어레이 개수를 총 어레이 개수에서 저장한 어레이 개수를 감산한 것으로 하며, 세그먼트 설정 개수를 설정한 다음 상기 제2 단계로 되돌아가는 제7 단계를 포함하여 이루어진 것을 특징으로 하는 이더넷 통신모듈 제어방법.
  6. 응답 데이터를 수신하였는지를 판단하는 제1 단계와; 상기 제1 단계의 판단결과에 따라 수신에러가 발생하였는지를 판단하는 제2 단계와; 상기 제2 단계의 판단결과에 따라 수신 프레임을 해체하거나 사용자 정의 통신인가를 판단하는 제3 단계와; 상기 제3 단계의 판단결과 사용자 정의 통신이 아니면 전용 통신인가를 판단하는 제4 단계와; 상기 제3 단계의 판단결과 사용자 정의 통신이면 프레임 영역에 사용자 데이터가 다운로드 되었는지를 판단하는 제5 단계와; 상기 제4 단계의 판단결과 전용통신이 아니면 언포맷 프레임을 분석하여 데이터 영역에 저장하고, 수신된 프레임 데이터를 피엘씨에 전달하는 제6 단계와; 상기 제4 단계의 판단결과 전용통신이면 전용 프레임을 분석하고, 수신 데이터 판단하는 제7 단계와; 상기 제7 단계의 판단결과에 따라 수신 프레임을 해체하거나 수신된 프레임 데이터를 피엘씨에 전달하는 제8 단계와; 상기 제3 단계의 판단결과 사용자 정의 통신이면 프레임 영역에 사용자 데이터가 다운로드 되었는지를 판단하는 제9 단계와; 상기 제9 단계의 판단결과에 따라 수신 프레임을 해체하거나 사용자 정의 프레임을 찾아 분석하여 프레임 이름이 프레임 영역에 존재하는지를 판단하는 제10 단계와; 상기 제10 단계의 판단결과에 따라 수신 프레임을 해체하거나 수신된 프레임 데이터를 피엘씨에 전달하는 제11 단계로 이루어진 것을 특징으로 하는 이더넷 통신모듈 제어방법.
  7. 제6항에 있어서, 상기 제10 단계는 수신용 프레임 개수가 '0'인가를 판단하는 제1 단계와; 상기 제1 단계의 판단에 따라 에러를 발생하고 리턴하거나, 세그먼트 설정 총 개수가 수신된 데이터 개수와 같은지를 판단하는 제2 단계와; 상기 제2 단계의 판단결과에 따라 세그먼트 개수를 다시 설정하고 상기 제1 단계를 반복하거나, 세그먼트 설정 개수가 '0'인지를 판단하는 제3 단계와; 상기 제3 단계의 판단결과에 따라 '0'이면 나머지 어레이 개수가 '0'인지를 판단하는 제4 단계와; 상기 제4 단계의 판단결과에 따라 수신용 프레임 개수를 설정하고 상기 제1 단계로 되돌아 가거나 리턴하는 제5 단계와; 상기 제3 단계의 판단결과에 따라 '0'이 아니면 수신할 데이터가 상수로 설정되어 있는지를 판단하는 제6 단계와; 상기 제6 단계의 판단결과 상수로 설정되어 있으면 이를 수신영역 데이터와 설정된 상수를 비교하여 같은가를 판단하는 제7 단계와; 상기 제6 단계의 판단결과 상수로 설정되어 있지 않으면 어레이로 설정되어 있는지를 판단하는 제8 단계와; 상기 제8 단계의 판단결과 어레이로 설정되지 않았으면 설정 개수만큼 스킵하여 수신영역 포인터를 갱신한 다음 세그먼트 설정 개수를 다시 설정하고, 상기 제3 단계로 되돌아 가는 제9 단계와; 상기 제8 단계의 판단결과 어레이로 설정되었으면 수신된 데이터(어레이 개수)를 저장영역으로 한 후, 세그먼트 설정 개수를 다시 설정하고 상기 제3 단계로 되돌아가는 제10 단계와; 상기 제7 단계의 판단결과에 따라 세그먼트 설정개수를 다시 설정하거나, 수신영역 포인터를 갱신한 후, 세그먼트 설정개수를 다시 설정한 다음 상기 제3 단계로 되돌아가는 제11 단계를 포함하여 이루어진 것을 특징으로 하는 이더넷 통신모듈 제어방법.
KR1019980013258A 1998-04-14 1998-04-14 이더넷 통신모듈 및 그의 제어방법 KR100264149B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980013258A KR100264149B1 (ko) 1998-04-14 1998-04-14 이더넷 통신모듈 및 그의 제어방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980013258A KR100264149B1 (ko) 1998-04-14 1998-04-14 이더넷 통신모듈 및 그의 제어방법

Publications (2)

Publication Number Publication Date
KR19990080192A true KR19990080192A (ko) 1999-11-05
KR100264149B1 KR100264149B1 (ko) 2000-08-16

Family

ID=19536214

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980013258A KR100264149B1 (ko) 1998-04-14 1998-04-14 이더넷 통신모듈 및 그의 제어방법

Country Status (1)

Country Link
KR (1) KR100264149B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100706650B1 (ko) * 2000-03-17 2007-04-13 가부시끼가이샤 디지탈 제어용 서버장치, 제어용 단말장치, 제어 시스템 및제어용 통신 프로그램이 기록된 기록매체
US7937496B2 (en) 2000-03-17 2011-05-03 Digital Electronics Corporation Control server, control terminal, control system, and recording medium storing control communication program

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100706650B1 (ko) * 2000-03-17 2007-04-13 가부시끼가이샤 디지탈 제어용 서버장치, 제어용 단말장치, 제어 시스템 및제어용 통신 프로그램이 기록된 기록매체
KR100706648B1 (ko) * 2000-03-17 2007-04-13 가부시끼가이샤 디지탈 제어용 서버장치, 제어용 단말장치, 제어 시스템 및제어용 통신 프로그램이 기록된 기록매체
US7937496B2 (en) 2000-03-17 2011-05-03 Digital Electronics Corporation Control server, control terminal, control system, and recording medium storing control communication program
US7953892B2 (en) 2000-03-17 2011-05-31 Digital Electronics Corporation Control server, control terminal, control system, and recording medium storing control communication program
US7970941B2 (en) 2000-03-17 2011-06-28 Digital Electronics Corporation Control server, control terminal, control system, and recording medium storing control communication program

Also Published As

Publication number Publication date
KR100264149B1 (ko) 2000-08-16

Similar Documents

Publication Publication Date Title
RU2427019C2 (ru) Эксплуатационное устройство с электропитанием через ethernet
US6963922B2 (en) Dual protocol stack for maximum speed access to a programmable logic controller (PLC) in a factor automation system
US7461171B2 (en) System, method & apparatus of providing process data to a client
US7146237B2 (en) Controller and method to mediate data collection from smart sensors for fab applications
US6151625A (en) Internet web interface including programmable logic controller for controlling output devices based on status of input devices
US6092078A (en) Method and apparatus for interfacing network peripheral devices with a browser
US10375162B2 (en) Process control communication architecture
US8234394B2 (en) Web access for non-TCP/IP control devices of an industrial control system
CN112596470A (zh) 过程控制输入/输出设备中的多个通信物理层和协议的集成
US11063855B2 (en) Monitoring of the data transmission in a client/server-based device access system
WO2012058661A2 (en) Field panel with embedded webserver and method of accessing the same
US20020059485A1 (en) Controller internal bus supporting the TCP/IP Protocol
KR100264149B1 (ko) 이더넷 통신모듈 및 그의 제어방법
US9100318B1 (en) Method for discovering routers in a communication path of a supervisory control and data acquisition system
CN108540516B (zh) 一种运行状态信息获取方法、控制终端、网络设备及系统
US11650561B2 (en) Arrangement, fieldbus access unit, and method for monitoring an automation technology system
US20040114591A1 (en) IP Routing Between Modules on a PLC Backplane
US11973652B2 (en) Field detection device for a fieldbus network
CN117130318B (zh) 工业数据采集方法、装置、系统和可读存储介质
Halldórsson IIoT data collection for OEE measurements
TW201712611A (zh) 客戶支援平台系統、方法及伺服器
KR100416043B1 (ko) 운용자 인터페이스 시스템에서 지유아이 처리 방법
Kaghazchi et al. Development of an opc server for a fieldbus diagnosis tool
KR20240016719A (ko) 스마트 중계기를 이용한 다중 입출력 기기 제어 장치 및 방법
Keane et al. Retrieval of diagnostic information from profinet networks

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120327

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20130222

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20160401

Year of fee payment: 17

FPAY Annual fee payment

Payment date: 20170403

Year of fee payment: 18

EXPY Expiration of term