標(biāo)題: 2023年電賽E題思路和代碼分享 openMV設(shè)計(jì)運(yùn)動(dòng)目標(biāo)控制與自動(dòng)追蹤系統(tǒng) [打印本頁]

作者: diogenescask    時(shí)間: 2024-11-15 12:26
標(biāo)題: 2023年電賽E題思路和代碼分享 openMV設(shè)計(jì)運(yùn)動(dòng)目標(biāo)控制與自動(dòng)追蹤系統(tǒng)
項(xiàng)目使用K210與 openMV設(shè)計(jì)了一個(gè)運(yùn)動(dòng)目標(biāo)控制與自動(dòng)追蹤系統(tǒng)。系統(tǒng)包括使用深度學(xué)習(xí)進(jìn)行識(shí)別激光位置,其中紅色激光筆模擬運(yùn)動(dòng)目標(biāo)、綠色激光筆指示自動(dòng)追蹤,并將識(shí)別到的位置信息控制舵機(jī)移動(dòng)。通過K210和stm32串口通信實(shí)現(xiàn)圖像處理和舵機(jī)運(yùn)動(dòng)控制功能,實(shí)現(xiàn)了紅色光斑的位置控制以及綠色光斑的自動(dòng)追蹤功能。實(shí)驗(yàn)結(jié)果表明,系統(tǒng)能夠較準(zhǔn)確追蹤紅色光斑,在規(guī)定的時(shí)間內(nèi)完成移動(dòng)和復(fù)位功能。本設(shè)計(jì)可應(yīng)用于各種需要目標(biāo)追蹤的場景,具有較高的實(shí)用性和可擴(kuò)展性。
1.基本要求
(1)復(fù)位功能。紅色光斑能從屏幕任意位置回到原點(diǎn)。
(2)運(yùn)動(dòng)目標(biāo)控制系統(tǒng)。紅色光斑能在30秒內(nèi)沿屏幕四周邊線順時(shí)針移動(dòng)一周,移動(dòng)時(shí)光斑中心距邊線距離≤2cm。
(3)用約1.8cm寬的黑色電工膠帶沿A4紙四邊貼一個(gè)長方形,構(gòu)成A4靶紙。將此 A4 靶紙貼在屏幕自定的位置。啟動(dòng)運(yùn)動(dòng)目標(biāo)控制系統(tǒng),紅色光斑能在30 秒內(nèi)沿膠帶順時(shí)針移動(dòng)一周。
(4)用約1.8cm寬的黑色電工膠帶沿A4紙四邊貼一個(gè)長方形,構(gòu)成A4靶紙。將此A4靶紙貼在屏幕自定的位置。啟動(dòng)運(yùn)動(dòng)目標(biāo)控制系統(tǒng),紅色光斑能在30秒內(nèi)沿膠帶順時(shí)針移動(dòng)一周。
2.發(fā)揮要求
(1)運(yùn)動(dòng)目標(biāo)位置復(fù)位,一鍵啟動(dòng)自動(dòng)追蹤系統(tǒng),控制綠色光斑能在2秒 內(nèi)追蹤紅色光斑,追蹤成功發(fā)出連續(xù)聲光提示。此時(shí)兩個(gè)光斑中心距離應(yīng)≤3cm。
(2)運(yùn)動(dòng)目標(biāo)重復(fù)基本要求(3)、(4)的動(dòng)作。綠色激光筆發(fā)射端可以放置在其放置線段的任意位置,同時(shí)啟動(dòng)運(yùn)動(dòng)目標(biāo)及自動(dòng)追蹤系統(tǒng),綠色光斑能自動(dòng)追蹤紅色光斑。啟動(dòng)系統(tǒng)2秒后,應(yīng)追蹤成功,發(fā)出連續(xù)聲光提示。
3. 程序設(shè)計(jì)
3.1.stm32控制舵機(jī)運(yùn)動(dòng)
Stm32使用pid算法同時(shí)控制x軸與y軸的移動(dòng),將x軸與y軸的各個(gè)參數(shù)進(jìn)行pid運(yùn)算,再將角度返回給單片機(jī),從而可以進(jìn)行控制。舵機(jī)采用pwm進(jìn)行控制,由于考慮其穩(wěn)定性,需要將舵機(jī)旋轉(zhuǎn)速度變慢,也就是說要將pwm波分成很多小段再每一段延遲一定秒數(shù)輸出,故程序?qū)⒁M(jìn)行旋轉(zhuǎn)的a角度與b角度進(jìn)行了除以n(n很大),在一個(gè)執(zhí)行n次的循環(huán)中每次將舵機(jī)x軸旋轉(zhuǎn)a/n度,y軸旋轉(zhuǎn)b/n度,實(shí)現(xiàn)舵機(jī)的平穩(wěn)運(yùn)行。
3.2.k210識(shí)別矩形并返回四角的像素坐標(biāo)
調(diào)用庫函數(shù)識(shí)別矩形,并返回四個(gè)角的像素坐標(biāo)。設(shè)計(jì)實(shí)驗(yàn)計(jì)算得到k210鏡頭的焦距后,計(jì)算所識(shí)別到的每兩個(gè)像素坐標(biāo)之間的角度,通過相似三角形得到實(shí)際坐標(biāo)的位置,再控制舵機(jī)的運(yùn)動(dòng)。
3.3.openmv識(shí)別紅色激光并跟蹤
通過不斷調(diào)整顏色閾值,再對(duì)攝像頭進(jìn)行曝光調(diào)節(jié),關(guān)閉圖像處理,再使用二值化的方法對(duì)圖像進(jìn)行處理,使得攝像頭能夠穩(wěn)定的識(shí)別到紅色激光點(diǎn)。識(shí)別到激光點(diǎn)以后,以攝像機(jī)中心為原點(diǎn),計(jì)算識(shí)別到的激光點(diǎn)的坐標(biāo)與原點(diǎn)的坐標(biāo)差,再使用openmv控制兩個(gè)舵機(jī)運(yùn)動(dòng),通過每一幀圖像與上一幀圖像的對(duì)比,產(chǎn)生角度差,再使用pid算法控制兩個(gè)舵機(jī)運(yùn)動(dòng)從而實(shí)現(xiàn)跟蹤。
3.4.原理圖

見圖片

圖片1.jpg (152.27 KB, 下載次數(shù): 0)

圖片1.jpg

E題代碼.7z

184.27 KB, 下載次數(shù): 0, 下載積分: 黑幣 -5






歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1