將PLC連接到互聯網——為新的自動化和信息系統創造更多可能性

前言

PLC正獲得信息技術(IT)的功能,可以直接與互聯網交互,從而為新的自動化和信息系統創造更多可能性。


幾十年來,可編程邏輯控制器(PLC)的特徵定義都是圍繞在可靠、快速地解決工業自動化邏輯問題上。這些基本原則在今天仍然有效,但這並不意味著最終用戶只應關注這些功能。現在,PLC 已獲得更多高級功能, 其中一些功能有助於解決最終用戶的應用問 題。


傳統的PLC受到來自有線輸入 / 輸出(I/O)點和聯網智能設備所提供可用信息的限制。但在互聯網上,存在大量信息可資利用,最終用戶可以通過網頁瀏覽器和應用程序來獲取、利用這些信息。許多網站都提供用編程來傳遞信息的方法,這就是PLC如何獲取數據並將其付諸實踐的方式。


為什麼需要連接互聯網?

但是,為什麼PLC需要連接到互聯網呢?原因之一是許多常見的應用程序需要了解當前環境的天氣情況。例如,灌溉或冷卻塔自動化系統,可以獲取實時和預測的溫度和局部降水值,以調整運營活動。


另一個例子是太陽能設備,該設備從某些網站獲取方位角和高度信息,並使用其來優化 太陽能電池板的對準方式。從網站獲得的信息, 可能不直接參與控制活動,但對運營商可能有用。電線生產商可以每日從證券交易所網站獲取銅商品的價格,以幫助在人機界面(HMI)上顯示近乎實時的利潤率。


為了以這種方式連接到互聯網,PLC需要使用工具來訪問超文本傳輸協議(HTTP)和處理 JavaScript 對象符號(JSON)。具有這些指令的 PLC,可以使用適當的應用程序 接口(API)啟動與網站的通信,從網站接收 數據,並將數據解析為所需的信息。


使用瀏覽器瀏覽互聯網時需要哪些操作?首先,在瀏覽器地址欄中,鍵入到達特定網站所需的字符串,我們稱之為統一資源定位符(URL),它指向特定的域和網頁。在瀏覽器中鍵入URL會生成對網頁服務器的 HTTP 請求,並且 HTTP響應用於填充瀏覽器的顯示。HTTP請求和響應,是易於理解的輕量級文本文件,易於軟件創建和解析。這就是人類使用瀏覽器與互聯網網站進行交互的方式,但是PLC的過程略有不同。


瞭解應用程序接口

許多網站都提供 API 定義,PLC可以使用它們來交換某些數據。PLC社區更感興趣的是提供可能對自動化機器、設備和系統有用的那種硬數據的站點。當然,PLC必須具有出站訪問互聯網的權限,才能與提供 API 的站點連接。信息可能包括當前和未來的天氣狀況、太陽的位置、商品或能源的當前價格或許多其它可能相關的數據。


互聯網搜索將指出哪些網站提供訪問所需信息的 API。一些 API允許免費訪問,而另一些API 則限制用戶每天訪問的次數。提供更具價值信息的提供商,則可能會收取一定的訂閱費。


當PLC或其它軟件,按照定義的格式發起 HTTP 請求時,網站將返回 JSON 格式的響應。用戶可以解析此響應以獲得特定數據。


在嘗試將PLC與網站人機界面連接或任何形式的低層級以太網通信時,應為程序員配備一些有用的工具。一種是開源的 Wireshark,它將公開HTTP請求和響應數據 包。另一個是文本編輯器,可以方便地查看 JSON 響應。任何文本編輯器都可以,但是有許多免費的編輯器,能夠提供增強顯示的 JSON 格式內容以簡化工作。


使用 JSON 文件開展工作

JSON響應以緊湊的ASCII 字符串形式接收,對於工作人員而言,以原始格式閱讀並不容易(圖1)。使用兼容的文本編輯器查看JSON 字符串,可以展示 JSON 文件中信息對象的分層和嵌套性質(圖 2)。

將PLC連接到互聯網——為新的自動化和信息系統創造更多可能性

圖 1 :典 型 的 JSON 數 據 有 效 負 載, 需 要 進 行 分 析 才 能 提 取 所 需 的 數 據。

本 文 圖 片 來 源 :Automation Direct


將PLC連接到互聯網——為新的自動化和信息系統創造更多可能性

圖 2 :此 高 亮 顯 示 的JSON 示例,展示了信息的分層性質,其中包含可供軟件解析的人類可讀數據。


感興趣的信息通常向下嵌套幾層,必須系統地解析和提取。在圖2的示例中,從第0層開始,然後進入第1層的“溫度”對象, 接著進入第2層的“英制單位”對象,最後獲得華氏溫度的“值”為 44。


