基于MPI協(xié)議的S7-300 PLC與單片機通信的實(shí)現
MPI協(xié)議在PLC之間可組態(tài)為主/主協(xié)議或主/從協(xié)議。介紹了基于MPI協(xié)議的西門(mén)子S7-300 PLC與單片機實(shí)現數據通信的應用實(shí)例及其主要設置。
西門(mén)子S7-300 PLC因其功能強、速度快、擴展靈活,在工業(yè)控制領(lǐng)域中占有重要地位。MPI網(wǎng)絡(luò )是西門(mén)子工業(yè)控制系統中經(jīng)常用到的一種通信方式,其使用RS485物理接口進(jìn)行數據傳輸。目前,S7-300 PLC與PC的通信是通過(guò)專(zhuān)用接口卡5611卡和MPI電纜實(shí)現的。通信軟件為SIMATIC Manager、STEP7、PRODAVE_S7_mini以及功能十分強大的WinCC。但是,由于西門(mén)子MPI協(xié)議是不公開(kāi)的,所以一些單片機控制器不能接入到MPI網(wǎng)絡(luò )與S7-300 PLC通信。本文提出了一種獲取MPI協(xié)議的方法并設計了單片機MPI程序和S7-300 PLC通信。
1 設計方案
任何指令在傳輸線(xiàn)路上均以數字形式存在,即一串高低電平。因此,使用串口軟件對線(xiàn)路上的數據偵聽(tīng)并進(jìn)行分析至關(guān)重要。
首先,用一個(gè)S7-300 PLC和一個(gè)S7-200 PLC進(jìn)行MPI通信,在S7-300 PLC和S7-200 PLC的通信線(xiàn)路中間并聯(lián)兩根通信線(xiàn)出來(lái)接到PC/PPI電纜上,然后下載一個(gè)比較好的串口軟件,接下來(lái)打開(kāi)這個(gè)軟件,新建、選擇端口COM1,再將PC/PPI電纜接在COM1上。連接方法如圖1所示。
按S7-300系統手冊設置好串口參數:19200,8,E偶校驗,1位停止位。然后設置好SIMATIC Manager軟件,使之能與S7-300 CPU正常通信。從SIMATIC Manager軟件中發(fā)出一個(gè)明確指令,監視軟件就能顯示這條報文了(用16進(jìn)制顯示)。
1.1 S7-300程序設計
兩臺S7-200 PLC無(wú)需任何程序,被動(dòng)應答。S7-300 PLC則需用SIMATIC Manager軟件編寫(xiě)MPI讀寫(xiě)程序。本文設置S7-300 PLC為2站(0站和1站被S7-300 PLC都預留另作他用),一臺S7-200 PLC為3站,另一臺S7-200 PLC為4站。
S7-300 MPI讀寫(xiě)程序如圖2所示。
硬件配置和軟件程序下載到S7-300 PLC后,監視一下數據,如果正確則關(guān)掉SIMATIC Manager軟件,因為電腦是默認的MPI主站(0站),以防干擾后面的監測數據。
1.2 數據監測
打開(kāi)串口軟件,會(huì )源源不斷地接收到數據,收到10萬(wàn)左右的數據時(shí)關(guān)閉串口軟件,保存數據,然后再分析。
通過(guò)反復試驗可以發(fā)現:
(1)與西門(mén)子S7-200不同,S7-300不管處于何種狀態(tài)(run或stop),一經(jīng)上電,PLC就會(huì )不斷地發(fā)出數據查找設備,在讀寫(xiě)數據過(guò)程中也不間斷。
(2)連接、斷開(kāi)、讀出/寫(xiě)入時(shí),監測到一系列有規律的數據,讀出/寫(xiě)入的數據包括在其中。
分析其報文,可以找出如下規律:
令牌報文的格式:SD4 DA SA
總線(xiàn)訪(fǎng)問(wèn)協(xié)議報文的格式: SD1 DA SA FC FCS ED
數據報文格式:SD2 LE LER SD2 DA SA FC DSAP SSAP DU FCS ED
SD1=開(kāi)始分界符1 Start Delimiter 1 SD2=開(kāi)始分界符2 Start Delimiter 2
LE=長(cháng)度 Length LER= 重復長(cháng)度 Repeated Length
DA=目的地址 Destination Address SA=源地址 Source Address
FC=功能碼 Function Code DU=數據單元 Data Unit
FCS=幀檢查順序 Frame Check Sequence ED=結束分界符 End Delimiter
DSAP=目的服務(wù)存取點(diǎn) Destination Service Access Point
SSAP=源服務(wù)存取點(diǎn) Source Service Access Point
2 單片機MPI通信硬件和軟件設計
2.1 單片機MPI通信硬件設計
筆者用AT89C52單片機、MAX485和雙端口RAMIDT7132構成了單片機的MPI通信硬件。硬件結構圖如圖3所示。
2.2 單片機MPI通信軟件設計
單片機MPI通信軟件設計主要包括串口部分、握手信號、讀寫(xiě)部分等,其程序流程圖如圖4所示。
編寫(xiě)完MPI程序后,可以將3號從站的S7-200從MPI網(wǎng)絡(luò )中去掉,將單片機接入MPI網(wǎng)絡(luò ),單片機通過(guò)撥碼開(kāi)關(guān)設置為從站3,MPI網(wǎng)絡(luò )支持從站隨時(shí)接入網(wǎng)絡(luò ),但網(wǎng)絡(luò )中的主站號和從站號唯一。用SIMATIC Manager軟件檢測單片機和S7-300進(jìn)行數據監測如圖5所示。
通信相關(guān)文章:通信原理
評論