發布日期:2022-07-14 點擊率:63
作為NI的旗艦品牌,LabVIEW圖形化開發平臺8.5版本的推出是本屆NIWeek最大的熱點,針對多核處理器、多線程處理、FPGA、PXI Express等器件和應用的層次得到全面的提高??梢哉f,LabVIEW除了圖形化的本質,它最大的特點在于幫助工程師集成和采用現今飛速發展的現成商業技術,他們無需深入了解各種技術的細節,只要通過統一的LabVIEW平臺,即可簡化學習和應用的復雜度。
本文將重點介紹NI在NIWeek中所展示的技術突破以及其對測試測量、控制和設計行業將帶來的影響。
圖形化系統設計(Graphical System Design)的靈魂:LabVIEW 8.5
NI在30多年前將虛擬儀器技術(Virtual Instrumentation)的概念引入到測試測量領域,并取得了巨大的成功。時至今日,虛擬儀器技術已經不能完全涵蓋NI在測試測量、控制和設計三大領域的內容,因此,虛擬儀器技術正在演進到一個全新的“圖形化系統設計” 時代。在NIWeek中,NI總裁和CEO James Truchard博士在其題為“通過圖形化系統設計方式提高生產率”的主題演講中,對NI的核心圖形化編程軟件平臺LabVIEW,的發展進行了總結和展望。
“一個可編程語言需要15年的時間才能被廣泛接受?!盩ruchard博士曾于1986年在介紹LabVIEW時表示。在經歷了20多年的發展后,LabVIEW已得到業界的廣泛認同。在2007年的NIWeek中,他給出了LabVIEW新的發展方向:“在下一個30年中,將LabVIEW擴展到系統設計中。”他分析了軟件由機器代碼、匯編語言、C/C++、直至系統設計平臺的發展必然性,指出了圖形化系統語言在系統設計語言中的優勢。“傳統的語言在目前創新環境下面臨終結,這是一個需要新語言的世紀,而LabVIEW已為這些要求做好了準備?!彼麖娬{。
最新推出的LabVIEW 8.5直接體現出了NI在圖形化系統設計上的發展思路,支持多內核平臺、進行多線程并行計算、增強可編程能力是LabVIEW 8.5的三個關鍵詞。
圖1:NI總裁和CEO James Truchard在主題演講中闡述虛擬儀器的未來方向。
LabVIEW 8.5構建在NI已投資10年的多線程編程技術之上,通過直覺的并行數據流語言,簡化了多內核與FPGA架構的應用開發。隨著處理器制造商尋求并行多內核架構提升性能,運行在新的處理器上的LabVIEW 8.5能提供更快的測試吞吐量、更有效率的處理和分析能力、以及更為可靠的實時系統。
LabVIEW 8.5在以圖形化語言集成了包括數據流、C代碼、計算公式、仿真、狀態表等高級設計模式的同時,也通過新的狀態圖設計模塊(Statechart Design Module),使得LabVIEW平臺進一步增強大型事件驅動項目的開發效率。而且在支持臺式機平臺、實時系統、FPGA以及微處理器等領域都進行了升級支持。
“工程師與科學家必須依賴個人電腦處理器、操作系統及總線技術的持續提升,以增加測量與控制系統的性能,”Truchard博士如是說,“通過向個人電腦上的多內核處理器的轉變,LabVIEW程序員可通過簡化的圖形化方法,進行多線程的設計,并讓工程師與科學家將多內核技術的性能最大化,而他們所要做的僅僅是稍微改變、甚至不需改變其相關應用?!?
多內核與多線程并行計算提高處理能力
多內核處理器和多線程處理已成為目前計算領域的主流,LabVIEW 8.5的關鍵新特性之一在于對兩者的支持。新一代多內核處理器的廣泛使用使工程師與科學家開始考慮如何在多核的性能優勢與傳統基于文本的串行編成語言之間的平衡。通過LabVIEW天生的并行數據流語言,用戶可輕松通過并行編程構架來編寫多線程程序,并映射至多內核架構。以早期版本的自動化多線程功能為基礎,LabVIEW 8.5根據可用的內核數量,調整線程總數(total number of threads),并提供增強的線程安全驅動程序與鏈接庫,從而提升處理性能,減少使用多核處理器的復雜性。
LabVIEW 8.5也可通LabVIEW Real-Time環境,提供對稱多線程處理功能,讓嵌入式與工業級系統的工程師不需犧牲特定系統性能,即可跨多重內核自動下載平衡任務。利用最新版本的LabVIEW,用戶可手動指派部份程序代碼至特定處理器內核,以微調實時系統或將時間重要的程序代碼隔離到專用內核。為了滿足多內核開發時日漸增多的除錯與最優化程序代碼的挑戰,工程師與科學家現在可以使用新的 NI Real-Time Execution Trace Toolkit 2.0,以真實地顯示程序代碼區段之間的時序關系以及正在執行程序代碼的個別線程與處理內核。
“從1998年開始,我們已經在LabVIEW中集成了多線程執行引擎,可以不改變任何代碼進行并行計算,并將其應用到多線程或多內核處理器中。這非常適合于我們今天所處的多內核世界中?!盢I資深研發副總裁Tim Dehne對NI正確地把握了LabVIEW的發展方向感到自豪。同時,有著“LabVIEW之父”之稱的NI創始人之一Jeff Kodosky表示:“在一個多內核機器中要使每個應用都更快速地運作就必須將代碼重寫為多線程程序,這是一個令業界生畏的任務。LabVIEW 8.5允許你繼續你以前的工作,但同時享受多線程帶來的好處。”LabVIEW將自動或手動將每個應用分解到多執行線程中,并對處理進行優化。
圖2:NI虛擬儀器組建的RF測試系統。
FPGA增加儀器配置的靈活性
LabVIEW的固有并行機制也使之成為開發FPGA應用的理想平臺。LabVIEW 8.5通過增強的PFGA模塊,持續簡化FPGA的編程設計任務。該模塊可自動進行I/O 配置、IP開發、通用I/O的整體設定、計數器/定時器和編碼器的應用。利用FPGA模塊,工程師與科學家可自動產生更復雜的高速DMA數據傳輸程序代碼。此外,LabVIEW 8.5提供多信道濾波功能與機器自動化中廣泛需要的PID控制函數,從而大幅減少高信道數應用的FPGA資源。目前,NI和其合作伙伴可提供超過60個可應用于LabVIEW FPGA的IP內核和實例。
這種利用簡潔的LabVIEW圖形界面直接進行FPGA配置,并實現不同I/O功能的創新對于使用LabVIEW的用戶來說無疑會帶來很多益處,最重要的就是領域專家可通過LabVIEW平臺利用FPGA技術而無需花費時間去掌握硬件設計知識或VHDL編程語言。在這個模塊中,NI考慮到了用戶在使用過程中的特定應用編程需求和有代表性應用的高效率IP,在易用性和器件利用率上都有所考慮和折衷。
目前NI在其部分功能卡中集成了3百萬和5百萬系統門的FPGA。在談及到今后FPGA在圖形化系統設計中的發展時,“NI是一家充滿創新活力的公司,我們將會將FPGA的門數在明年擴充到9至11百萬門?!盩ruchard博士表示。
“LabVIEW to the pin”的思想使LabVIEW FPGA的終極目標是實現“在LabVIEW中將I/O作為一個語言概念”。無疑,對FPGA的重視加上LabVIEW的圖形化特性,將使NI產品的適用性和靈活性得以進一步加強。
增強大型事件驅動項目的開發效率
狀態圖一般用于設計狀態機,以創建實時與嵌入式系統的行為模型,并描述數字通訊協議、機器控制器以及系統保護應用的事件發生與響應。LabVIEW 8.5增加了新的狀態圖模塊,利用基于統一模式語言(UML)標準的類似的高階狀態圖符號,可協助工程師設計并仿真這些基于事件的系統。
因為LabVIEW Statechart Module是以LabVIEW圖形化編程語言為基礎,工程師可用單一平臺迅速地設計、原型制作及發布他們的系統,以運行在實時或基于FPGA架構系統上的實際I/O來組合相似的狀態圖符號。
兼容不同I/O,支持不同平臺
同時,通過LabVIEW,工程師可把現有基于可編程邏輯控制器(PLC)的工業級系統與更先進的可編程自動控制器(PAC)集成在一起,并把高速I/O與復雜的控制邏輯增加到工業級系統之中。LabVIEW 8.5新增多種I/O陣列、測量與顯示增強功能,適于建立基于PAC的工業級系統,包含可為LabVIEW用戶擴充工業級連接的OPC驅動程序,幾乎把可兼容的PLC與工業級設備的數量翻了一番。
LabVIEW 8.5還為工業級機器監控系統新增了振動與順序追蹤測量及機器視覺算法。對于高信道數的系統,新的多重變量編輯軟件通過簡單的數據表接口,可讓用戶輕松并快速地配置或編輯數百種的I/O標簽。此外,最新版本的LabVIEW具有新的彈性管線顯示工具,以簡化現實工業級用戶接口的創建程序;而其互動的拖曳方式可直接將I/O標簽直接固定于用戶接口顯示器,這種接口顯示器運行在基于Windows CE的工業級觸控面板及手持式PDA上。
圖3:基于LabVIEW平臺的LEGO益智玩具。
LabVIEW的應用實例
圖形化軟件支持的系統易用性在NIWeek中得到完美體現的是由一個十歲的美國中學生Samuel Majors實現的。這位小小年紀的工程愛好者在2007年初開始接觸LabVIEW,便能在數月后的NIWeek上成功地演示了他利用LabVIEW設計的電動玩具,實在讓人嘆為觀止。另一個成功的例子是簡化版LabVIEW在益智玩具品牌LEGO(樂高)中的廣泛使用,這些智能化的玩具機器人不但將對開發少年兒童的智力起到積極的促進作用,而且NI與LEGO的合作更是為了著眼于下一代的工程師的培養,因為2020年代的工程師們現在正是在小學低年級階段。
在NIWeek的主題演講中包括了多個成功使用LabVIEW進行科研,設計和生產測量的數十種實例,包括:殘疾人利用頸部聲帶發聲(無語音)直接控制輪椅動作的設計,體現了LabVIEW的算法工程能力;工程人員利用麥克風多通道陣列測量大型飛機飛行噪聲,并加以數據分析,展示了LabVIEW實時同步觸發和并行測量性能的強大;DVD等電子產品大批量生產測量系統,表示了LabVIEW快速配置和高速數據處理的能力等。此外,還包括強調高速數據流處理能力的PXIe總線控制RAID存儲陣列、以及表現FPGA模塊配置靈活性的基于CompactRIO平臺的醫療設備等。
作者:張毓波