西門子CPU控制單元6ES7216-2AD23-0XB8
3.5 使用USS協(xié)議的初始化模塊初始化S7-200的PORT0端口:
EN使能:每次改變通訊狀態(tài)都應(yīng)該執(zhí)行一次初始化指令。所以EN信號(hào)應(yīng)該通過(guò)邊沿檢測(cè)元件脈沖激活。
Mode:用這個(gè)USS輸入值選擇通訊協(xié)議。
1:為端口0USS協(xié)議,并啟用該協(xié)議。
0:為端口0PPI協(xié)議,并禁止USS協(xié)議。
Baud: 波特率:9600,19200…115200。
Active:激活驅(qū)動(dòng)地址。
Done:當(dāng)USS_INIT 指令執(zhí)行完成后,Done=1。
Error:指令執(zhí)行的結(jié)果,如果有錯(cuò)誤,顯示錯(cuò)誤代碼。
Active:激活驅(qū)動(dòng)地址舉例:
3.6 使用USS——CTRL模塊來(lái)控制USS地址為3的變頻器,為了運(yùn)行變頻器需要按照表一設(shè)置參數(shù):
狀態(tài)表:
功能塊定義:
EN:通常情況總是激活。
RUN:指示驅(qū)動(dòng)為啟用(1),或禁止(0)。
OFF2:允許V20自由停車。
OFF3:允許V20快速停止。
F _ACK:V2*復(fù)位。
DIR:V20轉(zhuǎn)動(dòng)方向(0:逆時(shí)針;1:順時(shí)針)。
Drive:V20地址 0-31。
Speed:速度給定值,以全速的百分比給出 (-200.0~~200.0%,負(fù)值時(shí),V20反向)。
Resp_R:輪詢V20,掃描時(shí)=1,并更新下面值。
Error:錯(cuò)誤字節(jié),參見表:USS指令執(zhí)行錯(cuò)誤。
Status:V20返回狀態(tài)值。
Speed:V20速度,(-200.0~~200.0%)。
Run_EN:V20運(yùn)行狀態(tài)(1:運(yùn)行;0:停止)。
D_DIR:V20轉(zhuǎn)動(dòng)方向(0:逆時(shí)針;1:順時(shí)針)
Inhibit:V20禁止位狀態(tài)。 (0:?jiǎn)⒂茫?:禁止)。要清除禁止位,必須將Fault清零,
RUN,OFF2, OFF3輸入也要清零。
Fault:指示故障狀態(tài)。根據(jù)V2*表確認(rèn)故障。故障排除后,置位F _ACK使Fault
清零。
表二:Error 信息
Error代碼 | 說(shuō)明 |
0 | 沒(méi)有錯(cuò)誤 |
1 | 驅(qū)動(dòng)未響應(yīng) |
2 | 檢測(cè)到驅(qū)動(dòng)響應(yīng)中存在校驗(yàn)和錯(cuò)誤 |
3 | 檢測(cè)到驅(qū)動(dòng)響應(yīng)中存在奇偶校驗(yàn)錯(cuò)誤 |
4 | 由于用戶程序干擾導(dǎo)致出錯(cuò) |
5 | 嘗試執(zhí)行了無(wú)效命令 |
6 | 提供的驅(qū)動(dòng)地址無(wú)效 |
7 | 該通訊接口不能實(shí)現(xiàn)USS協(xié)議 |
8 | 該通訊接口正在忙于處理指令 |
9 | 驅(qū)動(dòng)速度輸入溢出 |
10 | 驅(qū)動(dòng)響應(yīng)的長(zhǎng)度不正確 |
11 | 驅(qū)動(dòng)響應(yīng)的首字符不正確 |
12 | 驅(qū)動(dòng)響應(yīng)的長(zhǎng)度字符不正確 |
13 | 驅(qū)動(dòng)響應(yīng)錯(cuò)誤 |
14 | 給出的DB_PTR地址不正確 |
15 | 給出的參數(shù)號(hào)不正確 |
16 | 選擇了無(wú)效的協(xié)議 |
17 | 啟用USS:不允許更改 |
18 | 了無(wú)效的波特率 |
19 | 無(wú)通訊:驅(qū)動(dòng)未激活 |
20 | 驅(qū)動(dòng)響應(yīng)中的參數(shù)或值不正確 |
- 滿足復(fù)雜技術(shù)任務(wù)的高性能套件
- 附加的PPI端口可以增加靈活性和通訊能力
- 本機(jī)帶40個(gè)輸入/輸出點(diǎn)
- 擴(kuò)多7個(gè)擴(kuò)展機(jī)架的擴(kuò)展能力
Design
CPU 226 裝配有:
- 集成式 2 V 編碼器/負(fù)載電源:
用于直接連接傳感器和編碼器。 具有 400 mA 輸出電流,它也可用作負(fù)載電源。 - 2種型號(hào):
帶多種電源和控制電壓 - 內(nèi)置數(shù)字量輸入/輸出:
24個(gè)輸入和 16 個(gè)輸出。 - 2 個(gè)通訊接口:
可選- 作為 PPI接口,用于編程功能、HMI 功能(TD 200、OP),S7-200 內(nèi)部 CPU / CPU 通信(9.6/19.2/187.5 kbps),或作為 MPI從站,用于和 MPI 主站(S7-300 / -400、OP、TD、按鈕板)進(jìn)行數(shù)據(jù)交換。
- 用戶可編程接口(FreePort),帶中斷能力,用于和非西門子設(shè)備進(jìn)行串行數(shù)據(jù)交換,例如在 ASCII 協(xié)議下、波特率為 1.2/2.4/4.8/9.6/19.2/38.4/57.6/115.2 Kbit/s時(shí),可將 PC / PPI 電纜用作為 RS 232/ RS 485 適配器。
- 擴(kuò)展總線:
連接擴(kuò)展模塊 (只能使用 22x 系列的擴(kuò)展模塊)。 - 中斷輸入:
對(duì)過(guò)程信號(hào)的上升沿或下降沿作出*速響應(yīng) - 高速計(jì)數(shù)器:
6 個(gè)高速計(jì)數(shù)器(30 kHz), 可通過(guò)參數(shù)設(shè)置使能和復(fù)位輸入,具有2個(gè)單獨(dú)的輸入端,可同時(shí)用作增/減計(jì)數(shù)器;或者可以連接2個(gè)具有90°相差脈沖列(4x20 kHz)的增量編碼器。 - 通過(guò)數(shù)字量和模擬量擴(kuò)展模塊進(jìn)行*擴(kuò)展(擴(kuò)展模塊,選件)。
- 仿真器(可選):
用于集成輸入的仿真和用戶程序的檢驗(yàn)。 - 模擬電位計(jì):
2 個(gè)模擬電位計(jì),可在日常工作中用作一個(gè)設(shè)定值計(jì)數(shù)器,例如設(shè)定時(shí)間。 - 脈沖輸出:
2 個(gè)高頻脈沖輸出( 20 kHz);用于定位任務(wù)及通過(guò)電源電路控制調(diào)頻電機(jī)和步進(jìn)電機(jī)。 - 實(shí)時(shí)時(shí)鐘:
例如用于給報(bào)文加時(shí)間標(biāo)記、紀(jì)錄機(jī)器運(yùn)行時(shí)間或用于基于時(shí)間的過(guò)程控制。 - EEPROM 子模塊(選件):
用于保存完整的 STEP 7-Micro/WIN 用戶程序及其它文檔。
用于支持?jǐn)?shù)據(jù)記錄功能和配方管理。
允許快速修改程序(即使沒(méi)有編程器)和其它程序歸檔。 控制系統(tǒng)PLC數(shù)字輸入卡SF燈變紅色故障檢查、分析:將卡件電源重新送電后,故障現(xiàn)象依然存在;重新啟動(dòng)PLC主機(jī)后,故障指示燈仍舊是紅色。于是對(duì)卡件所接收的現(xiàn)場(chǎng)信號(hào)一一進(jìn)行檢查后發(fā)現(xiàn)一回訊開關(guān)有異常。用萬(wàn)用表測(cè)量后發(fā)現(xiàn),回路電阻無(wú)窮大,這說(shuō)明回訊開關(guān)壞而被數(shù)字輸入卡檢測(cè)到。 故障處理:更換件后故障指示燈滅。⑥造粒機(jī)PLC控制系統(tǒng)模擬輸入卡接收的現(xiàn)場(chǎng)信號(hào)在DCS上指示無(wú)窮大故障檢查、分析:分析可能是現(xiàn)場(chǎng)壓力變送器和接線箱之間相互連接的通訊電纜出現(xiàn)故障,于是更換通訊電纜,但現(xiàn)象依然如故。。
西門子PLC的基本結(jié)構(gòu)及工作原理
PLC實(shí)質(zhì)是一種于工業(yè)控制的計(jì)算機(jī),其硬件結(jié)構(gòu)基本上與微型計(jì)算機(jī)相同。plc基本結(jié)構(gòu)基本相同,主要有CPU,電源,儲(chǔ)存器和輸入輸出接口電路等組成。處理器單元一般由控制器、運(yùn)算器和寄存器組成。
組態(tài)王和多臺(tái)西門子S7-300、400PLC通過(guò)DP協(xié)議通訊時(shí),設(shè)備地址應(yīng)如何定義?1)硬件連接:計(jì)算機(jī)中插入一塊CP5611(或CP5613)可實(shí)現(xiàn)將多個(gè)S7-300/400PLC連接在一條DP總線上。 2)DP協(xié)議設(shè)置:所有PLC必須設(shè)置的DPSlave站,CP5611(或CP5613)要求通過(guò)Simaticnet設(shè)置的DPmaster站;3)組態(tài)王中設(shè)備地址定義:選擇PLC/西門子/S7-200系列(DP)/Profibus-DP,設(shè)備地址固定為1.1(該地址與從站PLC的地址設(shè)置無(wú)關(guān))。 而對(duì)于MPI協(xié)議,我們的MPI驅(qū)動(dòng)是通過(guò)調(diào)用西門子PLC的動(dòng)態(tài)連接庫(kù)(等)實(shí)現(xiàn)和PLC進(jìn)行通訊的,并不是直接通過(guò)串口實(shí)現(xiàn)數(shù)據(jù)通訊。西門子—300PLC通過(guò)MPI通訊卡與組態(tài)王進(jìn)行通訊時(shí),能否實(shí)現(xiàn)雙設(shè)備冗余的功能?可以實(shí)現(xiàn)。
西門子CPU控制單元6ES7216-2AD23-0XB8
3.4 變頻器參數(shù)設(shè)置:
V20 可以通過(guò)選擇連接宏Cn010實(shí)現(xiàn)USS控制,也可以通過(guò)直接更改變頻器參數(shù)的方法來(lái)實(shí)現(xiàn)。參數(shù)設(shè)置如下表所示:
表一:
參數(shù) | 描述 | Cn010默認(rèn)值 | 實(shí)際設(shè)置 | 備注 |
P0700[0] | 選擇命令源 | 5 | 5 | RS485為命令源 |
P1000[0] | 選擇頻率 | 5 | 5 | RS485為速度設(shè)定值 |
P2023 | RS485協(xié)議選擇 | 1 | 1 | USS協(xié)議 |
P2010[0] | USS/MODBUS波特率 | 8 | 6 | 波特率為9600bps |
P2011[0] | USS地址 | 1 | 3 | 變頻器的USS地址 |
P2012[0] | USS PZD長(zhǎng)度 | 2 | 2 | PZD部分的字?jǐn)?shù) |
P2013[0] | USS PKW長(zhǎng)度 | 127 | 127 | PKW部分字?jǐn)?shù)可變 |
P2014[0] | USS/MODBUS報(bào)文間斷時(shí)間 | 500 | 0 | 接收數(shù)據(jù)時(shí)間 |
3.5 使用USS協(xié)議的初始化模塊初始化S7-200的PORT0端口:
EN使能:每次改變通訊狀態(tài)都應(yīng)該執(zhí)行一次初始化指令。所以EN信號(hào)應(yīng)該通過(guò)邊沿檢測(cè)元件脈沖激活。
Mode:用這個(gè)USS輸入值選擇通訊協(xié)議。
1:為端口0USS協(xié)議,并啟用該協(xié)議。
0:為端口0PPI協(xié)議,并禁止USS協(xié)議。
Baud: 波特率:9600,19200…115200。
Active:激活驅(qū)動(dòng)地址。
Done:當(dāng)USS_INIT 指令執(zhí)行完成后,Done=1。
Error:指令執(zhí)行的結(jié)果,如果有錯(cuò)誤,顯示錯(cuò)誤代碼。
Active:激活驅(qū)動(dòng)地址舉例:
3.6 使用USS——CTRL模塊來(lái)控制USS地址為3的變頻器,為了運(yùn)行變頻器需要按照表一設(shè)置參數(shù):
狀態(tài)表:
功能塊定義:
EN:通常情況總是激活。
RUN:指示驅(qū)動(dòng)為啟用(1),或禁止(0)。
OFF2:允許V20自由停車。
OFF3:允許V20快速停止。
F _ACK:V2*復(fù)位。
DIR:V20轉(zhuǎn)動(dòng)方向(0:逆時(shí)針;1:順時(shí)針)。
Drive:V20地址 0-31。
Speed:速度給定值,以全速的百分比給出 (-200.0~~200.0%,負(fù)值時(shí),V20反向)。
Resp_R:輪詢V20,掃描時(shí)=1,并更新下面值。
Error:錯(cuò)誤字節(jié),參見表:USS指令執(zhí)行錯(cuò)誤。
Status:V20返回狀態(tài)值。
Speed:V20速度,(-200.0~~200.0%)。
Run_EN:V20運(yùn)行狀態(tài)(1:運(yùn)行;0:停止)。
D_DIR:V20轉(zhuǎn)動(dòng)方向(0:逆時(shí)針;1:順時(shí)針)
Inhibit:V20禁止位狀態(tài)。 (0:?jiǎn)⒂茫?:禁止)。要清除禁止位,必須將Fault清零,
RUN,OFF2, OFF3輸入也要清零。
Fault:指示故障狀態(tài)。根據(jù)V2*表確認(rèn)故障。故障排除后,置位F _ACK使Fault
清零。
表二:Error 信息
Error代碼 | 說(shuō)明 |
0 | 沒(méi)有錯(cuò)誤 |
1 | 驅(qū)動(dòng)未響應(yīng) |
2 | 檢測(cè)到驅(qū)動(dòng)響應(yīng)中存在校驗(yàn)和錯(cuò)誤 |
3 | 檢測(cè)到驅(qū)動(dòng)響應(yīng)中存在奇偶校驗(yàn)錯(cuò)誤 |
4 | 由于用戶程序干擾導(dǎo)致出錯(cuò) |
5 | 嘗試執(zhí)行了無(wú)效命令 |
6 | 提供的驅(qū)動(dòng)地址無(wú)效 |
7 | 該通訊接口不能實(shí)現(xiàn)USS協(xié)議 |
8 | 該通訊接口正在忙于處理指令 |
9 | 驅(qū)動(dòng)速度輸入溢出 |
10 | 驅(qū)動(dòng)響應(yīng)的長(zhǎng)度不正確 |
11 | 驅(qū)動(dòng)響應(yīng)的首字符不正確 |
12 | 驅(qū)動(dòng)響應(yīng)的長(zhǎng)度字符不正確 |
13 | 驅(qū)動(dòng)響應(yīng)錯(cuò)誤 |
14 | 給出的DB_PTR地址不正確 |
15 | 給出的參數(shù)號(hào)不正確 |
16 | 選擇了無(wú)效的協(xié)議 |
17 | 啟用USS:不允許更改 |
18 | 了無(wú)效的波特率 |
19 | 無(wú)通訊:驅(qū)動(dòng)未激活 |
20 | 驅(qū)動(dòng)響應(yīng)中的參數(shù)或值不正確 |
圖5
注意:如果在數(shù)據(jù)塊中定義了某地址的數(shù)據(jù),而又使用這種辦法存儲(chǔ)同樣地址的數(shù)據(jù),則當(dāng)CPU內(nèi)超級(jí)電容或電池沒(méi)電時(shí),CPU再上電時(shí)將采用SMB31和SMW32存儲(chǔ)的數(shù)據(jù)。
問(wèn)題8:EEPROM寫入次數(shù)的統(tǒng)計(jì)?
回答:每次下載程序塊/數(shù)據(jù)塊/系統(tǒng)塊或者執(zhí)行一次SMB31.7置位的操作都算作對(duì)EEPROM的一次寫操作,所以請(qǐng)注意在程序中一定不要每周期都調(diào)用SMB31/SMW32用于將數(shù)據(jù)寫入EEPROM內(nèi),否則CPU將很快報(bào)廢。
問(wèn)題9:不使用數(shù)據(jù)塊的方法,如何在程序中實(shí)現(xiàn)不止一個(gè)V區(qū)數(shù)據(jù)的存儲(chǔ)?
回答:由于SMB31/SMW32一次多只能送入一個(gè)V區(qū)雙字給EEPROM區(qū)域,因而當(dāng)有超過(guò)一個(gè)雙字的數(shù)據(jù)需要送入EEPROM中時(shí),需要程序配合實(shí)現(xiàn)。具體操作方法可參照如下的例子,即使用SMB31/SMW32送完一個(gè)數(shù)據(jù)(字節(jié)/字/雙字)之后,通過(guò)一個(gè)標(biāo)志位(如M0.0)來(lái)觸發(fā)下一個(gè)SMB31/SMW32操作,之后需要將上一個(gè)標(biāo)志位清零,以用于下一次的存儲(chǔ)數(shù)據(jù)的操作。
由于SM31.7在每次操作結(jié)束之后都自動(dòng)復(fù)位,因而不能使用它作為第二次觸發(fā)操作的條件。
以上程序僅供參考。