王紹全
級別: *
|
PLC循環周期問題 網絡1 LD I0.1 AN M0.1 =M0.0 網絡2 LD I0.1 =M0.1 小弟明白這是一個邊沿信號產生的程序,但是不明白M0.0為什么保持1個PLC循環周期,我可能不明白循環周期這個詞,執行完第一條命令后M0.0為1,執行第二條時就為0了,就這的時間差交一個循環周期嗎?麻煩好心人解釋一下,謝謝! 謝謝cvlsam大俠的回答,PLC程序執行順序為從上往下,自左往右的執行。 當按下I0.0時,在掃描周期1中,程序開始由上往下的執行: 網絡1 LD I0.1 //因為按下,因此狀態為1 AN M0.1 //M0.1的狀態也是為1,因為有AN的存在,因此是常閉------這里對嗎?我覺的M0.1應該是0吧,M0.0 才能為1呀?M0.1為1怎么通呀?小弟愚昧,請教! =M0.0 //此時M0.0接通 M0.0的狀態為1 網絡2 LD I0.1 //因為按下,因此狀態為1 =M0.1 //M0.1的值由于I0.1的值變為了M0.1=0, 那這里儲存的M0.0到底是1還是0? 此時掃描周期1結束 接下來就是掃描周期2的開始: 網絡1 LD I0.1 //此時不管我們繼續按下還是放開,I0.1的值根據我們是否按下而決定 AN M0.1 //M0.1的值在上一個掃描周期結束前已經是0了 =M0.0 //因此,由于條件不能滿足,M0.0變為了0 如果用戶此時重新按I0.0,那么又會重復上述兩個掃描周期的執行過程~~ 以上, [ 此帖被王紹全在2008-12-27 13:19重新編輯 ] |
---|---|
|
hzf647
敏研機電 http://www.minyantech.com
級別: 略有小成
|
|
|
---|---|---|
|
cvlsam
富士低壓,POD(觸摸屏),PLC專賣
級別: VIP會員
|
因為樓主忽略了一個程序執行的順序…… PLC程序執行順序為從上往下,自左往右的執行。 當按下I0.0時,在掃描周期1中,程序開始由上往下的執行: 網絡1 LD I0.1 //因為按下,因此狀態為1 AN M0.1 //M0.1的狀態也是為1,因為有AN的存在,因此是常閉 =M0.0 //此時M0.0接通 M0.0的狀態為1 網絡2 LD I0.1 //因為按下,因此狀態為1 =M0.1 //M0.1的值由于I0.1的值變為了M0.1=0 此時掃描周期1結束 接下來就是掃描周期2的開始: 網絡1 LD I0.1 //此時不管我們繼續按下還是放開,I0.1的值根據我們是否按下而決定 AN M0.1 //M0.1的值在上一個掃描周期結束前已經是0了 =M0.0 //因此,由于條件不能滿足,M0.0變為了0 如果用戶此時重新按I0.0,那么又會重復上述兩個掃描周期的執行過程~~ 以上 |
---|---|
|