분류 전체보기12 Embeded system : NVM, EEPROM, Flash 차이점 현업에서는 NVM과 EEPROM을 두 용어를 혼용해서 많이 사용하고 있습니다. 저도 회의 들어 갈 때 마다 이게 맞나 싶어서 정리하게 되었습니다. NVM과 EEPROM은 모두 비휘발성 메모리(NVM: Non-Volatile Memory)를 의미하며, 전원이 꺼져도 데이터를 유지할 수 있는 저장 장치를 말합니다. NVM (Non-Volatile Memory) 이란?정의: 전원이 꺼져도 데이터가 유지되는 메모리 전체를 지칭하는 포괄적 개념입니다.종류:ROM (Read-Only Memory)Flash MemoryEEPROMMRAM, FRAM 등용도: 프로그램 코드 저장, 설정값 저장, 펌웨어 보관 등 벌써 감이 왔을 듯 싶습니다. 즉 NVM은 개념을 말하며 EEPROM은 NVM을 구현하는 종류라고 보시면 됩.. 2025. 5. 20. AUTOSAR : 입출력 변수의 형태 및 정의 AUTOSAR 스터디 2편입니다. 앞선 절에서 Compostion component에 대해 알아 봤다면, 본 포스팅에서는 Component 입출력 변수에 대해 작성했습니다. 이외에도 입출력 변수의 형태 및 종류에 대해서도 작성 해봤스니다. AUTOSAR 입출력 변수의 정의 AUTOSAR에서 결국 기능에 따른 composition component or component에 대한 정의가 되면 다음 스텝으로 해야 할 일이 있습니다. 뻔하지만 입출력에 대한 정의가 필요 합니다. 크기 입출력 형태의 정의는 R-PORT와 P-PORT로 정리 할 수 있습니다. 만양 CoreCtrl이 Component이고, 외부 컴포넌트로 받아오는 변수가 In_VehicleSpeed, 보내는 변수가 Out_ClampingFore,.. 2025. 5. 20. 자동차 산업 트랜드 : SDV 플랫폼 SDV 플랫폼은 소프트웨어 정의 차량을 개발, 배포, 관리하기 위한 통합 소프트웨어 및 하드웨어 인프라를 의미합니다. 본 글에서는 기존 자동차 산업의 트랜드와의 차이점에 대해서 개인적인 이해를 바탕으로 작성해 보겠습니다. SDV 플랫폼이란? SDV 플랫폼이 갖아야 하는 특징은 기존의 차량 구조와 달리, 전자 제어 유닛(ECU)마다 독립적인 기능으로 구동이 가능해야 합니다. 기존 시스템을 예로 들자면 제동 장치의 모터를 구동하기 위해서는 제동 ECU에서 생성된 신호로 제어가 됩니다. 즉 로컬 ECU가 상황을 판단하고 제어를 합니다. 반면 SDV에서는 최종 타켓을 중앙 CCU에서 생성을 하게 되고, 해당 모듈은 단지 actuator처럼 동작을 한다고 봐야 합니다. 쉽게 이야기 하면 예전에는 각자 팔다리가 .. 2025. 5. 15. AUTOSAR : Composition component 얼결에 AUTOSAR Platform을 공부해야 하는 상황이 생겼습니다. 늘 가져다 사용만 해왔는데, 이번은 이해를 해야 어느 정도 활용이 가능 할 것으로 생각되어 공부한 내용을 정리하고자 합니다. Composition Component란?생소한 개념입니다. 자동차 엔지니어들은 대부분 ASW component 만 고민을 해왔을 거라 생각됩니다. 우선 ASW의 정의와 Composition component의 정의를 통해 각 차이점을 확인 해 보겠스빈다. Application Software Component (SWC) : 실제 기능을 수행하는 소프트웨어 단위. 예: BrakeController, SpeedSensor 등 Composition Component : 여러 SWC들을 묶어서 하나의 상위 컴포.. 2025. 5. 14. 외란 관측기 (disturbance observer) 쉽게 접근하기 : Q필터와 리미터 외란 관측기에서 왜 Q 필터가 등장하고, 리미터를 적용해야 할까요? 실무적인 관점에서 Q 필터와 리미터의 중요성에 대해서 작성했습니다. 이론적으로는 별거 아닐 수 있지만, 실무에서는 가장 중요한 요소입니다. 외란 관측기에서 리미터란?오해가 없었으면 싶습니다. 개인 경험 상 제어를 잘하시는 분들은 가장 먼저 하는 부분이 리미터 부터 설계를 합니다. 내가 준 입력으로 인해 시스템이 망가지지 않도록 사전 안전 조치를 하고 제어를 대부분 합니다. 하지만 외란 관측깅서 리미터는 어떤 역할을 할까요? 앞서 말씀 드린 부분과 같습니다. 시스템에 타격을 주지 않도록 제어가 불가한 입력 값을 넣지 않도록 제한을 하는 역할을 합니다. 하지만, 일반적인 제어기에서 제어 출력을 제한하는 것과는 조금 다른 컨셉이 반영되어 .. 2025. 5. 12. [CANape]XCP on Ethernet 소개하기 자동차 ECU 개발에 있어서 디버깅과 데이터 모니터링은 뗄 수 없는 필수 과정입니다. 하지만 전통적인 CAN 기반 모니터링 방식에는 한계가 분명히 존재합니다. 이 포스팅에서는 "XCP on Ethernet"이라는 기술이 왜 필요한지, 그리고 실제로 어떻게 실무에 적용되는지에 대해 쉽고 구체적으로 설명해보겠습니다. XCP의 정의 XCP는 "eXtended Calibration Protocol"의 약자입니다. 이름에서 알 수 있듯, ECU 메모리에 접근하여 데이터를 읽거나 수정하는 프로토콜입니다. 주로 데이터 모니터링과 파라미터 보정(Calibration)에 사용되며, 이는 제어 시스템의 품질을 확보하고, 다양한 조건에서 시스템이 제대로 동작하는지를 확인하는 데 필수적인 절차입니다. 쉽게 말하면 다음과 같습.. 2025. 4. 29. 외란 관측기 (disturbance observer) 쉽게 접근하기 : 컨셉편 외란 관측기는 만능이 아닙니다. 다만, 회사 생활을 하면서 느낀 실무적인 접근 방법에 대해서 기술해 보고자합니다. 분명 효과가 있는 영역도 있고 없는 영역도 있습니다. 적용 시 실무적으로 중요하다고 생각 되는 부분에 대해서 작성했습니다. 개인 의견이고, 최대한 쉽게 쉽게 컨셉만 설명하고자 합니다. 완벽한 이론도 아니고 대략적인 컨셉 접근 방법이라고 보시는게 정신 건강에 좋습니다. 외란 관측기란? 무슨 과제만 하면 항상 나오는 제어기가 외란 관측기 입니다. 외란 즉 시스템에 예상하지 못한 값들에 대해서 관측을 한다는 뜻입니다. 어렵습니다. 무슨 말인지.. 그래서 개인적으로 곰곰히 생각해본 바로는 "시스템이 내가 설계한 대로 움직이지 않으면 모두 외란으로 취급 할 것이고, 시스템이 내가 설계한 대로 움직여.. 2025. 4. 26. 저역통과 필터 시간 지연에 따른 컷오프 주파수 구하기 저역통과 필터의 시간 지연(tdelayt_{\text{delay}}tdelay)은 필터의 컷오프 주파수(fcf_cfc)와 밀접한 관련이 있습니다. 만약 시간 지연을 약 20ms로 설정하려면, 다음 계산을 통해 컷오프 주파수를 결정할 수 있습니다.필터 시간 지연의 계산시간 지연은 필터의 차수와 응답 특성에 따라 다르지만, 1차 저역통과 필터(LPF)를 기준으로 계산해 보겠습니다. 1차 필터의 시간 지연은 다음과 같이 근사할 수 있습니다:tdelay≈12πfct_{\text{delay}} \approx \frac{1}{2 \pi f_c}tdelay≈2πfc1여기서:tdelayt_{\text{delay}}tdelay: 시간 지연 [초]fcf_cfc: 컷오프 주파수 [Hz]컷오프 주파수 계산시간 지.. 2024. 11. 24. Infineon JTAG 연결 확인 방법 인피니온 JTAG 연결이 되지 않아서 뻘짓이란 뻘짓은 다하다가 찾은 방법 공유 드립니다. 사실 ECU 다운로드 하다가 빈번히 실패를 하게 되어 원인을 찾아보니 대부분 JTAG 연결이 불안한 경우가 많았습니다. 불안한 경우를 개선 할 수는 없으나, 왜 다운로드가 되지 않는 지 정도는 확인이 가능합니다. Infineon JTAG 연결 상태 확인 방법 시스템 설정 창으로 먼저 들어간 다음, 장치 관리자를 통해 현재 Infineon JTAG이 연결되어 있는지 부터 확인 해야 합니다. 윈도우 키 + X장치 관리자 (M) 선택장치 관리자에서 하기 창이 나왔을 때, 범용 직렬 버스 컨트롤러 장치 내에 Infineon XXX Debug가 잡히지 않으면 ECU 다운로드는 시작도 할 수 없습니다. JTAG 인식이 되.. 2024. 11. 22. simulink signal builder 데이터 점 추가하는 방법 simulink에서 signal builder를 이용한 신호 생성 방법에 대해 기술했습니다. signal 상에서 데이터 점을 추가하는 방법에 대해 상세하게 기술했습니다.simulink를 사용하다 보면 시험 패턴을 만들기 위한 source는 많으나 실제 사용하기 어려운 경우가 많습니다. 필자의 경우 계단형 패턴을 만들어야 하는 상황에서 어려움이 있었습니다. signal builder 내 데이터 추가하는 방법 1. matlab prompt에서 simulink 실행2. simulink 블럭에서 source 실행 후 singal builder 선택3. signal builder에서 점 편집 3번 항목을 수행할때 마우스를 선 위에 올려 두고 shift + click을 하면 데이터 점이 추가됩니다. 별것 아니지만.. 2024. 5. 31. Reshape your data either using array 선형 회귀 해결 방법 LinearRegression 실행 시 발생되는 오류 메세지 해결 방법에 대해 기술했습니다. reshape 요청 시 해결하는 방법입니다. LinearRegression 오류 메세지아래의 실행 코드는 일반적인 2개 이상의 column 정보를 넣어서 선형회귀를 사용할때 사용하는 방법입니다. 하지만, 한개의 column 정보를 선형 회기 알고리즘에 적용하 경우에는 아래 처럼 에러메세지가 발생됩니다. Reshape your data either using array.reshape(-1, 1) if your data has a single feature or array.reshape(1, -1) if it contains a single sample. LinearRegression 오류 메세지 원인기본적으로 .. 2024. 5. 25. MAT 파일 Dataframe 변경 하는 방법 MATLAB에서 사용하는 데이터 파일인 MAT 파일을 파이썬에서 사용하는 Dataframe으로 변경하는 방법에 대해 소개했습니다. MAT 파일 Dataframe 변경 시 문제점파이썬에서 MAT 파일을 읽고자 했지만, 구글링을 해도 찾기가 어려웠습니다. 별다른 라이브러리에 대한 포팅 없이 깔끔하고 쉽게 포팅하는 방법에 대해 기술했습니다. 개발 환경은 colab 기준이며, scipy가 필요하지만 colab 상에서 설치 되어 있기 때문에 별도의 라이브러리 설치는 필요가 없습니다. 아래 코드를 보면, MAT 파일을 읽은 후 파일 형태를 보면 dict 파일로 설정되어 있습니다. dict 파일 기준으로 dataframe.from_dict를 사용했지만, 에러가 발생됩니다. MAT 파일 Dataframe 변경 방.. 2024. 5. 19. 이전 1 다음