93329737
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 23 個(gè)
工控威望: 188 點(diǎn)
下載積分: 524 分
在線時(shí)間: 18(小時(shí))
注冊時(shí)間: 2009-04-14
最后登錄: 2024-08-27
查看93329737的 主題 / 回貼
樓主  發(fā)表于: 2010-11-10 14:42
西門子的USS通訊,無需使用特殊硬件,PLC與變頻器都有繼承的串口,簡單,價(jià)廉。如果要使用總線的話,就需要額外使用通訊卡或適配器。
PLC 與驅(qū)動(dòng)裝置連接,主要實(shí)現(xiàn)的任務(wù)是:
控制驅(qū)動(dòng)裝置的啟動(dòng)、停止等運(yùn)行狀態(tài)
控制驅(qū)動(dòng)裝置的轉(zhuǎn)速等參數(shù)
獲取驅(qū)動(dòng)裝置的狀態(tài)和參數(shù)

S7-200 和西門子傳動(dòng)裝置主要可以通過以下幾種方式連接在一起工作:
S7-200 通過數(shù)字量(DI/DO)信號控制驅(qū)動(dòng)裝置的運(yùn)行狀態(tài)和速度
S7-200 通過數(shù)字量信號控制驅(qū)動(dòng)裝置的運(yùn)行狀態(tài);通過模擬量(AI/AO)信號控制轉(zhuǎn)速等參數(shù)
S7-200 通過串行通信控制驅(qū)動(dòng)裝置的運(yùn)行和各種參數(shù)
****************************************************************************************************

由于題目的需要,那就使用“S7-200 通過串行通信控制驅(qū)動(dòng)裝置的運(yùn)行 ”,也就是控制啟停。
S7-200 CPU 將在 USS 通信中作為主站。而變頻器則為USS從站。
當(dāng)S7-200的編程軟件為V4.0 SP5以上的話,就包括USS協(xié)議指令庫,以下介紹通過西門子提供的 USS 指令庫與 MM 440 之間的串行通信控制。
1、關(guān)于指令庫
        見下圖,就是安裝了USS協(xié)議指令庫的指令樹。

西門子的標(biāo)準(zhǔn) USS 協(xié)議庫以淺藍(lán)色圖標(biāo)表示。如果未找到淺藍(lán)色圖標(biāo)的指令庫,說明系統(tǒng)中沒有安裝西門子標(biāo)準(zhǔn)指令庫。必須先安裝標(biāo)準(zhǔn)指令庫。
2、USS 初始化指令
        西門子的 S7-200 USS 標(biāo)準(zhǔn)指令庫包括 14 個(gè)子程序和 3 個(gè)中斷服務(wù)程序。但是只有 8 個(gè)指令可供用戶使用。一些子程序和所有中斷服務(wù)程序都在調(diào)用相關(guān)的指令后自動(dòng)起作用。每個(gè) USS 庫應(yīng)用都要先進(jìn)行 USS 通信的初始化。使用 USS_INIT 指令初始化 USS 通信功能。

打開 USS 指令庫分支,像調(diào)用子程序一樣調(diào)用 USS_INIT 指令。

上圖中:
a. EN: 初始化程序 USS_INIT 只需在程序中執(zhí)行一個(gè)周期就能改變通信口的功能,以及進(jìn)行其他一些必要的初始設(shè)置,因此可以使用 SM0.1 或者沿觸發(fā)的接點(diǎn)調(diào)用 USS_INIT 指令;
b. Mode: 模式選擇,執(zhí)行 USS_INIT 時(shí) ,Mode 的狀態(tài)決定 是否在 Port 0 上使用 USS 通信功能;
      = 1 設(shè)置 Port 0 為 USS 通信協(xié)議并進(jìn)行相關(guān)初始化
         0 恢復(fù) Port 0 為 PPI 從站模式
