請教PLC200編程思路
劉玉蓉
發(fā)布于2014-12-05 17:51
4
0
標簽:
硬件:1*CPU224+2*EM222
實現(xiàn)功能:1~20個電磁閥,用戶可在UI界面設定第N1到第N2個電磁閥動作,以及電磁閥動作的時間T,且電磁閥動作為輪流動作。如假設用戶設定第N1=3至第N2=8號電磁閥動作,動作時間為T=1min,則上電后,第3號電磁閥開始動作,動作時間1min,依次動作,至8號電磁閥動作完成后,3號電磁閥工作,依次做下一周期循環(huán)。
其中:CPU224的輸出端是Q0.0~Q0.7、Q1.0~Q1.1(Q1.2~Q1.7為缺?。@樣我用循環(huán)左/右移指令時,需要分區(qū)進行循環(huán)掃描,且電磁閥動作有BUG。
請教各位編程思路!
另附上有bug的編程(因水平有限,此程序中,沒有實現(xiàn)N1可修改,即默認從一號電磁閥開始動作),請指教!
問題補充:
您講的“解決你缺省值(Q1.2~Q1.7為缺?。┑膯栴}確實你可以先用中間變量地址(M),那樣就不需要考慮由于cpu輸出地址缺省值帶來的不便?!痹趺刺娲??還有,先不按用戶設置的循環(huán)時間移位是什么意思呢?
實在是水平太低,還請指教!
另,找答案是不是不支持回復功能?。吭趺椿貜湍??
圖片說明: 1,2 2,5 3,3 4,4 5,1
佳答案
用移位指令的方法在此是比較切合實際的,采用雙字移位指令解決。
解決你缺省值(Q1.2~Q1.7為缺?。┑膯栴}確實你可以先用中間變量地址(M),那樣就不需要考慮由于cpu輸出地址缺省值帶來的不便。
用戶需要從哪個閥(PLC輸出地址開始),可以在用戶設置N1數(shù)值后,可以先直接將前面的這些位復位,然后根據(jù)啟動位命令移位(可以先不按用戶設置的循環(huán)時間移位,這樣就可以快速先移動到準備的地址上),當用戶按啟動后用用戶設置的N2時間移位。
看了你的程序,認為你需要換一種方式思考這個問題,移位指令用雙字不要用字節(jié),其它的編程方式可以按你的方式也可以,關鍵是你需要換一種思路編程。希望這個思路能夠幫到你。