那曲檬骨新材料有限公司

電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>ME461:通過手部跟蹤控制四軸飛行器

ME461:通過手部跟蹤控制四軸飛行器

2022-10-28 | zip | 67.31 MB | 次下載 | 免費(fèi)

資料介紹

描述

目標(biāo)

通過結(jié)合了 MSP430F2272 微處理器的 OpenCV 顏色跟蹤工作流程控制小型四軸飛行器。作為 ME461 的最終項(xiàng)目創(chuàng)建:在伊利諾伊大學(xué)厄巴納-香檳分校教授的機(jī)械系統(tǒng)的計(jì)算機(jī)控制。

過程

最初,我們希望通過 MSP430 和 Blade Inductrix 四軸飛行器隨附的 MLP4DSM 發(fā)射器之間的數(shù)字通信直接控制四軸飛行器。不幸的是,從發(fā)射器發(fā)送的數(shù)據(jù)在發(fā)送到無線電設(shè)備之前已被加密。這意味著我們必須將控制信息作為模擬信號注入來代替拇指棒。我們之前曾使用過 MSP430 和單通道 DAC但是一個(gè)渠道是不夠的。我們需要來自運(yùn)行 OpenCV 的 OrangePi 的四個(gè)數(shù)字輸入通道以及四個(gè)模擬輸出通道來控制油門、偏航、俯仰和滾動(dòng)。

在本學(xué)期早些時(shí)候,我們使用 OrangePi 和 OpenCV 庫進(jìn)行單對象顏色跟蹤,以通過 MSP430 的 PWM 輸出設(shè)置伺服電機(jī)的角度。在 MSP430 和 OrangePi 上使用相同的基本代碼,我們修改了代碼以跟蹤兩個(gè)不同顏色的對象以及計(jì)算對象的延遲平均中心每個(gè)代碼循環(huán),我們通過平均像素在其顏色中的位置來計(jì)算每個(gè)對象的中心。然后我們將兩個(gè)對象的中心記錄到四個(gè)數(shù)組(x1、x2、y1、y2)中。這些中心被輸入到更大的過去測量數(shù)組中,最后x的平均位置計(jì)算樣本。為了增加我們平均的范圍而不溢出我們的變量,這個(gè)平均值被輸入另一個(gè)數(shù)組,并計(jì)算最后一個(gè)x的平均值。這允許我們在當(dāng)前對象中心和它的平均中心之間延遲約 1 秒。

通過這種延遲,我們能夠消除我們手中的任何突然動(dòng)作。它還創(chuàng)造了一種控制情況,握住你的手仍然意味著沒有輸入,如果它開始動(dòng)作不正常,這有助于重新控制直升機(jī)。這種控制方法對于方向輸入(偏航、橫滾、俯仰)工作順利,但使油門難以飛行。因此,我們決定為油門切換到絕對控制(距屏幕底部的距離 = 控制輸入)。

在實(shí)施方面,我們在發(fā)射器的接線以及與 TLV5610 DAC 的通信方面遇到了一些問題。這些將在下面的問題部分中討論。

問題

導(dǎo)致手套變色的光照條件

- 顏色跟蹤基于每個(gè)像素的 HSV 值。根據(jù)相機(jī)在房間的位置,背景照明會發(fā)生變化。鑒于我們在通常工作的房間中沒有固定位置,因此我們需要修改 HSV 值以匹配每個(gè)新位置。我們站在房間的角落緩解了這種情況,如下面的視頻所示,我們有干凈的背景和一致的照明。這個(gè)角落還使我們能夠在飛行時(shí)觀看無人機(jī),而不是背對著它。

從 MSP430 到 TLV5610 DAC 的 SPI 通信

- 這部分項(xiàng)目是更復(fù)雜的項(xiàng)目之一,僅僅是因?yàn)槲覀儾皇煜?SPI 通信。一旦我們使用本學(xué)期早些時(shí)候開發(fā)的代碼通過了 MSP430 上端口的初始設(shè)置,我們發(fā)現(xiàn)根據(jù) SPI 協(xié)議,通信命令的時(shí)序至關(guān)重要。由于我們需要向 DAC 發(fā)送四個(gè)輸入值,我們需要確保在發(fā)送的每個(gè)輸入之間觸發(fā)幀同步信號。這是通過將數(shù)據(jù)傳輸分成兩部分來完成的,如下所示:

//DAC Transmission Function
void DAC_write(int DAC_data){
    LSB_data = DAC_data; //Lower 8 bits of data
    MSB_data = DAC_data>>8; //Upper 8 bits of data

    //Trigger FS pin high to low
    P3OUT |= 0x08;
    P3OUT &= ~0x08;

    msb_flag = 1; //MSB Data just filled buffer
    //Fill SPI TX Buffer and trip interrupt flag
    UCA0TXBUF = MSB_data; 
} 

//Excerpt of SPI RX Interrupt
#pragma vector=USCIAB0RX_VECTOR
__interrupt void USCI0RX_ISR(void) {

    if((IFG2&UCA0RXIFG) && (IE2&UCA0RXIE)) {  
        if (msb_flag == 1){
            UCA0TXBUF = LSB_data; //Transmit LSB data
            //Set flag to 0 to prevent loop of empty data
            msb_flag = 0; 
            byte_count++;
        }
        else{ 
        //As each set of data has completed, begin sending next piece
            if (byte_count == 1){
                DAC_write(yaw_val);
            }
            else if (byte_count == 2){
                DAC_write(pitch_val);
            }
            else if (byte_count == 3){
                DAC_write(roll_val);
            }
            else if (byte_count == 4){ //All data sent, reset to 0
                byte_count = 0;
            }
        }
        IFG2 &= ~UCA0RXIFG;
    }

Blade Inducttrix Quadcopter的綁定與初始化

- 將股票控制器綁定到四軸飛行器的方法如下:

  • 打開四軸飛行器并等待 5 秒鐘,直到指示燈開始閃爍
  • 發(fā)射器油門到中間,按下油門桿,打開發(fā)射器,松開操縱桿并將油門歸零
  • 等到燈光停止閃爍,然后再飛行。

隨著我們對發(fā)射器的修改,我們無法提供零油門或按下操縱桿上的按鈕。通過更換按鈕并對我們的代碼進(jìn)行一些小改動(dòng),我們能夠?qū)⑺妮S飛行器和發(fā)射器綁定在一起。

