應(yīng)用領(lǐng)域 | 環(huán)保,化工,生物產(chǎn)業(yè),電子,電氣 |
---|
產(chǎn)品簡(jiǎn)介
詳細(xì)介紹
6ES7515-2FM02-0AB0
概述:感謝大家的支持,****西門子博途編程軟件,與西門子300,200完整學(xué)習(xí)視頻,技術(shù)文本資料,還可以加入技術(shù)。
獲取方式說明:沒有獲取到的朋友,麻煩按照1234
1.點(diǎn)擊關(guān)注
2.文章點(diǎn)贊(文章結(jié)束處左下角有個(gè)大拇指點(diǎn)一下)
3.轉(zhuǎn)載并評(píng)論區(qū)下方留言;感謝分享,純干貨
4.私信我:西門子完整學(xué)習(xí)視頻
5:大家如覺得好,麻煩點(diǎn)點(diǎn)贊,國(guó)慶期間1-7號(hào)每日一篇
OB 組織塊
● 什么是組織塊?
組織塊是操作系統(tǒng)和用戶程序之間的接口。OB 用于執(zhí)行具體的程序:
1、在 CPU 啟動(dòng)時(shí);
2、在一個(gè)循環(huán)或延時(shí)時(shí)間到達(dá)時(shí);
3、當(dāng)發(fā)生硬件中斷時(shí);
4、當(dāng)發(fā)生故障時(shí);
5、組織塊根據(jù)其優(yōu)先級(jí)執(zhí)行。
OB 事件
● 組織塊 OB 的類型
圖1. OB 事件概覽
圖1. OB 事件概覽
● 通過上圖,可以看到 OB 組織塊分為三個(gè)優(yōu)先組,高優(yōu)先組中的組織塊可中斷低優(yōu)先組中的組織塊;如果同一個(gè)優(yōu)先組中的組織塊同時(shí)觸發(fā)將按其優(yōu)先級(jí)由高到低進(jìn)行排隊(duì)依次執(zhí)行;如果同一個(gè)優(yōu)先級(jí)的組織塊同時(shí)觸發(fā)時(shí),將按塊的編號(hào)由小到大依次執(zhí)行。
● CPU 為三個(gè) OB 優(yōu)先級(jí)組中的每一個(gè)組都提供了臨時(shí)(本地)存儲(chǔ)器:
1、16 KB 用于啟動(dòng)和程序循環(huán)(包括相關(guān)的 FB 和 FC)
2、4 KB 用于標(biāo)準(zhǔn)中斷事件(包括 FB 和 FC)
3、4 KB 用于錯(cuò)誤中斷事件(包括 FB 和 FC)
● 嵌套深度:是指可從 OB 調(diào)用功能 (FC) 或功能塊 (FB) 等程序代碼塊的深度。
1、從程序循環(huán) OB 或啟動(dòng) OB 開始調(diào)用 FC 和 FB 等程序代碼塊,嵌套深度為16層;
2、從延時(shí)中斷、循環(huán)中斷、硬件中斷、時(shí)間錯(cuò)誤中斷或診斷錯(cuò)誤中斷 OB 開始調(diào)用 FC 和 FB 等程序代碼塊,嵌套深度為4層。
程序循環(huán) OB
● 程序循環(huán) OB 的功能
程序循環(huán) OB 在 CPU 處于 RUN 模式時(shí),周期性地循環(huán)執(zhí)行。可在程序循環(huán) OB 中放置控制程序的指令或調(diào)用其它功能塊(FC 或 FB)。主程序(Main)為程序循環(huán) OB ,要啟動(dòng)程序執(zhí)行,項(xiàng)目中至少有一個(gè)程序循環(huán) OB 。操作系統(tǒng)每個(gè)周期調(diào)用該程序循環(huán) OB 一次,從而啟動(dòng)用戶程序的執(zhí)行。
S7-1200 允許使用多個(gè)程序循環(huán) OB ,按 OB 的編號(hào)順序執(zhí)行。OB1 是默認(rèn)設(shè)置,其它程序循環(huán) OB 的編號(hào)必須大于或等于123。程序循環(huán) OB 的優(yōu)先級(jí)為1,可被高優(yōu)先級(jí)的組織塊中斷;程序循環(huán)執(zhí)行一次需要的時(shí)間即為程序的循環(huán)掃描周期時(shí)間。最長(zhǎng)循環(huán)時(shí)間缺省設(shè)置為150ms。如果您的程序超過了最長(zhǎng)循環(huán)時(shí)間,操作系統(tǒng)將調(diào)用 OB80(時(shí)間B );如果 OB80 不存在,則 CPU 停機(jī)。
● 操作系統(tǒng)的執(zhí)行過程,請(qǐng)參見下圖1:
1、操作系統(tǒng)啟動(dòng)掃描循環(huán)監(jiān)視時(shí)間;
2、操作系統(tǒng)將輸出過程映像區(qū)的值寫到輸出模塊;
3、操作系統(tǒng)讀取輸入模塊的輸入狀態(tài),并更新輸入過程映像區(qū);
4、操作系統(tǒng)處理用戶程序并執(zhí)行程序中包含的運(yùn)算;
5、當(dāng)循環(huán)結(jié)束時(shí),操作系統(tǒng)執(zhí)行所有未決的任務(wù),例如加載和刪除塊,或調(diào)用其他循環(huán) OB
6、最后,CPU 返回循環(huán)起點(diǎn),并重新啟動(dòng)掃描循環(huán)監(jiān)視時(shí)間。
圖2.
圖2. 程序循環(huán)圖例
● 程序循環(huán) OB 的使用示例:
例如:在循環(huán)組織塊 OB123 中調(diào)用 FC1 。具體實(shí)現(xiàn)過程如下:
1、按如下步驟創(chuàng)建循環(huán)組織塊 OB123 。如圖2。
圖3.
圖3. 創(chuàng)建循環(huán)組織塊
2、通過上述類似方法創(chuàng)建功能 FC1 。如圖3。
圖4.
圖4. 創(chuàng)建 FC1
3、在循環(huán)組織塊 OB123 中調(diào)用 FC1 。如圖4。
圖5
邏輯塊包括:功能(FC)、功能塊(FB)、組織塊(OB),它們都是由變量聲明表、代碼段及其屬性等組成。
1.局部變量聲明表
每個(gè)邏輯塊的前面都有一個(gè)變量聲明表,其稱為局部變量聲明表。
局部數(shù)據(jù)包括參數(shù)、局部變量。
局部變量包括靜態(tài)變量、臨時(shí)變量。
1)功能(FC)變量介紹
FC沒有背景數(shù)據(jù)塊,即FC不能使用靜態(tài)變量,可以使用臨時(shí)變量。輸入、輸出、I/O參數(shù)以指向?qū)崊⒌闹羔樞问酱鎯?chǔ)在操作系統(tǒng)為參數(shù)傳遞而保留的額外空間中。
2)功能塊(FB)變量介紹
FB除了臨時(shí)變量外,所有參數(shù)的存儲(chǔ)空間都在背景數(shù)據(jù)塊中。
3)組織塊(OB)
OB只有臨時(shí)變量,其他的變量由操作系統(tǒng)管理,用戶不能參與。
2.局部變量的數(shù)據(jù)類型
局部變量可以定義為基本數(shù)據(jù)類型、復(fù)式數(shù)據(jù)類型、也可以是專門用于參數(shù)傳遞的“參數(shù)類型",參數(shù)類型包括定時(shí)器、計(jì)數(shù)器、塊的地址或指針等。
3.變量使用方式
1)使用變量名,需在前加前綴“#",以區(qū)別于符號(hào)表中的符號(hào)地址。增量方式下,前綴會(huì)自動(dòng)產(chǎn)生。
2)直接使用局部變量的地址,該方式只對(duì)背景數(shù)據(jù)塊和L堆棧有效。
另外,在調(diào)用FB塊時(shí),背景數(shù)據(jù)塊需要調(diào)用前生成,其順序格式需和變量聲明表保持一致。
6ES7515-2FM02-0AB0
Siemens編程器S7-200系列用在中小型設(shè)備上的自動(dòng)系統(tǒng)的控制單元,適用于各行各業(yè),各種場(chǎng)合中的檢測(cè),監(jiān)測(cè)及控制。
在這里和大家一起來討論S7-200幾個(gè)使用方面的情況。
1.步進(jìn)、伺服脈沖定位控制。
在設(shè)備的控制系統(tǒng)中,有關(guān)運(yùn)動(dòng)控制是很重要的,下面我們來看一看西門子S7-200系列PLC怎樣來實(shí)現(xiàn)這個(gè)功能。
首先,確定使用哪個(gè)端口來發(fā)脈沖,如采用Q0.0發(fā)脈沖,則它的控制字為SMB67,脈沖同期為SMW68,脈沖個(gè)數(shù)存放在SMD72中。
下面是控制字節(jié)的說明:
Q0.0 Q0.1 控制字節(jié)說明 :
SM67.0 SM77.0 PTO/PWM更新周期值 0=不更新,1=更新周期值
SM67.1 SM77.1 PWM更新脈沖寬度值 0=不更新,1=脈沖寬度值
SM67.2 SM77.2 PTO更新脈沖數(shù) 0=不更新,1=更新脈沖數(shù)
SM67.3 SM77.3 PTO/PWM時(shí)間基準(zhǔn)選擇 0=1微秒值,1=1毫秒值
SM67.4 SM77.4 PWM更新方法 0=異步更新,1=同步更新
SM67.5 SM77.5 PTO操作 0=單段操作,1=多段操作
SM67.6 SM77.6 PTO/PWM模式選擇 0=選擇PTO,1=選擇PWM
SM67.7 SM77.7 PTO/PWM允許 0=禁止PTO/PWM,1=允許
這樣根據(jù)以上表格,我們得出Q0.0控制字:SMB67為:10000101 采用PTO輸出,微妙級(jí)周期,發(fā)脈沖的周期(也就是頻率)與脈沖個(gè)數(shù)都要重新輸入。10000101轉(zhuǎn)化為16進(jìn)制為85,有了控制字以后,我們來寫這一段程序:
根據(jù)上面這段程序,我們知道了控制字的使用,同時(shí)也知道步進(jìn)電機(jī)的脈沖周期與沖個(gè)數(shù)的存放位置(對(duì)Q0.0來說是SMW68與SMD72)。當(dāng)然,VW100與VD102內(nèi)的數(shù)據(jù)不同的話,步進(jìn)電機(jī)的轉(zhuǎn)速和轉(zhuǎn)動(dòng)圈數(shù)就不一樣。
還有一點(diǎn)需要說明得是:M0.0導(dǎo)通---PLC捕捉到上升沿發(fā)動(dòng)脈沖輸出后,想停止的話,只須改變端口脈沖的控制字,再啟動(dòng)PLS即可,程序如下:
2.高速計(jì)數(shù)功能。
西門子S7-200系列PLC具有高速計(jì)數(shù)的功能;舉一例子來談?wù)劯咚儆?jì)數(shù)的用途,我們采用普通電機(jī)來帶動(dòng)絲桿轉(zhuǎn)動(dòng),我們想控制轉(zhuǎn)動(dòng)距離,怎么來解決這個(gè)問題?那么我們可在電機(jī)另一頭與一編碼器聯(lián)接,電機(jī)轉(zhuǎn)一圈,編碼器也隨之轉(zhuǎn)一圈,同時(shí)根據(jù)規(guī)格發(fā)出不同的脈沖數(shù)。當(dāng)然,這些脈沖數(shù)的頻率比較高,PLC不能用普通的上升沿計(jì)數(shù)來取得這些脈沖,只能通過高速計(jì)數(shù)功能了。
啟動(dòng)高速計(jì)數(shù)功能,也要具有控制字
HSCO HSC1 描述
SM37.0 SM47.0 復(fù)位有效電平控制位 0=高電平有效, 1=低電平有效
SM37.1 SM47.1 啟動(dòng)有效電平控制位于 0=高電平有效, 1=低電平有效
SM37.2 SM47.2 正交計(jì)數(shù)器速率選擇 0=4X計(jì)數(shù)率, 1=1X計(jì)數(shù)率
SM37.3 SM47.3 計(jì)數(shù)方向控制位 0=減計(jì)數(shù), 1=正計(jì)數(shù)
SM37.4 SM47.4 向HSC中寫入計(jì)數(shù)方向 0=不更新, 1=更新計(jì)數(shù)方向
SM37.5 SM47.5 向HSC中寫入預(yù)置值 0=不更新, 1=更新預(yù)置值
SM37.6 SM47.6 向HSC中寫入當(dāng)前值 0=不更新, 1=更新當(dāng)前值
SM37.7 SM47.7 HSC允許 0=禁止HSC, 1=允許HSC
參照上面的表格,我們選擇HSC1高速計(jì)數(shù)器,控制字為SMB47,現(xiàn)在我們啟動(dòng)高速計(jì)數(shù)器HSC1,選擇為增計(jì)數(shù),更新計(jì)數(shù)方向,重新設(shè)置值,更新當(dāng)前值:這樣的話,HSC1的啟動(dòng)控制高為:11111000轉(zhuǎn)化為16進(jìn)制為 F8,將啟動(dòng)計(jì)數(shù)器時(shí)當(dāng)前值存放在SMD48中,將預(yù)存置放在SMD52中,具體的程序 如下:
同樣的,如果計(jì)數(shù)器在工作狀態(tài)下想停止計(jì)數(shù)器,也必須改變它的控制字后,啟動(dòng)HSC具體程序 如下:
3. PID回路控制功能。
西門子S7-200系列PLC的PID控制相當(dāng)?shù)暮?jiǎn)單,可以通過micro/win軟件的一個(gè)向?qū)С绦?,按照提?一步一步執(zhí)行您所要求PID控制的屬性即可,在這里談一談PID這三個(gè)參數(shù)的具體意義:P為增益項(xiàng),P越大,響應(yīng)起就快,在調(diào)節(jié)流量閥時(shí):設(shè)定流量為50%,當(dāng)目前流量接近50%,剛超過,如果P值很大的話,那么流量閥會(huì)馬上會(huì)關(guān)閉,而不會(huì)控制在某一區(qū)域。這就是增益項(xiàng)太大引起。在調(diào)節(jié)的過程中應(yīng)該先將P值調(diào)節(jié)比較適當(dāng)了,再去調(diào)節(jié)I值,它為積分項(xiàng),是在控制器回路中控制對(duì)當(dāng)前值與設(shè)定值相等的偏差范圍。D為微分項(xiàng),主要作用是避免給定值的微分作用而引起的跳變。
在現(xiàn)場(chǎng)的PID參數(shù)的調(diào)整過程中,針對(duì)西門子S7-200型PLC我的建議是在不同的控制階段,采用不同的PID參數(shù)組,具體而言就是當(dāng)目前距離設(shè)定值差距較大時(shí),采用P值較大的一套PID參數(shù),如果當(dāng)前值快接近設(shè)定值范圍時(shí),采用P值較小的一套PID參數(shù)。