產(chǎn)品詳情
長(zhǎng)沙玥勵(lì)西門(mén)子6ES7288-2DT16-0AA0報(bào)價(jià)單 西門(mén)子 6ES7288-2DT16-0AA0
S7-300與S7-200Smart DP01之間的MPI通信
S7-200 SMART PLC 通過(guò)EM DP01 模塊與 S7-300 PLC之間采用 MPI 通訊方式時(shí),S7-200 SMART PLC 中不需要編寫(xiě)任何與通訊有關(guān)的程序,只需要將要交換的數(shù)據(jù)整理到一個(gè)連續(xù)的V 存儲(chǔ)區(qū)當(dāng)中即可,而S7-300 PLC中需要在組織塊OB1(或是定時(shí)中斷組織塊OB35)當(dāng)中調(diào)用系統(tǒng)功能X_GET(SFC67)和X_PUT(SFC68),以實(shí)現(xiàn)S7-200 SMART PLC 與 S7-300 PLC之間的通訊。
S7-300 PLC調(diào)用 SFC67 和 SFC68 時(shí),該系統(tǒng)功能的"VAR_ADDR" 參數(shù)需要填寫(xiě)S7-200 SMART PLC側(cè)數(shù)據(jù)地址區(qū)。由于S7-200 SMART PLC 的數(shù)據(jù)區(qū)為 V 區(qū),如果這個(gè)參數(shù)填寫(xiě)為 P#DB1.DBX×× BYTE n 則對(duì)應(yīng)的就是S7-200 SMART PLC側(cè)VB×× ~ VB(××+n -1)的數(shù)據(jù)區(qū)。 例如交換的數(shù)據(jù)存在S7-200 SMART PLC 中 VB50 到 VB59 這10個(gè)字節(jié)當(dāng)中,則“VAR_ADDR”參數(shù)應(yīng)為 P#DB1.DBX50.0 BYTE 10。首先根據(jù)S7-300的硬件配置,在STEP7當(dāng)中組態(tài)S7-300站并且下載,注意S7-300出廠默認(rèn)的MPI地址是2,需要保證DP 01模塊站地址與S7-300 地址不沖突。例子程序當(dāng)中將S7-300 MPI地址設(shè)定為2,DP01 地址通過(guò)外部撥碼設(shè)定3,另外DP01 模塊自支持自適應(yīng)波特率,S7-300側(cè)可以根據(jù)實(shí)際需要設(shè)置波特率。
S7-300 CPU 在 Step7 平臺(tái)下組態(tài)
S7-300 CPU 在 TIA 平臺(tái)下組態(tài)
S7-200 SMART 組態(tài)
S7-200 SMART系統(tǒng)中需根據(jù) EM DP 01模塊所在的實(shí)際位置在系統(tǒng)塊中添加EM DP01模塊,但添加的DP01 模塊無(wú)需再進(jìn)行其他設(shè)置,本例中DP01模塊緊鄰CPU,MPI地址通過(guò)DP01模塊外部撥碼開(kāi)關(guān)進(jìn)行調(diào)節(jié)。系統(tǒng)塊設(shè)置如下圖:
S7-300 CPU 在 Step7 平臺(tái)下組態(tài)
S7-300 PLC修改MPI地址可以參考下圖:
例子程序在OB1當(dāng)中調(diào)用數(shù)據(jù)讀寫(xiě)功能塊:SFC67和SFC68,如下圖所示:
分別在 STEP 7-MicroWIN SMART 和STEP7當(dāng)中監(jiān)視S7-300 PLC和 S7-200 SMART PLC當(dāng)中的數(shù)據(jù),數(shù)據(jù)監(jiān)視界面如下:
S7-300 CPU 在 TIA 平臺(tái)下組態(tài)
S7-300 PLC修改MPI地址可以參考下圖:
例子程序在OB1當(dāng)中調(diào)用數(shù)據(jù)讀寫(xiě)功能塊:X_PUT和X_GET。
分別在 STEP 7-MicroWIN SMART 和STEP7當(dāng)中監(jiān)視S7-300 PLC和 S7-200 SMART PLC當(dāng)中的數(shù)據(jù),數(shù)據(jù)監(jiān)視界面如下:
WinCC 與S7-200 SMART CPU 的 OPC 通信
WinCC 中沒(méi)有與S7-200 SMART CPU 通信的驅(qū)動(dòng),所以 WinCC 與 S7-200 SMART CPU 之間通過(guò)以太網(wǎng)的通信,只能通過(guò) OPC 的方式實(shí)現(xiàn)。S7-200 SMART CPU 作為 OPC 的 Sever 端,只需設(shè)置 IP 地址即可。
上位機(jī)作為 OPC 的 Client 端,通過(guò) SIMATIC NET 軟件建立 PC Station 來(lái)與 S7-200 SMART 通信。
建立好 PC Station 后,WinCC中的實(shí)現(xiàn)步驟如下:
1. 建立所有WinCC中要用到的變量
首先在 OPC Scout中建立好所有 WinCC 中要用到的變量,步驟見(jiàn)OPC Scout 測(cè)試。
2. 添加新的驅(qū)動(dòng)
打開(kāi) WinCC 軟件新建一個(gè)項(xiàng)目,用鼠標(biāo)右鍵點(diǎn)擊“變量管理”,快捷菜單中選擇“打開(kāi)”。
在打開(kāi)的“WinCC Configuration Studio ”窗口中,鼠標(biāo)右鍵“變量管理”,在快捷菜單中選擇“添加新的驅(qū)動(dòng)程序”,添加“OPC”驅(qū)動(dòng)。如圖1.所示。
圖1. 添加一個(gè)新的驅(qū)動(dòng)"OPC"
3. 在 WinCC 中搜索及添加 OPC Scout 中定義的變量
首先用鼠標(biāo)右鍵“OPC Groups” ,在快捷菜單中點(diǎn)擊“系統(tǒng)參數(shù)”。在彈出“OPC 條目管理器”窗口中,選擇“OPC.SimaticNET.1”,然后點(diǎn)擊“瀏覽服務(wù)器”按鈕。
在彈出的“過(guò)濾標(biāo)準(zhǔn)”窗口中選擇“下一步” 進(jìn)行搜索。如圖2.所示。
圖2.選擇服務(wù)器瀏覽
4. 建立新連接并添加所需變量
在變量列表中選擇所需要的變量,點(diǎn)“添加條目”按鈕添加所需變量,此時(shí)會(huì)自動(dòng)要求你建立一個(gè)新連接,并將變量添加到這個(gè)連接中,如圖3.所示。
如果需要添加多個(gè)變量,按上述步驟重復(fù)添加即可。
圖3.添加變量并建立連接
成功添加完變量后,WinCC 中變量管理中將顯示已經(jīng)添加的 OPC 連接和變量,如圖4.所示。
圖4.從OPC Scout中成功添加變量
5. WINCC 創(chuàng)建畫(huà)面并監(jiān)控變量
WINCC 中新建畫(huà)面,并添加“輸入/輸出 域”,并為其選擇 OPC 變量,如圖5.所示。
圖5.創(chuàng)建 WINCC 畫(huà)面
激活 WINCC ,即可測(cè)試 WINCC 與 S7-200 SMART OPC 通訊。
V90的PTI模式丟脈沖怎么辦?
首先要判斷是否丟脈沖,可根據(jù)查看V90中的參數(shù)R482[1]知道接收的脈沖數(shù)是否丟失。詳細(xì)資料為:
判斷確實(shí)為丟脈沖后,可從接線、布線、是否滿足相應(yīng)EMC準(zhǔn)則進(jìn)行排查。建議在36、37和38、39號(hào)腳并聯(lián)200-500歐的電阻,具體PTI模式接線圖如下:
PID 自動(dòng)/手動(dòng)調(diào)節(jié)的無(wú)擾動(dòng)切換
有些工程項(xiàng)目中可能需要根據(jù)工藝要求在不同的時(shí)刻投入、或者退出 PID 自動(dòng)控制;退出 PID 自動(dòng)控制時(shí),控制器的輸出部分可以由操作人員直接手動(dòng)控制。這就是所謂的 PID 手動(dòng)/自動(dòng)切換。
PID 控制處于自動(dòng)方式時(shí),PID 控制器(S7-200 SMART 中的 PID 調(diào)節(jié)功能)會(huì)按照 PID 算法,自動(dòng)通過(guò)輸出的作用使過(guò)程反饋值跟隨給定值變化,并保持穩(wěn)定。這是一個(gè)自動(dòng)的閉環(huán)控制系統(tǒng)。操作人員可以根據(jù)現(xiàn)場(chǎng)工藝的要求,改變給定(即設(shè)定值)的值。
PID 控制處于手動(dòng)方式時(shí),PID 控制器不再起自動(dòng)計(jì)算的作用。這時(shí),控制回路的輸出是由操作人員手動(dòng)控制、調(diào)整,由操作人員觀察現(xiàn)場(chǎng)的控制效果,從而構(gòu)成人工閉環(huán)控制。
所謂 PID 自動(dòng)/手動(dòng)控制,就是看控制系統(tǒng)的輸出是由 PID 控制器自動(dòng)控制,還是由操作人員手動(dòng)控制。
有些控制系統(tǒng)的執(zhí)行機(jī)構(gòu)不能承受較大的沖擊,這就要求在進(jìn)行 PID 自動(dòng)/手動(dòng)切換時(shí),保持控制輸出的穩(wěn)定。這就是要求無(wú)擾動(dòng)切換。
為了達(dá)到 PID 自動(dòng)/手動(dòng)控制的無(wú)擾動(dòng)切換,需要在編程時(shí)注意一些相關(guān)事項(xiàng)。下面分別就直接使用 PID 指令編程,和使用 PID 向?qū)Ь幊虄煞N情況作一介紹。
1.直接使用 PID 指令編程時(shí)的 PID 自動(dòng)/手動(dòng)無(wú)擾切換
直接使用 PID 指令塊編寫(xiě) PID 控制程序時(shí),可以簡(jiǎn)單地使用“調(diào)用/不調(diào)用”指令的方式控制自動(dòng)/手動(dòng)模式。因?yàn)?PID 指令本身已經(jīng)具有實(shí)現(xiàn)無(wú)擾動(dòng)切換的能力,此時(shí)在 PID 指令控制環(huán)節(jié)之外編程沒(méi)有多大必要。
PID 指令的 EN 輸入端使能(為“1”)時(shí),我們認(rèn)為是自動(dòng)控制模式;EN 輸入端未使能(為“0”)時(shí),我們認(rèn)為是手動(dòng)控制模式。
PID 指令本身有一個(gè)“能流歷史狀態(tài)位”,以記錄指令的狀態(tài)切換。在 EN 端從“0”變?yōu)椤薄?”時(shí),PID 指令認(rèn)為這是從“手動(dòng)”模式向“自動(dòng)”模式切換。PID 指令此時(shí)會(huì)自動(dòng)執(zhí)行一系列動(dòng)作,以配合無(wú)擾動(dòng)切換:
- 使設(shè)定值( SPn) = 當(dāng)前過(guò)程反饋?zhàn)兞浚≒Vn)
- 設(shè)置上次采樣過(guò)程變量(PVn-1) = 當(dāng)前過(guò)程反饋?zhàn)兞浚≒Vn)
- 設(shè)置積分偏差和(或所謂積分前項(xiàng))(Mx) = 當(dāng)前輸出值(Mn)
使設(shè)定值等于當(dāng)前反饋值可以避免出現(xiàn)偏差,使之不存在調(diào)整的要求;當(dāng)然如果有工藝要求,也可以后續(xù)調(diào)整設(shè)定值。其他的動(dòng)作都是為了使 PID 在后續(xù)的操作中不改變輸出的值。
在編程時(shí)要注意:
- 從自動(dòng)模式向手動(dòng)模式切換時(shí),PID 指令的 EN 端不再有能流,計(jì)算停止,輸出值 Mn 不再變化。此時(shí)如果需要操作人員人工觀察控制的結(jié)果,手動(dòng)控制輸出量,就可以通過(guò)用戶程序直接改變回路表中的輸出值存儲(chǔ)單元內(nèi)容(見(jiàn)數(shù)據(jù)塊或系統(tǒng)手冊(cè)的相關(guān)部分內(nèi)容)。如果有必要,操作人員的操作可能要進(jìn)行一些標(biāo)準(zhǔn)化換算。
- 為保證從手動(dòng)模式向自動(dòng)模式的切換無(wú)擾動(dòng),需要在手動(dòng)控制時(shí),或在切換過(guò)程中,禁止對(duì) PID 回路表中設(shè)定值的更新,以便切換時(shí) PID 指令用當(dāng)前過(guò)程反饋值替代設(shè)定值。切換完成后,操作人員可以調(diào)整設(shè)定值。
2.使用 PID 向?qū)Ь幊虝r(shí)的 PID 自動(dòng)/手動(dòng)無(wú)擾切換
使用 PID 指令向?qū)Ь幊虝r(shí),指令向?qū)?huì)自動(dòng)調(diào)用 PID 指令,并且編寫(xiě)外圍的控制變量標(biāo)準(zhǔn)化換算、定時(shí)采樣等功能。用戶在使用 PID 指令向?qū)r(shí),需要在用戶程序中用 SM0.0 調(diào)用指令向?qū)傻淖映绦颍ㄈ?PIDx_CTRL 子程序)。PID 向?qū)Э梢陨蓭ё詣?dòng)/手動(dòng)切換功能的子程序,這個(gè)子程序使用一個(gè)數(shù)字量點(diǎn)為“1”、“0”的狀態(tài)來(lái)控制是否投入 PID 自動(dòng)控制。
到目前為止(STEP 7-Micro/WIN SMART),使用 PID 向?qū)傻淖映绦驎r(shí),由于用戶程序不能直接使用 PID 指令,它的無(wú)擾切換能力因?yàn)楦袅送鈿ぷ映绦?,所以受到了局限。如果?duì)無(wú)擾切換要求比較嚴(yán)格,需要另外編一些程序加以處理。
考察如下 PID 控制子程序。
圖 1. PID 向?qū)傻闹噶?
圖中:
- 過(guò)程反饋量
- 設(shè)定值,實(shí)數(shù)
- 自動(dòng)/手動(dòng)控制,“1”=自動(dòng),“0”=手動(dòng)
- 手動(dòng)控制輸出值,0.0 - 1.0 之間的一個(gè)實(shí)數(shù)
- PID 控制輸出值
要實(shí)現(xiàn)無(wú)擾動(dòng)切換,必須:
- 在從自動(dòng)向手動(dòng)切換時(shí),使手動(dòng)輸出值(VD2004)等于當(dāng)前的實(shí)際控制輸出值;
- 在從手動(dòng)向自動(dòng)切換時(shí),使設(shè)定值相當(dāng)于當(dāng)前的過(guò)程反饋值。
為此,可編寫(xiě)類(lèi)似下圖所示的程序,放在 PID 控制子程序之前:
圖 2. 無(wú)擾切換處理程序
圖中:
- 自動(dòng)/手動(dòng)切換控制點(diǎn)
- 從自動(dòng)向手動(dòng)切換時(shí),使手動(dòng)輸出值等于實(shí)際當(dāng)前值
- 從手動(dòng)向自動(dòng)切換時(shí),把當(dāng)前反饋量換算為相應(yīng)的給定值
上述程序中的 Scale_I_to_R 就是量程變換指令庫(kù)中的子程序,如何將該指令庫(kù)導(dǎo)入到Micro/WIN SMART 中可參見(jiàn)如何將Micro/WIN 的庫(kù)文件導(dǎo)入到Micro/WIN SMART中。這是為了解決過(guò)程反饋與設(shè)定值之間的換算問(wèn)題。用戶也可以自己編程換算,或者根據(jù)反饋與給定的取值范圍決定是否需要換算。
為了更好地理解 PID向?qū)У淖詣?dòng)/手動(dòng)無(wú)擾切換的使用,可參考下面的例程。
使用環(huán)境: STEP 7 Micro/WIN SMART V2.3.2
實(shí)現(xiàn)功能: PID向?qū)У淖詣?dòng)/手動(dòng)無(wú)擾切換
PID向?qū)ё詣?dòng)/手動(dòng)無(wú)擾切換
免責(zé)聲明
本例程僅供參考,程序中的CPU版本、類(lèi)型可能與用戶實(shí)際使用不同,用戶可能需要先對(duì)例子程序做修改和調(diào)整,才能將其用于測(cè)試。本例程的作者和擁有者對(duì)于該例程的功能性和兼容性不負(fù)任何責(zé)任,使用該例程的風(fēng)險(xiǎn)完全由用戶自行承擔(dān)。由于它是免費(fèi)的,所以不提供任何擔(dān)保,錯(cuò)誤糾正和熱線支持,用戶不必為此聯(lián)系西門(mén)子技術(shù)支持與服務(wù)部門(mén)。
通過(guò)觸摸屏進(jìn)行 S7-200 Smart 的 PID 參數(shù)設(shè)置
STEP 7-MicroWin SMART 軟件在使用 PID 向?qū)нM(jìn)行配置時(shí),需要在 PID 回路向?qū)У慕M態(tài)界面,首先定義回路增益、積分時(shí)間、微分時(shí)間。
圖1. PID 回路向?qū)?shù)設(shè)置界面
當(dāng)程序運(yùn)行后,PID 功能的參數(shù)可以通過(guò)軟件監(jiān)控表在線修改、或者通過(guò)上位機(jī)、觸摸屏等外部設(shè)備修改,來(lái)實(shí)現(xiàn) PID 參數(shù)的修改。
注意:上述方法可以修改 PID 的回路增益、積分時(shí)間、微分時(shí)間;PID 的采樣時(shí)間僅可通過(guò) PID 回路向?qū)?shù)設(shè)置界面設(shè)置,若需更改須重新下載程序。
通過(guò)外部修改回路增益、積分時(shí)間、微分時(shí)間
使用 PID 回路向?qū)нM(jìn)行配置時(shí),在組態(tài)界面最后會(huì)進(jìn)行存儲(chǔ)器分配,見(jiàn)圖 2。此處分配的 V 區(qū)地址防止沖突調(diào)用,本例中起始地址選擇 VB0。
圖2. PID 回路向?qū)Т鎯?chǔ)器分配
通過(guò)查詢 PLC 的符號(hào)表 PIDx_SYM,見(jiàn)圖 3,請(qǐng)注意只有回路增益、積分時(shí)間、微分時(shí)間是可以修改的,其他參數(shù)可以當(dāng)作只讀參數(shù)。如用戶希望能夠在觸摸屏上顯示百分比的參數(shù)時(shí),會(huì)用到標(biāo)準(zhǔn)化過(guò)程值和標(biāo)準(zhǔn)化回路輸出等。