S7-200SMARTCPU與S7-300PN口進行TCP通信-SMART做服務(wù)器_第1頁
S7-200SMARTCPU與S7-300PN口進行TCP通信-SMART做服務(wù)器_第2頁
S7-200SMARTCPU與S7-300PN口進行TCP通信-SMART做服務(wù)器_第3頁
S7-200SMARTCPU與S7-300PN口進行TCP通信-SMART做服務(wù)器_第4頁
S7-200SMARTCPU與S7-300PN口進行TCP通信-SMART做服務(wù)器_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、實用標(biāo)準(zhǔn)文案S7-200 SMART 與 S7-300 集成 PN 口之間 TCP 通信一S7-200 SMART 作為服務(wù)器TCP協(xié)議通信TCP通信為面向連接的通信,需要雙方都調(diào)用指令以建立連接及交換數(shù)據(jù)。S7-200 SMARTS S7-300 通過 TCP 通信,在 S7-300 調(diào)用 T-block指令(TCON,TDISCON,TSEND,TRCV),在 S7-200 SMARTS用 Open User Communication 庫指令(TCP_CONNECT,DISCONNECT,TCP_SEND,TCP_REC物的發(fā)送和接收 指令必須成對出現(xiàn)??蛻舳耍褐鲃咏⑦B接,可以理解為主

2、站;服務(wù)器:被動建立連接,可以理解為從站。小注意:S7-200 SMARTS CPU硬件固件及編程軟件版本均升級到 V2.2之后才開始支持開放式通信。編程軟件版本低于V2.2 ,無Open UserCommunication庫指令;硬件固件低于 V2.2 ,硬件不支持開放式通信 協(xié)議。S7-200 SMART TCP連接資源:8個主動連接資源,8個被動連接資源S7-200 SMART TCP通信數(shù)據(jù)量:1024字節(jié)硬件和軟件需求及所完成的通信任務(wù)硬件: S7-300 CPU (IP 地址 192.168.0.101;子網(wǎng)掩碼 255.255.255.0 ) S7-200 SMART CPU (

3、固件版本 V2.2) ( IP 地址 192.168.0.20;子網(wǎng)掩碼 255.255.255.0 )PC (帶以太網(wǎng)卡)TP以太網(wǎng)電纜軟件: STEP7 V13 SP1 Upd 9 STEP 7 Micro/WIN SMART (軟件版本 V2.2 )所完成的通信任務(wù): S7-300 發(fā)送 10 個字節(jié)數(shù)據(jù):(S7-300 側(cè))DB5.DBB0DB5.DBB9 -> ( S7- 200 SMART 側(cè))VB2000VB2009 S7-300 接收 10 個字節(jié)數(shù)據(jù):(S7-300 側(cè))DB5.DBB10DB5.DBB19 <-( S7-200 SMART 側(cè))VB0VB9S7-

4、300側(cè)硬件組態(tài)和編程(客戶機側(cè)組態(tài)編程)1 .使用TIA V13 SP1 Upd 9 軟件Portal 視圖中,創(chuàng)建新項目2 .添加硬件并命名PLC進入“項目視圖”,在“項目樹”下雙擊“添加新設(shè)備”,在對話框中選擇所使用的S7-300 CPU添加到機架上,命名為 PLC_2如圖1 所示。精彩文檔i殳備名梯:P-C-2 ;JSIKW1CS7 1230 JCMOCE7 1550 J 豪岫TIC S7-300» J CPUCPU 312CPJ312CCPU 313CCPU 313C 2 DFCPU 313C-2 P:PCPU 314設(shè)背: HEi .PJ =i14C7P卜 J CPJ H

5、4G2 FNiDP JCPJ 3UC-2 P"P卜 1 CPU 3152 DF卜 1CPU31S-2 PMjCP卜 J CPJ 317-2 DP-J CPU 317-2 FNiDPJ| 6E57 ml 7tK13-DAEOJ6ES7 317-2tKU-DAeOLrU flMiLK: ±r-2 f、,口工:F'UhCPU 5'9F3 PHD-HI可貨號;版本:說那6ES7 317-2EK1 4 ",即V32亞工作存儲器;(USnnHOOO條指令: PE0F1HET虻| ; 57通信 何加微FB工。; PROFlhETIOffilX :吉持 RTilT

6、 ; FRQFIN日描口 和 2 和帶口 ; PflOFWHCBA: PflOFINETCBfS ;TLhr 喻1怖議:組3 WWF掛口 :因或DF 生站或口P山站.最多可獷展迂帙32個糙境 恒寶總葭循訐時百百出固件逝去,二.習(xí)打開讀&機囹謫定取第圖1.添加新設(shè)備3 .啟用時鐘位為了編程方便,使用 CPU屬性中定義的時鐘位,定義方法如下:在“項目樹” > "PLC_2 > “設(shè)備組態(tài)”中,選中CPU ,然后在 下面的屬性窗口中,“屬性” > “時鐘存儲器” 下,將時鐘位定義在 MB0如圖2所示。時鐘位我們使用M0.7 ,它是頻率為0.5 Hz的脈沖,可以使用

7、它去自 動激活發(fā)送任務(wù)。圖2.啟用時鐘位4 . 為PROFINET通信口分配以太網(wǎng)地址在 “設(shè)備視圖”中點擊 CPU上代表PROFINET通信口的綠色小方塊, 在下方會出現(xiàn)PROFINET接口的屬性,在“以太網(wǎng)地址”下分配 S7-300 CPU的IP 地址為192.168.0.101,子網(wǎng)掩碼為255.255.255.0 ,如圖 3 所示。圖3.分配IP地址5 .在S7-300中調(diào)用建立連接指令,進入“項目樹” > " PLC_2” >“程序塊” > “OB1'主程序中,從右側(cè)窗口“指令” > “通信” >“開放式用戶通信”下調(diào)用“TCON指令,

8、配置連接參數(shù),如圖4所示。圖4.調(diào)用TCON旨令并配置連接參數(shù)6 .創(chuàng)建用于交換數(shù)據(jù)的全局 DB塊及定義變量通過“項目樹” > "PLC_2' > ”程序塊” > “添加新塊”,選擇“數(shù)據(jù)塊” 創(chuàng)建全局DB塊,點擊“確定” 生成數(shù)據(jù)塊。如圖5所示。S7-300生 成的數(shù)據(jù)塊都是非優(yōu)化的數(shù)據(jù)塊,不用單獨設(shè)置。圖5.添加新塊雙擊生成的 “數(shù)據(jù)塊_1"( DB5 ),定義數(shù)組,10個字節(jié)用于發(fā)送,10個字節(jié)用于接收,然后編譯數(shù)據(jù)塊。結(jié)果如圖6.所示。數(shù)據(jù)塊數(shù)據(jù)類型偏拓單Arrayl.1 D ofBytE0.0再舊yfl.JO gfBytu10.0名耕O

9、Su tic包,XP_END包 , TCP.RCV圖6.定義交換數(shù)據(jù)區(qū)7 .在OB1中調(diào)用TSEND和TRCV指令塊位置及調(diào)用方法參考 TCON指令的調(diào)用,調(diào)用結(jié)果如圖 7所示程庠段2 '發(fā)送數(shù)據(jù)版E3T5ENCi_CiB"ENPTag_r - req 1 IDIOB&.DBXD.O數(shù)據(jù)塊TC5ND - DATAhend 向陽ENO20.0DONE -i,_lag_8'XM20.1BUSY,Tag_9"XM2O.2ERRORFgO'的VK2工. STATUS - 'Tag_lTCALLTSEND,DB3/調(diào)用TSEND使用背景DB塊:

10、DB3REQ:M0.7/使用0.5Hz的時鐘脈沖,上升沿激活發(fā)送任務(wù)ID:1/連接號,要與連接配置中TDATA:P#DB5.DBX0.0BYTE 10/發(fā)送數(shù)據(jù)區(qū)的數(shù)據(jù),需 要注意DB塊要選用絕對尋 址DONE:M20.0/任務(wù)執(zhí)行完成并且沒有錯誤,該位置1BUSY:M20.1/該位為1,代表任務(wù)未完成,不能激活新任務(wù)ERROR:M20.2/通信過程中肩錯誤發(fā)生,該位置1II STATUSr-I:MW22/有錯誤發(fā)生時,會顯示錯誤信息程序隆接收數(shù)據(jù)新B4'TRCV 時1RCV回困EHO10.0Fg_1" -EN RWI30.0NDR-TTagjMIDWB5.DBX10.0教捐

11、塊【TCP RCVT5M3O.1BUSY-ilag_13'DATA30.2ERROR-i'ng_i4STftUS 'TagT“W34RCVD_LEN 'Tag_16'CALL TRCV,DB4/調(diào)用TRCV使用背景DB 塊:DB4EN_R:M10.0/準(zhǔn)備好接受數(shù)據(jù)ID:1/連接號,要與連接配置中一致DATA:P#DB5.DBX10.0BYTE 10/接受數(shù)據(jù)區(qū)的數(shù)據(jù), 需要注意DB塊要選用 絕對尋址DONE:M30.0/任務(wù)執(zhí)行完成并且沒有錯誤,該位置1BUSY:M30.1/該位為1,代表任務(wù)未完成,不能激活新任務(wù)ERROR:M30.2/通信過程中肩錯

12、誤發(fā)生,該位置1STATUS:MW32/有錯誤發(fā)生時,會顯示錯誤信息號RCVD_LEN:MW34/實際接受數(shù)據(jù)的字節(jié)數(shù)圖7.調(diào)用發(fā)送和接收指令叢 接收和發(fā)送指令調(diào)用需要注意:程序塊的ID要與指令TCON中的ID保持一致DATA參數(shù)的填寫方法(以TRCV程序塊為例):1、直接輸入:P#DB5.DBX10.0 BYTE 102、打開數(shù)據(jù)塊,點擊數(shù)據(jù)塊右上角浮動按鈕移動數(shù)據(jù)塊與OB1并排顯示,選中數(shù)據(jù)塊變量名稱TCP_RCV” 拖拽至(J TRCV指令DATA參數(shù)處,該區(qū)域顯示為綠色,釋放鼠標(biāo)即可。S7-200 SMART®編程(服務(wù)器側(cè)組態(tài)編程)1 .打開 step7 Micro/wiN

13、 $M人心項 目樹 >指令樹 >$>OpenUser Communication調(diào)用TCP_CONNECT如圖8所示。日,Qj庫圖-_ I ModbusFlTU Master (v20)由“山 Modbus RTU Master2 (v2,0由-向 ModbtisRTU Gteve3- . | Open Utei Commuriication (v! .0)| I k-n TCP_CONNECri ISO,CCNhECT:-n UCP-CONNECTh -nTCP_SEMD:Ik-ITCP_RECVi£ |UDP_SEND:|P-nLID叱REB-n DISCONN

14、ECTTCP_CONNECT/ 調(diào)用 TCP_CONNECTEN:SM0.0/使能輸入Req:V6010.0/如果Req = TRUE, CPU啟動連接 操作。如果Req = FALSE則輸出 顯示連接的當(dāng)前狀態(tài)。使用上升沿觸 發(fā)Active:SM0.0閉點/TRUE =主動連接;FALSE = 被動連接ConnlD:1/ CPU使用連接ID (ConnID) 為其它指令標(biāo)識該連接??赡艿?ConnID范圍為0到65534。IPaddr14:00/IPaddr1 是IP地址的最高啟效才出口(hnn卸卸品券密,賴幼建立建撞,M 那一口 nR四觸苴使用上三TCP.CONNECT十沿觸發(fā)1陀口 10

15、L0Ip1LIM1AhMys 1 j-I1In1rigqActiveDonrIDDeneIPadddBusyIPaddr2rrorIPaddi3StatusIPaddr+FhmPMLocPort1J0-oJ0-oJOn2000-veoooa-VK000.1-V6C002-VB6002B1字節(jié),IPaddr4 是IP 地址的最低有效字節(jié)。服務(wù)器側(cè)IP地址寫0,表示接收所有請求RemPort:0/RemPort是遠程設(shè)備上的端口號。遠程端口號范圍為1到49151。對 于被動連接,使用零。LocPort:2000/ LocPort是本地設(shè)備上的端口號。本地端口號范圍為1到49151,但 存在一些限制

16、。DONEV6000.0/當(dāng)連接操作完成且沒有錯誤時, 指令置位Done輸出。BUSYV6000.1/當(dāng)連接操作正在進行時,指令置位Busy輸出。ERRORV6000.2/當(dāng)連接操作完成但發(fā)生錯誤時,指令置位Error輸出STATUS:VB6002/如果指令置位Error輸出,Status輸出會顯示錯誤代碼。如果指令置位Busy或Done輸出,Status為零(無錯誤)圖8.指令位置及調(diào)用連接指令2 .調(diào)用TCP_SENDF口 TCP_RCV指令,如圖9所示3發(fā)送數(shù)據(jù),%叱那觸發(fā),Daum博寫指針指向鬻中重 注然 發(fā)送數(shù)篇沖區(qū)山址不能與指令庫的庫存儲區(qū)各配DocK_1 $11腳齒長度由D, 地

17、址重疊TCP.SENDENHeqConnlD DaneDtaLen BusvDtaPb ErrorStatusmtmlri:夬定V6000.6V6000.7-veoon.oVBE00411Clock_ 1s;1II p I1 -1C-&VBI0-CALLTCP_SEND/ 調(diào)用 TCP_SENDEN:SM0.5/使能輸入Req:SM0.5/如果Req = TRUE, CPU啟超送 操作。如果Req = FALSE則輸 出顯示發(fā)送操作的當(dāng)前狀態(tài)。ConnlD:1/連接ID (ConnID)是此發(fā)送操作所用連接的編號。使用您為TCPCONNECB作選擇的 ConnID。DataLen:10

18、/DataLen 是要發(fā)送的字節(jié)數(shù)(1 至U 1024)。DataPtr:&VB0/DataPtr 是指向待發(fā)送數(shù)據(jù)的指針。這是指向I、Q M或V存儲器的S7-200 SMART指針(例如,&VB10O 。DoneV6000.6/當(dāng)連接操作完成且沒有錯誤時, 指令置位Done輸出。Busy:V6000.7/當(dāng)連接操作正在進行時,指令置位Busy輸出。Error:V6001.0/當(dāng)連接操作完成但發(fā)生錯誤時, 指令置位Error輸出。Status :VB6004/如果指令置位Error輸出,Status輸出會顯示錯誤代碼。如果指令置位Busy或Done輸出,Status為零(無錯誤

19、)*接收數(shù)據(jù),可以E湍常1接收AliwaysOn | ITCP_AECVENConrl DDeneMaxLenBusyDalaPtrErrorStatusLength1 11 -1卜M2000-V6C01 176001 2V60O1 3-VB6005-W6O06CALL/ 調(diào)用 TCP_RECVTCP_RECVEN: SM0.0/使能輸入,常1接收ConnlD:1/CPU將連接ID (ConnID) 用于此接收操作(連接過程中定義)。MaxLen:10/ MaxLen 是要接收的取大字下數(shù)(例如,DataPt中緩沖區(qū)的大?。?到 1024)。DataPtr:&VB2000/ DataP

20、tr 是指向接收數(shù)據(jù)存儲位置的指針。這是指向I、Q M或V存儲器的S7-200 SMART指針(例如,&VB100Done:V6001.1/當(dāng)接收操作完成且沒有錯誤時,指令置位Done輸出。當(dāng)指令置位Done輸出時,Length輸出后效。Busy:V6001.2/當(dāng)接收操作正在進行時,指令置位Busy輸出。Error:V6001.3/當(dāng)接收操作完成但發(fā)生錯誤時,指令置位Error輸出Status:VB6005/如果指令置位Error輸出,Status輸出會顯示錯誤代碼。如果指令置位Busy或Done輸出,Status為零(無錯誤)。Length:VW6006/Length是實際接收的字

21、節(jié)數(shù)。圖9.調(diào)用發(fā)送和接收指令3 .分配庫存儲區(qū),如圖10所示E&.S3向號巾加(DAW0RK.w«k2Q(CPU 5R6QOpen User Cormnunicaljon (vl 0) |指令庫 卬&n User Comm切需要 河字節(jié)的全息V存儲 器指定該庫可使用的此V存精器里的地址單擊蜜湎'以使用程序交用引用定位具有所需大小的未使用塊建議地址:沒有檢查是否與外部使用地址重置的功皎可以手幼修改隹4砧區(qū)起始地M,如二手動輸入期的加。建設(shè)地址刪除庫符號VB5OT0逋過E印”O(jiān)K CmmI |圖10.分配庫存儲區(qū)后 注意:為保證指令庫可以正常工作,分配庫存儲區(qū)的

22、時候,一定不能與程序中使用的其他 V區(qū)地址重疊! !通信結(jié)果將S7-300和S7-200 SMART程序編譯,下載S7-300 側(cè)觸發(fā) TCON指令的 REQ (M10.0 置位為 1) , S7-200 SMARTOJ觸發(fā)TCP_CONNECT令的Req (V6010.0置位為1 )以建立連接 ; 通信結(jié)果如下:名都數(shù)據(jù)類型偏移里啟動值造棚直1- Static£ TCFLSENDArrayf1 -15 of 日收0.0lllL111JJ,上J ,七"7CP_SEND1Byte0.016it0164211T吧in情,m刖舊VED十六迸制16B014irp_SENP?Byte1 D1I6±72+7樣制5TCP_SEND(3Byte2.016#016*23VD 13 _ VB2十六進制15ttU36TCP_SEhlD4Eytt3.016016*24cJ7CP

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論