基于STM32处理器的楼宇供热流量控制器的设计与实现

(整期优先)网络出版时间:2017-03-13
/ 3

基于STM32处理器的楼宇供热流量控制器的设计与实现

曹宏桂

(西安建筑科技大学信息与控制工程学院陕西省西安市710055)

摘要:目前,建筑耗能已与工业耗能、交通耗能并列,成为我国能源消耗的3大“耗能大户”。因此,本文设计了一种基于STM32处理器的供热流量控制器系统。主要包括单片机核心系统模块、LCD显示模块、温度采集模块、按键处理模块、步进电机控制模块、RS485通信模块。采用模糊控制算法以实现电动调节阀开度的控制。

关键词:STM32;流量控制;温度采集;模糊控制

【Abstract】:Currently,thebuildingenergyconsumptionistiedtoindustrialenergy,transportationenergy,becomethethreemajor"energy-hungry"China'senergyconsumption.Therefore,wedesignedtheheatingflowcontrollersystembasedSTM32processor.Includingmicrocontrollercoresystemmodules,LCDdisplaymodule,thetemperatureacquisitionmodule,thekeyprocessingmodule,steppermotorcontrolmodule,RS485communicationmodule.UsingFuzzycontrolalgorithmtocontroltheElectriccontrolvalve.

【Keywords】:STM32,Flowcontrol,Temperatureacquisition,Fuzzycontrol

1绪论

目前,我国供暖规模大、发展快,集中供热已成为我国北方冬季供热的一种主要形式。随着我国经济的不断发展,我国能源需求越来越紧张,而人民生活水平的不断提高,使得人们对生活舒适性的要求也越来越高,现在供暖系统的耗能指标是发达国家的3倍,供暖能耗高,已成为制约我国采暖事业发展和造成城市大气污染的重要因素。

根据建设部2006年的统计显示,目前全国供热采暖耗能全年约为1.3亿吨标准煤,占全社会总能耗的10%。在传统的供热系统中,用户不具备自主调节能力,供热多少完全由供热公司决定。

整个系统供热效果并不理想,不但不能满足用户舒适性的要求,而且还造成能量浪费。随着人民生活水平的不断提高,对供热质量的要求也越来越高。主要表现在三个方面:稳定供热、均衡供热、按需供热。

本设计的主要内容有以下几个方面:

(1)系统自测成功;

(2)室内温度的采集;

(3)阀门开度的控制;

(4)时钟的正确显示及记录。

2系统设计

本设计利用数字式温度传感器DS18B20实现室内温度的检测,检测结果直接送到单片机中进行数据处理,并与设置温度值相比较,进行智能化的判断处理,当温度传感器的值小于设定温度时,根据相应的模糊算法进行处理,步进电机正转,电动阀门开度加大,增大供热量;当温度传感器的值高于设定温度时,步进电机反转,阀门开度减小,减少供热量,同时可以通过按键对室内设定温度的值进行设定,从而达到自动控制阀门的开度与供热量的目的,同时进行了辅助的时钟设计,使得系统的功能更加完善。

系统结构框图如图2-1所示。主要包括温度数据采集电路、显示电路、步进电动机控制电路、按键电路和通信电路等。

3系统设计

3.1系统硬件设计

3.1.1单片机最小系统

本单片机最小系统包括三部分:晶振电路、复位电路、电源电路。本系统采用的处理器为意法半导体公司的STM32F103增强型处理器。考虑到成本的原因使用了中等内存等级的STM32F103RBT6芯片,它的Flash存储为128KB,内部SRAM为20KB。复位电路用来防止程序进入死循环,本设计中采用上电复位方式,因为STM32系列单片机有丰富的片内资源可以对晶振频率进行分频倍频,所以外接两个晶振,其中低速晶振32.768KHz,高速晶振8MHz。低速晶振通过16分频可以得到准确1秒的时间,用作内部RTC的时间中断,以获得系统的实时时钟。高速晶振通过倍频最高可达到72MHz,可以满足绝大多数外部设备的工作要求。电源电路采用LM1117进行降压,将5V的电压降到标准的3.3V为供单片机提供电压,同时接3V纽扣电池作为掉电保护。原理图如图3-1所示:

3.1.2按键电路

按键电路设计了三个独立按键,三个按键分别为设置键、增加键、减少键,其功能主要用来进行温度预设值的调整、系统时间的调整和控制与上位机的通信等。其原理图如图3-2所示。

3.1.3测温电路

测温电路采用DS18B20芯片,作为11位的数字式测温芯片,其精度高完全能满足本设计的要求,同时它是单总线芯片,通过一个I/O口可以挂接很多的芯片实现多点测温,但本设计采用并口方式挂接,因为这可以加快温度数据读取速度。

3.1.4显示电路

显示模块使用LCD12864液晶显示器来显示,它可以在一个屏幕上显示4×8个汉字,再通过刷屏的方式,可以显示的内容非常丰富。其原理图如图3-4所示。

3.1.5阀门控制电路

阀门的控制通过一个5V的减速步进电机进行模仿,阀门开度增大则步进电机正传,阀门开度减小则步进电机反转,开度的大小即步进电机的旋转角度由所给的脉冲数控制。其原理图如图3-5所示。

3.1.6通信电路

为了方便整个供暖系统的综合管理,设计了总线接口实现与上位机的通信,物理层以RS485标准协议搭建。因为RS485协议的传输距离更远、电路接线更加简单。原理图如图3-6所示。

3.2系统软件设计

主程序首先要对单片机的中断初始化,温度传感器、串口波特率、延时初始化,然后对温度信号进行采样,通过模糊算法的判定对电机进行相关控制,用独立式按键实现设定温度预设值的设置,用内部RTC记录实时时间,并将温度值与实时时间在LCD12864液晶显示器上显示,其主程序流程如图3-7所示。

