中國自動化學會專家谘詢工作委員會指定宣傳媒體
新聞詳情

艾默生 PLC在變頻器網絡控製中的通信程序設計

http://www.kadhoai.com.cn 2026-04-07 22:20:27 來源:艾默生工業自動化

 隨著PLC技術的不斷發展,越來越顯示其強大的核心控製功能,PLC和其他設備之間的連接已經從比較煩瑣的傳統I/O方fang式shi向xiang越yue來lai越yue受shou歡huan迎ying的de簡jian潔jie先xian進jin的de通tong信xin方fang式shi過guo渡du,不bu僅jin為wei設she計ji者zhe節jie省sheng了le大da量liang的de硬ying件jian成cheng本ben,更geng能neng為wei遠yuan程cheng控kong製zhi,組zu網wang提ti供gong了le可ke能neng,使shi控kong製zhi係xi統tong更geng加jia無wu縫feng地di融rong為wei一yi體ti。

本文主要通過艾默生PLC和多台變頻器組網通信(以MODBUS協議方式)為例,說明PLC和多台變頻器網絡控製的通信程序的設計方法。

一、 MODBUS協議簡要介紹

Modbus協議由美國著名的MODICON公司提出,通過此協議,控製器相互之間、控製器經由網絡(例如以太網)heqitashebeizhijiankeyitongxin,butongchangshangshengchandekongzhishebeikeyilianchenggongyewangluo,jinxingjizhongjiankong,tayijingchengweiyitongyonggongyebiaozhun。kongzhiqitongxinshiyongzhu—從技術,即僅一設備(主設備)能初始化傳輸(查詢)。其它設備(從設備)根據主設備查詢提供的數據作出相應反應。典型的主設備:IPC,HMI,PLC等;典型的從設備:各種儀表,PLC,變bian頻pin器qi等deng。主zhu設she備bei可ke單dan獨du和he從cong設she備bei通tong信xin,也ye能neng以yi廣guang播bo方fang式shi和he所suo有you從cong設she備bei通tong信xin。如ru果guo單dan獨du通tong信xin,從cong設she備bei返fan回hui一yi消xiao息xi作zuo為wei回hui應ying,如ru果guo是shi以yi廣guang播bo方fang式shi查zha詢xun的de,則ze不bu作zuo任ren何he回hui應ying。Modbus協議建立了主設備查詢和從設備回應的格式:設備(或廣播)地址、功能代碼、所有要發送的數據、錯誤檢測域。Modbus協議同時支持RTU模式和ASCII模式,RTU模式對應的幀格式如下:(ASCII模式介紹省略)

更詳細的說明請查閱MODBUS協議的有關資料(或登陸網站 www.modbus.org)。

二、 艾默生PLC集成的MODBUS協議功能

艾默生EC20係列PLC的通信口COM 1集成了MODBUS主站協議, 在編程時先在編程軟件的係統塊裏進行設置具體如下:係統塊—>“通信口”菜單—>“通信口1參數設置”菜單—> 選“MODBUS協議”—> 進行“MODBUS設置”—> 進行通信參數和(主模式)站號等設置即可。
然後利用MODBUS指令進行編程-----------MODBUS (S1) (S2)(S3)各參數含義如下:
S1  指定的通訊通道;    
S2  發送數據起始地址;     
S3  接收數據起始地址;
MODBUS指令發送過程中,自動加上所需的起始字符,結束字符和校驗和;發送的數據,不需設定發送的數據長度,係統會根據功能碼自動按係統內部設定長度進行發送。
2個重要的通信標誌:SM135-- MODBUS的通訊成功標誌位,通訊成功時置位,不會自動複位,所以在發送數據的時候要進行一次複位;SM136—MODBUS的通信錯誤標誌位,通信錯誤(包括從設備沒有回應)時置位,不會自動複位,所以在接收數據的時候要進行一次複位;
[page_break]

三、 艾默生變頻器通信協議

