Hephaestus 发表于 2022-5-18 21:07 你说的得对,大意了,上班摸没想清楚就回了 因为是加热冷却系统,惯性很大 带过零的固态继电器可以控制1秒内通过多少个半波(0~100)来达到PID控制 |
lkc8210 发表于 2022-5-17 10:39 你的回答都自相矛盾,带过零的固态继电器根本控制不了10ms的周期内通电多久,只能控制有多少个10ms导通,有多少个10ms关断。 |
lkc8210 发表于 2022-5-18 10:26 多谢前辈指点。我只做仿真。 |
而且想要系统稳定,这开关时间一定要短 所以在实操中会选固态继电器(普通继电器在高频开关时触点会很快损坏) 但你现在是仿真,继电器不存在损耗,而且proteus也没有固态继电器模型 如果你是交仿真作业的话,建议在继电器上示意这是固态继电器 如果你是交实物作业的话,一定要固态继电器,否则很大机会不及格 |
吴钩霜雪 发表于 2022-5-17 21:09 因为计算出来的值是与控制方式相关的 如果你控制的是电压型器件,计算出来的值就是电压(如0~10V) 如果你控制的是电流型器件,计算出来的值就是电流(如4~20mA) 如果你控制的是功率型器件,计算出来的值就是功率 你现在要控制的是继电器,只有开和关 但PID输出的是模拟量 想要把模拟量转为开关量的简单方法就是PWM 所以你算出来的就是时间相关的 |
吴钩霜雪 发表于 2022-5-17 21:09 既然你已经知道Ki、Kd这两个参数里面包含时间单位,那么为什么要问“为什么算法公式最终计算出的值是跟时间或者周期有关?”这个问题??? |
可以参考 论坛的 开源焊台代码 |
根据你画的图,用18b20测温,温度低于给定温度用加热器加热,高于给定温度用制冷片降温,这个系统用脉宽调制(PWM)执行比较好,增量式PID控制算法的输出值应该是在一个周期(比如1秒)中打开加热器或制冷器时间的增量。 |
吴钩霜雪 发表于 2022-5-17 18:42 §9.7就是怎么编写程序,你连书看都不看? |
Hephaestus 发表于 2022-5-17 15:00 我用增量式PID控制算法实现温度控制,大概怎么编写程序?算法的输出值又该怎么用?它是一个时间值吗?为什么? |
吴钩霜雪 发表于 2022-5-17 16:00 你要做成实物,固态继电器寿命长的优点才有意义。如果只是仿真,就用普通继电器好了,跟固态的一模一样完全没有任何区别。 |
Hephaestus 发表于 2022-5-17 15:34 照您的意思是说,我就不选用可控硅电路了? 我现在还是用那个普通继电器好,还是用固态继电器好?如果用固态继电器,在Proteus里如何找到它呢? |
吴钩霜雪 发表于 2022-5-17 15:07 你又不是做产品,意思一下就行了,什么都好。 |
吴钩霜雪 发表于 2022-5-17 14:15 对~ 普通继电器有线圈 固态继电器是内部集成了可控硅 |
Hephaestus 发表于 2022-5-17 15:00 对于我这次设计,选继电器好还是可控硅好? |
![]() 看此书9.3~9.7章,9.6可以跳过不看。如果还有什么问题,到论坛上问我。 另外,鄙视下某些只会可控硅调角的小白,这种方式干扰很强,能不用就要尽量避免使用。加热系统热惯性很大,如果要用可控硅,可以过零调功,避免电流突变产生的电磁干扰。 |
lkc8210 发表于 2022-5-17 10:39 我那个图上是普通继电器吗? |
吴钩霜雪 发表于 2022-5-16 17:13 可以改用固态继电器(帶过零),使用方法差不多,但可以高速通断 PID的输出可以当作是一个通断时间百分比,如在10ms的周期内通电多久 |
可控硅电路有个好处就是导通角决定电压,也即决定加热的能量大小。 所以,控制导通角(时间)就控制了温度。 控制思想: 给出一个控制角TR,采回温度值,与目标值进行比较得到差值DT: 相同:保持TR。 小了:减小触发角,即增大电压。 大了:增小触发角,即增大电压。 你可以用PID,完成这个控制思想。 |
yzwzfyz 发表于 2022-5-16 11:17 任务书上说要设计温度控制算法,所以我必须得用到控制算法。我是参考人家的文档(基于PID的恒温控制系统)做的,他是用的可控硅驱动加热器和制冷器的电路。我现在一定要改成他那样的可控硅电路吗? |
yzwzfyz 发表于 2022-5-16 11:17 多谢前辈指点。 我明明是电子信息工程专业的,不学电力电子技术、继电器等强电和自动控制原理,那位指导非要定这个设计高低温测试箱的课题,前几天给他看了我写的文档他居然没给我指出来,这学期一句指导都不给,问他也是回答的含含糊糊。 我在网上看到继电器和可控硅两种驱动电路,觉得继电器更好理解,就直接拿来用了,没想到......。 我现在该怎么办? |
继电器没必要PID,相反要设置一个区间,防止频繁动作 |
开关量控制的加热器,用PID控制不是太好的,建议改成可控硅之类的连续量控制电路。 你先不要考滤PID,就设计的这个加热模式,如何给出控制信号。 0加热,1 停止。 加多久?停止多久?就是你要得到的达案。 分得细,继电器不停也开、关,时间不长,触点就完完了。 分得粗,控制精度就差。 人所不及,写个程序,美其名曰【PID】,又能何如。 |
希望提供参考代码 |