ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:512.16KB ,
资源ID:14303707      下载积分:5 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-14303707.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(直流电机转速闭环控制课程设计.docx)为本站会员(b****1)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

直流电机转速闭环控制课程设计.docx

1、直流电机转速闭环控制课程设计计算机控制技术课程设计报告设计课题: 直流电机转速闭环控制 采用单片机教学实验系统 班 级: 报 告 人: 指导教师:完成日期:2011年 9 月 22 日大学本科学生?计算机控制技术根底?课程设计任务书课程设计题目直流电机转速闭环控制采用单片机教学实验系统学院自动化学院专业自动化专业年级1参数和设计要求1用单片机产生PWM方波调制直流电机以一定速率旋转,人为给一个速度漂移,霍尔元件测出速度并根据PID算法跟踪校正速度漂移。2要求用LED或LCD时实显示电机速度。3要求在10秒PID算法纠正速率漂移。2实现方法采用单片机教学实验系统实现 限4人选做学生应完成的工作:

2、1硬件设计:要求完成控制系统框图;绘制完整的控制系统电原理图;说明各功能模块的具体功能和参数;结合实验室现有的单片机教学实验系统进展系统组成,对整个系统的工作原理进展全面分析,论述其构造特点、工作原理、优、缺点和使用场合。分析和论述系统采用的主要单元的工作原理和特性。2软件设计:要求合理分配系统资源,完成直流电机转速闭环控制的程序设计如:系统初始化;主程序;A/D转换;D/A转换;标度变换;显示与键盘管理;控制算法处理;输出等。3对设计控制系统进展系统联调。4编写课程设计报告:按统一论文格式、统一报告纸和报告的各要素【封面、任务书、目录、摘要、序言、主要容包括设计总体思路、设计步骤、原理分析和

3、相关知识的引用等、总结、各组员心得体会、参考书及附录包括系统框图、程序流程图、电原理图和程序原代码】进展编写,字数要求不少于4000字,要求设计报告论理正确,逻辑性强,文理通顺,层次清楚,表达确切。目前资料收集情况含指定参考资料:?计算机硬件技术根底实验教程? 黄勤等编著 大学 ?单片微型计算机机与接口技术? 群芳等编著 电子工业?计算机控制技术?王建华等编著 高等教育课程设计的工作方案:12011年9月19日熟悉设计任务和要求。22011年9月20日确定设计方案。32011年9月21日硬件调试。42011年9月22日软件及系统调试。52011年9月23日设计辩论。任务下达日期2011年9月1

4、9 日完成日期 2011年9月24日指导教师签名学生签名说明:1、学院、专业、年级均填全称,如:光电工程学院、测控技术、2003。2、本表除签名外均可采用计算机打印。本表不够,可另附页,但应在页脚添加页码。摘要在运动控制系统中,电机转速控制占有至关重要的作用,其控制算法和手段有很多,模拟PID控制是最早开展起来的控制策略之一,长期以来形成了典型的构造,并且参数整定方便,能够满足一般控制的要求,但由于在模拟PID控制系统中,参数一旦整定好后,在整个控制过程中都是固定不变的,而在实际中,由于现场的系统参数、温度等条件发生变化,使系统很难到达最正确的控制效果,因此采用模拟PID控制器难以获得满意的控

5、制效果。随着计算机技术与智能控制理论的开展,数字PID技术渐渐开展起来,它不仅能够实现模拟PID所完成的控制任务,而且具备控制算法灵活、可靠性高等优点,应用面越来越广。本设计以上面提到的数字PID为根本控制算法,以SST89EE554RC单片机为控制核心,产生占空比受数字PID算法控制的PWM脉冲实现对直流电机转速的控制。同时利用霍尔传感器将电机速度转换成脉冲频率反响到单片机中,实现转速闭环控制,到达转速无静差调节的目的。在系统中采数码管和44键盘作为人机交互界面,启动后可以通过显示部件了解电机当前的转速。该系统控制简单,反响灵敏,具有很强的抗干扰能力。前言一.总体设计方案二.硬件单元模块设计

6、1单片机控制单元 2直流电机驱动单元 3基于霍尔传感器的测速模块 4LED显示模块 三.软件功能调试1主程序设计 2PWM波软件软件设计 3显示子程序 4键盘处理子程序 5定时处理程序 6测速软件设计 四.设计总结 17五.参考文献 17附录 17前言在工业控制领域中,直流电机是常见的机电装置,以单片机为控制器对电机进展控制,运用串口通信技术实现电机的远程测控。通过采用周期测量法测量电机的转速,运用PWM技术实现对电机的驱动控制,为直流电机的控制提供了一种低本钱高精度的测控方案。在工业自动控制系统和各种智能产品中常常会用用电动机进展驱动、传动和控制,而现代智能控制系统中,对电机的控制要求越来越

