S7-1200PLC應(yīng)用技術(shù)項(xiàng)目教程課件:兩臺(tái)三相異步電動(dòng)機(jī)反向運(yùn)行PLC控制的TCP通信_(tái)第1頁(yè)
S7-1200PLC應(yīng)用技術(shù)項(xiàng)目教程課件:兩臺(tái)三相異步電動(dòng)機(jī)反向運(yùn)行PLC控制的TCP通信_(tái)第2頁(yè)
S7-1200PLC應(yīng)用技術(shù)項(xiàng)目教程課件:兩臺(tái)三相異步電動(dòng)機(jī)反向運(yùn)行PLC控制的TCP通信_(tái)第3頁(yè)
S7-1200PLC應(yīng)用技術(shù)項(xiàng)目教程課件:兩臺(tái)三相異步電動(dòng)機(jī)反向運(yùn)行PLC控制的TCP通信_(tái)第4頁(yè)
S7-1200PLC應(yīng)用技術(shù)項(xiàng)目教程課件:兩臺(tái)三相異步電動(dòng)機(jī)反向運(yùn)行PLC控制的TCP通信_(tái)第5頁(yè)
已閱讀5頁(yè),還剩51頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

兩臺(tái)三相異步電動(dòng)機(jī)反向運(yùn)行PLC控制的TCP通信一、任務(wù)導(dǎo)入S7-1200PLC基于以太網(wǎng)的通信除了西門子非開放的S7通信外,還適用于開放式用戶通信。本任務(wù)以兩臺(tái)三相異步電動(dòng)機(jī)反向運(yùn)行PLC控制的TCP通信為例,來介紹S7-1200PLCTCP通信的相關(guān)知識(shí)及編程應(yīng)用。(一)開放式用戶通信簡(jiǎn)介

二、相關(guān)鏈接開放式用戶通信(OUC通信)是基于以太網(wǎng)進(jìn)行數(shù)據(jù)交換的協(xié)議,適用于PLC之間通信、PLC與第三方設(shè)備、PLC與高級(jí)語(yǔ)言等進(jìn)行數(shù)據(jù)交換。開放式用戶通信有以下通信連接方式:TCP通信方式ISO-on-TCP通信方式UDP通信方式該通信方式支持TCP/IP的開放式數(shù)據(jù)通信。TCP/IP采用面向數(shù)據(jù)流的數(shù)據(jù)傳送,發(fā)送的長(zhǎng)度最好是固定的。由于ISO不支持以太網(wǎng)路由,因而西門子應(yīng)用RFC1006將ISO映射到TCP上,實(shí)現(xiàn)網(wǎng)絡(luò)路由。該通信連接屬于OSI模型第四層協(xié)議,支持簡(jiǎn)單數(shù)據(jù)傳輸,數(shù)據(jù)無須確認(rèn),與TCP通信相比,UDP沒有連接。S7-1200PLC中所用需要編程的以太網(wǎng)通信都是用開放式以太網(wǎng)通信指令塊T-block來實(shí)現(xiàn),所有T-block通信指令必須在OB1中調(diào)用。調(diào)用T-block通信指令并配置兩個(gè)CPU之間的連接參數(shù),定義數(shù)據(jù)發(fā)送或接收信息的參數(shù)。博途軟件提供兩套通信指令:不帶連接管理的通信指令和帶連接管理的通信指令,分別見表5-24、5-25。(二)開放式用戶通信指令指

令功

能TCON建立以太網(wǎng)連接TDISON斷開以太網(wǎng)連接TSEND發(fā)送數(shù)據(jù)TRCV接受數(shù)據(jù)指

令功

能TSEND_C建立以太網(wǎng)連接并發(fā)送數(shù)據(jù)TRCV_C建立以太網(wǎng)連接并接受數(shù)據(jù)表5-24不帶連接管理的通信指令表5-25帶連接管理的通信指令實(shí)際上TSEND_C指令實(shí)現(xiàn)的是TCON、TDISON和TSEND3條指令綜合的功能,而TRCV_C指令是TCON、TDISON和TRCV3條指令綜合的功能。在指令窗格選擇“通信”→“開放式用戶通信”,開放式用戶通信指令列表如圖5-37所示。圖5-37開放式用戶通信指令

TSEND_C指令LAD/FBD參數(shù)數(shù)據(jù)類型說

