「軟件正在吞噬世界,全部過去特定硬件實現的功能,如今都會經過軟件實現」,傳統封閉的工業控制系統,其經過特定硬件實現的功能在工業互聯網或工業4.0時代都將被軟件所取代。數據庫
目錄編程
互聯網是一個頗具顛覆性和侵略性的思想和體系,從它的誕生之日起短短十多年時間,就跨界打擊多個行業並取得巨大成功。總結起來,互聯網的核心思想就是規模經濟,以規模造成經濟效應,即在初始階段,進行大規模的資本投資,提供知足基本需求的產品,大規模的發展客戶,以求達到規模經濟性。並在達到必定規模後就開始多元化批量複製這種規模經濟,造成多元化的規模發展。由於互聯網每新增長一種產品的存儲、營銷等成本能夠趨近於零,因此互聯網的這種特質決定了其針對各個行業必然具備自然的侵略性和顛覆性。框架
在互聯網向工業控制系統領域逐漸***以後,誕生了工業互聯網、工業4.0以及工業物聯網等市場營銷概念和體系。這些概念喧囂塵上,一時滿城風雨。喧囂以後可能歸於沉寂,然而來自互聯網的***已不可阻擋。機器學習
天下大勢,浩浩蕩蕩,順之者昌,逆之者亡。做爲工業控制系統從業者,咱們應該拋開市場營銷的概念迷霧,去追尋互聯網概念下工業控制系統的技術變革。在這樣的變革時代,工業4.0、智能工廠、工業互聯網等倡導的理念及其技術的實現將不得不在短期內從新配置,所以須要從新靈活配置工業控制系統的核心設備PLC。如何來靈活配置PLC成爲工業互聯網真正實現工業互聯的的背後支撐。所以本文從這樣的角度出發,描述了在工業互聯網時代,工業互聯網的背後核心技術。編程語言
可編程邏輯控制器,英文稱Programmable Logic Controllers,簡稱PLC(本文在後續一概簡稱PLC)是帶有模塊化組件的小型工業計算機,旨在自動化定製控制過程。我理解的控制過程就是經過程序對物理設備進行控制的過程,而這個程序就是經過邏輯表達的形式實現的(梯形圖或其餘PLC編程語言)。在PLC內部,將真實物理設備經過一個符號或字符串進行邏輯表示,所以編寫的程序就是對這些邏輯進行編程和組合、循序控制的過程。這個控制過程是可編程的,可自定義的。所以稱之爲可編程邏輯控制器(PLC)。分佈式
PLC一直在發展中,至今還沒有對其下最後的定義。國際電工學會(IEC)曾前後於1982年11月、1985年1月和1987年2月發佈了PLC標準草案的第一,二,三稿。在第三稿中,對PLC做了以下定義:可編程邏輯控制器(PLC)是一種數字運算操做電子系統,專爲在工業環境下應用而設計。它採用了可編程序的存儲器,用來在其內部存儲執行邏輯運算、順序控制、定時、計數和算術運算等操做的指令,並經過數字的、模擬的輸入和輸出,控制各類類型的機械或生產過程。可編程邏輯控制器(PLC)及其有關的外圍設備,都應按易於與工業控制系統造成一個總體、易於擴充其功能的原則設計。
在工業控制系統領域內,工業生產環境的物理機器和生產線一般由硬件PLC控制,這也被認爲是當前最優化的解決方案並以此驅動工業自動化進程多年。爲了更好地理解PLC的目的,讓咱們看一下PLC的簡史。
工業自動化在PLC以前就已經開始了。在20世紀早期到中期,工業自動化一般使用複雜的機電式繼電器電路來實現。機電繼電器是一種電子控制器件,它具備控制系統(又稱輸入迴路)和被控制系統(又稱輸出迴路),當輸入量(如電壓、電流、溫度等)達到規定值時,使被控制的輸出電路導通或斷開的電器。可是,經過繼電器這種架構製造簡單的自動化所需的繼電器、導線和空間的數量都存在不少問題。一個簡單的工廠控制過程的實現就須要成千上萬的繼電器!若是邏輯電路中有什麼東西須要更改的話,那更是災難性的。
1968年,第一臺可編程邏輯控制器(PLC)問世,取代了工業生產中複雜的繼電器電路實現的工業自動化控制。最開始提出明確想法的是美國通用公司。在1968年的時候他們想要一臺能夠取代繼電器控制的裝置。次年,美國數字設備公司爲通用公司研製出了第一臺可編程控制器PDP-14,而且試用成功,這就是世界上第一臺PLC。到70年代後期,PLC開始進入快速發展階段,運行速度快速提高,小型化也有實質性的進步。80年代初開始在西方國家普遍應用,並快速成長,那段時間可謂是PLC的黃金時期。以後又發展了大型機和超小型機。到21世紀,PLC規模不斷擴大,I/O點數增長,多CPU並行工做,大容量存儲,高速掃描等,模塊化、標準化成爲主流,成本大幅度縮減,應用更加普遍。
PLC的設計可讓熟悉繼電器邏輯和控制原理圖的控制工程師和技術人員可以輕鬆編程。其中最初始的實現就是梯形圖邏輯,該邏輯被設計用來模擬控制電路原理圖。梯形圖看起來像是控制電路,其中電力從左到右經過閉合觸點來激勵繼電器線圈。以下圖1所示:
圖1--梯形圖邏輯示例
上圖的梯形圖看起來像簡單的控制電路原理圖,左側顯示開關、按鈕、傳感器等輸入源,右側顯示輸出源。經過這樣的梯形邏輯等直觀的界面編程來實現複雜的自動化過程,比使用以前的繼電器更加便捷高效,並且過渡到PLC的學習成本也降至最低。PLC是微機技術與傳統的繼電接觸控制技術相結合的產物,它克服了繼電接觸控制系統中的機械觸點的接線複雜、可靠性低、功耗高、通用性和靈活性差的缺點,充分利用了微處理器的優勢,又照顧到現場電氣操做維修人員的技能與習慣,特別是PLC的程序編制,不須要專門的計算機編程語言知識,而是採用了一套以繼電器梯形圖爲基礎的簡單指令形式,使用戶程序編制形象、直觀、方便易學;調試與查錯也都很方便。用戶在購到所需的PLC後,只需按說明書的提示,作少許的接線和簡易的用戶程序編制工做,就可靈活方便地將PLC應用於生產實踐。
而基於這樣的梯形圖邏輯進行編程,只須要根據現場工廠環境的的生產流程對照編程梯形圖邏輯便可,從而實現控制過程的可編程性。這個可編程邏輯控制器(PLC)雖然是可編程的,可是和現今熱炒的軟件定義仍是有一些區別,主要在於可編程邏輯控制器(PLC)的可編程性具備必定的限制條件。即每臺可編程邏輯控制器(PLC)對其進行編程,都須要特定的編程軟件將程序實現以後,經過和可編程邏輯控制器(PLC)通信來實施最終的控制過程程序的上載。可編程邏輯控制器(PLC)介於傳統硬件設備和軟件定義之間,實現了數據平面的可編程性,可是控制平面並無抽離出來實現統一集中控制。
PLC是爲了應對機電繼電器複雜的機器控制而開發的。目的是開發更靈活的控制系統,減小機器停機時間,並用這種新設備執行邏輯功能。從PLC開發出來到如今,確實也達到了最初設計和開發的目的。PLC已經在工業自動化領域默默奉獻了有幾十年的歷史,即便在對安全相當重要的應用中,它們也已經實現了對機器進行控制的可靠性。以致於幾乎全部的現代工業自動化的控制器都是由PLC實現,在工業環境下,PLC幾乎無所不能。
第一次工業革命發生於18世紀到19世紀,經過創造新的製造工藝改進了生產流程從而促進了社會的進步。當時的製造業主要依賴於手工進行商品的生產,而誕生於英國的第一次工業革命改變了這種情況,使得機器製造業可以更好地利用水和蒸汽動力促進生產力提高。而這些改進的創新思想和體系在第二次、第三次工業革命中天然也起了很大的做用。正在進行的工業革命是第四次工業革命,也被稱爲工業4.0(德國提出)或工業互聯網(美國提出)。工業4.0的基本概念與其餘工業革命相同:經過改進業務流程和製造工藝,減小生產時間,下降生產材料成本,減小製造缺陷產品的數量,並經過創造可以代替人工做的機器來使工業製造更容易。
工業4.0或工業互聯網是正在進行的工業革命的術語。它最初是指製造業的數字化,但實際上也指醫療、物流、石油和自然氣等其餘行業的數字化。也指咱們常常聽到的有關智能工廠,智能城市或智能設備的概念。工業4.0是關於物聯網(IoT),網絡物理系統(CPS),信息技術(IT)和操做技術(OT)的融合,其中,變革首先從信息技術領域引起,雲計算,機器學習和大數據等IT技術引導現代信息企業採用新的業務模式,改進自身業務流程和運營效率,提高企業核心競爭力。而這些IT新技術的發展解決了互聯網企業和傳統企業共同的一個訴求,即解決規模不斷擴張、業務快速變化的挑戰,同時還有效控制成本。在傳統企業中,其餘類型的企業願意經過在早期階段部署新技術來承擔風險,而工業企業可能會更謹慎。因爲工業環境的特殊性,工業企業的這個訴求是否可以借鑑互聯網企業的成功仍是一個未知數。爲了克服這個門檻,這個行業須要創新,所以相似工業4.0等概念和體系的興起,目的就是爲了進行大量的研究、測試和實施這些技術變革引導到工業企業中。
關於實踐的最新進展狀況,咱們經過分析傳統的自動化金字塔模型來進行說明。傳統的自動化金字塔(圖2)表明了當今工業控制系統領域的一個典型模型。從傳感器到執行器的全部物理設備都處於現場級,用於控制這些現場級物理設備的數據和動做處於第二級,第二級經過使用PLC等物理硬件來控制現場級的物理硬件。第三個級別是一個數據採集和監控級別,容許用戶經過SCADA系統監視和控制他們的工業控制過程。SCADA是數據採集與監視控制系統的縮寫,典型的SCADA架構包括傳統自動化金字塔的前三個級別。MES和ERP系統則在SCADA架構之上。MES表明製造執行系統,它是指實時監控制造數據的系統。MES系統能夠跟蹤整個生產過程的貨物狀況。企業資源規劃(ERP)系統提供了自動化金字塔的最高級別。ERP系統管理核心業務流程的實時監控,如生產或產品計劃,物料管理和財務狀況等。
圖2--傳統的自動化金字塔
工業4.0和網絡物理系統到來後,傳統的基於該金字塔模型的工業控制系統架構正在發生變化。首先在最頂層的ERP和MES就逐漸實現互聯和融合,實現了生產數據的上層聯動,並最終利用雲計算、大數據乃至人工智能的數據存儲和運算的優點將生產數據進行深度挖掘和加工,並最終輸出優化的生產數據用於提升生產效率。而在下層的生產執行層設備和系統,則也處於智能和重構階段,好比最終生產數據的終端以及產生變化,包括人們身穿的跑鞋、智能工廠裏面的智能生產線,這些從傳感器到執行器的全部物理設備已經在向數字化、智能化方向發展而且已經取得成績。所以能夠發現,在工業互聯網或工業40時代,工業控制系統最終的體系變革是將傳統的金字塔模型從兩端進行變革。準確一點來講,工業互聯網側重的是上層生產數據的技術變革,即工業控制系統和雲計算、大數據、人工智能等的融合,提倡將工業控制系統的數據上載到工業雲上,利用雲進行數據挖掘和分析從而優化生產的過程。因此在如今的工業互聯網架構實現上,其體系架構實現要麼是工業互聯網平臺直接和PLC設備直接採集PLC上的生產數據,要麼是工業互聯網平臺採集工業控制系統的實時數據庫中的數據,要麼就是開發出一個數據採集網關,經過數據採集網關將全部數據所有采集後,網關再將數據上傳至工業互聯網平臺。因此工業互聯網本質上來講就是一個將工業控制系統數據所有匯聚到一個雲計算平臺上。工業4.0則側重於實現底層從傳感器到執行器的全部物理設備的數字化和智能化,而且實現這些終端設備直接將該數據上傳。上傳的平臺多是MES,歷史數據庫也多是工業互聯網平臺。對大多數企業來講,工業4.0首先要實現的第一步就是經過MES系統對生產系統全部相關子系統進行垂直整合和數字化,以實現實時的工廠運營透明度。同時橫向整合還包括功能區的鏈接。在此MES起到了信息轉盤的核心元素功能,對大數據進行收集、分析、處理以及爲支持其餘系統數據交換。
在自動化控制誕生以前,系統和機器的生產必須依靠手工進行操做。而自動化所帶來的好處是,將那些須要重複操做的環節利用自動化控制實現,解放了人的雙手並實現了諸多優點--從縮短上市時間到減小故障產品均可以很好表現自動化控制的優勢。儘管如此,隨着市場需求的不斷增加,人們仍是嫌棄現有的自動化控制沒法知足生產效率的需求,而實質也是這樣。人們須要更多的靈活性來保障快速的產品生產上市銷售,靈活性是如今工業自動化的關鍵和重點。這些靈活性表如今:愈來愈多的工廠數據應該是可複用的,邏輯代碼應該是易於移動和可重用的,系統應該是模塊化和可擴展的,生產企業應該根據本身的需求選擇他們的優選供應商而不是如今的綁定銷售等等。
工業互聯網和工業4.0的這些實現支持了將來工業控制系統靈活性和可擴展性的需求。工業互聯網使得咱們的生產數據能夠進行規模化集中存儲,實現之前不可能實現的大數據,並利用雲計算平臺史無前例的計算能力對這些大數據進行分析,挖掘和優化生產效率。工業4.0使得現場設備、機器和工廠已經變得「更智能」,因此咱們能夠談論智能設備、智能機器和智能工廠。可是,咱們會發現,不管是工業互聯網仍是工業4.0,均未對工業控制系統的的「大腦」PLC作出任何更進一步的技術變革。這種兩頭重中間輕的現象,就比如是高速路上的收費站,光高速路擴寬遠遠不可以實現更大的汽車吞吐,矗立與高速路上的各個收費站纔是這條路上的瓶頸點。所以如今針對收費站都須要設置更多收費窗口、實現電子收費等等舉措改革而適應高速快速增加的車流。適用於工業控制系統領域也是同樣,控制的核心PLC設備不可以靈活擴展,無疑這一限制將會大大減弱工業控制系統靈活性和可擴展性。
所以目前業界針對工業互聯網、工業4.0等的技術體系探索,重點將圍繞PLC展開。
具體來講實現PLC靈活性和可擴展性的方案主要有如下兩種:
一、實現PLC虛擬化。利用PLC虛擬化是虛擬PLC(vPLC)取代傳統硬件PLC;
二、PLC硬件重構,實現下一代新型和智能的PLC設備,取代傳統硬件PLC。
這兩種技術是目前工業向互聯網轉化的技術熱點和研究方向,至少從理論實現的角度上來講,實現PLC虛擬化將最大程度的保障現有的大部分廠家及其用戶的現有利益,而且基於信息系統的成功案例,使得你們對其實現信心滿滿。另外的PLC硬件重構,主要以軟件定義思想爲核心,將PLC硬件的邏輯運算平面和邏輯控制平面進行分離,PLC硬件將實現通用的邏輯運算,統一由控制器進行控制平面的邏輯控制和邏輯管理。
虛擬化和雲計算在ICT領域取得巨大成功,其創新程度甚至顛覆了整個ICT舊有的架構體系,從裏到外所有翻了一遍。其效果也是至關顯著,至少將如今的ICT環境的運營成本利用虛擬化和雲計算技術已經顯著下降,至於下降多少,下降到什麼程度,我相信這是一個衆口難調的數字。可是至少使用虛擬化和雲計算的企業,已經享受了其帶來的好處,而且當前虛擬化和雲計算技術已經成爲辦公室和企業界最早進的解決方案。可是在工業應用中部署這些技術和解決方案並不容易,由於在工業環境中,要求一般很高,系統故障、實時性等對工業生產和應用來講是相當重要的。而工業互聯網和工業4.0舊是着手於解決虛擬化和雲計算等先進IT創新技術運用於工業領域並提升工業生產效率的變革和技術實現。在工業互聯網和工業4.0的實踐當中,工業互聯網和工業4.0技術在當前來講,是否已經如此發達和可靠,以致於它們能夠在須要知足穩定性和實時計算等較高要求的工業控制環境中使用,這是值得懷疑的。可是從一些公開發表的案例和統計數據來看,製造商已經開始從工業互聯網和工業4.0技術中受益,這些受益的部分主要是利用工業互聯網或工業4.0技術,他們可使用實時生產數據來幫助更有效地規劃生產過程,從而提升生產效率和下降運營成本。這些案例的成功使得人們在備受鼓舞的同時,積極投入成本研發下一步的技術解決方案和完善當前技術實現。在當前,相似西門子等工控設備廠商和從事IT領域的虛擬化雲計算廠商均將目光投入到嘗試虛擬化控制平面上面,使用軟件而不是物理硬件來下降運營成本,並擁有更加靈活的控制環境。PLC虛擬化或軟件定義的PLC,換句話說,使用虛擬PLC(vPLC)或軟件定義的PLC是他們下一步研究和實現的目標。至少從目前的技術實現和研究方向上以及IT的成功經驗上看,大勢是如此的。
PLC虛擬化或軟件定義的PLC,其技術思想都是將傳統專用的硬件功能解耦。由於在工業互聯網或工業4.0時代,工廠車間中具備更高級別應用程序的機器的數據集成主要是使用傳統協議完成的,而傳統協議缺少對新設備靈活集成的支持。二者之間老是存在着矛盾,如何解決這種矛盾?只能在這二者之間引入一箇中間層,經過虛擬化PLC控制器或軟件定義PLC將控制邏輯與機器分離,能夠得到更靈活的從新配置。
PLC虛擬化或軟件定義PLC經過容許用戶更換或添加組件而不影響系統的其餘部分,實現輕鬆的可擴展性和系統模塊化。PLC虛擬化或軟件定義PLC設計爲開放平臺,容許用戶選擇首選組件和解決方案,這意味着用戶能夠靈活地選擇不一樣的供應商(無供應商鎖定)。在工業3.0系統中,在同一個體系結構中使用多個供應商的組件並不那麼容易,或者根本不可能。PLC虛擬化或軟件定義PLC中一般沒有硬件依賴性,因此很容易遷移和重用軟件。PLC虛擬化或軟件定義PLC使用虛擬化或軟件定義技術,使用更多的軟件而不是硬件,由於所需的硬件數量較少,因此下降了成本,縮小了佔用空間。目標是提供現成的和可供銷售的COTS(COTS =商業現成的)軟件/硬件產品以實現總體解決方案的靈活選擇和可擴展性。虛擬化技術和軟件定義的體系結構是以軟件爲中心的模式,在系統集中管理、網絡處理和安全性方面具備優點。遠程監控下降了運營成本,而維護工程師或操做員並不老是須要現場檢查機器的狀態。集中管理簡化了遠程監控,由於只需訪問一個軟件平臺便可管理您的資產。經過雲計算和使用智能傳感器(包括通訊能力和板載診斷的傳感器),機器數據被推送到雲端,數據能夠經過用戶界面(HMI)訪問。機器數據能夠用於預測性維護,這意味着機器數據能夠用來預估機器即將發生故障的時間。
PLC虛擬化在這裏並不是是指軟件PLC(SoftPLC)或安裝虛擬機裏面的軟件PLC,而是指將PLC執行環境與I/O模塊解耦,並將PLC執行環境標準化、模塊化、虛擬化的實現。而軟件定義則是將PLC的邏輯抽象出來,利用軟件定義網絡的實現思路,經過一個應用程序商店的方式實現針對PLC執行動做的程序開發和管理,讓應用程序定義硬件PLC的功能。也就是將PLC的邏輯控制、程序存儲和IO模塊分離,利用應用程序實現邏輯控制部分。
工業互聯網或工業4.0在實現PLC虛擬化或軟件定義的PLC時,均使用到了如下技術:
l 基於管理程序或容器的虛擬化
l 軟件定義網絡(SDN)
l 網絡功能虛擬化(NFV)等
PLC虛擬化典型的架構實如今學術界和工業界比較典型的架構和描述是:
圖3 PLC虛擬化架構
在PLC虛擬化中,PLC I/O總線被高速網絡功能所取代,SDN容許在I/O結構上建立靈活的虛擬通道,以適應vPLC實例和I/O模塊之間的鏈接流,例如傳感器接口或運行控制器,而且基於SDN的控制能夠提供靈活的業務隔離。此外,因爲近年來在現場可編程門陣列(FPGA)和專用集成電路(ASIC)技術方面的進展,這種I/O模塊可使用FPGA或ASIC模塊以更低的複雜度來構建。在這種架構中,SDN從新配置是經過SDN控制器經由與其北向接×××互的高可用性(HA)服務器(圖中未示出)來管理的。HA服務器連續監視SDN交換機統計信息和路徑可達性,在性能降低或故障的狀況下觸發從新配置過程。
這種PLC虛擬化架構的實現主要考慮的網絡因素是,這種分散式模型與遠程或分佈式I/O PLC拓撲具備類似之處,其中網絡I/O模塊充當PLC機架的擴展。在直通交換中的進步以及遠程直接存儲器訪問技術(RDMA)中,特別是在融合以太網情形中,已經容許在10G以太網交換結構中端口到端口的延遲縮小到百分之幾納秒以及應用延遲縮小到微秒級。此外,諸如英特爾的數據平面開發工具包(DPDK)、思科的VPP等資源容許實現繞過內核的低延遲、高吞吐量數據包處理機制,將網絡堆棧帶入用戶空間,並使適配器可以執行直接內存訪問操做到應用程序內存。這使得知足在以數微秒的單位時間內,傳輸的抖動和閃斷的要求成爲可能,從而容許在商用服務器硬件上實現裸機性能。
這種PLC虛擬化架構的實現主要考慮的計算因素是,首先,因爲採用了硬件輔助虛擬化等技術使得服務器近乎利用原始性能,低延遲I/O機制或適用於數字信號處理任務的ISA擴展的可用性的提升,現代x86或ARM處理器已經可以替代獨立PLC應用中的微控制器。其次,諸如Jailhouse(西門子),Xtratum、PikeOS等實時靜態分區管理程序的可用性支持爲實時工做負載託管RTOS客戶VM。即在計算方面,PLC虛擬化主要考慮實時性、安全性和性能要求。在針對PLC虛擬化上,其運行的實時靜態分區管理程序,在考慮工業控制系統的這些特性上,其虛擬化管理程序設計須要同時考慮一下幾種模式的混合:
一、徹底虛擬化模式,其中操做系統徹底未經修改在安全分區中運行。在此模式下,虛擬化管理程序確保其中運行的操做系統不會以任何方式損害或影響並行運行的其餘操做系統,而且其上運行的操做系統不經任何修改便可運行在虛擬化管理程序上。可是,這是以犧牲輕微的性能損失爲代價的。這種模式主要運行與實時性不強的工業應用或企業應用。
二、半虛擬化模式,爲了保證明時代碼或實時操做系統的硬實時性和穩定性,虛擬機管理程序還具備稱爲「特權模式或半虛擬化」的部署模式。在特權模式或半虛擬化模式下,操做系統保留完整的硬件訪問權限並使用虛擬機管理程序提供的半虛擬化接口。這容許操做系統以原生速度運行,而不須要虛擬機管理程序添加任何延遲。
三、即在工業控制系統環境中,其設計的虛擬化管理程序必須是具備半虛擬化特徵的虛擬化管理程序,因此在物聯網或工業互聯網時代,Xen具備的先天優點又開始遠遠領先與其餘虛擬化管理程序。
在查看了目前國外廠家的工業控制系統虛擬化管理程序的設計後,其典型的狀況大都是使用徹底虛擬化模式和半虛擬化模式的混合,其中一些實例運行監控級功能,另外一些實例運行硬實時控制功能。半虛擬化模式或特權模式不會引入任何延遲,所以使其適用於實時性應用程序。操做系統之間的通訊經過虛擬網絡或SDN網絡、共享內存來實現。
而軟件定義架構的PLC更強調的是一種體系,一種實現思想。即和軟件定義網絡、軟件定義世界同樣,PLC設備的智能化和標準化的體現就是典型的軟件定義的PLC,包括PLC輕鬆鏈接至互聯網;將APP和分析結果嵌入機器和雲,實現智能化和自我意識;無需更換PLC硬件便可改變和升級PLC設備功能,爲用戶提供智能,實現持續改進;經過API和生態系統擴大工業互聯網平臺應用。
一個典型的實現架構是:首先具備一臺工業機器,能夠用來測試整個生產過程。這臺機器能夠看做是一套能夠經過OT控制協議控制的輸入和輸出。這是理想的實時協議,由於它確保消息在必定的時間窗內到達。而後開發一個霧計算或邊緣計算層,經過工業控制協議在運行時間內與機器進行通訊。其運行時會將讀取的數據從機器發送到虛擬PLC,而後將PLC的輸出返回給機器。以下圖4所示:
圖4 軟件定義架構下的PLC實現
國外根據這個技術框架測試的技術方案實現,
圖5 技術方案
該技術方案選擇了將Raspberry Pi與UniPi擴展板結合模擬工業機器,UniPi擴展板爲Raspberry Pi提供數字輸入和繼電器控制,使用CODESYS控制軟件,這些輸入和輸出被映射到Modbus寄存器,並最終由上層經過工業控制協議Modbus來實現工業控制操做。而後在邊緣層或霧計算層,使用OpenPLC充當邏輯控制器,OpenPLC是一個標準化的軟件PLC,能夠運行結構化文本(ST)程序。OpenPLC包含一個Web服務器,經過它能夠將咱們的PLC程序上傳到PLC中運行。模擬工業機器與PLC之間的通訊經過Modbus完成。最後是PLC須要實現與工業雲鏈接,這一步經過Node-RED工具實現和OpenPLC的結合。Node-RED是一個基於流量的物聯網工具。它能夠鏈接不一樣的設備、API和其餘服務。在邊緣層或霧計算層中,經過Node-RED將PLC和OPC UA協議服務器鏈接起來實現通訊,並在雲端安裝OPC UA客戶端實現邊緣層或霧計算層與雲端的通信工做。
邊緣層或霧計算層使用Node-RED做爲運行時,OpenPLC做爲虛擬PLC。 Modbus消息可使用外部包發送和接收。機器的輸入經過Modbus節點讀入並經過另外一個Modbus節點發送給虛擬PLC。虛擬PLC處理這些數據並將結果寫入其內部的Modbus寄存器。而後Node-RED對PLC的輸出進行輪詢,並將結果發送回機器。在OPC UA節點的幫助下,能夠將數據發送到OPC UA服務器,或者能夠在運行時間內託管本身的服務器。而後,IT系統或雲端能夠經過這個OPC UA協議以統一的方式查閱全部數據。
這只是一個基於框架實現的一個最簡單的例子,也是最終實現比較理解的例子,PLC的虛擬化和軟件定義後,針對下層IO解耦,將實現工業控制系統的最大靈活性和可擴展性,此外還有諸多好處。而在實現這個的圖中,目前已有的工業雲平臺均以兼容傳統PLC架構的模式在運行。舉例來講,西門子公司的MindSphere工業雲平臺,該平臺採用基於雲的開放物聯網架構,能夠將傳感器、控制器以及各類信息系統收集的工業現場設備數據,經過安全通道實時傳輸到雲端,並在雲端爲企業提供大數據分析挖掘、工業 APP 開發以及智能應用增值等服務。其架構以下圖所示:
圖6 MindSphere工業雲平臺架構
MindSphere 平臺包括邊緣鏈接層、開發運營層,應用服務層 三個層級。主要包括 MindConnect、MindClound、MindApps 三個核心要素,其中,MindConnect 負責將數據傳輸到雲平臺, MindClound 爲用戶提供數據分析,應用開發環境及應用開發工具,MindApps 爲用戶提供集成行業經驗和數據分析結果的工業智能應用。
在MindConnect層中,目前主要兼容的仍是去採集現場PLC或歷史數據庫的數據,直接鏈接到PLC或歷史數據庫上進行數據採集,或者經過數據採集網關進行數據採集,均以兼容傳統架構的方式運行。
這種模式或技術解決方案咱們能夠稱爲工業互聯網的第一階段,要實現真正意義上工業互聯網或工業4.0所構建的藍圖,僅僅將數據採集上來進行大數據分析、預測、優化等還不夠,咱們還須要設備自己擁有智能計算、智能處理的能力。而這些優化和計算的能力針對終端來講,可能智能設備自己的計算能力便可知足,可是在真正的工業生產過程當中,最終的控制過程還須要PLC來進行控制,PLC的智能計算、智能處理必須具備軟件定義的能力,只有經過軟件定義的PLC,纔可以經過上層的數據分析、預測和優化以後,根據應用功能優化和調整PLC控制程序,實現工業生產的效率提高,同時也避免了人員的繁瑣調試等,提升運營成本。而現有的雲平臺還沒法作到直達底層的優化×××定義,所以只有在打通關鍵核心控制設備PLC後,纔可以打通工業互聯網的第二階段。
工業互聯網、工業4.0、中國製造2025本質都是互聯網深度參與到工業生產中,從而將生產力提高到一個全新的高度。過去10年是消費者互聯網的10 年。上一波互聯網浪潮中,互聯網在全球鏈接起數十億人,同時也造就了Google、亞馬遜這樣的互聯網巨頭。互聯網在流通、消費、零售、溝通行業的高潮已經有目共睹,互聯網在工業生產的領域的浪潮。據通信巨頭思科公司估計,到2020年,互聯網會造就150億至500億的鏈接設備,同時還包括人與物、物與物的鏈接,是傳統互聯網時代的鏈接人數的幾倍甚至更多。
將來已來,願日生不殆。