常德西門子PLC代理商
常德西門子PLC代理商
S7-1200和S7-1500指令的比較
下圖是博途的STEP7 V12幫助中的指令概覽??梢钥闯?,S7-1200和S7-1500的指令是兼容的,S7-1200的指令是S7-1500的指令的子集??梢哉J為S7-1200是精簡版的S7-1500。如果暫時沒有條件使用S7-1500,可以先使用S7-1200,為今后使用S7-1500打下基礎(chǔ)。
1.可用的編程語言
S7-1500和S7-1200都能使用梯形圖(LAD)、功能塊圖(FBD)和結(jié)構(gòu)化控制語言(SCL)語言。為了和S7-300/400兼容,S7-1500還可以使用STL語言。
2.指令的比較
1)S7-1500的基本指令比S7-1200多9條指令。
2)擴展指令中只有S7-1500有PROFIenergy(使用 PROFINET 進行能源管理)指令。此外S7-1500比S7-1200多11條指令。
3)“技術(shù)"類指令S7-1500比S7-1200多5條高速計數(shù)器指令。
4)“通信"類指令S7-1200比S7-1500多3條發(fā)送電子郵件的指令。
S7-1200 間接尋址指令的應(yīng)用
S7-1200的間接尋址需要通過數(shù)據(jù)塊中的數(shù)組來實現(xiàn)。指令FieldRead通過索引(又稱為下標)變量從數(shù)組中讀取數(shù)值,指令FieldWrite 通過索引變量向數(shù)組中寫數(shù)值,使用這兩條指令可以實現(xiàn)間接尋址。
索引變量是間接尋址中的地址指針,它的值是要讀寫的數(shù)組元素的索引值。地址指針就像收音機調(diào)臺的指針,改變指針的位置,指針指向不同電臺。改變地址指針中的索引值,指針“指向"數(shù)組不同的元素。間接尋址的優(yōu)點是可以在程序處理期間,通過改變指針的值動態(tài)地修改指令中的地址。
首先生成一個名為“數(shù)據(jù)塊1"的全局數(shù)據(jù)塊DB2,在數(shù)據(jù)塊中生成名為“數(shù)組1"的數(shù)組Array[1..10] of Int,其元素的數(shù)據(jù)類型為Int。
這兩條指令沒有列入指令列表和指令列表,編程時將收藏夾中的空邏輯框插入程序,點擊其中紅色的“??",打開下拉式列表框,可以看到列表框底部的指令FieldWrite或FieldRead。點擊生成的指令框中的“???",用列表設(shè)置要寫入或讀取的數(shù)據(jù)類型為Int(見下圖)。兩條指令的參數(shù)MEMBER的實參必須是數(shù)組的個元素“數(shù)據(jù)塊1".數(shù)組1[1]。
指令的輸入?yún)?shù)索引值“INDEX"是要讀寫的數(shù)組中的元素的下標,數(shù)據(jù)類型為DINT(雙整數(shù))。參數(shù)“VALUE"是要寫入數(shù)組元素的值或要讀取的數(shù)組元素的值。
下圖中的FieldWrite指令將常數(shù)25寫入數(shù)組1中的元素“數(shù)組1[3]"。FieldRead指令讀取數(shù)組元素“數(shù)組1[3]"的值,將它保存到MW20。改變INDEX的值,可以讀寫別的數(shù)組元素的值
USS_PORT在發(fā)生通信錯誤時,通常進行3次嘗試來完成通信事件,那么S7-1200與變頻器通信的時間就是USS_PORT發(fā)生通信超時的時間間隔。例如:如果通信波特率是57600,那么USS_PORT與變頻器通信的時間間隔應(yīng)當大于小的調(diào)用時間間隔,即大于36.1Ms而小于109Ms。S7-1200 USS 協(xié)議庫默認的通信錯誤超時嘗試次數(shù)是2次。
基于以上的USS_PORT通信時間的處理,我們建議在循環(huán)中斷OB塊中調(diào)用USS_PORT通信功能塊。在建立循環(huán)中斷OB塊時,我們可以設(shè)置循環(huán)中斷OB塊的掃描時間,以滿足通信的要求。循環(huán)中斷OB塊的掃描時間的設(shè)置如下圖所示:
圖9:循環(huán)中斷OB塊的掃描時間的設(shè)置2.USS_DRV功能塊的編程
USS_DRV功能塊的編程如下圖所示。
圖10: USS_DRV功能塊的編程USS_DRV功能塊用來與變頻器進行交換數(shù)據(jù),從而讀取變頻器的狀態(tài)以及控制變頻器的運行。每個變頻器使用的一個USS_DRV功能塊,但是同一個CM1241 RS485模塊的USS網(wǎng)絡(luò)的所有變頻器(多16個)都使用同一個USS_DRV_DB。
USS_DRV_DB:變頻器進行USS通信的數(shù)據(jù)塊。
RUN: DB塊的變頻器啟動指令。
OFF2: 緊急停止,自由停車。 該位為0時停車。
OFF3: 快速停車,帶制動停車。 該位為0時停車。
F_ACK: 變頻器故障確認。
DIR : 變頻器控制電機的轉(zhuǎn)向。
SPEED_SP: 變頻器的速度設(shè)定值。ERROR: 程序輸出錯誤。
RUN_EN: 變頻器運行狀態(tài)指示。
D_DIR: 變頻器運行方向狀態(tài)指示。
INHIBIT: 變頻器是否被禁止的狀態(tài)指示。
FAULT: 變頻器故障。
SPEED: 變頻器的反饋的實際速度值。DRIVE: 變頻器的USS站地址。變頻器參數(shù)P2011設(shè)置。
PZD_LEN: 變頻器的循環(huán)過程字。 變頻器參數(shù)P2012設(shè)置。注意:變頻器的PKW的長度在這里是特殊需要注意的,在使用USS通信時必須是4,如果改成3或者127都將不能讀取反饋回來的過程值。
3.USS_RPM功能塊的編程USS_RPM功能塊的編程 如下圖所示。
圖11:USS_RPM功能塊的編程USS_RPM功能塊用于通過USS通信從變頻器讀取參數(shù)。
REQ: 讀取參數(shù)請求。
DRIVE: 變頻器的USS站地址。
PARAM: 變頻器的參數(shù)代碼。
INDEX: 變頻器的參數(shù)索引代碼
USS_DB: 變頻器進行USS通信的數(shù)據(jù)塊。DONE: 讀取參數(shù)完成。
ERROR: 讀取參數(shù)錯誤。
STATUS: 讀取參數(shù)狀態(tài)代碼。
VALUE: 所讀取的參數(shù)的值。注意:進行讀取參數(shù)功能塊編程時,各個數(shù)據(jù)的數(shù)據(jù)類型一定要正確對應(yīng)。如果需要設(shè)置變量讀取參數(shù)時,注意該參數(shù)變量的初始值不能為0,否則容易產(chǎn)生通信錯誤。
4.USS_WPM功能塊的編程USS_WPM功能塊的編程如下圖所示。
圖12:USS_WPM功能塊的編程USS_WPM 功能塊用于通過USS通信設(shè)置變頻器的參數(shù)。
REQ: 讀取參數(shù)請求。
DRIVE: 變頻器的USS站地址。
PARAM: 變頻器的參數(shù)代碼。
INDEX: 變頻器的參數(shù)索引代碼。
EEPROM:把參數(shù)存儲到變頻器的EEPROM。
VALUE: 設(shè)置參數(shù)的值。
USS_DB: 變頻器進行USS通信的數(shù)據(jù)塊。DONE: 讀取參數(shù)完成。
ERROR: 讀取參數(shù)錯誤狀態(tài)。
STATUS: 讀取參數(shù)狀態(tài)代碼。注意:對寫入?yún)?shù)功能塊編程時,各個數(shù)據(jù)的數(shù)據(jù)類型一定要正確對應(yīng)。如果需要設(shè)置變量進行寫入?yún)?shù)值時,注意該參數(shù)變量的初始值不能為0,否則容易產(chǎn)生通信錯誤。
5. 3 S7 1200 PLC進行USS通信的調(diào)試S7-1200 PLC 通過CM1241 RS485模塊與變頻器進行USS通信時,需要注意如下幾點:
當同一個CM1241 RS485 模塊帶有多個(多16個)USS變頻器時,這個時候通信的USS_DB是同一個,USS_DRV功能塊調(diào)用多次,每個USS_DRV功能塊調(diào)用時,相對應(yīng)的USS站地址與實際的變頻器要*,而其它的控制參數(shù)也要*。
當同一個S7-1200 PLC 帶有多個CM1241 RS485模塊(多3個)時,這個時候通信的USS_DB相對應(yīng)的是3個,每個CM1241 RS485模塊的USS網(wǎng)絡(luò)使用相同的USS_DB,不同的USS網(wǎng)絡(luò)使用不同的USS_DB。
當對變頻器的參數(shù)進行讀寫操作時,注意不能同時進行USS_RPM和USS_WPM的操作,并且同一時間只能進行一個參數(shù)的讀或者寫操作,而不能進行多個參數(shù)的讀或者寫操作。
2產(chǎn)品分類編輯
可編程控制器是由現(xiàn)代化生產(chǎn)的需要而產(chǎn)生的,可編程序控制器的分
西門子PLCS7-200系列
類也必然要符合現(xiàn)代化生產(chǎn)的需求。
一般來說可以從三個角度對可編程序控制器進行分類。其一是從可編程序控制器的控制規(guī)模大小去分類,其二是從可編程序控制器的性能高低去分類,其三是從可編程序控制器的結(jié)構(gòu)特點去分類。在S7-1200 PLC 與變頻器的USS通信的實際使用過程中,需要根據(jù)網(wǎng)絡(luò)的現(xiàn)場情況,對問題進行具體的解決。