电力电子技术课程设计 1.docx
《电力电子技术课程设计 1.docx》由会员分享,可在线阅读,更多相关《电力电子技术课程设计 1.docx(11页珍藏版)》请在冰豆网上搜索。
![电力电子技术课程设计 1.docx](https://file1.bdocx.com/fileroot1/2023-1/8/aa8ae269-2909-4067-9a8e-866f93643a14/aa8ae269-2909-4067-9a8e-866f93643a141.gif)
电力电子技术课程设计1
HEFEIUNIVERSITY
电力电子技术课程设计
项目名称:
简易恒温控制电路设计
学科专业:
自动化
作者姓名:
指导教师:
摘要
本作品简易恒温控制电路通过线性电源供电,利用NE555控制电路产生高低电平让继电器通断从而达到间断加热,继而实现恒温控制。
本系统具有用途广泛、精度较高、造价低廉、装调容易等特点。
关键词:
热敏电阻NE555继电器
一、系统要求设计
设计要求制作一个简易恒温控制电路
二、系统方案论证和比较
2.1设计思路
本设计要制作一个简易恒温控制电路。
要实现对温度的控制,以STC89C52单片机作为核心部件进行逻辑控制,通过线性电源供电,利用NE555控制电路产生高低电平让继电器通断从而达到间断加热,继而实现恒温控制,同时增加显示模块对实时温度进行显示。
2.2方案选择
2.2.1系统方案设计与论证
方案一:
采用STC89C52单片机作为系统主控制器。
STC89C52单片机是一种低功耗、高性能CMOS8位微控制器,具有8KB的内存空间。
具有8K在系统可编程Flash存储器。
在单芯片上,拥有灵巧的8位CPU和系统可编程Flash,使得STC89C52单片机为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
具有40个引脚,其中有32个I/O引脚。
具有以下标准功能:
8KB字节Flash、512字节RAM、32位I/O口线内置4KBEEPROMMAX810复位电路等等。
通过把通用的8位CPU与可在线下载的Flash集成在一个芯片上,STC89C52单片机便成为一个高效的微型计算机。
方案二:
采用ATmega16单片机作为系统主控制器。
Atmel公司的ATmega16单片机具有先进的RISC(精简指令集计算机)结构、非易失性程序和数据存储器,16kB可编程Flash存储器、512B的EEPROM和1kB片内SRAM,具有丰富的外设接口,其USART(通用同步和异步接收器和转发器)是一个高度灵活的串行通信设备,SPI(串行外设接口)允许ATmega16与外设或其他AVR器件进行高速的同步数据传输。
方案一中STC89C52单片机的应用范围广,可用于解决复杂的控制问题,且成本较低,性价比高。
方案二中ATmega16单片机价格较贵,平时不怎么接触这种单片机,运用技术不够成熟。
综合比较,考虑到成本和设计需要,因此采用方案一。
2.2.2显示器方案设计与论证
方案一:
采用LCD12864液晶显示。
12864是一种图形点阵液晶显示器,它主要由行驱动器/列驱动器及128×64全点阵液晶显示器组成。
可完成图形显示,也可以显示8×4个(16×16点阵)汉字。
一个LCD12864液晶屏可以显示4行内容,每行可以显示16个字符或8个汉字。
并且功耗很低,具有很好的人机界面。
方案二:
采用七段数码管显示。
数码管,显示大亮度高,驱动部份的软件简单,但是耗电和功耗比较大。
题目要求最高显示6位数码,对数码管而言硬件电路较复杂,还要显示万年历,如果使用数码管的话,要使用至少4组1*8的数码管,会造成单片机I/O接口资源不够用,连接复杂等问题。
因此数码管不适合完成此功能。
方案三:
采用LCD1602液晶显示。
1602液晶为5V电压驱动,带背光,可显示2行字符,每行显示16个字符,不能显示汉字,内置含128个字符的ASCII字符集字库,只有并行接口,无串行接口。
我们需要用显示器主要显示温度。
由于要显示的内容比较多,且需要显示汉字,综合上面的内容进行分析我们准备采用方案一。
2.2.3温度传感器的方案论证
采用DS18B20温度传感器。
DS18B20是一种数字化温度传感器,DS18B20具有适应电压范围宽、支持多点组网功能、独特的单线接口方式、测温范围-55℃~+125℃,在-10℃~+85℃时的精度为±0.5℃、可编程分辨率9~12位、测量结果直接输出数字温度信号、极强的抗干扰纠错能力、负压特性,性价比高等优点。
并且DS18B20温度传感器很容易买到,并且我们手中有这种温度传感器,市场的行情比较稳定。
三、硬件设计
3.1、单片机最小系统模块
单片机最小系统结构其实很简单,主要由单片机、时钟电路、复位电路、外部扩展I/O接口等组成。
单片机的功能是负责整个系统的控制,不承担复杂的数据处理任务。
单片机内部具有一个高增益反相放大器,用于构成振荡器,通常在引脚XTAL1和XTAL2跨接石英晶体和2个补偿电容构成自激振荡器,可以根据情况选择6MHz,12MHz或24MHz等频率的石英晶体,补偿电容通常选择30pF左右的瓷片电容。
单片机最小系统采用上电自动复位和手动自动复位两种方式实现系统的复位操作。
上电复位要求接通电源后,自动实现复位操作。
手动复位要求在接通电源的条件下,在单片机运行期间,用按钮开关操作使单片机复位。
上电自动复位通过电容C7充电来实现。
手动按键复位是通过按键将VCC与RST接通来实现的。
单片机最小系统如下图1所示:
图1单片机最小系统板
3.2NE555控制模块
恒温控制器由热敏电阻R4、R2、NE555时基电路、温度范围调整电阻R6、R8组成,电路如图2所示
图2NE555控制电路
R4、R8为上限温度检测电阻,R2、R6为下限温度检测电阻。
当温度下降时,②脚电位低于1/3Vcc时,③脚输出高电平,继电器吸合,VD2红灯点亮,开始加热。
当温度升高而使⑥脚电位高于2/3Vcc时,③脚输出低电平,继电器释放,断开受控“电热器”的电源,停止加热。
3.3液晶显示模块
显示采用LCD12864液晶显示,采用串口方式。
LCD12864液晶,带中文字库的128*64是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64,内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。
可以显示8×4行16×16点阵的汉字.也可完成图形显示.低电压低功耗是其又一显著特点。
由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。
LCD12864的原理图如下图3所示:
图3单片机最小系统板
3.4温度采集模块
本设计温度检测采用DS18B20数字温度传感器,与传统的热敏电阻有所不同的是,使用集成芯片,采用单总线技术,其能够有效的减小外界的干扰,提高测量的精度,同时,它可以直接将被测温度转化成串行数字信号供微机处理,接口简单,使数据传输和处理简单化。
部分功能电路的集成,使总体硬件设计更简洁,能有效地降低成本,搭建电路和焊接电路时更快,调试也更方便简单化,这也就缩短了开发的周期。
其有以下独特优点:
(1)采用单总线的接口方式与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。
单总线具有经济性好,抗干扰能力强,适合于恶劣环境的现场温度测量,使用方便等优点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。
(2)测量温度范围宽,测量精度高DS18B20的测量范围为-55℃
+125℃;在-10
+85°C范围内,精度为±0.5°C。
(3)在使用中不需要任何外围元件。
(4)持多点组网功能多个DS18B20可以并联在惟一的三线上,实现多点测温。
(5)供电方式灵活DS18B20可以通过内部寄生电路从数据线上获取电源。
因此,当数据线上的时序满足一定的要求时,可以不接外部电源,从而使系统结构更趋简单,可靠性更高。
(6)量参数可配置DS18B20的测量分辨率可通过程序设定9
12位。
(6)负压特性电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。
(7)掉电保护功能DS18B20内部含有EEPROM,在系统掉电以后,它仍可保存分辨率及报警温度的设定值。
本设计用一个DS18B20测量温度,具体内部结构如下图4所示:
图4DS18B20内部原理图
3.5直流电源模块
设计要求电源供给所有模块供电(+5v,+6v)。
整流桥起到把交流电信号转化为脉动交流电信号,三端稳压芯片LM317和LM337起稳压作用,3300uF、10uF和1uF电解电容和10nF瓷片电容起滤除纹波作用,203电位器由于调节输出电压的大小,发光二极管起到检测电路是否正常工作的作用。
输出电压提供给各单元电路。
直流电源原理如下图5所示:
图5电源模块
4、软件设计
图6软件流程图
五、系统测试
本系统对温度的控制在37℃,但是有些误差,误差范围在1℃,
主要误差原:
由于热敏电阻在水中需要打胶进行保护,所以热敏电阻感应水温有一定的延迟和误差。
我们将在后续接着完善。
六、总结
本次电力电子技术课程设计是制作一个简易恒温控制电路,以STC89C52单片机作为核心部件进行逻辑控制,通过线性电源供电,利用NE555控制电路产生高低电平让继电器通断从而达到间断加热,继而实现恒温控制,同时增加显示模块对实时温度进行显示,增加了系统可观性。
基本达到了课程设计要求。
参考文献
[1]张兴,杜少武,黄海宏.电力电子技术.北京:
科学技术出版社.2010.7
[2]郭天祥.51单片机C语言教程.北京:
电子工业出版社,2011.8
[3]康华光,陈大钦,张林.电子技术基础模拟部分(第五版).北京:
高等教育出版社.2011.5
[4]杨欣,王玉凤,刘湘黔.电子设计从零开始.2005.10
[5] 于永戴佳常江.51单片机C语言常用模块与综合系统设计实例精讲.北京航空航天大学出版社
附录
附录一:
实物图
附录二:
程序
/*-----------------------------------------------
名称:
18B20温度传感器
网站:
编写:
shifang
日期:
2009.5
修改:
无
内容:
18B20单线温度检测的应用样例程序
------------------------------------------------*/
#include"delay.h"
#include"18b20.h"
/*------------------------------------------------
18b20初始化
------------------------------------------------*/
floatf_temp;
bitInit_DS18B20(void)
{
bitdat=0;
DQ=1;//DQ复位
delay2us(5);//稍做延时
DQ=0;//单片机将DQ拉低
delay2us(200);//精确延时大于480us小于960us
delay2us(200);
DQ=1;//拉高总线
delay2us(50);//15~60us后接收60-240us的存在脉冲
dat=DQ;//如果x=0则初始化成功,x=1则初始化失败
delay2us(25);//稍作延时返回
returndat;
}
/*------------------------------------------------
读取一个字节
------------------------------------------------*/
unsignedcharReadOneChar(void)
{
unsignedchari=0;
unsignedchardat=0;
for(i=8;i>0;i--)
{
DQ=0;//给脉冲信号
dat>>=1;
DQ=1;//给脉冲信号
if(DQ)
dat|=0x80;
delay2us(25);
}
return(dat);
}
/*------------------------------------------------
写入一个字节
------------------------------------------------*/
voidWriteOneChar(unsignedchardat)
{
unsignedchari=0;
for(i=8;i>0;i--)
{
DQ=0;
DQ=dat&0x01;
delay2us(25);
DQ=1;
dat>>=1;
}
delay2us(25);
}
/*------------------------------------------------
读取温度
------------------------------------------------*/
unsignedintReadTemperature(void)
{
unsignedchara=0;
unsignedintb=0;
unsignedintt=0;
Init_DS18B20();
WriteOneChar(0xCC);//跳过读序号列号的操作
WriteOneChar(0x44);//启动温度转换
delayms(10);
Init_DS18B20();
WriteOneChar(0xCC);//跳过读序号列号的操作
WriteOneChar(0xBE);//读取温度寄存器等(共可读9个寄存器)前两个就是温度
a=ReadOneChar();//低位
b=ReadOneChar();//高位
b<<=8;
t=a+b;
return(t);
}