最新精品久久,欧美亚洲福利,表妹免费在线观看,久久国产二区,国产三级电影网站,日本特黄久久,成人a在线视频免费观看

基于CC1110無線單片機的機器魚控制系統(tǒng)設計

來源:網(wǎng)絡

點擊:816

A+ A-

所屬頻道:新聞中心

關鍵詞: 單片機,控制系統(tǒng),無線通信

      魚類的游動具有高效性、機動性以及低噪性等優(yōu)點。因此,仿生機器魚的研究己成為機器人研究領域的熱點。隨著仿生機器魚研究的不斷深入,仿生機器魚在水下搜救、水質檢測以及海洋資源勘探等領域發(fā)揮著重要的作用。近年來,機器魚也成為國內(nèi)國際高校機器人比賽項目之一。本文就是針對在國際水中機器人大賽的大平臺上的三關節(jié)機器魚而設計的一套雙關節(jié)機器魚控制系統(tǒng)。本機器魚控制系統(tǒng)具有體積小、成本低、微功耗等優(yōu)點,可以方便地運用到類似的機器魚產(chǎn)品中。

      1 機器魚控制系統(tǒng)設計方案

      機器魚控制系統(tǒng)總體結構如圖1所示。系統(tǒng)主要分為指令發(fā)送端和指令執(zhí)行端,兩部分均以CC1110無線單片機作為核心控制器,負責指令的發(fā)送、接收、數(shù)據(jù)處理,進而控制機器魚的相關執(zhí)行機構工作。指令發(fā)送端的指令來自上位機,USB串口轉換電路將USB接口模擬成串口,實現(xiàn)上位機與CC1110的串口通信。電源模塊完成電壓的變換,為相關電路提供各種合適的工作電壓。存儲器模塊存儲機器魚的相關信息。舵機驅動模塊為執(zhí)行機構舵機提供合適的控制信號。

    基于CC1110無線單片機的機器魚控制系統(tǒng)設計

      圖1 機器魚控制系統(tǒng)總體結構圖

      2 機器魚控制系統(tǒng)硬件設計

      2.1 USB串口轉換電路

      CH341T是一款USB總線轉接芯片,通過簡單的接線即可實現(xiàn)USB接口和串口之間的轉換,此時無需改動上位機與下位機的程序,通過USB接口即可實現(xiàn)上位機與下位機的串行通信。USB串口轉換電路原理圖如圖2所示。

    基于CC1110無線單片機的機器魚控制系統(tǒng)設計

      圖2 USB串口轉換電路

      在本設計電路中,將CH341T芯片的SDA和SCL引腳懸空,此時芯片功能為USB轉異步串口,模擬計算機串口;CH341T芯片的TXD和RXD兩個引腳分別連接到CC1110無線單片機的RX(P0.2)和TX(P0.3)兩個引腳;TEN#引腳為串口發(fā)送使能端,接地使CH341T能發(fā)送數(shù)據(jù)。CH341T芯片的地要和CC1110無線單片機的地相連。CH341T不需外接電源,直接由上位機通過USB口提供+5V電源。

      2.2 DC-DC電壓變換電路

      指令發(fā)送端由USB提供5V電壓,指令執(zhí)行端由電池提供5V直流電壓。電池提供的5V直流電壓可以直接為舵機驅動芯片以及舵機供電。而系統(tǒng)內(nèi)部CC1110無線單片機正常工作電壓范圍是2.0~3.6V,存儲器芯片24AA01正常工作電壓范圍是1.7~5.5V,這里可以將二者的工作電壓選擇為3.3V.為此,專門設計了一個DC-DC電壓變換電路,將5V直流電壓變換為3.3V直流電壓后再提供給CC1110無線單片機和24AA01芯片,以保證系統(tǒng)的正常工作。這里采用AMS公司生產(chǎn)的AMS1117芯片設計了電壓變換電路,具體的DC-DC電壓變換電路如圖3所示。

    基于CC1110無線單片機的機器魚控制系統(tǒng)設計

      圖3 DC-DC電壓變換電路

      在電壓輸入端接有22 μF電解電容及電壓輸出端接有47 μF電解電容,以保證輸出電壓的穩(wěn)定。

      2.3 CC1110無線收發(fā)電路

      在機器魚控制系統(tǒng)中,機器魚指令的發(fā)送、接收以及指令解析執(zhí)行是系統(tǒng)的關鍵部分。而現(xiàn)有的無線收發(fā)系統(tǒng)很多都是采用單片機和RF收發(fā)模塊組成,這樣整個控制電路的體積較大,將會使機器魚的體積變大。為了將機器魚體積做小以及將功耗降低,這里采用TI公司生產(chǎn)的一種低成本、低功耗的CC1110無線單片機作為指令收發(fā)執(zhí)行的核心器件。CC1110無線收發(fā)電路如圖4所示。

    基于CC1110無線單片機的機器魚控制系統(tǒng)設計

      圖4 CC1110無線收發(fā)電路

      在無線收發(fā)電路中,電容C1-C6為電源去耦電容;電阻R2和電容C18構成上電復位電路;電容C7、C9以及電感L1、L2構成BALUN阻抗匹配電路,將輸出阻抗轉換為50 Ω標準天線阻抗;Y1、C13以及C14構成CC1110高速時鐘源;Y2、C15以及C16構成CC1110低速時鐘源:JATG接口用于在線調試與下載程序;PWM01(P1.0)和PWM02(P1.1)接舵機驅動電路的輸入;RX(P0.2)和TX(P0.3)接USB串口轉換電路,用于串口通信;2401_WP(P0.4)、2401_SCL(P0.5)以及2401_SDA(P0.6)接存儲器模塊,控制存儲器的讀寫。

      2.4 舵機驅動電路

      在機器魚控制系統(tǒng)中,我們利用舵機的擺動來模擬機器魚的游動。而無線單片機產(chǎn)生的PWM信號不足以驅動舵機,為保證舵機正常工作,要專門設計一個舵機驅動電路。舵機驅動電路采用了NXPSemiconductors公司生產(chǎn)的74AHCT1G04芯片,舵機驅動電路原理圖如圖5所示。

    基于CC1110無線單片機的機器魚控制系統(tǒng)設計

      圖5 舵機驅動電路

      2.5 存儲器電路

      在機器魚初始化階段以及在機器魚控制過程中需要存儲一些參數(shù),因此要有專門的存儲模塊。由于參數(shù)的數(shù)據(jù)量比較小,這里采用Microchip公司生產(chǎn)的I2C接口的24AA01存儲芯片,存儲器電路原理圖如圖6所示。

    基于CC1110無線單片機的機器魚控制系統(tǒng)設計

      圖6 存儲器電路

      3 機器魚控制系統(tǒng)軟件設計

      在機器魚控制系統(tǒng)中軟件設計采用模塊化設計,主要包括串口通信程序、無線通信程序、存儲器讀寫程序以及舵機驅動程序。

      3.1 串口通信程序設計

      串口通信程序完成CC1110無線單片機與上位機PC的串行通信。串口接收數(shù)據(jù)采用中斷的方式,串口發(fā)送數(shù)據(jù)采用查詢的方式。串口收發(fā)程序流程圖如圖7所示。

    基于CC1110無線單片機的機器魚控制系統(tǒng)設計

      圖7 串口收發(fā)程序流程圖

      在硬件設計中采用了CH341T串口轉換電路模擬串口,為了配合硬件的使用,需要在上位機中安裝驅動程序,驅動程序可以從南京沁恒電子有限公司網(wǎng)站上下載。

      3.2 無線通信程序設計

      在設計無線通信程序前,需要配置CC1110的高頻部分,以確定無線收發(fā)器的收發(fā)頻率、發(fā)送功率、傳輸速率以及調制方式等。由于CC11 10高頻配置較為復雜,這里可以采用TI公司的SmartRF Studio軟件來進行配置。通過設置寄存器FREQ2、FREQ1和FREQ0將CC1110的收發(fā)頻率選擇在433MHz頻段;通過設置PA TABLE0將CC1110的發(fā)送功率設置為10dBm,這樣可以提高發(fā)射距離;由于該控制系統(tǒng)的指令數(shù)據(jù)量較小,可以選擇較低的傳輸速率,不僅可以提高傳輸距離,而且可以降低能耗;調制方式選擇2-FSK方式。

      無線通信程序包括無線發(fā)送程序和無線接收程序兩部分。無線發(fā)送程序將待發(fā)送的數(shù)據(jù)通過無線的方式發(fā)送出去,無線接收程序可以接收同頻率的發(fā)射機發(fā)送的數(shù)據(jù)。無線通信程序流程圖如圖8所示。

    基于CC1110無線單片機的機器魚控制系統(tǒng)設計

      圖8 無線通信程序流程圖

      3.3 指令發(fā)送端主程序設計

      在機器魚控制系統(tǒng)的指令發(fā)送端,實現(xiàn)的功能包括串口收發(fā)數(shù)據(jù)和無線收發(fā)數(shù)據(jù)。指令發(fā)送端主程序流程圖如圖9所示。

    基于CC1110無線單片機的機器魚控制系統(tǒng)設計

      圖9 指令發(fā)送端主程序流程圖

      指令數(shù)據(jù)無線發(fā)送以后,指令發(fā)送端開始等待接收指令執(zhí)行端反饋的數(shù)據(jù)。指令發(fā)送端接收到反饋數(shù)據(jù)后調用串口發(fā)送程序將反饋數(shù)據(jù)發(fā)回到PC,將反饋數(shù)據(jù)與指令數(shù)據(jù)比對,如果反饋數(shù)據(jù)與發(fā)送數(shù)據(jù)一致,則認為指令數(shù)據(jù)發(fā)送成功,否則重新發(fā)送指令數(shù)據(jù)。如果長時間沒有接收到反饋數(shù)據(jù),則重新發(fā)送指令數(shù)據(jù)。

      3.4 指令執(zhí)行端主程序設計

      在機器魚控制系統(tǒng)指令執(zhí)行端,主要包含指令數(shù)據(jù)的接收、指令數(shù)據(jù)的反饋發(fā)送、存儲器的讀寫以及舵機的控制等。其中,舵機的控制是最為關鍵的部分。在控制舵機前要先對指令數(shù)據(jù)進行解析,計算出舵機的控制量。由于舵機采用級聯(lián)的方式來模仿魚體的擺動,因此舵機間關節(jié)的運動規(guī)律可以采用以下數(shù)學模型:

    基于CC1110無線單片機的機器魚控制系統(tǒng)設計

      式中,Ka為振幅系數(shù),Ki為偏斜系數(shù),f為擺動頻率,φi為關節(jié)滯后角,Aimax為關節(jié)擺動幅度,t為時間。以上參數(shù)即為舵機的主要控制參數(shù)。在程序設計過程中,一般取Ka≤0.5,Ki、f、φi以及Aimax四個參數(shù)根據(jù)具體的速度指令和方向指令來計算出相應的控制量。指令執(zhí)行端主程序流程圖如圖10所示。

    基于CC1110無線單片機的機器魚控制系統(tǒng)設計

      圖10 指令執(zhí)行端主程序流程圖

      4 結束語

      本文設計的機器魚控制系統(tǒng)通過了下水測試。在機器魚下水測試階段,利用串口調試助手對機器魚進行直接發(fā)送控制指令實驗,對機器魚的調直數(shù)據(jù)保存、直游以及轉彎進行了直接控制。測試結果表明,機器魚控制系統(tǒng)可以有效地接收上位機發(fā)送的指令數(shù)據(jù),并執(zhí)行相關的動作,達到了較好的控制效果。同時,本文的研究設計工作為進一步研究設計自主機器魚以及多魚協(xié)作提供了較好的軟硬件設計基礎。

    (審核編輯: 智匯張瑜)

    聲明:除特別說明之外,新聞內(nèi)容及圖片均來自網(wǎng)絡及各大主流媒體。版權歸原作者所有。如認為內(nèi)容侵權,請聯(lián)系我們刪除。