南牛电机设计软件——专业智能自动设计软件,人人都能设计电机!

南牛电机设计软件——专业智能自动设计软件,人人都能设计电机!
南牛软件工作室——宁波高新区南牛电机技术有限公司
您的位置首页 >> 网友案例共享 >> 内容

基于VB6.0的异步电机设计程序.doc

2015-6-30 10:39:40 来源:网络 作者:中国人 点击:1538

基于VB6.0的异步电机设计程序.doc

基于VB6.0的异步电机设计程序
中文摘要
由于电子计算机的普及及计算技术的逐渐发展,传统的电机设计人工算法步骤日益显得繁琐。在这种背景下,电机设计的计算机辅助设计应运而生。计算机辅助设计是利用一些计算机程序,将设计中的步骤全部程序化。这种设计和传统手算比起来,既可以大大提高效率,又可以大大提高精度,因而目前得到了广泛的应用。
VB6.0由于其强大的功能和可视化的使用界面而广受欢迎。本设计使用Visual Basic 6.0作为设计语言。使用计算机设计处理设计中的图表及循环将非常方便。设计中有用户输入和输出界面,将使人机交流变得非常简洁。本设计最后附有设计程序。
关键词:电机设计 计算机辅助设计  VB6.0

 

 

 

 


 
The Program of Motor Design Designed by VB
Abstract
As the popularity of computer and computing technology evolved, the traditional motor design seems increasingly cumbersome manual steps of the algorithm. In this context, the electrical design of computer-aided design came into being. Computer-aided design is the use of computer programs, all the steps in the design procedures. Compared to traditional hand-counted, this design is both efficiency and accuracy , which is currently widely applied.
VB6.0 , popular with its powerful features and visual user interface .The design uses Visual Basic 6.0 as a design language. Designed to handle computer graphics and design cycle will be very convenient. Design a user interface input and output, will become very simple man-machine communication. Finally, the design add the design process to the last.
Key WordS:   motor design  computer-assistant design  VB6.0

 

 

 


 
目  录
中文摘要 I
ABSTRACT II
目  录 III
绪论 我国电机制造业的近况及趋势 1
0.1我国电机制造业发展概述 1
0.2我国电机行业和发达国家的差距 1
第一章 电机设计中的计算机辅助设计 3
1.1电机设计的任务及设计时给定的数据 3
1.2 电机设计过程及内容简介 3
1.3 计算机辅助设计在电机设计中的应用 4
1.4电机的计算机辅助设计步骤 4
第二章 三相异步电动机简介 6
2.1 感应电机的结构 6
2.2 异步电机的运行状态 7
2.3 异步电机的额定值 8
第三章VB6.0 简介 9
3.1  VB简介 9
3.2 VB主要功能特点 9
第四章 电机计算机辅助设计常用方法 12
4.1辅助设计的分类 12
4.2辅助设计的一般步骤 12
4.3 曲线和图表的数学处理方法之一——插值法 13
4.4 曲线和图表的数学处理方法之二——公式法 14
4.5 计算机辅助设计中常用的数值计算方法 15
4.6设计分析程序 15
4.7设计综合程序 17
第五章 异步电机设计具体步骤 18
5.1 电机CAD校核设计程序界面设计 18
5.2 电机CAD校核程序设计 28
总   结 44
感   谢 45
主要参考文献(资料) 46
 
0    我国电机制造业的近况及趋势
0.1我国电机制造业发展概述
我国的电机制造业主要是从新中国建立之后才发展起来的。由于底子较弱,所以只能从模仿前苏联的电机产品开始,到能够自行设计小型电机,再到大中型发电设备及特殊用途电机。我国电机经历了几十年的艰苦奋斗,已经取得了很大的成就,在有些方面已经达到或者接近世界先进水平,但是总体上和世界先进水平还是有一定差距的。下面介绍一下我国电机制造业的概况。
(1)产品品种、规格不断增加,单机容量不断增大,技术经济指标不断提高,产品“三化”程度不断提高。在火电方面,我国目前已经可以生产200MW水氢氢冷和300MW双水内冷与水氢冷汽轮发电机,600MW水氢冷汽轮发电机,现已能设计制造1000MW汽轮发电机组,150MW的空冷发电机组。水电方面,目前已经基本掌握了各种主要类型的水电机组的设计和制造技术,其中产量较多、发展较快的混流式机组,最大单机容量已达700MW,轴流机组最大则达200MW,贯流式机组则达45MW。此外还生产了12.5MW冲击式、15MW斜流式和150MW蓄能式机组等。风电方面,除设计制造小型风力发电机外,还研制成功了既有自主知识产权的660kW风力发电机组,并可生产制造兆瓦级大型风力发电机组、控制系统和变压器等。
(2)新材料、新工艺、新技术的应用。在绝缘材料方面,目前我国生产的电机主要采用B级绝缘,F级及H级很少采用,但前者正在积极向F级及H级过渡。漆的绝缘性能在电机制造行业及绝缘材料行业的共同努力下,电机绝缘浸漆从有溶剂到无溶剂再到无溶剂浸渍漆。我国电机制造业从2002年起全面采用冷轧硅钢片作为铁心材料,性能优良的无硅低碳电工硅钢片半冷轧无取向硅钢片已经在部分电机中采用。
在电机设计方面,我国各企业积极地采用计算机作为电机设计的辅助分析工具,包括电磁计算,温度场的计算辅助分析,开发了各种电机的辅助分析软件以及虚拟开发平台。
(3)新型电机原理、电机控制理论、测试技术、新型发电方式的应用。近年来,我国对一些新型电机,如超声波电机、磁悬浮物轴承电机及其他新类型的电机进行了研究,取得了可喜的成就。对电机绕组、附加损耗、附加转矩、电机冷却、大型电机端部磁场、变频调速电机的调速技术都进行了研究,取得了显著成绩。
0.2我国电机行业和发达国家的差距
由于我国的电机工业起步较晚、底子薄弱、科技投入不足,我国的电机制造行业和发达国家相比,无论在电机容量、产品品种、产品性能、产量、新材料供应等方面都存在着不小的差距,总体来说,我国电机制造业目前还处于追赶状态。
(1)品牌方面的差距  国外著名的电机企业都有自己的品牌,如西门子、ABB、GE、Baldor等,但我国的电机企业在国际市场上没有自己的品牌,出口产品基本上都是订单产品。
(2)生产规模上的差距  国外的许多大型企业既能生产交流电机,又能生产直流电机,既生产低压电机又能生产高压电机,技术比较全面,综合能力很强。而我国的企业则生产品种相对单一,到目前还没有航母级的企业。
(3)生产水平的差距  以发电设备为例,到目前为止,我国所能生产的汽轮发电机组的最大单机容量为1000MW,而国外已经达到了1.45GW;电压等级我国为24kV,国外为27kV。
生产效率的差异
(4)由于原材料、生产设备的落后,我国的电机企业的生产废品率约为10%,而国外约为0.3%。

 

 

 

 

 

 

 

1    电机设计中的计算机辅助设计
1.1电机设计的任务及设计时给定的数据
(1)电机设计的任务与对设计人员的要求
电机设计的任务是根据用户提出的产品规格(如功率、电压、转速等),技术要求(如效率、参数、温升限度、机械可靠性要求等),结合技术经济方面国家的方针政策和生产实际情况,运用有关的理论和计算方法,正确处理设计时遇到的各种矛盾,从而设计出性能好、体积小、结构简单、运行可靠、制造和使用维修方便的先进产品。
从事电机设计工作的人员要注意贯彻国家的技术经济政策,并注意所设计电机的经济性和可靠性。既努力使产品满足用户要去,又要尽可能降低生产成本。
在设计前和设计过程中,研究人员还应认真进行调查研究,听取有关人员的建议和意见,注意理论与实践、设计与工艺相结合。
(2)电机设计时给定的数据和对电机的主要技术要求
电机设计时通常给定下列数据:
①额定功率:发电机为电枢线端输出的电功率;电动机为轴上输出的机械功率;同步调相机为线端超前电流下的输出的无功功率。
②额定电压:对交流电机指线电压,对直流电机指电枢端电压。
③相数及相间连接方式。
④额定频率。
⑤额定转速或同步转速。
⑥额定功率因数。
1.2 电机设计过程及内容简介
(1)准备阶段
通常包括两方面内容:首先是熟悉国家标准,收集相近电机的产品样本(或样机)和技术资料(包括实验数据),并听取生产和使用单位的意见与要求;然后在国家标准有关规定及分析相应资料的基础,编制技术任务书或技术建议书。
(2)电磁设计
本阶段的任务是根据技术条件或技术任务书的规定,参照生产实践经验,通过计算和方案比较,来确定与所设计电机电磁性能有关的尺寸和数据,选定有关材料,并核算其电磁性能。
(3)结构设计
结构设计的任务是确定电机的机械结构、零部件尺寸、加工要求与材料的规格及性能要求,包括必要的机械计算及通风和温升计算。
通常,首先根据技术条件或技术任务书(技术建议书)中规定的防护型式、安装方式与冷却方式,再考虑电磁计算中所选负荷的高低来选取合适的通风冷却系统;然后安排产品的总体结构,绘制总装配草图。最后分别绘制部件的分装配图和零件图,并对总装配草图进行必要的修改。
1.3 计算机辅助设计在电机设计中的应用
    最近几十年计算技术的飞速发展,使得计算机辅助设计在电机设计中得到了广泛的应用。现代电机设计理论、计算技术、数据库技术、信息技术、人工智能技术及其他相关技术在电机设计中的应用,就产生了电机设计计算机辅助设计技术,简称电机CAD技术。
电机CAD技术的广泛应用,使得设计人员避免了大量重复的手工演算,避免了使用经验或半经验公式,使得设计人员在设计阶段就能预测电机的全部性能,缩短了产品的试制周期,减少了试制投资。
电机CAD技术从上世纪五十年代开始,目前已经取得了相当大的成就。国内许多的电机制造公司都开发了自己的电机制造软件,利用这些软件,设计人员只需要输入需要设计的电机的具体技术指标,如额定电压、额定转速、额定功率、额定转矩等数据,软件就可以根据设计者输入的数据利用程序化的设计语言自动计算出所需要的设计数据。这样就大大提高了设计的效率,减轻了工作量,也避免了手工计算中的许多不精确之处。
目前,电机设计中的计算机辅助设计以其优越的设计性能和极高的设计效率已经成为电机设计的主流。我国湘潭电机厂研制了基于三维CAD软件solidworks的点继续你设计开发平台,虚拟设计平台的目的是在产品设计及开发定型前,通过计算机仿真将问题尽量在计算机上解决,实现无差设计,使电机设计由经验设计和类比设计转化为给予分析的优化设计。虚拟开发平台采用三维CAD软件,设计产品直接导入CAE软件进行电磁场分析、结构分析、热与流体分析;导入CAM软件自动生成供数控机床使用的数控代码,为制造工艺设计提供零件设计的质量数据。大型电机的机体以焊接件为主,solidworks的焊接件设计模块能有效地提高设计件的设计效率。
1.4电机的计算机辅助设计步骤
(1)明确设计程序类型
计算机辅助设计电机程序有三种不同的类型,即分析设计、综合设计、优化设计以及电磁场有限元分析。这几种不同的设计程序往往有不同的程序结构,不尽相同的数据模型,所以输入输出的数据也不尽相同。
一般而言,分析设计程序比较简单,往往容易获得成功。在分析设计比较成熟以后,可以根据需要着手编制综合程序。综合设计的难度往往与综合程度的高低有关,有的简单的在分析设计的基础上,增加了局部综合的能力,形成了自动选择绕组线规综合、自动冲片开槽设计,可自动得到大批方案。还有综合调整设计,具有较强的自动设计参量的功能。可以根据实际需要,先易后难,加以选择。

(2)确定编程语言
编程语言一般可以选择Visual Basic、Visual C++等。
Visual指的是开发图形用户界面(GUI)的方法,它不需要编写大量的代码去描述界面元素的外观和位置,而只需要把预先建立的对象拖放到屏幕的指定位置上,visual basic会自动生成程序代码并且封装起来。
关于VB 6.0的详细介绍,我们将在下一章讨论,这里仅作简单的了解。由于Visual Basic的强大功能,国内的许多电机设计软件都采用VB编程。我们这里也选用VB 6.0来作为我们的编程语言。能够用visual basic完成的任务,用visual C++也能够完成。Visual C++的编程方式更加灵活,功能更加强大,编程效率更高,但相对来说,Visual C++的数据结构更加复杂,选用VB 6.0就足够完成我们的设计任务。
(3)编写源程序
这是整个设计工作中最重要的一步,这届关系到整个设计工作的成败。我们首先应构思分析整个程序的构图。无论是主程序还是模块程序,都应绘出程序框图,框图是编制程序的依据,同时又有利于源程序的修改。总框图力求清晰、明了、一目了然,能简明而形象的表达程序的逻辑思想,反映程序的基本结构和计算层次。其次是应当设计用户界面,一般来说,用户界面应该是windows风格,应该具有直观、易学、易用、容错功能强等特点。再次编写源程序。用算法语言编写源程序是一项十分细致的工作,主要根据程序框图和原始资料进行,同时又要注意不同的计算机对使用算法语言方面的一些特殊规定或者限制,选用合适的变量标识符,有直观性、系统性、规律性。不要一时贪快,急于上机试算,要宁稳勿急。不要存侥幸心理,要仔细推敲,只有这样才能收到事半功倍的效果,使以后的上机调试工作顺利进行。
(4)调试源程序
所谓程序调试,就是将一套已经预知结果的手工计算题目的原始数据输入计算机中,从计算机计算得中间结果和最终结果是否与手算结果一致,观察执行的路线是否与设计逻辑一致,有无死循环的发生等等。

 

 

 

 

 

 

2    三相异步电动机简介
感应电机由于其稳定运行时转子转速往往低于同步转速,所以又称异步电机。它是主要依靠定子、转子之间的电磁感应作用,在转子内感应电流以实现机电能量转换的装置。感应电机在工业上一般都作为电动机,少数场合下亦可作为发电机。
感应电机由于其结构简单、制造方便、价格便宜、运行可靠、易于维护的特点,使得其在工业中应用极广。感应电机的主要缺点是,不能经济得在较宽的范围内实现平滑调速,因此功率因素恒为滞后。
2.1感应电机的结构
感应电机的定子由定子铁心、定子绕组和机座三部分组成。
定子铁心是主磁路的一部分,为减少激磁电流和旋转磁场在铁心中产生的涡流和磁滞损耗,铁心由厚0.5mm的硅钢片叠压而成。在定子铁心内圆,均匀的冲有许多形状相同的槽,用以嵌放定子绕组。为了得到较好的电磁性能,大、中型感应电机都采用双层短距绕组。
 转子由转子铁心、转子绕组和转轴组成。转子铁心也是主磁路的一部分,一般由0.5mm的硅钢片叠成,铁心固定在转轴或转子支架上。转子的外表呈圆柱形。转子绕组又分为笼型和绕线形两类。
(1)笼型转子
笼型绕组是一个自行闭合的绕组,它由插入每个转子槽中的导条和两端的环形端环构成,如果去掉铁心,整个绕组形如一个笼子,故得名为笼型转子,或者鼠笼型转子。笼型感应电机结构简单,制造方便,是一种经济耐用的电机。为节约用铜和提高生产率,小型笼型电机一般都用铸铝转子;对大中型电机,由于铸铝质量不易保证,故采用导条插入槽内、再在两端焊上端环的结构。

 

                                         
               
 
图2-1笼型电机转子

 

 

 


(2)绕线形转子
绕线式转子感应电机的转子绕组是三相对称绕组,三相绕组通过三个集电环、电刷引出。与笼型转子相比较,绕线式转子感应电机结构复杂,价格贵,主要应用于要求起动力矩大,起动电流小或需要调速场合,此时转子回路通过集电环和电刷串电阻来增大起动力或调速.
无论绕线式电机还是笼型电机,在感应电机运行过程中,转子绕组都自行短路。

 

 

 

 

 

 

 

图2-2 绕线形异步电机
2.2 异步电机的运行状态
(1)电动机状态
转子感应电流与磁场相互作用将产生电磁力和电磁转矩,由右手定则可知,电磁转矩与旋转方向相同,所以与转子转向相同,电磁转矩为驱动转矩。
一般情况下,感应电机转子速度总是略低于或略高于旋转磁场转速,所以感应电机又称为“异步电机”。旋转磁场转速(同步转速 ns )与转子转速n之差,称为转差,转差∆n 与同步转速ns 之比称为转差率,用S表示,即:
 
电机从电网吸收电能,通过电磁感应,由转子输出机械功率,电机处于电动机状态。 0<S<1
(2)发电机状态
若原动机拖动转子使转子速度高于旋转磁场转速 n<ns ,则转差率S<0。此时电机转子绕组中感应电势和电流与电动机状态相反,电磁转矩的方向将反向,电磁转矩为制动性质,原动机必须给转子输入机械功率,通过电磁感应由定子侧输出电功率,电机处于发电机状态。
(3)电磁制动状态
若由于机械或者其他外因是转子逆着旋转磁场的方向旋转,则转差率s 1。此时转子导体切割气隙磁场的相对速度方向与电动机状态时相同,故转子导体中的感应电动势和电流的有功分量与电动机状态时相同,电磁转矩方向异亦相同。但由于转子转速改变,此电磁转矩表现为制动转矩。此时电动机处于电磁制动状态,它一方面从外界吸收机械功率,一方面从电网吸收电功率,两者都变成电机内部的损耗。


              图3-4 异步电动机的三种运行状态

2.3  异步电机的额定值
(1)额定功率   指电动机在额定状态下运行时,轴端输出的机械功率,单位为千瓦(kW)。
(2) 定子额定电压   指电动机在额定状态下运行时,定子绕组应加的线电压。单位为伏(V)。
(3)定子额定电流IN(A)     指电机在额定状态下运行时,输出功率达到额定功率,外加电压为额定电压,流入定子绕组的线电流。   
(4)额定频率  指加于定子边的电源频率,我国工频规定为50Hz。
(5)额定转速  电机在额定状态下运行时的转速,单位为( )。

3    VB6.0 简介
3.1  VB简介
Microsoft公司推出windows以后,立即以其新颖的图形用户界面、卓越的多任务操作系统性能、高层次的软件开发平台而风靡全球。尤其windows环境下office实用软件的方便使用,使不少熟悉DOS软件开发的用户想到自己手动设计用户界面,以满足各种应用程序的需要。然而即使对有经验的程序员来说,其工作难度也是相当大的。为了编写windows环境下的运行程序,必须建立相应的窗口、菜单、对话框等各种“控件”,程序的编制也显得越来越复杂。
1991年microsoft公司推出的应用程序开发工具——visual basic,使这种情况有了根本的改变。Visual意为“可视化的”,指的是一种开发图形用户界面(GUI)的方法,所以visual basic是基于basic的可视化的成语设计语言。在visual basic中,既继承了其先辈basic所具有的程序设计语言简单易用的特点,其编程机制又采用面向对象、事件驱动的编程机制,用一种巧妙地方法把windows的编程复杂性封装起来,提供了一种所见即所得的可视界面设计方法,给广大非计算机专业的人学习、使用、研究和开发windows下的应用程序带来了福音。
Visual basic最初是由microsoft公司于1991年推出的,刚推出visual basic也有缺陷,功能也相对少一些。经过microsoft公司的不断努力,1993年推出的VB3.0已经初具规模,进入实用阶段,利用VB可以快速创建多媒体、图形界面等的应用程序。1995年、1997年和1998年相继推出的VB4.0、VB5、0和VB6、0,在开发环境、功能上进一步完善和补充,尤其在数据库管理、网络应用方面更甚一筹,使得VB成为许多程序员首选地编程工具。
由于VB的程序结构简单,编写程序对系统的资源占有极低。即使考虑到VB程序本身编译和运行效率较低的不足,但是它的快捷的开发速度,简单易学的语法,体贴便利的开发环境,使得其成为目前世界上使用最广泛的程序开发工具之一。
VB6.0包括三个版本,分别为学习版(learning)、专业版(professional)、企业版(enterprise)。
(1)学习版  是VB6.0的基础版,是针对初学者学习和使用的,包括所有的内部控件、网格、数据绑定等控件。
(2)专业版  针对计算机专家,除了具有学习版的所有内容外,还具有activex、internet控件开发工具、动态HTML页面设计等高级特性。
(3)企业版  VB6.0的最高版本,除了具有专业版的所有功能外,还包括一个backoffice特殊工具。
 3.2 VB主要功能特点
VB的中心思想就是要便于程序员使用,无论是新手或者专家。VB使用了可以简单建立应用程序的GUI系统,但是又可以开发相当复杂的程序。VB的程序是一种基于窗体的可视化组件安排的联合,并且增加代码来指定组建的属性和方法。因为默认的属性和方法已经有一部分定义在了组件内,所以程序员不用写多少代码就可以完成一个简单的程序。
(1)具有面向对象的可视化设计工具
在VB中,应用面向对象的程序设计方法(oop),把程序和数据封装起来作为一个对象,每个对象都是可视的。程序员在设计时只需要用现有工具根据设计要求直接在屏幕上“画”出窗口、菜单、按钮、滚动条等不同类型的对象,窗体控件的增加和改变可以用拖放技术实现,一个排列满控件的工具箱用来显示可用控件(比如文本框或者按钮),并为每个对象设计属性。。。每个控件都有自己的属性和事件。默认的属性值会在控件创建的时候提供,但是程序员也可以进行更改。很多的属性值可以在运行时候随着用户的动作和修改进行改动,这样就形成了一个动态的程序。程序员的编程工作仅仅编写针对对象要完成哪些功能的程序,因而程序的效率可以提高很多。
(2)事件驱动的编程机制
事件驱动是非常适合图形用户界面的编程方式。传统的编程机制是面向过程的,按程序事先设计的流程运行。但在图形用户界面的应用程序中,用户的动作即事件掌握着程序的运行流向,每个时间都能驱动一段程序的运行。程序员只要编写相应用户相应动作的程序代码即可,各个动作之间不一定需要联系。这样的应用程序代码较短,使得程序即易于编写又易于维护。
(3)提供了易学易用的应用程序集成开发环境
在VB集成开发环境中,用户可以设计界面、编写代码、调试程序,直至把应用程序编译成可执行文件,在windows中运行,使用户在有好的开发环境中工作。
(4)结构化的程序设计语言
VB具有丰富的数据类型、众多的内部函数和结构化程序结构,而且简单易学。
(5)支持多种数据库的访问
利用数据控件或ODBC能够访问的数据库系统有,microsoft access、btrieve、dbASE、Microsoft FoxPro和Paradox等,也可访问Microsoft Excel 、Lotus1-2-3等多种电子表格。
(6)OLE技术
VB的核心就是其对对象的连接与嵌入(OLE)的支持,利用OLE,VB能够开发集成声音、图像、字处理、动画、web等于一体的应用程序。
(7)Active技术
Active技术发展了原有的OLE技术,它使得开发人员拜托了特定语言的束缚,可方便得使用标准的Active控件,调用标准的接口,实现特定的功能。
(8)完备的Help联机帮助功能
与windows环境下的软件一样,在VB中,利用帮助菜单和FI的功能键,用户可随时方便得得到所需的帮助信息;VB帮助窗口中显示了有关的示例代码,通过复制、粘贴操作可获取大量的示例代码,为用户的学习和使用提供了方便。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4    电机计算机辅助设计常用方法
4.1辅助设计的分类
(1)“设计分析”程序
按设计设计人员事先估计好的若干设计参量,依一定程序步骤来计算产品的性能,相当于通常的设计核算。它是设计综合和设计优化的基础。
(2)“设计综合”程序:
根据已知的性能要求,决定电机各设计参量的程序。
与“设计分析”的区别:它可在规定的产品性能和技术条件下,自动选择适当的技术参数和结构尺寸,从而得也可行的设计方案。即自动修改并重复分析设计,最终得到适合给定要求的设计方案的程序。
(3)“设计优化”程序:
对设计问题提出明确的数学模型,然后依据现代数学的寻优理论并采用优化方法,自动得到较优或最优方案的程序。
4.2辅助设计的一般步骤
(1)选取电机初始设计参量:
①冲片尺寸: 、 、 、 、 、 、 、槽形尺寸
②绕组参量: 、 、 、 、 、 、连接法
(2)校核电机性能指标: 、 、 、
①调整电机有关参量: 、 、 、 、转子槽形尺寸
②挑选最佳电机设计方案
Ⅰ磁路计算     
Ⅱ参数计算     
Ⅲ性能计算     
Ⅳ起动计算     
4.3  曲线和图表的数学处理方法之一——插值法
插值法的实质:  对于有 的函数关系的一条曲线,在使用计算机时不可能将无限多组的对应数据都存贮于机内。因此只能将曲线“离散化”,输入有限个对应数据,它们分别和曲线上有限个离散点对应,相邻两离散点间的数据则依人为选定的函数关系来表示,这就是插值法的实质。
(1) 一元插值
电机设计中有许多曲线和图表,例如磁化曲线、感应电机饱和系数曲线等,都是一元函数关系。手算时可查曲线和图表中的相应值;机算时可用线性或抛物线插值代替查曲线或图表。
磁化曲线中可以将B值小的部分用线性插值,因为这段曲线近似是直线;B值大的部分用抛物线插值,因为这段曲线已与直线差得很多。
①.线性插值  线性插值的实质就是将整条曲线用分段直线代替。差值点越多,段数就分的越多,分段直线就越逼近真实曲线,计算精度越高。一般而言,取有限个点就能满足工程实践对精度的要求。而且用计算机强大的处理能力来实现循环计算,速度非常快,而且准确率极高,因此线性插值在工程中应用很广。
  
②.抛物线插值  采用抛物线插值时,设最靠近插值点x的三个插值点的编号分别为k,k+1,k+2,则计算x处函数值y(x)的抛物线插值函数为 
 
(2)二元插值
电机设计中也遇到需要读取由二元函数表示的曲线族,即 的情况。二元函数的插值方法也可以理解为两次应用一元插值,这两个一元插值可以是线性的或抛物线的。这与手算时查曲线的规律一样。由于二元差值算法复杂,工程中不是经常用到,对于本次设计使用一元插值就足以完成任务,所以我们这里不做具体介绍。
4.4  曲线和图表的数学处理方法之二——公式法
电机设计中要用到很多类型的曲线,如果这些曲线都采用插值法处理,将使计算机程序变得非常庞杂。如果有可能找出函数关系来代替原曲线,则既可节省大量存贮单元,使程序变得简洁,又能节省计算时间。这就是曲线的公式化。实际上,电机设计书中好多的图彪都是有公式转化而来,在电子计算机还不是很普及的年代,将公式转化为图表将大大加快所需数据的获取时间,精度基本上可以得到满足。但是在电子计算机如此普及的今天,如果我们又将图表转化成插值函数,不光浪费时间精力,而且精度不够,所以我们需要恢复公式的原貌。基处理途径如下:
(1)恢复使用原始公式
将绘成的曲线恢复为原来的理论公式,一般不必再验证其精确度。
(2)用相应公式模拟曲线
在电机设计所用曲线中,有些不是理论指导的,如硅钢片磁化曲线;有些虽有来源但计算过份复杂。机算中有必要把这些曲线公式化。公式化的步骤是首先根据曲线形状确定公式类型,如直线,抛物线,双曲线等;然后用待定系数法在常用范围内由曲线的已知点求公式的系数。有时也可以采用分段函数拟合,即不同段的函数采用不同的的曲线类型,以获得最佳的拟合效果。
①直线:    
②抛物线:  
③双曲线:  
④双曲线的变型表达: 如  
(3)对原曲线进行改造
①根据可靠资料,另找其它曲线或公式取代原曲线
②应用数值解法彻底改变原有计算方法
4.5 计算机辅助设计中常用的数值计算方法
    为提高计算精度并充分发挥计算机的计算功能,可利用数值计算方法来改造原有公式。
(1)数值积分
数值积分只应用于被积函数不能用解析式表达的情况,其精确度取决于分点的多少。当被积函数能用解析式表达时,就没有采用数值积分的必要。
(2)解非线性联立方程组
①迭代法
②对分法
③近似解析解法
④曲线公式化解析解
4.6设计分析程序
(1)手算程序改编成计算程序
现有的手算程序一般都是核算程序,即在给定定转子铁心及绕组数据条件下,核算电机各项性能。设计人员要按经验作适当估算,先给出铁心长度、定转子内外径、槽数、槽尺寸及绕组型式、匝数、导线尺寸、接法、并联路数等设计数据后,才能按程序逐项进行手算,看各项指标能否达到规定要求;然后再按经验由教育处得出的结果,调整给定的数据。
将手算程序的各个公式依次变成计算机程序,即为设计分析程序。
需解决的问题:
① 曲线与图表的处理;
② 迭代的处理。
(2)框图的作用与编制原则
①框图的作用
⑴有利于在设计前集中精力处理全局性问题;
⑵框图能清晰地表示源程序的结构、层次及重要的细节;
⑶框图是编制源程序的基础,比冗长的语言程序更便于交流,同时也利于简化;
⑷通过框图能更好地阅读,调整和修改源程序。
②电机设计框图的编制原则
⑴设计逻辑必须简明,力求结构紧凑、清晰、层次分明,根据电机设计的特点,一般把整个设计分成若干独立单元,使得局部参量的调整不致影响全局。
⑵为了避免“交叉循环”,常选择既能改善性能,又对其它参量没有影响或影响很小的参量作为调整的参量。当无法避免若干变量综合组合时,应做到循环嵌套层次分明,把调整效果明显、牵涉面广的变量尽量放在内层。
⑶处理好设计中的迭代问题对保证一定的计算精度和缩短计算时间有很重要的意义。
⑷框图或程序的编制可考虑将多次重复使用的运算编成子程序,做到简单、清晰。
(3)迭代的处理
①初设值、允许误差与再设值
初设值:根据经验统计资料而定。
计算值与假设值的允许误差:根据程序本身计算精度要求及计算工作量而定。
再设值:根据这段迭代过程计算的经验选取。
②控讨是否有直接解取代迭代的可能
4.7设计综合程序
(1) 变量的确定
(2) 定子梨形槽尺寸的决定
(3) 绕组导线尺寸的决定
(4) 设计综合程序的基本结构

 

 

 

 

 

 

 

5    异步电机设计具体步骤
校核设计、综合设计、优化设计是电机CAD三个不同的层次,其中校核设计是基础,程序编写容易,应用灵活;而优化设计是电机CAD的高级阶段,虽然能得到较好的经济性能和技术性能,但是数学模型建立困难,编程难度大,在实际中应用较少。我们这里以校核设计为基础,详细介绍电机CAD系统开发过程中界面设计、图表处理、输入数据处理、输出数据处理、循环计算等基本方法。
5.1  电机CAD校核设计程序界面设计
电机CAD的校核程序相当于“高速计算器”,计算电机的各种性能指标、参数、并将其输出到合适的设备。因此校核设计的第一步就是确定系统的输入输出参数、个数、类别,并设计合适的界面。一般来说,三相异步电动机的输入输出参数有近百个,不宜放在一个窗体,因此主窗体的设计至关重要,它直接关系到用户的输入输出参数以及使用的方便程度。下面我们从最基本的开始做起,一步步完成异步电机的设计。
首先需要在电脑上安装visual basic 软件,目前比较通用的是VB6.0,。安装好了之后打开软件,会弹出如下的界面:


图5-1 VB6.0启动界面

会有一个新建工程窗体,上面有三个选项:新建、现存、最新。新建选项会为我们创建一个新的窗体,默认名称叫做form1。选择现存选项会为我们打开电脑里以保存的工程文件的文件夹。选择最新选项会为我们打开最近在本机上操作过的vb文件。在这里我们只需要选择新建“标准EXE”,就可以创建一个新窗体。新窗体如下图所示:
 
图5-2 选择标准EXE启动后界面

新建的工程1相当于一个画布,上面摆放了许多类似form1的窗体,我们可以通过鼠标拖动来改变“画布”和窗体的大小。在form1窗体的右侧,我们会看到许多的窗口,一般vb默认为三个窗口,即:
(1)工程资源管理器窗口  工程资源管理器窗口我们可以管理当前打开的工程及窗体以及查看代码。
(2)属性窗口  在属性窗口我们可以管理选中窗体或控件的属性,例如给窗体改名等。
(3)窗体布局窗口  在窗体布局窗口我们可以通过鼠标拖动当前窗体在整个工程窗口的位置,例如让窗体居中,当程序运行后我们就可以看到窗体在整个工程窗口的正中位置。
三种窗体如图所示:


图5-3    工程资源管理器窗口
 
                                                               
图5-4  工程属性窗口
                
 
图5-5  窗体布局窗口
我们还可以将我们所需要的控件拖动到form1窗体上,实现各种命令。Form1的名称是可以改变的,例如在这里我们将其改名为“主窗体”,只需要在form1窗体上单击一下,选中form1,在其属性里找到caption属性,将其改为“主窗体”即可,改完之后在窗体名称上就会显示“主窗体”。如果想改变窗体的名称,只需要将其名称属性改为“frm主窗体”即可。注意这里工程文件的前缀必须是frm,frm之后可以使中文也可以是英文。
下来我们来在主窗体中创建我们所需要的界面。
在菜单栏里找到工程,单击,再选择部件选项,打开一个对话框,里面有控件、设计器、可插入对象三个选项,再在里面选择第一个控件,可以看到出现好多可供选择的控件(图5-6所示)。


                     图 5-6 可供选择的控件

在里面选择miscrosoft tabled dialog control 6.0控件,再单击确定,就会在工具栏里出现一个如图5-7所示的控件:


               图5-7 miscrosoft tabled dialog control 6.0控件图形

我们在工具栏上面双击该控件图形,或者点击它再将它拖动到主窗体合适的位置再松开,就会在主窗体上创建一个该控件。新创建的控件由于其默认属性它的大小会比较小,我们可以通过鼠标拖动来改变它的大小。该控件的默认属性中的tab为3,tabperrow属性为3,即该控件最上方总共显示3个桌面,且每行显示三个,分一行显示。为了设计的需要我们需要改变这两个属性值,我们将tab属性值改为5,将tabperrow属性改为为5,则界面如图5-8所示:

          
图  5-8 主窗体的tab图形

为了程序的需要我们要改变tab的标题属性。在主窗体中单击tab 0切换到tab 0的桌面,在其右侧的属性窗口中找到caption属性,将其改为“基本参数”,如此依次改变tab 1~tab 4的caption属性分别为“定子参数”、“转子参数”、“计算输出”、“帮助说明”,改变后的tab如图所示:

              
图 5-9 改变名称后的主窗体tab图形

改变名称后,我们点击相应的那个显示tab的caption属性的地方,可以再对应的桌面下完成相应的界面设计。这里需要注意的一个问题是:如果想要在“基本参数”桌面下创建一个控件,我们不能再“基本参数”桌面下直接创建,而需要在别的窗体(同一个工程中)中创建所需的控件之后,再剪切或者复制到“基本参数”桌面下。如果我们采取直接创建的方法,那么创建的控件在别的桌面下也是可见的,这将会导致界面的混乱。
下面我们来在各个桌面下创建所需的控件。
创建所需的控件我们需要用到:标签控件(label)、文本框控件(textbox)、命令按钮控件(commandbutton)。
(1) 基本参数桌面  在工程资源管理器里面单击“frm主窗体(frm主窗体)”,选中它,再右击,弹出一个如图5-10所示的对话框:

            
                        图 5-10 添加新窗体

选择添加→添加窗体,就可以创建一个名为form1 的新窗体。在这个窗体上,我们新建12个label,将其分两列竖着排列,将其caption属性依次改为:“额定输出功率Pn(kw):”、“额定电压Un(v):”、“极对数P:”、“频率f(HZ):”、“额定转速Nn(rpm):”、“铁心长度li(mm):”、“工作温度C:”、“效率η1:”、“功率因数cosφ1:”、“最大转矩倍数Tm1:”、“起动转矩倍数Tst1:”、“启动电流倍数Ist1:”,其名称属性由于程序中不会用到,且不会在用户界面中显示出来,所以可改可不改。如果要改的话其前缀名必须是lbl。
然后添加12个文本框。将12个标签和12个文本框一一对应起来。这里涉及到修改它们的名称属性及text属性,将它们的名称属性依次改为:⑴“txtPn”、⑵“txtUn”、⑶“txtp”、⑷“txtf” ⑸“txtNn”、⑹ “txtli”、⑺“txtC”、⑻“txtata1”、⑼“txtcosfai1”、⑽“txtTm1”、⑾“txtTst1”、⑿“txtIst1”.这里为了输入数据的直观性,也为了简化处理,我们将文本框的text属性也作出修改,将他们依次改为:“⑴11000”、⑵“380”、⑶“2”、⑷“50”、⑸“1460”、⑹“0.155”、⑺“115”、⑻“0.88”、⑼“0.84”、⑽“2.2”、⑾“2.2”、⑿“7.0”,那么这些输入数据就可以在桌面上直接显示出来。整个桌面如图4-11所示:

 

                            图 5-11 基本参数桌面

   (2)定子参数桌面  点击桌面的“定子参数“选项,会出现一个空白的桌面,这里我们可以设计我们的定子输入参数模式。和前文一样,我们这里需要用到label控件和text控件。
      我们先建立label控件。定子参数中有14个输入数据,因此建立14个标签。这14个标签每7个一列排成两列。这14个标签的caption属性依次改为:⑴“内径Di1(m):”、⑵“外径D1(m):”、⑶“槽数Z1:”、⑷“伸出铁心长度l:”、⑸“并联支路数Ni1:”、⑹“每槽导体数Ns1:”、⑺“线径d1:”、⑻“r21:”、⑼“b11:”、⑽“b01:”、⑾“h11:”、⑿“h21:”、⒀“bi1:”、⒁“h01:”。它的名称属性可改可不改。
     我们再创建14个文本框用于输入这14个定子参数。由于以后程序中会涉及到数据的传送,故这14个文本框的名称属性和text属性局需要修改。名称属性依次改为:⑴“txtDi1”、⑵“txtD1”、⑶“txtZ1”、 ⑷“txtl”、⑸“txtNi1”、⑹“txtNs1”、⑺“txtdl”、⑻“txtr21”、⑼“txtb11”、⑽“txtb01”、⑾“txth11”、⑿“txth21”、⒀“txtbi1”、⒁“txth01”。它们的text属性依次改为:⑴“0.17”、⑵“0.26”、⑶“36”、⑷“0.015”、⑸“2”、⑹“29”、⑺“0.0013”、⑻“0.0051”、⑼“0.0077”、⑽“0.0038”、⑾“0.0011”、⑿“0.0141”、 ⒀“0.00745”、⒁“0.0008”。
     这里我们再附上定子槽型:
 
图 5-12定子槽型
  设计完成或定子参数桌面如图5-13所示:


                     图 5-13 定子参数桌面

   (3) 转子参数桌面  先切换到转子参数桌面,这里我们需要输入13个参数,所以创建13个label和13个text。先创建13个标签,这13个label排成两列,每列分别6个和7个。它们的caption属性依次改为:⑴“气隙δ:”、⑵“内径Di2:”、⑶“导条长lB:”、⑷“端环平均直径DR:”、⑸“端环截面积AR:”、⑹“导条(端环)电阻率ρ:”、⑺“r22”、⑻“b12:”、⑼“b02:”、⑽“bi2:”、⑾“h02:”、⑿“h12”、⒀“h22:”。
它们的text文本框的名称属性依次改为:⑴“txtdat”、⑵“txtDi2”、⑶“txtlB”、⑷“txtDR”、⑸“txtAR”、⑹“txtrou”、⑺“txtr22”、⑻“txtb12”、⑼“txtb02”、⑽“txtbi2”、⑾“txth02”、⑿“txth12”、⒀“txth22”。它们的text属性依次改为:⑴“0.0005”、⑵“0.06”、⑶“0.185”、⑷“  ”、⑸“0.0004”、⑹“0.0000000217”、⑺“0.0024”、⑻“0.0048”、⑼“0.001”、⑽“0.01135”、⑾“0.0005”、⑿“0.0011”、⒀“0.0249”。
再附上转子槽型:
 
图 5-14 转子槽型

设计完成或定子参数桌面如图5-15所示:
 
图 5-15 转子参数桌面

   (4) 计算输出桌面  切换到输出桌面后,我们需要输出五组数据,每组4个,总共20个。我们先创建5个标签,竖着排成一列,它们的caption属性依次改为:①“效率η:”、②“功率因数cosφ:”、③“最大转矩倍数Tm:”、④“起动转矩倍数Tst:”、⑤“起始电流倍数Ist:”。再横着创建四个标签,它们的caption属性依次改为:①“标准值:”、②“计算值:”、③“绝对偏差:”、④“相对偏差:”。
     再创建20个text文本框,排成四行五列。如果按从下到右的顺序依次排列,则这二十个文本框的名称属性依次为:⑴“txtata”、⑵“txtcosfay”、⑶“txtTm”、⑷“txtTst”、⑸“txtIst”、⑹“txtata计算值”、⑺“txtsosfay计算值”、⑻“txttm计算值”、⑼“txttst计算值”、⑽“txtist计算值”、⑾“txtata绝对偏差”、⑿“txtcosfay绝对偏差”、⒀“txttm绝对偏差”、⒁“txttst绝对偏差”、⒂“txtist绝对偏差”、⒃“txtata相对偏差”、⒄“txtcosfay相对偏差”、⒅“txtcosfay相对偏差”、⒆“txttst相对偏差”、⒇“txtist相对偏差”。它们的text属性里则存放计算输出值及标准值。
    还要再设计两个按钮分别用于计算和退出。双击工具箱中的“commandbutton”两次,建立两个按钮,将他们的名称属性分别改为:cmd计算和cmd退出,将caption(标题)属性改为:计算和退出。
    计算输出桌面如下图所示:
 
                        图5-16 计算输出桌面

(5) 帮助说明桌面  这个桌面用于解释程序设计中的一些复杂的及需要注意的地方。暂且留出空白。
至此我们的主程序界面已经设计完成。下面我们要做的就是程序设计。
5.2  电机CAD校核程序设计
    主程序可以在主窗体对应的写代码处编写。具体如下:找到工程资源管理器(如果工程资源管理器已经被关闭,找到工具栏里的视图选项,选择里面的工程资源管理器即可),其下方有三个选项:查看代码、查看对象、切换文件夹,点击“查看代码”选项,就可以打开代码窗口,在里面编写代码。
(1)需要注意的问题如下:
① 由于程序中有许多的查表函数和公共变量,故需要创建一个类模块,来存放这些函数和变量。存放在这里的函数和变量相当于公共资源,本工程中的窗体都可以调用。类模块的具体创建方法如下:在当前工程中任意选择一个窗体,右击弹出一个菜单,选择“添加”→“添加模块”即可。如下图所示:
 
                     图 5-17 添加模块

② 对于循环的处理,我们利用“goto语句+circleN+lineN:(N=1,2,3)”处理,其中goto语句的实现形式应为:
If ……then
    Goto lineN
Else
Goto circleN
End if
Line标记和circle循环应该突出一些,以便于程序阅读。
③ 程序中需要利用到许多的图表,对于这些图表能还原成公式的尽量还原成公式(如集肤效应引起的电阻增加系数KF和漏抗减少系数Kx),对于不能还原成公式的,我们利用插值法(大多为一元插值)。对于差值我们利用了两种方法:1)分段线性化,例如磁化曲线的处理;2)分段函数法,即将一条曲线分为有限段,每一段用直线、双曲线或者抛物线等常见曲线近似(如 曲线)。
(2) 模块里面的公用变量和程序 
模块(module1)里面写入的程序如下:
Public PN, Un, p, z2, D1, f, Nn, Pf, Pmc, li, kw, C        '基本参数
Public Ikw, ata1, cosfai1                                   '基本参数
Public dat, Di2, lB, DR, AR, rou, r22, b12, b02, bi2, b22, hs2, hj2, Tst1, Ist1, Tm1           '转子参数

Public Di1, Z1, l, Ni1, Ns1, r21, b11, b01, h11, h21, bi1, hs1, xj, Kp1, kd1        '定子参数

Function FSf(x)
  ' Dim Fsh As Variant
   If x < 1.25 Then
     FSf = 1.971 - 0.4 * x
   ElseIf x >= 1.25 Then
     FSf = 1.971 - 0.4 * x + 0.42 * (x - 1.25) * (x - 1.25)
   End If
End Function
Function CHQXf(x)
   Dim i, j
   Dim b, h As Variant
    b = Array(0.4, 0.45, 0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95, 1, 1.05, 1.1, 1.15, 1.2, 1.25, 1.3, 1.35, 1.4, 1.45, 1.5, 1.55, 1.6, 1.65, 1.7, 1.75, 1.8, 1.85)
    h = Array(138, 148, 158, 169, 181, 194, 210, 228, 250, 276, 306, 341, 383, 433, 493, 568, 652, 762, 890, 1050, 1260, 1550, 2010, 2670, 3780, 5340, 7200, 9500, 12200, 15200)
   
    If x < b(1) Then
        i = 0
        CHQXf = h(i) + (x - b(i)) * (h(i + 1) - h(i)) / (b(i + 1) - b(i))
    ElseIf x >= b(28) Then
        i = 28
        CHQXf = h(i) + (x - b(i)) * (h(i + 1) - h(i)) / (b(i + 1) - b(i))
    Else
        For j = 1 To 27
            If x >= b(j) And x < b(j + 1) Then
                i = j
                CHQXf = h(i) + (x - b(i)) * (h(i + 1) - h(i)) / (b(i + 1) - b(i))
                Exit For
            End If
        Next j
    End If
  
End Function

Function tshxs(x)
    Dim i, j, b, p01
    b = Array(0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95, 1, 1.05, 1.1, 1.15, 1.2, 1.25, 1.3, 1.35, 1.4, 1.45, 1.5, 1.55, 1.6, 1.65, 1.7, 1.75, 1.8, 1.85, 1.9, 1.95)
    p01 = Array(0.7, 0.8, 0.91, 1.03, 1.16, 1.31, 1.46, 1.62, 1.78, 1.94, 2.1, 2.32, 2.53, 2.75, 3, 3.26, 3.56, 3.84, 4.2, 4.6, 5.1, 5.7, 6.4, 7.06, 7.64, 7.96, 8.15, 8.6, 9.1, 9.6)
    If x < b(1) Then
        i = 0
        tshxs = p01(i) + (x - b(i)) * (p01(i + 1) - p01(i)) / (b(i + 1) - b(i))
    ElseIf x >= b(28) Then
        i = 28
        tshxs = p01(i) + (x - b(i)) * (p01(i + 1) - p01(i)) / (b(i + 1) - b(i))
    Else
        For j = 1 To 27
            If x >= b(j) And x < b(j + 1) Then
                i = j
                tshxs = p01(i) + (x - b(i)) * (p01(i + 1) - p01(i)) / (b(i + 1) - b(i))
                Exit For                                                 '这是什么?
            End If
        Next j
    End If
 End Function
   
Function Qdlkxs(x)
    Dim i, j
    b = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
    K = Array(0.985, 0.85, 0.65, 0.51, 0.42, 0.355, 0.31, 0.28, 0.25, 0.23, 0.215, 0.2, 0.19, 0.18, 0.17)
    If x < b(1) Then
        i = 0
        Qdlkxs = K(i) + (x - b(i)) * (K(i + 1) - K(i)) / (b(i + 1) - b(i))
    ElseIf x >= b(13) Then
        i = 13
        Qdlkxs = K(i) + (x - b(i)) * (K(i + 1) - K(i)) / (b(i + 1) - b(i))
    Else
        For j = 1 To 12
            If x >= b(j) And x < b(j + 1) Then
                i = j
                Qdlkxs = K(i) + (x - b(i)) * (K(i + 1) - K(i)) / (b(i + 1) - b(i))
                Exit For
            End If
        Next j
    End If
End Function
Function KNMf(x) 'Knm = f(Ks)
    If x < 1.5 Then
        KNMf = 1.17 - 0.06 * x
    Else
        KNMf = 1.1291 - 0.033 * x
    End If
End Function

Function ZXBLf(x)  '笼型转子谐波比漏磁导系数
    Dim M, N, i, j
    M = Array(3, 4, 5, 6, 7, 8, 9, 10, 12, 15, 20, 25, 30, 40, 50)
    N = Array(0.097, 0.053, 0.034, 0.023, 0.017, 0.013, 0.01, 0.0083, 0.0057, 0.0036, 0.0021, 0.0013, 0.0009, 0.0005, 0.0003)
    If x < M(1) Then
        i = 0
        ZXBLf = N(i) + (x - M(i)) * (N(i + 1) - N(i)) / (M(i + 1) - M(i))
    ElseIf x >= M(13) Then
        i = 13
        ZXBLf = N(i) + (x - M(i)) * (N(i + 1) - N(i)) / (M(i + 1) - M(i))
    Else
        For j = 1 To 12
            If x >= M(j) And x < M(j + 1) Then
                i = j
                ZXBLf = N(i) + (x - M(i)) * (N(i + 1) - N(i)) / (M(i + 1) - M(i))
                Exit For
            End If
        Next j
    End If
End Function
Function SinHf(x)
    SinHf = (Exp(x) - Exp(-x)) / 2
End Function
Function CosHf(x)
    CosHf = (Exp(x) + Exp(-x)) / 2
End Function

