ppi的通信功能_第1頁
ppi的通信功能_第2頁
ppi的通信功能_第3頁
ppi的通信功能_第4頁
ppi的通信功能_第5頁
已閱讀5頁,還剩91頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第第4章章 S7-200 PLC的通信功能的通信功能4.1 PPI通訊通訊4.1.1 概述概述 PPI協(xié)議是協(xié)議是S7-200 PLC中最基本的一種通信方式,中最基本的一種通信方式,通過通過S7-200 CPU自身的端口自身的端口(port0或或Port 1)即可即可完成,是完成,是S7-200 CPU默認(rèn)的通信協(xié)默認(rèn)的通信協(xié)議。議。 PPI是一種主是一種主-從協(xié)議,協(xié)議定義了主站和從站,從協(xié)議,協(xié)議定義了主站和從站,網(wǎng)絡(luò)中主站向網(wǎng)絡(luò)中的從站發(fā)出請(qǐng)求,從站只能網(wǎng)絡(luò)中主站向網(wǎng)絡(luò)中的從站發(fā)出請(qǐng)求,從站只能對(duì)主站發(fā)出的請(qǐng)求做出響應(yīng),自己不能發(fā)出請(qǐng)求。對(duì)主站發(fā)出的請(qǐng)求做出響應(yīng),自己不能發(fā)出請(qǐng)求。主站也

2、可以對(duì)網(wǎng)絡(luò)中其他主站的請(qǐng)求做出響應(yīng)。主站也可以對(duì)網(wǎng)絡(luò)中其他主站的請(qǐng)求做出響應(yīng)。 S7-200的通信口為的通信口為RS-485接口,接口,PC/PPI多主站電纜用于計(jì)算多主站電纜用于計(jì)算機(jī)與機(jī)與S7-200之間的通信,有之間的通信,有RS-232CPPI和和USBPPI兩種兩種電纜。電纜。 PPI網(wǎng)絡(luò)連接示意圖如圖網(wǎng)絡(luò)連接示意圖如圖10-1所示,要求如下所示,要求如下:(1)每個(gè)網(wǎng)段至多)每個(gè)網(wǎng)段至多32個(gè)網(wǎng)絡(luò)節(jié)點(diǎn);個(gè)網(wǎng)絡(luò)節(jié)點(diǎn);(2)每個(gè)網(wǎng)段最長)每個(gè)網(wǎng)段最長50米米(不用中繼器不用中繼器),可通過中繼器擴(kuò)展網(wǎng),可通過中繼器擴(kuò)展網(wǎng)絡(luò),最多絡(luò),最多9 個(gè)中繼器;個(gè)中繼器;(3)網(wǎng)絡(luò)可包含)網(wǎng)絡(luò)可包

3、含127節(jié)點(diǎn);節(jié)點(diǎn);(4)網(wǎng)絡(luò)可包含)網(wǎng)絡(luò)可包含32個(gè)主站;個(gè)主站;(5)網(wǎng)絡(luò)總長)網(wǎng)絡(luò)總長9600米。米。 一個(gè)網(wǎng)段 一個(gè)網(wǎng)段 一個(gè)網(wǎng)段 50米 最多1000米 50米圖4-1 PPI網(wǎng)絡(luò)連接示意圖 PROFIBUS連接器和電纜將CP通信卡和S7-200通信口連接。 不同主/從站之間也可以通過PROFIBUS連接器和電纜進(jìn)行連接通信。 PPI是主/從協(xié)議,默認(rèn)情況下網(wǎng)絡(luò)中的S7-200 CPU均為從站,其他CPU、SIMATIC編程器或文本顯示器(例TD400C等)為主站。 PPI網(wǎng)絡(luò)包括單主站PPI網(wǎng)絡(luò)和多主站PPI網(wǎng)絡(luò)。圖圖4-2 多主站多主站PPI網(wǎng)絡(luò)結(jié)構(gòu)圖網(wǎng)絡(luò)結(jié)構(gòu)圖4.1.2 使用網(wǎng)

4、絡(luò)讀寫指令實(shí)現(xiàn)使用網(wǎng)絡(luò)讀寫指令實(shí)現(xiàn)PPI通信通信 如果在用戶程序中使用了PPI主站模式,一些S7-200 CPU在RUN模式下可以做主站,它們可以用網(wǎng)絡(luò)讀(NETR,Net Read)和網(wǎng)絡(luò)寫(NETW,Net Write)指令讀寫其他CPU中的數(shù)據(jù)。 S7-200 PLC之間的PPI通信可以使用PROFIBUS網(wǎng)線直接連接CPU上PORT 0或PORT1,然后在CPU內(nèi)調(diào)用網(wǎng)絡(luò)讀寫指令即可實(shí)現(xiàn)。 1網(wǎng)絡(luò)讀寫指令網(wǎng)絡(luò)讀寫指令NETR/NETW 網(wǎng)絡(luò)讀取(NETR)指令開始一項(xiàng)通訊操作,通過指定的端口(PORT)從遠(yuǎn)程設(shè)備收集數(shù)據(jù)。網(wǎng)絡(luò)寫入(NETW)指令開始一項(xiàng)通訊操作,通過指定的端口(POR

5、T)向遠(yuǎn)程設(shè)備寫入數(shù)據(jù)。 每一個(gè)NETR/NETW指令可從/向遠(yuǎn)程站讀取/寫入16個(gè)字節(jié)信息。網(wǎng)絡(luò)讀寫指令是通過TBL參數(shù)表來指定報(bào)文頭,TBL參數(shù)表如表4-1所示。字字節(jié)節(jié)7 07 00 0D DA AE E0 0錯(cuò)誤代錯(cuò)誤代碼碼1 1遠(yuǎn)程地址遠(yuǎn)程地址2 2遠(yuǎn)程站的數(shù)據(jù)區(qū)指針遠(yuǎn)程站的數(shù)據(jù)區(qū)指針(I、Q、M、V)3 34 45 56 6數(shù)據(jù)長度數(shù)據(jù)長度7 7數(shù)據(jù)字節(jié)數(shù)據(jù)字節(jié)08 8數(shù)據(jù)字節(jié)數(shù)據(jù)字節(jié)1.2222數(shù)據(jù)字節(jié)數(shù)據(jù)字節(jié)15表表4-1 網(wǎng)絡(luò)讀寫指令網(wǎng)絡(luò)讀寫指令TBL錯(cuò)誤代碼如表4-2所示:錯(cuò)誤代碼錯(cuò)誤代碼定定 義義0 0無錯(cuò)誤無錯(cuò)誤1 1遠(yuǎn)程站響應(yīng)超時(shí)遠(yuǎn)程站響應(yīng)超時(shí)2 2接受錯(cuò)誤:奇偶校驗(yàn)

6、錯(cuò),響應(yīng)時(shí)幀或校驗(yàn)出錯(cuò)接受錯(cuò)誤:奇偶校驗(yàn)錯(cuò),響應(yīng)時(shí)幀或校驗(yàn)出錯(cuò)3 3離線錯(cuò)誤:相同的站地址或無效的硬件引發(fā)沖突離線錯(cuò)誤:相同的站地址或無效的硬件引發(fā)沖突4 4隊(duì)列溢出錯(cuò)誤:激活超過隊(duì)列溢出錯(cuò)誤:激活超過8個(gè)的個(gè)的NETR/TREW指令指令5 5通信協(xié)議錯(cuò)誤:沒有使用通信協(xié)議錯(cuò)誤:沒有使用PPI協(xié)議(協(xié)議(SMB30)而調(diào)用)而調(diào)用NETR/NETW指令指令6 6非法參數(shù):非法參數(shù):NETR/NETW表中包含非法或無效的值表中包含非法或無效的值7 7沒有資源:遠(yuǎn)程站點(diǎn)正在忙中(上裝或下載程序)沒有資源:遠(yuǎn)程站點(diǎn)正在忙中(上裝或下載程序)8 8第第7層錯(cuò)誤:違反應(yīng)用協(xié)議層錯(cuò)誤:違反應(yīng)用協(xié)議9 9信