7、准确和迅速,对环境的适应要求越来越高。随着科技的开展,通过对电机的改造,出现了一些针对各种应用要求的电机,如伺服电机、步进电机、开关磁阻电机等非传统电机。但是在一些对位置控制要求不高的电机控制系统如传动控制系统中,传统电机如直流电机乃有很大的优势,而要对其进展准确而又迅速的控制,就需要复杂的控制系统。随着微电子和计算机的开展,数字控制系统应用越来越广泛,数字控制系统有控制准确,硬件实现简单,受环境影响小,功能复杂,系统修改简单,有很好的人机交换界面等特点。总体设计概述单片机直流电机调速简介:单片机直流调速系统可实现对直流电动机的平滑调速。PWM是通过控制固定电压的直流电源开关频率,从而改变负载

8、两端的电压,进而到达控制要求的一种电压调整方法。在PWM驱动控制的调整系统中,按一个固定的频率来接通和断开电源,并根据需要改变一个周期“接通和“断开时间的长短。通过改变直流电机电枢上电压的“占空比来改变平均电压的大小,从而控制电动机的转速。因此,PWM又被称为“开关驱动装置。本系统以SST89E554RC单片机为核心,通过单片机控制,C语言编程实现对直流电机的调速。系统控制方案的分析:本直流电机调速系统以单片机系统为依托,根据PWM调速的根本原理,通过PI控制以直流电机电枢上电压的占空比来改变平均电压的大小,从而控制电动机的转速为依据,实现对直流电动机的平滑调速,并通过单片机控制速度的变化。本

9、文所研究的直流电机调速系统主要是由硬件和软件两大局部组成。硬件局部是前提,是整个系统执行的根底,它主要为软件提供程序运行的平台。而软件局部,是对硬件端口所表达的信号,加以采集、分析、处理,最终实现控制器所要实现的各项功能,到达控制器自动对电机速度的有效控制。硬件局部硬件局部由电源模块、单片机控制单元、电机驱动电路、LED显示电路、霍尔传感器电路构成。键盘向单片机输入相应控制指令,由单片机通过P2.0与P2.1其中一口输出与转速相应的PWM脉冲,另一口输出方波,根据方波测出转速,比拟给定转速与实际转速得到差值再通过P控制来实现电动机转速的控制。电动机的运转状态通过LED显示出来。电动机所处速度显

10、示。每次电动机启动后开场计时,停顿时LED显示出本次运转所用时间,时间准确到0.1s。总体设计方案的硬件局部详细框图如图一所示单片机本次实验采用的是SST89E554RC单片机,键盘扫描及显示直流电机驱动电路基于霍尔传感器的测速电路 工作原理:霍尔开关集成电路中的信号放大器将霍尔元件产生的幅值随磁场强度变化的霍尔电压UH放大后再经信号变换器、驱动器进展整形、放大后输出幅值相等、频率变化的方波信号。信号输出端每输出一个周期的方波,代表转过了一个齿。单位时间输出的脉冲数N,因此可求出单位时间的速度VNT。软件设计主程序设计主程序主程序是一个循环程序,其主要思路是,先设定好速度初始值,这个初始值与测

11、速电路送来的值相比拟得到一个误差值,然后用P算法输出控制系数给PWM发生电路改变波形的占空比,进而控制电机的转速。主程序流程图如下:PWM波软件软件设计SST89E554RC提供了一个特殊的16位定时器,该定时器具有5个16位捕捉/比拟模块。每个模块都可被编程工作于以下四种模式:上升和/或下降沿捕捉,软件定时器,高输出HSO和脉冲宽度调制PWM。第五个模块除上述四种模块外还可以编程为看门狗定时器。 每个模块都有一个外部引脚,与P1口复用:模块0连接至P1.3CEX0,模块1连接至P1.4CEX1,模块0连接至P1.5CEX2,模块1连接至P1.6CEX3,模块1连接至P1.7CEX4.其构造框

12、图如下:在PWM驱动控制的调整系统中,按一个固定的频率来接通和断开电源,并且根据需要改变一个周期“接通和“断开时间的长短。通过改变直流电机电枢上电压的“占空比来到达改变平均电压大小的目的,从而来控制电动机的转速。设电机始终接通电源时,电机转速最大为Vmax,设占空比为D= t1 / T,那么电机的平均速度为Va = Vmax * D,其中Va指的是电机的平均速度;Vmax 是指电机在全通电时的最大速度;D = t1 / T是指占空比。由上面的公式可见,当我们改变占空比D = t1 / T时,就可以得到不同的电机平均速度Vd,从而到达调速的目的。本设计中采用软件延时方式对脉冲宽度进展控制 ,PW

