新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于MPI協議的S7-300 PLC與單片機通信的實現

        基于MPI協議的S7-300 PLC與單片機通信的實現

        作者: 時間:2011-12-19 來源:網絡 收藏

        在PLC之間可組態為主/主協議或主/從協議。介紹了基于的西門子S7-300 PLC與單片機實現數據通信的應用實例及其主要設置。

        西門子S7-300 PLC因其功能強、速度快、擴展靈活,在工業控制領域中占有重要地位。MPI網絡是西門子工業控制系統中經常用到的一種通信方式,其使用RS485物理接口進行數據傳輸。目前,S7-300 PLC與PC的通信是通過專用接口卡5611卡和MPI電纜實現的。通信軟件為SIMATIC Manager、STEP7、PRODAVE_S7_mini以及功能十分強大的WinCC。但是,由于西門子是不公開的,所以一些單片機控制器不能接入到MPI網絡與S7-300 PLC通信。本文提出了一種獲取MPI協議的方法并設計了單片機MPI程序和S7-300 PLC通信。

        1 設計方案

        任何指令在傳輸線路上均以數字形式存在,即一串高低電平。因此,使用串口軟件對線路上的數據偵聽并進行分析至關重要。

        首先,用一個S7-300 PLC和一個S7-200 PLC進行MPI通信,在S7-300 PLC和S7-200 PLC的通信線路中間并聯兩根通信線出來接到PC/PPI電纜上,然后下載一個比較好的串口軟件,接下來打開這個軟件,新建、選擇端口COM1,再將PC/PPI電纜接在COM1上。連接方法如圖1所示。

        55.jpg

        按S7-300系統手冊設置好串口參數:19200,8,E偶校驗,1位停止位。然后設置好SIMATIC Manager軟件,使之能與S7-300 CPU正常通信。從SIMATIC Manager軟件中發出一個明確指令,監視軟件就能顯示這條報文了(用16進制顯示)。

        1.1 S7-300程序設計

        兩臺S7-200 PLC無需任何程序,被動應答。S7-300 PLC則需用SIMATIC Manager軟件編寫MPI讀寫程序。本文設置S7-300 PLC為2站(0站和1站被S7-300 PLC都預留另作他用),一臺S7-200 PLC為3站,另一臺S7-200 PLC為4站。

        S7-300 MPI讀寫程序如圖2所示。

        56.jpg

        硬件配置和軟件程序下載到S7-300 PLC后,監視一下數據,如果正確則關掉SIMATIC Manager軟件,因為電腦是默認的MPI主站(0站),以防干擾后面的監測數據。

        1.2 數據監測

        打開串口軟件,會源源不斷地接收到數據,收到10萬左右的數據時關閉串口軟件,保存數據,然后再分析。

        通過反復試驗可以發現:

        (1)與西門子S7-200不同,S7-300不管處于何種狀態(run或stop),一經上電,PLC就會不斷地發出數據查找設備,在讀寫數據過程中也不間斷。

        (2)連接、斷開、讀出/寫入時,監測到一系列有規律的數據,讀出/寫入的數據包括在其中。

        分析其報文,可以找出如下規律:
         令牌報文的格式:SD4 DA SA
         總線訪問協議報文的格式: SD1 DA SA FC FCS ED
         數據報文格式: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= 重復長度 Repeated Length
         DA=目的地址 Destination Address SA=源地址 Source Address
         FC=功能碼 Function Code DU=數據單元 Data Unit
         FCS=幀檢查順序 Frame Check Sequence ED=結束分界符 End Delimiter
         DSAP=目的服務存取點 Destination Service Access Point
         SSAP=源服務存取點 Source Service Access Point

        2 單片機MPI通信硬件和軟件設計

        2.1 單片機MPI通信硬件設計

        筆者用AT89C52單片機、MAX485和雙端口RAMIDT7132構成了單片機的MPI通信硬件。硬件結構圖如圖3所示。

        57.jpg

        2.2 單片機MPI通信軟件設計

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

        58.jpg

        編寫完MPI程序后,可以將3號從站的S7-200從MPI網絡中去掉,將單片機接入MPI網絡,單片機通過撥碼開關設置為從站3,MPI網絡支持從站隨時接入網絡,但網絡中的主站號和從站號唯一。用SIMATIC Manager軟件檢測單片機和S7-300進行數據監測如圖5所示。

        59.jpg

        通信相關文章:通信原理




        評論


        技術專區

        關閉
        主站蜘蛛池模板: 自贡市| 泰顺县| 罗田县| 江北区| 淮滨县| 农安县| 出国| 若尔盖县| 尼木县| 扶余县| 黑河市| 衡南县| 韶关市| 三亚市| 绥德县| 太仆寺旗| 泽普县| 九江市| 万山特区| 阆中市| 瑞丽市| 雷山县| 十堰市| 偃师市| 陆良县| 汶川县| 肥城市| 临朐县| 仙游县| 乌拉特后旗| 诸暨市| 历史| 大荔县| 遂溪县| 包头市| 庆城县| 句容市| 芒康县| 和平区| 钟祥市| 林芝县|