振动、疲劳等分析中经常会用到信号处理,这些基本上都是书上不说但是你却不得不用的技能。传统的方法是使用Matlab进行信号处理,但是nCode中内置了大量的信号处理模块,都是一看就会一用就对的傻瓜式操作。
信号生产模块在Input——Time Series Genertor中,将这个模块拖入到工作区,生成TSGenertor1工作框。再拖入一个XY Dplay方便显示,将信号生成器与显示器相连。
点击运行,便可观察到生成的时间序列信号,默认的信号为正弦信号,频率为1Hz,幅值为1。
双击TSGenertor1,进入属性界面,可修改信号类型。
常用的信号类型如下图,需要注意的是,白噪声在每次点击运行按钮后,都会重新生成一组随机白噪声。
2.1 时序信号的输入
nCode支持csv电子文档的格式输入,但是需要进行ASCII转换。
打开电脑上的excel软件,A列为时间,采样率20(每秒20个点),即时间间隔为0.05s,总时间2s,B列为幅值,单位mm,幅值a与对应时间t关系为a=sin(t*π)+0.5*sin(5*t*π)。
这是由两个正弦幅值相加的信号,第一个正弦信号圆频率为π,幅值为1,第二个正弦信号圆频率为5π,幅值为0.5。选中AB列所有数据,点击插入——散点图,可以观察波形。
将excel文件另存为csv文件,注意保存路径与名称都必须为英文。
打开ncode,点击ASCII转换器,选择刚才的csv文件,点击next。
设置要过滤的数据,首先第一行表头需要过滤,其次第一列所有时间需要过滤,因为我们只需要幅值,时间通过下一步的采样率来生成,过滤掉的数据会以灰色在预览框显示,点击下一步。
设置采样率为20,点击转换,插件将会把数据转换为同名的s3t时序文件并保存在源文件路径。
在ncode中创建TSInput框图,勾选框图的Display按钮以便显示。
双击TSIput1框图,选择导入的数据。
点击TSInput框右上角图标可全屏显示。这里可以看到信号曲线的转折处不够光滑,这是因为源数据的采样点设置的比较少导致的,并不是ASCII转换造成误差。
ncode默认输出的时序信号格式为s3t,它是ncode的专用格式数据,无法使用其他软件打开查看。但是本文也会介绍如果输出csv电子表格文件。
接着以上文数据为例,拖到TSOutput到工作区域,并创建连接。
双击TSOutput1框图进入属性设置,NamingMethod修改为NewName,NameText输入名字,点击ok确定。
点击运行即可在工作目录文件夹输出s3t文件。
如果要输出csv文件,只需要在属性中设置输出文件格式为csv。
3.1 信号的连接
创建两个TSGenerator信号,信号1为幅值为1,周期和总时间均为1s的正弦信号,信号1为幅值为2,周期为0.5s,总时间为2.5s的余弦信号(通过设置初始相位角为90°得到)。
通过Concatenation即可将他们连接为一个信号。
两个信号的连接过渡处默认以直线相连接,也可双击进入属性,修改JointType为其他连接方式,以及过渡时间JointTime。
一个信号可通过幅值运算与一个常数进行加减乘除,同样两个信号的幅值之间也能进行加减乘除运算。
比如需要需要将一个正弦信号的平均值设置为1,而不是0。拖动运算器进行如下连接。
双击运算器进入属性设置,运算器默认是将信号1与一个常数进行相加运算,设置常数为1,点击运行即可完成平均值的修改。
同样以上面的两个TSG信号为例进行运算,两个信号的总时间和采样率必须相同才能运算,所以将信号1的总时间修改为2s。选择运算器进行连接。
我们此处是要将两个信号的幅值相加,需要将Operator修改为Equation,在Equation中输入test1+test2,不区分大小写。
点击运行,便得到两个信号的幅值相加结果。
将多个信号合并为一个多通道信号是通过Test Combination完成的,可以一次性完成多个信号的合并。
双击框图进入属性设置,可以设置信号数量。
注意XYDisply显示多通道也需要设置。
与合并相反,可以将多通道信号拆分为多个信号,一次只能拆分出一个通道
注意属性设置。
本文先写到这里,ncode的信号处理功能原不仅此,还能进行傅里叶时频转换、滤波、曲线拟合、雨流计数等,以后再慢慢研究。