묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실무자가 알려주는 CANoe (For CAN 통신)
제어기 송신 기능 관련 질문
안녕하세요 강의 중 궁금한 점이 있어 질문드리게 되었습니다. 1. can 통신 과정에서 Canoe에서 계측 되는 Direction에서 Rx는 우리 제어기가 보내는 신호, Tx는 Canoe에서 임의로 쏴주는 신호 라고 이해했는데 맞는건가요?2. 또한, 메세지 송신 기능 중 하나의 예시로, 타이어의 온도 센서를 직접 실험실에서 시험하기 위해서는 Canoe로 해당 온도 센서 신호를 IG Block을 이용해서 쏴줌으로써 브레이크를 잘 제어하는지 시험하는 것으로 이해했습니다. 그렇다면, 실제로 타이어의 온도센서가 브레이크 관련 제어기와 하나의 can bus로 연결되어 can 통신을 진행하는 것인가요?3. 2번의 질문에서 타이어 온도 센서가 브레이크 관련 제어기와 can 통신으로 온도 정보를 주는 것이 아닌, 다른 통신(ex: serial 통신)을 진행한다면, CAN bus에 연결된 것도 아닌데, 제어기가 어떻게 IG Block으로 받은 can(센서) 신호를 인지하여 그에 따라 차후의 행위를 수행할 수 있는 것이죠? 항상 좋은 강의 감사드립니다.
-
미해결실무자가 알려주는 CANoe - CAPL과 Panel 기본 사용법
CAPL 스크립트 비공개
CAPL 스크립트를 만들어서 사용중입니다.혹시 코딩 내용을 비공개 상태로 공유하는 방법에 대해서 문의드립니다.
-
미해결STM32 CAN 통신
준비물 도움 요청
장비를 살 때 전선같은 경우는 별도의 키트들이 있을까요? 완전 초보라 다소 헷갈리는데 세트가 있다면 안내부탁드리며전선이나 전원 연결 방법 등의 정보도 한 번 다시 알려주시길 바랍니다.. 감사합니다.(장비 구입 중)
-
미해결UDS 진단통신을 통한 SW 업데이트(SW ReProgramming)
OTA 관련 기능 질문
안녕하세요, 마지막 강의에서 궁금한 점이 있어 질문을 드리게 되었습니다.OTA에서도 다운로드 순서를 말씀주셨는데, OTA 과정에서도 ECU Reset을 수행한다면, 해당 동작은 차량 시동을 끈(MCU off?) 후에 진행하게 되는 것인가요? 이중 메모리 구조를 이용할 때가 차량 주행 중에 SW Update 하기 위해서로 이해했는데, 그렇다면 SW Reprogramming 과정에서 ECU Reset은 주행 중에 가능한 것인가요?SW Update 이후의 A,B Swap을 MCU에서 수행한다고 이해했습니다. 해당 기능은 MCU가 Off(시동 OFF?) 후에 Swap이 진행되고, 다시 On(시동) 시키면, 새롭게 업데이트 된 SW가 담긴 메모리가 활성화 되는 것 일까요?기본적인 유선 통신 (SW Update)에서는 차량 정지 시에 진행한다고 들었는데, 시동 OFF/On 두 상태에서 SW Update가 가능한 것인가요? 마지막 부분까지 강의를 수강했는데, 지식을 쌓는데 큰 도움이 되었던 유익한 강의였습니다!욕심이지만,, 또 가능한 다른 강의도 open 하셔서 더 많은 부분을 배워갔으면 좋겠습니다!감사드립니다!
-
미해결UDS 진단통신을 통한 SW 업데이트(SW ReProgramming)
NM & Default Session 관련 질문
안녕하세요 NM 관련 Communication control 강의 및 마지막 Default Session에 대한 강의를 듣다 궁금한 점이 있어 질문드리게 되었습니다.NM 개념에 대해서 간략하게 설명해주셨는데, 서로 협력하는 제어기들 사이에서 NM 메세지를 보낸다고 이해했는데, 그렇다면 하나의 can 네트워크상에서 NM 묶음?이 여러 가지 있는 것으로 보면 될까요? [ex) 한 네트워크 상에서 제어기 A,B,C가 서로 협력하는 제어기면 -> NM_1 메세지를 서로 주고 받는 형식 / 제어기 D,E,F가 한 세트면 -> NM_2 메세지를 서로 주고 받는 형식]NM 메세지를 협력하는 제어기들 사이에서 로 보내지 않아서 협력하는 제어기들이 모두 꺼진 상태에서, 다시 제어기를 사용(On)하기 위해서는 방법이 어떤 것이 있을까요?마지막 강의 Default Session에 대하여 질문이 있는데, 전체적인 SW Update Sequence에서 (Non Default Session -> Default Session)으로 돌아가는 것을 방지하기 위해서 주기적으로 보이지는 않지만 Tester Present (0x3E) 서비스를 이용하고 있는 것으로 이해하면 될까요?마지막 강의에서 SW Update 전체 과정에서 처음 Extended Session 이후에 계속 Non Default Session 이었다면 마지막 부분에 Default Session으로 간단히 변경만 하면 기능을 회복(초기화)할 수 있다고 말씀해주셨습니다. 그렇다면 이전의 SW Update의 마지막 프로세스[Extended Session -> Communication Control (통신 on) -> Control DTC Setting (DTC Status Byte 업데이트 활성화)]의 경우에는 중간에 Default Session으로 어쩌다 변경되었을 것 이라는 가정 하에 진행한 부분이라고 생각하면 될까요? 그리고 그게 맞다면 S3 Timer로 인한 Timeout으로 인해 자동으로 Default Session으로 변경된 것일까요?다소 많은 질문을 드려 죄송합니다..항상 좋은 강의해주셔서 감사드립니다.
-
미해결UDS 진단통신을 통한 SW 업데이트(SW ReProgramming)
Control DTC Setting
안녕하세요. Control DTC Setting 강의를 듣는 과정에서 질문드릴 내용이 있어 말씀드립니다! 해당 Service를 사용하는 이유는 하나의 제어기 (ex: 엔진제어기)가 SW Update 동안에 주기적인 신호 및 정보들을 다른 제어기(ex: 자율주행 제어기)에게 송신하지 못하기 때문에, 다른 제어기가 이를 Error로 인식해서 SW Update 동안에는 DTC Status Byte를 Update하지 마라는 Service로 이해했습니다. 해당 파트 동영상 3:07 부분에서 엔진제어기가 신호를 보내지 못하면 자율주행 제어기 입장에서 Error로 판단한다고 하셨습니다. 이 때 차량의 고장상태를 확인할 때에 저는 엔진제어기가 신호를 보내지 못한 것이기 때문에 자율주행 제어기가 (ex:"엔진제어기가 지금 고장났어")와 같은 엔진제어기 관련 DTC가 발생할 것으로 생각했는데, 자율주행 제어기에서 고장이 발생했었다고 DTC 코드에 기록된다고 하셔서 이 부분 관련해서 궁금합니다! (아니면 혹시, "자율주행 제어기에서 엔진제어기로부터 신호를 받지 못해서, 이에 따라 본인의 동작을 하지 못한 부분에 대한 DTC로써 자율주행 제어기에서 고장이 발생했다" 라는 말씀으로 하신것일까요?)뒷부분에서는 Functional Address에서의 SPRMIB에 대해서 설명해주셨는데, 혹시 해당 비트를 사용하면 Positive response 응답은 없다고 하셨는데, 제어기 입장에서 Pending Response(NRC: 0x78) 후의 Positive Response를 응답할 수도 있는 것일까요? 이 부분은 OEM에 따라 상이한 부분인지, 아니면 무조건 Positive 면 응답을 하지 말라는 것일까요?항상 좋은 강의 감사드립니다.
-
해결됨UDS 진단통신을 통한 SW 업데이트(SW ReProgramming)
SW reprogramming 과정에서 질문
안녕하세요, SW Reprogramming 과정에서 궁금한 점이 있어 질문을 드리게되었습니다.Transfer Data (0x36) 과 Request Transfer Exit(0x37) 이후에 Routine Control Service (0x31)를 이용하여 다운로드가 정상적으로 진행되었는지 확인하는 과정에서 진단기의 결과값을 제어기에게 전달하는 2가지 방법에 대해 질문드릴 점이 있습니다.2가지 방법 중, 한가지는 Hex 파일의 마지막 2byte는 진단기의 Input들의 결과 값을 적어 보낸다고 하셨는데, 나머지 1가지 방법에서는 Parameter에 담아 보낸다고 하셨습니다. 그렇다면, 후자의 경우에는 Hex 파일의 마지막 2byte에는 결과 값이 적혀있는 것이 아닌, Data 값이 적혀있을 것으로 예상이 되는데, 혹시 이 상황에서는 제어기가 마지막 2byte를 결과 값으로 판단하고 그 2byte를 제외한 Input 값을 계산할 수도 있을까요? 아니면 Parameter에 실어 보낸 경우에는 제어기가 Hex 파일에 있는 모든 값을 Data 값으로 판단하는 것일까요?말씀주신 결과 값이 2byte라 하셨는데, 대부분 2byte로 사용하는 것일까요? 항상 좋은 강의 해주신 덕분에 많은 도움을 받습니다.감사합니다!
-
미해결UDS 진단통신을 통한 SW 업데이트(SW ReProgramming)
강의 자료 다운로드
강의 자료가 있으면 나중에 퀵하게 리뷰 시 좋을 것 같은데 아직 올라와 있지 않을 것 같습니다.준비되시면 올려 주시면 감사하겠습니다.
-
해결됨UDS 진단통신을 통한 SW 업데이트(SW ReProgramming)
Bootloader SW 관련 질문
안녕하세요, 강의 수강하면서 궁금한 점이 있어 질문드리게 되었습니다.Bootloader SW의 필요성에 대한 강의를 들으면서 하기와 같은 궁금점이 생겼습니다. 처음에 Debugger를 통해서 SW를 MCU Flash에 다운을 할 때에는 1개의 SW가 아닌 제어 & Bootloader SW로 총 2개의 SW를 개발해야 한다고 이해했습니다.여기서 궁금한 점이 해당 2개의 SW가 각각의 다른 영역을 가지고 있으니 각각의 SW를 따로 다운, 즉 Debugger를 통해 총 2번을 다운로드를(제어 SW 1번, Bootloader SW 1번) 수행해야 하는 건가요? 아니면, 작성된 SW Code를 빌드한 Hex 파일 1개에 2개의 영역을 알아서 구분하게 되어 있어서, 그냥 1번 다운로드를 하면 되는 것인지 추상적으로 느껴집니다,,1번가 비슷한 질문일 수도 있는데, 처음에는 Debugger를 통해서 다운로드를 해야 하는데, 처음의 MCU Flash에는 아무 것도 적혀있지 않은 상태인데 다운로드를 어떤 방식으로 수행하는 것일까요? (Debugger로 다운로드 시에는 아무 것도 적혀 있지 않으니 단순히 Write만 진행하는 것인가요?) (진단통신을 통한 업데이트 부분만 이해하다보니 헷갈리네요,,) (이후의 진단통신을 통한 업데이트 내용은 이해가 되었습니다!)항상 좋은 강의 감사드립니다.
-
미해결STM32 CAN 통신
uart1 인터럽트 관련
uart1 수신 인터럽트 테스트 중 질문이 있습니다.프로그램 실행하면 첫번째 그림과 같이 무작위 쓰레기값이 출력이 되고 그 이후 command입력시 두번째 그림과 같이 개행 없이 출력이 됩니다. 간혹 쓰레기값이 무한정으로 출력되는 경우도 있습니다.반면 강의자료에는 @b1t1*이 각각 개행되어 출력됩니다.1) WinIDT 프로그램 소스 확인해보니 @ct1* 과 같은 방식으로 커맨드 문자가 바뀐것 같은데 그게 맞나요?2) 프로그램 실행 시 쓰레기값이 출력되는 원인이 무엇인지, 커맨드 출력 시 개행이 되지 않는 이유가 무엇인지 질문드립니다.
-
미해결CAN 통신 - 자동차 신입이 알아야 할 모든 것
Error 프레임 보낼 때
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 1번 제어기가 passive 보내는데, 2번 제어기가 0을 보내서, bitstuffing rule을 어기지 않게 될 수 있는건 이해했지만, 만약 1번 제어기가 message id가 더 높은 경우에는 2번 제어기가 0을 보내지 못하기 때문에, 무조건 bit stuffing rule 위반에 의해 에러를 network에 보내는것 맞나요?
-
미해결CAN 통신 - 자동차 신입이 알아야 할 모든 것
E2E protocol을 사용할때 data frame에 crc와 counter 영역을 따로 둔다고 했는데 데이터 영역에 있는 crc와 메세지 프레임에 따로 CRC 영역이 있는데 그 둘간의 차이는 뭘까요...?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. E2E protocol을 사용할때 data frame에 crc와 counter 영역을 따로 둔다고 했는데 데이터 영역에 있는 crc와 메세지 프레임에 따로 CRC 영역이 있는데 그 둘간의 차이는 뭘까요...?
-
미해결STM32 CAN 통신
WinIDT 콘솔에 프린트 출력 안됨
WinIDT COM9 열고 CAN1 클릭 했는데 printf문이 출력되지 않습니다. 빌드 및 코드 다운로드는 정상 작동합니다. Baud Rate는 115200 양쪽 다 동일한 것 확인하였고, LED On/Off 코드는 정상작동합니다.
-
미해결STM32 CAN 통신
RCC 설정 (Clock설정)
안녕하세요 본 강의자료에서 사용한 STM32F446RE 보드에서RCC 클럭 셋팅을 HSE, Crystal/Ceramic Resonator로 할 수 있는 근거를 알고 싶습니다.해당 부분에 대해서 찾아볼 줄 몰라서 그런데 설명해주실 수 있으실까요?감사합니다.
-
미해결STM32 CAN 통신
TIM1은 APB2에 연결되어 있지않나요?
STM32F446RE에서 TIM1은 APB1이 아니라 APB2에 연결되어 있지않나요?
-
미해결CAN 통신 - 자동차 신입이 알아야 할 모든 것
D-sub 핀과 120옴 저항 질문드립니다
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요. 강사님 궁금한 점 질문드립니다. 앞 강의에서 D-sub 커넥터를 설명해주시고, 지금은 120옴 저항을 설명해주셨는데, 제가 인턴으로 근무하면서 'D-sub 커넥터'라고 언급하기보단 거의 모든 분들이 '120옴 저항'이라는 단어로 해당 핀을 언급하셨습니다. 그러다보니 헷갈려서 그러는데, 저항과 커넥터는 다른 것이지만, CAN통신 특성에 120옴 저항을 사용해야 하기 때문에 해당 저항 특성이 포함되어 있는 D-sub 핀을 사용하는 것이다 라고 이해하고 넘어가도 될까요?
-
미해결CAN 통신 - 자동차 신입이 알아야 할 모든 것
ERROR PASSIVE FRAME
안녕하세요 강사님CAN에러 처리-2.에러 감지 및 반응 강의를 듣다가 헷갈리는 부분이 있습니다.9분 40초 쯤에 제어기 하나가 passive error bit를 보내는 중간에 다른 제어기가 0을 보내면 error를 알리는 강도가 낮아진다고 말씀하셨는데다른 강의에서는 한 제어기가 메세지를 보내는 중간에 끼어들지는 않는다라고 하셨던 것 같습니다.어떤 순간에 예외적인 경우가 있는 건가요?
-
해결됨CAN 통신 - 자동차 신입이 알아야 할 모든 것
CAN wake-up 시퀀스에 대해
외부로부터 wake-up pattern이 버스바를 통해 트랜시버로 들어오면 바로 트랜시버는 wake-up상태가 되어 INH 핀이 활성화되는 것인가요??("wake-up pattern을 받으면 트랜시버는 바로 wake-up하여 INH 핀이 활성화된다"가 맞는 말일까요??) 트랜시버를 wake-up하기 위해1)wake-up pattern을 트랜시버에 인가2)INH핀 활성화3)MCU 켜짐4)MCU로부터 트랜시버의 정확한 operating mode를 지정하기 위한 STB_N, EN 시그널 활성화이 시퀀스로 진행되는 것인지 궁금합니다.
-
미해결STM32 CAN 통신
CAN transceiver
STM32F429ZI를 사용하여 따라해볼려고 합니다.CAN transceiver를 사야할까요?? 그리고 CAN transceiver 어떤 모듈을 사야하나요?4page 왼쪽 그림의 것으로 사려고하는데구매하신 것 이름 좀 알려주시면 감사하겠습니다.인터넷 검색하다보니 비슷한 것이 있긴하던데https://smartstore.naver.com/thproduts/products/9495059078?NaPm=ct%3Dm2r4cje0%7Cci%3Dca48771f2bd08d6cefd839354bf0426b6be1ceaa%7Ctr%3Dslsl%7Csn%3D7948124%7Chk%3D5766a3f7f2f4c9823bc92840cae206a17f940797&nl-query=CAN+Transceiver해당 모듈 TJA050을 사도 될까요?
-
미해결CAN 통신 - 자동차 신입이 알아야 할 모든 것
통신 타이밍을 비교하는 시점
통신 타이밍이 맞지 않을 경우 Tseg1, Tseg2을 조절하여 타이밍을 맞춘다고 하셨는데자신의 보내는 타이밍이 정확한지 확인하려면다른 ECU에서 데이터가 전송되어야타이밍 비교가 가능할 것이라고 생각합니다. 제가 알기로는 여러개의 ECU 중하나의 ECU만 데이터 전송이 가능하나고 앍고 있고예외 적인 상황읜 CAN ID를 비교하는 arbitration 영역에동시에 보낼 수 있다고 알고 있습니다. 그러면 arbitration 영역에서 타이밍을 비교한 후Tseg1, Tseg2을 이용해 타이밍을 맞추는 것인지확인 부탁 드립니다. 간단하게 얘기해서 이 통신 타이밍을 비교하는 시점이arbitration 영역에서 하는지 Data 영역에서 하는지궁금합니다!