c. Baud: USS 通信波特率。此參數(shù)要和變頻器的參數(shù)設(shè)置一致;
      = 2400   2400 bit/s  
         4800   4800 bit/s  
        9600    9600 bit/s  
        19200 19200 bit/s  
        38400  38400 bit/s  
        57600 57600 bit/s  
     115200 115200 bit/s  
d. Active: 此參數(shù)決定網(wǎng)絡(luò)上的哪些 USS 從站在通信中有效。詳見下面的說明;
e. Done: 初始化完成標(biāo)志
f. Error: 初始化錯(cuò)誤代碼

Active 參數(shù)   USS_INIT 子程序的 Active 參數(shù)用來表示網(wǎng)絡(luò)上哪些 USS 從站要被主站訪問,即在主站的輪詢表中激活。網(wǎng)絡(luò)上作為 USS 從站的驅(qū)動(dòng)裝置每個(gè)都有不同的 USS 協(xié)議地址,主站要訪問的驅(qū)動(dòng)裝置,其地址必須在主站的輪詢表中激活。USS_INIT 指令只用一個(gè) 32 位長的雙字來映射 USS 從站有效地址表,Active 的無符號整數(shù)值就是它在指令輸入端的取值。

在上表中的這個(gè) 32 位的雙字中,每一位的位號表示 USS 從站的地址號;要在網(wǎng)絡(luò)中激活某地址號的驅(qū)動(dòng)裝置,則需要把相應(yīng)位號的位置設(shè)為二進(jìn)制“1",不需要激活 USS 從站,相應(yīng)的位設(shè)置為”0"。最后對此雙字取無符號整數(shù)就可以得出 Active 參數(shù)的取值。
將使用站地址為 3 的 MM 440 變頻器,則須在位號為 03 的位單元格中填入二進(jìn)制“1"。其他不需要激活的地址 對應(yīng)的位設(shè)置為”0"。取整數(shù),計(jì)算出的 Active 值為 00000008 h,即 16#00000008,也等于十進(jìn)制數(shù) 8(如調(diào)用 USS_INIT 指令中的 d)
我一般都是使用 16 進(jìn)制數(shù),這樣可以每 4 位一組進(jìn)行加權(quán)計(jì)算出 16 進(jìn)制數(shù),并組合成一個(gè)整數(shù)。 如果一時(shí)難以計(jì)算出有多個(gè) USS 從站配置情況下的 Active 值,可以使用 Windows 自帶的計(jì)算器。將其設(shè)置為科學(xué)計(jì)算器模式,可以方便地轉(zhuǎn)換數(shù)制。

3、分配庫存儲(chǔ)區(qū)地址

指令庫或者向?qū)Ф家蠓峙鋷齑鎯?chǔ)區(qū)地址,這也是使用西門子200容易忽略的步驟。

USS 指令庫需要大概 400 個(gè)字節(jié)的 V 存儲(chǔ)區(qū)用于支持其工作。調(diào)用 USS_INIT 指令后就可以為 USS 指令庫分配庫存儲(chǔ)區(qū)。也可以在編程的稍后階段分配存儲(chǔ)區(qū)地址,但這一步是必不可少的,否則程序無法通過編譯。注意: S7-200 中的數(shù)據(jù)存儲(chǔ)區(qū)分配原則,分配給庫指令的數(shù)據(jù)區(qū)絕對不能與其他程序使用的數(shù)據(jù)區(qū)有任何重疊。否則會(huì)造成出錯(cuò)。



在指令樹的Project(項(xiàng)目)中,以鼠標(biāo)右鍵單擊Program Block(程序塊),在彈出的快捷菜單中選擇Library Memory。如下圖所示:




4、USS 驅(qū)動(dòng)裝置控制功能塊
USS_CTRL 指令用于對單個(gè)驅(qū)動(dòng)裝置進(jìn)行運(yùn)行控制。這個(gè)功能塊利用了 USS 協(xié)議中的 PZD 數(shù)據(jù)傳輸,控制和反饋信號更新較快。

