1 引言 計算機及通訊技術已成為工業(yè)環(huán)境中大部分解決方案的核心部分,其在系統(tǒng)中的比重正在迅速增加。在工業(yè)控制中,交流電機的拖動越來越多的采用變頻器完成,不僅作為一個單獨的執(zhí)行機構,而是隨著不斷的智能化,同遠程計算機之間可以通過各種通訊方式結合成一個有機的整體。在實際工程實施時,變頻器的啟動、停止、方向、告警、故障指示以及故障復位等控制通常為端子排開關信號控制方式,速度控制采用模擬量給定值控制方式來完成。由于變頻器的輸出端會產生強烈的干擾信號,控制器有時會造成誤動作的情況。當控制距離遙遠時,還存在敷線工程量過大的問題。隨著現(xiàn)場總線的底層控制網絡的發(fā)展,變頻器生產廠家推出了具有數(shù)據(jù)通信功能的產品,采用RS-485通信接口用于系統(tǒng)配置和監(jiān)控是一種低成本的連接方案。 2 西門子變頻器的USS控制協(xié)議 2.1 USS協(xié)議的特點 USS是西門子公司為變頻器開發(fā)的通信協(xié)議,可以支持變頻器同PC或PLC之間建立通信連接,常適合于規(guī)模較小的自動化系統(tǒng)。它以主從方式構成工業(yè)監(jiān)控網站,在網絡內有一個主站,1~31個從站,各站點有唯一的標識碼識別。 這種結構的特點是:用單一的、完全集成的系統(tǒng)來解決自動化問題。所有的西門子變頻器都可以采用USS協(xié)議作為通信鏈路。數(shù)字化的信息傳遞,提高了系統(tǒng)的自動化水平及運行的可靠性,解決了模擬信號傳輸所引起的干擾及漂移問題。通信介質采用RS-485屏蔽雙絞線,最遠可達1000m,因此可有效地減少電纜的數(shù)量,從而可以大大減少開發(fā)和工程費用,并極大地降低客戶的啟動和維護成本;通信效率較高,可達187.5kbit/s。對于有10個調速器,每個調速器有6個過程數(shù)據(jù)需刷新的系統(tǒng),PLC的典型掃描周期為幾百毫秒,采用與PROFIBUS相似的操作模式,總線結構為單位站、主從存取方式,報文結構具有參數(shù)數(shù)據(jù)與過程數(shù)據(jù),前者用于改變調速器的參數(shù),后者用于快速刷新調速器的過程數(shù)據(jù),如啟動停止、速度給定、力矩給定等。具有極高的快速性和可靠性。利用西門子變頻器的主機上提供的USS接口,僅在終端機中插入一RS-485通信板,就可實現(xiàn)變頻器的全部遠程控制。 2.2 USS協(xié)議的通信數(shù)據(jù)格式 USS協(xié)議的通信字符格式為一位起始位、一位停止位、一位偶校驗位和八位數(shù)據(jù)位。數(shù)據(jù)報文******長度位256個字節(jié),包括3字節(jié)的頭部、1字節(jié)的校驗碼和主數(shù)據(jù)塊,數(shù)據(jù)塊按照字的方式組織,高字節(jié)在前。通信數(shù)據(jù)報文格式如表1所示。 表1 USS協(xié)議的通信數(shù)據(jù)報文格式

表中:STX—起始字符,為02Hex;LGE—報文長度,為n+2,3≤n≤254;ADR—從站地址碼,其中bit0~bit4表示從站地址,bit5為1表示廣播發(fā)送,bit6為1表示鏡像發(fā)送,用于網絡測試,bit7為1表示特殊報文;BCC—校驗字符,為從STX開始所有字節(jié)的異或和。 在一幀內完成過程控制數(shù)據(jù)的同時,可以通過指定參數(shù)號完成設備控制參數(shù)的讀寫。數(shù)據(jù)快由參數(shù)值域(PKW)和過程數(shù)據(jù)域(PZD)組成,二者均為變長數(shù)據(jù),其格式如表2所示。 表2 數(shù)據(jù)快的格式

表中:PKW域—參數(shù)值域,由參數(shù)識別碼、子參數(shù)號和參數(shù)值構成,參數(shù)個數(shù)可根據(jù)設備的定義值******可有124個字;PZD域—過程控制數(shù)據(jù)域,包括控制字/狀態(tài)字,設定值/實際值,最多16個字;PKE參數(shù)識別碼;IND用來指定某些數(shù)組型設備參數(shù)的子參數(shù)號。 對于SIEMENS的MMV/MDV變頻器,協(xié)議有所簡化: IND固定為0;PKW為3字格式,即只有PWE1;PZD域的PZD1是控制字/狀態(tài)字,用來設置和監(jiān)測變頻器的工作狀態(tài);PZD域的PZD2設定頻率。 3 PLC控制變頻器的程序設計 PLC通訊程序采用子程序方式編制,主控程序對變頻器的控制通過調用有關子程序發(fā)送命令完成。數(shù)據(jù)接受由后臺中斷程序完成。發(fā)送命令子程序將變頻器目標速度值和命令參數(shù)加工為USS協(xié)議格式,發(fā)送出去,并設置發(fā)送標志,復位接受完成標志,并開允許接受中斷和定時中斷。 當變頻器發(fā)送響應報文時,激活后臺中斷程序接受變頻器的狀態(tài)值和當前速度值,存入接受緩沖區(qū),并復位發(fā)送標志,設置接受完成標志。 3.1 主控程序 按照采樣時間間隔,主控程序根據(jù)發(fā)送標志和接受完成標志,檢查變頻器接受緩沖區(qū)內容,并進行相應的處理。通訊程序由通信口初始化、運行、停止、速度設定等5個子程序和一系列中斷服務子程序構成,主控程序的流程如圖1所示。 
圖1 主控程序流程 3.2 通訊子程序 通訊子程序如下: SBR0 //通訊初始化程序 MOVB 16#49,SMB30 //初始化P0為9600kb,8bit,偶校驗 MOVB 14,“P0-ST-LEN” //設置發(fā)送緩沖區(qū),發(fā)送字符數(shù) MOVB 16#2,“P0-ST-STX” //STX MOVB 12,“P0-ST-LGE” //LGE MOVB 0,“P0-ST-ADR” //主站地址 MOVB 255,“TO” ENI ATCH 4,25 ATCH 6,11 RET SBR2 //電機啟動子程序 MOVB BPADR,,“P0-ST-ADR” //取主控緩沖區(qū)的從機地址 MOVW 16#0C7F,“P0-ST-PZD0” //設定停止電機啟動、正轉 CALL “Send-BP” //調用發(fā)送程序 RET SBR 4 //設定電機速度電機運行子程序 MOVB“BPADR”,“P0-ST-ADRS” //取主控緩沖區(qū)的從機地址 MOVW 16#0C7F,“P0-ST-PZD0” //設定電機啟動、正轉 MOVW “BIT/SP”,“P0-ST-PZD1” //取主控緩沖區(qū)的速度值 LDW>=“P0-ST-PZD1”,16#4000 //判斷是否超過******速度 MOVW 16#4000,“P0-ST-PZD1” CALL “Send-BP” //調用發(fā)送程序 RET SBR5 //發(fā)送程序Send-BP MOVD &VB3500,ACO //計算BCC MOVB 14,AC1 //循環(huán)計算BCC,存入“P0-ST-BCCS”置位重發(fā)次數(shù)計數(shù)器 XMT “P0-ST-LEN”,0 //發(fā)送 ATCH 0,9 //發(fā)送結束中斷的中斷服務程序號 MOVB 100,“h” //定時時間100ms ATCH 1,10 //定時中斷處理,未接受倒數(shù)據(jù),重發(fā)數(shù)據(jù) RET 3.3 中斷接收子程序 中斷接收子程序由一系列服務程序組成,包括3種情況。 (1) 判斷中斷接收的起始3個字符是否為制定字符,是將接收中斷指針指向下一個中斷程序,復位定時器,同時異或計算BCC值;否則將關閉接收中斷,等待定時中斷進行錯誤處理。 (2) 對于數(shù)據(jù)塊的接收,采用計數(shù)方式控制,當計數(shù)為零時,計算的BCC值應為0,否則關閉接收中斷。 (3) 定時中斷激活時表示接收超時,重發(fā)次數(shù)值減1,如果不為0,則自動將發(fā)送緩沖區(qū)的內容重新發(fā)送;為0,置位錯誤標志。 4 結束語 在變頻拖動工程應用中,傳統(tǒng)的方法是采用開關量和模擬量信號對變頻器進行控制,信號容易受到干擾,出現(xiàn)控制上的錯誤。采用基于RS-485接口的USS通信協(xié)議對變頻器進行控制的方法,大大 減少了系統(tǒng)布線,可以避免現(xiàn)場可能的各種電 |