工業物聯網 (IIoT) 等重大趨勢,如今已從概念與先導專案邁入大規模部署的階段,並帶來驚人的投資報酬。隨著應用複雜度持續提高,測試與量測產業正與時俱進,力圖提高智慧功能與連線能力。 鑑於智慧型感測裝置的可用性有所提升,價格也更加平易近人,工程師可於裝置層級新增感測與決策功能,以實現最大程度的正常運作、強化效能,並帶動未來的產品創新。由於資料擷取、分析與控制等作業需要在不同地點進行,並交由各式各樣的協同合作處理項目執行,以支援遠端操作,上述功能的重要性也水漲船高。這個分散式執行方法的崛起背景,包含對高精確度 I/O 方面的需求、對分散式控制至關重要的複雜度與時間、高通量的資料擷取與分析,以及向眾多相關人員呈現資料的必要性。
圖 1.隨著系統複雜度持續提高,開發人員也面臨了不同組織層級的資料管理與視覺化挑戰。
分散式應用的其中一個關鍵,在於向適當的相關人員呈現適當的資訊,繼而直接影響眾人做出明智的業務決策。這其中涉及的問題複雜無比,不僅包含分散式使用者介面的建立,更與資料管理功能、安全性維護與網路概念等層面息息相關。分散式應用的主要需求之一,莫過於開發介面,以利操作人員遠端設定部署完成的系統,進而切換不同的作業模式、變更設定,或修改設定檔。而另一個使用情境,則是透過使用者介面,遠端操作或監控適用於一小組資產的控制面板。此外,分散式生產測試情境或環境監控還有一項與眾不同的典型需求:即時監控系統的狀態、故障與效能等資訊。再者,管理與測試層級也需掌握過往資料、趨勢和關鍵效能指標在一段時間內的深入分析,以達到即時監控的目的。正因如此,在分散式情境中配合各種層級的複雜度,以滿足不同相關人員的資料呈現需求,是一項重大的挑戰。
圖 2.視現行系統的複雜度與規模而定,建立遠端使用者介面講求的心力也大不相同。
由於這類作業的複雜度非常高,多數測試與量測工程師紛紛將選用現成可用的工業物聯網 (IIoT) 基礎架構一事,視為非同小可的任務。為了提高效益,業界眾所期盼的平台必須提供主流網路與巨量資料技術的延伸能力及效能,好讓工程師集結 IT 專業人員、網路開發人員、UX 與視覺設計人員、資料科學家,以及各領域相關人員之力,以著手進行開發、部署及維護等作業。過去 30 年,NI 致力於運用 LabVIEW、PXI 與 RIO 等技術開發及打造平台,以利在邊緣環境進行高效能的測試與量測應用。近年來,NI 在網路、IT/伺服器與網路層新增了模組化、可重複使用的軟體元件,藉此大舉擴充平台,從而實現分散式應用。這些平台元件可實作至多個軟體產品中,以因應建立強大現代化工程解決方案所帶來的重重挑戰,包括有效管理分散式系統、駕馭由邊緣產生的深入分析,並呈現該資訊,進而做出資料導向的決策。
分散式應用的最大需求之一,在於遠端管理與設定資產,以延長正常運作時間,並提高作業效能。針對這類型的情境,NI 平台可透過 SystemLink 提供解決方案,這款系統管理軟體具有安全且集中化的管理功能,可因應分散式測試、量測與控制等應用。SystemLink 可透過多款系統管理工具追蹤連線狀態、系統設定與校準資料,藉此延長正常運作時間,並提高系統狀態的察覺功能。此外,SystemLink 也能運用元件層級的更新、相依性察覺功能,以及版本歷史記錄,一舉提高大規模軟體部署作業效率。
圖 3.SystemLink 是一款系統管理軟體,可集中管理分散式測試、控制與監控系統。
輕鬆呈現資料,不僅對這類型的分散式應用而言至關重要,更攸關工程師能否開發端對端解決方案與生產力應用開發工具,繼而順暢搭配運作。在分散式應用方面,G Web Development Software 能與此一平台相輔相成,協助工程師運用熟悉的 LabVIEW 程式設計範例,並建立完整的應用堆疊,繼而在不仰賴任何外掛或下載的方式,於任何現代化網路伺服器與瀏覽器中執行。 G Web Development Software 可和 NI 旗下的其他軟體平台相互整合,藉此提供多項網路技術,以利建立自訂的遠端使用者介面,從而運用在全新與現有應用中。
在分散式系統領域中,網路技術已快速成為資料協調、控制與呈現方面的實質應用層。然而,現代化網路技術所集結的眾多標準、架構、技術與慣例,都必須憑藉大量的訓練及經驗來累積專業能力。 多數測試與量測工程師並不會將自己歸類在網路開發人員的範疇,也沒有時間或資源來發展所需的專業知識。此外,多數測試工程團隊皆無法將資訊呈現、控制架構、安全性與存取管理等需要網路技術的重要應用部分外包,因為這些層面必須由組織內部控管。招募網路開發人才加入測試工程團隊雖可解決此一問題,卻有機會在測試工程師與網路開發人員之間造成嚴重的既定情境轉譯缺失。整體而言,在開發、部署、維護與升級分散式系統方面,測試工程團隊仍面臨著諸多常見挑戰,例如有效管理生命週期、即時汲取深入分析與決策,以及建立安全的應用存取。
NI 致力於透過 G Web Development Software,為工程師提供直覺式的著手點,以協助其建立測試與量測系統的遠端控制及監控介面。工程師可使用熟悉的 LabVIEW 人機介面與程式方塊圖編輯波形,如此一來,無需具備網路技術知識,也可開發工程應用。網路模組也包含多項機制,可安全地部署網路應用,並與邊緣節點建立通訊。此外,這款網路技術平台經過精心設計,具備高度的開放性與延伸能力,可用來與專業網路開發人員和 IT 專業人員協同合作,藉此建立完整的分散式測試、量測、控制和監控應用。 在本技術文章接下來的部分,我們將說明 NI 網路式設計工具的基本元件,以及後續投資的指導原則。
圖 4. G Web Development Software 可協助您建立高效能的網路式使用者介面。
G Web Development Software 的其中一個主要設計原則,在於沿用 LabVIEW 開發人員技能,以達到開發網路式介面的目的。為此,我們透過網路模組導入了新型態的 VI:WebVI。這個嶄新的檔案格式體現了 G 程式碼世代的技術演進,不僅運作方式比照其他任何 VI,還能自動轉譯為多項網路標準,例如 HTML、CSS 與 JavaScript。這項技術可免除精通多項標準以因應手邊應用需求的複雜度,繼而降低開發網路應用的困難度。
圖 5.WebVI 可讓使用者撰寫 VI,進而在無需外掛或安裝程式的情況下,於任何現代化網頁瀏覽器中執行。
同樣地,提供直覺式著手點的概念,也擴及以網路傳輸安全、可靠的資料領域。G Web Development Software 可透過簡單明瞭的方式,在資料來源與集中地點 (負責擔任資料服務的代理程式) 之間來回移動資料。上述作業會透過多個 API 進行,這些 API 採用多項網路標準 (HTTP、AMQP 與 Websocket) 建置而成,可因應常見的工程使用案例,例如在量測與測試裝置之間來回進行標籤純量值的通訊作業、為警示與活動管理提供非同步訊息,以及傳輸檔案,以利製作報告與後續處理。此外,這些 API 也包含 HTTP 用戶端執行作業,可與任何第三方網路服務來回進行資料通訊作業。NI 正著手探索可在後續 G Web Development Software 版本中推出的其他資料服務,例如傳輸波形資料。
最後,網路應用部署也應透過生產力工作流程加以簡化,藉此推動網路應用的設定流程與共用。這會包括存取 NI 網路伺服器,以輕鬆建立由使用者定義安全性與存取控制的代管應用。 NI 網路伺服器可用來在專屬的電腦上代管應用程式;不過,G Web Development Software 也具備充分的彈性,能產生可於任何第三方伺服器上代管的標準輸出檔案。放眼未來,這項技術將進行整合,透過直接從開發環境將流程自動部署至 NI 代管的雲端服務的方式,加速推動代管流程。此外,這項服務也會包含建立設定式控制介面,以輕鬆打造瀏覽器內的使用者介面,在無需仰賴程式設計或為應用新增邏輯的情況下,直接連接資料代理程式中的可用資料。
用於建立網路式使用者介面的 NI 工具之另一個指導原則,就是透過各項設計工具來提供同級最佳的效能,以因應測試與監控應用的工程需求。 從使用者介面的觀點來看,G Web Development Software 含有多款高效能的工程小工具,可因應最常見的幾種圖形化顯示情境,包括量表、LED、計量表、圖表與圖形等。使用者介面與小工具會自動轉譯為 HTML 及 CSS 程式碼,以顯示於任何現代化網頁瀏覽器中。這些小工具都將效能納入設計考量中,可因應最高需求的應用。具體而言,這些小工具已進行圖表與圖形案例的測試,能以 60fps 以上的速率執行 500,000 個資料點。NI 致力於推出新版 G Web Development Software,以強化與提升這些小工具的效能。
圖 6.WebVI 包含一系列的高效能工程小工具,可用來開發測試與量測使用者介面。
同樣地,在 WebVI 中設計的使用者介面,也採用類似於 LabVIEW VI 且透過圖表執行的應用邏輯。自訂邏輯可使用常用函式嵌入至使用者介面中,以定義程式流程、邏輯與分析。應用邏輯會轉譯為 JavaScript 程式碼,以在任何現代化網頁瀏覽器中執行,進而透過使用者介面控制行為並回應事件。
圖 7.WebVI 會自動產生 HTML、CSS 與 JavaScript 程式碼,以便在任何現代化網頁瀏覽器中執行應用。
使用多項標準與開放原始碼技術,不僅為提供延伸能力的決定性關鍵,也有助於在任何現代化網頁瀏覽器中執行應用。我們採用的其中一項重要設計決策,就是使用 WebVI 公開與揭露所產生的 HTML、CSS 與 JavaScript 程式碼,以利在所提供的編輯器或任何第三方編輯器上完整自訂應用。如此一來,這些功能就能進行延伸,以透過網路帶入現有內容,並重複使用指令碼來控制使用者介面的行為。WebVI 的設計集結了彈性與標準化等兩大要素,以及 G Web Development Software 的其他元件,可順暢整合現有執行與商用技術。未來 G Web Development Software 版本的新功能預計會將這樣的開放特性進一步發揚光大,延伸納入更多能整合 WebVI 與現有網路技術的方法。