摘要
本文介绍直流电机PWM恒转速闭环调节系统的一种设计方案。系统以单片机AT89C51 为控制核心,由液晶显示模块、按键控制模块、电机驱动模块、测速环节和直流电机组成,其中电机驱动模块采用L298N 芯片实现,液晶显示模块采用LCD1602 实现。采用模糊控制(fuzzy control)算法 对直流电机转速进行闭环控制。通过调试,实现了系统通过4x4矩阵键盘 进行电机手动调速、设置目标转速、自动调速、电机正反转及停止电机的功能。
1. 引言
从过程本质上来说,直流电机转速控制属于一种非线性时变的复杂控制。传统的PID控制缺乏自动调节能力,当参数变化在超过相关范围的情况下,无法满足控制精度的要求。而模糊控制这一控制方法是基于规则的一种智能控制方式,无需依靠于被控对象的精确数学模型,并且具有强大的非线性因素影响的克服能力,对参数的变化也具有较强的鲁棒性,是基于模糊数学的一种非常适合非线性控制的新兴技术。
2. 系统总体框图
系统总体框图 
- 测速环节:利用和直流电机同轴的光栅转盘和红外对管可将速度信号转换为脉冲信号,并送给单片机,单片机通过定时对脉冲计数,计算实际转速。
- PWM:采用单片机定时器T0中断输出。
3. 模糊(Fuzzy)控制算法
模糊(Fuzzy)控制器原理结构图 
- 模糊化接口
确定基本论域  将基本论域数值映射到模糊论域  模糊子集E?{N,Z,P},EC?{N,Z,P},U?{NB,NS,ZO,PS,PB} 隶属函数  - 模糊规则表
  - 模糊推理
 - 清晰化
利用重心法对控制量进行反模糊化 
以上过程借助Matlab数学工具得到模糊控制表  借此设计模糊控制器。
4. 软件设计及Proteus仿真
代码和仿真附上(仅供参考学习) 基于模糊控制(fuzzy control)的PWM直流电机闭环调速系统.rar
|