網(wǎng)絡(luò)上的每一個(gè)激活的 USS 驅(qū)動(dòng)裝置從站,都要在程序中調(diào)用一個(gè)獨(dú)占的 USS_CTRL 指令,而且只能調(diào)用一次。需要控制的驅(qū)動(dòng)裝置必須在 USS 初始化指令運(yùn)行時(shí)定義為“激活”。




在 USS 通信指令庫分支中選擇 USS_CTRL 指令



上圖中:

a. EN: 使用 SM0.0 使能 USS_CTRL 指令
b. RUN: 驅(qū)動(dòng)裝置的啟動(dòng)/停止控制
= 0 停止
1 運(yùn)行
此停車是按照驅(qū)動(dòng)裝置中設(shè)置的斜坡減速指電機(jī)停止
c. OFF2: 停車信號 2。此信號為“1"時(shí),驅(qū)動(dòng)裝置將封鎖主回路輸出,電機(jī)自由停車
d. OFF3: 停車信號 3。此信號為”1"時(shí),驅(qū)動(dòng)裝置將快速停車
e. F_ACK: 故障確認(rèn)。當(dāng)驅(qū)動(dòng)裝置發(fā)生故障后,將通過狀態(tài)字向 USS 主站報(bào)告;如果造成故障的原因排除,可以使用此輸入端清除驅(qū)動(dòng)裝置的報(bào)警狀態(tài),即復(fù)位。注意這是針對驅(qū)動(dòng)裝置的操作。
f. DIR: 電機(jī)運(yùn)轉(zhuǎn)方向控制。其“0/1”狀態(tài)決定運(yùn)行方向
g.Drive: 驅(qū)動(dòng)裝置在 USS 網(wǎng)絡(luò)上的站號。從站必須先在初始化時(shí)激活才能進(jìn)行控制
h.Type: 向 USS_CTRL 功能塊指示驅(qū)動(dòng)裝置類型
= 0 MM 3 系列,或更早的產(chǎn)品
1 MM 4 系列,SINAMICS G 110


i. Speed_SP: 速度設(shè)定值。速度設(shè)定值必須是一個(gè)實(shí)數(shù),給出的數(shù)值是變頻器的頻率范圍百分比還是絕對的頻率值取決于變頻器中的參數(shù)設(shè)置(如 MM 440 的 P2009)
j. Resp_R: 從站應(yīng)答確認(rèn)信號。主站從 USS 從站收到有效的數(shù)據(jù)后,此位將為“1"一個(gè)程序掃描周期,表明以下的所有數(shù)據(jù)都是最新的
k. Error: 錯(cuò)誤代碼。0 = 無出錯(cuò)。其他錯(cuò)誤代碼請參考
l. Status: 驅(qū)動(dòng)裝置的狀態(tài)字。此狀態(tài)字直接來自驅(qū)動(dòng)裝置的狀態(tài)字,表示了當(dāng)時(shí)的實(shí)際運(yùn)行狀態(tài)

詳細(xì)的狀態(tài)字信息意義請參考相應(yīng)的驅(qū)動(dòng)裝置手冊。


