本期講解如何在Matlab中建立屬于自己的庫,針對于公司設(shè)計(jì)相關(guān)MBD產(chǎn)品。
步驟如下:
將庫添加到庫瀏覽器中
此示例說明如何創(chuàng)建模塊庫,并將其添加到 Simulink庫瀏覽器中。此示例還顯示如何添加子庫。
要指定與您的庫相關(guān)的信息,您可以創(chuàng)建名為slblocks的函數(shù)。
將庫添加到庫瀏覽器
在 Simulink 起始頁上,選擇Blank Library并點(diǎn)擊Create Library。
注意
庫瀏覽器僅支持庫。您無法在庫瀏覽器中顯示模型的內(nèi)容。
向該庫添加一個(gè) Gain 模塊。
在 MATLAB命令行窗口中,輸入以下命令將EnableLBRepository庫屬性設(shè)置為'on'。當(dāng)您保存庫時(shí),只有此屬性設(shè)置為 on,您的庫才會(huì)出現(xiàn)在庫瀏覽器中。
set_param(gcs,'EnableLBRepository','on');
將庫保存到 MATLAB 路徑上的文件夾中。對于本示例,將庫命名為mylib。
在 MATLAB 當(dāng)前文件夾瀏覽器中,打開包含mylib的文件夾,然后在 MATLAB 工具條中點(diǎn)擊New Script。
在打開的 MATLAB 編輯器中,添加以下函數(shù),該函數(shù)指定庫mylib應(yīng)出現(xiàn)在名為My Library的庫瀏覽器中。
function blkStruct = slblocks % This function specifies that the library 'mylib' % should appear in the Library Browser with the % name 'My Library' Browser.Library = 'mylib'; % 'mylib' is the name of the library Browser.Name = 'My Library'; % 'My Library' is the library name that appears % in the Library Browser blkStruct.Browser = Browser;
將函數(shù)另存為slblocks.m。
注意
您可以將該函數(shù)保存為.m或.mlx文件。但不能另存為 P 代碼文件。
通過點(diǎn)擊 Simulink 工具條中的Library Browser打開庫瀏覽器。
要在庫瀏覽器中查看新庫,請右鍵點(diǎn)擊庫列表并選擇Refresh Library Browser。
下圖顯示了示例庫mylib,它在庫瀏覽器中的名稱為My Library。
注意
如果您保存庫時(shí)沒有將'EnableLBRepository'設(shè)置為'on',庫瀏覽器的頂部將顯示一條消息。
請點(diǎn)擊Fix并根據(jù)提示進(jìn)行操作。
將子庫添加到庫瀏覽器
按照以下步驟將名為mylib2的子庫添加到您的mylib庫中。
創(chuàng)建名為mylib2的庫。將幾個(gè)模塊添加到該庫。
在 MATLAB 命令行窗口中,為新庫將EnableLBRepository庫屬性設(shè)置為'on'。
set_param(gcs,'EnableLBRepository','on');
將mylib2保存到包含mylib的文件夾中。
向該mylib庫添加一個(gè) Subsystem 模塊。
通過刪除子系統(tǒng)中的 Inport 和 Outport 模塊,從子系統(tǒng)中刪除輸入和輸出端口。
將Subsystem模塊命名為My Sublibrary。
要將Subsystem模塊鏈接到子庫,請使用屬性檢查器將OpenFcn回調(diào)設(shè)置為mylib2。
保存mylib。
要在庫瀏覽器中查看新子庫,請右鍵點(diǎn)擊庫列表并選擇Refresh Library Browser。
下圖顯示了示例子庫mylib2,它在庫瀏覽器中的名稱為My Sublibrary。
由于您創(chuàng)建的回調(diào),點(diǎn)擊My Sublibrary將顯示mylib2庫的內(nèi)容。
指定庫列表中的庫順序
您可以通過向 MATLAB 路徑中添加一個(gè)sl_customization.m文件并為您的庫設(shè)置排序優(yōu)先級(jí),從而指定您的庫相對于列表中其他庫的順序。例如,要讓您的庫出現(xiàn)在列表的頂部,可以將排序優(yōu)先級(jí)設(shè)置為-2。默認(rèn)情況下,Simulink 庫的排序優(yōu)先級(jí)為-1。其他庫的排序優(yōu)先級(jí)默認(rèn)為0,這些庫顯示在 Simulink 庫的下面。排序優(yōu)先級(jí)相同的庫按字母順序顯示。
以下示例文件sl_customization.m的內(nèi)容將新庫放置在庫列表的頂部。
function sl_customization(cm) % Change the order of libraries in the Simulink Library Browser. cm.LibraryBrowserCustomizer.applyOrder({'My Library',-2}); end
要使自定義立即生效,請?jiān)?MATLAB 命令行窗口中輸入:
sl_refresh_customizations
責(zé)任編輯:彭菁
-
matlab
+關(guān)注
關(guān)注
181文章
2960瀏覽量
230022 -
瀏覽器
+關(guān)注
關(guān)注
1文章
1009瀏覽量
35226 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4277瀏覽量
62323
原文標(biāo)題:如何在Matlab中建立屬于自己的庫(針對公司設(shè)計(jì)MBD產(chǎn)品)-編號(hào)Matlab0001
文章出處:【微信號(hào):新能源入門客,微信公眾號(hào):新能源入門客】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論