PLC課件5-結(jié)構(gòu)化編程_第1頁
PLC課件5-結(jié)構(gòu)化編程_第2頁
PLC課件5-結(jié)構(gòu)化編程_第3頁
PLC課件5-結(jié)構(gòu)化編程_第4頁
PLC課件5-結(jié)構(gòu)化編程_第5頁
已閱讀5頁,還剩81頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、第7章 結(jié)構(gòu)化編程第9章 工程應(yīng)用 結(jié)構(gòu)化編程 通訊組態(tài) 讀取模擬量功能塊FC 105內(nèi) 容 提 要 程序設(shè)計方法:線性化編程、模塊化編程和結(jié)構(gòu)化編程。 第七章 結(jié)構(gòu)化編程線性化編程是將整個用戶程序放在組織塊OB1中,在CPU循環(huán)掃描時執(zhí)行OB1中的全部指令。其特點是結(jié)構(gòu)簡單、但效率低下。另一方面,某些相同或相近的操作需要多次執(zhí)行,這樣會造成不必要的編程工作。再者,由于程序結(jié)構(gòu)不清晰,會造成管理和調(diào)試的不方便。所以在編寫大型程序時,避免線性化編程。模塊化編程是將程序根據(jù)功能分為不同的邏輯塊,且每一邏輯塊完成的功能不同。在OB1中可以根據(jù)條件調(diào)用不同的功能或功能塊。 其特點是易于分工合作,調(diào)試方

2、便。由于邏輯塊是有條件的調(diào)用,所以可以提高CPU的利用率。結(jié)構(gòu)化編程是將過程要求類似或相關(guān)的任務(wù)歸類,在功能或功能塊中編程,形成通用解決方案。通過不同的參數(shù)調(diào)用相同的功能或通過不同的背景數(shù)據(jù)塊調(diào)用相同的功能塊。 其特點是結(jié)構(gòu)化編程必須對系統(tǒng)功能進行合理分析、分解和綜合,所以對設(shè)計人員的要求較高,另外,當使用結(jié)構(gòu)化編程方法時,需要對數(shù)據(jù)進行管理。 傳送帶系統(tǒng)中所有交流電機的通用邏輯控制塊;裝配線機械中所有電磁線圈的通用邏輯控制塊;造紙機器中所有驅(qū)動裝置的通用邏輯控制塊。 功能是不帶“記憶”的邏輯塊。所謂不帶“記憶”表示沒有背景數(shù)據(jù)塊。當完成操作后,數(shù)據(jù)不能保持。這些數(shù)據(jù)為臨時變量,對于那些需要保

3、存的數(shù)據(jù)你只能通過共享數(shù)據(jù)塊(Share Block)來存儲。調(diào)用功能時,需用實參來代替形參。 功能(FC) 功能塊是用戶所編寫的有固定存儲區(qū)的塊。FB為帶“記憶”的邏輯塊。它有一個數(shù)據(jù)結(jié)構(gòu)與功能塊參數(shù)表完全相同的數(shù)據(jù)塊(DB)。我們稱該數(shù)據(jù)塊為背景數(shù)據(jù)塊(Instance Data Block)。當功能塊被執(zhí)行時,數(shù)據(jù)塊被調(diào)用,功能塊結(jié)束。調(diào)用隨之結(jié)束。存放在背景數(shù)據(jù)塊中的數(shù)據(jù)在FB塊結(jié)束以后,仍能繼續(xù)保持。具有“記憶”功能。一個功能塊可以有多個背景數(shù)據(jù)塊,使功能塊可以被不同的對象使用。 功能塊(FB) 塊的結(jié)構(gòu)塊由兩部分組成:變量聲明表,程序。 輸入 IN 輸出 OUT 輸入/輸出 IN_

4、OUT 靜態(tài)變量 STAT :只有FB有 臨時變量 TEMP變量類型:功能和功能塊的編程步驟如下: 第一步定義局部變量。首先定義形參和臨時變量名,功能塊還須定義靜態(tài)變量。之后確定變量的類型及變量注釋。 第二步編寫執(zhí)行程序,在編程中若使用變量名,則變量名標識顯示為前綴“#”加變量名。若使用全局符號則顯示為全局符號加引號的形式。 控制任務(wù)描述: 在發(fā)動機控制系統(tǒng)工程實例中,被控對象是一個“汽油發(fā)動機”和一個對該汽油發(fā)動機進行散熱的“風扇”,一個“柴油發(fā)動機”和一個對該柴油發(fā)動機進行散熱的“風扇”。對這些被控對象,有相應(yīng)的起動、停止按鈕控制其狀態(tài)的改變,并要求這兩個發(fā)動機在起動的同時,對應(yīng)的風扇要同

