|
說現在最熱門的前沿技術,那非人工智能(AI)莫屬。而人工智能的核心卻是機器學習(ML)。可以說,掌握了機器學習,也就掌握了人工智能技術。
那麼,對於工業用戶來說,如何將機器學習引入到自動化領域,突破傳統自動化技術發展的天花板呢?麵對人工智能、機器學習、深度學習、神經網絡……這些深奧的概念,如何快速了解和掌握呢?
這篇隻需 5 分鍾就能閱讀完畢的文章,讓您輕鬆掌握機器學習的概念、關鍵技術、如何應用到工業自動化之中等內容!
首 先
我們來看一個,用機器學習進行優化的一個運動控製案例,以便你對機器學習有一個感性的認識。

這(zhe)是(shi)兩(liang)個(ge)相(xiang)同(tong)的(de)直(zhi)線(xian)加(jia)圓(yuan)弧(hu)的(de)傳(chuan)輸(shu)軌(gui)道(dao),但(dan)我(wo)們(men)可(ke)以(yi)看(kan)到(dao),左(zuo)邊(bian)軌(gui)道(dao)上(shang)的(de)工(gong)件(jian)輸(shu)送(song)十(shi)分(fen)平(ping)緩(huan),而(er)右(you)邊(bian)軌(gui)道(dao)上(shang)的(de)工(gong)件(jian)傳(chuan)輸(shu)很(hen)不(bu)平(ping)穩(wen),加(jia)速(su)很(hen)急(ji),產(chan)品(pin)都(dou)快(kuai)要(yao)被(bei)甩(shuai)出(chu)去(qu)了(le)。這(zhe)不(bu)僅(jin)對(dui)軌(gui)道(dao)上(shang)的(de)工(gong)件(jian)影(ying)響(xiang)很(hen)大(da),而(er)且(qie)軌(gui)道(dao)自(zi)身(shen)的(de)磨(mo)損(sun)也(ye)很(hen)嚴(yan)重(zhong),右(you)邊(bian)軌(gui)道(dao)上(shang)工(gong)件(jian)運(yun)動(dong)曲(qu)線(xian)的(de)設(she)計(ji)顯(xian)然(ran)不(bu)如(ru)左(zuo)邊(bian)的(de)傳(chuan)輸(shu)軌(gui)道(dao)。
那如何才能設計出左邊這樣的運動曲線呢?這裏就需要用到機器學習,通過對工件多次的速度、加速度、位置等信息的記錄,再經過建立數據模型,不斷優化(訓練)模型,最後得出一個最佳的運動曲線。為何要用機器學習來設計呢,這是因為這樣的運動曲線設計並沒有現存的曲線(如正圓、橢圓、漸開線等),也不能通過數學方程計算出來,所以隻有借助機器學習的“算法模型加訓練”來求解出來。
看完這個例子,您對機器學習的作用應該有了一個初步認識。下麵我們再來理解幾個常見概念。
人工智能(AI)
能夠模仿人智力的智能,分為弱 AI 和強 AI,目前AI處於弱AI階段。
機器學習(ML)
達到弱 AI 的水平,基於可以通過“訓練數據”學習特定任務的數學模型進行優化。
深度學習(DL)
專注於深度神經網絡(DNN)作為模型,需要大量數據集進行訓練的複雜模型,目前主要用於強大的視覺應用。
三者的關係是從屬關係,如下圖所示:

jiandanlijie,jiqixuexijiushitongguogenjugeleisuanfajianlishuxuemoxing,ranhoutongguoshujubuduanxunlianmoxing,tigaomoxingzhunquexing,zuihoujiangxunlianhaodemoxingfangdaoshijiyingyongchangjingzhongyunxingzuotuilijisuan,jiejueyongputongshuxuefangfananyijiejuedeshijiwenti。
所以我們可以總結一下,將機器學習引入到工業自動化中,需要三步:收集工業現場數據、建立模型並訓練模型、下載到實際應用中運行,如下圖所示:

看上去是不是過程很簡單?
當dang然ran了le,實shi際ji使shi用yong過guo程cheng並bing非fei如ru此ci簡jian單dan,每mei個ge環huan節jie都dou會hui涉she及ji到dao專zhuan業ye知zhi識shi和he工gong具ju,下xia麵mian我wo們men就jiu來lai一yi一yi展zhan開kai介jie紹shao一yi下xia,讓rang你ni不bu僅jin入ru門men,而er且qie成cheng為wei“專家”!
第 /一/ 步
收集工業現場數據
首(shou)先(xian),在(zai)數(shu)據(ju)收(shou)集(ji)階(jie)段(duan),就(jiu)是(shi)要(yao)通(tong)過(guo)各(ge)類(lei)傳(chuan)感(gan)器(qi)和(he)測(ce)試(shi)測(ce)量(liang)工(gong)具(ju)來(lai)采(cai)集(ji)現(xian)場(chang)數(shu)據(ju),這(zhe)個(ge)環(huan)節(jie)就(jiu)會(hui)用(yong)到(dao)我(wo)們(men)自(zi)動(dong)化(hua)控(kong)製(zhi)中(zhong)的(de)很(hen)多(duo)產(chan)品(pin),比(bi)如(ru)像(xiang)倍(bei)福(fu)的(de) TwinCAT3 Scope、TwinCAT3 Database Server、TwinCAT3 Data Agent 和 TwinCAT3 Analytics Logger 等工具,可以利用這些工具將數據采集到本地數據庫或者雲端存儲、呈現,以便下一步來建模和訓練。

第 /二/ 步
模型的搭建和訓練
這一步是至關重要的一步,也是目前機器學習中最難、研yan究jiu最zui多duo的de一yi步bu。這zhe一yi步bu裏li首shou先xian需xu要yao對dui上shang一yi步bu采cai集ji到dao的de數shu據ju進jin行xing預yu處chu理li,數shu據ju清qing洗xi除chu去qu異yi常chang值zhi,數shu據ju轉zhuan化hua或huo者zhe數shu據ju集ji成cheng等deng。然ran後hou,選xuan擇ze特te征zheng數shu據ju確que定ding數shu學xue模mo型xing,進jin行xing學xue習xi微wei調tiao,並bing進jin行xing未wei知zhi數shu據ju的de學xue習xi模mo型xing驗yan證zheng。模mo型xing訓xun練lian後hou,生sheng成cheng導dao出chu一yi個ge可ke供gong TwinCAT3 等模型運行環境的描述文件:XML 文件或者 ONNX 文(wen)件(jian)。這(zhe)一(yi)步(bu)中(zhong)特(te)征(zheng)數(shu)據(ju)的(de)挖(wa)掘(jue),也(ye)就(jiu)是(shi)提(ti)取(qu)哪(na)些(xie)數(shu)據(ju)來(lai)建(jian)模(mo)是(shi)整(zheng)個(ge)機(ji)器(qi)學(xue)習(xi)能(neng)否(fou)成(cheng)功(gong)的(de)關(guan)鍵(jian),往(wang)往(wang)需(xu)要(yao)精(jing)通(tong)行(xing)業(ye)知(zhi)識(shi)經(jing)驗(yan)的(de)人(ren)才(cai)能(neng)做(zuo)到(dao)。

在這一步中,搭建模型時往往需要用到第三方框架(平台工具),比如:Python SciKit、MATLAB Machine Learning Toolbox,以及深度學習框架TensorFlow (穀歌)、Keras (frontend for TensorFlow, CNTK, …)、PyTorch (臉書)、MxNet (亞馬遜)、CNTK (微軟)、MATLAB Deep Learning Toolbox (MathWorks) 等,其中大多數是開源的和基於 Python 的。

當然,除了這些框架外,還有一個重要的事,數學模型的選擇和建立。在數學上,可以把萬事萬物所有問題分為兩大問題:回歸問題和分類問題。回歸問題通常是用來預測一個值,如預測房價、未(wei)來(lai)的(de)天(tian)氣(qi)情(qing)況(kuang)等(deng)。分(fen)類(lei)問(wen)題(ti)是(shi)用(yong)於(yu)將(jiang)事(shi)物(wu)打(da)上(shang)一(yi)個(ge)標(biao)簽(qian),通(tong)常(chang)結(jie)果(guo)為(wei)離(li)散(san)值(zhi),如(ru)判(pan)斷(duan)一(yi)幅(fu)圖(tu)片(pian)上(shang)的(de)動(dong)物(wu)是(shi)一(yi)隻(zhi)貓(mao)還(hai)是(shi)一(yi)隻(zhi)狗(gou)。解(jie)決(jue)這(zhe)兩(liang)類(lei)問(wen)題(ti)需(xu)要(yao)用(yong)到(dao)不(bu)同(tong)的(de)數(shu)學(xue)模(mo)型(xing),比(bi)如(ru)常(chang)見(jian)的(de)有(you)支(zhi)持(chi)向(xiang)量(liang)機(ji)(SVM)、神經網絡、決策樹和隨機森林、線性回歸、貝葉斯線性回歸等,這些模型在框架中是現存的,可以直接使用。
在這裏,還需要提到一個知識點,那就是 ONNX 開放神經網絡交換文件,這是一種針對機器學習所設計的開放式文件格式,用於存儲訓練好的模型。它使得不同的人工智能框架(如Pytorch,MXNet)可以采用相同格式存儲模型數據並交互。主要由微軟,亞馬遜 ,Facebook 和 IBM 等公司共同開發。