明REQBool在上升沿時(shí)執(zhí)行該指令CONTBool控制通信連接:為0時(shí),斷開通信連接。為1時(shí),建立并保持通信連接LENUDInt可選參數(shù)(隱藏):要通過作業(yè)發(fā)送的最大字節(jié)數(shù)。如果在DATA參數(shù)中使用具有優(yōu)化訪問權(quán)限的發(fā)送區(qū),LEN參數(shù)值必須為“0”CONNECTVariant指向連接描述結(jié)構(gòu)的指針:對(duì)于TCP或UDP,使用TCON_IP_v4系統(tǒng)數(shù)據(jù)類型。對(duì)于ISO-on-TCP,使用TCON_IP_RFC系統(tǒng)數(shù)據(jù)類型DATAVariant指向發(fā)送區(qū)的指針:該發(fā)送區(qū)包含要發(fā)送數(shù)據(jù)的地址和長(zhǎng)度。傳送結(jié)構(gòu)時(shí),發(fā)送端和接收端的結(jié)構(gòu)必須相同表5-26TSEND_C指令的LAD/FBD及端子參數(shù)的說明LAD/FBD參數(shù)數(shù)據(jù)類型說

明ADDRVariantUDP需使用的隱藏參數(shù):此時(shí),將包含指向系統(tǒng)數(shù)據(jù)類型TADDR_Param的指針。接收方的地址信息(IP地址和端口號(hào))將存儲(chǔ)在系統(tǒng)數(shù)據(jù)類型為TADDR_Param的數(shù)據(jù)塊中COM_RSTBool重置連接:可選參數(shù)(隱藏)0:不相關(guān);1:重置現(xiàn)有連接。COM_RST參數(shù)通過“TSEND_C”指令進(jìn)行求值后將被復(fù)位,因此不應(yīng)靜態(tài)互連DONEBool狀態(tài)參數(shù):0表示發(fā)送作業(yè)尚未啟動(dòng)或仍在進(jìn)行;1表示發(fā)送作業(yè)已成功執(zhí)行。此狀態(tài)將僅顯示一個(gè)周期如果在處理(連接建立、發(fā)送、連接終止)期間成功完成中間步驟且“TSEND_C”的執(zhí)行成功完成,將置位輸出參數(shù)DONEBUSYBool作業(yè)狀態(tài)位:0表示無正在處理的作業(yè);1表示作業(yè)正在處理ERRORBool錯(cuò)誤位:0表示無錯(cuò)誤;1表示出現(xiàn)錯(cuò)誤,錯(cuò)誤原因查看STATUSSTATUSWord錯(cuò)誤代碼表5-26TSEND_C指令的LAD/FBD及端子參數(shù)的說明(續(xù))

TRCV_C指令LAD/FBD參數(shù)數(shù)據(jù)類型說

明EN_RBool啟用接收的控制參數(shù):EN_R=1時(shí),準(zhǔn)備接收,處理接收作業(yè)CONTBool控制通信連接:0表示斷開通信連接;1表示建立并保持通信連接LENUDInt要接收數(shù)據(jù)的最大長(zhǎng)度。如果在DATA參數(shù)中使用具有優(yōu)化訪問權(quán)限的接收區(qū),LEN參數(shù)值必須為“0”ADHOCBool可選參數(shù)(隱藏),TCP協(xié)議選項(xiàng)使用Ad-hoc模式CONNECTVariant指向連接描述結(jié)構(gòu)的指針:對(duì)于TCP或UDP,使用結(jié)構(gòu)TCON_IP_v4;對(duì)于ISO-on-TCP,使用結(jié)構(gòu)TCON_IP_RFCDATAVariant指向接收區(qū)的指針:傳送結(jié)構(gòu)時(shí),發(fā)送端和接收端的結(jié)構(gòu)必須相同ADDRVariantUDP需使用的隱藏參數(shù):此時(shí),將包含指向系統(tǒng)數(shù)據(jù)類型TADDR_Param的指針。發(fā)送方的地址信息(IP地址和端口號(hào))將存儲(chǔ)在系統(tǒng)數(shù)據(jù)類型為TADDR_Param的數(shù)據(jù)塊中表5-27TRCV_C指令的LAD/FBD及端子參數(shù)的說明LAD/FBD參數(shù)數(shù)據(jù)類型說

