西門子PLC模塊6ES7212-1AE40-0XB0
SIMATIC S7-1200 小型可編程控制器充分滿足于中小型自動化的系統(tǒng)需求。在研發(fā)過程中充分考慮了系統(tǒng)、控制器、人機界面和軟件的無縫整合和高效協(xié)調(diào)的需求。SIMATIC S7-1200 系列的問世,標志著西門子在原有產(chǎn)品系列基礎(chǔ)上拓展了產(chǎn)品版圖,代表了未來小型可編程控制器的發(fā)展方向,西門子也將一如既往開拓創(chuàng)新,自動化潮流SIMATIC S7-1200 具有集成 PROFINET 接口、強大的集成工藝功能和靈活的可擴展性等特點,為各種工藝任務(wù)提供了簡單的通信和有效的解決方案,尤其滿足多種應(yīng)用中
未分配模塊的輸入 / 輸出繼電器區(qū)以及未使用 1 : 1 鏈接時的鏈接繼電器區(qū)等均可作為內(nèi)部輔助繼電器使用。根據(jù)程序設(shè)計的需要,應(yīng)合理安排PLC 的內(nèi)部輔助繼電器,在設(shè)計說明書中應(yīng)詳細列出各內(nèi)部輔助繼電器在程序中的用途,避免重復(fù)使用。參閱有關(guān)操作手冊。
( 3 )分配定時器 / 計數(shù)器
PLC 的定時器 / 計數(shù)器數(shù)量分別見有關(guān)操作手冊。
7.3 PLC 軟件系統(tǒng)設(shè)計方法及步驟
7.3.1 PLC 軟件系統(tǒng)設(shè)計的方法
在了解了 PLC 程序結(jié)構(gòu)之后,就要具體地編制程序了。編制 PLC 控制程序的方法很多,這里主要介紹幾種典型的編程方法。
@
圖解法編程
圖解法是靠畫圖進行 PLC 程序設(shè)計。常見的主要有梯形圖法、邏輯流程圖法、時序流程圖法和步進順控法。
(1) 梯形圖法:梯形圖法是用梯形圖語言去編制 PLC 程序。這是一種模仿繼電器控制系統(tǒng)的編程方法。其圖形甚至元件名稱都與繼電器控制電路十分相近。這種方法很容易地就可以把原繼電器控制電路移植成 PLC 的梯形圖語言。這對于熟悉繼電器控制的人來說,是的一種編程方法。
(2) 邏輯流程圖法:邏輯流程圖法是用邏輯框圖表示 PLC 程序的執(zhí)行過程,反應(yīng)輸入與輸出的關(guān)系。邏輯流程圖法是把系統(tǒng)的工藝流程,用邏輯框圖表示出來形成系統(tǒng)的邏輯流程圖。這種方法編制的 PLC 控制程序邏輯思路清晰、輸入與輸出的因果關(guān)系及聯(lián)鎖條件明確。邏輯流程圖會使整個程序脈絡(luò)清楚,便于分析控制程序,便于查找故障點,便于調(diào)試程序和維修程序。有時對一個復(fù)雜的程序,直接用語句表和用梯形圖編程可能覺得難以下手,則可以先畫出邏輯流程圖,再為邏輯流程圖的各個部分用語句表和梯形圖編制 PLC 應(yīng)用程序。
(3) 時序流程圖法:時序流程圖法使首先畫出控制系統(tǒng)的時序圖(即到某一個時間應(yīng)該進行哪項控制的控制時序圖),再根據(jù)時序關(guān)系畫出對應(yīng)的控制任務(wù)的程序框圖,后把程序框圖寫成 PLC 程序。時序流程圖法很適合于以時間為基準的控制系統(tǒng)的編程方法。
(4) 步進順控法:步進順控法是在順控指令的配合下設(shè)計復(fù)雜的控制程序。一般比較復(fù)雜的程序,都可以分成若干個功能比較簡單的程序段,一個程序段可以看成整個控制過程中的一步。從整個角度去看,一個復(fù)雜系統(tǒng)的控制過程是由這樣若干個步組成的。系統(tǒng)控制的任務(wù)實際上可以認為在不同時刻或者在不同進程中去完成對各個步的控制。為此,不少 PLC 生產(chǎn)廠家在自己的 PLC 中增加了步進順控指令。在畫完各個步進的狀態(tài)流程圖之后,可以利用步進順控指令方便地編寫控制程序。
2. 經(jīng)驗法編程
經(jīng)驗法是運用自己的或別人的經(jīng)驗進行設(shè)計。多數(shù)是設(shè)計前先選擇與自己工藝要求相近的程序,把這些程序看成是自己的“試驗程序"。結(jié)合自己工程的情況,對這些“試驗程序"逐一修改,使之適合自己的工程要求。這里所說的經(jīng)驗,有的是來自自己的經(jīng)驗總結(jié),有的可能是別人的設(shè)計經(jīng)驗,就需要日積月累,善于總結(jié)。
3. 計算機輔助設(shè)計編程
計算機輔助設(shè)計是通過 PLC 編程軟件在計算機上進行程序設(shè)計、離線或在線編程、離線仿真和在線調(diào)試等等。使用編程軟件可以十分方便地在計算機上離線或在線編程、在線調(diào)試,使用編程軟件可以十分方便地在計算機上進行程序的存取、加密以及形成 EXE 運行文件。
安裝簡單方便
所有的 SIMATIC S7-1200 硬件都具有內(nèi)置安裝夾,能夠方便地安裝在一個標準的 35 mm DIN 導軌上。這些內(nèi)置的安裝夾可以咬合到某個伸出位置,以便在需要進行背板懸掛安裝時提供安裝孔。SIMATIC S7-1200 硬件可進行豎直安裝或水平安裝。這些特性為用戶安裝 PLC 提供了大的靈活性,同時也使得 SIMATIC S7-1200成為眾多應(yīng)用場合的理想選擇。
可拆卸的端子
所有的 SIMATIC S7-1200 硬件都配備了可拆卸的端子板。因此只需要進行一次接線即可,從而在項目的啟動和調(diào)試階段節(jié)省了寶貴的時間。除此之外,它還簡化了硬件組件的更換過程。
緊湊的結(jié)構(gòu)
所有的 SIMATIC S7-1200 硬件在設(shè)計時都力求緊湊,以節(jié)省在控制柜中的安裝占用空間。例如,CPU 1214C 的寬度僅有 110 mm,CPU 1212C 和 CPU 1211C 的寬度也僅有 90 mm。通信模塊和信號模塊的體積也十分小巧,使得這個緊湊的模塊化系統(tǒng)大大節(jié)省了空間,從而在安裝過程中為您提供了率和靈活性。
皮線光纜,又稱蝶形光纜、8字光纜,因為其柔軟、輕等特點在住宅建筑物接入網(wǎng)中被大量使用。皮線光纜在工程中要注意哪些問題呢?以下是一些皮線光纜的施工規(guī)范說明。
![](https://img70.chem17.com/969b59aaf9fc955bb3be0824a4b67b88f6b906ea7b8b6e2b5fa6d7b5750cc74f2e0659cf24285196.jpg)
新型的西門子PLC SIMATIC S7-1500 控制器除了包含多種創(chuàng)新技術(shù)之外,還設(shè)定了新標高生產(chǎn)效率。無論是小型設(shè)備還是對速度和準確性要求較高的復(fù)雜設(shè)備裝置,都一一適用。SIMATIC S7-1500 無縫集成到TIA 博途中,極大提高了工程組態(tài)的效率。
西門子PLC模塊6ES7212-1AE40-0XB0
調(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主站可讀/寫的zui大數(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 號錯誤
庫存儲區(qū)被程序其它地方復(fù)用,有時也會造成6 號錯誤
從站 delay 參數(shù)設(shè)的時間過長會造成主站 3 號錯誤
從站掉電或不運行,網(wǎng)絡(luò)故障都會造成主站 3 號錯誤
3. 在 CPU 的 V 數(shù)據(jù)區(qū)中為庫指令分配存儲區(qū)(Library Memory)
Modbus Master 指令庫需要一個284個字節(jié)的全局 V 存儲區(qū)。
參考:分配庫指令數(shù)據(jù)區(qū)
1.3 關(guān)于 Modbus RTU 主站協(xié)議及地址
此為西門子正式推出的標準庫指令說明資料。
在 Modbus RTU Master 協(xié)議和 PPI 協(xié)議之間切換:
Modbus RTU Master 協(xié)議指令庫使通信口工作在自由口模式下,此時不能與 Micro/WIN 軟件通信。要在切換回 PPI 協(xié)議,可以:
Modbus RTU Master 協(xié)議庫的執(zhí)行時間:
Modbus RTU Master 協(xié)議庫的 MBUS_CTRL 指令不需要很長的執(zhí)行時間。MBUS_需要 1.11 ms 用于初始化,在后續(xù)的每個掃描周期中只占用 0.41 ms。
調(diào)用 MBUS_MSG 子程序會加長處理時間。大部分時間都用于 CRC 校驗的計算。每讀、寫一個字的數(shù)據(jù)就需要 1.85 ms 掃描時間。數(shù)據(jù)zui多的情況下(讀、寫 120 字的數(shù)據(jù)),掃描時間大概會擴增加 222 ms。讀操作的時間主要消耗在接收數(shù)據(jù)上;寫操作的時間主要消耗在發(fā)送數(shù)據(jù)上。
Modbus 地址
通常 Modbus 地址由 5 位數(shù)字組成,包括起始的數(shù)據(jù)類型代號,以及后面的偏移地址。Modbus Master 協(xié)議庫把標準的 Modbus 地址映射為所謂 Modbus 功能號,讀寫從站的數(shù)據(jù)。Modbus Master 協(xié)議庫支持如下地址:
00001 - 09999:數(shù)字量輸出( 線圈)
10001 - 19999:數(shù)字量輸入(觸點)
30001 - 39999:輸入數(shù)據(jù)寄存器(通常為模擬量輸入)
40001 - 49999:數(shù)據(jù)保持寄存器
Modbus Master 協(xié)議庫支持的功能
為了支持上述 Modbus 地址的讀寫,Modbus Master 協(xié)議庫需要從站支持下列功能:
表 1. 需要從站支持的功能
Modbus 地址 | 讀/寫 | Modbus 從站須支持的功能 |
---|
00001 - 09999 數(shù)字量輸出 | 讀 | 功能 1 |
---|
寫 | 功能 5:寫單輸出點 功能 15:寫多輸出點 |
10001 - 19999 數(shù)字量輸入 | 讀 | 功能 2 |
---|
寫 | - |
30001 - 39999 輸入寄存器 | 讀 | 功能 4 |
---|
寫 | - |
40001 - 49999 保持寄存器 | 讀 | 功能 3 |
---|
寫 | 功能 6:寫單寄存器單元 功能 16:寫多寄存器單元 |
Modbus 地址和 S7-200 存儲區(qū)地址的映射
S7-200 通過 Modbus Master 和 Slave 協(xié)議庫通信時,Modbus 地址和 S7-200 內(nèi)存儲區(qū)地址的 映射關(guān)系都類似。
Modbus 保持寄存器地址映射舉例:
![5](https://img70.chem17.com/969b59aaf9fc955bb3be0824a4b67b882a88497823653244b19362611e1b0e7ea640dc129c018cb3.png)
Modbus 數(shù)字量地址映射舉例:
位地址(0xxxx 和 1xxxx)數(shù)據(jù)總是以字節(jié)為單位打包讀寫。*個字節(jié)中的zui低有效位對應(yīng) Modbus 地址的起始地址。如下圖所示:
![6](https://img70.chem17.com/969b59aaf9fc955bb3be0824a4b67b88542409b8db3f89827748cc497902e824d2fa1af9769c5c6a.png)
圖 4. 數(shù)字量地址映射舉例
1.4 Modbus RTU 主站例程
為了更好地理解 Modbus 主站的編程,可參考下面的例程。
例子程序1: 多個MBUS_MSG指令輪詢執(zhí)行,
注意
例子程序2:反復(fù)激活單個MBUS_MSG指令:
注意:此指令庫/程序的作者和擁有者對于該軟件的功能性和兼容性不負任何責任。使用該軟件的風險由用戶自行承擔。由于它是免費的,所以不提供任何擔保,錯誤糾正和支持,用戶不必為 此西門子與服務(wù)部門。
1.5 Modbus RTU 主站常問問題
Modbus RTU 主站庫對 CPU 的版本是否有要求,為什么編譯例子程序時,會遇到 4 個錯誤?
Modbus RTU 主站庫對 CPU 的版本確實有要求,CPU 的版本必須為 2.00 或者 2.01(即訂貨號為6ES721*-***23-0BA*),1.22 版本之前(包括 1.22 版本)的 S7-200 CPU 不支持。
Modbus 指令庫啟動后,如何通過同一個通信端口進行 CPU 監(jiān)控?
Modbus 指令庫使用的是 CPU 的自由口通信功能,工作在自由口模式下的通訊口不能使用 Micro/WIN 的 PPI 編程通信監(jiān)控。如果通信口都已經(jīng)被占用,可以考慮:
如何理解 Modbus 地址與功能碼的區(qū)別?
Modbus 地址與 Modbus 的功能碼是兩個層次的概念