- EtherCAT 개요
EtherCAT 프로토콜은 2002년에 독일 BeckHoff사에서 개발된 이후 2003년 11월에 EtherCAT technology group을 결성해서 기술을 공개한 개방형 산업용 Ethernet 기술이다. 또 IEC 규격(IEC/PAS 62407)과 ISO 규격(ISO15745-4)으로 인증된 국제표준 프로토콜로 뛰어난 동기화 특성과 함께 제한된 토폴로지에 의존하지 않는 성능을 가진다.
특히, EtherCAT 프로토콜은 뛰어난 Ethernet 호환성, 간단한 디바이스에서도 구현이 가능한 인터넷 기술, Ethernet에서 제공하는 대역폭을 최대한 활용할 수 있는 특성과 낮은 비용으로 뛰어난 실시간 특성을 구현할 수 있다는 장점을 가지고 있다. EtherCAT 프로토콜은 100Mbps 이상의 통신 속도를 제공하며 256개의 분산 디지털 I/O에 약 11μs의 업데이트 속도를 지원한다. EtherCAT 프로토콜의 전송 방법은 브로드캐스트(broadcast) 방식으로 마스터에서 데이터 프레임을 전송한다. 마스터와 연결된 각각의 슬레이브는 데이터 프레임을 수신 받아 해석 및 처리하고 다음 슬레이브로 전송을 한다. 즉, EtherCAT 프로토콜에서 각각의 슬레이브는 데이터 프레임이 슬레이브 모듈을 통과하는 동안 해당 모듈에 전달된 데이터를 읽어 데이터를 수신하고 전송할 데이터가 있으면 해당되는 텔레그램이 통과하는 동안 입력할 데이터를 해당되는 텔레그램에 삽입하여 전송한다. 여기서 해당되는 슬레이브 모듈에서 지연되는 시간은 겨우 몇 ns만이 소요된다. EtherCAT 마스터는 일반적으로 PC에서 사용하는 NIC를 사용하여 구성할 수 있으며, NDIS (network driver interface specification) 인터페이스를 이용하여 하부계층과 통신할 수 있다. NDIS 구조는 물리 계층과 데이터링크 계층, 그리고 응용 계층만을 가지고 있으며, 응용 계층에서 생성된 메시지가 2계층에 해당하는 데이터링크 계층으로 직접 접근이 가능하다. 또 packet 단위의 데이터 송수신을 직접적으로 제어하는 것도 가능하다. EtherCAT 슬레이브 모듈은 BeckHoff사에서 제공하는 EtherCAT 컨트롤러(controller)와 이를 제어하는 MCU로 구성된다. EtherCAT 컨트롤러를 이용하면 SPI 또는 bus 방식을 통해 다양한 MCU 와 직접 연결하여 EtherCAT 슬레이브 모듈을 구현할 수 있다. EtherCAT 프로토콜의 데이터 프레임은 스위칭 허브를 통하여 일반 Ethernet과 혼용하여 사용할 수 있는 UDP(user datagram protocol) 타입과 실시간 특성을 보장하기 위한 EtherCAT 전용 프레임 타입이 있다. [그림 1]은 EtherCAT 프로토콜의 전용 데이터 프레임의 구조를 나타내고 있다.
그림에서 데이터 프레임은 주소 정보를 포함하는 Ethernet 헤더(header), EtherCAT 정보를 포함하는 ECAT, EtherCAT 데이터를 포함하는 EtherCAT 텔레그램(telegram)으로 구성된다. Ethernet 헤더는 프레임의 시작을 의미하는 Pre(preamble), 목적지 주소를 의미하는 DA(destination address), 출발지 주소를 의미하는 SA(source address)와 프레임의 타입을 결정하는 type으로 구성된다. ECAT의 frame HDR은 EtherCAT 프레임의 길이와 프로토콜 타입을 의미한다. 슬레이브 모듈이 데이터를 기입하는 EtherCAT 텔레그램은 EtherCAT 명령에 따라 필요한 지침과 주소를 기입하는 EtherCAT HDR, 필요한 데이터를 기입하는 data와 슬레이브 모듈의 데이터 작성 유무를 표시하는 WKC로 구성된다. 마지막으로 FCS는 EtherCAT 프레임의 에러를 확인하는 기능을 수행한다. EtherCAT 프로토콜은 라인, 스타, 트리 토폴로지를 지원하며 브로드캐스트 방식으로 스위치나 허브의 개수에 제한이 없이 어떤 토폴로지에도 적용이 가능하다. 특히, 라인과 트리 토폴로지의 조합을 시스템의 배선에 활용하면 각각의 디바이스들은 배선 선택의 유연성이 증가된다. 일반적으로 EtherCAT 프로토콜은 고속 Ethernet(100Base Tx 내장형 네트워크서버)으로 각각의 디바이스 간의 배선의 길이는 최대 100m까지 가능하다.
- EtherCAT 네트워크 인터페이스 구현을 위한 계층
(1) 물리 계층
EtherCAT의 물리 계층은 데이터 링크 레이어로부터 데이터를 수신하여, 전송 매체에 연결된 다른 노드에서 전송할 수 있는 신호 레벨로 인코딩하는 역할을 수행한다. 또 다른 노드로부터 수신된 신호를 디코딩하여 수신 측 데이터 링크 레이어로 전달하는 역할을 수행한다.
(2) 데이터링크 계층
데이터링크 레이어는 EtherCAT을 통해 연결된 디바이스의 데이터 통신을 위한 핵심적인 실시간 기능을 담당한다. 실시간(time-critical)은 어플리케이션 계층에서 사용하는 시간에서 특정한 액션을 수행하기 위해 요구되는 시간으로 정의한다. 이러한 실시간성에 문제가 생기면 사용하고 있는 어플리케이션 계층의 응용프로그램의 오류와, 더 나아가 디바이스 자체의 기기 결함으로 이어질 수 있다. 데이터링크 레이어는 Ethernet frame을 통해서 수신된 데이터의 계산과 비교, FCS의 생성 등을 담당하고 있으며, 기 정의된 메모리에 데이터를 저장하는 역할도 동시에 수행한다.
(3) 어플리케이션 계층
어플리케이션 계층은 자동화 환경에서 요구되는 실시간 응용프로그램의 동작 및 작성의 편리성을 제공하는 역할을 함. EtherCAT은 여러 가지 선택적인 서비스와 프로토콜을 제공하고 있으며, TCP/UDP/IP-based Protocol을 내장하고 있다. 대표적으로 EtherCAT에서 제공하고 있는 응용프로그램의 프로파일로는 파라미터의 관리를 위한 SDOs, PDOs와 Object Dictionary Structure를 지원하는 CANopen이 있다.
'Robotics : 로봇공학 > Certificate : 자격증' 카테고리의 다른 글
1-1-4 블루투스 통신, 스마트폰 앱 프로그래밍 (0) | 2023.07.15 |
---|---|
1-1-3 로봇 프로그래밍 (0) | 2023.07.15 |
1-1-1 마이크로컨트롤러의 통신 방식 (0) | 2023.07.09 |
4-1-2 인공지능 1/3 (0) | 2023.07.09 |
Manipulator Force Cotnrol : 5-1-2-3 매니풀레이터 힘 제어 (0) | 2023.07.09 |