西門子USS通信協(xié)議技術(shù)分析
USS (Universal Serial Interface, 即通用串行通信接口) 是西門子專為驅(qū)動(dòng)裝置開發(fā)的通信協(xié)議,多年來也經(jīng)歷了一個(gè)不斷發(fā)展、完善的過程。最初 USS 用于對(duì)驅(qū)動(dòng)裝置進(jìn)行參數(shù)化操作,即更多地面向參數(shù)設(shè)置。在驅(qū)動(dòng)裝置和操作面板、調(diào)試軟件(如DriveES/STARTER)的連接中得到廣泛的應(yīng)用。近來 USS 因其協(xié)議簡(jiǎn)單、硬件要求較低,也越來越多地用于和控制器(如 PLC)的通信,實(shí)現(xiàn)一般水平的通信控制。
注意:USS 提供了一種低成本的,比較簡(jiǎn)易的通信控制途徑,由于其本身的設(shè)計(jì),USS 不能用在對(duì)通信速率和數(shù)據(jù)傳輸量有較高要求的場(chǎng)合。在這些對(duì)通信要求高的場(chǎng)合,應(yīng)當(dāng)選擇實(shí)時(shí)性更好的通信方式,如 PROFIBUS-DP 等。在進(jìn)行系統(tǒng)設(shè)計(jì)時(shí),必須考慮到 USS 的這一局限性。
例如,如果在一些速度同步要求比較高的應(yīng)用場(chǎng)合(如造紙生產(chǎn)線),對(duì)十幾甚至數(shù)十臺(tái)變頻器采用 USS 通信控制,其效果可想而知。
USS 協(xié)議的基本特點(diǎn)如下:
支持多點(diǎn)通信(因而可以應(yīng)用在 RS 485 等網(wǎng)絡(luò)上)
采用單主站的“主-從”訪問機(jī)制
一個(gè)網(wǎng)絡(luò)上最多可以有 32 個(gè)節(jié)點(diǎn)(最多 31 個(gè)從站)
簡(jiǎn)單可靠的報(bào)文格式,使數(shù)據(jù)傳輸靈活高效
容易實(shí)現(xiàn),成本較低
USS 的工作機(jī)制是,通信總是由主站發(fā)起,USS 主站不斷循環(huán)輪詢各個(gè)從站,從站根據(jù)收到的指令,決定是否、以及如何響應(yīng)。從站永遠(yuǎn)不會(huì)主動(dòng)發(fā)送數(shù)據(jù)。從站在以下條件滿足時(shí)應(yīng)答:
接收到的主站報(bào)文沒有錯(cuò)誤,并且
本從站在接收到主站報(bào)文中被尋址
上述條件不滿足,或者主站發(fā)出的是廣播報(bào)文,從站不會(huì)做任何響應(yīng)。
對(duì)于主站來說,從站必須在接收到主站報(bào)文之后的一定時(shí)間內(nèi)發(fā)回響應(yīng)。否則主站將視為出錯(cuò)。
USS 字符幀格式
USS 的字符傳輸格式符合 UART 規(guī)范,即使用串行異步傳輸方式。USS 在串行數(shù)據(jù)總線上的字符傳輸幀為 11 位長(zhǎng)度,包括:
連續(xù)的字符幀組成 USS 報(bào)文。 在一條報(bào)文中,字符幀之間的間隔延時(shí)要小于兩個(gè)字符幀的傳輸時(shí)間(當(dāng)然這個(gè)時(shí)間取決于傳輸速率)。
S7-200 CPU 的自由口通信模式正好能夠支持上述字符幀格式。把 S7-200 的自由口定義為以上字符傳輸模式,就能通過編程,實(shí)現(xiàn) USS 協(xié)議報(bào)文的發(fā)送和接收。主站控制器所支持的通信模式必須和所要控制的驅(qū)動(dòng)裝置所要求的一致,這是實(shí)現(xiàn) S7-200 和西門子驅(qū)動(dòng)裝置通信的基礎(chǔ)。
USS 報(bào)文幀格式
USS 協(xié)議的報(bào)文簡(jiǎn)潔可靠,高效靈活。報(bào)文由一連串的字符組成,協(xié)議中定義了它們的特定功能:
以上每小格代表一個(gè)字符(字節(jié))。其中:
STX:起始字符,總是 02 h
LGE:報(bào)文長(zhǎng)度
ADR:從站地址及報(bào)文類型
BCC:BCC 校驗(yàn)符
在 ADR 和 BCC 之間的數(shù)據(jù)字節(jié),稱為 USS 的凈數(shù)據(jù)。主站和從站交換的數(shù)據(jù)都包括在每條報(bào)文的凈數(shù)據(jù)區(qū)域內(nèi)。
凈數(shù)據(jù)區(qū)由 PKW 區(qū)和 PZD 區(qū)組成:
以上每小格代表一個(gè)字(兩個(gè)字節(jié))。
PKW:此區(qū)域用于讀寫參數(shù)值、參數(shù)定義或參數(shù)描述文本,并可修改和報(bào)告參數(shù)的改變 。其中:
PKE:參數(shù) ID。包括代表主站指令和從站響應(yīng)的信息,以及參數(shù)號(hào)等
IND:參數(shù)索引,主要用于與 PKE 配合定位參數(shù)
PWEm:參數(shù)值數(shù)據(jù)
PZD:此區(qū)域用于在主站和從站之間傳遞控制和過程數(shù)據(jù)??刂茀?shù)按設(shè)定好的固定格式在主、從站之間對(duì)應(yīng)往返。如:
PZD1:主站發(fā)給從站的控制字/從站返回主站的狀態(tài)字
PZD2:主站發(fā)給從站的給定/從站返回主站的實(shí)際反饋
PZDn:……
根據(jù)傳輸?shù)臄?shù)據(jù)類型和驅(qū)動(dòng)裝置的不同,PKW 和 PZD 區(qū)的數(shù)據(jù)長(zhǎng)度都不是固定的,它們可以靈活改變以適應(yīng)具體的需要。但是,在用于與控制器通信的自動(dòng)控制任務(wù)時(shí),網(wǎng)絡(luò)上的所有節(jié)點(diǎn)都要按相同的設(shè)定工作,并且在整個(gè)工作過程中不能隨意改變。