Pro168-泡面Python[Py#068]——3min-LR 简化CO2检测

Python

简化上回的代码

 上回做的一个模拟小米新风机的逻辑,因为是一边摸规律一边写的,所以有少许的冗余,所以今天对这个代码进行简化。

小米新风机逻辑猜想

我可以通过小米智能家居APP控制新风机1至7档风速,那么不考虑其产品的隐藏风挡,我认为其有1至7档风。然后参考功能书介绍,其中有一个关于CO2,即二氧化碳浓度的参数,上面说,550以下为优、500至800为良、800至1000为差、1000以上为严重污染。

  • 优 550 以下
  • 良 550 至 800
  • 良 800 至 1000
  • 良 1000 以上

摸索时我发现风挡变化的不是即时的,例如上升的时候是以600(大概)为边界,但是下降的时候就是500为边界,等数据出来之后,再拟合曲线。


控制逻辑模仿

 下面为相关控制的模仿,也是上次软件逻辑的简化

def Mod_611_CO2_deal(coo,coo_bak):
    if coo >= coo_bak:
        if coo >= 1000:
            fan = 6
        elif coo >= 800:
            fan = 4
        elif coo >=550:
            fan = 3
        else:
            fan = 2
    else:
        if coo < 450:
            fan = 2
        elif coo < 700:
            fan = 3
        elif coo < 900:
            fan= 4
        else:
            fan = 6
    print(coo,'\t',fan) 
    
circle = 1    
coo_bak = 0   
while circle == 1:
    print('input CO2')
    coo = int(input())
    Mod_611_CO2_deal(coo,coo_bak)
    coo_bak = coo

实现过程

发现有些冗长,可以再优化一下,不需要这么多。还有延时我没试出来,大概有3到5分钟变化一下的样子,懒得试了,我也就是好奇一下,又不是想自己弄一个出来。

简化再简化

大概了解他的原理了,就是空气差就开高点风机,多吹点经过滤网换进来的新空气,空气好点,风机可以慢点,就不需要换气换这么快。

规律图

至于延迟大概就是一种舒适缓冲,我也不知道怎么表达,反正会给人一种很绅士的感觉,这样空气质量不会骤变。
例如,如果两个区间的边界时500,比500高就上升,比500低就下降,那样就很僵硬了。而改成这样>600上升,<400下降,这样的变化就会舒缓很多。

突然觉得这个功能可以转到游戏上。
比如即时战略游戏,对军队进行指挥的时候,就应该有一点延时,直到指令传达完70%的队伍成员,才能执行。
这样更有一种【拟真感】

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 模仿小米新风机  这次我们会在根据小米新风机的部分控制逻辑进行模仿,当然啦,因为这些肯定是小米的机密,我是拿不到人...
    做笔记的喵Cc阅读 385评论 0 3
  • 美丽的和平公园。上个星期天,奶奶和妈妈带我去公园里玩。公园里有好多美丽的花朵,我很喜欢。好多小朋友在游乐场玩。有碰...
    王瑞浩阅读 282评论 0 0
  • ECMAScript 和 JavaScript 的关系是,前者是后者的规格,后者是前者的一种实现 var不局限作用...
    兔子___阅读 362评论 0 0
  • 先看下最终的效果 开始实现 新建一个ClockView集成View 先重写onMeasure方法,这里要先说一下V...
    hellsam阅读 6,966评论 11 48
  • 早晨与同事谈起来另外一位朋友。一谈到这个朋友,大家都觉得她做人很失败,过于好强,对职业和家庭没有边界感。 她发的朋...
    冬后春初阅读 717评论 4 9