3.2.1显示程序模块

首先,对12864LCD初始化,之后向12864LCD指令寄存器写入字符并在显示屏上显示的地址指令,再向12864LCD写入数据,将要显示的字符写入12864LCD数据寄存器,具体程序设计如图3-8所示。

3.2.2步进电机控制程序模块

步进控制程序设计主要是对步进电动机的正反转控制的操作,以完成对供热流量控制器阀门开度的控制。其流程图如图3-9所示。

3.2.3温度采集程序模块

温度程序设计主要是对温度传感器DS18B20寄存器进行初始化,检查DS18B20是否存在,如果存在则进行温度转化处理,并将数值在LCD12864上显示出来。其流程图如图3-10所示。

3.2.4时钟程序模块

实时时钟(RTC)是一个独立的定时器。RTC模块拥有一组连续计数的计数器,在相应软件配置下,可提供时钟日历的功能。修改计数器的值可以重新设置系统当前的时间和日期。其原理图如图3-11所示。

3.2.5通信程序模块

通信程序主要是通过RS485标准协议实现的,首先对SP3485EN驱动芯片进行初始化,进入中断子程序之后,先关闭串口中断,采用查询方式接收PC机发送给本地的RS485的配置信息。配置信息主要有四个数据,在本地创建一个数组来接收配置信息并存储到存储器中。然后判断是否与自己的地址相符,如果相符则开始接受命令字来确定进行接收或者发送数据。具体的程序流程图如图3-12所示。

4系统联调

作为连接硬件部分和软件部分的重要环节,本步骤涉及了硬件和软件两部分。在充分吸取单个模块调试经验的前提下,采用分步递进的方式逐步完成系统的联调。本章主要是介绍系统调试过程中遇到的问题以及解决问题的方法。

4.1系统硬件调试

在本次设计过程中,我做了很多的前期准备工作,但是,实物搭建时还是遇到了很多问题,主要表现在以下两方面:

(1)排除线路电气连接故障,主要包括错线、开路和短路等,我的方法是首先与自己设计的原理图进行对比,发现自己所画原理图存在问题,比如由于粗心,我的LCD显示器的原理图缺少电阻元件,导致无法正常使用,后来通过修改才得以实现功能;还有晶振模块电阻标错,导致买的元器件存在问题,通过检查二次修正才得以实现。

(2)排除元器件失效,造成这类错误的原因很多,主要有:一个是买来就坏了;另一个是由于安装错误,造成期间损坏。在设计之初,为了了解温度传感器的功能,在开发板上进行模块调试时发现无法测温,并且温度传感器温度骤升,通过查对管脚电路,发现管脚连接错误,导致原器件烧坏,以致损坏了一个温度传感器。

4.2软件调试

先用KeilμVision4对C程序进行编译,建立目标文件,然后通过J-LINK将程序烧录到单片机上。但在调试过程中还是存在很多问题,比如烧录时J-LINK找不到单片机、液晶屏不能正常的显示数据、电机转动的角度不对、系统时间不能初始化、按键功能不稳定等,首先对代码进行检查并修改,然后重新载入、调试程序。以LCD12864液晶显示程序为例,程序中数据口的模式设定有问题,因此一直不能显示任何数据,在通过对程序的从新编写后终于LCD12864液晶模块的显示问题。

5.结束语

本次毕业设计实现了对楼宇的供热流量控制器的设计和实物搭建。在设计的过程中遇到了很多问题,有的是由于自己的粗心大意造成的,有的是理论知识有所欠缺造成的。但是,在解决问题的过程中我学到了很多知识。对于我以后的学习和发展都会很大的帮助。当然,由于自身的理论知识水平有限,我的设计还有很多的不足之处,在以后的日子里我会加强理论知识的学习,在以后设计出更加完美的作品。

非常感谢段中兴教授在本次设计中对我的精心指导。段老师严谨务实,精益求精的治学态度、深厚的理论功底、缜密的逻辑思维、独到的专业视角使我获益匪浅。在这里祝愿老师以后身体健康,工作顺利。

同时感谢信息与控制工程学院的各位老师和同学在各个方面给予了我很多的帮助和支持,我的大学生活因为有你们而变得充实和精彩!

参考文献:

[1]凡东升.基于神经网络理论的集中供热流量控制的研究[D].长春:长春工业大学,2011

[2]李叙.大型公建节能型供热流量控制器软件系统的分析与设计[D].北京:北京邮电大学,2012

[3]周建,基于STM32F101微控制器的智能阀位控制器研制[D].大连:大连理工大学,2010

[4]韦忠元,分布式供热控制系统远程数据交互的研究[D].大连:大连海事大学,2009

[5]王军,基于AT89S51的楼宇供热智能调节系统[D].青岛:山东科技大学,2009

[6]王立河,关于楼宇智能供热测控系统的研究[J].世界家苑,2012(12):398-398.

[7]申月霞,楼宇新型供热控制系统的研究[D].哈尔滨工业大学,2005

[8]李娜,基于MODBUS协议的智能仪表的设计[D].北京:北京邮电大学,2008

[9]杜海龙,马海涛,基于DS18B20的温度测量系统[J].微计算机信息,2012,28(10):4-5.

[10]TexasInstrumentsIncorporated,MSP430x13x,MSP430x14x,MSP430x14x1MixedSignalMicrocontroller.[EB/OL].http://www.msp430.com.2014.3.

作者简介:

曹宏桂(1991.2-)男,汉族,西安建筑科技大学信息与控制工程学院,硕士研究生,主要研究方向:嵌入式系统开发