6ES7222-1HH32-0XB0 6ES7222-1HH32-0XB0 6ES7222-1HH32-0XB0
SIMATIC S7-1200, DIGITAL OUTPUT SM 1222, 16 DO, RELAY 2A
產(chǎn)品品牌:siemens/西門子
產(chǎn)品規(guī)格:全新原裝
產(chǎn)品質(zhì)量:質(zhì)量保證
產(chǎn)品價(jià)格:價(jià)格優(yōu)勢
【同樣的價(jià)格、同樣的品牌、給您不一樣的服務(wù)】
長沙玥勵(lì)自動(dòng)化設(shè)備有限公司(西門子系統(tǒng)集成商)專業(yè)銷售西門子S7-200/300/400/1200PLC、數(shù)控系統(tǒng)、變頻器、人機(jī)界面、觸摸屏、伺服、電機(jī)、西門子電纜等,并可提供西門子維修服務(wù),歡迎來電垂詢
聯(lián)系人: 張亮 (銷售經(jīng)理)
手機(jī) : 13548747710
QQ : 809118149
地址:長沙市岳麓區(qū)雷鋒大道468號(hào)金科世界城16-1603室
公司大量現(xiàn)貨!??!
產(chǎn)品 | |
商品編號(hào)(市售編號(hào)) | 6ES7222-1HH32-0XB0 |
產(chǎn)品說明 | SIMATIC S7-1200, DIGITAL OUTPUT SM 1222, 16 DO, RELAY 2A |
產(chǎn)品家族 | SM 1222 數(shù)字量輸出模塊 |
產(chǎn)品生命周期 (PLM) | PM300:有效產(chǎn)品 |
價(jià)格數(shù)據(jù) | |
價(jià)格組 / 總部價(jià)格組 | SK / 212 |
列表價(jià)(不含增值稅) | 顯示價(jià)格 |
您的單價(jià)(不含增值稅) | 顯示價(jià)格 |
金屬系數(shù) | 無 |
交付信息 | |
出口管制規(guī)定 | AL : N / ECCN : EAR99H |
工廠生產(chǎn)時(shí)間 | 15 天 |
凈重 (Kg) | 0.26 Kg |
產(chǎn)品尺寸 (W x L X H) | 未提供 |
包裝尺寸 | 88.00 x 106.00 x 58.00 |
包裝尺寸單位的測量 | CM |
數(shù)量單位 | 1 件 |
包裝數(shù)量 | 1 |
其他產(chǎn)品信息 | |
EAN | 6940408101968 |
UPC | 未提供 |
商品代碼 | 85389091 |
LKZ_FDB/ CatalogID | ST72 |
產(chǎn)品組 | 4508 |
原產(chǎn)國 | 中國 |
硬件S7-1200 常問問題
1.1通過S7-1200 集成以太網(wǎng)接口最多能建立多少個(gè)通信連接?
答:15個(gè),分別是: 3 個(gè)用于 HMI,1 個(gè)用于編程設(shè)備, 8 個(gè)用于用戶程序中的以太網(wǎng)指令, 3 個(gè)用于S7連接(S7-1200只能做Server)。
1.2串口模塊支持那些通信協(xié)議?
答:支持點(diǎn)到點(diǎn)基于字符的串口通信(ASCII),USS協(xié)議(RS 485),Modbus RTU 協(xié)議(主/從)。
1.3 S7-1200最多支持幾個(gè)運(yùn)動(dòng)軸的控制?
答:2個(gè)。由于目前CPU 提供最多2個(gè)PTO輸出。
1.4 S7-1200在擴(kuò)展模塊上有何限制?
答:由CPU類型決定,最多可擴(kuò)展8個(gè)信號(hào)模塊(CPU1211C 不能擴(kuò)展,CPU1212C可擴(kuò)展2個(gè),CPU1214C可擴(kuò)展8個(gè))和3個(gè)通信模塊,另外可在CPU上插入1個(gè)信號(hào)板。
1.5 MP277/377面板是否可以與S7-1200連接?
答:可以??梢栽赪inCC flexible 2008 SP1 中使用SIMATIC S7 300/400的驅(qū)動(dòng)建立與S7-1200的連接,但是該功能沒有經(jīng)過系統(tǒng)測試,功能上并沒有保證。在WinCC flexible 2008的SP2有可能增加相應(yīng)的驅(qū)動(dòng)。在通信上也有一些功能限制,它不支持:符號(hào)的DB塊;數(shù)據(jù)類型S5TIME和DATE_AND_TIME,還有一些SIMATIC S7-1200新的數(shù)據(jù)類型;通信的循環(huán)模式;S7 診斷消息。使用WinCC flexible 2008 SP1中建立通信連接時(shí),如圖1所示在通信驅(qū)動(dòng)中選擇“SIMATIC S7 300/400”,在接口中選擇“以太網(wǎng)”,訪問點(diǎn)應(yīng)為“S7ONLINE”,將PLC擴(kuò)展插槽設(shè)為“1”,去除“循環(huán)操作”的選項(xiàng)。
圖1設(shè)置通信連接
1.6 S7-1200 如何計(jì)算外部電源
答:首先確定CPU可為組態(tài)提供多少電流,每個(gè) CPU 都提供了 5 VDC 和 24 VDC 電源:
連接了擴(kuò)展模塊時(shí),CPU 會(huì)為這些擴(kuò)展模塊提供 5 VDC 電源。 如果擴(kuò)展模塊的 5
VDC 功率要求超出 CPU 提供的,則必須拆下一些擴(kuò)展模塊直到其電流消耗在要求的范圍內(nèi)。
每個(gè) CPU 都有一個(gè) 24 VDC 傳感器電源,該電源可以為本地輸入點(diǎn)或擴(kuò)展模塊上的
繼電器線圈提供 24 VDC。 如果 24 VDC 的電流消耗要求超出 CPU 的輸出,則可以增加外部 24 VDC 電源為擴(kuò)展模塊供應(yīng) 24 VDC。
警告:將外部 24 VDC 電源與 DC 傳感器電源并聯(lián)會(huì)導(dǎo)致這兩個(gè)電源之間有沖突,因?yàn)槊總€(gè)電源都試圖建立自己首選的輸出電壓電平。該沖突可能使其中一個(gè)電源或兩個(gè)電源的壽命縮短或立即出現(xiàn)故障,從而導(dǎo)致 PLC系統(tǒng)的運(yùn)行不確定。 運(yùn)行不確定可能導(dǎo)致死亡、人員重傷和/或財(cái)產(chǎn)損失。CPU 上的 DC 傳感器電源和任何外部電源應(yīng)分別給不同位置供電。 允許將多個(gè)公共端連接到一個(gè)位置。
PLC 系統(tǒng)中的一些 24 V 電源輸入端口是互連的,并且通過一個(gè)公共邏輯電路連接多個(gè) M端子。 在指定為非隔離時(shí),CPU 的 24 VDC 電源輸入、SM 繼電器線圈電源輸入以及非隔離模擬電源輸入即是一些互連電路。 所有非隔離的 M 端子必須連接到同一個(gè)外部參考電位。
警告:將非隔離的 M 端子連接到不同參考電位將導(dǎo)致意外的電流,該電流可能導(dǎo)致 PLC 和連接設(shè)備損壞或運(yùn)行不確定。這種損壞或不確定運(yùn)行可能導(dǎo)致死亡、人員重傷和/或財(cái)產(chǎn)損失。務(wù)必確保 PLC 系統(tǒng)中的所有非隔離 M 端子都連接到同一個(gè)參考電位。
為了更清晰了解這個(gè)問題,下面舉了個(gè)例子: 一個(gè) CPU 1214C AC/DC/繼電器型、3 個(gè) SM 1223 8 DC 輸入/8 繼電器輸出和1個(gè)SM 1221 8 DC 輸入。該實(shí)例一共有 46 點(diǎn)輸入和 34 點(diǎn)輸出。這里需要說明的是CPU 已分配驅(qū)動(dòng)內(nèi)部繼電器線圈所需的功率,計(jì)算中無需包括內(nèi)部繼電器線圈的功率要求。
CPU 功率預(yù)算 | 5 VDC | 24 VDC |
CPU 1214C AC/DC/繼電器 | 1600 mA | 400 mA |
減 | ||
系統(tǒng)要求 | 5 VDC | 24 VDC |
CPU 1214C,14 點(diǎn)輸入 | - | 14 * 4 mA = 56 mA |
3 個(gè) SM 1223,5 V 電源 | 3 * 145 mA = 435 mA | |
1 個(gè) SM 1221,5 V 電源 | 1 * 105 mA = 105 mA | |
3 個(gè) SM 1223,各 8 點(diǎn)輸入 | 3 * 8 * 4 mA = 96 mA | |
3 個(gè) SM 1223,各 8 個(gè)繼電器線圈 | 3 * 8 * 11 mA = 264 mA | |
1 個(gè) SM 1221,8 點(diǎn)輸入 | 8 * 4 mA = 32 mA | |
總要求 | 540 mA | 448 mA |
等于 | ||
電流差額 | 5 VDC | 24 VDC |
總電流差額 | 1060 mA | -48 mA |
表1 使用電流計(jì)算
在本例中的 CPU 為 SM 提供了足夠的 5 VDC 電流,但沒有通過傳感器電源為所有輸入和擴(kuò)展繼電器線圈提供足夠的 24 VDC 電流。 I/O 需要 448 mA 而 CPU 只提供 400mA。 該安裝額外需要一個(gè)至少為 48 mA 的 24 VDC 電源以運(yùn)行所有包括的 24 VDC 輸
入和輸出。
1.7 S7-1200 有幾種運(yùn)行模式?
答:有三種,分別是:STOP 模式、STARTUP 模式和RUN模式。
在 STOP 模式下,CPU 不執(zhí)行任何程序,而用戶可以下載項(xiàng)目;
在 STARTUP 模式下,執(zhí)行一次啟動(dòng) OB(如果存在)。 在 RUN 模式的啟動(dòng)階段,
不處理任何中斷事件;
在 RUN 模式下,重復(fù)執(zhí)行掃描周期。 中斷事件可能會(huì)在程序循環(huán)階段的任何點(diǎn)發(fā)生
并進(jìn)行處理。處于 RUN 模式下時(shí),無法下載任何項(xiàng)目。
1.8 S7-1200 支持那些上電模式?
答: 支持三種上電模式,分別為:STOP 模式,暖啟動(dòng)后轉(zhuǎn)到 RUN 模式,暖啟動(dòng)后轉(zhuǎn)到斷電前的模式。
如圖2可在項(xiàng)目視圖中選擇相應(yīng)的PLC設(shè)備,在設(shè)備配置下的CPU屬性“Startup”中進(jìn)行選取。
圖2選擇上電模式
在暖啟動(dòng)時(shí),所有非保持性系統(tǒng)及用戶數(shù)據(jù)都將被初始化,保留保持性用戶數(shù)據(jù)。
1.9 CPU有哪些存儲(chǔ)區(qū)?
答:有三個(gè)存儲(chǔ)區(qū),分別為:
裝載存儲(chǔ)區(qū)(load memory):用于非易失性地存儲(chǔ)用戶程序、數(shù)據(jù)和組態(tài)。 項(xiàng)目被下載到 CPU 后,首先存儲(chǔ)在裝載存儲(chǔ)區(qū)中。 該存儲(chǔ)區(qū)位于存儲(chǔ)卡(如存在)或 CPU 中。 該非易失性存儲(chǔ)區(qū)能夠在斷電后繼續(xù)保持。 存儲(chǔ)卡支持的存儲(chǔ)空間比 CPU 內(nèi)置的存儲(chǔ)空間更大。
工作存儲(chǔ)區(qū)(work memory):屬于易失性存儲(chǔ)器,用于在執(zhí)行用戶程序時(shí)存儲(chǔ)用戶項(xiàng)目的某些內(nèi)容。 CPU會(huì)將一些項(xiàng)目內(nèi)容從裝載存儲(chǔ)器復(fù)制到工作存儲(chǔ)器中。 該易失性存儲(chǔ)區(qū)將在斷電后丟失,而在恢復(fù)供電時(shí)由 CPU 恢復(fù)。
保持性存儲(chǔ)區(qū)(retentive memory) :用于在斷電時(shí)存儲(chǔ)所選用戶存儲(chǔ)單元的值。 發(fā)生掉電時(shí),CPU 留出了足夠的緩沖時(shí)間來保存幾個(gè)有限的指定單元的值。 這些保持性值隨后在上電時(shí)進(jìn)行恢復(fù)。
那么如何顯示當(dāng)前項(xiàng)目的存儲(chǔ)器使用情況,可以右鍵單擊相應(yīng) CPU(或其中的某個(gè)塊),然后從菜單中選擇“資源”(Resources) 。
圖3項(xiàng)目使用存儲(chǔ)器情況
如果要顯示當(dāng)前 CPU 的存儲(chǔ)器使用情況,可以雙擊“在線和診斷”(Online and diagnostics),展開“診斷”(Diagnostics),然后選擇“存儲(chǔ)器”(Memory)。
圖4 CPU使用存儲(chǔ)器情況
1.10 S7-1200 支持那些數(shù)據(jù)類型?
答:見下表:
數(shù)據(jù)類型 | 大 ?。╞its) | 范圍 | 常量輸入實(shí)例 |
Bool | 1 | 0到1 | TRUE,FALSE,0,1 |
Byte | 8 | 16#00 到 16#FF | 16#12, 16#AB |
Word | 16 | 16#0000 to 16#FFFF | 16#ABCD, 16#0001 |
DWord | 32 | 16#00000000 到16#FFFFFFFF | 16#02468ACE |
Char | 8 | 16#00 到 16#FF | 'A', 't', '@' |
Sint | 8 | -128 to 127 | 123, -123 |
Int | 16 | -32,768 to 32,767 | 123, -123 |
Dint | 32 | -2,147,483,648 到2,147,483,647 | 123, -123 |
USInt | 8 | 0 到 255 | 123 |
UInt | 16 | 0 到 65,535 | 123 |
UDInt | 32 | 0 到 4,294,967,295 | 123 |
Real | 32 |
+/-1.18 x 10 ![]() ![]() |
123.456, -3.4, -1.2E+12, 3.4E-3 |
LREAL | 64 |
+/-2.2250738585072020 ×10![]() ![]() |
12345.123456789. -1.2E+40 |
Time | 32 |
T#-24d_20h_31m_23s_648ms 到 T#24d_20h_31m_23s_647ms 存儲(chǔ)為 -2,147,483,648`ms 到 +2,147,483,647ms |
T#5m_30s 5#-2d T#1d_2h_15m_30x_45ms |
String | 可變的 | 0 到 254 字節(jié)字符 | 'ABC' |
DTL | 12個(gè)字節(jié) |
最小值: DTL#1970-01-01-00:00:00.0 最大值: DTL#2554-12-31-23:59:59.999 999 999 |
DTL#2008-12-16- 20:30:20.250 |
表2 數(shù)據(jù)類型
1.11 有幾種存儲(chǔ)卡可供CPU使用,有何作用?
答:有兩種,分別為: 2MB 6ES7 954-8LB00-0AA0 和 24MB 6ES7 954-8LF00-0AA0。
注意:CPU 僅支持預(yù)格式化的 SIMATIC 存儲(chǔ)卡。如果使用 Windows 格式化程序?qū)IMATIC 存儲(chǔ)卡重新進(jìn)行格式化,CPU 將無法使用該存儲(chǔ)卡。在將程序復(fù)制到格式化的存儲(chǔ)卡之前,請刪除存儲(chǔ)卡中以前保存的所有程序。
存儲(chǔ)卡可作為傳送卡或程序卡使用,24MB存儲(chǔ)卡還用于升級(jí)CPU的固件。
傳送卡:可以將卡中的程序復(fù)制到 CPU 的內(nèi)部裝載存儲(chǔ)器,而無需使用 STEP 7 Basic。 插入傳送卡后,CPU 首先擦除內(nèi)部裝載存儲(chǔ)器中的用戶程序和所有強(qiáng)制值,然后將程序從傳送卡復(fù)制到內(nèi)部裝載存儲(chǔ)器。 傳送過程完成后,必須取出傳送卡。在密碼丟失或忘記密碼時(shí) ,可使用空傳送卡訪問受密碼保護(hù)的 CPU。 插入空傳送卡會(huì)刪除 CPU 內(nèi)部裝載存儲(chǔ)器中受密碼保護(hù)的程序。 隨后可以將新的程序下載到 CPU 中。
程序卡:可用作 CPU 的外部裝載存儲(chǔ)器。 在 CPU 中插入程序卡將擦除 CPU 內(nèi)部裝載存儲(chǔ)器的所有內(nèi)容(用戶程序和所有強(qiáng)制值)。 CPU 然后執(zhí)行外部裝載存儲(chǔ)器(程序卡)中的程序。 如果將數(shù)據(jù)下載到插有程序卡的 CPU,將僅更新外部裝載存儲(chǔ)器(程序卡)。
SIMATIC MC |
S7-1200 PLC裝載區(qū)是否有程序 |
結(jié)果 |
||
卡類型 | 是否有程序 | SIMATIC MC | 裝載存儲(chǔ)區(qū) | |
未定義 | 否 | 是 | PLC中的項(xiàng)目 | 空的 |
程序卡 | 是 | 否 | MC卡中的項(xiàng)目 | 空的 |
是 | MC卡中的項(xiàng)目 | 空的 | ||
傳輸卡 | 是 | --- | MC卡中的項(xiàng)目 | |
--- | MC卡中的項(xiàng)目 |
表3 存儲(chǔ)卡應(yīng)用
1.12如何使用存儲(chǔ)卡升級(jí)CPU固件?
答:注意:如果使用 Windows 格式化程序?qū)IMATIC 存儲(chǔ)卡重新進(jìn)行格式化,CPU 將無法使用該存儲(chǔ)卡。
可以按以下步驟升級(jí)固件:
• 將SIMATIC MC 24M 空卡插入計(jì)算機(jī)的SD讀卡器中,使用Windows 瀏覽器察看存儲(chǔ)卡的內(nèi)容。如果卡不是空的,可以刪除名稱為“SIMATIC.S7S”或“FWUPDATE.S7S”的文件夾和“S7_JOB.S7S”文件;
• 從網(wǎng)站(http://support.automation.siemens.com/WW/ )下載S7-1200 CPU 操作系統(tǒng)更新文件,雙擊更新文件夾,設(shè)置SIMATIC MC的根目錄為解壓路經(jīng),開始進(jìn)行文件展開,在解壓結(jié)束后,卡中根目錄下會(huì)有文件夾“FWUPDATE.S7S”和文件“S7_JOB.S7S”;
• 將卡插入CPU 中,如果CPU 處在運(yùn)行狀態(tài),則CPU進(jìn)入停止模式。CPU上的維護(hù)LED將閃爍,這說明卡已經(jīng)安裝。
• 采用以下任一方法開始更新固件:
CPU 重新上電或
使用軟件執(zhí)行STOP模式向RUN 模式轉(zhuǎn)換(CPU將重啟)或
使用軟件執(zhí)行MRES 存儲(chǔ)卡復(fù)位。
這樣CPU進(jìn)入啟動(dòng)(startup)階段并且進(jìn)行固件更新。在固件更新過程中,RUN/STOP LED指示燈在綠和橙之間閃爍。當(dāng)RUN/STOP LED 指示為STOP模式并且MAINT LED 閃爍時(shí),則CPU的固件更新完畢。
• 從CPU 中拔出存儲(chǔ)卡;
• 可使用以下方法重新啟動(dòng)CPU使用新固件:
CPU 重新上電或
使用軟件執(zhí)行STOP模式向RUN 模式轉(zhuǎn)換(CPU將重啟)或
使用軟件執(zhí)行MRES 存儲(chǔ)卡復(fù)位。
用戶程序和硬件配置在更新固件是不會(huì)受影響,在CPU 重新上電后,CPU 將進(jìn)入啟動(dòng)(startup )狀態(tài)。
2 軟件 STEP 7 Basic V10.5 常問問題
2.1軟件安裝對操作系統(tǒng)有何要求?
答:Windows XP (Home SP3, Professional SP3),Windows Vista (Home Premium SP1, Business SP1, Ultimate SP1)。
2.2如何對S7-1200進(jìn)行工廠復(fù)位?
答:首先要求CPU中無存儲(chǔ)卡,STEP 7 Basic與CPU建立了在線連接。接著可按照以下步驟操作:
在項(xiàng)目視圖(project view) 中項(xiàng)目樹( project tree) 下打開在線訪問(online access);
點(diǎn)擊PC與CPU連接的網(wǎng)卡;
雙擊更新可訪問的設(shè)備(update accessible devices);在相應(yīng)的CPU上右擊鼠標(biāo),選擇在線和診斷(online & diagnose);
打開CPU的在線和診斷的視圖;
在“功能”文件夾中選擇“復(fù)位到工廠設(shè)置”組;
如果想保持設(shè)備的IP地址,選擇“保持IP地址”的選擇框;
如果想刪除IP地址,選擇“刪除IP地址”;
點(diǎn)擊“復(fù)位”按鈕;
在提示對話框點(diǎn)擊“OK”確認(rèn)。
在檢查窗口中的信息列表中顯示相應(yīng)的消息,如果為“The module is reset to its factory settings.”則表示已完成CPU工廠復(fù)位工作。
2.3如何對S7-1200 設(shè)置IP地址?
答:我們可以使用兩種方法對CPU分配IP地址:
方法一:使用“在線和診斷”訪問的方式對CPU進(jìn)行IP設(shè)置
在Portal view可以通過 Online & Diagnostics 的Accessible devices操作,進(jìn)入項(xiàng)目樹下的在線訪問(online access)下,右擊所選設(shè)備的“Online & diagnostics”編輯器(見圖5)。在“Online and diagnostics”編輯器中有“Assign IP address”的選項(xiàng),檢查MAC地址,確認(rèn)后設(shè)置IP地址及子網(wǎng)掩碼,點(diǎn)擊“Assign IP address”。
圖5 Online access 編輯器
圖6 Online & diagnostics 編輯器
設(shè)置完成后,可在檢查窗口中察看信息(Info)表格下的消息,通過該消息可確認(rèn)設(shè)置IP是否成功(見圖7)。
圖7 檢查窗口
這種方法適合用于新的CPU 或經(jīng)過“恢復(fù)出廠設(shè)置”的CPU。
方法二:通過下載硬件配置的方式
在硬件配置中,對PROFINET 接口的以太網(wǎng)網(wǎng)地址進(jìn)行設(shè)置。
完成組態(tài)后,可進(jìn)行設(shè)備下載,如果是第一次下載的情況,將進(jìn)入“Extended download to device ”對話框。勾選顯示所有連接設(shè)備(Show all accessible devices)選項(xiàng)。
圖8 試圖建立與設(shè)備連接
選擇相應(yīng)設(shè)備,點(diǎn)擊“Load”進(jìn)入下載界面。
圖9 與設(shè)備建立了連接
設(shè)備在下載前需要對硬件配置進(jìn)行編譯。
圖10 配置編譯
圖11 編譯成功
編譯成功之后,點(diǎn)擊Load進(jìn)行下載。
圖12 下載完成
下載完成以后,可重新啟動(dòng)CPU。這樣就完成了對CPU的硬件配置下載,同時(shí)CPU被設(shè)置成新的IP地址。在沒有路由器的情況下,TCP/IP 通訊要求通訊雙方的IP 地址在一個(gè)子網(wǎng)內(nèi)。為了不必在下載不同的CPU 而頻繁修改編程設(shè)備的IP 地址,STEP7 Basic 在這方面作了一些改進(jìn)。如果在下載過程中,軟件發(fā)現(xiàn)目標(biāo)設(shè)備和編程器不在一個(gè)子網(wǎng)內(nèi),軟件會(huì)自動(dòng)為編程器添加一個(gè)臨時(shí)的IP 地址,而這個(gè)臨時(shí)的IP 地址和目標(biāo)設(shè)備是在同一個(gè)子網(wǎng)內(nèi)的,這樣就可以在不用修改編程器IP 地址的情況下對非同一IP 子網(wǎng)的設(shè)備進(jìn)行下載。
2.4如何對S7-1200 變量進(jìn)行強(qiáng)制?
答:S7-1200 只能強(qiáng)制外設(shè)I/O,而不強(qiáng)制過程映象區(qū)。必須使用watch table進(jìn)行變量強(qiáng)制。操作步驟如下:
• 建立Watch table,例如 Force Variable;
• 輸入需要強(qiáng)制的外設(shè)I/O,例如:%I0.1:P,%Q0.1:P;
• 由于監(jiān)視表默認(rèn)的工具欄是顯示所有修改的列(Show all modify colums) ,點(diǎn)擊顯示強(qiáng)制列(Show force columns)
;
圖12 建立Watch table
• 點(diǎn)擊持續(xù)監(jiān)視(monitor all) ,進(jìn)入在線狀態(tài);
圖13 進(jìn)入監(jiān)視在線狀態(tài)
• 點(diǎn)擊開始強(qiáng)制(start forcing) ,系統(tǒng)會(huì)彈出對話框。
圖14 提示對話框
• 點(diǎn)擊Yes,便可以對外設(shè)I/O進(jìn)行強(qiáng)制了,強(qiáng)制成功有圖標(biāo)顯示 。
圖15 已強(qiáng)制外設(shè)顯示
注意:當(dāng)CPU 中有強(qiáng)制變量時(shí)是不能對CPU 下載硬件的,系統(tǒng)會(huì)提示"Modifying test functions are active. Thus downloading the hardware configuration is denied?"。
要了解哪些變量被強(qiáng)制,可以在watch table 里使用顯示所有強(qiáng)制值工具 (Show all forced value from this CPU)顯示已強(qiáng)制的變量。
2.5如何上載S7-1200 硬件基本配置和程序?
答:可按以下步驟操作:
• 在Portal View 視圖Start 任務(wù)中創(chuàng)建一個(gè)新項(xiàng)目,進(jìn)入First steps 界面;
• 選擇配置一個(gè)設(shè)備(Configure a Device);
• 選擇添加新設(shè)備(Add new device);
• 選擇SIMATIC PLC 下的未指定的CPU 1200 6ES7 2XX-XXXX-XXXX;
• 進(jìn)入Project view 視圖中項(xiàng)目樹下PLC設(shè)備中的設(shè)備視圖( Device view ),在“or detect the configuration of the connected device.”中點(diǎn)擊 detect ;
圖16 設(shè)備視圖
• 選擇相應(yīng)的PLC,點(diǎn)擊Load 便可以上載基本硬件配置了;
圖17 檢測所有連接的硬件
• 如果編程設(shè)備/PC 與PLC 不在一個(gè)網(wǎng)段上,會(huì)彈出分配IP地址詢問對話框,選擇 Yes ,軟件會(huì)為編程設(shè)備/PC分配一個(gè)臨時(shí)IP地址 ,如192.168.0.241;
圖18 軟件為編程設(shè)備/PC分配IP地址
• 在項(xiàng)目樹下,右擊PLC設(shè)備,選擇離線/在線比較(Compare offline/online);
圖19 選擇離線/在線編輯器
• 在比較編輯器中,在操作(Action)列下,點(diǎn)擊藍(lán)和橙點(diǎn) 直至其為
從設(shè)備將對象上載到編程設(shè)備/PC(Upload from device)為止;
圖20 離線/在線編輯器
• 點(diǎn)擊同步在線和離線 按鈕,進(jìn)行上載預(yù)覽窗口,在操作(Action) 選擇繼續(xù)(Continue)并點(diǎn)擊Upload from device上載程序;
圖21 上載瀏覽窗口
• 所有設(shè)備上載完成以后,將在設(shè)備和程序右側(cè)會(huì)有一個(gè)綠色圓點(diǎn),這代表上載成功。
圖22 在線與離線設(shè)備比較
2.6系統(tǒng)和時(shí)鐘存儲(chǔ)器可以提供哪些功能?
答:可以分別為系統(tǒng)存儲(chǔ)器和時(shí)鐘存儲(chǔ)器分配一個(gè)非保留的M存儲(chǔ)器的字節(jié),使能這些存儲(chǔ)器的功能。
圖23 系統(tǒng)和時(shí)鐘存儲(chǔ)器
系統(tǒng)存儲(chǔ)器具有以下功能:
• 首次掃描( First cycle)位在啟動(dòng) OB 完成后的第一次掃描期間設(shè)置為 1。 (執(zhí)行完第一次掃描后,“首次掃描”位將設(shè)置為 0。);
• 診斷圖形已更改( Diagnostic graph changed )位在 CPU 記錄了診斷事件后的一個(gè)掃描周期內(nèi)設(shè)置為 1。 在首次執(zhí)行程序循環(huán) OB 結(jié)束后,CPU 才會(huì)設(shè)置診斷圖形已更改位。 在啟動(dòng) OB 執(zhí)行期間或首次程序循環(huán) OB 執(zhí)行期間,用戶程序都無法檢測到是否出現(xiàn)了診斷更改;
• “始終啟用”位始終設(shè)置為 1;
• “始終禁用”位始終設(shè)置為 0。
被組態(tài)為時(shí)鐘存儲(chǔ)器的字節(jié)中的每一位都可生成方波脈沖。 時(shí)鐘存儲(chǔ)器字節(jié)提供了 8 種不同的頻率:
• 10 Hz 時(shí)鐘
• 5 Hz 時(shí)鐘
• 2.5 Hz 時(shí)鐘
• 2 Hz 時(shí)鐘
• 1.25 Hz 時(shí)鐘
• 1 Hz 時(shí)鐘
• 0.625 Hz 時(shí)鐘
• 0.5 Hz 時(shí)鐘
CPU 是在從 STOP 模式切換到 STARTUP 模式時(shí)初始化這些字節(jié),并且,在 STARTUP和 RUN 模式期間,時(shí)鐘存儲(chǔ)器的位隨 CPU 時(shí)鐘同步變化。
2.7如何對CPU設(shè)置保護(hù)?
答:CPU 提供了 3 個(gè)安全等級(jí):
• 不保護(hù) 允許完全訪問,沒有密碼保護(hù);
• 寫保護(hù) 限制修改(寫入)CPU以及更改CPU模式(RUN/STOP),允許CPU 的只訪
問、HMI 訪問以及 PLC 到 PLC 通信。
• 讀/寫保護(hù) 限制讀取 CPU 中的數(shù)據(jù)、修改(寫入)CPU以及更改 CPU 以及更改
CPU模式(RUN/STOP)。允許 HMI 訪問和所有形式的 PLC 到 PLC 通信。
可以按以下步驟對CPU設(shè)置保護(hù):
• 在設(shè)備配置(Device configuration) 中,選擇 CPU;
• 在檢查窗口中,選擇屬性(Properties)選項(xiàng)卡;
• 選擇保護(hù)(Protection) 屬性設(shè)置保護(hù)等級(jí)和輸入密碼。
圖24 設(shè)置CPU保護(hù)
密碼區(qū)分大小寫,每個(gè)等級(jí)都允許在訪問某些功能時(shí)不使用密碼。 CPU 的默認(rèn)狀態(tài)是沒有任何限制,也沒有密碼保護(hù)。要限制 CPU 的訪問,可以對 CPU 的屬性進(jìn)行組態(tài)并輸入密碼。通過網(wǎng)絡(luò)輸入密碼并不會(huì)使 CPU 的密碼保護(hù)受到威脅。受密碼保護(hù)的 CPU 每次只允許一個(gè)用戶不受限制地進(jìn)行訪問。密碼保護(hù)不適用于用戶程序指令的執(zhí)行,包括通信功能。輸入正確的密碼便可訪問所有功能。PLC 到 PLC 通信(使用代碼塊中的通信指令)不受 CPU 中安全等級(jí)的限制。 HMI 功能同樣也不受限制。
2.8如何對程序塊(OB、FB或 FC)設(shè)置保護(hù)?
答:要對塊設(shè)置保護(hù),按以下步驟操作:
• 可從編輯(Edit)菜單中選擇“Know how protection” 命令;
圖25 設(shè)置Know-how protection
• 輸入允許訪問該塊的密碼;
圖26 設(shè)置密碼
• 密碼設(shè)置后,所加密的塊的圖標(biāo)會(huì)發(fā)生變化。
圖27 已加密的程序塊
密碼保護(hù)會(huì)防止對代碼塊進(jìn)行未授權(quán)的讀取或修改。 如果沒有密碼,只能讀取有關(guān)代碼塊的以下信息:
• 塊標(biāo)題、塊注釋和塊屬性;
• 傳送參數(shù)(IN、OUT、IN_OUT、Return);
• 程序的調(diào)用結(jié)構(gòu);
• 交叉引用中的全局變量(不帶使用時(shí)的信息),但局部變量已隱藏。
2.9全局的符號(hào)DB與絕對地址DB的區(qū)別?
答:在建立全局DB時(shí),如果選擇Symbolic access only ,可認(rèn)為要建立符號(hào)DB;如果不選擇Symbolic access only ,可認(rèn)為要建立絕對地址DB。
圖28 創(chuàng)建全局DB
符號(hào)DB 只能通過符號(hào)名訪問,不存在偏移地址,在設(shè)置保持時(shí),可以單獨(dú)設(shè)置。
圖29 符號(hào)全局DB
絕對地址DB 既可以通過符號(hào)訪問,也可以通過絕對地址訪問;在打開編輯時(shí)可看到“Offset ”偏移地址列。在設(shè)置保持時(shí),只能同時(shí)設(shè)置。
圖30 絕對地址全局DB
相比時(shí),符號(hào)DB 在其變量出現(xiàn)數(shù)據(jù)類型混合時(shí),不會(huì)像絕對地址DB那樣消耗存儲(chǔ)資源;在插入其它變量也不用考慮程序的調(diào)用情況。
2.10如何保持定時(shí)器數(shù)據(jù)?
答:在timer的 instance DB 屬性中無法設(shè)置保持,可以使用以下兩種方法將定時(shí)器的實(shí)例數(shù)據(jù)設(shè)置成Retain:
方法一 在FB 中應(yīng)用多重實(shí)例DB :
在已創(chuàng)建的FB中添加TON 指令;
圖31 在FB中添加TON 函數(shù)
在創(chuàng)建函數(shù)TON 的實(shí)例DB時(shí),選擇多重實(shí)例類型;
圖32 創(chuàng)建實(shí)例DB
在FB的接口部分變量聲明中,將靜態(tài)變量下的timer的實(shí)例變量設(shè)置成Retain.
圖33設(shè)置變量為Retain
方法二 在全局DB中定義定時(shí)器的實(shí)例數(shù)據(jù):
在全局DB( 符號(hào)) 中,建立 一個(gè)IEC_Timer 類型的變量,將其設(shè)為 Retain;
圖34 在全局DB創(chuàng)建變量
在FC 中調(diào)用TON 指令,在彈出的調(diào)用實(shí)例數(shù)據(jù)的對話框中,選擇 Cancel;
圖35 在FC中添加TON 函數(shù)
手動(dòng)指定TON 的實(shí)例數(shù)據(jù)。
圖36 指定實(shí)例數(shù)據(jù)
由于計(jì)數(shù)器與定時(shí)器的使用方法類似,因此這些方法也適合設(shè)置計(jì)數(shù)器數(shù)據(jù)為保持性數(shù)據(jù)。
\西門子的很多面板沒有時(shí)鐘保持功能,這可以通過設(shè)置PLC同面板的時(shí)鐘同步來解決,如何同步Protool/Winccflexible組態(tài)操作面板與 S7-200/300/400 控制器的日期和時(shí)間可以參照以下鏈接中的描述:79626087
如何同步WinCC Basic 組態(tài)的Basic Panel的日期與時(shí)間與 S7-1200 PLC日期和時(shí)間可以參照以下鏈接中的描述:
另外,使用 WinCC flexible 組態(tài)的面板也可以訪問 S7-1200,可以參照以下鏈接內(nèi)容:
這種情況下,使用的是S7 300/400 PLC的驅(qū)動(dòng)來訪問S7 1200 PLC的,此時(shí),一般的變量訪問是沒有問題的,但如果實(shí)現(xiàn)兩者的時(shí)鐘同步就有問題了,因?yàn)镾7 1200 PLC的系統(tǒng)時(shí)鐘格式與S7 300/400 PLC的系統(tǒng)時(shí)鐘是不相同的,S7 1200 PLC的系統(tǒng)時(shí)鐘由以下12個(gè)字節(jié)組成:
而S7 300/400PLC的系統(tǒng)時(shí)鐘由以下8個(gè)字節(jié)組成:
因此,實(shí)現(xiàn)WinCCflexible組態(tài)面板同S7 1200 PLC的時(shí)鐘同步的關(guān)鍵在于將S7 1200 PLC的系統(tǒng)時(shí)鐘格式轉(zhuǎn)換為符合S7 300/400 PLC的系統(tǒng)時(shí)鐘格式。具體實(shí)現(xiàn)步驟如下:
1.創(chuàng)建DB塊
創(chuàng)建DB塊,確保“僅符號(hào)訪問”選項(xiàng)不使能:
2.創(chuàng)建DB塊變量
在DB塊中創(chuàng)建所需要的變量如下:
3.創(chuàng)建周期中斷塊
創(chuàng)建一個(gè)周期中斷塊,將默認(rèn)的掃描周期100ms改為1000ms,這樣可以減小PLC的負(fù) 擔(dān):
4.在周期中斷塊中編程
4.1讀出S7 1200系統(tǒng)的本地時(shí)鐘
4.2將S7-1200的系統(tǒng)時(shí)鐘轉(zhuǎn)換成S7-300/400 PLC格式的時(shí)鐘(只轉(zhuǎn)換到秒單位)
5.WinCC flexible中的組態(tài)
5.1創(chuàng)建連接
創(chuàng)建一個(gè)連接,通訊驅(qū)動(dòng)選擇”SIMATIC S7 300/400”,并設(shè)置好其他相關(guān)參數(shù):
5.2設(shè)置連接區(qū)域指針參數(shù)
將“日期時(shí)間PLC”的連接參數(shù)選擇為剛才創(chuàng)建的連接;將存放S7-300格式系統(tǒng)時(shí)鐘區(qū)域的首地址分配給“日期時(shí)間PLC”; 將采集周期設(shè)為2S或更長時(shí)間來減小通訊負(fù)載。
需要注意的是,這只是一個(gè)例程,您需要根據(jù)您自己程序的情況參照使用,特別是變量的使用不要沖突。
西門子S7-1200 緊湊型PLC在當(dāng)前的市場中有著廣泛的應(yīng)用,作為經(jīng)常與SENTRON PAC3200系列儀表共同使用的PLC,其Modbus通信協(xié)議的使用一直在市場上有著非常廣泛的應(yīng)用。本文將主要介紹如何使用Modbus 通信協(xié)議來實(shí)現(xiàn)S7-1200與SENTRON PAC3200儀表的通信。
1.西門子SENTRON PAC3200 儀表介紹
西門子的SENTRON PAC3200多功能電力儀表是一種用于面板安裝的儀表,可用來計(jì)量、顯示配電系統(tǒng)多達(dá)50個(gè)測量變量,例如電壓、電流、功率、有功功率、頻率以及最大值、最小值和平均值。中文大屏幕圖形液晶顯示使用戶可遠(yuǎn)距離讀表。PAC3200儀表如下圖所示。
圖1:儀表PAC3200
1.1 SENTRON PAC3200 MODBUS RTU通信擴(kuò)展模塊介紹
PAC3200多功能儀表的本體沒有MODBUS RTU通信的功能,如果希望將PAC3200作為從站連接到MODBUS RTU網(wǎng)絡(luò)與主站進(jìn)行數(shù)據(jù)交換必須選用外部擴(kuò)展通信模塊――SENTRON PAC RS485模塊。(注意: PAC RS485 擴(kuò)展模塊使用錯(cuò)誤的固件版本時(shí)將不能工作
SENTRON PAC3200 電力監(jiān)測設(shè)備的固件版本最低應(yīng)為FWV2.0X。 較早的版本不支持
PAC RS485 擴(kuò)展模塊。)該擴(kuò)展模塊具有下列性能特點(diǎn):
• 可通過設(shè)備正面設(shè)置參數(shù)
• 即插即用
• 支持 4.8/9.6/19.2 以及 38.4 KBd 通信傳輸速率
• 通過6針螺釘端子接線
• 不需要外接輔助電源
• 通過模塊上的 LED 顯示狀態(tài)
PAC3200 MODBUS RTU通信擴(kuò)展模塊如下圖所示。
(1) 通信接線端子
(2) 安裝螺釘
(3) 通風(fēng)口
(4) LED
圖2:PAC3200 MODBUS RTU 通信模塊
1.2 SENTRON PAC3200 MODBUS RTU通信擴(kuò)展模塊的接線
SENTRON PAC3200 MODBUS RTU通信擴(kuò)展模塊的接線如下圖所示
圖3:PAC3200 MODBUS RTU 通信模塊的接線圖
1. 將電纜連接到端子排上相應(yīng)的螺栓端子。
2. 將電纜屏蔽層的一端連接到保護(hù)性接地PE。
3. 將信號(hào)公共端連接到保護(hù)性接地。 這樣也使得擴(kuò)展模塊接地。
4. 在第一個(gè)和最后一個(gè)通信節(jié)點(diǎn)上,在正信號(hào)和負(fù)信號(hào)之間接入總線端接電阻器。 為
此,PAC RS485 擴(kuò)展模塊中集成了一個(gè)120 Ohm 的總線端接電阻器。 如果需要其它
電阻值,請使用外部總線端接電阻器。 將它連接到第一個(gè)和最后一個(gè)通信節(jié)點(diǎn)。
1.3 SENTRON PAC3200 MODBUS RTU通信的方式
1.SENTRON PAC3200設(shè)備支持的功能碼如下:
FC | 功能碼 | 數(shù)據(jù)類型 | 訪問權(quán)限 | |
02 | 輸入的狀態(tài) | 位 | 輸入 | R |
03 | 輸出寄存器 | 寄存器 | 輸出 | R |
04 | 輸入寄存器 | 寄存器 | 輸入 | R |
06 | 單一輸出寄存器 | 寄存器 | 輸出 | RW |
10 | 多個(gè)輸出寄存器 | 寄存器 | - | RW |
2B | 設(shè)備識(shí)別 | - | - | R |
表1: SENTRON PAC3200設(shè)備支持的功能碼
R—可讀
RW—可讀寫
2.SENTRON PAC3200 MODBUS RTU 與S7-1200進(jìn)行通信
S7-1200 PLC可以通過功能代碼0x03 和0x04 訪問儀表PAC3200的被測量數(shù)據(jù)。
下表是一些PAC3200 被測量的數(shù)據(jù)。
表2: SENTRON PAC3200設(shè)備的一些被測量數(shù)據(jù)
2.西門子SENTRON PAC3200 儀表與S7-1200進(jìn)行通信的接線圖
下圖是SENTRON PAC3200儀表與S7-1200進(jìn)行MODBUS RTU 通信的接線圖。
圖4:S7-1200與PAC3200進(jìn)行MODBUS RTU 進(jìn)行通信的接線圖
3.硬件需求
S7-1200 PLC目前有3種類型的CPU:
1)S7-1211C CPU。
2)S7-1212C CPU。
3)S7-1214C CPU。
這三種類型的CPU都可以使用MODBUS通信協(xié)議通過通信模塊CM1241 RS485來實(shí)現(xiàn)S7-1200與PAC3200儀表的通信。
本例中使用的PLC硬件為:
1)PM1207電源 ( 6EP1 332-1SH71 )
2) S7-1214C ( 6ES7 214 -1BE30 -0XB0 )
3) CM1241 RS485 ( 6ES7 241 -1CH30 -0XB0 )
4) 模擬器 ( 6ES7 274 -1XH30 -0XA0 )
本例中使用的PAC3200儀表硬件為:
1) PAC3200 (7KM2112-0BA00-3AA0)
2) MODBUS RTU 模塊 (7KM9300-0AB00-0AA0)
3) MODBUS 通信電纜 ( 6XV1830-0EH10)
3.軟件需求
1) 編程軟件 Step7 Basic V10.5 ( 6ES7 822-0AA0-0YA0)
4.S7-1200 MODBUS RTU的通信方式
S7-1200作為MODBUS RTU主站的通信方式是由DATA_ADDR 和 MODE 參數(shù)來選擇 Modbus 功能類型的。
DATA_ADDR(從站中的起始 Modbus 地址): 指定要在 Modbus 從站中訪問的數(shù)據(jù)的起始地址。MB_MASTER 使用 MODE 輸入而非功能代碼輸入。 MODE 和 Modbus 地址范圍一起確定實(shí)際 Modbus 消息中使用的功能代碼。
下表列出了 MB_MASTER 參數(shù) MODE、Modbus 功能代碼和 Modbus 地址范圍之間的對應(yīng)關(guān)系。
表3: MB_MASTER的MODBUS 功能
5.S7-1200 與PAC3200 進(jìn)行MODBUS RTU的通信組態(tài)
我們通過一個(gè)實(shí)例來介紹如何在Step7 Basic V10.5 中組態(tài)S7-1214C 和PAC3200的MODBUS RTU通信。
5. 1 PLC 硬件組態(tài)
首先在Step7 Basic V10.5中建立一個(gè)項(xiàng)目,如圖1所示。
圖5: 新建S7 1200項(xiàng)目
在硬件配置中,添加CPU1214C和通信模塊CM1241 RS485模塊,如圖2所示。
圖6: S7 1200硬件配置
在CPU的屬性中,設(shè)置以太網(wǎng)的IP地址,建立PG與PLC的連接,如下圖所示。
圖7: S7 1200 IP地址的設(shè)置
5. 2 PAC3200參數(shù)設(shè)置
在SENTRON PAC 電力監(jiān)測設(shè)備的主菜單中,調(diào)用“設(shè)置”>“RS485 模塊”,出現(xiàn)下面的設(shè)置畫面:
圖8: PAC3200 MODBUS RTU 通信參數(shù)的設(shè)置
1. 地址的設(shè)置范圍:1-247。本例中設(shè)為8。
2. 波特率的設(shè)置范圍:4800,9600,19200,38400。本例中設(shè)為38400。
3. 設(shè)置外部通信的數(shù)據(jù)位、奇偶校驗(yàn)位及停止位:
• 8E1=8 個(gè)數(shù)據(jù)位,奇偶校驗(yàn)位為even, 1 個(gè)停止位
• 8O1=8 個(gè)數(shù)據(jù)位,奇偶校驗(yàn)位為odd, 1 個(gè)停止位
• 8N2=8 個(gè)數(shù)據(jù)位,無奇偶校驗(yàn)位, 2 個(gè)停止位
• 8N1=8 個(gè)數(shù)據(jù)位,無奇偶校驗(yàn)位, 1 個(gè)停止位
本例中根據(jù)S7-1200 MODBUS MASTER 的參數(shù)設(shè)置為 8N1。
4. 協(xié)議的設(shè)置:可選項(xiàng)為:SEABUS,MODBUS RTU。
本例中設(shè)為MODBUS RTU。
5.響應(yīng)時(shí)間的設(shè)置:注意與波特率的設(shè)置相匹配,本例中設(shè)為10mS。
6.S71200 與PAC3200的MODBUS RTU通信原理與編程的實(shí)現(xiàn)
6. 1 S7 1200 PLC與PAC3200 通過MODBUS RTU 通信的基本原理
S7 1200提供了專用的MODBUS庫進(jìn)行MODBUS通信,如下圖所示:
圖9: S7 1200提供的專用MODBUS庫
西門子PLC S7-1200的模塊CM1241 RS232和CM1241 RS485都可以實(shí)現(xiàn)MODBUS RTU的通信,本例中采用CM1241 RS485模塊來實(shí)現(xiàn)與儀表PAC3200的MODBUS RTU 的通信。
S7-1200的MODBUS RTU通信的基本原理是:
首先S7-1200 PLC的程序調(diào)用一次MODBUS 庫中的功能塊MB_COMM_LOAD來組態(tài)CM1241 RS232和CM1241 RS485模塊上的端口,對端口的參數(shù)進(jìn)行配置。
其次調(diào)用MODBUS 庫中的功能塊MB_MASTER或者M(jìn)B_SLAVE作為MODBUS 主站或者從站與支持MODBUS協(xié)議的設(shè)備進(jìn)行通信。
S7-1200 PLC作為MODUBUS 主站 與PAC3200 進(jìn)行MODBUS RTU 通信的控制原理如下圖所示:
圖10:S7-1200 PLC作為MODUBUS 主站 與PAC3200 進(jìn)行MODBUS RTU 通信原理
S7-1200 PLC還可以作為MODBUS子站與作為MODBUS主站之間的PLC進(jìn)行MODBUS RTU通信,其控制原理如下圖所示:
圖11:S7-1200 PLC作為MODBUS子站與作為MODBUS主站之間的PLC進(jìn)行MODBUS RTU的通信原理
每個(gè)S7-1200 CPU最多可帶3個(gè)通信模塊,而每個(gè)CM1241 RS485通信模塊理論上最多支持247個(gè)MODBUS子站。但是在實(shí)際應(yīng)用時(shí)需要考慮CPU的性能以及輪循MODBUS子站的時(shí)間。
6. 2 S7 1200 PLC與PAC3200通過MODBUS RTU通信的編程
1.MODBUS RTU 通信接口參數(shù)的編程
MB_COMM_LOAD 功能塊用于組態(tài)點(diǎn)對點(diǎn) (PtP, Point-to-Point) CM 1241RS485 或 CM 1241 RS232 模塊上的端口,以進(jìn)行 Modbus RTU 協(xié)議通信。
程序開始運(yùn)行時(shí),調(diào)用一次MB_COMM_LOAD功能塊,來實(shí)現(xiàn)對MODBUS RTU模塊
的初始化組態(tài)。
MB_COMM_LOAD執(zhí)行一次的編程方式采用如下圖所示時(shí)鐘位M10.0來完成。
圖12:MB_COMM_LOAD執(zhí)行一次的編程時(shí)鐘位的設(shè)置
MB_COMM_LOAD功能塊的編程如下圖所示。
圖13:MB_COMM_LOAD功能塊的編程
PORT:指的是通過哪個(gè)通信模塊進(jìn)行MODBUS RTU通信。
BAUD:指的是和MODBUS子站進(jìn)行通信的速率。
通信端口的波特率。取值范圍為300,600,1200,2400,4800,9600,19200,38400,57600,
76800,115200。
注意:儀表PAC3200的波特率的設(shè)置范圍:4800,9600,19200,38400。因此上S7-1200
的波特率的設(shè)置一定要和儀表PAC3200的波特率的設(shè)置相一致。
MB_DB:對 MB_MASTER 或 MB_SLAVE 指令所使用的背景數(shù)據(jù)塊的引用。 在用戶程序中放置
MB_SLAVE 或 MB_MASTER 后,DB標(biāo)識(shí)符會(huì)出現(xiàn)在 MB_DB 功能框連接的助手下拉列表中。
如“MB_MASTER_DB”或“MB_SLAVE_DB”。
STATUS:端口狀態(tài)代碼。具體含義如下表所示。
表4: MB_COMM_LOAD組態(tài)端口的狀態(tài)代碼
2.MODBUS_MASTER功能塊的編程
MB_MASTER 功能塊允許程序作為Modbus 主站使用點(diǎn)對點(diǎn) (PtP, Point-to-Point) CM 1241 RS485 或 CM 1241RS232 模塊上的端口進(jìn)行通信。 可訪問一個(gè)或多個(gè) Modbus 從站設(shè)備中的數(shù)據(jù)。
MB_MASTER功能塊的編程如下圖所示。
圖14:MB_MASTER功能塊的編程
REQ:數(shù)據(jù)發(fā)送請求信號(hào)。0-無請求。1-請求將數(shù)據(jù)傳送到MODBUS從站。
MB_ADR:通信對象MODBUS從站的地址。有效地址范圍為0-247。值 0 被保留用于將消息廣播到所有 Modbus 從站。 只有Modbus 功能代碼 05、06、15 和 16 是可用于廣播的功能代碼。
注意:此處MODBUS從站的地址一定要與儀表PAC3200 的MODBUS 地址相一致。
MODE:模式選擇。選擇范圍為:讀、寫、診斷。
DATA_ADDR:從站中的起始地址: 指定要在 Modbus 從站中訪問的數(shù)據(jù)的起始地址。
特別注意的是:由于儀表PAC3200的寄存器與S7-1200 MODBUS RTU寄存器的不一致
性,讀取儀表PAC3200的DATA_ADDR的地址必須從40002開始。
注意: S7-1200的MODBUS RTU通信功能是通過使用“DATA_ADDR”和“MODE”的組合
來選擇MODBUS功能碼,如下表所示。
表5: S7-1200的MODBUS RTU通信功能碼
而儀表PAC3200 MODBUS RTU通信功能則是通過功能碼來實(shí)現(xiàn)的,如下表所示。
FC | 功能碼 | 數(shù)據(jù)類型 | 訪問權(quán)限 | |
02 | 輸入的狀態(tài) | 位 | 輸入 | R |
03 | 輸出寄存器 | 寄存器 | 輸出 | R |
04 | 輸入寄存器 | 寄存器 | 輸入 | R |
06 | 單一輸出寄存器 | 寄存器 | 輸出 | RW |
10 | 多個(gè)輸出寄存器 | 寄存器 | - | RW |
2B | 設(shè)備識(shí)別 | - | - | R |
表6: 儀表PAC3200 MODBUS RTU通信功能碼
因此從上述可以得出如果需要讀取輸出寄存器的值時(shí),需要使用模式0的03H功能,即
從寄存器40001到49999來讀取儀表的數(shù)據(jù),但是由于儀表PAC3200的寄存器與S7-1200
MODBUS RTU寄存器的不一致性,讀取儀表PAC3200的DATA_ADDR的地址必須從40002開
始。
DATA_LEN:請求訪問數(shù)據(jù)的長度。位數(shù)或字節(jié)數(shù)。
DATA_PTR:數(shù)據(jù)指針: 指向要寫入或讀取的數(shù)據(jù)的 CPU DB 地址。 該DB 必須為
“非僅符號(hào)訪問”DB 類型。
NDR: 新數(shù)據(jù)就緒:
•0 – 事務(wù)未完成
•1 – 表示 MB_MASTER 指令已完成所請求的有關(guān) Modbus從站的事務(wù)。
BUSY:忙:
•0 – 無正在進(jìn)行的 MB_MASTER 事務(wù)
•1 – MB_MASTER 事務(wù)正在進(jìn)行
ERROR:錯(cuò)誤:
•0 - 未檢測到錯(cuò)誤
•1 – 表示檢測到錯(cuò)誤并且參數(shù) STATUS 提供的錯(cuò)誤代碼有效。
STATUS:狀態(tài)代碼,如下表所示。
表7: MB_MASTER 進(jìn)行MODBUS RTU通信的狀態(tài)代碼
在成功地編譯下載到在S7-1200 PLC中后,可以從變量表中看到儀表PAC3200的三相相電壓數(shù)據(jù),如下圖所示。
圖15:在S7-1200中通過MODBUS RTU通信得到的儀表PAC3200的三相相電壓數(shù)據(jù)
Modbus 主站通信規(guī)則:
● 必須先執(zhí)行 MB_COMM_LOAD 組態(tài)端口,然后 MB_MASTER 指令才能與該端口通
信。
● 如果要將某個(gè)端口用于初始化 Modbus 主站的請求,則 MB_SLAVE 將不能使用該端
口。MB_MASTER 執(zhí)行的一個(gè)或多個(gè)實(shí)例可使用該端口。
● Modbus 指令不使用通信中斷事件來控制通信過程。 用戶程序必須輪詢
MB_MASTER 指令以了解傳送和接收的完成情況。
● 如果用戶程序操作 Modbus 主站并使用 MB_MASTER 向從站發(fā)送請求,則用戶必須
繼續(xù)輪詢(執(zhí)行 MB_MASTER)直到返回從站的響應(yīng)。
● 請從同一個(gè) OB(或 OB 優(yōu)先等級(jí))調(diào)用指定端口的所有 MB_MASTER 執(zhí)行。
3.MODBUS_SLAVE功能塊的編程
由于S7-1200與PAC3200進(jìn)行MODBUS RTU通信,沒有使用MODBUS_SLAVE功能塊,因此在此只作簡單介紹。
MB_SLAVE 指令允許程序作為 Modbus 從站使用點(diǎn)對點(diǎn) (PtP, Point-to-Point) CM 1241RS485 或 CM 1241 RS232 模塊上的端口進(jìn)行通信。 Modbus RTU 主站可以發(fā)出請求,然后程序通過執(zhí)行 MB_SLAVE 來響應(yīng)。
在程序中放置 MB_SLAVE 指令時(shí),必須分配唯一的背景數(shù)據(jù)塊。 指定MB_COMM_LOAD 指令中的 MB_DB 參數(shù)時(shí)會(huì)用到該 MB_SLAVE 背景數(shù)據(jù)塊名稱。
Modbus 通信功能代碼(1、2、4、5 和 15)可以在 PLC 輸入過程映像及輸出過程映像中直接讀寫位和字。
圖16:MB_SLAVE 功能塊
MB_ADDR:Modbus RTU 地址(1 到 247):Modbus 從站的站地址。
MB_HOLD_REG:指向 Modbus 保持寄存器 DB 的指針。 保持寄存器 DB 必須為典型的全局 DB。注意:在創(chuàng)建此數(shù)據(jù)塊時(shí),請不要選擇“Symbolic address only僅通過符號(hào)地址訪問”。使用“MB_SLAVE”指令時(shí),
NDR:新數(shù)據(jù)就緒:
•0 – 無新數(shù)據(jù)
•1 – 表示 Modbus 主站已寫入新數(shù)據(jù)
DR:數(shù)據(jù)讀?。?br /> •0 – 無數(shù)據(jù)讀取
•1 – 表示 Modbus 主站已讀取數(shù)據(jù)
ERROR:錯(cuò)誤:
•0 - 未檢測到錯(cuò)誤
•1 – 表示檢測到錯(cuò)誤并且參數(shù) STATUS 提供的錯(cuò)誤代碼有效。
STATUS:錯(cuò)誤代碼。如下表所示。
表8: MB_SLAVE 進(jìn)行MODBUS RTU通信的狀態(tài)代碼
6ES7222-1HH32-0XB0