暖气控制系统设计.docx
- 文档编号:7093780
- 上传时间:2023-01-17
- 格式:DOCX
- 页数:21
- 大小:379.20KB
暖气控制系统设计.docx
《暖气控制系统设计.docx》由会员分享,可在线阅读,更多相关《暖气控制系统设计.docx(21页珍藏版)》请在冰豆网上搜索。
暖气控制系统设计
目录
1引言1
2总体设计方案1
2.1设计思路1
2.2设计框图2
3温度数据采集系统2
3.1数字温度传感器2
3.2SWC接口电路3
3.3单片机与SWC的连接电路4
4流量数据采集系统4
4.1电磁流量计5
4.1.1工作原理5
4.1.2测量原理5
4.2单片机与流量计的接口电路6
5人数统计系统7
5.1键盘布局7
5.2键盘接口电路7
6温度控制系统8
6.1键盘控制模块8
6.2LED显示模块8
6.2.1LED及控制芯片简介8
6.2.2LED显示系统硬件电路9
6.3温度调节模块10
6.3.1流量控制器10
6.3.2PWM驱动电路11
6.3.3比例电磁阀11
7多个单片机串口通信12
7.1波特率选择12
7.289C51的串行口13
7.3硬件连接电路图14
8软件部分设计14
8.11号子机软件流程15
8.22号子机软件流程16
8.3主单片机软件流程17
结束语19
致谢20
参考文献21
附图总电路图22
1引言
在北方的城市生活中,暖气一直是冬天不可少的生活必需品,随着现代化建设的进行,陈旧的暖气管道以及,古老的供暖模式显得与现代化的气息有些格格不入。
当然,要想完全改变这种供暖模式,所需要的资金量是庞大的,我们不得不考虑一种更经济,更实际的方法。
那就是改变收费模式,改变室内暖气供应的控制模式。
我国暖气收费一直是以用户住房面积计算,这种方式有失公平。
现在,我们根据前人的经验,提出按热量计费的方式。
我国室内暖气供应控制一般是手动阀门,有的住户干脆没有阀门。
这样的方式造成一旦暖气开通,所有用户都以最大模式运行,不管用户家中是否有人。
这样造成了大量的热量流失和浪费。
新的控制系统的提出,可以改变这种大量浪费的情况,它具有人性化,智能化,自动化等特点,而且价格低廉,适合普通用户。
2008年,我国暖气价格普遍上涨,这主要是因为暖气供应部门在供暖上投资过大,收益太少,入不敷出。
造成这种情况的首要原因就是供暖模式的落后,以及燃料的价格上涨。
暖气价格的上涨使得用户怨声载道。
由此,急需一种新的供暖模式和计费模式来解决这个问题,很多先进的设计因为造价太高而未被采用,相信造价低,效率高的系统会更适合我国的现有国情。
2总体设计方案
2.1设计思路
本系统以89C51单片机作为微处理器,该处理器具有功能强大,价格低廉等优势,该系统采用三个单片机协同工作的模式,其中一片单片机作为主机,主要负责根据其他两片采集的数据驱动电磁阀,调节暖气管道中的热水流量从而调节温度,并将之显示在LED显示器上,该单片机还负责接收键盘数据,从而实现手动调节室内温度,另外主机机还负责接收1号子机采集的温度热量等数据,显示在LED上,作为收费的根据。
1号子机主要负责采集温度,温度传感器3安装在室内中央,采集室内温度,传感器1,2分别安装在暖气管道的进水口和出水口,采集两处的温度计算温差并保存,再根据采集的流量数据计算温差计算出热量并保存。
2号子机主要负责根据装在门内外的两个特殊的按键计算出房间内人的数目,从而计算出房间内的人数,把该数据传送给主单片机并显示在LED显示器上。
房间内无人时主单片机发送数据至电磁阀,关闭电磁阀,从而达到节约的目的。
为尽量减少或者避免压力传感器采集数据有误,房间外边还应安装一个数据清零的按钮。
当室内无人时,最后一个离开房间的人,按下清零按钮,从而确保计数系统显示为零,关闭房间内的暖气。
2.2设计框图
设计框图如图1所示。
图1系统框图
3温度数据采集系统
单片机1号子机负责温度数据的采集,要采集的温度数据出自三处。
一处来自暖气片的进水口,第二处来自暖气片的出水口,这两处的温度数据将用于热量的计算,用作暖气收费的依据。
还有一处来自房间中部,此处的数据将用作室内温度显示和调节的依据。
3.1数字温度传感器
数字温度传感器[1](简称SWC),又称集成数字式感温探头,是一种新型的三端温度变送器件,该器件采用集成模块化设计,可以直接将被测温度信号转化为数字脉冲信号输出,具有传送距离远,抗干扰能力强,转换精度高等优点。
它可以方便地与51系列单片机接口,而省去A/D转换集成电路,降低成本,提高可靠性,缩小体积,可广泛应用于军事,医药卫生,食品及自动化测控系统中。
SWC三条引脚的名称分别为控制线(K),信号线(S),公共线(G)。
其引脚信号波形如图2所示。
图2SWC引脚信号波形
其实K端实际上也是电源线,其工作方式为加电启动或宽脉冲触发。
当对其控制线加电压或宽脉冲时,经复位时间TQ之后信号线上便输出一串脉冲。
该脉冲的个数即表示被测温度的数字量。
这里还需要说明一点,输出脉冲个数的多少不取决于加电脉冲的宽度,而取决于SWC内部正比于温度的参考电压的大小,即温度的高低。
利用SWC这种特点,可以方便地与单片机配接。
3.2SWC接口电路
SWC与单片机配接的方案有两种,一种是外加电方式,另外一种是采用软件实现。
本设计中,采用外加电配接方式。
方案如下:
图3SWC的外加电方式接口电路
此方案为外加电方式,即控制线K上所加宽脉冲为一外接振荡器,由振荡器的脉冲宽控制SWC启动,如图3所示。
SWC传感器出厂均严格约定为每个脉冲0.1C的增量,而脉冲频率为15KHZ左右。
89C51单片机的P3.4P3.5引脚为计数器时,对外部事件的最高计数速度为fosc/24。
若晶振为6MHZ,6MHZ/24>15KHZ,则计15KHZ左右的脉冲是没有问题的,15KHZ脉冲的周期为0.067ms,SWC传感器的测量上限若为150C,则须计1500个脉冲,大约100ms。
即在控制线K端加电的脉宽应大于100ms,否则会引起误差。
重复对SWC进行加电启动,可实现对被测温度的连续采样。
若以P3.4为计数输入端,则必须将8951特殊功能寄存器TMOD中的D3位即门控制位GATE置为1.则只有当定时器运行控制位TR0=1,且INT0引脚为高电平时,才启动T0计数器计数,这种情况下,只要INT0为高电平,计数便开始;INT0为低电平,停止计数。
T0计数受控于INT0的高低电平,利用这一特点,让SWC的控制线K与INT0相连,只要INT0变为高电平,一方面给SWC加电,其输出为15KHZ的脉冲;另一方面使单片机计数器T0开放,开始计数,计数脉冲的多少就是温度的数字量,图3中IC1为施密特触发器,它和电容C,电位器W1、W2一起构成占空比和频率均可多调的多谐振荡器。
W1、W2可设定脉冲占空比,振荡器输出脉冲宽驱动三极管给SWC加电,每加一次电采样一次,SWC传感器的信号线S经两级施密特触发整形后送至单片机的计数端T0,完成一次温度采样。
由SWC的工作原理可知,所谓SWC的应用,就是对SWC的控制线加电后,紧接着检测信号线上输出脉冲的个数,从而得到被测温度的数字量。
89C51内部有两个相同的16位计数器,如果要检测三点或者以上的温度,或者计数器已被占用,我们也可以采取单片机的偶同I/O口用查询法实现温度的采样。
3.3单片机与SWC的连接电路
在本文的设计中,将采用单片机1的P2.1-P2.6实现三点的温度采样,为了防止外接电路对单片机的正常工作产生干扰,用光耦进行隔离。
硬件电路图如图4所示。
图4单片机与SWC的硬件连接电路
4流量数据采集系统
单片机1号子机除了负责温度数据的采集以外,还负责流量数据的采集。
本系统中,流量的采集用电磁流量计实现。
4.1电磁流量计
电磁流量计简单说是由流量传感器和变送器组成的。
流量传感器是把流过管道内的导电液体的体积流量转换为线性电信号。
其转换原理就是著名的法拉第电磁感应定律,即导体通过磁场,切割电磁线,产生电动势。
流量传感器的磁场是通过励磁实现的,分直流励磁、交流励磁和低频方波励磁。
现在大多流量传感器采用低频方波励磁。
变送器是由励磁电路、信号滤波放大电路、A/D采样电路、微处理器电路、D/A电路、变送电路等组成。
4.1.1工作原理
电磁流量计[2](EletromagneticFlowmeters,简称EMF)是20世纪50~60年代随着电子技术的发展而迅速发展起来的新型流量测量仪表。
电磁流量计是根据法拉第电磁感应定律制成的,电磁流量计用来测量导电液体体积流量的仪表。
由于其独特的优点,电磁流量计目前已广泛地被应用于工业过程中各种导电液体的流量测量,如各种酸、碱、盐等腐蚀性介质;电磁流量计各种浆液流量测量,形成了独特的应用领域。
在结构上,电磁流量计由电磁流量传感器和转换器两部分组成。
传感器安装在工业过程管道上,它的作用是将流进管道内的液体体积流量值线性地变换成感生电势信号,并通过传输线将此信号送到转换器。
转换器安装在离传感器不太远的地方,它将传感器送来的流量信号进行放大,并转换成流量信号成正比的标准电信号输出,以进行显示,累积和调节控制。
4.1.2测量原理
根据法拉第电磁感应定律,当导体在磁场中运动切割磁力线时,在导体的两端即产生感生电势e,其方向由右手定则确定,其大小与磁场的磁感应强度B,导体在磁场内的长度L及导体的运动速度u成正比,如果B,L,u三者互相垂直,则有
e=Blu
与此相仿.在磁感应强度为B的均匀磁场中,垂直于磁场方向放一个内径为D的不导磁管道,当导电液体在管道中以流速u流动时,导电流体就切割磁力线.如果在管道截面上垂直于磁场的直径两端安装一对电极,如图5所示,则可以证明,只要管道内流速分布为轴对称分布,两电极之间也特产生感生电动势:
e=BDu
式中,u为管道截面上的平均流速.由此可得管道的体积流量为:
由上式可见,体积流量qv与感应电动势e和测量管内径D成线性关系,与磁场的磁感应强度B成反比,π为固定量,可视为与qv无关。
只需测量e,B这两个变量就可得出通过流量计的液体流量,这就是电磁流量计的测量原理。
图5电磁流量计原理简图
4.2单片机与流量计的接口电路
为了防止流量计对单片机信号的干扰,本系统中单片机与电磁流量计也采用光电耦合的方式进行隔离驱动,由于本系统与温度采集系统共用一个单片机,故采用1号子机的P2口中剩余的P2.0P2.7口进行驱动,其电路图如图6所示。
图6单片机与流量计接口电路
单片机根据温度传感器12采样的数据算出暖气进水口和出水口的温度差,并保存温差数据,再根据电磁流量计采集的流量数据按公式
计算出流经暖气片的热水质量,再根据公式
计算出暖气片的热量消耗,保存在1号子机的数据存储器中,并累加,当1号子机接收到主机发送的接收热量数据的指令时将数据通过串口传至主机,并显示在LED显示屏上。
另外,本部分中温度传感器3采集的数据也将存储在数据存储器中,在接收到主机发送的接收温度数据的指令时,将通过串行口传至单片机主机。
5人数统计系统
5.1键盘布局
本部分设计中可以采用压力传感器实现,也可采用另外一种方法实现,本部分主要负责室内人数的统计,可以用键盘代替压力传感器。
如图7所示,我们可以在室内外各装一个大型的键盘,当有人从室外进入室内时,先踩下门外的键盘,后踩下室内键盘,单片机计数为1,当有人从室内出门时,先踩下室内键盘,后踩下室外键盘,单片机计数为-1,两者相加,可以计算出室内现有的人数,另外,室外还装有一个手动的按键,室内最后一人出门时,按下此键,单片机计数清零。
确保室内人数为零。
室内人数为零时,2号子机发送数据至主单片机,主单片机根据此数据,关闭流量控制阀,关闭房间内的暖气。
图7键盘布局示意图
5.2键盘接口电路
键盘实质上是一组按键开关的集合。
通常可以分为独立连接式和行列式两类,每一类按其译码方式又都可分为编码及非编码两种类型。
这里只介绍独立式,非编码键盘。
独立式按键是指各个按键相互独立地连接一条数据线,如图8所示,这是最简单的键盘结构,该电路为查询方式电路。
图8计数键盘接口电路
当任何一个按键按下时,与之相连的输入数据线即被清零,而平时该线为1,要判断是否有键按下,用单片机的位处理指令非常简单。
这种键盘的结构有点是,电路简单;缺点是当键数较多时,要占用较多的I/O接口。
在该系统中,由于只须用三个按键就可实现功能,故采用独立非编码接口。
6温度控制系统
该系统为设计的核心部分,其功能均由主单片机实现,本文将分三个模块介绍这一系统,分别为键盘模块、LED显示模块、温度调节模块。
6.1键盘控制模块
键盘控制模块由于按键较少,也采用独立非编码键盘原理同人数统计系统,这里不再赘述。
6.2LED显示模块
显示模块[3]是人机对话的一个重要部分,本着节约成本又达到目的的原则,本文设计中采用6个LED组成的动态显示的系统,由主单片机串口控制,负责显示室内温度,室内人数以及热量消耗等数据。
6.2.1LED及控制芯片简介
本系统采用单片机中普遍使用的7段LED显示器来显示数据,单片机中通常使用的7段LED构成字形“8”,另外还有一个小数点发光二极管,以显示数字,符号,以及小数点。
如图9所示。
这种显示器有共阴和共阳两种。
图9LED针脚图
89C51的串行口RXD和TXD为一个全双工串行通信口,但工作方式0下可用作同步移位寄存器用,其数据由RXD(P3.0)端串行输出或输入;而同步移位时钟由TXD(P3.1)端串行输出,在同步时钟作用下,实现由串行到并行的数据通信。
在不需要使用串行通信的场合利用串行口加外围芯片74HC164就可以构成一个或多个并行输入输出口,用于串并转换,并串转换,键盘驱动或是显示器LED驱动。
74HC164是串行输入,并行输出移位寄存器,并带有清除端。
其引脚如图10所示。
图1074HC164引脚图
其中Q0-Q7:
并行输出端;
A,B:
串行输入端;
CLR:
清除端,零电平时,使74LS164输出端清零;
CLK:
时钟脉冲输入端,在脉冲的上升沿实现移位。
当CLK=0CLR=1时74HC164保持原来数据状态。
采用串行口扩展显示节省了I/O口,但传送速度较低;扩展的芯片越多,速度越低。
6.2.2LED显示系统硬件电路
如图所示,图中“与”门的作用是避免单片机串行通信时对显示器的影响,即当P1.2=1时才开放显示器传送。
方式0传送数据的波特率是固定的,为fosc/12。
其中,fosc为89C51单片机的晶振频率。
例如,fosc=6MHZ时波特率为500Kb/S,即每传送一位数据需要2us时间。
图11LED显示电路
6.3温度调节模块
正如本设计题中所述,所要达到的设计要求是实现室内温度的自动调节,由于现在大多数住户都采用较为传统的暖气片采暖,故要实现温度的调节,只需控制暖气片中热水流量即可。
因此,温度调节系统设计的目标就转为暖气片中热水流量的调节。
由于要求精度不高,故,只需选用一款价格较为低廉的流量控制器即可,本文中本系统将采用比例电磁阀实现这一控制。
6.3.1流量控制器
本系统采用ATMEL系列的MCS51单片机为核心,通过设置89C51的管脚控制PWM控制寄存器产生脉宽可调的PWM波,对比例电磁阀[5]的输入电压进行调制,从而实现了对液体流量的变量控制。
单片机统过电磁流量计采集实际流量信号,根据该信号以及SWC采集的室内温度信号在单片机内部计算室内合适温度从而驱动比例电磁阀调节热水流量,进而实现室内温度的自动调节。
另外,本系统还设有手动调节键盘,还可以手动对单片机进行设置,实现室内温度的手动调节,如晚上休息时可以适当降低室内的温度,这样即有利于人的身体健康,也节省了暖气流量。
图12PWM驱动电路图
6.3.2PWM驱动电路
单片机输出的PWM脉冲信号分别经7406和7407输入到Q1,Q2的G极,在每个PWM周期的高电平区间,Q1导通,Q2截止,电磁阀导通。
在每个PWM周期的低电平区间,Q1截止从而切断了电源,电磁阀的感应电动势经Q2内部续流二极管形成回路。
此时Q2的G极为高电平但是由于二极管的钳位作用使开关二极管关闭,因此通过调整单片机的PWM波就可以实现电磁阀输入电压占空比的调节,从而实现对流量的调节。
6.3.3比例电磁阀
比例电磁阀在上世纪60年代末就已经得到了应用,最初是用于液压控制系统。
随着单片机和集成电路的发展,其逐渐应用到各种液体的流量控制中。
比例型电磁铁的工作原理如下:
线圈通电后,轭铁和衔铁内部产生磁通并产生电磁吸力,将衔铁吸向轭铁,同时衔铁上的弹簧受到压缩,当衔铁上的电磁力和弹簧力平衡时,衔铁停止位移。
比例型电磁铁的吸力在有效行程范围内和线圈的电流或电压大小具有线形关系。
因此通过调节输入的电流或者电压就可以控制其开口的大小,从而达到变量控制的目的。
本系统采用的比例电磁阀特性曲线如图14所示:
(Kvs代表比例电磁阀最大开口时的流量,Kv代表对应某一电压或者电流值时的流量值)。
图14比例电磁阀特性曲线图
7多个单片机串口通信
串口通信[6]对单片机而言意义重大,不但可以实现将单片机的数据传输到计算机端,而且也能实现计算机对单片机的控制。
由于其所需电缆线少,接线简单,所以在较远距离传输中,得到了广泛的运用。
7.1波特率选择
波特率(BoudRate)就是在串口通信中每秒能够发送的位数(bits/second)。
MSC-51串行端口在四种工作模式下有不同的波特率计算方法。
其中,模式0和模式2波特率计算很简单,请同学们参看教科书;模式1和模式3的波特率选择相同,故在此仅以工作模式1为例来说明串口通信波特率的选择。
在串行端口工作于模式1,其波特率将由计时/计数器1来产生,通常设置定时器工作于模式2(自动再加模式)。
在此模式下波特率计算公式为:
波特率=(1+SMOD)*晶振频率/(384*(256-TH1)
其中,SMOD——寄存器PCON的第7位,称为波特率倍增位
TH1——定时器的重载值。
在选择波特率的时候需要考虑两点:
首先,系统需要的通信速率。
这要根据系统的运作特点,确定通信的频率范围。
然后考虑通信时钟误差。
使用同一晶振频率在选择不同的通信速率时通信时钟误差会有很大差别。
为了通信的稳定,我们应该尽量选择时钟误差最小的频率进行通信。
下面举例说明波特率选择过程:
假设系统要求的通信频率在20000bit/s以下,晶振频率为12MHz,设置SMOD=1(即波特率倍增)。
则
TH1=256-62500/波特率
根据波特率取值表,我们知道可以选取的波特率有:
1200,2400,4800,9600,19200。
列计数器重载值,通信误差如下表
表189C51单片机波特率取值表
因此,在通信中,最好选用波特率为1200,2400,4800中的一个。
在本设计中,将采用模式3进行通信。
其波特率的选择与模式1相同。
7.289C51的串行口
89C51通过引脚RXD(P3.0)和引脚TXD(P3.1)与外界进行通信,其内部结构简化示意图如图十五所示。
图中有两个物理上独立的接收发送缓冲SBUF,它们占用同意地址99H,可同时发送接收数据。
发送缓冲器只能写入,不能读出;接收缓冲器只能读出,不能写入。
串行发送与接收的速率与移位时钟同步,89C51用定时器T1作为串行通信的波特率发生器,T1溢出率经二分频后又经16分频作为串行发送或接收的移位脉冲,移位脉冲的速率既是波特率。
从图中可以看出,接收器是双缓冲结构,在一个字节被从接收缓冲器SBUF读出之前第二个字节即开始被接收,但是,在第二个字节接收完毕而前一个字节CPU未读取时,会丢失前一个字节。
串行口的发送和接收都是以特殊功能寄存器SBUF的名义进行读/写的,当向SBUF发送“写”命令时,即是向发送缓冲器SBUF装载并开始由TXD引脚向外发送一帧数据,发送完便使发送中断标志位T1=1。
图15串行口内部结构示意图
7.3硬件连接电路图
在本文设计中采用三片单片机协同工作的方式,三个单片机之间的通信显得尤为重要,为了确保通信的稳定和有效,本系统中采用三个单片机的串行口通信方式。
其中负责温度调节和显示的单片机作为主机,负责温度采集和流量统计的单片机作为1号子机,负责人数统计的单片机作为2号子机。
如图16所示。
图中LED为信号传输指示灯,4个按键为调节按键。
图16三单片机串行通信连接电路图
8软件部分设计
本系统采用三个单片机协同工作的方式。
软件流程也将分为三个部分介绍。
由于子单片机与主单片机采用串口通信,主单片机发送给电磁阀的指令也不尽相同,须制定通信协议,其协议表2所示。
表2通信协议表
指令
涵义
代码
指令1
读取温度数据
1000
指令2
读取热量数据
1001
指令3
读取人数数据
1010
指令4
减小电磁阀流量
1011
指令5
增加电磁阀流量
1100
指令6
关闭电磁阀
1101
8.11号子机软件流程
1号子机负责温度数据和流量数据的采集,以及热量的计算。
其工作流量如图17所示,初始化后,单片机通过P2.1-P2.4口分别采集暖气片进水口和出水口的温度,并保存在数据寄存器中,计算温差,保存数据。
然后通过P2.0和P2.7口采集流量数据,并保存起来。
接下来根据前面两步保存的数据计算出热量值,并进行累加,保存。
在收到主单片机发送的读取热量数据指令(指令2)时,将热量数据通过串口发送至主单片机。
接下来该自己还将通过P2.5和P2.6口采集房间内的温度数据并保存。
在收到主单片机发送的读取温度数据指令(指令1)时,将温度数据经串口发送至主单片机。
至此,1号子机程序结束,将直接进入下一循环。
图171号子机程序流程图
8.22号子机软件流程
2号子机负责房间内的人数统计。
其工作流程如图18所示,初始化后,单片机便开始扫描管脚P0.2和P0.3,若管脚P0.2被置0,则表示门外键盘被按下,则在数据存储器1中记为1,并同时开始计时程序,若一分钟内管脚P0.3也被置零则在数据存储器3中记为1并同时清零数据存储器1中的数据和结束计时程序。
若一分钟内P0.3未被置零,则数据存储器1清零并执行下一步程序。
若管脚P0.3先被置零,则流程同上,在数据存储器4中记1。
然后根据数据存储器3,4中的数据相减得出房间内的现有人数。
在收到主单片机发送的读取人数数据指令(指令3)时将房间内的人数数据发送至主单片机。
另外,该子机还设有手动清零键,在房间内最后一人离开时可以按下此键,确定所有数据存储器清零,确保人数数据为零。
单片机在执行完该程序时将自动进入下一循环。
图182号子机程序流图
8.3主单片机软件流程
主单片机是本系统的核心,负责读取温度,热量,人数数据,并将之显示在LED显示器上,并根据这些数据发送指令至PWM驱动电路调节室内温度;另外,主单片机还负责采集键盘数据,进行人机对话,实现室内温度的手动调节。
其工作流程如图19所示:
初始化后主单片机开始扫描键盘,键盘共设8个按键。
按键0为增温键,按下后单片机接收到数据便发送增温指令(指令5)至PWM驱动电路,驱动电磁阀增加热水流量,增加房间温度。
按键1为降温键,按下后,主机收到数据发送降温指令(指令4)至PWM电路,降低房间内温度。
按键2为睡眠模式设定键,按下后单片机收到数据发送指令至PWM电路,减小热水流量,并同时将温度上限设为18C,电磁阀会一直减小流量,直至房间内温度下降为18C。
按键3为正常模式设定键,按
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 暖气 控制系统 设计