天天看點

使用simulink模拟六個位移傳感器資料,并實作資料的實時采集與處理

目錄

​​一、理論基礎​​

​​二、核心程式​​

​​三、仿真測試結果​​

作者ID  :fpga和matlab
擅長技術:
1.無線基帶,無線圖傳,編解碼 
2.機器視覺,圖像處理,三維重建 
3.人工智能,深度學習 
4.智能控制,智能優化
5.其他      

一、理論基礎

1.所需程式用于六個位移傳感器資料的實時采集與處理,是以所需程式應能實時采集六通道資料,并将其提供與計算程式,使計算程式計算同一時刻的六個資料得出實時正确結果

2.所需實時采集程式與提供的計算程式能夠較好結合

3.計算出的結果為波形資料,各處資料值可查

4.提供簡單的程式說明

       整個系統就是通過位移傳感器檢測位移量然後進入計算機進行計算并且實時得出資料處理速度有要求,不低于20次/秒,是以計算程式可能要優化一下

      通過之前的要求可知,你的課題基本要求就是,通過六路傳感器的資料采集進行處理,然後得到要的波形,然後之前你已經提供了算法處理程式了,但是之前的程式可能處理速度達不到20次/s,即無法實作實時采集并且每秒采集20次的要求。

      此外,電壓的幅度為0~5V和0~10V,電流為4~20ma,那麼我們模拟一組實時資料集電壓在0~5V或者0~10V範圍内的随機信号,電流為4~20ma之間的随機信号。

      每秒采集20次,那麼也就是說每秒采集到20組資料,每組6個。然後将該6個資料進行後期你提供的那個算法進行處理。每秒處理20次。

二、核心程式

這裡主要是兩個部分,一個是信号的模拟産生,一個是采集,另外就是你提供的算法計算子產品好像有點問題,這裡我們做了下修改,然後組合得到如下的模型:

使用simulink模拟六個位移傳感器資料,并實作資料的實時采集與處理

從左往右,分别是,傳感器模拟信号,信号采集子產品,以及您提供的算法計算子產品。

其産生子產品如下所示:

使用simulink模拟六個位移傳感器資料,并實作資料的實時采集與處理

上面的子產品共六路,分别為随機相位,随機幅度以及随機噪聲疊加後的采集到的信号。

信号采集子產品,在simulink中通常使用zero-Order-hold子產品來做,其結構如下所示:

使用simulink模拟六個位移傳感器資料,并實作資料的實時采集與處理

該子產品的仿真結果如下所示:

使用simulink模拟六個位移傳感器資料,并實作資料的實時采集與處理

使用同樣的方法,我們可以在MATLAB中的workspace中檢視算法仿真的資料:

使用simulink模拟六個位移傳感器資料,并實作資料的實時采集與處理

您提供的算法計算子產品:

    這裡,由于您提供的算法處理子產品沒法直接用,所有很多工作量在修改這個子產品上了,

使用simulink模拟六個位移傳感器資料,并實作資料的實時采集與處理

這個子產品内部的錯誤,可能是各個處理結果的矩陣大小不一緻導緻的,以及各個子產品的sample time沖突導緻的問題,這裡修改了下,最後可以仿真出波形了,具體如下所示:

使用simulink模拟六個位移傳感器資料,并實作資料的實時采集與處理

三、仿真測試結果

      這裡,我們主要工作就是模拟出六路傳感器信号,由于事先并不知道你的傳感器是測量什麼的資料,是以這裡我們使用正弦波來模拟産生出不同的信号,并加入噪聲。其子產品如下所示:

使用simulink模拟六個位移傳感器資料,并實作資料的實時采集與處理

這裡,我們還加入了資料儲存子產品,用來滿足不同階段資料結果的檢視:

使用simulink模拟六個位移傳感器資料,并實作資料的實時采集與處理

運作之後,你在matlab軟體中的workspace中點選,可以産看資料: