作为交流异步电机控制的一种方式,矢量控制技术已成为高性能变频调速系统的首选方案。矢量控制系统中,磁链的观测精度直接影响到系统控制性能的好坏。在转子磁链定向的矢量控制系统中,转矩电流和励磁电流能得到完全解耦[1]。一般而言,转子磁链观测有两种方法:电流模型法和电压模型法。磁链的电流模型观测法中需要电机转子时间常数,而转子时间常数易受温度和磁饱和影响。为克服这些缺点,需要对电机的转子参数进行实时观测,但这样将使得系统更加的复杂。磁链的电压模型观测法中不含转子参数,受电机参数变化的影响较小。矢量控制计算量大,要求具有一定的实时性,从而对控制芯片的运算速度提出了更高的要求。 本文介绍了一种异步电机矢量控制系统的设计方法,采用了电压模型观测器[2]对转子磁链进行估计,针对积分环节的误差积累和直流漂移问题,采用了一种带饱和反馈环节的积分器[3]来代替电压模型观测器中的纯积分环节。整个算法在tms320f2812 dsp芯片上实现,运算速度快,保证了系统具有很好的实时性。
上传时间: 2013-04-24
上传用户:jhksyghr
用GPIO做步进电机控制:步进电机和普通电动机不同之处是步进电机接受脉冲信号的控制。步进电机靠一种叫环形分配器的电子开关器件,通过功率放大器使励磁绕组按照顺序轮流接通直流电源。由于励磁绕组在空间中按一定的规律排列,轮流和直流电源接通后,就会在空间形成一种阶跃变化的旋转磁场,使转子步进式的转动,随着脉冲频率的增高,转速就会增大。步进电机的旋转同时与相数、分配数、转子齿轮数有关。现在比较常用的步进电机包括反应式步进电机(VR)、永磁式步进电机(PM)、混合式步进电机(HB)和单相式步进电机等。其中反应式步进电机的转子磁路由软磁材料制成,定子上有多相励磁绕组,利用磁导的变化产生转矩。现阶段,反应式步进电机获得最多的应用。步进电机和普通电机的区别主要就在于其脉冲驱动的形式,正是这个特点,步进电机可以和现代的数字控制技术相结合。不过步进电机在控制的精度、速度变化范围、低速性能方面都不如传统的闭环控制的直流伺服电动机。在精度不是需要特别高的场合就可以使用步进电机,步进电机可以发挥其结构简单、可靠性高和成本低的特点。使用恰当的时候,甚至可以和直流伺服电动机性能相媲美。
上传时间: 2013-11-05
上传用户:xinzhch
用MCP定时器控制步进电机:步进电机简介1.1.1 步进电机步进电机和普通电动机不同之处是步进电机接受脉冲信号的控制。步进电机靠一种叫环形分配器的电子开关器件,通过功率放大器使励磁绕组按照顺序轮流接通直流电源。由于励磁绕组在空间中按一定的规律排列,轮流和直流电源接通后,就会在空间形成一种阶跃变化的旋转磁场,使转子步进式的转动,随着脉冲频率的增高,转速就会增大。步进电机的旋转同时与相数、分配数、转子齿轮数有关。现在比较常用的步进电机包括反应式步进电机(VR)、永磁式步进电机(PM)、混合式步进电机(HB)和单相式步进电机等。其中反应式步进电机的转子磁路由软磁材料制成,定子上有多相励磁绕组,利用磁导的变化产生转矩。现阶段,反应式步进电机获得最多的应用。步进电机和普通电机的区别主要就在于其脉冲驱动的形式,正是这个特点,步进电机可以和现代的数字控制技术相结合。不过步进电机在控制的精度、速度变化范围、低速性能方面都不如传统的闭环控制的直流伺服电动机。在精度不是需要特别高的场合就可以使用步进电机,步进电机可以发挥其结构简单、可靠性高和成本低的特点。使用恰当的时候,甚至可以和直流伺服电动机性能相媲美。
上传时间: 2014-04-28
上传用户:joheace
摘要步进电机广泛应用于数控机床,加工中心等各种自动化控制系统中,随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在国民经济各个领域都有应用。PLC(可编程序控制器)是综合了计算机技术、自动控制技术和通信技术的一门新兴技术,是实现工业生产、科学研究以及其他各个领域自动化的重要手段之一,应用十分广泛,是现代工业控制的三大支柱之一。本设计是用PLC实现三相六拍步进电机驱动过程控制,使步进电机动作的抗干扰能力强、可靠性高,而且系统构成十分灵活,便于在线修改。第一章课题任务分析1.1三相六拍步进电机概况一般电机都是连续旋转,而步进电机却是一步一步转动的,故叫步进电机。步进电机的转子为多极分布,定子上嵌有多相星形连接的控制绕组,由专门电源输入电脉冲信号,每输入一个脉冲信号,该电机就转过一定的角度,因此步进电机是一种把脉冲信号变为角度位移的执行元件。步进电机有多种通电方式,以下介绍三相六拍步进电机通电方式的基本原理(以转子四个齿为例,即齿距角为90");
上传时间: 2022-06-22
上传用户:wangshoupeng199
本课题来源于国家863计划《高速高效防爆稀土永磁同步电机研究》项目的部分研究内容。为了进一步提高稀土永磁同步电动机的效率,本论文主要采用有限元分析与实验相结合的方法,重点针对稀土永磁同步电动机稳态运行时的谐波转子铜耗、瞬态起动过程以及空载谐波磁场进行了深入研究。 论文利用有限元电磁场仿真软件MagNet,对油田抽油用22kW稀土永磁同步电动机进行了详细的电磁场仿真计算,首次,对谐波磁场引起的稀土永磁同步电动机稳态运行时的转子铜耗进行了深入分析。通过对22kW电机的间接法和直接法效率实验,分离出谐波引起的杂散损耗,并与仿真计算结果进行对比分析,证明了:实际稀土永磁同步电动机稳态运行时是存在转子铜耗的,这也是和传统稀土永磁同步电动机理论不同的地方。研究成果《稀土永磁同步电动机稳态运行时的转子铜耗分析》发表在核心期刊《微特电机》2006年第9期上。 论文采用有限元MagNet对抽油用22kW稀土永磁同步电动机进行了起动过程的仿真研究,并利用先进的动态示波记录仪DL750对22kW电机进行了空载起动过程的实验。实验结果表明有限元电磁仿真计算结果是准确的,也为稀土永磁同步电动机的优化设计提供了参考依据。研究成果《基于有限元的稀土永磁同步电动机起动过程仿真研究》发表在核心期刊《微特电机》2007年第1期上。 论文应用有限元电磁场软件MagNet对作者设计的370W稀土永磁同步电动机的空载气隙磁场进行了仿真分析,得到空载谐波磁场的波形畸变率是6.23﹪;为了验证有限元分析结果的正确性,专门设计了两台370W稀土永磁同步电动机对拖实验,利用WT3000电力分析仪分析出:实际空载气隙磁场波形的畸变率是3.26﹪;通过实验结果和仿真结果的对比分析,发现实际电机的转子鼠笼条对电机空载谐波磁场有很好的抑止作用。初步的研究成果《稀土永磁同步电动机空载气隙磁场的谐波分析研究》于2006年12月投到核心期刊《微特电机》上。
上传时间: 2013-04-24
上传用户:chengli008
由于永磁伺服电机具有转子转动惯量 小,响应速度快,效率高,功率密度高,电机体积小,消除电刷而减少噪音和维护等其他电机难以比拟的优点,在高性能位置伺服领域,尤其为伺服电机组成的伺服系统应用越来越广泛。 永磁无刷电机有两种形式:方波式和正弦波式。本文主要研究以pmsm 为伺服电机的伺服系统 目前实现永磁同步电动机的控制主要采用dsp、dsp+fpga和dsp+asic三种途径。而前两种方式实现位置控制编程量较大,美国国际整流器公司针对高性能交流伺服驱动要求,基于fpga技术开发出了完整的闭环电流控制和速度控制的伺服系统单片解决方案—irmck201。本文就是基于这种数字运动控制芯片,设计了dsp和irmck201的交流伺服控制系统。该系统具有性能优越,结构简单,编程任务小,开发周期短等优点,对其他交流位置伺服控制系统也具有很好的推广意义。
上传时间: 2013-06-07
上传用户:zgu489
特点: 精确度0.1%满刻度 可作各式數學演算式功能如:A+B/A-B/AxB/A/B/A&B(Hi or Lo)/|A|/ 16 BIT类比输出功能 输入与输出绝缘耐压2仟伏特/1分钟(input/output/power) 宽范围交直流兩用電源設計 尺寸小,穩定性高
上传时间: 2014-12-23
上传用户:ydd3625
特点(FEATURES) 精确度0.1%满刻度 (Accuracy 0.1%F.S.) 可作各式数学演算式功能如:A+B/A-B/AxB/A/B/A&B(Hi or Lo)/|A| (Math functioA+B/A-B/AxB/A/B/A&B(Hi&Lo)/|A|/etc.....) 16 BIT 类比输出功能(16 bit DAC isolating analog output function) 输入/输出1/输出2绝缘耐压2仟伏特/1分钟(Dielectric strength 2KVac/1min. (input/output1/output2/power)) 宽范围交直流两用电源设计(Wide input range for auxiliary power) 尺寸小,稳定性高(Dimension small and High stability)
上传时间: 2013-11-24
上传用户:541657925
/*--------- 8051内核特殊功能寄存器 -------------*/ sfr ACC = 0xE0; //累加器 sfr B = 0xF0; //B 寄存器 sfr PSW = 0xD0; //程序状态字寄存器 sbit CY = PSW^7; //进位标志位 sbit AC = PSW^6; //辅助进位标志位 sbit F0 = PSW^5; //用户标志位0 sbit RS1 = PSW^4; //工作寄存器组选择控制位 sbit RS0 = PSW^3; //工作寄存器组选择控制位 sbit OV = PSW^2; //溢出标志位 sbit F1 = PSW^1; //用户标志位1 sbit P = PSW^0; //奇偶标志位 sfr SP = 0x81; //堆栈指针寄存器 sfr DPL = 0x82; //数据指针0低字节 sfr DPH = 0x83; //数据指针0高字节 /*------------ 系统管理特殊功能寄存器 -------------*/ sfr PCON = 0x87; //电源控制寄存器 sfr AUXR = 0x8E; //辅助寄存器 sfr AUXR1 = 0xA2; //辅助寄存器1 sfr WAKE_CLKO = 0x8F; //时钟输出和唤醒控制寄存器 sfr CLK_DIV = 0x97; //时钟分频控制寄存器 sfr BUS_SPEED = 0xA1; //总线速度控制寄存器 /*----------- 中断控制特殊功能寄存器 --------------*/ sfr IE = 0xA8; //中断允许寄存器 sbit EA = IE^7; //总中断允许位 sbit ELVD = IE^6; //低电压检测中断控制位 8051
上传时间: 2013-10-30
上传用户:yxgi5
TLC2543是TI公司的12位串行模数转换器,使用开关电容逐次逼近技术完成A/D转换过程。由于是串行输入结构,能够节省51系列单片机I/O资源;且价格适中,分辨率较高,因此在仪器仪表中有较为广泛的应用。 TLC2543的特点 (1)12位分辩率A/D转换器; (2)在工作温度范围内10μs转换时间; (3)11个模拟输入通道; (4)3路内置自测试方式; (5)采样率为66kbps; (6)线性误差±1LSBmax; (7)有转换结束输出EOC; (8)具有单、双极性输出; (9)可编程的MSB或LSB前导; (10)可编程输出数据长度。 TLC2543的引脚排列及说明 TLC2543有两种封装形式:DB、DW或N封装以及FN封装,这两种封装的引脚排列如图1,引脚说明见表1 TLC2543电路图和程序欣赏 #include<reg52.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned int sbit clock=P1^0; sbit d_in=P1^1; sbit d_out=P1^2; sbit _cs=P1^3; uchar a1,b1,c1,d1; float sum,sum1; double sum_final1; double sum_final; uchar duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; uchar wei[]={0xf7,0xfb,0xfd,0xfe}; void delay(unsigned char b) //50us { unsigned char a; for(;b>0;b--) for(a=22;a>0;a--); } void display(uchar a,uchar b,uchar c,uchar d) { P0=duan[a]|0x80; P2=wei[0]; delay(5); P2=0xff; P0=duan[b]; P2=wei[1]; delay(5); P2=0xff; P0=duan[c]; P2=wei[2]; delay(5); P2=0xff; P0=duan[d]; P2=wei[3]; delay(5); P2=0xff; } uint read(uchar port) { uchar i,al=0,ah=0; unsigned long ad; clock=0; _cs=0; port<<=4; for(i=0;i<4;i++) { d_in=port&0x80; clock=1; clock=0; port<<=1; } d_in=0; for(i=0;i<8;i++) { clock=1; clock=0; } _cs=1; delay(5); _cs=0; for(i=0;i<4;i++) { clock=1; ah<<=1; if(d_out)ah|=0x01; clock=0; } for(i=0;i<8;i++) { clock=1; al<<=1; if(d_out) al|=0x01; clock=0; } _cs=1; ad=(uint)ah; ad<<=8; ad|=al; return(ad); } void main() { uchar j; sum=0;sum1=0; sum_final=0; sum_final1=0; while(1) { for(j=0;j<128;j++) { sum1+=read(1); display(a1,b1,c1,d1); } sum=sum1/128; sum1=0; sum_final1=(sum/4095)*5; sum_final=sum_final1*1000; a1=(int)sum_final/1000; b1=(int)sum_final%1000/100; c1=(int)sum_final%1000%100/10; d1=(int)sum_final%10; display(a1,b1,c1,d1); } }
上传时间: 2013-11-19
上传用户:shen1230