m. Speed: 驅(qū)動(dòng)裝置返回的實(shí)際運(yùn)轉(zhuǎn)速度值,實(shí)數(shù)。是否頻率值跟隨設(shè)定值的規(guī)格化設(shè)定
n. Run_EN: 運(yùn)行模式反饋,表示驅(qū)動(dòng)裝置是運(yùn)行(為 1)還是停止(為 0)
o. D_Dir: 指示驅(qū)動(dòng)裝置的運(yùn)轉(zhuǎn)方向,反饋信號
p. Inhibit: 驅(qū)動(dòng)裝置禁止?fàn)顟B(tài)指示(0 - 未禁止,1 - 禁止?fàn)顟B(tài))。禁止?fàn)顟B(tài)下驅(qū)動(dòng)裝置無法運(yùn)行。要清除禁止?fàn)顟B(tài),故障位必須復(fù)位,并且 RUN, OFF2 和 OFF3 都為 0
q. Fault: 故障指示位(0 - 無故障,1 - 有故障)。表示驅(qū)動(dòng)裝置處于故障狀態(tài),驅(qū)動(dòng)裝置上會(huì)顯示故障代碼(如果有顯示裝置)。要復(fù)位故障報(bào)警狀態(tài),必須先消除引起故障的原因,然后用 F_ACK 或者驅(qū)動(dòng)裝置的端子、或操作面板復(fù)位故障狀態(tài)。



USS_CTRL 已經(jīng)能完成基本的驅(qū)動(dòng)裝置控制,如果需要有更多的參數(shù)控制選項(xiàng),可以選用 USS 指令庫中的參數(shù)讀寫指令實(shí)現(xiàn)。


5、MM 440 的參數(shù)設(shè)置

5.1 控制源參數(shù)設(shè)置
控制命令控制驅(qū)動(dòng)裝置的啟動(dòng)、停止、正/反轉(zhuǎn)等功能。控制源參數(shù)設(shè)置決定了驅(qū)動(dòng)裝置從何種途徑接受控制信號。

控制源由參數(shù) P0700 設(shè)置,選擇5






5.2 設(shè)定源控制參數(shù)
設(shè)定值控制驅(qū)動(dòng)裝置的轉(zhuǎn)速/頻率等功能。設(shè)定源參數(shù)決定了驅(qū)動(dòng)裝置從哪里接受設(shè)定值(即給定)。

設(shè)定源由參數(shù) P1000 設(shè)置:同樣選擇5




5.3 USS 通信控制的參數(shù)設(shè)置


主要參數(shù)有:

1. P0700: 設(shè)置 P0700[0] = 5,即控制源來自 COM Link 上的 USS 通信
2. P1000: 設(shè)置 P1000[0] = 5,即設(shè)定源來自 COM Link 上的 USS 通信
3. P2009: 決定是否對 COM Link 上的 USS 通信設(shè)定值規(guī)格化,即設(shè)定值將是運(yùn)轉(zhuǎn)頻率的百分比形式,還是絕對頻率值

= 0 不規(guī)格化 USS 通信設(shè)定值,即設(shè)定為變頻器中的頻率設(shè)定范圍的百分比形式。
1 對 USS 通信設(shè)定值進(jìn)行規(guī)格化,即設(shè)定值為絕對的頻率數(shù)值。


4. P2010: 設(shè)置 COM Link 上的 USS 通信速率。根據(jù) S7-200 通信口的限制,支持的通信波特率有:

= 4 2400 bit/s
5 4800 bit/s
6 9600 bit/s
7 19200 bit/s
8 38400 bit/s
9 57600 bit/s
12 115200 bit/s


5. P2011: 設(shè)置 P2011[0] = 0 至 31,即驅(qū)動(dòng)裝置 COM Link 上的 USS 通信口在網(wǎng)絡(luò)上的從站地址。

USS 網(wǎng)絡(luò)上不能有任何兩個(gè)從站的地址相同。


