akang8612
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 393 個
工控威望: 420 點
下載積分: 3434 分
在線時間: 269(小時)
注冊時間: 2011-10-14
最后登錄: 2024-07-23
查看akang8612的 主題 / 回貼
樓主  發(fā)表于: 2017-07-10 16:25
圖片:
圖片:
朋友們好,請教一個問題。
我們一般用西門子S7-200,S7-1200,S7-300PLC來完成控制.
控制內(nèi)容 有若干臺風(fēng)扇,通過調(diào)節(jié)開啟風(fēng)扇多少來達到降溫效果。
首先是檢測溫度來判斷開啟風(fēng)扇多少(溫度高于上限啟動一臺風(fēng)扇,溫度低于下限停一臺風(fēng)扇),然后每臺風(fēng)扇運行的時候開始計時,優(yōu)先啟動運行時間短的風(fēng)扇。
停的時候優(yōu)先停運行時間長的風(fēng)扇。
之前臺數(shù)少的時候是用比較指令來判斷風(fēng)扇啟停順序的。
但臺數(shù)多的時候用比較指令就比較麻煩了,
哪位朋友有這方面的控制經(jīng)驗,給提個思路或給點類似的程序?qū)W習(xí)一下!。


已經(jīng)找到了一種方法,用冒泡法(循環(huán) 和間接尋址)把變化的數(shù)據(jù)排序,
監(jiān)測數(shù)據(jù)如上,5臺風(fēng)扇(數(shù)量更多時稍微修改程序即可實現(xiàn))
第一組是對風(fēng)扇運行時間排列后的時間(VW100-VW108從小到大)
第二組是排序?qū)?yīng)的風(fēng)扇編號(1,2,3,4,5對應(yīng)5臺風(fēng)扇),排列后根據(jù)運行時間對不同風(fēng)扇排序。
第三組是變化的數(shù)據(jù)(VW300-VW308 對應(yīng)風(fēng)扇運行時間)

這樣就把風(fēng)扇按運行時間給各風(fēng)扇編號重新排好順序,啟動的時候就按( 4-1-3-5-2  ) ( 3-2-5-1-4 )   啟動數(shù)量根據(jù)溫度判斷后按時間順序判斷哪幾臺工作。

希望大家能找到更簡單高效的辦法,共同進步。
[ 此帖被akang8612在2017-07-20 15:33重新編輯 ]
akang8612
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 393 個
工控威望: 420 點
下載積分: 3434 分
在線時間: 269(小時)
注冊時間: 2011-10-14
最后登錄: 2024-07-23
查看akang8612的 主題 / 回貼
1樓  發(fā)表于: 2017-07-11 09:13
引用
引用第1樓lzmtxp99于2017-07-10 17:19發(fā)表的  :
有沒有啟動順序,如果沒有可以考慮用堆棧來做,先進的先停,后進的先開就可以啦


嗯,學(xué)習(xí)了,自己了解了一下,感覺不合適,不知道是不是我沒有理解清楚。(我看都是在指令表中使用的,在梯形圖時其實已經(jīng)包含了)
[ 此帖被akang8612在2017-07-11 10:05重新編輯 ]
akang8612
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 393 個
工控威望: 420 點
下載積分: 3434 分
在線時間: 269(小時)
注冊時間: 2011-10-14
最后登錄: 2024-07-23
查看akang8612的 主題 / 回貼
2樓  發(fā)表于: 2017-07-11 09:26
引用
引用第2樓llyyll于2017-07-11 08:47發(fā)表的  :
要是我來做就會每個風(fēng)扇用一個或兩個定時器。計時它的工作時間和停止時間,然后互相比較選最長休息時間的啟動,最長工作時間的停止。


謝謝回復(fù), 現(xiàn)在就是相互比較當(dāng)臺數(shù)少的時候比較可以,當(dāng)臺數(shù)很多時,比如20臺比較起來就比較麻煩了,而且不同時間可能開啟的數(shù)量還不同。