7、息錯(cuò)誤:錯(cuò)誤的數(shù)據(jù)地址或數(shù)據(jù)長度信息錯(cuò)誤:錯(cuò)誤的數(shù)據(jù)地址或數(shù)據(jù)長度1010保留保留表表4-2 錯(cuò)誤代碼表錯(cuò)誤代碼表2設(shè)定通信協(xié)議設(shè)定通信協(xié)議 在程序的開始必須設(shè)定通信協(xié)議。SMB30用于配置通信端口0(Port 0),SMB130用于配置通信端口1(Port 1),此兩個(gè)特殊寄存器字節(jié)的含義如表10-3所示。 表10-3中:pp(校驗(yàn)選擇)、d(每個(gè)字符的數(shù)據(jù)位)、bbb(自由口波特率)均為自由口通信時(shí)才需要設(shè)定的參數(shù),在PPI通信時(shí)都設(shè)置為0即可。 mm協(xié)議選擇3設(shè)定設(shè)定NETW和和NETR的的TBL參數(shù)表參數(shù)表圖4-3 網(wǎng)絡(luò)寫指令NETW圖4-4 網(wǎng)絡(luò)讀指令NETR4通信參數(shù)設(shè)定通信參數(shù)設(shè)

8、定 CPU通信端口的設(shè)定可以通過STEP 7 Micro/WIN軟件的“系統(tǒng)塊(System Block)”選項(xiàng)來進(jìn)行。 最高地址(Highest Address 波特率 地址間隔刷新系數(shù)(Gap Update Factor)4.1.3 使用向?qū)?shí)現(xiàn)使用向?qū)?shí)現(xiàn)PPI通信通信圖圖4-5 “網(wǎng)絡(luò)讀網(wǎng)絡(luò)讀/寫操作寫操作”對(duì)話框?qū)υ捒?單擊圖4-5“下一項(xiàng)操作”按鈕,進(jìn)入第二項(xiàng)“網(wǎng)絡(luò)讀/寫操作”對(duì)話框 單擊“下一步”,出現(xiàn)分配存儲(chǔ)區(qū)對(duì)話框 接下來,要調(diào)用向?qū)傻淖映绦騺韺?shí)現(xiàn)數(shù)據(jù)的傳輸,主站程序及注釋如圖10-6所示。圖4-6 主站主程序4.2 自由口通信自由口通信 S7-200 CPU的串行通訊口

9、可由用戶程序控制,這種操作模式稱為自由口模式。自由口通信是一種基于 RS485硬件基礎(chǔ)上,允許應(yīng)用程序控制 S7-200 CPU 的通信端口,以實(shí)現(xiàn)一些自定義通信協(xié)議的通信方式。 當(dāng)選擇了自由口模式,程序可以使用接收中斷、發(fā)送中斷、發(fā)送指令(XMT)和接收指令(RCV)來控制通訊操作。在自由口模式下,通訊協(xié)議完全由程序控制。SMB30(用于端口0)和SMB31(如果CPU有兩個(gè)端口,則用于端口1)用于選擇波特率和奇偶校驗(yàn)。 S7-200 CPU 處于自由口通信模式時(shí),所有的通信任務(wù)和信息定義均需由用戶編程實(shí)現(xiàn)。 只有CPU處于RUN模式時(shí),才能進(jìn)行自由端口通訊。4.2.1 自由口模式下的發(fā)送和

10、接收指令自由口模式下的發(fā)送和接收指令S7-200 CPU的自由口通信的數(shù)據(jù)字節(jié)格式必須含有一個(gè)起始位、一的自由口通信的數(shù)據(jù)字節(jié)格式必須含有一個(gè)起始位、一個(gè)停止位,數(shù)據(jù)位長度為個(gè)停止位,數(shù)據(jù)位長度為7位或位或8位,校驗(yàn)位和校驗(yàn)類型(奇、偶校驗(yàn))位,校驗(yàn)位和校驗(yàn)類型(奇、偶校驗(yàn))可選。可選。S7-200 CPU的自由口通信定義方法為將自由口通信操作數(shù)傳的自由口通信定義方法為將自由口通信操作數(shù)傳入特殊寄存器入特殊寄存器 SMB30(端口(端口0)和)和 SMB130(端口(端口1)進(jìn)行端口定義,)進(jìn)行端口定義,自由口通信操作數(shù)定義如自由口通信操作數(shù)定義如表表4-4所示。所示。 自由口通信模式主要使用

11、XMT(發(fā)送)和RCV(接收)兩條指令及相應(yīng)的特殊寄存器。 XMT 指令利用數(shù)據(jù)緩沖區(qū)指定要發(fā)送的字符,用于向指定通信口以字節(jié)為單位發(fā)送一串?dāng)?shù)據(jù)字符,一次最多發(fā)送255個(gè)字節(jié)。表表4-5 XMT指令的緩沖區(qū)格式指令的緩沖區(qū)格式 RCV指令可以接收一個(gè)或多個(gè)字符,最多有255個(gè)字符,這些字符存儲(chǔ)在緩沖區(qū)中。 RCV 指令的緩沖區(qū)格式如表4-6所示。當(dāng)超界或奇偶校驗(yàn)錯(cuò)時(shí),接收信息功能自動(dòng)終止。必須為接收信息功能操作定義一個(gè)啟動(dòng)條件(x或z)和一個(gè)結(jié)束條件(y,t或最大字符數(shù))。 協(xié)議支持使用字符中斷控制來接收數(shù)據(jù)。表表4-6 RCV指令的緩沖區(qū)格式指令的緩沖區(qū)格式4.2.2 自由口通信舉例自由口通

12、信舉例1自由口發(fā)送實(shí)例自由口發(fā)送實(shí)例要求:記錄定時(shí)中斷次數(shù),將計(jì)數(shù)值轉(zhuǎn)化為ASCII字符串,再通過CPU224XP 的 Port0 發(fā)送到計(jì)算機(jī)串口,計(jì)算機(jī)接受并利用超級(jí)終端顯示與 S7-200 CPU 通信的內(nèi)容。 (1)PLC編程編程規(guī)定緩沖區(qū)為 VB100 到 VB114 ,使用數(shù)據(jù)塊進(jìn)行緩沖區(qū)定義,如圖4-7所示,16#0D和16#0A用于計(jì)算機(jī)的超級(jí)終端顯示需要。圖4-7 組態(tài)數(shù)據(jù)塊 主程序如圖4-8所示,根據(jù) I 0.3 狀態(tài)初始化端口1為自由口通信。 SBR_0 程序如圖4-9所示,定義端口0為自由口,初始化定時(shí)中斷。圖4-8 自由口通信主程序圖4-9 SBR_0子程序 SBR_

