S7200SMARTCPU與S7300PN口進(jìn)行TCP通信SMART做服務(wù)器_第1頁(yè)
S7200SMARTCPU與S7300PN口進(jìn)行TCP通信SMART做服務(wù)器_第2頁(yè)
S7200SMARTCPU與S7300PN口進(jìn)行TCP通信SMART做服務(wù)器_第3頁(yè)
S7200SMARTCPU與S7300PN口進(jìn)行TCP通信SMART做服務(wù)器_第4頁(yè)
S7200SMARTCPU與S7300PN口進(jìn)行TCP通信SMART做服務(wù)器_第5頁(yè)
已閱讀5頁(yè),還剩14頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、S7-200 SMART 與 S7-300 集成 PN 口之間 TCP 通信 S7-200 SMART 作為服務(wù)器TCP 協(xié)議通信TCP 通信為面向連接的通信,需要雙方都調(diào)用指令以建立連接及交換數(shù)據(jù)。S7-200 SMART 與 S7-300 通過(guò) TCP 通信,在 S7-300 調(diào)用 T-block 指令 ( TCON, TDISCON, TSEND, TRCV ) ,在 S7-200 SMART 調(diào)用 Open User Communication 庫(kù)指令( TCP_CONNECT,DISCONNECT,TCP_SEND,TCP_RECV) 。雙方的發(fā)送和接收指令必須成對(duì)出現(xiàn)??蛻舳耍褐鲃?dòng)

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