Function LCBHf(x) '启动时的漏磁饱和系数 Kx=f(BL)
    Dim M, N, i, j
    M = Array(1#, 2#, 3#, 4#, 5#, 6#, 7#, 8#, 9#, 10#, 11#, 12#, 13#, 14#, 15#)
    N = Array(0.985, 0.86, 0.663, 0.52, 0.42, 0.36, 0.315, 0.28, 0.255, 0.234, 0.218, 0.2, 0.188, 0.178, 0.17)
    If x < M(1) Then
        i = 0
        LCBHf = N(i) + (x - M(i)) * (N(i + 1) - N(i)) / (M(i + 1) - M(i))
    ElseIf x >= M(13) Then
        i = 13
        LCBHf = N(i) + (x - M(i)) * (N(i + 1) - N(i)) / (M(i + 1) - M(i))
    Else
        For j = 1 To 12
            If x >= M(j) And x < M(j + 1) Then
                i = j
                LCBHf = N(i) + (x - M(i)) * (N(i + 1) - N(i)) / (M(i + 1) - M(i))
                Exit For
            End If
        Next j
    End If
End Function

(3)主窗体下的程序代码
Public ata1, cosfai1, f, Ist1, kw, li, Nn, p, Pf, Pmc, PN, Tm1, Un, zp2 As Single

Private Sub cmd计算_Click()
    '输入数据
    Un = 380
    PN = 11000
    p = 2
    li = 0.155
    ata1 = 0.88
    cosfai1 = 0.84
    Di1 = 0.17
    D1 = 0.26
    Z1 = 36
    Ni1 = 2
    r21 = 0.0051
    b11 = 0.0077
    b01 = 0.0038
    h11 = 0.0011
    h21 = 0.0141
    bi1 = 0.00745
    h01 = 0.0008
    dat = 0.0005
    Di2 = 0.06
    r22 = 0.0024
    b12 = 0.0048
    b02 = 0.001
    bi2 = 0.01135
    h02 = 0.0005
    h12 = 0.0011
    h22 = 0.0249
    lB = 0.185
    AR = 0.0004
    z2 = 26
    f = 50
    d11 = 0.0013
    DR = 0.1285
    Tm1 = 2.2
    Tst1 = 2.2
    Ist1 = 7
    pai = 3.14159
   
   
   
    '其中的基本参数
    PN = Val(txtPn.Text)
    Un = Val(txtUn.Text)
    p = Val(txtp.Text)
    f = Val(txtf.Text)
    Nn = Val(txtNn.Text)
    li = Val(txtli.Text)
    ata1 = Val(txtata1.Text)
    cosfai1 = Val(txtcosfai1.Text)
    Tm1 = Val(txtTm1.Text)
    Tst1 = Val(txtTst1.Text)
    Ist1 = Val(txtIst1.Text)
   
   
   
    '其中的定子参数
    Di1 = Val(txtDi1.Text)
    D1 = Val(txtD1.Text)
    Z1 = Val(txtZ1.Text)
    l = Val(txtl.Text)
    Ni1 = Val(txtNi1.Text)
    Ns1 = Val(txtNs1.Text)
    dl = Val(txtdl.Text)
    r21 = Val(txtr21.Text)
    b11 = Val(txtb11.Text)
    b01 = Val(txtb01.Text)
    h11 = Val(txth11.Text)
    h21 = Val(txth21.Text)
    bi1 = Val(txtbi1.Text)
    h01 = Val(txth01.Text)
   
   
   
    '其中的转子参数
    dat = Val(txtdat.Text)
    Di2 = Val(txtDi2.Text)
    lB = Val(txtlB.Text)
    DR = Val(txtDR.Text)
    AR = Val(txtAR.Text)
    rou = Val(txtrou.Text)
    r22 = Val(txtr22.Text)
    b12 = Val(txtb12.Text)
    b02 = Val(txtb02.Text)
    bi2 = Val(txtbi2.Text)
    h02 = Val(txth02.Text)
    h12 = Val(txth12.Text)
    h22 = Val(txth22.Text)
   
   
   
    Sxbl = Array(0.0265, 0.0129, 0.0082, 0.0059, 0.0047, 0.0035)     '三相60度相带谐波比漏磁导系数,取整距绕组,β=1
    m1 = 3          '三相
    Unfai = Un     '三角接法
    Ikw = PN / (m1 * Unfai)      'Unfai为外施相电压
  
    Zp1 = Z1 / (2 * p)
    zp2 = z2 / (2 * p)
    lef = li + 2 * dat       '铁芯有效长度
    D2 = Di1 - 2 * dat        '转子外径
   
    tao = 3.141592654 * Di1 / (2 * p)      'tao为极距
    t1 = 3.141592654 * Di1 / Z1         't1为定子齿距
    z2 = 26
    t2 = 3.141592654 * D2 / z2        't2为转子齿距
    bsk = t1              '转子斜槽宽
   
    Apie = 26000                  '线负荷
    Nfai = ata1 * cosfai1 * 3.141592654 * Di1 * Apie / (m1 * Ikw)       '每相串联导体数
    a1 = 1 '取并联之路为1
   
    Ns1 = m1 * a1 * Nfai / Z1 '每槽导体数
    Ns1 = Ns1 - 1
    Nfai = Ns1 * Z1 / (m1 * a1) '16 每相串联导体数
    N1 = Nfai / 2               '每相串联匝数
    I11 = Ikw / (ata1 * cosfai1)   '定子电流初步估计值
    j11 = 5  '定子电密
    NA = 2.654 * 10 ^ (-6)
    'NA = I11 / (a1 * j11)  '17   导线并绕根数与每根导线截面积的乘积
cycle3:
    h = 0.002
    Acj = (2 * r21 + b11) * (h21 + h11 - h) / 2 + 3.141592654 * r21 * r21 / 2    '槽面积
    datai = 0.0003
    Ah = datai * (2 * (h21 + h11) + 3.141592654 * r21)           ' 槽绝缘占面积
    Aef = Acj - Ah                       '槽有效面积
    d12 = d11 + 0.00008
    Sf = Ni1 * Ns1 * d12 * d12 / Aef               'Sf为槽满率,d12为绝缘后线径
    Kp1 = 1
    a = 2 * p * 3.141592654 / Z1
    q = 3
    kd1 = Sin(q * a / 2) / (q * Sin(a / 2))                  '短距系数
    Kdp1 = kd1 * Kp1                '绕组系数
    Mxyx = Nfai * Kdp1                '每相有效串联导体数
    Ab = (b02 + b12) * h12 / 2 + b12 * h22 + 3.141592654 * r22 * r22 / 2          '转子导条截面积
    '磁路计算

    Ke1 = 0.927
cycle2:
    E1 = Ke1 * Unfai
    Ks1 = 1.2
cycle1:
    Knm1 = KNMf(Ks1)
    fai = E1 / (4 * Knm1 * Kdp1 * f * N1)         '23 每极磁通
    Kfe = 0.95
    Ai1 = Kfe * li * bi1 * Zp1
    Ai2 = Kfe * li * bi2 * zp2                      '每极下齿部截面积
    Hj1pie = (D1 - Di1) / 2 - (r21 + h01 + h11 + h21) + r21 / 3     '定子轭部计算高度
    Hj2pie = (D2 - Di2) / 2 - (r22 + h02 + h12 + h22) + r22 / 3     '转子轭部计算高度
    Aj1 = Kfe * li * Hj1pie
    Aj2 = Kfe * li * Hj2pie                             '轭部导磁面积
    Adat = tao * lef                '一极下空气隙截面积
    Fs = FSf(Ks1)                  '波幅系数
    Bdat = Fs * fai / Adat    '气隙磁密
    bii1 = Fs * fai / Ai1       '  29  定子齿部磁密 Bii1为磁密的Bi1
    bii2 = Fs * fai / Ai2       '  30  转子齿部磁密  Bii2为磁密的Bi2
   
    '处理磁化曲线
    Hi1 = CHQXf(bii1) '  定子齿磁场强度
    Hi2 = CHQXf(bii2) '  转子齿磁场强度
    Kdat1 = t1 * (4.4 * dat + 0.75 * b01) / (t1 * (4.4 * dat + 0.75 * b01) - b01 * b01)
    Kdat2 = t2 * (4.4 * dat + 0.75 * b02) / (t2 * (4.4 * dat + 0.75 * b02) - b02 * b02)
    Kdat = Kdat1 * Kdat2          '气隙系数
    datef = Kdat * dat         '有效气隙长度
    Li1 = (h11 + h21) + r21 / 3      '齿部磁路计算长度
    Li2 = (h12 + h22) + r22 / 3          '齿部磁路计算长度
    Lj1pie = 3.141592654 * (D1 - Hj1pie) / (4 * p)
    Lj2pie = 3.141592654 * (Di2 + Hj2pie) / (4 * p)   '轭部磁路计算长度
    miu0 = 0.4 * 3.141592654 * 10 ^ (-6)   '空气磁导率   10^(-6)
    Fdat = Kdat * Bdat * dat / miu0
    Fi1 = Hi1 * Li1
    Fi2 = Hi2 * Li2     '齿部磁压降
    Ks = (Fdat + Fi1 + Fi2) / Fdat '饱和系数
    wucha = Abs((Ks1 - Ks) / Ks)          '误差
    If wucha > 0.01 Then
        Ks1 = Ks - (Ks - Ks1) / 3
        GoTo cycle1
    Else
        GoTo line1
    End If
line1:
    Bjj1 = fai / (2 * Aj1)    '定子轭部磁密
    Bjj2 = fai / (2 * Aj2)    '转子轭部磁密
    Hjj1 = CHQXf(Bjj1)
    Hjj2 = CHQXf(Bjj2)    '磁场强度
    Cj1 = 1.3 - 2 * Bjj1 / 3                                             '这是什么?
    Cj2 = 1.3 - 2 * Bjj2 / 3   '轭部磁位降校正系数
    Fj1 = Cj1 * Hjj1 * Lj1pie
    Fj2 = Cj2 * Hjj2 * Lj2pie
    F0 = Fdat + Fi1 + Fi2 + Fjj1 + Fjj2   '每极磁势
    Im = 2 * p * F0 / (0.9 * m1 * N1 * Kdp1) '满载磁化电流
    Imxing = Im / Ikw     '磁化电流标幺值
    Xmsxing = 1 / Imxing
   
   
   
   
   
   
    '参数计算
    beita = 0.852 ' 节距比
    taov = 3.141592654 * (Di1 + 2 * (h01 + h11) + h21 + r21) * beita / (2 * p) '定子线圈节距
    lB = li + 0.03   '直线部分长度                                                                         为什么?
    l0 = lB + 1.2 * taov  ' 平均半匝长
    lE = 0.03 + 1.2 * taov '端部平均长
    Cx = 3.141592654 * 4 * f * miu0 * N1 * N1 * Kdp1 * Kdp1 * lef * PN / (m1 * p * Unfai * Unfai)     '漏抗系数
    Kv1 = 1
    Kl1 = 1    '节距漏抗系数
    lmdav1 = h01 / b01 + 2 * h11 / (b01 + b11)
    lmdal1 = 0.765  'why
    lmdas1 = Kv1 * lmdav1 + Kl1 * lmdal1  '定子槽比漏磁导
    Xs1xing = 2 * m1 * p * li * lmdas1 * Cx / (Z1 * Kdp1 * Kdp1 * lef) '铁芯部分槽漏抗
    q1 = 3
    s = Sxbl(q1 - 2)
    Xdat1xing = m1 * tao * s * Cx / (3.141592654 * 3.141592654 * datef * Kdp1 * Kdp1 * Ks) '定子谐波漏抗
    Xe1xing = 0.47 * (lE - 0.64 * taov) * Cx / (lef * Kdp1 * Kdp1)    '端部漏抗
    Xre1xing = Xs1xing + Xdat1xing + Xe1xing '定子漏抗标幺值
    lmdav2 = h02 / b02
    lmdal = 1.86 '待查
    lmdal2 = 2 * h12 / (b02 + b12) + lmdal
    lmdas2 = lmdav2 + lmdal2
    Xs2xing = 2 * m1 * p * li * lmdas2 * Cx / (z2 * lef) '转子槽漏抗标幺值
    Rhe = ZXBLf(zp2)        '笼型转子谐波比漏磁导系数 ΣR                                                    哪里来的?
    Xdat2xing = m1 * tao * Rhe * Cx / (3.141592654 * 3.141592654 * datef * Ks) '转子谐波漏抗标幺值
    Xe2xing = 0.757 * DR * Cx / (lef * 2 * p) '转子绕组端部漏抗标幺值
    Xskxing = 0.5 * bsk * bsk * Xdat2xing / (t2 * t2) '转子斜槽漏抗
    Xre2xing = Xs2xing + Xdat2xing + Xe2xing + Xskxing  '转子漏抗标幺值
    Xrexing = Xre1xing + Xre2xing    '定转子漏抗标幺值之和
    rouw = 0.0000000217
    R1 = rouw * 2 * N1 * l0 / (NA * a1)            '62   定子绕组直流电阻
    R1xing = R1 * Ikw / Unfai             '63  定子绕组相电阻标幺值
    Gcu = 1.05 * l0 * Ns1 * Z1 * 8900 * 2.654              '64  定子铜的重量                           
    Gfe = 0.95 * li * (D1 + 0.005) * (D1 + 0.005) * 7800           '硅钢片重量
    Rbpie = lB * 1.04 * 0.0000000434 * 4 * m1 * N1 * N1 * Kdp1 * Kdp1 / (Ab * z2)
    Rbxing = Rbpie * Ikw / Unfai
    Rrpie = 0.0000000434 * DR * z2 * 4 * m1 * N1 * N1 * Kdp1 * Kdp1 / (2 * 3.141592654 * p * p * Ab * z2)
    Rrxing = Rrpie * Ikw / Unfai
    R2pie = Rbpie + Rrpie '折算至定子边的的转子电阻
    R2xing = Rbxing + Rrxing
    I1pxing = 1 / ata1 '定子电流有功分量标幺值
    re1 = (Xmsxing + Xre1xing) / Xmsxing
    Ixxing = re1 * Xrexing * I1pxing * I1pxing * (1 + re1 * re1 * Xrexing * Xrexing * I1pxing * I1pxing) '67 转子电流无功分量标幺值
    I1qxing = Imxing + Ixxing
    Ke = 1 - (I1pxing * R1xing + I1qxing * Xre1xing) '满载电势标幺值
    mzdswucha = Abs((Ke1 - Ke) / Ke)
    If mzdswucha >= 0.005 Then
        Ke1 = Ke - (Ke - Ke1) / 8
        GoTo cycle2
    Else
        GoTo line2
    End If
line2:
    kzdsbyz = 1 - Imxing * Xre1xing '70   空载电势标幺值
    Bi10 = kzdsbyz * bii1 / Ke
    Bi20 = kzdsbyz * bii2 / Ke
    Bj10 = kzdsbyz * Bjj1 / Ke
    Bj20 = kzdsbyz * Bjj2 / Ke
    Bdat0 = kzdsbyz * Bdat / Ke
    Hi10 = CHQXf(Bi10)
    Hi20 = CHQXf(Bi20)
    Hj10 = CHQXf(Bj10)
    Hj20 = CHQXf(Bj20)
    Hdat0 = CHQXf(Bdat0)
    Fi10 = Hi10 * Li1
    Fi20 = Hi20 * Li2
    Fj10 = Cj1 * Hj10 * Lj1pie
    Fj20 = Cj2 * Hj20 * Lj2pie
    Fdat0 = Kdat * dat * Bdat0 / miu0
    F00 = Fdat0 + Fi10 + Fi20 + Fj10 + Fj20 '空载时没极磁势
    Im0 = 2 * p * F00 / (0.9 * m1 * N1 * Kdp1) '  空载磁化电流
   
   
   
   
    '工作性能计算
    I1xing = Sqr(I1pxing * I1pxing + I1qxing * I1qxing) '定子电流标幺值
&nb, sp;   I1 = I1xing * Ikw
    'a = 2
    J1 = I1 / (1 * NA)
    sxfh = m1 * Nfai * I1 / (3.141592654 * Di1) '85  定子线负荷
    I2xing = Sqr(I1pxing * I1pxing + Ixxing * Ixxing) ' 转子电流标幺值
    I2 = I2xing * Ikw * m1 * Nfai1 * Kdp1 / z2  '导条电流实际值
    Ir = I2 * z2 / (2 * 3.141592654 * p) '端环电流实际值
    Jb = I2 / Ab '导条电流密度
    Jr = Ir / AR ' 端环电流密度
    Pcu1xing = I1xing * I1xing * R1xing '88  定子铜耗标幺值
    Pcu1 = Pcu1xing * PN
    Pal2xing = I2xing * I2xing * R2xing '转子铝损耗标幺值
    Pal2 = Pal2xing * PN
    Psxing = 0.02
    Ps = Psxing * PN  '负载时的附加损耗
    Pfw = 9 * D1 * D1 * D1 * D1 * 10 ^ 4 / (p * p) '机械损耗
    Pfwxing = Pfw / PN
    Gj = 4 * p * Aj1 * Lj1pie * 7800 '轭部重量
    Phej = tshxs(Bj10)
    Pfej = 2 * Phej * Gj '定子轭部铁耗
    Gi = 2 * p * Ai1 * Li1 * 7800
    Phei = tshxs(Bi10)
    Pfei = 2.5 * Phei * Gi   '定子齿部铁耗
    Pfe = Pfej + Pfei '92 全部铁损耗
    Pfexing = Pfe / PN
    Phexing = Pcu1xing + Pal2xing + Psxing + Pfwxing + Pfexing '总损耗标幺值
    Pn1xing = 1 + Phexing '输入功率标幺值
    ata = 1 - Phexing / Pn1xing
    xlwucha = Abs((ata - ata1) / ata)
    If xlwucha >= 0.005 Then
        ata1 = ata + (ata - ata1) / 5
        GoTo cycle3
    Else
        GoTo line3
    End If
line3:
    cosfai = I1pxing / I1xing
    Pferxing = (Pfej / 2 + Pfei * 0.6) / PN
    Sn = Pal2xing / (1 + Pal2xing + Pferxing + Psxing + Pfwxing) '额定转差率
    Nn = 60 * f * (1 - Sn) / p
    Tmxing = (1 - Sn) / (2 * (R1xing + Sqr(R1xing * R1xing + Xrexing * Xrexing))) '最大转矩倍数

   
   
   
    '起动性能计算
    Istpie = 3.5 * Tmxing * Ikw '假设起动电流
cycle4:
    Fst = Istpie * Ns1 * 0.707 * (Kv1 + kd1 * kd1 * Kp1 * Z1 / z2) * Sqr(kzdsbyz) / a1
    beita0 = 0.64 + 2.5 * Sqr(dat / (t1 + t2))
    Bl = miu0 * Fst / (2 * dat * beita0)               '101
    Kz = Qdlkxs(Bl)
    Cs1 = (t1 - b01) * (1 - Kz)
    Cs2 = (t2 - b02) * (1 - Kz)
    datlmdav1 = (h01 + 0.58 * h11) * Cs1 / (b01 * (Cs1 + 1.5 * b01))
    lmdas1st = Kv1 * (lmdav1 - datlmdav1) + Kl1 * lmdal1 '起动时转子槽比漏磁导
    Xs1xingst = lmdas1st * Xs1xing / lmdas1 '起动时定子槽漏抗
    Xdat1xingst = Kz * Xdat1xing '107   起动时定子谐波漏抗
    Xre1xingst = Xs1xingst + Xdat1xingst + Xe1xing '108 起动时定子漏抗
    hb = 0.0284
    kesi = 0.001987 * hb * Sqr(f / 0.0000000434)
    Kf = kesi * (SinHf(2 * kesi) + Sin(2 * kesi)) / (CosHf(2 * kesi) - Cos(2 * kesi)) ' 集肤效应引起的电阻增加系数KF和漏抗减少系数Kx
    Kx = 3 / (2 * kesi) * (SinHf(2 * kesi) - Sin(2 * kesi)) / (CosHf(2 * kesi) - Cos(2 * kesi))
    datlmdav2 = h02 * Cs2 / (b02 * (Cs2 + b02))
    lmdas2st = lmdav2 - datlmdav2 + Kx * lmdal2 '起动时转子槽比漏磁导
    Xs2xingst = lmdas2st * Xs2xing / lmdas2
    Xdat2xingst = Kz * Xdat2xing
    Xskxingst = Kz * Xskxing
    Xre2xingst = lmdas2st + Xs2xingst + Xskxingst + Xe2xing '115 起动时转子漏抗
    Xrexingst = Xre1xingst + Xre2xingst
    R2xingst = Kf * Rbxing + Rrxing '起动时转子电阻
    Rxingst = R1xing + R2xingst '起动时总电阻
    Zxingst = Sqr(Rxingst * Rxingst + Xrexingst * Xrexingst) '起动时总阻抗
    Ist = Ikw / Zxingst '起动电流
    qddlwucha = Abs((Ist - Istpie) / Ist)
    If qddlwucha >= 0.001 Then
        Istpie = Ist + (Ist - Istpie) / 8
        GoTo cycle4
    Else
        GoTo line4
    End If
line4:
    Istbs = Ist / I1 '起动电流倍数
    Tstxing = R2xingst * 100 * (1 - Sn) / (Zxingst * Zxingst) '起动转矩倍数                             为什么有100?
    txtata计算值.Text = Round(ata, 4)
    txtcosfay计算值.Text = Round(cosfai, 4)
    txttm计算值.Text = Round(Tmxing, 4)
    txttst计算值.Text = Round(Tstxing, 4)
    txtist计算值.Text = Round(Ist, 4)
    txtata绝对偏差.Text = Round((ata1 - ata), 4)
    txtcosfay绝对偏差.Text = Round((cosfai1 - cosfai), 4)
    txttm绝对偏差.Text = Round((Tm1 - Tmxing), 4)
    txttst绝对偏差.Text = Round((Tst1 - Tstxing), 4)
    txtist绝对偏差.Text = Round((Ist1 - Ist), 4)
    txtata相对偏差.Text = (Val(txtata计算值) - Val(txtata)) / Val(txtata)
    txtata相对偏差.Text = Round(Val(txtata相对偏差.Text), 4)
    txtcosfay相对偏差.Text = (Val(txtcosfay计算值) - Val(txtcosfay)) / Val(txtcosfay)
    txtcosfay相对偏差.Text = Round(Val(txtcosfay相对偏差.Text), 4)
    txttm相对偏差.Text = (Val(txttm计算值) - Val(txtTm)) / Val(txtTm)
    txttm相对偏差.Text = Round(Val(txttm相对偏差.Text), 4)
    txttst相对偏差.Text = (Val(txttst计算值) - Val(txtTst)) / Val(txtTst)
    txttst相对偏差.Text = Round(Val(txttst相对偏差.Text), 4)
    txtist相对偏差.Text = (Val(txtist计算值) - Val(txtIst)) / Val(txtIst)
    txtist相对偏差.Text = Round(Val(txtist相对偏差.Text), 4)
End Sub

Private Sub cmdexit_Click()
    End
End Sub
    以上就是我所设计的三相异步电动机设计程序。

 

 

 

 

 

 

总     结
异步电机的设计是一个复杂的过程,要想达到理想的设计要求,需要考虑多方面的的因数,进行全局的把握。本次设计的过程是一次对大学学习总结的过程,通过本次设计,让我们了解设计的基本知识,熟悉设计的过程,掌握设计一些基本方法,为以后的进一步学习打下基础。
 本次进行的是三相异步电动机的设计,设计过程中遇到不少的困难,这于我们平时只学书本知识而很少参与社会实践有很大关系,较少的实践让我们对电机的认识很不全面,对电机的制造工艺知之甚少,在设计过程中遇到很多问题,如绝缘厚度的选择、导线规格的选择等与工艺有关的参数选择上很是被动,对好多初值的确定也没有基准,只能按照设计要求计算下去。不过在自己的努力、老师的辛勤指导以及同学的帮助下,很快形成设计思路,并很快学习了电机制造工艺的相关知识,保证了设计的顺利进行。
    在进行方案的调整中,常有顾此失彼之感。调节一个参数,使得一个性能指标提高后,另一个性能指标就会下降,常常如此,这就要求我们对电机的各参数之间的联系要有深刻认识。比如,考虑到气隙的影响,功率因数与起动转矩间就存在着矛盾,为降低励磁电流,改善功率因数,气隙应尽量小,而气隙小,谐波磁场及谐波漏抗增大,使起动转矩降低,这些此起彼伏的现象时常会出现,这就要求我们在各参数间权衡利弊,以图最优。
 对于VB的应用,对我来说还是第一次, VB程序设计的入门学习并不难,但却是一个十分重要的过程,因为程序设计思想就在这时形成的,良好的程序设计习惯也在这个阶段养成,学习程序设计要注重理解一些重要的概念.,VB程序设计本身并不复杂,翻开一本程序设计学习的书籍,看到的无非就是变量,函数,条件语句,循环语句等概念.但要真正能进行程序设计,需要深入理解这些概念.因此,在 程序入门阶段还是应该重视概念的学习,要学会自己动手编写程序,程序设计入门阶段要经常自己动手抄写或编写一些小程序,亲自动手进行程序设计是创造性思维应用的体现,是培养逻辑思维的好方法.因此一定要多动手编写程序,而且要从小程序开发开始,逐渐提高写程序的能力,同时还要多阅读借签别人设计的好程序,多看别人设计好的程序代码,包括教材上的例题程序.在读懂别人程序后,要想他为什么这么设计能不能将程序修改完成更多的功能, 则可以学到别人优秀的东西,帮助自己提高自身水平。

 

 

 

 

致   谢
三个多月的毕业设计终于快要结束了。这三个多月的设计,我学到了不少的东西,也颇有感触。
首先感谢学校、学院给我们提供的这次毕业设计的机会,使我们有机会将自己本科阶段需学的知识应用于实践。如果们有这次设计,好多东西在我们眼中始终都将会是神秘的。这次设计使我们能将自己知识应用于实践,而且充分发挥自己的主观创造性。
其次感谢我的指导老师王爱龙老师。我们每个周都开例会,我们设计中遇到的问题,王老师都会耐心解答。有时候他还会给我们提供些指导性的建议,使我们的设计少走了很多的弯路。他他还主动给我们提供了许多极有价值的资料,如定转子槽型、程序主界面等,使我们受益匪浅。
再次还要感谢和我同组的好些同学。有时候设计中遇到了问题,同学们会热情的讨论,使得问题很快解决。有事遇到不会的地方去问别的同学,他们会耐心的给我讲解,遇到好的资料和方法他们也会与我分享,为我的设计铺平了不少道路,在此我深表感谢。
通过这次的设计,使我对本专业有了更深的认识。以前对电机的结构以及电机的设计还是缺乏足够的了解,通过这次的设计我明白了电机设计的具体步骤,也基本上学会了VB这种计算机高级语言。这次设计也让我充分体会到了计算机在现代设计中的重要地位,更加坚定了我学习计算机工具的决心。

 

 

 

 

 


主要参考文献(资料)
[1] 陈世坤.电机设计,北京:机械工业出版社,2000.
[2] 杨晶.VB6.0程序设计,北京:机械工业出版社,2004.
[3] 汤藴蹘,史乃.电机学,北京:机械工业出版社,2001.
[4] 郑光华.电机设计,中国科学图书仪器公司,1952.
[5] 贾好来,吝伶艳.电机CAD技术.北京:中国电力出版社,2010.
[6] 龚沛曾 陆慰民 杨志强 编. Visual Basic 程序设计教程(6.0版),北京:高等教育出版社.
[7] W.Schuisky:Berechnung elektrischer Maschine,Vienna,Springer-Verlag,1960

网友评论
请文明参与讨论,禁止漫骂攻击。 我要发表评论:(名字或IP地址)