2016-08-27 68 views
0

我在Simulink中遇到問題,我有一個變量「k」作爲常量塊(start value k = 1),並且我想在每次點擊「模擬按鈕後增加」k「 「直到」k「爲4,那麼它將被重置爲1。通過Simulink遞增一個變量

我已經嘗試過了(請參閱圖1),但在這種情況下,它將會很長時間,直到模擬時間結束(請參閱圖2),而這不是我想要的。

enter image description here enter image description here

我會apreciate任何幫助非常感謝周杰倫

回答

2

如果你只是希望每一次運行模擬時間更新的價值,你最好的辦法是把一些代碼在InitFcn回電話。

這是每次模型初始化時運行的(可選)代碼塊。要做到這一點導航File > Model Properties > Model Properties

選擇回調選項卡,然後選擇左邊的InitFcn回調。以下代碼將檢查工作區中是否存在k,如果不存在,則將其設置,如果存在,則將其增加。如果你把它放在回調中,然後將常量塊的值設置爲k,你應該得到你想要的行爲。

if ~exist('k', 'var') 
    k = 1; 
else 
    k = k + 1; 
end 

if k>4 
    k = 1; 
end 
+0

謝謝你哈立德的快速反應,它的作品:) – Sami

+1

不用擔心@Sami!請將我的答案標記爲已經工作,如果它有竅門的話,那麼有類似問題的其他人知道可以嘗試。謝謝 – kabdulla

+0

很好的解決方案! :) –