S7300中如何編程通信塊FB8USEND和FB9URCV進行數(shù)據(jù)交換_第1頁
S7300中如何編程通信塊FB8USEND和FB9URCV進行數(shù)據(jù)交換_第2頁
S7300中如何編程通信塊FB8USEND和FB9URCV進行數(shù)據(jù)交換_第3頁
S7300中如何編程通信塊FB8USEND和FB9URCV進行數(shù)據(jù)交換_第4頁
S7300中如何編程通信塊FB8USEND和FB9URCV進行數(shù)據(jù)交換_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、介紹:下面的通信塊也可用于S7-300的通過S7連接的通信:FB8USENDFB9URCV以上通信塊位于StandardLibraryCommunicationBlocksBlocks,只能在S7-300的S7程序中調(diào)用。、亠注意:對于S7-400,必須在S7程序中從StandardLibrarySystemFunctionBlocksBlocks中調(diào)用通信塊SFB8USEND和SFB9URCV通信塊FB8USEND和FB9URCV的特點FB8和FB9是異步通信。必須在OB1中調(diào)用(參見條目號:2795485)。FB8和FB9運行時間可能持續(xù)多個OB1循環(huán)周期。FB8和FB9通過輸入?yún)?shù)(RE

2、Q或EN_R)使能。運行結(jié)果通過DONE或ERROR指示。USEND和URCV可以通過一個連接同時進行。數(shù)據(jù)傳輸是不帶確認的。示例程序包括一個S7連接,F(xiàn)B8通過此連接發(fā)送數(shù)據(jù),F(xiàn)B9通過此連接接收數(shù)據(jù)。示例程序描述:此S7程序包含標準庫中的FB8USEND和FB9URCV通信功能塊的調(diào)用。FB8USEND用于向另一S7站點或PC站發(fā)送數(shù)據(jù)。FB9URCV用于接收來自另一S7站點或PC站的數(shù)據(jù)。首先建立S7-300站的硬件配置。確保標志字節(jié)10作為時鐘標志。發(fā)送任務(wù)由此時鐘標志觸發(fā)。保存、編譯此S7-300站的硬件配置并下載。然后,在NetPro中配置S7連接。如果通信對象在同一STEP7項目

3、被配置,則可以配置成指定的S7連接。否則只能配置成非指定的S7連接。必須在通信對象兩端均配置S7連接,因為通過FB8USEND和FB9URCV實現(xiàn)的S7通信是基于客戶端-客戶端的原則。配置通信連接時要確保正確配置IP地址和PROFIBUS地址。同樣,要確保TSAP配置正確。它們是通信對象間通信連接的惟一標識。通信塊FB8USEND和FB9URCV的輸入?yún)?shù)ID的值必須與S7連接的屬性對話框的General欄一致。圖01:S7連接的配置示例STEP7程序包含塊OB100,OB1,FB100,DB100,DB200,DB201,FB8和FB9.OB100OB100是一個重啟動組織塊,在CPU重啟時

4、(暖啟動)運行。在這個塊中,通信觸發(fā)標志位M1.0和M0.1被使能。OB1OB1是循環(huán)調(diào)用的。在OB1中通過M1.0和M0.1使能調(diào)用FB100(背景數(shù)據(jù)塊DB100),M1.0在FB100執(zhí)行完成后被立即復(fù)位。圖02:OB1FB100FB100在0B1中循環(huán)調(diào)用。在這個FB中調(diào)用FB8(USEND)和FB9(URCV)。FB8的輸入?yún)?shù)REQ的上升沿信號觸發(fā)發(fā)送任務(wù)。發(fā)送任務(wù)的觸發(fā)受控于變量PLC1_C0M.USEND_REQ,該變量通過時鐘標志M10.6置位,在發(fā)送任務(wù)完成或出錯時復(fù)位。因此,執(zhí)行發(fā)送任務(wù)時將變量PLC1_C0M.USEND_REQ置位,確保在此期間不可能觸發(fā)新的發(fā)送任務(wù)。

5、對功能塊調(diào)用的這個鎖定是非常得要的,因為該功能塊是異步的,并且可持續(xù)多個循環(huán)周期。在沒有等待當前任務(wù)執(zhí)行完成或有錯誤發(fā)生的情況下,持續(xù)的觸發(fā)新的發(fā)送任務(wù)可能導(dǎo)致通信過載。輸入?yún)?shù)ID必須來自NetPro中S7連接屬性對話框(參見圖01)。利用參數(shù)R_ID定義一對發(fā)送FB和接收FB。R_ID在發(fā)送端FB和接收端FB必須匹配。FB8的輸入?yún)?shù)”SD_1”用來指定發(fā)送數(shù)據(jù)(發(fā)送緩沖區(qū))的地址和長度(如p#DB201.DBX0.0BYTE20)。輸出參數(shù)DONE,ERROR和STATUS用于任務(wù)評估,三個參數(shù)只有在同一循環(huán)周期中才有效。圖03:FB100:FB8USEND的調(diào)用發(fā)送任務(wù)成功完成后將”P

6、LC1_COM.USEND_REQ復(fù)位。這樣新的發(fā)送任務(wù)可以被觸發(fā)。如果發(fā)送任務(wù)因為錯誤中斷,”PLC1_COM.USEND_REQ被復(fù)位,F(xiàn)B8的輸出參數(shù)STATUS的值被保存用于錯誤分析。圖04:FB100:保存狀態(tài)字FB9URCV通過輸入?yún)?shù)”EN_R”激活。輸入?yún)?shù)的值總是”1”,因此S7-300時刻準備著接收數(shù)據(jù)。FB9URCV1的輸入?yún)?shù)ID必須來自NetPro中S7連接屬性對話框(參見圖01)。利用參數(shù)”R_ID”定義一對發(fā)送FB和接收FB?!盧_ID”在發(fā)送端FB和接收端FB必須匹配。FB9的輸入?yún)?shù)SD_1用來指定接收數(shù)據(jù)區(qū)(接收緩沖區(qū))的地址和長度(如p#DB200.DBX0.0BYTE20)。輸出參數(shù)NDR,ERROR和STATUS用于任務(wù)評估,三個參數(shù)只有在同一循環(huán)周期中才有效。圖05:FB100:FB9URCV的調(diào)用如果數(shù)據(jù)未被成功接收,輸出參數(shù)STATUS的值被保存用于故障診斷。圖06:FB100:保存狀態(tài)字、亠注意:手冊SystemSoftwareforS7-300/400SystemandStandardFunctions第21章S7Communication中提供了通過通信塊FB8

溫馨提示

  • 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)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論