




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第九章
S7-1200通信LAD&SCL第九章S7-1200通信LAD&SCL-2-
通信簡介1
S7通信2
開放式用戶通信39.1通信簡介通信是指一地與另一地之間的信息傳遞。PLC通信是指PLC與計算機、PLC與PLC、PLC與人機界面(觸摸屏)、PLC與變頻器、PLC與其他智能設備之間的數(shù)據(jù)傳遞。1.通信方式(1)有線通信和無線通信(2)并行通信與串行通信:串行通信又可分為異步通信和同步通信。PLC與其他設備通信主要采用串行異步通信方式。在串行通信中,根據(jù)數(shù)據(jù)的傳輸方向不同,可分為3種通信方式:單工通信、半雙工通信和全雙工通信。9.1通信簡介單工通信:顧名思義數(shù)據(jù)只能往一個方向傳送的通信,即只能由發(fā)送端傳輸給接收端。半雙工通信:數(shù)據(jù)可以雙向傳送,但在同一時間內,只能往一個方向傳送,只有一個方向的數(shù)據(jù)傳送完成后,才能往另一個方向傳送數(shù)據(jù)。全雙工通信:數(shù)據(jù)可以雙向傳送,通信的雙方都有發(fā)送器和接收器,由于有兩條數(shù)據(jù)線,所以雙方在發(fā)送數(shù)據(jù)的同時可以接收數(shù)據(jù)。9.1通信簡介2.通信傳輸介質有線通信采用傳輸介質主要有雙絞線電纜、同軸電纜和光纜。(1)雙絞線電纜:RS-232C、RS-422和RS-485等接口多用雙絞線電纜進行通信。(2)同軸電纜:同軸電纜的結構是從內到外依次為內導體(芯線)、絕緣線、屏蔽層及外保護層。(3)光纜:光纜是由石英玻璃經(jīng)特殊工藝拉成細絲結構,這種細絲的直徑比頭發(fā)絲還要細,但它能傳輸?shù)臄?shù)據(jù)量卻是巨大的。9.1通信簡介3.RS-485標準串行接口RS-485接口是在RS-422基礎上發(fā)展起來的一種EIA標準串行接口,采用“平衡差分驅動”方式。RS-485接口滿足RS-422的全部技術規(guī)范,可以用于RS-422通信。RS-485接口常采用9引腳連接器。RS-485接口的引腳功能如表9-1所示。9.1通信簡介表9-1RS-485接口的引腳功能連接引腳示意圖引腳號信號名稱信號功能1SG或GND外殼接地224V回流邏輯地(公共端)3RXD+或TXD+RS-485信號B,數(shù)據(jù)發(fā)送/接收+端4發(fā)送申請RTS(TTL)55V回流邏輯地(公共端)6+5V+5V輸出,100Ω串聯(lián)電阻7+24V+24V輸出8RXD-或TXD-RS-485信號A,數(shù)據(jù)發(fā)送/接收-端9未用程序員檢測(輸入)外殼屏蔽外殼接地9.1通信簡介S7-1200CPU具有一個集成的PROFINET端口,支持以太網(wǎng)和基于TCP/IP的通信標準。S7-1200CPU支持以下應用協(xié)議:(1)傳輸控制協(xié)議(TCP)(2)ISOonTCP(RFC1006)(3)用戶數(shù)據(jù)報協(xié)議(UDP)(4)S7通信9.1通信簡介a)計算機與PLC連接b)觸摸屏與PLC連接c)兩臺PLC直接連接d)三臺PLC+觸摸屏多臺設備連接圖9-1PROFINET通信的連接方式9.1通信簡介圖9-1a是計算機與PLC連接;圖9-1b是觸摸屏與PLC連接;圖9-1c兩臺PLC直接連接,它們均為直接連接;圖9-1d為三臺PLC+觸摸屏多臺設備連接,它們通過CSM1277以太網(wǎng)交換機連接在一起。圖9-1d中的“1”就是SiemensCSM1277,它是4端口以太網(wǎng)交換機,其可以用于連接PLC和HMI等其它支持PROFINET的設備。9.1通信簡介1.工業(yè)以太網(wǎng)IP地址:設備的以太網(wǎng)接口具有一個默認IP地址,用戶可以更改該地址。如果具有通信功能的模塊支持TCP/CP協(xié)議,則IP參數(shù)可見。通常對于所有以太網(wǎng)模塊都是這樣。IP地址由4個0到255之間的十進制數(shù)字組成。各十進制數(shù)字相互之間用點隔開,例如:192.168.0.3。IP地址包括IP子網(wǎng)的地址和設備的地址。子網(wǎng)掩碼:子網(wǎng)掩碼將這兩個地址拆分。它確定IP地址的哪一部分用于網(wǎng)絡尋址,哪一部分用于設備尋址。子網(wǎng)掩碼的設置位確定IP地址的網(wǎng)絡部分。例如:子網(wǎng)掩碼255.255.0.0=11111111.11111111.00000000.00000000。9.1通信簡介IP地址和默認子網(wǎng)之間的關系:有關IP地址范圍與“默認子網(wǎng)掩碼”的分配存在具體的規(guī)定。IP地址中的第一個十進制數(shù)字(從左邊起)決定默認子網(wǎng)掩碼的結構。如表9-2所示,它決定數(shù)值“1”(二進制)的個數(shù)。IP地址的第一個十進制數(shù)字也可以是224和255之間的值(地址類別D等),但由于對這些值不進行地址檢查,因此不建議使用該方法。表9-2子網(wǎng)掩碼IP地址(十進制)IP地址(二進制)地址類別默認子網(wǎng)掩碼0-1260xxxxxxx.xxxxxxxx....A255.0.0.0128-19110xxxxxx.xxxxxxxx...B255.255.0.0192-223110xxxxx.xxxxxxxx...C255.255.255.09.1通信簡介以太網(wǎng)(MAC)地址:在PROFINET網(wǎng)絡中,制造商會為每個設備都分配一個“介質訪問控制”地址(MAC地址)以進行標識。MAC地址由六組數(shù)字組成,每組兩個十六進制數(shù),這些數(shù)字用連字符(-)或冒號(:)分隔并按傳輸順序排列(例如01-23-45-67-89-AB或01:23:45:67:89:AB)。每個CPU在出廠時都已裝載了一個永久、唯一的MAC地址。您無法更改CPU的MAC地址。MAC地址印在CPU正面左下角位置。9.1通信簡介IP路由器:路由器是LAN之間的鏈接。通過使用路由器,LAN中的計算機可向其它任何網(wǎng)絡發(fā)送消息,這些網(wǎng)絡可能還隱含著其它LAN。如果數(shù)據(jù)的目的地不在LAN內,路由器會將數(shù)據(jù)轉發(fā)給可將數(shù)據(jù)傳送到其目的地的另一個網(wǎng)絡或網(wǎng)絡組。使用“ipconfig”和“ipconfig/all”命令檢查編程設備的IP地址:Windows操作系統(tǒng)在“運行”(Run)對話框的“打開”(Open)區(qū)域中輸入“cmd”,然后單擊“確定”(OK)按鈕。在顯示的“C:\WINDOWS\system32\cmd.exe”對話框中,輸入命令“ipconfig”。使用“ipconfig”命令9.1通信簡介使用“ipconfig/all”命令使用“ipconfig/all”命令可顯示更多信息。在此可找到編程設備的適配器卡類型和以太網(wǎng)(MAC)地址。9.1通信簡介2.以太網(wǎng)設備的互聯(lián)設置在拓撲視圖中,可以指定以太網(wǎng)端口的物理互連。特別是要確定設備的哪個以太網(wǎng)端口將通過以太網(wǎng)電纜(預設拓撲)與另一個設備的特定以太網(wǎng)端口相連。在網(wǎng)絡視圖中,指定哪些設備將通過以太網(wǎng)子網(wǎng)互連。不指定用于設備互連的以太網(wǎng)端口(這是端口互連的工作)。(1)創(chuàng)建網(wǎng)絡連接(2)網(wǎng)絡視圖9.1通信簡介2.以太網(wǎng)設備的互聯(lián)設置在拓撲視圖中,可以指定以太網(wǎng)端口的物理互連。特別是要確定設備的哪個以太網(wǎng)端口將通過以太網(wǎng)電纜(預設拓撲)與另一個設備的特定以太網(wǎng)端口相連。在網(wǎng)絡視圖中,指定哪些設備將通過以太網(wǎng)子網(wǎng)互連。不指定用于設備互連的以太網(wǎng)端口(這是端口互連的工作)。(1)創(chuàng)建網(wǎng)絡連接操作結果選擇“網(wǎng)絡視圖”(Networkview)以顯示要連接的設備。選擇一個設備上的端口,然后將連接拖到第二個設備上的端口處。釋放鼠標按鈕以創(chuàng)建網(wǎng)絡連接。9.1通信簡介(2)網(wǎng)絡視圖網(wǎng)絡視圖是硬件和網(wǎng)絡編輯器的三個工作區(qū)中的一個。在此處可執(zhí)行以下任務組態(tài)和分配設備參數(shù)、設備間組網(wǎng)、編輯設備名稱。①切換開關:設備視圖/網(wǎng)絡視圖/拓撲視圖②網(wǎng)絡視圖的工具欄③設備視圖的圖形區(qū)域④總覽導航⑤設備視圖的表格區(qū)域9.2S7通信對于S7通信,S7-1200PLC的PROFINET通信口只支持S7通信的服務器端,所以在編程和建立連接方面,S7-1200PLC的CPU只做服務器(主站),不用做任何工作,只需在S7-200SMART、S7-300等其它的CPU一側建立單邊連接即可,并使用單邊編程方式PUT、GET指令進行通信,如圖9-6所示。如果是兩臺S7-1200之間的連接,那么我們也是一樣只需要在主站編寫通信,從站干活。在實際工作中,我們往往都是主站接按鈕、開關等司令元件,從站接輸出控制元件居多。圖9-6S7通信指令9.2S7通信使用指令“GET”,可以從遠程CPU讀取數(shù)據(jù)。在控制輸入REQ的上升沿啟動指令,要讀出的區(qū)域的相關指針(ADDR_i)隨后會發(fā)送給伙伴CPU。伙伴CPU則可以處于RUN模式或STOP模式?;锇镃PU返回數(shù)據(jù):如果回復超出最大用戶數(shù)據(jù)長度,那么將在STATUS參數(shù)處顯示錯誤代碼“2”。下次調用時,會將所接收到的數(shù)據(jù)復制到已組態(tài)的接收區(qū)(RD_i)中。如果狀態(tài)參數(shù)NDR的值變?yōu)椤?”,則表示該動作已經(jīng)完成。只有在前一讀取過程已經(jīng)結束之后,才可以再次激活讀取功能。如果讀取數(shù)據(jù)時訪問出錯,或如果未通過數(shù)據(jù)類型檢查,則會通過ERROR和STATUS輸出錯誤和警告。“GET”指令不會記錄伙伴CPU上所尋址到的數(shù)據(jù)區(qū)域中的變化。9.2S7通信表9-5“GET”指令的參數(shù)表參數(shù)聲明數(shù)據(jù)類型存儲區(qū)說明REQInputBOOLI、Q、M、D、L或常量控制參數(shù)request,在上升沿時激活數(shù)據(jù)交換功能。IDInputWORDI、Q、M、D、L或常量用于指定與伙伴CPU連接的尋址參數(shù)。NDROutputBOOLI、Q、M、D、L狀態(tài)參數(shù)NDR:0:作業(yè)尚未開始或仍在運行。1:作業(yè)已成功完成。ERROROutputBOOLI、Q、M、D、L狀態(tài)參數(shù)ERROR和STATUS,錯誤代碼:ERROR=0STATUS的值為:0000H:既無警告也無錯誤<>0000H:警告,詳細信息請參見STATUS。ERROR=1出錯。STATUS提供了有關錯誤類型的詳細信息。STATUSOutputWORDI、Q、M、D、LADDR_1InOutREMOTEI、Q、M、D指向伙伴CPU上待讀取區(qū)域的指針。指針REMOTE訪問某個數(shù)據(jù)塊時,必須始終指定該數(shù)據(jù)塊。示例:P#DB10.DBX5.0字節(jié)10。ADDR_2InOutREMOTEADDR_3InOutREMOTEADDR_4InOutREMOTERD_1InOutVARIANTI、Q、M、D、L指向本地CPU上用于輸入已讀數(shù)據(jù)的區(qū)域的指針。RD_2InOutVARIANTRD_3InOutVARIANTRD_4InOutVARIANT“ERROR”和“STATUS”參數(shù)表ERRORSTATUS(十進制)說明011警告:由于前一作業(yè)仍處于忙碌狀態(tài),因此未激活新作業(yè)。025已開始通信。作業(yè)正在處理。11通信故障,例如:1、連接描述信息未加載(本地或遠程)2、連接中斷(例如:電纜故障、CPU關閉或者CP處于STOP模式)3、尚未與伙伴建立連接121、接收到伙伴設備的否定應答。該功能無法執(zhí)行。2、遠程站的響應超出了用戶數(shù)據(jù)的最大長度。3、伙伴CPU上的訪問保護已激活。在CPU設置中禁用訪問保護。14指向數(shù)據(jù)存儲RD_i的指針出錯:1、參數(shù)RD_i和ADDR_i的數(shù)據(jù)類型彼此不兼容。2、RD_i區(qū)域的長度小于待讀取的ADDR_i參數(shù)的數(shù)據(jù)長度。18訪問伙伴CPU時出錯。110無法訪問本地用戶存儲器(例如,訪問某個已經(jīng)刪除的數(shù)據(jù)塊)。1201、已超出并行作業(yè)的最大數(shù)量。2、該作業(yè)當前正在執(zhí)行,但優(yōu)先級較低(首次調用)。9.2S7通信“GET”指令LAD與SCL對照表LADSCL
"GET_DB"(REQ:=_bool_in_,ID:=_word_in_,NDR=>_bool_out_,ERROR=>_bool_out_,STATUS=>_word_out_,ADDR_1:=_remote_inout_,ADDR_2:=_remote_inout_,ADDR_3:=_remote_inout_,ADDR_4:=_remote_inout_,RD_1:=_variant_inout_,RD_2:=_variant_inout_,RD_3:=_variant_inout_,RD_4:=_variant_inout_);SCL編程只需要對REQ、ID、ADDR_1、RD_1進行定義即可,但沒有
組態(tài)按鈕,那么我們該如何進行組態(tài)呢?左鍵單擊“GET_DB”處就會出現(xiàn)開始組態(tài)按鈕,點擊進入圖9-9所示頁面,在紅框處“伙伴”選擇自己需要的從站設備,若只有2臺PLC,那就只有1個伙伴,若是3臺PLC則會2個伙伴(以此類推),對每一個伙伴均要每次使用該指令進行每一個從站的組態(tài)設置。9.2S7通信9.2S7通信可使用“PUT”指令將數(shù)據(jù)寫入一個遠程CPU。在控制輸入REQ的上升沿啟動指令,寫入?yún)^(qū)指針(ADDR_i)和數(shù)據(jù)(SD_i)隨后會發(fā)送給伙伴CPU?;锇镃PU則可以處于RUN模式或STOP模式。從已組態(tài)的發(fā)送區(qū)域中(SD_i)復制了待發(fā)送的數(shù)據(jù)?;锇镃PU將發(fā)送的數(shù)據(jù)保存在該數(shù)據(jù)提供的地址之中,并返回一個執(zhí)行應答。如果沒有出現(xiàn)錯誤,下一次指令調用時會使用狀態(tài)參數(shù)DONE=“1”來進行標識。上一作業(yè)已經(jīng)結束之后,才可以再次激活寫入過程。如果寫入數(shù)據(jù)時訪問出錯,或如果未通過執(zhí)行檢查,則會通過ERROR和STATUS輸出錯誤和警告。9.2S7通信表9-5“PUT”指令的參數(shù)表參數(shù)聲明數(shù)據(jù)類型存儲區(qū)說明參數(shù)聲明數(shù)據(jù)類型存儲區(qū)說明REQInputBOOLI、Q、M、D、L或常量控制參數(shù)request,在上升沿時激活數(shù)據(jù)交換功能。ADDR_1InOutREMOTEI、Q、M、D指向伙伴CPU上用于寫入數(shù)據(jù)區(qū)域的指針。指針REMOTE訪問某個數(shù)據(jù)塊時,必須始終指定該數(shù)據(jù)塊。示例:P#DB10.DBX5.0字節(jié)10。傳送數(shù)據(jù)結構(例如Struct)時,參數(shù)ADDR_i處必須使用數(shù)據(jù)類型CHAR。IDInputWORDI、Q、M、D、L或常量用于指定與伙伴CPU連接的尋址參數(shù)。ADDR_2InOutREMOTEDONEOutputBOOLI、Q、M、D、L狀態(tài)參數(shù)DONE:0:作業(yè)未開始或仍在執(zhí)行之中。1:作業(yè)已成功完成,且無錯誤。ADDR_3InOutREMOTEERROROutputBOOLI、Q、M、D、L狀態(tài)參數(shù)ERROR和STATUS,錯誤代碼:ERROR=0STATUS的值為:0000H:既無警告也無錯誤<>0000H:警告,詳細信息請參見STATUS。ERROR=1出錯。有關該錯誤類型的詳細信息,請參見STATUS。
ADDR_4InOutREMOTESD_1InOutVARIANTI、Q、M、D、L指向本地CPU上包含要發(fā)送數(shù)據(jù)的區(qū)域的指針。僅支持BOOL、BYTE、CHAR、WORD、INT、DWORD、DINT和REAL數(shù)據(jù)類型。傳送數(shù)據(jù)結構(例如Struct)時,參數(shù)SD_i處必須使用數(shù)據(jù)類型CHAR。STATUSOutputWORDI、Q、M、D、LSD_2InOutVARIANTSD_3InOutVARIANTSD_4InOutVARIANT9.2S7通信“ERROR”和“STATUS”參數(shù)表ERRORSTATUS(十進制)說明011警告:由于前一作業(yè)仍處于忙碌狀態(tài),因此未激活新作業(yè)。025已開始通信。作業(yè)正在處理。11通信故障,例如:1、連接描述信息未加載(本地或遠程)2、連接中斷(例如:電纜故障、CPU關閉或者CP處于STOP模式)3、尚未與伙伴建立連接121、伙伴CPU的否定應答。該功能無法執(zhí)行。2、未授予對伙伴CPU的訪問權限。在CPU設置中激活訪問。14指向數(shù)據(jù)存儲RD_i的指針出錯:1、參數(shù)SD_i和ADDR_i的數(shù)據(jù)類型彼此不兼容。2、SD_i區(qū)域的長度大于待寫入的ADDR_i參數(shù)的數(shù)據(jù)長度。3、不能訪問SD_i。4、已經(jīng)超過了最大用戶數(shù)據(jù)大小。5、參數(shù)SD_i和ADDR_i的數(shù)量不一致。18訪問伙伴CPU時出錯(例如,數(shù)據(jù)塊未加載或不受寫保護)。110無法訪問本地用戶存儲器(例如,訪問某個已經(jīng)刪除的數(shù)據(jù)塊)。1201、已超出并行作業(yè)的最大數(shù)量。2、該作業(yè)當前正在執(zhí)行,但優(yōu)先級較低(首次調用)。9.2S7通信“PUT”指令LAD與SCL對照表LADSCL
"PUT_DB"(REQ:=_bool_in_,ID:=_word_in_,DONE=>_bool_out_,ERROR=>_bool_out_,STATUS=>_word_out_,ADDR_1:=_remote_inout_,ADDR_2:=_remote_inout_,ADDR_3:=_remote_inout_,ADDR_4:=_remote_inout_,SD_1:=_variant_inout_,SD_2:=_variant_inout_,SD_3:=_variant_inout_,SD_4:=_variant_inout_);9.2.3案例27:兩臺電動機異地啟??刂迫蝿眨含F(xiàn)有2臺S7-1200PLC各控制1臺電動機的啟動與停止,控制要求:1.按下主站PLC的本地啟動按鈕SB11或本地停止按鈕SB12可以對主站本地電動機進行啟動或停止操作。2.按下主站遠程啟動按鈕SB13或遠程停止按鈕SB14可以對從站遠程電動機進行啟動或停止操作。3.按下從站PLC的本地啟動按鈕SB21或本地停止按鈕SB22可以對從站本地電動機進行啟動或停止操作。4.按下從站遠程啟動按鈕SB23或遠程停止按鈕SB24可以對主站遠程電動機進行啟動或停止操作。5.電路均有熱過載保護、短路保護、欠壓失壓保護。步驟:1.I/O分配表
2.PLC外部接線圖
3.編寫程序9.2.3案例27:兩臺電動機異地啟停控制設備名稱輸入點輸出點輸入編號注釋輸出編號注釋主站PLCI0.0SB11主站本地啟動Q0.0KM1主站電動機I0.1SB12主站本地停止---I0.2SB13主站遠程啟動---I0.3SB14主站遠程停止---從站PLCI0.0SB21從站本地啟動Q0.0KM2從站電動機I0.1SB22從站本地停止---I0.2SB23從站遠程啟動---I0.3SB24從站遠程停止---9.2.3案例27:兩臺電動機異地啟停控制9.2.3案例27:兩臺電動機異地啟??刂浦髡镜淖兞繌恼镜淖兞?.2.3案例27:兩臺電動機異地啟停控制PUT的組態(tài)GET的組態(tài)9.2.3案例27:兩臺電動機異地啟??刂七B接機制要勾選兩臺PLC的設備和網(wǎng)絡9.2.3案例27:兩臺電動機異地啟??刂浦髡綪LC的LAD程序9.2.3案例27:兩臺電動機異地啟停控制從站PLC的LAD程序
本案例在組態(tài)的時候需要注意勾選每一臺PLC的“連接機制”,需要允許來之遠程對象的PUT/GET通信訪問,主站與從站均要勾選。
本案例不涉及到DB數(shù)據(jù)塊,若讀者需要用到DB數(shù)據(jù)塊時,還需要在數(shù)據(jù)塊屬性去掉“優(yōu)化的塊訪問”,讓其數(shù)據(jù)塊出現(xiàn)偏移量,只有這樣方可在PUT/GET的從站部分進行一一對應。
因為Bool數(shù)據(jù)類型在RD/SD中只能輸入單個位,所當用戶想多個使用時,我們可以把Bool量打包為Byte或Word或DWord數(shù)據(jù)類型,這樣就可以節(jié)省通道數(shù)的使用了。
從本案例編程情況來看,從站只需要進行IP的設定、連接機制的勾選、或數(shù)據(jù)塊取消“優(yōu)化的塊訪問”等組態(tài)操作即可,在指令方面無須編輯,直接編寫程序,賦值遠程控制內容,即“PUT”或“GET”指令的ADDR_1至4引腳即可。9.2.3案例27:兩臺電動機異地啟停控制主站PLC的SCL程序主站PLC的SCL程序從站PLC的SCL程序9.3開放式用戶通信開放式用戶通信的協(xié)議主要是CPU的集成PROFINET端口支持的多種以太網(wǎng)網(wǎng)絡上的通信標準,如傳輸控制協(xié)議(TCP)、ISO-on-TCP(RFC1006)用戶數(shù)據(jù)報協(xié)議(UDP)。開放式用戶通信的主要特點是在所傳送的數(shù)據(jù)結構方面具有高度的靈活性。這就允許CPU與任何通信設備進行開放式數(shù)據(jù)交換,前提是這些設備支持該集成接口可用的連接類型。此通信僅由用戶程序中的指令進行控制,因此可建立和終止事件驅動型連接。在運行期間,也可以通過用戶程序修改連接。具體通信方式如圖9-18所示。具體通信指令如圖9-19所示。9.3開放式用戶通信圖9-18開放式用戶通信圖9-19開放式用戶通信指令9.3開放式用戶通信開放式用戶通信指令的連接ID以下示例顯示了兩個CPU之間的通信,這兩個CPU使用2個單獨的連接來發(fā)送和接收數(shù)據(jù)。其連接如圖9-20所示,其連接表述如下:1、CPU_1中的TSEND_C指令通過第一個連接(CPU_1和CPU_2上的“連接ID1”)與CPU_2中的TRCV_C鏈接。2、CPU_1中的TRCV_C指令通過第二個連接(CPU_1和CPU_2上的“連接ID2”)與CPU_2中的TSEND_C鏈接。TCON_IP_V4連接描述的結構(TCON_IP_V4):與TCP一起使用。具體參數(shù)見表9-12所示。9.3開放式用戶通信圖9-20使用2個單獨的連接來發(fā)送和接受數(shù)據(jù)圖9-21使用1個連接來發(fā)送和接收數(shù)據(jù)9.3開放式用戶通信表9-12“TCON_IP_V4”的參數(shù)表字節(jié)參數(shù)數(shù)據(jù)類型說明0到1InterfaceIdHW_ANYIE接口子模塊的硬件標識符2到3IDCONN_OUC對該連接的引用:值范圍:1(默認值)到4095。在ID下,為TSEND_C、TRCV_C或TCON指令指定該參數(shù)的值。4ConnectionTypeByte連接類型:11:TCP/IP(默認)17:TCP/IP(為了兼容老系統(tǒng),包含該連接類型。推薦使用“11:TCP/IP(默認)”。)19:UDP5ActiveEstablishedBool主動/被動建立連接:TRUE:主動連接(默認)FALSE:被動連接6到9RemoteAddressIP_V4IP地址6ADDR[1]Byte八位位組17ADDR[2]Byte八位位組28ADDR[3]Byte八位位組39ADDR[4]Byte八位位組410到11RemotePortUInt遠程UDP/TCP端口號12到13LocalPortUInt本地UDP/TCP端口號9.3開放式用戶通信指令“TSEND_C”它在博途里區(qū)分CPUS7-1200固件版本V4.0(含)以下和以上。本例講解固件版本為V4.0以上版本。使用“TSEND_C”指令設置和建立通信連接。設置并建立連接后,CPU會自動保持和監(jiān)視該連接。該指令異步執(zhí)行且具有設置并建立通信連接,通過現(xiàn)有的通信連接發(fā)送數(shù)據(jù),終止或重置通信連接的功能。本指令在內部已經(jīng)使用通信指令“TCON”、“TSEND”、“T_DIAG”、“T_RESET”和“TDISCON”?!癟SEND_C”指令的參數(shù)CONT控制連接的建立,而與REQ參數(shù)無關。REQ每當有上升沿時就啟動發(fā)送數(shù)據(jù)1次。9.3開放式用戶通信表9-13“TSEND_C”指令的參數(shù)表參數(shù)聲明數(shù)據(jù)類型存儲區(qū)說明參數(shù)聲明數(shù)據(jù)類型存儲區(qū)說明REQInputBOOLI、Q、M、D、L或常量在上升沿啟動發(fā)送作業(yè)。DATAInOutVARIANTI、Q、M、D、L指向發(fā)送區(qū)的指針,該發(fā)送區(qū)包含要發(fā)送數(shù)據(jù)的地址和長度。傳送結構時,發(fā)送端和接收端的結構必須相同。CONTInputBOOLI、Q、M、D、L控制通信連接:0:斷開通信連接。1:建立并保持通信連接。ADDRInOutVARIANTDUDP需使用的隱藏參數(shù)。此時,將包含指向系統(tǒng)數(shù)據(jù)類型TADDR_Param的指針。接收方的地址信息(IP地址和端口號)將存儲在系統(tǒng)數(shù)據(jù)類型為TADDR_Param的數(shù)據(jù)塊中。LENInputUDINTI、Q、M、D、L或常量可選參數(shù)(隱藏)要通過作業(yè)發(fā)送的最大字節(jié)數(shù)。如果在DATA參數(shù)中使用具有優(yōu)化訪問權限的發(fā)送區(qū),LEN參數(shù)值必須為“0”。COM_RSTInOutBOOLI、Q、M、D、L可選參數(shù)(隱藏)重置連接:0:不相關1:重置現(xiàn)有連接。COM_RST參數(shù)通過“TSEND_C”指令進行求值后將被復位,因此不應靜態(tài)互連。CONNECTInOutVARIANTD指向連接描述結構的指針:設定連接:1.對于TCP或UDP,使用TCON_IP_v4系統(tǒng)數(shù)據(jù)類型。2.對于具有securecommunication功能的TCP或UDP,使用結構TCON_IP_V4_SEC或TCON_QDN_SEC。3.對于ISO-on-TCP,使用TCON_IP_RFC系統(tǒng)數(shù)據(jù)類型。4.對于ISO,使用TCON_ISOnative系統(tǒng)數(shù)據(jù)類型(CP15431/CP15451)。5.連接SMS客戶端時,可使用TCON_PHONE系統(tǒng)數(shù)據(jù)類型。6.使用CM15425進行FDL連接時,需使用系統(tǒng)數(shù)據(jù)類型TCON_FDL組態(tài)連接:對于現(xiàn)有連接,使用TCON_Configured系統(tǒng)數(shù)據(jù)類型。DONEOutputBOOLI、Q、M、D、L狀態(tài)參數(shù),可具有以下值:0:發(fā)送作業(yè)尚未啟動或仍在進行。1:發(fā)送作業(yè)已成功執(zhí)行。此狀態(tài)將僅顯示一個周期。如果在處理(連接建立、發(fā)送、連接終止)期間成功完成中間步驟且“TSEND_C”的執(zhí)行成功完成,將置位輸出參數(shù)DONE。BUSYOutputBOOLI、Q、M、D、L狀態(tài)參數(shù),可具有以下值:0:發(fā)送作業(yè)尚未啟動或已完成。1:發(fā)送作業(yè)尚未完成。無法啟動新發(fā)送作業(yè)。ERROROutputBOOLI、Q、M、D、L狀態(tài)參數(shù),可具有以下值:0:無錯誤1:建立連接、傳送數(shù)據(jù)或終止連接時出錯。由于“TSEND_C”指令或在內部使用的通信指令出錯,可置位輸出參數(shù)ERROR。STATUSOutputWORDI、Q、M、D、L指令的狀態(tài)(參見“參數(shù)ERROR和STATUS”說明)。9.3開放式用戶通信表9-15“TSEND_C”指令LAD與SCL對照表LADSCL
"TSEND_C_DB"(REQ:=_bool_in_,CONT:=_bool_in_,LEN:=_udint_in_,DONE=>_bool_out_,BUSY=>_bool_out_,ERROR=>_bool_out_,STATUS=>_word_out_,CONNECT:=_variant_inout_,DATA:=_variant_inout_,ADDR:=_variant_inout_,COM_RST:=_bool_inout_);新建好兩臺PLC后,首先要進行“設備組態(tài)”,在PLC的“防護與安全”→“連接機制”,勾選“允許來自遠程對象的PUT/GET通信訪問”。然后在“PROFINET接口[X1]”→“以太網(wǎng)地址”→“接口連接到”處點“添加新子網(wǎng)”,確保主站與從站的IP地址在同一個網(wǎng)關且不同IP地址即可。9.3開放式用戶通信圖9-23“TSEND_C”進行組態(tài)圖9-24組態(tài)<新建>DB塊內容9.3開放式用戶通信指令“TRCV_C”它在博途里區(qū)分CPUS7-1200固件版本V4.0(含)以下和以上。本例講解固件版本為V4.0以上版本。使用“TRCV_C”指令異步執(zhí)行并會按設置并建立通信連接,通過現(xiàn)有的通信連接接收數(shù)據(jù),終止或重置通信連接的順序進行工作。本指令在內部已經(jīng)使用通信指令“TCON”、“TRCV”、“T_DIAG”、“T_RESET”和“TDISCON”?!癟RCV_C”指令的參數(shù)CONT控制連接的建立,而與EN_R參數(shù)無關。當EN_R為1則打開接收數(shù)據(jù)的功能,為0時則關閉接收功能,但關閉接收功能時,通信連接仍然不受影響。9.3開放式用戶通信表9-16“TRCV_C”指令的參數(shù)表參數(shù)聲明數(shù)據(jù)類型存儲區(qū)說明參數(shù)聲明數(shù)據(jù)類型存儲區(qū)說明EN_RInputBOOLI、Q、M、D、L或常量啟用接收功能CONNECTInOutVARIANTD指向連接描述結構的指針:設定連接:1.對于TCP或UDP,使用TCON_IP_v4系統(tǒng)數(shù)據(jù)類型。2.對于具有securecommunication功能的TCP或UDP,使用結構TCON_IP_V4_SEC或TCON_QDN_SEC。3.對于ISO-on-TCP,使用TCON_IP_RFC系統(tǒng)數(shù)據(jù)類型。4.對于ISO,使用TCON_ISOnative系統(tǒng)數(shù)據(jù)類型(CP1543-1/CP15451)。5.連接SMS客戶端時,可使用TCON_PHONE系統(tǒng)數(shù)據(jù)類型。6.使用CM1542-5進行FDL連接時,需使用系統(tǒng)數(shù)據(jù)類型TCON_FDL組態(tài)連接:對于現(xiàn)有連接,使用TCON_Configured系統(tǒng)數(shù)據(jù)類型。CONTInputBOOLI、Q、M、D、L控制通信連接:0:斷開通信連接。1:建立并保持通信連接。LENInputUDINTI、Q、M、D、L或常量要接收數(shù)據(jù)的最大長度。如果在DATA參數(shù)中使用具有優(yōu)化訪問權限的接收區(qū),LEN參數(shù)值必須為“0”。ADHOCInputBOOLI、Q、M、D、L或常量可選參數(shù)(隱藏)TCP協(xié)議選項使用Ad-hoc模式。如果未使用TCP協(xié)議,則ADHOC的值需為FALSE。9.3開放式用戶通信表9-16“TRCV_C”指令的參數(shù)表參數(shù)聲明數(shù)據(jù)類型存儲區(qū)說明參數(shù)聲明數(shù)據(jù)類型存儲區(qū)說明DATAInOutVARIANTI、Q、M、D、L指向接收區(qū)的指針。傳送結構時,發(fā)送端和接收端的結構必須相同。BUSYOutputBOOLI、Q、M、D、L狀態(tài)參數(shù),可具有以下值:0:接收尚未啟動或已完成。1:接收尚未完成。無法啟動新發(fā)送作業(yè)。ADDRInOutVARIANTDUDP需使用的隱藏參數(shù)。此時,將包含指向系統(tǒng)數(shù)據(jù)類型TADDR_Param的指針。接收方的地址信息(IP地址和端口號)將存儲在系統(tǒng)數(shù)據(jù)類型為TADDR_Param的數(shù)據(jù)塊中。ERROROutputBOOLI、Q、M、D、L狀態(tài)參數(shù),可具有以下值:0:無錯誤1:在連接建立、數(shù)據(jù)接收或連接終止過程中出錯。由于“TRCV_C”指令或在內部使用的通信指令出錯,可置位輸出參數(shù)ERROR。COM_RSTInOutBOOLI、Q、M、D、L可選參數(shù)(隱藏)重置連接:0:不相關1:重置現(xiàn)有連接。COM_RST參數(shù)通過“TRCV_C”指令進行求值后將被復位,因此不應靜態(tài)互連。STATUSOutputWORDI、Q、M、D、L指令的狀態(tài)(參見“參數(shù)ERROR和STATUS”說明)。DONEOutputBOOLI、Q、M、D、L狀態(tài)參數(shù),可具有以下值:0:接收尚未啟動或仍在進行。1:接收已經(jīng)成功完成。此狀態(tài)將僅顯示一個周期。如果在處理(連接建立、接收、連接終止)期間成功完成中間步驟且“TRCV_C”的執(zhí)行成功完成,將置位輸出參數(shù)DONE。RCVD_LENOutputUDINTI、Q、M、D、L實際接收到的數(shù)據(jù)量(以字節(jié)為單位)9.3開放式用戶通信表9-18“TRCV_C”指令LAD與SCL對照表LADSCL
"TRCV_C_DB"(EN_R:=_bool_in_,CONT:=_bool_in_,LEN:=_udint_in_,ADHOC:=_bool_in_,DONE=>_bool_out_,BUSY=>_bool_out_,ERROR=>_bool_out_,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 配電箱組裝培訓
- 《啟迪-課件素材》課件
- 車輛開運輸發(fā)票合同協(xié)議
- 遠程醫(yī)療服務合同協(xié)議
- 河道入股協(xié)議書
- 郵送廣告制作合同協(xié)議
- 跪求個人協(xié)議合同協(xié)議
- 送菜合同協(xié)議書模板
- 運輸砂石料合同協(xié)議
- 退伙協(xié)議書退款協(xié)議
- 裝配式建筑的發(fā)展現(xiàn)狀和面臨的挑戰(zhàn)研究
- 《北京二年級下學期數(shù)學期中試卷全攻略》
- 供應鏈安全培訓教材課件
- 2024年醫(yī)院考勤的管理制度
- 進貨押金合同模板
- 人教版小學品德與社會三年級下冊全冊教案
- 2024年度北京市安全員之B證(項目負責人)測試卷(含答案)
- 2024年新人教版七年級上冊數(shù)學教學課件 第四章 整式的加減 章末復習
- 老母親贍養(yǎng)協(xié)議書范本
- 卸車工合同協(xié)議書
- 字節(jié)跳動會議管理制度
評論
0/150
提交評論