PLC編程入門(mén)基礎(chǔ)知識(shí)
可編程序控制器,它是一個(gè)以微處理器為核心的數(shù)字運(yùn)算操作的電子系統(tǒng)裝置,專為在工業(yè)現(xiàn)場(chǎng)應(yīng)用而設(shè)計(jì),它采用可編程序的存儲(chǔ)器,用以在其內(nèi)部存儲(chǔ)執(zhí)行邏輯運(yùn)算、順序控制、定時(shí)/計(jì)數(shù)和算術(shù)運(yùn)算等操作指令,并通過(guò)數(shù)字式或模擬式的輸入、輸出接口,控制各種類型的機(jī)械或生產(chǎn)過(guò)程。PLC是微機(jī)技術(shù)與傳統(tǒng)的繼電接觸控制技術(shù)相結(jié)合的產(chǎn)物,它克服了繼電接觸控制系統(tǒng)中的機(jī)械觸點(diǎn)的接線復(fù)雜、可靠性低、功耗高、通用性和靈活性差的缺點(diǎn),充分利用了微處理器的優(yōu)點(diǎn),又照顧到現(xiàn)場(chǎng)電氣操作維修人員的技能與習(xí)慣,特別是PLC的程序編制,不需要專門(mén)的計(jì)算機(jī)編程語(yǔ)言知識(shí),而是采用了一套以繼電器梯形圖為基礎(chǔ)的簡(jiǎn)單指令形式,使用戶程序編制形象、直觀、方便易學(xué);調(diào)試與查錯(cuò)也都很方便。用戶在購(gòu)到所需的PLC后,只需按說(shuō)明書(shū)的提示,做少量的接線和簡(jiǎn)易的用戶程序編制工作,就可靈活方便地將PLC應(yīng)用于生產(chǎn)實(shí)踐。
第一章 PLC簡(jiǎn)介
一、PLC的結(jié)構(gòu)及各部分的作用
PLC的類型繁多,功能和指令系統(tǒng)也不盡相同,但結(jié)構(gòu)與工作原理則大同小異,通常由主機(jī)、輸入/輸出接口、電源擴(kuò)展器接口和外部設(shè)備接口等幾個(gè)主要部分組成。
1、主機(jī)
主機(jī)部分包括中央處理器(CPU)、系統(tǒng)程序存儲(chǔ)器和用戶程序及數(shù)據(jù)存儲(chǔ)器。CPU是PLC的核心,它用以運(yùn)行用戶程序、監(jiān)控輸入/輸出接口狀態(tài)、作出邏輯判斷和進(jìn)行數(shù)據(jù)處理,即讀取輸入變量、完成用戶指令規(guī)定的各種操作,將結(jié)果送到輸出端,并響應(yīng)外部設(shè)備(如電腦、打印機(jī)等)的請(qǐng)求以及進(jìn)行各種內(nèi)部判斷等。PLC的內(nèi)部存儲(chǔ)器有兩類,一類是系統(tǒng)程序存儲(chǔ)器,主要存放系統(tǒng)管理和監(jiān)控程序及對(duì)用戶程序作編譯處理的程序,系統(tǒng)程序已由廠家固定,用戶不能更改;另一類是用戶程序及數(shù)據(jù)存儲(chǔ)器,主要存放用戶編制的應(yīng)用程序及各種暫存數(shù)據(jù)和中間結(jié)果。
2、輸入/輸出(I/O)接口
I/O接口是PLC與輸入/輸出設(shè)備連接的部件。輸入接口接受輸入設(shè)備(如按鈕、傳感器、觸點(diǎn)、行程開(kāi)關(guān)等)的控制信號(hào)。輸出接口是將主機(jī)經(jīng)處理后的結(jié)果通過(guò)功放電路去驅(qū)動(dòng)輸出設(shè)備(如接觸器、電磁閥、指示燈等)。I/O接口一般采用光電耦合電路,以減少電磁干擾,從而提高了可靠性。I/O點(diǎn)數(shù)即輸入/輸出端子數(shù)是PLC的一項(xiàng)主要技術(shù)指標(biāo),通常小型機(jī)有幾十個(gè)點(diǎn),中型機(jī)有幾百個(gè)點(diǎn),大型機(jī)將超過(guò)千點(diǎn)。
3、電源
圖中電源是指為CPU、存儲(chǔ)器、I/O接口等內(nèi)部電子電路工作所配置的直流開(kāi)關(guān)穩(wěn)壓電源,通常也為輸入設(shè)備提供直流電源。
4、編程
編程是PLC利用外部設(shè)備,用戶用來(lái)輸入、檢查、修改、調(diào)試程序或監(jiān)示PLC的工作情況。通過(guò)專用的PC/PPI電纜線將PLC與電腦聯(lián)接,并利用專用的軟件進(jìn)行電腦編程和監(jiān)控。
5、輸入/輸出擴(kuò)展單元
I/O擴(kuò)展接口用于將擴(kuò)充外部輸入/輸出端子數(shù)的擴(kuò)展單元與基本單元(即主機(jī))連接在一起。
6、外部設(shè)備接口
此接口可將打印機(jī)、條碼掃描儀,變頻器等外部設(shè)備與主機(jī)相聯(lián),以完成相應(yīng)的操作。
實(shí)驗(yàn)裝置提供的主機(jī)型號(hào)有西門(mén)子S7-200系列的CPU224(AC/DC/RELAY)。輸入點(diǎn)數(shù)為14,輸出點(diǎn)數(shù)為10;CPU226(AC/DC/RELAY),輸入點(diǎn)數(shù)為26,輸出點(diǎn)數(shù)為14。
二、PLC的工作原理
PLC是采用“順序掃描,不斷循環(huán)”的方式進(jìn)行工作的。即在PLC運(yùn)行時(shí),CPU根據(jù)用戶按控制要求編制好并存于用戶存儲(chǔ)器中的程序,按指令步序號(hào)(或地址號(hào))作周期性循環(huán)掃描,如無(wú)跳轉(zhuǎn)指令,則從第一條指令開(kāi)始逐條順序執(zhí)行用戶程序,直至程序結(jié)束。然后重新返回第一條指令,開(kāi)始下一輪新的掃描。在每次掃描過(guò)程中,還要完成對(duì)輸入信號(hào)的采樣和對(duì)輸出狀態(tài)的刷新等工作。
PLC的一個(gè)掃描周期必經(jīng)輸入采樣、程序執(zhí)行和輸出刷新三個(gè)階段。
PLC在輸入采樣階段:首先以掃描方式按順序?qū)⑺袝捍嬖谳斎腈i存器中的輸入端子的通斷狀態(tài)或輸入數(shù)據(jù)讀入,并將其寫(xiě)入各對(duì)應(yīng)的輸入狀態(tài)寄存器中,即刷新輸入。隨即關(guān)閉輸入端口,進(jìn)入程序執(zhí)行階段。
PLC在程序執(zhí)行階段:按用戶程序指令存放的先后順序掃描執(zhí)行每條指令,經(jīng)相應(yīng)的運(yùn)算和處理后,其結(jié)果再寫(xiě)入輸出狀態(tài)寄存器中,輸出狀態(tài)寄存器中所有的內(nèi)容隨著程序的執(zhí)行而改變。
輸出刷新階段:當(dāng)所有指令執(zhí)行完畢,輸出狀態(tài)寄存器的通斷狀態(tài)在輸出刷新階段送至輸出鎖存器中,并通過(guò)一定的方式(繼電器、晶體管或晶閘管)輸出,驅(qū)動(dòng)相應(yīng)輸出設(shè)備工作。
三、PLC的程序編制
1、編程元件
PLC是采用軟件編制程序來(lái)實(shí)現(xiàn)控制要求的。編程時(shí)要使用到各種編程元件,它們可提供無(wú)數(shù)個(gè)動(dòng)合和動(dòng)斷觸點(diǎn)。編程元件是指輸入寄存器、輸出寄存器、位存儲(chǔ)器、定時(shí)器、計(jì)數(shù)器、通用寄存器、數(shù)據(jù)寄存器及特殊功能存儲(chǔ)器等。
PLC內(nèi)部這些存儲(chǔ)器的作用和繼電接觸控制系統(tǒng)中使用的繼電器十分相似,也有“線圈”與“觸點(diǎn)”,但它們不是“硬”繼電器,而是PLC存儲(chǔ)器的存儲(chǔ)單元。當(dāng)寫(xiě)入該單元的邏輯狀態(tài)為“1”時(shí),則表示相應(yīng)繼電器線圈得電,其動(dòng)合觸點(diǎn)閉合,動(dòng)斷觸點(diǎn)斷開(kāi)。所以,內(nèi)部的這些繼電器稱之為“軟”繼電器。
2、編程語(yǔ)言
所謂程序編制,就是用戶根據(jù)控制對(duì)象的要求,利用PLC廠家提供的程序編制語(yǔ)言,將一個(gè)控制要求描述出來(lái)的過(guò)程。PLC最常用的編程語(yǔ)言是梯形圖語(yǔ)言和指令語(yǔ)句表語(yǔ)言,且兩者常常聯(lián)合使用。
1)梯形圖(語(yǔ)言)
梯形圖是一種從繼電接觸控制電路圖演變而來(lái)的圖形語(yǔ)言。它是借助類似于繼電器的動(dòng)合、動(dòng)斷觸點(diǎn)、線圈以及串、并聯(lián)等術(shù)語(yǔ)和符號(hào),根據(jù)控制要求聯(lián)接而成的表示PLC輸入和輸出之間邏輯關(guān)系的圖形,直觀易懂。
梯形圖中常用 圖形符號(hào)分別表示PLC編程元件的動(dòng)合和動(dòng)斷觸點(diǎn);
用 ( ) 表示它們的線圈。梯形圖中編程元件的種類用圖形符號(hào)及標(biāo)注的字母或數(shù)加以區(qū)別。觸點(diǎn)和線圈等組成的獨(dú)立電路稱為網(wǎng)絡(luò),用編程軟件生成的梯形圖和語(yǔ)句表程序中有網(wǎng)絡(luò)編號(hào),允許以網(wǎng)絡(luò)為單位給梯形圖加注釋。
梯形圖的設(shè)計(jì)應(yīng)注意到以下三點(diǎn):
①梯形圖按從左到右、自上而下地順序排列。每一邏輯行(或稱梯級(jí))起始于左母線,然后是觸點(diǎn)的串、并聯(lián)接,最后是線圈。
②梯形圖中每個(gè)梯級(jí)流過(guò)的不是物理電流,而是“概念電流”,從左流向右,其兩端沒(méi)有電源。這個(gè)“概念電流”只是用來(lái)形象地描述用戶程序執(zhí)行中應(yīng)滿足線圈接通的條件。
③輸入寄存器用于接收外部輸入信號(hào),而不能由PLC內(nèi)部其它繼電器的觸點(diǎn)來(lái)驅(qū)動(dòng)。因此,梯形圖中只出現(xiàn)輸入寄存器的觸點(diǎn),而不出現(xiàn)其線圈。輸出寄存器則輸出程序執(zhí)行結(jié)果給外部輸出設(shè)備,當(dāng)梯形圖中的輸出寄存器線圈得電時(shí),就有信號(hào)輸出,但不是直接驅(qū)動(dòng)輸出設(shè)備,而要通過(guò)輸出接口的繼電器、晶體管或晶閘管才能實(shí)現(xiàn)。輸出寄存器的觸點(diǎn)也可供內(nèi)部編程使用。
2)指令語(yǔ)句表
指令語(yǔ)句表是一種用指令助記符來(lái)編制PLC程序的語(yǔ)言,它類似于計(jì)算機(jī)的匯編語(yǔ)言,但比匯編語(yǔ)言易懂易學(xué),若干條指令組成的程序就是指令語(yǔ)句表。一條指令語(yǔ)句是由步序、指令語(yǔ)和作用器件編號(hào)三部分組成。
第二章 基本指令簡(jiǎn)介
一、標(biāo)準(zhǔn)觸點(diǎn)指令
LD動(dòng)合觸點(diǎn)指令,表示一個(gè)與輸入母線相連的動(dòng)合觸點(diǎn)指令,即動(dòng)合觸點(diǎn)邏輯運(yùn)算起始。
LDN動(dòng)斷觸點(diǎn)指令,表示一個(gè)與輸入母線相連的動(dòng)斷觸點(diǎn)指令,即動(dòng)斷觸點(diǎn)邏輯運(yùn)算起始。
A 與動(dòng)合觸點(diǎn)指令,用于單個(gè)動(dòng)合觸點(diǎn)的串聯(lián)。
AX 與非動(dòng)斷觸點(diǎn)指令,用于單個(gè)動(dòng)斷觸點(diǎn)的串聯(lián)。
O 或動(dòng)合觸點(diǎn)指令,用于單個(gè)動(dòng)合觸點(diǎn)的并聯(lián)。
ON 或非動(dòng)斷觸點(diǎn)指令,用于單個(gè)動(dòng)斷觸點(diǎn)的并聯(lián)。
LD、LDN、A、AN、O、ON觸點(diǎn)指令中變量的數(shù)據(jù)類型為布爾(BOOC)型。LD、LDN兩條指令用于將接點(diǎn)接到母線上,A、AN、O、ON指令均可多次重復(fù)使用,但當(dāng)需要對(duì)兩個(gè)以上接點(diǎn)串聯(lián)連接電路塊的并聯(lián)連接時(shí),要用后述的OLD指令。
二、串聯(lián)電路塊的并聯(lián)連接指令OLD
兩個(gè)或兩個(gè)以上的接點(diǎn)串聯(lián)連接的電路叫串聯(lián)電路塊。串聯(lián)電路塊并聯(lián)連接時(shí),分支開(kāi)始用LD、LDN指令,分支結(jié)束用OLD指令。OLD指令與后述的ALD指令均為無(wú)目標(biāo)元件指令,而兩條無(wú)目標(biāo)元件指令的步長(zhǎng)都為一個(gè)程序步。OLD有時(shí)也簡(jiǎn)稱或塊指令。
三、并聯(lián)電路的串聯(lián)連接指令A(yù)LD
兩個(gè)或兩個(gè)以上接點(diǎn)并聯(lián)電路稱為并聯(lián)電路塊,分支電路并聯(lián)電路塊與前面電路串聯(lián)連接時(shí),使用ALD指令。分支的起點(diǎn)用LD、LDN指令,并聯(lián)電路結(jié)束后,使用ALD指令與前面電路串聯(lián)。ALD指令也簡(jiǎn)稱與塊指令,ALD也是無(wú)操作目標(biāo)元件,是一個(gè)程序步指令。
四、輸出指令 =
1、= 輸出指令是將繼電器、定時(shí)器、計(jì)數(shù)器等的線圈與梯形圖右邊的母線直接連接,線圈的右邊不允許有觸點(diǎn),在編程中,觸點(diǎn)以重復(fù)使用,且類型和數(shù)量不受限制。
五、置位與復(fù)位指令S、R
S為置位指令,使動(dòng)作保持;R為復(fù)位指令,使操作保持復(fù)位。從指定的位置開(kāi)始的N個(gè)點(diǎn)的寄存器都被置位或復(fù)位,N=1~255如果被指定復(fù)位的是定時(shí)器位或計(jì)數(shù)器位,將清除定時(shí)器或計(jì)數(shù)器的當(dāng)前值。
六、跳變觸點(diǎn)EU,ED
正跳變觸點(diǎn)檢測(cè)到一次正跳變(觸點(diǎn)的入信號(hào)由0到1)時(shí),或負(fù)跳變觸點(diǎn)檢測(cè)到一次負(fù)跳變(觸點(diǎn)的入信號(hào)由1到0)時(shí),觸點(diǎn)接通到一個(gè)掃描周期.正/負(fù)跳變的符號(hào)為EU和ED,他們沒(méi)有操作數(shù),觸點(diǎn)符號(hào)中間的”P(pán)”和”N”分別表示正跳變和負(fù)跳變
七、空操作指令NOP
NOP指令是一條無(wú)動(dòng)作、無(wú)目標(biāo)元件的一個(gè)序步指令??詹僮髦噶钍乖摬叫?yàn)榭詹僮鳌S肗OP指令可替代已寫(xiě)入指令,可以改變電路。在程序中加入NOP指令,在改動(dòng)或追加程序時(shí)可以減少步序號(hào)的改變。
八、程序結(jié)束指令END
END是一條無(wú)目標(biāo)元件的一序步指令。PLC反復(fù)進(jìn)行輸入處理、程序運(yùn)算、輸出處理,在程序的最后寫(xiě)入END指令,表示程序結(jié)束,直接進(jìn)行輸出處理。在程序調(diào)試過(guò)程中,可以按段插入END指令,可以按順序擴(kuò)大對(duì)各程序段動(dòng)作的檢查。采用END指令將程序劃分為若干段,在確認(rèn)處于前面電路塊的動(dòng)作正確無(wú)誤之后,依次刪去END指令。要注意的是在執(zhí)行END指令時(shí),也刷新監(jiān)視時(shí)鐘。
第二章 可編程控制器梯形圖編程規(guī)則
一、編程的幾個(gè)步驟
(一)決定系統(tǒng)所需的動(dòng)作及次序。
當(dāng)使用可編程控制器時(shí),最重要的一環(huán)是決定系統(tǒng)所需的輸入及輸出。輸入及輸出要求:
(1) 第一步是設(shè)定系統(tǒng)輸入及輸出數(shù)目。
(2) 第二步是決定控制先后、各器件相應(yīng)關(guān)系以及作出何種反應(yīng)。
(二)對(duì)輸入及輸出器件編號(hào)
每一輸入和輸出,包括定時(shí)器、計(jì)數(shù)器、內(nèi)置寄存器等都有一個(gè)唯一的對(duì)應(yīng)編號(hào),不能混用。
(三)畫(huà)出梯形圖。
根據(jù)控制系統(tǒng)的動(dòng)作要求,畫(huà)出梯形圖。
梯形圖設(shè)計(jì)規(guī)則
(1)觸點(diǎn)應(yīng)畫(huà)在水平線上,并且根據(jù)自左至右、自上而下的原則和對(duì)輸出線圈的控制路徑來(lái)畫(huà)。
(2)不包含觸點(diǎn)的分支應(yīng)放在垂直方向,以便于識(shí)別觸點(diǎn)的組合和對(duì)輸出線圈的控制路徑。
(3)在有幾個(gè)串聯(lián)回路相并聯(lián)時(shí),應(yīng)將觸頭多的那個(gè)串聯(lián)回路放在梯形圖的最上面。在有幾個(gè)并聯(lián)回路相串聯(lián)時(shí),應(yīng)將觸點(diǎn)最多的并聯(lián)回路放在梯形圖的最左面。這種安排,所編制的程序簡(jiǎn)潔明了,語(yǔ)句較少。
(4)不能將觸點(diǎn)畫(huà)在線圈的右邊。
(四)將梯形圖轉(zhuǎn)化為程序
把繼電器梯形圖轉(zhuǎn)變?yōu)榭删幊炭刂破鞯木幋a,當(dāng)完成梯形圖以后,下一步是把它的編碼編譯成可編程控制器能識(shí)別的程序。
這種程序語(yǔ)言是由序號(hào)(即地址)、指令(控制語(yǔ)句)、器件號(hào)(即數(shù)據(jù))組成。地址是控制語(yǔ)句及數(shù)據(jù)所存儲(chǔ)或擺放的位置,指令告訴可編程控制器怎樣利用器件作出相應(yīng)的動(dòng)作。
(五)在編程方式下用鍵盤(pán)輸入程序。
(六)編程及設(shè)計(jì)控制程序。
(七)測(cè)試控制程序的錯(cuò)誤并修改。
(八)保存完整的控制程序。
提交
超越傳統(tǒng)直覺(jué),MATLAB/Simulink助力重型機(jī)械的智能化轉(zhuǎn)型
新大陸自動(dòng)識(shí)別精彩亮相2024華南國(guó)際工業(yè)博覽會(huì)
派拓網(wǎng)絡(luò)被Forrester評(píng)為XDR領(lǐng)域領(lǐng)導(dǎo)者
智能工控,存儲(chǔ)強(qiáng)基 | 海康威視帶來(lái)精彩主題演講
展會(huì)|Lubeworks路博流體供料系統(tǒng)精彩亮相AMTS展會(huì)