歐姆龍與三菱PLC之間的通信的實(shí)現(xiàn)_第1頁(yè)
歐姆龍與三菱PLC之間的通信的實(shí)現(xiàn)_第2頁(yè)
歐姆龍與三菱PLC之間的通信的實(shí)現(xiàn)_第3頁(yè)
歐姆龍與三菱PLC之間的通信的實(shí)現(xiàn)_第4頁(yè)
歐姆龍與三菱PLC之間的通信的實(shí)現(xiàn)_第5頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

1、歐姆龍與三菱PLC之間的通信的實(shí)現(xiàn) 在現(xiàn)代工業(yè)中,plc通信聯(lián)網(wǎng)功能的應(yīng)用日益廣泛。在實(shí)際生產(chǎn)現(xiàn)場(chǎng),各個(gè)工位上可能使用不同廠家生產(chǎn)的plc,它們之間通信聯(lián)網(wǎng)一直是工程上的一個(gè)難題。歐姆龍plc所特有的通信協(xié)議宏功能可以很好地解決這個(gè)問(wèn)題1 。歐姆龍中小型plc,如cqm1h、c200h、cj1、cs1等機(jī)型,均支持通信協(xié)議宏功能,可以實(shí)現(xiàn)與其他廠家的plc通信。協(xié)議宏通信方式編程簡(jiǎn)單、易于實(shí)現(xiàn),是不同廠家plc通信的一種簡(jiǎn)便易行的方法。本文選用歐姆龍的c200he-cpu42型plc,使用通信協(xié)議宏,與三菱的fx2n-64mr型 plc進(jìn)行通信。歐姆龍plc為上位機(jī),三菱 plc則為下位機(jī)。網(wǎng)

2、絡(luò)結(jié)構(gòu)如圖1所示,主機(jī)c200he-cpu42作為上位機(jī),使用c200hw-com06-ev1型通信板,通信板上帶有rs-232c與rs-422a/485串行通信口各一個(gè),都支持通信協(xié)議宏功能2。三菱fx2n-64mr作為下位機(jī),機(jī)體上加裝fx2n-485-bd串行通信功能擴(kuò)展板,支持三菱計(jì)算機(jī)鏈接(computer link)通信協(xié)議3。1臺(tái)上位plc最多可連接16臺(tái)下位plc,上位plc與下位plc通過(guò)rs-485串行端口連接。通信過(guò)程中,上位plc首先發(fā)出指令并啟動(dòng)通信,下位plc收到指令并執(zhí)行,然后將執(zhí)行結(jié)果返回上位plc。下位plc之間不能進(jìn)行直接通信。圖1 網(wǎng)絡(luò)結(jié)構(gòu)歐姆龍的通信協(xié)議

3、宏由通信序列(sequence)組成,由pmcr指令調(diào)用,與帶有rs-232c或rs-422a/485端口的各種外圍設(shè)備交換數(shù)據(jù)。通信協(xié)議宏支持軟件(cx-protocol)的對(duì)話式菜單使通信序列易于登記。軟件支持x-on和x-off、rts和cts等控制方法,允許傳送任何帶有校驗(yàn)碼(如sum,lrc或crc)和幀長(zhǎng)度的數(shù)據(jù)信息。一個(gè)接收陣列(matrix),最多可以設(shè)置15種類型的期望的接收信息,而每個(gè)期望接收信息都可以包含確定下一步要執(zhí)行的過(guò)程和出現(xiàn)信息接收錯(cuò)誤時(shí)要執(zhí)行的故障處理命令4。三菱計(jì)算機(jī)鏈接通信協(xié)議用于計(jì)算機(jī)與plc之間的通信,計(jì)算機(jī)發(fā)出讀寫plc數(shù)據(jù)的命令幀,plc收到后自動(dòng)生

