西門(mén)子模塊6ES7417-4XT05-0AB0
MicroWin功能塊參數(shù)說(shuō)明:
(1) SIWAREX MS需要SIMATIC CPU的輸入和輸出區(qū)域中的4個(gè)字來(lái)進(jìn)行操作,。參數(shù)“First_AIW,、Second_AIW、Third_AIW和Fourth_AIW”及“First_AQW,、Second_AQW,、Third_AQW和Fourth_AQW”必須匹配實(shí)際模塊地址。如下圖所示:

(2) FirstVB_Pointer:為了能夠與SIWAREX模塊進(jìn)行通信,,每臺(tái)秤需要用20字節(jié)的變量存儲(chǔ)區(qū),,該范圍的起始字節(jié)通過(guò)參數(shù)“FirstVB_POINTER”來(lái)傳送,采用指針格式,, 如&VB0,。
變量具體含義參見(jiàn)下表:

(3) Lib_Error_Bits:存儲(chǔ)錯(cuò)誤狀態(tài);
6.
建立符號(hào)表:

7.
,,建立變量表,,然后 ,在線查看和修改PLC變量
步:零點(diǎn)標(biāo)定
空秤時(shí)顯示毛重為1.85kg (注:默認(rèn)單位為kg,,小數(shù)點(diǎn)位數(shù)為2)

寫(xiě)入命令代碼3,,并將觸發(fā)位置1,
按鈕,,進(jìn)行零點(diǎn)標(biāo)定,,將當(dāng)前重量標(biāo)為0,,如下所示:

第二步:砝碼標(biāo)定
將一個(gè)20kg的砝碼傳感器上,然后寫(xiě)入命令代碼4,,并將觸發(fā)位置1

命令執(zhí)行完畢后,,值為2000,即20kg

注:(1)務(wù)必保證標(biāo)定砝碼的重量大于所有稱(chēng)重傳感器的總額定負(fù)荷的5 %,,否則命令4無(wú)法執(zhí)行,;
(2)標(biāo)定砝碼的重量可以通過(guò)SIWATOOL MS進(jìn)行修改,默認(rèn)值為20kg

第三步:去皮操作
當(dāng)前毛重為6.59kg,,寫(xiě)入命令代碼22,,并將觸發(fā)位置1,如下所示

命令執(zhí)行完畢后,,毛重值變?yōu)?kg

注:(1)如果采用預(yù)設(shè)皮重的,,那么可以在VW14中輸入預(yù)設(shè)的皮重值,然后執(zhí)行命令26,;或者在SIWATOOL MSDR15中輸入預(yù)設(shè)皮重,,然后執(zhí)行命令24

第四步:毛重、皮重和凈重的顯示
西門(mén)子模塊6ES7417-4XT05-0AB0
下面的步驟將具體介紹此功能實(shí)現(xiàn)的步驟:
①,、在PLC中編寫(xiě)發(fā)送程序,。在項(xiàng)目管理視圖下雙擊“Device”下的程序塊下的Main(OB1),打開(kāi)OB1,,在主程序中調(diào)用RCV_PTP功能塊如下圖所示:(注:RCV_PTP在指令庫(kù)下的擴(kuò)展指令中通訊指令下)

圖15: 調(diào)用發(fā)送功能塊
要對(duì)RCV_PTP賦值參數(shù),,首先需要?jiǎng)?chuàng)建RCV_PTP的背景數(shù)據(jù)塊和發(fā)送緩沖數(shù)據(jù)塊 ,雙擊“Devices”——> “PLC_1”——>“Program Block ”——“Add new block”,,在彈出的串口命名DB_RCV_PTP,選擇DB塊,,在Type后選擇“RCV_PTP(SFB114)”

圖16: 創(chuàng)建接收功能塊的背景數(shù)據(jù)塊
插入背景DB后,,再插入接收緩沖DB塊,重復(fù)上面的步驟,,只是在選擇DB類(lèi)型為“bbbbbb DB”,,并去掉“Symbolic access only”選項(xiàng)勾(這樣可以對(duì)該DB塊進(jìn)行直接地址訪問(wèn)),并取名該DB塊為DB_RCV_BUFF,。建好這兩個(gè)DB塊后,,雙擊打開(kāi)DB_RCV_BUFF定義接收緩沖區(qū)數(shù)據(jù)的類(lèi)型,如下圖所示:

