본문으로 건너뛰기
Park JiHo
#ethercat#soem#industrial-communication#real-time-systems

SOEM의 이해

논문을 읽는 도중 SOEM이라는 단어가 등장했다. 무엇인가 하여 찾아보니 Open EtherCAT Society라는 단체가 등장했는데, 이는 EtherCAT을 오픈소스로 만들어서 사용할 수 있게 만든 단체라는 것을 알았다.

#SOEM의 등장

논문을 읽는 도중 SOEM이라는 단어가 등장했다. 무엇인가 하여 찾아보니 Open EtherCAT Society라는 단체가 등장했는데, 이는 EtherCAT을 오픈소스로 만들어서 사용할 수 있게 만든 단체라는 것을 알았다.
SOEM( Simple Open EtherCAT Master)와 SOES(Simple Open EtherCAT Slave)는 EtherCAT을 오픈소스로 만들어서 사용할 수 있게 만든 단체에서 만든 EtherCAT Master와 Slave이다.
C언어 기반으로 만들어졌고, ROS2에서는 C++로 포팅해서 사용하고 있다.
먼저 이것을 이해하기 전에 EtherCAT에 대해서 알아야한다.

#EtherCAT이란?

EtherCAT은 Ethernet for Control Automation Technology의 약자로, Beckhoff사에서 만든 Ethernet 통신 기반의 산업제어 시스템을 위한 필드버스 시스템이다.
여기서의 필드버스 즉 Field + Bus 란 산업현장에서 데이터를 주고 받기 위해서 고안한 통신방식이다.산업용_네트워크_설명
EtherCAT과_Ethernet의_차이점 Ethernet의_이해

#EtherCAT의 특징

  • 표준 이더넷 프레임(IEEE 802.3)을 지원하며 Cat5 이상의 FTP, STP 케이블을 사용 하여 연결 할 수 있다. FTP_STP_케이블설명
  • Ring, Star, Daisy Chain 등 다양한 토폴로지를 지원한다. Topology
  • Ethernet Frame 처리속도가 빨라서 고속의 데이터 통신을 보장한다.

#EtherCAT의 동작원리


이더캣 동작 원리는 Master와 Slave로 구성되어 있다. Master는 Slave들을 관리하고, Slave들은 Master의 명령을 받아서 동작한다.
Master(노드)는 데이터 패킷(데이터를 전송하는 단위)프레임을 유일하게 보내고,
각 Slave(노드)는 데이터 패킷이 이동하는 동안에 자기에게 해당하는 데이터 패킷을 읽고, 쓰고, 수정하고, 삭제하는 등의 작업을 수행한다.
Master는 추가적인 통신 프로세스 없이 표준 이더넷 Media Access Control(MAC)을 사용한다.
마지막 노드는 개방된 포트를 찾아서, 이더넷 기술의 Full duplex 통신을 사용하여 메시지를 Master에게 돌려보낸다.

#EtherCAT 프로토콜


EtherCAT_프로토콜_이더캣_공식문서

#SOEM의 이해


SOEM은 EtherCAT을 오픈소스로 만들어서 사용할 수 있게 만든 단체에서 만든 EtherCAT Master이다. 오픈소스라 사용자가 소스코드 액서스 및 수정 가능하고 무료로 사용할 수 있다.
기존의 하드웨어 아키텍처 EtherCat Slave 장치와 실시간 통신 가능한 다용도 EtherCAT Master 역할을 해서 논문에서는 그렇게 썼다고 한다.

Connect