基于FPGA的直流电机PWM调速系统设计与实现(完整资料).doc
《基于FPGA的直流电机PWM调速系统设计与实现(完整资料).doc》由会员分享,可在线阅读,更多相关《基于FPGA的直流电机PWM调速系统设计与实现(完整资料).doc(100页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、基于FPGA的直流电机PWM调速系统设计与实现(完整资料)(可以直接使用,可编辑 优秀版资料,欢迎下载)P课程设计题目:基于FA的直流电机PW调速系统设计与实现班级:微电子学1202班姓名:杜英学号:16080201日期:216年3月24日基于P的直流电机M调速系统设计与实现设计任务与要求1。1设计任务完成基于FPGA的直流电机WM调速系统设计与实现,实现对直流电机的闭环调速,速度值采用LCD或数码管显示.1。2设计要求1。2.1了解PWM控制方法及应用;掌握WM直流电机调速控制原理;掌握直流电机调速及驱动控制原理;完成基于FPG的直流电机P调速系统设计。采用PWM(脉冲宽度调制)技术,速度值
2、采用LCD或数码管显示。1。2.2通过课程设计的实践,进一步了解和掌握硬件描述语言(VHD或Vilg)和OP-OWN的设计流程,提高对实际项目的分析和设计能力,体会FPA项目开发的过程,熟悉实验报告的编写规范.2设计原理分析21直流电机结构如下图1所示图.1 直流电机的构造将直流电源通过电刷接通线组线圈,使线组线圈导体(电枢导体)有电流通过,在电磁的作用下,线组线圈将会产生磁场,同时产生的磁场与主磁极的磁场产生电磁力,这个电磁力作用于转子,使转子以一定的速度开始旋转,电机就开始工作。 在电机的外部电路加入开关型的霍尔元件,同时在电子转子的转盘上加入一个使霍尔元件产生输出的带有磁场的磁钢片。当直
3、流电机旋转时转盘与磁钢片一起旋转,当磁钢片转到霍尔元件上方时,可以使霍尔元件的输出端高电平变为低电平.当磁钢片离开霍尔元件上方后,霍尔元件输出端又恢复高电平。如此,点击每旋转一周,会使霍尔元件的输出端产生一个低脉冲,可以通过检测单位时间内霍尔元件输出端低脉冲的个数推算出直流电机的转速.本次设计中,调节M占空比进而控制直流电机转速,在本次设计中,为了保护霍尔元件,故设定程序每6秒刷新一次数据,所以在数码管显示的数据乘以10就是在该占空比时的直流电机每分钟转速。在这次的实验中数码管采用的8位共阴极数码管,通过锁存器输入数据使得数码管的8个段码数字显示,再通过选择输出数据对所需数码管进行选择。22电
4、路原理图图2.2 电路原理图3 设计方案上述原理图中包含P模块、测速模块、计数模块、电机模块、滤波模块。电机的外部电路加入开关型的霍尔元件,同时在电子转子的转盘上加入一个使霍尔元件产生输出的带有磁场的磁钢片.当直流电机旋转时转盘与磁钢片一起旋转,当磁钢片转到霍尔元件上方时,可以使霍尔元件的输出端高电平变为低电平.当磁钢片离开霍尔元件上方后,霍尔元件输出端又恢复高电平。如此,点击每旋转一周,会使霍尔元件的输出端产生一个低脉冲,可以通过检测单位时间内霍尔元件输出端低脉冲的个数推算出直流电机的转速。本次设计为六秒记一次数,乘十就是每分钟转速值。再通过驱动模块显示数码管数据。设计步骤(1)首先确定整体
5、设计方案,确定设计需要使用的软件;(2)设计电路模块,编写各模块程序代码并进行仿真编译;(3)完成整体电路图设计后,使用Qarts软件对整体电路进行仿真调试;(4)连接硬件,使用示波器观察产生的波形,对不足之处进行改进调试。5调试结果说明连接好试验箱,把硬件与实验箱接通,将程序下载到实验箱中.进行实验,示波器观察PW脉冲波形(占空比),看实验结果与预期效果是否相同,若相同,则实验无误.其波形如下:占空比为50%时占空比为0时将程序下载到实验箱中后,其实际操作过程如下:1为使能键,使12=;输入时钟信号为1MH;(1)K41时,示波器和LED的显示如下:示波器显示的是霍尔元件单位时间内计数的个数
6、为31。显示器是每六秒电机转的圈数为186转结论:31。0116=8。066于近似,所以结论符合要求。(2) 4=1,k=1时,示波器和LED的显示如下:结论:.633*6411.808于412近似,所以结论符合要求。() K4=1,k=1,K2时,示波器和LED的显示如下:结论:85。516*6=51306于513近似,所以结论符合要求。(4) K=,k3,K1,K1=1时,示波器和LED的显示如下:结论:90.3*6=5402034于541近似,所以结论符合要求。 通过以上的比较,发现示波器中的结果与数码管上数据大概一致,即实验结果基本达到要求。心得体会本次课程设计,用FGA控制直流电机,
7、完成直流电机PWM调速系统设计,实现对直流电机的闭环调速,速度值采用LC或数码管显示。是一次很好的学习和实践的机会.通过课程设计,我明白了电机工作的原理,以及用FPGA控制电机的原理。最重要的是,对如何设计一个系统有了更进一步的了解,积累了很多经验.从下载测试的结果来看,设计的要求基本上都实现了.但是仍存在不少问题。每个模块生成基本电路后,把各个模块的进行连接,仿真结果是正确的。但是当连接到试验箱后,电机正常转动,E却无法显示。检查电路和程序还有电路图,并发现什么问题。无意中发现D偶尔会出现数字,但也只是闪一下。最后才发现是因为电机转动太快了,LED无法及时显示或者是一直在闪,人眼无法识别.在
8、程序中加入了滤波模块,才解决了问题。在设计的过程中,开始照着ED课本上的原理设计,后来才发现所设计的电路有很多地方都满足不了设计要求,使设计一度遭遇了很大困难。通过与同学讨论请教,逐步改进了设计,终于使设计的电路和设计要求相吻合。在这中间,通过不断提出问题,解决问题,我对这次设计的原理有了更深的了解,也给我分析问题,解决问题提供了很多好的方法,好的思路.同时,我也发现了自己存在的很多不足。发现自己在设计一个系统的时候不能够统筹兼顾,不能够从总体上把握设计的思路,也不能看清问题的核心与关键所在。这些都需要在下面不断学习实践,理论毕竟只是理论,要多参加实践,这样才能提高自己的能力,积累经验。附录一
9、PW模块程序Liary ieee;usiee。sd_ogi1164.ll;se iee。std_logicath.a;us ie.st_logicunigned。all;entity PW ispor( clk:in st_gc; duty_ccle:n sd_logic_ectr(3 dwn); pwm_en:n stogic; pwmot:out sd_ogic);netity;rchietue rt P s signapwm_o_io:stdlogc; sinl count:tdlgic_vecor(3downto);begin wutpwmou_; ocss(clock) begin
10、if riing_edge(clock) the fpw_en=1 tn ount=ont+; nf; en if; edproce;process(cloc) ben i risng_edge(coc)ten f wm_en1 and cuntuycycle th pmot_i=1; els pwm_out_io=; ef; ed if; ed process;e;测速模块程序library ieee;usieee。std_logic1164l;u ieee.t_logicarh.ll ; ieee.std_logic_ugned.al ;entity es ispot( clk : in
11、std_lc; -时钟输入1Mhz ena : ut std_log; -允许计数 clr : t stdlogic; -计数器清零信号产生 load : u sd_logc); -锁存、显示输出允许高有效en cesu;aritcture behav ofcesu is sinallk :std_logic; -1Z时钟信号 signal count:iteger rang0 to 7;秒计数 sgna cr1 :std_ogic; -清零信号 signala1 :sd_lic; -允许计数信号 snal load :d_logic; 允许计数信号 -signlq1,cq2,c3,cq4 :
12、 ITEERRANG 0 TO 15;-计数数据bein roces(cl) viable:_logic; vaiablent:itger rnge 0 t50;bgn iclkevet and clkte cn:=cn+1; ifcnt500000 en c:0; c:notc;ed if; endif; ckk=c; en pocess; proces(ckk) -6秒计数 bgin if ckkve and ckk=1 hen countout+1; f oun6 then ea1=1;load1=;clr=0; li oun=6 ten na=0;load1=1;lr1=; eli c
13、ount7 then en1;lod1=1;clr1=1; n if; end i; na=na1; odloa; r=cr1; edproces;end bhav;计数模块程序ibrryiee;use ee。std_loc_116。ll; ntiycnt10 is port (clk:in td_lgi; 计数时钟信号 clr:in td_logic; 清零信号 en:in td_logic; 计数使能信号 cq:out neger ange 0t 15;位计数结果输出 crr_out:ou sd_loic); -计数进位nd cn1;chiecture beav ofcnt10 is si
14、nl cq1:intege age 0 o 15;beginocss(ck,ena) begin if l thenc1= 0; -计数器异步清零 elsif lkevt anclk 1 then f ena= n ifq1=1thn 1; else cq=cq1+; end if; -等于9,则计数器清零 end i; end i;end pocss;procs (cq1) begi if cq1=10encryout 1; -进位输出 ese cr_out 0; n if;end poces; q=c1;en h;驱动模块程序libayiee;useieee。stdogi_1164。al;
15、useieee.sdlogic_nsined。all;entity uong_8 sport(ck:in stlogi;-动态显示刷新速度时钟QQ,Q2,QQ3:n sdo_vtor(3 downo 0);-3位BD码输入,最0低位,231最高位qudong1:out t_ogic_vecr(7 downt 0);-驱动信号输出,7分别为aefgpcontl:bufer dlogic_vectr( donto0);数码管位选输出,000最低位数码管有效,11最高位数码管有效ed qdog8;rteturebehavior of udong_8 isgnldis:td_ogcvectr( dwn
16、t 0);galtmp:std_logivctor(2 w 0);beinproess(clk)begiflevent ad lthentmp=temp;ndi;ontrl=temp;dpress;proces(conrl)-位选信号产生进程begincasecotrl -whe00=sdisp=Q;-whe”011=dp=QQ4;when”0=dispdisp=QQ;when”10”disp=Q1;-whn”1sp=000”;whn otherdisqudog=0101011;whe0011”=qudo101001111”; whn100=qudon1=”0110110”; hen011uo
17、ng1=”1101101; when0110=quong1quong1=”000001; when”1000”=qudng1=”0111111”; hen1001=udog1=01111”; en ohersqudon1”0000110”;en cas;end pocess;en behavior;消抖模块程序ibrary ieee; usee.st_oic_1164.all;etiy xiaodo s po(l,inpu: inst_logic; otput: out d_lgc); nd xodou;rhtecture bha of xado isinal p:t_i; sigcount:
18、ineger ge 0 to 3; beinrocs() begi i(keventand c=) tn检测上升沿if(inpu=1)tn -如果有输入信号(oun=)thencout=count; 当计数达到时,保持计数值不变s cuntcout+1; 当其小于3时,进行加1处理en i; if(count=2)he p=; -如果计数达到,p置1else cp=; - 其余情况全部为0en i; ele cut=0; 如果计数出现非法状况,进行清零复位end if;nd if; uput=cp; -信号输出e proce;d behav;吉林大学远程教育本科生毕业论文(设计)中文题目基于E
19、DA的直流电机控制系统设计学生姓名 张 智 专业机械电子层次年级13级本科 学号指导教师 王 昕 职称 副教授 学习中心弘成宿迁 成绩 2015年10月9日摘要论文以直流电机为研究对象,应用了FPGA技术,设计出了一种全数字的步进电机控制系统。 本论文分析了直流电机工作原理及其具体的控制过程,并阐述了FPGA的设计原理以及所涉及的相关芯片,然后对所用的硬件语言VHDL的知识进行简要地介绍,这些为论文的具体设计提供了理论基础。本系统针对实现直流电机的调速,设计了一种符合要求的并连续可调的脉冲信号发生器,对整个系统进行模块化设计,并且每个子模块都通过了仿真测试。系统采用模块化的设计思路,使系统的设
20、计和维护更加方便,也提高了系统性能的可扩展性.FPGA、VHDL以及EDA工具构成的数字系统集成技术,是本设计的核心部分,该技术具有操作灵活、利用广泛及价廉等特点。系统设计采用全数字化的控制方案,使系统更紧凑、更合理及经济节约。由于系统的数字化,使整个系统运行得十分可靠,调试也极为方便。关键词:直流电机,可编程门阵列,硬件描述语言目录一、绪论11。1课题背景11.2研究的目的及其意义2二、电机的基本知识42.1直流电机的特点42。2直流电机基本结构42.2.1定子部分42.2.2转子部分52。3直流电机工作原理62.4直流电机PWM调速原理6三、FPGA与硬件描述语言83.1现场可编程逻辑器件
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 FPGA 直流电机 PWM 调速 系统 设计 实现 完整 资料
限制150内