13、1子程序如圖4-10所示,用于定義端口0為普通 PPI 從站通信口。 圖4-10 SBR_1子程序 INT_0 程序如圖4-11所示,對(duì)定時(shí)中斷計(jì)數(shù)并從端口0發(fā)送計(jì)數(shù)值 圖4-11 INT_0子程序圖4-10 SBR_1子程序圖4-11 INT_0子程序(2)超級(jí)終端設(shè)置)超級(jí)終端設(shè)置超級(jí)終端(超級(jí)終端(Hyper Terminal)是是 Windows 操作系統(tǒng)提供操作系統(tǒng)提供的通信測試程序,本例用來的通信測試程序,本例用來監(jiān)測計(jì)算機(jī)和監(jiān)測計(jì)算機(jī)和 S7-200 CPU 之間的串口通信。之間的串口通信。超級(jí)終端組態(tài)步驟如下:超級(jí)終端組態(tài)步驟如下:1)執(zhí)行)執(zhí)行 Windows 菜單命令菜單命

14、令“開始開始”“附件附件”“通通信信”“超級(jí)終端超級(jí)終端”,為要新,為要新建的連接輸入連接名稱。建的連接輸入連接名稱。 2)選擇連接時(shí)要使用的串口。)選擇連接時(shí)要使用的串口。3)設(shè)置串口通信參數(shù)并保存連)設(shè)置串口通信參數(shù)并保存連接,注意此處設(shè)置要與接,注意此處設(shè)置要與PLC程序中對(duì)應(yīng)。程序中對(duì)應(yīng)。4)使用超級(jí)終端接收)使用超級(jí)終端接收 S7-200 CPU 發(fā)送的信息。發(fā)送的信息。圖4-12 超級(jí)終端接受顯示2自由口接收實(shí)例要求S7-200 CPU 從端口0接收計(jì)算機(jī)發(fā)送的字符串,并在信息接收中斷服務(wù)程序中把接收到的第一個(gè)字節(jié)傳送到 CPU 輸出字節(jié)QB0 上顯示。(1)PLC編程 主程序如圖

15、4-13所示,根據(jù)I 0.3 狀態(tài)初始化端口1為自由口通信。圖4-13 自由口通信主程序 SBR_0子程序如圖4-14所示,用于定義端口0為自由口,初始化接收指令。圖圖4-14 SBR_0 程序程序 SBR_1子程序如圖4-15所示,定義端口0為普通 PPI 從站通信口。 INT_0中斷子程序如圖4-16所示,在 QB0 輸出接收到的第一個(gè)字節(jié)。(2)配置超級(jí)終端)配置超級(jí)終端 打開前面建立的超級(jí)終端鏈接,進(jìn)入屬性窗口,點(diǎn)擊 “ASCII 碼設(shè)置” 按鈕,在彈出的 ASCII 碼設(shè)置窗口中,勾選“以換行符作為發(fā)送行末尾”和“本地回顯鍵入的字符”兩項(xiàng)。4.3 MODBUS通信通信 Modbus通

16、信協(xié)議是Modicon公司提出的一種報(bào)文傳輸協(xié)議,它廣泛應(yīng)用于工業(yè)控制領(lǐng)域,并已經(jīng)成為一種通用的行業(yè)標(biāo)準(zhǔn)。不同廠商提供的控制設(shè)備可通過 Modbus 協(xié)議連成通信網(wǎng)絡(luò),從而實(shí)現(xiàn)集中控制。4.3.1 Modbus報(bào)文格式報(bào)文格式 Modbus 地址通常是包含數(shù)據(jù)類型和偏移量的5個(gè)或6個(gè)字符值。第一個(gè)或前兩個(gè)字符決定數(shù)據(jù)類型,最后的四個(gè)字符是符合數(shù)據(jù)類型的一個(gè)適當(dāng)?shù)闹?。?)Modbus 主站尋址主站尋址Modbus主設(shè)備指令支持下列Modbus地址:00001至09999是離散輸出(線圈);10001至19999是離散輸入(觸點(diǎn));30001至39999是輸入寄存器(通常是模擬量輸入);4000

17、1至49999是保持寄存器。(2)Modbus 從站尋址從站尋址 Modbus 地址與 S7-200 地址對(duì)應(yīng)關(guān)系如表4-7所示。000001000001Q0.0Q0.0000002000002Q0.1Q0.1000003000003Q0.2Q0.2000127000127Q15.6Q15.6000128000128Q15.7Q15.7010001010001I0.0I0.0010002010002I0.1I0.1010003010003I0.2I0.2010127010127I15.6I15.6010128010128I15.7I15.7030001030001AIW0AIW00300020

18、30002AIW2AIW2030003030003AIW4AIW4030032030032AIW62AIW62040001040001HoldStartHoldStart040002040002HoldStart+2HoldStart+2040003040003HoldStart+4HoldStart+404xxxx04xxxxHoldStart+2xHoldStart+2x(xxxx-1) Modbus 通信協(xié)議有 ASCII 和 RTU(遠(yuǎn)程傳輸單元)兩種報(bào)文傳輸模式。(1)ASCII模式 ASCII模式采用LRC(縱向冗余校驗(yàn))方式進(jìn)行校驗(yàn),其報(bào)文格式如表4-8所示。表表4-8 ASCI

19、I模式的報(bào)文格式模式的報(bào)文格式(2)RTU模式模式RTU模式的報(bào)文格式如表4-9所示。地址功能碼:Modbus功能代碼,1個(gè)字節(jié);Modbus協(xié)議支持的功能碼共16條(116),其中西門子Modbus RTU協(xié)議庫支持最常用的8條,如表4-10所示;信息數(shù)據(jù)CRC :循環(huán)冗余校驗(yàn),兩個(gè)字節(jié)。 功能碼功能碼描述描述1 1讀取單個(gè)讀取單個(gè)/多個(gè)線圈的實(shí)際輸出狀態(tài)。功能多個(gè)線圈的實(shí)際輸出狀態(tài)。功能1返回任意數(shù)量輸出點(diǎn)的接返回任意數(shù)量輸出點(diǎn)的接通通/斷開狀態(tài)(斷開狀態(tài)(Q)。)。2 2讀取單個(gè)讀取單個(gè)/多個(gè)線圈的實(shí)際輸入狀態(tài)。功能多個(gè)線圈的實(shí)際輸入狀態(tài)。功能2返回任意數(shù)量的輸入點(diǎn)的返回任意數(shù)量的輸入點(diǎn)

20、的接通接通/斷開狀態(tài)(斷開狀態(tài)(I)。)。3 3多個(gè)保持寄存器。功能多個(gè)保持寄存器。功能3返回返回V存儲(chǔ)器的內(nèi)容。保持寄存器在存儲(chǔ)器的內(nèi)容。保持寄存器在Modbus下下是字類型,在一個(gè)請(qǐng)求中最多可讀是字類型,在一個(gè)請(qǐng)求中最多可讀120個(gè)字。個(gè)字。4 4讀單個(gè)讀單個(gè)/多個(gè)輸入寄存器,返回模擬輸入值。多個(gè)輸入寄存器,返回模擬輸入值。5 5寫單個(gè)線圈(實(shí)際輸出)。功能寫單個(gè)線圈(實(shí)際輸出)。功能5將實(shí)際輸出點(diǎn)設(shè)置為指定值。該輸出將實(shí)際輸出點(diǎn)設(shè)置為指定值。該輸出點(diǎn)不是被強(qiáng)制,用戶程序可以重寫由點(diǎn)不是被強(qiáng)制,用戶程序可以重寫由Modbus的請(qǐng)求而寫入的值。的請(qǐng)求而寫入的值。6 6寫單個(gè)保持寄存器。功能寫

