《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于MPI協(xié)議的S7-300 PLC與單片機(jī)通信的實(shí)現(xiàn)
基于MPI協(xié)議的S7-300 PLC與單片機(jī)通信的實(shí)現(xiàn)
來源:微型機(jī)與應(yīng)用2011年第17期
梁 丁,,歐陽波
(株洲科瑞變流電氣有限公司,湖南 株洲412007)
摘要: MPI協(xié)議在PLC之間可組態(tài)為主/主協(xié)議或主/從協(xié)議,。介紹了基于MPI協(xié)議的西門子S7-300 PLC與單片機(jī)實(shí)現(xiàn)數(shù)據(jù)通信的應(yīng)用實(shí)例及其主要設(shè)置。
Abstract:
Key words :

摘  要: MPI協(xié)議PLC之間可組態(tài)為主/主協(xié)議或主/從協(xié)議,。介紹了基于MPI協(xié)議的西門子S7-300 PLC與單片機(jī)實(shí)現(xiàn)數(shù)據(jù)通信的應(yīng)用實(shí)例及其主要設(shè)置,。
關(guān)鍵詞: MPI協(xié)議;S7-300,;MPI網(wǎng)絡(luò),;單片機(jī)

 西門子S7-300 PLC因其功能強(qiáng)、速度快,、擴(kuò)展靈活,,在工業(yè)控制領(lǐng)域中占有重要地位。MPI網(wǎng)絡(luò)是西門子工業(yè)控制系統(tǒng)中經(jīng)常用到的一種通信方式,,其使用RS485物理接口進(jìn)行數(shù)據(jù)傳輸,。目前,S7-300 PLC與PC的通信是通過專用接口卡5611卡和MPI電纜實(shí)現(xiàn)的,。通信軟件為SIMATIC Manager,、STEP7、PRODAVE_S7_mini以及功能十分強(qiáng)大的WinCC,。但是,,由于西門子MPI協(xié)議是不公開的,所以一些單片機(jī)控制器不能接入到MPI網(wǎng)絡(luò)與S7-300 PLC通信,。本文提出了一種獲取MPI協(xié)議的方法并設(shè)計了單片機(jī)MPI程序和S7-300 PLC通信,。
1 設(shè)計方案
 任何指令在傳輸線路上均以數(shù)字形式存在,即一串高低電平,。因此,,使用串口軟件對線路上的數(shù)據(jù)偵聽并進(jìn)行分析至關(guān)重要。
 首先,,用一個S7-300 PLC和一個S7-200 PLC進(jìn)行MPI通信,,在S7-300 PLC和S7-200 PLC的通信線路中間并聯(lián)兩根通信線出來接到PC/PPI電纜上,然后下載一個比較好的串口軟件,接下來打開這個軟件,,新建,、選擇端口COM1,再將PC/PPI電纜接在COM1上,。連接方法如圖1所示,。

 按S7-300系統(tǒng)手冊設(shè)置好串口參數(shù):19200,8,,E偶校驗(yàn),,1位停止位。然后設(shè)置好SIMATIC Manager軟件,,使之能與S7-300 CPU正常通信,。從SIMATIC Manager軟件中發(fā)出一個明確指令,監(jiān)視軟件就能顯示這條報文了(用16進(jìn)制顯示),。
1.1 S7-300程序設(shè)計
 兩臺S7-200 PLC無需任何程序,,被動應(yīng)答。S7-300 PLC則需用SIMATIC Manager軟件編寫MPI讀寫程序,。本文設(shè)置S7-300 PLC為2站(0站和1站被S7-300 PLC都預(yù)留另作他用),,一臺S7-200 PLC為3站,另一臺S7-200 PLC為4站,。
 S7-300 MPI讀寫程序如圖2所示,。

 硬件配置和軟件程序下載到S7-300 PLC后,監(jiān)視一下數(shù)據(jù),,如果正確則關(guān)掉SIMATIC Manager軟件,,因?yàn)殡娔X是默認(rèn)的MPI主站(0站),以防干擾后面的監(jiān)測數(shù)據(jù),。
