基于dsp数字信号处理器的三相异步电机控制内容摘要:
如图 所示的持续向上 /下计数方式工作时,将产生对称的 PWM 波输。 在这种计数方式下,计数器的值由初值开始向上跳增,当到达 T1PR 值时,开始递减跳变,直至计数器的值为零时又重新向上跳增,如此循环往复。 在计数器跳变的工程中,计数器的值都与比较寄存器 CMPRx( x= 3) 的值作比较,当计数器的值与任一比较寄存器的值相等,则对应的该相方波输出发生电平翻转,如图 所示,在一个周期内,输出的方波将发生两 次电平翻转。 从图 还可以看出插入死区时间后波形的变化情况,死区的宽度从 0~ 12181。 s 可调。 系统中考虑到所用功率器件的开通和关断时间,设定 PWM 波的死区时间为 ,只要在每个脉冲周期根据在线计算改写比较寄存器 CMPR 的 值,就可实时地改变 PWM 脉冲的占空比。 死区单元的工作原理是:它根据全比较单元输出的 PWM 信号作为输入,根据其跳变沿来使能装载 8 位减计数器, 8 位减计数器的计数值由 DBTCON 的高 8位提供,时钟由 CPU 输入时钟通过 DBTCON 的第 4 位决定的预定标因子分频后作为计数器时钟,在计数器减计数到 0 前, 比较器输出为低电平封锁与门。 由此可以产生 PWM 信号死区。 PWMx( 5)信号的输出根据 XDTPH 来决定,ACTR 控制高有效时输出 XDTPH ,低有效时输出 XDTPH。 PWMx( 6)信号的输出根据 _XDTPH 来决定, ACTR 控制高有效时输出 _XDTPH ,低有效时输出 _XDTPH。 DSP 的死区根据 ACTR 的高低有效性而改变,高有效时不允许上下管的控制信号同为高电平,低有效时不允许同为低电平。 因此 DSP 死区时间对高、低电平开通均有效。 软件产生死区只需将 DBTCON 的高八位载入一定数值,即可实现。 结构图如图 所示。 T I C N TT I P R周 期比 较 匹 配死 区 时 间P W M x ( 低 有 效 值 )P W M x ( 高 有 效 值 )t 图 对称 PWM 波产生机理 基于 DSP 的三相异步电机控制 20 边 沿 检 测预 定 标 器计 数 器比 较 器8 位 死 区 寄 存 器死 区 控 制 寄存 器P H xC l o c k内 部 总 线D T P H xD T P H x 图 死区控制寄存器结构图 系统软件设计 在本系统中,软件编程主要涉及转速计算、电流电压测量、 PI 控制、 PWM波形实现以及故障检测,包括对程序空间、数据空间、外部 I/0 空间、外部事件管理模块、 A/D 转换模块、看门狗等资源的操作。 而本系统软件设计主要放在转速 PI 控制器模块、 PWM 发生器模块、和转速采样器模块。 在控制器中, DSP 主要需要完成的任务是根据外部的指令生成 PWM 波形,并发出驱动信号。 另外还要实现保护、显示等功能。 本系统的软件由三部分构成 : 系统的初始化程序,主要在系统启动之前,把所有的寄存器内部值初始化 ; 系统的主程序。 系统主程序是系统控制的核心,它主要包括系统的算法、系统控制的思路、对系统的实时监视和控制。 它主要分为系统给定、系统采集、系统算法。 中断服务子程序。 它 主要为故障显示中断服子程序。 故障显示中断服务子程序的主要任务就是 :当控制系统出现意外或不可控的况时 ( 过电压保护、过电流保护、欠电压保护、 IPM 故障保护 ) ,那么 DSP 就会发生故障中断,立即关闭逆变电路,并且显示故障信号。 便于及时的保护系统,使由于故障而引起的损失减小到最低。 系统初始化 系统初始化有以下主要部分组成 : ; ; ; ; e. I/O 口初始化; f. SCI、 SPI、 A/D 初始化; 基于 DSP 的三相异步电机控制 21 开 始关 中 断关 看 门 狗设 置 D S P 时钟初 始 化 事 件 管 理 器 和 程 序变 量初 始 化 I / O 口初 始 化S C I , S P I , A / D 口切 除 充 电 电 阻开 中 断主 程 序 图 系统初始化程序 系统的主程序 系统主程序流程图如下 图。 开 始系 统 初 始 化系 统 设 置 给定启 动 系 统采 集 电 流 电压采 集 当 前 速度变 频 调 速 子程 序结 束故 障 中 断 子程 序等 待 中 断 图 系统主程序 基于 DSP 的三相异步电机控制 22 系统的主程序有以下几个环节: ; ,启动控制系统; A、 B 两相的电流,且实现 A/D 转换; ; PI 调节; PWM 波形,并驱动逆变器; 系统的主程序是系统运行过程程序,它显示出系统正常运行时的过程。 主要是处理系统运行中的数据采集、控制算法和中断处理,它有系统通过键盘的给定开始,进行当前数据的采集,然后进行变频控制的核心算法。 系统脉宽调制程序 系统的核心可以说是如何进行变频变压控制,用什么方法实现 SPWM 等,这些都将会对系统的精度和稳定性产生影响。 正如前面章节介绍,系统采用SPWM 逆变技术,采用正弦波与三角波进行调制。 而 SPWM 信号主要由软件生成,依靠 DSP 控制器产生三相互差 120 度的 3 对 SPWM 波来实 现对逆变器的开关进行控制。 图 是系统控制变频的流程图。 启 动 系 统读 取 当 前 编 码 器 的 信 号计 算 当 前 速度与 给 定 值 进 行 比 较相 等。 进 行 P I D 控 制计 算 新 的 占 空比进 行 脉 宽 调制输 出 新 的 S P W M 脉 宽NY 图 系统变频系统控制流程图 基于 DSP 的三相异步电机控制 23 define U_DC 24 /*电源直流电压 */ unsigned int num_f_d=33。 /*modulate frequency devide*/ /*调制正弦波的单周期内 PWM的细分数 */ float b_time=。 /*启动时的电压因数,实际加载电压为 *U_DC*/ unsigned int pwm_half_per=2020。 /*PWM调制频率 */ /*4000 PWM=5KHz*/ /*2020 PWM=10KHz*/ unsigned int timer2_per=1000。 /*启动时的正弦波周期 =(timer2_per*128*25)ns */ /****************************公式 ***************************/ /* F/V = (312500/(b_time*电源电压 *(T2PR)*num_f_d)**********/ /*********************************************************/ /*启动时 V = b_time*U_DC = *24 /*F= 10exp9/(timer2_per*128*25) */ /**************************************************************/ /******启动时 F/V = 312500/(*U_DC*1000*33) = ***********/ /******启动时的 F/V不可改动 **************************************/ float F_V_radio=。 /*速度调节中 F和 V都随 AD采样动态变换,与上述相关变量 b_time /*采样时间设置如下: */ /*采样时间计算以 I_LOOP为单位,即 I_LOOP每计 1的时间为 (pwm_half_per*25)ns /*电流采样的时间间隔为 (pwm_half_per*25)*I_DIV, 总点数为(I_LOOP/I_DIV) /*速度采样的时间间隔为 (pwm_half_per*25)*SPEED_DIV, 总点数为(I_LOOP/SPEED_DIV) 基于 DSP 的三相异步电机控制 24 */ define I_LOOP 2048 define I_DIV 1 /*电流采样的大小计算如下 : /* Isample = ((I_result*)/)/(*) /*由 于直流无刷电机几乎是空载运行,所以电流几乎为 0 */ . include include define PI extern void ini(void)。 extern interrupt void timer2_isr(void)。 extern interrupt void inter2_isr(void)。 void delay5s(void)。 float sin_table[33]={0,,, ,,0, ,, ,,0}。 extern float b_time。 extern void adc_soc(void)。 extern void init_adc(void)。 /*extern void qep_init(void)。 */ /****************************** MAIN ROUTINE ***************************/ void main(void) { unsigned int i,j。 ini()。 init_adc()。 /* qep_init()。 */ asm( CLRC INTM)。 /* start process*/ for(i=0。 i10。 i++) delay5s()。 delay5s()。 delay5s()。 delay5s()。 delay5s()。 基于 DSP 的三相异步电机控制 25 /* begin speed control*/ *IMR |= 0x0001。 adc_soc()。 for(。 )delay5s()。 } void delay5s(void) { unsigned long i。 for(i=0。 i500000。 i++)。 } include include include unsigned int period。 unsigned int duty。 unsigned int index_pwm=0。 unsigned int a,b,c,aaa=0。 /*** Constant Definitions ***/ define PI extern float sin_table[99]。 unsigned int adc_res=500。 unsigned int I_result[I_LOOP/I_DIV]。 /*unsigned int Speed_result[2048]。 */ unsigned int i=0。 float fv_ = 0。 /*unsigned int T4_NUM0=0。 unsigned int T4_NUM1=0。 */ /****************************** MAIN ROUTINE ***************************/ void ini(void) { /*** Configure the System Control and Status registers ***/ *SCSR1 = 0x00FD。 /* bit 15 0: reserved 基于 DSP 的三相异步电机控制 26 bit 14 0: CLKOUT = CPUCLK bit 1312 00: IDLE1 selected for lowpower mode bit 119 000: PLL x4 mode bit 8 0: reserved bit 7 1: 1 = enable ADC module clock bit 6 1: 1 = enable SCI module clock bit 5。基于dsp数字信号处理器的三相异步电机控制
相关推荐
CT 等器件的生产以及并联、串联技术的发展应用,使高低压、大功率变频器产品的生产及应用成为现实。 控制理论和微电子技术的发展。 矢量控制、磁通控制、转矩控制、模糊控制等新的控制理论为高性能的变频器提供了理论基础 : 16 位、 32 位高速微处理器以及信号处理器 ( DSP) 和专用集成电路 ( ASIC) 技术的快速发展,为实现变频器高精度、多功能提供了硬件手段。
应 Hd(ejw)的 N 个等间隔的取样值。 滤波器的实现方法 数字滤 波器的实现方法一般有 以下 几种 : (1)在通用的计算机上用软件实现。 软件可以是由自己编写,也可以使用现成的软件包。 这种方法的缺点是速度太慢,不能用于实时系统,主要用于 DSP算法的模拟与仿真。 (2)在通用的计算机系统中加上专用的加速处理机实现。 这种方法不便于系统的独立运行。 (3)用通用的单片机实现。
叫 做 的工程文件。 (4) 选择 ProjectAdd files to Project,把文件加到工程里。 你也可以在左边的工程视图窗口里右击工程,选择 Add files to Project。 (5) 从你所创建的文件夹里添加 , , 和 (映射内存的连接命令文件 )。 3. 编译工程 :单击 “Project”菜单, “Rebuild all”项,编译工程中的文件,生成 文件。 4.
Forward Concepts 分析家的预测,今年全球 DSP 销量将达到 $82 亿美元,比去年增加约三分之一。 而对于 2020 年和 2020年的预测值,则分别是 $108 亿元和 $140 亿元,并预言未来几年 DSP 都将以每年超过 30%的速度成长。 根据 CCID 权威的分析,中国 DSP 市场今年可达到 120 亿元人民币,比去年增长约 40%
北京科技大学远程与成人教育学院毕业设计(论文) 4 2 DSP技术 DSP 芯片发展 数字信号处理 (Digital Signal Processing)是利用专用处理器或计算机,以数字的形式 对信号进行采样、变换、滤波、增强、压缩、识别、分析、合成、变换 处理,提取有用的信息,得到符合人们要求的信号形式,进行有效的传输与应用。 数字信号处理器 (Digital Signal Processor
测与保护电路 对于两相导通三相六状态无刷直流机,在任意时刻,只有两相绕组通电,电流从一相绕组流入,再从一相绕组流出,电流大小与直流侧电流大小相等。 这样,只需要在直流 侧接入一个采样电阻就可以检测导通相的电流。 RR4R1R3R2R5R6C1C1GND GND542312U 1 1 AV C CGNDU 1 2I过电流信号 图 28 电流检测与保护电路原理 The diagram of