4、成和返回響應(yīng)幀,但是計(jì)算機(jī)程序仍需用戶編寫3。上位計(jì)算機(jī)通過(guò)安裝在各臺(tái)plc 上的串行通信功能擴(kuò)展板連接多臺(tái)plc構(gòu)成網(wǎng)絡(luò)。專用通信協(xié)議有兩種格式(format 1和format 4),區(qū)別在于字符串最后是否添加cr/lf碼。本文采用format 1通信格式。地址決定計(jì)算機(jī)訪問(wèn)哪一臺(tái)plc,同一網(wǎng)絡(luò)中各plc的地址不能重復(fù),設(shè)定范圍為00h0fh。plc號(hào)用來(lái)識(shí)別plc的cpu類型。指令用來(lái)指定操作的類型,如讀、寫等操作,由2個(gè)ascii碼組成。校驗(yàn)碼是從地址開始,校驗(yàn)碼之前的所有字符的十六進(jìn)制數(shù)的ascii碼求和,取和的低兩位數(shù)據(jù)的ascii碼。計(jì)算機(jī)與plc之間的數(shù)據(jù)流有3種形式:計(jì)算機(jī)從

5、plc中讀數(shù)據(jù)、計(jì)算機(jī)向plc寫數(shù)據(jù)和plc向計(jì)算機(jī)寫數(shù)據(jù)。本文用到了前兩種數(shù)據(jù)流形式。(1)計(jì)算機(jī)從plc讀數(shù)據(jù)操作命令:enq+地址+plc標(biāo)識(shí)號(hào)+指令+等待時(shí)間+字符區(qū)域a+校驗(yàn)碼響應(yīng):stx+地址+ plc標(biāo)識(shí)號(hào)+字符區(qū)域b+etx+校驗(yàn)碼 (正確時(shí))nak+地址+ plc標(biāo)識(shí)號(hào)+錯(cuò)誤代碼 (錯(cuò)誤時(shí))計(jì)算機(jī)收到響應(yīng)信號(hào)后發(fā)出確認(rèn)信號(hào):ack+地址+ plc號(hào)或nak+地址+ plc號(hào)(2)計(jì)算機(jī)向plc寫數(shù)據(jù)操作命令:enq+地址+plc標(biāo)識(shí)號(hào)+指令+等待時(shí)間+字符區(qū)域c+校驗(yàn)碼響應(yīng):ack+地址+ plc標(biāo)識(shí)號(hào) (正確時(shí))nak+地址+ plc標(biāo)識(shí)號(hào)+錯(cuò)誤代碼 (錯(cuò)誤時(shí))字符區(qū)域中,