1.2 數(shù)據(jù)監(jiān)測
 打開串口軟件,,會源源不斷地接收到數(shù)據(jù),收到10萬左右的數(shù)據(jù)時關(guān)閉串口軟件,,保存數(shù)據(jù),,然后再分析。
 通過反復(fù)試驗(yàn)可以發(fā)現(xiàn):
 (1)與西門子S7-200不同,,S7-300不管處于何種狀態(tài)(run或stop),,一經(jīng)上電,PLC就會不斷地發(fā)出數(shù)據(jù)查找設(shè)備,,在讀寫數(shù)據(jù)過程中也不間斷,。
 (2)連接、斷開,、讀出/寫入時,,監(jiān)測到一系列有規(guī)律的數(shù)據(jù),讀出/寫入的數(shù)據(jù)包括在其中。
分析其報文,,可以找出如下規(guī)律:
 令牌報文的格式:SD4 DA SA
 總線訪問協(xié)議報文的格式: SD1 DA SA FC FCS ED
 數(shù)據(jù)報文格式:SD2 LE LER SD2 DA SA FC DSAP SSAP DU FCS ED
 SD1=開始分界符1 Start Delimiter 1 SD2=開始分界符2 Start Delimiter 2
 LE=長度 Length LER= 重復(fù)長度 Repeated Length
 DA=目的地址 Destination Address SA=源地址 Source Address
 FC=功能碼 Function Code DU=數(shù)據(jù)單元 Data Unit
 FCS=幀檢查順序 Frame Check Sequence ED=結(jié)束分界符 End Delimiter
 DSAP=目的服務(wù)存取點(diǎn) Destination Service Access Point
 SSAP=源服務(wù)存取點(diǎn) Source Service Access Point
2 單片機(jī)MPI通信硬件和軟件設(shè)計
2.1 單片機(jī)MPI通信硬件設(shè)計

 筆者用AT89C52單片機(jī),、MAX485和雙端口RAMIDT7132構(gòu)成了單片機(jī)的MPI通信硬件。硬件結(jié)構(gòu)圖如圖3所示,。

2.2 單片機(jī)MPI通信軟件設(shè)計
 單片機(jī)MPI通信軟件設(shè)計主要包括串口部分、握手信號,、讀寫部分等,,其程序流程圖如圖4所示。

 編寫完MPI程序后,,可以將3號從站的S7-200從MPI網(wǎng)絡(luò)中去掉,,將單片機(jī)接入MPI網(wǎng)絡(luò),單片機(jī)通過撥碼開關(guān)設(shè)置為從站3,,MPI網(wǎng)絡(luò)支持從站隨時接入網(wǎng)絡(luò),,但網(wǎng)絡(luò)中的主站號和從站號唯一。用SIMATIC Manager軟件檢測單片機(jī)和S7-300進(jìn)行數(shù)據(jù)監(jiān)測如圖5所示,。

 

 

 西門子S7-300 PLC因其功能強(qiáng),、速度快、擴(kuò)展靈活,,在廣大工業(yè)控制領(lǐng)域中占有重要地位,。采用MPI協(xié)議的S7-300 PLC與單片機(jī)從站的通信,其穩(wěn)定性好,、響應(yīng)速度快,、操作簡單、維護(hù)方便,,用戶可以隨時換下需維修的從站,,修好后可立即接入到MPI網(wǎng)絡(luò)。該通信的實(shí)現(xiàn),,解決了單片機(jī)控制系統(tǒng)與S7-300 PLC通信的問題,,有很高的應(yīng)用價值。
參考文獻(xiàn)
[1] SIEMENS.SIMATIC STEP V5.1編程手冊[Z].
[2] SIFMENS.SIMATIC S7-300和M7-300可編程控制器模板規(guī)范參考手冊.2001,,10.
[3] 鄭晟,,鞏建平,張學(xué).現(xiàn)代可編程控制器原理與應(yīng)用[M].北京:科學(xué)出版社,,2002.

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。