6ES7833-1CC01-0YA5
Modbus通訊協(xié)議簡介
Modbus是由Modicon(現(xiàn)為施耐德電氣公司的一個品牌)在1979年發(fā)明的,是個真正用于工業(yè)現(xiàn)場的總線協(xié)議。
ModBus網(wǎng)絡(luò)是一個工業(yè)通信系統(tǒng),由帶智能終端的可編程序控制器和計算機通過公用線路或局部專用線路連接而成。其系統(tǒng)結(jié)構(gòu)既包括硬件、亦包括軟件。它可應(yīng)用于各種數(shù)據(jù)采集和過程監(jiān)控。
ModBus網(wǎng)絡(luò)只有一個主機,所有通信都由他發(fā)出。網(wǎng)絡(luò)可支持247個之多的遠程從屬控制器,但實際所支持的從機數(shù)要由所用通信設(shè)備決定。采用這個系統(tǒng),各PC可以和中心主機交換信息而不影響各PC執(zhí)行本身的控制任務(wù)。
1 MODBUS RTU協(xié)議在S7-200中的應(yīng)用原理
1.1 MODBUSRTU協(xié)議與S7-200相互關(guān)系簡介
S7-200 CPU上的通訊口Port0可以支持MODBUS RTU協(xié)議,成為MODBUS RTU從站。此功能是通過S7-200的自由口通訊模式實現(xiàn),因此可以通過無線數(shù)據(jù)電臺等慢速通訊設(shè)備傳輸。
想在S7-200 CPU與其他支持MODBUS RTU的設(shè)備使用MODBUS RTU協(xié)議通訊,需要由有S7-200 CPU做MODBUS主站。S7-200 CPU做主站必須由用戶自己用自由口模式,按相關(guān)協(xié)議編程。
2 從站指令的用法:
S7-200控制系統(tǒng)應(yīng)用中,MODBUS RTU從站指令庫只支持CPU上的通訊0口(Port0)。要實現(xiàn)MODBUS RTU通訊,需要Step7-Micro/WIN32V3.2以上版本的編程軟件,而且須安裝Step7-Micro/WIN32V3.2 Instruction Library(指令庫)。MODBUS RTU功能是通過指令庫中預(yù)先編好的程序功能塊實現(xiàn)的。
MODBUSRTU協(xié)議在S7-200中應(yīng)用的基本過程
(1) 首先檢查S7-200控制系統(tǒng)中所用Micro/WIN軟件版本,應(yīng)當是Step7-Micro/WIN V3.2以上版本。
(2) 檢查Micro/WIN的指令樹中是否存在MODBUSRTU從站指令庫(圖1),庫中應(yīng)當包括MBUS_INIT和MBUS_SLAVE兩個子程序。如果沒有,須安裝Micro/WIN32V3.2 Instruction Library(指令庫)軟件包
編程時使用SM0.1—調(diào)用子程序MBUS_INIT進行初始化,使用SM0.0—調(diào)用研究MBUS_SLAVE,并相應(yīng)參數(shù)。關(guān)于參數(shù)的詳細說明,可在子程序的局部變量表中找到
調(diào)用MODBUS通訊指令庫
參數(shù)意義如下:
●模式選擇:啟動/停止MODBUS,1=啟動;0=停止;
● 從站地址:MODBUS從站址,取值1~247;
● 波特率:可選1200,2400,4800,9600,19200,38400,57600;
● 奇偶校驗:0=無校驗;1=奇校驗;2=偶校驗;
● 延時:附加字符間延時,缺省值為0;
● 最大I/Q位:參與通訊的最大I/O點數(shù),6ES7833-1CC01-0YA5 S7F系統(tǒng)可選軟件包,S7-200I/O映像區(qū)為128/128,缺省值為128;
● 最大AI字數(shù):參與通訊的最大AI通道數(shù),可為16或32;
● 最大保持寄存器區(qū):參與通訊的V存儲區(qū)字(VW);
● 保持寄存器區(qū)起始址:以&VBx(間接尋址方式);
● 初始化完成標志:成功初始化后置1;
● 錯誤代碼:0=無錯誤。
1.3 注意的問題
調(diào)用Step7-Mciro/WIN32 V3.2 Instruction Library(指令庫)需要分配庫指令數(shù)據(jù)區(qū)(LibraryMemory)。庫指令數(shù)據(jù)區(qū)是相應(yīng)庫子程序和中斷程序所要用到變量存儲空間。編程時不分配庫指令數(shù)據(jù)區(qū),編譯時會產(chǎn)生許多相同的錯誤。
由子程序參數(shù)HoldStart和MaxHold保持寄存器區(qū),是S7-200 CPUV數(shù)據(jù)存儲區(qū)中分配,此數(shù)據(jù)區(qū)不能和庫指令數(shù)據(jù)區(qū)有任何重疊,否則運行時會產(chǎn)生錯誤,不能正常通訊。注意MODBUS 中保持寄存器區(qū)按“字”尋址,即MaxHold規(guī)定是VW而VB個數(shù)。
3 主站指令的用法:
1. MODBUS RTU 主站指令庫的功能是通過在用戶程序中調(diào)用預(yù)先編好的程序功能塊實現(xiàn)的,該庫對 Port 0 和 Port 1 有效。該指令庫將設(shè)置通信口工作在自由口模式下。
2. MODBUS RTU 主站指令庫使用了一些用戶中斷功能,編其他程序時不能在用戶程序中禁止中斷。
3. MODBUS RTU 主站庫對CPU的版本有要求。CPU 的版本必須為 2.00 或者 2.01(即訂貨號為 6ES721*- 23-0BA*),1.22版本之前(包括1.22版本)的 S7-200 CPU 不支持。
使用 MODBUS RTU 主站指令庫,可以讀寫 MODBUS RTU 從站的數(shù)字量、模擬量 I/O 以及保持寄存器。
要使用 MODBUS RTU 主站指令庫,須遵循下列步驟:
安裝西門子標準指令庫
按照要求編寫用戶程序調(diào)用 MODBUS RTU 主站指令庫
MODBUSRTU 主站功能編程
1. 調(diào)用 MODBUS RTU 主站初始化和控制子程序
使用 SM0.0 調(diào)用 MBUS_CTRL 完成主站的初始化,并啟動其功能控制:
用 SM0.0 調(diào)用 MODBUS RTU 主站初始化與控制子程序
各參數(shù)意義如下:
a. EN 使能:必須保證每一掃描周期都被使能(使用 SM0.0)
b. Mode 模式: 為 1 時,使能 MODBUS 協(xié)議功能;為 0 時恢復(fù)為系統(tǒng) PPI 協(xié)議
c. Baud 波特率: 支持的通訊波特率為1200,2400,4800,9600,19200,38400,57600,115200。
d. Parity 校驗: 校驗方式選擇
0=無校驗
1=奇較驗
2=偶較驗
e. Timeout 超時: 主站等待從站響應(yīng)的時間,以毫秒為單位,典型的設(shè)置值為 1000 毫秒(1 秒),允許設(shè)置的范圍為 1 - 32767。
注意: 這個值必須設(shè)置足夠大以保證從站有時間響應(yīng)。
f. Done 完成位: 初始化完成,此位會自動置1。可以用該位啟動 MBUS_MSG 讀寫操作(見例程)
g. Error 初始化錯誤代碼(只有在 Done 位為1時有效):
0= 無錯誤
1= 校驗選擇非法
2= 波特率選擇非法
3= 模式選擇非法
2. 調(diào)用 MODBUS RTU 主站讀寫子程序MBUS_MSG,發(fā)送一個MODBUS請求;
調(diào)用MODBUS RTU 主站讀寫子程序
各參數(shù)意義如下:
a. EN 使能:同一時刻只能有一個讀寫功能(即 MBUS_MSG)使能
注意:建議每一個讀寫功能(即 MBUS_MSG)都用上一個 MBUS_MSG 指令的 Done 完成位來激活,以保證所有讀寫指令循環(huán)進行(見例程)。
b. First 讀寫請求位: 每一個新的讀寫請求必須使用脈沖觸發(fā)
c. Slave 從站地址: 可選擇的范圍 1 - 247
d. RW 從站地址: 0 = 讀, 1 =寫
注意:
1. 開關(guān)量輸出和保持寄存器支持讀和寫功能
2. 開關(guān)量輸入和模擬量輸入只支持讀功能
e. Addr 讀寫從站的 選擇讀寫的數(shù)據(jù)類型
數(shù)據(jù)地址: 00001 至 0xxxx - 開關(guān)量輸出
10001 至 1xxxx - 開關(guān)量輸入
30001 至 3xxxx - 模擬量輸入
40001 至 4xxxx - 保持寄存器
f. Count 數(shù)據(jù)個數(shù) 通訊的數(shù)據(jù)個數(shù)(位或字的個數(shù))
注意: MODBUS主站可讀/寫的最大數(shù)據(jù)量為120個字(是指每一個 MBUS_MSG 指令)
g. DataPtr 數(shù)據(jù)指針:
1. 如果是讀指令,讀回的數(shù)據(jù)放到這個數(shù)據(jù)區(qū)中
2. 如果是寫指令,要寫出的數(shù)據(jù)放到這個數(shù)據(jù)區(qū)中
h. Done 完成位 讀寫功能完成位
i. Error 錯誤代碼: 只有在 Done 位為1時,錯誤代碼才有效
0 = 無錯誤
1 = 響應(yīng)校驗錯誤
2 = 未用
3 = 接收超時(從站無響應(yīng))
4 = 請求參數(shù)錯誤(slave address, MODBUS address, count, RW)
5 = MODBUS/自由口未使能
6 = MODBUS正在忙于其它請求
7 = 響應(yīng)錯誤(響應(yīng)不是請求的操作)
8 = 響應(yīng)CRC校驗和錯誤
-
101 = 從站不支持請求的功能
102 = 從站不支持數(shù)據(jù)地址
103 = 從站不支持此種數(shù)據(jù)類型
104 = 從站設(shè)備故障
105 = 從站接受了信息,但是響應(yīng)被延遲
106 = 從站忙,拒絕了該信息
107 = 從站拒絕了信息
108 = 從站存儲器奇偶錯誤
常見的錯誤:
如果多個 MBUS_MSG 指令同時使能會造成 6 號錯誤
從站 delay 參數(shù)設(shè)的時間過長會造成主站 3 號錯誤
從站掉電或不運行,網(wǎng)絡(luò)故障都會造成主站 3 號錯誤
3. 在 CPU 的 V 數(shù)據(jù)區(qū)中為庫指令分配存儲區(qū)(LibraryMemory)
MODBUSMaster 指令庫需要一個284個字節(jié)的全局 V 存儲區(qū)。
西門子 S7200 PLC MODBUS支持的功能碼
功能碼 | 描述 |
1 | 讀取單個/多個線圈的實際輸出狀態(tài)。功能1返回任意數(shù)量輸出點的接通/斷開狀態(tài)(Q)。 |
2 | 讀取單個/多個線圈的實際輸入狀態(tài)。功能2返回任意數(shù)量的輸入點的接通/斷開狀態(tài)(I) |
3 | 多個保持寄存器。功能3返回V存儲器的內(nèi)容。保持寄存器在MODBUS下是字類型,在一個請求中最多可讀120個字。 |
4 | 讀單個/多個輸入寄存器,返回模擬輸入值。 |
5 | 寫單個線圈(實際輸出)。功能5將實際輸出點設(shè)置為值。該輸出點不是被強制,用戶程序可以重寫由MODBUS的請求而寫入的值。 |
6 | 寫單個保持寄存器。功能6寫一個單個保持寄存器的值到S7-200的V存儲區(qū)。 |
15 | 寫多個線圈(實際輸出)。功能15寫多個實際輸出值到S7-200的Q映像區(qū)。起始輸出點必須是一個字節(jié)的開始(如Q0.0或Q2.0),并且要寫得輸出的數(shù)量是8的倍數(shù)。這是MODBUS從站協(xié)議指令的限定。這些點不是被強制,用戶程序可以重寫由MODBUS的請求而寫入的值。 |
16 | 寫多個保持寄存器。功能16寫多個保持寄存器到S7-200的V區(qū)。在一個請求中最多可寫120字。 |
例國產(chǎn)精驅(qū)變頻器與S7200 CPU224XP PLC通訊
(1)設(shè)置變頻器的通訊參數(shù)
參數(shù) | 設(shè)置值 | 說明 |
P0.01 | 4 | 啟動命令改為串行通訊 |
P0.03 | 2 | 頻率給定改為串行通訊 |
P3.09 | 133 | 9600波特率 無奇偶校驗 |
P3.10 | 3 | 從站地址 3 |
硬件接線
S7200通訊口1
第3腳-----RS485+ 第8腳----RS485-
(3) 初始化程序。
SIMATIC S7-400H, 轉(zhuǎn)接電纜 LWL 2m 用于同步模塊
2.控制柜上有緊停按鈕,若控制電源380V 存在時,按急停按鈕是分閘指令,
即會跳上級的用戶高壓開關(guān)。
3.當變頻器需要長時間停用時,先斷掉高壓,再停掉控制電源以及UPS。
4.當需要檢修電機設(shè)備時,在變頻狀態(tài)下,一定要將高壓電源停掉以后才能檢
修相應(yīng)的電機。
26.監(jiān)視器黑屏。
按下柜門上的系統(tǒng)復(fù)位按鈕(系統(tǒng)復(fù)位不會影響變頻器正常運行狀態(tài));若仍不能恢復(fù),則檢查監(jiān)視器的電源端子是否脫落、連接線是否松動、5V及15V電源是否正常、監(jiān)視器線路是否有明顯損傷;
是否存在干擾現(xiàn)象,否則請更換監(jiān)視器。
如何判斷變頻器驅(qū)動板好壞?所謂的驅(qū)動板,就是主要集成了驅(qū)動IGBT電路的信號放大板,驅(qū)動電路的作用,就是把CPU主板的6個PWM信號,經(jīng)過光耦隔離以及放大后,來控制IGBT模塊完成逆變功能,它包含了隔離電路,放大電路和驅(qū)動的電源電路。而且上三橋的驅(qū)動是獨立的電源,而下三橋的驅(qū)動是以一個公用的電源,驅(qū)動電路有問題,一般是某路導(dǎo)通性能變差,或者燒了光耦,阻容之類的器件,或者是驅(qū)動電源電壓不正常,這樣會造成IGBT的通斷有問題,從而引起三相電壓輸出不平衡,只要炸了IGBT模塊,或者是三相不平衡,或者過流之類的問題,都要檢查和修理驅(qū)動板
組態(tài)軟件,上位機軟件的一種。組態(tài)軟件<=上位機軟件。又稱組態(tài)監(jiān)控軟件系統(tǒng)軟件。譯自英文SCADA,即 數(shù)據(jù)采集與監(jiān)視控制。它是指一些數(shù)據(jù)采集與過程控制的軟件。它們處在自動控制系統(tǒng)監(jiān)控層一級的軟件平臺和開發(fā)環(huán)境,使用靈活的組態(tài)方式,為用戶提供快速構(gòu)建工業(yè)自動控制系統(tǒng)監(jiān)控功能的、通用層次的軟件工具。
驅(qū)動電路常見的表征是三相電壓電流不平衡和輸出缺相,如果一個變頻器的快熔燒掉了,或者IGBT壞了,不要直接上新的配件,這時候需要檢查驅(qū)動電路,看看有沒有打火或者變色的外表。只要WVW三相輸出不平衡,或者低頻時候有抖動,啟動還有過流過載報警之類,一定要認真檢查驅(qū)動板了。在確定驅(qū)動板正常情況下,需要上IGBT模塊時候,需要把P腳從母線上斷開,中間串聯(lián)幾個大燈泡做限流電阻通電保護了。
MM420以及MM440變頻器常見故障
對于MM420以及MM440變頻器的故障現(xiàn)象應(yīng)該說沒有超出我們前面討論的范圍,只是變頻器在內(nèi)部結(jié)構(gòu)上發(fā)生了一些變化,那就是采用了的功率器件制造商西門康公司的一體化功率模塊,縮小了機器的體積,也減少了內(nèi)部的連接,因為回路之間的連接都采用了直接接觸的方式。應(yīng)該說MM440和MM420系列變頻器還是出現(xiàn)了較多的故障,特別是個功率的機器。
變頻能
變頻器節(jié)能主要表現(xiàn)在風機、水泵的應(yīng)用上。風機、泵類負載采用變頻調(diào)速后,節(jié)電率為20%~60%,這是因為風機、泵類負載的實際消耗功率基本與轉(zhuǎn)速的三次方成比例。當用戶需要的平均流量較小時,風機、泵類采用變頻調(diào)速使其轉(zhuǎn)速降低,節(jié)能效果非常明顯。而傳統(tǒng)的風機、泵類采用擋板和閥門進行流量調(diào)節(jié),電動機轉(zhuǎn)速基本不變,耗電功率變化不大。據(jù)統(tǒng)計,風機、泵類電動機用電量占全國用電量的31%,占工業(yè)用電量的50%。在此類負載上使用變頻調(diào)速裝置具有非常重要的意義。目前,應(yīng)用較成功的有恒壓供水、各類風機、空調(diào)和液壓泵的變頻調(diào)速
驅(qū)動電路有問題,一般都會看到明顯的損壞痕跡的,比如電容電容三極管甚至電路板,會有爆裂,斷線和變色等異常,在沒有完整電路圖前提下,一般使用簡單的測量比較來檢查,如果有一塊正常的板子來對比是理想的,如果沒有也要在不同回路里邊單獨做比較??梢院唵吻謇砼K的灰塵和污漬,如果發(fā)現(xiàn)明顯的燒斷元件,直接更換,有斷線的地方,可以直接修補焊接回來。光耦可以拆下來,離線進行測量判斷好壞,有條件的,還可以在不裝IGBT的情況下,用示波器來測量各路驅(qū)動信號的輸出波形,對比脈沖的幅值和相位這些。而且市場上光耦不好買質(zhì)量好的,很多時候需要更換多次來篩選判斷。
5.柜溫超溫報警單元柜測溫點的溫度大于55℃時,系統(tǒng)會發(fā)出柜溫超溫輕故障報警。
檢查單元柜柜頂風機是否工作正常,安裝于二次室內(nèi)的風機開關(guān)是否跳閘;過濾網(wǎng)是否堵塞(拿一張A4紙置于過濾網(wǎng)上,看是否能吸附,否則需要清潔過濾網(wǎng));變頻器是否長期工作于過載狀態(tài);環(huán)境溫度是否過高(環(huán)境溫度應(yīng)低于45℃,否則需要加強通風(墻上安裝通風機或柜頂安裝風道)或安裝制冷設(shè)備);變壓器柜風機控制和保護電路是否正常。
,一個反激式電源可分別從一個48V輸入產(chǎn)生兩個1A的12V輸出,如的簡化仿真模型所示。理想的二極管模型具有零正向壓降,電阻可忽略不計。變壓器繞組電阻可忽略不計,只有與變壓器引線串聯(lián)的寄生電感才能建模。這些電感是變壓器內(nèi)的漏電感,以及印刷電路板(PCB)印制線和二極管內(nèi)的寄生電感。當設(shè)置這些電感時,兩個輸出相互跟蹤,因為當二極管在開關(guān)周期的1-D部分導(dǎo)通時,變壓器的全耦合會促使兩個輸出相等。該反激式簡化模型模擬了漏電感對輸出電壓調(diào)節(jié)的影響。
標準PN版控制器
6ES74122EK060AB0 CPU 412-2PN: 1MB(0.5MB代碼,0.5MB數(shù)據(jù)),位處理速度75ns,集成接口:1. MPI/DP, 2. ETHERNET/PROFINET
6ES74143EM060AB0 CPU 414-3PN: 4MB(2MB代碼,2MB數(shù)據(jù)),位處理速度45ns,集成接口:1. MPI/DP, 2. PROFINET, 3. 可擴展的IF964-DP(IF1)接口
6ES74163ES060AB0 CPU 416-3PN: 16MB(8MB代碼,8MB數(shù)據(jù)),位處理速度30ns,集成接口:1. MPI/DP, 2. PROFINET, 3. 可擴展的IF964-DP(IF1)接口
冗余控制器
6ES74125HK060AB0 CPU 412-5H:1 MB (512 KB數(shù)據(jù),512 KB代碼),位處理速度31.25ns,用于S7-400H和S7-400F/FH,集成 5個接口:1. MPI/DP, 2.PROFIBUS DP, 3. PRPFONET, 4~5. 2個用于同步模塊的接口
6ES74145HM060AB0 CPU 414-5H:4MB (2MB數(shù)據(jù),2 MB代碼),位處理速度18.75ns,用于S7-400H和S7-400F/FH,集成 5個接口: 1. MPI/DP, 2. PROFIBUS DP, 3.PROFINET, 4~5. 2個用于同步模塊的接口
6ES74165HS060AB0 CPU 416-5H:16 MB (10 MB數(shù)據(jù),6 MB代碼),位處理速度12.5ns,用于S7-400H和S7-400F/FH,集成 5個接口:1. MPI/DP, 2. PROFIBUS DP, 3. PROFINET, 4~5. 2個用于同步模塊的接口
6ES74175HT060AB0 CPU 417-5H: 32 MB (16 MB數(shù)據(jù),16 MB代碼),位處理速度7.5ns,用于S7-400H和S7-400F/FH,集成 5個接口:1. MPI/DP, 2. PROFIBUS DP, 3. PROFINET, 4~5. 2個用于同步模塊的接口
SIMATIC S7-400
底板機架
UR機架 6ES74001TA010AA0 UR1,18槽,可安裝2個冗余PS電源模塊
6ES74001TA110AA0 UR1,18槽,鋁質(zhì),可安裝2個冗余PS電源模塊
6ES74001JA010AA0 UR2,9槽,可安裝2個冗余PS電源模塊
6ES74001JA110AA0 UR2,9槽,鋁質(zhì),可安裝2個冗余PS電源模塊
6ES74002JA000AA0 UR2-H,2x9槽
6ES74002JA100AA0 UR2-H,2x9槽,鋁質(zhì)
CR機架 6ES74012TA010AA0 CR2,18槽,2段,可安裝2個冗余PS模塊
6ES74011DA010AA0 CR3,4槽
ER機架 6ES74031TA010AA0 ER1擴展機架,18槽,只用于信號模塊,可安裝2個冗余PS模塊
6ES74031TA110AA0 ER1擴展機架,18槽,鋁質(zhì),只用于信號模塊,可安裝2個冗余PS模塊
6ES74031JA010AA0 ER2擴展機架,9槽,只用于信號模塊,可安裝2個冗余PS模塊
6ES74031JA110AA0 ER2擴展機架,9槽,鋁質(zhì),只用于信號模塊,可安裝2個冗余PS模塊
SIMATIC S7-400 電源模板
直流供電電源模板
6ES74050DA020AA0 PS 405:4A,24/48/60V DC,5V DC/4A
6ES74050KA020AA0 PS 405:10A,24/48/60V DC,5V/10A DC
6ES74050KR020AA0 PS 405:10A,24/48/60V DC,5V DC/10A,用于冗余電源
6ES74050RA020AA0 PS 405:20A,24/48/60V DC,5V DC/20A
交流供電電源模板
6ES74070DA020AA0 PS 407:4A,120/230V UC,5V DC/4A
6ES74070KA020AA0 PS 407:10A,120/230V UC,5V DC/10A
6ES74070KR020AA0 PS 407:10A,120/230V UC,5V DC/10A,用于冗余電源
6ES74070RA020AA0 PS 407:20A,120/230V UC,5V DC/20A
SIMATIC S7-400 存儲卡
RAM卡 6ES79520AF000AA0 RAM,64 KB
6ES79521AH000AA0 RAM,256 KB
6ES79521AK000AA0 RAM,1 MB
6ES79521AL000AA0 RAM,2 MB
6ES79521AM000AA0 RAM,4 MB
6ES79521AP000AA0 RAM,8 MB
6ES79521AS000AA0 RAM,16 MB
6ES79521AY000AA0 RAM,64 MB
FLASH EPROM卡 6ES79520KF000AA0 FLASH-EPROM,64 KB
6ES79520KH000AA0 FLASH-EPROM,256 KB
6ES79521KK000AA0 FLASH-EPROM,1 MB
6ES79521KL000AA0 FLASH-EPROM,2 MB
6ES79521KM000AA0 FLASH-EPROM,4 MB
6ES79521KP000AA0 FLASH-EPROM,8 MB
6ES79521KS000AA0 FLASH-EPROM,16 MB
6ES79521KT000AA0 FLASH-EPROM,32 MB
6ES79521KY000AA0 FLASH-EPROM,64 MB