인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

nookk님의 프로필 이미지

작성한 질문수

UDS 진단통신을 통한 SW 업데이트(SW ReProgramming)

Control DTC Setting

작성

·

84

1

안녕하세요.

Control DTC Setting 강의를 듣는 과정에서 질문드릴 내용이 있어 말씀드립니다!

 

해당 Service를 사용하는 이유는 하나의 제어기 (ex: 엔진제어기)가 SW Update 동안에 주기적인 신호 및 정보들을 다른 제어기(ex: 자율주행 제어기)에게 송신하지 못하기 때문에, 다른 제어기가 이를 Error로 인식해서 SW Update 동안에는 DTC Status Byte를 Update하지 마라는 Service로 이해했습니다.

 

  1. 해당 파트 동영상 3:07 부분에서 엔진제어기가 신호를 보내지 못하면 자율주행 제어기 입장에서 Error로 판단한다고 하셨습니다. 이 때 차량의 고장상태를 확인할 때에 저는 엔진제어기가 신호를 보내지 못한 것이기 때문에 자율주행 제어기가 (ex:"엔진제어기가 지금 고장났어")와 같은 엔진제어기 관련 DTC가 발생할 것으로 생각했는데, 자율주행 제어기에서 고장이 발생했었다고 DTC 코드에 기록된다고 하셔서 이 부분 관련해서 궁금합니다! (아니면 혹시, "자율주행 제어기에서 엔진제어기로부터 신호를 받지 못해서, 이에 따라 본인의 동작을 하지 못한 부분에 대한 DTC로써 자율주행 제어기에서 고장이 발생했다" 라는 말씀으로 하신것일까요?)

  2. 뒷부분에서는 Functional Address에서의 SPRMIB에 대해서 설명해주셨는데, 혹시 해당 비트를 사용하면 Positive response 응답은 없다고 하셨는데, 제어기 입장에서 Pending Response(NRC: 0x78) 후의 Positive Response를 응답할 수도 있는 것일까요? 이 부분은 OEM에 따라 상이한 부분인지, 아니면 무조건 Positive 면 응답을 하지 말라는 것일까요?

항상 좋은 강의 감사드립니다.

답변 2

1

존버매니아님의 프로필 이미지
존버매니아
지식공유자

2번 질문은 저도 생각해보지않은 이슈인데 좀 알아봐야겠습니다.. 솔직히 모르겠네요..

1

존버매니아님의 프로필 이미지
존버매니아
지식공유자

안녕하세요 질문 주신 내용은 제가 대강의 예시를 든 것이고 구체적이고 정확한 예시가 아니긴 한데요.

제가 표현을 애매하게 한 거 같습니다.

예시의 상황에서는 "엔진 제어기가 캔 메세지를 보내지 않는다"라는 dtc가 뜰텐데요. 근데 dtc 기록은 제어기마다 각자 하는거니까 이 기록이 자율 주행제어기에 기록될 것입니다.

제가 "자율 주행제어기에서 고장이 발생했었다"라고 얘기한건 자율 주행제어기가 고장 났다는 의미가 아니라, 엔진제어기 통신 관련 dtc가 자율주행제어기에 기록돼있다는 의미로 설명한거였습니다.

근데 아래와 같이 말씀하셨는데 이것도 충분히 가능한 시나리오입니다.

"자율주행 제어기에서 엔진 제어기로부터 신호를 받지 못해서, 이에 따라 본인의 동작을 하지 못한 부분에 대한 DTC로써 자율주행 제어기에서 고장이 발생했다"

이 부분은 자율주행제어기 sw 개발자가 고장감지하는 로직을 어떻게 구현했냐에 따라 달라질겁니다

 

nookk님의 프로필 이미지
nookk
질문자

아 그렇군요! 감사합니다!

nookk님의 프로필 이미지

작성한 질문수

질문하기