21、單個(gè)保持寄存器。功能6寫一個(gè)單個(gè)保持寄存器的值到寫一個(gè)單個(gè)保持寄存器的值到S7-200的的V存存儲(chǔ)區(qū)。儲(chǔ)區(qū)。1515寫多個(gè)線圈(實(shí)際輸出)。功能寫多個(gè)線圈(實(shí)際輸出)。功能15寫多個(gè)實(shí)際輸出值到寫多個(gè)實(shí)際輸出值到S7-200的的Q映像映像區(qū)。起始輸出點(diǎn)必須是一個(gè)字節(jié)的開始(如區(qū)。起始輸出點(diǎn)必須是一個(gè)字節(jié)的開始(如Q0.0或或Q2.0),并且要寫),并且要寫得輸出的數(shù)量是得輸出的數(shù)量是8的倍數(shù)。這是的倍數(shù)。這是Modbus從站協(xié)議指令的限定。這些點(diǎn)從站協(xié)議指令的限定。這些點(diǎn)不是被強(qiáng)制,用戶程序可以重寫由不是被強(qiáng)制,用戶程序可以重寫由Modbus的請(qǐng)求而寫入的值。的請(qǐng)求而寫入的值。1616寫多個(gè)保

22、持寄存器。功能寫多個(gè)保持寄存器。功能16寫多個(gè)保持寄存器到寫多個(gè)保持寄存器到S7-200的的V區(qū)。在一個(gè)區(qū)。在一個(gè)請(qǐng)求中最多可寫請(qǐng)求中最多可寫120字。字。表表4-10 西門子西門子Modbus RTU協(xié)議庫支持最常用的協(xié)議庫支持最常用的8條功能碼條功能碼表4-9 RTU模式的報(bào)文格式 RTU模式下,報(bào)文中的每個(gè)8位字節(jié)被轉(zhuǎn)化為兩個(gè)16進(jìn)制字符,然后以字節(jié)為單位進(jìn)行傳輸,并采用CRC(循環(huán)冗余校驗(yàn))方式進(jìn)行校驗(yàn)。 目前支持 Modbus 通信的DCS系統(tǒng)和過程儀表大都采用基于串行接口的Modbus RTU模式,西門子提供了針對(duì)西門子PLC Modbus RTU通信的協(xié)議庫。 如果要在西門子PL

23、C上實(shí)現(xiàn)Modbus ASCII模式通信,可根據(jù)相關(guān)協(xié)議規(guī)定利用自由口通信模式自主編程實(shí)現(xiàn)。4.3.2 Modbus通訊協(xié)議指令通訊協(xié)議指令西門子專門為西門子專門為 Modbus RTU 通信開發(fā)了指令庫,極大地簡化通信開發(fā)了指令庫,極大地簡化了了Modbus RTU 通信的開發(fā),以便于快速實(shí)現(xiàn)相關(guān)應(yīng)用。通信的開發(fā),以便于快速實(shí)現(xiàn)相關(guān)應(yīng)用。要使用要使用 Modbus 指令庫必須注意以下四點(diǎn):指令庫必須注意以下四點(diǎn):(1)使用)使用 Modbus 指令庫前,需要將其安裝到指令庫前,需要將其安裝到 Step7-Micro/Win中,中,STEP 7-Micro/WIN 必須為必須為 V3.2 或以

24、上版本?;蛞陨习姹?。(2)S7-200 CPU 必須是固化程序修訂版必須是固化程序修訂版2.00或最好支持或最好支持 Modbus 主設(shè)備協(xié)議庫主設(shè)備協(xié)議庫(CPU MLFB 21x-2xx23-0XB0)。(3)由于目前已經(jīng)推出了針對(duì)端口)由于目前已經(jīng)推出了針對(duì)端口0和端口和端口1的的 Modbus RTU 主主站指令庫站指令庫 Modbus Master Port0 和和 Modbus Master Port1、以及針對(duì)端口以及針對(duì)端口0的的 Modbus RTU 從站指令庫,故可利用指令庫從站指令庫,故可利用指令庫實(shí)現(xiàn)端口實(shí)現(xiàn)端口0的的Modbus RTU 主主/從站通信。從站通信。(4

25、)一旦)一旦 CPU 端口被用于端口被用于 Modbus RTU 主主/從站協(xié)議通信時(shí),從站協(xié)議通信時(shí),該端口就無法用于任何其它用途,包括與該端口就無法用于任何其它用途,包括與 STEP 7-Micro/WIN 通訊。通訊。1Modbus 主站協(xié)議指令主站協(xié)議指令 西門子Modbus主站協(xié)議庫包括兩條主站協(xié)議指令:MBUS_CTRL指令和MBUS_MSG 指令。 MBUS_CTRL 指令用于初始化主站通信,MBUS_MSG 指令(或用于端口1的MBUS_MSG_P1)用于啟動(dòng)對(duì)Modbus從站的請(qǐng)求并處理應(yīng)答。1)MBUS_CTRL 指令指令 MBUS_CTRL指令如圖4-17所示。圖4-17

26、 MBUS_CTRL指令塊2)MBUS_MSG 指令指令 MBUS_MSG 指令(或用于端口1的 MBUS_MSG_P1 )用于啟動(dòng)對(duì)Modbus從站的請(qǐng)求并處理應(yīng)答。 MBUS_MSG 指令如圖4-18所示圖圖4-18 MBUS_MSG 指令指令 Count:“計(jì)數(shù)”參數(shù); “計(jì)數(shù)”參數(shù)指定在該請(qǐng)求中讀取或?qū)懭氲臄?shù)據(jù)元素的數(shù)目。根據(jù)Modbus協(xié)議,“計(jì)數(shù)”參數(shù)與 Modbus 地址存在表4-11對(duì)應(yīng)關(guān)系。地址地址計(jì)數(shù)計(jì)數(shù)0 xxxx0 xxxx“計(jì)數(shù)計(jì)數(shù)”是要讀取或?qū)懭氲奈粩?shù)是要讀取或?qū)懭氲奈粩?shù)1xxxx1xxxx“計(jì)數(shù)計(jì)數(shù)”是要讀取的位數(shù)是要讀取的位數(shù)3xxxx3xxxx“計(jì)數(shù)計(jì)數(shù)”是要

