信捷PLC培訓(xùn)93-通訊課件_第1頁
信捷PLC培訓(xùn)93-通訊課件_第2頁
信捷PLC培訓(xùn)93-通訊課件_第3頁
信捷PLC培訓(xùn)93-通訊課件_第4頁
信捷PLC培訓(xùn)93-通訊課件_第5頁
已閱讀5頁,還剩93頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

信捷PLC培訓(xùn)

第9.3課時信捷PLC培訓(xùn)

第9.3課時1第9.3章通訊C語言Modbus通訊Block自由格式第9.3章通訊C語言Modbus通訊Block自由格式2觸摸屏如何實現(xiàn)可以實時顯示PLC的狀態(tài)?PLC與變頻器通訊程序改怎么編寫?觸摸屏如何實現(xiàn)可以實時顯示PLC的狀態(tài)?PLC與變頻器通訊程3通訊概述通訊概述4通訊口1通訊口2的232通訊口2的485XC2、XC3、XC5、XCM以及XCC系列可編程控制器都支持Modbus協(xié)議、自由協(xié)議通訊功能。1、通訊口通訊口2的485XC2、XC3、XC5、XCM以及XCC系列52、通訊參數(shù)設(shè)置通過上述通訊口,我們可以使兩個串行通訊設(shè)備任意通信,但是在通訊之前,必須設(shè)置相互可以辨識的參數(shù),具體見表通訊口默認(rèn)參數(shù):站號為1、波特率19200bps、8個數(shù)據(jù)位、1個停止位、偶校驗。2、通訊參數(shù)設(shè)置6XCPPro編程軟件中集成了修改通訊口的模塊,如下圖所示:通過軟件來修改通訊口參數(shù),方便直觀,且不易出錯,修改完成后,重新上電才能生效。XCPPro編程軟件中集成了修改通訊口的模塊,如下圖所示:73、通訊相關(guān)指令

信捷通訊指令包括mudbus指令和自由格式指令兩大類。3、通訊相關(guān)指令8modbus通訊modbus通訊9

(1)modbus通訊指令Modbus指令,分為線圈讀寫、寄存器讀寫,采用標(biāo)準(zhǔn)的mudbus-RTU協(xié)議。下面具體介紹這些指令的用法。

