應(yīng)用領(lǐng)域 | 環(huán)保,生物產(chǎn)業(yè),電子,電氣,綜合 |
---|
商品編號(市售編號)6ES7321-7BH01-0AB0
產(chǎn)品說明SIMATIC S7-300,數(shù)字輸入 SM 321,電位隔離, 16 DE;24V DC,1個 20針, 過程報警,診斷, 適用于節(jié)拍同步運行
產(chǎn)品家族SM 321 數(shù)字量輸入模塊
![]() |
參考價 | 面議 |
更新時間:2023-09-15 11:41:11瀏覽次數(shù):309
聯(lián)系我們時請說明是化工儀器網(wǎng)上看到的信息,謝謝!
本公司主營西門子工業(yè)自動化產(chǎn)品,原裝正品,*、
高級業(yè)務(wù)顧問;竭誠為你服務(wù).
:()
公司主要從事工業(yè)自動化產(chǎn)品的集成,銷售各維修。 致力于為您提供在食品、化工、水泥、電力、環(huán)保等領(lǐng)域的電氣及自動化技術(shù)的完整解決方案,包括自動化產(chǎn)品及系統(tǒng)、工程項目執(zhí)行及管理、主要過程控制領(lǐng)域技術(shù)支持,以及專業(yè)的售后服務(wù)、培訓(xùn)等。
公司產(chǎn)品經(jīng)營范圍如下:
SIEMENS 可編程控制器
1、 SIMATIC S7 系列PLC:S7-200、S7-1200、S7-300、S7-400、ET-200
2、 邏輯控制模塊 LOGO!230RC、230RCO、230RCL、24RC、24RCL等
3、 SITOP直流電源 24V DC 1.3A、2.5A、3A、5A、10A、20A、40A可并聯(lián).
4、HMI 觸摸屏TD200 TD400C OP177 TP177,MP277 MP377,
SIEMENS 交、直流傳動裝置
1、 交流變頻器 MICROMASTER系列:MM420、MM430、MM440、G110、G120.
2、全數(shù)字直流調(diào)速裝置 6RA23、6RA24、6RA28、6RA70、6SE70系列
SIEMENS 數(shù)控 伺服
SINUMERIK:801、802S 、802D、808D, 802D SL、810D、840D、611U、S120
系統(tǒng)及伺報電機,伺服驅(qū)動等備件銷售。 *,新品現(xiàn)貨,假一罰十,值得采購
西門子MM4系列變頻器都集成了串行接口,支持USS通信協(xié)議,通過USS協(xié)議可以對變頻器進行控制和讀寫變頻器參數(shù)。使用S7-300PLC有以下兩種通訊方案:
1. 按照USS協(xié)議要求編寫通訊報文,計算BCC校驗,適用于從站數(shù)量比較少,較簡單的應(yīng)用;
2. 采用DriveES SIMATIC軟件提供的S7-300庫程序,自動生成從站輪詢表程序,適用于從站數(shù)量比較多,較復(fù)雜的應(yīng)用。
本文主要介紹通過*種方案實現(xiàn)CPU314-2PtP與MM440的USS通訊。使用S7-300編寫USS通訊程序分為以下幾個步驟:
1. 依據(jù)USS協(xié)議編寫報文;
2. 使用S7-300提供的串口數(shù)據(jù)發(fā)送程序發(fā)送USS報文;
3. 使用S7-300提供的串口數(shù)據(jù)接收程序接收USS報文;
4. 依據(jù)USS協(xié)議分析接收到的報文。
本文根據(jù)這4個步驟編寫了如下內(nèi)容:第1節(jié)簡單介紹USS協(xié)議內(nèi)容,了解USS協(xié)議報文格式;第2節(jié)根據(jù)USS協(xié)議列舉了4條報文;第3節(jié)介紹PLC和變頻器USS通訊的硬件組態(tài);第4節(jié)介紹通過調(diào)用PLC中的發(fā)送和接收功能塊實現(xiàn)USS協(xié)議報文的發(fā)送和接收。
1 USS協(xié)議介紹
USS協(xié)議是西門子專為驅(qū)動裝置開發(fā)的通信協(xié)議。USS的工作機制是,通信是由主站發(fā)起,USS主站不斷循環(huán)輪詢各個從站,從站根據(jù)收到的指令,決定是否響應(yīng)主站。從站不會主動發(fā)送數(shù)據(jù)。從站在以下條件滿足時應(yīng)答主站:接收到主站報文沒有錯誤,并且本從站在接收到主站的報文中被尋址,上述條件不滿足或者主站發(fā)出的是廣播報文,從站不會做任何響應(yīng)。USS的字符傳輸格式為11位,其中1位起始位、8位數(shù)據(jù)位、1偶校驗、1位停止位。如下表所示:
起始位 | 數(shù)據(jù)位 | 校驗位 | 停止位 | |||||||
1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 偶X1 | 1 |
LSB | MSB |
USS字符幀結(jié)構(gòu)
USS協(xié)議的報文由一連串的字符組成,協(xié)議中定義了它們的功能,如下表所示:
STX | LGE | ADR | 有效據(jù)區(qū) | BCC | ||||
1 | 2 | 3 | … | n |
USS報文結(jié)構(gòu)
• STX:長度1個字節(jié),總是為02(Hex),表示一條信息的開始;
• LGE:長度1個字節(jié),表明在LGE后字節(jié)的數(shù)量,上表中黃色區(qū)域長度;
• ADR:長度1個字節(jié),表明從站地址;
• BCC:長度1個字節(jié),異或校驗和,USS報文中BCC前面所有字節(jié)異或運算的結(jié)果;
• 有效數(shù)據(jù)區(qū):由PKW區(qū)和PZD區(qū)組成,如下表所示。
PKW區(qū) | PZD區(qū) | ||||||||
PKE | IND | PWE1 | PWE2 | … | PWEm | PZD1 | PZD2 | PZD1 | PZDn |
USS有效數(shù)據(jù)區(qū)
PKW區(qū)用于主站讀寫從站變頻器參數(shù):
• PKE:長度一個字,結(jié)構(gòu)如下表,任務(wù)或應(yīng)答ID請參考《MM440使用大全》第13章。
Bit15- Bit 12 Bit 11 Bit 10-Bit 0
Bit15- Bit 12 | Bit 11 | Bit 10-Bit 0 |
任務(wù)或應(yīng)答ID | 0 | 基本參數(shù)號PNU |
PKW結(jié)構(gòu)
變頻器參數(shù)號<2000時,基本參數(shù)號PNU=變頻器參數(shù)號,例如P700的基本參數(shù)號PNU=2BC(Hex)(700(Dec)=2BC(Hex))。
變頻器參數(shù)號>=2000時,基本參數(shù)號PNU=變頻器參數(shù)號-2000(Dec),例如P2155的基本參數(shù)號PNU=9B(Hex)(2155-2000=155(Dec)=9B(Hex))。
• IND:長度一個字,結(jié)構(gòu)如下表。
Bit15- Bit 12 | Bit 11- Bit 8 | Bit 7 - Bit 0 |
PNU擴展 | 0(Hex) | 參數(shù)下標(biāo) |
IND結(jié)構(gòu)
變頻器參數(shù)號<2000時,PNU擴展=0(Hex)。
變頻器參數(shù)號>=2000時,PNU擴展=8(Hex)。
參數(shù)下標(biāo),例如P2155[2]中括號中的2表示參數(shù)下標(biāo)為2。
• PWE:讀取或?qū)懭雲(yún)?shù)的數(shù)值
PZD區(qū)用于主站與從站交換過程值數(shù)據(jù):
• PZD1: 主站?從站 控制字
主站?從站 狀態(tài)字
• PZD2: 主站?從站 速度設(shè)定值
主站?從站 速度反饋值
• PZDn: MM430/440支持最多8個PZD,MM420支持最多4個PZD
根據(jù)傳輸?shù)臄?shù)據(jù)類型和驅(qū)動裝置的不同,PKW和PZD區(qū)的數(shù)據(jù)長度不是固定的,可以通過P2012、P2013 設(shè)置。本例采用4PKW,2PZD報文格式。
2 USS協(xié)議報文定義
本文通過發(fā)送4個不同功能的報文來演示自定義USS報文的方法,USS協(xié)議詳細(xì)說明請參照《MM440使用大全》第13章。
例1.把參數(shù)P2155[2]的數(shù)值修改為40.00Hz
字節(jié)數(shù) | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |
發(fā)送報文 | 2 | 0E | 1 | 30 | 9B | 80 | 2 | 42 | 20 | 0 | 0 | 4 | 7E | 0 | 0 | 3C |
應(yīng)答報文 | 2 | 0E | 1 | 20 | 9B | 80 | 2 | 42 | 20 | 0 | 0 | FB | 31 | 0 | 0 | 9C |
報文解釋:
STX | Byte1 | 起始字符 |
LGE | Byte2 | 報文長度(字節(jié)3到字節(jié)16共14個字節(jié)) |
ADR | Byte3 | 從站地址 |
PKW | Byte4-5 | PKE內(nèi)容: |
Bit15- Bit 12(任務(wù)ID) =3(Hex),修改參數(shù)數(shù)值雙字 | ||
Bit15- Bit 12(應(yīng)答ID) =2(Hex),傳送參數(shù)數(shù)值雙字 | ||
Bit10- Bit 0(基本參數(shù)號PUN)=2155-2000(Dec)=9B(Hex) | ||
Byte6-7 | IND內(nèi)容: | |
Bit15- Bit 12(PNU擴展) =8(Hex),參數(shù)號大于2000 | ||
Bit7- Bit 0(參數(shù)下標(biāo))=2(Hex),P2155[2] | ||
Byte8-11 | 參數(shù)值,42 20 00 00(Hex)=40.0(浮點數(shù)) | |
PZD | Byte12-13 | PZD1 |
Byte14-15 | PZD2 | |
BCC | Byte16 | 異或校驗和 |
注:黃色標(biāo)記表示應(yīng)答報文中的內(nèi)容
例2.讀取參數(shù)P0700[0]的數(shù)值
字節(jié)數(shù) | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |
發(fā)送報文 | 2 | 0E | 1 | 12 | BC | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 7E | 0 | 0 | D9 |
應(yīng)答報文 | 2 | 0E | 1 | 12 | BC | 0 | 0 | 0 | 0 | 0 | 5 | FB | 31 | 0 | 0 | 6C |
報文解釋:
STX | Byte1 | 起始字符 |
LGE | Byte2 | 報文長度(字節(jié)3到字節(jié)16共14個字節(jié)) |
ADR | Byte3 | 從站地址 |
PKW | Byte4-5 | PKE內(nèi)容: |
Bit15- Bit 12(任務(wù)ID) =1(Hex),讀取參數(shù)數(shù)值 | ||
Bit15- Bit 12(應(yīng)答ID) =1(Hex),傳送參數(shù)數(shù)值單字 | ||
Bit10- Bit 0(基本參數(shù)號PUN)=700(Dec)=2BC(Hex) | ||
Byte6-7 | IND內(nèi)容: | |
Bit15- Bit 12(PNU擴展) =0(Hex),參數(shù)號小于2000 | ||
Bit7- Bit 0(參數(shù)下標(biāo))=0(Hex),P700[0] | ||
Byte8-11 | 參數(shù)值,5(Hex)=5(Dec) | |
PZD | Byte12-13 | PZD1 |
Byte14-15 | PZD2 | |
BCC | Byte16 | 異或校驗和 |
注:黃色標(biāo)記表示應(yīng)答報文中的內(nèi)容
例3.不需要讀寫參數(shù)只發(fā)送停止變頻器報文
字節(jié)數(shù) | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |
發(fā)送報文 | 2 | 0E | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 7E | 0 | 0 | 77 |
應(yīng)答報文 | 2 | 0E | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | FB | 31 | 0 | 0 | C7 |
例4.不需要讀寫參數(shù)只送啟動變頻器、設(shè)定頻率50Hz報文
字節(jié)數(shù) | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |
發(fā)送報文 | 2 | 0E | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 7F | 40 | 0 | 36 |
應(yīng)答報文 | 2 | 0E | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | FF | 34 | 3F | FF | 6 |
例3、4報文比較簡單只需要定義PZD中的內(nèi)容,PKW區(qū)內(nèi)容可以設(shè)置為0。
請注意:如果按照以上4個例子發(fā)送報文可能會收到與例子中不一樣的應(yīng)答報文,這并不代表報文存在問題,可能由于變頻器狀態(tài)不同或參數(shù)設(shè)置不同造成。例子報文中已經(jīng)計算了BCC校驗的值,如果使用其他的報文需要自己計算BCC校驗。
3 硬件組態(tài)
MM4系列變頻器提供的串行接口為RS485接口,S7-300 PLC有3種通訊模塊支持RS485接口:
1. 采用帶有集成RS485接口的CPU例如CPU31X-2PtP;
2. RS485接口的CP340通訊模塊;
3. RS485接口的CP341通訊模塊;
以上三種模塊都可以通過下表中的接線方式與MM4變頻器連接,本文中采用1臺CPU314-2PtP與1臺MM440通訊。
信號 | CPU314-2PtP | MM430/MM440 | MM420 |
RS485接口針腳 | 端子 | 端子 | |
P+ | 11 | 29 | 14 |
N- | 4 | 30 | 15 |
S7-300 RS485接口與MM440 USS接線
3.1 PLC硬件組態(tài)
1) 首先打開STEP7新建項目并插入CPU314-2PtP。
2) 雙擊CPU314-2PtP的X2端口PtP,打開PTP屬性對話框General欄,Protocol復(fù)選框中選擇“ASCII"協(xié)議。
3) Addresses欄中記錄起始地址“1023",在后面的編程中使用。
4) Transfer欄中設(shè)置通訊速率“9600bps",報文格式:“8"位數(shù)據(jù)位,“1"位停止位,“Even"偶校驗,數(shù)據(jù)流控制選擇“None"。
5) End Delimiter欄中設(shè)置接收報文結(jié)束方式“After character delay time elapses"利用兩個報文的間隔時間來判斷報文是否結(jié)束,并設(shè)置字符延時時間“4ms"(該時間可使用默認(rèn)設(shè)置,默認(rèn)設(shè)置時間隨通訊速率不同時間也不同)。
6) Signal Assignment欄中設(shè)置串行通信接口信號模式為“Half Duplex(RS-485)Two-wire Mode"半雙工兩線制RS485模式,空閑狀態(tài)信號狀態(tài)“R(A)0v、R(B)5V"。
通過以上步驟完成對CPU314-2PtP串行接口的基本設(shè)置,如需更詳細(xì)的信息請參照CPU314-2PtP手冊。
3.2 變頻器參數(shù)設(shè)置
與通信有關(guān)的變頻參數(shù):
參數(shù) | 設(shè)置值 | 功能說明 | ||
P0700 | 5 | 命令源選擇:com鏈路USS通訊 | ||
P1000 | 5 | 頻率設(shè)定源選擇:com鏈路USS通訊 | ||
P2009 | 0 | USS規(guī)格化:不規(guī)格化 | ||
P2010 | 6 | USS波特率:9600bps | ||
P2011 | 1 | USS地址:1 | ||
P2012 | 2 | PZD長度:2個字 | ||
P2013 | 4 | PKW長度:4個字 | ||
r2024~r2031 | 只讀 | USS診斷數(shù)據(jù) |
以上參數(shù)只對與變頻器USS通訊相關(guān)的參數(shù)進行介紹,變頻器其他參數(shù)設(shè)置請參照《MM440使用大全》。
4 USS通訊編程
4.1 CPU314-2PtP串行接口發(fā)送和接收程序
CPU314-2PtP調(diào)用系統(tǒng)功能塊SFB60和SFB61進行串行通訊接口數(shù)據(jù)的發(fā)送和接收,SFB60與SFB61系統(tǒng)功能塊已經(jīng)包含在CPU中,只需在OB1中直接調(diào)用并分配背景數(shù)據(jù)塊即可。在本例中分配DB60為SFB60的背景數(shù)據(jù)塊,在OB1中調(diào)用程序:
在SFB60發(fā)送通信塊中需要對下列參數(shù)進行賦值:
REQ: | 發(fā)送請求,每個上升沿發(fā)送一幀數(shù)據(jù)。 |
R: | 終止發(fā)送。 |
LADDR: | PtP串口的起始地址,請查看PLC硬件配置中,PtP屬性對話框Addresses欄址中顯示的數(shù)值,本例中為“1023",轉(zhuǎn)化為16進制數(shù)為W#16#3FF。 |
DONE: | 發(fā)送完成輸出一個脈沖。 |
ERROR: | 發(fā)送錯誤輸出1。 |
STATUS: | 發(fā)送塊狀態(tài)字。 |
SD_1: | 發(fā)送數(shù)據(jù)區(qū)起始地址,發(fā)送數(shù)據(jù)區(qū)定義為DB1.DBB0開始的n個字節(jié)。 |
LEN: | 發(fā)送字節(jié)的長度。 |
分配DB61為SFB61的背景數(shù)據(jù)塊,在OB1中調(diào)用程序:
在SFB61接收通信塊中需要對下列參數(shù)進行賦值:
EN_R: | 接收使能。 |
R: | 終止接收。 |
LADDR: | PtP串口的起始地址,請查看PLC硬件配置中,PtP屬性對話框Addresses欄址中顯示的數(shù)值,本例中為“1023",轉(zhuǎn)化為16進制數(shù)為W#16#3FF。 |
NDR: | 接收到新數(shù)據(jù)輸出一個脈沖。 |
ERROR: | 接收錯誤輸出1。 |
STATUS: | 接收塊狀態(tài)字。 |
RD_1: | 接收數(shù)據(jù)區(qū)起始地址,接收數(shù)據(jù)區(qū)定義為DB2.DBB0開始的n個字節(jié)。 |
LEN: | 接收到數(shù)據(jù)的長度。 |
4.2 通過發(fā)送程序發(fā)送定義好的USS報文
將例子中的報文按字節(jié)順序傳送到從DB1.DBB0開始的16個字節(jié)中,設(shè)置MW104=16,當(dāng)M100.0上升沿時PLC即發(fā)送一幀USS報文。如果變頻器接收到的報文無誤就會返回一條響應(yīng)報文,需要將M200.0置1 PLC就會接收到響應(yīng)報文,并把報文存儲到從DB2.DBB0開始的16個字節(jié)中。
4.3使用S7-300 PLC編寫B(tài)CC校驗程序
在USS通訊中變頻器在收到主站發(fā)送的報文后會重新計算報文的BCC校驗,如果計算結(jié)果與報文傳送的BCC校驗不*,那么表明變頻器接收到的信息是無效的,變頻器將丟棄這一信息,并且不向主站發(fā)出應(yīng)答信號。所以正確計算BCC校驗尤為重要。前面提到的4個例子報文中已經(jīng)計算好了BCC校驗,下面給出利用S7-300 PLC編程計算15個字節(jié)的BCC校驗的程序。
15字節(jié)的BCC校驗程序
程序中將DB1.DBB0到DB1.DBB14中的內(nèi)容依次進行異或計算,并把計算結(jié)果保存到DB1.DBB15中。