5、時起動對其散熱,當發(fā)動機停止運行時,風扇要延時4秒后再關(guān)閉,以保證發(fā)動機充分的散熱。發(fā)動機控制系統(tǒng)工程汽油機控制汽油機風扇控制柴油機控制柴油機風扇控制發(fā)動機控制風扇控制汽油機數(shù)據(jù)柴油機數(shù)據(jù)FB1FC1OB1DB1DB2發(fā)動機控制系統(tǒng)結(jié)構(gòu)化程序的結(jié)構(gòu)示意圖1、創(chuàng)建符號地址表2、發(fā)動機控制功能塊(FBl)的程序設(shè)計輸入: 定義FB1的輸入、輸出參數(shù)。這些定義包括變量名、數(shù)據(jù)類型和聲明類型。輸出:靜態(tài)變量: FBl功能塊的程序設(shè)計 汽油機數(shù)據(jù)塊DB1的內(nèi)容 3、風扇控制功能(FCl)的程序設(shè)計 定義FC1的輸入、輸出參數(shù)。這些定義包括變量名、數(shù)據(jù)類型和聲明類型。輸入:輸出: FBl功能塊的程序設(shè)計4

6、、組織塊(OB1)的程序設(shè)計 發(fā)電機控制系統(tǒng)組織塊OBl的指令程序 功能和功能塊的調(diào)用必須用實參代替形參,因為形參是在功能或功能塊的變量聲明表中定義的。為保證功能或功能塊對同一類設(shè)備的通用性,在編程中不能使用實際對應(yīng)的存儲區(qū)地址參數(shù),而是使用抽象參數(shù),這就是形參。而塊在調(diào)用時,必須將實際參數(shù)(實參)替代形參,從而可以通過功能或功能塊實現(xiàn)對具體設(shè)備的控制。 這里必須注意:實參的數(shù)據(jù)類型必須與形參一致。 總結(jié)第九章 工程應(yīng)用1、 PROFIBUS 總線通訊 PROFIBUS是一種國際化,開放式,不依賴于生產(chǎn)商的現(xiàn)場總線標準。 PROFIBUS以ISO7498為基礎(chǔ),以開放式系統(tǒng)互聯(lián)網(wǎng)絡(luò)OSI作為參

7、考模型。其傳輸速率為9.6kpbs-12Mbps。最多可掛接127個站點。傳輸可使用RS-485傳輸技術(shù)或光纖媒體。下面演示PROFIBUS總線的不打包通訊。 設(shè)備及連接 硬件和軟件配置如下: 硬件:1)CPU 315-2DP及SM模塊2)CPU 313C-2DP一塊(根據(jù)條件可選用其他型號的S7-300/400)3)插入PROFIBUS網(wǎng)卡CP5611的PC機(組態(tài)編程用)4) PROFIBUS電纜及三個接頭軟件:1)STEP 7 V5.2 或STEP 7 V5.3PROFIBUS 通訊組態(tài)過程 首先用工具制作帶有三個接頭的PROFIBUS電纜,并將兩端接頭上的撥碼至ON,中間的接頭撥碼至O

8、FF。利用這根電纜將PC機、CPU 313C-2DP和CPU 315-2DP建立PROFIBUS物理連接。如圖1所示。硬件連接圖1系統(tǒng)硬件組態(tài) 原則上先組態(tài)從站,再組態(tài)主站1)新建項目:在STEP 7中創(chuàng)建一個新項目,插入兩個SIMATIC 300 Station,并重新命名為“SIMATIC 300(zhu)”和“SIMATIC 300(fu)”。2)組態(tài)從站 組態(tài)硬件 雙擊Hardware,根據(jù)硬件安裝次序和定貨號依次插入機架、電源、CUP、輸入、輸出模塊,進行硬件組態(tài)。在插入CPU時,同時彈出PROFIBUS組態(tài)畫面。點擊“New”按鈕新建PROFIBUS(1),組態(tài)PROFIBUS站地

