博客專欄

EEPW首頁 > 博客 > 干貨分享 | TSMaster小功能之總線負(fù)載率如何在圖形里繪制曲線

干貨分享 | TSMaster小功能之總線負(fù)載率如何在圖形里繪制曲線

發(fā)布人:汽車電子工程師 時(shí)間:2023-06-06 來源:工程師 發(fā)布文章

今天給大家介紹TSMaster小功能之總線負(fù)載率如何在圖形里繪制曲線,想要實(shí)現(xiàn)這個(gè)功能,需要借助TSMaster中的統(tǒng)計(jì)、圖形/面板功能來實(shí)現(xiàn)。

步驟一

在C腳本啟動(dòng)事件里添加上com.enable_bus_statistics(true),其作用是啟用總線統(tǒng)計(jì)計(jì)時(shí)器以計(jì)算總線統(tǒng)計(jì)。

圖片1.png

步驟二

運(yùn)行C腳本后,在系統(tǒng)變量-內(nèi)部變量就可以找到當(dāng)前總線負(fù)載率變量。

圖片2.png

為什么需要進(jìn)行這一操作呢?這是因?yàn)閮?nèi)生系統(tǒng)變量是跟隨系統(tǒng)自動(dòng)生成,自動(dòng)釋放的。


以設(shè)備統(tǒng)計(jì)信息為例,如果添加了 CAN1 備,才會(huì)動(dòng)態(tài)生成 StaticsCAN1 相關(guān)的統(tǒng)計(jì)信息;如果刪除 CAN1 設(shè)備,那么這些統(tǒng)計(jì)信息會(huì)消失。這也就意味著統(tǒng)計(jì)模塊默認(rèn)下是跟著TSMaster一起啟動(dòng)的,如果在沒有啟動(dòng)TSMaster應(yīng)用程序則統(tǒng)計(jì)模塊就不會(huì)啟動(dòng),此時(shí)就無法在系統(tǒng)變量中看到有關(guān)統(tǒng)計(jì)的系統(tǒng)變量。我們可以通過C小程序的API來啟動(dòng)統(tǒng)計(jì)模塊,這樣就可以在不啟動(dòng)工程的前提下獲取到統(tǒng)計(jì)設(shè)備信息相關(guān)的系統(tǒng)變量。


步驟三

在圖形窗口中添加總線負(fù)載率的系統(tǒng)變量來觀察圖形,同時(shí)加載DBC中的EngSpeed信號。
圖片3.png

步驟四

1. 在面板中添加圖形、輸入輸出框、圖像按鈕控件;將圖形控件的信號數(shù)量設(shè)置為2,并且與輸入輸出框控件一起綁定通道二的總線負(fù)載率變量;將圖形第二個(gè)信號綁定為DBC中的EngSpeed信號。

圖片4.png

2. 設(shè)置圖像按鈕控件的圖形數(shù)量為3,對應(yīng)的Value分別為1、2、3,綁定C小程序中創(chuàng)建的變量Bus_load_status,同時(shí)再使用對應(yīng)的圖片(Image)通過該控件來表示總線負(fù)載的狀態(tài)。

圖片5.png

3. 在C小程序中通過CAN接收事件讀取系統(tǒng)變量總線負(fù)載率的值來進(jìn)行狀態(tài)值的判斷,發(fā)送事件會(huì)在每一次報(bào)文發(fā)送成功后觸發(fā),同時(shí)在負(fù)載率超過80%時(shí)捕捉EngSpeed下降沿,在下降沿時(shí)刻留下一些注釋,實(shí)現(xiàn)代碼如下。

圖片6.png圖片7.png

*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請聯(lián)系工作人員刪除。




技術(shù)專區(qū)

關(guān)閉