明COM_RSTBool重置連接:可選參數(shù)(隱藏)0表示不相關(guān);1表示重置現(xiàn)有連接。COM_RST參數(shù)通過“TRCV_C”指令進(jìn)行求值后將被復(fù)位,因此不應(yīng)靜態(tài)互連DONEBool最后一個(gè)作業(yè)成功完成,立即將輸出參數(shù)DONE置位為“1”BUSYBool作業(yè)狀態(tài)位:0表示無正在處理的作業(yè);1表示作業(yè)正在處理ERRORBool錯(cuò)誤位:0表示無錯(cuò)誤;1表示出現(xiàn)錯(cuò)誤,錯(cuò)誤原因查看STATUSSTATUSWord錯(cuò)誤代碼RCVD_LENUDInt實(shí)際接收到的數(shù)據(jù)量(以字節(jié)為單位)表5-27TRCV_C指令的LAD/FBD及端子參數(shù)的說明(續(xù))

TSEND指令LAD/FBD參數(shù)數(shù)據(jù)類型說

明REQBool在上升沿時(shí)執(zhí)行該指令I(lǐng)DCONN_OUC(Word)引用相關(guān)的連接,ID必須與本地連接描述中的相關(guān)參數(shù)ID相同值范圍:W#16#0001到W#16#0FFFLENUDInt要通過作業(yè)發(fā)送的最大字節(jié)數(shù)DATAVariant指向發(fā)送區(qū)的指針:該發(fā)送區(qū)包含要發(fā)送數(shù)據(jù)的地址和長(zhǎng)度。該地址引用過程映像輸入I、過程映像輸出Q、位存儲(chǔ)器M及數(shù)據(jù)塊DB。傳送結(jié)構(gòu)時(shí),發(fā)送端和接收端的結(jié)構(gòu)必須相同DONEBool狀態(tài)參數(shù):0表示作業(yè)尚未啟動(dòng),或仍在執(zhí)行過程中;1表示作業(yè)已經(jīng)成功完成BUSYBool狀態(tài)參數(shù):0表示作業(yè)尚未啟動(dòng)或已完成;1表示作業(yè)尚未完成,無法啟動(dòng)新作業(yè)ERRORBool錯(cuò)誤位:0表示無錯(cuò)誤;1表示出現(xiàn)錯(cuò)誤,錯(cuò)誤原因查看STATUSSTATUSWord錯(cuò)誤代碼表5-28TSEND指令的LAD/FBD及端子參數(shù)的意義

TRCV指令LAD/FBD參數(shù)數(shù)據(jù)類型說

明EN_RBool允許CPU進(jìn)行接收;EN_R=1時(shí),準(zhǔn)備接收,處理接收作業(yè)IDCONN_OUC引用相關(guān)的連接,ID必須與本地連接描述中的相關(guān)參數(shù)ID相同值范圍:W#16#0001到W#16#0FFFLENUDInt接收區(qū)長(zhǎng)度(以字節(jié)為單位,隱藏)。如果在DATA參數(shù)中使用具有優(yōu)化訪問權(quán)限的存儲(chǔ)區(qū),LEN參數(shù)值必須為“0”ADHOCBool可選參數(shù)(隱藏),TCP協(xié)議選項(xiàng)使用Ad-hoc模式DATAVariant指向接收區(qū)的指針:傳送結(jié)構(gòu)時(shí),發(fā)送端和接收端的結(jié)構(gòu)必須相同NDRVariant狀態(tài)參數(shù)(NewDataReceived):0表示作業(yè)尚未啟動(dòng),或仍在執(zhí)行過程中;1表示作業(yè)已經(jīng)成功完成表5-29TRCV指令的LAD/FBD及端子參數(shù)的意義LAD/FBD參數(shù)數(shù)據(jù)類型說

明BUSYBool狀態(tài)參數(shù):0表示作業(yè)尚未啟動(dòng)或已完成;1表示作業(yè)尚未完成。無法啟動(dòng)新作業(yè)ERRORBool錯(cuò)誤位:0表示無錯(cuò)誤;1表示出現(xiàn)錯(cuò)誤,錯(cuò)誤原因查看STATUSSTATUSWord狀態(tài)參數(shù):輸出狀態(tài)和錯(cuò)誤信息RCVD_LENUInt實(shí)際接收到的數(shù)據(jù)量(以字節(jié)為單位)表5-29TRCV指令的LAD/FBD及端子參數(shù)的意義(續(xù))(一)任務(wù)目標(biāo)三、任務(wù)實(shí)施1)會(huì)S7-1200PLCI/O接線。2)會(huì)組態(tài)兩臺(tái)S7-1200PLC之間的TCP通信網(wǎng)絡(luò)連接。3)能根據(jù)控制要求編寫兩臺(tái)PLCTCP通信的梯形圖程序。4)熟練使用博途編程軟件進(jìn)行設(shè)備組態(tài)、編制梯形圖程序并下載至CPU進(jìn)行調(diào)試運(yùn)行,查看運(yùn)行結(jié)果。表5-30所需設(shè)備與器材(二)設(shè)備與器材序號(hào)名稱符號(hào)型號(hào)規(guī)格數(shù)量備注1常用電工工具

