• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 關 閉

    新聞中心

    EEPW首頁 > 工控自動化 > 設計應用 > 用加速度傳感器來進行手勢識別器的設計

    用加速度傳感器來進行手勢識別器的設計

    作者: 時間:2012-12-21 來源:網絡 收藏

    仿真器的外觀和操作類似一部移動電話,但是并不代表某個特定的設備,而是提供對其所支持的API 的正確實現,每個命令按鈕對應著相應的API函數。從圖6中可以看到手機的導航鍵,我們更改了導航鍵的API函數,使其從鼠標單擊觸發的方式轉換為串口動作代碼控制。首先,我們編寫了J2ME的串口接收程序,用于接收從單片機傳來的單字節的type_action值;然后將type_action以參數的形式傳給API,手機根據不同的type_action值執行不同的動作,包括菜單上下翻、進出二級子菜單、圖片翻轉等。手機動作與type_action的對應關系如表3。

    根據type_action的值,在手機界面上產生相應的動作,手機界面發送不同的變化。演示終端的具體實現在下面的內容詳細介紹。

    硬件描述

    系統硬件分為兩個部分:CT-298和MM-2860。

    CT-298是由MC9S08QG單片機構成、由USB總線電源供電的小型評估板。CT-298上安裝有按鈕開關、LED燈、蜂鳴器等作為開發的輸入輸出器件。同時,USB-COM轉換電路采用了FTDI公司制造的FT232R,容許單片機與電腦之間通過USB接口串行通信。BDM用于代碼的燒寫及系統的調試。

    MM-2860是含有Freescale公司制造的MMA7260Q型三軸小量程的模塊,它可以直接安裝在CT-298為其的插口上。MM-2860的電源是由CT-298上的MC9S08QG8單片機的PTB5端口來控制的,當PTB5端口為L時電源接通。此外,g-SELECT開關是選擇靈敏度的開關,使用時將MM-2860插入到CT-298的接口中即可。本系統采用的靈敏度選擇為800 mV/g。

    軟件描述

    單片機主程序的流程如圖7所示。

    系統上電后,首先要對單片機的硬件系統初始化、配置寄存器等操作,之后才可以數據采集,將的值進行A/D轉換,得到量化的值。圖片菜單是二級菜單,如果沒有接到演示系統傳給單片機進入二級菜單的指令,則單片機一直在主程序運行,不斷地采集A/D值、進行動作判定,并向演示系統發送type_action的指令。演示系統可根據接收到的type_action的類型采取相應的動作。如果單片機接收到進入二級菜單的命令,則進入圖片菜單,同時也執行類似于主程序的動作判定程序,并不斷更新A/D采樣值,發送type_action,直到接收到退出二級菜單指令才退出。下面詳細介紹一下各個功能模塊的具體設置。

    單片機硬件初始化

    單片機系統主要的工作有:將加速度傳感器的模擬數據進行A/D轉換、向演示系統發送type_action的動作類型、接收演示系統發來的進出二級菜單的指令、設置采樣值,除此之外還需要對系統時鐘、外部設備(燈,buzzer)進行配置。根據單片機的主要工作內容選擇單片機內部的功能設備,包括A/D轉換器、模定時器、串行通信模塊(SCI)、內部時鐘源模塊。

    數據采集

    系統設置的采樣頻率為200Hz,每秒鐘分別對X、Y、Z 三軸采樣200個數據,因此定義了三個大小為N的數組對數據進行緩存,他們是:

    char x_data[N];

    char y_data[N];

    char z_data[N];

    這里N取50,每0.25s存取一次,1s鐘可以存取4次,保證采樣率為200。函數void acce_meas(void) 負責將采樣的數據分別放到這三個數組中,下面是程序的具體實現:

    for(j=0;j

    {

    for(i=0;i3;i++)

    {

    if(i==0)

    {

    adc_go(0); //選擇A/D信道0

    x_data[j]= ADC_val_L; //X軸

    }

    else if(i==1 )

    {

    adc_go(6); //選擇A/D信道6

    y_data[j]= ADC_val_L; //Y軸

    }

    else

    {

    adc_go(7); //選擇A/D信道7

    z_data[j]= ADC_val_L; //Z軸

    }

    }

    delay(); //延時函數,用來設定采樣率

    }

    傳感器相關文章:傳感器工作原理


    風速傳感器相關文章:風速傳感器原理
    蜂鳴器相關文章:蜂鳴器原理
    加速度計相關文章:加速度計原理


    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 安塞县| 上高县| 墨竹工卡县| 林甸县| 阿拉善盟| 九龙县| 腾冲县| 罗甸县| 揭阳市| 奉新县| 藁城市| 沙雅县| 柳江县| 邵武市| 大丰市| 巴中市| 丹凤县| 宜春市| 北票市| 安丘市| 噶尔县| 桐庐县| 秦安县| 茌平县| 阳城县| 开鲁县| 普陀区| 汾西县| 嘉定区| 丰都县| 太和县| 漠河县| 沂水县| 兰溪市| 孟连| 台东市| 全州县| 德阳市| 方城县| 紫阳县| 峨山|