概觀
為嵌入式專案或想法建立功能性的原型,為獲得高階管理部門撥款的重要步驟。當開始製作原型時,應考量所有必要的工具。亦請記得:不要讓原型製作耗用過多時間與資源,應儘速建立具有實際功能的原型。
目錄
- 1. 以高階軟體環境開始
- 2. 使用狀態圖 (Statechart) 轉換紙上的設計
- 3. 迅速連接 I/O 與嵌入式感測器
- 4. 使用開放式軟體建置所需的 IP
- 5. 整合機器模擬與軟體設計
- 6. 使用現成硬體搭配內建的中介軟體 (Middleware)
- 7. 別忘了自己的 HMI
- 8. 將原型建構為儀器
- 迅速將想法體現為實際
透過 NI 的圖形化系統設計 (GSD) 工具,即可迅速為嵌入式設計製作原型。NI LabVIEW 圖形化開發環境,可相容的現成硬體包含內建處理器、FPGA,與 I/O;不論是醫療、綠色能源、機器人,或其他發展迅速的領域,均能讓使用者加速製作嵌入式設計的原型。原型製作程序包含多個步驟,從建立軟體架構、連接 感測器/致動器,到進行人機介面 (HMI) 的原型製作。透過下列 8 大技術要點,可於每個步驟中搭配使用圖形化系統工具 (GSD),以加速嵌入式設計的原型製作。
1. 以高階軟體環境開始
由於嵌入式市場多為初階的硬體與軟體工具,且嵌入式設計與硬體技術 (多核心處理器、FPGA,還有更多) 的複雜性不斷提升,因此目前難以使用現有工具迅速製作可用的原型。
若要節省原型製作的軟體時間與成本,則應選用幾乎可囊括所有初階作業的工具。LabVIEW 圖形化系統設計 (GSD) 工具,即可做為開始原型製作的直覺式開發環境。LabVIEW 的圖形化架構亦已內建數千筆的函式區塊,適用於訊號處理、高階控制、通訊、資料擷取、記錄,還有更多作業。此外,LabVIEW 可於多種複雜的硬體系統中執行,從多核心/即時處理器到 FPGA,均屬於其範圍。由於 LabVIEW 即可進行 FPGA 的程式設計,因此亦可輕鬆用以製作原型,而不需耗費大量的開發時間。
»進一步了解最新的 LabVIEW 2009 FPGA 原型製作功能
2. 使用狀態圖 (Statechart) 轉換紙上的設計
大多數的設計與想法均從紙張開始。不論是餐巾紙上的繪圖或正式的企畫書,若能順利將之轉換至軟體中,則可加速開始設計程 序。工程師在設計嵌入式系統的軟體架構時,使用狀態圖 (Statechart) 圖表已行之有年。在 1990 年時,狀態圖即是採用 Unified Modeling Language (UML) 規格的行為圖 (Behavior diagram) 標準;而 UML 規格已廣泛用於嵌入式系統的模型製作。
透過 LabVIEW 狀態圖 (Statechart) 模組,即可使用狀態圖功能設計軟體元件,並以資料流的圖形化程式設計功能,定義狀態與轉換邏輯 (Transition logic) 的行為。圖 1 即顯示可將紙上的流程圖轉換為 LabVIEW 狀態圖。

圖 1. 將紙上流程圖轉換至 LabVIEW 狀態圖 (Statechart) 模組
» 進一步了解 LabVIEW 2009 狀態圖 (Statechart) 模組的最新功能
3. 迅速連接 I/O 與嵌入式感測器
大多數的即時嵌入式應用,均必須連接即時 I/O。因此當製作原型時,應先採用可迅速連接感測器與致動器的工具。NI 即提供多款封裝式與機板層級的硬體,內含可介接感測器的類比與數位 I/O。以 NI C 系列模組的模組性與彈性為例,即適於做為原型的 I/O。

