本例來自NI幫助中的Getting Started改編而來。
開發環境:VS2019 + NI MS2019
Measurement Studio包括用戶界面控件(如波形圖控件和儀表控件)和分析功能(如信號生成和數學函數)。本實例旨在幫助您了解如何向Windows窗體應用程序添加分析和演示功能。
1. 創建NI MS2019項目
通過向導創建Measurement Studio winform應用程序。
新建MS項目
填寫項目名稱和路徑。
項目名稱及路徑
選擇要添加的庫。
選擇類庫
以前在vs2017下都是通過創建默認winform項目,在里面直接拖拽相關控件使用MS的,可是在VS2019環境下,我一直沒有實驗成功,總是提示缺少授權。而通過NI的程序向導生成的項目沒有問題,原因不詳。
拋出異常:NationalInstruments.Restricted.AnalysisLicenser is unlicensed.
未授權異常
2.編寫代碼和界面
控件布局如下圖:
UI界面
主要控件:
1.Button控件:text屬性該為“start”
2.WaveformGraph 控件:在Edit Plots 設置中命名曲線名name為“Plot”;設置 Auto Format 對話框中選擇 Points Only 模式。
3.Legend控件:把Item-source設置為Plot;text設為“Signal”。
Legend控件
4.Gauge控件:設置Name為“gauge”;設置range為(-0.2,0.2);在 Auto Format對話框中選擇 Dark 主題,按OK.
5.NumericEdit 控件:設置 Source 屬性為Gauge;在 InteractionMode屬性中取消選擇ArrowKeys, Buttons, and Text ;選擇Format Mode 屬性對話框,設置Precision 為 4 。
6.richTextBox控件:我是為了查看隨機產生的數字,可以不添加。
7.start Button雙擊后添加代碼如下:
//清空richeditbox
richTextBox1.Clear();
//定義白噪信號實例
WhiteNoiseSignal whiteNoise = new WhiteNoiseSignal();
//存儲生產的白噪數據
double[] data = whiteNoise.Generate(1000.0, 256);
int l = data.Length;
//在richeditbox中顯示數據
for(int i = 0; i < l; i++)
{
richTextBox1.AppendText(i+ "=" + data[i].ToString() + "\n");
}
//繪制點圖
Plot.PlotY(data);
//統計平均數
double mean = Statistics.Mean(data);
//顯示平均數
gauge.Value = mean;
3.程序運行效果
運行效果