每個 PLC 都不同,但是任何PLC都需要支持一些通用的基本功能,例如 HTTP 請求和 JSON 響應解析。


1 第一步


PLC 設備必須在工廠網絡上配置以太網端口,並帶有適用的默認網關、域名系統(DNS)、IP地址和子網掩碼。同樣,用於此目的的以太網端口必須能夠通過現場網絡 連接到因特網。

2 第二步


PLC設備必須可配置為充當傳輸控制協議(TCP)的客戶端。這相當於在 PLC中打開邏輯通道,因此 HTTP 指令可以通過以太網端口,發起網站 API 請求。

3 第三步


PLC 編程必須具有用於定義目標 API 服務器名稱(URL)和其它詳細信息的 HTTP 指令(圖 3)。此配置包括請求字符串以及響應信息應放置的位置。

將PLC連接到互聯網——為新的自動化和信息系統創造更多可能性

圖 3 :HTTP 指令使 PLC 可以發起對互聯網網站 API 的請求,從而獲取所需的數據。


4 最後


PLC 編程軟件必須具有可識別 JSON 的指令,該指令可以解析對象的各個分層,以獲得所需的數據(圖4)。由於 JSON 中的嵌套層,此解析操作可能需要執行數個步驟。

將PLC連接到互聯網——為新的自動化和信息系統創造更多可能性

圖 4 :需要一個解析指令以便 PLC 可以挖掘 JSON 數據有效負載中的對象層,並提取所需的信息。


通過互聯網檢查溫度

一種常見的應用程序,可以提供良好的概念驗證,它使用PLC與天氣網站聯繫,以確定當前或預測的本地溫度。在此示例中,已通過具有必要指令(HTTP 指令和 JSON 解析)的設計軟件對 PLC 進行配置。


例如,AccuWeather 網站上,在“API 參考” 標籤下,提供了具有許多詳細信息的API。用戶應始終向目標網站諮詢有關注冊、創建應用程序、費用和其它技術細節或限制的信息。創建應用程序時,將提供用戶專用的 API 密鑰, 這對於啟動 HTTP 通信是必需的。該用戶 API 密鑰有點像授權通信的密碼。


該API 提供了許多獲取數據的方法。例如, 如果 PLC 在大城市中,則可以在此基礎上實 現一步獲得溫度。為了獲得更高的準確性,用 戶可以選擇緯度 / 經度,甚至郵遞區號來查找位置鍵,該位置鍵用於調用其它 API 方法。對於此示例,我們將使用後一種方法。


搜索參考位置部分,將顯示“郵政編碼搜索”的“獲取”方法,顯示所有有效參數並允許用戶構建有效的 HTTP 請求字符串。該工具還可用於執行請求並查看響應消息和有效載荷 (JSON 數據)的外觀。遵循 API 規則,“鍵” 值包含所需的位置鍵。


接下來,搜索參考的“當前條件”部分, 將顯示“當前條件”的“獲取”方法。如果使 用用戶的 API 密鑰和新的位置密鑰來執行此方法,則將獲得另一個包含溫度的響應。在開發過程中,可以通過這種方式使用 AccuWeather 網站來搜索通訊選項。在實際運行時,將 PLC 配置為可以發出帶有正確請求字符串的 HTTP 命令。收到每個響應時,PLC 需要將數據放入字符串變量中,然後發出連續的 JSON 解析指令,以向下挖掘所需的數據。


保證網絡的安全性

使 PLC 能夠與互聯網連接,這開啟了無限可能性,但也帶來了一些問題。用戶必須確保,在工業設備連接到互聯網的任何時間點上,都能保證網絡的安全性。同樣,最終應用程序必須足夠強大,以承受任何形式的互聯網中斷。


對於本文中的示例應用程序,安裝本地溫度變送器可能會更好地為最終用戶服務。但是,互聯網提供了大量有用的信息,而這些信息無法在本地進行檢測。稍加思考和一些額外的編程工作,用戶就可以利用基於 PLC 的 HTTP 和 JSON 指令,為應用程序添加新的功能。


關鍵概念 :

■ PLC 可連接到互聯網,以為用戶收集有用的實時信息。

■將 PLC 連接到互聯網需要對互聯網如何運行和共享信息有基本的瞭解。

■互聯網可以增加價值, 但 是 將 PLC 連接到互聯網的用戶,需要注意網絡安全問題。


思考一下 :

將 PLC 連接到互聯網,如何使您的公司受益?歡迎在文後留言。


- END -

本文來自於《控制工程中文版》(CONTROL ENGINEERING China )2020年01-02月刊《封面故事》欄目,原標題為:將 PLC 連接到互聯網的好處


分享到:


相關文章: