Table of Contents
本模組群提供訊號在計算前後所需之處理工具,計有下列功能:
Channel Switch:由多通道(multi-channel)訊號選取單一通道(single-channel)的訊號資料。
Data Selection:截取輸入訊號中任意時間段訊號資料。
Dup:複製輸入訊號。
Fill Null Value:以數值方法補齊訊號中之缺值。
Remove Channel:將多通道(multi-channel)訊號中某一通道(single-channel)的訊號資料去除。
Replace Value:將訊號資料進行替換及取代。
Resample:將訊號重新取樣,可進行提高或降低取樣頻率。
Time Shift:將訊號之時間軸作平移。
Data Merge:將兩訊號進行相互連接。
Input Switch:接受各種型態訊號,並且從中選擇其一。
選取多通道(multi-channel)訊號內其中一個通道的訊號。
參數設定(Properties)
本模組接受實(real number)、複數(complexnumber),多通道(multi-channel),regular的訊號(signal)或聲音訊號(audio)輸入。參數定義詳如下面圖表。
參數名稱 |
參數定義 |
預設值 |
Channel Count |
輸入訊號的總通道數。 |
0 |
Active Channel |
設定欲選取的資料。 |
Channel 1,即第一個通道資料。 |
Select Last Channel |
是否預設為選定最後一個通道資料。 |
false |
範例(Example)
將正弦波與三角波合為一個 multi-channel 資料,用 Channel Switch 選擇正弦波訊號。
以 Source / Sine Wave 建立正弦波源,Source / Triangle Wave 建立三角波源,在 Sine 與 Triangle 這兩元件的 Properties / Source 裡,取樣頻率(SamplingFreq)設定為預設值 1000,訊號頻率(SignalFreq) 分別設定為 6 與 15,再用 Conversion / Merge to Multi-channel 將兩組格式相同的訊號結合為一組多筆 ( multi-channel ) 的訊號。
再將 ToMulti 的輸出接上 Channel Switch,再以 Viewer / Channel Viewer 繪製結果,並改變 Channel Switch 的 Properties / Active Channel,可觀察到只留下正弦或三角波。
注意 :
Channel Switch 只是將原本多通道訊號減為單通道(single channel)資料,並非分離波形。
相關指令
Merge to Multi-channel,Channel Viewer,Sine Wave ,Triangle Wave。
選取某段時間內的訊號資料。
參數設定(Properties)
本模組接受實數(real number)、複數(complex number),單通道(single channel)或多通道(multi-channel),regular的訊號(signal)或聲音訊號(audio)輸入。參數須設定起始與終點位置,其單位等於輸入訊號的時間單位。
參數名稱 |
參數定義 |
預設值 |
StartPosition |
設定選取資料的時間起點。 |
輸入訊號的時間起點。 |
EndPosition |
設定選取資料的時間終點。 |
輸入訊號的時間終點。 |
DownSampleStep |
每多少個點重新取一個點,用來降低取樣頻率。 |
1 |
NewCount |
擷取出新資料的數量。 |
0 |
範例(Example)
以 Source / Sine Wave 建立正弦波,在 Sine 元件的 Properties / Source ,此例的取樣頻率(SamplingFreq) 設定為預設值 1000,訊號頻率(SignalFreq) 設為 20,並用 Viewer / Channel Viewer 觀察之。
原本訊號接上 Data Selection,並設定選取的起點與終點 ( 在此例為起點 0.2 s,終點 0.4s ),可觀察到該段時間內訊號被截取出來。注意選取部份不可超過原長度( 以此例來說就是不在 [ 0 , 1]的範圍內 ),否則將無法運作。
相關指令
Channel Switch,Channel Viewer,Sine。
複製輸入訊號源。(主要可應用為 Macro 之起點,請參考 Chapter 8.1。)
參數設定(Properties)
Dup 接受所有訊號格式作為輸入,無需設定參數。
範例(Example)
將正弦波複製:
以 Source / Sine Wave 建立正弦波,並觀察之。
在 Sine 元件的 Source / Properties,此例的取樣頻率 ( SamplingFreq ) 設定為預設值 1000,訊號頻率 ( SignalFreq ) 設為 10。
原本訊號接上 Dup,可見複製出來者完全相同。
下面是將Dup 應用於 Macro 的實例:
將訊號做傅立葉轉換以算出頻率;同時將原訊號做 Hilbert 轉換,比較兩者算出頻率之異同。處理程序如下配置:
將此配置為 Macro (巨集),再匯入時會成為如下結果:
(剛匯入時計算並不會執行,要按下 force update 才會有結果)
由上圖可見,若將原訊號置換為其他訊號以進行計算,是需要以手動方式將新訊號源接上 FFT 以及 Hilbert 模組。在要做更多處理時會愈加複雜,並易出錯。
若現在將資料源與計算中間插入一 Dup :
同樣地,存為巨集然後匯入 :
可見到只要將資料替資並連結上 Dup,較之前方法方便極容易許多。
相關指令
Macro。
將缺值的資料補值。
說明
將輸入訊號資料為 NaN ( Not A Number ) 或
Null 之缺值部份補齊。
參數設定(Properties)
本模組接受實數(real number),單通道(single channel)或多通道(multi-channel),regular 的訊號(signal)或聲音訊號(audio)輸入。參數為 FillMethod,內有五個選項,相關定義與預設值整理如下表。
參數為 FillMethod 內有五個選項,可選擇不同的補值方法。相關定義與預設值整理如下表。
參數名稱 |
參數定義 |
預設值 |
FillMethod |
填補方法,有 FixedValue、PrevValue、NextValue、LinearInterpolation 與 SplineInterpolation。 |
LinearInterpolation |
選項名稱 |
選項定義 |
FixedValue |
由使用者輸入一個定值作為缺值的大小。此參數下方會出現欄位 NullValue,即設定欲補入之數值。 |
PrevValue |
缺值處之值以前方最鄰近非缺值之數值補值。 |
NextValue |
缺值處之值以後方最鄰近非缺值之數值補值。 |
LinearInterpolation |
缺值處之值,以前後第一個非 Null 的兩值做線性內插。 |
SplineInterpolation |
做三次曲線內插補值。 |
MonotonicCubic |
為有 damping 的三次內插法,此法在處理在斜率很大的訊號(如方波)時,可避免劇烈振盪,較 Spline 為佳。 |
範例(Example)
填補缺值複製:
打開安裝目錄 ( C:\ Program Files \ AnCAD \ Visual Signal \ demo \ Basic ) 下的 Demo53,可看見有缺值的訊號。
在 Demo53 中,利用 SplineInterpolation、Linear、Fixed Value、MonotonicCubic 四種方法補值,下圖是以 SplineInterpolation 方法補值後的圖形。
若是以 Linear Interp,補值後圖形可知填補法明顯不同。
在外部匯入資料時,Text Importer 即有一選項為填補缺值之功能,與此元件完全相同。
現在將一個缺值的訊號匯入(此資料為將原本的方波隨意去除部份值),匯入後不補值(將 Text Importer 的 Null Value Handle下的 Use Null Handle 關閉),結果如下。
現在將原始輸入訊號分別以 Spline Interpolation 以及 Monotonic Interpolation 填補。
由此可看出兩者填補的結果不盡相同,細黑線是 Spline Interpolation,藍粗線為 Monotonic Interpolation。
相關指令
Text Importer,Resampling。
將多通道(multi-channel)訊號中的某中一個通道的訊號移除。
參數設定(Properties)
本模組接受實數(real number)、複數(complex number),多通道(multi-channel),regular或indexed的訊號(signal)或聲音訊號(audio)輸入,參數定義詳見下面圖表。
參數名稱 |
參數定義 |
預設值 |
Channel Count |
輸入訊號的總通道數。 |
0 |
Remove Channel |
選定欲移除的資料。 |
Channel 1 |
Select Last Channel |
是否設為選定最後一筆資料。 |
False |
範例(Example)
將正弦波、三角波及方波結合為同一個 (multi-channel) 訊號,再將其中某個通道訊號移除:
以 Source / Sine Wave、Square Wave 及 Triangle Wave 建立正弦波、方型及三角波,並用 Conversion / Merge to Multi-Channel 將三個輸入訊號整合為一個(multi-channel) 訊號。在各波源的取樣頻率 ( SamplingFreq ) 皆為預設值 1000,而訊號頻率 ( SignalFreq ),分別為 5 (Sine Wave )、8 ( Square Wave )、Triangle 設定為 15,以觀察不同波形。
在 Merge to Multi-Channel 後連結上 Compute / Channel / RemoveChannel ,選定移除第一通道訊號 ( Sine Wave ),可得如下頁圖之結果:
再改變 Remove Channel 的 Properties,將 Select Last Channel 調整為 True,則 Remove Channel 將自動設為 Channel 3,為刪除第三個通道資料,即也就是 Triangle Wave 訊號。
注意:
Channel Switch 為將選取的資料留下,其餘刪除;而 Remove Channel 恰相反:刪除選取訊號、其餘保留。
相關指令
Merge to multi-channel,Channel Switch。
將訊號中一數值取代為另一數值,或將一段訊號的數值全以另一數值取代。
參數設定(Properties)
本模組接受實數(real number),單通道(single channel)或多通道(multi-channel),regular的訊號(signal)與聲音訊號(audio)輸入。參數定義與預設值整理如下表。
參數名稱 |
參數定義 |
預設值 |
ReplaceMethod |
設定取代的方法,包含 SingleValue、Segment、ByPass。 |
SingleValue |
假設 ReplaceMethod 設定為 SingleValue,則可設定參數如下表。
參數名稱 |
參數定義 |
預設值 |
ReplaceFrom |
設定欲取代的數值。 |
0 |
ReplaceTo |
設定取代後的數值。 |
0 |
假設 ReplaceMethod 設定為 Segment,則可設定參數如下表。
參數名稱 |
參數定義 |
預設值 |
ReplaceValue |
設定取代後的數值。 |
0 |
StartPosition |
設定被取代訊號的起始點。 |
0 |
EndPosition |
設定被取代訊號的終點。 |
End |
範例(Example)
將一方波的峰值改變成另一數值:
以 Source / Square Wave 建立一方波,以 Viewer / Channel Viewer 繪出。
將 Square 連上 Compute / Channel / ReplaceValue,設定 Properties / ReplaceFrom 等於 1,ReplaceTo 為 -0.5,如此處理即為將訊號中所有 1 的數值由 -0.5 取代。可見圖形有明顯不同:
再將 ReplaceValue 中 Properties/ ReplaceMethod 調整為 Segment,進一步設定 Properties / ReplceValue 為 0.2,StartPosition 為 0.3 ,EndPosition 為 0.6,如下圖。
注意 : 一次只能取代單一數值,若有多項數值要處理,需使用多次 ReplaceValue。
注意 : 若要依據某些條件進行數值取代,例如訊號大小介於 5 至 10 的值要被取代為另一個值,請參考 Mathmatics / Math 的 Example。
相關指令
無
將訊號的重新取樣,取樣後點數可比原本訊號少、也可比原本訊號多。
參數設定(Properties)
本模組接受實數(realnumber)、複數(complex number),單通道(single channel) 或多通道(multi-channel),regular的訊號(signal)與聲音訊號(audio)輸入。
參數 Properties / Data 下顯示輸入訊號的取樣頻率與資料長度,參數 ReSamplingMethod 代表對輸入訊號作重新取樣時所採用的計算方式,NewSamplingFrequency 則設定新的取樣頻率。參數定義詳見下面圖表。
參數名稱 |
參數定義 |
預設值 |
Step Downsampling |
設定是否要顯示 StepDownsampling 模式控制。 |
False |
NewSamplingFrequency |
重新的取樣的頻率,既單位時間內的點數。 |
1000Hz |
ReSamplingMethod |
重新取樣時,補點之方法,在此有三:最近點(Nearest)、線性(Linear)、曲線逼近(Spline)以及(MonotonicCubic)。 |
Linear |
NewCount |
顯示重新取樣後的總點數。 |
無 |
若預設 StepDownsampling 為 False,則 ReSamplingMethod 的選擇及說明如下圖表所列。
選項名稱 |
選項定義 |
NextValue |
以最臨近的原訊號值,做為新樣本點處之值。 |
LinearInterpolation |
以前後第一個有定義的兩原訊號值做線性內插。 |
SplineInterpolation |
將原訊號做三次曲線內插以從新取樣。 |
MonotonicCubic |
有 damping 的三次內插取樣,此法在處理在斜率很大的訊號(如方波)時,可避免劇烈振盪,較Spline為佳。 |
若預設 StepDownsampling 為True,則參數的選擇及說明如下圖表所列。
參數名稱 |
參數定義 |
預設值 |
DownSamplingMethod |
降低取樣的方法,方法 Sample、Average、MaxDetect、MinDetect、PeakDetect,說明如下圖表。 |
Sample |
DownSamplingStep |
降低取樣時,設定每多少個點重新取出一個點,此設定將影響 NewSamplingFrequency。 |
1 |
選項名稱 |
選項定義 |
Sample |
根據 DownSamplingStep 設定點數,取出這些點的第一點。 |
選項名稱 |
選項定義 |
Average |
根據 DownSamplingStep設定點數,取出這些點的平均。 |
MaxDetect |
根據 DownSamplingStep 設定點數,取出這些點的最大值。 |
MinDetect |
根據 DownSamplingStep 設定點數,取出這些點的最小值。 |
PeakDetect |
根據 DownSamplingStep 設定點數,取出這些點的最大及最小值。 |
範例(Example)
建立一正弦波,並以 Resampling 作重新取樣。
以 Source / Sine Wave 建立正弦波,調整 Source 下的 SamplingFreq 以及 DataLength 為 100 以及 101,再接上 Viewer / Channel View 觀察之。可發現繪製正弦波因為取樣點數不夠多而有點扭曲。
將原本訊號 Sine 接上 Compute / Channel / Resampling,設定 Resampling 下的 NewSamplingFrequency 設為 50 以及ReSamplingMethod 方法為 Linear,觀察兩者之不同。
可由其他取樣法嘗試,比較結果之異同。
另外可以將 Step Downsampling 設定為 True,DownSamplingStep = 2,並且將DownSamplingMethod = Average,觀察於原圖形之不同。
可由其他 DownSamplingMethod 嘗試,比較結果之異同。
現在由 Source 下產生 Square Wave,參數使用預設值,分別以 Spline 與 MonotonicCubic 增點 100 倍 ( NewSamplingFrequency 設為100000 ) ,並畫在同一個 Channel Viewer 上。
注意到在邊緣處,兩者結果相當不同,放大圖形來看為:
其中黑細線為 Spline 的結果,藍粗線為 MonotonicCubic,在此可見後者之結果較佳。
相關指令
Square,Fillng Null Value。
參考
1. Numerical Recipes 3rd Edition: The Art of Scientific Computing by H. Press , Saul A. Teukolsky , WilliamT. Vetterling , Brian P.Flannery
將訊號時間點移動,可以對訊號平移(ShiftStartTime)、或直接設定欲移動處之時間點(SetStartTime)、亦或指定起點時間日期(SetStartDateTime),即訊號的時間軸方向的平移。
參數設定(Properties)
本模組接受實數(real number)、複數(complex number),單通道(single channel)、多通道(multi-channel),regular的訊號(signal)與聲音訊號(audio)輸入。
主要參數為ShiftMode,其中包括三個選項,ShiftStartTime、SetStartTime、SetStartDateTime,每選項對應不同的設定,各選項設定之意義整理如下表。
參數名稱 |
參數定義 |
預設值 |
ShiftMode |
設定時間起點的方法,包含 ShiftStartTime、SetStartTime、SetStartDate。 |
ShiftMode = ShiftStartTime |
選項名稱 |
選項定義 |
選項參數 |
ShiftStartTime |
將整個時間平移。 |
ShiftValue |
SetStartTime |
直接指定新的時間起點。 |
StartValue |
SetStartDate |
指定新時間起點的日期、為年月日時分秒之型式。 |
StartDate StartTime |
範例(Example)
建立一正弦波,並以 Time Shift 平移。
以 Source / Sine Wave 建立正弦波,調整 Properties / TimeStart為 3。可見得此正弦波初始點為第三秒。
將原本訊號 Sine 接上 Compute / Channel / TimeShift,設定移動方法為 ShiftStartTime,平移量為 2,可見時間起點改為第五秒。
若改用 SetStartTime,而起點 StartValue 設為 1,可發現時間起點移至第一秒。
注意 : RemoveDC 不只可移除直流訊(為訊號既有之縱向平移),亦可由 User_setting 讓使用者設定縱向平移量,可與 TimeShift 作對應。
相關指令
Time Shift,RemoveDC。
可以將一個單通道訊號連接至一個單通道訊號,形成一個單通道訊號。
或者將一個多通道訊號連接至一個多通道訊號,形成一個多通道訊號。
參數設定(properties)
本模組可以接受實數(real number),單通道(single channel)、多通道(multi-channel),等間距(regular),訊號(signal)、聲音訊號(audio)。各參數定義與預設值如下表:
參數名稱 |
參數定義 |
預設值 |
StartPosition |
要被連接訊號的新位置,新位置以參考訊號的為基準,預設為參考訊號的最後位置。 |
end |
ReferenceInput |
設定參考訊號,StartPosition 是以參考訊號為準。 |
0 |
範例(Example)
本範例以 Source / Noise 及 Sine 為原始訊號,然後進行 Data Merge,產生一長度更長的訊號,然後進行運算,步驟如下:
Network 視窗下選擇 Source / Noise,設定時間長度(TimeLength) 為 2s、振幅(Amplitude) 為 1.5,另外再選擇 Source / Sine,設定時間長度(TimeLength) 為 1.5s、振幅(Amplitude) 為 2,兩個模組再各自接至 Viewer / Channel Viewer,所有設定如下圖。
再將 Noise 及 Sine 連接至 Compute / Channel / Data Merge,設定 Data Merge 的參數 ReferenceInput 為 0: Noise,StartPosition 為 1.5,將 Data Merge 連接至 Viewer / Channel Viewer 顯示結果。
將 Data Merge 連接至 Compute / TFA / ShortTerm Fourier Transform,參數皆按照預設值,最後再將 STFT 計算結果以 Viewer / Time-Frequency Viewer顯示。可以看見100Hz 的 Sine 出現在 1.5s 至 3s 之間。
相關指令
Noise,Sine,ShortTerm Fourier Transform,Channel Viewer,Time-Frequency Viewer。
可以從多個資料型態訊號中選擇某一個通道訊號。
參數設定(properties)
本模組可以接受實數(real number)、複數(complex number),單通道(single channel)、多通道(multi-channel),等間距(regular)、不等間距(indexed),訊號(signal)、聲音訊號(audio)、數值資料(Numeric)、時頻資料(spectra)。各參數定義與預設值如下表:
參數名稱 |
參數定義 |
預設值 |
Input Count |
進入此模組的通道數目。 |
0 |
Active Input |
設定欲選取的資料通道。 |
1 |
範例(Example)
本範例以 Source / Noise 為原始訊號,然後進行各種運算,產生各種格式資料,最後利用 Input Switch 選擇出某個通道的訊號,步驟如下:
於 Network 視窗下選擇 Source / Noise,取樣頻率(SamplingFreq) 為 1000,時間長度( TimeLength) 為 1s、振幅(Amplitude) 為 1,設定如下圖。
將Noise 依順序接上 Compute / Transform / Fourier Transform,Compute / HHT / RCADA EEMD,Conversion / Convert to Audio ,Compute / TFA / Short Term Fourier Transform,Conversion / Convert to Matrix,所有模組設定都依照原本設定。
將 Noise 及所有運算結果連接至Compute / Channel / Input Switch,最後由 Input Switch 連接至 Viewer / Channel Viewer,並且調整 Input Switch 的參數 Active Input,觀察 Noise、FFT、RCADA::EEMD 和 ToAudio 的結果。
再將 Input Switch 連接至 Viewer / TFAViewer,並且調整 Input Switch 的參數 Active Input,觀察 STFT 的結果。
最後調整 Input Switch 的參數 Active Input 至 ToMatrix,可利用 DataViewer 觀察 Input Switch 內矩陣資料。
相關指令
Noise、Fourier Transform、RCADA EEMD 、Convert to Audio、ShortTerm Fourier Transform、Convert to Matrix。
Converted from CHM to HTML with chm2web Standard 2.85 (unicode) |