技術頻道

      跟我學:PLC 指令

      §1 基本指令系統(tǒng)特點

      PLC的編程語言與一般計算機語言相比,具有明顯的特點,它既不同于高級語言,也不同與一般的匯編語言,它既要滿足易于編寫,又要滿足易于調試的要求。目前,還沒有一種對各廠家產(chǎn)品都能兼容的編程語言。如三菱公司的產(chǎn)品有它自己的編程語言,OMRON公司的產(chǎn)品也有它自己的語言。但不管什么型號的PLC,其編程語言都具有以下特點:

      1. 圖形式指令結構:程序由圖形方式表達,指令由不同的圖形符號組成,易于理解和記憶。系統(tǒng)的軟件開發(fā)者已把工業(yè)控制中所需的獨立運算功能編制成象征性圖形,用戶根據(jù)自己的需要把這些圖形進行組合,并填入適當?shù)膮?shù)。在邏輯運算部分,幾乎所有的廠家都采用類似于繼電器控制電路的梯形圖,很容易接受。如西門子公司還采用控制系統(tǒng)流程圖來表示,它沿用二進制邏輯元件圖形符號來表達控制關系,很直觀易懂。較復雜的算術運算、定時計數(shù)等,一般也參照梯形圖或邏輯元件圖給予表示,雖然象征性不如邏輯運算部分,也受用戶歡迎

      2. 明確的變量常數(shù):圖形符相當于操作碼,規(guī)定了運算功能,操作數(shù)由用戶填人,如:K400,T120等。PLC中的變量和常數(shù)以及其取值范圍有明確規(guī)定,由產(chǎn)品型號決定,可查閱產(chǎn)品目錄手冊。

      3. 簡化的程序結構:PLC的程序結構通常很簡單,典型的為塊式結構,不同塊完成不同的功能,使程序的調試者對整個程序的控制功能和控制順序有清晰的概念。

      4. 簡化應用軟件生成過程:使用匯編語言和高級語言編寫程序,要完成編輯、編譯和連接三個過程,而使用編程語言,只需要編輯一個過程,其余由系統(tǒng)軟件自動完成,整個編輯過程都在人機對話下進行的,不要求用戶有高深的軟件設計能力。

      5. 強化調試手段:無論是匯編程序,還是高級語言程序調試,都是令編輯人員頭疼的事,而PLC的程序調試提供了完備的條件,使用編程器,利用PLC和編程器上的按鍵、顯示和內部編輯、調試、監(jiān)控等,并在軟件支持下,診斷和調試操作都很簡單。

      總之,PLC的編程語言是面向用戶的,對使用者不要求具備高深的知識、不需要長時間的專門訓練。

      §2 編程語言的形式

      本教材采用最常用的兩種編程語言,一是梯形圖,二是助記符語言表。采用梯形圖編程,因為它直觀易懂,但需要一臺個人計算機及相應的編程軟件;采用助記符形式便于實驗,因為它只需要一臺簡易編程器,而不必用昂貴的圖形編程器或計算機來編程。

      雖然一些高檔的PLC還具有與計算機兼容的C語言、BASIC語言、專用的高級語言(如西門子公司的GRAPH5、三菱公司的MELSAP),還有用布爾邏輯語言、通用計算機兼容的匯編語言等。不管怎么樣,各廠家的編程語言都只能適用于本廠的產(chǎn)品。

      l 編程指令:指令是PLC被告知要做什么,以及怎樣去做的代碼或符號。從本質上講,指令只是一些二進制代碼,這點PLC與普通的計算機是完全相同的。同時PLC也有編譯系統(tǒng),它可以把一些文字符號或圖形符號編譯成機器碼,所以用戶看到的PLC指令一般不是機器碼而是文字代碼,或圖形符號。常用的助記符語句用英文文字(可用多國文字)的縮寫及數(shù)字代表各相應指令。常用的圖形符號即梯形圖,它類似于電氣原理圖是符號,易為電氣工作人員所接受。

      l 指令系統(tǒng):一個PLC所具有的指令的全體稱為該PLC的指令系統(tǒng)。它包含著指令的多少,各指令都能干什么事,代表著PLC的功能和性能。一般講,功能強、性能好的PLC,其指令系統(tǒng)必然豐富,所能干的事也就多。我們在編程之前必須弄清PLC的指令系統(tǒng)

      l 程序:PLC指令的有序集合,PLC運行它,可進行相應的工作,當然,這里的程序是指PLC的用戶程序。用戶程序一般由用戶設計,PLC的廠家或代銷商不提供。用語句表達的程序不大直觀,可讀性差,特別是較復雜的程序,更難讀,所以多數(shù)程序用梯形圖表達。

      l 梯形圖:梯形圖是通過連線把PLC指令的梯形圖符號連接在一起的連通圖,用以表達所使用的PLC指令及其前后順序,它與電氣原理圖很相似。它的連線有兩種:一為母線,另一為內部橫豎線。內部橫豎線把一個個梯形圖符號指令連成一個指令組,這個指令組一般總是從裝載(LD)指令開始,必要時再繼以若干個輸入指令(含LD指令),以建立邏輯條件。最后為輸出類指令,實現(xiàn)輸出控制,或為數(shù)據(jù)控制、流程控制、通訊處理、監(jiān)控工作等指令,以進行相應的工作。母線是用來連接指令組的。下圖是三菱公司的FX2N系列產(chǎn)品的最簡單的梯形圖例:
      X000 X001 Y000

      X010

      它有兩組,第一組用以實現(xiàn)啟動、停止控制。第二組僅一個END指令,用以 結束程序。

      l 梯形圖與助記符的對應關系: 助記符指令與梯形圖指令有嚴格的對應關系,而梯形圖的連線又可把指令的順序予以體現(xiàn)。一般講,其順序為:先輸入,后輸出(含其他處理);先上,后下;先左,后右。有了梯形圖就可將其翻譯成助記符程序。上圖的助記符程序為:
      地址 指令 變量
      0000 LD X000
      0001 OR X010
      0002 AND NOT X001
      0003 OUT Y000
      0004 END

      反之根據(jù)助記符,也可畫出與其對應的梯形圖。


      l 梯形圖與電氣原理圖的關系:如果僅考慮邏輯控制,梯形圖與電氣原理圖也可建立起一定的對應關系。如梯形圖的輸出(OUT)指令,對應于繼電器的線圈,而輸入指令(如LD,AND,OR)對應于接點,互鎖指令(IL、ILC)可看成總開關,等等。這樣,原有的繼電控制邏輯,經(jīng)轉換即可變成梯形圖,再進一步轉換,即可變成語句表程序。

      有了這個對應關系,用PLC程序代表繼電邏輯是很容易的。這也是PLC技術對傳統(tǒng)繼電控制技術的繼承。

      §3 編程器件

      下面我們著重介紹三菱公司的FX2N系列產(chǎn)品的一些編程元件及其功能。

      FX系列產(chǎn)品,它內部的編程元件,也就是支持該機型編程語言的軟元件,按通俗叫法分別稱為繼電器、定時器、計數(shù)器等,但它們與真實元件有很大的差別,一般稱它們?yōu)?軟繼電器"。這些編程用的繼電器,它的工作線圈沒有工作電壓等級、功耗大小和電磁慣性等問題;觸點沒有數(shù)量限制、沒有機械磨損和電蝕等問題。它在不同的指令操作下,其工作狀態(tài)可以無記憶,也可以有記憶,還可以作脈沖數(shù)字元件使用。一般情況下,X代表輸入繼電器,Y代表輸出繼電器,M代表輔助繼電器,SPM代表專用輔助繼電器,T代表定時器,C代表計數(shù)器,S代表狀態(tài)繼電器,D代表數(shù)據(jù)寄存器,MOV代表傳輸?shù)取?

      一、 輸入繼電器 (X)

      PLC的輸入端子是從外部開關接受信號的窗口,PLC 內部與輸入端子連接的輸入繼電器X是用光電隔離的電子繼電器,它們的編號與接線端子編號一致(按八進制輸入),線圈的吸合或釋放只取決于PLC外部觸點的狀態(tài)。內部有常開/常閉兩種觸點供編程時隨時使用,且使用次數(shù)不限。輸入電路的時間常數(shù)一般小于10ms。各基本單元都是八進制輸入的地址,輸入為X000 ~ X007,X010 ~X017,X020 ~X027 。它們一般位于機器的上端。

      二、 輸出繼電器(Y)

      PLC的輸出端子是向外部負載輸出信號的窗口。輸出繼電器的線圈由程序控制,輸出繼電器的外部輸出主觸點接到PLC的輸出端子上供外部負載使用,其余常開/常閉觸點供內部程序使用。輸出繼電器的電子常開/常閉觸點使用次數(shù)不限。輸出電路的時間常數(shù)是固定的 。各基本單元都是八進制輸出,輸出為Y000 ~Y007,Y010~Y017,Y020~Y027 。它們一般位于機器的下端。

      三、 輔助繼電器(M)

      PLC內有很多的輔助繼電器,其線圈與輸出繼電器一樣,由PLC內各軟元件的觸點驅動。輔助繼電器也稱中間繼電器,它沒有向外的任何聯(lián)系,只供內部編程使用。它的電子常開/常閉觸點使用次數(shù)不受限制。但是,這些觸點不能直接驅動外部負載,外部負載的驅動必須通過輸出繼電器來實現(xiàn)。如下圖中的M300,它只起到一個自鎖的功能。在FX2N中普遍途采用M0~M499,共500點輔助繼電器,其地址號按十進制編號。輔助繼電器中還有一些特殊的輔助繼電器,如掉電繼電器、保持繼電器等,在這里就不一一介紹了。
      X000 X001 M300

      M300

      四、定時器(T)

      在PLC內的定時器是根據(jù)時鐘脈沖的累積形式,當所計時間達到設定值時,其輸出觸點動作,時鐘脈沖有1ms、10ms、100ms。定時器可以用用戶程序存儲器內的常數(shù)K作為設定值,也可以用數(shù)據(jù)寄存器(D)的內容作為設定值。在后一種情況下,一般使用有掉電保護功能的數(shù)據(jù)寄存器。即使如此,若備用電池電壓降低時,定時器或計數(shù)器往往會發(fā)生誤動作。
      定時器通道范圍如下:
      100 ms定時器T0~T199, 共200點,設定值:0.1~ 3276.7秒;
      10 ms定時器T200~TT245,共46點,設定值:0.01~327.67秒;
      1 ms積算定時器 T245~T249,共4點,設定值:0.001~32.767秒;
      100 ms積算定時器T250~T255,共6點,設定值:0.1~3276.7秒;
      定時器指令符號及應用如下圖所示:
      X000
      K123 設定值(累積)
      T200 Y000

      當定時器線圈T200的驅動輸入X000接通時,T200的當前值計數(shù)器對10 ms的時鐘脈沖進行累積計數(shù),當前值與設定值K123相等時,定時器的輸出接點動作,即輸出觸點是在驅動線圈后的1.23秒(10 * 123ms = 1.23s)時才動作,當T200觸點吸合后,Y000就有輸出。當驅動輸入X000斷開或發(fā)生停電時,定時器就復位,輸出觸點也復位。

      每個定時器只有一個輸入,它與常規(guī)定時器一樣,線圈通電時,開始計時;斷電時,自動復位,不保存中間數(shù)值。定時器有兩個數(shù)據(jù)寄存器,一個為設定值寄存器,另一個是現(xiàn)時值寄存器,編程時,由用戶設定累積值。
      如果是積算定時器,它的符號接線如下圖所示:
      X001
      K345
      X002

      定時器線圈T250的驅動輸入X001接通時,T250的當前值計數(shù)器對100 ms的時鐘脈沖進行累積計數(shù),當該值與設定值K345相等時,定時器的輸出觸點動作。在計數(shù)過程中,即使輸入X001在接通或復電時,計數(shù)繼續(xù)進行,其累積時間為34.5s(100 ms*345=34.5s)時觸點動作。當復位輸入X002接通 ,定時器就復位,輸出觸點也復位。

      五、 計數(shù)器(C)

      FX2N中的16位增計數(shù)器,是16位二進制加法計數(shù)器,它是在計數(shù)信號的上升沿進行計數(shù),它有兩個輸入,一個用于復位,一個用于計數(shù)。每一個計數(shù)脈沖上升沿使原來的數(shù)值減1,當現(xiàn)時值減到零時停止計數(shù),同時觸點閉合。直到復位控制信號的上升沿輸入時,觸點才斷開,設定值又寫入,再又進入計數(shù)狀態(tài)。
      其設定值在K1~K32767范圍內有效。
      設定值K0與K1含義相同,即在第一次計數(shù)時,其輸出觸點就動作。
      通用計數(shù)器的通道號:C0 ~C99,共100點。
      保持用計數(shù)器的通道號:C100~C199,共100點。
      通用與掉電保持用的計數(shù)器點數(shù)分配,可由參數(shù)設置而隨意更改。
      舉個例子:
      X010

      X011
      K 計數(shù)器
      C 0

      由計數(shù)輸入X011每次驅動C0線圈時,計數(shù)器的當前值加1。當?shù)?0次執(zhí)行線圈指令時,計數(shù)器C0的輸出觸點即動作。之后即使計數(shù)器輸入X011再動作,計數(shù)器的當前值保持不變。
      l 當復位輸入X010接通(ON)時,執(zhí)行RST指令,計數(shù)器的當前值為0,輸出接點也復位。
      l 應注意的是, 計數(shù)器C100~C199,即使發(fā)生停電,當前值與輸出觸點的動作狀態(tài)或復位狀態(tài)也能保持。

      六、 數(shù)據(jù)寄存器

      數(shù)據(jù)寄存器是計算機必不可少的元件,用于存放各種數(shù)據(jù)。FX2N中每一個數(shù)據(jù)寄存器都是16bit(最高位為正、負符號位),也可用兩個數(shù)據(jù)寄存器合并起來存儲32 bit數(shù)據(jù)(最高位為正、負符號位)。
      1) 通用數(shù)據(jù)寄存器D 通道分配 D 0~D199,共200點。
      只要不寫入其他數(shù)據(jù),已寫入的數(shù)據(jù)不會變化。但是,由RUN→STOP時, 全部數(shù)據(jù)均清零。(若特殊輔助繼電器M8033已被驅動,則數(shù)據(jù)不被清零)。
      2) 停電保持用寄存器 通道分配 D200~D511,共312點,或D200~D999,共800點(由機器的具體型號定)。
      基本上同通用數(shù)據(jù)寄存器。除非改寫,否則原有數(shù)據(jù)不會丟失,不論電源接通與否,PLC運行與否,其內容也不變化。然而在二臺PLC作點對的通信時, D490~D509被用作通信操作。
      3) 文件寄存器 通道分配 D1000~D2999,共2000點。
      文件寄存器是在用戶程序存儲器(RAM、EEPROM、EPROM)內的一個存儲區(qū),以500點為一個單位,最多可在參數(shù)設置時到2000點。用外部設備口進行寫入操作。在PLC運行時,可用BMOV指令讀到通用數(shù)據(jù)寄存器中,但是不能用指令將數(shù)據(jù)寫入文件寄存器。用BMOV將 數(shù)據(jù)寫入RAM后,再從RAM中讀出。將數(shù)據(jù)寫入EEPROM盒時,需要花費一定的時間,務必請注意。
      4) RAM文件寄存器 通道分配 D6000~D7999,共2000點。
      驅動特殊輔助繼電器M8074,由于采用掃描被禁止,上述的數(shù)據(jù)寄存 器可作為文件寄存器處理,用BMOV指令傳送數(shù)據(jù)(寫入或讀出)。
      5)特殊用寄存器 通道分配 D8000~D8255,共256點。

      是寫入特定目的的數(shù)據(jù)或已經(jīng)寫入數(shù)據(jù)寄存器,其內容在電源接通時,寫入初始化值(一般先清零,然后由系統(tǒng)ROM來寫入)。

      §4 FX2N系列的基本邏輯指令

      基本邏輯指令是PLC中最基本的編程語言,掌握了它也就初步掌握了PLC的使用方法,各種型號的PLC的基本邏輯指令都大臺大同小異,現(xiàn)在我們針對FX2N系列,逐條學習其指令的功能和使用方法,。每條指令及其應用實例都以梯形圖和語句表兩種編程語言對照說明。
      一、 輸入輸出指令(LD/LDI/OUT)
      下面把LD/LDI/OUT三條指令的功能、梯形圖表示形式、操作元件以列表的形式加以說明:
      符號 功 能 梯形圖表示 操作元件
      LD(取) 常開觸點與母線相連 X,Y,M,T,C,S
      LDI(取反) 常閉觸點與母線相連 X,Y,M,T,C,S
      OUT(輸出) 線圈驅動 Y,M,T,C,S,F
      LD與LDI指令用于與母線相連的接點,此外還可用于分支電路的起點。
      OUT 指令是線圈的驅動指令,可用于輸出繼電器、輔助繼電器、定時器、計數(shù)器、狀態(tài)寄存器等,但不能用于輸入繼電器。輸出指令用于并行輸出,能連續(xù)使用多次。
      X000 Y000 地址 指令 數(shù)據(jù)
      0000 LD X000
      0001 OUT Y000
      二、觸點串連指令(AND/ANDI)、并聯(lián)指令(OR/ORI)
      符號(名稱) 功 能 梯形圖表示 操作元件
      AND(與) 常開觸點串聯(lián)連接 X,Y,M,T,C,S
      ANDI(與非) 常閉觸點串聯(lián)連接 X,Y,M,T,C,S
      OR(或) 常開觸點并聯(lián)連接 X,Y,M,T,C,S
      ORI ( 或非) 常閉觸點并聯(lián)連接 X,Y,M,T,C,S
      AND、ANDI指令用于一個觸點的串聯(lián),但串聯(lián)觸點的數(shù)量不限,這兩個指令可連續(xù)使用。
      OR、ORI是用于一個觸點的并聯(lián)連接指令。
      X001 X002 Y001 地址 指令 數(shù)據(jù)
      0002 LD X001
      X003 0003 ANDI X002
      0004 OR X003
      0005 OUT Y001
      三、電路塊的并聯(lián)和串聯(lián)指令(ORB、ANB)
      符號(名稱) 功 能 梯形圖表示 操作元件
      ORB(塊或) 電路塊并聯(lián)連接 無
      ANB(塊與) 電路塊串聯(lián)連接 無

      含有兩個以上觸點串聯(lián)連接的電路稱為"串聯(lián)連接塊",串聯(lián)電路塊并聯(lián)連接時,支路的起點以LD或LDNOT指令開始,而支路的終點要用ORB指令。ORB指令是一種獨立指令,其后不帶操作元件號,因此,ORB指令不表示觸點,可以看成電路塊之間的一段連接線。如需要將多個電路塊并聯(lián)連接,應在每個并聯(lián)電路塊之后使用一個ORB指令,用這種方法編程時并聯(lián)電路塊的個數(shù)沒有限制;也可將所有要并聯(lián)的電路塊依次寫出,然后在這些電路塊的末尾集中寫出ORB的指令,但這時ORB指令最多使用7次。

      將分支電路(并聯(lián)電路塊)與前面的電路串聯(lián)連接時使用ANB指令,各并聯(lián)電路塊的起點,使用LD或LDNOT指令;與ORB指令一樣,ANB指令也不帶操作元件,如需要將多個電路塊串聯(lián)連接,應在每個串聯(lián)電路塊之后使用一個ANB指令,用這種方法編程時串聯(lián)電路塊的個數(shù)沒有限制,若集中使用ANB指令,最多使用7次。
      ANB
      X000 X002 X003 Y006

      X001 X004 X005
      ORB
      X006
      X003


      地 址 指 令 數(shù) 據(jù)
      0000 LD X000
      0001 OR X001
      0002 LD X002
      0003 AND X003
      0004 LDI X004
      0005 AND X005
      0006 OR X006
      0007 ORB
      0008 ANB
      0009 OR X003
      0010 OUT Y006
      四、程序結束指令(END)
      符號(名稱) 功 能 梯形圖表示 操作元件
      END(結束) 程序結束 無
      在程序結束處寫上END指令,PLC只執(zhí)行第一步至END之間的程序,并立即輸出處理。若不寫END指令,PLC將以用戶存貯器的第一步執(zhí)行到最后一步,因此,使用END指令可縮短掃描周期。另外。在調試程序時,可以將END指令插在各程序段之后,分段檢查各程序段的動作,確認無誤后,再依次刪去插入的END指令。
      其他的一些指令,如置位復位、脈沖輸出、清除、移位、主控觸點、空操作、跳轉指令等,同學們可以參考一些課外書,在這里我們不詳細介紹了。
      下面同學們可練習由梯形圖寫出與之對應的助記符形式的指令。并由后面的GPP軟件傳輸?shù)絇LC中,實時運行。
      1)
      X000 X001 X002 X003 Y000

      X004

      X005


      2)
      X000 X001 X004 X005 Y000

      X002 X003 X006 X007


      3)
      X000 X001 X002 Y000

      X003 X004 X005

      X006 X007


      文章版權歸西部工控xbgk所有,未經(jīng)許可不得轉載。

      主站蜘蛛池模板: 午夜福利一区二区三区高清视频| 一区在线免费观看| 精品3d动漫视频一区在线观看| 韩国福利一区二区美女视频| 国产精品一级香蕉一区| 中文字幕在线观看一区| 国产精品无码一区二区三区在| 香蕉久久一区二区不卡无毒影院| 青娱乐国产官网极品一区| 大帝AV在线一区二区三区| 奇米精品视频一区二区三区| 亲子乱AV视频一区二区| 激情综合丝袜美女一区二区| 精品人妻无码一区二区三区蜜桃一| 国产一区二区免费视频| 国产亚洲欧洲Aⅴ综合一区| 人妻无码一区二区三区四区| 日本在线视频一区二区三区| 亚洲国产欧美国产综合一区| 亚洲天堂一区二区三区四区| 亚洲一区二区三区电影| 亚洲AV无码一区二区三区DV| 日韩精品无码一区二区三区四区 | 国产精品香蕉一区二区三区| 久久亚洲AV午夜福利精品一区| 国产一区二区中文字幕| 精品国产亚洲一区二区三区| 国产一区二区免费| 末成年女A∨片一区二区| 日韩精品乱码AV一区二区| 精品视频一区二区三区免费| 久久精品视频一区| 精品三级AV无码一区| 亚洲AV无码一区二区三区牛牛| 在线观看亚洲一区二区| 久热国产精品视频一区二区三区| 日韩AV片无码一区二区不卡| 波多野结衣一区二区三区高清在线| 国产精品资源一区二区| 亚洲毛片不卡av在线播放一区| 国精品无码A区一区二区|