• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 无线通信 > 技术文章 > 基于FPGA的永磁同步电机控制器设计

基于FPGA的永磁同步电机控制器设计

录入:edatop.com     点击:

这里只给出 stait按键中断软件程序代码,而choose,in-crease,decrease,transmit程序与之相同。

int main(void)
{ alL_irq_register(start_IRQ,start_BASE,start_ISR);//按键
start的中断注册
IOWR_ALTERA_AVALON_PIO_IRQ_MASK(start_BASE,
0x01);//开启中断使能;
IOWR_ALTERA_AVALON_PIO_EDGE_CA(start_BASE,
0x00)://清除捕获寄存器;
//只给出start变量(用于启动电机)初始化,并写入输出
寄存器:其他变量初始化相同;
Unsigned start=0;
. IOWR_ALTERA_AVALON_PIO_data(start_BASE,start);
//变量写入输出PIO寄存器;
While()
}

电机硬件驱动模块

电机硬件驱动模块实现clark,park,i_park坐标变换,PI调节器,SVPWM产生器,转速检测等硬件模块等双闭环结构。由于上述各个模块设计比较简单常见,因此,这里主要介绍SoPC时序控制部分。Reset按键为全局复位。复位后系统软件从主程序入口开始执行;而此时硬件驱动模块中的两个状态计数器为"-1"。这两个计数器计数时间对应50μs和1 ms,分别对应于电流环和速度环的采样时间。一旦检测到来自NiosⅡ处理器的start高电平信号,该信号作为计数使能信号,这两个计数器从"0"开始计数,计数为"0"时产生一个高电平脉冲信号,电流环计数器脉冲用于锁存SVPWM中的Ta,Tb,Tc(三相占空比信号),并启动A/D转换。速度环的计数器脉冲锁存一个反馈速度信号,然后计数器循环计数。

4 仿真结果

该系统设计对电机驱动部分进行开环验证。给定uq(旋转坐标中的力矩分量)为2 048(16位Q12的定点),ud(旋转坐标中的励磁分量)为0。正余弦两个查找表各有720个地址,相邻地址相差0.5°。每相隔50μs查找地址增量为l,即电机每隔50μs转过0.5°,约为1 666 r/m。在QuartusⅡ中进行时序仿真可得到如图4和图5所示的波形。

由图4可知,A相上桥臂在每个PWM周期的占空比不同,具有从增到减,从减到增的规律;从图5可知,器件实际工作时,上下桥臂死区时间为2μs,而且死区时间可采用NiosⅡ处理器设置。由于有死区时间的控制,该PWM可接入电机进行开环调试。

5 结论

本设计的SoPC器件已产生PWM波,用于开环验证,为后续闭环验证提供条件。FPGA在高速数字信号处理领域逐显优越,且SoC已成为集成电路发展的主流,而SoPC是SoC一种灵活的解决方案。其具有软硬件协同工作,合理分配软硬件功能等特点,从而能够快速灵活实现系统设计。SoPC控制电机可提高电机动态响应,缩小系统面积,节省成本。

作者:陈平,曾岳南,杨志平   来源:电子设计工程

上一篇:利用网阀流量管理 让有限的带宽无限化
下一篇:计算机电缆型号|计算机电缆规格-说明

手机天线设计培训教程详情>>

手机天线设计培训教程 国内最全面、系统、专业的手机天线设计培训课程,没有之一;是您学习手机天线设计的最佳选择...【More..

射频和天线工程师培训课程详情>>

  网站地图