單片機(jī)與西門(mén)子PLC_S7-200的串行通信及應(yīng)用_第1頁(yè)
單片機(jī)與西門(mén)子PLC_S7-200的串行通信及應(yīng)用_第2頁(yè)
單片機(jī)與西門(mén)子PLC_S7-200的串行通信及應(yīng)用_第3頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

1、2硬件以及通訊原理分析西門(mén)子s7-200系列plc擁有rs-485串行口,所以要使mcs51單片機(jī)與s7-plc進(jìn)行通訊,可以 采用兒種通訊方式。其中z就是可以通過(guò)mcs-51的串行口與max485芯片相接,然后與s7-200 plc的rs-485 口進(jìn)行通訊,其硬件連接如圖1所示。s7-200 plc是串行通訊方式最為豐富的小型plc,支持多種通信協(xié)議,如點(diǎn)對(duì)點(diǎn)接口協(xié)議(ppi 協(xié)議)、多點(diǎn)接口協(xié)議(mpi協(xié)議)和profibus協(xié)議以及自由通信協(xié)議等。其中自由通信協(xié)議 又叫用八定義協(xié)議,利用門(mén)由端口模式,可以實(shí)現(xiàn)用八圧義的通信協(xié)議,連接多種智能設(shè)備,使 用起來(lái)非常方便,在第三方工程接入中取

2、得了巨大的成功。在口由端口模式下,plc的串行通信接口由用八來(lái)控制,通過(guò)梯形圖程序以及和單片機(jī)的匯編語(yǔ) 言進(jìn)行配合,來(lái)使用完成中斷、字符接收中斷、發(fā)送完成屮斷等,通信協(xié)議由用戶(hù)完全控制。這 時(shí)單片機(jī)處于主機(jī)狀態(tài),由單片機(jī)丄動(dòng)發(fā)送握手信號(hào),plc接到信號(hào)后被動(dòng)反饋信息即可。圖1 mcs-51單片機(jī)與s7-200的硬件接線(xiàn)圖3通信系統(tǒng)設(shè)計(jì)3. 1通信協(xié)議設(shè)計(jì)定義根據(jù)經(jīng)驗(yàn)和有關(guān)參考資料,定義協(xié)議結(jié)構(gòu)和參數(shù)。(1)通信波特率為9.6kbps,無(wú)校驗(yàn),8個(gè)數(shù)據(jù)位,1個(gè)可編程位,1位起始位,1位停止位。(2)定義通信協(xié)議的數(shù)據(jù)流結(jié)構(gòu)的格式為起始碼、命令碼、元件首址、字節(jié)數(shù)、數(shù)據(jù)塊、bcc 校驗(yàn)碼和結(jié)朿碼。

3、起始碼:表示單片機(jī)與plc開(kāi)始發(fā)送數(shù)據(jù),是數(shù)據(jù)流第一個(gè)字符,告訴plc開(kāi)始進(jìn)行通信了, 可以用00h表示命令碼:表示單片機(jī)對(duì)plc的各種操作:40h:讀取目標(biāo)元件i、q、v、m、sm、l、t、c等的數(shù)據(jù)或狀態(tài);41h:修改目標(biāo)元件i、q、v、m、sm、l、t、c等的數(shù)據(jù)或狀態(tài);42h:強(qiáng)制目標(biāo)單元為on;43h:強(qiáng)制目標(biāo)單元為off;元件首址:表示plc內(nèi)部的元件類(lèi)型以及寄存器的地址(但不能表示一個(gè)位地址)。前兩個(gè) 字節(jié)表示寄存器類(lèi)型,后兩個(gè)字節(jié)表示寄存器號(hào)。00 00 (h) : i寄存器區(qū)0100 (h) : q寄存 器區(qū)。02 00 (h) : m寄存器區(qū)08 00 (h) : v寄存器

4、區(qū);字節(jié)數(shù):從元件首地址起,讀取或?qū)懭雙lc元件的數(shù)據(jù)個(gè)數(shù)數(shù)擁塊:準(zhǔn)備讀取或者寫(xiě)入plc 的數(shù)據(jù)或狀態(tài); bcc校驗(yàn)碼:在傳輸過(guò)程屮,指令有口j能受到任何的干擾而使原來(lái)的數(shù)據(jù)信號(hào)發(fā)生扭1111,此 時(shí)的指令當(dāng)然是錯(cuò)謀的,為了偵測(cè)指令在傳輸過(guò)程中發(fā)牛的錯(cuò)誤,接收方必須對(duì)指令作進(jìn)一步的 確認(rèn)工作,以防止錯(cuò)課的指令被執(zhí)行,最簡(jiǎn)單的方法就是使用校驗(yàn)碼。bcc校驗(yàn)碼的方法就是將 要傳送的字符串的ascii碼以字節(jié)為單位作異或和,并將此異或和作為指令的一部分傳送出去;同樣地,接收方在接到指令后,以相同的方式對(duì)接收到的字符串作異或和,并與傳送方所送過(guò)來(lái) 的值作對(duì)比,若其值相等,則代表接收到的指令是正確的,反

5、之則是錯(cuò)誤的結(jié)束碼:結(jié)束字符標(biāo)志著指令的結(jié)束,在本例中被定義為ffh,不同的plc從站可以肚義不 同的結(jié)束字符以接收針對(duì)該plc的指令。3.2通信程序的實(shí)現(xiàn)(1)單片機(jī)端程序的實(shí)現(xiàn)。單片機(jī)在丄程序中初始化,采用串行口工作方式32,波特率為9. 6kbps,采用單片機(jī)作為主機(jī),向plc進(jìn)行呼叫,定期讀取數(shù)據(jù)或者寫(xiě)入數(shù)拯,其程序流程圖 參見(jiàn)圖2。圖2單片機(jī)端通訊程序流程圖(2) plc端程序流程圖的實(shí)現(xiàn)。plc端作為從機(jī),采用梯形圖或者stl編程,主要是先設(shè) 置通訊協(xié)議,然后按照協(xié)議把采集到的數(shù)據(jù)進(jìn)行處理,再發(fā)送給主機(jī)單片機(jī),其具體的程序流程 圖如圖3所示。圖3 plc端通訊程丿芋流程圖4結(jié)朿語(yǔ)本文利用單片機(jī)與plc的串行

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論