一、試驗(yàn)設(shè)備的連接
準(zhǔn)備的實(shí)驗(yàn)設(shè)備有:S7-200 SMART型PLC、M-1001和M-2101模塊、SDS-1001轉(zhuǎn)換器、K型熱電偶以及一個直流電源。
我們首先說明各設(shè)備是如何連接的,將直流電源連接到PLC的24V電源接口,正極接L+,負(fù)極接M。因?yàn)?a target="_blank">RS485端口是集成在PLC的九針超小D型連接器上的,所以我們制作了一個連接器方便設(shè)備接線。具體的針腳分配,大家可以在STEP 7 SMART軟件的在線幫助文檔中的連接器引腳分配章節(jié)中看到。連接器的紅線接M2101模塊的485-A信號,黑線接485-B信號。因?yàn)橛?a target="_blank">以太網(wǎng)電纜連接PLC和電腦,所以需要調(diào)整電腦的IP地址,它的具體操作我們之后說明,現(xiàn)在只要將電纜插入網(wǎng)口即可。此次實(shí)驗(yàn)我們依然使用SDS-1001為采集模塊供電,將它們的+Vs、GND端連接就可以了。最后將K型熱電偶接入M2101模塊中的DI 1端口。為模塊通電,這樣設(shè)備接線就完成了。
二、使用Smart軟件與模塊建立連接
S7-200 SMART型PLC所用的編程軟件是Smart軟件,這個軟件是免費(fèi)使用的,大家可以到西門子的官網(wǎng)下載。
打開軟件,在文件選項中打開范例M2101,此時設(shè)備正處于未連接的狀態(tài),雙擊主要窗口中的通信選項,在出現(xiàn)的的對話框中點(diǎn)擊查找CPU,就能看到PLC的IP地址。我們可以點(diǎn)擊旁邊的閃爍指示燈,驗(yàn)證是否找到了CPU。如果PLC的指示燈交替閃爍,就說明我們查找CPU已經(jīng)成功。
下一步的操作是設(shè)置電腦的IP地址。進(jìn)入網(wǎng)絡(luò)和Internet設(shè)置界面,進(jìn)入網(wǎng)絡(luò)和共享中心。
選項點(diǎn)擊以太網(wǎng)。
選擇屬性。
在彈出的窗口中找到Internet協(xié)議版本4(TCP/IPv4)項目,點(diǎn)擊屬性。
選擇使用下面的IP地址,輸入相應(yīng)的IP地址:192.168.2.111,子網(wǎng)掩碼輸入225.225.225.0,默認(rèn)網(wǎng)關(guān)是:192.168.2.1。點(diǎn)擊確定。
回到軟件頁面,如果成功的話,軟件會顯示已連接。
三、PLC范例程序說明以及實(shí)驗(yàn)
我們以程序2101為例,解釋一下它的內(nèi)容。在程序段1中的SM是PLC中的特殊標(biāo)志繼電器,SM0.0表示始終接通,與其連接的參數(shù)EN在輸入接通(TURE)時,每次掃描均會執(zhí)行該指令;
SM0.5表示提供一個周期為1秒鐘的時鐘脈沖,0.5秒為1,0.5秒為0,與它連接的參數(shù)First我們之后說明。
特殊寄存器(SM)的其它地址位,大家可以到在線幫助文檔中查看。指令MBUS_CTRL,可以在主要窗口的庫文件中的Modbus RTU Master(v2.0)中找到,右鍵選擇幫助就可以看到它的說明文檔。需要聲明的是:在程序中,我們將PLC當(dāng)作主站,M模塊(如:M-2101)則作為從站使用。閱讀說明內(nèi)容我們知道MBUS_CTRL是程序在執(zhí)行MBUS_MSG指令前必須調(diào)用的指令。
參數(shù)“模式”(Mode)用于選擇通信協(xié)議,我們輸入的是SM0.0,觸點(diǎn)為常閉狀態(tài),所以輸入值是1,意思是啟用Modbus協(xié)議。參數(shù)“波特率”(Baud)的設(shè)置值要和從站設(shè)備的波特率一致才可以得到正確信息,所以輸入值為M模塊的默認(rèn)波特率:9600。參數(shù)“奇偶校驗(yàn)”(Parity)的設(shè)置應(yīng)與從站設(shè)備的奇偶校驗(yàn)相同,從站默認(rèn)為偶校驗(yàn),以數(shù)值2表示。參數(shù)“Port”是設(shè)置物理通信端口,實(shí)驗(yàn)中使用的是PLC中集成的RS-485接口,所以需要輸入0值。參數(shù)“超時”(Timeout)為等待從站做出響應(yīng)的毫秒數(shù),范例中設(shè)置的是典型值1000ms。
所以指令Mbus_CTRL的作用是初始化主站,使得主從站設(shè)備的參數(shù)一致,兩者可以進(jìn)行正常的通信。
下面我們來介紹指令MBUS_MSG,它的作用是啟動對Modbus從站的請求并處理響應(yīng)。參數(shù)“First”是當(dāng)主站有新請求發(fā)送時,F(xiàn)irst通過邊沿檢測元素(例如是上升沿),將導(dǎo)致程序發(fā)送一次,所以我們?yōu)榇藚?shù)設(shè)置的是SM0.5。參數(shù)“從站”(Slave)是Modbus從站設(shè)備的地址,M系列模塊的默認(rèn)地址為1。參數(shù)“RW”是設(shè)置讀取或?qū)懭胄畔ⅲ?表示讀取,1表示寫入。參數(shù)“地址”(Addr)是起始Modbus地址,范例中寫入的數(shù)值就是我們在用戶手冊中給出的寄存器地址:30101。參數(shù)“計數(shù)”(Count)用于分配要在該請求中讀取或?qū)懭氲臄?shù)據(jù)元素數(shù),也就是根據(jù)地址參數(shù)的輸入值向后延伸的個數(shù)。
打開范例M2100的用戶手冊,找到M2101遠(yuǎn)程IO模塊Modbus映射表就可以看到地址、通道、屬性等內(nèi)容。
如我們現(xiàn)在打開的這個范例程序,它是要操作從熱電偶輸入寄存器30101到30108這8個寄存器,所以對Count的輸入值為8。參數(shù)“DataPtr”是間接地址指針,指向CPU中與讀/寫請求相關(guān)的數(shù)據(jù)的V存儲器,指針必須是VB類型。
這里的V、VB、VW是V存儲器中不同類型數(shù)據(jù)的表達(dá)方式:V表示位數(shù)據(jù),VB表示字節(jié)數(shù)據(jù),VW表示字?jǐn)?shù)據(jù),一個字由兩個字節(jié)構(gòu)成,一個字節(jié)則有8位。在范例程序中,我們使用VB數(shù)據(jù)類型存儲從模塊讀到的值,然后用VW數(shù)據(jù)類型表示出來。進(jìn)行這樣的數(shù)據(jù)操作是因?yàn)?,?dāng)PLC發(fā)出讀取請求時,采集模塊返回的值是16位的整型數(shù)據(jù),需要用兩個VB類型的數(shù)據(jù)表示,而一個VW數(shù)據(jù)類型就表示兩個字節(jié),剛好可以表示模塊返回的數(shù)據(jù)。
我們可以在狀態(tài)圖表中驗(yàn)證一下。調(diào)出圖表窗口,下載程序,運(yùn)行CPU,開啟圖表的監(jiān)視狀態(tài),因?yàn)槲覀冎粸槟K連接了一個溫度傳感器,所以在狀態(tài)圖表中只有第2行顯示出實(shí)際溫度值,當(dāng)我們提高環(huán)境溫度,第2行的當(dāng)前值也會隨之改變。其它沒有接入溫度傳感器的端口,其寄存器的返回值是-2731。
接著驗(yàn)證我們剛才提到的V存儲器的數(shù)據(jù)類型,在狀態(tài)圖表中輸入VB1000,按回車鍵,就可以按順序添加地址。將它們的格式更改為十六進(jìn)制,VB1000為F5,VB1001為55,而VW1000是它倆的集合F555。所以說兩個VB數(shù)據(jù)類型,構(gòu)成一個VW數(shù)據(jù)類型。
更換M1001采集模塊。
接下來我們打開范例M1001DI,它可以讀取模塊上的DI(離散量輸入)的狀態(tài)。連接設(shè)備后,打開狀態(tài)圖表的實(shí)時數(shù)值監(jiān)控,當(dāng)前值為1。當(dāng)我們將DI 0接地,就會看到當(dāng)前值變?yōu)?,其它的DI端口也是一樣。這里的地址是位格式的,因?yàn)槲覀冎恍枰晃坏臄?shù)據(jù)就可以表示端口當(dāng)前所處的狀態(tài)(閉合或是斷開)。
打開范例M1001DO,此范例可以控制DO(繼電器)的狀態(tài)。建立通信后,下載程序到CPU,運(yùn)行CPU,打開監(jiān)控按鈕,可以看到此時的繼電器都處于關(guān)閉狀態(tài)。在新值中輸入1,點(diǎn)擊圖表中的寫入按鈕,就會看到當(dāng)前值的改變而且M模塊的繼電器也會動作到開啟狀態(tài)。
這兩個范例程序的寄存器地址大家可以在用戶手冊M1000的M1001遠(yuǎn)程IO模塊Modbus映射表中找到。
以上就是模塊與PLC連接的相關(guān)內(nèi)容。文檔中使用的范例程序及用戶手冊均可以在官網(wǎng)下載。文章視頻版的內(nèi)容點(diǎn)擊如下鏈接跳轉(zhuǎn):M系列模塊編程操作與PLC。
如果對于文章有任何問題都可以在評論區(qū)指出,也可以通過公眾號“思邁科華Smacq”直接聯(lián)系我們。希望您可以點(diǎn)贊、收藏、轉(zhuǎn)發(fā)。
再見。
審核編輯 黃宇
-
plc
+關(guān)注
關(guān)注
5039文章
14272瀏覽量
481583 -
采集模塊
+關(guān)注
關(guān)注
0文章
160瀏覽量
9944 -
MODBUS RTU
+關(guān)注
關(guān)注
0文章
106瀏覽量
3587
發(fā)布評論請先 登錄
塔訊 Modbus RTU 轉(zhuǎn) Modbus TCP 在污水處理廠 PLC 數(shù)據(jù)采集中的配置案例