6. P2012: 設(shè)置 P2012[0] = 2,即 USS PZD 區(qū)長度為 2 個(gè)字長。
7. P2013: 設(shè)置 P2013[0] = 127,即 USS PKW 區(qū)的長度可變。
8. P2014: 設(shè)置 P2014[0] = 0 至 65535,即 COM Link 上的 USS 通信控制信號中斷超時(shí)時(shí)間,單位為 ms。如設(shè)置為 0,則不進(jìn)行此端口上
的超時(shí)檢查。
此通信控制信號中斷,指的是接收到的對本裝置有效通信報(bào)文之間的最大間隔。如果設(shè)定了超時(shí)時(shí)間,報(bào)文間隔超過此設(shè)定時(shí)間還沒有接收到
下一條信息,則會(huì)導(dǎo)致 F0072 錯(cuò)誤,變頻器將會(huì)停止運(yùn)行。通信恢復(fù)后此故障才能被復(fù)位。
根據(jù) USS 網(wǎng)絡(luò)通信速率和站數(shù)的不同,此超時(shí)值會(huì)不同。如果要設(shè)定超時(shí)值,請參考相關(guān)表格,并選取一個(gè)適當(dāng)?shù)臄?shù)值。
9. P0971: 設(shè)置 P0971 = 1,上述參數(shù)將保存入MM 440 的 EEPROM 中。

USS 通信是由 S7-200 和驅(qū)動(dòng)裝置配合,因此相關(guān)參數(shù)一定要配合設(shè)置。如通信速率設(shè)置不一樣,當(dāng)然無法通信。
我這有個(gè)西門子的PLC和變頻器DP通訊
一、硬件組態(tài)
1. 將MASTERDRIVES CBP/CBP2 加入組態(tài)
2. Profibus 地址

3. 將MICR.master4 加入組態(tài)
4. Profibus 地址

二、選擇數(shù)據(jù)格式
1. MASTERDRIVE中可供選擇的PP0類型
2. I/Q address

3. MICR.master4 中可供選擇的數(shù)據(jù)格式
4. I/Q address

Step 7 中的編程
創(chuàng)建數(shù)據(jù)塊DB1

說明:
1.在Step7 中對PKW (參數(shù)區(qū))讀寫參數(shù)時(shí)調(diào)用SFC14和 SFC15
2. SFC14(“DPRD_DAT”)用于讀Profibus 從站的數(shù)據(jù)
3. SFC15(“DPWR_DAT”)用于將數(shù)據(jù)寫入Profibus 從站
4. W#16#100(即256)是硬件組態(tài)時(shí)PKW的起始地址
舉例
讀參數(shù)r015


