2008年 10电 子 测 试
EL ECTRON IC TEST
月
第 10期
Oct . 2008 No. 10
基 于 MATLAB的 振 动 测 试 信 号 处 理 与
分 析 系 统 设 计 与 实 现
孙 苗 钟 ,赵 鹏
(天 津 科 技 大 学 机 械 工 程 学 院 天 津 300222)
摘 要 :可 以 用 不 同 编 程 语 言 来 实 现 振 动 测 试 信 号 处 理 和 分 析 系 统 ,但 这 些 语 言 在 分 析 功 能 和 图 形 处 理 的 编 程
方 面 难 度 较 大 ;由 于 MA TLAB具 有 强 大 的 信 号 处 理 与 分 析 专 用 函 数 库 以 及 丰 富 的 图 形 显 示 能 力 ,在 此 平 台 上
进 行 M文 件 的 编 程 直 接 调 用 这 些 功 能 来 设 计 该 系 统 比 上 述 语 言 具 有 独 特 优 越 性 、容 易 实 现 ,并 可 运 用 MA T2
LAB的 图 形 界 面 ( GUI)功 能 建 立 在 WINDOWS 系 统 下 可 执 行 的 系 统 操 作 界 面 。 本 文 介 绍 了 中 图 分 类 号 : TH7 文 献 标 识 设的码 计: A 系 统 结 构 框
图 、用 GUI功 能 建 立 图 形 界 面 的 过 程 和 实 现 部 分 功 能 的 编 程 语 言 ,用 实 例 演 示 和 证 实
了 有 关 功 能 处 理 的 结 果 。
关 键 词 :虚 拟 仪 器 ; 振 动 测 试 ; 信 号 处 理 ; 信 号 分 析 ; 编 程
Design and realizatio n of vibratio n test signal processing
and analysis system based on MA TLAB
Sun Miaozhong , Zhao Peng
(College of Mechanical Engineering , Tianjin Universit y of Science & Technolo gy , Tianjin 300222 , China)
Abstract :Different progamming languges can be used to realize a vibration test signal processing and a2 nalysis system .But it is difficult for these languages to program in the cases of signal analysis functions and graphics processing. Because MATLAB has many powerful signal processing , analysis functions and much graphics processing ability. Based on MATLAB , it is more superior and easier to realize this system by M file programs using directly these functions than by the above languages. Furthermore the MATLAB GUI function is used to realize the operation interface of the system based on WIN2 DOWS. This paper also introduces the strutrural frame of the system , partial programming languages of the system and process for graphics interface built by GUI function. Some functions of the sytstem are demonstrated and validated by examples.
Keywords :virt ual inst rument ; vibratio n test ; signal process ; signal analysis ; programming
软 件 ,它 集 数 值 计 算 、信 号 处 理 和 图 形 分等 功 能 于 算 纸 式 的 语 言 。 它 强 大 一 析体 ,被 称 为 演0 引
的 功 能 为 各 言
领 域 的 应 用 提 供 了 基 础 ,已 经 从 最 初 的
MATLAB 是 一 套 高 性 能 的 数 值 计 算 和
“ 矩 阵 实 验 可 视 化
室 “渗 透 到 科 学 与 工 程 计 算 的 多 个 领 域 ,在 自 动 化 控
88
测 控 系 统
2008. 10
制 、信 号 处 理 、小 波 分 析 、神 经 网 络 等 多 个 方 向 都 有
着 广 泛 的 应 用 ,MATLAB 对 振 动 测 试 方 面 也 集 成 了 2 用 GUI功 能 实 现 操 丰 富 的 信 号 处 理 和 分 析 功 能 专 用 函 数
作 2]响 界 面 库 影 [12。 最 大 的 虚 拟 仪 器 编 程 语 言 是 美
国 NI公 司 在 MA TLAB命 令 窗 口 中 输 入 guide ,此
将 Quick Start 对 话 框 。 创 建 一 的 LabV EIW和 LabWindow s/ CVI ,还 有 其 他启 动 时 GUIDE
个 新 的 基 于
GUIWINDO WS 操 作 系 统 的 可 视 化 编 程 工 具 ,根 据 系 统 实 现 的 功 能 决 定 选 择 使 用 的 控 件 , 如
包VB、C + +、Delphi等 。 这 些 平 台 在 系 统 操 括“ 命 令 “按 钮 ( Push But ton) 、“ 文 本 框 “ (edit2 作 界 面
“、 弹 出 菜 单 “(Pop2up menus) 、控 件 板 的 编 程 方 面 各 有 自 己 独 特 的 优 点 ,但 text)这 分 析 系 统 及 界 面 设 计 结 束 后 ,为 了 (panel) 能 脱 离 些 平 台 对 各
和 坐 标 平轴 台(axis) 等 。 还 用 菜 单 编辑器编制 TLAB 单独运行该系统 , 需 要 将 其 种 振 动 测 试 信 号 处 理 和 分 析 功 能 编 程 MA开了 译主 为菜 编发 方 面 ,难
单。 文 件 。 MTLAB自 带 这 样 的 编 译 工 执度 较 大 ,费 时 费 力 ,从 而 限 制 了 某 些 功 行
具 ,编 译 命 能 的 开 发 。 比 如 已 编 程 完 Anisys. m文 件 和 Anisys. 为 mccfig文 ,它 的 相 关 参 数 说 明 可 参 见 MA MA TLAB由 于 其 强 大 的 信 号 处 理 和 分 析 令专件 (1),编 程 如 下 : TLAB的 译用 的 数 在 过 MA TLAB 的 command 窗 口 中 输
。 入 下据 函 数 库 以 及 图 形 显 示 功 能 ,在 MA 帮 助面 命 令 :mcc2B sgl Anisys. m TLAB平 台 上 (2)将 上 步 生 成 的 文 3 . m文 件 和
1 系 统 的 功 件 包 括 贝 到 待 运 行3 .fig 算 机 ,此 进各 件 一 起 拷 的 计能 行 M文 件 的 编 程 可 直 接 调 用 其 内 的 文
时 仍 需 要 种 专 用 函
该 系 统 的 结 构 主 要 包 括 :信 号 预 处
matlab 的 动 态 链 接 库 。 数 库 、时;并 且 分,还 可 利 用 MA TLAB 的 提 供 (3 ) 将 < matlab pat h > / extern/ lib/ 理 域 析 和 频 域 分 析 3个 模 块 。系 统 的 结 构 框 图
win32/ 图 图形 界 面 。 如1所 示
. exel 拷 贝 到 待 运 行 的 计 算 机 。 ( GUI)编 程 功 能 ,通 过 一 些 特 有 的 控 件 mglinstallar ,
(4)先 运 行 mglinstallar. exe , 然 后 选 择 解 能 够 方 便
压 目
实 现 脱 离 MA TLAB平 台 而 在 WINDO WS系
录 ,将 在 指 定 目 录 下 解 压 出 bin和
统 下
toolbox 两 子 目
执 行 的 操 作 界 面 。 利 用 MA TLAB 构 建 一
录 ,在 bin\\ win32 目 录 下 ,就 是 数 学 库 和
套 具 有
图 形 库 ,
功 能 丰 富 的 振 动 测 试 信 号 处 理 与 分 析 系
即 为 脱 离 MA TLAB 运 行 所 需 的 所 有 动
统 具 有 独
态 链 接
通 过 编 程 调 试 ,系 统 运 行 后 界 面 如 图 有 的 优 势 ,易 于 编 程 实 现 。
库 2 所,共 。 37 有示 个 。 可 以 将 3 . dll文 件 考 系入 统系 界统 面的 可 以 进 行 两 通 道 的 信 号 处 理 与 system32 子分 析 ,分 目 录 下 ,也 可 以 直 接 放 在 应 用 程 时序 显目 示 的 图 形 可 根 据 不 同 的 要 求 通 过 析录 下。 而 toolbox目 录 则 必 须 在 应 用 程 序 MAT 2 同 一 目 程 语 言 随 时 变 化 ,从 而 达 到 不 LAB的编图 1 系 统 结
构 框 图 录 的内 显。 示 同
效 果 。
89
2008. 10
ft =kbuvgpussk ; case 4 %带
Test and Control System
阻
ft =kstopk ; otherwiseft =klowk ; end
滤 波 器 种 类 选 择 :
switch kin
case 1 %巴 特 沃 斯
图 2 GUI编 程 的 系 统 界 面
滤波 器[n ,wn] = buttord(wp/ (sf/ 2) ,ws/ (sf/ 2) ,rp ,rs) ;
[ b ,a ] = but ter (n ,wn ,ft) ; case 2 %切 比 雪 夫 I型 2) rp ,rs) ,;
3 部 分 功 能 的 编
程 实 现
滤 波 器 = cheb1o rd (wp/ ( sf/ 2) , ws/ ( sf/ [ n,wn ]
[ b ,a ] = cheby1 (n ,rp ,wn ,ft) ; 系 统 的 功 能 比 较 多 ,不 能 一 一 列 出
M文 件 的 case 3 %切 比 雪 夫 II型 编 程 语 言 。 仅 以 实 现 数 字 滤 波 器 和 快 滤 波 器 = cheb2o rd (wp/ ( sf/ 2) , ws/ ( sf/ [ n,wn ] 速 傅 里 叶 变 2) rp ,rs) ,;3. 1 数 字 滤 换 为 例 介 绍 编 程 语 言 。 波 功器 能系 统 界 面 设 计 了 滤 波 器 选 择 菜 单 可 [ b ,a ] = cheby2 (n ,rs ,wn ,ft) ;
选 择 滤 波 case 4 %椭 圆 滤 波 器 器 类 型 ,通 过 文 本 框 输 入 来 设 置 滤 波 器
[ n , wn ] = ellip but tord (wp/ ( sf/ 2) , ws/
的 相 关 参 ( sf/ ; 2) ,rp,rs)数 。 滤 波 器 采 用 了 完 全 设 计 法 设 计 ,
[ b ,a ] = cheby1 (n ,rp ,rs ,wn ,ft) ;
主 要 包 括 选 择 ot herwise %默 认 巴 特 沃 斯 滤 波 器 滤 波 器 相 关 参 数 滤 波 器 方 式 、种 类 以 及 输 入 的 相 关 参 读:wp 取= str2do uble (get (findo bj (k Tugk ,ktwplkl ,k [n ,wn] = buttord(wp/ (sf/ 2) ,ws/ (sf/ 2) ,rp ,rs) ; 数 ,下 出 截 止 频 率 ( Hz) strivgkl ) ;面 列%通 带[ b ,a ] = but ter (n ,wn ,ft) ; 编 程 的 要 部 分。 (findo bj (k Tugk ,kzwplkl ,k ws = 主 str2double (get
end
strivgkl ) ; %阻 带 截 止 频 率 ( Hz)
y =filter (b ,a ,x) ;
rp = str2do uble ( get (findo bj (k Tugk ,ktwbwkl ,k 以 上 程 序 中 的 mod和 kin参 数 是 通 过
“ 弹 出 菜 strivgkl ) ; %通 带 波 动 系 数 (dB)
单rs = str2do uble ( get (findo bj (k Tugk ,kzwsjkl ,k “选 取 ,然 后 用 程 序 执 行 后 返 回 得 到 strivgkl ) ; %阻 带 衰 减 系 数 (dB)
滤 波 方 式 选 择 :
switch mod case 1 %低 case 2 %高 case 3 %带
的 functio,以 nmod mod_ Callback ( hObject , event data , 为 例 ,语 %言 如 下 : handles) 调 用 Callback 函 数
global mod ; %全 局 变 量 mod = get (hObject ,kVuluekl ; %取
通ft =klowk
通ft =khighk ; 通 90
值
3. 2 快 速 傅 里 叶 变 换
通 过 读 出 数 据 x ,直 接 调 用 fft 函 数 ,并 用 plot
函 数 绘 出 幅 频 曲 线 图 ,其 相 关 语 言 如 下 :
基于MATLAB的振动测试信号处理与分析系统设计与实现



