본문 바로가기
자동차 임베디드 SW

DTC

by 존버매니아.임베디드 개발자 2022. 6. 8.
반응형

DTC 마다 스냅샷 데이터 구성이 달라질 수 있는지 아니면 모든 DTC들의 스냅샷 데이터 구성이 같은지?


스냅샷에 대하여

서로 다른 DTC 3개가 있다. 1, 2, 3 이라고 가정

각각 진단하면서 각각의 Status Mask 값이 실시간으로 업데이트 될 것임.

질문1. 이때 스냅샷 데이터를 저장하는 조건이 무엇인가? DTC 마다 제각각? 모두 같음? 표준에서정의? 제조사에서 정의?질문2.  스냅샷 데이터를 저장하는 공간이 DTC 마다 개별적으로 따로 있는게 아니라 스냅샷 데이터를 저장하는 공간이 사전에 할당이 돼있고, 조건이 만족되면 해당 메모리에 스냅샷을 하나씩 채워가는 개념인건가?

 

질문3-1.  질문2에서, 만약 DTC마다 개별적 공간이 따로 있는거라면, 스냅샷 저장 조건 때 마다 그 영역을 최신 걸로 Update 해서 덮어 씌우는 개념인가?

 

질문4. 질문2에서 만약 DTC마다 개별적 공간이 따로 있는게 아니라면, 어떤 식으로 관리되는건지?

공간 사이즈가 제한되어있고, 최신 데이터 발생할 때 마다 쓰는 개념인건가?

이 때, 동일 DTC가 스냅샷 저장되야 될 상황되면 어떻게 됨? 이전에 쓰여있던 데이터는 날아가는개념인건가? 

표준에서는 DTC마다 최대 스냅샷 몇개 저장될 수 있는지 정의하고있는거 같은데 맞나??

만약 공간의 사이즈 제한돼있다면 사이즈 가득차면 가장 예전에 저장된 데이터는 날아가는개념인건가??

 


참고)표준에 적힌 멘트에 의하면.. 동일 dtc의 snapshot 또 저장해야되는 상황인 경우, 원래 있던걸 남기고 새로운걸 저장안하거나.  원래있던거 지우고 최신걸 저장하거나 하는데. 그건 제조사가 룰 정하는거라고 함.

 

질문5) 암튼 이렇게 저장된 스냅샷 데이터들.. 제어기 전원 off 하면 날아가는거임? clear 서비스 외에 얘네 지우는 조건이 있는지?

 


Permanent DTC에 대해서 궁금한거

질문1  ClearDiagnosticInformation 를 하면 snapshot 정보 다 지운다는데. 헷갈리는게 뭐냐면 

confirmed 된 DTC는 NVM에 저장이되고, 이것은 clear 서비스로 지워지지 않는다고 함.

내가 의문인건 nvm에 저장되는 데이터가 confirmed 된 DTC 번호만 저장이 되는건가. 스냅샷 데이터도 nvm에 저장이 함께 되는건가? 

 

또 의문이 뭐냐면 이러한 confirmed dtc는 "reportDTCWithPermanentStatus" sub function 으로 읽을때만 의미가 있는건가 아니면 다른 서비스에서도 의미있는건가?

무슨말이냐면 예를들어 1 이라는 DTC가 있는데 이게 confirmed 됐음. 이 상태에서 clear 서비스를 요청함.

그러고나서 이 dtc에 대해서 읽었을 때, nvm에 정보가 여전히 남아있으니까 데이터 clear 안 된것 마냥 read 되는건지

아니면 nvm에 남아있든 아니든 clear된건 clear된거니까 이제 clear된 상태로 읽어지는건지?

nvm에 저장이 됐는지 어쨋는지는 오직 위의 sub function 때만 의미를 갖는건지?

근데 만약 위 서비스에서만 의미갖는거면.. nvm에 스냅샷 데이터 같은건 저장이 안되는건가? 

컨펌드 되서 저장될 때 저장하는거 dtc랑 dtc status mask 말고 없음?

 

질문2. confirmed 된 상태에서 또 confirmed 되면? 저장이 어떻게되는거임? 이 confimred 저장공간은 DTC마다 개별적으로있는건가.  아니면 다같이 쓰는 공용공간이 있는건가?

reportDTCWithPermanentStatus 호출해서 dtc목록 전달받을때.. 컨펌드가 여러번 된 dtc 있으면

response message에 dtc 번호 여러개 포함되는건가??


Extended Data에 대하여

질문1 . 이거 저장되는 공간은 DTC Status Mask 처럼 DTC마다 다 개별적으로 따로 갖고 있는거 맞음?

질문2. 궁금한게 DTC Snapshot 찍을 때 스냅샷 찍을 당시의 extended data. 라고 따로 같이 저장하지는 않는건가?

질문3. permanent DTC 저장이랑 얘랑은 전혀 무관한건가?

 


 

DTC Snapshot Record를 언제 저장할건지 조건은 누가 어떻게 정하는가?
표준에서 언제 저장하라고 정의하진 않는다.
제조사와의 협의사항

DTC 정보를 nvm에 저장하는 조건은 누가 어떻게 정하는가?

DTC 정보를 NVM에 Write 할 때 무엇무엇을 저장하는건가? (dtc nvm에 저장할 때 스냅샷과 익스텐디드 데이터는 항상 함께 저장하는건가?)
만약 그렇다면 스냅샷을 저장하는조건이랑 dtc를 nvm에 저장하는 조건은 항상 같은건가?

Extended Record 는 어떻게 관리되는거지??
이건 Dtc 마다 다 개별적으로 있는건가? 이건 다 개별적인 nvm 공간에서 관리되는건가?

그리고 그거랑 별도로 스냅샷 찍어서 nvm저장할 당시의 extended record를


Snapshot Record는 항상 NVM Write를 하는가 아니면 ram 변수에만 담기도 하는건가?


반응형