基于ARM微处理器的嵌入式温度调节器设计

2018-02-09 22:32:40编辑:什么鱼 关键字:ARM  微处理器  温度调节器

     本文针对无影照明系统中色温控制的难题,设计了一种基于ARM微处理器的嵌入式温度调节器,整个智能温度控制器由微控制器、数字显示模块、温度传感器、PWM加热模块、时钟电路等多个部件组成,设计了其中的PID调节电路、串口通信电路、微控制器外围通信接口、PWM加热控制电路以及软件模块,并搭建起整个软硬件系统。最后进行了实验和验证,结果表明,该嵌入式PID温度控制器能够满足设计要求,具有良好的调节精度,并保持恒温控制特性,可以投入实际应用。


    温度控制器是一种重要的控制设备,在性能要求敏感的家用电器中,温度控制器是必备的控制系统之一,其在大型工业和日常生活等领域都具有广阔的应用前景。很多应用领域,需要精度较高的恒温控制,例如,根据外界变化,随时调节相应的LED亮度以达到所需色温值,可以实现更好的照明和装饰效果。在温度控制器中引入PID控制可以得到较理想的控制效果,温度波动均可控制在0~125℃之内。该技术已应用于定时控温发酵器、保健垫等产品中,运行良好,获得了良好的社会效益和经济效益。因此,如何在无影照明系统的色温控制中引入PID温度控制系统成为当今研究的课题之一,而且随着现代计算机技术、通信技术、数字化技术的发展,在温度控制系统中引入嵌入式系统已成为一种趋势,它具有扩展性强,集成度高,控制精确等优点。

    1 嵌入式温控系统概述

    1.1 嵌入式概述

    从嵌入式系统的构成上看,嵌入式系统是集软件硬件于一体的,可以独立工作的计算机系统;从外观上看,嵌入式系统更像是一个“可编程”的电子元器件;从功能上看,它是对执行对象进行精确控制,使其具有“智能”的控制器。

    嵌入式系统是主要完成信号控制的功能,体积小,结构紧凑,可作为一个部件嵌入所控制的装置中。它提供用户接口,管理信息的输入输出,监控设备工作,使设备及应用产品有较高智能和性价比。根据IEEE(国际电气和电子工程师协会)的定义,嵌入式系统是控制监视或辅助设备机器或工厂运行的装置。可以看出该定义主要是从应用方面考虑的。嵌入式系统与通用计算机的最主要区别也就在于应用目的不同,不管是在硬件还是软件方面,每一套嵌入式系统都是针对不同应用场合或为了特定功能而“量身定做”的,需要考虑更多的是空间成本等因素。

    嵌入式系统的专用性强、实时性与可靠性高、可裁剪性好、功耗低。采用基于嵌入式技术实现的温度控制器,其扩展容易、功能强大,不仅能在硬件结构上简化系统,还可以提高性能,进而可以降低系统的成本以便更加灵活地部署应用,嵌入式是温度调节控制器的发展方向。

    1.2 PID调节原理

    比例、积分、微分控制器是在工程实际中应用最为广泛的调节器,简称PID调节器,PID控制于20世纪50年代出现,成为工业控制的主要技术之一,主要因为其结构简单、工作可靠、稳定性好、调整方便等优点。

    2 系统设计

    2.1 硬件总体设计

    本文设计的嵌入式ARM温度调节器主要有以下几个模块构成:显示模块,温度传感器,时钟电路模块,报警模块,ARM核S3C2440,PID控制模块,PWM加热控制摸了,以及复位电路。系统的总体硬件设计如图1所示。

   

    2.2 PWM加热模块设计

    PWM加热模块由3524芯片加一些外围元器件组成。矩形波由3524芯片内部振荡器产生,其频率为:

    f≈1.30/(RT-CT)      (1)

    式中电位器RT用于调整频率大小,脉冲宽度调制器由3524芯片内部的差动放大器、比较器、振荡器等组成。其输出的矩形波占空比由差动放大器输出电压控制。

    2.3 PID电路

    设计PID调节器的目的是调节控制对象的实际值与新的设定值相对应,可以减少或消除干扰量的影响。在自动控制领域,由于控制的稳定性和可靠性等要求,模拟PID控制技术简单可靠、成本较低、应用广泛成熟。图2为PID调节器的组成框图。

   

    在控制单元内输入信号Vi经PI,PD电路进行PID运算得到Vo。

    PID调节器的工作原理为:Vi为温度传感器检测放大处理后的信号与设定信号进行比较后的偏差量,调节器对偏差量进行比例、积分、微分运算,从而输出适当的控制信号Vo给下一级电路,促使测量值信号恢复到给定值,达到自动控制的效果。调节器的3个参数(P,I,D)独立可调,在实际应用中采用工程整定的方法确定P,I,D参数.该方法直接在控制系统的试验中进行,且方法简单、易于掌握,在工程实际中被广泛采用。

    2.4 软件设计

    软件模块在温度控制调节系统中非常重要,本文中由于软件系统比较众多,所以采用模块化设计方案,即整个软件由许多独立的小软件模块构成,小模块之间通过特定的软件接口进行连接和通信,按功能形成模块化结构。它的主要工作流程图如图3所示。

   

    首先进行控制器参数初始化,然后读取温度的设定值,如果成功获取则控制PWM加热模块进行执行;温度传感器模块获取实际温度与设定值进行比较,如果相同则结束;不同则通过PID控制来调节加热模块,直至相同。

    3 实验与验证

    根据硬件设计总体框图1,把各功能块连接起来,将软件下载至ARM系统中,将温度传感器DS18B20通过串行接口与ARM控制器相连,搭建出实验环境进行实验验证。当设定温度为50 ℃时,其运行结果如图4所示。

   

 

    当设定温度为90 ℃时,其运行结果如图5所示。

    4 结语

    本文设计了基于ARM的PID温度控制器,采用DS18B20作为温度传感器,用串口与微处理器进行通信,微处理器采用ARM S3C2440,加热模块采用PWM方式,给出了总体硬件电路和软件工作流程,最后进行了实验和验证,结果表明该控制器具有较高的调节精度,可用于工业现场。


