실차기반 CAN 데이터를 수집한 후 Vector CANdb++을 사용하여 Value Table을 정의할 때 궁금한 점이 있습니다. 방향지시등을 나타내는 데이터가 0x3C1 이라고 할 때, Messages를 TurnSignal로 address는 0x3C1이라고 정의했습니다. 그 후 시그널들을 정의하려고 합니다. 예를 들어 CAN 데이터가 19 D0 00 40 10 00 00 00 이렇게 수집되었을 경우 첫 바이트 19는 CRC를 의미하고 두 번째 바이트 D0 은 카운터를 의미하고 4, 5번째 바이트는 방향지시등 상태를 나타낼 경우 시그널에 CRC와 카운터, 방향지시등 상태를 Value Table를 어떻게 작성해야 할까요? CRC는 CRC 바이트 제외하고 나머지 7바이트를 CRC/8 SAE를 사용하는 것으로 확인했습니다. 두 번째 바이트 카운터는 0x00, 0x10, 0x20, 0x30, ... , 0xD0, 0xE0에서 다시 0x00으로 돌아가서 방향지시등 스위치의 상태가 변하였을 경우 카운터가 0x10 씩 증가하는 카운터를 가졌습니다. 4, 5번 째 바이트는 0x00, 0x00 일 때 좌우측 방향지시등을 점등하지 않은 Normal 상태 0x40, 0x10 일 때 좌측 방향지시등을 점등한 상태 0x00, 0x41 일 때 우측 방향지시등을 점등한 상태입니다. 나머지 바이트는 사용하지 않는 바이트입니다. 이러한 데이터를 가지는 Value Table을 어떻게 정의할 수 있을까요 특히, signal에서 value table을 선택할 때 1개의 Table만 선택할 수 있어서 방향 지시등 상태를 나타내는 2개의 바이트를 하나의 value table로 정의할 수 없을까요?
실제 차량에서는 ECU들이 서로 상호간에 data를 주고 받는데 그중에 1개의 ECU의 ID를 Copy해서 Periodic하게 Data를 보내는 경우 실제 ECU에서 보내는 Data와 Intercept된 Data가 혼재되어 Can 라인상에 돌아다닐 것 같은데.. 맞나요? 그럴 경우 Error가 발생할 수도 있지 않을까요?
안녕하세요 강의를 듣고 CAPL 을 실제로 사용해보다가 궁금한 점이 있어서 문의드립니다. 현재 CANalyzer 프로그램을 사용하고 있습니다. CANalyzer configuration 파일에 DBC 파일을 등록해놓고, CAPL 에서 DBC에 있는 메시지를 선언한뒤, 특정 베리어블 값이 변했을때 선언한 메시지의 특정 시그널 값을 바꾸고 송신하는 코드를 짜봤습니다. 실제 차량에서 해당 코드를 통해 메세지를 송신하면 바로 에러프레임이 뜨면서 해당 도메인 로깅이 중단되거나, 1회 송신은 되는데 실제 차량 동작은 안하고, 2회째 송신하면 에러프레임이 뜨면서 해당 도메인 로깅이 중단됩니다. 혹시 무슨 상황인지 유추가 가능하신지 문의드립니다.. 혹시 DBC를 Configuration 파일에 등록하고 CAPL에서 메시지를 선언해도 해당 메시지의 모든 시그널값을 선언한다던지, 스타트 비트 값이나 CRC 값을 계산한다던지의 추가적인 작업이 필요한건가요..? 제가 짰던 코드는 아래와 같습니다. variables { message 0x111 SWRC_FD; // 'SWRC_FD' 메시지 선언 } on sysvar e_var::e_var { // 시스템 변수 e_var가 변경될 때 호출되는 이벤트 핸들러 if (@sysvar::e_var::e_var == 1) { // e_var의 값이 1로 변경된 경우 SWRC_FD.Audio_CustomSw = 1; // 'Audio_CustomSw' 시그널 값을 1로 설정 output(SWRC_FD); // 메시지 전송 write("SWRC_FD message sent with Audio_CustomSw = 1"); } }
안녕하세요 강사님 강사님 덕분엔 정말 막막하던 Can 장비 사용법 관련해서 물꼬가 트였고 어쩌면 제가 현실적으로 들을 수 있는 강의중에 최고라고 생각합니다. 자동차 업계에 입사한지 1년이 조금넘은 신입 매니저입니다. 제가 현업에 있으면서 차량(트럭, 버스)에 직접 네트워크 인터페이스 장비를 꽂아서(OBD단자 or CM) CAN BUS를 관측해야하는 경우가 있는데요. 이럴 경우에는 강의중에 말씀하신 DBC파일이 있어야할텐데 해당파일은 차량을 개발한 연구소에 문의를 해서 공유 받아다가 봐야할까요? 그리고 추가 질문으로 CM에 커넥터를 물리고 싶으면 OBD 케이블 외에 별도의 커넥터 케이블이 있나요?
안녕하세요 현재 제어기 DID 관련하여 CAPL 작성하고 있는데 질문이 있습니다. UDS Protocol로 Read DTC ALL 을 한 후에 나오는 데이터가 현재 약 900byte가 나오는데 해당 데이터를 System variable에 저장해서 Panel을 통해 표출하고 싶습니다. Read 한 값의 data가 많다 보니 this.byte() 함수로 다 저장하기가 어려운데 어떻게 처리하는게 좋을까요? 감사합니다.
제가 Network Interface 장비를 가지고 있지 않기에, 라이선스가 없습니다. 그래서 canoe 17을 설치하고 이미지에 있는 화면과 같이 'No license for canoe 17 could be found' 저 창이 떴을때 'Continue'를 클릭해서 Canoe를 체험판?처럼 사용하고 있는데 괜찮은건지 궁금합니다.
강의 잘 들었습니다. CANoe 다룬 지 얼마 안되어서 혼자 독학하려니 정보가 없어서 어려웠는데 정말로 많은 도움이 되었습니다. 하지만 실무에 적용하려고 하니 몇 가지 어려움이 있어서 질문 드립니다. 특정 조건들을 만족하면 특정 메시지가 Sleep이 됩니다. 그 메시지가 나오지 않을 경우 임의의 sysvar의 값인 sleepmessage = 1; 을 넣고 패널에 불빛으로 넣고 싶은데 방법이 있을까요? AliveCount, CRC가 변화 하지 않은 경우를 사용하면 될 것 같기도 한데 잘 모르겠습니다. 예를 들면 스마트키로 락을 했을 때에 제어기에서 나오는 메시지가 죽는 것을 확인 해야 하는데 trace나 graphic에서는 육안으로 확인 가능하지만 capl에서 그걸 어떻게 해야 할 지 모르겠습니다. 메시지가 죽는 것을 확인하고 다음 스텝으로 언락했을 때에 메시지가 살아나는 것을 확인하는 제공되는 기능같은 게 존재할까요?
안녕하세요. 수강생입니다. CAN Frame 중 CRC Field의 CRC초기값을 변경하고싶습니다.(Default로 아마 0x00이나 0xFF로 되어있을 것 같네요..) CANOE 상에서 이러한 변경이 가능한지 여쭤봅니다. 가능하다면 방법도 좀 알려주시면 감사하겠습니다. +. 강의 잘 듣고있습니다. 감사합니다.
VN1640A, nxp s32g 보드 사용자입니다. (답변이 언제 달릴지 몰라 잡다한 질문 몰아서 올립니다^^;;) canoe 로 계측을 시작하면 네트워크 장비 내부적으로 무슨 변화가 생기나요? (이 질문을 드리는 이유는 계측 start 버튼을 누르면 네트워크 버스 상태와 관련된 can 신호들이 계측이 되는데요. 계측을 하지 않으면 이 신호는 발생하지 않기 때문입니다. 전기공학적으로 너무 당연한 일인지도 모르겠지만, 그런쪽으로 지식이 짧아 잘 이해가 가지 않습니다. 또한, 그 버스 상태 can 신호들은 주요 계측 대상도 아니어서 오히려 번거롭기만 하네요. 물론, 가르쳐 주신 대로 버퍼에 안 담기게 할 수는 있지만, 해당 rx can 신호 자체를 막을 수는 없네요.) node 의 의미가 정확히 무엇인가요? (컴퓨터 네트워크에서 얘기하는 end point 와는 다른 것 같고, 하나의 보드내에서도 여러 node 가 존재할 수도 있는 개념 같은데요. 조금 더 보충 설명 해주시면 고맙겠습니다.) IG 창에서 column 삭제는 어떻게 하나요? (trace 창 처럼 column configuration 이 없고 오로지 항목 추가만 있는 것 같은 느낌이네요.) 이상입니다. p.s.) 예전에 someip 관련해서 canoe 를 사용할 때는 완전 막막했는데, 이런 강의가 인프런에 올라와서 넘 반갑네요. 일주일도 안되어서 계측, 송신 모두 가능하다니 인프런, 그리고 강사님 모두에게 감사 드립니다. 다만, 하나 건의사항으로 FD 프레임 관련해서 최초 canoe network 설정시 조금 더 강조해서 설명해 주시면 고맙겠습니다. FD 의 경우에는 data rate 까지 정확하게 맞추지 않으면 계측, 송신 모두 안되었습니다. (sample point 는 아무렇게 해도 무방한 것 같습니다.) 심지어 use database setting 을 체크를 해도 FD 에는 유효하지 않았습니다. dbc 파일 자체에 적혀 있는 network attribute 내용들을 보고 확인하여 맞춰주지 않으면 안되었습니다. FD 관련해서 이런 부분을 꼭 언급해 주시면 고맙겠습니다.(일반 프레임은 웬만한(?) 설정으로 잘 계측이 됩니다.)
안녕하세요. 존버매니아님 수업을 듣고 기초적인 CANetowrk 구성 및 제품간 연동을 해보았습니다. 너무도 감사드립니다. 다만, 현재 LIN 으로도 CAPL과 연계하여 제어하고 싶습니다. 현재, 통신 ldf 파일을 만들고 CAPL 코드를 구현하려고 하니 CAN으로 하는 경우와 조금 다른 듯합니다.(제가 잘몰라서... 뭔가 매칭이안되는듯한.) CAPL Code와 연동하여 LIN을 제어할 수 있는지 궁금합니다. LIN과 연계하여 CAPL 구성하는 강의도 만들어 주셨으면 꼭 수강하겠습니다. 감사합니다.
안녕하세요? 저는 real CAN 제어기가 없습니다. dbc 화일을 강사님이 가르쳐 주신대로 만들고, Online mode, simulated bus로 세팅하고 , start를 눌러서 TRACE window에서 데이터를 보고 싶은데 아무것도 안 나옵니다. 제어기 없이 simulated bus 로 Trace window에서 데이터를 받아보는 방법을 알려 주시면 감사하겠습니다.