13、M模式被用于产生一个连续的占空比可调的方波信号。脉冲宽度调制通过比拟PCA定时器的低字节CL和比拟存放器的低字节CCAPnL产生8位PWM脉冲。当CL CCAPnL时,输出高电平。输出频率取决于PCA定时器的信号源。占空比由写入比拟存放器的高字节CCAPnH控制,计算如下:CCAPnH=2561Duty cycle其中CCAPnH为8位整型数,Duty cycle为百分数。键盘查询处理子程序: 由于只用到了三个按键,所以按键查询比拟简单,只需要行信号一位送零即可,然后列信号读进来,与键值进展比拟,即可知道是哪个键按下。显示子程序:利用数组方式定义显示缓存区,缓存区有8位,分别存放各个LED管要

14、显示的值。显示子程序为一带参子程序,参数为显示缓存的数组名,通过for(i=0;i8;i+)方式对每位加上位选码,送到P0口并进展延时。测速软件设计测速子程序:控制算法子程序:PI控制参考文献、单片机原理及应用清华大学,黄勤主编,楠副主编、计算机硬件技术根底实验教程大学,黄勤主编,高富强副主编、微型计算机控制技术机械工业,黄勤主编,楠副主编、附录程序清单#include SST89x5x4.h #define uchar unsigned char#define uint unsigned int Ucharcode LK10=0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7

15、D,0x07,0x7F,0x6F,; /段选码uchar LK14=0xfe,0xfd,0xfb,0xf7; /位选码sbit p1_0=P10;sbit p1_1=P11;sbit p1_2=P12;sbit p1_5=P15;uchar key,V=0,pid;uchar pid_P=17;/比例系数uchar pid_I=13; /积分系数 int data z,counter;int data n,t;int speed=0;int set_speed=3000;/设定值int temp=128;sfr CCAPM4=0xde;sfr CCAP4H=0xFe;sfr CCON=0xD8

16、; void delay(int k) /延时子程序1 int data i,j; for(i=0;ik;i+) for(;j121;j+) ; void delay2()/延时子程序2 unsigned char i,j; for(i=0;i20;i+) for(j=0;j2;j+) ; void display(int num) /显示当前速度 p1_5=1; P0=LKnum/1000;P2=LK10;delay(10); P0=LK(num/100)%10;P2=LK11;delay(10); P0=LK(num%100)/10;P2=LK12;delay(10); P0=LKnum%

17、10;P2=LK13;delay(10); void display0() /显示设定速度 uint i, num; p1_5=1; num=set_speed; for(i=0;i100;i+) P0=LKnum/1000;P2=LK10;delay(100); P0=LK(num/100)%10;P2=LK11;delay(100); P0=LK(num%100)/10;P2=LK12;delay(100); P0=LKnum%10;P2=LK13;delay(100); void int0() interrupt 0 using 1/断INT1子程序 t+;/脉冲加1void key_s

18、can()/键盘扫描 p1_5=0; if(p1_0=0) delay(2); if(p1_0=0) while(p1_0=0); key+; if(key%2=0) CCON=0x00; else CCON=0x40; if(key%2=1) if(p1_1=0) delay(2); if(p1_1=0) while(p1_1=0); set_speed=set_speed+60; display0(); if(p1_2=0) delay(2); if(p1_2=0) while(p1_2=0); set_speed=set_speed-60; display0(); void pwm_ou

19、t(unsigned char duty)/PWM输出 CCAP4H=duty;void PI_control( int set_s, int S)/PI控制子程序 int i; i=set_s-S; V=V+i; if(i=0) ; else temp=(S+i)/pid_P+V/pid_I; pwm_out(temp); void timer0(void) interrupt 1 using 2 /定时中断效劳程序 n+; TR0=0;/关定时器T0 TF0=0; TMOD=0x01;/T0定时,工作方式1 TH0=0x3C; TL0=0xB0; TR0=1;/开定时器T0 ET0=1;

20、if(n=20) z=60*t;/计算每分钟的转速 speed=z; t=0; n=0; pid=1; void main(void) CCAPM4=0x42; CCAP4H=0; CCON=0x00; EA=1; EX0=1;/开外部中断INT0 IT0=1; TMOD=0x1;/T0定时,工作方式1 TL0=0xB0;/上下位赋初值D TH0=0x3C;/定时50ms TF0=0;/溢出标志位,为1溢出 TR0=1;/开定时器T0 ET0=1; display0(); while(1) pwm_out(temp); display(speed); key_scan(); if(pid=1) pid=0; PI_control( set_speed, speed);

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2