艾默生公司生產的EV係列變頻器都集成MODBUS協議,且提供RS232C和RS485通信口供用戶選擇,所以通過PLC和變頻器通信的方式完成控製比較簡單經濟,而且顯得係統比較高檔,下麵簡單介紹其協議:
1. 支持MODBUS RTU和ASCII格式;
2. 參數的MODBUS協議地址影射規則:變頻器的功能碼參數、控製參數和狀態參數都映射為Modbus的de讀du寫xie寄ji存cun器qi。變bian頻pin器qi功gong能neng碼ma的de組zu號hao映ying射she為wei寄ji存cun器qi地di址zhi的de高gao字zi節jie,組zu內nei索suo引yin映ying射she為wei寄ji存cun器qi地di址zhi的de低di字zi節jie。變bian頻pin器qi的de控kong製zhi參can數shu和he狀zhuang態tai參can數shu均jun虛xu擬ni為wei變bian頻pin器qi功gong能neng碼ma組zu。功gong能neng碼ma組zu號hao與yu其qi映ying射she的de寄ji存cun器qi地di址zhi高gao字zi節jie的de對dui應ying關guan係xi如ru下xia:F0組:0x00;F1組:0x01;F2組:0x02;F3組:0x03;F4組:0x04;F5組:0x05;F6組:0x06;F7組:0x07;F8組:0x08;F9組:0x09;FA組:0x0A;Fb組:0x0B;FC組:0x0C;Fd組:0x0D;FE組:0x0E;FF組:0x0F;FH組:0x10;FL組:0x11;Fn組:0x12;FP組:0x13;FU組:0x14;變頻器控製參數組:0x32;變頻器狀態參數組:0x33。例如變頻器功能碼參數F3.02的寄存器地址為0x302,變頻器功能碼參數FF.01的寄存器地址為0xF01。
3. 支持的功能碼如下:


4. 具體的協議介紹請參考艾默生變頻器用戶手冊;

四、 程序流程圖
主設備對從設備的消息查詢命令主要分為2大類,連續命令序列和隨機命令序列。
連續命令序列: 主設備需要定時或連續向從設備發送的命令序列.特點是周期性,連續性.如PLC對變頻器讀取運行頻率命令,運行狀態命令等。
隨機命令序列: 主設備不定時或隨機向從設備發送的命令序列.特點是不定時性,隨機性.如PLC對變頻器的啟停控製,改寫頻率或其他參數等。


[page_break]

五、 程序清單:( 子程序和主程序 )

本程序主要介紹1台EC20PLC(作為主站)按照MODBUS協議網絡對3台變頻器(從站號分別是2,3,4)進行通信控製的簡單範例,本例中:
連續命令序列 包括對2,3,4號變頻器的運行頻率的讀取;
隨機命令序列 包括對2,3,4號變頻器進行啟動,停止,更改頻率的命令操作;

1) “變頻器正轉”子程序清單如下:
  //主程序中用M1993作為各發送輔助使能,主要用於 MODBUS指令的上升沿觸發無其他用