1. W#16#100(即256)是硬件組態(tài)時(shí)PKW的起始地址
2 .將從站數(shù)據(jù)讀入DB1.DBX0.0 開始的8個(gè)字節(jié)(P#DB1.DBX0.0 BYTE 8)
PKE -> DB1.DBW0
IND -> DB1.DBW2
PWE1 -> DB1.DBW4 參數(shù)值的高字位
PWE2 -> DB1.DBW6 參數(shù)值的低字位
3 .將DB1.DBX28.0 開始的8個(gè)字節(jié)寫入從站(P#DB1.DBX28.0 BYTE 8)
DB1.DBW28 -> PKE
DB1.DBW30 -> IND
參數(shù)值的高字位 DB1.DBW32 -> PWE1
參數(shù)值的低字位 DB1.DBW34 -> PWE2
舉例
讀參數(shù)P401.2


1. W#16#100(即256)是硬件組態(tài)時(shí)PKW的起始地址
2 .將從站數(shù)據(jù)讀入DB1.DBX0.0 開始的8個(gè)字節(jié)(P#DB1.DBX0.0 BYTE 8)
PKE -> DB1.DBW0
IND -> DB1.DBW2
PWE1 -> DB1.DBW4 參數(shù)值的高字位
PWE2 -> DB1.DBW6 參數(shù)值的低字位
3 . 將DB1.DBX28.0 開始的8個(gè)字節(jié)寫入從站(P#DB1.DBX28.0 BYTE 8)
DB1.DBW28 -> PKE
DB1.DBW30 -> IND
參數(shù)值的高字位 DB1.DBW32 -> PWE1
參數(shù)值的低字位 DB1.DBW34 -> PWE2
舉例
3. 讀參數(shù)U001.2




1. W#16#100(即256)是硬件組態(tài)時(shí)PKW的起始地址
2 .將從站數(shù)據(jù)讀入DB1.DBX0.0 開始的8個(gè)字節(jié)(P#DB1.DBX0.0 BYTE 8)
PKE -> DB1.DBW0
IND -> DB1.DBW2
PWE1 -> DB1.DBW4 參數(shù)值的高字位
PWE2 -> DB1.DBW6 參數(shù)值的低字位
3 . 將DB1.DBX28.0 開始的8個(gè)字節(jié)寫入從站(P#DB1.DBX28.0 BYTE 8)
DB1.DBW28 -> PKE
DB1.DBW30 -> IND
參數(shù)值的高字位 DB1.DBW32 -> PWE1
參數(shù)值的低字位 DB1.DBW34 -> PWE2

舉例(寫參數(shù))
4. 寫參數(shù)P401.1 (將W#16#1000 寫入P401.1中)

1.將W#16# 8191 寫入DB1.DBW28 (PWE)


1. W#16#100(即256)是硬件組態(tài)時(shí)PKW的起始地址
2 .將從站數(shù)據(jù)讀入DB1.DBX0.0 開始的8個(gè)字節(jié)(P#DB1.DBX0.0 BYTE 8)
PKE -> DB1.DBW0
IND -> DB1.DBW2
PWE1 -> DB1.DBW4 參數(shù)值的高字位
PWE2 -> DB1.DBW6 參數(shù)值的低字位
3 . 將DB1.DBX28.0 開始的8個(gè)字節(jié)寫入從站(P#DB1.DBX28.0 BYTE 8)
DB1.DBW28 -> PKE
DB1.DBW30 -> IND
參數(shù)值的高字位 DB1.DBW32 -> PWE1
參數(shù)值的低字位 DB1.DBW34 -> PWE2

對PZD (過程數(shù)據(jù))的讀寫
說明:
1. 在Step7 中對PZD (過程數(shù)據(jù))讀寫參數(shù)時(shí)調(diào)用SFC14和SFC15
2. SFC14(“DPRD_DAT”)用于讀Profibus 從站的數(shù)據(jù)
3. SFC15(“DPWR_DAT”)用于將數(shù)據(jù)寫入Profibus 從站
4. W#16#108(即264)是硬件組態(tài)時(shí)PZD的起始地址
5. 對特殊結(jié)構(gòu)的PZD 可用PQW , PIW 進(jìn)行讀寫
舉例
5: 對PPO5 中10PZD的讀寫


DB1中與PZD相對應(yīng)的數(shù)據(jù)字

1.在P918 中設(shè)置Profibus 地址,必須與Step 7 中設(shè)置相同.地址不能重復(fù).
2. 控制字第十位置“1”. PZD1 = W#16#X4XX

93329737
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 23 個(gè)
工控威望: 188 點(diǎn)
下載積分: 524 分
在線時(shí)間: 18(小時(shí))
注冊時(shí)間: 2009-04-14
最后登錄: 2024-08-27
查看93329737的 主題 / 回貼
1樓  發(fā)表于: 2010-11-10 14:42
。。。沒圖片
yexinping
思達(dá)
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 199 個(gè)
工控威望: 299 點(diǎn)
下載積分: 906 分
在線時(shí)間: 130(小時(shí))
注冊時(shí)間: 2008-08-31
最后登錄: 2024-11-23
查看yexinping的 主題 / 回貼
2樓  發(fā)表于: 2011-04-03 16:30
感謝樓主
愛家愛china
愛家愛china
級別: 家園?
精華主題: 0
發(fā)帖數(shù)量: 507 個(gè)
工控威望: 882 點(diǎn)
下載積分: 1374 分
在線時(shí)間: 245(小時(shí))
注冊時(shí)間: 2009-09-07
最后登錄: 2024-06-17
查看愛家愛china的 主題 / 回貼
3樓  發(fā)表于: 2011-04-07 22:59
看不到圖。。。
朋友多了路好走!!!