1 | 題目
編寫程序?qū)崿F(xiàn)根據(jù)功率kW來計算電能的累加值kWh(度)。
2 | 設(shè)計分析
用循環(huán)中斷讀取功率kW即用電速度并進(jìn)行累加求和。
3 | 創(chuàng)建功能或功能塊
創(chuàng)建功能塊FB,命名為“Totalizer”。
4 | 定義接口變量
具體接口變量定義見下圖:
定義浮點(diǎn)數(shù)變量value:某個時間段內(nèi)的測量值,單位:米、升等。
定義時間變量interval:測量時間段,單位:秒、分等。value是對應(yīng)interval時間段內(nèi)的值。value與interval的比值即為速度(m/s)、流量(l/m)等。
定義時間變量cycle:采樣掃描時間,即循環(huán)中斷的時間。
定義布爾變量reset:復(fù)位累加值。
5 | 程序代碼
編寫程序代碼。如下圖:
注意時間類型變量interval和cycle必須進(jìn)行TIME_TO_DINT的數(shù)據(jù)轉(zhuǎn)換從而統(tǒng)一單位。盡管輸入的實(shí)參interval單位為小時而實(shí)參cycle為毫秒也沒有關(guān)系,最終均被統(tǒng)一單位為毫秒。
6 | 代碼測試
在循環(huán)中斷OB中調(diào)用FB-“Totalizer”。 循環(huán)中斷時間為100ms,即每過100ms進(jìn)行采樣累加得到計算結(jié)果。如下圖:
假設(shè)用電設(shè)備功率為6.0kW,那么1小時的用電量為6.0kWh。輸入實(shí)參6.0kWh(用焦耳J換算可能更容易理解)給value、輸入實(shí)參t#1h給interval。value/interval為單位時間的變量值,例如:速度、流量等,此處為功率。
在線監(jiān)控。如下圖:
大約10分鐘后的電量累加值為1.038612kWh。
7 | 總結(jié)
學(xué)習(xí)IF..ELSE語句;
學(xué)習(xí)組合賦值運(yùn)算符的使用;
學(xué)習(xí)循環(huán)中斷組織塊OB的使用方法;
學(xué)習(xí)在OB中調(diào)用FB和實(shí)參的傳遞方式。
- END -
-
功率
+關(guān)注
關(guān)注
14文章
2068瀏覽量
69884 -
程序
+關(guān)注
關(guān)注
117文章
3787瀏覽量
81049 -
編寫
+關(guān)注
關(guān)注
0文章
29瀏覽量
8450 -
kwh
+關(guān)注
關(guān)注
0文章
4瀏覽量
1567
發(fā)布評論請先 登錄
相關(guān)推薦
評論