27、讀取的輸入寄存器的字?jǐn)?shù)是要讀取的輸入寄存器的字?jǐn)?shù)4xxxx4xxxx“計(jì)數(shù)計(jì)數(shù)”是要讀取或?qū)懭氲谋3旨拇嫫魇且x取或?qū)懭氲谋3旨拇嫫鞯淖謹(jǐn)?shù)的字?jǐn)?shù)表表4-11 “計(jì)數(shù)計(jì)數(shù)”參數(shù)與參數(shù)與 Modbus 地址的對(duì)應(yīng)關(guān)系地址的對(duì)應(yīng)關(guān)系MBUS_MSMBUS_MSG G錯(cuò)誤代錯(cuò)誤代碼碼說明說明0 0無錯(cuò)誤無錯(cuò)誤1 1應(yīng)答時(shí)奇偶校驗(yàn)錯(cuò)誤:僅當(dāng)使用偶校驗(yàn)或奇校驗(yàn)時(shí)才發(fā)生。傳輸被干擾,可能會(huì)收到不正確的數(shù)據(jù)。該錯(cuò)應(yīng)答時(shí)奇偶校驗(yàn)錯(cuò)誤:僅當(dāng)使用偶校驗(yàn)或奇校驗(yàn)時(shí)才發(fā)生。傳輸被干擾,可能會(huì)收到不正確的數(shù)據(jù)。該錯(cuò)誤通常是由電氣故障(例如錯(cuò)誤接線或影響通訊的電噪聲)引起的。誤通常是由電氣故障(例如錯(cuò)誤接線或影響通訊的電噪

28、聲)引起的。2 2保留位保留位3 3接收超時(shí):在接收超時(shí):在“超時(shí)超時(shí)”時(shí)間內(nèi),沒有來自從站的應(yīng)答。可能有以下一些原因:與從站的電氣連接有問題、時(shí)間內(nèi),沒有來自從站的應(yīng)答。可能有以下一些原因:與從站的電氣連接有問題、主設(shè)備和從站設(shè)置為不同的波特率主設(shè)備和從站設(shè)置為不同的波特率/奇偶校驗(yàn)設(shè)置以及錯(cuò)誤的從站地址奇偶校驗(yàn)設(shè)置以及錯(cuò)誤的從站地址4 4請(qǐng)求參數(shù)出錯(cuò):一個(gè)或多個(gè)輸入?yún)?shù)(從站、讀寫、地址或計(jì)數(shù))被設(shè)置為非法值。檢查輸入?yún)?shù)的允許請(qǐng)求參數(shù)出錯(cuò):一個(gè)或多個(gè)輸入?yún)?shù)(從站、讀寫、地址或計(jì)數(shù))被設(shè)置為非法值。檢查輸入?yún)?shù)的允許值。值。5 5ModbusModbus主設(shè)備未啟用:在調(diào)用主設(shè)備未啟用:

29、在調(diào)用MBUS_MSG前,每次掃描時(shí)都調(diào)用前,每次掃描時(shí)都調(diào)用MBUS_MSG。6 6ModbusModbus忙于處理另一個(gè)請(qǐng)求:一次只能激活一條忙于處理另一個(gè)請(qǐng)求:一次只能激活一條MBUS_MSG指令。指令。7 7應(yīng)答時(shí)出錯(cuò):收到的應(yīng)答與請(qǐng)求不相關(guān)。這表示從站中出現(xiàn)了某些錯(cuò)誤或者錯(cuò)誤從站應(yīng)答了請(qǐng)求。應(yīng)答時(shí)出錯(cuò):收到的應(yīng)答與請(qǐng)求不相關(guān)。這表示從站中出現(xiàn)了某些錯(cuò)誤或者錯(cuò)誤從站應(yīng)答了請(qǐng)求。8 8應(yīng)答時(shí)應(yīng)答時(shí)CRC錯(cuò)誤:傳輸被干擾,可能會(huì)收到不正確的數(shù)據(jù)。該錯(cuò)誤通常是由電氣故障(例如錯(cuò)誤接線或影錯(cuò)誤:傳輸被干擾,可能會(huì)收到不正確的數(shù)據(jù)。該錯(cuò)誤通常是由電氣故障(例如錯(cuò)誤接線或影響通訊的電噪聲)引起的。

30、響通訊的電噪聲)引起的。101101從站不支持在該地址處所請(qǐng)求的功能。從站不支持在該地址處所請(qǐng)求的功能。102102從站不支持?jǐn)?shù)據(jù)地址:從站不支持?jǐn)?shù)據(jù)地址:“地址地址”加上加上“計(jì)數(shù)計(jì)數(shù)”所要求的地址范圍超出了從站所允許的地址范圍。所要求的地址范圍超出了從站所允許的地址范圍。103103從站不支持?jǐn)?shù)據(jù)類型:該從站不支持?jǐn)?shù)據(jù)類型:該“地址地址”類型不被從站支持。類型不被從站支持。104104從站故障。從站故障。105105從站已接收消息但應(yīng)答延遲:這是從站已接收消息但應(yīng)答延遲:這是MBUS_MSG的錯(cuò)誤。用戶程序應(yīng)在稍后重新發(fā)送請(qǐng)求。的錯(cuò)誤。用戶程序應(yīng)在稍后重新發(fā)送請(qǐng)求。106106從站忙,因此

31、拒絕消息:可以在此嘗試相同的請(qǐng)求,以獲得應(yīng)答。從站忙,因此拒絕消息:可以在此嘗試相同的請(qǐng)求,以獲得應(yīng)答。107107從站因未知原因拒絕消息。從站因未知原因拒絕消息。108108從站存儲(chǔ)器奇偶校驗(yàn)錯(cuò)誤:從站中有錯(cuò)誤。從站存儲(chǔ)器奇偶校驗(yàn)錯(cuò)誤:從站中有錯(cuò)誤。表表4-12 MBUS_MSG指令錯(cuò)誤代碼含義指令錯(cuò)誤代碼含義2Modbus 從站協(xié)議指令從站協(xié)議指令西門子 Modbus 從站協(xié)議庫包括兩條從站指令:MBUS_INIT 指令和MBUS_SLAVE 指令。1)MBUS_INIT 指令MBUS_INIT 指令用于啟用和初始化或禁止 Modbus 從站通訊。在使用MBUS_SLAVE 指令之前,必須

32、正確執(zhí)行 MBUS_INIT 指令。指令完成后立即設(shè)定 “完成” 位,才能繼續(xù)執(zhí)行下一條指令。MBUS_INIT指令如圖4-19所示圖4-19 MBUS_INIT指令錯(cuò)誤代碼錯(cuò)誤代碼說明說明0 0無錯(cuò)誤無錯(cuò)誤1 1內(nèi)存范圍錯(cuò)誤內(nèi)存范圍錯(cuò)誤2 2非法波特率或奇偶校驗(yàn)非法波特率或奇偶校驗(yàn)3 3非法從站地址非法從站地址4 4非法非法Modbus參數(shù)值參數(shù)值5 5保持寄存器與保持寄存器與Modbus從站符號(hào)重疊從站符號(hào)重疊6 6收到奇偶校驗(yàn)錯(cuò)誤收到奇偶校驗(yàn)錯(cuò)誤7 7收到收到CRC錯(cuò)誤錯(cuò)誤8 8非法功能請(qǐng)求非法功能請(qǐng)求/功能不受支持功能不受支持9 9請(qǐng)求中的非法內(nèi)存地址請(qǐng)求中的非法內(nèi)存地址1010從站功

33、能未啟用從站功能未啟用表表4-13 MBUS_INIT指令錯(cuò)誤代碼的含義指令錯(cuò)誤代碼的含義2)MBUS_SLAVE 指令指令MBUS_SLAVE 指令被用于為Modbus 主設(shè)備發(fā)出的請(qǐng)求服務(wù),并且必須在每次掃描時(shí)執(zhí)行,以便允許該指令檢查和回答 Modbus 請(qǐng)求。MBUS_SLAVE 指令無輸入?yún)?shù),在每次掃描且 EN 輸入開啟時(shí)執(zhí)行。錯(cuò)誤代碼錯(cuò)誤代碼說明說明0 0無錯(cuò)誤無錯(cuò)誤1 1內(nèi)存范圍錯(cuò)誤內(nèi)存范圍錯(cuò)誤2 2非法波特率或奇偶校驗(yàn)非法波特率或奇偶校驗(yàn)3 3非法從站地址非法從站地址4 4非法非法Modbus參數(shù)值參數(shù)值5 5保持寄存器與保持寄存器與Modbus從站符號(hào)重疊從站符號(hào)重疊6 6收

