本文轉載自CSDN 作者:姚家灣
開放自動化成為未來自動化控製係統的發展潮流,同時它也成為一個口號,頻繁出現在各(gè)大自動控製廠商的宣傳文案(àn)中。那麽,開放自動化到底(dǐ)指的是什麽?什麽樣的係統才是一個理想的開放(fàng)自動化係統?筆者談談自己的看法。
何為開放係統?
我(wǒ)們首先來看看什麽是開放性係統?目前還沒有必要去給它一個確切的定義,筆者認為一個徹底的開放性(xìng)係統應該具有下麵幾(jǐ)個特征:
1連接任何事物
不(bú)同廠商的軟件,硬件都(dōu)能夠方便的接入開放性(xìng)係統.顯然,目前(qián)最好的開放性係統就是互聯(lián)網。幾乎快實現萬物互聯的理想目(mù)標(biāo)了。要知道,計算機網絡並不是一開(kāi)始就采用開發性協議的,以前各大公司的計算機網絡(luò)都是個搞一套,比(bǐ)如IBM公司的SNA網絡,DEC公司的(de)DECNET,都是(shì)當時十分流行的計算機網絡產品。它們之間難以互聯互通(tōng)。後來(lái)美國建設DARPA網絡過程中,設計了簡單的TCP/IP協議。逐步使計算機(jī)網(wǎng)路(lù)成為互聯網現在這個樣子。而ISO標準化委員會著名的(de)OSI七層模型就稱之為“開放係統互聯參(cān)考模(mó)型”。
現(xiàn)代自動控製係統大多數是(shì)基於網絡實現的。在網絡中接入了大量(liàng)的傳感器,PLC,計算(suàn)機,人機(jī)交互屏幕等設備和(hé)軟件。一個開放自動化係統,首先要做到不同廠商(shāng)的設備能夠(gòu)互聯互通。自動化領域已經開放了(le)各種現場總線,比如大家耳熟能詳的(de)現場(chǎng)總線(xiàn)有modbus,fieldbus,CANOpen,EtherCAT等(děng)等。目前,不同(tóng)廠商的(de)設(shè)備(bèi)之間互聯還比較困難,有時(shí)需要各種各(gè)樣奇奇怪怪的網關產品。
要實現(xiàn)設備真正意義上的互聯互通,僅僅依靠協議是不夠的,還需要(yào)語義的標準化(huà)。隻有(yǒu)互相采用(yòng)熟悉的語義,溝通才(cái)能進行。語義標準化的難(nán)度和工作量更大。在自動化工(gōng)程的具體實踐(jiàn)中,我們經常會發現;世界上最長的距(jù)離是兩個帶有Ethernet接(jiē)口的設備卻無法交換數(shù)據。
設(shè)備(bèi)無法互聯互通的另一個後果是協議和軟件(jiàn)係統成為了(le)國際大廠市場的護城河。其它(tā)中小型企業(yè)的創新產品無法接入(rù)以(yǐ)國際大廠自動控製(zhì)係統為主的自動化係統中。這(zhè)也是我們(men)自動化領域國產化產品水平不高的一(yī)個主要原因。
2任何(hé)數據可以被訪問
係統中(zhōng)的大多數數據可以通過標準化的協議和信息模型被外(wài)部係統(tǒng)訪問。標準化的協議(yì)和信息模(mó)型可能包括OPC UA ,MQTT等等(děng)。
AI和大數據在(zài)工業自動化領域的應(yīng)用將會在未來越來越普及。目前大數(shù)據公司(sī)麵臨的最大困惑是(shì),工業大數據被傳統封閉的自動化係統困死在信息孤島中,業主不敢動,係統集成公司不願(yuàn)意開放給第三方,大數據公(gōng)司難以(yǐ)獲取現場數據,大數據麵臨著沒有數(shù)據的尷尬局麵。大多數工業雲平台還(hái)隻是停留在PLC+網關的方式獲取數據,或(huò)者與控製係統建立並(bìng)行的數據采集終端。
理想的開放自動化(huà)係統應該在保證係統安(ān)全的(de)前提下,向第(dì)三方提供各種數據。是大(dà)數據分析,AI訓練,數字(zì)孿(luán)生係(xì)統能(néng)夠獲取足夠的數據。
3在(zài)任(rèn)何地方運行
軟件(jiàn)在自動控製係統中的(de)作用越來越大,開發自動控製係統的軟件的效率至關重要。不過到目前為止,自動控製領域基本上和早期的計算(suàn)機行業(yè)類似,軟件嚴重地依賴所運行(háng)的設備。不同廠商的PLC采樣不同的編程工具軟件,開發的程序基本上無法在其它PLC廠商的(de)產品上運行(háng)。軟(ruǎn)件的重用性極低,更換廠商(shāng)的學習曲線陡峭。
一個開放自動化係統,應該實現“一次編程,任何地方(fāng)運(yùn)行”的理想。IEC61131-3 /IEC61499標準都在努力地實現PLC編程語言的標準化,加上(shàng)Soft PC技術,部(bù)分實現軟件的可移植(zhí)性,可重用性的目標。
4任何東西都(dōu)可以被替換
一個大型的工業自動化係統往往(wǎng)要運行(háng)十幾年,甚至幾(jǐ)十年。對於一個封閉式係統而言,設(shè)備的維修,升(shēng)級和替換就是一個很大的(de)問題,比如在太陽(yáng)能行業,矽片切割設(shè)備上千萬元一台,設(shè)備早過了保修期,甚至當年開發這個設備的工程師都已經退休了。內部(bù)控製器還是Intel的386CPU,國內維修(xiū)人員也難以找到(dào)配件,目前隻能拆東牆補西牆(qiáng)。
如果是一個開放自動化係統,我們完全可以(yǐ)使(shǐ)用現在的控製平台替代老舊的控(kòng)製器,延長設備(bèi)的使用壽命。
一個理想的(de)開放自動化係統,應該能夠將舊設(shè)備(bèi)上的應用程序移(yí)植到新的設備上(shàng),軟件資產的生命周期和硬(yìng)件控製器的生命(mìng)周期分離。既可以獨立地(dì)更新軟件,也(yě)可以(yǐ)獨立地更新(xīn)硬件。
5共同參與開發
一個開放的(de)係統其實是一個(gè)生態係統,能夠由許多人(rén)參與其中,他們可能是重要的自動化廠商,也可以是(shì)係統集成商,用戶和第三方增值開發(fā)商。眾人添柴火焰高,社會化開(kāi)發的生態係統才富有活力。
在傳(chuán)統的自動化係統中所有的PLC功能塊庫,SCADA組(zǔ)件幾乎都是由公司自己開發的。第(dì)三方難以涉足其中,而用戶(hù)幾乎隻有組(zǔ)態的(de)權(quán)利。
而在一個理想的開發(fā)自動化生態中,開發工(gōng)具,運行(háng)時等(děng)技術也(yě)許(xǔ)是核心廠商開(kāi)發的。但是(shì)其它的開發(fā)廠商能夠參(cān)與開發功能塊庫,應用程序。他們可以采樣(yàng)類似手機App市場那(nà)樣推廣,並獲得應有的商業利益。富有創新的技術(shù)能夠迅速地導入。
1開(kāi)放通信協(xié)議和(hé)信息模型
基礎物(wù)理通信技術:以太網,TSN以太網,CAN,5G等技術將成為開放自動化的主流通信(xìn)方式。其上的通信(xìn)協議包括TCP/IP,HTTP,modbusTCP,websocket,MQTT等等。
信息模型主要解決語義的問題(tí)。為了使係統中的各(gè)部分能夠充分地(dì)互(hù)聯,實現所謂的“插入即(jí)生產”等(děng)工業數(shù)字化目標,各種資產的數字化信(xìn)息模型的標準化和工業界達成廣泛共識就非常重要。目前OPC UA主要的一種信息(xī)模型。
采用統一(yī)的信息(xī)模型姑且重要,而為自動控製領域的各種(zhǒng)資產建立數字化信息模型更為重要(yào)。要對成千上萬的傳感器,設備建模。這是一個巨量的工程,而且需要業界達成共識。
作為一個開放自動化係統(tǒng),需要(yào)能夠為建立信息模型提供有效工(gōng)具(jù)。
2標準(zhǔn)化的設計語言及(jí)其運行(háng)環境
開放自動化係統普(pǔ)遍采用標(biāo)準化的編程語(yǔ)言,比如目前流行的IEC61131-3 PLC語言和未來的IEC61499功能塊。然而,僅僅采納了標準化語言還是不夠的。我們知(zhī)道,無論是IEC61131-3的梯形圖,ST和功能(néng)塊,還是IEC61499的功能塊應用。它們都還隻是“高(gāo)級語言”,最終需要轉變成為“機器代碼”或者(zhě)“中間代碼”,最終下載(zǎi)到PLC中的運行,它們或(huò)者是特殊CPU的機器代碼,或者是廠商自定義的中間代碼。這些技術都是嚴重依賴廠商的。而標準沒有對“機器代碼”或者“中(zhōng)間代碼”,的格式提(tí)出格式規範。這導致了PLC程序無法直接在不同廠商硬件(jiàn)上運行。開放自動化係統(tǒng)將公開目標代碼的格式,並且采(cǎi)樣類似XML這樣的語言(yán)來描述。
PLC的程序下載,更新,運行監控(kòng)稱為管理協議,它們同樣需要標準化和開放(fàng)協議。這樣才可能實現“一次編程,到處(chù)運行“的夢想。
另一個十分重要的方麵,就是要(yào)規範和開放功能塊庫的開發技術。對於IEC61499而言,用戶可以使用ST語言,來構建基本功能塊(kuài)和複合(hé)功能塊。有些開發工具可以使用Lua,java來編寫功能塊庫。如果要(yào)開發涉及通信,硬件的服務功能塊,使用C++更加合適。開發環境如何(hé)向用(yòng)戶開放運行時的功能塊接口,使用戶(hù),第三方開發者開放(fàng)功能塊庫對於構建開(kāi)放自動化生態同樣(yàng)十分(fèn)重(chóng)要。隻有豐富的功能(néng)塊庫出現(xiàn),才(cái)會帶來開發自動化的繁榮。功能塊庫對(duì)於開放自動化而言,就相當於App和智能手機(jī)的(de)關係。
3軟硬件解耦
人們會問,為(wéi)什麽許多公司都(dōu)聲稱采用IEC61131-3標準,但是它們的軟件為什麽仍然沒有辦(bàn)法相互兼(jiān)容呢?這主要由於(yú)像PLC這樣的控製設備的程序是嚴重依賴硬件的。盡管控製語言和信息模型(xíng)標準化了。但是大量與硬件有(yǒu)關的程序庫,功能塊是廠商依賴(lài)型的。
理想的(de)開放(fàng)自動化係統,應該(gāi)允許開放第三方硬件以及相關的功能塊庫。
4與IT技術充分融合
TCP/UDP,MQTT,HTTPS,Web API等IT領域的通(tōng)信協議成為開放自動化係統的接口。這些(xiē)都是(shì)IT領域常用的通信協(xié)議。
IT領域和自動控製OT技術的界線越來越模糊,自動化會不斷地導入IT領域的新(xīn)技(jì)術,比如AI,大(dà)數據,時間序列數據庫,雲平台,容器技術等等。一個好的開放自動化係統將(jiāng)促進IT和OT技術的相互(hù)融合。
5跨平台HMI
長(zhǎng)期以來,自動控製領域的(de)人機交互接口設備大多數是(shì)基於Windows OS 實現。而且HMI的接口協議和信息模型各不相同。許多HMI使用C#或者C++ 實現。近年來也有基於Linux/ QT,androids或者(zhě) NodeJS。UI設計采(cǎi)樣(yàng)HTML5/CSS/JavaScript 這樣的跨平台,開放(fàng)性技術。
理想的開放自動化的HMI應該是跨平台的,HMI可(kě)以允許運行在(zài)基(jī)於windows,Linux,androids工業屏上,也能夠運行在(zài)Web,手機和平板(bǎn)電腦上。實現多(duō)屏(píng)融合。要實現這(zhè)一點,使(shǐ)用HTML5/CSS/JavaScript可(kě)能更加合適。
也有人擔心,開放自動化時代是否真的(de)會到來,畢竟它動了某些大佬們的“奶酪“,原來自動化領域的大公司可能會失去一部分原有的優勢。對於這一(yī)點,我還是比較樂觀的。開放自動化會被一批富有情懷和創新精神的企(qǐ)業和個體不斷地(dì)推動,為自(zì)動化(huà)帶來繁榮和(hé)創新。大(dà)公司也會(huì)積極參與開放自(zì)動化的潮流中來,開放使自動(dòng)化市場的蛋糕更大了。也會為它們帶來(lái)新的(de)發展機會。例如施耐德公司最近就發布了基於IEC61499的EcoStruxure™ Automation Expert (EAE),融入了他們早先收購的(de)nxtControl公司的(de)技術。
推動(dòng)開(kāi)放自動化發展(zhǎn)的另一個(gè)重要力量將是開源項目,它們會(huì)起到鯰魚效應。給這整(zhěng)個市場帶來活力。要不然,開(kāi)放自動化會被人玩壞來(lái)了。人們的擔心並不是空穴來風。曆史(shǐ)上有過這樣的事情發生(shēng)。