基於安卓開放配件AOA協議的PWM信號控製係統設計
發布時間:2015-01-23 責任編輯:echolady
【導讀】AOA協議是Android平台下通過USB總線與Android配件相互通信的協議,這種協議在設備控製和數據采集領域發揮了極其重要的作用。本文就提出了基於Android開放配件AOA協議,實現PWM信號控製係統的設計。
係統基於Android開放配件協議,通過操作Android手機界麵控製PWM 信號的周期和占空比。首先介紹了係統構成,然後給出了Android終端軟件的具體實現,最後以驅動舵機為例進行係統測試。係統實現了Android手機產生參數可控的PWM信號。
PWM(Pulse width Modulation,脈衝寬度調製)是一種調壓技術也是一種變頻技術,由於其具有經濟、節約空間、抗噪性能強等優點 ,已廣泛應用於測量、通信、功率控製與變換等領域中。目前,嵌入式PWM 控製應用廣泛采用單片機,如簡單應用可選用PIC、AVR等係列單片機,比較複雜的應用可選用DSP,要求更高的可以選用ARM等。但是,PWM 控製應用中選用Android智能手機還未見相關實例。
Android是一種全新的開源手機操作係統,具有強大的應用層API和傳感器功能,廣泛應用於手機、平板電腦等移動設備中。Android智能手機具有優越的用戶交互性、接口資源開放性、移動性以及便攜性等特點,隨著其處理速度、存儲容量、穩定性、網絡訪問能力等性能的逐漸提高,Android智能終端與工業應用的結合將會得到很大發展。2011年Google推出Android開放配件協議(Android Open Accessory Protocol,AOA,Protoco1)及配件開發工具包(Accessory Development Kit,ADK),提供了Android設備與Android配件通過USB或藍牙進行通信的API,進一步拓寬了Android終端的應用範圍。基於以上條件,本文介紹了一種基於AOA協議,通過Android手機USB控製Android配件生成PWM信號的係統。
1 AOA協議
AOA協議用於Android配件通過USB或藍牙與Android終端進行通信。基於AOA協議實現Android終端USB通信方式稱為配件模式。此模式下,與Android終端通信的另一端設備稱為Android配件,兩者都必須支持AOA協議。在USB通信過程中,Android終端充當USB從機,Android配件充當USB 主機並為總線供電。Android配件需具有USB主控製器功能並移植有AOA 協議。ADK開發板是常見的Android配件。采用ADK 開發板的Android配件模式示意如圖1所示.

圖1 Android配件模式
AOA協議基於USB協議,它規定了配件如何檢測、枚舉Android設備,並與設備建立通信的方法。AOA協議的工作流程如圖2所示。

圖2 AOA協議工作流程
2 係統設計與實現
2.1 係統設計
係統以Android手機控製Android配件(ADK 開發板)產生等脈寬PWM,並控製一舵機為例,采用的Android配件為英國飛特蒂亞公司(FTDI)公司生產的Android平台USB主控模塊UMFT311EV。在該模塊的核心芯片內集成了USB協議和AOA協議,並支持4路PWM。係統框圖如圖3所示。
2.2 軟件開發
本係統采用的UMFT311EV 開發板由於集成了AOA 協議,因此無需開發Android配件端的程序。此外,FTDI公司針對UMFT311EV 為Android終端程序開發提供了底層API。基於UMFT311EV 的Android手機端PWM 控製程序結構如圖4所示。

圖3 係統框圖


圖4 程序結構
在圖4所示的結構中,PWM 驅動層為FTDI公司提供的與UMFT311EV開發板通信的方法集合,PWM 驅動層通過如表1所列的兩個類與開發板進行USB通信。

① 配置Android Mainfest文件,設置Android USB配件模式。設定 元素及android.hardware.usb.accessory屬性值,聲明使用USB配件API;設置最小SDK版本為12(Android從該版本後支持USB配件模式);增加元素,並指定android.hardware.Usb.action.USB_ACCESSORY_ATTACHED意圖,用於當USB配件連接後向用戶發出提示。增加元素並使其指向一個外部的XML資源文件accessory_filter.xml,該文件用於聲明希望Android設備檢測的USB配件的描述信息。
② 配置accessory_filter.xml文件。增加元素,並指定manufacturer、model、version三個屬性。在Android配件的固件程序中,同樣包含以上三個屬性值。根據AOA協議,當Android配件連接到Android設備上時,配件會發送該屬性值到Android設備。Android程序將唯一響應與其accessory_filter.xml中指定的屬性值匹配的Android配件。
本係統的accessory_filter.xml的配置如下:
< usb—accessory model=”FTDIPWMDemo”
Manufacturer=”FTDI”
version= ”1.0”/>
Android手機端程序流程如圖5所示。

圖5 程序流程
3 係統測試及結果
本係統的測試場景如圖6所示。
將ADK開發板通過USB數據線連接至Android手機上,此時,手機界麵將彈出授權對話框,提示打開係統軟件。軟件界麵如圖7所示。
點擊“輸出”按鈕,輸出PWM 信號。在輸出信號的過程中,可以通過滑動條動態調整PWM 信號的周期和占空比。經過測試,本係統能夠實現Android手機通過USB接口控製產生PWM 信號。由於實驗設備(Android手機和ADK開發板)的性能限製,本係統能夠實現PWM 信號的參數調節範圍如表3所列。

圖6 測試場景


圖7 軟件界麵

經過在小米2手機上的反複測試,通過手機能夠產生的PWM信號周期範圍為1~250 ms,占空比範圍為5%~95%,係統總體延遲小於5 ms。係統實現了通過Android手機USB控製Android配件生成參數可控PWM信號的功能,並且可以通過操作Android手機界麵實現動態調節PWM信號。項目組正開發多種PWM信號的控製係統,並在深入研究和探討本係統與工業應用的結合。
相關閱讀:
有PWM占空比,分分鍾搞定LED亮度線性變化
新手進階:幾種由占空比與PWM結合的簡單電路
學習:5種開關電源PWM的反饋控製設計
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- 貿澤EIT係列新一期,探索AI如何重塑日常科技與用戶體驗
- 算力爆發遇上電源革新,大聯大世平集團攜手晶豐明源線上研討會解鎖應用落地
- 創新不止,創芯不已:第六屆ICDIA創芯展8月南京盛大啟幕!
- AI時代,為什麼存儲基礎設施的可靠性決定數據中心的經濟效益
- 矽典微ONELAB開發係列:為毫米波算法開發者打造的全棧工具鏈
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索





