產(chǎn)品分類品牌分類
-
西門(mén)子安裝導(dǎo)軌 西門(mén)子模塊 西門(mén)子DP接頭/插頭 西門(mén)子內(nèi)存卡 西門(mén)子PLC模塊 西門(mén)子電池/電源 西門(mén)子S7-1500 西門(mén)子S7-200模塊 西門(mén)子S7-300模塊 西門(mén)子觸摸屏 西門(mén)子變頻器 西門(mén)子S7-1200 西門(mén)子開(kāi)關(guān)量輸出模塊 西門(mén)子模擬量輸入模板 西門(mén)子網(wǎng)卡及電纜 西門(mén)子S7-400模塊 西門(mén)子400 CPU模塊 西門(mén)子400 電源模塊 西門(mén)子SMART PLC模塊 西門(mén)子電線電纜 西門(mén)子通信卡,網(wǎng)卡 西門(mén)子連接器
淺談S7-200SMART 程序結(jié)構(gòu)之功能塊河南
一、程序結(jié)構(gòu)
SIEMNES S7-200SMART PLC中的程序結(jié)構(gòu)分為三種:
(1)線性化編程
(2)功能塊化編程
(3)結(jié)構(gòu)化編程
線性化編程:就是把所有的程序全寫(xiě)在MAIN(主程序)中;不適合做程序的調(diào)試和修改,實(shí)際應(yīng)用中我們不常用且不推薦
功能塊化編程:也稱之為子程序;在實(shí)際的程序編寫(xiě)中,根據(jù)控制任務(wù)進(jìn)行結(jié)構(gòu)劃分,每個(gè)子程序完后一個(gè)功能(工藝要求),然后根據(jù)條件去調(diào)用相應(yīng)的子程序來(lái)實(shí)現(xiàn)對(duì)應(yīng)的功能運(yùn)行;可讓程序結(jié)構(gòu)清晰,明了;也方便調(diào)試和程序的修改。在實(shí)際應(yīng)用中是我們常用的方式之一。
結(jié)構(gòu)化編程:又稱為帶形式參數(shù)的子程序;在功能塊化編程的基礎(chǔ)上再一次優(yōu)化,可生成庫(kù)指令調(diào)用,當(dāng)功能指令賦予不同的實(shí)參反復(fù)使用,并且適合項(xiàng)目的移植。
二、程序特點(diǎn)
子程序可以把整個(gè)用戶程序按照功能進(jìn)行結(jié)構(gòu)化的組織。一個(gè)“好”的程序總是把全部的控制功能分為幾個(gè)符合工藝控制規(guī)律的子功能塊,每個(gè)子功能塊可以由一個(gè)或多個(gè)子程序組成。
這樣的結(jié)構(gòu)也非常有利于分步調(diào)試,以免許多功能綜合在一起無(wú)法判斷問(wèn)題的所在;而且,幾個(gè)類似的項(xiàng)目也只需要對(duì)同一個(gè)程序作簡(jiǎn)單的修改就能使用
子程序特點(diǎn)如下:
1、更好的組織程序結(jié)構(gòu),便于調(diào)試和閱讀;
2、子程序在執(zhí)行到末尾時(shí)自動(dòng)返回,不必加返回指令;
3、子程序不能使用跳轉(zhuǎn)語(yǔ)句跳入、跳出;
4、S7-200 SMART CPU多可以調(diào)用128個(gè)子程序;
5、子程序可以嵌套調(diào)用,即子程序中再調(diào)用子程序,一共可以嵌套8層
6、子程序可以帶參數(shù)調(diào)用,在子程序的局部變量表中設(shè)置參數(shù)的類型
7、子程序分為帶參數(shù)的子程序和不帶參數(shù)的子程序
8、帶參數(shù)的子程序會(huì)使用局部存儲(chǔ)器L來(lái)建立變量
9、子程序在調(diào)用時(shí),系統(tǒng)會(huì)給子程序分配想要的局部存儲(chǔ)器
10、子程序在調(diào)用結(jié)束后,局部存儲(chǔ)區(qū)會(huì)釋放出來(lái),但不會(huì)對(duì)其進(jìn)行初始化
三、子程序接口區(qū)定義
需要建立帶參數(shù)的子程序,則在編寫(xiě)子程序時(shí),需要在子程序的變量表里面編寫(xiě)相應(yīng)的形式參數(shù)變量,編寫(xiě)完成后,在填寫(xiě)程序時(shí)使用編寫(xiě)的形式參數(shù)變量進(jìn)行編程
輸入變量 (IN ):可讀變量(只能對(duì)它的數(shù)據(jù)進(jìn)行讀取,不能修改它的狀態(tài))用于外圍的數(shù)據(jù)或狀態(tài)傳入到子程序的對(duì)應(yīng)形參中以便后續(xù)運(yùn)算
輸入輸出變量 (IN/OUT):可讀可寫(xiě)變量,子程序被調(diào)用時(shí)先把子程序的初始值傳入到子程序內(nèi)部運(yùn)算,運(yùn)算完后,再把運(yùn)算結(jié)果放回到該地址中存儲(chǔ),以便下一次使用。
輸出變量(OUT ):運(yùn)算結(jié)果就該變量輸出給外圍的實(shí)參變量
臨時(shí)變量(TEMP):用于暫存中間的運(yùn)算結(jié)果,該變量若用于運(yùn)算時(shí),首先要知道其確定的值。
變量表的地址就是局部存儲(chǔ)區(qū)L,其根據(jù)符號(hào)和數(shù)據(jù)類型自動(dòng)生成,無(wú)需手動(dòng)添加;