Difference between revisions of "CanServo/Protoco/T2-Message"
Jump to navigation
Jump to search
(Created page with "== 개요 == * 여러 개의 T-Message 가 섞이는 경우, 수신 측에서 분석하기가 힘듭니다. * 완벽에 가까운 조건은 다음과 같습니다. ** 발신...") |
(→개요) |
||
| (4 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
== 개요 == | == 개요 == | ||
* 여러 개의 T-Message 가 섞이는 경우, 수신 측에서 | * 여러 개의 T-Message 가 섞이는 경우, 수신 측에서 분석 실패가 발생할 수 있습니다. | ||
** CRC16만으로는 16 비트 초과의 변질을 감지할 수 없습니다. | |||
* | * 완벽을 위한 필수 조건은 다음과 같습니다. | ||
** 발신자 구분 = CAN ID를 통해서 구분 | ** 발신자 구분 = CAN ID를 통해서 구분 | ||
** 메시지마다 증가하는 시퀸스 | ** 메시지마다 증가하는 시퀸스 | ||
| Line 10: | Line 11: | ||
** 체크섬 | ** 체크섬 | ||
*** 발신자 구분이 가능하면 CRC 16, 구분이 불가능하면, CRC32 사용 권장. | *** 발신자 구분이 가능하면 CRC 16, 구분이 불가능하면, CRC32 사용 권장. | ||
* Format | |||
** Message = L(2), crc(2 or 4), msg body(L byte) | |||
** Packet = packet body(max 7), tail byte (begin/end flag, packet seq: 4 bit, msg seq: 2 bit) | |||
*** packet seq 의 최상위 bit는 toggle flag 자리를 사용 | |||
Latest revision as of 08:28, 30 April 2026
개요
- 여러 개의 T-Message 가 섞이는 경우, 수신 측에서 분석 실패가 발생할 수 있습니다.
- CRC16만으로는 16 비트 초과의 변질을 감지할 수 없습니다.
- 완벽을 위한 필수 조건은 다음과 같습니다.
- 발신자 구분 = CAN ID를 통해서 구분
- 메시지마다 증가하는 시퀸스
- 패킷마다 증가하는 시퀸스
- 실제 전달하는 메시지의 길이
- 체크섬
- 발신자 구분이 가능하면 CRC 16, 구분이 불가능하면, CRC32 사용 권장.
- Format
- Message = L(2), crc(2 or 4), msg body(L byte)
- Packet = packet body(max 7), tail byte (begin/end flag, packet seq: 4 bit, msg seq: 2 bit)
- packet seq 의 최상위 bit는 toggle flag 자리를 사용