貴州西門子S7-1500PLC模塊代理(優(yōu)勢(shì)價(jià)格)

PLC的程序結(jié)構(gòu)概述
控制一個(gè)任務(wù)或者過程,是通過在RUN模式下,使主機(jī)循環(huán)掃描并連續(xù)執(zhí)行用戶程序來實(shí)現(xiàn)的,用戶程序決定了一個(gè)控制系統(tǒng)的功能。程序的編制可以使用編程軟件在計(jì)算機(jī)或者其他編程設(shè)備中進(jìn)行(如圖形輸入設(shè)備、編程器等)。
廣義上的程序由3部分組成:用戶程序、數(shù)據(jù)塊和參數(shù)塊。
1.用戶程序
用戶程序在存儲(chǔ)器空間也稱為組織塊(OB),它處于高層次,可以管理其他塊,可采用各種語(yǔ)言(如STL、LAD或者FBD等)來編制。不同機(jī)型的CPU,其程序空間容量也不同。用戶程序的結(jié)構(gòu)比較簡(jiǎn)單,一個(gè)完整的用戶控制程序應(yīng)當(dāng)包含一個(gè)主程序( OBl)、若干子程序和若干中斷程序3部分。不同的編程設(shè)備,對(duì)各程序塊的安排方法也不同。程序結(jié)構(gòu)示意圖如圖2-4所示。
圖2-4 PLC程序結(jié)構(gòu)
用編程軟件在計(jì)算機(jī)上編程時(shí),利用編程軟件的程序結(jié)構(gòu)窗口雙擊主程序、子程序和終端程序的圖標(biāo),即可進(jìn)入各程序塊的編程窗口。編譯時(shí)編程軟件自動(dòng)對(duì)各程序段進(jìn)行連接。
2.?dāng)?shù)據(jù)塊(DB)
數(shù)據(jù)塊為可選部分,它主要存放控制程序運(yùn)行所需的數(shù)據(jù),在數(shù)據(jù)塊中允許以下數(shù)據(jù)類型:布爾型,表示編程元件的狀態(tài);二進(jìn)制、十進(jìn)制或者十六進(jìn)制;字母、數(shù)字和字符型。
3.參數(shù)塊
參數(shù)塊也是可選部分,它主要存放的是CPU的組態(tài)數(shù)據(jù),如果在編程軟件或者其他編程工具上未進(jìn)行CPU的組態(tài),則系統(tǒng)以默認(rèn)值進(jìn)行自動(dòng)配置。
STEP 7的編程語(yǔ)言概述
在S7 PLC的STEP 7編程軟件中,如果程序塊沒有錯(cuò)誤,并且被正確地劃分為網(wǎng)絡(luò),則在梯形圖、功能塊圖和語(yǔ)句表之間可以轉(zhuǎn)換。用語(yǔ)句表編寫的程序不一定能轉(zhuǎn)換為梯形圖。不能轉(zhuǎn)換的網(wǎng)絡(luò)仍然保留語(yǔ)句表的形式,但是并不表示該網(wǎng)絡(luò)有錯(cuò)誤。
語(yǔ)句表(STL)可供習(xí)慣用匯編語(yǔ)言編程的用戶使用,在運(yùn)行時(shí)間和要求的存儲(chǔ)空間方面。語(yǔ)句表的輸入方便快捷,還可以在每條語(yǔ)句的后面加上注釋,便于復(fù)雜程序的閱讀和理解。在設(shè)計(jì)通信、數(shù)學(xué)運(yùn)算等高級(jí)應(yīng)用程序時(shí),建議使用語(yǔ)句表。
梯形圖(LAD)與繼電器電路圖的表達(dá)方式極為相似,適合于熟悉繼電器電路的用戶使用。語(yǔ)句表程序較難閱讀,其中的邏輯關(guān)系很難一眼看出,在設(shè)計(jì)和閱讀有復(fù)雜觸點(diǎn)電路的程序時(shí)使用梯形圖語(yǔ)言。
功能塊圖(FBD)適合于熟悉數(shù)字電路的用戶使用。
結(jié)構(gòu)化控制語(yǔ)言(SCL)適合于熟悉高級(jí)語(yǔ)言(如Pascal或者C語(yǔ)言)的用戶使用,適合于數(shù)據(jù)處理程序。
1.梯形圖( LAD)
梯形圖(LAD)編程語(yǔ)言是從繼電器控制系統(tǒng)原理圖的基礎(chǔ)上演變而來的。PLC的梯形圖與繼電器控制系統(tǒng)梯形圖的基本思想是*的,只是在使用符號(hào)和表達(dá)方式上有一定區(qū)別。梯形圖是使用多的PLC圖形編程語(yǔ)言,梯形圖具有直觀易懂的優(yōu)點(diǎn),很容易被工廠熟悉繼電器控制的人員掌握,特別適合于數(shù)字量邏輯控制。
梯形圖由觸點(diǎn)、線圈和用方框表示的指令框組成。觸點(diǎn)代表邏輯輸入條件,例如外部的開關(guān)、按鈕和內(nèi)部條件等。線圈通常代表邏輯運(yùn)算的結(jié)果,常用來控制外部的指示燈、交流接觸器和內(nèi)部的標(biāo)志位等。指令框用來表示定時(shí)器、計(jì)數(shù)器或者數(shù)學(xué)運(yùn)算等附加指令。使用編程軟件可以直接生成和編輯梯形圖,并將它下載到PLC。
圖2-1所示為簡(jiǎn)單的梯形圖,觸點(diǎn)和線圈等組成的獨(dú)立電路稱為網(wǎng)絡(luò)(Network),編程軟件自動(dòng)為網(wǎng)絡(luò)編號(hào)。與其對(duì)應(yīng)的語(yǔ)句表如圖2-2所示。
梯形圖的一個(gè)關(guān)鍵概念是“能流”(Power Flow),這僅是概念上的“能流”。如圖2-1所示,把左邊的母線假想為電源的“火線”,而把右邊的母線假想為電源的“零線”。如果有“能流”從左至右流向線圈,則線圈被激勵(lì);如果沒有“能流”,則線圈未被激勵(lì)。
“能流”可以通過激勵(lì)(ON)的常開觸點(diǎn)和未被激勵(lì)(OFF)的常閉觸點(diǎn)自左向右流動(dòng)。“能流”在任何時(shí)候都不會(huì)通過觸點(diǎn)自右向左流動(dòng)。如圖2-1中所示,當(dāng)IO.O和IO.1或者Q4.0和IO.1觸點(diǎn)都接通后,線圈Q4.0才能接通(被激勵(lì)),只要其中一個(gè)觸點(diǎn)不接通,線圈就不會(huì)接通。
要強(qiáng)調(diào)指出的是,引入“能流”的概念,僅僅是為了和繼電接觸器控制系統(tǒng)相比較,可以對(duì)梯形圖有一個(gè)深入的認(rèn)識(shí),其實(shí)“能流”在梯形圖中是不存在的。
梯形圖中的觸點(diǎn)和線圈可以使用物理地址,如IO.1、Q4.0等。如果在符號(hào)表中對(duì)某些地址定義了符號(hào),例如,令I(lǐng)O.O的符號(hào)為“啟動(dòng)”,在程序中可用符號(hào)地址“啟動(dòng)”來代替物理地址IO.1,使程序便以閱讀和理解。
用戶可以在網(wǎng)絡(luò)號(hào)的右邊加上網(wǎng)絡(luò)的標(biāo)題,在網(wǎng)絡(luò)號(hào)的下面為網(wǎng)絡(luò)加上注釋。還可以選擇在梯形圖下面自動(dòng)加上該網(wǎng)絡(luò)中使用符號(hào)的信息( Symbol Information)。
如果將兩塊獨(dú)立電路放在同一個(gè)網(wǎng)絡(luò)內(nèi)將會(huì)出錯(cuò)。如果沒有跳轉(zhuǎn)指令,網(wǎng)絡(luò)中程序的邏輯運(yùn)算按從左到右的方向執(zhí)行,與“能流”的方向*。網(wǎng)絡(luò)之間按從上到下的順序執(zhí)行,執(zhí)行完所有的網(wǎng)絡(luò)后,下一次循環(huán)返回上面的網(wǎng)絡(luò)(網(wǎng)絡(luò)1)重新開始執(zhí)行。
2.語(yǔ)句表(STL)
語(yǔ)句表(STL)編程語(yǔ)言類似于計(jì)算機(jī)中的助記符語(yǔ)言,它是PLC基礎(chǔ)的編程語(yǔ)言。所謂語(yǔ)句表編程,使用一個(gè)或者幾個(gè)容易記憶的字符來代表PLC的某種操作功能。它是一種類似于微機(jī)的匯編語(yǔ)言中的文本語(yǔ)言,多條語(yǔ)句組成一個(gè)程序段。語(yǔ)句表比較適合經(jīng)驗(yàn)豐富的程序員使用,可以實(shí)現(xiàn)某些不能用梯形圖或者功能塊圖表示的功能。
圖2-2所示為與圖2-1梯形圖所對(duì)應(yīng)的語(yǔ)句表。
3.功能塊圖(FBD)
功能塊圖(FBD)使用類似于布爾代數(shù)的圖形邏輯符號(hào)來表示控制邏輯。一些復(fù)雜的功能(例如數(shù)學(xué)運(yùn)算功能等)用指令框來表示,有數(shù)字電路基礎(chǔ)的人很容易掌握。功能塊圖用類似于與門、或門的方框來表示邏輯運(yùn)算關(guān)系,方框的左側(cè)為邏輯運(yùn)算的輸入變量,右側(cè)為輸出變量,輸入、輸出端的小圓圈表示“非”運(yùn)算,方框被“導(dǎo)線”連接在一起,信號(hào)自左向右流動(dòng)。
利用FBD可以查看到像普通邏輯門圖形的邏輯盒指令。它沒有梯形圖編程器中的觸點(diǎn)和線圈,但有與之等價(jià)的指令,這些指令是作為盒指令出現(xiàn)的,程序邏輯由這些盒指令之間的連接決定。也就說,一個(gè)指令(如AND盒)的輸出可以用來允許另一個(gè)指令(如定時(shí)器),這樣可以建立所需要的控制邏輯。這樣的連接思想可以解決范圍廣泛的邏輯問題。FBD編程語(yǔ)言有利于程序流的跟蹤,但在目前使用較少。
貴州西門子S7-1500PLC模塊代理(優(yōu)勢(shì)價(jià)格)