找回密码
 注册
LabVIEW+单片机学习套件全套教程资料下载[免费]LabVIEW论坛精华列表贴USB0816数据采集卡《LabVIEW宝典》
LabWindows/CVI论坛精华贴NET0816以太网数据采集卡RC0210远程设备授权系统 关闭关停锁定打开设备 户外分布式数据采集
NET1624低速高精度以太网数据采集卡WIFI0824SD无线WIFI网络数据采集卡脱机运行 SD存储 小尺寸微型 串口采集远程采集 安卓 手持移动采集 纪录仪
查看: 2308|回复: 2

labview调用matlab程序总是报错,请各位看一下阿,在线等答复

[复制链接]
发表于 2007-6-5 13:48:54 | 显示全部楼层 |阅读模式
我使用labview调用matlab程序,用matlab scripe node,结果总是报错,Error 1047 occurred at LabVIEW:  LabVIEW failed to send variable to the script server. Server:"" in 可报警停止.vi
而我的matlab程序在matlab6.5中试运行通过了的,程序如下:
Error 1047 occurred at LabVIEW:  LabVIEW failed to send variable to the script server. Server:"" in 可报警停止.vi

function unequdis=unequdis(D)
T0=298.15;r0=100000;B=3.950*10^3;D=0.1;
matrix=[];
syms r
Trii=B*T0/(B+T0*log(r/r0))-273.15;
ezplot(Trii,[6553,200000])
df=diff(Trii,r);
rstart=double(sym(6553.5));%起始电阻值
T=double(subs(Trii,r,rstart));
Rnew=rstart;
n=1;
flag=1;%为1时计算等式(8),0时计算等式(9)
flag1=1;%循环标志
while (flag1)
   if(flag~=0)         
         f=Trii-T-df*(r-Rnew)+2*D ;
        
            Rnew1=solve(f);%解方成f=0,得到未知参数r的值赋予Rnew1,是切点
            flag=0;
        else
            tempT=T;
            TRnew=double(subs(Trii,r,Rnew1));
            f=Trii-TRnew-subs(df,r,Rnew1)*(r-Rnew1)-2*D;
            Rnew=solve(f);
            T=double(subs(Trii,r,Rnew));
            matrix=[matrix;[Rnew T]];
            flag=1;
            %用前后两次温度之差做跳出循环的条件
            if double(tempT-T)<0.001
                flag1=0;
            end
        end         
end
hold on        
axis([0 200000 10 110])
plot(double(matrix(:,1)),double(matrix(:,2)),'r')
matrix
[m n]=size(matrix);
disp('分段数=')
m-1
hold off


是一个线性插值的算法,问题出在哪里啊
发表于 2007-6-6 11:10:37 | 显示全部楼层
用的服务配置有问题吧,你搜下相关贴子看下

另外你这个可以用labview的mathscript试试,
回复 顶

使用道具 举报

发表于 2008-5-19 09:49:58 | 显示全部楼层
我做的程序也遇到类似的问题,请大家帮忙
回复 顶

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cpubbs论坛. ( 粤ICP备09171248号 )

GMT+8, 2026-9-30 06:24 , Processed in 0.032458 second(s), 7 queries , Gzip On, File On.

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表