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