34、到奇偶校驗(yàn)錯(cuò)誤收到奇偶校驗(yàn)錯(cuò)誤7 7收到收到CRC錯(cuò)誤錯(cuò)誤8 8非法功能請(qǐng)求非法功能請(qǐng)求/功能不受支持功能不受支持9 9請(qǐng)求中的非法內(nèi)存地址請(qǐng)求中的非法內(nèi)存地址1010從站功能未啟用從站功能未啟用圖圖4-20 MBUS_SLAVE指令指令表表4-14 MBUS_SLAVE 指令錯(cuò)誤代碼的含義指令錯(cuò)誤代碼的含義 返回08項(xiàng)目ppt4.3.3 編程實(shí)例編程實(shí)例 兩臺(tái)S7-200 CPU224XP進(jìn)行通信。 利用指令庫編程前首先應(yīng)為其分配存儲(chǔ)區(qū),否則 Step7-Micro/Win 編譯時(shí)會(huì)報(bào)錯(cuò)。執(zhí)行 Step7 Micro/Win 菜單命令“文件”“庫存儲(chǔ)區(qū)”,打開“庫存儲(chǔ)區(qū)分配”對(duì)話框,輸入庫存

35、儲(chǔ)區(qū)的起始地址,注意避免該地址和程序中已經(jīng)采用或準(zhǔn)備采用的其它地址重合,點(diǎn)擊“建議地址”按鈕,系統(tǒng)將自動(dòng)計(jì)算存儲(chǔ)區(qū)的地址范圍。(1)從站編程)從站編程根據(jù)要求,從站要響應(yīng)主站報(bào)文,故只需編寫主程序,如圖4-21所示。 圖4-21 從站主程序(2)主站編程)主站編程Modbus主站也只需編寫主程序,如圖4-22所示。運(yùn)行測試即可。圖圖4-22 主站主程序主站主程序4.4 MODEM通信通信 通過EM241擴(kuò)展模塊可以將S7-200連接到模擬電話線上,實(shí)現(xiàn)與遠(yuǎn)程設(shè)備的通訊。這里,我們給出一個(gè)例子,即通過小型交換機(jī)電話網(wǎng)實(shí)現(xiàn)對(duì)PLC的編程診斷及兩臺(tái)PLC之間的數(shù)據(jù)交換。 4.4.1 配置主叫貓和被叫

36、貓配置主叫貓和被叫貓 啟動(dòng)STEP7 Micro/Win軟件,選擇項(xiàng)目樹中的“向?qū)M241調(diào)制解調(diào)器” 進(jìn)入EM241配置向?qū)А?單擊圖4-23所示的“電話號(hào)碼”標(biāo)簽,設(shè)置遠(yuǎn)程設(shè)備電話號(hào)碼,點(diǎn)擊“新電話號(hào)碼”按鈕進(jìn)入電話號(hào)碼屬性設(shè)置窗口,設(shè)置電話號(hào)碼為3,并將其添加到右邊的窗口,如圖4-24所示。圖4-23 配置數(shù)據(jù)傳輸圖圖4-24 遠(yuǎn)程設(shè)備電話號(hào)碼設(shè)置對(duì)話框遠(yuǎn)程設(shè)備電話號(hào)碼設(shè)置對(duì)話框圖圖4-25 回?fù)芘渲么翱诨負(fù)芘渲么翱?.4.2 編程編程輸入輸入/輸輸出出數(shù)據(jù)類數(shù)據(jù)類型型注注 釋釋ENENBOOLBOOLENEN位必須開啟,才能啟用發(fā)至模塊的命令,并且位必須開啟,才能啟用發(fā)至模塊的命令,

37、并且EN位必須保持位必須保持開啟,直至開啟,直至“完成完成”位被設(shè)置,表示程序完成。當(dāng)位被設(shè)置,表示程序完成。當(dāng)START(開(開始)輸入開啟且模塊目前不繁忙時(shí),每次掃描均會(huì)向調(diào)制解調(diào)器始)輸入開啟且模塊目前不繁忙時(shí),每次掃描均會(huì)向調(diào)制解調(diào)器模塊發(fā)送一則模塊發(fā)送一則XFR命令命令STARTSTARTBOOLBOOLSTARTSTART(開始)輸入可以通過一個(gè)邊緣檢測元素以脈沖方式開啟,(開始)輸入可以通過一個(gè)邊緣檢測元素以脈沖方式開啟,該程序僅允許發(fā)送一則命令該程序僅允許發(fā)送一則命令PhonePhoneBYTEBYTE遠(yuǎn)程遠(yuǎn)程EM241模塊的電話號(hào)碼,使用在向?qū)е信渲玫姆?hào)名模塊的電話號(hào)碼,使

38、用在向?qū)е信渲玫姆?hào)名DataDataBYTEBYTE 數(shù)據(jù)數(shù)據(jù)指一個(gè)已經(jīng)定義的數(shù)據(jù)傳送,使用在向?qū)е卸x的符號(hào)名指一個(gè)已經(jīng)定義的數(shù)據(jù)傳送,使用在向?qū)е卸x的符號(hào)名DoneDoneBOOLBOOL 完成完成是當(dāng)調(diào)制解調(diào)器模塊完成數(shù)據(jù)傳送時(shí)開啟的位是當(dāng)調(diào)制解調(diào)器模塊完成數(shù)據(jù)傳送時(shí)開啟的位表表4-15 MODx_XFR 指令含義指令含義 主叫“貓”對(duì)應(yīng)的PLC中的主程序及注釋如圖4-26所示。被叫“貓”對(duì)應(yīng)的PLC中的主程序及注釋如圖4-27所示。 通過前面的設(shè)置,現(xiàn)在編程計(jì)算機(jī)和兩臺(tái)PLC共處于一個(gè)小型的電話網(wǎng)絡(luò)中,注意要實(shí)現(xiàn)遠(yuǎn)程的編程診斷必須保證兩臺(tái)PLC處于“STOP”運(yùn)行模式。圖4-26

39、主叫“貓”對(duì)應(yīng)的主程序圖4-26 主叫“貓”對(duì)應(yīng)的主程序4.4.3 遠(yuǎn)程診斷遠(yuǎn)程診斷 通過Modem模塊可以實(shí)現(xiàn)S7-200的遠(yuǎn)程編程與診斷圖圖4-28 “選擇一個(gè)遠(yuǎn)程站連接選擇一個(gè)遠(yuǎn)程站連接”對(duì)話框?qū)υ捒?.5 USS通信通信 USS 通信總是由主站發(fā)起,USS 主站不斷循環(huán)輪詢各個(gè)從站,從站根據(jù)收到的指令,決定是否以及如何響應(yīng)。從站永遠(yuǎn)不會(huì)主動(dòng)發(fā)送數(shù)據(jù)。從站在以下條件滿足時(shí)應(yīng)答: (1)接收到的主站報(bào)文沒有錯(cuò)誤。 (2)本從站在接收到主站報(bào)文中被尋址。USS 協(xié)議的特點(diǎn)為:(1)支持多點(diǎn)通信(因而可以應(yīng)用在 RS 485 等網(wǎng)絡(luò)上)。(2)采用單主站的“主從”訪問機(jī)制。 (3)一個(gè)網(wǎng)絡(luò)上最