6、a為要讀取的存儲(chǔ)區(qū)的開始位置和字節(jié)數(shù);b為返回的存儲(chǔ)區(qū)的值;c為要寫入的存儲(chǔ)區(qū)的開始位置和數(shù)值。校驗(yàn)碼用來(lái)校驗(yàn)數(shù)據(jù)是否正確。歐姆龍plc與三菱plc通信之前,先要生成通信協(xié)議宏。下面以從三菱plc的x位元件組讀數(shù)據(jù)和向三菱plc的y位元件組寫數(shù)據(jù)為例,介紹協(xié)議宏組態(tài)方法:(1)創(chuàng)建通信協(xié)議宏根據(jù)三菱計(jì)算機(jī)鏈接通信協(xié)議的格式要求,在cx-protocol軟件上創(chuàng)建工程,如圖2所示。創(chuàng)建“read”和“write”兩個(gè)通信序列(sequence)。接收陣列(matrix)用于接收響應(yīng)數(shù)據(jù)。圖2 通信協(xié)議宏結(jié)構(gòu)(2)創(chuàng)建通信序列在通信序列中設(shè)置鏈接字(link word)、傳輸方式控制參數(shù)(cont

7、rol)、應(yīng)答方法(response)、數(shù)據(jù)接收監(jiān)控時(shí)間(timer tr)、數(shù)據(jù)接收完成監(jiān)控時(shí)間(timer tfr)、數(shù)據(jù)發(fā)送完成監(jiān)控時(shí)間(timer tfs)等內(nèi)容。(3)創(chuàng)建通信步在通信序列中創(chuàng)建通信步(step)。每個(gè)通信步包括步號(hào)(step)、重復(fù)計(jì)數(shù)器(repeat)、命令(command)、重試(retry)、發(fā)送信息(send message)、接收信息(recv message)、是否響應(yīng)(response)、下一個(gè)執(zhí)行過(guò)程(next)以及出錯(cuò)處理(error)等內(nèi)容。(4)創(chuàng)建發(fā)送和接收信息發(fā)送信息與接收信息必須嚴(yán)格按照計(jì)算機(jī)鏈接通信協(xié)議格式編寫。由“報(bào)頭”(header

8、)、“結(jié)束符”(terminator)、“校驗(yàn)碼”(check code)、“幀長(zhǎng)度”(length)、“地址”(address)和“數(shù)據(jù)”(data)等幾部分組成。其中,讀數(shù)據(jù)的發(fā)送信息結(jié)構(gòu)如圖4所示。在發(fā)送信息中,“數(shù)據(jù)”為上位plc向下位plc發(fā)送的具體數(shù)據(jù),由“報(bào)頭”、“地址”、“plc標(biāo)識(shí)號(hào)”、“指令”、“消息等待時(shí)間”、“字符區(qū)域”、“校驗(yàn)碼”等七部分組成。其中, “h”為報(bào)頭,取值enq,其ascii碼為“05h”?!癮”為地址,取值“00”,表示與從機(jī)00通信?!癴f”為fx系列plc的標(biāo)識(shí)號(hào)?!癰r”為“讀位元件”指令?!癮”為等待時(shí)間,對(duì)應(yīng)100ms?!皒0004”、“04

9、”表示從x004開始讀取4個(gè)位元件的值?!癱”為校驗(yàn)碼,指定為sum(0)。(5)創(chuàng)建接收陣列三菱通信格式比較復(fù)雜,而且接收到響應(yīng)數(shù)據(jù)具有一定的不確定性。因此,在協(xié)議宏程序中使用接收陣列的形式完成數(shù)據(jù)的接收工作。如圖3所示,在接收陣列中設(shè)置了3種可能接收到的數(shù)據(jù)信息(receive message),并規(guī)定接收到特殊數(shù)據(jù)信息后要進(jìn)行的下一步處理方法(next process)。通信協(xié)議宏組態(tài)結(jié)束后,將其下載到通信板中。三菱plc通信參數(shù)設(shè)置:通信格式設(shè)置為format 1,波特率9600bps、偶校驗(yàn)、7位數(shù)據(jù)位、1位停止位。地址設(shè)置范圍00h0fh。圖3 接收陣列歐姆龍plc通信參數(shù)設(shè)置:通

10、信板a端口設(shè)定為協(xié)議宏通信方式,其他通信參數(shù)要與下位三菱plc的通信參數(shù)保持一致。通信協(xié)議宏的調(diào)用與執(zhí)行程序段如圖4所示,28908為通信板端口a使用標(biāo)志。pmcr指令的第一操作數(shù)“#1000”、“#1001”為控制字,第一位的“1”表示使用通信板的端口a,后3位數(shù)表示調(diào)用并執(zhí)行的通信序列號(hào)。dm0000、dm0200為pmcr指令的第二操作數(shù),所指定的有效通道存放發(fā)送的數(shù)據(jù)。dm0100、dm0300為pmcr指令的第三操作數(shù),存放接收到的數(shù)據(jù)。當(dāng)pmcr調(diào)用000號(hào)通信序列時(shí),從三菱plc的x位元件組讀取數(shù)據(jù),當(dāng)pmcr調(diào)用001號(hào)通信序列時(shí),向下位plc的y位元件組寫入數(shù)據(jù)。圖4協(xié)議宏調(diào)用程序通信協(xié)議宏具有較強(qiáng)的靈活性,程序的編

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論