BMS保護(hù)包括過充保護(hù)、過流保護(hù)、高溫保護(hù)等等保護(hù)類型較多,但是如果用函數(shù)封裝的角度去理解,大多數(shù)保護(hù)類型函數(shù)原型是一樣的,只不過傳入函數(shù)的參數(shù)不同而已,這樣我們就可以用Simulink把這樣一類保護(hù)做成通用的模塊然后傳入不同的保護(hù)參數(shù)再返回報警等級實現(xiàn)業(yè)務(wù)邏輯功能。
保護(hù)分類
按照以上分析把保護(hù)類型分為高觸發(fā)保護(hù)(以下簡稱高保護(hù))和低觸發(fā)保護(hù),高觸發(fā)保護(hù)是采樣值比設(shè)定閾值高觸發(fā)的告警保護(hù),同理低觸發(fā)保護(hù)是采樣值比閾值低觸發(fā)的保護(hù)。 我們先來實現(xiàn)高保護(hù)。
第一步:新建空模型文件命名為protect。

其中閾值和采樣值比較邏輯我們采用stateflow實現(xiàn),
第二步:模型中加入Chart模塊

第三步:寫邏輯
圓圈代表節(jié)點,直線是傳輸,{}里面的語句為執(zhí)行,[]里面的語句為判斷。 先看下下面這條語句,當(dāng)采樣值大于設(shè)定閾值之后,開始計時當(dāng)計時夠了之后報警標(biāo)志位置1

接著把邏輯做完

這樣我們就把判斷邏輯做完了下面我們驗證下模型;
第四步:設(shè)置輸入、輸出、本地參數(shù)類型;

第五步:驗證模型
設(shè)置幾個輸入?yún)?shù),仿真看下結(jié)果,輸入給一個變化的正弦輸入,幅值設(shè)置為5000,這樣變化的信號可以遍歷工況;

可以看到當(dāng)輸入大于4000時經(jīng)過延時告警值置位,當(dāng)小于3000時經(jīng)過延時告警值復(fù)位,當(dāng)小于閾值時告警一直為0,符合預(yù)期的邏輯;

第六步:封裝模型
模型測試好了再封裝一層

這樣把模型封裝成一個子模塊
第七步:應(yīng)用。
現(xiàn)在原型函數(shù)就做好了可以根據(jù)傳入?yún)?shù)完成電壓、電流、溫度的保護(hù)告警去應(yīng)用了

第八步:生成代碼
生成代碼的配置可以去代碼生成 | 安時積分法模型搭建查看;

可以看到生成的代碼邏輯很嚴(yán)謹(jǐn)很清晰。
好了,高保護(hù)已經(jīng)做完了,大家可以嘗試搭建下低保護(hù)的子模塊。
-
參數(shù)
+關(guān)注
關(guān)注
11文章
1869瀏覽量
33945 -
Simulink
+關(guān)注
關(guān)注
23文章
551瀏覽量
66041 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4417瀏覽量
67502 -
模型
+關(guān)注
關(guān)注
1文章
3752瀏覽量
52099 -
bms
+關(guān)注
關(guān)注
110文章
1222瀏覽量
69890
發(fā)布評論請先 登錄
通過調(diào)用HID.dll編寫USB HID的數(shù)據(jù)讀寫,請大神們幫忙提示一下調(diào)用哪些HID的原型函數(shù)及函數(shù)調(diào)用順序!
通過調(diào)用HID.dll編寫USB HID的數(shù)據(jù)讀寫,請大神們幫忙提示一下調(diào)用哪些HID的原型函數(shù)及函數(shù)調(diào)用順序!
如何獲得sysLink系列函數(shù)的具體說明或者原型函數(shù)
如何去搭建Matlab/Simulink?
永磁同步電機(jī)simulink模型搭建
使用USRP E310和MATLAB和Simulink進(jìn)行原型設(shè)計和測試軟件定義的無線電
利用RBF神經(jīng)網(wǎng)絡(luò)實現(xiàn)高斯型函數(shù)積分
C語言入門教程-函數(shù)原型
SP1641B或SP1642B型函數(shù)信號發(fā)生器手冊
配置Simulink模型,調(diào)皮屬于你自己的代碼
在simulink中搭建逆變器仿真模型
simulink搭建的摩擦模型
基于Simulink搭建保護(hù)原型函數(shù)
評論