揭開微機電 (MEMS) 感應器在手持式產品設計中的面紗

本文作者:admin       點擊: 2011-11-01 00:00
前言:
裝有微機電 (MEMS) 產品的手持式裝置不勝枚舉, 這些小小的感應器能加強手持式裝置的智慧感應和操控性能,過去數年在世界上產生了巨大影響。除了用途廣泛的加速度感應器,微機電製程所生產的感應器 還擴大到其他類型的感應器, 包括陀螺儀、壓力感應器和高度計等。這些感應器已逐漸成為各種手持式裝置內作業系統的關鍵構件,但是它們卻各有各的挑戰,需要感應器供應商去解決。

消費應用推升了感應器的需求

消費電子產品將繼續提高感應器的廣泛使用,進而實現眾多的智慧和實用功能,例如螢幕旋轉、姿式判別和使用者介面控制。

有了加速度感應器,只需敲擊一下或者連續敲擊兩下智慧手機,便可移動輸入行的游標,給家裡打電話,或是聽取語音留言。姿式判別可讓使用者利用他們的智慧手機、平板電腦或網路電視 控制器來取代原有的各項機械鍵控制功能。電視遊樂器中的控制器是微機電感應器 應用中最熱門的市場,透過使用陀螺儀和加速度感應器,它能帶來更刺激、更逼真的遊戲體驗。

個人導航中一個小應用是使用感應器來計步(即計步器),但是感應器本身卻有著更複雜的任務,才能達到精準的全球定位。於是,一種常見的感應器組合(圖 1) 便應運而生, 用於這些電子系統。這其中包括三軸加速度感應器、磁感應器、陀螺儀,甚至還有壓力計,用於增強全球定位或移動定位服務解決方案。舉例而言,加速度感應器、磁感應器和陀螺儀三者配合,可以提供多種格式的俯仰角、橫滾角和方向角的資料,而加入壓力計後,連高度的資料都可以測得。因此,各大廠商都希望能更快速,生產更有效率且俱有價格優勢的多功能組合式感應器,一場較量就此展開。


圖 1: 微機電感應器業已成為消費電子產品中不可或缺的一部份,將它們的組成在一個整合電路內被稱為「多工感應器」。

整合的挑戰

要把加速度感應器(在手持式裝置和移動作業系統 (OS) 中使用最多的微機電感應器) 與陀螺儀、磁感應器合而為一,這個過程充滿挑戰。舉例而言,加速度感應器可輕易測量靜態的俯仰角和橫滾角方向,但卻有高噪音、動態偵測等方面的局限。在移動或旋轉時,陀螺儀和磁力計能配合來過濾掉部份噪音,但這卻是以犧牲反應速度為代價的,因為過度的過濾會產生明顯的遲滯。

磁感應器可提供絕對的航向參考,用處很大,但它也有一些局限。它能測量 X、Y、Z 磁場強度,常用於校正陀螺儀的方向角。然而,磁感應器容易受到局部磁場的干擾,反應速度往往慢於其他的動態感應器,並且有著 PCB(印刷電路板)layout上的限制。

陀螺儀可測量轉角速率(度/秒)而不受角度影響,其反應十分快速而平穩,需要整合來實現高速工作。因此,時間間隔和參考值很關鍵。另外,由於陀螺儀是屬主動感應器,所以耗電量相當高。

壓力計透過測量大氣壓力來確定高度,對移動定位服務十分有用,例如在建築物內部。

所有這些感應器都有自身的優勢和劣勢,而透過感應器組合,可令它們各司其職,用於移動系統。陀螺儀可測量 X、Y、Z 方向角; 磁感應器可在加速度感應器幫助下, 測定你的裝置相對於磁北的方向;而加速度感應器則可提供重力數據和線性加速度。透過適當的多工感應器,你便能區分所持裝置的方向,並換算為三度空間數據。

多工感應器與移動作業系統

多工感應器的作用是轉換來自多個感應器的原始信號,創造出更為實用的新型感應器。這些新型感應器可以用四元數、旋轉矩陣或歐拉形式來表達方向,亦可顯示產生於輸入線性加速度 (input linear acceleration) 的地球引力差異。在作業系統中,這些新型感應器需透過應用程式介面 (API) 傳輸資料,並可供應用程式開發者使用。此方法要求透過 API 來傳送原始的加速度資料、 速率或航向,而且要求應用程式開發者掌握其中的原理。

