基于FPGA的直流电机综合测控系统设计.docx
《基于FPGA的直流电机综合测控系统设计.docx》由会员分享,可在线阅读,更多相关《基于FPGA的直流电机综合测控系统设计.docx(7页珍藏版)》请在冰豆网上搜索。
基于FPGA的直流电机综合测控系统设计
数字系统设计论文
(EDA技术课程答辩2013秋)
题目
基于FPGA的直流电机综合测控系统设计
学院
电子信息学院
专业
电子信息工程
班级
12047514
学号
12041419,12041422
学生
林华,马浩杰
指导教师
黄继业
完成日期
2013年12月
摘要
当今,在各行业中自动化控制系统已经取得了较为广泛的发展和应用,而在现在的规模化生产中,电器传动技术以直流驱动控制技术为主流有着重要作用。
一直以来,因直流电动机其转速在调节上比较灵活,调节方法简单,大围的平滑调速较容易,控制方面性能更好等特点,所以在传动领域中拥有不可动摇的地位。
它在工业机器人、数控机床、等工厂设备自动化中得到广泛应用。
在现代化的生产中,随着规模的不断扩大,各行各业对直流电机在技术上和数量上的需求也越来越大,并在性能上要求也更高。
因此,研究出高可靠性、高性能的直流电机控制系统,并且制造出高水平的系统就有着非常现实和重要的意义。
关键词:
FPGA;Verilog;EDA;PWM调速
摘要
一、引言
1.本课题研究背景
2.本课题的主要研究容及意义
二、整体设计
1.功能要求
2.功能模块设计
2.1.PWM脉宽调制信号发生模块
2.2.工作时钟发生器模块
2.3.消抖动模块ERZP
2.4.转向控制多路选择器模块
2.5.8位寄存器模块
2.6.7段译码模块
三、直流电机驱动控制电路顶层设计
四、总结
五、参考文献
一、引言
1.本课题研究背景
电机作为机电能的转换装置,其应用围己遍及国民经济的各个领域。
近些年来,随着现代电力电子技术、控制技术和计算机技术的发展,电机的控制技术也得到了进一步的发展,电机应用已由过去简单的起停控制、提供动力为目的应用,上升到对其速度、位置、转矩等进行精确的控制,使被驱动的机械运动符合预想的要求。
采用功率器件进行控制,将预定的控制方案、规划指令转变成期望的机械运动,这种新型控制技术己经不是传统的“电机控制”、“电气传动”而是“运动控制”。
运动控制使被控机械运动实现精确的位置控制、速度控制、加速度控制、转矩或力的控制,以及这些被控机械量的综合控制。
2.本课题的主要研究容及意义
本课题是以FPGA为控制核心,实现对直流电机的转速测量和转速调节,为进一步研究和优化直流电机控制方法提供基础。
设计直流电机控制系统能够充分发挥电机的特性,通过本课题,一方面训练我们在查阅资料的基础上,了解FPGA控制的一些基本技术,掌握其控制系统的分析方法与实现;另一方面通过本次设计,设计出相应的控制系统,以实现对直流电机转速的测量和转速的调节,并以此培养自己的自学和动手能力,从而今后参加工作或进一步深造打下良好的基础。
二、整体设计
1.功能要求
能利用FPGA控制直流电机PWM,对直流电机进行速度控制,旋转方向控制,变速控制。
2.功能模块设计
2.1.PWM脉宽调制信号发生模块
此模块是FPGA中的PWM脉宽调制信号产生电路。
它的输出接电机转向控制电路模块,此模块输出的两个端口接电机,通过控制SL端(键K1),可以改变电机转向。
它的输入端之一来自模块T8B。
这是一个8位计数器,输出的数据相当于锯齿波信号,此信号的频率就是输出PWM波的频率。
本模块的另一端来自键控的8位数据,其中低四位设定为1111,高四位由计数器T4B产生,计数器的时钟来自键K8。
于是可以通过手动按键控制电机的转速。
moduleSQU1(cin,adr,ot);
input[7:
0]cin,adr;
outputot;
regot;
always(cin)
begin
if(adrot<=1'b0;
else
ot<=1'b1;
end
endmodule
2.2.工作时钟发生器模块
主要由锁相环PLL20担任。
其输入频率是20MHz;输出两个频率:
C0=4096Hz,C1=5MHz.
2.3.消抖动模块ERZP
moduleERZP(clk,KIN,kout);
inputclk,KIN;
outputkout;
rega,b,c;
assignkout=(a|b|c);
always(posedgeclk)
begina<=KIN;
b<=a;
c<=b;
end
endmodule
2.4.转向控制多路选择器模块
moduleSLT(SL,M,m0,m1);
inputSL,M;
outputm0,m1;
regm0,m1;
always(SL)
case(SL)
1'b1:
beginm0<=M;
m1<=1'b0;end
1'b0:
beginm0<=1'b0;
m1<=M;end
default:
beginm0<=M;
m1<=1'b0;end
endcase
endmodule
2.5.8位寄存器模块
modulelock(d,clk,rst,Q);
inputclk,rst;
input[7:
0]d;
output[7:
0]Q;
reg[7:
0]Q;
always(posedgeclk)
if(rst)
Q=0;
else
begin
if(clk)begin
Q[3:
0]<=d[3:
0];
Q[7:
4]<=d[7:
4];
end
end
endmodule
2.6.7段译码模块
moduleDECL7S(A,LED7);
input[3:
0]A;
output[6:
0]LED7;
reg[6:
0]LED7;
always(A)
case(A)
4'b0000:
LED7<=7'b0111111;//0
4'b0001:
LED7<=7'b0000110;//1
4'b0010:
LED7<=7'b1011011;//2
4'b0011:
LED7<=7'b1001111;//3
4'b0100:
LED7<=7'b1100110;//4
4'b0101:
LED7<=7'b1101101;//5
4'b0110:
LED7<=7'b1111101;//6
4'b0111:
LED7<=7'b0000111;//7
4'b1000:
LED7<=7'b1111111;//8
4'b1001:
LED7<=7'b1101111;//9
default:
LED7<=7'b0000000;
endcase
endmodule
三、直流电机驱动控制电路顶层设计
四、本文在QuartusII软件平台上实现了基于VHDL直流电机速度控制系统的研究设计。
设计期间主要完成了以下工作:
1.QuartusII软件平台的应用。
掌握了基于VHDL语言设计的基本流程和设计输入,设计编译,功能确认,延时确认,设计仿真等模块的应用。
通过应用使我对VHDL语言深入的了解,可以熟练地使用QuartusII平台进行编程和其他应用。
2.基于VHDL的直流电机速度控制系统的理论及其软件仿真,本直流电机速度控制系统实现了以下功能:
(1)用户可自行设定电机的目标速度、速度临界差值。
(2)系统通过用户设定可以自动进行调速,达到用户指定速度要求。
本文提出的基于VHDL的PWM实现电路具有结构简单、容易实现等优点。
但是在此设计研究过程中,有以下几点不足:
基于VHDL的数字系统设计方法、增加PWM的精度、将理论与实际系统结合。
五、参考文献
DonaldHearn,M.PaulineBaker.计算机图形学.:
电子工业2010.7
DaveShreiner.OpenGL编程指南.:
机械工业2010.1
松,黄继业,明.EDA技术实用教程:
VerilogHDL版.:
科学2010