第 /三/ 步
加載模型到控製器裏運行
說shuo完wan了le模mo型xing搭da建jian和he模mo型xing訓xun練lian後hou,最zui後hou一yi步bu就jiu是shi將jiang模mo型xing加jia載zai到dao工gong業ye電dian腦nao或huo者zhe控kong製zhi器qi中zhong運yun行xing計ji算suan。由you於yu模mo型xing描miao述shu文wen件jian並bing不bu能neng被bei工gong業ye控kong製zhi器qi所suo識shi別bie,所suo以yi就jiu需xu要yao用yong到dao像xiang倍bei福fu TwinCAT 3 這樣的自動化控製軟件平台作為引擎,將訓練好的模型文件加載到控製器,才能在自動化中應用機器學習。
目前、TwinCAT 3 已經無縫集成了機器學習引擎接口。可以通過機器學習文件轉換器(ML Converter)把訓練生成的模型文件 XML 或者 ONNX 轉化成 BML (倍福的機器學習文件)進行加密保護,經過 TwinCAT 3 的 ML Runtime 進行加載,這樣已訓練好的模型就可以被 TwinCAT TcCOM 對象進行實時調用執行,同時可以被 PLC、C/C++ 封裝的 TcCOM 的接口進行調用!如果神經網絡較小,如權值大小為 10K 的多層感知器(MLP)可以在一個亞毫秒的任務周期中多次調用,以確保實時性!

同時,TwinCAT 3 本身所提供的支持多核技術也同樣適用於機器學習應用,不同的任務程序可以訪問同一個特定的 TwinCAT 3 推理引擎而不會相互限製。機器學習應用完全可以訪問 TwinCAT 中所有可用的現場總線接口和數據,這將使其能夠使用到大量數據。

TwinCAT 3 現在有兩個機器學習推理引擎,TF380x TC3 和 TF381x TC3,前者是經典機器學習模型的推理引擎,包括支持向量機(SVM), 主成分分析(PCA), k 均值(k-means)等,後者是神經網絡(NN)推理引擎,包括多層感知器(MPL),卷積神經網絡(CNN),長短期記憶模型(LSTM)等。

第一步
就是要采集數據,包括工件的位置、速度、加速度、時間等,把這些數據收集存儲起來,以便下一步優化。

第二步
提取步驟一裏麵的特征數據建立模型,用 𝑝(𝑡) 來作為優化準則,通過神經網絡算法來循環迭代,監督學習訓練模型。

第三步
將訓練好的模型通過 ONNX 文件部署到 TwinCAT 3 裏,從而通過控製器實現最優的運動曲線。
 
首先,通過 TwinCAT 3 Scope 來采集大量風扇正常情況下的壓力、轉速、振動等數據,然後用 MATLAB 來讀取這些數據,使用 one-class SVM(一類支持向量機)模型來訓練,等模型學習了大量正常數據後,就會自動產生一個正常數據的邊界。最後將模型從 MATLAB 導出為一個 ONNX 文件,轉換後加載到控製器的TwinCAT 3 中。這樣,當采集的數據超出邊界時,控製器就會檢測到風扇發生了異常狀況。
這個應用看上去是十分簡單的,但是這其中最難的一部分是特征數據的挖掘和提取,也就是常說的特征工程。至於數據的采集、模型的創建、訓練,以及最後的控製器上的運行,已經有很多現存的工具和平台,比如 MATLAB 和倍福的 TwinCAT 3。站在這些“巨人”的肩膀上,你隻要專注用工業現場知識和經驗,就可以輕鬆將機器學習這一“高大上”的新技術引入到工業自動化之中。
關於德國倍福
倍福(Beckhoff)公司總部位於德國威爾市。作為全球自動化技術的驅動者,倍福定義了自動化領域的許多國際標準。公司所生產的工業 PC、現場總線模塊、驅動產品和TwinCAT自動化軟件構成了一套完整的、相互兼容的控製係統,可為各個工控領域提供開放式自動化係統和完整的解決方案。倍福於1997年進入中國市場,致力於幫助製造企業提升競爭優勢,加速轉型升級。倍福在業內享有“創新引擎”的美譽,公司所倡導的PC控製技術具有良好的開放性,將IT技術、互聯網和自動化技術完美融合,助力實現工業 4.0 和智能製造。憑借領先的技術優勢和豐富的行業知識,倍福的創新產品和解決方案廣泛應用於風力發電、半導體、光伏太陽能、電子製造、金屬加工、包裝機械、物流輸送以及樓宇自控等眾多領域。
更多信息,請登錄 Beckhoff 中文官方網站:www.beckhoff.com.cn
|