車和陽主講:西門子 PLC 從入門到精通初級教程(6)_程序設計._第1頁
車和陽主講:西門子 PLC 從入門到精通初級教程(6)_程序設計._第2頁
車和陽主講:西門子 PLC 從入門到精通初級教程(6)_程序設計._第3頁
車和陽主講:西門子 PLC 從入門到精通初級教程(6)_程序設計._第4頁
車和陽主講:西門子 PLC 從入門到精通初級教程(6)_程序設計._第5頁
已閱讀5頁,還剩67頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第第5 5章章 S7S7程序結構與程序設計程序結構與程序設計 5.55.5 編輯并調用有參功能(編輯并調用有參功能(FCFC)結構化程序設計結構化程序設計5.65.6 編輯并調用無靜態(tài)參數(shù)的功能塊(編輯并調用無靜態(tài)參數(shù)的功能塊(FBFB)5.75.7 編輯并調用有靜態(tài)參數(shù)的功能塊(編輯并調用有靜態(tài)參數(shù)的功能塊(FBFB)5.85.8 使用多重背景使用多重背景結構化程序設計結構化程序設計 所謂所謂有參功能有參功能(FCFC),是指編輯功能(),是指編輯功能(FCFC)時,在局部)時,在局部變量聲明表內定義了形式參數(shù),在功能(變量聲明表內定義了形式參數(shù),在功能(FCFC)中使用了)中使用了虛擬虛擬

2、的符號地址的符號地址完成控制程序的編程,以便在其他塊中能重復調完成控制程序的編程,以便在其他塊中能重復調用有參功能(用有參功能(FCFC)。這種方式一般應用于結構化程序編寫。)。這種方式一般應用于結構化程序編寫。5.5.1 5.5.1 編輯有參功能(編輯有參功能(FCFC) 5.5.2 5.5.2 在在OB1OB1中調用有參功能(中調用有參功能(FCFC)5.5 5.5 編輯并調用有參功能(編輯并調用有參功能(FCFC)結構化程序設計結構化程序設計 【例例5-5-15-5-1】 多級分頻器控制程序設計。多級分頻器控制程序設計。 本例擬在功能本例擬在功能FC1FC1中編寫二分頻器控制程序,然后在

3、中編寫二分頻器控制程序,然后在OB1OB1中通過調用中通過調用FC1FC1實現(xiàn)多級分頻器的功能。多級分頻器的時序實現(xiàn)多級分頻器的功能。多級分頻器的時序關系如圖所示。其中關系如圖所示。其中I0.0I0.0為多級分頻器的脈沖輸入端;為多級分頻器的脈沖輸入端;Q4.0Q4.0Q4.3Q4.3分別為分別為2 2、4 4、8 8、1616分頻的脈沖輸出端;分頻的脈沖輸出端;Q4.4Q4.4Q4.7Q4.7分別為分別為2 2、4 4、8 8、1616分頻指示燈驅動輸出端。分頻指示燈驅動輸出端。I0.0Q4.0/Q4.4/M0.0Q4.1/Q4.5/M0.1Q4.2/Q4.6/M0.2Q4.3/Q4.7/M

4、0.312345678910111213141516171819202122232425262728293031325.5.1 5.5.1 編輯有參功能(編輯有參功能(FCFC) 創(chuàng)建多級分頻器的創(chuàng)建多級分頻器的S7S7項目項目硬件配置硬件配置編寫符號表編寫符號表 規(guī)劃程序結構規(guī)劃程序結構 創(chuàng)建有參功能創(chuàng)建有參功能FC1 FC1 1.1.創(chuàng)建多級分頻器的創(chuàng)建多級分頻器的S7S7項目項目 使用菜單使用菜單【FileFile】【“New ProjectNew Project”WizardWizard】創(chuàng)建多創(chuàng)建多級分頻器的級分頻器的S7S7項目,并命名為項目,并命名為“有參有參FCFC”。2.2.

5、硬件配置硬件配置 打開打開“SIMATIC 300 StationSIMATIC 300 Station”文件夾,雙擊硬件配置圖文件夾,雙擊硬件配置圖標打開硬件配置窗口,并按圖所示完成標打開硬件配置窗口,并按圖所示完成硬件配置硬件配置。3. 3. 編寫符號表編寫符號表 4. 4. 規(guī)劃程序結構規(guī)劃程序結構 OB1 主循環(huán) 調用 FC1:實現(xiàn) 2 分頻 調用 FC1: 實現(xiàn) 4 分頻 調用 FC1: 實現(xiàn) 8 分頻 調用 FC1: 實現(xiàn) 16 分頻 操作系統(tǒng) 5. 5. 創(chuàng)建有參創(chuàng)建有參FC1 FC1 選擇選擇“有參有參FCFC”項目的項目的“BlocksBlocks”文件夾,然后執(zhí)行菜單文件夾

6、,然后執(zhí)行菜單命令命令【InsertInsert】【S7 BlockS7 Block】【FunctionFunction】,在塊文件,在塊文件夾夾內創(chuàng)建一個功能,并命名為內創(chuàng)建一個功能,并命名為“FC1FC1”。編輯編輯FC1FC1的變量聲明表的變量聲明表 在在FC1FC1的變量聲明表內,聲明的變量聲明表內,聲明4 4個參數(shù),見下表。個參數(shù),見下表。編輯編輯FC1FC1的控制程序的控制程序 二分頻器的時序如圖所示。分析二分頻器的時序圖可二分頻器的時序如圖所示。分析二分頻器的時序圖可以看到,輸入信號每出現(xiàn)一個上升沿,輸出便改變一次狀以看到,輸入信號每出現(xiàn)一個上升沿,輸出便改變一次狀態(tài),據(jù)此可采用

7、上跳沿檢測指令實現(xiàn)。態(tài),據(jù)此可采用上跳沿檢測指令實現(xiàn)。 S_INS_OUTF_P 如果輸入信號如果輸入信號S_INS_IN出現(xiàn)上升沿,則對出現(xiàn)上升沿,則對S_OUTS_OUT取反,然后取反,然后將將S_OUTS_OUT的信號狀態(tài)送的信號狀態(tài)送LEDLED顯示;否則,程序直接跳轉到顯示;否則,程序直接跳轉到LP1LP1,將將S_OUTS_OUT的信號狀態(tài)送的信號狀態(tài)送LEDLED顯示。顯示。 FC1FC1的控制程序的控制程序5.5.2 5.5.2 在在OB1OB1中調用有參功能(中調用有參功能(FCFC) 使使用用絕絕對對地地址址使使用用符符號號地地址址 功能塊(功能塊(FBFB)在程序的體系結

8、構中位于組織塊之下。它)在程序的體系結構中位于組織塊之下。它包含程序的一部分,這部分程序在包含程序的一部分,這部分程序在OB1OB1中可以多次調用。功中可以多次調用。功能塊的所有能塊的所有形參形參和和靜態(tài)數(shù)據(jù)靜態(tài)數(shù)據(jù)都存儲在一個單獨的、被指定給都存儲在一個單獨的、被指定給該功能塊的數(shù)據(jù)塊(該功能塊的數(shù)據(jù)塊(DBDB)中,該數(shù)據(jù)塊被稱為)中,該數(shù)據(jù)塊被稱為背景數(shù)據(jù)塊背景數(shù)據(jù)塊。當調用當調用FBFB時,該背景數(shù)據(jù)塊會自動打開,實際參數(shù)的值被存時,該背景數(shù)據(jù)塊會自動打開,實際參數(shù)的值被存儲在背景數(shù)據(jù)塊中;當塊退出時,背景數(shù)據(jù)塊中的數(shù)據(jù)仍然儲在背景數(shù)據(jù)塊中;當塊退出時,背景數(shù)據(jù)塊中的數(shù)據(jù)仍然保持。保持

9、。 5.6.1 5.6.1 編輯無靜態(tài)參數(shù)的功能塊(編輯無靜態(tài)參數(shù)的功能塊(FBFB)5.6.2 5.6.2 在在OB1OB1中調用無靜態(tài)參數(shù)的功能塊(中調用無靜態(tài)參數(shù)的功能塊(FBFB) 5.6 5.6 編輯無靜參的功能塊(編輯無靜參的功能塊(FB FB )【例例5-6-15-6-1】 水箱水位控制系統(tǒng)程序設計。水箱水位控制系統(tǒng)程序設計。 Y2 Y1 UL1 UH1 Y4 Y3 UL2 UH2 Y6 Y5 UL3 UH3 水箱 1 水箱 2 水箱 3 SB1 SB2 SB3 SB4 SB5 SB6 【例例5-6-15-6-1】 系統(tǒng)有系統(tǒng)有3 3個貯水箱,每個水箱有個貯水箱,每個水箱有2 2

10、個液位傳感器,個液位傳感器,UH1UH1,UH2UH2,UH3UH3為高液位傳感器,為高液位傳感器,“1 1”有效;有效;UL1UL1,UL2UL2,UL3UL3為低為低液位傳感器,液位傳感器,“0 0”有效。有效。Y1Y1、Y3Y3、Y5Y5分別為分別為3 3個貯水水箱進個貯水水箱進水電磁閥;水電磁閥;Y2Y2、Y4Y4、Y6Y6分別為分別為3 3個貯水水箱放水電磁閥。個貯水水箱放水電磁閥。SB1SB1、SB3SB3、SB5SB5分別為分別為3 3個貯水水箱放水電磁閥手動開啟按鈕;個貯水水箱放水電磁閥手動開啟按鈕;SB2SB2、SB4SB4、SB6SB6分別為分別為3 3個貯水箱放水電磁閥手

11、動關閉按鈕。個貯水箱放水電磁閥手動關閉按鈕。 控制要求控制要求:SB1SB1、SB3SB3、SB5SB5在在PLCPLC外部操作設定,通過人外部操作設定,通過人為的方式,按隨機的順序將水箱放空。只要檢測到水箱為的方式,按隨機的順序將水箱放空。只要檢測到水箱“空空”的信號,系統(tǒng)就自動地向水箱注水,直到檢測到水箱的信號,系統(tǒng)就自動地向水箱注水,直到檢測到水箱“滿滿”信號為止。水箱注水的順序要與水箱放空的順序相同,每次信號為止。水箱注水的順序要與水箱放空的順序相同,每次只能對一個水箱進行注水操作。只能對一個水箱進行注水操作。 5.6.1 5.6.1 編輯無靜態(tài)參數(shù)的功能塊(編輯無靜態(tài)參數(shù)的功能塊(F

12、BFB) 創(chuàng)建創(chuàng)建S7S7項目項目硬件配置硬件配置編寫符號表編寫符號表 規(guī)劃程序結構規(guī)劃程序結構 編輯功能塊(編輯功能塊(FBFB) 建立背景數(shù)據(jù)塊(建立背景數(shù)據(jù)塊(DIDI) 編輯啟動組織塊編輯啟動組織塊OB100 OB100 1.1.創(chuàng)建創(chuàng)建S7S7項目項目 使用菜單使用菜單【FileFile】【“New ProjectNew Project”WizardWizard】創(chuàng)建水創(chuàng)建水箱水位控制系統(tǒng)的箱水位控制系統(tǒng)的S7S7項目,并命名為項目,并命名為“無靜參無靜參FBFB”。項目包。項目包含含組織塊組織塊OB1OB1和和OB100OB100。2.2.硬件配置硬件配置 在在“無靜參無靜參FBF

13、B”項目內打開項目內打開“SIMATIC 300 StationSIMATIC 300 Station”文文件夾,打開硬件配置窗口,并按圖所示完成件夾,打開硬件配置窗口,并按圖所示完成硬件配置硬件配置。 3.3.編寫符號表編寫符號表4.4.規(guī)劃程序結構規(guī)劃程序結構 背景 D B 2 背景 D B1 OB1 OB100 FB1 F B1 正 常 循 環(huán) 啟動 背景 D B 3 F B1 5.5.編輯功能(編輯功能(FB1FB1) 在在“無靜參無靜參FBFB”項目內選擇項目內選擇“BlocksBlocks”文件夾,執(zhí)行菜單文件夾,執(zhí)行菜單命令命令【InsertInsert】【S7 S7 Block

14、Block】【FunctionFunction Block Block】,創(chuàng),創(chuàng)建功能塊建功能塊FB1FB1。由于在符號表內已經(jīng)為。由于在符號表內已經(jīng)為FB1FB1定義了符號名,因定義了符號名,因此此在在FB1FB1的屬性對話框內系統(tǒng)會自動添加符號名的屬性對話框內系統(tǒng)會自動添加符號名“水箱控制水箱控制”。定義局部變量聲明表定義局部變量聲明表編寫程序代碼編寫程序代碼定義局部變量聲明表定義局部變量聲明表 與功能(與功能(FCFC)不同,在功能塊()不同,在功能塊(FBFB)參數(shù)表內還有擴)參數(shù)表內還有擴展地址(展地址(Exclusion addressExclusion address)和結束地址

15、()和結束地址(Termination Termination addressaddress)選項。)選項。 編寫程序代碼編寫程序代碼6.6.建立背景數(shù)據(jù)塊建立背景數(shù)據(jù)塊DB1DB1、DB2DB2、DB3DB37.7.編輯啟動組織塊編輯啟動組織塊OB100OB1005.6.2 在在OB1中調用無靜態(tài)參數(shù)的功能塊(中調用無靜態(tài)參數(shù)的功能塊(FB) 可調用的功能塊 FB1 在 OB1 內調用 FB1 為 FB1指定背景數(shù)據(jù)塊 為 FB1 賦實際參數(shù) OB1OB1控制程序控制程序 攪拌器 進料泵 1 進料泵 2 液位 傳感器+變送器 放料泵 啟動 停止 100% 50% 0% 液位顯示 料 C 料

16、A 料 B 起動 【例例5-6-25-6-2】 攪拌控制系統(tǒng)程序設計攪拌控制系統(tǒng)程序設計使用模擬量。使用模擬量。 上圖所示為一上圖所示為一攪拌控制系統(tǒng)攪拌控制系統(tǒng),由一個模擬量液位傳感器,由一個模擬量液位傳感器- -變送器來檢測液位的高低,并進行液位顯示。現(xiàn)要求對變送器來檢測液位的高低,并進行液位顯示?,F(xiàn)要求對A A、B B兩種液體原料按等比例混合,請編寫控制程序,控制要求兩種液體原料按等比例混合,請編寫控制程序,控制要求如下:如下: 按起動按鈕后系統(tǒng)自動運行,首先打開進料泵按起動按鈕后系統(tǒng)自動運行,首先打開進料泵1 1,開始,開始加入液料加入液料AA當液位達到當液位達到50%50%后,則關閉

17、進料泵后,則關閉進料泵1 1,打開進料,打開進料泵泵2 2,開始加入液料,開始加入液料BB當液位達到當液位達到100%100%后,則關閉進料泵后,則關閉進料泵2 2,起動攪拌器起動攪拌器攪拌攪拌10s10s后,關閉攪拌器,開啟放料泵后,關閉攪拌器,開啟放料泵當液當液料放空后,延時料放空后,延時5s5s后關閉放料泵。按停止按鈕,系統(tǒng)應立即后關閉放料泵。按停止按鈕,系統(tǒng)應立即停止運行。停止運行。 1.1.創(chuàng)建創(chuàng)建S7S7項目項目 使用菜單使用菜單【FileFile】【“New ProjectNew Project”WizardWizard】創(chuàng)建攪創(chuàng)建攪拌控制系統(tǒng)的拌控制系統(tǒng)的S7S7項目,并命名為

18、項目,并命名為“FCFC與與FBFB”。2.2.硬件配置硬件配置 在在“FCFC與與FBFB”項目內打開項目內打開“SIMATIC 300 StationSIMATIC 300 Station”文件文件夾,打開硬件配置窗口,并按圖下完成硬件配置。夾,打開硬件配置窗口,并按圖下完成硬件配置。 修 改 模修 改 模塊的模擬量塊的模擬量輸入通道和輸入通道和輸出通道的輸出通道的起始地址均起始地址均為為 2 5 62 5 6 。 取消選擇 修改模塊輸入通道起始地址為256 取消選擇 修改模塊輸出通道起始地址為 256 確認修改 3.3.編輯符號表編輯符號表4.4.規(guī)劃程序結構規(guī)劃程序結構 背景 DB2

19、背景 DB1 OB1 OB100 FB1 FB1 FC1 FC2 正 常 循 環(huán) 啟動 OB1 OB1為主循環(huán)組為主循環(huán)組織塊;織塊;OB100OB100為啟動為啟動組織塊;組織塊;FC1FC1實現(xiàn)攪實現(xiàn)攪拌控制;拌控制;FC2FC2實現(xiàn)放實現(xiàn)放料控制;料控制;FB1FB1通過調通過調用用DB1DB1和和DB2DB2實現(xiàn)液料實現(xiàn)液料A A和液料和液料B B的進料控制;的進料控制;DB1DB1和和DB2DB2為液料為液料A A和和液料液料B B進料控制的背進料控制的背景數(shù)據(jù)塊,在調用景數(shù)據(jù)塊,在調用FB1FB1時為時為FB1FB1提供實際提供實際參數(shù),并保存過程結參數(shù),并保存過程結果。果。 5.

20、5.創(chuàng)建無參功能(創(chuàng)建無參功能(FC1FC1、FC2FC2)(1/2)(1/2)FC1FC1控制程序控制程序 5.5.創(chuàng)建無參功能(創(chuàng)建無參功能(FC1FC1、FC2FC2)(2/2)(2/2)FC2FC2控制程序控制程序6.6.創(chuàng)建無靜態(tài)參數(shù)的功能塊(創(chuàng)建無靜態(tài)參數(shù)的功能塊(FB1 )定義定義FB1FB1的局部變量聲明表的局部變量聲明表編寫編寫FB1FB1控制程序控制程序7.7.建立背景數(shù)據(jù)塊(建立背景數(shù)據(jù)塊(DB1、DB2) 在在“FCFC與與FBFB”項目內選擇項目內選擇“BlocksBlocks”文件夾,執(zhí)行菜單命文件夾,執(zhí)行菜單命令令【InsertInsert】【S7 BlockS7

21、 Block】【Data BlockData Block】,創(chuàng)建與,創(chuàng)建與FB1FB1相關聯(lián)的背景數(shù)據(jù)塊相關聯(lián)的背景數(shù)據(jù)塊DB1DB1和和DB2DB2。STEP 7STEP 7自動為自動為DB1DB1和和DB2DB2構建構建了與了與FB1FB1完全相同的數(shù)據(jù)結構,如下圖所示。完全相同的數(shù)據(jù)結構,如下圖所示。 8.8.在在OB1OB1中調用中調用FC1FC1、FC2FC2和和FB1 FB1 OB1OB1的控制程序的控制程序OB1OB1的控制程序的控制程序OB1OB1的控制程序的控制程序9.9.編寫啟動組織塊編寫啟動組織塊OB100OB100的控制程序的控制程序5.7 5.7 編輯并調用有靜態(tài)參數(shù)

22、的功能塊編輯并調用有靜態(tài)參數(shù)的功能塊 在編輯功能塊(在編輯功能塊(FBFB)時,如果程序中需要特定數(shù)據(jù)的參)時,如果程序中需要特定數(shù)據(jù)的參數(shù),可以考慮將該特定數(shù)據(jù)定義為數(shù),可以考慮將該特定數(shù)據(jù)定義為靜態(tài)參數(shù)靜態(tài)參數(shù),并在,并在FBFB的聲明的聲明表內表內STATSTAT處聲明。處聲明。 下面以交通信號燈控制系統(tǒng)的設計為例,介紹如何編輯下面以交通信號燈控制系統(tǒng)的設計為例,介紹如何編輯和調用有靜態(tài)參數(shù)的功能塊。和調用有靜態(tài)參數(shù)的功能塊。5.7.1 5.7.1 編輯有靜態(tài)參數(shù)的功能塊(編輯有靜態(tài)參數(shù)的功能塊(FBFB)5.7.2 5.7.2 在在OB1OB1中調用有靜態(tài)參數(shù)的功能塊(中調用有靜態(tài)參數(shù)

23、的功能塊(FBFB)【例例5-7-15-7-1】 交通信號燈控制系統(tǒng)程序設計。交通信號燈控制系統(tǒng)程序設計。 北向 南向 東向 西向 紅 紅 紅 紅 黃 黃 黃 黃 綠 綠 綠 綠 上圖所示為雙干道交通信號燈設置示意圖。信號燈的動上圖所示為雙干道交通信號燈設置示意圖。信號燈的動作受開關總體控制,按一下起動按鈕,信號燈系統(tǒng)開始工作,作受開關總體控制,按一下起動按鈕,信號燈系統(tǒng)開始工作,并周而復始地循環(huán)動作;按一下停止按鈕,所有信號燈都熄并周而復始地循環(huán)動作;按一下停止按鈕,所有信號燈都熄滅。信號燈控制的具體要求見下表,試編寫信號燈控制程序。滅。信號燈控制的具體要求見下表,試編寫信號燈控制程序。 根

24、據(jù)十字路口交通信號燈的控制要求,可畫出信號燈的根據(jù)十字路口交通信號燈的控制要求,可畫出信號燈的控制時序圖控制時序圖。 南北向紅燈東西向綠燈東西向黃燈東西向紅燈南北向綠燈南北向黃燈2s3s45s2s3s25sNS_RNS_GNS_YEW_REW_GEW_Y5.7.1 5.7.1 編輯有靜態(tài)參數(shù)的功能塊(編輯有靜態(tài)參數(shù)的功能塊(FBFB) 創(chuàng)建創(chuàng)建S7項目項目 硬件配置硬件配置 編寫符號表編寫符號表 規(guī)劃程序結構規(guī)劃程序結構 編輯功能塊(編輯功能塊(FB) 建立背景數(shù)據(jù)塊(建立背景數(shù)據(jù)塊(DI) 編輯啟動組織塊編輯啟動組織塊OB100 1.1.創(chuàng)建創(chuàng)建S7S7項目項目 使用菜單使用菜單【FileF

25、ile】【“New ProjectNew Project”WizardWizard】創(chuàng)建創(chuàng)建交通信號燈控制系統(tǒng)的交通信號燈控制系統(tǒng)的S7S7項目,并命名為項目,并命名為“有靜參有靜參FBFB”。項目包項目包含組織塊含組織塊OB1OB1和和OB100OB100。2.2.硬件配置硬件配置 在在“有靜參有靜參FBFB”項目內打開項目內打開“SIMATIC 300 StationSIMATIC 300 Station”文件夾,打開硬件配置窗口,并按下圖所示完成硬件配文件夾,打開硬件配置窗口,并按下圖所示完成硬件配置。置。3.3.編寫符號表編寫符號表 背景 D B 2 背景 D B1 O B1 OB10

26、0 FB1 F B1 正 常 循 環(huán) 啟動 4.4.規(guī)劃程序結構規(guī)劃程序結構OB1OB1為主循環(huán)組織塊、為主循環(huán)組織塊、OB100OB100初初始化程序、始化程序、FB1FB1為單向紅綠燈為單向紅綠燈控制程序、控制程序、DB1DB1為東西數(shù)據(jù)塊、為東西數(shù)據(jù)塊、D B 2D B 2 為 南 北 數(shù) 據(jù) 塊 。為 南 北 數(shù) 據(jù) 塊 。 5.5.編輯功能塊(編輯功能塊(FBFB)定義局部變量聲明表定義局部變量聲明表 編寫程序代碼編寫程序代碼 6. 建立背景數(shù)據(jù)塊(建立背景數(shù)據(jù)塊(DI) 由于在創(chuàng)建由于在創(chuàng)建DB1DB1和和DB2DB2之前,已經(jīng)完成了之前,已經(jīng)完成了FB1FB1的變量聲明,的變量聲

27、明,建立了相應的數(shù)據(jù)結構,所以在創(chuàng)建與建立了相應的數(shù)據(jù)結構,所以在創(chuàng)建與FB1FB1相關聯(lián)的相關聯(lián)的DB1DB1和和DB2DB2時,時,STEP 7STEP 7自動完成了數(shù)據(jù)塊的數(shù)據(jù)結構。自動完成了數(shù)據(jù)塊的數(shù)據(jù)結構。 7.7.編輯啟動組織塊編輯啟動組織塊OB100 OB100 5.7.2 5.7.2 在在OB1OB1中調用有靜態(tài)參數(shù)的功能塊(中調用有靜態(tài)參數(shù)的功能塊(FBFB) 5.8 使用多重背景使用多重背景結構化程序設計結構化程序設計 使用多重背景可以有效地減少數(shù)據(jù)塊的數(shù)量,其編程思使用多重背景可以有效地減少數(shù)據(jù)塊的數(shù)量,其編程思想是創(chuàng)建一個比想是創(chuàng)建一個比FB1FB1級別更高的功能塊,如

28、級別更高的功能塊,如FB10FB10,將未作任,將未作任何修改的何修改的FB1FB1作為一個作為一個“局部背景局部背景”,在,在FB10FB10中調用。對于中調用。對于FB1FB1的每一個調用,都將數(shù)據(jù)存儲在的每一個調用,都將數(shù)據(jù)存儲在FB10FB10的背景數(shù)據(jù)塊的背景數(shù)據(jù)塊DB10DB10中。中。5.8.1 5.8.1 創(chuàng)建多重背景的創(chuàng)建多重背景的S7S7項目項目5.8.2 5.8.2 編輯功能(編輯功能(FCFC)5.8.3 5.8.3 編輯共享數(shù)據(jù)塊編輯共享數(shù)據(jù)塊 5.8.4 5.8.4 編輯功能塊(編輯功能塊(FBFB)5.8.5 5.8.5 生成多重背景數(shù)據(jù)塊生成多重背景數(shù)據(jù)塊DB1

29、0DB105.8.6 5.8.6 在在OB1OB1中調用功能中調用功能(FC)(FC)及上層功能塊及上層功能塊(FB)(FB)5.8.1 5.8.1 創(chuàng)建多重背景的創(chuàng)建多重背景的S7S7項目項目【例例5-8-15-8-1】 發(fā)動機組控制系統(tǒng)設計發(fā)動機組控制系統(tǒng)設計使用多重背景。使用多重背景。 設某發(fā)動機組由設某發(fā)動機組由1 1臺汽油發(fā)動機和臺汽油發(fā)動機和1 1臺柴油發(fā)動機組成,臺柴油發(fā)動機組成,現(xiàn)要求用現(xiàn)要求用PLCPLC控制發(fā)動機組,使各臺發(fā)動機的轉速穩(wěn)定在設控制發(fā)動機組,使各臺發(fā)動機的轉速穩(wěn)定在設定的速度上,并控制散熱風扇的起動和延時關閉。每臺發(fā)動定的速度上,并控制散熱風扇的起動和延時關閉

30、。每臺發(fā)動機均設置一個起動按鈕和一個停止按鈕。機均設置一個起動按鈕和一個停止按鈕。創(chuàng)建創(chuàng)建S7S7項目項目硬件配置硬件配置編寫符號表編寫符號表 規(guī)劃程序結構規(guī)劃程序結構 1. 1. 創(chuàng)建創(chuàng)建S7S7項目項目 使用菜單使用菜單【FileFile】【“New ProjectNew Project”WizardWizard】創(chuàng)建發(fā)創(chuàng)建發(fā)動機組控制系統(tǒng)的動機組控制系統(tǒng)的S7S7項目,并命名為項目,并命名為“多重背景多重背景”。CPUCPU選選擇擇CPU 315-2DPCPU 315-2DP,項目包含組織塊,項目包含組織塊OB1OB1。2. 2. 硬件配置硬件配置 在在“多重背景多重背景”項目內打開項目

31、內打開“SIMATIC 300 StationSIMATIC 300 Station”文文件夾,打開硬件配置窗口,并按下圖所示完成硬件配置。件夾,打開硬件配置窗口,并按下圖所示完成硬件配置。3.3.編輯符號表編輯符號表4.4.規(guī)劃程序結構規(guī)劃程序結構 FB10 FB10為上層功能塊,為上層功能塊,它把它把FB1FB1作為其作為其“局部實局部實例例”,通過二次調用本地,通過二次調用本地實例,分別實現(xiàn)對汽油機實例,分別實現(xiàn)對汽油機和柴油機的控制。這種調和柴油機的控制。這種調用不占用數(shù)據(jù)塊用不占用數(shù)據(jù)塊DB1DB1和和DB2DB2,它將每次調用(對于每個它將每次調用(對于每個調用實例)的數(shù)據(jù)存儲到調

32、用實例)的數(shù)據(jù)存儲到體系的上層功能塊體系的上層功能塊FB10FB10的的背 景 數(shù) 據(jù) 塊背 景 數(shù) 據(jù) 塊 D B 1 0D B 1 0中。中。 DB10 OB1 FC1,汽油發(fā)動機風扇控制 FC1,柴油發(fā)動機風扇控制 FB10 FB1,汽油發(fā)動機控制 FB1,柴油發(fā)動機控制 DB10 DB3,共享數(shù)據(jù) 操作系統(tǒng) 主 循 環(huán) 5.8.2 5.8.2 編輯功能(編輯功能(FCFC) 1.1.定義局部變量聲明表定義局部變量聲明表 FC1FC1用來實現(xiàn)發(fā)動機(汽油機或柴油機)的風扇控制,用來實現(xiàn)發(fā)動機(汽油機或柴油機)的風扇控制,按照控制要求,當發(fā)動機起動時,風扇應立即起動;當發(fā)動按照控制要求,當

33、發(fā)動機起動時,風扇應立即起動;當發(fā)動機停機后,風扇應延時關閉。因此機停機后,風扇應延時關閉。因此FC1FC1需要一個發(fā)動機起動需要一個發(fā)動機起動信號、一個風扇控制信號和一個延時定時器。信號、一個風扇控制信號和一個延時定時器。 2.2.編輯編輯FC1FC1的控制程序的控制程序 FC1 FC1所實現(xiàn)的控制要求:發(fā)動機起動時風扇起動,當發(fā)所實現(xiàn)的控制要求:發(fā)動機起動時風扇起動,當發(fā)動機再次關閉后,風扇繼續(xù)運行動機再次關閉后,風扇繼續(xù)運行4s4s,然后停止。定時器采用,然后停止。定時器采用斷電延時定時器,控制程序如下圖所示。斷電延時定時器,控制程序如下圖所示。 5.8.3 5.8.3 編輯共享數(shù)據(jù)塊編

34、輯共享數(shù)據(jù)塊 共享數(shù)據(jù)塊共享數(shù)據(jù)塊DB3DB3可為可為FB10FB10保存發(fā)動機(汽油機和柴油機)保存發(fā)動機(汽油機和柴油機)的實際轉速,當發(fā)動機轉速都達到預設速度時,還可以的實際轉速,當發(fā)動機轉速都達到預設速度時,還可以保存該狀態(tài)的標志數(shù)據(jù)。保存該狀態(tài)的標志數(shù)據(jù)。 5.8.4 5.8.4 編輯功能塊(編輯功能塊(FBFB) 在該系統(tǒng)的程序結構內,有在該系統(tǒng)的程序結構內,有2 2個功能塊:個功能塊:FB1FB1和和FB10FB10。FB1FB1為底層功能塊,所以應首先創(chuàng)建并編輯;為底層功能塊,所以應首先創(chuàng)建并編輯;FB10FB10為上層功為上層功能塊,可以調用能塊,可以調用FB1FB1。編輯底層功能塊編輯底層功能塊FB1 編輯上層功能塊編輯上層功能塊FB101.1.編輯底層功能塊編輯底層功能塊FB1 FB1 在在“多重背景多重背景”項目內創(chuàng)建項目內創(chuàng)建FB1FB1,符號名,符號名“EngineEngine”。定義功能塊定義功能塊FB1的變量聲明表的變量聲明表 編寫功能塊編寫功能塊FB1的控制程序的控制程序 FB1 FB1主要實現(xiàn)發(fā)動機的起??刂萍八俣缺O(jiān)視功能,其控主要實現(xiàn)發(fā)動機的起停控制及速度監(jiān)視功能,其控制程序如下圖所示。制程序如下圖所示。 2.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論