十字起、一字起、尖嘴鉗、剝線鉗等2套表中所列設(shè)備、器材的型號(hào)規(guī)格僅供參考2計(jì)算機(jī)(安裝博途編程軟件)

2臺(tái)3西門子S7-1200PLCCPUCPU1214CAC/DC/Rly,訂貨號(hào):6ES7214-1AG40-0XB02臺(tái)4三相異步電動(dòng)機(jī)M

2臺(tái)5以太網(wǎng)通信線

2根6連接導(dǎo)線

若干

任務(wù)要求兩臺(tái)S7-1200PLC進(jìn)行TCP通信,一臺(tái)作為客戶端,另一臺(tái)作為服務(wù)器??刂埔螅嚎蛻舳撕头?wù)器端控制按鈕分別控制其三相異步電動(dòng)機(jī)的起動(dòng)和停止,但兩者的運(yùn)行方向必須相反。若客戶端電動(dòng)機(jī)正向起動(dòng)運(yùn)行,則服務(wù)器端三相異步電動(dòng)機(jī)只能反向起動(dòng)運(yùn)行;若客戶端電動(dòng)機(jī)反向起動(dòng)運(yùn)行,則服務(wù)器端三相異步電動(dòng)機(jī)只能正向起動(dòng)運(yùn)行。同樣,若先起動(dòng)服務(wù)器三相異步電動(dòng)機(jī),則客戶端三相異步電動(dòng)機(jī)也必須與服務(wù)器端三相異步電動(dòng)機(jī)反向。(三)內(nèi)容與步驟

I/O地址分配與接線圖輸入輸出設(shè)備名稱符號(hào)I元件地址設(shè)備名稱符號(hào)Q元件地址正轉(zhuǎn)起動(dòng)按鈕SB1I0.0正轉(zhuǎn)接觸器KM1Q0.0反轉(zhuǎn)起動(dòng)按鈕SB2I0.1反轉(zhuǎn)接觸器KM2Q0.1停止按鈕SB3I0.2

熱繼電器FRI0.3

表5-31I/O地址分配表根據(jù)控制要求確定I/O點(diǎn)數(shù),兩臺(tái)PLCI/O地址分配(兩臺(tái)相同)見表5-31。圖5-38兩臺(tái)三相異步電動(dòng)機(jī)反向運(yùn)行PLC控制的TCP通信I/O接線圖

創(chuàng)建工程項(xiàng)目打開博途編程軟件,在Portal視圖中選擇“創(chuàng)建新項(xiàng)目”,輸入項(xiàng)目名稱“5RW_3”選擇項(xiàng)目保存路徑,然后單擊“創(chuàng)建”按鈕創(chuàng)建項(xiàng)目完成。

硬件組態(tài)在項(xiàng)目樹中,用鼠標(biāo)雙擊“添加新設(shè)備”選項(xiàng),添加兩臺(tái)設(shè)備,名稱分別為PLC_1和PLC_2,型號(hào)均為CPU1214CAC/DC/Rly(訂貨號(hào):6ES7214-1AG40-0XB0)。單擊“PLC_1[CPU1214CAC/DC/Rly]”下拉按鈕,雙擊“設(shè)備組態(tài)”選項(xiàng),在“設(shè)備視圖”工作區(qū)中,選中PLC_1,依次單擊其巡視窗口中的“屬性”→“常規(guī)”→“PROFINET接口[X1]”→“以太網(wǎng)地址”選項(xiàng),修改PLC_1的以太網(wǎng)IP地址為192.168.0.1,如圖5-39所示。圖5-39PLC_1以太網(wǎng)IP地址用同樣的方法設(shè)置PLC_2的IP地址為192.168.0.2,如圖5-40所示。并啟用時(shí)鐘存儲(chǔ)器字節(jié)。圖5-40PLC_2以太網(wǎng)IP地址在項(xiàng)目樹中,用鼠標(biāo)雙擊“設(shè)備和網(wǎng)絡(luò)”選項(xiàng),進(jìn)入網(wǎng)絡(luò)視圖,首先用鼠標(biāo)單擊PLC_1的PROFINET通信口的綠色小方框,按住鼠標(biāo)拖拽出一條線到PLC_2的PROFINET通信口的綠色小方框上,然后松開鼠標(biāo),則網(wǎng)絡(luò)連接建立,創(chuàng)建完成的網(wǎng)絡(luò)連接如圖5-41所示。