9、址:2,點擊“Properties”按鈕組態(tài)網(wǎng)絡(luò)屬性,選擇“Network Settings”,進行網(wǎng)絡(luò)參數(shù)設(shè)置,如圖2所示。雙擊CPU項下的Dp欄,在網(wǎng)絡(luò)屬性窗口選擇“Operating Mode”, 選擇“Dp Slave”。選擇此300站為Dp slave(從站方式),如圖3所示。圖2圖3 組態(tài)通訊區(qū) 選擇標簽“Configuration”,點擊“New”按鈕新建兩行通訊接口區(qū),一行輸入,注意選擇輸入方式:input、地址:1、傳輸數(shù)據(jù)長度length:2(最多32個字節(jié))、傳輸單元Unit:Byte、傳輸方式Consistency:All。一行輸出,方式同前。如圖4,圖5所示。編譯保存

10、 圖4圖5注意 【Address type】:選擇Input,表示將CPU315-2DP從站作為數(shù)據(jù)的輸入接口區(qū)【Address】:填入數(shù)據(jù)接收區(qū)的起始地址,此時寫入0【length】:設(shè)置傳輸數(shù)據(jù)長度為2(最多32個字節(jié))【Unit】:傳輸單元為Byte數(shù)據(jù)【Consistency】:選擇傳輸方式ALL 3)組態(tài)主站 以同樣的方式組態(tài)主站,注意在圖3中選擇Dp master。選擇PROFIBUS站地址:3,并選擇與從站相同的PROFIBUS網(wǎng)絡(luò)PROFIBUS(1)。打開硬件目錄,選擇“PROFIBUS DP- Configuration Station”文件夾,選擇CPU31x,將其拖曳到

11、DP主站系統(tǒng)的PROFIBUS總線上,從而將其連接到DP網(wǎng)絡(luò)上,如圖6所示。圖6 此時自動彈出“Dp slave Properties”,在其中的“Connection”標簽中選擇已經(jīng)組態(tài)過的從站,點擊“Connect” 按鈕將其連接到網(wǎng)絡(luò),如圖7所示。圖7 之后點擊“Configuration”標簽,設(shè)置主站的通訊接口區(qū)。注意 從站的輸出區(qū)必須與主站的輸入?yún)^(qū)對應(yīng),同樣從站的輸入?yún)^(qū)必須與主站的輸出區(qū)對應(yīng)。這樣一發(fā)一收彼此對應(yīng)。4)硬件下裝設(shè)置及PROFIBUS通訊檢測 在下裝時,先存盤編譯,在控制面板中,選擇“Set PG/PC interface” 選擇“S7 ONLINE PCadapte

12、r MPI” ,如圖8所示。圖8 將下裝電纜插在S7 300 CPU的MPI通訊槽中。檢查通訊是否暢通,如圖9所示。圖9如此將主站和從站分別下裝。利用軟件檢查PROFIBUS通訊線是否一致。點擊圖標如圖10??梢钥吹骄W(wǎng)絡(luò)圖如圖11。圖10圖11庫函數(shù)介紹 SFC14 SFC15PROFIBUS 通訊程序SFC14:解開存放在IB端的數(shù)據(jù)包,接收數(shù)據(jù)。放在對應(yīng)的數(shù)據(jù)庫中。SFC15:將存放在相應(yīng)數(shù)據(jù)庫中的數(shù)據(jù)打包,并通過QB端發(fā)送數(shù)據(jù)。具體參數(shù)說明如下:參數(shù)名參數(shù)說明EN使能端LADDR接收區(qū)或發(fā)送區(qū)的起始地址 RET-VAL狀態(tài)字:包含出錯信息代碼RECORD通信數(shù)據(jù)區(qū),一般為ANY指針格式使

13、用場合:在數(shù)據(jù)的連續(xù)類型是“Unit”,可以直接讀入輸入、輸出區(qū),如果數(shù)據(jù)類型是“All”,程序需用SFC14、SFC15對數(shù)據(jù)進行打包和解包。編寫主站程序 要求建立OB1、OB82、OB86、OB122,其中OB82、OB86、OB122是為避免網(wǎng)絡(luò)某個站點掉電而使整個網(wǎng)絡(luò)不能正常工作。 建立相應(yīng)的數(shù)據(jù)塊,DB1、DB2。DB塊的建立如圖12。圖12 建立監(jiān)控變量表VAT1。在RECORD端設(shè)置為P#DB1.DBX0.0 BYTE 2形式。RET-VAL的返回值放在不同的MW中。編程要求 主站發(fā)送數(shù)據(jù),打包后通過QB端發(fā)送字節(jié)。同時通過IB端接收數(shù)據(jù),并解包。程序如圖13所示。圖11圖13編

