新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于體感算法的多功能藍牙遙控器的設計

        基于體感算法的多功能藍牙遙控器的設計

        作者: 時間:2013-10-10 來源:網絡 收藏
        隨著三網融合[1]的推進,多功能電視機頂盒已經進入了千家萬戶。電視除了能夠收看電視節目外,視頻點播、瀏覽網頁、多媒體游戲、視頻通話等功能也已經或即將被引入現代電視(或電視機頂盒)中。因此,僅具有按鍵功能的紅外線遙控器已經無法滿足如此眾多的功能需求。為此,本文在普通遙控器的按鍵功能上增加了體感模塊和語音模塊,引入了體感控制算法,并以藍牙協議作為通信方式,設計了一款具有體感控制功能的多功能遙控器。

        1 系統總體設計

        系統總體設計框圖如圖1所示。系統以HL1010芯片為控制核心,數字加速度傳感器、數字陀螺儀和地磁計的數據通過I2C總線傳至HL1010的微控制器,經過濾波和的處理,轉化為主機服務端可用的數據,由HL1010的藍牙控制器傳至主機服務端。微控制器對鍵盤模塊進行鍵盤掃描,將鍵值通過藍牙發送至主機服務端外,還可以進行簡單的音頻壓縮和解碼,并通過藍牙控制器和語音模塊,完成遙控器和主機服務端的語音傳輸。遙控器中加入了E2PROM,用以存儲程序和初始化數據以及藍牙通信所需的重連信息。電源管理模塊用以管理各個模塊之間的電源,達到節能和延長電池使用壽命的作用。此外,串口接口為HL1010燒錄程序的接口。


        2 硬件設計

        2.1 HL1010接口及外圍電路

        HL1010為藍牙控制芯片,其特點是:除了具有獨立的藍牙控制核心外,還集成了一顆微控制器核心;具有28個獨立的GPIO,兩路語音輸入輸出通道;集成了I2C和SPI控制器,便于外圍設備的擴展;內部固化了鍵盤掃描固件,可以通過簡單的寄存器讀寫完成鍵盤掃描。

        利用HL1010的外圍電路,其中,GPIO10~GPIO17作為鍵盤行掃描,GPIO30~GPI-O37作為鍵盤列掃描;GPIO20~GPIO27為電源管理GPIO,分別通過軟件來控制加速度傳感器、數字陀螺儀、地磁計、E2PROM、揚聲器、振動電機等模塊的開關,以達到節能的作用;Pin44、45、48、49、50為語音模塊接口,pin23、24為I2C接口。其余引腳為芯片的供電和射頻匹配電路。HL1010的外圍電路可參考文獻[2]。

        2.2 傳感器模塊

        表1為本設計中傳感器的部分參數,三個傳感器都通過I2C總線與主控芯片進行交互,電路設計較為簡單。


        3 軟件設計

        3.1

        體感功能中最常用的是空中鼠標,即通過遙控器在空中的揮舞來控制屏幕中鼠標的運動,同時通過遙控器按鍵實現鼠標按鍵的操作,從而使用戶能在遠距離的三維空間中獲得鼠標的操作功能。為了實現空中鼠標的功能,本文采用陀螺儀和加速度傳感器。通過對陀螺儀得到的角速度數據分析得出遙控器的運動狀態,作為空中鼠標的主要數據;通過對加速度傳感器提供的加速度(主要是判斷重力加速度的方向)數據進行分析,得到遙控器所處的姿態,從而對陀螺儀的數據進行坐標轉換。陀螺儀所得數據中與重力加速度平行的方向為Y軸,與重力加速度垂直的為X軸,使最終空中鼠標的Y軸與重力加速度的平行方向始終一致、X軸與重力加速度的垂直方向始終一致。其數學方法如下[3-4]:

        遙控器的加速度為as,大地系加速度為ai,兩者的轉化關系為:

        ai=asRis (1)
        其中,Ris為遙控器相對于大地系的余弦陣,其表達式為:


        經過坐標轉換后,無論使用者如何將遙控器握在手中(正握,反握,豎立,倒立等),空中鼠標的運動僅與使用者手臂的運動方向有關,而與遙控器的運動方向無關。

        紅外遙控器相關文章:紅外遙控器原理

        萬能遙控器相關文章:萬能遙控器代碼


        加速度計相關文章:加速度計原理

        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 东山县| 紫金县| 永和县| 昌平区| 丹东市| 游戏| 宾川县| 莆田市| 云龙县| 沾化县| 车致| 福鼎市| 永福县| 和硕县| 陵水| 石首市| 沅江市| 嘉鱼县| 泗水县| 信阳市| 肇东市| 全南县| 开封县| 湘阴县| 鄂州市| 湛江市| 阿城市| 满洲里市| 五大连池市| 来凤县| 门头沟区| 米脂县| 邵武市| 泾源县| 江门市| 黄龙县| 漳浦县| 县级市| 红桥区| 鄂尔多斯市| 永州市|