中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么通過Simulink實現數據滾動刷新

發布時間:2021-07-22 15:25:22 來源:億速云 閱讀:350 作者:chen 欄目:web開發

本篇內容介紹了“怎么通過Simulink實現數據滾動刷新”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

對于這個問題,用C代碼或者m語言實現可能大家都會,就是把數據進行右移和賦值操作。用Simulink基本模塊搭建,以前沒有接觸過的可能會有些困難。所以,本文將介紹如何通過Simulink實現數據滾動。

Simulink建模思路跟C代碼實現的方式基本一致,也是主要分為右移、賦值兩部分,最終搭建的模塊如下圖所示。

怎么通過Simulink實現數據滾動刷新

上圖中紅框中的右移子系統內部需要迭代器和分配器配合使用,如下圖所示。

怎么通過Simulink實現數據滾動刷新

迭代器用于在一個步長內連續輸出N個數值,可用于遍訪數組內部的數據,非常適合對數組進行索引操作,是對數組類型數據處理的神器。

分配器用于對數組進行指定位置的數據賦值。Y0是當前待處理數組,Idx1是數組的某一位索引,U是數組某一位具體的數值。假設Idx1=a,U=b,表達的意思就是將數組Y0的第a位數值替換為b。

所以上圖中,通過迭代器和分配器配合,在每一個仿真步長,將數組的每一位向下一位賦值,實現該子系統右移的功能。

上圖綠框中的賦值部分相對就比較簡單,只有一個分配器,即將實時刷新的值賦值到第一位,實現數據更新。

下面進行簡單的仿真驗證,先進行模塊基本設置。

這里設置滾動的數組長度為5,初始值為0,所以Delay模塊給定數組[0 0 0 0 0]。

怎么通過Simulink實現數據滾動刷新

模型中迭代器長度設置為4,因為我們只需要對數組第一位以外的進行處理。

怎么通過Simulink實現數據滾動刷新

兩處分配器都可以設置為One-based,Index vector(port)。

怎么通過Simulink實現數據滾動刷新

實時更新的數據我們給定一個線性增長的ramp,初始值為0,斜率為1,然后進行步長為1s的定步長仿真,結果如下圖。

怎么通過Simulink實現數據滾動刷新

從圖中可以看出:

  • 初始時刻數組的第一到第五位均為0,即[0 0 0 0 0];

  • 1s時,數組的第一位被刷新為1,即[1 0 0 0 0];

  • 2s時,數組的第一位被刷新為2,第二位被1s時第一位的1覆蓋,即[2 1 0 0 0];

  • 3s時,數組的第一位被刷新為3,第二位被2s時第一位的2覆蓋,第三位被2s時第二位的1覆蓋,即[3 2 1 0 0];

  • ……

實現了數據的實時滾動刷新。

“怎么通過Simulink實現數據滾動刷新”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

聊城市| 宁津县| 饶河县| 舒兰市| 昌图县| 永新县| 黑水县| 稷山县| 温州市| 内乡县| 五指山市| 汪清县| 吉安县| 赤壁市| 武胜县| 定结县| 革吉县| 子洲县| 开阳县| 赤城县| 新和县| 华亭县| 盈江县| 江油市| 宿松县| 泽普县| 浙江省| 中卫市| 潮州市| 三江| 安福县| 延庆县| 无锡市| 罗平县| 东丽区| 禹城市| 简阳市| 高雄市| 邢台县| 铁岭市| 柘城县|