akang8612
級(jí)別: 略有小成
![]() |
圖片:
![]()
圖片:
![]() 朋友們好,請教一個(gè)問題。 我們一般用西門子S7-200,S7-1200,S7-300PLC來完成控制. 控制內(nèi)容 有若干臺(tái)風(fēng)扇,通過調(diào)節(jié)開啟風(fēng)扇多少來達(dá)到降溫效果。 首先是檢測溫度來判斷開啟風(fēng)扇多少(溫度高于上限啟動(dòng)一臺(tái)風(fēng)扇,溫度低于下限停一臺(tái)風(fēng)扇),然后每臺(tái)風(fēng)扇運(yùn)行的時(shí)候開始計(jì)時(shí),優(yōu)先啟動(dòng)運(yùn)行時(shí)間短的風(fēng)扇。 停的時(shí)候優(yōu)先停運(yùn)行時(shí)間長的風(fēng)扇。 之前臺(tái)數(shù)少的時(shí)候是用比較指令來判斷風(fēng)扇啟停順序的。 但臺(tái)數(shù)多的時(shí)候用比較指令就比較麻煩了, 哪位朋友有這方面的控制經(jīng)驗(yàn),給提個(gè)思路或給點(diǎn)類似的程序?qū)W習(xí)一下。! ![]() 已經(jīng)找到了一種方法,用冒泡法(循環(huán) 和間接尋址)把變化的數(shù)據(jù)排序, 監(jiān)測數(shù)據(jù)如上,5臺(tái)風(fēng)扇(數(shù)量更多時(shí)稍微修改程序即可實(shí)現(xiàn)) 第一組是對風(fēng)扇運(yùn)行時(shí)間排列后的時(shí)間(VW100-VW108從小到大) 第二組是排序?qū)?yīng)的風(fēng)扇編號(hào)(1,2,3,4,5對應(yīng)5臺(tái)風(fēng)扇),排列后根據(jù)運(yùn)行時(shí)間對不同風(fēng)扇排序。 第三組是變化的數(shù)據(jù)(VW300-VW308 對應(yīng)風(fēng)扇運(yùn)行時(shí)間) 這樣就把風(fēng)扇按運(yùn)行時(shí)間給各風(fēng)扇編號(hào)重新排好順序,啟動(dòng)的時(shí)候就按( 4-1-3-5-2 ) ( 3-2-5-1-4 ) 啟動(dòng)數(shù)量根據(jù)溫度判斷后按時(shí)間順序判斷哪幾臺(tái)工作。 希望大家能找到更簡單高效的辦法,共同進(jìn)步。 [ 此帖被akang8612在2017-07-20 15:33重新編輯 ] |
---|---|
|
lzmtxp99
級(jí)別: 家園常客
![]() |
有沒有啟動(dòng)順序,如果沒有可以考慮用堆棧來做,先進(jìn)的先停,后進(jìn)的先開就可以啦 |
---|---|
|
llyyll
級(jí)別: 探索解密
![]() |
要是我來做就會(huì)每個(gè)風(fēng)扇用一個(gè)或兩個(gè)定時(shí)器。計(jì)時(shí)它的工作時(shí)間和停止時(shí)間,然后互相比較選最長休息時(shí)間的啟動(dòng),最長工作時(shí)間的停止。 |
---|---|
|
akang8612
級(jí)別: 略有小成
![]() |
嗯,學(xué)習(xí)了,自己了解了一下,感覺不合適,不知道是不是我沒有理解清楚。(我看都是在指令表中使用的,在梯形圖時(shí)其實(shí)已經(jīng)包含了) [ 此帖被akang8612在2017-07-11 10:05重新編輯 ] |
---|---|
|
akang8612
級(jí)別: 略有小成
![]() |
謝謝回復(fù), 現(xiàn)在就是相互比較當(dāng)臺(tái)數(shù)少的時(shí)候比較可以,當(dāng)臺(tái)數(shù)很多時(shí),比如20臺(tái)比較起來就比較麻煩了,而且不同時(shí)間可能開啟的數(shù)量還不同。 |
---|---|
|
eledesigner
懂一點(diǎn)點(diǎn)
級(jí)別: 工控俠客
![]() |
排序,工作時(shí)間少的先啟動(dòng) |
---|---|
|
現(xiàn)代電器
級(jí)別: 探索解密
![]() |
找出運(yùn)行時(shí)間最長的 和停止時(shí)間最長的 |
---|---|
|