初學梯形圖編程,應要遵循一定的規則,并養成良好的習慣。下面以三菱fx系列plc為例,簡單介紹一下plc梯形圖編程時需要遵循的規則,希望對大家有所幫助。有一點需要說明的是,本文雖以為例,但這些規則在其它時也可同樣遵守。
一,梯形階梯都是始于左母線,終于右母線(通??梢允〉舨划?,僅畫左母線)。每行的左邊是接點組合,表示驅動邏輯線圈的條件,而表示結果的邏輯線圈只能接在右邊的母線上。接點不能出現在線圈右邊。如下圖(a)應改為(b):

二,接點應畫在水平線上,不應畫在垂直線上,如下圖(a)中的接點x005與其它接點間的關系不能識別。對此類橋式電路,應按從左到右,從上到下的單向性原則,單獨畫出所有的去路。如圖(b)所示:

三,并聯塊串聯時,應將接點多的去路放在梯形圖左方(左重右輕原則);串聯塊并聯時,應將接點多的并聯去路放在梯形圖的上方(上重下輕的原則)。這樣做,程序簡潔,從而減少指令的掃描時間,這對于一些大型的程序尤為重要。如下圖所示:

四,不宜使用雙線圈輸出。若在同一梯形圖中,同一組件的線圈使用兩次或兩次以上,則稱為雙線圈輸出或線圈的重復利用。雙線圈輸出一般梯形圖初學者容易犯的毛病之一。在雙線圈輸出時,只有最后一次的線圈才有效,而前面的線圈是無效的。這是由plc的掃描特性所決定的。
plc的cpu采用循環掃描的工作方式。一般包括五個階段(如圖所示):內部診斷與處理,與外設進行通訊,輸入采樣,用戶程序執行和輸出刷新。當方式開關處于stop時,只執行前兩個階段:內部診斷與處理,與外設進行通訊。

1,輸入采樣階段
plc順序讀取每個輸入端的狀態,并將其存入到我們稱之為輸入映像寄存器的內在單元中。當進入程序執行階段,如輸入端狀態發生改變.輸入映象區相應的單元信息并不會跟著改變,只有在下一個掃描周期的輸入采樣階段,輸入映象區相應的單元信息才會改變。因此,plc會忽視掉小于掃描周期的輸入端的開關量的脈沖變化。
2,程序執行階段
plc從程序0步開始,按先上后下,先左后右的順序掃描用戶程序并進行邏輯運算。plc按輸入映象區的內容進行邏輯運算,并把運算結果寫入到輸出映象區,而不是直接輸出到端子。
3,輸出刷新階段
plc根據輸出映象區的內容改變輸出端子的狀態。這才是plc的實際輸出。
以上簡單說明了plc的工作原理,下面我們再以實例說明為什么編寫梯形圖程序,不宜重復使用線圈。如下圖所示,設輸入采樣時,輸入映象區中x001=on,x002=off,y003-on,y004=on被實際寫入到輸出映象區。但繼續往下執行時,因x002=off,使y003=off,這個后入為的結果又被寫入輸出映象區,改變原y003的狀態。所以在輸出刷新階段,實際外部輸出y003=off,y004=on。許多新手就碰到過這樣的問題,為什么x001已經閉合了,而y003沒有輸出呢?邏輯關系不對。其實就是因為雙線圈使用造成的。
注意:我們所說的是不宜(最好不要)使用雙線圈,雙線圈使用并不是絕對禁止的,在一些特殊的場合也可以使用雙線圈,這時就需要你有較豐富的編程經驗和技巧了。下面我們會談到這一點。但對于初學者還是不要冒這個險。其實,從以上的例子可以看出,重復利用線圈之所以會造成y003的輸出混亂,是由于程序是從上到下順序執行的緣故造成的。但如果我們可以改變程序執行的順序,保證在任何時刻兩個線圈只有一個驅動邏輯發生,就可以使用雙線圈。其中,最常用的方法就是使用跳轉指令。如下圖所示:

程序分析:m0閉合,程序跳至p0處(不執行x001語句),m0常閉斷開,cjp1不會發生,執行下一語句。此時,y003將x002狀態進行驅動。m0斷開時,程序順序執行并按x001的狀態對t003進行驅動,m0常閉閉合,跳至p1按x003狀態對y004進行驅動,即跳過了x002驅動y003的語句。可見,在同一時刻,y003驅動只有一個可以發生。此時,雙線圈利用是可以的。
但在梯形圖編程時,我們還是要盡量避免使用雙線圈,而引入輔助是一個常用的方法。如下圖所示:
圖(b)中,x001和x002接點控制輔助繼電器m000,x003~x005接點控制輔助繼電器m001,再由兩個繼電器m000,m001接點的并聯組合去控制線圈y000。這樣邏輯關系沒變,卻把雙線圈變成單線圈。
1。啟動、保持、停止電路
x1 x2
|--||---|/|-----(y1)
| |
| y1 |
|--||-
|
2.三相異步電機正反轉控制電路
|
| x0 x2 x1 y1
|--||--------|/|------|/|-------|/|-------(y0) 正轉
| |
| y0 |
|--||------
|
| x1 x2 x0 y0
|--||--------|/|------|/|-------|/|-------(y1) 反轉
| |
| y1 |
|--||------
|
3.閃爍電路
x0 t1
|--||---|/|-----(to)k20
|
| t0
|--||-----------(t1)k30
| |
|-----(y0)
4.延時接通/斷開電路
x0
|--||-----------------(t0)k90
|
| y1 x0
|--||--------|/|------(t1)k30
|
| t0 t1
|--||--------|/|------(y1)
| |
| y1 |
|--||------
|
5. df上升沿微分,dfi下降沿微分
概述
df:當檢測到輸入觸發信號的上升沿時,僅將觸點閉合一個掃描周期。
dfi:當檢測到輸入觸發信號的下降沿時,僅將觸點閉合一個掃描周期。
程序示例
示例說明
在檢測到 x0的上升沿(off→on)時,y0僅為 on一個掃描周期。
在檢測到 x1的下降沿(on→off)時,y1僅為 on一個掃描周期。
描述
當觸發信號狀態從 off 狀態到 on狀態變化時,df 指令才執行并且輸出僅接通一個掃描周期。
當觸發信號狀態從 on狀態到 off 狀態變化時,dfi 指令才執行并且輸出僅接通一個掃描周期。
若執行條件最初即為閉合,則 plc接通,則不會產生輸出。
編程時的注意事項
df 和 dfi 指令的使用次數有限制,cx1-16r使用這兩個指令的次數之和最多為 128 次。
6。微分指令的應用示例
如果采用微分指令編程,可以使程序調試更加簡單。
自保持回路應用示例
使用微分指令可以保持輸入信號。
7。交替回路應用示例
使用微分指令也可以構成一個交替變化回路,實現利用同一個輸入信號切換進行保持或釋放。















