Academic Company Events NI Developer Zone Support Solutions Products & Services Contact NI MyNI

波士頓電機公司 (Boston Engineering) 機器控制應用中的高階原型製作硬體與軟體

  Print

Author(s):
Erik Goethert - Boston Engineering

Industry:
Machines/Mechanics

Products:
CompactRIO, LabVIEW, Embedded Development Module

The Challenge:
開發嵌入式微處理器系統,不僅具有機器控制功能,亦可處理整個製造程序。

The Solution:
切換至較高階的模型製作 (Modeling) 工具,以於環境中產生「由規格修正」的程式碼;該環境可讓具備有限編碼經驗的工程師評估所需的軟體,並互動地進行變更。

"切換至較高階的模型製作 (Modeling) 工具,以於環境中產生「由規格修正」的程式碼;該環境可讓具備有限編碼經驗的工程師評估所需的軟體,並互動地進行變更。"

在波士頓電機公司 (Boston Engineering)我們提供多種電機設計服務透過微處理器架構的嵌入式系統設計電子與機器系統並控制電機活動。此工作需要傳統的程式設計語言、除錯程式 (Debugger)、連結程式 (Linker),與 IDEs;亦需要簡單的機板原型。

為了符合客戶需要,我們需要相關工具以開發電腦架構的電機、電子,與嵌入式軟體控制模擬系統;圖形化使用者介面 (GUI) 模型;與函式系統原型。

 

建立張力 (Tension) 控制系統
我們使用多方位的方法以建立張力控制器可於數位印刷亭 (Printing kiosk) 中進行影像開發。在影像印刷 (Film printer) 中,可由驅動馬達透過印表機機頭 (Head) 灌充色彩媒介軸(Color media spool),並透過接納 (Take-up) 與饋送 (Feed) 馬達控制張力 (Tension)。裁切頭 (Cutter head) 的振動、列印不同數量的相片,與馬達的不同速度,均將影響基板 (Substrate) 的張力。此專案的主要目的之一,即要能開發低價位的產品。

我們以霍爾效應 (Hall-effect) 的類比感測器監控 2 個跳動器 (DANCER) 的位置並間接控制基板張力。控制系統可調整 2 個馬達的位置,於建議的設定點 (Set point) 中保持該接納 (Take-up) 張力。如果無法精確控制此張力,則將造成相片的色度失真。

 

模擬系統
機器模型製作 (Modeling) 需要多種反覆運算 (Iteration)讓客戶更明確地定義次系統掛載 (Subsystem mounting) 與數量分配。我們也根據控制系統的規格,進一步修正機器模型,如馬達尺寸、運動零件的最大慣性,與感測器選擇。

模擬作業定義了系統的開迴路與閉迴路特性。當決定要減低振動來源的縱向範圍與移動距離時,我們先開發了 3D 模型的反覆運算 (Iteration)。透過模型製作與反饋,簡易的 PID 控制器將無法針對閉迴路的頻寬,提供所需的穩定邊界。若要增加穩定度,則需要小型的 PID 增益,卻無法獲得 20 Hz 的閉迴路頻寬。

因此我們需要更完整的控制運算式。我們使用 4 階次 (Fourth-order) 的相位導向控制器並以雙 4 元組 (Bi-quad) 的形式建置之。採用此建置方法可減少固定式 16 字元長度的錯誤,與繼承運算捨入誤差所造成的不穩定性。

當我們建立具有使用者介面的系統時亦於 NI LabVIEW 中進行使用者介面的原型該圖形化工具可於設計程序中進行後續的原型製作與佈署階段。透過 NI LabVIEW,可輕鬆並快速地拖曳介面要素至面板,讓使用者客制介面的相關位置、內容,與操作。此將減少介面調整週期的次數,與最後程式碼的轉換次數。我們發現此實作可搭配嵌入式系統,同時不需實際的使用者介面。我們使用原型介面以協助進行最高穩定度的系統微調。

 