40、多可以有 32 個(gè)節(jié)點(diǎn)(最多 31 個(gè)從站)。 (4)簡單可靠的報(bào)文格式,使數(shù)據(jù)傳輸靈活高效。 (5)容易實(shí)現(xiàn),成本較低。 4.5.1 USS通信報(bào)文格式通信報(bào)文格式(1)字符幀格式:USS的字符傳輸格式符合UART規(guī)范,即使用串行異步傳輸方式。USS在串行數(shù)據(jù)總線上的字符傳輸幀為11位長度,如表10-16所示。 連續(xù)的字符幀組成USS報(bào)文。 在一條報(bào)文中,字符幀之間的間隔延時(shí)要小于兩個(gè)字符幀的傳輸時(shí)間(當(dāng)然這個(gè)時(shí)間取決于傳輸速率)。S7-200 CPU的自由口通信模式正好能夠支持上述字符幀格式。表表4-16 字符幀格式字符幀格式(2)報(bào)文幀格式: 協(xié)議的報(bào)文簡潔可靠,高效靈活。報(bào)文由一連串的

41、字符組成,協(xié)議中定義了它們的特定功能,如表4-17所示。 在 ADR 和 BCC 之間的數(shù)據(jù)字節(jié),稱為 USS 的凈數(shù)據(jù)。主站和從站交換的數(shù)據(jù)都包括在每條報(bào)文的凈數(shù)據(jù)區(qū)域內(nèi)。凈數(shù)據(jù)區(qū)由 PKW 區(qū)和 PZD 區(qū)組成,如表4-18所示。4.5.2 USS指令指令 STEP 7-Micro/WIN USS 指令庫提供14個(gè)子程序、3個(gè)中斷例行程序和8條指令,極大地簡化了 USS 通信的開發(fā)和實(shí)現(xiàn)。使用USS 指令庫必須滿足以下需求:(1)將端口0指定用于USS通訊。(2)在使用USS協(xié)議通訊的程序開發(fā)過程中,應(yīng)該使用帶兩個(gè)通訊端口的S7-200 CPU(3)USS指令影響與端口0上自由接口通訊相關(guān)

42、的所有SM位置。(4)USS指令的變量要求一個(gè)400個(gè)字節(jié)V內(nèi)存塊。(5)某些USS指令也要求有一個(gè)16個(gè)字節(jié)的通訊緩沖區(qū)。1USS_INIT 指令指令 使用 USS 庫指令前必須使用 USS_INIT 指令初始化 USS 通信參數(shù),如圖4-29所示。圖4-29 初始化 USS 通信指令表4-19 Active 參數(shù)設(shè)置2USS_CTRL 指令指令 USS_CTRL 指令用于對(duì)單個(gè)驅(qū)動(dòng)裝置進(jìn)行運(yùn)行控制,利用了USS協(xié)議中的 PZD 數(shù)據(jù)傳輸,控制和反饋信號(hào)更新較快,如圖4-30所示。 圖4-30 USS_CTRL 指令塊3USS 讀讀/寫參數(shù)指令寫參數(shù)指令 USS 指令庫中共有6種參數(shù)讀寫功能

43、塊,分別用于讀寫驅(qū)動(dòng)裝置中不同規(guī)格的參數(shù),如表4-20所示。 USS 參數(shù)讀寫指令采用與 USS_CTRL 功能塊不同的數(shù)據(jù)傳輸方式。表4-20 USS 讀/寫功能塊(1)讀參數(shù)指令)讀參數(shù)指令 圖4-31所示的程序段讀取實(shí)際的電動(dòng)機(jī)電流值(參數(shù)r0068)。由于此參數(shù)是一個(gè)實(shí)數(shù),因此選用實(shí)型參數(shù)讀功能塊。 參數(shù)讀寫指令必須與參數(shù)的類型配合。圖4-31 讀參數(shù)指令(2)寫參數(shù)指令)寫參數(shù)指令 寫參數(shù)指令的用法與讀參數(shù)指令類似,與讀參數(shù)指令的區(qū)別是參數(shù)是功能塊的輸入。(3)讀寫多個(gè)參數(shù))讀寫多個(gè)參數(shù) 在任一時(shí)刻 USS 主站內(nèi)只能有一個(gè)參數(shù)讀寫功能塊有效,否則會(huì)出錯(cuò)。因此如果需要讀寫多個(gè)參數(shù)(來

44、自一個(gè)或多個(gè)驅(qū)動(dòng)裝置),必須在編程時(shí)進(jìn)行讀寫指令之間的輪替處理。4.5.3 MM 440 變頻器的參數(shù)設(shè)置變頻器的參數(shù)設(shè)置 以下只涉及與 S7-200 控制器連接相關(guān)的參數(shù)。MM 440 的參數(shù)分為幾個(gè)訪問級(jí)別,以便于過濾不需要查看的部分。(1)控制源參數(shù)設(shè)置)控制源參數(shù)設(shè)置 控制源由參數(shù) P0700 設(shè)置,如表4-21所示:表表4-21 控制源參數(shù)設(shè)置控制源參數(shù)設(shè)置(2)設(shè)定源控制參數(shù)設(shè)置)設(shè)定源控制參數(shù)設(shè)置 設(shè)定值控制驅(qū)動(dòng)裝置的轉(zhuǎn)速/頻率等功能。 設(shè)置源由參數(shù) P1000 設(shè)置,如表4-22所示。 表表4-22 設(shè)定源控制參數(shù)設(shè)置設(shè)定源控制參數(shù)設(shè)置(3)USS通信控制的參數(shù)設(shè)置通信控制的參

45、數(shù)設(shè)置 控制源和設(shè)定源之間可以自由組合,根據(jù)工藝要求可以靈活選用。我們以控制源和設(shè)定源都來自 COM Link 上的USS通信為例,簡介USS通信的參數(shù)設(shè)置。 主要參數(shù)有: P0700 P1000 P2009 P2010P2011P2012 P2013P2014P09714.6 S7-200 PLC與與S7-300 PLC的的MPI通信通信 MPI(MultiPoint Interface)通信是當(dāng)通信速率要求不高、通信數(shù)據(jù)量不大時(shí),可以采用的一種簡單經(jīng)濟(jì)的通信方式。STEP 7S7-22xPG/PC19.2 或 187.5 KbS7-400M7-400S7-300M7-300S7-115U/

46、H, S5-135US5-155U/H, SIMATIC 505S5-95UOP圖4-32 MPI網(wǎng)絡(luò)結(jié)構(gòu)配置通過通過MPI實(shí)現(xiàn)實(shí)現(xiàn) PLC之間的通信有三種方式:之間的通信有三種方式:(1)全局?jǐn)?shù)據(jù)包通信方式(2)組態(tài)連接通信方式(3)無組態(tài)連接通信方式 S7-300 與 S7-200 的 MPI 通信,只能采用單邊編程方式,即 S7-200 作為服務(wù)器,無需任何編程。 S7-200與與S7-300的的MPI通信的硬件包括:通信的硬件包括:(1)S7-300 PLC(2)S7-200 PLC (3)PC Adapter 或 CP5611。(4)Profibus 總線連接器及電纜。 軟件要求包括

