請參考附加的圖像以瞭解該問題。Matlab/Simulink:如果塊錯誤
圖片是在此鏈接:http://www5.picturepush.com/photo/a/12014483/img/12014483.jpg)
這裏是2個輸入:1.Speed_Pulse 2.PreviousSpeedPulse_1_old
第二輸入是什麼,但使用單元通過1個時刻在時間上延遲所述第一輸入延遲塊。 'If'模塊比較2個輸入。如果輸入'u1'(Speed_Pulse)小於'u2'(PreviousSpeedPulse_1_old),那麼在'if action'模塊中,數值64被簡單地添加到u1(Speed_Pulse)值。否則,輸入Speed_Pulse將通過'else action'塊直接傳輸到輸出。其中一個輸出使用'合併'模塊傳輸到'Temp'(取決於'if-else')。
現在請參考下表輸入和輸出。
該表是在此鏈接:http://img521.imageshack.us/img521/8684/tablewy.png
在該表中,該值是錯誤的即時4和即時7.
我無法找到這種突然的輸出錯誤的理由。
任何想法是什麼問題?
您可以使用Simulink調試器觀察每個時間步的值嗎?你能展示你如何添加64? – Navan
你如何餵養輸入值?獲取輸入時間向量與Simulink時間匹配存在問題。嘗試使用Workspace塊記錄輸入,以確保獲得正確的值。 – MikeT
大家好。 對不起,這是我的錯誤。其實我在下面使用一個框架,這是框架的錯誤。得到它解決。謝謝你的幫助。 – GuiccoPiano