上一篇《制造創新與工業軟件》,這的確是一個值得探討的話題,之后有朋友微信留言共同探討工業軟件,有朋友提出幾個問題,包括(1).工業軟件的本質;(2).創新的難點與路徑;(3).智能時代的工業軟件有什么老傳統和新特點,國內如何發展工業軟件?覺得這幾個問題的確是一個非常有必要探討的問題,因此再此著文以期拋磚引玉。
1.工業軟件的本質總結
早先與趙敏老師就探討過工業軟件的分類,大致可以分為CAD/CAE/CAM這類工業設計類的軟件,其在整個工業流程中主要在機電設計與建模仿真類,包括機械、材料、控制、流體、安全等設計規劃類軟件,第二類是在工業領域運行管理類軟件包括MES/SCADA/DCS這類,第三類則是嵌入式工業軟件,即,運行于嵌入式系統中的軟件,嵌入式包括RTOS、runtime、工藝Know-How軟件。
無論如何的分類,對于工業軟件的整體而言,其本質在于知識的封裝與復用,這些軟件總體來說是將工業中的知識以軟件形式封裝,并形成可復用的模塊,在后續的開發中提高系統的開發效率,因此工業軟件的價值在于提升知識復用與系統工程效率。
2.工業軟件創新難點與路徑分析
2.1創新難點
(1).測試驗證所需的代價:要使得工業軟件成熟、高效,必須得有大量的試錯成本沉積其中,因為工業軟件針對的制造過程充滿了變化,往往會需要針對變化的材料、被加工產品的尺寸規格、加工流程等進行工藝的匹配,而這種變化會形成無數中組合,并在其中尋找最佳匹配。這是所有制造業創新過程所具有的共性。
(2).行業屬性:工業軟件不像商業軟件、辦公軟件、移動互聯網軟件具有大量的消費者進行成本的分攤,而其往往具有相當強的行業特性,在每個行業都有其差異巨大的應用場景,即使在一個塑料行業,薄膜吹塑成型、注射成型、中空吹塑成型、片材擠出成型等成型工藝也會有其獨特的差別,在一個印刷行業,也包括凹版、柔版、膠版工藝的差異,又根據材料、速度/加速度、印刷幅面等形成巨大的差異,而流程工業如化工過程、冶金又與離散工業差別巨大,在化工里又分為有機、無機、精細化工、生物化工等多種細分應用場景的差異。
每個垂直行業往往又是一個方向,因此,工科院校都會有大量的專業分工的原因,相信“術業有專攻”
(3).知識的積累是一個跨學科的復雜過程:
從現場的工程數據中累積有價值的信息、將信息轉化為知識,將這些知識轉化為數學模型,通過建模仿真過程生成控制軟件、再經過測試驗證,并形成可復用的軟件功能、平臺架構,這個過程往往需要將多個學科的知識、方法進行集成應用,對于一個機器的開發過程而言,包含了機械傳動結構設計、傳感器信號采集與處理(對高精度加工,測量系統的精度影響控制所能達到的精度上限)、控制與傳動、網絡通信(工業控制基于等時同步-因此工業通信是基礎)、工藝—這里的工藝包括溫度控制、行業特殊的工藝控制(如紡紗的勻整、印刷套色),這些多個維度的問題被凝聚在同一個系統里予以解決,因此,工業系統往往具有跨學科的融合的需求,因此,對于軟件的開發而言,需要機電軟一體化的能力,而對于大量的企業而言,往往通過在某個領域數十年的積累才能形成競爭優勢,而這種競爭優勢對于新進入者而言是巨大的壁壘,這也是因何大家發現很難突破的原因,因為,如果錢能解決的問題一定不是事。
對于這種需要長久積累的領域來說,突破往往來自于“顛覆式創新”—但是,盡管人們說“3D打印”的增材加工模式會對傳統的減材加工帶來成沖擊,但是-3D打印技術本身也需要經歷長期的工程積累,就目前而言,增材加工仍然只是制造中的輔助加工模式并未成為主體。數字印刷會對傳統的印刷帶來沖擊,但是,與傳統凹版的印刷品質及大量印刷時低廉的成本相比,仍然還有比較長的路要走,3D打印和數字印刷偏重于更為個性化的生產,個性化需求決定其需求,電動汽車希望替代傳統燃油汽車的發動機瓶頸,但是,就電動汽車的污染、全生命周期的成本還存在爭議。
每個領域都存在著顛覆者,但是,對于工業領域而言,它的難點在于即使是顛覆者,也需要長期的工業軟件知識積累,也并非一蹴而就能夠達成的。
2.2路徑分析
就目前的產業發展來看,知識轉化為工業軟件分為兩個重要路徑:
(1).機理模型:這個機理模型的發展過程經歷了最為悠久的歷史,它的發展來自于科學技術上百年的積累,包括我們說牛頓三大定律、能量守恒定律、麥克斯維爾電磁方程、伯努利流體方程,以及數學上微積分、拉普拉斯變換、概率統計、群論等數學方法的發展,以及在20世紀40年代開始的系統論、控制論、信息論等與工業的融合,使得通信技術、控制工程等融入到控制中,也包括了系統設計方法的進步,這些科學與工程技術的融合,發展起來的,這是一個長期的積累形成的過程,大量的工程技術方法在這個過程被不斷的積累,這也是為何任正非先生不斷提到基礎學科對于制造業的發展的重要性。
機理模型就是遵循“第一性原理”,從根本上去解決機器與系統的設計,從原理性,包括材料工程、機械傳動、電氣控制等相融合來解決傳統工業問題,凡是可以被數學描述的,最終也可以被軟件實現,工業軟件的積累首先是可以數學建模,再進行軟件的架構、程序編寫、測試,封裝,復用。
(2).數據驅動
數據驅動這一方法與機理模型相比是最近幾十年發展起來的,建立在概率統計方法、大數據挖掘技術、機器學習與深度學習基礎上發展起來的,這一方向主要用于解決非線性類問題,包括變化的、不確定、不可測量或不易測量的工業問題解決,其中將機器學習深度學習都歸于數據驅動的方法,這一方法有其優勢,即通過計算機系統的算力、模型優勢來解決過去需要大量時間積累的模型,它存在的問題在于模型的不可解釋性,可以結合機理與強化學習形成白盒,數據驅動隨著計算機算力和商業領域成功所帶來的成本降低,易用性提高也發展非常快,但是,數據驅動方法同樣需要大量的專業人員,至少得精通數學方法來融合產業實際來尋找解決問題的路徑。
兩者并非完全競爭,而是相互結合發揮各自優勢的方法,總之,工業軟件中,知識被積累和封裝、復用的過程并非可以被“走捷徑”。
3.工業軟件的發展
工業軟件的發展包含了兩個重要的過程,創新在過去被認為是很難的,但是,今天,有很多方法被應用于制造業的發展,總體來說,必須是技術、管理兩者相互融合,技術為核心,而管理用于工業軟件效率的提升。
3.1軟件工程方法的價值
今天,大家所討論國內的工業軟件發展難題在于“工具軟件”的缺乏,應用軟件中國已經采用國外的軟件進行了大量的開發,在各個領域這些都是應用,中國制造業的優勢在于試錯場景大量存在,只是缺乏自己的工具平臺軟件,而這個必須依賴于工程方法來架構,在軟件設計中,架構師是關鍵,目前來說,比較優勢的架構師并不在制造業中,但是,制造業中有大量的工藝大師,這些人的知識如何被一種方法論來實現標準化、顯性化,這是第一步,然后才能在一個良好架構下進行內容填充,這個過程中需要強大的架構能力。
在整個架構下,基于標準化—這個標準化仍然建議遵循國際標準,有兩點說明:
(1).遵循國際標準,這個是快速實現結構化的辦法;標準化在于已有的經驗的凝聚,而遵循國際化也是學習的過程,并且保持與國際先進技術的同步性。
(2).應用并主導:對于標準的主導權而言,當然是由用戶來決定的,先采用標準然后主導標準,這是一個過程,完全自己做一個標準不現實,而且投入巨大,在第一階段跟隨標準,第二階段影響標準,第三階段主導標準,這是一個學習的過程。
遵循統一的國際標準好處在于簡化了自身軟件開發的架構,使得最終各自開發的軟件通過標準接口連接,其次,就是這個連接不會落后于國際前沿。
3.2生態系統建設
對于國內的工業軟件發展,個人觀點就是依賴于單體公司而言是非常困難的,如果要更快的發展,必須借助于生態系統建設來實現,必須由EndUser、OEM、軟件廠商共同構成一個完整的生態系統,各自發揮作用。
EndUser必須有一定的測試條件提供給下游廠商,這個可以由國家提供項目資助,但是,必須有一個知識產權的保護與分享機制,因此,生態系統中的分工與利益分享機制必須保障投資各方的利益,否則,就無法真正推進。
其實,道路誰都明白,唯一需要說明的其實是“真的去行動”,這顯然是條艱難的道路,但是,必須有人認真的走,2019年美國科技戰已經讓我們必須發展自己的制造業創新了,仍然不愿意擺脫賺快錢的思維、仍然還沿襲過去的拿項目、獲得補貼的思維必須消除,否則的話,再明確的路都走不下去。
想來想去,我給朋友留言“思來想去,似乎就兩條重要:1.道路一定是艱難的,2.必須下定決心去走”,沒有什么捷徑,行動最重要。