圖17:定義接收緩沖區(qū)
定義完接收緩沖區(qū)后,,接下來(lái)就可以對(duì)RCV_PTP賦值參數(shù),,賦值參數(shù)后如下圖:

圖18:接收編程
在上面的編程塊里需要注意的是,在接收緩沖區(qū)時(shí),。字符的開(kāi)始地址是從第二個(gè)字節(jié),,而不是零字節(jié)開(kāi)始,,即是P#DB2.DBX2.0 Byte10 而不是P#DB2.DBX0.0 Byte10,原因是由于S7-1200對(duì)字符串的存放的格式造成的,,S7-1200對(duì)字符串的前兩個(gè)字節(jié)的定義第一字節(jié)是最大的字符長(zhǎng)度,,第二個(gè)字節(jié)是實(shí)際的字符長(zhǎng)度。接下來(lái)才是存放實(shí)際字符,。如下圖:

圖19:bbbbbb存儲(chǔ)格式
上面就完成了程序的編寫(xiě),,對(duì)項(xiàng)目進(jìn)行編譯;右擊PLC_1項(xiàng)目在彈出的菜單里選擇“Complies ALL”選項(xiàng),,這樣就對(duì)硬件與軟件進(jìn)行編譯,,如下圖:

圖20:編譯項(xiàng)目
編譯且沒(méi)有錯(cuò)誤后就可以下載程序到PLC中,同樣右擊PLC_1項(xiàng)目,,在彈出的菜單選擇“Download to Device”,。
②、用串叉線連接S7-1200的串口與計(jì)算機(jī)的串口,,打開(kāi)計(jì)算機(jī)的超級(jí)終端程序,,并設(shè)置硬件端口參數(shù)如下圖:

圖21:超級(jí)終端的端口設(shè)置
在桌面上新建文本文件,打開(kāi)此文本文件在里面輸入“gfdcba”,,如下圖:

圖22:在文本文件下輸入要發(fā)送的字符串
③,、打開(kāi)變量監(jiān)控表,強(qiáng)制M0.0,,使能接收,。然后, 在超級(jí)終端里,,選擇菜單“Transfer”下的“Send Text file”,,在打開(kāi)的窗口里找到桌面 上的文本文件。

圖23:通過(guò)超級(jí)終端發(fā)送數(shù)據(jù)
打開(kāi)DB_RCV_BUFF數(shù)據(jù)塊,,在線查看接收到的數(shù)據(jù),,如下圖:

圖23:接收緩沖區(qū)中接收到的數(shù)據(jù)
通過(guò)上面的例子實(shí)現(xiàn)了簡(jiǎn)單的應(yīng)用,在實(shí)際的應(yīng)用過(guò)程中,,需要按第三方設(shè)備的協(xié)議進(jìn)行編寫(xiě)S7-1200的程序,。
西門(mén)子S7-1200 緊湊型PLC在當(dāng)前的市場(chǎng)中有著廣泛的應(yīng)用,作為經(jīng)常與SENTRON PAC3200系列儀表共同使用的PLC,,其Modbus通信協(xié)議的使用一直在市場(chǎng)上有著非常廣泛的應(yīng)用,。本文將主要介紹如何使用Modbus 通信協(xié)議來(lái)實(shí)現(xiàn)S7-1200與SENTRON PAC3200儀表的通信。
1.西門(mén)子SENTRON PAC3200 儀表介紹
西門(mén)子的SENTRON PAC3200多功能電力儀表是一種用于面板安裝的儀表,,可用來(lái)計(jì)量,、顯示配電系統(tǒng)多達(dá)50個(gè)測(cè)量變量,例如電壓,、電流,、功率,、有功功率、頻率以及最大值,、最小值和平均值,。中文大屏幕圖形液晶顯示使用戶可遠(yuǎn)距離讀表。PAC3200儀表如下圖所示,。

