나는 일반적으로 '자동차 사람'이 아니기 때문에 여기에 도움을 줄만큼 충분히 설명 할 수 있기를 바랍니다.
OBD-II 장치로 메시지를 보낼 때 테스트 한 대부분의 차량에서 하나의 응답을받습니다. 그러나 분명히 하나 이상의 ECU 칩이 장착 된 자동차의 경우 각 차량에서 응답을받습니다. 예를 들어, ECU 칩이 3 개인 차량에 01 0C
PID 명령 을 보내면 일반적으로 매우 유사하지만 여전히 다른 3 개의 응답을받습니다.
01 00
명령은 차량의 지원의 PID를 상태 4 바이트를 반환하도록되어 있지만,이 또한 4 각 ECU 바이트 반환 - 다른 사람은 갖고있는 것 같다 동안 완벽하게 몇 가지에 플래그 오프로 4 바이트 구체화되고 하나 소수의 플래그가 켜져 있습니다 (지금까지 이러한 플래그는 항상 '기본'응답에 포함 된 플래그 인 것처럼 보이지만 이것이 항상 해당되는지 확실하지 않습니다).
예:
SENT: 01 00
RECEIVED:
00 BF BF AC D3 - This response has the most binary flags turned on
00 98 18 80 11 - 8 flags on here
00 98 18 80 13 - 9 flags on here
마지막 두 줄은 첫 번째 줄에도 플래그가 지정된 플래그로 구성되지만 3 줄에는 2 줄에없는 추가 플래그가 하나 있습니다.
명령을 보낼 때 들어야하는 '기본'칩으로 자격을 갖춘 단일 ECU가있을 수 있으며 CAN ID 마스크 / 필터를 사용할 수 있음을 이해합니다. 내가 필요한 것들에만주의를 기울이십시오.
문제는 : '주의 ECU'에주의를 기울여야합니까, 아니면이 모든 반응이 똑같이 중요합니까? 타겟팅해야 할 기본 항목이있는 경우 '가장 중요한'항목을 결정하기 위해 보낼 수있는 명령이 있습니까?
차량 테스트 :
2011 Chevy Cruze [2 ECUs]
2015 BMW M5 [3 ECUs]
2015 Range Rover Autobiography [3 ECUs]