A線圈讀[COLR]線圈讀是將指定局號中指定線圈狀態(tài)讀到本機(jī)內(nèi)指定線圈中的指令。指令說明如圖所示:第一節(jié)Modbus通訊(1)modbus通訊指令第一節(jié)Modbus通訊10其中個操作數(shù)的含義如下表:當(dāng)X0由OFF到ON變化時,將站號為1的遠(yuǎn)端設(shè)備的modbus地址為K500和K501的兩個線圈狀態(tài)映射到本機(jī)的M1和M2兩個線圈。本通訊指令通過PLC的port2發(fā)送。第一節(jié)Modbus通訊其中個操作數(shù)的含義如下表:第一節(jié)Modbus通訊11B單個線圈寫[COLW]單個線圈寫是將本機(jī)內(nèi)指定線圈狀態(tài)寫到指定局號中指定線圈的指令。指令說明如圖所示:第一節(jié)Modbus通訊B單個線圈寫[COLW]第一節(jié)Modbus通訊12C多個線圈寫[MCLW]多個線圈寫是將本機(jī)內(nèi)指定的多個線圈的狀態(tài)寫到指定局號中指定線圈的指令。指令說明如圖所示:第一節(jié)Modbus通訊C多個線圈寫[MCLW]第一節(jié)Modbus通訊13D寄存器讀[REGR]寄存器讀是將指定局號指定寄存器讀到本機(jī)內(nèi)指定寄存器的指令。指令說明如圖所示:第一節(jié)Modbus通訊D寄存器讀[REGR]第一節(jié)Modbus通訊14E單個寄存器寫[REGW]單個寄存器寫[是將本機(jī)內(nèi)指定寄存器寫到指定局號指定寄存器的指令。指令說明如圖所示:第一節(jié)Modbus通訊E單個寄存器寫[REGW]第一節(jié)Modbus通訊15F多個寄存器寫[MRGW]多個寄存器寫是將本機(jī)內(nèi)指定的多個寄存器寫到指定局號指定寄存器的指令。指令說明如圖所示:第一節(jié)Modbus通訊F多個寄存器寫[MRGW]第一節(jié)Modbus通訊16Mudbus通訊舉例1

一臺信捷XC系列PLC“A”控制1臺XC系列PLC“B”,要求“A”PLC的X0導(dǎo)通時,“B”PLC的Y0導(dǎo)通??删幊炭刂破鞯能浽odbus地址見手冊!第一節(jié)Modbus通訊Mudbus通訊舉例1一臺信捷XC系列PLC17AABB第一節(jié)Modbus通訊AABB第一節(jié)Modbus通訊18Mudbus通訊舉例2

一臺信捷XC系列PLC“A”控制1臺信捷變頻器,要求可通過通訊,更改變頻器的運行頻率以及運行命令。變頻器的軟元件modbus地址及參數(shù)修改詳見變頻器用戶手冊!第一節(jié)Modbus通訊Mudbus通訊舉例2一臺信捷XC系列PLC19AABB第一節(jié)Modbus通訊AABB第一節(jié)Modbus通訊20自由格式通訊自由格式通訊21

(2)自由格式指令

所謂自由格式,即自定義協(xié)議通訊,現(xiàn)在市場上很多智能設(shè)備都支持RS232或者RS485通訊,而各家產(chǎn)品所使用的協(xié)議不盡相同,例如:信捷PLC使用標(biāo)準(zhǔn)的Modbus-RTU協(xié)議,一些溫度控制器廠家使用的自定義協(xié)議;如果用信捷PLC和溫度控制器通訊,讀取溫度控制器采集的當(dāng)前溫度,則需使用自由格式通訊,完全按照儀表廠家的協(xié)議來發(fā)送數(shù)據(jù),這樣即可通訊上。第二節(jié)自由格式通訊

第二節(jié)自由格式通訊22自由格式通訊指令包括發(fā)送數(shù)據(jù)和接收數(shù)據(jù)兩條,下面介紹這兩條指令的用法。A發(fā)送數(shù)據(jù)[SEND]發(fā)送數(shù)據(jù)將本機(jī)內(nèi)指定的數(shù)據(jù)寫到指定局號指定地址的指令。指令說明如圖所示:其中個操作數(shù)的含義如下表:第二節(jié)自由格式通訊自由格式通訊指令包括發(fā)送數(shù)據(jù)和接收數(shù)據(jù)兩條,下面介紹23M0的一次上升沿發(fā)送一次數(shù)據(jù),發(fā)送字符的個數(shù)由D100的值決定,時序圖如圖所示:在數(shù)據(jù)發(fā)送過程中‘正在發(fā)送’標(biāo)志位M8132(通訊口2)置ON。第二節(jié)自由格式通訊M0的一次上升沿發(fā)送一次數(shù)據(jù),發(fā)送字符的個數(shù)由D100的值決24B接收數(shù)據(jù)[RCV]接收數(shù)據(jù)是將指定局號的數(shù)據(jù)寫到本機(jī)內(nèi)指定地址的指令。指令說明如圖所示:第二節(jié)自由格式通訊B接收數(shù)據(jù)[RCV]第二節(jié)自由格式通訊25M0的一次上升沿接收一次數(shù)據(jù),接收字符的個數(shù)由D200的值決定,時序圖如圖所示,在數(shù)據(jù)接收過程中‘正在接收’標(biāo)志位M8134(通訊口2)置ON。第二節(jié)自由格式通訊M0的一次上升沿接收一次數(shù)據(jù),接收字符的個數(shù)由D2026

在舉例之前,我們需要先了解一下Modbus-RTU協(xié)議,以及C功能的使用。第二節(jié)自由格式通訊在舉例之前,我們需要先了解一下Modbus-RTU協(xié)27Modbus通訊協(xié)議Modbus是由Modicon(現(xiàn)為施耐德電氣公司的一個品牌)在1979年發(fā)明的,是全球第一個真正用于工業(yè)現(xiàn)場的總線協(xié)議。Modbus協(xié)議是應(yīng)用于電子控制器上的一種通用語言。通過此協(xié)議,控制器相互之間、控制器經(jīng)由網(wǎng)絡(luò)(例如以太網(wǎng))和其它設(shè)備之間可以通信。它已經(jīng)成為一通用工業(yè)標(biāo)準(zhǔn)。

有了它,不同廠商生產(chǎn)的控制設(shè)備可以連成工業(yè)網(wǎng)絡(luò),進(jìn)行集中監(jiān)控。此協(xié)議定義了一個控制器能認(rèn)識使用的消息結(jié)構(gòu),而不管它們是經(jīng)過何種網(wǎng)絡(luò)進(jìn)行通信的。它描述了一控制器請求訪問其它設(shè)備的過程,如何回應(yīng)來自其它設(shè)備的請求,以及怎樣偵測錯誤并記錄。它制定了消息域格局和內(nèi)容的公共格式。第二節(jié)自由格式通訊Modbus通訊協(xié)議Modbus協(xié)議是應(yīng)用28Modbus具有以下幾個特點:(1)標(biāo)準(zhǔn)、開放,用戶可以免費、放心地使用Modbus協(xié)議,不需要交納許可證費,也不會侵犯知識產(chǎn)權(quán)。目前,支持Modbus的廠家超過400家,支持Modbus的產(chǎn)品超過600種。(2)Modbus可以支持多種電氣接口,如RS-232、RS-485等,還可以在各種介質(zhì)上傳送,如雙絞線、光纖、無線等。(3)Modbus的幀格式簡單、緊湊,通俗易懂。用戶使用容易,廠商開發(fā)簡單。第二節(jié)自由格式通訊Modbus具有以下幾個特點:第二節(jié)自由格式通訊29控制器通信使用主—從技術(shù),即僅一設(shè)備(主設(shè)備)能初始化傳輸(查詢)。其它設(shè)備(從設(shè)備)根據(jù)主設(shè)備查詢提供的數(shù)據(jù)作出相應(yīng)反應(yīng)。典型的主設(shè)備:主機(jī)和可編程儀表。典型的從設(shè)備:可編程控制器。主設(shè)備可單獨和從設(shè)備通信,也能以廣播方式和所有從設(shè)備通信。如果單獨通信,從設(shè)備返回一消息作為回應(yīng),如果是以廣播方式查詢的,則不作任何回應(yīng)。Modbus協(xié)議建立了主設(shè)備查詢的格式:設(shè)備(或廣播)地址、功能代碼、所有要發(fā)送的數(shù)據(jù)、一錯誤檢測域。從設(shè)備回應(yīng)消息也由Modbus協(xié)議構(gòu)成,包括確認(rèn)要行動的域、任何要返回的數(shù)據(jù)、和一錯誤檢測域。如果在消息接收過程中發(fā)生一錯誤,或從設(shè)備不能執(zhí)行其命令,從設(shè)備將建立一錯誤消息并把它作為回應(yīng)發(fā)送出去。第二節(jié)自由格式通訊控制器通信使用主—從技術(shù),即僅一設(shè)備(主設(shè)備30控制器能設(shè)置為兩種傳輸模式(ASCII或RTU)中的任何一種在標(biāo)準(zhǔn)的Modbus網(wǎng)絡(luò)通信。

用戶選擇想要的模式,包括串口通信參數(shù)(波特率、校驗方式等),在配置每個控制器的時候,在一個Modbus網(wǎng)絡(luò)上的所有設(shè)備都必須選擇相同的傳輸模式和串口參數(shù)。所選的ASCII或RTU方式僅適用于標(biāo)準(zhǔn)的Modbus網(wǎng)絡(luò),它定義了在這些網(wǎng)絡(luò)上連續(xù)傳輸?shù)南⒍蔚拿恳晃?,以及決定怎樣將信息打包成消息域和如何解碼。第二節(jié)自由格式通訊控制器能設(shè)置為兩種傳輸模式(ASCII或RT31C語言功能C語言功能32

C語言功能

梯形圖一直以來都是PLC最主流的編程方式,它有著能最讓人理解的方式去完成程序編寫的優(yōu)勢,但是隨著工藝要求的復(fù)雜化與多元化,傳統(tǒng)的梯形圖編程語言在很多功能上的實現(xiàn)需要花費很多的精力才能完成程序的編寫,而大量的梯形圖語言會比較大的影響到整個系統(tǒng)的掃描周期,導(dǎo)致一些無法預(yù)料的問題出現(xiàn),同時在運動控制上面如果依靠梯形圖語言來進(jìn)行誤差補(bǔ)償,可能達(dá)不到比較好的效果。而C語言高強(qiáng)度適應(yīng)性的特點則可以很大程序的去解決梯形圖無法解決的問題,因而信捷特別在開發(fā)了編程軟件在支持梯形圖的同時,最大程度的能夠兼容C語言的編寫。第三節(jié)C語言功能C語言功能第三節(jié)C語言功能33C語言功能的使用方法四步操作法完成C語言的使用(演示):(1)添加C語言功能塊(3)調(diào)用C語言功能塊(2)編輯C語言功能塊

在進(jìn)行C函數(shù)調(diào)用的時候,D0,M0分別表示函數(shù)里面W[0],B[0]的初始地址,W[0]表示為D0,B[0]表示為M0,如果調(diào)用程序時寫為PAIXUD10M10,則C程序中W[0]表示的值為的D[10],B[10]標(biāo)志的值為M[20]。第三節(jié)C語言功能C語言功能的使用方法(1)添加C語言功能塊(3)調(diào)用C語言34功能:支持幾乎所有的C語言函數(shù);在涉及到復(fù)雜的數(shù)學(xué)運算時C語言的優(yōu)勢更加明顯;增強(qiáng)了程序的保密性(無論何種方式下載,C語言部分都無法上傳);可進(jìn)行多處調(diào)用和不同文件的調(diào)用,大大提高了編程人員的效率。第三節(jié)C語言功能功能:第三節(jié)C語言功能35自由格式通訊舉例1

一臺信捷XC系列PLC“A”控制1臺信捷變頻器,要求可通過自由格式通訊,更改變頻器的運行頻率以及讀取設(shè)定頻率。第三節(jié)C語言功能自由格式通訊舉例1一臺信捷XC系列PLC“36AABB第三節(jié)C語言功能AABB第三節(jié)C語言功能37第三節(jié)C語言功能第三節(jié)C語言功能38自由格式通訊舉例2信捷PLC與溫控儀表通訊,而儀表使用自己的通訊協(xié)議,協(xié)議規(guī)定讀取溫度需發(fā)送“:”“R”“T”“CR”四個字符,各字符含義如下:第三節(jié)C語言功能自由格式通訊舉例2信捷PLC與溫控儀表通訊,而儀表使用自己的39PLC需要將上述字符的ASCII碼發(fā)送到儀表,才能讀取到儀表測得的當(dāng)前溫度值。通過查詢ASCII碼表可得到各字符的ASCII碼值(十六進(jìn)制):

顯然按照上面描述的情況,使用MODBUS指令不能通訊,這個時候就需要使用自由格式通訊。第三節(jié)C語言功能PLC需要將上述字符的ASCII碼發(fā)送到儀表,才能讀40操作步驟:①先將硬件線路連接好。②按照溫控儀表的通訊參數(shù)將PLC的串口參數(shù)設(shè)定好(注意自由通訊PLC站號設(shè)置成255),參數(shù)設(shè)置好后重新上電才能生效。③按照上一頁中描述的協(xié)議編寫程序。讀取溫度需發(fā)送:“:”

“R”

“T”

“CR”

“:”----數(shù)據(jù)開始“R”----讀功能“T”----溫度“CR”----回車,數(shù)據(jù)結(jié)束第三節(jié)C語言功能操作步驟:第三節(jié)C語言功能41【控制程序】第三節(jié)C語言功能【控制程序】第三節(jié)C語言功能42BLOCK功能塊BLOCK功能塊43

順序功能塊,即BLOCK(以下簡稱BLOCK)是為了實現(xiàn)某些功能而存在的一段程序塊??梢詫LOCK理解為一個特殊的流程,在這個特殊的流程里,所有的程序按照一個原則來執(zhí)行,順序執(zhí)行原則,即上一條程序執(zhí)行完成之后,才會去執(zhí)行下一條程序。

這也是BLOCK與一般流程最大的不同之處。同時根據(jù)BLOCK的這個特點,可以解決對同一脈沖口發(fā)脈沖導(dǎo)致的雙線圈問題,也可以解決不能在同一流程對同一串口發(fā)送多條通訊指令的問題。第四節(jié)Block功能塊順序功能塊,即BLOCK(以下簡稱BLOCK44用戶執(zhí)行語段脈沖通訊變頻器配置Wait指令命令語列表SBLOCK順序功能塊nSBLOCKEBLOCK運行開始BLOCK內(nèi)的執(zhí)行語段,所有指令按順序執(zhí)行BLOCK運行結(jié)束BLOCK開始于SBLOCK、結(jié)束于SBLOCKE,中間為編程人員書寫指令區(qū)。如果同一個BLOCK中包含多個發(fā)脈沖指令(其他指令也適用),那么脈沖指令將按照觸發(fā)條件成立的先后順序依次執(zhí)行;同時,先執(zhí)行的脈沖指令結(jié)束后才開始下一條脈沖指令的執(zhí)行。一個完整的BLOCK結(jié)構(gòu),如下圖所示:第四節(jié)Block功能塊用戶執(zhí)行語段SBLOCK順序功能塊nSBLOCKEBLOC45

在一個程序文件中,至多不可以調(diào)用超過100個BLOCK程序塊。BLOCK的調(diào)用方法為面板配置法,下面帶大家演示BLOCK配置的具體操作。第四節(jié)Block功能塊在一個程序文件中,至多不可以調(diào)用超過100個46思考練習(xí)題思考練習(xí)題47

前面的幾個例子請用BLOCK功能塊的方法重新完成思考與練習(xí)前面的幾個例子請用BLOCK功能塊的方法重新48ThankYou!ThankYou!49信捷PLC培訓(xùn)

第9.3課時信捷PLC培訓(xùn)

第9.3課時50第9.3章通訊C語言Modbus通訊Block自由格式第9.3章通訊C語言Modbus通訊Block自由格式51觸摸屏如何實現(xiàn)可以實時顯示PLC的狀態(tài)?PLC與變頻器通訊程序改怎么編寫?觸摸屏如何實現(xiàn)可以實時顯示PLC的狀態(tài)?PLC與變頻器通訊程52通訊概述通訊概述53通訊口1通訊口2的232通訊口2的485XC2、XC3、XC5、XCM以及XCC系列可編程控制器都支持Modbus協(xié)議、自由協(xié)議通訊功能。1、通訊口通訊口2的485XC2、XC3、XC5、XCM以及XCC系列542、通訊參數(shù)設(shè)置通過上述通訊口,我們可以使兩個串行通訊設(shè)備任意通信,但是在通訊之前,必須設(shè)置相互可以辨識的參數(shù),具體見表通訊口默認(rèn)參數(shù):站號為1、波特率19200bps、8個數(shù)據(jù)位、1個停止位、偶校驗。2、通訊參數(shù)設(shè)置55XCPPro編程軟件中集成了修改通訊口的模塊,如下圖所示:通過軟件來修改通訊口參數(shù),方便直觀,且不易出錯,修改完成后,重新上電才能生效。XCPPro編程軟件中集成了修改通訊口的模塊,如下圖所示:563、通訊相關(guān)指令

信捷通訊指令包括mudbus指令和自由格式指令兩大類。3、通訊相關(guān)指令57modbus通訊modbus通訊58

(1)modbus通訊指令Modbus指令,分為線圈讀寫、寄存器讀寫,采用標(biāo)準(zhǔn)的mudbus-RTU協(xié)議。下面具體介紹這些指令的用法。

A線圈讀[COLR]線圈讀是將指定局號中指定線圈狀態(tài)讀到本機(jī)內(nèi)指定線圈中的指令。指令說明如圖所示:第一節(jié)Modbus通訊(1)modbus通訊指令第一節(jié)Modbus通訊59其中個操作數(shù)的含義如下表:當(dāng)X0由OFF到ON變化時,將站號為1的遠(yuǎn)端設(shè)備的modbus地址為K500和K501的兩個線圈狀態(tài)映射到本機(jī)的M1和M2兩個線圈。本通訊指令通過PLC的port2發(fā)送。第一節(jié)Modbus通訊其中個操作數(shù)的含義如下表:第一節(jié)Modbus通訊60B單個線圈寫[COLW]單個線圈寫是將本機(jī)內(nèi)指定線圈狀態(tài)寫到指定局號中指定線圈的指令。指令說明如圖所示:第一節(jié)Modbus通訊B單個線圈寫[COLW]第一節(jié)Modbus通訊61C多個線圈寫[MCLW]多個線圈寫是將本機(jī)內(nèi)指定的多個線圈的狀態(tài)寫到指定局號中指定線圈的指令。指令說明如圖所示:第一節(jié)Modbus通訊C多個線圈寫[MCLW]第一節(jié)Modbus通訊62D寄存器讀[REGR]寄存器讀是將指定局號指定寄存器讀到本機(jī)內(nèi)指定寄存器的指令。指令說明如圖所示:第一節(jié)Modbus通訊D寄存器讀[REGR]第一節(jié)Modbus通訊63E單個寄存器寫[REGW]單個寄存器寫[是將本機(jī)內(nèi)指定寄存器寫到指定局號指定寄存器的指令。指令說明如圖所示:第一節(jié)Modbus通訊E單個寄存器寫[REGW]第一節(jié)Modbus通訊64F多個寄存器寫[MRGW]多個寄存器寫是將本機(jī)內(nèi)指定的多個寄存器寫到指定局號指定寄存器的指令。指令說明如圖所示:第一節(jié)Modbus通訊F多個寄存器寫[MRGW]第一節(jié)Modbus通訊65Mudbus通訊舉例1

一臺信捷XC系列PLC“A”控制1臺XC系列PLC“B”,要求“A”PLC的X0導(dǎo)通時,“B”PLC的Y0導(dǎo)通??删幊炭刂破鞯能浽odbus地址見手冊!第一節(jié)Modbus通訊Mudbus通訊舉例1一臺信捷XC系列PLC66AABB第一節(jié)Modbus通訊AABB第一節(jié)Modbus通訊67Mudbus通訊舉例2

一臺信捷XC系列PLC“A”控制1臺信捷變頻器,要求可通過通訊,更改變頻器的運行頻率以及運行命令。變頻器的軟元件modbus地址及參數(shù)修改詳見變頻器用戶手冊!第一節(jié)Modbus通訊Mudbus通訊舉例2一臺信捷XC系列PLC68AABB第一節(jié)Modbus通訊AABB第一節(jié)Modbus通訊69自由格式通訊自由格式通訊70

(2)自由格式指令

所謂自由格式,即自定義協(xié)議通訊,現(xiàn)在市場上很多智能設(shè)備都支持RS232或者RS485通訊,而各家產(chǎn)品所使用的協(xié)議不盡相同,例如:信捷PLC使用標(biāo)準(zhǔn)的Modbus-RTU協(xié)議,一些溫度控制器廠家使用的自定義協(xié)議;如果用信捷PLC和溫度控制器通訊,讀取溫度控制器采集的當(dāng)前溫度,則需使用自由格式通訊,完全按照儀表廠家的協(xié)議來發(fā)送數(shù)據(jù),這樣即可通訊上。第二節(jié)自由格式通訊

第二節(jié)自由格式通訊71自由格式通訊指令包括發(fā)送數(shù)據(jù)和接收數(shù)據(jù)兩條,下面介紹這兩條指令的用法。A發(fā)送數(shù)據(jù)[SEND]發(fā)送數(shù)據(jù)將本機(jī)內(nèi)指定的數(shù)據(jù)寫到指定局號指定地址的指令。指令說明如圖所示:其中個操作數(shù)的含義如下表:第二節(jié)自由格式通訊自由格式通訊指令包括發(fā)送數(shù)據(jù)和接收數(shù)據(jù)兩條,下面介紹72M0的一次上升沿發(fā)送一次數(shù)據(jù),發(fā)送字符的個數(shù)由D100的值決定,時序圖如圖所示:在數(shù)據(jù)發(fā)送過程中‘正在發(fā)送’標(biāo)志位M8132(通訊口2)置ON。第二節(jié)自由格式通訊M0的一次上升沿發(fā)送一次數(shù)據(jù),發(fā)送字符的個數(shù)由D100的值決73B接收數(shù)據(jù)[RCV]接收數(shù)據(jù)是將指定局號的數(shù)據(jù)寫到本機(jī)內(nèi)指定地址的指令。指令說明如圖所示:第二節(jié)自由格式通訊B接收數(shù)據(jù)[RCV]第二節(jié)自由格式通訊74M0的一次上升沿接收一次數(shù)據(jù),接收字符的個數(shù)由D200的值決定,時序圖如圖所示,在數(shù)據(jù)接收過程中‘正在接收’標(biāo)志位M8134(通訊口2)置ON。第二節(jié)自由格式通訊M0的一次上升沿接收一次數(shù)據(jù),接收字符的個數(shù)由D2075

在舉例之前,我們需要先了解一下Modbus-RTU協(xié)議,以及C功能的使用。第二節(jié)自由格式通訊在舉例之前,我們需要先了解一下Modbus-RTU協(xié)76Modbus通訊協(xié)議Modbus是由Modicon(現(xiàn)為施耐德電氣公司的一個品牌)在1979年發(fā)明的,是全球第一個真正用于工業(yè)現(xiàn)場的總線協(xié)議。Modbus協(xié)議是應(yīng)用于電子控制器上的一種通用語言。通過此協(xié)議,控制器相互之間、控制器經(jīng)由網(wǎng)絡(luò)(例如以太網(wǎng))和其它設(shè)備之間可以通信。它已經(jīng)成為一通用工業(yè)標(biāo)準(zhǔn)。

有了它,不同廠商生產(chǎn)的控制設(shè)備可以連成工業(yè)網(wǎng)絡(luò),進(jìn)行集中監(jiān)控。此協(xié)議定義了一個控制器能認(rèn)識使用的消息結(jié)構(gòu),而不管它們是經(jīng)過何種網(wǎng)絡(luò)進(jìn)行通信的。它描述了一控制器請求訪問其它設(shè)備的過程,如何回應(yīng)來自其它設(shè)備的請求,以及怎樣偵測錯誤并記錄。它制定了消息域格局和內(nèi)容的公共格式。第二節(jié)自由格式通訊Modbus通訊協(xié)議Modbus協(xié)議是應(yīng)用77Modbus具有以下幾個特點:(1)標(biāo)準(zhǔn)、開放,用戶可以免費、放心地使用Modbus協(xié)議,不需要交納許可證費,也不會侵犯知識產(chǎn)權(quán)。目前,支持Modbus的廠家超過400家,支持Modbus的產(chǎn)品超過600種。(2)Modbus可以支持多種電氣接口,如RS-232、RS-485等,還可以在各種介質(zhì)上傳送,如雙絞線、光纖、無線等。(3)Modbus的幀格式簡單、緊湊,通俗易懂。用戶使用容易,廠商開發(fā)簡單。第二節(jié)自由格式通訊Modbus具有以下幾個特點:第二節(jié)自由格式通訊78控制器通信使用主—從技術(shù),即僅一設(shè)備(主設(shè)備)能初始化傳輸(查詢)。其它設(shè)備(從設(shè)備)根據(jù)主設(shè)備查詢提供的數(shù)據(jù)作出相應(yīng)反應(yīng)。典型的主設(shè)備:主機(jī)和可編程儀表。典型的從設(shè)備:可編程控制器。主設(shè)備可單獨和從設(shè)備通信,也能以廣播方式和所有從設(shè)備通信。如果單獨通信,從設(shè)備返回一消息作為回應(yīng),如果是以廣播方式查詢的,則不作任何回應(yīng)。Modbus協(xié)議建立了主設(shè)備查詢的格式:設(shè)備(或廣播)地址、功能代碼、所有要發(fā)送的數(shù)據(jù)、一錯誤檢測域。從設(shè)備回應(yīng)消息也由Modbus協(xié)議構(gòu)成,包括確認(rèn)要行動的域、任何要返回的數(shù)據(jù)、和一錯誤檢測域。如果在消息接收過程中發(fā)生一錯誤,或從設(shè)備不能執(zhí)行其命令,從設(shè)備將建立一錯誤消息并把它作為回應(yīng)發(fā)送出去。第二節(jié)自由格式通訊控制器通信使用主—從技術(shù),即僅一設(shè)備(主設(shè)備79控制器能設(shè)置為兩種傳輸模式(ASCII或RTU)中的任何一種在標(biāo)準(zhǔn)的Modbus網(wǎng)絡(luò)通信。

用戶選擇想要的模式,包括串口通信參數(shù)(波特率、校驗方式等),在配置每個控制器的時候,在一個Modbus網(wǎng)絡(luò)上的所有設(shè)備都必須選擇相同的傳輸模式和串口參數(shù)。所選的ASCII或RTU方式僅適用于標(biāo)準(zhǔn)的Modbus網(wǎng)絡(luò),它定義了在這些網(wǎng)絡(luò)上連續(xù)傳輸?shù)南⒍蔚拿恳晃唬约皼Q定怎樣將信息打包成消息域和如何解碼。第二節(jié)自由格式通訊控制器能設(shè)置為兩種傳輸模式(ASCII或RT80C語言功能C語言功能81

C語言功能

梯形圖一直以來都是PLC最主流的編程方式,它有著能最讓人理解的方式去完成程序編寫的優(yōu)勢,但是隨著工藝要求的復(fù)雜化與多元化,傳統(tǒng)的梯形圖編程語言在很多功能上的實現(xiàn)需要花費很多的精力才能完成程序的編寫,而大量的梯形圖語言會比較大的影響到整個系統(tǒng)的掃描周期,導(dǎo)致一些無法預(yù)料的問題出現(xiàn),同時在運動控制上面如果依靠梯形圖語言來進(jìn)行誤差補(bǔ)償,可能達(dá)不到比較好的效果。而C語言高強(qiáng)度適應(yīng)性的特點則可以很大程序的去解決梯形圖無法解決的問題,因而信捷特別在開發(fā)了編程軟件在支持梯形圖的同時,最大程度的能夠兼容C語言的編寫。第三節(jié)C語言功能C語言功能第三節(jié)C語言功能82C語言功能的使用方法四步操作法完成C語言的使用(演示):(1)添加C語言功能塊(3)調(diào)用C語言功能塊(2)編輯C語言功能塊

在進(jìn)行C函數(shù)調(diào)用的時候,D0,M0分別表示函數(shù)里面W[0],B[0]的初始地址,W[0]表示為D0,B[0]表示為M0,如果調(diào)用程序時寫為PAIXUD10M10,則C程序中W[0]表示的值為的D[10],B[10]標(biāo)志的值為M[20]。第三節(jié)C語言功能C語言功能的使用方法(1)添加C語言功能塊(3)調(diào)用C語言83功能:支持幾乎所有的C語言函數(shù);在涉及到復(fù)雜的數(shù)學(xué)運算時C語言的優(yōu)勢更加明顯;增強(qiáng)了程序的保密性(無論何種方式下載,C語言部分都無法上傳);可進(jìn)行多處調(diào)用和不同文件的調(diào)用,大大提高了編程人員的效率。第三節(jié)C語言功能功能:第三節(jié)C語言功能84自由格式通訊舉例1

一臺信捷XC系列PLC“A”控制1臺信捷變頻器,要求可通過自由格式通訊,更改變頻器的運行頻率以及讀取設(shè)定頻率。第三節(jié)C語言功能自由格式通訊舉例1一臺信捷XC系列PLC“85AABB第三節(jié)C語言功能AABB第三節(jié)C語言功能86第三節(jié)C語言功能第三節(jié)C語言功能87自由格式通訊舉例2信捷PLC與溫控儀表通訊,而儀表使用自己的通訊協(xié)議,協(xié)議規(guī)定讀取溫度需發(fā)送“:”“R”“T”“CR”四個字符,各字符含義如下:第三節(jié)C語言功能自由格式通訊舉例2信捷PLC與溫控儀表通訊,而儀表使用自己的88PLC需要將上述字符的ASCII碼發(fā)送到

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論