西門子PLC-S7-1200 之間 Profinet IO 通信
CPU 的"I-Device"(智能設(shè)備)功能簡化了與 IO 控制器的數(shù)據(jù)交換和 CPU 操作過程(如用作子過程的智能預(yù)處理單元)。智能設(shè)備可作為 IO 設(shè)備鏈接到上位IO 控制器中,預(yù)處理過程則由智能設(shè)備中的用戶程序完成。集中式或分布式(PROFINET IO 或 PROFIBUS DP)I/O 中采集的處理器值由用戶程序進行預(yù)處理,并提供給 IO 控制器。
圖1. 網(wǎng)絡(luò)架構(gòu)
智能設(shè)備的應(yīng)用領(lǐng)域:
分布式處理
可以將復(fù)雜自動化任務(wù)劃分為較小的單元或子過程,這樣簡化了子任務(wù)的同時也優(yōu)化了項目管理。
單獨的子過程
通過使用智能設(shè)備,可以將分布廣泛的大量復(fù)雜過程劃分為具有可管理的多個子過程。 必要的話,這些子過程可存儲在單個的 TIA 項目中,這些項目隨后可合并在一起形成一個主項目。
專有技術(shù)保護
智能設(shè)備接口描述使用 GSD 文件傳輸,而不是通過 STEP 7 項目傳輸,這樣用戶程序的專有技術(shù)得以保護。
智能設(shè)備的優(yōu)勢:
簡單鏈接 IO 控制器。
實現(xiàn)IO 控制器之間的實時通信。
通過將計算容量分發(fā)到智能設(shè)備可減輕 IO 控制器的負荷。
由于在局部處理過程數(shù)據(jù),從而降低了通信負載。
可以管理單獨 TIA 項目中子任務(wù)的處理 。
智能設(shè)備可以作為共享設(shè)備。
S7-1200 V4.0及以上版本開始支持智能 IO 設(shè)備功能。本示例中介紹1200 CPU之間如何進行智能設(shè)備PROFINET通信,分別在相同項目和不同項目下進行組態(tài),實驗環(huán)境如下所示。
軟件:
TIA V15.1
硬件:
CPU 1217C DC/DC/DC V4.3
CPU 1215C DC/DC/DC V4.3
設(shè)備角色及地址:
表1 設(shè)備角色及地址 模塊 設(shè)備類型 設(shè)備名稱 IP地址 子網(wǎng)掩碼 S7-1217C IO控制器 PLC1 192.168.0.1 255.255.255.0 S7-1215C 智能IO設(shè)備 I-Device 192.168.0.2 255.255.255.0
STEP 1:創(chuàng)建 TIA Portal 項目并進行接口參數(shù)配置
使用TIA V15.1創(chuàng)建一個新項目,進入網(wǎng)絡(luò)視圖添加表1列出的所有設(shè)備,并進入各個設(shè)備以太網(wǎng)地址選項分別設(shè)置子網(wǎng)、IP地址以及設(shè)備名稱。
圖2. 以太網(wǎng)地址配置
STEP 2:操作模式配置
本例1215C作為智能IO設(shè)備,需要將其操作模式改為IO設(shè)備,并且分配給對應(yīng)IO控制器,配置所需的傳輸區(qū)。
選擇“PN接口的參數(shù)由上位IO控制器進行分配”復(fù)選框,可指定是由智能設(shè)備本身還是由上位 IO 控制器設(shè)置接口和端口。
智能IO設(shè)備還支持優(yōu)先啟動,勾選后加快IO設(shè)備的啟動速度,詳情請了解優(yōu)先啟動相關(guān)功能。
圖3. 操作模式
進入傳輸區(qū)視圖還可以分配地址區(qū)所屬組織塊及過程映像。
圖4. 傳輸區(qū)
STEP 3:項目編譯、下載、測試
分別編譯下載兩個PLC,在監(jiān)控表中添加傳輸區(qū)數(shù)據(jù),給Q區(qū)賦值,監(jiān)控發(fā)送和接收數(shù)據(jù)區(qū)是否一致。
圖5. 測試結(jié)果
STEP 1:創(chuàng)建 TIA Portal 項目并進行接口參數(shù)配置
分別創(chuàng)建2個不同項目,一個項目添加1217C,另一個項目添加1215C,進入表1中各個設(shè)備以太網(wǎng)地址選項分別設(shè)置子網(wǎng)、IP地址以及設(shè)備名稱。
圖6. 以太網(wǎng)地址配置
STEP 2:操作模式配置
本例1215C作為智能IO設(shè)備,需要將其操作模式改為IO設(shè)備,由于控制器未在同一項目,這里選擇未分配。
選擇“PN接口的參數(shù)由上位IO控制器進行分配”復(fù)選框,可指定是由智能設(shè)備本身還是由上位 IO 控制器設(shè)置接口和端口,比如1200智能設(shè)備的介質(zhì)冗余、優(yōu)先啟動、傳輸速率等接口和端口功能。
智能IO設(shè)備還支持優(yōu)先啟動,不同項目下無法直接選擇優(yōu)先啟動功能,需要先選擇“PN接口的參數(shù)由上位IO控制器進行分配”,然后在主站項目下為智能設(shè)備設(shè)置接口選項中的優(yōu)先啟動功能。
這里與相同項目下傳輸區(qū)的配置不同的是IO控制器的地址需要在主站項目下才能分配。
圖7. 操作模式
STEP 3:項目編譯后導(dǎo)出GSD文件
這里注意導(dǎo)出GSD之前需要正確編譯項目的硬件配置,不然導(dǎo)出選項是灰色的,無法選擇。導(dǎo)出GSD文件選項可以由用戶設(shè)置GSD文件名稱的標(biāo)識部分(GSD文件名稱的版本、廠商、日期等部分為默認設(shè)置),然后選擇存儲路徑并導(dǎo)出文件。注意導(dǎo)出的GSD文件不要修改文件名稱,不然會造成無法導(dǎo)入項目中。
圖8. 導(dǎo)出GSD文件
STEP 4:導(dǎo)入GSD文件
進入主站項目管理GSD文件視圖,選擇存儲GSD文件源路徑,在路徑下選擇需要安裝的文件進行安裝。
圖9:導(dǎo)入GSD文件
STEP 5:添加智能IO設(shè)備
進入硬件目錄,在其它現(xiàn)場設(shè)備列表中找到安裝的智能IO設(shè)備并添加,添加完成后進入圖2以太網(wǎng)地址配置視圖,檢查智能IO設(shè)備的設(shè)備名稱是否與源項目中名稱一致(注意一定要保證名稱一致),檢查無誤后分配給控制器,如設(shè)備概覽視圖,分配給控制器后會自動分配地址,也可以手動設(shè)置控制器側(cè)傳輸區(qū)地址。
圖10:添加IO設(shè)備
STEP 6:項目編譯、下載、測試
分別編譯下載兩個項目中PLC,在監(jiān)控表中添加傳輸區(qū)數(shù)據(jù),給Q區(qū)賦值,監(jiān)控發(fā)送和接收數(shù)據(jù)區(qū)是否一致。
圖11:實驗測試
1. 控制器診斷緩沖區(qū)報“IO設(shè)備故障-找不到IO設(shè)備”?
這是因為控制器無法與智能IO設(shè)備取得通信,可以通過以下方式查找故障原因。
(1)確認網(wǎng)絡(luò)是否是通的,可以使用Ping命令檢測網(wǎng)絡(luò)通斷。如果中間經(jīng)過交換機還要保證交換機支持DCP協(xié)議。
(2)檢查智能IO設(shè)備的名稱與源項目名稱是否一致。
(3)確認智能IO設(shè)備的硬件和軟件是否已經(jīng)下載。
圖12:網(wǎng)絡(luò)視圖報錯
2. 控制器如何控制智能設(shè)備上IO數(shù)據(jù)或是傳輸DB塊中數(shù)據(jù)?
如下圖所示,只需把PLC的IO地址與傳輸區(qū)中IO地址做一個映射關(guān)系。
圖13 地址映射
這里通過建立PLC數(shù)據(jù)類型方式把IO區(qū)數(shù)據(jù)與UDT中數(shù)據(jù)一 一對應(yīng),1215CPU中輸入輸出分別占用6個字節(jié)的數(shù)據(jù),這樣建立如下圖所示UDT。
圖14 UDT設(shè)置
在默認變量表中分別定義輸入、輸出、傳輸區(qū)1、傳輸區(qū)2所對應(yīng)的IO數(shù)據(jù)區(qū),這樣就可以使用MOVE指令來整體傳輸了。
同樣DB塊的數(shù)據(jù)也可以通過這種方式進行傳輸。
圖15 程序編寫
這樣1217控制器可以直接控制1215智能IO設(shè)備上的Q區(qū)數(shù)據(jù),同時讀取I區(qū)數(shù)據(jù)。測試結(jié)果如下:
圖16 測試結(jié)果
電話:13818569113
郵箱:13818569113@139.com
網(wǎng)址:http://www.xmzgk.com
地址:中國上海市青浦區(qū)崧盈路398號6棟