我正在使用Simulink從我創建的代表排序步驟,緩衝區等的多個掩碼塊中建立垃圾回收工廠。每個模塊(即掩碼塊)具有失敗概率,使用離散事件建模。如果發生故障事件,觸發子系統會調用解釋的Matlab函數(simulink的「外部」)。這個函數應該設置代表失敗模塊的掩碼塊的參數status
以及上游模塊的status
爲0(因爲很明顯,上游的所有內容都必須停止或材料堆積)。獲取調用解釋的Matlab函數的塊的句柄
`set_param(gcb, 'status', num2str(status));
PortConnectivity = get_param(gcb,'PortConnectivity');
sources = PortConnectivity.SrcBlock;`
基本上,這將循環,直到我到達沒有自己的源塊的塊。 這一切都工作得很好,除了一個問題:gcb
命令爲我提供了手動加亮的最後一個塊的塊路徑,而不是調用解釋的Matlab函數的塊。有沒有辦法獲得調用塊的句柄(我將使用它的Parents
參數來訪問Mask的status
)? (類似的問題已被要求here,沒有結果...)
我希望你得到我的問題 - 我會很樂意詳細說明,如果有什麼不清楚的;我不是自稱是Simulink的專家,所以很抱歉可能會使用錯誤的術語。
非常感謝的隊友!完美的作品。 – Ade