1、VB与Matlab混合编程及其在罩极电机CAD中的应用,周裕斌 吴建华,引言,罩极电机由于结构简单,价格低廉,被广泛用于小功率驱动装置,特别是风机一类的装置。 在国内甚至在国外,罩极电机的设计开发还不完善,缺乏有效的设计工具,研究并开发相应的CAD软件具有理论意义和良好的应用价值。 Visual Basic用于开发友好界面的程序非常方便,MATLAB具有十分强大的计算功能,因此二者的混合编程有着广泛的应用。,性能计算,根据定子结构的不同,罩极电机可分为隐极式和凸极式两类。 罩极电机的性能分析一般采用双旋转磁场理论:把椭圆磁场分解为正序和逆序的两个圆形旋转磁场,独立地观察电机在各旋转磁场之下内部
2、的作用关系、能量传递和转矩的计算,然后把正、逆序的作用叠加起来。 基于阶梯梯形波和双旋转磁场理论的分析,得到方形冲片罩极电机的性能计算公式举例如下:,1.主气隙正序视在阻抗,2.n次谐波主气隙正序合成电流,3.主绕组电流,性能计算公式,4.电磁功率,注:符号说明请参见文献从以上公式可以看出,在罩极电机的性能计算中存在大量的复数计算,而VB本身并不支持复数计算功能,因此引入VB与MATLAB的混合编程对罩极电机的性能计算会带来方便。此外,利用MATLAB强大的绘图功能,也可方便解决罩极电机CAD的特性曲线绘制。,混合编程,VB与MATLAB混合编程一般有四种方法:(1)直接利用Matrix VB
3、 (2)调用DLL动态链接库 (3)利用ActiveX自动化技术(4)动态数据交换(DDE)技术 ActiveX自动化技术与动态数据交换(DDE)技术均不能脱离MATLAB环境,但实现过程简单。 Matrix VB虽然能够脱离MATLAB环境,但必须依赖库中的函数,且运行速度较慢。 调用DLL动态链接库不但能够脱离MATLAB环境,而且运行速度很快,但是实现过程有些麻烦。 本文所需的混合编程涉及到复数运算、行列式运算和曲线作图,通过比较,采用调用DLL动态链接库的方法更为有效。,混合编程的实现过程,在MATLAB的command window窗口中输入deploytool,进入该界面,点击Cr
4、eate a new deployment project选项,建立一个工程文件,添加M文件,本文用到的M文件,点击Build选项,进行文件的编译,如果编译成功,组件在计算机中自动注册。同时在保存路径里将产生工程名.prj和工程名文件夹。在工程名文件夹内有distrib和src子文件夹,二者里面都有一个DLL动态链接库,至此DLL动态链接库的生成结束。 点击Package,将此工程进行打包,打包完后会生成 _install.bat和工程名.exe文件。利用安装包即可完成DLL动态链接库在其它计算机的注册和使用。,应用与实验验证,部分VB使用混合编程的代码如下: (1)复数乘运算(Z22Z33)
5、Call acomcal.mul(2, Fcalpara.ER, Fcalpara.EI, Fcalpara.Z22R, Fcalpara.Z22I, Fcalpara.Z33R, Fcalpara.Z33I) (2)复数除运算() Call acomcal.div(2, Fcalpara.ImpR, Fcalpara.ImpI, Fcalpara.Z22R, Fcalpara.Z22I, m, n) (3)复数行列式运算(a+bi)Call acomcal.hls(2, m, n, a, b) (4)绘制性能曲线(主绕组电流-转速曲线Im=f(n))Call acomcal.fig(fgpa
6、ra.n, fgpara.Im),利用混合编程所绘制的部分曲线,CAD的输出转矩-转速曲线,CAD的效率-转速曲线,实验验证,利用所开发CAD,设计了一台方形冲片罩极电机(额定电压110V,额定功率5W,额定转速2400r/min),并对样机进行了实验分析,实验装置示意图如下:,设计的性能数据,测量的性能数据,比较实测数据与软件计算得到的数据,可以看出,实测数据的所有曲线的走势与软件计算结果一致,输出功率、输入功率、效率、功率因数与计算结果基本吻合,验证了混合编程应用的正确性。,总结,针对罩极电机性能计算涉及大量复数计算的特点,以及性能曲线作图的需求,详细讨论了VB与MATLAB的混合编程,开发了基于混合编程的罩极电机CAD。 应用与实验表明,VB与MATLAB混合编程用于罩极电机CAD,不仅有效提高软件开发效率,而且能保证性能计算的可靠性和准确性。,谢谢观看!,结束,