我要加入 登录
声振论坛 返回首页

lyg112002的个人空间 http://home.vibunion.com/?113863 [收藏] [复制] [分享] [RSS]

日志

Matlab程序在LabVIEW中使用的关键技巧说明

已有 1133 次阅读2009-3-22 23:28 |

 

1 使用matlab toolbox的朋友   -----需要安装matlab,并采用matlab script   不可以脱离matlab环境

     MATLAB Script节点可以实现一些基本的数学运算,如果涉及到比较复杂的数学运算,则可以调用MATLAB 的脚本文件( 文件)来实现。MATLAB 节点 m 位于 Function 面板的 Analyze\Mathematics\Formula\子面板内。

LabVIEW 应用程序中使用 M ATLAB,包括执行 M AT-LAB 命令、使用功能丰富的各种工具箱,如神经网络工具箱(   Neural Network Toolbox)、优化工具箱(Optimiza-tion Toolbox)。值得注意的是:在 LabVIEW 里面 M AT-LAB 节点并不能够判断数据类型,因此用户必须要为每个数据变量指定一个类型。给 MATLAB 节点变量定义数据类型的方法是:在变量上面单击鼠标右键,在弹出的菜单中选择 Choose Data Type命令选项,就会出现 MATLAB 中的各种数据类型名称,然后按照事先在M ATLAB 中定义的类型给每个变量选择合适的数据类型,则系统就会把变量变成相应的 LabVIEW 内的类型。

例子:采用小波toolbox\matlab script
        
采用仿真信号来模拟齿轮振动信号 ,仿真信号由信号 y ( t) 加一高斯白噪声 ( Gaussian White NoiseW aveform)组成 ,其中信号 y ( t) :
         y ( t) = a (1 +m cos2πfr t) cos(2πfz t + bsin2πfr t)
        
其中 a =1, m =0. 35, b =0. 97, fr =25, fz =750
        
本试验采用小波分析的方法对仿真信号进行分析。在 MATLAB语言节点内 ,首先采用 db6小波函数对信号进行 4层分解 ,获取噪声标准偏差和消噪阈值 ,对信号进行消噪。然后用 db4小波对消噪后的信号进行 3层分解 ,并进行低频重构 ,提取有用信息。MATLAB语言节点中的部分程序如下 :
     
信号消噪:
        [ c, l] =wavedec ( nx, 4, ′ ′ db6 ) ;
  / /用小波函数 db6对信号进行4层分解
       sigma =wnoisest( c, l, 1) ;          / /
估计尺度 1的噪声偏差
        alpha = 2;
        thr =wbmpen ( c, l, sigma, alpha) ; / /
获取消噪过程中的阈值
        keepapp = 1;
        xd =wdencmp ( ′ gb1′,c, l, ′ db6′,4, thr, ′s′,keepapp) ;//
信号的低频重构:
        [ c, l] =wavedec ( xd, 3, ′ ′;db4 )
        a =wrcoef( ′a′,c, l, ′ db4′,2) ;         / /
用小波函数 db4对信号进行低频重构


2
不使用toolboxmatlab程序-------无需安装matlab   可以脱离matlab环境
采用mathscript

3 m程序做成dlllabview调用--------可以脱离matlab环境
   ①
编写 M程序。
   ②
设置 Matlab 编译环境: 打开 Matlab, 在命令行
状态下键入:mex -setup, 在出现的提示中选择一个作
为编译器后, 继续在命令行状态下输入:mbuild -setup。
   ③
编译为 dll。
  
将.m 文件编译为.dll 文件, 必须用到 mcc 命令,
当用 mcc 生成 mex(Matlab Executable)程序时, mcc 将
会以 mex 程序格式生成 C 代码并调用 mex 命令将其
编译为.dll 文件。在 matlab 命令行中输入:
  
mcc - t - h - L C - W lib:functionname - T link:lib func-
onname.m
  
当执行完后, 会发现在 functionname.m 所在的目
录中产生了一大堆文件, 其中 functionname.dll 就可以
被 LabVIEW 调用了。

全部作者的其他最新日志

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 我要加入

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-3 01:26 , Processed in 0.031217 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部