圖1:儀表PAC3200
1.1 SENTRON PAC3200 MODBUS RTU通信擴(kuò)展模塊介紹
PAC3200多功能儀表的本體沒(méi)有MODBUS RTU通信的功能,,如果希望將PAC3200作為從站連接到MODBUS RTU網(wǎng)絡(luò)與主站進(jìn)行數(shù)據(jù)交換必須選用外部擴(kuò)展通信模塊――SENTRON PAC RS485模塊。(注意: PAC RS485 擴(kuò)展模塊使用錯(cuò)誤的固件版本時(shí)將不能工作
SENTRON PAC3200 電力監(jiān)測(cè)設(shè)備的固件版本低應(yīng)為FWV2.0X,。 較早的版本不支持
PAC RS485 擴(kuò)展模塊,。)該擴(kuò)展模塊具有下列性能特點(diǎn):
• 可通過(guò)設(shè)備正面設(shè)置參數(shù)
• 即插即用
• 支持 4.8/9.6/19.2 以及 38.4 KBd 通信傳輸速率
• 通過(guò)6針螺釘端子接線
• 不需要外接輔助電源
• 通過(guò)模塊上的 LED 顯示狀態(tài)
PAC3200 MODBUS RTU通信擴(kuò)展模塊如下圖所示。
(1) 通信接線端子
(2) 安裝螺釘
(3) 通風(fēng)口
(4) LED

圖2:PAC3200 MODBUS RTU 通信模塊
1.2 SENTRON PAC3200 MODBUS RTU通信擴(kuò)展模塊的接線
SENTRON PAC3200 MODBUS RTU通信擴(kuò)展模塊的接線如下圖所示

圖3:PAC3200 MODBUS RTU 通信模塊的接線圖
1. 將電纜連接到端子排上相應(yīng)的螺栓端子,。
2. 將電纜屏蔽層的一端連接到保護(hù)性接地PE,。
3. 將信號(hào)公共端連接到保護(hù)性接地。 這樣也使得擴(kuò)展模塊接地,。
4. 在第一個(gè)和最后一個(gè)通信節(jié)點(diǎn)上,,在正信號(hào)和負(fù)信號(hào)之間接入總線端接電阻器。 為
此,,PAC RS485 擴(kuò)展模塊中集成了一個(gè)120 Ohm 的總線端接電阻器,。 如果需要其它
電阻值,請(qǐng)使用外部總線端接電阻器,。 將它連接到第一個(gè)和最后一個(gè)通信節(jié)點(diǎn),。
1.3 SENTRON PAC3200 MODBUS RTU通信的方式
1.SENTRON PAC3200設(shè)備支持的功能碼如下:
FC | 功能碼 | 數(shù)據(jù)類(lèi)型 | 訪問(wèn)權(quán)限 |
02 | 輸入的狀態(tài) | 位 | 輸入 | R |
03 | 輸出寄存器 | 寄存器 | 輸出 | R |
04 | 輸入寄存器 | 寄存器 | 輸入 | R |
06 | 單一輸出寄存器 | 寄存器 | 輸出 | RW |
10 | 多個(gè)輸出寄存器 | 寄存器 | - | RW |
2B | 設(shè)備識(shí)別 | - | - | R |
表1: SENTRON PAC3200設(shè)備支持的功能碼
R—可讀
RW—可讀寫(xiě)
2.SENTRON PAC3200 MODBUS RTU 與S7-1200進(jìn)行通信
S7-1200 PLC可以通過(guò)功能代碼0x03 和0x04 訪問(wèn)儀表PAC3200的被測(cè)量數(shù)據(jù)。
下表是一些PAC3200 被測(cè)量的數(shù)據(jù),。

表2: SENTRON PAC3200設(shè)備的一些被測(cè)量數(shù)據(jù)
2.西門(mén)子SENTRON PAC3200 儀表與S7-1200進(jìn)行通信的接線圖
下圖是SENTRON PAC3200儀表與S7-1200進(jìn)行MODBUS RTU 通信的接線圖,。

