新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于802.11b與安卓手機操控機器魚的研究

        基于802.11b與安卓手機操控機器魚的研究

        作者: 時間:2012-08-24 來源:網絡 收藏


        3 Wi—Fi模塊
        Wi—Fi無線網絡包括兩種類型的拓撲形式,基礎網(Infra)和自組網(Adhoc)。要說明無線網絡的拓撲形式,需要首先了解兩個基本概念:
        AP:也就是無線接入點,是一個無線網絡的創建者,是網絡的中心節點。我們一般家庭或辦公室使用的無線路由器就一個AP。
        STA:即站點,每一個連接到無線網絡中的終端(如筆記本電腦、PDA及其它可以聯網的用戶設備)都可稱之為一個站點。
        Infra也稱為基礎網,是由AP創建,眾多STA加入所組成的無線網絡。這種類型的網絡的特點是AP是整個網絡的中心,網絡中所有的通信都通過AP來轉發完成:Adhoc也稱為自組網,是僅由兩個及兩個以上STA自己組成,網絡中不存在AP,這種類型的網絡是一種松散的結構,網絡中所有的STA都可以直接通信。
        自組網中所有的STA都可以直接通信的特點,本文采用了自組網的形式建立與Uart-wifi模塊之間的通信。和所有裝有Uart—wifi模塊的魚都各自是一個STA,當發出控制命令后,每一條魚(即每一個STA)都會接收到這個控制命令,從而做出相應的動作實現對多魚的控制。
        由于數據在網絡上是以數據幀的形式傳輸的,而在串口中是以字節流的形式傳輸的,我們要想把手機傳送的網絡數據通過串口傳送給單片機就要先進行數據類型的轉換。所以我們采用了嵌入式Uart-Wifi模塊。Uart-wifi模塊是基與Uart接口的符合Wi—Fi無線網絡標準的嵌入式模塊,內置無線網絡協議IEEE802.11協議棧以及TCP/IP協議棧,能夠實現用戶串口數據到無線網絡之間的轉換。通過Uart-Wifi模塊,傳統的串口設備也能輕松接入無線網絡。當Uart-Wifi模塊接收到網絡上傳輸過來的數據幀時它會將這些數據從幀格式轉換成流格式,這是比較容易的,也是大多數普通Wi—Fi模塊都能夠實現的,但當模塊從串口接收單片機返回的數據即接收到流格式數據要將其轉換成幀格式發送出去時就比較困難了,它需要一定的規則進行約束。而Uart-Wifi模塊使用“自動組幀長度”和“自動組幀周期”來進行約束,能夠輕易的將數據從流的形式轉換成幀的形式。因此應用Uart-wifi模塊作為中間模塊進行手機和單片機間的通信能夠輕易地解決數據類型轉換難的問題(見圖3)。

        本文引用地址:http://www.104case.com/article/170998.htm

        d.JPG



        4 單片機模塊
        本項目采用MSP430F149單片機作為魚體控制芯片,它是一種高性能、低功耗的16位控制器,廣泛應用于通訊控制設備中。作為控制芯片,MSP430F149單片機顯著特點是高效、低耗。它的數據處理能力非常強大,雖然尋址方式廣泛(7種源操作數,4種目的操作數),但只需要簡潔的27條指令即可完成,而且耗電量非常少,能夠有效延長魚下水的時間,非常適合做機器魚控制芯片。
        MSP430F149單片機作為“魚體”的主控MCU,主要用來接收米自Uart-Wifi模塊的數據流和控制機器魚舵機的運轉。我們用的機器魚為三關節桿系機器魚,這種利用桿系結構來模擬真魚的運動的操作比較簡單,只需要頭尾部的配重和魚尾各個關節轉動的角度即可。
        機器魚的動力來自舵機部分,三關節機器魚有三個舵機,每個舵機由十五位的不同占空比的PWM波控制轉動不同的角度,繼而控制“魚體”擺動形成魚體波。魚體波是利用桿系機器魚對真實魚游動形態的擬合,可以認為魚體波曲線是魚體波幅包絡線和正弦曲線的合成,它開始于魚體的慣性。根據魚體波原理我們編寫下位機程序讓單片機計算出各個關節的轉動角度,產生相應的控制信號控制舵機的運作,使三個舵機相互配合產生相應的魚體波,推動機器魚前進。主控芯片的流程如圖4所示。

        e.JPG




        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 贺州市| 盐城市| 鄂州市| 东乌珠穆沁旗| 磐安县| 随州市| 岑巩县| 旬邑县| 大埔县| 克拉玛依市| 武平县| 同江市| 偏关县| 阜新| 遂平县| 静安区| 开远市| 邹城市| 逊克县| 禹城市| 营口市| 云南省| 盘锦市| 喜德县| 灵石县| 蓬莱市| 临湘市| 都昌县| 开平市| 甘孜县| 高雄县| 满城县| 龙胜| 曲松县| 双桥区| 大英县| 开封市| 焦作市| 池州市| 蒙阴县| 柳林县|