LD   LM0  //位輸入參數型—發送輔助使能
RST   SM135      //複位成功標誌
RST   SM136      //複位失敗標誌
LD   SM0        //運行標誌
MOV   Z0 V9       //保存Z0值到V9
LD   SM0        //運行標誌
MOV   V0 V10      //從機地址
MOV   16#6 V11     //功能碼
MOV   16#32 V12   //寄存器地址高字節
MOV   16#0 V13    //寄存器地址低字節
MOV   1 V14       //寫入數據高字節
MOV   16#C7 V15   //寫入數據低字節
//以下把發送數據轉移到D7940-D7945裏
LD   SM0 
MOV   0 Z0
LD   SM0
FOR   6
LD   SM0
MOV   V10Z0 D7940Z0
LD   SM0
INC   Z0
NEXT
//發送接收數據,數據放在D7970開始區域   
LD   LM0
MODBUS  1   D7940   D7970  
RST   LM0    //馬上複位發送輔助使能
//無論成功失敗都還原Z0值
//當然這裏省略了錯誤報告的處理
LD   SM135
OR   SM136
EU                //上升沿
MOV   V9 Z0 
2)  “停機”子程序(省略)
3) “設定頻率”子程序(省略)
4) “讀取運行頻率”子程序(省略)
5) 主程序清單:
//******以下為通信邏輯處理部分******
LD   SM1   //運行第一周期脈衝
//***這裏省略了檢查從機準備好否的環節***
//***程序裏設計了3個連續命令序列***
RST   M6  //複位連續命令序列1使能標誌
RST   M7  //複位連續命令序列2使能標誌
RST   M8  //複位連續命令序列3使能標誌
ED  //下降沿
//置位連續命令序列1使能標誌,以開始第1條連續命令執行
SET   M6 
//***程序裏設計了共9個隨機命令序列***
//隻要有至少1個隨機命令, // M1000=ON,表示有隨機命令等待,這樣在連續命令切換時優先執行隨機命令係列.
LD   M0   //隨機命令序列1使能標誌
OR   M1   //隨機命令序列2使能標誌
OR   M2   //隨機命令序列3使能標誌
OR   M3   //隨機命令序列4使能標誌
OR   M4   //隨機命令序列5使能標誌
OR   M5   //隨機命令序列6使能標誌
OR   M9   //隨機命令序列7使能標誌
OR   M10  //隨機命令序列8使能標誌
OR   M11  //隨機命令序列9使能標誌
SET   M1000 
//所有隨機命令都處理完成後, M1000=OFF,表示隨機命令完成,則連續命令可以正常切換。
LDI   M0
ANI   M1
ANI   M2
ANI   M3
ANI   M4
ANI   M5
ANI   M9
ANI   M10
ANI   M11
RST   M1000 
//任何1個連續命令未完成時,M1001=ON,標誌連續命令在進行,如果有隨機命令必須等待。
LD   M6
OR   M7
OR   M8
SET   M1001
//連續命令處於切換狀態時,M1001=OFF,標誌連續命令完成,如果有隨機命令可以進行。
LDI   M6
ANI   M7
ANI   M8
RST   M1001
//每1個連續命令完成且無隨機命令等待時,啟動延時T0 100MS,以便切換下1個連續命令執行
LD   M100     //連續命令1完成標誌
OR   M101     //連續命令2完成標誌
OR   M102     //連續命令3完成標誌
ANI   M1000
TON   T0   1   //啟動延時T0 100MS
//******************************************
//**********以下為3個連續命令序列**********
//調用“讀取運行頻率”子程序-2#站,頻率存在D1000裏;
//通信成功或失敗都複位連續命令序列1使能標誌M6,同時置位完成標誌M100,以便進行切換。當然這裏省略了失敗的處理子程序;
//延時T0時間後,執行連續命令2序列,置位連續命令2序列使能標誌M7;
LD   M6     //連續命令序列1使能
MPS
EU
SET   M1993  //發送前置位發送輔助標誌
MRD
CALL   讀取運行頻率   2   M1993   D1000
//參數注釋:站地址,發送輔助位,頻率存放地址
MPP
LD   SM135
OR   SM136
ANB
RST   M6  
SET   M100
LD   T0    
AND   M100 
EU
RST   M100  //複位連續命令1完成標誌
SET   M7  
//調用“讀取運行頻率”子程序-3#站,頻率存在D1001裏;
//通信成功或失敗都複位連續命令序列2使能標誌M7,同時置位完成標誌M101,以便進行切換。當然這裏省略了失敗的處理子程序;
//延時T0時間後,執行連續命令3序列,置位連續命令3序列使能標誌M8;
LD   M7 //連續命令2序列使能
MPS
EU
SET   M1993  //發送前置位發送輔助標誌
MRD
CALL   讀取運行頻率  3   M1993   D1001
//參數注釋:站地址,發送輔助位,頻率存放地址
MPP
LD   SM135
OR   SM136
ANB
RST   M7    //複位使能標誌
SET   M101  //置位完成標誌
LD   T0 
AND   M101
EU
RST   M101 //複位連續命令2完成標誌
SET   M8   //置位連續命令3使能標誌
//調用“讀取運行頻率”子程序-4#站,頻率存在D1002裏
//通信成功或失敗都複位連續命令序列3使能標誌M8,同時置位完成標誌M102,以便進行切換。當然這裏省略了失敗的處理子程序;
//延時T0時間後,重新執行連續命令1序列,置位連續命令1序列使能標誌M6;
LD   M8   //連續命令3序列使能
MPS
EU
SET   M1993
MRD
CALL   讀取運行頻率  4   M1993   D1002
//參數注釋:站地址,發送輔助位,頻率存放地址
MPP
LD   SM135
OR   SM136
ANB
RST   M8
SET   M102
LD   T0
AND   M102
EU
RST   M102
SET   M6
//******************************************

[page_break]