從協(xié)議沖突到生產(chǎn)力爆發(fā):EtherCAT轉(zhuǎn)MODBUS RTU網(wǎng)關(guān)實(shí)戰(zhàn)全解

當(dāng)控制器遇上“協(xié)議外交官”:CC\\-Link IE轉(zhuǎn)Modbus RTU的能源數(shù)據(jù)握手
工程師福音!CCLinkie轉(zhuǎn)Modbus RTU讓粉塵監(jiān)測不再“揚(yáng)灰”
CC\\-Link IE轉(zhuǎn)Modbus RTU:讓伺服驅(qū)動輕松“入網(wǎng)”的秘籍
一觸即達(dá):CCLink IE遇見Modbus RTU,解鎖智能電表“數(shù)據(jù)超車道”
DeviceNet轉(zhuǎn)Modbus RTU協(xié)議轉(zhuǎn)換網(wǎng)關(guān)在石油開采行業(yè)的應(yīng)用
基于 DeviceNet 轉(zhuǎn) MODBUS RTU 協(xié)議的施耐德 PLC 與 ABB 電機(jī)驅(qū)動器倉儲堆垛機(jī)的定位控制優(yōu)化方案?
EtherNet/IP轉(zhuǎn)Modbus網(wǎng)關(guān)模塊在羅克韋爾PLC與Modbus上位機(jī)協(xié)議轉(zhuǎn)換通訊中的實(shí)戰(zhàn)案例

EtherNet/IP轉(zhuǎn)Modbus借協(xié)議轉(zhuǎn)換網(wǎng)關(guān)模塊打通羅克韋爾PLC與上位機(jī)鏈路

安科瑞AWT100-DP 無線通訊終端,支持串口MODBUS RTU協(xié)議

評論