圖 2. C 系列 I/O 模組即可連接感測器與原型
C 系列模組可用於如 NI CompactDAQ 與無線機殼的 USB 架構系統,亦可用於如 NI CompactRIO 與 NI 單卡式 (Single-Board) RIO 的嵌入式系統;最後並可整合電腦使用。NI 與其他製造商共提供超過 80 款 C 系列模組,可將原型連接類比、數位、運動、通訊,與嵌入式感測器。此外,亦可透過 LabVIEW 工具進行所有平台的程式設計,其中包含可介接所有 I/O 模組的驅動程式與函式庫。
4. 使用開放式軟體建置所需的 IP
在大多數的情況下,嵌入式設計最重要的部分,即是其內的控制/處理運算式或功能元件組塊 (IP)。同樣在大多數的情況下,使用者可能已用特定格式 (ANSI C、文字式數學、VHDL,或其他格式) 開發了 IP。要將 IP 轉換為可作業的原型,則可能耗用大量時間。若能選用開放式的環境,以整合 IP 與原型的其他部分,則可簡化此程序。LabVIEW 即為高階的開放式環境,可整合現有的 C、文字式數學,與 VHDL IP。
» 進一步了解介接 C 程式碼與 LabVIEW FPGA 的新工具
5. 整合機器模擬與軟體設計
「數位原型製作 (Digital prototyping)」的概念,為連接機器設計與軟體設計的程序新名詞。只要整合控制設計軟體與機器模擬作業,則可協助使用者迅速著手開發原型的模擬作業。而透過數位原型製作功能,不需建立機器系統即可製作虛擬的原型。
為了要進一步協助使用者,NI 與 SolidWorks 並肩合作以整合機器模擬與控制設計軟體。透過 LabVIEW 2009 中的 NI SoftMotion Module 新功能,即可使用 LabVIEW 建立控制設計運算式,並將之整合至 SolidWorks 機器模型;不需建立機器系統,即可透過實際的機器模型測試控制運算式。
» 進一步了解可整合 LabVIEW 與 SolidWorks 的 NI SoftMotion 新工具
6. 使用現成硬體搭配內建的中介軟體 (Middleware)
嵌入式設計的最大難題之一,即是必須建立、除錯,並檢驗驅動程式層級 (Driver-level) 的軟體堆疊 (Software stack),以整合嵌入式系統的所有硬體元件。一般來說,使用者均必須親自進行該整合程序,讓嵌入式原型製作的過程愈趨複雜且冗長。
NI 中介軟體驅動工具的功能,遠超過傳統單卡式電腦與其他嵌入式系統製造商的基礎驅動程式,可提升產能與效能,並縮短上市時間。驅動程式與其他組態服務軟體,均內含於各款可重設 I/O (RIO) 架構的介面卡中。內建的中介軟體驅動工具包含下列功能:
- 內建的函式可介接類比、數位、運動、通訊 I/O,與 FPGA
- 傳輸函式適用於 FPGA 與處理器之間的資料通訊作業
- 可介接 FPGA/處理器與記憶體
- 可介接處理器與週邊設備 (RS232 序列、乙太網路)
- 高效能的多執行緒驅動程式
7. 別忘了自己的 HMI
在某些情況下,人機介面 (HMI) 或使用者介面,即為呈現想法的最簡單方式。若軟體工具可迅速建立使用者介面,則可於早期程序中測試設計的相關功能與概念。

圖 3. LabVIEW 圖形化程式設計功能即內建了使用者介面
LabVIEW 圖形化開發工具提供多種選項,可迅速建立使用者介面。首先,各個 LabVIEW 程式 (或稱 VI) 均包含應用的圖形化程式碼,並可搭配程式的使用者介面。不同於其他程式設計語言,均必須進行額外的程式設計才能獲得使用者介面;LabVIEW 卻可直接提供使用者介面。LabVIEW 即內建了數百組使用者介面項目,從圖表、刻度,到 3D 圖樣控制;均可讓使用者迅速為原型建立 HMI。
8. 將原型建構為儀器
在設計初期即完成原型製作的另 1 項優點,就是能夠讓設計更臻完備。若能越快讓原型進行作業,就能越快開始測試硬體與軟體設計,進而建構更穩定的系統。絕大部分的開發時間,可能均是在等待 產品完成,才能接著規劃測試方面的問題。若能測試原型,則不僅可建立更穩定的產品,亦可在設計生產測試系統時拔得頭籌。

圖 4. NI 測試產品可測試使用者所製作的原型
當製作原型時,即應考量相關工具是否可輕鬆將原型建構為儀器,以進一步測試原型。圖形化系統設計 (GSD) 工具,可同時用於設計並測試嵌入式系統。LabVIEW 與模組化測試硬體 (電腦或 PXI/CompactPCI 技術為架構) 均可用於搭配原型,以及早測試使用者的設計。
迅速將想法體現為實際
原型製作為嵌入式設計過程的重要部分。除了可透過原型對投資者、客戶,與管理階層展現自己的想法之外,亦是爭取預算的最 佳工具。NI 圖形化系統設計 (GSD) 工具,即可協助使用者迅速建構可作業的原型,不需大型的設計團隊亦可省下大量的開發時間。當要製作下 1 個設計的原型之前,應先考慮採用 LabVIEW 與 NI 原型製作硬體,以加快製作原型的速度。
Legal
This tutorial (this "tutorial") was developed by National Instruments ("NI"). Although technical support of this tutorial may be made available by National Instruments, the content in this tutorial may not be completely tested and verified, and NI does not guarantee its quality in any way or that NI will continue to support this content with each new revision of related products and drivers. THIS TUTORIAL IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND AND SUBJECT TO CERTAIN RESTRICTIONS AS MORE SPECIFICALLY SET FORTH IN NI.COM'S TERMS OF USE (http://ni.com/legal/termsofuse/unitedstates/us/).