关键字:ARM  微处理器  温度调节器

来源: eefocus 引用地址:http://www.eeworld.com.cn/mcu/article_2018020937735.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:STM32学习手记:数据的保存与毁灭
下一篇:基于网络加载的BootLoader整套设计与解决方案

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

ARM学习之中断体系结构

CPU的“青睐”。还有一个皇后级别的中断源,叫做快速中断源。她比较牛X,只要请求,CPU就会“临幸”。(好似宫斗剧啊)。3.当发生中断后,具体我们该如何编程呢? 答:当一个异常发生时,这时ARM 的CPU将自动完成如下事情(要记住,是自动): (1)、lr寄存器保存目前指令的下一条指令地址。一般是(PC+4或PC+8) (2)、将CPSR的值复制到SPSR。 (3)、将CPSR的工作模式位设置为异常对应的工作模式。 (4)、转去执行此异常对应的向量表中的相应指令(并不只是中断处理函数)。对于我们来说,我们需要在异常向量表对应的地址处完成以下事情: (1)、保存运行的环境
发表于 2018-07-21 12:21:44

ARM学习之内存管理单元(MMU)

与映射表的一种机制(专业上叫页表)。虚拟地址到物理地址的映射。简单来说,CPU发出的虚拟地址,MMU通过查询这种映射表把这种虚拟地址转化为物理地址。在ARM体系中,用的有段(一级页表)、大页、小页、极小页(二级页表)等页表类型。4.运行地址和加载地址分别是什么意思,有什么区别? 答:在ARM中,当程序被烧写到FLASH中,用的就是加载地址。是烧写到FLASH中的某地址上。当程序运行时,程序所处的地址就是运行地址,也叫做链接地址。在烧写ARM裸板程序时,如果在链接时,不指定链接地址的话,程序的加载地址就是链接地址。当指定了某段的链接地址时,运行到此段时,此段必须处在所指定的链接地址上,否则可能会出现程序崩溃(其实,如果指定段中
发表于 2018-07-21 12:21:03

ARM学习之Nand FLash控制器

今天学习了Nand Flash的一些内容。在此做下回忆和总结:1.什么是Nand Flash? 答:Nand FLash是一种非易失性的存储性介质,一般用于保存嵌入式系统运行所必需的操作系统、应用程序、用户数据等,地位和PC上的硬盘类似。一般来说,它的接口引脚不像SDRAM那样多(SDRAM有20多根),一般也就是十几根。以三星公司的K9F1208U0M为例,如下所示。 正因为它的数据引脚较少,所以它的命令、地址、数据都是公用这一组IO引脚再配上ALE、CLE等其他使能信号进行传输的。操作Nand Flash(读、写、擦除)也和简单,基本上是按照传输命令、传输地址、最后读写数据这样一个流程实现的。这些命令在具体的
发表于 2018-07-21 12:19:08

ARM学习之时钟体系结构

今天在宿舍学习的是S3C2440的系统时钟体系,这部分的难点不是很多,所以相对来说轻松点,但还是把感悟记录下来吧。1.S3C2440的的时钟体系有哪些?它们分别有什么作用? 答:以前一直有个小疑问,你说,这CPU运行那么快,外部的设备运行的就比较慢,那它们的时钟源怎么匹配呢?哦,今天算是差不多弄清楚了。因为它们有不同的时钟源。就S3C2440来说, 它有三种时钟源: (1)FCLK:用于CPU核。 (2)HCLK:用于AHB总线上的设备,比如CPU核存储器控制器、中断控制器、LCD控制器、DMA和USB主机模块等高性能的设备。 (3)PCLK:用于APB总线上的设备,比如WATCHD
发表于 2018-07-21 12:00:45

ARM裸机程序开发——按键控制LED灯

这几天将TQ2440上的IO控制引脚学习了一下,了解了一下关于引脚的一些寄存器的配置,熟悉了一下写ARM裸机程序的流程,写一下自己学到的东西。★程序启动初始化◇关闭看门狗有一个专门的寄存器来控制看门狗,看门狗的作用就是在一定的时间内会重新启动系统,这里我们只是写一个简单的逻辑程序用不到看门狗 ,将其关掉。设置WTCON寄存器,将其第5位置0,就可以禁用看门狗◇设置栈指针C语言中设置的变量,以及调用的函数等信息都会被存放在栈中,因此栈指针必须要设置◇调用main函数main函数中设置了关于IO寄存器的一些设置操作★TQ2440硬件相关硬件主要涉及到LED灯与GPIO,按键与GPIO之间的连接◇LED灯硬件   
发表于 2018-07-21 11:48:01

浅谈:如何基于国产CPU的云平台构建容器管理平台

,哇!阿里的!据工作人员介绍目前已有业务系统运行在基于华芯通CPU的云平台上,云平台就是ZStack。热心的工作人员带我去华芯通的专柜进行详细参观。看到实物那一刻,颠覆了我的想法,这个跟x86架构的服务器没什么区别啊!一直以为他是一个类似路由器这样的小盒子。没想到ARM服务器工艺已和x86服务器自造工艺无太大区别。国产云平台 ZStack作为国内为数不多的自研云平台,根据官网信息已发布基于国产CPU架构的版本,那么完全可以实现基于国产CPU架构来构建国产云平台。这架构图摘自他们的产品白皮书,从架构上看整个逻辑还是比较清晰,各组件依赖度并不高,不会因为管理控制节点故障而影响业务系统。经过仔细研究ZStack架构发现以下特点:全异
发表于 2018-07-16 10:43:01
浅谈:如何基于国产CPU的云平台构建容器管理平台

小广播

何立民专栏

单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2018 EEWORLD.com.cn, Inc. All rights reserved