application
-
dbc 병합application 2026. 3. 16. 10:53
시작하기 전에 포르쉐 타이칸 CAN 데이터에서 요-레이트 신호 찾기 :: hsl's tsmaster 사용기, 포르쉐 타이칸 CAN 데이터에서 횡가속도 신호 찾기 :: hsl's tsmaster 사용기 에서 opendbc/opendbc/dbc at master · commaai/opendbc에서 다운로드 받은 dbc 파일들을 사용했다고 이야기 했다. dbc 파일들이 5개 있었다. 여러 메시지/신호들이 다른 이름으로 여러 dbc 파일들에 중복되어 있었다. TSMaster에 dbc 파일들을 임포트하니 중복된 메시지/신호들이 마지막에 임포트된 dbc 파일의 정의로 대체되었다. 내가 원하는 메시지/신호 정의를 사용할 수 없었다. dbc 파일들에서 메시지/신호들을 선택하여 내게 필요한 dbc를 만들 필요가 생겼..
-
blf & dbc --> mdf or csv 변환application 2026. 3. 10. 12:18
시작하기 전에 blf & dbc --> mdf 변환 :: hsl's tsmaster 사용기에서 blf 파일에서 dbc 파일에 정의된 신호들을 선택하여 mdf 파일을 생성하는 프로그램을 개발의 요점들을 설명하였다.디렉토리를 선택하면, 그 디렉토리에 있는 모든 blf 파일들을 표시하여 사용자가 선택할 수 있도록 하고, 선택된 파일들을 변환하여 csv 파일들을 생성하는 기능을 추가하였다. 사용법파일 입력blf 파일을 파싱할 dbc 파일을 선택한다.단일 파일을 변환할 것인지 디렉토리를 변환할 것인지 선택한다.파일 혹은 디렉토리를 선택한다.디렉토리를 선택한 경우, 파일 목록에서 변환할 파일들을 선택한다.파싱 버튼을 클릭한다. blf 파일에서 일정 크기를 읽는다. 일정 크기는 설정 탭의 "BLF 파싱 크기"에서..
-
blf & dbc --> mdf 변환application 2026. 3. 8. 15:04
시작하기 전에 일이라는 것이 결정들의 연속이다. 엔지니어링도 그렇다. 측정과 연산 기술의 발전으로 감/경험에 기반한 결정들이 데이터 기반 결정들로 대체되고 있다. 최근에 데이터 기반 결정이 적용되는 영역이 빠르게 넓어지고 있다고 느낀다. CAN 데이터를 mdf 파일로 저장하는 방법 문의를 점점 더 많이 받는다. blf 파일과 dbc 파일을 입력으로 받아 mdf 파일을 생성하는 간단한 프로그램을 클로드와 만들었다. 그 방법을 설명한다.개요blf vs. mdf메시지 파싱하기blf에서 메시지 읽기mdf 파일로 저장하기코드프로그램결론 blf vs. mdfCAN 데이터는 주로 blf 파일로 저장된다. blf는 메시지 기반이다. 프레임들은 수신된 순서대로 타임스탬프와 함께 파일에 저장된다. 특정 신호의 시간에 따른..
-
바이브 코딩으로 진단기 만들기application 2026. 1. 19. 13:20
시작하기 전에 "hsl's tsmaster 사용기" 블로그를 시작할 때(2024년 7월)는 마땅한 용어가 없어서 'ai의 도움을 받아 하는 코딩'이라고 길게 이야기를 했는데, 이제는 '바이브 코딩'이라는 용어가 자리를 잡은 것 같다. '바이브 코딩으로 진단기 소프트웨어를 만들 수 있지 않을까?'라는 생각이 들었다. 바이브 코딩 초창기에는 pdf 파일을 업로드할 수 없거나, 업로드 할 수 있는 파일의 크기가 작았다. 지금은 그런 제한이 없거나 사용에 불편하지 않을 정도로 크다. 그렇다면 투썬의 무료 라이브러리인 libTSCAN의 함수 설명 문서를 통째로 업로드하고, 이를 바탕으로 바이브 코딩을 할 수 있을까? 한다면 무엇 정도를 개발할 수 있을까? TSMaster의 Diagnostic(진단) 기능은 유용하..
-
diag_tester_FRDapplication 2026. 1. 19. 12:43
ESC Diagnostic Tester - Functional Requirement Document (FRD)개요ESC (Electronic Stability Control) 제어기를 진단하는 도구(Diagnostic Tester, 진단 시험기, 시험기)이다.ESC와 시험기는 UDS(Unified Diagnostic Services) 기반 통신 프로토콜로 통신한다.통신은 CAN (Controller Area Network)으로 한다.사용자는 GUI에서 서비스를 선택하여 실행할 수 있다.MVP(Minimum Viable Product) 접근법으로 단계별 개발을 진행한다.참조 문서esc_diag_hsl.md: ESC 진단 통신 스펙 libTSCAN_Library_Python_Description.md: TO..
-
포르쉐 타이칸 CAN 데이터에서 횡가속도 신호 찾기application 2026. 1. 6. 21:29
시작하기 전에 포르쉐 타이칸 CAN 데이터에서 요-레이트 신호 찾기 :: hsl's tsmaster 사용기에서 나는 요-레이트 신호를 찾았다. 횡가속도 신호를 찾는 방법을 설명한다. 개요횡가속도 계산비트 패턴 검색결론 횡가속도 계산횡가속도, 요-레이트, 차속(v) 사이에는 아래 관계가 있다. F = m * a = m * accel_lat = m * v^2 / R = m * v / R * v = m * yaw_rate * v네 바퀴 속도를 알고 있다. 일반적인 주행 중에 차속은 비구동륜 속도의 평균으로 볼 수 있다. 제동 중이 아니라면. 그런데 타이칸은 AWD이다. 나는 네 바퀴의 평균을 차속으로 하기로 한다. 요-레이트를 찾았던 blf 파일을 재사용할 것이고, 당시 주행은 일반적이다. CAN 데..
-
포르쉐 타이칸 CAN 데이터에서 요-레이트 신호 찾기application 2026. 1. 4. 00:49
시작하기 전에 타이칸(Taycan)은 포르쉐(Porsche)에서 만든 전기 스포츠 세단이다. 이 차의 CAN 데이터 파일에서 어느 메시지, 어느 위치, 몇 비트 크기로 요레이트 신호가 포함되어 있는지 찾아서 dbc 파일에 추가해 달라는 요청을 받았다. 그 방법을 설명한다. 개요내게 주어진 것들나의 작전: 비트 패턴 검색작전 실행CAN 리버스 엔지니어링 연장 개발결론 내게 주어진 것들타이칸을 주행하며 CAN 데이터를 측정할 수 있다.타이칸에서 측정한 CAN blf 파일네 바퀴 속도 (WSFL=wheel speed front left, WSFR=wheel speed front right, WSRL=wheel speed rear left, WSRR=wheel speed rear right) 신호들의 정의가..
-
비트 패턴 검색application 2026. 1. 3. 22:00
🔍 Bit Pattern Search - Technical Reference Guide개요비트 패턴 검색은 CAN 버스의 원시 데이터(BLF 파일)에서 알려진 기준 신호(Reference Signal)와 유사한 패턴을 가진 비트 조합을 자동으로 찾아내는 기술입니다. DBC 파일 없이도 신호를 역추적(Reverse Engineering)할 수 있는 핵심 기술입니다.1. 원시 CAN 데이터의 구조1.1 BLF 파일의 실제 모습CAN 버스에서 수집된 원시 데이터는 다음과 같은 형태로 저장됩니다:시간(s) 채널 메시지ID DLC 데이터 (Hex)----------------------------------------------0.000 0 0x123 8 01 23 45 67..
-
IDS - 다채널: 데이터 처리 코드 변경application 2025. 11. 26. 15:43
asc 파일에서 IDS의 칩입 판정 기준들을 계산한다.¶CAN 채널이 여러 개인 경우의 IDS를 만들어 본다.이전에 작성한 IDS는 CAN 채널이 1개인 경우에 해당한다.(채널, 메시지 아이디) 조합을 기준으로 화이트 리스트가 필요하다.침입 감지 기준값들도 (채널, 메시지 아이디)를 기준으로하는 데이터 구조로 변경이 필요하다.asc 파일을 입력하면 (채널, 메시지 아이디)별로화이트 리스트를 작성하고,각 메시지 아이디별로 dlc 기준값을 저장하고,각 메시지 아이디별로 침입 감지를 위한 기준값을 계산하여계산 결과를 pickle 파일로 저장한다.수동으로 계산 값을 변경할 경우를 대비하여.계산 결과를 xlsx 파일로 저장한다.xlsx를 pickle 파일로 변환하여 저장한다. # importfrom pathlib..
-
IDS - 다채널application 2025. 11. 26. 15:42
시작하기 전에 이전에 작성한 IDS( 침입 감지 시스템 (IDS: Intrusion Detection System) :: hsl's tsmaster 사용기)는 CAN 채널이 1개인 경우에 해당한다. 이 IDS를 변형하여 CAN 채널이 여러 개인 경우에 해당하는 다채널 IDS를 내나름대로 만들어본다. 개요(채널, 메시지 아이디) 조합을 기준으로 화이트 리스트를 만든다. 이전에는 메시지 아이디만을 기준으로 화이트 리스트를 만들었다.) 침입 감지 기준값 (DLC: Data Length Code, 메시지 전송 주기의 최소값)들도 메시지 아이디만을 기준으로 하는 구조에서 (채널, 메시지 아이디)를 기준으로하는 구조로 변경이 필요하다. 기존 데이터 처리를 위한 파이썬 코드를 변경한다. TSMaster에서 실행..