PDO와 Mapping

이더캣EtherCAT 네트워크에서 PDOProcess Data Object와 SDOService Data Object는 데이터를 주고받는 두 가지 주요 통신 방식입니다. 이들 각각은 서로 다른 데이터 유형과 전송 속도를 요구하는 다양한 애플리케이션의 필요를 충족시키기 위해 설계되었습니다. PDO는 주로 실시간 데이터 전송에 사용되는 반면, SDO는 주로 설정 및 파라미터 데이터 전송에 사용됩니다.

PDO

PDO는 고속의 주기적 데이터 전송을 위해 설계된 통신 방식입니다. 이 방식은 주로 실시간으로 지속적인 데이터를 전송하는 데 사용되며, 산업 자동화와 모션 제어와 같은 응용 분야에서 요구되는 짧은 주기 시간과 빠른 응답성을 제공하는 데 최적화되어 있습니다.

PDO의 주요 특징

주기적이고 실시간 데이터 전송

  • PDO는 데이터를 주기적으로 전송하며, 이더캣 네트워크 내에서 최소한의 지연으로 데이터가 전달됩니다.
  • 이로 인해 모터 제어, 센서 데이터 수집 등 실시간 제어가 필요한 애플리케이션에서 효과적입니다.

마스터의 주기적 요청 없이 전송

  • PDO는 마스터가 데이터를 요청하지 않아도 주기적으로 전송되며, 설정된 주기에 따라 자동으로 데이터가 갱신됩니다.
  • 마스터가 송신 프레임을 생성하면, 슬레이브 장치는 해당 프레임에 실시간 데이터를 실어 보냅니다.

빠른 데이터 전송을 위해 데이터 헤더 생략

  • PDO는 데이터 헤더 없이 전송되어 네트워크 대역폭을 절약하고 전송 속도를 높입니다.
  • 필요하지 않은 추가 정보 없이 순수 데이터만을 전송하기 때문에 데이터 전송 효율성이 극대화됩니다.

PDO의 동작 방식

  • PDO는 미리 설정된 매핑 테이블에 따라 송신될 데이터의 종류와 위치가 고정됩니다.
  • 슬레이브는 이 매핑 테이블을 참조하여 마스터로부터 전달받은 프레임에 데이터를 실어 보내고, 마스터는 이 데이터를 일정 주기로 수신합니다.
  • 이때 슬레이브가 매핑된 데이터를 프레임에 자동으로 실어 보내므로, 설정된 주기 동안 매우 효율적으로 데이터를 주고받을 수 있습니다.

PDO 매핑

PDO 매핑Process Data Object Mapping은 이더캣 네트워크에서 PDO를 통해 주고받을 데이터를 특정 위치에 할당하여 마스터와 슬레이브 간에 효율적인 실시간 통신을 가능하게 하는 설정 작업입니다. PDO 매핑을 통해 각 슬레이브가 주기적으로 전송하는 데이터의 구조를 설정하고, 필요한 데이터만을 효율적으로 주고받을 수 있습니다. 이를 통해 이더캣 네트워크는 데이터를 지연 없이 빠르게 전송할 수 있습니다.

PDO와 PDO 매핑의 역할

PDO는 고속의 주기적 데이터 전송을 위해 사용되며, 각 PDO는 여러 데이터 항목들을 묶어 관리합니다. PDO 매핑은 이 데이터 항목들을 특정 메모리 위치에 할당하는 작업으로, 마스터와 슬레이브 간의 데이터 전송 속도와 효율성을 높이기 위해 최적화되어 있습니다.

PDO 매핑의 주요 개념

매핑 엔트리

PDO는 여러 개의 데이터 항목으로 구성되며, 각 항목은 매핑 엔트리Mapping Entry라고 불립니다. 매핑 엔트리는 슬레이브의 특정 메모리 주소에 할당되며, 이 주소를 통해 데이터가 전송됩니다.

오브젝트 디렉토리

각 슬레이브는 오브젝트 디렉토리Object Dictionary라는 데이터베이스를 가지고 있으며, 이 디렉토리에 모든 매핑 엔트리 정보가 저장되어 있습니다. 오브젝트 디렉토리는 데이터의 인덱스와 서브인덱스를 사용하여 각 데이터 항목에 접근합니다.

동적 매핑과 고정 매핑

PDO 매핑은 동적Dynamic 또는 고정Static으로 설정할 수 있습니다. 고정 매핑은 미리 설정된 데이터 구조를 사용하고 변경할 수 없는 반면, 동적 매핑은 PDO의 데이터를 필요에 따라 실시간으로 구성할 수 있어 유연한 데이터 전송이 가능합니다.

PDO 매핑의 동작 방식

PDO 매핑 설정

  • 마스터는 슬레이브의 오브젝트 디렉토리를 통해 필요한 데이터 항목을 선택하고, 각 항목의 인덱스와 서브인덱스를 설정하여 매핑합니다.
  • 각 매핑 엔트리는 슬레이브의 특정 메모리 위치에 할당되며, 데이터 전송 시 해당 위치에 접근하여 데이터를 읽거나 씁니다.

PDO 매핑 테이블 구성

  • 각 슬레이브는 PDO 매핑 테이블을 통해 전송할 데이터를 정리합니다. PDO 매핑 테이블은 데이터의 인덱스와 서브인덱스뿐만 아니라 각 항목의 크기(예: 8비트, 16비트, 32비트 등)를 포함하여 구성됩니다.
  • 이 매핑 테이블에 따라 마스터와 슬레이브는 데이터를 빠르게 주고받을 수 있으며, 전송 중 데이터의 위치를 참조하여 필요한 정보를 실시간으로 전송합니다.

데이터 전송

  • 마스터는 PDO를 통해 설정된 매핑 테이블에 따라 각 슬레이브와 데이터를 주기적으로 교환합니다.
  • 슬레이브는 매핑된 메모리 위치의 데이터만을 읽거나 쓰므로, 실시간 데이터를 빠르게 전송할 수 있습니다.