CANopen 통신 SDO 설정 Troubleshooting Guide 및 해결 방안
페이지 정보
작성자 최고관리자 댓글 0건 조회 9,662회 작성일 23-11-21 15:22본문
1. SDO란?
SDO는 NMT 상태가 OP(Operation)와 Pre-OP 상태 모두 제어 가능합니다.
SDO는 주로 파라미터 셋팅 및 테스트 용도로 사용됩니다.
사용자가 드라이버에게 600+Node ID로 데이터를 보내게 되면 드라이버는 사용자에게 580+Node ID로 회신됩니다.
2. SDO 데이터 구조
SDO는 ID / Command / Object / index / data의 데이터 구조를 가지고 있습니다.
Byte 0의 경우 사용되는 어드레스 타입에 따라 Byte 0에 들어가는 값은 다음과 같습니다.
Command | Function | Type | Data Length |
2F | Setting | M->S Request | 1byte |
2B | Setting | M->S Request | 2byte |
27 | Setting | M->S Request | 3byte |
23 | Setting | M->S Request | 4byte |
40 | Read | M->S Request | 0byte |
3. SDO 에러 코드
SDO 데이터를 잘못 전송했을 경우 클라이언트에게 에러 메시지를 보냅니다.
SDO 에러코드에 대한 형식
: ID / Command : 80 / Object / index / error-code 형식입니다.
자주 발생하는 error-code 종류와 아래와 같습니다.
No. | 에러 코드 | 내용 |
1 | 0601 0000h | 접근이 지원되지 않는 Object 입니다. |
2 | 0601 0001h | 쓰기만 가능한 Object 입니다. |
3 | 0601 0002h | 읽기만 가능한 Object 입니다. |
4 | 0602 0000h | 존재하지 않는 Object 입니다. |
5 | 0604 0041h | PDO에 매핑할 수 없는 Object 입니다. |
6 | 0604 0042h | 매핑할 개체의 수와 길이가 PDO 길이를 초과합니다. |
7 | 0609 0011h | 서브 인덱스가 존재하지 않습니다. |
8 | 0609 0030h | 매개 변수 값(데이터 값)이 잘못되었습니다. ( 쓰기 전용 ) |
9 | 0609 0031h | 매개 변수 값(데이터 값)이 너무 높게 기록되었습니다. ( 쓰기 전용 ) |
10 | 0609 0032h | 매개 변수 값(데이터 값)이 너무 낮게 기록되었습니다. ( 쓰기 전용 ) |
댓글목록
등록된 댓글이 없습니다.