【【书籍】MicroPython入门指南试用体验】8 物联网PWM温控

  • xukejing
  • LV5工程师
  • |      2018-02-25 16:54:22
  • 浏览量 1964
  • 回复:2
本帖最后由 xukejing 于 2018-2-25 16:58 编辑 MicroPythonOneNet的接口库的,今天我们来做个鱼缸控制器,带温控功能。使用PWM方式控制220V固态继电器实现比例控温。设置温度26度。当小于24度,以100%功率运行;当处于2426度之间时,用比例控制输出功率。因为是控鱼缸水温,所以PWM周期设置为100秒,控制周期为1秒。代码分享给大家,老徐写代码的风格很飘逸的,意识流风格的。 控制算法其实很简单,大道至简。输出功率的传递函数的比例计算部分如下
if set_temp2:

                t_power=100

            else:

                t_power=(set_temp-tem)*50
PWM实现功率控制的部分如下


            t_per_100sec=t_sec%100

            if t_per_100sec < t_power:

                S1.value(1)

            else:

                S1.value(0)
  • 0
  • 收藏
  • 举报
  • 分享
我来回复

登录后可评论,请 登录注册

所有回答 数量:1
7943603 2018-03-01
PWM周期设置为100秒,控制周期为1秒。这话啥意思
0   回复
举报
发布
xukejing 回复 2018-03-01
本帖最后由 xukejing 于 2018-3-1 20:58 编辑 继电器的PWM控制信号是0.01赫兹的。水的比热是4200焦每公斤摄氏度,以一个60公斤水体的鱼缸为例,当一个300瓦加热棒满功率加热时,大约要加热15分钟才能让平均温度变化1度。平均温度变化0.1度大约需要100秒的数量级。 所以,PWM没必要使用太高的频率。
0   回复
举报
x
收藏成功!点击 我的收藏 查看收藏的全部帖子