14、寫從站程序 要求建立OB1、OB82、OB86、OB122,其中OB82、OB86、OB122是為避免網(wǎng)絡(luò)某個站點掉電而使整個網(wǎng)絡(luò)不能正常工作。 建立相應(yīng)的數(shù)據(jù)塊,DB1、DB2。DB塊的建立。 建立監(jiān)控變量表VAT2。在RECORD端設(shè)置為P#DB1.DBX0.0 BYTE 2形式。RET-VAL的返回值放在不同的MW中。 編程要求 從站接收數(shù)據(jù),打包后通過QB端發(fā)送字節(jié)。注意從站的接收數(shù)據(jù)地址要與主站的發(fā)送地址相對應(yīng),同時通過IB端接收數(shù)據(jù),并解包。注意從站的發(fā)送數(shù)據(jù)地址要與主站的接收地址相對應(yīng)。程序如圖14所示。圖12圖14軟件下裝和PROFIBUS設(shè)置 分別下裝主站和從站的軟件BLOC

15、K。 紫色PROFIBUS線接在CPU的PROFIBUS口上,總線連接器的終端電阻開關(guān)在兩端打到ON,在中間打到OFF。 在控制面板中,選擇“Set PG/PC interface”選擇“S7 ONLINE CP5611(PROFIBUS)”如圖13所示。圖13圖15在面板上,點擊“Diagnostics”按鈕,觀察通訊狀態(tài)。如圖16所示。讀出操作站(PC機)地址為0,從站地址為2,主站地址為3。圖16監(jiān)控變量表 如圖17所示,對數(shù)據(jù)庫中的值進行監(jiān)控,在“Status value”中顯示當前值,若想改變數(shù)據(jù)庫中的數(shù)值,在“Modify value”中輸入新值,按強制按鈕,改變數(shù)據(jù)值。 觀察數(shù)據(jù)

16、通訊是否正常。圖17 1、 硬件:電源模塊PS307 5A(1塊)CPU313C-2 DP(1塊)CP343-1 IT(1塊)電氣鏈路模塊ELM(1塊)數(shù)據(jù)通訊MPI線纜2、 工業(yè)以太網(wǎng)通訊 設(shè)備及連接 2、 軟件:STEP7 V5.3JDK 1.4.2(JAVA開發(fā)工具包)IE 6.0硬件連接PS307 5AELMPC1PC2CPU313C-2 DPCP343-1 IT系統(tǒng)硬件組態(tài) 1)Step7中的硬件組態(tài)如圖1所示:圖1STEP 7中的設(shè)置2)配置CP343-1 IT模塊:圖2 雙擊硬件組態(tài)中的CP343-1 IT 模塊,彈出如圖2所示對話框 單擊圖2對話框中“Properties”按鈕

17、,彈出如圖3所示對話框,按圖示進行相應(yīng)設(shè)置。 圖3 單擊圖4.1.2對話框中上方的User標簽頁,彈出如圖4.1.4所示對話框,分配用戶權(quán)限。例如用戶名為“sf”,密碼為“12345678”。 圖4系統(tǒng)軟件編程 1)Step7中添加符號表圖52) CP343-1 IT中添加符號表圖6單擊圖4對話框中上方的Symbols標簽頁,彈出如圖6所示對話框:單擊圖6中的“Add“按鈕,彈出如圖7所示的對話框,并在其中填入相應(yīng)的符號變量:圖7單擊”O(jiān)K“按鈕,返回如圖6所示的對話框。每個符號變量,通過取消下方的”Pribileges:”復(fù)選框,改變每個符號變量的權(quán)限為”Read and wtite”。圖83)PLC控制程序的編寫 控制要求:PLC控制程序要求將三個符號變量Speed(速度)、Temp(溫度)、Level(液位)在一個給定的范圍內(nèi)按指定的階躍量周期變化。FC中變量定義如圖9圖9 FC中程序:IN:Max_Value,Min_Value Increment IN_OUT:vlaue TEMP:back 初始化OB

溫馨提示

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

最新文檔

評論

0/150

提交評論