旧乡故客
发表于: 2018-8-2 22:11:13 | 显示全部楼层

该PID(比例 - 积分 - 微分)温度控制系统的主要组件是EFM8微控制器、DAC和MAX31855热电偶数字转换器。该系列总共包含6部分:

●    Part 1:电路原理设计


传奇的P-I-D

PID控制器很可能已经达到了某种神秘的地位。当需要控制一个物理变量时 - 如温度、角速度、位置、流速等 - PID的作用就显示出来了,并且通过使用PID,我们自信能够快速成功实现。 PID的受欢迎程度和声望是毋庸置疑的;PID控制优雅、灵活、坚固,已在无数实际应用中证明了其功效。然而,我们对PID的了解可能远远超过使用PID的经验,特别是考虑到PID实现通常隐藏在所谓的可编程逻辑控制器(PLC)中,并且从用户那里抽象出各种初级细节。 PLC制造商制造了非常好的PID控制器,远远超过我能设计的任何东西;对此,我毫不怀疑。但我喜欢自己从头开始设计- 更有趣,它帮助我真正理解一些重要的概念和技术。


因此,本系列文章将通过一个可以测量电阻加热元件温度的简单电路来探索实用的初级PID控制。我们不会详细讨论PID理论的细节,不会将所有可能的功能和细化纳入我们的算法中。相反,我们将尝试通过将它们应用于简单的温度控制电路来阐明PID控制的基本原理。


为何选择PID?

PID控制器是负反馈的一种特殊实现:

PID1_diagram1.jpg


要了解PID控制的长期成功,首先需要了解负反馈的古老能力,以轻松完成复杂的控制任务。在这里,我将引用“负反馈(第1部分):一般结构和基本概念:"通常在生活中,

我们有一个必须控制的输出变量,但控制输入和输出的实际行为之间的关系是如此复杂或不可预测,以至于很难(如果不是不可能的话)通过应用指定的输入精确地调节输出。

解决方案:负反馈。

通过简单地减去实际输出值。 。 。从参考信号和使用结果[即“误差”项]作为开环放大器的输入,即使输入 - 输出关系不一致或复杂,我们也可以精确地控制负载。


在PID(比例 - 积分 - 微分)系统中,“开环放大器”实际上是一种算法,它根据最近的错误以及先前的错误和预期的错误进行操作。这里有PID控制的优雅:比例项根据系统的当前状态调整输出,积分项通过累积过去的错误来微调输出,导数项通过预测未来的错误使输出更具响应性根据输出的变化情况而定。


电路设计

该项目的功能基本上是恒温器的功能:“加热器”只是一个2.4Ω/5 W的电阻器。反馈信号由K型热电偶和MAX31855热电偶数字转换器提供。然而,我们的恒温器比典型的家用品种更有趣,因为它不仅限于“开”和“关”;相反,我们可以从256种不同级别的加热器功率中进行选择。这是通过以下电路完成的:

PID1_schem1.jpg

加热元件电阻的引线拧入接线端子J7的两个端子中,所以当你看到J7时,假设在这个位置有一个电阻:

PID1_schem2_2.jpg


DAC是一个8位电压输出器件,由EFM8微控制器通过SPI控制。参考电压(由EFM8提供)为2.4 V,因此DAC的输出范围为0 V至2.4 V,精确度为(2.4 V)/(28)= 9.4 mV。微弱的DAC输出驱动器可以连续提供大约10 mA的电流,而我们的电阻器只需10 mA就不会产生太多的热量。在这里,我们使用了运算放大器和BJT(Diodes Inc.的 DSS20201L)。


我们可以简单地使用运算放大器缓冲DAC输出,但运算放大器的输出电流容量也不足。所以你在这里看到的是增加运算放大器驱动能力的标准电路。 BJT可以维持2 A的连续集电极电流,这对我们的目的来说已经足够了。控制电压(即DAC输出电压)加到运算放大器的正输入端。一般电路配置是单位增益电压跟随器,但请注意反馈信号(连接到运算放大器的负输入)如何来自施加到加热元件的电压,而不是来自运算放大器输出端子的电压。这种布局告诉运算放大器以任何必要的方式调节其输出电压,以确保施加到加热元件的电压与控制电压相同。

PID1_schem3_2.jpg


另一个重要细节如下:尽管运算放大器不直接驱动加热元件,但其输出电流容量并不相关。流入Q1基极的电流约等于加热器电流除以BJT的有源区直流电流增益,也称为β或hFE。 (注意Q1始终处于截止或有效模式,因为基极电压不会超过2.4 V + ~0.7 V = 3.1 V,而集电极始终为5 V。只要npn晶体管不会进入饱和状态基极电压不超过集电极电压超过~0.4V。)我们晶体管的最小β是200,所以如果我们将1A驱动到加热元件,运算放大器必须能够为此提供5 mA电流。我认为几乎任何运算放大器都可以向基极提供5 mA的电流,但是如果你修改这个电路以获得更高的加热器电流,请记住确认你的运算放大器可以安全地提供必要的基极电流。


加热元件

加热元件电阻基本上有两个要求:它的电阻必须非常低,这样我们的低驱动电压会产生高电流,其额定功率必须足够高(远高于我们习惯使用的典型电阻 - 直插或表面贴装电阻器)。我不能从我用作电源的USB充电器吸取超过1 A的电流,因此我选择了2.4Ω的电阻:最大驱动电压为2.4 V,因此当驱动电压达到最大值时,电流也将达到最大值。最大电流下的功耗仅为2.4 V×1 A = 2.4 W.我希望保持大约2倍的安全裕度,因此5 W电阻可以实现这一目标。这是硬件设置的照片:

PID1_photo1.jpg


即使在1 A电流时,该系统也不会产生大量的热量,因此在操作过程中,我将电阻器包裹在蓬松的绝缘织物中,从而延长了可用的温度范围:

PID1_photo2.jpg


结论

我们介绍了PID控制的一般概念和优点,并详细讨论了我们将用于探索PID功能的“恒温器”电路。在下一篇文章中,我们将重点介绍从MAX31855收集温度数据并通过DAC调节加热器驱动电流所需的固件。

跳转到指定楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题 29 | 回复: 32



手机版|

GMT+8, 2024-12-21 21:19 , Processed in 0.043469 second(s), 6 queries , Gzip On, MemCache On. Powered by Discuz! X3.5

YiBoard一板网 © 2015-2022 地址:河北省石家庄市长安区高营大街 ( 冀ICP备18020117号 )

快速回复 返回顶部 返回列表