标王 热搜: 步进电机  德玛  电动机  马达  力矩电机  直流无刷电机  电机  柴油发电机  大洋电机 
 
当前位置: 首页 » 行业资讯 » 行业动态 » 正文

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

放大字体  缩小字体 发布日期:2015-06-24  浏览次数:0
核心提示:1 系统硬件设计1.1 系统总体设计方案选用Altera公司的DE2开发板作为开发平台,采用SOPC技术通过在FPGA中植入嵌入式系统处理器Ni

1 系统硬件设计

1.1 系统总体设计方案

选用Altera公司的DE2开发板作为开发平台,采用SOPC技术通过在FPGA中植入嵌入式系统处理器NiosⅡ作为核心控制电路,利用FPGA中的可编程逻辑资源和IP软核来构成该嵌入式系统处理器的接口功能模块,借助于Avalon总线,实现对外围PWM模块、测速模块、SDRAM、键盘等硬件的控制,FPGA通过Avalon总线对输入模块和输出等模块进行配置,整体功能框图如图1所示。

整个系统的主要工作流程如下当系统启动完成各单元初始化后,通过键盘输入期望设定值,同时由光电编码器采集实测转速传输到测速模块,通过NiosⅡ处理器处理电机PID控制算法,并将计算后的数据传输给自定制的PWM模块对其进行闭环控制。最后在NiosⅡIDE上采集到实际输出数据,并通过Matlab软件画出控制曲线波形图,最后对实验结果进行分析。

1.2 PWM模块

系统中的自定制PWM模块是通过写VHDL代码,经过仿真、编译、管脚分配,最后生成PWM功能模块。它在整个系统中的作用是对实测转速通过计算进行闭环控制。生成的PWM模块如图2所示。

图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所示。

 
 
[ 行业资讯搜索 ]  [ 加入收藏 ]  [ 告诉好友 ]  [ 打印本文 ]  [ 关闭窗口 ]

 
共0条 [查看全部]  相关评论

 
推荐行业资讯
点击排行
 
网站首页 | 网站地图 | 排名推广 | 广告服务 | 积分换礼 | 网站留言 | RSS订阅