siemens/西門子授權(quán)合作伙伴
全新原裝 質(zhì)量保證 價(jià)格優(yōu)勢
公司大量現(xiàn)貨?。?!
【同樣的價(jià)格、同樣的品牌、給您不一樣的服務(wù)】
長沙玥勵自動化設(shè)備有限公司(西門子系統(tǒng)集成商)長期銷售西門子S7-200/300/400/1200PLC、數(shù)控系統(tǒng)、變頻器、人機(jī)界面、觸摸屏、伺服、電機(jī)、西門子電纜等,并可提供西門子維修服務(wù),歡迎來電垂詢
聯(lián)系人: 張亮 (銷售經(jīng)理)
手機(jī) : 13548747710
QQ : 809118149
地址:長沙市岳麓區(qū)雷鋒大道468號金科世界城16-1603室
商品編號(市售編號)
|
6ES7211-1BE40-0XB0
|
產(chǎn)品說明
|
SIMATIC S7-1200, CPU 1211C, COMPACT CPU, AC/DC/RELAY, ONBOARD I/O: 6 DI 24V DC; 4 DO RELAY 2A; 2 AI 0 - 10V DC, POWER SUPPLY: AC 85 - 264 V AC AT 47 - 63 HZ, PROGRAM/DATA MEMORY: 50 KB
|
產(chǎn)品家族
|
CPU 1211C
|
產(chǎn)品生命周期 (PLM)
|
PM300:有效產(chǎn)品
|
價(jià)格組 / 總部價(jià)格組
|
SK / 212
|
列表價(jià)(不含增值稅)
|
顯示價(jià)格
|
您的單價(jià)(不含增值稅)
|
顯示價(jià)格
|
金屬系數(shù)
|
無
|
出口管制規(guī)定
|
AL : N / ECCN : EAR99H
|
工廠生產(chǎn)時(shí)間
|
12 天
|
凈重 (Kg)
|
0.381 Kg
|
產(chǎn)品尺寸 (W x L X H)
|
未提供
|
包裝尺寸
|
10.40 x 10.80 x 8.80
|
包裝尺寸單位的測量
|
CM
|
數(shù)量單位
|
1 件
|
包裝數(shù)量
|
1
|
EAN
|
4047623402695
|
UPC
|
未提供
|
商品代碼
|
85371091
|
LKZ_FDB/ CatalogID
|
ST72
|
產(chǎn)品組
|
4509
|
原產(chǎn)國
|
德國
|
S7-1200的硬件版本
1.1 硬件版本
到2012年3月份為止,S7-1200 的硬件有了很多的版本,例如對于S7-1200 CPU 1214C有如下的版本:
對于CPU 1214C, COMPACT CPU, AC/DC/Relay:
參考下述鏈接:
http://support.automation.siemens.com/CN/llisapi.dll?query=S7-1200&func=cslibbearch&content=adsearch%2Fadsearchbx&lang=zh&siteid=csius&objb=cssearch&searchinprim=0&nodeid0=26595521360seURL\Shell\Open\Command
1.2 硬件版本之間的區(qū)別
每個(gè)硬件版本具有的特點(diǎn)和功能是不一樣的,具體區(qū)別如下:
http://support.automation.siemens.com/CN/llisapi.dll?query=S7-1200&func=cslibbearch&content=adsearch%2Fadsearchbx&lang=zh&siteid=csius&objb=cssearch&searchinprim=0&nodeid0=26595521360seURL\Shell\Open\Command
2 升級硬件版本
2.1 拷貝硬件更新文件到存儲卡上
從西門子網(wǎng)站上下載新的硬件更新文件,解壓縮后如下圖所示:
圖2-1:硬件更新文件
使用一張西門子24M MC 存儲卡,把解壓縮后的文件拷貝到存儲卡中。如下圖所示:
圖2-2:更新文件拷貝到MC 存儲卡中
注意:
.必須使用西門子的 MC 存儲卡。
小心
|
禁止使用 Windows 格式化實(shí)用程序重新格式化存儲卡。如果使用 Microsoft Windows 格式化實(shí)用程序重新格式化了西門子存儲卡,則 S7-1200 CPU 將無法再使用該存儲卡
|
西門子的 MC 存儲卡如下圖所示:
圖2-3:西門子MC 存儲卡
2.如果想循環(huán)使用一個(gè)包含用戶程序或其它固件更新版本的 SIMATIC 存儲卡,則必須在下載固件更新版本之前刪除“S7_JOB.S7S”文件及所有文件夾(例如 “SIMATIC.S7S” 或 “FWUPDATE.S7S”)。使用 Windows 資源管理器顯示存儲卡的內(nèi)容,并刪除文件及文件夾。
小心
|
請勿從存儲卡上刪除隱藏文件“__LOG__”和“crdinfo.bin”。
存儲卡要求文件“__LOG__”和“crdinfo.bin”必須存在。如果刪除了這些文件,則 CPU 無法使用該存儲卡。如下圖所示:
|
圖2-4:西門子MC 存儲卡中的隱藏性文件
3.必須使用24M SMC 存儲卡,因?yàn)榻鈮嚎s后的更新文件的大小超過了2M SMC 存儲卡,如下圖所示:
圖2-5:更新文件的大小
2.2 硬件更新文件復(fù)制到CPU中
警告
|
在安裝 CPU 固件更新版本之前請確認(rèn) CPU 沒有運(yùn)行任何程序。
安裝固件更新版本將使 CPU 進(jìn)入 STOP 模式,這將影響在線過程或機(jī)器的運(yùn)行。過程或機(jī)器的意外操作會導(dǎo)致人員死亡或受傷和/或財(cái)產(chǎn)損失。
插入存儲卡前,請務(wù)必確保 CPU 處于離線模式且處于安全狀態(tài)。
|
1. 將存儲卡插入到 CPU 中。如果 CPU 處于 RUN 模式,則 CPU 將轉(zhuǎn)入 STOP 模式。維護(hù) (MAINT) LED 閃爍,指示需要對存儲卡進(jìn)行檢查。如下圖所示:
圖2-6:插入更新SMC 存儲卡后CPU 的狀態(tài)
重新啟動 CPU,開始固件更新。也可從 STEP 7 將 STOP 模式轉(zhuǎn)為 RUN 模式或復(fù)位存儲器 (MRES) 來重啟 CPU。
2. CPU 重啟后,將固件更新版本復(fù)制到裝載存儲器。RUN/STOP LED 將交替閃爍綠色和黃色,表示正在復(fù)制更新版本。如下圖所示:
圖2-7:正在復(fù)制更新版本CPU 的狀態(tài)
3.當(dāng) RUN/STOP LED 點(diǎn)亮(黃色常亮)且 MAINT LED 閃爍時(shí),表示復(fù)制過程完成。然后可以撥出存儲卡。如下圖所示:
圖2-8:更新版本復(fù)制完成后CPU 的狀態(tài)
4.撥出存儲卡后,重新啟動CPU,CPU即可正常工作。
5.使用存儲卡,重啟 CPU(重新上電或其它重啟方法),可以再次來裝載新的硬件版本。
至此,S7-1200 CPU 的硬件版本更新完成。
注意:
用戶程序和硬件配置將不受固件更新的影響。
CPU 上電后,CPU 將進(jìn)入所組態(tài)的啟動狀態(tài)
S7-1200 能在線修改并且下載嗎?
1.1 所需要的固件版本
所需要的S7-1200 CPU 的硬件版本需要升級到硬件版本V2.2.0以上。
1.2 所需要的軟件版本
所需要的軟件為STEP 7 V11 SP2 Basic 或者STEP 7 V11 SP2 Professional 。
在滿足以上硬件和軟件的條件下,S7-1200 可以實(shí)現(xiàn)在線修改并且下載。
2 在線修改和下載
2.1 檢查CPU 的固件版本是否為V2.2.0 以上
2.1.1 檢查項(xiàng)目下CPU的固件版本
打開項(xiàng)目下CPU硬件的屬性,檢查配置的CPU的固件版本。如下圖所示:
圖2-1:打開配置CPU 的屬性
CPU的屬性窗口打開后,可以看到CPU的固件版本,如下圖所示:
圖2-2: 項(xiàng)目下CPU 的硬件版本
CPU 的固件版本如果是V2.2.0以上,可以不用更改硬件配置,否則必須更改CPU的固件版本到V2.2.0以上。
2.1.2檢查在線CPU的固件版本
在項(xiàng)目中打開“在線和診斷”,顯示在線和診斷窗口,如下圖所示:
圖2-3:在線和診斷離線窗口
點(diǎn)擊“轉(zhuǎn)到在線”,如果網(wǎng)線和網(wǎng)絡(luò)配置都合適的話,會顯示“在線和診斷”的在線顯示界面,如下圖所示:
圖2-4:“在線和診斷”在線窗口
點(diǎn)擊 在線訪問 —〉診斷 —〉常規(guī),顯示CPU的在線的固件版本,如下圖所示:
圖2-5:CPU 在線的硬件版本
2.2 檢查編程軟件的版本
檢查編程軟件的版本是否為STEP 7 V11 SP2 BASIC或者 Professional 以上版本。
打開STEP 7 V11軟件,在項(xiàng)目下打開幫助菜單,選擇“已安裝的產(chǎn)品”,如下圖所示:
圖2-6:選擇“已安裝的產(chǎn)品”
選擇“已安裝的產(chǎn)品”菜單欄后,顯示“已安裝的軟件”窗口,如下圖所示:
圖2-7:編程軟件的版本
2.3 在線修改,下載,編程調(diào)試
在確認(rèn)CPU 的硬件版本和編程軟件版本滿足需求后,可以在線修改程序,下載程序,編程調(diào)試了。
修改程序前的程序及CPU狀態(tài)如下圖所示:
圖2-8:修改程序前的程序及CPU的狀態(tài)
修改程序后,程序及CPU狀態(tài)如下圖所示:
圖2-9:修改程序后的程序及CPU的狀態(tài)
修改程序后,需要首先保存程序,圖中 藍(lán)色/橙色半圓形狀態(tài)顯示在線程序和離線程序已經(jīng)不一致了,因此需要重新下載程序,此時(shí)CPU的狀態(tài)還是處在運(yùn)行狀態(tài),如下圖所示:
圖2-10:在線修改程序時(shí)CPU的狀態(tài)
保存程序后,點(diǎn)擊下載程序菜單,會顯示“下載預(yù)覽”界面,如下圖所示:
圖2-11:下載預(yù)覽窗口
在下載預(yù)覽窗口,可以選擇“統(tǒng)一下載”或者“無操作”,點(diǎn)擊下載預(yù)覽窗口的“下載”按鈕,執(zhí)行下載動作。如下圖所示:
圖2-12:正在執(zhí)行下載界面
裝載組態(tài)完成后,直接顯示在線狀態(tài),CPU一直處在運(yùn)行狀態(tài)。如下圖所示:
圖2-13:在線編程修改下載完成后的界面
至此,S7-1200 CPU的在線修改,編程,下載調(diào)試完成。
注意:
對于其它功能的在線編程下載調(diào)試,具體的步驟可能不盡相同,需要具體事件具體處理
S7-1200 與 S7-300 之間的以太網(wǎng)通信方式比較多,可以采用ISO on TCP、TCP和 S7 的方式進(jìn)行通信。在S7-1200 CPU 中采用ISO on TCP和TCP這兩種協(xié)議進(jìn)行通信所使用的指令是相同的,都使用 T-block ( TSEND_C, TRCV_C, TCON, TDISCON, TSEN, TRCV ) 指令編程。S7-300 CPU一側(cè)如果使用的是CPU集成的PN接口,連接不在STEP7的NetPro中建立連接,而是使用西門子提供的OPEN IE 的方式來實(shí)現(xiàn)。
本文主要介紹了如何實(shí)現(xiàn)在S7-1200 和S7-300 CPU集成PN口之間的ISO on TCP通信,包括通信的基本步驟、配置及編程等內(nèi)容。具體的實(shí)現(xiàn)方法有多種,比如在S7-1200中可以使用不帶連接的通信指令(TCON, TDISCON, TSEN, TRCV),也可以使用帶連接的通信指令(TSEND_C, TRCV_C);在S7-300中可以采用功能塊編程的方式來實(shí)現(xiàn),也可以使用Open Communication Wizard工具(OPEN IE向?qū)В┑姆绞絹斫PEN IE的通信。
為了方便理解,本文在S7-1200中使用不帶連接的通信指令TCON, TDISCON, TSEN, TRCV,在S7-300側(cè)通過功能塊編程的方式來實(shí)現(xiàn)。
關(guān)于S7-1200和S7-300 OPEN IE通信的文檔可以登錄西門子自動化與驅(qū)動集團(tuán)網(wǎng)站的下載中心,網(wǎng)址:http://www.ad.siemens.com.cn/download/ ,根據(jù)如表1提供的文檔編號搜索并下載相關(guān)文檔。
文檔編號
|
中文標(biāo)題
|
A0426
|
西門子 S7-1200 PLC 技術(shù)參考Version 1.5
|
A0416
|
S7-1200與S7-300 的以太網(wǎng)TCP 及ISO on TCP通信
|
A0421
|
如何實(shí)現(xiàn)兩個(gè)S7-1200 CPU之間的以太網(wǎng)通信
|
A0415
|
通過S7協(xié)議實(shí)現(xiàn)S7-1200 與S7-300的通信
|
A0414
|
S7-1200基本以太網(wǎng)通信使用指南
|
A0284
|
使用西門子PLC集成的PN口實(shí)現(xiàn)S5 兼容通信使用入門
|
A0345
|
使用 Open Communication Wizard 建立開放式 ISO on TCP 通信
|
A0346
|
使用 Open Communication Wizard 建立開放式 UDP 通信
|
A0347
|
使用 Open Communication Wizard 建立開放式 TCP 通信
|
A0344
|
S7-300和S7-400集成PN口的S7通信
|
A0334
|
PN CPU/CP的開放式通訊-Open IE
|
表1 下載中心文檔列表
2 軟硬件及所要完成的通信任務(wù)
2.1硬件設(shè)備
實(shí)驗(yàn)的硬件設(shè)備:
1、S7-1200 CPU,CPU1212 AC/DC/RLY(6ES7 212-1BD30-0XB0)
2、S7-300 PN CPU,CPU317-2PN/DP(6ES7 317-2EH13-0AB0 V2.6.7)
3、PC機(jī)(帶以太網(wǎng)卡)
4、SCALANCE X216交換機(jī),S7-1200、S7-300和PC通過交換機(jī)互連起來
5、TP以太網(wǎng)電纜
2.2 軟件環(huán)境
1、STEP7 Basic V10.5 SP2
2、STEP7 V5.4 SP5
3、通信所需的功能塊,請參見附件提供的例程 ”Sample_1 ( 50 KB ) ” 或參考下載中心文檔:《A0284 使用西門子PLC集成的PN口實(shí)現(xiàn)S5 兼容通信使用入門》提供的程序。下載鏈接:80490650
2.3 所要完成的通信任務(wù)
本例中所要完成的通信任務(wù)定義為:
1、 將S7-1200的發(fā)送數(shù)據(jù)塊DB3里的8個(gè)字節(jié)數(shù)據(jù)發(fā)送到S7-300的DB3中。
2、 將S7-300 DB3里接收到的8個(gè)字節(jié)數(shù)據(jù)再發(fā)送到S7-1200的接收數(shù)據(jù)塊DB4中。
3 S7-1200 CPU的組態(tài)編程
3.1創(chuàng)建新項(xiàng)目
1、打開STEP 7 Basic 軟件并新建項(xiàng)目
在STEP 7 Basic 的 “Portal View”中選擇“Create new project”創(chuàng)建一個(gè)新項(xiàng)目,項(xiàng)目名稱為“GS_ISO”。
2、添加硬件并命名PLC
然后進(jìn)入 “Project view”,在“Project tree” 下雙擊 “Add new device”,在對話框中選擇所使用的S7-1200 CPU(6ES7 212-1BD30-0XB0)添加到機(jī)架上,設(shè)備名為 PLC_1,如圖1所示。
圖1 添加新的PLC站
為了編程方便,我們使用 CPU 屬性中定義的時(shí)鐘位,定義方法如下:
在“Project tree> PLC_1 > Device configuration” 中,選中 CPU ,然后在下面的屬性窗口中,“Properties > System and clock memory” 下,將系統(tǒng)位定義在MB1,時(shí)鐘位定義在MB0,如圖2所示。程序中我們主要使用 M0.3,它是以2Hz 的速率在0和1之間切換的一個(gè)位,可以使用它去自動激活發(fā)送任務(wù)。
圖2 系統(tǒng)和時(shí)鐘存儲器
3、為 S7-1200 CPU的PROFINET 通信口分配以太網(wǎng)地址
在 “Device View”中點(diǎn)擊 CPU 上代表PROFINET 通信口的綠色小方塊,在下方會出現(xiàn)PROFINET 接口的屬性,在 “Ethernet addresses”下分配IP 地址為 192.168.0.2 ,子網(wǎng)掩碼為255.255.255.0,如圖3所示。
圖3為 S7-1200 CPU的PROFINET 接口分配IP地址
3.2調(diào)用并配置通信指令
1、在 PLC_1 的 OB1 中調(diào)用 “TCON”通信指令
進(jìn)入“Project tree > PLC_1 > Program blocks > OB1” 主程序中,從右側(cè)窗口 “Instructions > Extended Instructions > Communications” 下調(diào)用 “TCON” 指令,并選擇 “Single Instance” 生成背景 DB塊,如圖4所示。
圖4 調(diào)用TCON指令
2、定義PLC_1 的 “TCON” 連接參數(shù)
PLC_1 的 TCON 指令的連接參數(shù)需要在指令下方的屬性窗口“Properties > Configuration > Connection beter”中設(shè)置,如圖5所示。
連接參數(shù)說明:
End point
|
:選擇通信伙伴,這里選擇“unspecified”
|
Address
|
:指定通信伙伴S7-300站的IP地址“192.168.0.3”
|
Connection type
|
:選擇通信協(xié)議為ISO on TCP
|
Connection ID
|
:連接的地址 ID 號,這個(gè) ID 號在后面的編程里會用到
|
Connection data
|
:創(chuàng)建連接時(shí),系統(tǒng)會自動生成本地的連接 DB 塊,所有的連 接數(shù)據(jù)都會存在這個(gè) DB 塊中。
|
|
:選擇本地 PLC_1作為主動連接,S7-300 CPU作為被動連接
|
Address details
|
:設(shè)定 TSAP 地址這里本地設(shè)置成“PLC_1”, TSAP ID自動為“50.4C.43.5F.31”,伙伴方設(shè)置成不設(shè)置TSAP(ASCII),設(shè)置TSAP ID 為“E0.02.50.4C.43.5F.31”。
|
圖5 “TCON” 指令的連接參數(shù)
3、分配 “TCON” 的塊參數(shù)
在指令下方的屬性窗口“Properties > Configuration > block beter”中設(shè)置,可以根據(jù)需要自己為“TCON” 塊指定相應(yīng)的輸入輸出參數(shù)。指定好參數(shù)的塊,如圖6所示。其中M8.0作為啟動連接的觸發(fā)位,連接ID = 1與連接參數(shù)里面的設(shè)置相同。
圖6 “TCON” 的塊參數(shù)
4、在 PLC_1 的 OB1 中調(diào)用 “TSEND” 發(fā)送通信指令
首先創(chuàng)建一個(gè)發(fā)送數(shù)據(jù)塊,通過 “Project tree > PLC_1 > Program blocks > Add new block”,選擇 “Data block” 創(chuàng)建 DB 塊,選擇絕對尋址,點(diǎn)擊“OK”鍵,如圖7所示。
圖7 創(chuàng)建一個(gè)發(fā)送數(shù)據(jù)塊DB3
打開創(chuàng)建的發(fā)送數(shù)據(jù)塊,在數(shù)據(jù)塊中定義發(fā)送數(shù)據(jù)區(qū)為 8個(gè)字節(jié)的數(shù)組,如圖8所示。
圖8 創(chuàng)建發(fā)送數(shù)據(jù)區(qū)
然后在OB1 中調(diào)用“TSEND”發(fā)送通信指令,并為“TSEND”指定參數(shù)。使用M0.3( 2Hz 的時(shí)鐘脈沖)上升沿激活發(fā)送任務(wù),指定發(fā)送數(shù)據(jù)區(qū)為P# DB3.DBX0.0 BYTE 8,連接 ID = 1與連接參數(shù)里面的設(shè)置相同,發(fā)送長度LEN=8。分配好參數(shù)的“TSEND”塊如圖9所示。
圖9 調(diào)用“TSEND”發(fā)送通信塊
5、在 PLC_1 的 OB1 中調(diào)用“TRCV”接收通信指令
同樣,先創(chuàng)建一個(gè)接收數(shù)據(jù)塊DB4 ,如圖10所示?!癟RCV”接收通信指令的調(diào)用方法與“TSEND” 發(fā)送通信指令的調(diào)用方法相同,M8.1作為接收指令的使能位,如圖11所示。
圖10創(chuàng)建接收數(shù)據(jù)區(qū)
圖11 調(diào)用“TRCV”接收通信塊
6、在 PLC_1 的 OB1 中調(diào)用 “TDISCON”通信指令
最后,為了斷開通信鏈接,我們需要調(diào)用“TDISCON”通信指令,如圖12所示。
圖12 調(diào)用“TDISCON”通信塊
3.3下載程序
至此,S7-1200側(cè)的組態(tài)和編程都已經(jīng)完成,可以在項(xiàng)目編譯無錯誤后,直接下載到S7-1200 CPU中,并啟動CPU的運(yùn)行。
4 S7-300 CPU的組態(tài)編程
S7-300帶PN接口的CPU支持ISO on TCP通信功能,通過該集成以太網(wǎng)接口組態(tài)ISO on TCP通信時(shí),只能使用開放式通信專用的功能塊,這些專用的功能塊可以在STEP7 “ 通訊塊”的 “標(biāo)準(zhǔn)庫 ”中找到,如圖13所示。
圖13 S7-300 CPU通信指令庫
庫中提供了下列通信功能塊:
′> FB 65 "TCON",用于建立連接,連接時(shí)需要UDT65來提供參數(shù)
> FB 66 "TDISCON",用于終止連接
> FB 63 "TSEND",用于發(fā)送數(shù)據(jù)到S7站點(diǎn)、S5站點(diǎn)、PC站或者第三方設(shè)備
> FB 64 "TRCV" 用于從S7站點(diǎn)、S5站點(diǎn)、PC站或者第三方設(shè)備接收數(shù)據(jù)
要通過CPU 的 集成PN 接口實(shí)現(xiàn)開放的ISO on TCP通信,不能在Netpro網(wǎng)絡(luò)組態(tài)中直接建立連接,必須通過程序指定每個(gè)連接的參數(shù)。用于通信的FB標(biāo)準(zhǔn)功能塊,請參見附件提供的例程 ”Sample_1 ( 50 KB ) ” 或參考下載中心文檔《A0284 使用西門子PLC集成的PN口實(shí)現(xiàn)S5 兼容通信使用入門》提供的例程。下載鏈接:80490650
從附件提供的例程 ”Sample_1 ( 50 KB ) ” 中將把需要的程序塊拷貝到新建的項(xiàng)目中,包括:
> UDT 65 "TCON_PAR",存放用戶通信參數(shù)
> FB420 "SET_ISO_ENDPOINT" ,用于修改UDT65內(nèi)通信對象參數(shù)
> FC21, 被FB420調(diào)用
隨后,使用通信功能塊 FB65 "TCON"、FB66 "TDISCON"、FB63 "TSEND" 和 FB64 "TRCV" 完成程序的編寫。
4.1創(chuàng)建新項(xiàng)目
1、打開STEP7,新建一個(gè)項(xiàng)目
2、在項(xiàng)目中插入一個(gè)SIMATIC 300的站
3、組態(tài)硬件,插入一個(gè)CPU317-2PN/DP的CPU,并為PN接口分配IP地址“192.168.0.3”,如圖14所示。同時(shí),在CPU的“Cycle/Clock Memory”屬性頁中指定MB0為時(shí)鐘存儲器,在程序中可以使用M0.3(2Hz 的時(shí)鐘脈沖)去自動激活發(fā)送任務(wù),如圖15所示。
圖14為PN接口分配IP地址
圖15設(shè)置時(shí)鐘存儲器字節(jié)
4.2編寫通信程序
1、從樣例程序中拷貝通信所需的塊
從附件提供的sample_1 ( 50 KB ) 例程中把需要的FB420、FC21與UDT65程序塊拷貝到新創(chuàng)建的項(xiàng)目中,如圖16所示。
圖 16
2、生成數(shù)據(jù)塊
在程序中創(chuàng)建一個(gè)DB塊,塊號不限(本例為DB101),在塊中建立變量DB_VAR,類型為UDT65,如圖17所示。
圖17
3、生成并調(diào)用FB塊
首先生成一個(gè)FB塊(本例為FB400),在FB400靜態(tài)變量區(qū)建立一個(gè)結(jié)構(gòu)“T_TSAP“,包含如下變量,并為變量分配初始值,如圖18所示。
1) LOC_RACK_SLOT (BYTE)= B#16#2 表示有兩個(gè)前導(dǎo)字符 0xE0 (CPU31x-2PN/DP 或者 CPU319-3PN/DP規(guī)定)和 0x02(CPU槽號)
2) LOC_TSAP(STRING14)= 本地用戶定義的ASCII字符'PLC_1' (注意要與S7-1200側(cè)設(shè)置保持一致)。
3) REM_RACK_SLOT(BYTE)= B#16#0 不使用兩個(gè)前導(dǎo)符。
4) REM_TSAP (STRING16)= 遠(yuǎn)程用戶定義的ASCII字符'PLC_1' (注意要與S7-1200側(cè)設(shè)置保持一致)。
圖18
然后在生成的FB400中調(diào)用FB420,如圖19所示。
圖19
其中參數(shù)的含義如下:
1)ID: 連接ID,與S7-1200里的設(shè)置保持一致
2)DEV_ID:用于本PLC型號(注意不是通信對方)
DEV_ID = B#16#1本PLC型號為 IM151-8 PN/DP CPU
DEV_ID = B#16#2本PLC型號為CPU31x-2PN/DP或IM154-8 CPU
DEV_ID = B#16#3本PLC型號為CPU319-3PN/DP
DEV_ID = B#16#5本PLC型號為CPU41x-3PN/DP
3)ACTIVE: 主動或是被動建立連接,通信雙方必須一個(gè)主動,一個(gè)被動,本例中S7-300側(cè)為被動方。
4)T_TSAP: 靜態(tài)變量區(qū)的結(jié)構(gòu)變量,用于ISO ON TCP 通信的TSAP地址
5)IP_ADDR1 ... IP_ADDR4: 通信伙伴的IP地址,即S7-1200的IP地址192.168.0.2
6)CON_DB: 用UDT65生成的變量,即DB101
4、在OB1中調(diào)用發(fā)送和接收功能塊
在OB1中先調(diào)用FB400功能塊,為其指定背景數(shù)據(jù)塊DB400,如圖20所示。
圖20
然后再在OB1中依次調(diào)用通信功能塊FB65、FB64、FB63、FB66。其中發(fā)送和接收功能塊FB64、FB63的數(shù)據(jù)區(qū)都為DB3,建立DB3如圖21所示。關(guān)于塊的使用請參考STEP7的在線幫助或相關(guān)文檔說明。
圖21
FB65 “TCON”,建立連接功能塊,如圖22所示。通過輸入?yún)?shù) "REQ"一個(gè)上升沿來建立連接。 “ID” 為連接ID,“CONNECT” 參數(shù)填寫用 UDT65 生成的變量, 連接建立后會一直保持,直到調(diào)用FB66 "TDISCON" 斷開連接、CPU停止或者斷電。其中CONNECT指定為通過UDT65生成的DB塊,即DB101, ID = 1。通過M8.0啟動作業(yè),執(zhí)行連接的建立。
圖22
FB64 “TRCV”,接收功能塊,如圖23所示。"TRECV" EN_R始終為TRUE, ID 填寫連接ID,”DATA” 填寫接收數(shù)據(jù)區(qū),輸出參數(shù) "NDR" 用于表示新的數(shù)據(jù)已經(jīng)收到,輸出參數(shù) "LEN" 表示接收的數(shù)據(jù)長度。本例中連接ID = 1。指定DB3作為接收數(shù)據(jù)塊,接收數(shù)據(jù)的字節(jié)長度為8,接收作業(yè)通過M8.1使能。
圖23
FB63 “TSEND”,發(fā)送功能塊,如圖24所示。連接ID = 1。指定DB3為發(fā)送數(shù)據(jù)塊,發(fā)送字節(jié)長度為8,發(fā)送作業(yè)通過M0.3觸發(fā)。"TSEND" 發(fā)送請求依靠輸入?yún)?shù)"REQ"的上升沿來實(shí)現(xiàn),如果“BUSY”位為true時(shí)不要觸發(fā)"REQ"。輸出參數(shù) "DONE", "ERROR" 和 "STATUS" 用于評估工作的情況。
圖24
FB66 “TDISCON”,取消連接功能塊,如圖25所示??梢愿鶕?jù)需要取消ID=W#16#1的連接,作業(yè)通過M8.2使能。
圖25
4.3下載程序
S7-300側(cè)的組態(tài)和編程都完成后,直接下載到S7-300 CPU中,并啟動CPU的運(yùn)行。
5 監(jiān)控通信結(jié)果
對S7-1200和S7-300都組態(tài)和編程后,下載所有組態(tài)及程序并搭建好網(wǎng)絡(luò)后,首先在在S7-1200中將M8.0置位為1,然后再在S7-300中將M8.0置位為1,兩個(gè)站的“TCON” 被激活,建立兩個(gè)站之間的ISO on TCP連接。
連接正常建立后,即可以進(jìn)行數(shù)據(jù)的交換。在S7-1200和S7-300站中將 ”TRCV” 功能塊的EN_R置位為1,使能接收,監(jiān)控通信結(jié)果如圖26所示。
通過監(jiān)控結(jié)果可以看到,S7-1200中發(fā)送數(shù)據(jù)塊DB3的8個(gè)字節(jié)數(shù)據(jù)被發(fā)送到S7-300站的DB3中,同時(shí),S7-300的DB3中接收到的數(shù)據(jù)又被發(fā)送到S7-1200的接收數(shù)據(jù)塊DB4中。
圖26 在線監(jiān)控通信結(jié)果