<li id="8g3ty"><tbody id="8g3ty"><th id="8g3ty"></th></tbody></li>
    <label id="8g3ty"><samp id="8g3ty"></samp></label>
  • <span id="8g3ty"></span>

    1. <center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
    2. <bdo id="8g3ty"><meter id="8g3ty"><bdo id="8g3ty"></bdo></meter></bdo><center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
      <label id="8g3ty"><samp id="8g3ty"></samp></label>

    3. 電子開發網

      電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
      搜索: 您現在的位置: 電子開發網 >> 電子開發 >> PLC基礎入門教程 >> 正文

      西門子S7-200PLC的程序結構

      作者:佚名    文章來源:網絡整理    點擊數:    更新時間:2025/1/7

      S7-200的程序有三種:主程序、子程序、中斷程序。

      主程序只有一個,名稱為OB1。

      子程序可以達到64個,名稱分別為SBR0~SBR63。子程序可以由子程序或中斷程序調用。

      中斷程序可以達到128個,名稱分別為INT0~INT127。中斷方式有輸入中斷、定時中斷、高速計數中斷、通信中斷等中斷事件引發,當CPU響應中斷時,可以執行中斷程序。

      由這三種程序可以組成線性程序和分塊程序兩種結構。

      一、線性程序結構

      _線性程序是指一個工程的全部控制任務都按照工程控制的順序寫在一個程序中,比如寫在OB1中。程序執行過程中,CPU不斷地掃描OB1,按照事先準備好的順序去執行工作,如圖:

      顯然,線性程序結構簡單,一目了然。但是,當控制工程大到一定程序之后,僅僅采用線性程序就會使整個程序變得龐大而難于編制、難于調試了。

      二、分塊程序結構

      分塊程序是指一個工程的全部控制任務被分成多個小的任務塊,每個任務塊的控制任務根據具體情況分別放到子程序中,或者放到中斷程序中。程序執行過程中,CPU不斷地調用這些子程序或者被中斷程序中斷,

      分塊程序雖然結構復雜一些,但是可以把一個復雜的過程分解成多個簡單的過程。對于具體的程序塊容易編寫,容易調試。從總體上看,分塊程序的優勢是十分明顯的。



      西門子S7-200plc用戶程序可以采用主、子程序結構或普通線性化結構。當采用普通線性化結構時,只需要編制主程序OBl;當采用主、子程序式分塊結構時,PLC程序由主程序(OBl)、子程序(SBRn)、中斷程序( INRn)等組成。
      S7-200 PLC的主、子程序結構對程序塊的內部排列有規定的要求。主程序(OBl)必須進行編寫,且位于程序的最前面;隨后是子程序( SBRn)與中斷程序(INRn)。在S7-200中,子程序(SBRn)、中斷程序(INRn)可以根據需要進行選用與編寫。
      (1)主程序
      S7-200主程序代號規定為OB1。早期的S7-200 PLC用戶程序不分塊,需要在主程序之后接著安排子程序與中斷程序,因此,主程序的結束應使用指令MEND作為標記。但如果使用的是Micro/WIN32編程軟件,主程序、子程序、中斷程序都可以通過獨立的區域進行編程,通過編程軟件的自動編譯功能,可以對程序進行自動的編排與調整,主程序的結束無須再編寫指令MEND,如圖1 (a)所示。

      S7-200的程序結構與執行過程 
      圖1 S7-200的程序結構與執行過程
      主程序081在S7-200 PLC中為用戶程序的組織、管理者,必須位于PLC用戶程序的最前面,以保證每次執行PLC循環時,首先對OB1進行掃描。
      同樣,早期的S7-200在子程序結束處應使用指令RET作為返回標記,子程序SRBn必須編在主程序OB1的結束指令MEND之后。采用了Micro/WIN32編程軟件后,這些由編程軟件進行自動編排與調整。
      子程序SRBn在S7-200 PLC中為可選部分,可以編寫也可以不編寫。子程序的執行通過主程序OB1的對該子程序的調用實現,并非每次PLC循環都需要執行全部子程序。
      (3)中斷程序
      S7-200 PLC的中斷程序代號為INTn(n為十進制數值,可以是0--127),用于區別不同的中斷程序。早期的中斷程序結束應使用指令RETI作為返回標記,中斷程序INTn同樣必須編在主程序OB1的結束指令MEND之后,且習慣上是放在子程序SRBn之后(也可以放在子程序之前)。
      中斷程序INTn在S7-200中同樣為可以選擇的部分,它需要通過主程序OB1的調用才能執行,并非每次PLC循環都需要執行全部中斷程序。
      S7-200的程序結構與執行過程如圖1 (c)所示。
      (4)局部變量堆棧
      在進行PLC程序設計時,程序中有很多為了簡化邏輯塊結構而設置的臨時狀態、數據存儲單元,這些存儲單元實際上只是為了方便編程、檢查而設的臨時存儲單元,它與邏輯外部的程序無關,在S7中將其稱為“局部變量”或“臨時變量(Temp)”。
      根據需要,設計者可以在S7-200的OB1、SBRn、INTn中使用“臨時變量”。“臨時變量”存儲在局部變量數據堆棧(L)中,這一區域為全部程序塊所公用,只可以用于OB1或SBRn、INTn塊內部使用的中間運算結果寄存(這些中間運算結果不可以用于塊外部)。局部變量堆棧在程序塊執行完成后,數據將被其他邏輯所需要的內容所替代。
      如果需要保存可以用于其他邏輯塊的狀態,應使用PLC的內部標志寄存器M或變量存儲器V。

      Tags:S7-200PLC,程序結構  
      責任編輯:admin
      請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
      1分 2分 3分 4分 5分

      還可以輸入 200 個字
      [ 查看全部 ] 網友評論
      推薦文章
      最新推薦
      關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
      返回頂部
      刷新頁面
      下到頁底
      晶體管查詢
      主站蜘蛛池模板: 青青青国产色视频在线观看国产亚洲欧洲国产综合 | 91精品国产色综合久久| 国产成人综合亚洲一区| 狠狠色丁香婷婷综合久久片| 伊人狠狠色丁香综合尤物| 亚洲国产精品综合久久网各| 一本狠狠色丁香婷婷综合久久| 亚洲伊人久久综合影院| 久久精品亚洲综合专区| 色九月亚洲综合网| 亚洲综合一区二区| 国产综合精品一区二区三区| 香蕉尹人综合在线观看| 国产综合精品女在线观看| 九月婷婷综合婷婷| 开心婷婷五月激情综合社区| 久久综合九色综合欧洲| 五月综合色婷婷在线观看| 亚洲熟女综合色一区二区三区| 亚洲综合无码AV一区二区| 狠狠综合久久综合中文88 | 国产成人亚洲综合色影视| 狠狠色狠狠色很很综合很久久| 一本色道久久88加勒比—综合| 一本一道色欲综合网中文字幕| 国产成人亚洲综合网站不卡| 色综合久久综合中文综合网| 国产激情电影综合在线看 | 色综合久久88色综合天天| 国产成+人+综合+亚洲专| 亚洲国产成人久久综合碰| 一本久久综合亚洲鲁鲁五月天| 色偷偷亚洲第一综合网| 国产亚洲综合久久| 人妻一本久道久久综合久久鬼色| 本道久久综合无码中文字幕| 国产精品综合在线| 综合久久国产九一剧情麻豆| 国产色婷婷五月精品综合在线| 久久综合琪琪狠狠天天| AV色综合久久天堂AV色综合在|