본문 바로가기

전체 글

(35)
CANoe - MATLAB/SIMULINK 연동 1. CANoe 환경 설정 - 해당 프로그램 설치(SIMULINK에서 CANoe관련 라이브러리를 제공함) - 해당 버튼 활성화!!!!!! 2. Simulink 환경 설정 - MATLAB에 해당 명령어(mex -setup C++) 입력(Visual Studio가 설치되어 있어야 함) - 맨 마지막 부분은 솔직히 잘 모르겠음... 그냥 CANoe 관련된건 체크 3. CANoe/SIMULINK 연동하기 - SIMULINK에서 CANoe 라이브러리 확인 가능 - CANoe I/O에서 message & signal & System variable 관련 I/O block들이 존재 - CANoe block => Select message, 현재 열려 있는 cfg에 저장된 dbc와 연동됨 - Simulation을 위해..
CANoe - CAPL로 신호 생성하기 CAPL이란? - CAPL은 vector에서 개발한 프로그래밍 언어로, C와 유사함 - Event-driven 방식으로 작동 => Event에 따라 동작하는 방식 1. 생성할 신호 DBC에 추가하기 - signals와, signals를 담을 message, message를 받을 노드를 생성 - CAPL에서 직접 message를 만들 수도 있지만, 이 방법이 좀 더 직관적임(사실 나도 잘 모름..) CAPL코드 작성하기 - 수정된 dbc를 다시 cfg에 업데이트 함(Node Synchronization) - 이후 message를 발생시킬 Simulation Node 생성 - File을 누르면 CAPL코드를 만들 수 있음 - 원하는 이름으로 정하면 됨 - 확장자는 .can - Tx_SIM.can 파일이 추가..
CANoe -Panel 만들기 & Graphic, Data window Panel 만들기 - dbc를 통해 can data frame을 만들어도, 실제 하드웨어 장비가 없어서 신호는 초기값으로만 나옴 - 신호를 변경하기 위해서 우선 Pannel을 활용하고자 함 - Tool => Panel Designer 클릭 - Panel의 확장자명은 .xvp - 왼쪽에는 dbc에 정의된 data를 확인 가능 - 오른쪽 아래 Toolbox를 누르면 CANoe에서 제공하는 panel 라이브러리를 사용가능 - 오른쪽 Track Bar를 가운데 흰 보드로 drag & drop, 흰 보드에 Track Bar 생성 - message의 signal을 흰 보드에 Track Bar에 drag & drop - LCD Control에 display하고자 하는 signal을 각각 매핑, 해당 LCD Contr..
CANoe - 실행 & Trace window CANoe 실행 - cfg 파일을 열면 다음과 같은 화면을 확인할 수 있음 - Simulation Setup에서 Databases => Add => 만들어 논 dbc파일을 열기 - dbc 파일이 추가된걸 확인할 수 있음 - 첫 화면 파란 블록을 오른쪽 마우스로 클릭 => Insert Network Node 클릭 => 새로운 ECU가 추가된걸 확인할 수 있음 - ECU 오른쪽 마우스 클릭 => Configuration 클릭 => Network node에서 dbc에서 정의한 ECU로 변경할 수 있음 - dbc파일에서 Node synchronization으로도 ECU를 추가할 수 있음 - 해당 블록을 더블 클릭하면 원하는 윈도우를 현재 desktop에 띄울 수 있음 실행 - 먼저 Bus를 simulated B..
CANoe - DBC 만들기 예제 Message ※ DBC에서 셋팅해야 할 기본적인 사항들 1. Network Protocol 2. Network ECU 3. Network Message(ID, Name, Length(byte), Cycle, Rx&Tx ECU, signal, Layout) 4. Signal(Name, Length(bit), Factor, Offset, Min, Max) 1. CANoe 실행 - 경로에는 한글이 포함되면 안됨 - 확장자명은 cfg(DBC의 확장자명은 .dbc) - cfg에서 Tool => CANdb++ Editor 선택 ※ CANdb++에서 직접 생성할 수도 있음 - CABdb++에서 File => Create Database => DBC Template 선택(Template은 상황에 따라 달라질 수..
TRACE32 ROM(NOR & NAND) 에 다운로드 하기 off -> flash 메모리에 다운로드 진행 완료
Spring & Damper System 전달함수 만들기 With Simulink/MATLAB(2/2) - 2개의 Spring과 damper를 갖고 있는 System - 하나의 INPUT에 output이 2개(x1,x2)가 나온다 - System with Simulink - - 먼저 LiveScript로 System Parameter를 설정 - b1 & b2는 숫자 슬라이더를 이용해 값을 실시간으로 조절 가능 figure %%plot(x1,'--g',LineWidth=4) hold on plot(F,'b',LineWidth=4) hold on %%plot(x2,'--r',LineWidth=4) ylabel('Displacement [m]') xlabel('Time [sec]') title('Double Mass Spring Damper System Response') - simulink에서 to works..
Spring & Damper System 전달함수 만들기 With Simulink/MATLAB(1/2) 1. Time domain에 대한 System Function 2. System Function을 Laplace 변환을 통해 S-domain으로 변환한 Function 3. INPUT과 OUTPUT을 통해 얻은 Transfer Function - System with Simulink - % Define Model Parameters Sim_Time = 20; F = 1; M = 1; b =0.4; k = 1; sim('mass_spring_damper_transfer_function.slx'); figure plot(x,'-.g','LineWidth',4) hold on plot(F, 'b', 'LineWidth',4) ylabel('Displacement [m]') xlabel('Time [sec]')..