基于单片机的恒温控制系统_yp315的空间_百度空间

目 录

一、设计任务……………………………………………………………1

1.基本要求……………………………………………………………1

2.主要性能指标………………………………………………………1

二、系统硬件原理设计…………………………………………………1

1.系统总体框图…………………………………………………………1

2.系统功能实现的设计…………………………………………………2

1)温度采集……………………………………………………………2

2)显示与键盘…………………………………………………………2

3)输出控制……………………………………………………………3

4)主控单片机…………………………………………………………3

三、系统软件原理设计…………………………………………………4

         1.按键功能定义…………………………………………………………4

         2.温度传感器实时数据采集……………………………………………4

         3.LCD液晶集成模块……………………………………………4                     

        4.调功输出控制…………………………………………………………5

四、主控程序……………………………………………………………5

参考资料………………………………………………………………11

附录

摘要:

本设计采用了STC89C52单片机组成温度控制系统,可以实现对常温的水加热到{zd0}100oC的较快而xx的控制。温度传感器采用了数字式温度传感器DS18B20,对温度进行实时采样。设置的键盘各显示模块可以预设加热的最终保持水温并进行实时显示预设温度和当前温度。单片机采用PID算法的控制输出宽度可调的PWM波方式控制双向可控硅的导通和关断用以调整输出加热功率,使之切断或接通加热器,从而控制水温稳定在预值上。根据温控的单回路PID数字调节器完成实时测量(传感采样),实时决策(PID控制运算)和实时控制(调功)三部分功能。

一、       设计任务

1. 基本要求

设计制作一套单片机温度控制系统,包括:

1),硬件原理图

2),印制板PCB

3),硬件测试程序

4),元件焊接调试

2主要性能指标:

   1),温度设定在常温到100oC,最小区分度为1oC

   2),温度控制的静态误差<1oC

   3),用LCD液晶显示水的实测温度和预设温度

二、系统硬件原理设计

1.系统总体框图

2.系统功能实现的设计

1)温度采集

本设计采用数字传感器DS18B20DS18B20是一种可组网的单线数字温度传感器,它采用单线总线结构,集温度测量和A/D转换于一体,直接输出数字量,用一根I/O线就可以传送数据与命令,其温度测量范围为-55oC~+125oC,精度为+/-0.5oC,使用中无需外部器件,可利用数据线或外部电源提供电能,供电电压范围为3.3~5.5V,通过编程实现9~12位分辨率读出温度数据。


使用时,将DS18B20的数据DQ与单片机的一位具有三态功能的双向口连接就可以实现数据传输,为保证在有效的时钟周期内提供足够电流,采用外部电源单独供电,在数据线上加一个6.8KΩ的上拉电阻。

具体接线如下:


2)显示与键盘

            设计中显示的实现采用LCD液晶集成模块TJDM1602,由STC 89C52单片机P08个数据端口与其连接,中间加上拉电阻来完成对实时采集温度的显示。160216位两行字符显示,所以设计中定义{dy}行显示设定温度ST,第二行显示实测温度PT,下面是1602RAM地址映射图:


读时序:


写时序:



此设计中键盘使用STC 89C52单片机P1口,采用独立式7键结构(此次只使用4个按键),操作更具多样化且满足设计中设定温度的要求。

3)输出控制


            由于被控对象是水的温度,故算法控制采用P调节,由主控单片机运算输出脉冲宽度可调的PWM波用于双向可控硅在1s内的导通和关断数从而调节输出给电炉的功率,这样使得水温稳定在设定值上。设计中使用MOC3021光耦隔离输出给双向可控硅BTA06后与电炉串联。下面是接线图:


4)主控单片机

          设计中选用STC 89C52单片机,共有四个8位的I/O,外加12MHz晶振提供时钟信号,采用上电复位模式,P2.2口号和温度采样与处理器件DS18B20通讯,直接输入12位数字量到89C51内进行处理,P2.0口输出控制信号与外接电源构成回路来控制固态继电器的输入信号,P0口与LCD液晶显示模块1602连接,用于实时温度和设定温度的显示。

三、 系统软件原理设计

控制系统加电后主控单片机、LCD显示、温度传感器DS18B20复位,然后初始化单片机和温度传感器,初始化完成之后,程序开始扫描键盘等待设定目标温度值,设定完成后,程序则立即开始通过扫描温度传感器DS18B20来实时采集当前水温并显示。控制算法中,当设定值与实际水温值相差大于10oC时,控制电炉的输出功率为全功率,当两者相差小于10OC时采用比例控制,并在相差10~5oC时采用不同参数的比例控制,小于5oC时采用比例积分控制,直至实际水温与设定水温相同时停止控制,程序进入等待控制状态,如果水温降到设定值以下则又开始控制。

1),按键功能定义

本次设计中定义4个按键:设定、加、减、复位键。复位键由主控单片机的复位来实现,其余各键由P1口采集控制,分别为:P1.4P1.1P1.2口。设定初始值时默认从高位到低位依次设定,用加减键实现数字的选择,按下设定键直接确认并跳到下一位,三位设定完成后主程序开始进行实时数据的采集和对输出的控制。

2),温度传感器实时数据采集

设计中选用数字传感器DS18B20,其内部可自动完成对温度模拟量到数字量的转换和放大,通过一根信号即可将实时温度参数读入主控单片机进行控制处理。本设计中通过P2.2口进行信号传输,控制程序中只要对DS18B20初始化完毕就可以实时读取采集温度信号。

3),LCD液晶集成模块TJDM1602初始化

TJDM1602通过主控单片机的P0口连接,外接上拉电阻,其显示最多达16位,设计使用上下两行来分别实现设定值与实测值的共同显示,P2.3P2.4P2.5分别实现TJDM1602的复位、读写和使能,主程序中参考其时序来实现数据的显示。

4),调功输出控制

主控单片机运算输出脉冲宽度可调的PWM波用于双向可控硅在1s内的导通和关断数从而调节输出给电炉的功率。控制算法采用比例控制,当设定值与实际水温值相差大于20oC时,控制电炉的输出功率为全功率,当两者相差小于10oC时采用比例控制,当两者相差小于5oC时采用比例积分控制,直至实际水温与设定水温相同后间歇控制,程序进入等待控制状态,如果水温降到设定值以下则又开始控制。



郑重声明:资讯 【基于单片机的恒温控制系统_yp315的空间_百度空间】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——