//**********以下是9個隨機命令序列***********
//9個隨機命令思路都一樣;
//隨機命令使能標誌置位後,若連續命令處於切換狀態,則可進入發送狀態,否則隻有等待;
//發送時先置位發送輔助位M1993,調用子程序進行發送和接收;
//無論通信成功或失敗都複位各自的隨機命令使能標誌,當然這裏仍然省略了通信錯誤處理程序;
//如果所有的隨機命令都完成,則隨機命令等待標誌M1000=OFF;
//調用“頻率設定”子程序-2#站
LD   M9     //隨機命令序列7使能標誌
ANI   M1001  //判斷連續命令處於切換狀態時
MPS
EU
SET   M1993  //置位發送輔助位
MRD
CALL   運頻設定 2  D1100  M1993
//參數注釋:站地址,設定頻率,發送輔助位
MPP
LD   SM135
OR   SM136
ANB
RST   M9     //複位隨機命令序列7使能標誌
//調用“頻率設定”子程序-3#站
LD   M10    //隨機命令序列8使能標誌
ANI   M1001  //判斷連續命令處於切換狀態時;
MPS
EU
SET   M1993  //置位發送輔助位
MRD
CALL   運頻設定 3  D1101  M1993
//參數注釋:站地址,設定頻率,發送輔助位
MPP
LD   SM135
OR   SM136
ANB
RST   M10
//調用“頻率設定”子程序-4#站
LD   M11  /隨機命令序列9使能標誌
ANI   M1001
MPS
EU
SET   M1993
MRD
CALL   運頻設定  4  D1102  M1993
//參數注釋:站地址,設定頻率,發送輔助位
MPP
LD   SM135
OR   SM136
ANB
RST   M10
//調用“正轉開機”子程序-2#站
LD   X11   //開機按扭
EU
SET   M0   //隨機命令序列1使能標誌
LD   M0
ANI   M1001
MPS
EU
SET   M1993
MRD
CALL   正轉開機   2   M1993
//參數注釋:站地址,發送輔助位
MPP
LD   SM135
OR   SM136
ANB
RST   M0
//調用“正轉開機”子程序-3#站
LD   X12   //開機按扭
EU
SET   M1   //隨機命令序列2使能標誌
LD   M1
ANI   M1001
MPS
EU
SET   M1993
MRD
CALL   正轉開機  3   M1993
//參數注釋:站地址,發送輔助位
MPP
LD   SM135
OR   SM136
ANB
RST   M1
//調用“正轉開機”子程序-4#站
LD   X13   //開機按扭
EU
SET   M2   //隨機命令序列3使能標誌
LD   M2
ANI   M1001
MPS
EU
SET   M1993
MRD
CALL   正轉開機  4   M1993
//參數注釋:站地址,發送輔助位
MPP
LD   SM135
OR   SM136
ANB
RST   M2
//調用“停機”子程序-2#站
LD   X14  //停機按扭
EU
SET   M3   //隨機命令序列4使能標誌
LD   M3
ANI   M1001
MPS
EU
SET   M1993
MRD
CALL   停機   2   M1993
//參數注釋:站地址,發送輔助位
MPP
LD   SM135
OR   SM136
ANB
RST   M3
//調用“停機”子程序-3#站
LD   X15   //停機按扭
EU
SET   M4   //隨機命令序列5使能標誌

LD   M4
ANI   M1001
MPS
EU
SET   M1993
MRD
CALL    停機   3   M1993
//參數注釋:站地址,發送輔助位
MPP
LD   SM135
OR   SM136
ANB
RST   M4
//調用“停機”子程序-4#站
LD   X16    //停機按扭
EU
SET   M5   //隨機命令序列6使能標誌
LD   M5
ANI   M1001
MPS
EU
SET   M1993
MRD
CALL   停機  4   M1993
//參數注釋:站地址,發送輔助位
MPP
LD   SM135
OR   SM136
ANB
RST  M5

六、 程序說明:

例程設計時實際在連續命令序列切換的間隙停留了100MS的時間,這就是說程序中的連續序列是間歇性的;如果要采用非間歇性的連續序列,把中間的延時部分去掉就可以了。

本例程所闡述的通信序列邏輯處理的方法在筆者的一些項目中得到實際應用,效果也達到預期設想,運行比較穩定,這種PLC通過通信的方式對多台變頻器通信的方法在實際應用中有很大的參考價值,不僅能夠充分利用EMERSON PLC和變頻器的硬件資源達到節省成本的目的,而且更易於進行整個係統的整合。

版權所有 工控網 Copyright©2026 Gkong.com, All Rights Reserved