創(chuàng)建網(wǎng)絡(luò)連接圖5-41創(chuàng)建完成的網(wǎng)絡(luò)連接

編輯變量表圖5-42PLC_1變量表用同樣的方法添加并編輯PLC_2變量表,PLC_2變量表與PLC_1相同。

編寫程序

編寫PLC_1程序圖5-43TSEND_C指令的連接參數(shù)編寫TSEND_C指令的塊參數(shù),如圖5-44所示。TSEND_C指令的塊參數(shù)也可以采用上述連接參數(shù)相類似的組態(tài)方法進(jìn)行設(shè)置。圖5-44TSEND_C指令的塊參數(shù)在OB1中調(diào)用接收指令TRCV并組態(tài)參數(shù)。為了使PLC_1能接收到來自PLC_2數(shù)據(jù),在PLC_1調(diào)用接收指令并組態(tài)參數(shù)。接收數(shù)據(jù)與發(fā)送數(shù)據(jù)使用同一連接,所以使用不帶連接管理的TRCV指令。在PLC_1主程序OB1的程序編輯區(qū)右側(cè)指令窗格中,選擇“通信”選項(xiàng),打開“開放式用戶通信→其它”文件夾,雙擊或拖拽TRCV指令至程序段中,自動(dòng)生成名稱為TRCV_DB的背景數(shù)據(jù)塊,在此使用TCP協(xié)議。其塊參數(shù)設(shè)置直接在指令引腳端進(jìn)行,PLC_1程序如圖5-45所示。圖5-31兩臺(tái)三相異步電動(dòng)機(jī)PLC控制的S7通信程序圖5-45兩臺(tái)三相異步電動(dòng)機(jī)反方向運(yùn)行PLC控制的TCP通信PLC_1程序

編寫PLC_2程序圖5-46TRCV_C指令的連接參數(shù)圖5-47兩臺(tái)三相異步電動(dòng)機(jī)反方向運(yùn)行PLC控制的TCP通信PLC_2程序

調(diào)試運(yùn)行將設(shè)備組態(tài)及調(diào)試好的兩單元程序分別下載到PLC_1、PLC_2的CPU中,按圖5-38進(jìn)行兩臺(tái)PLC的I/O接線,并將兩臺(tái)PLC的PROFINET通信口用帶水晶頭的網(wǎng)線連接起來。啟動(dòng)CPU,將CPU切換至RUN模式,按下PLC_1的正向起動(dòng)按鈕,PLC_1控制的三相異步電動(dòng)機(jī)正向起動(dòng)運(yùn)行,觀察PLC_2控制的三相異步電動(dòng)機(jī)是否按下正向起動(dòng)按鈕不能正向起動(dòng),只能按反向起動(dòng)按鈕反向起動(dòng)運(yùn)行,然后分別按下PLC_1、PLC_2上的停止按鈕兩臺(tái)電動(dòng)機(jī)停止運(yùn)行;在按下PLC_1的反向起動(dòng)按鈕,PLC_1控制的三相異步電動(dòng)機(jī)方向起動(dòng)運(yùn)行,觀察PLC_2控制的三相異步電動(dòng)機(jī)是否按下反向起動(dòng)按鈕不能反向起動(dòng),只能按正向起動(dòng)按鈕反向起動(dòng)運(yùn)行,然后分別按下PLC_1、PLC_2上的停止按鈕兩臺(tái)電動(dòng)機(jī)停止運(yùn)行。在PLC_2上分別按下正向、反向起動(dòng)按鈕,觀察PLC_1控制的電動(dòng)機(jī)是否只能與PLC_2控制的電動(dòng)機(jī)反向起動(dòng)運(yùn)行。若上述運(yùn)行現(xiàn)象與控制要求完全相同,則說明本任務(wù)實(shí)現(xiàn)。否則需進(jìn)一步調(diào)試,直至實(shí)現(xiàn)控制要求。1)本任務(wù)正反轉(zhuǎn)運(yùn)行能否直接切換,如果不能程序應(yīng)如何修改?2)如果兩臺(tái)PLC之間采用PROFINETIO通信,要實(shí)現(xiàn)本任務(wù)的功能,其梯形圖程序如何編制?(四)分析與思考四、任務(wù)考核表5-32任務(wù)實(shí)施考核表序號(hào)考核內(nèi)容考核要求評(píng)分標(biāo)準(zhǔn)配分得分1電路及程序設(shè)計(jì)(1)能正確分配I/O地址,并繪制I/O接線圖(2)設(shè)備組態(tài)(3)根據(jù)控制要求,正確編制梯形圖(1)I/O地址分配錯(cuò)或少,每個(gè)扣5分(2)I/O接線圖設(shè)計(jì)不全或有錯(cuò),每處扣5分(3)CPU組態(tài)與現(xiàn)場(chǎng)設(shè)備型號(hào)不匹配,扣10分(4)梯形圖表達(dá)不正確或畫法不規(guī)范,每處扣5分40分2安裝與連線根據(jù)I/O接線圖,正確連接電路(1)連線錯(cuò)一處,扣5分(2)損壞元器件,每只扣5~10分(3)損壞連接線,每根扣5~10分20分3調(diào)試與運(yùn)行能熟練使用編程軟件編制程序下載至CPU,并按要求調(diào)試運(yùn)行(1)不能熟練使用編程軟件進(jìn)行梯形圖的編輯、修改、編譯、下載及監(jiān)視,每項(xiàng)扣2分(2)不能按照控制要求完成相應(yīng)的功能,每少一項(xiàng)扣5分20分4安全操作確保人身和設(shè)備安全違反安全文明操作規(guī)程,扣10~20分20分5合計(jì)(一)ModbusTCP通信五、知識(shí)拓展