雖然這確實(shí)解決了我們的一個(gè)問題,但四軸飛行器經(jīng)常會卡在其初始化模式中。經(jīng)過一段時(shí)間的故障排除,我們意識到四軸飛行器的內(nèi)部飛行控制器具有 IMU,需要保持靜止和水平,以防止傳感器漂移開始飛行。打開后將四軸飛行器放在工作臺上解決了這個(gè)問題。

四軸飛行器框架故障

- 使用四軸飛行器的輕質(zhì)塑料框架,我們遇到了電機(jī)支架在硬著陸時(shí)斷裂的問題。盡管我們確實(shí)嘗試 3D 打印一個(gè)新框架來替換損壞的框架,但我們發(fā)現(xiàn)將電機(jī)安裝座強(qiáng)力粘回各自的位置更容易、更有效。這確實(shí)導(dǎo)致了少量的不平衡和漂移,這可以在我們的飛行視頻中看到,但盡管如此,我們還是能夠控制直升機(jī)。

?

?


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1A7159和A7139射頻芯片的資料免費(fèi)下載
  2. 0.20 MB   |  55次下載  |  5 積分
  3. 2PIC12F629/675 數(shù)據(jù)手冊免費(fèi)下載
  4. 2.38 MB   |  36次下載  |  5 積分
  5. 3PIC16F716 數(shù)據(jù)手冊免費(fèi)下載
  6. 2.35 MB   |  18次下載  |  5 積分
  7. 4dsPIC33EDV64MC205電機(jī)控制開發(fā)板用戶指南
  8. 5.78MB   |  8次下載  |  免費(fèi)
  9. 5STC15系列常用寄存器匯總免費(fèi)下載
  10. 1.60 MB   |  7次下載  |  5 積分
  11. 6模擬電路仿真實(shí)現(xiàn)
  12. 2.94MB   |  4次下載  |  免費(fèi)
  13. 7PCB圖繪制實(shí)例操作
  14. 2.92MB   |  2次下載  |  免費(fèi)
  15. 8零死角玩轉(zhuǎn)STM32F103—指南者
  16. 26.78 MB   |  1次下載  |  1 積分

本月

  1. 1ADI高性能電源管理解決方案
  2. 2.43 MB   |  452次下載  |  免費(fèi)
  3. 2免費(fèi)開源CC3D飛控資料(電路圖&PCB源文件、BOM、
  4. 5.67 MB   |  141次下載  |  1 積分
  5. 3基于STM32單片機(jī)智能手環(huán)心率計(jì)步器體溫顯示設(shè)計(jì)
  6. 0.10 MB   |  137次下載  |  免費(fèi)
  7. 4A7159和A7139射頻芯片的資料免費(fèi)下載
  8. 0.20 MB   |  55次下載  |  5 積分
  9. 5PIC12F629/675 數(shù)據(jù)手冊免費(fèi)下載
  10. 2.38 MB   |  36次下載  |  5 積分
  11. 6如何正確測試電源的紋波
  12. 0.36 MB   |  19次下載  |  免費(fèi)
  13. 7PIC16F716 數(shù)據(jù)手冊免費(fèi)下載
  14. 2.35 MB   |  18次下載  |  5 積分
  15. 8Q/SQR E8-4-2024乘用車電子電器零部件及子系統(tǒng)EMC試驗(yàn)方法及要求
  16. 1.97 MB   |  8次下載  |  10 積分

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935121次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
  4. 1.48MB  |  420062次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233088次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費(fèi)下載
  8. 340992  |  191367次下載  |  10 積分
  9. 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  10. 158M  |  183335次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81581次下載  |  10 積分
  13. 7Keil工具M(jìn)DK-Arm免費(fèi)下載
  14. 0.02 MB  |  73810次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65988次下載  |  10 積分
qq德州扑克怎么玩| 香港六合彩白小姐图库| 百家乐赌场导航| 保险百家乐官网怎么玩| 皇冠网 全讯通| 大发888八大胜博彩| 破解百家乐公式| 易球百家乐官网娱乐城| 百家乐官网小77论坛| 皇城娱乐| 大发888破解老虎机| 百家乐双筹码怎么出千| 网络百家乐娱乐| 扑克百家乐官网麻将筹码防伪| 香港百家乐官网六合彩| 百家乐官网视频美女| 盛世国际投注| 大发888官方正版网| 大发888论坛| 澳门百家乐经| 金龍百家乐官网的玩法技巧和规则| 百家乐官网开户投注| 百家乐官网怎么投注| 梁平县| 皇冠网上投注网| 博彩公司大全| 大发888娱乐场出纳| 大发888手机下载| 威尼斯人娱乐城澳门赌博| 立即博百家乐的玩法技巧和规则| 如何胜百家乐的玩法技巧和规则 | 大发888游戏平台888| 威尼斯人娱乐城购物| 赌百家乐的玩法技巧和规则| 星际百家乐娱乐城| 百家乐破解方法技巧| 希尔顿百家乐试玩| 温州市百家乐ktv招聘| 太阳城百家乐168| 玩百家乐是否有技巧| 百家乐视频聊天游戏|