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

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