CANOpen 프로토콜에서 PDO 와 SDO 의 역할은 무엇입니까? 예를 들어 첨부 파일의 데이터 사전 테이블은 PDO 또는 SDO 입니다.

SDO 는 객체 사전의 인덱스 및 하위 인덱스를 사용하여 CAN 노드의 객체 사전에 액세스합니다. 읽고 쓸 수 있습니다.

PDO 는 지수와 분류 지수를 사용하지 않습니다. 데이터 컨텐트 전송을 위해 두 can 노드 간에 합의된 객체 사전 인덱스입니다. 데이터를 받은 후 PDO 는 해당 객체 사전 색인의 값을 직접 읽고 씁니다.

SDO (일반) 에는 인덱스 및 하위 인덱스가 필요하므로 한 번에 최대 4 바이트를 전송할 수 있고 PDO 는 한 번에 최대 8 바이트를 전송할 수 있습니다.

예를 들어, 0x20 1 (노드 ID = 1) 는 cobOuID 를 0x20/kloc 로 설정하여 0x6040, 하위 인덱스 0x00 을 전송하는 데이터 사전 객체에 PDO 매핑을 통해 매핑됩니다

확장 데이터:

CANopen 장치 간의 통신은 다음 세 가지 통신 모드로 나눌 수 있습니다.

마스터/슬레이브 모드에서 CANopen 장치는 슬레이브 장치라고 하는 다른 장치로부터 데이터를 송수신하는 마스터 장치입니다. NMT 프로토콜은 마스터/슬레이브 모드를 사용합니다.

클라이언트/서버 모델은 SDO 계약에 정의되어 있습니다. SDO 클라이언트는 대상 사전의 인덱스 및 하위 인덱스를 SDO 서버로 전송하여 필요한 데이터에 대한 하나 이상의 SDO 패키지 (대상 사전에서는 인덱스 및 하위 인덱스의 해당 내용) 를 생성합니다.

생산자/소비자 모델은 하트비트 및 노드 보호 프로토콜에 사용됩니다. 생산자가 메시지 생산자에게 보낸 데이터와 동일한 생산자의 데이터를 여러 메시지 생산자에게 보낼 수 있습니다.

두 가지 종류로 나눌 수 있습니다: 푸시 모드: 생산자는 자동으로 데이터를 소비자에게 보냅니다. 풀 모델: 소비자는 생산자가 데이터를 보내기 전에 요청 메시지를 보내야 합니다.