系統原型製作
設計階段的下個步驟即為進行系統的實際原型。原型製作有著多個重要功能。最重要的是,原型將確認設計者已完整了解問題所在。比較模擬作業與原型作業之後,我們可以了解差異處與發生差異的原因。在偶然情況下,於原型製作期間才會發現較高階次的效應。

在原型製作階段我們一般使用現成的開發介面卡並搭配某些可程式化的 DSPFPGA或可重設的微處理器。但是這些介面卡往往不具有適於重要時脈控制的 I/O,或針對該 I/O 的訊號處理。而即便使用如 FPGA 的可重新程式化要素,我們還是在設計程序中遇到許多問題;包含使用專屬語言、缺少技術文件記錄與支援、最小化的控制器彈性、缺乏效率的 I/O,與無法輕易修改的固定控制器運算式。

針對此專案我們另外選擇包含控制器的 LabVIEW FPGA 快速原型硬體平台與透過模組化 I/O 背板中的 FPGA連接至控制器的模組化 I/O 系統。我們亦使用 NI CompactRIO 原型製作系統,具有 4 個或 8 個擴充槽的背板,可容納數位 I/O、類比 I/O,或通訊匯流排模組。

我們的張力控制硬體需要 2 組脈波寬度的模組輸出2 組編碼器可提供 2 組馬達的電壓反饋針對霍爾效應感測器的 2 個類比輸入通道可偵測振動位置產生訊號的 2 個數位通道電熱與空氣讀數的通道。

我們使用客制的訊號處理電路以於 NI CompactRIO 模組中連接模組至硬體該模組整合 2 組控制器。第一組控制器為 266 MHz 的嵌入式微處理器,連接至乙太網路控制器與固態 (Solid-state) 硬碟。第二個控制器為機箱背板中的 1M FPGA,連接 I/O 模組與嵌入式微處理器。

我們利用 LabVIEW 圖形化資料流語言不僅針對模組的遷入式微控制器進行程式設計並管理背板中的 FPGA。由於該程式碼層次高於 C 語言,我們的控制、機器,與電子工程師可直接於 MCU 中進行程式碼作業。

我們選擇於嵌入式控制器中執行監控程式並於 FPGA 中執行馬達控制運算式以於原型製作與末端系統之間進行較高相似度的程式設計模型。若要於 FPGA 中執行控制運算式,則可轉換零點-極點-增益 (zero-pole-gain) 模型,至相似於 LabVIEW 數位濾波器設計工具組的濾波器,我們可透過工具組,輕鬆轉換濾波器為可於 FPGA 中執行的程式碼。因為浮點架構必須於 FPGA 中佔有極大資源,我們使用工具組以自動產生定點程式碼。我們可以測試量子化 (Quantization) 選項,以穩定最後的濾波器。

我們亦可針對系統介面設計與基底硬體使用 LabVIEW。每個 LabVIEW 函式包含程式碼代表的程式區,亦具有該函式的控制與指示碼 GUI。當進行跨系統作業時,GUI 將於系統中顯示視窗,可用來監控系統的內部情況,或調整程式的參數。我們可以針對嵌入式微處理器所執行的程式碼,使用人機介面以調整系統。

透過開放的 LabVIEW 圖型化系統設計平台從設計、原型到佈署均節省了大量的時間。在我們所屬的產業中,節省的時間即為省下的成本;而 LabVIEW 嵌入式技術讓我們更受顧客青睞,並更具有競爭力。若要開發完整的嵌入式運動控制系統,則可使用標準設計工具,並於 LabVIEW 中整合模擬資料與實際資料,以最佳化整個設計。

替代模型、設計、測試,與系統設計的多種工具和環境,適用於 ADI Blackfin 處理器的 NI LabVIEW Embedded Module,提供了單一的整合工具鏈,讓我們針對工業設計進行作業,而不需注重語法。

Author Information:
For more information on this Case Study, contact:
Erik Goethert
Boston Engineering
Tel: (781) 466-8010
Fax: (781) 466-8020
egoethert@boston-engineering.com

Browse All Case Studies »

  Print