MATLAB對bfl形式的CAN資料處理

2021-10-16 16:58:57 字數 938 閱讀 1958

在汽車應用層軟體開發中經常會用到資料回灌,即將問題資料重新注入到模型中再重新**來尋找問題原因的方法。而問題資料經常是can資料的blf格式,如果想轉換成mat檔案的話之前最方便的方法是使用canoe的轉換工具轉成mat檔案。在matlab2019中新增加了blfread的命令,可以直接讀取blf檔案

命令為data1 = blfread (cur_filename , 2 , 'databas' , candb)

cur_filename是blf檔案的名字,2指的是channel,candb是dbc的名字,要把dbc放在同一資料夾內

生成的data中主要包含如下資訊:message 收到的時間,id, 名字

具體資料:十進位制,dlc如果等於8的話就是8個數字

訊號:放在乙個結構體內部,具體資料用dbc解析後的每個訊號值

具體**如下:

rawtimedata=data1.time;

rawname=data1.name;

rawsignal=data1.signals;        %將message的時間,名字還有訊號分別放在變數中

message_index=0;                    %初始化message的index

%把message name 為aaa中的concerned_signal摘錄出來

for i=1:length(rawtimedata)

messagename = rawname;

if (strcmp(messagename,'aaa'))

message_index=message_index+1;

neededsignal(message_index,1)=seconds(rawtimedata(i));

neededsignal(message_index,2)=rawsignal.concerned_signal;

endend

MATLAB 數值積分函式積分的表示形式

1.採用inline內聯函式 matlab中可以有採用幾種不同的方式來指定被積函式。對於簡單的 長度不超過一行的公式採用inline命令比較方便。例如,可用下面的語句進行計算 f inline 1 sqrt 1 x 4 採用inline內聯函式 f 內聯函式 f x 1 sqrt 1 x 4 q q...

對FreeStreamer的單例形式封裝

直接 吧,注釋已經加好。h 檔案如下 freestreamerplayer.h downloadlist created by puslar on 16 9 18.import import fsaudiostream.h protocol playerdelegate optional param...

MATLAB中對矩陣的變換

矩陣的變換主要有對角陣,三角陣,矩陣的轉置,矩陣的旋轉,矩陣的翻轉,矩陣求逆等操作。下面我將對以上幾種操作進行總結。對角矩陣 只有對角線上有非零元素的矩陣。數量矩陣 對角線上的元素相等的對角矩陣。單位矩陣 對角線上的元素都為1的矩陣。提取矩陣中對角線的元素 diag a 提取矩陣a的主對角線元素,產...