Python
簡化上回的代碼
?上回做的一個模擬小米新風機的邏輯,因為是一邊摸規(guī)律一邊寫的,所以有少許的冗余,所以今天對這個代碼進行簡化。
小米新風機邏輯猜想
我可以通過小米智能家居APP控制新風機1至7檔風速,那么不考慮其產品的隱藏風擋,我認為其有1至7檔風。然后參考功能書介紹,其中有一個關于CO2,即二氧化碳濃度的參數(shù),上面說,550以下為優(yōu)、500至800為良、800至1000為差、1000以上為嚴重污染。
- 優(yōu) 550 以下
- 良 550 至 800
- 良 800 至 1000
- 良 1000 以上
摸索時我發(fā)現(xiàn)風擋變化的不是即時的,例如上升的時候是以600(大概)為邊界,但是下降的時候就是500為邊界,等數(shù)據(jù)出來之后,再擬合曲線。
控制邏輯模仿
?下面為相關控制的模仿,也是上次軟件邏輯的簡化
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
實現(xiàn)過程
發(fā)現(xiàn)有些冗長,可以再優(yōu)化一下,不需要這么多。還有延時我沒試出來,大概有3到5分鐘變化一下的樣子,懶得試了,我也就是好奇一下,又不是想自己弄一個出來。
簡化再簡化
大概了解他的原理了,就是空氣差就開高點風機,多吹點經過濾網(wǎng)換進來的新空氣,空氣好點,風機可以慢點,就不需要換氣換這么快。
規(guī)律圖
至于延遲大概就是一種舒適緩沖,我也不知道怎么表達,反正會給人一種很紳士的感覺,這樣空氣質量不會驟變。
例如,如果兩個區(qū)間的邊界時500,比500高就上升,比500低就下降,那樣就很僵硬了。而改成這樣>600上升,<400下降,這樣的變化就會舒緩很多。
突然覺得這個功能可以轉到游戲上。
比如即時戰(zhàn)略游戲,對軍隊進行指揮的時候,就應該有一點延時,直到指令傳達完70%的隊伍成員,才能執(zhí)行。
這樣更有一種【擬真感】