3、.255.255.0) S7-200 SMART CPU (固件版本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 個(gè)字節(jié)數(shù)據(jù):( S7-300 側(cè) ) DB5.DBB0DB5.DBB9 -> ( S7- 200 SMART 側(cè) ) VB2000VB2009 S7-300 接收 10 個(gè)字節(jié)數(shù)據(jù): ( S7-300

4、側(cè) ) DB5.DBB10DB5.DBB19 <- ( S7-200 SMART 側(cè) ) VB0VB9S7-300 側(cè)硬件組態(tài)和編程 ( 客戶機(jī)側(cè)組態(tài)編程 )1. 使用 TIA V13 SP1 Upd 9 軟件 Portal 視圖中,創(chuàng)建新項(xiàng)目2. 添加硬件并命名PLC進(jìn)入 “項(xiàng)目視圖”,在“項(xiàng)目樹” 下雙擊 “添加新設(shè)備”,在對(duì)話框中選擇所使用的 S7-300 CPU 添加到機(jī)架上,命名為 PLC_2 如圖1 所示。圖1. 添加新設(shè)備3. 啟用時(shí)鐘位為了編程方便,使用 CPU 屬性中定義的時(shí)鐘位,定義方法如下:在 “項(xiàng)目樹” > “PLC_2” &g

5、t; “設(shè)備組態(tài)” 中,選中 CPU ,然后在下面的屬性窗口中,“屬性” > “時(shí)鐘存儲(chǔ)器” 下,將時(shí)鐘位定義在 MB0,如圖2所示。時(shí)鐘位我們使用 M0.7 ,它是頻率為 0.5 Hz 的脈沖,可以使用它去自動(dòng)激活發(fā)送任務(wù)。圖2.啟用時(shí)鐘位4. 為 PROFINET 通信口分配以太網(wǎng)地址在 “設(shè)備視圖”中點(diǎn)擊 CPU 上代表 PROFINET 通信口的綠色小方塊,在下方會(huì)出現(xiàn) PROFINET 接口的屬性,在 “以太網(wǎng)地址” 下分配 S7-300 CPU 的 IP 地址為 192.168.0.101 ,子網(wǎng)掩碼為255.255.255.0,如圖3 所示。圖3. 分配

6、 IP 地址5.在S7-300 中調(diào)用建立連接指令,進(jìn)入 “項(xiàng)目樹” > “ PLC_2” > “程序塊” > “OB1” 主程序中,從右側(cè)窗口 “指令”> “通信”>“開放式用戶通信”下調(diào)用 “TCON” 指令,配置連接參數(shù),如圖4 所示。圖4. 調(diào)用TCON指令并配置連接參數(shù)6.創(chuàng)建用于交換數(shù)據(jù)的全局DB塊及定義變量通過(guò)“項(xiàng)目樹”>“PLC_2”>“程序塊”>“添加新塊”,選擇“數(shù)據(jù)塊” 創(chuàng)建全局 DB 塊,點(diǎn)擊“確定” 生成數(shù)據(jù)塊。如圖5所示。S7-300 生成的數(shù)據(jù)塊都是非優(yōu)化的數(shù)據(jù)塊,不用單獨(dú)設(shè)置。圖5.添加新塊雙擊生成的 “

7、數(shù)據(jù)塊_1” ( DB5 ) ,定義數(shù)組,10 個(gè)字節(jié)用于發(fā)送,10個(gè)字節(jié)用于接收,然后編譯數(shù)據(jù)塊。結(jié)果如圖6.所示。圖6. 定義交換數(shù)據(jù)區(qū)7.在OB1中調(diào)用 TSEND 和 TRCV指令塊位置及調(diào)用方法參考 TCON 指令的調(diào)用,調(diào)用結(jié)果如圖7所示。CALL TSEND, DB3/調(diào)用TSEND,使用背景DB塊:DB3REQ:M0.7/使用0.5Hz的時(shí)鐘脈沖,上升沿激活發(fā)送任務(wù)ID:1/連接號(hào),要與連接配置中一致DATA:P#DB5.DBX0.0 BYTE 10/ 發(fā)送數(shù)據(jù)區(qū)的數(shù)據(jù),需要注意DB塊要選用絕對(duì)尋址DONE:M20.0/ 任務(wù)執(zhí)行完成并且沒有錯(cuò)誤,該位置1BUSY:M

8、20.1/ 該位為1,代表任務(wù)未完成,不能激活新任務(wù)ERROR:M20.2/ 通信過(guò)程中有錯(cuò)誤發(fā)生,該位置1STATUS:MW22/ 有錯(cuò)誤發(fā)生時(shí),會(huì)顯示錯(cuò)誤信息CALL TRCV, DB4/調(diào)用TRCV,使用背景DB塊:DB4EN_R:M10.0/準(zhǔn)備好接受數(shù)據(jù)ID:1/連接號(hào),要與連接配置中一致DATA:P#DB5.DBX10.0 BYTE 10/ 接受數(shù)據(jù)區(qū)的數(shù)據(jù),需要注意DB塊要選用絕對(duì)尋址DONE:M30.0/ 任務(wù)執(zhí)行完成并且沒有錯(cuò)誤,該位置1BUSY:M30.1/ 該位為1,代表任務(wù)未完成,不能激活新任務(wù)ERROR:M30.2/ 通信過(guò)程中有錯(cuò)誤發(fā)生,該位置1STATUS:MW3

9、2/ 有錯(cuò)誤發(fā)生時(shí),會(huì)顯示錯(cuò)誤信息號(hào)RCVD_LEN:MW34/ 實(shí)際接受數(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ù)塊,點(diǎn)擊數(shù)據(jù)塊右上角浮動(dòng)按鈕,移動(dòng)數(shù)據(jù)塊與OB1并排顯示,選中數(shù)據(jù)塊變量名稱 “ TCP_RCV ” 拖拽到 TRCV 指令 DATA 參數(shù)處,該區(qū)域顯示為綠色,釋放鼠標(biāo)即可。 S7-200 SMART側(cè)編程 ( 服務(wù)器側(cè)組態(tài)編程 )1.打

10、開STEP 7 Micro/WIN SMART>項(xiàng)目樹>指令樹>庫(kù)>Open User Communication ,調(diào)用TCP_CONNECT ,如圖8所示。TCP_CONNECT/調(diào)用TCP_CONNECTEN:SM0.0/使能輸入Req:V6010.0/如果 Req = TRUE,CPU 啟動(dòng)連接操作。如果 Req = FALSE,則輸出顯示連接的當(dāng)前狀態(tài)。使用上升沿觸發(fā)Active:SM0.0閉點(diǎn)/TRUE = 主動(dòng)連接 ;FALSE = 被動(dòng)連接ConnID:1/ CPU 使用連接 ID (ConnID) 為其它指令標(biāo)識(shí)該連接???/p>

11、能的 ConnID 范圍為 0 到 65534。IPaddr14:00/IPaddr1 是 IP 地址的最高有效字節(jié),IPaddr4 是 IP 地址的最低有效字節(jié)。服務(wù)器側(cè)IP地址寫0,表示接收所有請(qǐng)求RemPort:0/RemPort 是遠(yuǎn)程設(shè)備上的端口號(hào)。遠(yuǎn)程端口號(hào)范圍為 1 到 49151。對(duì)于被動(dòng)連接,使用零。LocPort:2000/ LocPort 是本地設(shè)備上的端口號(hào)。本地端口號(hào)范圍為 1 到 49151,但存在一些限制。DONE:V6000.0/ 當(dāng)連接操作完成且沒有錯(cuò)誤時(shí),指令置位 Done 輸出。BUSY:V6000.1/ 當(dāng)連接操作正在進(jìn)行時(shí),指令置位 Busy 輸出。E

12、RROR:V6000.2/ 當(dāng)連接操作完成但發(fā)生錯(cuò)誤時(shí),指令置位 Error 輸出STATUS:VB6002/ 如果指令置位 Error 輸出,Status 輸出會(huì)顯示錯(cuò)誤代碼。如果指令置位 Busy 或 Done 輸出,Status 為零(無(wú)錯(cuò)誤)圖8. 指令位置及調(diào)用連接指令2.調(diào)用TCP_SEND 和 TCP_RCV 指令,如圖9 所示。CALL TCP_SEND/調(diào)用TCP_SENDEN:SM0.5/使能輸入Req:SM0.5/如果 Req = TRUE,CPU 啟動(dòng)發(fā)送操作。如果 Req = FALSE,則輸出顯示發(fā)送操作的當(dāng)前狀態(tài)。ConnID:1/連

13、接 ID (ConnID) 是此發(fā)送操作所用連接的編號(hào)。使用您為 TCP_CONNECT 操作選擇的 ConnID。DataLen:10/DataLen 是要發(fā)送的字節(jié)數(shù)(1 到 1024)。DataPtr:&VB0/DataPtr 是指向待發(fā)送數(shù)據(jù)的指針。這是指向 I、Q、M 或 V 存儲(chǔ)器的 S7-200 SMART 指針(例如,VB100)。Done:V6000.6/ 當(dāng)連接操作完成且沒有錯(cuò)誤時(shí),指令置位 Done 輸出。Busy:V6000.7/ 當(dāng)連接操作正在進(jìn)行時(shí),指令置位 Busy 輸出。Error:V6001.0/ 當(dāng)連接操作完成但發(fā)生錯(cuò)誤時(shí),指令置位 Error 輸出

14、。Status:VB6004/ 如果指令置位 Error 輸出,Status 輸出會(huì)顯示錯(cuò)誤代碼。如果指令置位 Busy 或 Done 輸出,Status 為零(無(wú)錯(cuò)誤)CALL TCP_RECV/調(diào)用TCP_RECVEN:SM0.0/使能輸入,常1接收ConnID:1/CPU 將連接 ID (ConnID) 用于此接收操作(連接過(guò)程中定義)。MaxLen:10/ MaxLen 是要接收的最大字節(jié)數(shù)(例如,DataPt 中緩沖區(qū)的大小(1 到 1024)。DataPtr:&VB2000/ DataPtr 是指向接收數(shù)據(jù)存儲(chǔ)位置的指針。這是指向 I、Q、M 或 V 存儲(chǔ)器的 S7-200 SMART 指針(例如,VB100)Done:V6001.1/當(dāng)接收操作完成且沒有錯(cuò)誤時(shí),指令置位 Done 輸出。當(dāng)指令置位 Done 輸出時(shí),Length 輸出有效。Busy:V6001.2/ 當(dāng)接收操作正在進(jìn)行時(shí),指令置位 Busy 輸出。Error:V6001.3/ 當(dāng)接收操作完成但發(fā)生錯(cuò)誤時(shí),指令置位 Error 輸出Status:VB6005/ 如果指令置位 Error 輸出,Status 輸出會(huì)顯示錯(cuò)誤代碼。如果指令置位 Busy 或 Done 輸出,Status 為零(無(wú)錯(cuò)誤)。Length:VW6006/Length 是實(shí)際接收的字節(jié)數(shù)。圖9.

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論