新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于NiosⅡ的直流电机PID调速控制系统

基于NiosⅡ的直流电机PID调速控制系统

作者:时间:2010-11-01来源:网络收藏

图2中:clk为时钟信号端;sta用来控制直流电机正反转;conword为占空比信号;PWM_A表示直流电机处于正转状态时的占空比输出;PWM_B表示直流电机处于反转时的占空比输出。
PWM模块的原理如下:将时钟源50 MHz的基频信号64分频,作为PWM模块的基频信号,以256个该基频脉冲信号作为PWM输出的一个周期,由NiosⅡ处理器给出的conword的值指定一个PWM周期内高电平持续时间,改变conword的值即刻改变占空比输出的值。
1.3 测速模块
系统中的测速模块生成方式如PWM模块,它在整个系统中的作用如下:主要是利用基频的周期来计算光栅信号的周期,算出直流电机的转速,其生成的模块如图3所示。
图3中:clk为时钟信号端;en为使能信号,即表示光栅有效;dout表示光橱有效时间。
测速模块的原理如下:给出已知频率的基频,用光栅作为门限,测基频脉冲的个数,由基频的周期来计算光栅信号的周期,再算出转速,电机控制算法即根据测速模块测出的速度进行算法调整,达到闭环控制的效果。

2 系统软件设计
本次设计的软件主要分为两部分:
(1)利用QuartusⅡ7.2完成NiosⅡ系统的构建:利用SOPC Builder构建NiosⅡCPU;使用VHDL编写各控制模块。
(2)利用NiosⅡIDE完成系统控制与控制算法编写,主要使用C语言进行控制与算法编写;对直流电机进行成功控制后,在NiosⅡIDE上采集输出转速的实测数据,将其导入Matlab画出控制效果图,整体软件框图如图4所示。

本文引用地址:http://www.eepw.com.cn/article/151391.htm


本次设计使用SOPC Builder组建的NiosⅡ嵌入式系统,如图5所示。该系统除了配置NiosⅡ最小系统的CPU核NiosII CPU,Avalon总线,使用FPGA资源例化的存储器之外,还有以下外接设备的控制单元:
(1)SDRAM Controller;
(2)Common Flash Interface;
(3)JTAG UART;
(4)锁相环PLL;
(5)Interval Timer;
(6)通用I/O接口,包括PWM模块接口conw,msta和测速模块接口speed,按钮接口button。
对于SOPC Builder组建的NiosⅡ系统,可以在QuartusⅡ软件方便地调用,在QuartusⅡ中Block Diagram设计调用NiosⅡ系统的框图如图6所示。给该系统配备工作时钟,并分配FPGA的I/O管脚,程序经综合,布局,仿真之后,就可将配置文件通过各种配置方法下载到FPGA上。本文使用JTAG+AS方式配置,通过USB Blaster下载电缆线将计算机USB接口与FPGA的JTAG口相连,把配置文件从计算机下载到FPGA中,这样就完成了系统的软件设计。



关键词: 功率模块

评论


相关推荐

技术专区

关闭