功能概述ModbusTCP通信是施耐德公司于1996年推出的基于以太網(wǎng)TCP/IP的Modbus協(xié)議,即ModbusTCP。ModbusTCP通信協(xié)議是開放式協(xié)議,很多設(shè)備都集成此協(xié)議,比如PLC、機(jī)器人、智能工業(yè)相機(jī)和其他智能設(shè)備等。ModbusTCP通信結(jié)合了以太網(wǎng)物理網(wǎng)絡(luò)和TCP/IP網(wǎng)絡(luò)標(biāo)準(zhǔn),采用包含有Modbus應(yīng)用協(xié)議數(shù)據(jù)的報(bào)文傳輸方式。Modbus設(shè)備間的數(shù)據(jù)交換是通過功能碼實(shí)現(xiàn)的,有些功能碼是對(duì)位操作,有些功能碼是對(duì)字操作。S7-1200CPU集成的以太網(wǎng)口支持ModbusTCP通信,可作為ModbusTCP客戶端或者服務(wù)端。ModbusTCP通信使用TCP通信作為通信路徑,其通信時(shí)將占用S7-1200CPU的開放式用戶通信連接資源,通過調(diào)用ModbusTCP客戶端“MB_CLIENT”指令和服務(wù)端“MB_SERVER”指令進(jìn)行數(shù)據(jù)交換。

通信指令在指令選項(xiàng)欄中選擇“通信”→“其它”→“MODBUSTCP”,ModbusTCP通信指令列表如圖5-48所示。圖5-48ModbusTCP通信指令

MB_CLIENT指令LAD/FBD參數(shù)數(shù)據(jù)類型說明REQBool與服務(wù)器之間的通信請(qǐng)求,上升沿有效DISCONNECTBool通過該參數(shù),可以控制與ModbusTCP服務(wù)器建立和終止連接。0表示建立連接;1表示斷開連接MB_MODEUSInt選擇Modbus請(qǐng)求模式(讀取、寫入或診斷)。0表示讀;1表示寫MB_DATA_ADDRUDInt由“MB_CLIENT”指令所訪問數(shù)據(jù)的起始地址MB_DATA_LENUInt數(shù)據(jù)長(zhǎng)度:數(shù)據(jù)訪問的位或字的個(gè)數(shù)MB_DATA_PTRVariant指向Modbus數(shù)據(jù)寄存器的指針:寄存器緩沖數(shù)據(jù)進(jìn)入Modbus服務(wù)器或來自Modbus服務(wù)器。指針必須分配一個(gè)未進(jìn)行優(yōu)化的全局DB或M存儲(chǔ)器地址CONNECTVariant引用包含系統(tǒng)數(shù)據(jù)類型為“TCON_IP_v4”的連接參數(shù)的數(shù)據(jù)塊結(jié)構(gòu)表5-33MB_CLIENT指令的LAD/FBD及端子參數(shù)的說明LAD/FBD參數(shù)數(shù)據(jù)類型說明DONEBool最后一個(gè)作業(yè)成功完成,立即將輸出參數(shù)DONE置位為“1”BUSYBool作業(yè)狀態(tài)位:0表示無正在處理的作業(yè);1表示作業(yè)正在處理ERRORBool錯(cuò)誤位:0表示無錯(cuò)誤;1表示出現(xiàn)錯(cuò)誤,錯(cuò)誤原因查看STATUS表5-33MB_CLIENT指令的LAD/FBD及端子參數(shù)的說明(續(xù))使用客戶端連接時(shí),需遵循以下規(guī)則:1)每個(gè)“MB_CLIENT”連接都必須使用唯一的背景數(shù)據(jù)塊。2)對(duì)于每個(gè)“MB_CLIENT”連接,必須制定唯一的服務(wù)器IP地址。3)每個(gè)“MB_CLIENT”連接都需要一個(gè)唯一的連接ID。4)該指令的背景數(shù)據(jù)塊都必須使用各自相應(yīng)的連接ID。連接ID與背景數(shù)據(jù)塊組合成對(duì),對(duì)每個(gè)連接,組合對(duì)都必須唯一。根據(jù)服務(wù)器組態(tài),可能需要或不需要IP端口的唯一編號(hào)。

