西門子S7-1200與G120變頻器的Modbus RTU通訊
發(fā)布日期:
2023-05-18

一、S7-1200與變頻器的連接

1.1本例程的系統(tǒng)配置

本例程中用到的硬件:S7-1200(CPU 1214C),、G120 ( 控制單元CU240B-2 )、一臺裝有TIA Portal軟件的PC機(jī),、CM1241模塊,、電源模塊、標(biāo)準(zhǔn)RJ45網(wǎng)線,。

1.2 硬件連接

1.2.1硬件連線

本例程中的硬件間的結(jié)構(gòu)如下圖所示:

西門子S7-1200與G120變頻器的Modbus RTU通訊

圖1-1

1.2.2 PLC與控制單元通信端口之間的連接

用電纜將CU240B-2 Modbus 通訊接口與PLC通信模塊連接起來,,如下圖所示。

西門子S7-1200與G120變頻器的Modbus RTU通訊

圖1-2

二,、變頻器設(shè)置

2.1 地址設(shè)置

可以通過控制單元上的地址開關(guān),,也可以通過參數(shù) P2021 或 STARTER 中“Control Unit / Communication / Field bus”頁面來確定變頻器的 Modbus-RTU 地址。

只有所有地址開關(guān)都設(shè)為“OFF”(0)時,,P2021 或 STARTER 中的設(shè)置才有效,。否則,Modbus-RTU 地址為地址開關(guān)所設(shè)置的地址,。

2.2 參數(shù)設(shè)置

除了設(shè)置地址之外,,還需要對其他一些變頻器的通信參數(shù)進(jìn)行設(shè)置,才可以進(jìn)行MODBUS通信,。具體需要設(shè)置的參數(shù)如表2-1所示:

西門子S7-1200與G120變頻器的Modbus RTU通訊

表2-1

三,、PLC組態(tài)和編程

3.1 創(chuàng)建項目

首先創(chuàng)建一個項目,點(diǎn)擊創(chuàng)建新項目,,輸入名稱,,路徑等信息。

3.2 硬件組態(tài)

按照新手上路的提示首先選擇設(shè)備和網(wǎng)絡(luò),,進(jìn)行硬件組態(tài),。

點(diǎn)擊添加新設(shè)備,添加相應(yīng)型號的設(shè)備,,修改設(shè)備名稱,,選擇版本號,點(diǎn)擊添加,。

在彈出的設(shè)備與網(wǎng)絡(luò)的右側(cè)硬件目錄中,,找到通信模塊-點(diǎn)到點(diǎn)-CM1241(RS485),,加入CM1241通信模塊。

雙擊設(shè)備視圖中的RS485端口,,設(shè)置端口組態(tài),。

在左側(cè)的項目樹-設(shè)備-在線訪問-Broadcom NetXtreme。,。,。(本例程PC機(jī)所使用的網(wǎng)卡),雙擊更新可使用的設(shè)備,,搜索到連接的設(shè)備,。

3.3 編程

在左邊的設(shè)備中找到S7-1200/程序塊,打開主程序(Main[OB1]),。在右邊的指令欄里選擇通信/通信處理器/MODBUS,,添加MB_COMM_LOAD和MB_MASTER。

在彈出的調(diào)用選項中,,定義一個背景數(shù)據(jù)塊,。

使用同樣的方法,再加入一個MB_MASTER模塊,,同樣定義背景數(shù)據(jù)塊,。

分別設(shè)置MB_COMM_LOAD和MB_MASTER模塊。

其中,,MB_COMM_LOAD與MB_MASTER指令的參數(shù)說明,,請參考表3-1,表3-2,。

西門子S7-1200與G120變頻器的Modbus RTU通訊

表3-1 MB_COMM_LOAD指令的參數(shù)

西門子S7-1200與G120變頻器的Modbus RTU通訊

表3-2 MB_MASTER指令的參數(shù)

3.4 下載

編譯,,確認(rèn)無誤后,點(diǎn)擊下載,。在彈出的“擴(kuò)展的下載到設(shè)備”中,,選擇PG/PC接口類型,以及PG/PC接口,。選擇設(shè)備,,并點(diǎn)擊下載。

在彈出的下載預(yù)覽中,,查看將要覆蓋的內(nèi)容,,選擇統(tǒng)一下載,并點(diǎn)擊下載,。

3.5 監(jiān)視

點(diǎn)擊轉(zhuǎn)到在線,,并點(diǎn)擊啟動監(jiān)視,此時即可通過PLC給變頻器進(jìn)行MODBUS通信,。

四,、MODBUS通信控制變頻器

4.1 使用MODBUS通信控制變頻器啟停

如下圖所示,,打開Tag_1,使能MB_MASTER,。使能完成之后,,關(guān)閉Tag_1。

西門子S7-1200與G120變頻器的Modbus RTU通訊

圖4-1

如圖4-2,,將MODE改為1(即寫入數(shù)據(jù)),,DATA_ADDR寫入40101(主設(shè)定值寄存器號),DATA_PTR寫入1000(給定值的寫入值),。然后REQ使用一個脈沖沿來發(fā)送給定值,。此時,變頻器的給定值已經(jīng)改為1000,。

然后將DATA_ADDR寫入40100(控制字寄存器號),,DATA_PTR寫入047E(停車),然后REQ使用一個脈沖沿來發(fā)送停車命令,。再將DATA_ADDR寫入40100(控制字寄存器號),DATA_PTR寫入047F(啟動),,然后REQ使用一個脈沖沿來發(fā)送啟動命令,。

西門子S7-1200與G120變頻器的Modbus RTU通訊

圖4-2

注意:

MB_COMM_LOAD使能完成之后,一定要將Tag_1關(guān)閉,,否則MB_MASTER模塊將無法使用,。

變頻器啟動位需要一個上升沿,所以先給其停車命令,,然后發(fā)送啟動命令,,利用上升沿來啟動變頻器。

4.2 使用MODBUS通信修改和查看變頻器參數(shù)

現(xiàn)在,,以參數(shù)P1120加速時間為例,,對參數(shù)的修改和查看進(jìn)行講解。

首先,,進(jìn)行讀參數(shù)的演示,。將MODE輸入改為0(即讀參數(shù)模式),將DATA_ADDR中寫入40322(即加速時間的寄存器號),,然后REQ使用脈沖沿來發(fā)送一個讀請求,。此時,可以接收到參數(shù)P1120中的數(shù)據(jù)位1000(即加速時間為10s),。

然后進(jìn)行寫參數(shù):將MODE輸入改為1(即寫參數(shù)模式),,將DATA_ADDR中寫入40322(即加速時間的寄存器號),在DATA_PTR中寫入500,,然后REQ使用脈沖沿來發(fā)送一個寫請求,。此時,,已經(jīng)將500寫入了參數(shù)P1120之中,加速時間改為5s,。

控制單元中的 Modbus 寄存器和對應(yīng)的參數(shù)如下表所示:

西門子S7-1200與G120變頻器的Modbus RTU通訊

西門子S7-1200與G120變頻器的Modbus RTU通訊

表4-1 Modbus 寄存器和對應(yīng)的參數(shù)

聲明:部分內(nèi)容來源于網(wǎng)絡(luò),,如侵權(quán)請后臺留言聯(lián)系刪除。