產品簡介
詳細介紹
西門子平板顯示屏6AV7230-0CA20-2AA0觸摸屏
OPC UA 通信
9.3 將 S7-1500 用作 OPC UA 服務器
通信
190 功能手冊, 11/2019, A5E03735819-AH
訪問表
如果要通過 OPC UA 進行訪問,必須設置“從 HMI/OPC UA 可訪問"(Accessible from
HMI/OPC UA)。如果要允許 OPC UA 客戶端寫入變量/DB 元素,必須設置“從 HMI/OPC
UA 可寫"(Writable from HMI/OPC UA)。
請參見下表了解實現的訪問權限。
表格 9- 2 訪問表
OPC UA XML STEP 7 (TIA Portal) ,例如變量表
AccessLevel 從 從 HMI/OPC UA 可 可
訪問
從 從 HMI/OPC UA 可 可
寫 寫
實現的訪問權限
0 x x 無訪問權
x 0 x 無訪問權
1 啟用 x 只讀
2 啟用 禁用 無訪問權
3 啟用 禁用 只讀
2 啟用 啟用 只寫
3 啟用 啟用 讀+寫
(x = 無關)
參見
西門子平板顯示屏6AV7230-0CA20-2AA0觸摸屏
西門子平板顯示屏
6AV7230-0CA20-2AA0
觸摸屏
技術數據
CPU 變量的一致性 (頁 190)
管理讀寫權限 (頁 184)
9.3.2.4 CPU 變量的一致性
“AccessLevelEx" 屬性會擴展訪問特性
自固件版本 V2.6 起,S7-1500 CPU 的 OPC UA 服務器不僅支持“AccessLevel"屬性(參
見“協調 CPU 變量的讀寫權限 (頁 187)"),還支持“AccessLevelEx"屬性,該屬性除了提
供已介紹的用于讀取權限和寫入權限的位之外,還提供關于 OPC UA 變量一致性的信
息。新屬性自 OPC UA 規范的版本 V1.04 起引入(第 3 部分,地址空間模型)。
OPC UA 通信
9.3 將 S7-1500 用作 OPC UA 服務器
通信
功能手冊, 11/2019, A5E03735819-AH 191
讀取一致性特性
在 OPC UA 服務器的 OPC UA 信息模型中,屬性“AccessLevel"定義訪問權限。
AccessLevel 按位定義;此時,相關位為:
● 位 0 = CurrentRead
● 位 1 = CurrentWrite
● 位 2 到 7 與 S7-1500 CPU 的 OPC UA 服務器無關
關于讀取和寫入權限的部分中介紹了位組合的含義:
還添加了下列用于表示一致性的位:
● 位 8 = NonatomicRead;如果不能一致地讀取變量,此位會置位。對于變量的讀取一
致性,位 8 = 0。
● 位 9 = NonatomicWrite;如果不能一致地寫入變量,此位會置位。對于變量的寫入一
致性,如果未批準寫入權限的情況,位 9 = 0。
示例
OPC UA 變量(結構體)可讀取且可寫入,但讀取和訪問權限不一致。
因此:位 0、1、8 和 9 會置位:AccessLevelEx =“771"(1+2+256+512)。
另一結構體為只讀。
因此:位 0 和 8 會置 1,位 1 和位 9 不會置位:AccessLevelEx =“257"(1+0+256+0)。
服務器中屬性的處理
“AccessLevelEx"屬性僅可用于 OPC UA 服務器。該屬性不存在于節點集文件(XML 導
出文件)中。
但導出的屬性“AccessLevel"包含“AccessLevelEx"中的信息,請參見下一部分。
導出
對標準 SIMATIC 服務器接口執行 XML 導出時,服務器會將“AccessLevel"屬性(與
V1.03 相比,V1.04 中將該屬性擴展為 32 位)設為“AccessLevelEx"屬性的值。
導入
導入節點集文件時(例如來自服務器接口導出),S7-1500 CPU 會按照其自身對已導入
數據類型一致性的估算來設置屬性“AccessLevelEx",請參見下一部分。會忽略導入的
值。
OPC UA 通信
9.3 將 S7-1500 用作 OPC UA 服務器
通信
192 功能手冊, 11/2019, A5E03735819-AH
服務器接口中數據類型的一致性
對于以下數據類型,會在服務器接口節點處確保 S7-1500 CPU 程序循環中變量的一致性
(OPC UA 語言使用中的“原子性"):
● BOOL、BYTE、WORD、DWORD、LWORD
● SINT、INT、LINT、DINT、USINT、UINT、ULINT、UDINT
● REAL、LREAL
● DATE、LDT、TIME、LTIME、TIME_OF_DAY、LTIME_OF_DAY、S5TIME
● CHAR、WCHAR
本公司*銷售西門子PLC,200,300,400,1200,西門子PLC附件,西門子電機,西門子人機界面,西門子變頻器,西門子數控伺服,西門子總線電纜現貨供應,*咨詢系列產品,折扣低,貨期準時,并且備有大量庫存.長期有效
1? S7-400、ET200,
● 基于上述數據類型的系統數據類型和硬件數據類型也保持一致。
示例:HW_ANY,源自 UINT (UInt16)。
提示:如果瀏覽 S7-1500 CPU 的地址空間(例如使用 OPC UA 客戶端 UaExpert),可
在“類型 BaseDataType > 枚舉/數字/字符串"(Types > BaseDataType >
Enumeration/Number/String) 下找到一致的數據類型。
以下數據類型的變量不 不一致“(OPC UA 的語言使用中為“nonatomic"):
● SIMATIC 結構體通常不一致。這意味著所有變量(例如包含未知結構或 UDT 數據類
型)均不一致。
● DTL、IEC_Counter、IEC_TIMER 等系統數據類型是源自結構體的數據類型。
提示:如果瀏覽 S7-1500 CPU 的地址空間(例如使用 OPC UA 客戶端 UaExpert),可
在“類型 BaseDataType > 結構體"(Types > BaseDataType > Structure) 下找到基于結構
體的數據類型。組態 OPC UA 服務器
9.3.3.1 啟用 OPC UA 服務器
要求
● 如果使用安全通信 證書(如Secure OUC、OPC UA),請確保相關模塊采
用 當前時鐘和當前日期。否則,模塊將所用的證書評估為無效,且無法進行安全通
信。
● 已獲得操作 OPC UA 功能的運行系統許可證,請參見“OPC UA 的許可證 (頁 220)"。
OPC UA 通信
9.3 將 S7-1500 用作 OPC UA 服務器
通信
196 功能手冊, 11/2019, A5E03735819-AH
調試 OPC UA 服務器
出于安全方面的考慮,默認情況下未啟用 CPU 的 OPC UA 服務器:OPC UA 客戶端不
具備 S7-1500 CPU 的讀寫訪問權限。
要激活 CPU 的 OPC UA 服務器,請按照以下步驟進行操作:
1. 選擇 CPU。單擊該 CPU 符號(如,在網絡視圖中)。
2. 單擊 CPU 屬性中的“OPC UA > 服務器"(OPC UA > Server)。
3. 激活 CPU 的 OPC UA 服務器。
4. 確認安全說明。
5. 轉至 CPU 屬性,選擇“運行系統許可證"(Runtime licenses),并設置所獲得的 OPC UA
服務器的運行系統許可證。
6. 編譯項目。
7. 將項目下載到 CPU。
CPU 的 OPC UA 服務器現在啟動。
設置始終存儲
如果服務器已啟用且進行了相應設置,則再禁用服務器時,設置不會丟失。依舊會保存這
些設置,并在再次啟用服務器時提供這些設置。
OPC UA 通信
9.3 將 S7-1500 用作 OPC UA 服務器
通信
功能手冊, 11/2019, A5E03735819-AH 197
應用程序名稱
應用程序名稱即為 OPC UA 應用程序的名稱,會應用于服務器及其客戶端。該名稱顯示
在“OPC UA > 常規"(OPC UA > General) 下:
● 應用程序名稱的默認設置為:“SIMATIC.S7-1500.OPC-UA.Application:PLC_1"。
● 默認名稱由“SIMATIC.S7-1500.OPC-UA.Application:"以及“常規 > 產品信息 >名
稱"(General > Product information > Name) 中選擇的 CPU 名稱組成(本示例中為
“PLC_1")。
● OPC UA 服務器將使用該應用程序名稱向通信伙伴(OPC UA 客戶端)標識自己的身
份。例如,OPC UA 客戶端使用發現服務檢測可訪問的服務器時。
● 連接到 OPC UA 服務器時,顯示的應用程序名稱為該 CPU 的 OPC UA 客戶端。即,
CPU 將自動輸入該應用程序名稱并作為指令“OPC_UA_Connect"的“ApplicationName"
(指令“OPC_UA_Connect"參數“SessionConnectInfo"處的類型變量
“OPC_UA_SessionConnectInfo")。
在編程“OPC_UA_Connect""指令時,需為“ApplicationName"一個空字符串。例
如,診斷時,可使用該應用名稱標識客戶端及其會話 (SessionNames)。
如果已激活服務器,則還可使用在項目中有意義的其它名稱以及滿足項目要求的其它名稱
(例如,滿足性要求的名稱)。
以下示例源自 UaExpert:
更改應用程序名稱
要更改應用程序名稱,請按以下步驟操作:
1. 選擇 CPU。單擊該 CPU 符號(如,在網絡視圖中)。
2. 單擊 CPU 屬性中的“OPC UA > 常規"(OPC UA > General)。
3. 輸入一個有意義的名稱。
本公司*銷售西門子PLC,200,300,400,1200,西門子PLC附件,西門子電機,西門子人機界面,西門子變頻器,西門子數控伺服,西門子總線電纜現貨供應,*咨詢系列產品,折扣低,貨期準時,并且備有大量庫存.長期有效
S7-1500,
請注意,還要在證書上輸入應用程序名稱(主題備用名稱),并且更改應用程序名稱后可
能需要再次生成現有證書。
OPC UA 通信
9.3 將 S7-1500 用作 OPC UA 服務器
通信
198 功能手冊, 11/2019, A5E03735819-AH
9.3.3.2 訪問 OPC UA 服務器
服務器地址
可通過 CPU(固件 V2.0 及更高版本)上所有集成的 PROFINET 接口訪問 S7-1500 CPU
的 OPC UA 服務器。
在以下情況中,不能借助 CP 通過自動化系統的背板總線直接訪問 CPU 的 OPC UA 服務
器:
● 使用 TIA Portal 版本 V16 或更高版本、S7-1500 CPU 固件版本 2.8 或更高版本以及
CP 1543-1 固件版本 V2.2 或更高版本進行組態。
有關組態的信息,請參見“訪問 OPC UA 應用程序 (頁 148)"。
不能借助 CM 通過自動化系統的背板總線直接訪問 CPU 的 OPC UA 服務器。
使用 SIMATIC S7-1500 軟件控制器時,可以通過分配給軟件 PLC 的 PROFINET 接口對
OPC UA 服務器進行訪問。
以下應用示例介紹了軟件控制器的其它訪問選項:通過軟件控制器 V2.5 或更高版本的虛OPC UA 服務器接口組態
9.3.4.1 什么是服務器接口?
定義
服務器接口將 CPU 的 OPC UA 地址空間的節點合并到一個單元中,以便為 OPC UA 客
戶端提供該 CPU 的特定視圖。
每個服務器接口都會在 CPU 的 OPC UA 服務器中定義一個或多個命名空間。
STEP 7 (TIA Portal) 根據以下服務器接口類型加以區分:
● 配套規范
例如,對于此類服務器接口,可以使用工作組創建的配套規范。
工作組通常由 OPC 基金會成員以及其它共同制定特定用途(例如與 RFID 設備或注塑
機進行數據交換)的 OPC UA 信息模型的工業組織組成。
該信息模型在 OPC UA 非的地址空間中以 OPC UA 節點的形式實現。OPC UA 客戶
端可訪問這些 OPC UA 節點。
例如,還可以使用服務器接口類型“配套規范"在 SiOME 中下載公司內部信息模型。
如果在項目中實施某一配套規范,則會將該配套規范的具體規范作為服務器接口應用
到項目中。
對于“配套規范"類型的服務器接口,可以導入配套規范使用的多個命名空間。
有關配套規范的更多信息,請參見此處 (頁 243)。
對于這種類型的服務器接口,會將 OPC UA 服務器的 OPC UA 節點合并到一個單元
中。
為此,請使用項目規范、機器或設備要求作為基礎。
有關用戶自定義服務器接口的更多信息,請參見此處 (頁 223)。
OPC UA 通信
9.3 將 S7-1500 用作 OPC UA 服務器
通信
222 功能手冊, 11/2019, A5E03735819-AH
以注塑機作為配套規范的示例
本例中,服務器接口包含以下元素:
● OPC UA 節點,可通過 OPC UA 客戶端讀取該元素,以接收關于該注塑機的信息(可
讀 PLC 變量中)
● OPC UA 節點,可通過 OPC UA 客戶端寫入該元素,以將數值傳送到注塑機(可寫
PLC 變量中)
● OPC UA 節點,可通過 OPC UA 客戶端調用該元素,以啟動注塑機功能(通過服務器
方法)。
6AV7230-0CA20-2AA0
觸摸屏
技術數據
西門子平板顯示屏6AV7230-0CA20-2AA0觸摸屏
該服務器接口會啟用可用于控制注塑機的 CPU 默認視圖。
對于注塑機,配套規范“Euromap"定義了可合并到服務器接口中的整個系列的 OPC UA 節
點。
CPU 的其它 OPC UA 節點不包含在此服務器接口中。這樣可以更好地提供概覽。
用戶自定義服務器接口示例
CPU 應控制工件的生產。當生產作業從更高級的控制系統到達時,會開始生產。
生產作業通過服務器方法傳送:控制系統通過調用 CPU 中的服務器方法將信息傳送到工
件上。該服務器方法也會啟動生產。
控制系統(即連接的 OPC UA 客戶端)應當只能看到這一種服務器方法。因此,應在
CPU 中創建一個用戶自定義服務器接口并將服務器方法分配給該服務器接口。僅可為
OPC UA 客戶端啟用該服務器接口,因此 CPU 視圖僅限于這一種功能。
參見
使用 OPC UA 配套規范 (頁 229)
OPC UA 通信
9.3 將 S7-1500 用作 OPC UA 服務器
通信
功能手冊, 11/2019, A5E03735819-AH 223
9.3.4.2 創建用戶自定義服務器接口 口
簡介
說明基于以下示例:
生產單元“Cell_1"周圍的防護圍欄。圍欄配有門“Gate_1"。
S7-1500 CPU 控制整個生產單元,還控制通過 Gate_1 進入生產單元的權限。
機器人將藥物裝入生產單元的盒子中,然后將盒子堆放在貨盤上。
用于自動化物料運輸的自駕車輛將貨盤移動到中央倉庫,從而通過 Gate_1。
CPU 發布一個服務器接口,無人駕駛運輸系統可通過該接口安排 Gate_1 打開。
該服務器接口包含用于打開門的服務器方法“smOpenGate"和用于指示門狀態(打開或關
閉)的變量“Gate_1_State"。
創建用戶自定義服務器接口
要創建服務器接口,請按以下步驟操作:
西門子平板顯示屏6AV7230-0CA20-2AA0觸摸屏
西門子平板顯示屏
6AV7230-0CA20-2AA0
觸摸屏
1. 選擇已使用并組態為 OPC UA 服務器的 CPU。
2. 單擊“OPC UA 通信 > 服務器接口"(OPC UA communication > Server interfaces)。
3. 雙擊“添加新服務器接口"(Add new server interface)。
STEP 7 會顯示以下對話框。
圖 9-27 添加服務器接口
OPC UA 通信
9.3 將 S7-1500 用作 OPC UA 服務器
通信
224 功能手冊, 11/2019, A5E03735819-AH
4. 更改新服務器接口的名稱,使其在項目中具有說明性含義。
本示例中,將 STEP 7 建議的名稱“Server-interface_1"改為“Cell_1"。
5. 單擊“服務器接口"(Server interface),然后單擊“確定"(OK)。
6. 單擊“OPC UA 元素"(OPC UA elements) 區域中“程序塊"(Program blocks) 前面的三角
形。
STEP 7 會顯示以下表格供用戶編輯:
圖 9-28 編輯服務器接口
OPC UA 通信
9.3 將 S7-1500 用作 OPC UA 服務器
通信
功能手冊, 11/2019, A5E03735819-AH 225
該編輯器分為兩個區域。
– OPC UA 服務器接口
左側是服務器接口“Cell_1"的根節點。
該接口目前仍為空。尚未向該服務器接口添加任何 OPC UA 元素。
– OPC UA 元素
右側為 OPC UA 元素。
OPC UA 元素是到目前為止在 STEP 7 項目中創建的對象,具有屬性“可從
HMI/OPC UA 訪問"(Accessible from HMI/OPC UA)。
可將這些 OPC UA 元素添加到新的服務器接口“Cell_1"。
7. 將 OPC UA 元素拖放到新服務器接口的“<新增>"(<Add new>) 行中。
說明
以下規則普遍適用:如果將數據塊或工藝對象存儲在表格的左側區域,則 STEP 7
(TIA Portal) 會在服務器接口中創建一個對象。數據塊的元素作為單獨的節點排列在該
對象下方。
如果將結構存儲在表格的左側區域,STEP 7 會為結構整體創建一個節點,并會為結構
的各個元素創建節點。
這一點同樣適用于數組:同樣,STEP 7 會為數組整體創建一個節點,并會為數組的各
個元素創建節點。
將方法放在表格的左側區域時,STEP 7 會創建一個節點;將顯示已插入方法的參數以
供參考。
OPC UA 通信
本公司*銷售西門子PLC,200,300,400,1200,西門子PLC附件,西門子電機,西門子人機界面,西門子變頻器,西門子數控伺服,西門子總線電纜現貨供應,*咨詢系列產品,折扣低,貨期準時,并且備有大量庫存.長期有效
9.3 將 S7-1500 用作 OPC UA 服務器
通信
226 功能手冊, 11/2019, A5E03735819-AH
在本示例中,將“Gate_1_State"變量從右側區域拖到左側區域的“<新增>"(<Add new>)
位置。
然后,將服務器方法拖到左側區域。
服務器方法位于右側區域的“smOpenGate_DB [DB3]"數據塊中。
STEP 7 (TIA Portal) 將顯示如下對話框:
圖 9-29 向服務器接口添加 OPC UA 元素
限制 OPC UA 服 服 務器的視圖
通過選擇 OPC UA 元素可限制 OPC UA 服務器的視圖以及 OPC UA 客戶端的選項。
在該示例的服務器接口中,缺少“Robot_1"數據塊,因為工業卡車不需要訪問機器人的服
務器方法和變量。
在這種情況下,在 S7-1500 CPU 的 OPC UA 屬性中禁用標準服務器接口
(SIMATIC 命名空間),以便無法通過其它任何方式訪問過濾的節點。
圖 9-30 禁用標準服務器接口