MB_SERVER指令LAD/FBD參數(shù)數(shù)據(jù)類型說明DISCONNECTBool嘗試與伙伴設(shè)備進(jìn)行“被動(dòng)”連接。也就是說,服務(wù)器被動(dòng)地偵聽來自任何請(qǐng)求IP地址的TCP連接請(qǐng)求。如果DISCONNECT=0且不存在連接,則可以啟動(dòng)被動(dòng)連接。如果DISCONNECT=1且存在連接,則啟動(dòng)斷開操作。該參數(shù)允許程序控制何時(shí)接受連接。每當(dāng)啟用此輸入時(shí),無法嘗試其它操作MB_HOLD_REGVariant指向“MB_SERVER”指令中Modbus保持性寄存器的指針。MB_HOLD_REG引用的存儲(chǔ)區(qū)必須大于兩個(gè)字節(jié)。保持性寄存器中包含Modbus客戶端通過Modbus功能3(讀取)、6(寫入)、16(多次寫入)和23(在一個(gè)作業(yè)中讀寫)可訪問的值。作為保持性寄存器,可以使用具有優(yōu)化訪問權(quán)限的全局?jǐn)?shù)據(jù)塊,也可以使用位存儲(chǔ)器的存儲(chǔ)區(qū)表5-34MB_SERVER指令的LAD/FBD及端子參數(shù)的說明LAD/FBD參數(shù)數(shù)據(jù)類型說明CONNECTVariant引用包含系統(tǒng)數(shù)據(jù)類型為“TCON_IP_v4”的連接參數(shù)的數(shù)據(jù)塊結(jié)構(gòu)NDRBool“NewDataReady”:0表示無新數(shù)據(jù);1表示從Modbus客戶端寫入的新數(shù)據(jù)DRBool“DataRead”:0表示未讀取數(shù)據(jù);1表示從Modbus客戶端讀取的數(shù)據(jù)ERRORBool如果上一個(gè)請(qǐng)求有錯(cuò)完成,將變?yōu)門RUE并保持一個(gè)周期STATUSWord錯(cuò)誤代碼CONNECTVariant引用包含系統(tǒng)數(shù)據(jù)類型為“TCON_IP_v4”的連接參數(shù)的數(shù)據(jù)塊結(jié)構(gòu)表5-34MB_SERVER指令的LAD/FBD及端子參數(shù)的說明(續(xù))使用客戶端連接時(shí),需遵循以下規(guī)則:1)每個(gè)“MB_SERVER”連接都必須使用唯一的背景數(shù)據(jù)塊。2)每個(gè)“MB_SERVER”連接都需要一個(gè)唯一的連接ID。3)該指令的背景數(shù)據(jù)塊都必須使用各自相應(yīng)的連接ID。連接ID與背景數(shù)據(jù)塊組合成對(duì),對(duì)每個(gè)連接,組合對(duì)都必須唯一。根據(jù)每個(gè)連接,都必須單獨(dú)調(diào)用“MB_SERVER”指令。在使用ModbusTCP通信指令時(shí),應(yīng)注意以下幾點(diǎn):1)ModbusTCP客戶端可以支持多個(gè)TCP連接,連接的最大數(shù)目取決于所使用的CPU;2)ModbusTCP客戶端如果需要連接多個(gè)ModbusTCP服務(wù)器,需要調(diào)用多個(gè)MB_CLIENT指令,每個(gè)MB_CLIENT指令需要分配不同的背景數(shù)據(jù)塊和不同的連接ID;3)ModbusTCP客戶端對(duì)同一個(gè)ModbusTCP服務(wù)器進(jìn)行多次讀寫操作時(shí),需要調(diào)用多個(gè)MB_CLIENT指令,每個(gè)MB_CLIENT指令需要分配相同的背景數(shù)據(jù)塊和相同的連接ID,且同一時(shí)刻只能有一個(gè)MB_CLIENT指令被觸發(fā),即必須采用輪詢的方式。

