打印
[STM32F0]

【STM32F091】+水温控制系统

[复制链接]
1990|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本设计基于STM32F091-Nucleo开发板为平台,以MDK5.13为开发环境编程而组成的一个水温自动控制系统.容器内的水温可以通过外部扫描键盘来人工设定。温度值设定后系统将通过PT100温度传感器来测定当前的温度值。当前的水温值可以显示在3.2寸液晶屏上。系统可实现的功能如下:
1.3.2寸液晶屏可以显示当前温度,水温显示到小数点后一位。
2.可以用键盘人工设定水的温度值。
3.利用串口使STM32F091-Nucleo开发板和计算机进行通讯。
4.采用PID控制算法使得温度稳定在一定的范围内。
本实验控制对象为1升净水,容器为瓷器皿。水温可以由人工设定,串口每1S向计算机发送一次温度值,3.2寸液晶屏显示当前温度值。当环境温度降低时采用PWM技术DA转换器控制电阻丝加热,实现自动控制,以保证设定的温度基本不变。
设计方案
1.水温控制系统设计要求
(1)温度设定范围为 40~90℃,最小区分度为1℃。
(2)在STM32F091上移植STemwin用于在液晶屏上显示相关的信息和当前的水温值。
(3)采用适当的控制方法(如数字PID),当设定温度突变(由 40℃提高到60℃)时,减小系统的调节时间和超调量。
(4)从串口输出水温随时间变化的数值。
(5)利用STM32F091的AD转换器采集PT100温度传感器数值,根据PT100的线性度提出计算当前温度值。
(6)外接一个以I2C为接口的数字温度传感器,采集当前的环境温度。


每个功能模块作用介绍:
STM32F091单片机:
STM32F091是整个控制系统的核心,在此 我用STM32F091提供系统控制所需要的I/O口,中断、定时以及存放中间结果的RAM。
PT100温度采集:
温度电桥电路采用恒压源2.5V供电,经过AD620的放大之后,在经过OP270组成的二阶有源滤波电路后直接进入STM32F091的AD转换器进行AD转换。将转换后的数值换算成温度值用于控制和显示。
串口通信:
    利用STM32F091的串口将采集到的数字温度传感器的值上传至PC机,经过上位机软件的计算得出当前环境温
度。
键盘设定:用于温度值的人工设定。
固态继电器/电热丝:通过控制继电器的开关来完成对热电丝的加热,从而达到温度的控制。
电源电路:电源电路部分的两个电容构成滤波电路,用来改善系统的电磁兼容性,降低电源波动对系统的影
响,增强电路工作稳定性。
环境温度采集
     环境温度的采集是通过数字式温度传感器(ADT7410),采用标准的IIC总线方式。STM32F091采用IIC总线
实时读取温度传感器数值。将读取的温度传感器数值经过STM32F091的串口上传至PC机,经过上位机软件的计算
得出当前环境温度。
  

沙发
宇飞天| | 2016-6-15 12:43 | 只看该作者
PT100的电桥怎么搭?

使用特权

评论回复
板凳
xfcjava2| | 2016-6-15 14:59 | 只看该作者
太低级了,看看我的帖子: "STM32 4路温度控制器"

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

19

主题

143

帖子

0

粉丝