不論是 Google Android、Microsoft Windows 或是 Apple iOS, 每種移動平台都有自身的感應器組合挑戰,唯有克服這些難關,才能把感應器功能和使用者體驗發揮到極致。多種多樣的平台,意味著軟體層和感應器介面也是各有不同。有鑒於此,諸如 Kionix 等感應器公司通常會盡早取得開發硬體和軟體, 以期製作適合各種平台的驅動程式解決方案。之後,我們會與客戶及其技術夥伴,針對裝置硬體、嵌入式算法和軟體應用,以及作業系統平台共同合作。

感應器供應商的觀點

感應器現已成為電子裝置設計和作業中必不可少的組成部份,Kionix 的工程師們正集中全力研究其中的挑戰並制定解決方案。

Microsoft Windows

Microsoft Windows 的諸多優勢眾所周知, 它提供了一個廣泛使用的應用開發平台, 代碼可以自由重複使用,讓許多人都可以熟練地進行開發。然而,缺乏支援 I²C介面卻是一個嚴重缺陷。

感應器常局限於 USB 形式,對於加速度感應器搭配低電流專用 USB 節點的設計來說, 缺點尤為明顯。由於感應器通常位於 Windows 系統層的底部, 所以很難把感應器資料向上傳遞到 PC 應用(圖 2)。採用 I2C 或 SPI 時,需要一個額外的處理裝置來初始化所有感應器,並把它們的資料傳遞到 Windows 感應器框架,這就是「USB 人體學接口裝置」。

                                   Windows 感應器體層

圖 2:Windows 使用 微機電感應器,需要透過一個 USB 裝置來初始化感應器, 並將它們的資料傳遞到 Windows 感應器框架中。

Google Android

Kionix 感應器同樣位於 Google Android 軟體層的底部。 不過,此平台可透過應用處理器的整合南橋,很方便地提供本機 I²C 支援(圖 3)。目前已有許多 I²C 迭代和現成可用的源代碼範例,但是隨著 Android 的加速發展,開發者的側重點是與 Android 的構建保持同步,並在新的硬體開發工具包發佈之後獲得這些工具包。

值得高興的是,Google 的作業系統是在廣泛的裝置上運行, 並且都有支援感應器。 從一開始,感應器便可與 Linux Kernel 驅動器直接互動,透過硬體抽象層 (HAL) 傳輸資料,並向上輸入到應用層。未來的挑戰是識別適合多工感應器運算的理想位置。

             Android 感應器體層

圖 3:Google Android 感應器層可以透過應用處理器的整合南橋,很方便地提供本機 I²C 支援。

Apple iOS

Apple iOS 平台使用廣泛, 優勢眾多, 其中包括透過核心運動架構來處理感應器資料的組件。 它還擁有一個非常穩定、無需更換硬體的平台。不過,從感應器供應商的角度看,該平台特有的封閉式系統是一個主要的不足之處。因為軟體是為特定的硬體定制開發的,所以不能改變用途作其他應用。

總結

構建穩定且涵蓋所有移動平台,最終製造出最精簡的多工感應器,並且具備盡可能多的內建功能,這是許多感應器供應商的共同目標。僅僅透過堆疊把原始的感應器資料向上傳遞給使用者,這是遠遠不夠的。面對如此之多的驅動器層,在沒有現成可用的軟體和硬體資源下,感應器廠商面臨著一條陡峭的學習曲線。

作業系統的未來

儘管我們在感應器和移動作業系統領域取得了豐碩成果,但卻仍有改善空間。譬如 I²C 或系統管理 (SM) 總線支援, 便是感應器製造商期待解決的問題。 一個目標是匯集所有感應器, 處理運算,形成解決方案,並透過 I2C 把它傳遞到使用者空間。 這個辦法有許多的整合途徑, 但是一直以來人們更偏向於把解決方案組合在一個硬體中。

通常而言,為了縮短上市的前置作業時間,裝置製造商會對既有的 API 或 HAL 進行自定義擴展,來支援多工感應器。然而,對於感應器製造商來說更為可取的方案是把算法置於硬體內,這樣一來,為一個製造商開發的多工感應器算法便可適用於其他的製造商。標準化可令設計團隊更好地發揮技術,使他們的產品在市場上脫穎而出。


更多資訊,請聯絡: 
Kionix 台灣
(o):+886-2-7718-8688 x 3301
salestwn@kionix.com

電子郵件:look@compotechasia.com

聯繫電話:886-2-27201789       分機請撥:11