Sync Mode

EtherCAT 네트워크에서는 마스터와 슬레이브 간의 통신 타이밍을 정밀하게 조율하기 위해 다양한 동기화 방식(Sync Mode)을 사용합니다. 각각의 방식은 네트워크 구성과 애플리케이션 요구 사항에 따라 적절하게 선택되며, 동기화 방식에 따라 통신의 응답성 및 정밀도가 달라집니다.

동기화 방식

Freerun

Freerun 모드는 슬레이브가 독립적으로 주기적으로 데이터를 수집하고 갱신하는 비동기 방식입니다. 마스터의 명령이나 외부 클럭 신호 없이 슬레이브가 자체적인 주기로 동작하며, 주로 비동기 작업에 적합합니다. 여러 슬레이브 간의 정밀한 동기화가 필요하지 않은 간단한 제어나 데이터 수집 애플리케이션에서 사용됩니다.

SM2

SyncManager는 EtherCAT 통신에서 데이터의 전송 타이밍을 조절하는 관리 메커니즘입니다. 그중 SM2SyncManager 2는 주로 출력 데이터의 동기화에 사용되는 채널입니다. 마스터가 슬레이브에 데이터를 전송하면 슬레이브는 SM2를 통해 적절한 타이밍에 데이터를 처리하게 됩니다. 이 방식은 주기적인 데이터 송수신이 필요한 환경에서 비교적 간단하게 동기화를 구현할 수 있는 방식입니다.

DC

DCDistributed Clocks 모드는 네트워크 내의 모든 슬레이브 클럭을 마스터가 제어하여 동기화하는 방식입니다. 마스터가 주기적으로 모든 슬레이브 클럭을 조정하여 정확한 동기화를 유지하며, 이를 통해 나노초 수준의 타이밍 조절이 가능합니다. 이러한 고정밀 동기화는 모션 제어, 고속 응답이 요구되는 제어 시스템 등에서 필수적입니다. 이 세 가지 동기화 방식은 각각의 애플리케이션 요구 사항에 맞춰 선택되며, 특히 DC 모드는 매우 높은 정밀도의 타이밍을 요구하는 경우 사용됩니다.

#### 동기모드에 따른 Noise 영향

Frame을 정상 수신

frame_normal.png

Jitter 발생

frame_jitter.png

SyncModeInfo
DC SyncJitter 영향 없음
SM2 Event ModeSM2 Event 에 의한 Slave 동작 타이밍이 불규칙해짐
FreeRun무관

Lost Frame 발생

frame_lost.png

SyncModeInfo
DC SyncSync0 Event 에 의해 Slave Task는 동작하지만 명령이 갱신되지 않으므로 이전 명령이 중복 실행됨
SM2 Event ModeSM2 Event 에 의한 Slave IRQ가 발생하지 않으므로, 슬레이브 Task는 동작하지 않음.
FreeRun무관