计算机控制课程设计报告(直流电机转速闭环控制)Word格式.doc
《计算机控制课程设计报告(直流电机转速闭环控制)Word格式.doc》由会员分享,可在线阅读,更多相关《计算机控制课程设计报告(直流电机转速闭环控制)Word格式.doc(33页珍藏版)》请在冰豆网上搜索。
在运动控制系统中,电机转速控制占有至关重要的作用,其控制算法和手段有很多,模拟PID控制是最早发展起来的控制策略之一,长期以来形成了典型的结构,并且参数整定方便,能够满足一般控制的要求,但由于在模拟PID控制系统中,参数一旦整定好后,在整个控制过程中都是固定不变的,而在实际中,由于现场的系统参数、温度等条件发生变化,使系统很难达到最佳的控制效果,因此采用模拟PID控制器难以获得满意的控制效果。
随着计算机技术与智能控制理论的发展,数字PID技术渐渐发展起来,它不仅能够实现模拟PID所完成的控制任务,而且具备控制算法灵活、可靠性高等优点,应用面越来越广。
本设计以上面提到的数字PID为基本控制算法,以51单片机为控制核心,产生占空比受数字PID算法控制的PWM脉冲实现对直流电机转速的控制。
同时利用霍尔传感器将电机速度转换成脉冲频率反馈到单片机中,实现转速闭环控制,达到跟踪校正速度漂移的目的。
关键字:
计算机技术、运动控制、PID
目录
摘要 I
目录 II
序言 -1-
1设计原理 -2-
1.1单片机直流电机调速 -2-
1.2PWM波的产生 -2-
1.21定时器产生pwm
-2-
1.22
注意事项
1.3系统控制原理 -3-
2硬件电路设计 -3-
2.1系统总结构 -3-
2.2硬件电路接线 -4-
2.3单片机 -5-
2.4直流电机驱动电路 -7-
2.5霍尔传感器测速电路 -7-
3软件设计 -7-
3.1主程序设计 -7-
3.2中断计时器设计流程图 -9-
4设计分析 -10-
5心得体会 -11-
5.1心得体会() -11-
5.2心得体会() -11-
5.3心得体会() -12-
5.4心得体会() -13-
6参考文献 -14-
7附录 -15-
II
序言
微型计算机控制技术在工业领域中得到了广泛的应用。
工业控制微型计算机(简称工控机)可靠性高,实时性好,且具有标准化、模块化、组合化和开放式结构,能适应千差万别的工业控制对象,因而成为现代工业自动化中不可缺少的工具。
PID控制自从20世纪30年代末期出现以来,已成为模拟控制系统中技术最成熟、应用最广泛的一种控制方式。
PID控制技术结构简单,参数调整方便,其实质是根据输入的偏差值,按比例、积分、微分的函数关系进行运算运算结果用以输出进行控制。
它是在长期的工程实践中总结出来的一套控制方法,实际运行经验和理论分析都表明,对许多工业过程进行控制时,这种方法都能得到比较满意的结果。
在计算机用于工业控制之前,模拟PID控制器占有垄断地位。
由于在模拟PID控制系统中,参数一旦整定好后,在整个控制过程中都是固定不变的,而在实际中,由于现场的系统参数、温度等条件发生变化,使系统很难达到最佳的控制效果,因此采用模拟PID控制器难以获得满意的控制效果。
在工业控制领域中,直流电机是常见的机电装置,以单片机为控制器对电机进行控制,运用串口通信技术实现电机的远程测控。
通过采用周期测量法测量电机的转速,运用PWM技术实现对电机的驱动控制,为直流电机的控制提供了一种低成本高精度的测控方案。
1设计原理
1.1单片机直流电机调速
单片机直流调速系统可实现对直流电动机的平滑调速。
PWM是通过控制固定电压的直流电源开关频率,从而改变负载两端的电压,进而达到控制要求的一种电压调整方法。
在PWM驱动控制的调整系统中,按一个固定的频率来接通和断开电源,并根据需要改变一个周期内“接通”和“断开”时间的长短。
通过改变直流电机电枢上电压的“占空比”来改变平均电压的大小,从而控制电动机的转速。
因此,PWM又被称为“开关驱动装置”。
本系统以SST89E554RC单片机为核心,通过单片机控制,C语言编程实现对直流电机的调速。
1.2PWM波的产生
如果要用51来产生PWM波就必须要用软件编程的方法来模拟。
方法大概可以分为软件延时和定时器产生两种方法。
本次课程设计我们采用定时器产生PWM方波。
这种方法利用了定时器溢出中断,在中断服务程序改变电平的高低,在程序较复杂、多操作时仍能输出较准确的pwm波形。
1)中断服务程序的内容。
一般来说中断服务程序只完成改变标志位、转换高低电平的功能,如果中断服务程序中有太多的操作会影响pwm波的输出,尤其是除法、取余、浮点数运算会占用大量的机器周期,应在中断外完成运算。
2)定时器装入初值的问题。
装入初值不能太接近于定时器的溢出值。
如我们使用定时器方式1,最多能计65536个数,假设我们转入的初值为65534,那么定时器计两个数就会进入中断,这样会使程序紊乱而其他功能无法正常地执行,所以一般要留50-100个数的裕量。
3)定时器初值的计算
设占空比为α,频率为f
产生高电平时装入定时器高8位的值应为
TH0=[65535−(106*α)/f]/256
产生高电平时装入定时器低8位的值应为
TL0=
(65535−106*α)
%256
显然,产生低电平时的公式只要把α换成(1-α)就行了。
然而在51单片机中,浮点数运算需要消耗cpu很长的时间,为了提高程序效率,通常用100倍的占空比来计算。
同时,要注意数据类型,避免超出范围,影响计算结果
1.3系统控制原理
本直流电机调速系统以单片机系统为依托,根据PWM调速的基本原理,通过PI控制以直流电机电枢上电压的占空比来改变平均电压的大小,从而控制电动机的转速为依据,实现对直流电动机的平滑调速,并通过单片机控制速度的变化。
本设计的直流电机调速系统主要是由硬件和软件两大部分组成。
硬件部分是前提,是整个系统执行的基础,它主要为软件提供程序运行的平台。
而软件部分,是对硬件端口所体现的信号,加以采集、分析、处理,最终实现控制器所要实现的各项功能,达到控制器自动对电机速度的有效控制。
2硬件电路设计
2.1系统总结构
硬件电路由电源模块、单片机控制单元、电机驱动电路、LCD12864显示电路、霍尔传感器电路构成。
系统结构总图如图1
1)电源模块:
为整个系统提供电源
2)单片机控制单元:
整个系统的核心,对数据进行处理,使用PID算法,实现电机转速的闭环控制。
3)电机驱动电路:
根据单片机的输出来控制驱动电机。
4)LCD12864:
实时显示vs(设定转速)、vt(实测转速)、dt(占空比)
5)霍尔传感器电路:
将实时测得转速输入到单片机和LCD12864中
图1系统结构总图
2.2硬件电路接线
单片机的P0口接LCD12864的数据口D口,P2.3、P2.4、P2.5、P2.6、P2.7分别接LCD12864的CS2、CS1、RW、RS、EN口,P1.7为单片机PWM波输出口,接电机驱动电路,+12V为电机驱动电源,接+12v,HR为霍尔传感器转速输出口,接单片机P3.4口,其单片机和LCD12864接口电连线图如下图,图2,、图3
图2单片机接口连线图
图3LCD12864接口连线图
2.3单片机
本次设计中采用的是STCAT89C51单片机,其引脚封装图如下
图4C51引脚封装图
其功能如下:
·
8位CPU·
4kbytes程序存储器(ROM)(52为8K)
128bytes的数据存储器(RAM)(52有256bytes的RAM)
32条I/O口线·
111条指令,大部分为单字节指令
21个专用寄存器
2个可编程定时/计数器·
5个中断源,2个优先级(52有6个)
一个全双工串行通信口
外部数据存储器寻址空间为64kB
外部程序存储器寻址空间为64kB
逻辑操作位寻址功能·
双列直插40PinDIP封装
单一+5V电源供电
CPU:
由运算和控制逻辑组成,同时还包括中断系统和部分外部特殊功能寄存器;
RAM:
用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据;
ROM:
用以存放程序、一些原始数据和表格;
I/O口:
四个8位并行I/O口,既可用作输入,也可用作输出;
T/C:
两个定时/记数器,既可以工作在定时模式,也可以工作在记数模式;
五个中断源的中断控制系统;
一个全双工UART(通用异步接收发送器)的串行I/O口,用于实现单片机之间或单片机与微机之间的串行通信;
片内振荡器和时钟产生电路,石英晶体和微调电容需要外接。
最高振荡频率为12M。
2.4直流电机驱动电路
图5直流电机驱动电路
2.5霍尔传感器测速电路
工作原理:
霍尔开关集成电路中的信号放大器将霍尔元件产生的幅值随磁场强度变化的霍尔电压UH放大后再经信号变换器、驱动器进行整形、放大后输出幅值相等、频率变化的方波信号。
信号输出端每输出一个周期的方波,代表转过了一个齿。
单位时间内输出的脉冲数N,因此可求出单位时间内的速度V=NT。
3软件设计
3.1主程序设计
主程序是一个循环程序,其主要思路是,先设定好速度初始值,这个初始值与测速电路送来的值相比较得到一个误差值,然后用PID增量式算法输出控制系数给PWM发生电路改变波形的占空比,进而控制电机的转速。
主程序流程图如下:
调用转速显示子程序
结束
调用控制算法子程序
调用键盘处理子程序
调用pwm波调制子程序
-29-
图6主程序流程图
3.2中断计时器设计流程图
图7计时器中断子程序
4设计分析
1本次课程设计为直流电机转速闭环控制(采用单片机教学实验系统),设计要求如下:
1)使用LED/LCD实时显示电机转速。
2)要求在3秒内使用PID算法实现速度漂移。
2直流电机转速闭环控制硬件基本参数为:
1)电机旋转一周输出一个脉冲;
2)电机转速最大值,即满占空比状态为70r/s;
(