본문 바로가기

분류 전체보기48

OTA(Over-The-Air) 업데이트 완벽 정리: 자동차 펌웨어 무선 업데이트 실무 가이드 OTA(Over-The-Air) 업데이트 완벽 정리: 자동차 펌웨어 무선 업데이트 실무 가이드OTA란? 들어가며 2010년대 자동차 업데이트 방식:고장 발생 → 정비소 방문 → 진단기 연결 → 수동 업데이트 → 떠남 (시간 낭비) (수동 작업) (불편함)2020년대 자동차 업데이트 방식:고장 발생 → 인터넷 연결 → 자동 다운로드 → 무선 업데이트 → 끝 (집에서) (백그라운드) (OTA 자동)실무자라면 OTA에 대해 많이 들어봤을거예요아니? 매일 듣고 매일 평가할 수도 있죠그만큼 중요하고, 그만큼 친숙합니다테슬라 오너라면 또 친숙하실거예요주기적으로 소프트웨어가 새로 나오고 자동차에서 원격으로 OTA업데이트를 통해 차량 소프트웨어를 업데이트하죠ISO.. 2026. 1. 9.
히스테리시스(Hysteresis) 완벽 정리: 불안정한 경계값을 안정화시키는 기법 히스테리시스(Hysteresis) 완벽 정리: 불안정한 경계값을 안정화시키는 기법히스테리시스(Hysteresis)란?들어가며자동차 ECU는 계속해서 경계값 판정을 합니다.엔진 온도 95°C 이상이면 "과열"? 배터리 전압 12V 이하면 "저전압"? 연료 게이지가 25% 이하면 "경고등"?이렇게 '단순한' 임계값(Threshold) 설정은 실무에서는 재앙이 되게 됩니다.왜냐하면 센서 신호는 경계값 근처에서 미세하게 진동하거든요.온도가 94.9°C ↔ 95.1°C를 오가며 진동하면, 당연히 상태창에선 "정상"과 "과열"이 계속 바뀌겠죠.그럼 결론적으로 과열 경고등이 계속해서 깜빡일 거예요.그럼 엔진 제어가 불안정해지게 되고 앞서 말했듯 재앙이 됩니다.이게 바로 이전 편에 얘기했던 채터링의 문제와 이어집니다... 2026. 1. 8.
채터링(Chattering) 완벽 정리: 원인, 문제점, 디바운싱 실무 가이드 채터링(Chattering) 완벽 정리: 원인, 문제점, 디바운싱 실무 가이드채터링이란? 디바운싱이란? 들어가며자동차 ECU는 버튼, 스위치, 센서 신호를 수백 밀리, 보통은 10미리초마다 읽죠.운전자가 버튼을 한 번 누르면, ECU는 하나의 신호를 받아야 합니다.그런데 현실은 달라요.메커니컬 버튼을 누르는 순간, 접점(Contact)이 떨리는데 이럴경우 신호가 0-1-0-1-1-0-0-1 처럼 요동칩니다.이게 바로 채터링입니다.채터링은 단순해 보이지만, 자동차 소프트웨어에서는 심각한 문제를 만들죠.버튼 한 번 누르기가 여러 번 누르기로 인식될 수 있다.CAN 메시지 중복 수신. 센서 오류 판정. 이런 문제들이 쌓이면 차량 제어의 안정성을 떨어뜨리게 됩니다이 글에서는 채터링의 원인, 차량 시스템에 미치는.. 2026. 1. 7.
Git Fork와 Merge: 협업 개발의 필수 개념 Git Fork와 Merge: 협업 개발의 필수 개념Fork란? Merge란?들어가며자동차 ECU 펌웨어 팀이 코드를 개발하는 상황을 생각해 볼게요각각 파트가 나뉘어서 협업한다면?상황: 팀 프로젝트Main Repository (원본):- 엔진 제어 코드- 변속기 제어 코드- 섀시 제어 코드팀 구성:- 엔지니어 A: 엔진 부분 개발- 엔지니어 B: 변속기 부분 개발- 엔지니어 C: 섀시 부분 개발문제:모두가 같은 Repository에서 작업하면?→ 코드 충돌→ 실수로 덮어쓰기→ 원본 손상해결:Fork (각자 복사본 만들기) + Merge (작업 완료 후 합치기)흐름:원본 Repository ↓ (Fork)엔지니어 A의 복사본, 엔지니어 B의 복사본, 엔지니어 C의 복사본 ↓ (각자 개발)완성된 .. 2026. 1. 5.
LIN통신 vs CAN통신 : 데이터 크기와 선택 기준 LIN vs CAN: 데이터 크기와 선택 기준LIN통신? CAN통신?들어가며LIN과 CAN에 대해서 알고 계실거예요....맞죠?근데 왜 나눠지는지? 그리고 큰 차이점은 뭔지에 대해 개념을 잡고자 합니다. 자동차에 통신 버스가 2개 이상 필요한 이유는 뭘까요?상황: 자동차 ECU 네트워크고급 기능 (메인 ECU들):- 엔진 제어: 복잡한 데이터 필요- 변속기 제어: 빈번한 통신- 섀시 제어: 실시간 데이터간단한 기능 (주변 ECU들):- LED 제어 (켜기/끄기만)- 버튼 입력 (누르기/안 누르기)- 간단한 센서 (온/오프)문제:모두를 같은 버스(CAN)에 연결하면?→ 버스 대역폭 낭비→ 비용 증가→ 복잡도 상승해결:CAN: 복잡한 데이터 (빠르고, 크고, 신뢰할 수 있음)LIN: 간단한 데이터 (느려도 .. 2026. 1. 2.
ISO-TP : CAN으로 큰 데이터를 보내는 방법 자동차 통신 프로토콜 5부: ISO-TP – CAN으로 큰 데이터를 보내는 방법ISO-TP란?들어가며오늘은 CAN통신에서 데이터를 보내는 방법에 대해 알아볼텐데요프레임이 긴~~~ (Multi) 데이터를 보내려면 어떻게 해야할까요?'맞아 ?' -> '응', '아니' 정도의 말만 하다가 이제는 "내 주소는 서울특별시 관악구야"와 같은 긴 말을 하고 싶거든요그럴 때 사용하는게 ISO-TP라고 비유할 수 있을것 같아요제가 TP로 인해서 고생을 많이 했던 경험이 있어요진단기 한테 First Frame을 받고 Flow Control을 응답하지 않아 Second Frame을 송신하지 않았고,그로 인해 TimeOut되는 현상으로 인해 애를 먹었던 적이 있습니다hardConding을 하는 과정에서 휴먼에러였죠 ....위.. 2025. 12. 31.