분류 전체보기
-
xlsx2dbctip 2025. 8. 22. 16:10
시작하기 전에 현대자동차는 협력사와 CAN 메시지/신호(매트릭스, matrix) 변경을 협의할 때 xlsx 파일을 이용한다고 한다.변경된 CAN 매트릭스를 툴에 적용하려면 dbc 파일이 필요하다.xlsx의 변경 내용을 수동으로 dbc에 입력하는 것은 불편하다. 귀찮은 일이다. 입력하고 확인하는데 시간도 많이 든다. 꼼꼼하게 하는데 에너지도 많이 든다. 실수가 있을 수도 있다.xlsx를 dbc로 만드는 파이썬 스크립트를 작성하였다.시간, 노력을 아끼는데 도움이 되기를 바란다. 개요xlsx 구조 살펴보기xlsx2dbc.py 작성하기실행 결과 (생성된 dbc) xlsx 구조 살펴보기xlsx의 구조는 아래 그림과 같다. Message: 메시지 이름ID: 메시지 아이디, 헥스 (string)DLC [byte]: ..
-
트레이스창에서 메시지 필터 걸기analysis 2025. 8. 19. 14:41
트레이스창에서 특정 메시지 아이디만 보거나(pass) 차단(block) 할 수 있다. 그 방법을 설명한다.트레이스창을 연다.트레이스창의 상단에서 필터(깔때기 모양) 단축 버튼을 클릭한다. 필터 설정창이 열린다.왼쪽 아래에서 "Filter Enabled"를 체크한다.Pass 필터를 선택한다. (혹은 Block 필터를 선택한다.)마우스 우클릭으로 메뉴를 띄운다. Add raw CAN frame을 선택한다. 필터 행이 추가된다.필터 행에서 Channel을 선택하고 Identifier를 입력한다.Add CAN frame from DB 메뉴를 선택하면, 필터를 적용할 메시지 아이디를 입력하는 대신 데이터베이스에서 메시지를 선택할 수 있다.트레이스창의 필터는 메시지 아이디 범위로 필터할 수 없고 개발 메시지 아이디..
-
YouTube: 미니프로그램에서 엑셀 파일 다루는 방법tip 2025. 8. 19. 14:14
미니프로그램에서 엑셀 파일을 다루는 방법MiniProgramReadExcel - YouTube 설명 내용미니프로그램에서 엑셀 파일의 데이터를 읽어서 프로그램에 사용할 수 있다. 예를 들면 전송해야할 메시지 아이디와 데이터를 엑셀 파일에 저장해두고, 미니프로그램에서 엑셀 파일을 읽어서 전송한다. 이렇게 하면 코드 수정없이 엑셀 파일 변경으로 전송 메시지를 변경할 수 있다. 내가 배운것미니프로그램 라이브러리를 사용하는 방법 미니프로그램 라이브러리 사용법 :: hsl's tsmaster 사용기async 전송과 sync 전송의 차이
-
YouTube : 하드웨어 설정에서 하는 수신 메시지 필터카테고리 없음 2025. 8. 19. 14:13
하드웨어 설정에서 하는 수신 메시지 필터YouTube: Global Rx Filter설명 내용하드웨어 설정에 수신 메시지 필터가 있다.이 방법은 CAN 콘트롤러 칩에 있는 마스크(Mask)와 필터를 설정한다. 내가 배운것하드웨어 설정으로 필터를 하면 PC 프로세서에 연산 부담이 없다. UDS 메시지만 보기 - 메시지 아이디 필터 :: hsl's tsmaster 사용기나 트레이스창에서 메시지 필터 걸기 :: hsl's tsmaster 사용기에서 소개한 방식은 TSMaster를 이용하여 소프트웨어적으로 필터를 하는 방식이다. PC 프로세서에 부담이 있다.TSMaster를 2개 열어서 Virtual Device를 이용하여 한 쪽은 송신으로 다른 한 쪽은 수신으로 사용할 수 있는 것을 배웠다.미니프로그램으로 ..
-
UDS 기반 제어기 프로그래머 개발 - libTSCANapplication 2025. 8. 11. 16:23
시작하기 전에 ts_can_flash_programmer 개발 - libTSCAN :: hsl's tsmaster 사용기 에서 토선의 libTSCAN.dll (libTSCAN은 공짜다. 토선 하드웨어는 공짜가 아니다.)을 이용하여, Texas Instrument의 C2000 패밀리 마이크로콘트롤러 칩을 CAN으로 프로그램밍하는 PC용 툴을 개발했다.ts_can_flash_programmer는 오늘날 자동차 산업에서 사실상 표준인 UDS (Universal Diagnostic Service)를 따르지 않는다. libTSCAN을 이용하여 UDS 표준에 따라 CAN 통신으로 프로그래밍을 하는 PC용 툴을 만들어본다.ts_can_flash_programmer는 C로 짰다. (ai가 짰지만) 내가 익숙한 파이썬으..
-
판넬에서 이미지로 차의 주행 방향을 표시하는 방법analysis 2025. 7. 27. 19:57
시작하기 전에 아래 포스트들에서 판넬 기능으로 출력용 GUI와 입력용 GUI를 작성하는 방법을 설명하였다. 판넬로 출력하는 방법 - 관계도 :: hsl's tsmaster 사용기 판넬로 사용자 입력 받는 법 :: hsl's tsmaster 사용기 차 그림을 이용하여 차의 주행 방향을 표시할 수 있으면 좋겠다는 요청을 받았다. 내가 구현한 방법을 설명한다. 개요판넬에 차 이미지 출력을 위한 콘트롤 추가하기YAW_RATE(CAN 신호)에서 calc.heading_angle(시스템 변수) 구하기heading_angle 만큼 차 이미지를 회전하기 실행결론 판넬에 차 이미지 출력을 위한 콘트롤 추가하기메인 메뉴/ Simulation/ Panel/ Add Panel로 새 판넬을 추가한다. 혹은 기존 ..
-
ts_can_flash_programmer 개발 - libTSCANapplication 2025. 7. 26. 16:55
시작하기 전에 TI (Texas Instrument)에 C2000 패밀리 마이크로콘트롤러 칩이 있다. 이 패밀리의 어떤 칩들은 CAN/ CAN-FD를 지원한다.TI에서 제공하는 기본 부트로더는 CAN 통신으로 플래시 메모리 프로그래밍할 수 있는 기능을 제공한다. TI는 이때 사용하는 can_flash_programmer.exe라는 PC용 앱을 제공한다.이 프로그램은 PEAK사의 CAN 인터페이스 하드웨어만 지원한다. 나는 TOSUN사의 하드웨어만 갖고 있다.ti.com에서 can_flash_programmer의 코드(can flash programmer)와 문서( CAN Flash Programming of C2000™ Microcontrollers (Rev. A))를 찾았다. 이 둘을 기반으로 토선 하..
-
vscode에서 깃헙 코파일럿과 코드 개선카테고리 없음 2025. 7. 26. 16:25
promptg_iTransmitDelay = 10; 의 10을 #define 으로 설정하도록 해주세요.responseI'll help you replace the hardcoded value 10 with a #define constant. Let me first examine the file to understand the context better and then make the changes.Read ts_can_flash_programmer_v1_1.c, lines 1 to 100Now I need to see the part where the value 1 is also used for f28p65x to add both defines. Let me check the area around lin..
-
claude.ai와 코드, 문서 분석 및 코드 작성application 2025. 7. 26. 15:07
CAN Flash Programmer Porting ProjectPrompt:내가 첨부할 파일들은 TI(Texas Instrument)사의 칩을 CAN 통신을 통해서 플래시 프로그래밍하는 도구인 can_flash_programmer의 코드 파일들입니다.can_flash_programmer.cppf021_DownloadImage.hf021_DownloadImage.cppPCANBasic.h이 앱은 PEAK사의 CAN(Controller Area Network) 하드웨어를 이용하여 USB를 통해서 CAN 통신을 합니다.나는 토선(Tosun)사의 CAN 하드웨어를 이용하는 이와 동일한 프로그램을 개발하려고 합니다.이 프로그램의 이름은 ts_can_flash_programmer로 하겠습니다.이 프로그램 개발을 ..
-
배터리 셀 정보 표시 대시보드 만들기카테고리 없음 2025. 7. 26. 13:09
시작하기 전에 아래의 요청을 받았다.배터리 셀들의 정보를 한(one) CAN 메시지(CELL_INFO)로 받는다.메시지에는 셀 아이디 (idCell) 신호와 셀의 상태 신호들(s1, s2, s3, s4)이 있다.단일 아이디의 메시지에 여러 셀들의 정보를 전송한다. 일종의 멀티플렉서이다. idCell은 4 비트 신호다. 0 .. 15 까지 16개이다.상태 신호는 s1, s2, s3, s4로 4개이다. 실제로 전압, 온도 등이다. TSMaster 그래픽스창에 셀 별로 상태 신호 (총 16 x 4 = 64개)들을 셀 별로 출력할 수 있는가? 가능하다. 결과는 아래 그림과 같다. TSMaster의 그래픽스창은 시스템 변수를 표시할 수 있다는 사실을 이용하여 아래와 같이 하였다.파이썬 미니프로그램으로 64개의..