西門(mén)子S7-1200與變頻器V20之間USS通信
發(fā)布日期:
2022-10-21

USS通信基本原理

USS 協(xié)議(Universal Serial Interface Protocol,即通用串行接口協(xié)議)是西門(mén)子專(zhuān)為驅動(dòng)裝置開(kāi)發(fā)的通用通信協(xié)議,它是一種基于串行總線(xiàn)進(jìn)行數據通信的協(xié)議。USS 通信總是由主站發(fā)起,USS 主站不斷輪詢(xún)各個(gè)從站,從站根據收到主站報文,決定是否、以及如何響應。從站必須在接收到主站報文之后的一定時(shí)間內發(fā)回響應到主站,否則主站將視該從站出錯。USS 協(xié)議是主從結構的協(xié)議,總線(xiàn)上的每個(gè)從站都有唯一的從站地址。一個(gè) S7-1200 CPU 中最多可安裝三個(gè) CM 1241 RS422/RS485模塊和一個(gè) CB 1241 RS485 板,每個(gè) RS485 端口最多控制 16 臺驅動(dòng)器。

西門(mén)子S7-1200與V20的USS通信

【一】使用環(huán)境

TIA Portal STEP 7 V16

CPU1215C DC/DC/DC V4.4

CM1241 RS422/RS485 V2.2

SINAMICS SINAMICS V20(6SL3210-5BE03-7UV0)

1LA9 電機(1LA9060-4KA10-Z)

【二】實(shí)現功能

西門(mén)子S7-1200 與西門(mén)子傳動(dòng)設備 V20 之間 USS 通信,控制變頻器的啟停和頻率,并讀取和修改變頻器的加減速時(shí)間。

兩類(lèi)指令“USS通信”與“USS”區別

西門(mén)子S7-1200 USS 有兩個(gè) USS 指令庫

(1)“USS通信” 指令庫下的指令除了適用于 S7-1200 中央機架串口模塊(CM 1241 V2.1 以上或 CB 1241 且 S7-1200 CPU V4.1 以上),還可用于分布式 I/O PROFINET 或 PROFIBUS 的 ET200SP/ET200MP 串口通信模塊。

(2)“USS通信” 是目前最新的指令庫,并且以后的更新也會(huì )基于這個(gè)指令庫。一般情況下,“USS” 只是在老項目中使用。下面的介紹以 “USS 通信” 指令庫為例。

(3)“USS” 指令庫下的指令只能用于 S7-1200 中央機架串口模塊(CM 1241 或 CB 1241)

SINAMICS V20變頻器設置

SINAMICS V20 的啟停和頻率控制通過(guò) PZD 過(guò)程數據來(lái)實(shí)現,參數讀取和修改通過(guò) PKW 參數通道來(lái)實(shí)現??梢允褂眠B接宏 Cn010 實(shí)現 SINAMICS V20 的 USS 通信,也可以直接修改變頻器參數。變頻器參數設置步驟如下:

(一)恢復工廠(chǎng)設置 設置參數 P0010(調試參數)= 30,P0970(工廠(chǎng)復位)= 21

(二)設置用戶(hù)訪(fǎng)問(wèn)級別 設置參數 P0003(用戶(hù)訪(fǎng)問(wèn)級別)= 3 (專(zhuān)家訪(fǎng)問(wèn)級別)

(三)設置 SINAMICS V20 變頻器 USS 通信所需的命令源、協(xié)議、波特率、地址等參數。選擇連接宏 Cn010 后,需要將參數 P2013 的值由 127(PKW長(cháng)度可變)修改為 4(PKW長(cháng)度為 4);

此外對于本例需要將參數 P2010 的值由 8(波特率 38400)修改為 6(本例中使用波特率為 9600)。

(四)變頻器重新上電

在更改通信協(xié)議 P2023 后,需要對變頻器重新上電。在此過(guò)程中,請在變頻器斷電后等待數秒,確保 LED 燈熄滅或顯示屏空白后再次接通電源。

USS_Port_Scan

