王生彬
王生斌
級別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 641 個
工控威望: 1792 點(diǎn)
下載積分: 6031 分
在線時間: 251(小時)
注冊時間: 2007-09-07
最后登錄: 2024-11-06
查看王生彬的 主題 / 回貼
樓主  發(fā)表于: 2009-07-16 11:37
  
西門子PLC S7-200的程序結(jié)構(gòu)

  
1
推薦S7-200的程序有三種:主程序、子程序、中斷程序。
主程序只有一個,名稱為OB1。
子程序可以達(dá)到64個,名稱分別為SBR0~SBR63。子程序可以由子程序或中斷程序調(diào)用。
中斷程序可以達(dá)到128個,名稱分別為INT0~INT127。中斷方式有輸入中斷、定時中斷、高速計數(shù)中斷、通信中斷等中斷事件引發(fā),當(dāng)CPU響應(yīng)中斷時,可以執(zhí)行中斷程序。
由這三種程序可以組成線性程序和分塊程序兩種結(jié)構(gòu)。
一、線性程序結(jié)構(gòu)
_線性程序是指一個工程的全部控制任務(wù)都按照工程控制的順序?qū)懺谝粋程序中,比如寫在OB1中。程序執(zhí)行過程中,CPU不斷地掃描OB1,按照事先準(zhǔn)備好的順序去執(zhí)行工作,如圖:
顯然,線性程序結(jié)構(gòu)簡單,一目了然。但是,當(dāng)控制工程大到一定程序之后,僅僅采用線性程序就會使整個程序變得龐大而難于編制、難于調(diào)試了。
二、分塊程序結(jié)構(gòu)
分塊程序是指一個工程的全部控制任務(wù)被分成多個小的任務(wù)塊,每個任務(wù)塊的控制任務(wù)根據(jù)具體情況分別放到子程序中,或者放到中斷程序中。程序執(zhí)行過程中,CPU不斷地調(diào)用這些子程序或者被中斷程序中斷,  
分塊程序雖然結(jié)構(gòu)復(fù)雜一些,但是可以把一個復(fù)雜的過程分解成多個簡單的過程。對于具體的程序塊容易編寫,容易調(diào)試。從總體上看,分塊程序的優(yōu)勢是十分明顯的。