47、:軟件要求包括:(1)STEP7 V5.2或以上。(2)Step7-Micro/Win SP4或以上。 步驟如下:步驟如下:(1)在STEP7中新建 S7-300 項(xiàng)目,按硬件安裝順序和訂貨號(hào)依次插入機(jī)架、電源、CPU 進(jìn)行硬件組態(tài)。(2)在 Step7-Micro/Win 的系統(tǒng)塊中,設(shè)定 S7-200 的站地址為4,通信波特率187.5kbps。(3)將組態(tài)設(shè)置下載到S7-200 PLC中。(4)使用 Profibus 電纜連接 CPU314-2DP 的 X1 DP口 和CPU 224XP 的 DP0 口。 為實(shí)現(xiàn) S7-300 作為客戶機(jī),對(duì)服務(wù)器 S7-200 的數(shù)據(jù)讀寫,需要在STE

48、P 7中編寫兩個(gè)網(wǎng)絡(luò)如圖4-33和圖4-34所示。 圖圖4-33 X_PUT網(wǎng)絡(luò)網(wǎng)絡(luò) 圖4-34所示網(wǎng)絡(luò)2中,當(dāng)M1.5為1時(shí),S7-300會(huì)將S7-200的IB0的數(shù)值讀取到S7-300的MB7中。 將S7-300項(xiàng)目下載,運(yùn)行測試即可。圖4-34 X_GET 網(wǎng)絡(luò)4.7 Profibus-DP通信通信 Profibus符合國際標(biāo)準(zhǔn)IEC61158,是目前國際上通用的現(xiàn)場總線標(biāo)準(zhǔn)之一,并憑借其領(lǐng)先的技術(shù)特點(diǎn)、嚴(yán)格的認(rèn)證規(guī)范、眾多廠商的支持,逐漸發(fā)展為業(yè)界優(yōu)良的現(xiàn)場級(jí)通信網(wǎng)絡(luò)解決方案。Profibus已成為機(jī)械制造行業(yè)的標(biāo)準(zhǔn)。 PROFIBUS協(xié)議采用ISO/OSI模型的第一層、第二層和第七層

49、。從用戶角度看,PROFIBUS提供了三種通信協(xié)議類型:DP、FMS和PA。 另外,對(duì)于西門子PLC系統(tǒng),PROFIBUS提供了兩種更為優(yōu)化的通信方式:S7通信和S5兼容通信。(1)PROFIBUS-S7(PG/OP通信)(2)PROFIBUS-FDL(與s5兼容通信) PROFIBUS是一個(gè)令牌網(wǎng)絡(luò)結(jié)構(gòu),采用主從協(xié)議,一個(gè)網(wǎng)絡(luò)中有若干個(gè)被動(dòng)節(jié)點(diǎn)(從站),而它的邏輯令牌只含有一個(gè)主動(dòng)節(jié)點(diǎn)(主站),這樣的網(wǎng)絡(luò)為純主一從系統(tǒng)。Profibus-DP 網(wǎng)絡(luò)配置示意圖如圖10-35所示。圖圖4-35 Profibus-DP 網(wǎng)絡(luò)配置示意圖網(wǎng)絡(luò)配置示意圖 ET 200B CPU 315-2 DP PG/

50、PC CPU 400 CPU 224 EM 277 PROFIBUS-DP 圖圖4-36 S7-200 & S7-300 PROFIBUS-DP 通信網(wǎng)絡(luò)通信網(wǎng)絡(luò) S7-300與S7-200通過EM277進(jìn)行PROFIBUS DP通訊,只需在STEP7中組態(tài)S7-300和EM 277,S7-200端只需對(duì)應(yīng)存放將要進(jìn)行通訊的數(shù)據(jù),無需組態(tài)和編程。圖圖4-37 插入插入EM277從站從站4.8 工業(yè)以太網(wǎng)通信工業(yè)以太網(wǎng)通信4.8.1 工業(yè)以太網(wǎng)概述工業(yè)以太網(wǎng)概述1OSI參考模型 圖4-38 OSI參考模型 OSI參考模型的上三層通常稱為應(yīng)用層,用來處理用戶接口、數(shù)據(jù)格式和應(yīng)用程序的訪問;

51、下四層負(fù)責(zé)定義數(shù)據(jù)的物理傳輸介質(zhì)和網(wǎng)絡(luò)設(shè)備。如圖4-39和4-40所示。 圖4-39 對(duì)等層通信結(jié)圖4-39 對(duì)等層通信結(jié)2以太網(wǎng)技術(shù)以太網(wǎng)技術(shù)底層網(wǎng)絡(luò)由物理層和MAC層(介質(zhì)訪問子層)構(gòu)成。IEEE802.3 以“以太網(wǎng)”為技術(shù)原形,在MAC層上采用CSMA/CD(帶沖突檢測的載波偵聽多路存取控制協(xié)議) 的介質(zhì)訪問控制技術(shù)來處理通信中的沖突。在以太網(wǎng)模型的網(wǎng)絡(luò)層和傳輸層上常采用TCP/IP協(xié)議組。其中IP(Internet Protocol) 稱為網(wǎng)際通信協(xié)議,對(duì)應(yīng)網(wǎng)絡(luò)層;TCP(Transmission Control Protocol)稱為傳輸控制協(xié)議,對(duì)應(yīng)傳輸層,保證數(shù)據(jù)被可靠地傳送。

52、3. 工業(yè)以太網(wǎng)工業(yè)以太網(wǎng) 將以太網(wǎng)高速傳輸技術(shù)引入到工業(yè)控制領(lǐng)域,使得企業(yè)內(nèi)部互聯(lián)網(wǎng)(如Intrunet),外部互聯(lián)網(wǎng)(Extrunet)和國際互聯(lián)網(wǎng)(Internet)提供的技術(shù)和廣泛應(yīng)用已經(jīng)進(jìn)入生產(chǎn)和過程自動(dòng)化。工業(yè)以大網(wǎng)和傳統(tǒng)以太網(wǎng)的比較如表4-23所示。功能功能工業(yè)以太網(wǎng)設(shè)備工業(yè)以太網(wǎng)設(shè)備普通商用以太網(wǎng)設(shè)普通商用以太網(wǎng)設(shè)備備元器件和設(shè)元器件和設(shè)計(jì)計(jì)工業(yè)級(jí)工業(yè)級(jí)商用級(jí)商用級(jí)工作電壓工作電壓24VDC220VAC電源冗余電源冗余雙電源雙電源一般沒有一般沒有安裝方式安裝方式DIN導(dǎo)軌安裝導(dǎo)軌安裝桌面,機(jī)架桌面,機(jī)架工作溫度工作溫度0-60度度5-40度度冷卻方式冷卻方式無風(fēng)扇無風(fēng)扇有風(fēng)扇有風(fēng)扇電磁兼容性電磁兼容性標(biāo)準(zhǔn)標(biāo)準(zhǔn)EN50081-2(EMC,工業(yè)工業(yè))EN50082-2(EMC,工業(yè)工業(yè))EN50081-1(EMC,辦公室辦公室)EN50082-1(EMC,辦公室辦公室) 冗余環(huán)網(wǎng)切冗余環(huán)網(wǎng)切換時(shí)間換時(shí)間小于小于500ms30-90sMTFB(可靠(可靠性)性)至少至少10年年3-5年年要求備件供要求備件供貨時(shí)間貨時(shí)間10年年3-5年年表4-23 工業(yè)以大網(wǎng)和傳統(tǒng)以太網(wǎng)的比較工業(yè)以太

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論