PC與三菱FX系列PLC通信的實現(xiàn)_第1頁
PC與三菱FX系列PLC通信的實現(xiàn)_第2頁
PC與三菱FX系列PLC通信的實現(xiàn)_第3頁
PC與三菱FX系列PLC通信的實現(xiàn)_第4頁
PC與三菱FX系列PLC通信的實現(xiàn)_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

PC與三菱FX系列PLC通信的實現(xiàn)1.硬件連接

一臺PC機可與一臺或最多16臺三菱FX系列plc通信,PC與PLC之間不能直接連接。如圖1a、b為點對點結構的連接,圖a中是通過FX-232AW單元進行RS-232C/RS-422轉換與PLC編程口連接,圖b中通過在PLC內部安裝的通信功能擴展板FX-232-BD與PC連接;如圖1c所示為多點結構的連接,F(xiàn)X-485-BD為安裝在PLC內部的通信功能擴展板,F(xiàn)X-485PC-IF為RS-232C和RS-485的轉換接口。除此之外當然還可以通過其它通信模塊進行連接,不再一一贅述。下面以PC與PLC之間點對點通信為例。

圖1PC與FX的硬件連接圖

2.三菱FX系列PLC通信協(xié)議

PC中必需依據(jù)所連接PLC的通信規(guī)程來編寫通信協(xié)議,所以我們先要熟識FX系列PLC的通信協(xié)議。

1)數(shù)據(jù)格式

三菱FX系列PLC采納異步格式,由1位起始位、7位數(shù)據(jù)位、1位偶校驗位及1位停止位組成,比特率為9600bps,字符為ASCⅡ碼。數(shù)據(jù)格式如圖2所示。

圖2數(shù)據(jù)格式

2)通信命令

三菱FX系列PLC有4條通信命令,分別是讀命令、寫命令、強制通命令、強制斷命令,如表1所示。

表1FX系列PLC的通信命令表

3)通信掌握字符

FX系列PLC采納面對字符的傳輸規(guī)程,用到5個通信掌握字符,如表2所示。

表2FX系列PLC通信掌握字符表

掌握字符

ASCⅡ碼

功能說明

ENQ

05H

PC發(fā)出懇求

ACK

06H

PLC對ENQ的確認回答

NAK

15H

PLC對ENQ的否認回答

STX

02H

信息幀開頭標志

ETX

03H

信息幀結束標志

注:當PLC對計算機發(fā)來的ENQ不理解時,用NAK回答。

4)報文格式

計算機向PLC發(fā)送的報文格式如下:

STX

CMD

數(shù)據(jù)段

ETX

SUMH

SUML

其中,STX為開頭標志:02H;ETX為結束標志:03H;CMD為命令的ASCⅡ碼;SUMH、SUML為按字節(jié)求累加和,溢出不計。由于每字節(jié)十六進制數(shù)變?yōu)閮勺止?jié)的ASCⅡ碼,故校驗和為SUMH與SUML。

數(shù)據(jù)段格式與含義如下:

注:寫命令的數(shù)據(jù)段有數(shù)據(jù),讀命令數(shù)據(jù)段則很多據(jù)。

PLC向PC發(fā)的應答報文格式如下:

注:對讀命令的應答報文數(shù)據(jù)段為要讀取的數(shù)據(jù),一個數(shù)據(jù)占兩字節(jié),分上位下位:

數(shù)據(jù)段:

對寫命令的應答報文很多據(jù)段,而用ACK及NAK作應答內容。

5)傳輸規(guī)程

PC與FX系列PLC間采納應答方式通信,傳輸出錯,則組織重發(fā)。其傳輸過程

如圖3所示。

圖3傳輸過程

PLC依據(jù)PC的命令,在每個循環(huán)掃描結束處的END語句后組織自動應答,無需用戶在PLC一方編寫程序。

3.PC通信程序的編寫

編寫PC的通信程序可采納匯編語言編寫,或采納各種高級語言編寫,或采納工控組態(tài)軟件,或直接采納PLC廠家的通信軟件(如三菱的MELSEMEDOC等)

下面利用VB6.0以一個簡潔的例子來說明編寫通信程序的要點。假設PC要求從PLC中讀入從D123開頭的4個字節(jié)的數(shù)據(jù)(D123、D124),其傳輸應答過程及報文如圖4所示。

圖4傳輸應答過程及命令報文

命令報文中10F6H為D123的地址,04H表示要讀入4個字節(jié)的數(shù)據(jù)。校驗和SUM=30H+31H+30H+46H+36H+30H+34H+03H=174H,溢出部分不計,故SUMH=7,SUAIL=4,相應的ASCⅡ碼為“37H”,“34H”。應答報文中4個字節(jié)的十六進制數(shù),其相應的ASCⅡ碼為8個字節(jié),故應答報文長度為12個字節(jié)。

依據(jù)PC與FX系列PLC的傳輸應答過程,利用VB的MSComm控件可以編寫如下通信程序實現(xiàn)PC與FX系列PLC之間的串行通信,以完成數(shù)據(jù)的讀取。MSComm控件可以采納輪詢或大事驅動的方法從端口獵取數(shù)據(jù)。在這個例子中使用了輪詢方法。

1)通信口初始化

PrivateSubInitialize()

MSComm1.CommPort=1

MSComm1.Settings=“9600,E,7,1”

MSComm1.InBufferSize=1024

MSComml.OutBuffersize=1024

MSComm1.InputLen=0

MSComml.InputMode=comInputText

MSComm1.Handshaking=comNone

MSComm1.PortOpen=True

EndSub

2)懇求通信與確認

PrivateFunctionMakeHandshaking()AsBoolean

DimInPackageAsString

MSComml.OutBufferCount=0

MSComml.InBufferCount=0

MSComml.OutPut=Chr(&H5)

Do

DoEvents

LoopUntilMSComml.InBufferCount=1

InPackage=MSComml.Input

IfInPackage=Chr(&H6)Then

MakeHandShaking=True

Else

MakeHandshaking=False

EndIf

EndFunction

3)發(fā)送命令報文

PrivateSubSendFrame()

DimOutstringAsString

MSComml.OutBufferCount=0

MSComml.InBufferCount=0

Outstrin=Chr(&H2)+″on″+″10F604″+Chr(&H3)+″74″

MSComml.Output=Outstring

EndSub

4)讀取應答報文

PrivateSubR

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論