使用ModbusTCP通信指令注意事項(xiàng)(二)應(yīng)用舉例兩臺(tái)S7-1200PLC之間作ModbusTCP通信,一臺(tái)作為客戶端,一臺(tái)作為服務(wù)器。控制要求:在客戶端按下起動(dòng)按鈕,服務(wù)器端控制的8盞指示燈按HL1HL8→HL2HL7→HL3HL6→HL4HL5→HL1HL8順序每隔1s循環(huán)點(diǎn)亮,指示燈在循環(huán)點(diǎn)亮過程中,按下停止按鈕指示燈熄滅;在服務(wù)器端按下起動(dòng)按鈕,客戶端控制的8盞指示燈按HL4HL5→HL3HL6→HL2HL7→HL1HL8→HL4HL5順序每隔1s循環(huán)點(diǎn)亮,指示燈在循環(huán)點(diǎn)亮過程中,按下停止按鈕指示燈熄滅。輸

入輸

出設(shè)備名稱符號(hào)I元件地址設(shè)備名稱符號(hào)Q元件地址起動(dòng)按鈕SB1I0.0第一盞指示燈HL1Q0.0停止按鈕SB2I0.1第二盞指示燈HL2Q0.1

………

第八盞指示燈HL8Q0.7

I/O地址分配

創(chuàng)建工程項(xiàng)目打開博途編程軟件,在Portal視圖中選擇“創(chuàng)建新項(xiàng)目”,輸入項(xiàng)目名稱“ModbusTCP通信”選擇項(xiàng)目保存路徑,然后單擊“創(chuàng)建”按鈕創(chuàng)建項(xiàng)目完成。表5-35I/O地址分配表

硬件組態(tài)按照前面介紹的方法,添加兩臺(tái)設(shè)備,名稱分別為PLC_1和PLC_2,型號(hào)均為CPU1214CAC/DC/Rly(訂貨號(hào):6ES7214-1AG40-0XB0)。在項(xiàng)目樹中,打開“PLC_1[CPU1214CAC/DC/Rly]”文件夾,雙擊“設(shè)備組態(tài)”選項(xiàng),在“設(shè)備視圖”工作區(qū)中,選中PLC_1,依次單擊其巡視窗口中的“屬性”→“常規(guī)”→“PROFINET接口[X1]”→“以太網(wǎng)地址”選項(xiàng),修改PLC_1的以太網(wǎng)IP地址為192.168.0.1,如圖5-49所示。并啟動(dòng)PLC_1時(shí)鐘存儲(chǔ)器字節(jié)MB0,將M0.3設(shè)置為2Hz的脈沖。用同樣的方法設(shè)置PLC_2的IP地址為192.168.0.2,如圖5-50所示,并啟用時(shí)鐘存儲(chǔ)器字節(jié)MB0圖5-49PLC_1以太網(wǎng)IP地址圖5-50

PLC_2以太網(wǎng)IP地址

添加數(shù)據(jù)塊添加通信指令的連接描述數(shù)據(jù)塊。在項(xiàng)目樹中,依次單擊“PLC_1[CPU1214CAC/DC/Rly]”→“程序塊”文件夾前面的下拉按鈕,在打開的“程序塊”文件夾中用鼠標(biāo)雙擊“添加新塊”選項(xiàng),在彈出的“添加新塊”對(duì)話框中,單擊“數(shù)據(jù)塊”選項(xiàng),數(shù)據(jù)塊名稱為DB1,手動(dòng)修改數(shù)據(jù)塊編號(hào)為10,單擊“確定”按鈕,這樣便在程序塊中生成DB1[DB10]數(shù)據(jù)塊,在數(shù)據(jù)塊中添加變量“通信設(shè)置”,數(shù)據(jù)類型為TCON_IP_v4。用相同

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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)論