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