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

USS通信基本原理

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

西門子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 電機(jī)(1LA9060-4KA10-Z)

【二】實(shí)現(xiàn)功能

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

兩類指令“USS通信”與“USS”區(qū)別

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

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

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

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

SINAMICS V20變頻器設(shè)置

SINAMICS V20 的啟停和頻率控制通過 PZD 過程數(shù)據(jù)來實(shí)現(xiàn),參數(shù)讀取和修改通過 PKW 參數(shù)通道來實(shí)現(xiàn)。可以使用連接宏 Cn010 實(shí)現(xiàn) SINAMICS V20 的 USS 通信,也可以直接修改變頻器參數(shù)。變頻器參數(shù)設(shè)置步驟如下:

(一)恢復(fù)工廠設(shè)置 設(shè)置參數(shù) P0010(調(diào)試參數(shù))= 30,P0970(工廠復(fù)位)= 21

(二)設(shè)置用戶訪問級(jí)別 設(shè)置參數(shù) P0003(用戶訪問級(jí)別)= 3 (專家訪問級(jí)別)

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

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

(四)變頻器重新上電

在更改通信協(xié)議 P2023 后,需要對(duì)變頻器重新上電。在此過程中,請(qǐng)?jiān)谧冾l器斷電后等待數(shù)秒,確保 LED 燈熄滅或顯示屏空白后再次接通電源。

USS_Port_Scan

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

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

注意:

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

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

USS_Drive_Control

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

可以使用 DIR 或使用符號(hào)(正或負(fù))和 SPEED_SP 輸入控制驅(qū)動(dòng)器旋轉(zhuǎn)方向。

注意:

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

USS_Write_Param

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

注意:

請(qǐng)勿過多使用 EEPROM 永久寫操作。請(qǐng)盡可能減少 EEPROM 寫操作次數(shù)以延長(zhǎng) EEPROM 的壽命。

USS_Read_Param

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

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