圖4:S7-1200與PAC3200進(jìn)行MODBUS RTU 進(jìn)行通信的接線圖
3.硬件需求
S7-1200 PLC目前有3種類(lèi)型的CPU:
1)S7-1211C CPU。
2)S7-1212C CPU,。
3)S7-1214C CPU,。
這三種類(lèi)型的CPU都可以使用MODBUS通信協(xié)議通過(guò)通信模塊CM1241 RS485來(lái)實(shí)現(xiàn)S7-1200與PAC3200儀表的通信。
本例中使用的PLC硬件為:
1)PM1207電源 ( 6EP1 332-1SH71 )
2) S7-1214C ( 6ES7 214 -1BE30 -0XB0 )
3) CM1241 RS485 ( 6ES7 241 -1CH30 -0XB0 )
4) 模擬器 ( 6ES7 274 -1XH30 -0XA0 )
本例中使用的PAC3200儀表硬件為:
1) PAC3200 (7KM2112-0BA00-3AA0)
2) MODBUS RTU 模塊 (7KM9300-0AB00-0AA0)
3) MODBUS 通信電纜 ( 6XV1830-0EH10)
3.軟件需求
1) 編程軟件 Step7 Basic V10.5 ( 6ES7 822-0AA0-0YA0)
4.S7-1200 MODBUS RTU的通信方式
S7-1200作為MODBUS RTU主站的通信方式是由DATA_ADDR 和 MODE 參數(shù)來(lái)選擇 Modbus 功能類(lèi)型的,。
DATA_ADDR(從站中的起始 Modbus 地址): 要在 Modbus 從站中訪問(wèn)的數(shù)據(jù)的起始地址。MB_MASTER 使用 MODE 輸入而非功能代碼輸入,。 MODE 和 Modbus 地址范圍一起確定實(shí)際 Modbus 消息中使用的功能代碼,。
下表列出了 MB_MASTER 參數(shù) MODE、Modbus 功能代碼和 Modbus 地址范圍之間的對(duì)應(yīng)關(guān)系,。


表3: MB_MASTER的MODBUS 功能
5.S7-1200 與PAC3200 進(jìn)行MODBUS RTU的通信組態(tài)
我們通過(guò)一個(gè)實(shí)例來(lái)介紹如何在Step7 Basic V10.5 中組態(tài)S7-1214C 和PAC3200的MODBUS RTU通信,。
5. 1 PLC 硬件組態(tài)
首先在Step7 Basic V10.5中建立一個(gè)項(xiàng)目,如圖1所示,。

圖5: 新建S7 1200項(xiàng)目
在硬件配置中,,添加CPU1214C和通信模塊CM1241 RS485模塊,,如圖2所示。

圖6: S7 1200硬件配置
在CPU的屬性中,,設(shè)置以太網(wǎng)的IP地址,,建立PG與PLC的連接,如下圖所示,。

圖7: S7 1200 IP地址的設(shè)置
5. 2 PAC3200參數(shù)設(shè)置
在SENTRON PAC 電力監(jiān)測(cè)設(shè)備的主菜單中,,調(diào)用“設(shè)置”>“RS485 模塊”,出現(xiàn)下面的設(shè)置畫(huà)面:

圖8: PAC3200 MODBUS RTU 通信參數(shù)的設(shè)置
1. 地址的設(shè)置范圍:1-247,。本例中設(shè)為8,。
2. 波特率的設(shè)置范圍:4800,9600,,19200,,38400。本例中設(shè)為38400,。
3. 設(shè)置外部通信的數(shù)據(jù)位,、奇偶校驗(yàn)位及停止位:
• 8E1=8 個(gè)數(shù)據(jù)位,奇偶校驗(yàn)位為even,, 1 個(gè)停止位
• 8O1=8 個(gè)數(shù)據(jù)位,,奇偶校驗(yàn)位為odd, 1 個(gè)停止位
• 8N2=8 個(gè)數(shù)據(jù)位,,無(wú)奇偶校驗(yàn)位,, 2 個(gè)停止位
• 8N1=8 個(gè)數(shù)據(jù)位,無(wú)奇偶校驗(yàn)位,, 1 個(gè)停止位
本例中根據(jù)S7-1200 MODBUS MASTER 的參數(shù)設(shè)置為 8N1,。
4. 協(xié)議的設(shè)置:可選項(xiàng)為:SEABUS,MODBUS RTU。
本例中設(shè)為MODBUS RTU,。
5.響應(yīng)時(shí)間的設(shè)置:注意與波特率的設(shè)置相匹配,,本例中設(shè)為10mS。
