西門(mén)子 S7-200系列是自控市場(chǎng)上有重要地位的PLC,Siemens公司為S7-200PLC專(zhuān)門(mén)編寫(xiě)了USS4通訊子程序,用于與Siemens自己的MicroMaster系列變頻器通訊。由于USS協(xié)議與Danfoss丹佛斯 RS485通訊協(xié)議非常相似,所以只要作很小的改動(dòng)就能使Siemens的USS4通訊子程序實(shí)現S7-200 PLC與丹佛斯 FC300、VLT2800、2900,5000系列變頻器的通訊控制。
一、硬件接線(xiàn):
接線(xiàn)對照表如下:
RS485 P和RS485 N兩根通訊線(xiàn)應該使用屏蔽雙絞線(xiàn),屏蔽層在Danfoss變頻器側壓接地;如果通訊干擾很厲害,可以將PLC和變頻器的RS485通訊口的地連接在一起,常有奇效。
二、USS協(xié)議與Danfoss RS485通訊禎格式對照比較:
SIEMENS USS通訊協(xié)議完全說(shuō)明可以從
support.automation.siemens.com網(wǎng)站上下載。 下面只作簡(jiǎn)要說(shuō)明。
1. 通訊速率:
l USS協(xié)議的波特率為300,600,1200,2400,4800,9600,19200,38400,57600,76800,93750,115200,187500;
l S7-200 USS4通訊子程序支持的波特率為1200,2400,4800,9600,19200;
l 以Danfoss FC300以例, RS485通訊協(xié)議支持的波特率為2400,4800,9600,19200,38400,115200;
上海津信建議使用Danfoss的出廠(chǎng)默認值9600 Bd。
2.起始位、數據長(cháng)度、校驗位、停止位:
USS協(xié)議的起始位為1位,數據長(cháng)度為8位,校驗為偶校驗,停止位為1位,與Danfoss RS485通訊協(xié)議的規定完全相同。
三、USS協(xié)議與Danfoss RS485通訊協(xié)議報文格式對照比較:
S7-200 USS4通訊子程序支持的USS協(xié)議報文格式如下:
首先說(shuō)明,USS協(xié)議的報文框架結構與Danfoss RS485通訊協(xié)議的完全相同,下面就其具體定義進(jìn)行比較:
1. 起始字符:
USS協(xié)議的起始字符為ASCII字符STX (02HEX),與Danfoss RS485通訊協(xié)議相同。
2. 數據長(cháng)度LGE:
USS協(xié)議的數據長(cháng)度是指LGE后面所跟的字節數,此定義與Danfoss RS485通訊協(xié)議相同。
3. 從站地址ADR:
USS協(xié)議的從站地址定義為RS485標準格式,Danfoss RS485通訊協(xié)議也支持RS485標準地址格式(Danfoss自定義的專(zhuān)用地址格式就不能用了)。
4. 校驗碼BCC:
USS協(xié)議的校驗碼是報文中BCC校驗碼前面所有字節作“異或”運算的結果,與Danfoss RS485通訊協(xié)議的定義相同。
5. 過(guò)程數據區:
雖然USS協(xié)議支持n個(gè)PCD過(guò)程數據字,但是S7-200 USS4子程序只支持2個(gè)PCD,因此過(guò)程數據區的長(cháng)度與Danfoss RS485通訊協(xié)議的定義相同。
6. 過(guò)程數據區的PCD1:
USS協(xié)議定義PCD1為控制字/狀態(tài)字,與Danfoss RS485通訊協(xié)議相同,只是控制字/狀態(tài)字的位功能定義不同。
7. 過(guò)程數據區的PCD2:
USS協(xié)議定義PCD2為主設定值/主實(shí)際值,與Danfoss RS485通訊協(xié)議相同;Siemens此數據有兩種規格化方式,其一為16進(jìn)制4000HEX對應100%,與Danfoss定義相同;另一種規格化方式為“絕對值”方式,16進(jìn)制4000HEX為16384,對應163.84Hz,與Danfoss定義不同。
8. 參數命令數據區的參數特征字PCA:
位0-10,對應參數號的b0-b10位,USS協(xié)議的定義與Danfoss的相同。
位11,雖然USS協(xié)議中定義為參數變動(dòng)自發(fā)信息,但S7-200 USS4通訊子程序沒(méi)用到,因此與Danfoss的定義也就相同了,填入0。
位12-15,任務(wù)標識表,主機發(fā)給從機時(shí):
位12-15,任務(wù)標識表,從機應答主機時(shí):
S7-200 USS4通訊子程序中用到的任務(wù)標識與Danfoss的定義相同。
9. 參數命令數據區的索引IND:
USS協(xié)議將此字的12-15位定義為擴展參數號,單對于Danfoss變頻器而言,暫時(shí)還用不到擴展參數號,填入0。
其余位USS4通訊子程序中的定義與Danfoss的相同。
10. 參數命令數據區的參數值PVA(PWE):
USS協(xié)議主站發(fā)送命令時(shí)參數值PVA可以為1個(gè)字或2個(gè)字,而Danfoss RS485通訊協(xié)議固定為2個(gè)字,這是一個(gè)關(guān)鍵差異。接收時(shí),無(wú)論單字還是雙字PVA,USS4通訊子程序都能正常接收。
四、USS協(xié)議與Danfoss VLT變頻器通訊需要做的改動(dòng):
綜上所述,S7-200 PLC USS4通訊子程序與Danfoss RS485通訊協(xié)議其實(shí)只有一個(gè)地方不兼容:USS4中有的通訊命令報文格式的參數值PVA是單字長(cháng)度,而Danfoss要求固定長(cháng)度雙字。
為了保持程序的通用性,我們盡量做最小的程序改動(dòng)。
分析S7-200 USS4通訊子程序,總共由17個(gè)子程序構成,其中Danfoss VLT變頻器要用的,涉及參數值PVA,并且PVA長(cháng)度只有單字的子程序其實(shí)只有2個(gè):
1.
USS4_DRV_CTRL,控制字及總線(xiàn)給定子程序
2.
USS_RPM,讀參數子程序
將這2個(gè)子程序發(fā)送的PVA長(cháng)度從單字改為雙字,就能與Danfoss變頻器正常通訊了。而且由于Siemens Micro Master變頻器能識別雙字PVA,所以改動(dòng)后的程序不影響S7-200 PLC與SIEMENS變頻器之間的通訊。
?