基于51单片机秒表课程设计的智能风扇课程设计什么用按键来控制速度

查看: 896|回复: 0
毕业设计(论文) 基于单片机的电风扇控制系统设计
基于单片机的电风扇控制系统设计摘&&要 & &&&本文设计了基于单片机的温控风扇系统,采用单片机为控制器,利用温度传感器DS18B20作为温度采集元件,并根据采集到的温度,通过一个达林顿反向驱动器ULN2803驱动风扇电机。根据检测到的温度与系统设定的温度比较实现风扇电机的自动启动和停止,并能根据温度的变化自动改变风扇电机的转速,同时用LED八段数码管显示检测到的温度与设定的温度。系统的预设温度的设置是通过两个独立按键来实现的,一个增大预设温度,一个减小预设温度。该系统通过仿真和实物测试,可实现温度的显示及根据温度智能控制风扇的开启和关闭,且具有电路结构简单、操作容易、硬件少、成本低等特点。 关键词: 单片机;DS18B20;温控;风扇
QQ图片52.png (865.82 KB, 下载次数: 4)
22:15 上传
22:20 上传
点击文件名下载附件
下载积分: 黑币 -5
38.98 KB, 下载次数: 32, 下载积分: 黑币 -5
共享资料的黑币奖励!
Powered by51单片机智能温控风扇 - CSDN博客
51单片机智能温控风扇
大三上学期写的一个课程设计,完成的功能就是读取当前环境温度,在数码管上显示,并根据其驱动风扇转动的快慢,另用键盘扫描实现了总开关,超过一定阈值蜂鸣器响起。用51单片机由于芯片问题,使用两个定时器,很容易得到脏数据,程序当时写完,反复检查各种模块,和老师讨论,得出不是代码的问题,就进行了一次数据过滤
主要难点:步进电机的控制,使用占空比。
回头看,段锁存和位锁存都弄不清楚了,位锁存就是第几个数码管,段锁存就是数码管上的第几段,锁存器的锁存端为1是,数据直通,为0时就无论输入什么,输出保持前一次的输入值。
#include&reg52.h&
#include "18b20.h"
#include "delay.h"
sbit LATCH1=P2^6;
sbit LATCH2=P2^7;
sbit A1=P1^0;
sbit B1=P1^1;
sbit C1=P1^2;
sbit D1=P1^3;
sbit SPK1=P1^4;
bit ReadTempF
#define DataPort P0
#define Coil_A1 {A1=1;B1=0;C1=0;D1=0;}
#define Coil_OFF {A1=0;B1=0;C1=0;D1=0;}
#define KeyPort P3
unsigned char code dofly_DuanMa[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
unsigned char code dofly_WeiMa[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
unsigned char code special_DuanMa[10]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};
unsigned char TempData[8];
unsigned int CYCLE=100,PWM_ON=0;
unsigned char key = 0;
unsigned int flag=0;
unsigned int lin=0;
unsigned int tp=0;
void Init_Timer0(void);
void Init_Timer1(void);
void Display(unsigned char FirstBit,unsigned char Num);
unsigned char KeyScan(void);
unsigned char KeyPro(void);
void main (void)
unsigned int TempH,TempL;
unsigned int temp=0;
unsigned int hig,
Init_Timer0();
Init_Timer1();
if(ReadTempFlag==1)
ReadTempFlag=0;
temp=ReadTemperature();
TempData[0]=0;
TempH=temp&&4;
TempL=temp&0x0F;
TempL=TempL*6/10;
hig=(TempH%100)/10;
low=((TempH%100)%10);
lin=hig*10+
if(lin&30)
TempData[1]=dofly_DuanMa[(TempH%100)/10];
TempData[2]=special_DuanMa[(TempH%100)%10];
TempData[3]=dofly_DuanMa[TempL];
TempData[4]=0x39;
if(flag==1)
DelayMs(PWM_ON);
DelayMs(CYCLE-PWM_ON);
TempData[7]=dofly_DuanMa[(PWM_ON/20)];
DelayMs(CYCLE-PWM_ON);
TempData[7]=0;
void Display(unsigned char FirstBit,unsigned char Num)
static unsigned char i=0;
DataPort=0;
DataPort=dofly_WeiMa[i+FirstBit];
DataPort=TempData[i];
if(i==Num)
void Init_Timer0(void)
TMOD |= 0x01;
void Init_Timer1(void)
TMOD |= 0x10;
void Timer0_isr(void) interrupt 1
static unsigned int
TH0 = 0x0F8;
TL0 = 0x30;
key=KeyPro();
if(key==1)
if(key==2)
Display(0,8);
if(num==100)
ReadTempFlag=1;
void Timer1_isr(void) interrupt 3 using 1
unsigned int tep=0;
TH1 = 0x0D8;
TL1 = 0x0F0;
if(flag==1)
PWM_ON=100;
SPK1=!SPK1;
else if(tp&25)
PWM_ON=80;
else if(tp&22)
PWM_ON=60;
else if(tp&20)
PWM_ON=40;
PWM_ON=20;
unsigned char KeyScan(void)
unsigned char V
KeyPort=0xf0;
if(KeyPort!=0xf0)
DelayMs(10);
if(KeyPort!=0xf0)
KeyPort=0xfe;
if(KeyPort!=0xfe)
Val=KeyPort&0xf0;
Val+=0x0e;
KeyPort=0xfd;
if(KeyPort!=0xfd)
Val=KeyPort&0xf0;
Val+=0x0d;
KeyPort=0xfb;
if(KeyPort!=0xfb)
Val=KeyPort&0xf0;
Val+=0x0b;
KeyPort=0xf7;
if(KeyPort!=0xf7)
Val=KeyPort&0xf0;
Val+=0x07;
return 0xff;
unsigned char KeyPro(void)
switch(KeyScan())
case 0xee:return 0;break;
case 0xde:return 1;break;
case 0xbe:return 2;break;
case 0x7e:return 3;break;
case 0xed:return 4;break;
case 0xdd:return 5;break;
case 0xbd:return 6;break;
case 0x7d:return 7;break;
case 0xeb:return 8;break;
case 0xdb:return 9;break;
case 0xbb:return 10;break;
case 0x7b:return 11;break;
case 0xe7:return 12;break;
case 0xd7:return 13;break;
case 0xb7:return 14;break;
case 0x77:return 15;break;
default:return 0xff;break;
#include "delay.h"
void DelayUs2x(unsigned char t)
while(--t);
void DelayMs(unsigned char t)
while(t--)
DelayUs2x(245);
DelayUs2x(245);
温度传感器模块18b20
GND为接地端口,DQ为数据传输端口,VD为电源端口,关于I2C通信可以参考:
#include"delay.h"
#include"18b20.h"
bit Init_DS18B20(void)
bit dat=0;
DelayUs2x(5);
DelayUs2x(200);
DelayUs2x(200);
DelayUs2x(50);
DelayUs2x(25);
unsigned char ReadOneChar(void)
unsigned char i=0;
unsigned char dat = 0;
for (i=8;i&0;i--)
dat|=0x80;
DelayUs2x(25);
return(dat);
void WriteOneChar(unsigned char dat)
unsigned char i=0;
for (i=8; i&0; i--)
DQ = dat&0x01;
DelayUs2x(25);
DelayUs2x(25);
unsigned int ReadTemperature(void)
unsigned char a=0;
unsigned int b=0;
unsigned int t=0;
Init_DS18B20();
WriteOneChar(0xCC);
WriteOneChar(0x44);
DelayMs(10);
Init_DS18B20();
WriteOneChar(0xCC);
WriteOneChar(0xBE);
a=ReadOneChar();
b=ReadOneChar();
return(t);
最后放效果张图:
本文已收录于以下专栏:
相关文章推荐
最近为了练习51单片机,便做了一个温控风扇的项目。
名称:智能家居
转载请注明出处,http://blog.csdn.net/lxk7280
很久没写博文了,今天决定用一上午记录曾经用51单片机做的一个智能家居并作...
插座的通断是通过单片机来控制,结合蓝牙POS机做透传,即可直接通过蓝牙来控制继电器。
  51单片机代码比较简单,放出完整代码。#include
#include #define FOSC...
他的最新文章
讲师:宋宝华
讲师:何宇健
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)当前位置: >>
基于单片机的多功能自动调温风扇系统设计
A thesis(dissertation)submitted toZhengzhou University for the degree ofMaster(doctor)The Design ofMultifunctional Automatic TemperatureonControl Fan System BasedMCUByRuiWangSupervisor:Prof.Ping Liu Electronics andCommunications EngineeringSchool of Information EngineeringMay,2014 学位论文原创性声明本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究 所取得的成果。除文中已经注明引用的内容外,本论文不包含任何其他个人或集 体已经发表或撰写过的科研成果。对本文的研究作出重要贡献的个人和集体,均 已在文中以明确方式标明。本声明的法律责任由本人承担。学位论文作者: 日期:20降年弓月,5日学位论文使用授权声明本人在导师指导下完成的论文及相关的职务作品,知识产权归属郑州大学。 根据郑州大学有关保留、使用学位论文的规定,同意学校保留或向国家有关部门 或机构送交论文的复印件和电子版,允许论文被查阅和借阅;本人授权郑州大学可以将本学位论文的全部或部分编入有关数据库进行检索,可以采用影印、缩印或者其他复制手段保存论文和汇编本学位论文。本人离校后发表、使用学位论文 或与该学位论文直接相关的学术论文或成果时,第一署名单位仍然为郑州大学。 保密论文在解密后应遵守此规定。学位论文作者:王≤4,1-≈日期:20,乒年乡月/歹日 摘要摘要随着电子技术和芯片制造技术的发展,电子处理器具备了高速率、微体积、 微功耗等特点,因而结合各种先进传感器,将电子处理器嵌入家用电器中,赋 予家用电器“大脑”,使其能够根据环境的改变在不需要人为干预的情况下,自 主做出相应调整,从而显著提高用户居住舒适度、便利性和安全性的新兴技术 ――“智能家居”便应运而生。 本论文着眼于智能家居给日常生活带来的便利性和智能性,对我们平时所 使用的电风扇进行了重新设计,将89C52单片机作为主控制器,采用DSl8820 温度传感器测量周围环境温度,重点对模糊控制与PID控制相结合的模糊PID 调速技术进行了研究,并应用到该系统中,实现了电风扇可以通过环境温度的 变化,自动高精度调节风扇转速,也可根据用户设定的温度调节转速的功能。 同时,本设计添加了1602液晶显示模块、HC.SR501红外热释电传感器、ISD4004 语音模块、DSl302实时时钟芯片以及PT2262/PT2272无线遥控模块等,实现了 当风扇前100。范围内有人时可自动启动,语音提醒当前风扇运转状态,并可实时显示当前温度和时间,以及用户可以通过无线遥控远距离控制风扇,通过ISD语音模块录制音频留言等多种功能。 经测试验证,本论文所设计的基于单片机的多功能自动调温风扇系统可以 根据周围环境温度在25。C~36"12范围内由模糊PID调速算法自主高精度调节风 扇转速,语音提示风扇运行状态,实时显示当前温度和时间,并可在50m范围 内远距离遥控电风扇,同时可对用户进行录音留言等。该系统运转正常,具有 噪音低、体积小、智能化、多功能等特点,是智能家居技术在家用电风扇改进方面的成功应用与实践。关键词l智能家居;89C52单片机;模糊PID:自动调温:能电风扇;多功O AbstractAbstractAlong wim the development of electronic technology and chip technology,electronic processors have the characteristics suchasmanufacturingspeed,smallhighvolume,and smallpower consumption.Andcombining埘mvariousadvancedsensors,embed electronic processors in the household appliances and install a‘'brain’’onthe householdappliance,makewithoutit do someadjustmentsaccording to thechangeoftheenvironmenthumaninterventions.Itcanimprove thecomfort,convenienceandsafety.It isonan emerging technology,“smart home”.the convenience for daily life and intelligent,redesignedasThis paper focusesthe electric fan we usually use.Using the 89C52 MCU((Micro Controller uni0mainthecontroller,using theDS 1 8820temperaturesensor measuringof fuzzyambientPID,wetemperature,applying the advancedrealized the function that the electriccontroltechnologyadaptivefancould regulate the rotate speed automaticallyorwith high precision,accordingrealized the function thattothe changeenvironmental temperature.Alsorotatefancould regulate thespeed accordingatothetemperatureset by users.As thesame time,the system added1 602 liquid crystaldisplay module,a HC?SR50 1ir心ared sensor,anISD4004 voice module,a DS 1302real-time clock chip and the PT2262/PT2272 wireless remote control module,etc.Andthe system also realizeda onvariety of the 1functions,thebefore theelectricfancould start report theautomatically when usel啥stand00。rangefan and couldoperation and usersstate.The system could real-time display the currenttemperature and timealso could remotely control the electric fan through the wireless modules.Throughthe ISD4004 module,the system also recorded audio messages.of thisThe designrotatepaperonthatthesystemofmultifunctionalautomatictemperature control fan basedMCU,wasverified by test that could regulate thespeed with highprecision by the fuzzyadaptivePID control algorithm at the also couldrange of 25。C-36。Caccording to theambienttemperature.The systemreport the operation state,display the current temperature and time,record audio messages.At the sametime,userScould remotely control electric fan{within the scope Abstractof 50m.The system operates normally,has low noise,small volume,intelligent,multi-functional characteristics.It isasuccessfulapplication and practicethatimproving household electric fans with the smart home technology.Keywords:Smart Home;89C52MCU;FuzzyTemperature Control;ElectricAdaptivePID;AutomaticFan;Multifunction2 目录目录摘要………………………………………………………………………0Abstract……………………………………………………………………………………….1目录………………………………………………………………………31绪论…………………………………………………………………………………………61.1 1.2研究的背景和意义…………………………………………………6研究现状……………………………………………………………71.2.1智能直流无刷风扇系统…………………………………………………7 1.2.2基于USB电源的智能风扇控制技术…………………………………..71.2.3iShine智能小风扇……………………………………………………….71.3论文的主要内容和结构安排………………………………………81.4本章小结………………………………………………………………92总体方案设计………………………………………………………1 02.1系统主要功能………………………………………………………102.2系统各功能模块介绍………………………………………………112.2.1 2.2.212电源模块…………………………………………………………….11 5V电源降压模块………………………………………………………l12.2.3单片机主控制器………………………………………………………。l 1 2.2.4温度采集模块…………………………………………………………..12 2.2.5直流风扇………………………………………………………………。132.2.6MOSFET驱动…………………………………………………………..132.2.7实时时钟模块……………………………………………………………132.2.8矩阵键盘模块……………………………………………………………14 2.2.9红外传感器模块………………………………………………………一14 2.2.10液晶显示模块…………………………………………………………142.2.1lLED指示灯模块………………………………………………………142.2.12语音模块………………………………………………………………15 2.2.13无线遥控模块(接收器、发射器)…………………………………153 目录2.3本章小结……………………………………………………………153模糊PD控制算法仿真……………………………………………1 63.1PID控制原理……………………………………………………….163.2模糊控制原理………………………………………………………1 7 3.3模糊PID控制器设计………………………………………………..193.4模糊PID软件仿真…………………………………………………223.4.1软件仿真总体设计……………………………………………………..22 3.4.2直流电机部分…………………………………………………………..23 3.4.3可控电压源部分………………………………………………………一233.4.4PWM输出子系统………………………………………………………243.4.5示波器显示……………………………………………………………..283.5本章小结…………………………………………………………….304硬件电路设计………………………………………………………3 l4.1硬件电路总体设计…………………………………………………..3 I4.2各模块硬件电路设计………………………………………………324.2.1 4.2.2 4.2.3 4.2.4 4.2.512V电源接口电路……………………………………………………..32 LM7805电源降压电路…………………………………………………32 89C52单片机最小系统电路…………………………………………。33 DSl302时钟电路………………………………………………………34 DSl8820温度传感器电路…………………………………………….354.2.6矩阵键盘电路…………………………………………………………一374.2.7 4.2.8HC.SR501红外热释电传感器电路……………………………………37 1602液晶显示电路…………………………………………………….384,2.9指示灯显示电路………………………………………………………一394.2.10 4.2.1l 4.2.12 4.2.13ISD4004语音模块电路………………………………………………40 MOSFET管和电机接口电路…………………………………………4l PT2262无线发射模块电路…………………………………………。42 PT2272-M4无线接收模块……………………………………………434.3本章小结……………………………………………………………455软件程序设计………………………………………………………464 目录5.1软件程序整体设计…………………………………………………46 5.2各软件程序子流程介绍……………………………………………485.2.1红外传感器中断程序…………………………………………………。485.2.2DSl8820温度采集程序……………………………………………….485.2.3定时厂计数器电机测速程序…………………………………………….505.2.4 5.2.5 5.2.6PID控制程序…………………………………………………………..52 DSl302时钟程序………………………………………………………55 1602液晶显示程序…………………………………………………….575.2.7矩阵键盘检测程序……………………………………………………一58 5.2.8无线接收处理程序……………………………………………………..595.2.9LED灯指示程序……………………………………………………….605.2.10语音录放程序…………………………………………………………605.3本章小结……………………………………………………………616一总结与展望…………………………………………………………636.1系统总结……………………………………………………………636.2未来展望……………………………………………………………65 6.3本章小结……………………………………………………………65参考文献………………………………………………………………一66 附高匙…………………………………………………………………………………………….68 个人简历、在学期间发表的学术论文与研究成果………………….69 致谢…………………………………………………………………………………………….70 1绪论1绪论1.1研究的背景和意义智能家居是当前正发展的如火如荼的一l'-J新兴技术。随着科学技术以及物 质水平的不断提高,人们对家居舒适度、便利性以及安全性的要求越来越高。 越来越多的智能云电视、智能空调、智能监控系统、智能晾衣架等将电子控制 芯片嵌入到日常家用电器的产品走进千家万户,配合物联网技术的发展,智能 家居将家用电器与因特网相连接,使电器的智能性又进一步提升。人们可在几 百公里甚至几千公里之外便可了解家内的一切情况,并可通过网络远距离控制 家内电器,家用电器也可通过互联网查询资料和存储数据等。智能家居赋予家 居以智能,大大增强了家用电器的用户体验。随着网络技术和电子技术的发展, 将会有更多的智能型电器走入人们的视野中,给人们生活带来方方面面的便利和改变。 单片机以其微体积、微功耗、价格低廉等特点,在各种领域得到了广泛应 用,大到工业领域、军事领域,小到家电领域等,单片机的身影无处不在【lJ。单 片机的引入可以使以前单纯靠硬件电路搭建的控制电路,转变成数字电路与软件程序相结合的模式,可实现更加复杂的控制算法,达到更好的控制效果。在 日常生活中,我们看到智能云电视、智能变频空调等,却忽略了家用电风扇的智能性改进。虽然人们的生活水平大大提高了,但是电风扇由于其安装携带方便、价格低廉、节能省电等特点,在夏天仍然是家家户户的必备降温电器。但是现如今市场上存在的电风扇大多数仍是单纯硬件电路的搭建,有着功能单一, 智能性差,用户体验差等缺点。因此对家用电风扇进行有效改进,加入先进的软件算法,提高舒适性和智能性,使更多的用户体验到高新技术发展给生活带 来的便利和舒适,有着非常重要的应用价值和研究意义。 本设计基于ATMEL公司的89C52单片机,采用DSl8820温度传感器,一 改传统的PID调速算法,创新性的采用更为先进的模糊控制与传统的PID控制 相结合的控制策略,PID参数可根据转速误差进行自动微调,实现了对风扇转速 的高精度控制,完成了对家用电风扇的改进,实现了能够根据周围环境温度的 变化,实时改变风扇转速的基本功能以及语音播报和录音、时间显示等多种功6 l绪论能。本设计采用大量先进的软硬件技术,现在提高了电风扇智能性,有着很好 的应用前景,同时也是智能家居在家用电风扇方面的有效尝试。1.2研究现状智能直流无刷风扇系统1.2.12009年,武汉科技大学信息科学与工程学院的凌灵等人设计了基于温湿度 检测的智能直流无刷风扇系统【21。该设计采用555定时器和74HC04反相器搭建 相应电路来测量温度和湿度,并根据采集的数据完成对风扇的开启和转速的控 制。通过参数设定,该设计可实现温度偏差不大于1℃,湿度偏差不大于5%RH 的精度,具备高精度、智能化等特点。 1.2.2基于USB电源的智能风扇控制技术 2012年,上海应用技术学院的何柳等人设计了基于USB电源的智能风扇控 制技术,该设计采用带有A/D转换模块的STCl2系列单片机,利用热敏传感器 采集温度模拟量并通过A/D转换将模拟量转换为数字量的方法实时采集环境温 度,调节5V风扇的转速,并通过8位数码管显示当前温度13J。该设计采用USB 电源供电,取电方便,风扇造型小巧,方便携带,有很好的应用前景。1.2.3i Shine智能小风扇2013年,合肥工业大学的徐玉炎等人设计了一种创意智能小风扇,如图1.I 所示,该风扇在扇叶放置了16颗LED发光二极管,可在扇叶旋转时利用视觉暂 留现象形成显示屏,显示时间、文字、天气等【4】。并可通过蓝牙与手机连接,实 现短信提醒、备忘录、单词助记等功能,可通过手机或触摸按键等多种方式控制。7 1绪论、穆图1.1iShine智能小风扇回顾近年来对家用电风扇的改进研究,虽然出现很多可根据周围环境温度 自动调节转速的设计,但对风扇的调速控制精度较差,所采用的转速控制算法 也较为简单,大多采用传统的PID控制算法,有些甚至没有添加转速负反馈而 只是单纯的开环转速控制。由简单控制算法设计的自动调温风扇,当负载变化或者电源电压不稳定时,对风扇转速的控制精度会明显下降,这大大降低了控制效果。本设计在传统PID控制算法的基础上添加了智能控制范畴内的模糊控 制策略,由模糊控制算法对PID控制器的比例、积分、微分参数进行实时动态 微调,构成可根据转速误差的不同实时调整的模糊PID控制器,大大提高了风 扇转速控制的动态特性和抗干扰性,并添加了多种功能,构成了集多种功能为 一体且可高精度控制风扇转速的多功能自动调温风扇系统,取得了较为满意的 效果。1.3论文的主要内容和结构安排本论文详细介绍了基于ATMEL公司89C52单片机的多功能调温风扇系统 的设计,该系统采用DSl8820温度传感器监测电风扇周围环境温度,并与用户 设定的温度作对比或者采用自动模式,控制电风扇转速根据温度的变化而做出 相应调整。系统对传统PID控制做出改进,与更为先进的模糊控制相结合,对 电机调速技术做了重点研究和仿真,系统的电风扇采用带有测速码盘的直流电 机,单片机通过测速码盘可检测电机的转速,从而采用模糊PID控制算法实现匿 了对电机转速的精确控制,提高了电机控制的精确性和动态特性。同时该系统 又集成了红外热释电人体感应、语音播报、实时时钟、远距离无线遥控等多种 功能,大大增强了调温风扇的智能性。本论文共六章,其结构安排如下: 第一章“绪论”。重点介绍了当前智能家居发展迅猛,智能型家用电器不断 涌现的研究背景和本设计对家用电风扇进行智能型改进的研究意义。其次介绍 了近些年已经出现的对电风扇进行的一些改进,包括温湿度检测、人体红外检 测以及手机蓝牙连接等创意性设计,最后又介绍了本论文的主要内容和论文的结构安排。第二章“总体方案设计”。介绍了本系统需要实现的具体功能,给出了系统 总体功能框图,并对各功能模块的实现方案进行了选择,最终确定各主要元器件的型号,明确了系统设计的主要目标和功能,同时论证了系统的可行性。第三章“模糊PID控制算法仿真”。重点介绍了本系统的电机调速控制算法, 介绍了模糊PID控制原理。其次介绍了利用MATLAB仿真软件中的Simulink 仿真工具箱对本系统直流电机调速的模糊控制与PID控制相结合的模糊PID算 法进行仿真,给出了仿真波形,验证了控制策略的可行性和有效性。 第四章“硬件电路设计”。给出了总体硬件结构图,重点介绍了系统中主要 元件的特性和用法,同时介绍了各模块的硬件电路设计原理,以及硬件电路设计中的一些注意事项。 第五章“软件程序设计”。给出了总体软件流程图,对一些重要的软件流程 给出了子流程图并做了重点介绍。 第六章“总结与展望”。在本章中总结了整个系统的设计,介绍了系统的优点,指出系统的不足和需要进一步改进的方面。同时,对智能电风扇未来的发展方向做出了展望【5】。1.4本章小结本章介绍了课题的研究背景和意义,并指出本设计采用模糊PID调速算法 控制风扇电机这一创新点和红外检测、语音播报等其他主要功能,对近年来电 风扇的一些改进做了回顾,并指出近年来在对家用电风扇的改进过程中出现的 控制算法上的问题,同时指出了本系统设计在转速控制方面的创新设计和优势, 最后介绍了论文的主要内容和结构安排。9 2总体方案设计2总体方案设计■譬。无线发射罂模块图2.1系统总体功能框图2.1系统主要功能(1)本系统一改传统的PID控制策略设计,采用更为先进的与模糊控制相结合的模糊PID调速算法,PID参数可随着电机转速误差的改变而实时调整,实现对电风扇直流电机的快速精确控制;(2)本系统电风扇设置有三种工作模式,自动模式下,电风扇采集周围环境 温度,并通过模糊PID控制算法,自动精确控制风扇电机转速,使风扇转速能 够根据温度的不同自动调整,设定模式下,电风扇根据用户设定的调节温度, 结合当前环境温度,自主调节电机转速,定档模式下,电风扇按照一档、二档、 三档所对应的固定转速运行; (3)当用户位于电风扇前方时,风扇可自动启动,而当用户离去时,风扇自动停止;(4)系统可精确显示当前时间,即使在系统断电情况下,时钟芯片依然可正常计时:lO 2总体方案设计(5)通过液晶显示模块,对温度、转速和当前时间实时显示; (6)通过语音模块语音播报电扇运行状态,同时用户也可通过语音模块进行 一定时间的录音留言,其他用户可以将录音留言播放出来; (7)用户可通过矩阵键盘设定调节温度,也可对当前时间进行调整; (8)用户可远距离遥控电风扇开/关、档位切换和启动自动模式。2.2系统各功能模块介绍2.2.1 12电源模块本系统采用12V电源供电,12V电源通过12V适配器由220V 50Hz家用交 流电转换为12V电压为整个系统提供电能。其中12V电源直接对直流风扇供电, 同时通过5V电源降压模块为单片机以及各传感器和控制模块供电。2.2.25V电源降压模块由于单片机、各传感器以及其他控制模块均为5V供电,故需将12V电压进 一步降为5V。考虑到12V电压由电源适配器通过220V交流电转换而来,而12V 电源适配器一般为开关电源,12V电压会有很多纹波,所以5V电源降压模块应 避免采用开关稳压器件,需采用线性稳压器件,同时在稳压器件的输入端和输 出端连接必要的滤波和去耦电容,消除电压纹波【6】。考虑到上述问题,本系统采 用LM7805线性稳压器件作为5V降压模块的主要器件。 2.2.3单片机主控制器 单片机主控制器为整个系统的核心器件,单片机型号的选取决定了整个系 统的性能用。系统中单片机主控制器需要完成的主要功能如下: (1)接收温度传感器模块采集的周围环境温度; (2)对风扇电机进行测速,并结合模糊PID控制算法,产生相应PWM波形控制电机转速;(3)接收无线遥控接收器传输的信号,对用户远距离遥控操作做出响应; (4)接收红外传感器模块,当风扇前100。范围内有用户时自动启动电风扇, 当用户离去时自动关闭电风扇; (5)接收矩阵键盘的数据,当用户按下键盘时做出响应动作; 2总体方案设计(6)控制液晶显示模块和LED指示灯实时显示电风扇当前运行状态; (7)控制实时时钟模块采集当前时间; (8)控制语音模块,对电风扇运行状态进行语音播报,并当系统对用户操作 做出响应时进行语音播报。同时当用户需要录音时,可完成对用户音频留言的录制,并可播放录音。市场上,单片机型号各式各样,从低端的51系列8位单片机,到AVR以及PIC单片机,还有基于51内核的片上系统SOC(SystemOnChip)类单片机如C8051系列,高端的有ARM内核的32位单片机,运行速率高达上百兆赫兹【8J。 考虑到单片机需要控制各种传感器元件、液晶显示器以及直流电机,单片机的 引脚数目首先要满足系统要求,同时直流电机的转速是通过对直流电机输出矩 形脉冲计数来实现的,故单片机需要拥有计数器和定时器功能。为了保证整个 系统实时性优异,可以对用户操作和突发事件迅速做出反应,软件设计中需要 用到中断控制,因此单片机还要自带有中断机制。本系统是对家家户户普遍使 用的电风扇进行的改进设计,故单片机的价格问题也是需要重点考虑的因素。 另外,软件开发的难易程度也是需要考虑的,32位单片机虽然有着运算速度上 的优势,但其价格较贵,且32位的单片机上一般用来运行嵌入式操作系统,软 件开发不易,本系统不需要进行复杂的算术运算,也不需要运行操作系统,故 将其排除。综合考虑引脚数目,定时器、计数器功能,中断机制,价格因素以及软件开发难易程度,本系统选取应用最为广泛且价格低廉,软件开发容易的ATMEL公司89C52单片机作为系统的主控制器。 2.2.4温度采集模块 温度采集模块也是系统的重要元件,温度采集模块的采集速度和精度,决 定了整个系统控制的速度和精度。温度采集模块将周围环境的温度采集出来并 传输给单片机主控制器进行处。温度采集的方式有两种,一种是通过热敏电阻, 将温度转化为热敏电阻的阻值,阻值对应不同的电压值,单片机通过A/D转换 将电压值模拟量转换为数字量,完成温度的采集。另一种方式是采用数字温度 传感器,该传感器可直接将温度值转换数字量,单片机按照一定的通信协议, 将数字温度传感器采集的数字量直接读出来,从而完成温度的采集。自带有A/D转换器的单片机价格相对较贵,而单独的A/D转换芯片也价格不菲。而且通过热敏电阻来测量环境温度,精度不高。鉴于此,本系统温度采集模块采用数字12 2总体方案设计温度传感器,而DSlB20温度传感器应用广泛,精度高,范围宽,接线简单,软件实现容易,成为本系统温度采集模块的首选[91。 2.2.5直流风扇 普通风扇不带有码盘测速转置,如果不检测风扇电机的转速,只是单纯的 改变PWM占空比,进行开环控制。那么系统的转速控制容易受到外界的干扰, 如电源电压的波动,电机负载的变化等,导致转速控制不精确。本系统为了实 现对风扇电机转速的精确控制,需要实时检测电机转速,形成转速闭环负反馈, 经过PID控制算法实现电机转速的高精度闭环控制。因此,本系统选用自带有 测速码盘的12V直流电机(AsLoNG RF371),在电机安装扇叶来构成本系统的 直流风扇。该电机每旋转一周可输出334个矩形脉冲,通过对脉冲计数可实现 对电机转速的实时检测。2.2.6MOSFET驱动本系统对直流电机的调速原理是基于对PWM矩形脉冲占空比的调节。系统 采用12V直流电机,单片机无法直接驱动该电机,需要通过MOSFET管来驱动该电机。单片机控制MOSFET管的通断,使电机的供电通路通断,由于电机的蓄流作用,PWM占空比的变化对于电机两端平均供电电压的变化,从而做到了 对直流电机的无级调速。在MOSFET选择时需要注意MOSFET管的最大导通电 流和漏源两极的最小击穿电压应大于正常电压的几倍,确保MSFET管不会被击穿,造成安全隐患。另外也要考虑MOSFET管的导通电阻,如果电阻较大的话,MOSFET管的发热会加大。结合上述几点,本系统选取IRFl010 N沟道MOSFET管,其最小击穿电压为60V,25。C条件下,最大导通电流84A,栅极与源极的门槛电压为2.0V,--,4.0V,导通电阻25m Q,完全满足系统要求。2.2.7实时时钟模块 系统功能要求实时显示当前时间,故需要选取恰当的实时时钟芯片。DSl302 时钟芯片可以对秒、分钟、小时、月份、星期、年进行计数,年计数可达到2100 年。单片机通过三个引脚且口可完成控制,且该芯片为双电源配置,系统除了正常功能外又为该芯片设计有备份电池电源,保证系统断电情况下,DSl302芯片 依然可以正常工作,实时更新时间。13 !璺堡查壅丝盐2.2.8矩阵键盘模块 系统功能要求用户可对电风扇的调节温度进行设定,同时可以通过语音模 块进行录音留言并播放出来,而且时间显示也要求用户可以对当前时间进行调 整,这些均要求系统提供输入接口设备,用户可以通过输入接口向单片机控制 器输入控制指令。系统考虑到采用按键输入时,需要用到的按键较多,若采用 独立键盘模式,虽然编程简单,但每个按键均需为其分配单片机IO引脚,造成 资源浪费。而采用矩阵键盘模式,只需8个10引脚即可控制16个按键,大大节省了单片机10资源,是本系统输入接口设备的首选。2.2.9红外传感器模块 本系统可实现当用户位于电风扇前方一定范围内时,电风扇可自动启动。 为实现该功能,系统考虑采用红外传感器模块。而一般的红外传感器只能判断风扇前方是否有遮挡物,当有遮挡物时即启动风扇。这种情况下,若位于风扇 前方的不是用户而是某一物品时,风扇存在错误判断的风险。基于以上考虑, 系统采用红外热释电传感器(HC.SR501)。该传感器基于检测人体释放的红外辐射的原理,只有当前方为人时才会触发判断,可以有效避免误判的情况出现, 实现了有效判断在电风扇小于5米,100。锥角范围内是否存在用户的功能。 2.2.10液晶显示模块 系统功能要求对电风扇的转速、环境温度及当前时间可以实时显示。应用 最广泛、操作最简单的方式为8位数码管显示,但是数码管在美观方面较为欠 缺,且易损坏,一旦数码管中的任意发光二极管损坏,则影响整个显示效果。而12864液晶显示器或TFT彩色显示器虽然显示效果绚丽且可显示数字、字母 和汉字等,但其价格较贵,本系统也不需要显示汉字。故结合显示美观性、显示效果以及硬件和软件的易实现性,系统采用LCDl602液晶显示模块,该显示 屏体积小,背光可调节,除显示数字外也可显示英文字母,且电路接线简单, 软件易操作,与数码管相比有明显优势,是本系统液晶显示模块的首选。2.2.1 1LED指示灯模块系统除了要求显示温度、转速和当前时间外,还要求在风扇定速档位运行 时能够直观反应出当前的运行档位状态,当系统通过语音模块进行录音留言和】4 2总体方案设计播放留言时也可直观显示运行状态。液晶显示模块在直观方面稍显欠缺,而LED 发光二极管可以简单直观的显示系统运行状态,故系统采用若干LED发光二极 管来作为系统运行状态的显示器件。2.2.12语音模块系统要求可以语音播报风扇运行状态,同时用户也可以通过语音模块给其 他用户进行录音留言,而其他用户可以将录音留言播放出来。这些功能要求所 选取的语音模块不仅可以进行语音播报,还可以进行录音。语音模块有很多种,在电动车上广泛应用的WTB015就是其中之一,但是WTB015只能进行语音播 报,不能进行录音,这显然不符合系统要求。而ISD4004语音模块既可以进行 语音播报,还可以进行录音,其录音时间可达到8~16分钟,且可通过SPI总线与单片机通信,操作简单,完全满足系统要求。 2.2.13无线遥控模块(接收器、发射器) 系统要求用户可远距离对电风扇的开关、档位以及是否启动自动模式进行 控。市面上无线通信模块有很多,从远距离的GSM/GPRS通信、到低功耗的 Zigbee通信,以及无线串口等。但上述无线通信技术都是用来传输有一定数据 量的数字、字符等,而本系统由于只是无线传输开关量即“0”和“1”,传输是 否有按键按下,不需要传输大量的数据,且通信距离达到50m即可,故选用传输开关量的无线射频模块PT2262/PT2272。PT2262和PT2272硬件接线简单,直接传输开关量,当PT2262发射器的某一引脚变为低或者变化高时,PT2272接 收器与之对应的引脚也会随之改变,该无线通信模块无需编程,直接将接口与 单片机IO引脚相连即可,且通信距离完全可以达到50m,满足系统要求。2.3本章小结本章重点介绍了自动调温风扇系统的主要功能,结合总体功能框图对每部分功能模块做了简要讲解并介绍了每个模块的器件选型,在器件选型过程中, 通过备选器件之间的比较结合系统要求的指标,最终确定了个功能模块的主要 器件型号,完成总体方案设计,验证了系统方案的可行性HOl。15 3模糊PID控制算法仿真3模糊P I D控制算法仿真为了对电风扇的转速实现精确控制,使其在电源电压波动或者负载变化时转速依然不变,系统设计中引入了闭环PID控制和模糊控制,并将这两种控制 方法相结合构成模糊PID控制。单片机通过当前温度或者用户给定的调节温度, 计算出给定转速,同时单片机可检测到电机当前转速,从而计算出转速偏差, 和偏差的变化,将其送入模糊PID控制器,PID控制器经过运算,可计算出使误 差最快减为0的PWM占空比,单片机通过设置定时器中断产生相应占空比的 PWM脉冲,从而实现对电机转速的控制,使电机转速与给定转速误差为0,达到给定转速。3.1PID控制原理PID控制是传统经典控制理论中非常重要的一种控制方法【111。模拟控制中,PID控制器的公式为:砸M卜+枷毗百de(t)]位置式PID控制器的公式为:@?,计算机控制中由于变量不是连续变化的,与采样周期T密切相关,数字器mM舾专如)辱附嗽棚】}I1(3.2) “(七)=疋{P(七)+寺∑P(,)+等【P(七)一P(七一1)】} I)2.3(j-OoJ数字增量式PID控制器的公式为:叫驴E忙h旷1)】专㈣+争胁2毗-1)州H)批3)可简化为:au(k)=K。【P(七)一已(七一1)】+K,P(七)+K0【P(七)一2e(k一1)+e(k一2)】(3.4)其中K。、K,、K。分别为PID控制器的比例项、积分项、微分项‘121。PID控制器的比例项是将误差e∞放大,误差大于0时,输出正向调节,当误差小于16 3模糊PID控制算法仿真0时,输出负向调节,比例项与误差有关,可使PID控制器根据误差的不同迅速 做出调整;PID控制器的积分项与误差的积分有关,即与各个时刻误差的和有关,积分项可有效消除控制静差;PID控制器的微分项与误差的变化率有关,可根据 误差的变化率对下一个周期做出预测,当误差变化快时,PID控制器可迅速响应, 微分项对于提高整个控制系统的动态性能有着非常重要的作用。采用PID控制算法,比例项使系统对转速误差迅速做出反应,积分项消除系统转速的静差,使电机转速与设定转速相同,微分项根据误差的变化率预测出下一周期的输出, 提高系统的动态响应速度【13】。因此,在恰当的K。、K,、K。参数下,PID控制 器可实现对风扇电机转速的快速有效控制。3.2模糊控制原理本设计除采用PID控制算法之外,又添加了模糊控制对PID参数进行微调,取得了很好的效果。模糊控制举个常见的例子来讲就如我们日常生活中开车一样,虽然对于车辆在行驶过程中我们并没有建模和复杂的数学运算,但有经验 的司机仍然可以把车辆控制的很好。这就是一种模糊控制的思想,即在车辆行 驶过程中,我们根据车辆的行驶轨迹判断出车辆偏离行驶路线的程度,即“偏 左”、“偏右”或者“无偏离”。司机正是依靠这种模糊判断来操作方向盘进行调 整,从而使车辆按指定路线安全行驶的。模糊控制就是仿照人类这种模糊的控 制思想,将其运用到其他控制过程的方法。模糊控制是智能控制的一种,如图 3.1所示,模糊控制包括模糊化、模糊推理、规则库、解模糊等几部分。模糊控 制克服了许多传统控制器设计过程中对被控对象都有严格的假设条件和需要建 立数学模型的束缚,提供了一种可根据控制系统的启发性知识,实现系统控制的正规方法【l 4。。从本质上讲,应该把模糊控制器看作运行在实时闭环控制系统 中的一个人工决策器。17 3模糊PID控制算法仿真模糊控制器图3.1模糊控制器模糊控制器的设计可主要分为以下三步:选择控制器的输入和输出;选择 用于控制器输入的前处理和控制器输出的后处理算法;设计如图3.1所示模糊控 制器的每一部分。模糊控制器首先将输入量模糊化,将输入量由数字量通过模 糊化过程转变成人类语言,如将输入量的不同值转变成“正大(PB)”、“正中(P№”、“正小(PS)”、“零(ZE)”、“负小(NS)”、“负中㈣”、“负大(NB)”等模糊语言变量,然后根据人类的经验将控制算法写成规则库,如设偏差为e和偏差 的变化率为Ae,输出量为U,则“当e为PB且Ae为PM时,u为PM”即为规则库中的一条规则。模糊控制器即是根据人类的经验将输入量与输出量的关系 编制成对应的规则库,再根据输入量和输出量所选择的隶属函数经过推理机推理,最后经解模糊过程,将人类语言解模糊成数字量,从而完成整个模糊控制过程。其中,隶属函数又有三角形、梯形、高斯形、钟形等多种多种形式,三角形和梯形由于计算简单应用较为广泛。而解模糊过程也有多种方法,较常见的为重心法(cOG)和中心平均法(cA)Bs]。 重心法用每个蕴含模糊集合的面积中心和面积来计算精确输出,其公式为:RyP=』r÷L――一 ∑J:沾;(y。)dy。18∑b7J:ruB;(y,)dy。(3.5) 3模糊PID控制算法仿真R是规则数:卵是第i条规则的与蕴含模糊集合群相关的召f的隶属函数面积的中心,互。删(儿)饥表示叫(%)曲线下的面积。中心平均法用每个输出隶属函数的中心和每个蕴含模糊集合结论的最大确定度来确定精确输出矿,其公式为:矿=旦R―――_一,g∑够s岷{蟛饥))Zsup%{蟛∽)}r3 6、 (3.6) 、’其中“sup”表示“最大上限”,可以简单把sup,扣(x)}看着u(x)的最大值。3.3模糊PI D控制器设计本系统设计最大的特点在于应用了模糊控制和PID控制相结合的设计对电 风扇的直流电机转速进行了精确控制。在本设计中我们在已有PID控制的基础上,为Kp、K,、Kd分别添加了增量麒P、AK,、刖匕,如图3.2所示,其中增量从,、憾、AKd分别为三个模糊控制的输出。系统设计了三个模糊控制器,这三个模糊控制器的输入量均为转速误差e和转速误差变化率△e,输出分别为AK,、AK,、AK。。随着转速误差的变化,模糊控制器根据输入量的不同,经模 糊化、规则库匹配、模糊推理、去模糊过程得出比例、积分和微分项参数的调 整量,从而实现了PID参数的在线实时调整,显著提高了PID控制器的抗干扰 性和动态性能。19 3模糊PID控制算法仿真图3.2模糊PID控制器控制框图本设计中模糊逻辑整定PD控制器的表达式为:{巧(七)=K+吣(七){K(七)=Ki+a/q(k)I髟(D=屹+啦(七)(3.7)其中K,、K。、Kd为固定的PID参数,AK,(k)、AK,(k)、从d(k)为当前时刻三个模糊控制器的输出,K。(k)、K。∞、Kd@)为当前时刻即最终的模糊PID参数。系统设计中我们根据经验构建了比例、积分、微分模糊控制器,并对模糊 控制器的两个输入量和输出量进行了模糊化,模糊为7种状态,“正大口B)”、“正中(PM)”、“正小(Ps)”、“零(ZE)”、“负小(NS)”、“负中㈣”、“负大(NB)”,并表3.1比例项K-p规则库根据实际经验分别建立了规则库:de(0/d((NB NB PB PBNMPB PBNSZEPS PS PS ZE NS NSPMzE ZE NSPBPM PMPMPS ZEPMPS殛ZE NSNM e(t)NSPM PMPSPM PMPSPMzE NS冱PsNMNM NMNM20 3模糊PID控制算法仿真PMPB PS ZE ZE NSNMNM NMNMNBNB NB珏NMNM表3.2积分项Ⅺ规则库Kide(t)/d(t)NB NB NB NB NBNMNB NBNSzEPS NS NS zE PS PSPMzE ZE PSPB ZE ZE PsNM NMNS NS ZE PS PSNMNS NS ZE PS PSNMe(t)NS ZE PSNM NMNs ZE ZENMPM PMPB PBPMPB PB PBNMPMPB珏ZEPMPMPM表3.3微分项Kd规则库de(t)/d(t)NB NB PS PS ZE ZE zE PB PBNMNS NS NS NS zE NSNS NB NB冱NB NBPS NB NB NS NSPM NMPB PS PS ZE zENMNMNS NS zE PS PS《t)NS ZE PSNMNS zE PSNMNS zE PS冱PS PS珏PB PBPMPBPMPMPM根据该规则库我们在MATLAB模糊控制工具箱中输入模糊推理系统,构成 本系统软件仿真设计的三个模糊控制器,其输出量与固定的PID参数相结合, 构成最终的PID参数,实现模糊PID控制器的功能。2l 3.4模糊P I!堡塑!!!墼型墨鲨堕塞 D软件仿真MATLAB是在各种控制领域普遍应用的数值计算和系统仿真软件,运用该 软件,可以对我们的各种控制策略进行精确仿真【161。该软件中的Simulink仿真 工具箱集成了常见元器件,这些元器件都是相关领域的专家所构建的数学仿真模型,可以精确模拟各器件特性。本系统设计中使用了Simulink仿真工具箱中 的直流电机、模糊控制工具箱、可变电压源等多种器件,取得了令人满意的仿 真效果。3.4.1软件仿真总体设计图3.3PID控制MATLAB仿真图模糊PID软件仿真如图3.3所示,主要分为直流电机部分、可控电压源部分、 PWM输出子系统和示波器显示等几部分。直流电机采用Simulink工具箱中的DCMachine器件,模拟本系统所使用的直流电机,同时该器件可输出电机的输出转矩、角速度、电流等状态量,并且有TL输入端,可模拟直流电机在添加负 载转矩条件下的运行情况【1 71。本系统是通过调节PWM的占空比来调节电机转 速的,其本质是通过PWM占空比的改变调节电机两端的平均电压。故在软件仿 真时为了实现简单,用可控电压源直接代替了PWM占空比,取得了相同的控制 效果。可控电压源部分可根据PWM输出子系统的PWIvl大小自动调整输出电压大小,模拟本系统PWM调节电机两端平均电压的效果。PW'M输出子系统有一 个电机转速输入端和一个PWM输出端,可模拟模糊PID算法的控制过程。示波器显示则显示仿真效果,将电机各状态量的波形图显示出来。本系统设计中 3模糊PID控制算法仿真我们主要通过分析转速波形图,根据转速波形图的最大偏差量、上升时间和稳定时间来判定对电风扇直流电机的控制性能。 3.4.2直流电机部分 双击直流电机器件可打开该器件的参数配置对话框,如图3.4所示,在该对话框中可对电机的电枢电阻、电枢电感、励磁电阻、励磁电感、惯性系数等以及初始转速等参数进行设置。电机的A十、A.、F+、F.分别为电枢绕组和励磁绕 组的正负极,软件仿真时,我们将其并行连接。TL输入端为负载转矩输入端, 我们安置了一阶跃模拟模块Step,并可对其大小和时间进行设置,模拟负载转 矩的大小和加载时间。电机模块的输出端为m总线输出,可输出电机的角速度、 电枢电流、励磁电流和输出转矩等状态量,由于系统中需要实时检测电机转速,所以仿真中通过将角速度除以30/pi(pi为圆周率)得到电机的转速‘1引。鹭Block‰mete%Dc M?赫e;溪翳爨嚣鬣鬣。,|鹭■DClaeb.ine(I垃)(1ink)CODXIectionsSOInpleaentsFor fielda(wound-fieldthatorthe voLmd-field虻machine,aCCeSSthe machineOIpermanentmagnet)DCiscart amachine. providsd to the be used as^separately DC machine.excite也slant―c∞nec-tsdseries-connectedco畦igur破i∞Ihla_ture [0.087 0.0032]Parameters andAdvancedresist∞ceinduct2/1CS【Ra(O}lIS)La(H)】Field resisl{Lncsandin血ct atDce[Icf(O}llS)Lf(H)】[181.5120】mutualField-Ⅱmature1.8 Total 0.T6 inertiainductmce Laf(H):J(kg.-‘2)Viscous friction 0coefficientBn(N.L s)Coulolb frierion torque 0 Initial 0Tf(N.^)speed(rad/s):[亘]匦四口西]匝函图3.4直流电机DC Machine参数设置3.4.3可控电压源部分 3模糊PID控制算法仿真如图3.5所示,可控电压源可以根据输入端的大小,在输出端产生与之对应的电压,产生的电压类型在参数配置对话框中可以设定,类型有直流和交流两 种。同时还可以对初始状态进行设定。图3.5可控电压源参数设置 3.4.4PWM输出子系统如图3.6所示,PWM输出子系统中通过常量模块模拟给定转速,可以对其 任意设定。由于本系统采用的直流电机额定转速2000r/rain,故给定转速最大为 2000。将给定转速和直流电机的转速相减即可得出转速误差,将转速误差和转 速误差的微分送入三个模糊控制器,模糊控制器运算后得出输出变量并与固定 的比例、积分、微分项相加即得出最终的PID参数,经PID运算后经过限幅模块即可直接送给可控电压源【191。24 3模糊PID控制算法仿真图3.6PWM输出子系统在PWM子系统仿真设计中,重点对三个模糊控制器进行了设计,在 MATLAB命令行中输入fuzzy,打开模糊控制器设置,编写fis文件,这里我们 以Kp模糊控制器的建立为模板,介绍系统仿真中模糊控制器隶属函数和规则库 的建立[201。如图3.7所示,在FIS Editor新建FuzzyKp.fis文件,并设置两个输入 变量E和Ec,代表转速偏差和其微分,设置一个输出变量U,代表比例项的增量AK。,我们设置E的范围为.2000~2000,设置Ec的范围为.8000~8000,U的 范围为.10~10。■FIg EdttcE.r-uZZyI(1a…“‰tdhV'k-wl\/\/l;氏页刁/1”…“”lEcl兰坠l,燃。l端晒蠢l蔓!≥轴E函瞻一譬j。。I¨.f蠢西谴 a鲥目畦V■i_6。■函函囊i一豫.14毒ii墩i―?嚼口0。。。‘j_一,…,?■-I_‘E。6,。£煳_。雌:。馥啊。;。麓器i戳、‘誊j≈,。,臻i!!!孽!j鳓§羹;:鬻ii毒?:§j蝌‘j,i。 I。.峨瓣辫一t翟氅渊 }翱嘲嘲瞬嘲熊孕孽峨童嗍学鼍烈哆黪。 Il。《-辨。+。 一拗――曛。羹”’。一。两菇。~。’。1。,}嘲蝻…。鬻…鬻I-,aNe2m,ulj‘?#““t潮{Ⅲ、i“11。、一., 3模糊PID控制算法仿真打开隶属函数编辑对话框,选择输入量和输出量的隶属函数,如图3.8所示, 我们根据经验,对NM、NS、ZE、PS、PM选择了三角形隶属函数,对NB、PB 选择了梯形隶属函数,并设定其范围。Ec和U的隶属函数设置与之类似。转速 偏差E的隶属函数如图所示:图3.8Kp模糊控制器偏差E隶属函数设置对话框对输入变量和输出变量的隶属函数设置完毕后,即打开Rule Editor对话框, 根据表3.1建立Kp模糊控制器的规则库,这里我们一共对Kp模糊控制器建立 了49条规则,对应了两个输入变量的7种语言变量在49种搭配下所对应的输 出量语言变量【211。设置完规则库后即完成整个Kp模糊控制器的设置,设置后的 效果如图3.9--3.11所示,类似的Ki、Kd模糊控制器的设置也是如此。 3模糊PID控制算法仿真’litkle矗leEaton.FuzzyI(p。。View【曼凰:垦EditOp'aons隧霸圈翰嘲国麟麟黼嘲嘲鹣麟麴藕勰嗍蕤鬻黪㈣}翁麓缓缀§誊鬻瓣瓣浚缀缓§黪粼濑鼢g醚霪薅?}2|3j4 {5 }6H(EisNB)and(EcisNM)then(U sPB)(1) if(EBNB)and(Ecis NS)then(uis附)(1)o二?zif(EBNB)and(Ec蓐Zero}then(UB lf(EBPM)(1) If征BNB)and(ECB PS)then∞8 Ps“1)NB)a嘣CEcis刚)then(uisZero)(1,}7忏(Eis NB)and CEcis PB)then(UisZero}门) ;8 if(E B Na)and(Ec B NB)then(u B PB)(1)19 ;10if(E BNM)and(EcIS NU)then(UIS P5}(1) H(Eis NM、and(Ecis NS}then(Uis刚)(1),# EIS删Ecb"glee ub四―――]圈■――]重矿――]娼PBoresPi一 Z蠹:||iPBl塑丛圈NH |墨|一l;|,鼙■■■I一}|!!!! 二}M丛二l口槭一Cerl'tee自a-1 。*口喊w嘲睦日撕j;卜 @end|}…1一j五酮柚曲I踟咿埔f―i―I糟黼:翮忡图3.9i《{|_一憋L.塑一IKp模糊控制器规则库设置对话框图3.10Kp模糊控制器规则库观测对话框27 3模糊PID控制算法仿真图3.IIKp模糊控制器输入输出三维立体图建立Fuzz)rKp.fis、FuzzyKJ.fis、FuzzyKd.fis三个模糊控制文件后,在 MATLAB命令输入框中输入命令“FuzzyKp-可eadfis(’FuzzyKp.fis’)”、“FuzzyKi--readfis(’FuzzyKi.fis’)”和“FuzzyKd--readfis(’FuzzyKd.fis。)”,即可将三个文件中的模糊控制器设置与PWM子系统中的比例、积分、微分模糊控制器相 匹配[221。模糊控制器建立完毕后,将输出与PID固定的参数相加,得到最终的 模糊PID参数,然后将其与转速偏差相乘,并对比例项直接输出,微分项微分 后输出,积分项积分后输出,最后经过限幅模块限幅后获得模糊PID的输出,即PWM子系统输出L23】。P]D控制器的输出不能直接送给可控电压源,因为本系统采用的是12V电 压,而PID的输出可能会超出12V,如果直接送给可控电压源,则仿真系统的 电压会超出12V,这与实际系统不符,控制算法仿真也就失去了实际意义。故需 在PID控制器的输出端添加限幅模块,当PID输出大于12V时经过限幅模块后, 输出仍然为12V。这就模拟了实际系统中,即使PID算法得出的输出很大,但 单片机也要再软件中添加限幅,电机两端电压最大不可能超过12V的情况。 3.4.5示波器显示 示波器可以模拟现实中的示波器作用,将输入端变量随时间的变化过程通 过曲线显示出来【24】,如图3.12、3.13所示这里我们设定系统仿真时间为5s,并 在1.5s时添加大小为lO的负载转矩。双击转速和负载转矩对应的示波器,可以 3模糊PID控制算法仿真看到在5s时间段内,转速和负载转矩的变化曲线,从变化曲线中我们可以看到,当给定转速为500时,电机转速在1s左右可趋于稳定,系统超调量较小,且无 静差,当1.5s负载转矩加入时,转速只是出现了微小波动,这说明整个系统在 负载变化时抗干扰能力较强,系统控制取得了较好效果。/、\ 3模糊PID控制算法仿真系统在得到模糊PID的转速仿真波形后,为比较模糊控制器对PID控制的 影响,我们去掉比例、积分和微分模糊控制器,直接将PID固定的参数作为最 终PID控制器的参数,即去掉了模糊控制器的微调作用,重新仿真以后,我们发现在去掉模糊控制器对PID参数的微调以后,风扇电机的转速超调量增大且转速的上升时间即第一次达到给定转速的时间也相应增加了。因此,模糊控制器的加入对PID控制起到了明显的改善作用。本设计中由于我们经验有限,模 糊控制器的规则库和隶属函数的建立没有达到最优,当对模糊控制器中的规则 库和隶属函数对应的参数进一步调节和优化3.5本章小结在这一章中对本设计中的模糊PID控制器进行了软件仿真。首先介绍了PID 控制原理、模糊控制原理以及本系统中所采用的模糊PID控制算法。然后介绍 了利用MATLAB仿真软件中的众多工具,建立直流电机仿真模型,并重点讲解 了仿真模型中的PWM子系统。在PWM子系统的介绍中,通过各种图表,介绍 模糊控制器的设置,包括隶属函数的选择和配置以及模糊规则库的建立。最后给出仿真设计的最终转速控制仿真波形,并由仿真波形,证明了本系统设计中模糊PID控制策略的合理性和有效性。30 4硬件电路设计4硬件电路设计4.1硬件电路总体设计图4.1硬件电路总体框图系统硬件如图4.1所示,主要包括12V电源接口、LM7805电源降压模块、ATMEL 89C52单片机、DSl302时钟芯片、DSlgB20温度传感器、矩阵键盘模块、HC.SR501红外热释电传感器、1602液晶显示模块、指示灯显示模块、ISD4004 语音模块、Ⅱ江1010MOFET管和电机接口、PT2262无线发射模块和PT2272.M4 无线接收模块。89C52单片机为整个系统的核心所在,所有的信息都传输给单片 机,经单片机处理后传输给相应模块完成相应动作。正是由于单片机这一“神 经中枢”的存在,才使得众多硬件有机结合为一体【251,共同组成了整个自动调温风扇系统的硬件部分。31 4硬件电路设计4.2各模块硬件电路设计4.2.112V电源接口电路12V电源接口电路如图4.2所示,采用5.08ram间距的接口端子,可将12V 适配器的输出接入该端子即可对系统供电。电源设计部分需要注意的是由于电 机属于较大功率器件,且电机运行时会产生较大纹波,如果将控制电路的地和 电机的地直接连接在一起共地,电机产生的电压纹波极有可能对控制电路的电压造成影响。为避免这种现象的发生,我们将控制电路的地与电机电路的地隔 离开来,在12V电源接口附近才通过0欧电阻连接在一起完成单点接地,这种单点接地的方法完全阻隔了电机电源对控制部分的干扰通路,从而保证了整个 控制电路部分电源地的稳定性和抗干扰性。在PCB电路设计中,对电源线和地线的设计也要充分考虑电流的大小和EMC电磁兼容问题,对于易产生干扰的部分电路要进行隔离,同时为保证电源地的稳定性,要尽量降低电源地的电阻,避免当走过大电流时,由于电源地电阻较大而产生“浮地”现象,造成单片机复位等不良反应【26】。 电源接口一五靼"="Header.....I...?4.2.22LM7805电源降压电路LM7805芯片是线性稳压器件,其输入电压范围5V~18V,输出电压5V,共 有3个引脚,接线简单,输出电压纹波小,价格低廉,在电子设计中得到了广 泛应用。在电子设计中,保证系统电源部分纹波少、稳定性高、瞬态响应快是非常重要的。在LM7805降压电路的输入端设计采用了10uF的极性旁路电容,起到 很好的滤波效果,输出采用10uF电容,输出电容对于保持输出电压的稳定性起32 4硬件电路设计着非常重要的作用【27i。输出电容值的增加提高了回路的稳定性和瞬态响应。同时,由于IM7805主要为控制电路部分功能,控制电路部分以数字电路为主,单片机引脚和其他硬件模块的引脚会根据程序不断的在高低电平间切换,因此要在LM7805输入端和输出均添加了100nF的去耦电容【2引,如图4.3所示,使控制电路在高低电平切换引起电源电压微小变化的时候,去耦电容可迅速补充,保证电源电压平稳。需要注意的是在PCB布线时,100nF去耦电容与LM7805 芯片的各引脚采用最短路径连接,使去耦电容可以最短路径对LM7805迅速充放电,达到了很好的去耦效果,10uF和100nF电容高低搭配,保证了电源的稳 定性和瞬态响应。降压电路4.3LM7805电源降压电路4.2.389C52单片机最小系统电路ATMEL公司的89C52单片机是基于5l内核的单片机,与标准的MCS-51 指令系统兼容,同时片内置有通用8位中央处理器和8K字节的可反复擦写的只读程序存储器ROM以及256字节的数据存储器RAM例。 如图4.4所示,该单片机采用DIP-40封装,共有40个引脚,其中包括P0、 Pl、P2、P3每类各8个通用双向IO共32个通用输入输出端口【30】。其中PO口 在使用时需加外部上拉电阻,其余端口实现了内部上拉,本系统采用8位10K排阻实现了对PO端口的上拉。P3口除了作为通用IO端口之外也可使用其附加功能,P3.0和P3.1为串口通信的接收端和发送端。通过该端口可实现单片机与 外围器件的串口通信。P3.2和P3.3为外部中断引脚,外部中断又分为高低电平 触发和跳变沿触发。在程序运行时,中断处理机制与循环查询的轮询方法相比拥有非常明显的优势。有了中断处理机制,单片机即可对突发事件更迅速的处33 4硬件电路设计理,同时在没有突发事件到来时又可绕过中断处理程序,大大提高了程序执行 效率。P3.4和P3.5为定时器/计数器的输入引脚,通过该端口,单片机可实现对外部脉冲数的计数。本系统通过单片机的计数器完成了电机转速的测量。除了Pff--P3端口外,89C52单片机还有其他引脚,其中比较重要的就是外 部晶振引脚XTALl、XTAL2和复位引脚RST。89C52运行需要外部提供时钟, XTALl和XTAL2为外部晶振的输入端。外部晶振通过该引脚为89C52提供时 钟参考。本系统中我们采用了12M赫兹的晶振,结合相应电容构成了外部振荡 电路。在程序运行过程中当外部电压不稳定或有电磁干扰时,有可能会使单片 机程序“跑飞”,这种情况下就需要我们对单片机进行复位操作。RST引脚即为外部复位操作的输入端口,本系统通过电容和电阻搭配,构成了阻容复位电路。 当按下复位电路的按钮时,单片机复位,从新开始执行程序代码。为保证单片机供电电源的稳定,避免因为供电原因造成单片机出现复位等其他故障,本系 统在单片机的VCC和GND之间添加了100nf无极性去耦电容,且在PCB布线 时以最短路径连接,减少了电压在单片机引脚高低电平切换时产生的纹波【311。攀片枫复阻容位电路VOCⅣGantml5l箪片机最小系统VCcⅣCeatrdP3单片祝晶C6图4.4 4.2.489(352最小系统电路DSl302时钟电路DSl302时钟芯片是美国DALLAS公司推出的低功耗、易操作、高精度的时34 4硬件电路设计钟芯片。它可对时、分、秒、年、月、日以及星期进行计时。本系统中我们仅 用到了它的时分秒计时功能。该芯片的工作电压范围较宽,在2.5V~5.5V范围内均可正常工作。DSl302为保证不会因为电源稳定而终止计时,采用了双电源设置。正常情况即VCC2电压大于VCCI+0.02V时,芯片由VCC2供电。当VCC2断电或电压较低时,芯片切换为VCCl备份电源供电。X1、X2引脚为时钟输入端口,采用32.768KHz的外部晶振,为该芯片提供振荡源。单片机通过RST、 SCLK和I/O三引脚完成对DSl302的读取。当将RST置高时,单片机可通过I/O 引脚向DSl302发送读取指令、地址并接收时间数据。而单片机是在SCLK引脚 的上升沿完成写入DSl302数据,在SCLK引脚的下降沿完成读取DSl302数据。 其在读取和写入数据时,I/O引脚是以低位在前的形式通信的。单片机对DSl302进行操作时,只需按照DSl302芯片手册上的时序,一步步操作即可完成时间的 读取。 如图4.5所示,在DSl302时钟电路的设计中,在VCC2引脚接入了5V供电,在VCCl脚连接了纽扣电池作为时钟芯片的备份电源。X1、X2脚接入了32.768KHz的晶振,RST、I/O和SCLK三引脚经过电阻上拉后分别于单片机的 P0.7、P3.7、P3.6脚相连接。Dsl302实时时钟电路图4.5 4.2.5 OSlDSl302时钟电路8820温度传感器电路如图4.6所示,DSlgB20是美国DALLAS公司生产的可直接将温度转换为数字量并可通过一条单总线进行读取的高性能、低功耗、高精度的数字温度传35 !堡堡皇堕堡盐感器【321。而且每个DSl8820均有唯一的系列号,可实现在一条单总线上对多个 DSl8820进行温度读取,在多个位置放置DSl8820器件即可完成组网功能,可 通过一个总线对多个监测点的温度进行采集。DSl8820的温度采集范围为.55℃ -125℃,可检测温度分辨率为9~12位,对应的可分辨温度分别为O.5℃,O.25 ℃,O.125℃和0.0625℃,以9位数值方式读出数据。DSl8820的直插封装共有 3个引脚,分别为VCC、GND电源管脚和DQ数据管脚。DSl8820提供寄生电 源工作方式,当远距离操作时可省去外部电源供电,直接通过数据引脚DQ来为 DSl8820供电,在DQ引脚为高时可为传感器内部的电容进行充电,并向传感 器供应电能,在DQ引脚为低时,传感器内部的电容放电,为传感器供应电能,从而实现寄生电源功能,通过DQ和GND即可完成对DSl8820的供电和操作。如图4.7所示,本系统设计中由于操作距离近故使用正常模式,为VCC引脚提供了外部5V电源,DQ数据引脚与单片机的P3.0连接。PIN ASSIGNMENT一№眦 眦 眦啪∞S互引亘 一,:。.。。,L 谭蔓一惦呲虻惦眦虻№∞兰一图4.6DSl8820管脚分布温度采集电路VCC5V_Control图4.7DSl8820温度传感器电路36 !堡堡皇堕堡盐4.2.6矩阵键盘电路 如图4.8所示,矩阵键盘设计中,16个按键组成4*4的矩阵,每一行共用 一个单片机IO引脚,每--N也共用一个单片机IO引脚,实现了通过8个IO引 脚即可控制16个按键的功能。与独立键盘一个单片机10引脚控制一个按键相 比,大大节省了单片机IO资源。在按键的同-N的一端,系统设计了上拉电阻。 单片机的P2的8个IO端与矩阵键盘相连,通过循环机制,循环使P2.4-P2.7与 矩阵键盘列相关的IO引脚置低,当一列置低的同时,检测P2.0-@2.3对应的行,当置低一列所对应的按键中有按键按下时,P2.0-P2.3即可检测出有引脚由高电平置低,从而确定是哪个按键被按下。这样单片机循环置低矩阵的列,同时又 循环检测矩阵的行,则实现矩阵键盘的功能。1R7JRes210|(『【】& 1帐S32_-■‘一 SW-PB[息10K[ 虹矩阵键盘,543 SW拥S5小日寸+-_■■一&1-_■LSW-甩剑-―■L-l ^I ^I. 到―-●L 到..■■一 ^l ^1. 到..■■一 到..■L^j. ―●●―--J●------●k__?_一----J●----_J SW-RB------_.‘●-----_一-----●I__-一 SW-PB――●L-lSW―PB____-一●●?_-_一-----●?_?_一一图4.8矩阵键盘电路 4.2.7HC―SR501红外热释电传感器电路热释电红外传感器是一种能检测人或动物发射的红外线而输出电信号的传感器。HC.SR501红外热释电传感器模块为全自动感应,当有人进入感应范围内时立即输出高电平,人离开感应范围后则延时一段时间便自动将输出变为低电37 !堡堡皇堕丝盐平。如图4.9、4.10所示,本系统中将红外传感器的输出端与单片机的P3.2外部 中断引脚相连接,一旦检测到用户进入检测范围或离开检测范围均会触发单片机中断机制,从而控制电风扇的启停,实现自动感应用户启停电风扇的功能, 同时由于采用单片机中断机制,因此在没有被触发时单片机照常运行其他程序, 并不会循环检测HC―SR501是否触发,只有该传感器被触发时产生中断,单片 机才会在中断处理函数进行处理,在保证对红外传感器快速反应的同时也提高了单片机程序的运行效率。图4.9红外热释电传感器实物图红外热释电传感器vccsv Control P4I-kader 3图4.10红外热释电传感器电路 4.2.8 1602液晶显示电路1602液晶显示模块共有16个引脚,引脚1为VSS电源地;引脚2为VDD, 接5V电源;引脚3为V0,液晶显示器对比度调整端,如图4.11所示,系统中 将该引脚经滑动电阻后接地,调节滑动电阻即可实现对液晶显示器对比度的调节;引脚4为RS,作为寄存器的选择引脚,高电平时选择数据寄存器,低电平38 兰堡堡皇堕堡生时选择指令寄存器;引脚5为R/W读写信号引脚,高电平时进行读操作,低电 平时进行写操作;引脚6为E,即使能端引脚,下降沿使能。引脚7~14为双向 数据引脚;15、16引脚SEI背光电源的正、负极引脚,该模块内部已经存储了160个不同的点阵字符图形,包括数字、英文(大小写)以及常用的符号等。鉴于89C52单片机IO资源有限,系统硬件设计中使1602液晶显示模块与ISD4004 语音模块共用P1口的若干IO引脚,因此在系统电路设计中添加了双向选择开 关S1,当使用1602模块时只需将开关拨向液晶显示模块,将显示模块电源接通即可。 渡晶显示毫路pl frnl,砷,图4.111602液晶显示电路4.2.9指示灯显示电路指示灯显示电路较为简单,如图4.12所示,当风扇电机定档运行时需要直观显示出电风扇当前运行的档位情况。系统使用3个发光二极管来分别指示一、 二、三档。若直接将5V电压加于LED灯两端,由于电流较大会瞬间损坏LED 灯,且LED指示灯的另一端与单片机的IO引脚相连,Io引脚的输入电流也有 一定限制,电流过大对单片机也会造成损坏。因此本系统在LED指示灯电路中加入了510 Q的限流电叫331,可以有效保护LED指示灯和单片机,对电风扇运行档位状态取得了很好的指示效果。39 4硬件电路设计LED指示灯电路图4.12LED显不电路4.2.10ISD4004语音模块电路如图4.13^4.15所示,ISD4004语音芯片可实现8至16分钟的语音录放,芯 片本身采用3V单电源工作,可进行10万次录音周期,带有自动静噪功能。由 于直接选用芯片ISD4004还需要搭建功率放大器、喇叭、5V转3V电压等电路, 开发周期较长。因此本系统直接选用ISD4004语音模块,该模块内部设计有5V 转3.3V、功率放大等电路,直接将+5V和GND引脚引出,以及SPI总线相关的 MISO、MOSI、SS、SCLK引脚引出,系统对该模块供电并将单片机的P1.2、 P1.7、P1.5、P1.4分别与语音模块SPI总线相关的引脚相连接。单片机通过SPI 总线与语音模块通信,控制语音模块的播放和录音。同时,由于89C52单片机 IO引脚有限,系统中ISD4004语音模块与1602液晶显示模块共用P1口的若干 IO引脚,因此在系统电路设计中添加了双向选择开关S1,当使用语音模块时只需将开关拨向语音模块,将语音模块电源接通(1602液晶显示模块则关闭)即可。图4.13ISD语音模块实物图 4硬件电路设计图4.14语音模块接口定义俯视图ISIM(X)4――h/Ddule图4.154.2.11ISD4004语音模块电路MOSFET管和电机接口电路如图4.16所示,系统使用自带测速码盘的ASLONG RF371型12V直流电 机。该电机的12V电源接口为电机运转提供电能,5V接口为电机的测速码盘电 路提供电能,输出与转速密切相关的矩形脉冲串。电机每旋转一周,测速引脚输出334个脉冲。如图4.17所示,电机的l引脚与12V电压相连,2引脚与Ⅱ江lOlO型MOSFET管的漏极相连,MOSFET管的源极与地相连。单片机的P3.5口通过 三极管2N3904控制MOSFET管的栅极电压从而控制MOSFET管的通断,达到 控制电机两端平均电压的功能。电机测速输出端与单片机的P3.4口相连,P3.4口为89C52单片机其中的计数器输入引脚,为了防止电机测速输出端的电流过大对单片机造成损坏,我们添加了400 Q的限流电阻。另外电机的12V地端与测 速码盘5V的地端不同,这是为了防止电机转速变化引起的电压浮动不会对控制 电路的电压造成影响,电机的地端与控制电路的地端最后在系统的12V电源接口处通过0 Q电阻单点相连,确保了整个系统控制电路地端的稳定性。 4硬件电路设计4.16ASLONGRF371型电机实物图QD]“DtOI"图4.17 4.2.12MOSFET管和电机接口电路PT2262无线发射模块电路如图4.18、4.19所示,PT2262无线发射模块提供6个引脚,其中1 ̄4引脚作为数据输入接收开关量,5、6引脚分别为9V电压的正负极。PT2262无线发 射模块的应用电路较简单,系统设计了3个按键分别对应电风扇的开关、自动 模式的启动、档位切换三种功能。整个模块通过9V电池供电,无需外接9V电 源线,方便用户携带。需要注意的是,若按下按键不放,PT2262会持续发送开 关量数据,使发射模块的发射功率过大,从而有可能烧毁发射器因此。当用户使用无线遥控器控制电风扇时,按下按键后即松开,不能长时间按下按键不放。图4.18PT2262无线发射模块实物图42 4硬件电路设计无线遥控发射器电路(孙Ⅱ)TXⅥ13 12 11 10 9v GND 6 4 5 l 2三¥19―T.●’广VCCgV TX娑坚(fiND―TXPT2262一Module jF图4.194.2.1 3PT2262无线发射模块电路PT2272-M4无线接收模块如图4.20所示,PT2272无线接收模块是与PT2262发射模块相对应的电路。 PT2262中当某一输入引脚置高或置低时,PT2272模块中与之相对应的输出引脚 也会置高或置低。单片机通过检测PT2272输出引脚即可判断出用户在PT2262 无线发射端按下了哪个按键,从而做出相应动作。PT2272接收模块共有7个引 脚,1 ̄4引脚为与PT2262相对应的输出引脚,输出开关量。5、7引脚为电源+5V 的负极和正极。6引脚为VT输出引脚,在本系统中没有使用故将其悬空处理。 PT2272无线接收模块分为三种一中为非锁型,一种为互锁型,另一种为自 锁型。其区别在于非锁型类似于点动输出,当PT2262发射器按下开关时,PT2272与之对应的引脚置高,当松开开关后,PT2272引脚则又立即恢复低电平。互锁型当发射器按下开关后,对应输出引脚一直保持高电平,直到接收到其他路的 数据才恢复低电平。互锁型每次只能有一路置高。而自锁型也是当收到数据后 ~直保持高电平直到用户再按一次与之对应的开关才会恢复低电平,自锁型与 互锁型的区别在于,互锁型的4路相互制约,每次只能有1路置高,自锁型的4路之间却无制约,每路之间相互独立。结合本系统的具体应用,系统选用PT2272一M4型即非锁型接收模块,但是非 锁型接收模块有一弊端就是当发射器端长按按键不放手时,在无线通信距离较 远情况下,信号可能会变为不连续的脉冲,具体表现为PT2272对应的引脚不断 在置高和置低

我要回帖

更多关于 单片机原理课程设计 的文章

 

随机推荐