USS_Port_Scan 指令用于處理 USS 網(wǎng)絡(luò )上的通信。用戶(hù)程序執行 USS_Port_Scan 指令的次數必須足夠多,以防止驅動(dòng)器超時(shí)。通常從循環(huán)中斷調用 USS_Port_Scan 。例如添加循環(huán)中斷 OB30, 并設置循環(huán)中斷時(shí)間 30ms。

USS_Port_Scan 指令輸入引腳”P(pán)ORT“為分配的串口模塊的“硬件標識符”。安裝并組態(tài)串口模塊之后,可用的端口標識符將出現在 “PORT “功能框連接的參數助手下拉列表中?;蛘?,可在系統常量中找到該硬件標識符值。在 OB30 中調用”USS_Port_Scan“指令, 鼠標雙擊 CPU 1215 DC/DC/DC 站點(diǎn)下的 ”P(pán)LC變量>默認變量表“ , 在”系統常量“標簽欄中找到本例所使用的 CM1241 RS422/485 模塊。USS_Port_Scan 指令輸入引腳”USS_DB“指向為 USS_Drive_Control 指令放入程序時(shí)創(chuàng )建并初始化的背景數據塊的名稱(chēng)。

注意:

(1)一個(gè)串口通信端口無(wú)論與幾臺變頻器連接,都只能有一個(gè) USS_Port_Scan 指令,每次調用該函數塊都與單個(gè)驅動(dòng)器進(jìn)行通信。

(2)如果使用 CB1241,需要使得 USS_Port_Scan 背景 DB 中的 LINE_PRE 起始值更改為 0。

USS_Drive_Control

USS_Drive_Control 指令用于請求消息、驅動(dòng)器響應消息,以及與驅動(dòng)器交換數據。例如, 本例中將輸入引腳”OFF2“和”OFF3”設置為 True, “”DIR“使能為 True,”Drive“ 設置為 1,'PZD_LEN“設置為 2,”SPEED_SP“設置為 50.0(即 50% 頻率值為 25Hz), 然后將”RUN“ 使能為 True,使變頻器以 25HZ 頻率運行。

可以使用 DIR 或使用符號(正或負)和 SPEED_SP 輸入控制驅動(dòng)器旋轉方向。

注意:

每個(gè)驅動(dòng)器應使用一個(gè)單獨的 USS_Drive_Control 函數塊,但同一個(gè)串口模塊接口下的所有 USS 協(xié)議變頻器使用的 USS_Drive_Control 必須使用同一個(gè)背景數據塊。

USS_Write_Param

USS_Write_Param 指令用于修改驅動(dòng)器中的參數。必須從主程序循環(huán) OB 中調用 USS_Write_Param。例如, 本例中將輸入引腳 ”Drive“ 設置為 1,'PARAM“設置為 1120,”INDEX“設置為0 (即 V20 的加減速時(shí)間參數為 1120, 該參數下標為 0), 'EEPROM'設置為 False, “VALUE”設置為“10.0”(即加減速時(shí)間 10.0s)。然后將”EN“ 和'REQ'使能為 True,將修改變頻器的加減速時(shí)間為 10.0s。

注意:

請勿過(guò)多使用 EEPROM 永久寫(xiě)操作。請盡可能減少 EEPROM 寫(xiě)操作次數以延長(cháng) EEPROM 的壽命。

USS_Read_Param

USS_Read_Param 指令用于從驅動(dòng)器讀取參數。必須從主程序循環(huán) OB 調用 USS_Read_Param。例如, 本例中將輸入引腳 ”Drive“ 設置為 1,'PARAM“設置為 1120,”INDEX“設置為 0 (即 V20 的加減速時(shí)間參數為 1120, 該參數下標為 0)。然后將”EN“ 和'REQ'使能為 True,讀取變頻器的加減速時(shí)間, 該值輸出在參數“VALUE”。

聲明:部分內容來(lái)源于網(wǎng)絡(luò ),如侵權請后臺留言聯(lián)系刪除。