速解魔方機器人(上)
1 設(shè)計概述
1.1 設(shè)計意圖
機器人的出現(xiàn)和發(fā)展是計算機技術(shù)進(jìn)步和自動化研究 不斷深入的結(jié)果。工業(yè)機器人的產(chǎn)生提高了人類社會生產(chǎn) 力,極大地改變了工業(yè)生產(chǎn)和人類生活樣貌。但現(xiàn)有機器人 一般系統(tǒng)較為復(fù)雜,并且成本昂貴。
本項目中我們設(shè)計了一套基于Linux 操作系統(tǒng)的FPGA- HPS數(shù)據(jù)交互聯(lián)合求解魔方的智能魔方破解平臺。項目在 FPG A部分利用CCD攝像頭識別獲取魔方54個小色塊的顏 色,通過lw_AXI_FPGA-to-HPS Bridge送到HPS部分,HPS收 到所有54個色塊的顏色之后,應(yīng)用我們獨立設(shè)計的魔方求 解算法進(jìn)行求解得到還原該魔方的步驟,再通過lw_HPS-to- FPGA Bridge送到FPGA部分,進(jìn)而控制舵機來操縱破解平臺 上機械手臂旋轉(zhuǎn)伸縮,還原魔方。本系統(tǒng)的主要研究成果包 括:基于Verilog語言的顏色識別算法、多功能VGA顯示、獨 立自主設(shè)計的魔方求解算法、穩(wěn)定靈活的機械結(jié)構(gòu)。
1.2 適用范圍
目前,市場上的機器人都是按照固定的步驟完成相應(yīng) 的功能,當(dāng)外界環(huán)境出現(xiàn)變動時,機器人就無法完成該功能 了,針對該問題,本作品運用FPGA視頻處理技術(shù),對周圍 環(huán)境進(jìn)行實時監(jiān)控,然后再進(jìn)行相應(yīng)的操作,大大提高了工
圖1 系統(tǒng)實物圖
圖2 圖像采集和識別功能
圖3 數(shù)碼管顯示效果圖
作效率,凸顯了機器人像人一樣的智慧、靈動。 在實時監(jiān)控的同時,我們的作品也具有很高的觀賞性。魔方本身就具 有很強的吸引力,再加上這個具有人功能的機械外觀,一定 顯得別具一格。
1.3 本設(shè)計采用SoC器件的優(yōu)勢
(1)在DE1-SoC開發(fā)板上搭載帶有圖形界面的Ubuntu系 統(tǒng),能有效地提高CPU的利用率,簡化復(fù)雜系統(tǒng)的開發(fā)難 度。
(2)DE1-SoC嵌入了ARM-9雙核處理器,運算速率高,
適合做算法,能對我們的求解魔方算法進(jìn)行快速處理。
(3)在ARM上可以開發(fā)應(yīng)用程序來作為控制臺, Linux平 臺有多種圖形庫可供選擇,讓我們的應(yīng)用程序更加美觀,具 有更高的觀賞性。
2 功能描述
本設(shè)計采用DE1- SoC作為開發(fā)平臺,成功實現(xiàn)了基于 Linux操作系統(tǒng)的FPGA-HPS數(shù)據(jù)交互聯(lián)合求解魔方的智能魔 方破解系統(tǒng)。系統(tǒng)實物圖如圖1所示。
系統(tǒng)圍繞“顏色識別,魔方求解”實現(xiàn)以下功能
2.1 圖像采集和顏色識別(Verilog語言編寫)
在識別模式下,顯示屏將在固定區(qū)域出現(xiàn)9個方框,用 于指定圖像采集區(qū)域。通過調(diào)整魔方 的位置,使魔方某面的9個色塊均位于 方框內(nèi)。顏色識別算法對方框內(nèi)的圖 像信息進(jìn)行實時識別。識別結(jié)果會在 液晶屏幕右邊的魔方平面展開圖中呈 現(xiàn)。魔方展開圖中的9個色塊與實際的
圖4 多功能VGA顯示 效果圖
9個色塊一致, 即實現(xiàn)了圖像采集和顏色識別功能,效果如圖2。
2.2 破解還原魔方功能
將 C C D 攝 像 頭 識 別 到 的 顏 色 數(shù) 據(jù),通過DE1- SoC上的LW FPGA-to- HPS Bridge將數(shù)據(jù)傳送給HPS,然后 通過寫入在HPS里面的魔方破解算法 得到破解該魔方的算法, 再通過LW HPS-to-FPGA Bridge將破解還原魔方 步驟輸出,控制PPGA的GPIO,達(dá)到 破解魔方的目的。
2.3 數(shù)碼管顯示
系統(tǒng)得到破解魔方的算法后,將破解該魔方所需的總
步數(shù)通過數(shù)碼管顯示出來,破譯機器人每按算法操作一步, 數(shù)碼管顯示的數(shù)值就會減1,直到數(shù)碼管顯示為0時,魔方算 法執(zhí)行完畢。效果如圖3。
2.4 多功能VGA顯示
在液晶顯示屏的右邊區(qū)域繪制出魔方6個面54個格子的 展開圖,CCD攝像頭識別好實物魔方的顏色后就會將顏色 繪制在展開圖的各個方框中,呈現(xiàn)出混亂魔方的六個面的展 開圖。具體實現(xiàn)效果如圖4。
圖5 機器人硬件搭建
圖6 DE1-SoC開發(fā)板資源使用情況
圖7 系統(tǒng)總體設(shè)計框圖
2.5 機器人硬件的搭建
利用兩個舵機來完成伸縮和旋轉(zhuǎn),然后利用四個機械 手臂來完成這個機器人系統(tǒng)搭建,通過結(jié)構(gòu)來固定這四個機 械手臂,實現(xiàn)機器人穩(wěn)定靈活地破解魔方,具體實現(xiàn)效果如 圖5。
3 性能參數(shù)
3.1 各模塊性能參數(shù)
(1)DE1-SoC主控板 直流電壓:9V 系統(tǒng)頻率:CPU工作頻率:100MHz (2)CCD攝像頭 輸入電壓:12V TV制式:PAL 工作溫度 : -20℃~70℃(3)MG996R舵機 尺寸:40.8*20*38mm 重量:55g 速度:4.8V@0.20sec/60°6.0V@0.19sec/60° 扭矩:4.8V@13kg-cm 6.0V@15kg-cm電壓:4.8V-7.2V
( 4 ) D C -D C 電源 輸入電壓: 9 ~ 1 6 V 輸出電壓:6.0~7.4V 體積:40mm*30mm*20mm (5)視頻接口解碼芯片:ADV7123 工作頻率:25MHz 顯示分辨 率:640*480
(6)魔方
魔方種類:三階 魔方尺寸:52mm
魔方重量:0.1g
(7)SD卡
型號:Sandisk/閃迪 容量:8G
讀寫速度: UHS-1 文件系統(tǒng):FAT163.2 開發(fā)板使用情況DE1-SoC開發(fā)板資源使用情況(如圖6所示)。4 設(shè)計結(jié)構(gòu)
4.1 系統(tǒng)功能設(shè)計
系統(tǒng)總體設(shè)計框圖如圖7所示。
4.1.1 HPS部分
在H P S 部分, 分為四個步驟: 控制F P G A 完成顏色識 別->獲取魔方顏色->魔方求解->發(fā)送求解步驟到FPGA舵機控制模塊。
第一步,通過lw_AXI_FPGA- to-HPS Bridge控制FPGA部分的顏色 識別模塊和舵機轉(zhuǎn)動模塊,按一定 的次序轉(zhuǎn)動魔方,對其六個面依次 進(jìn)行指定區(qū)域的RGB獲取。
第二步,六個面所有小色塊的RGB獲取完成后,HPS對每個小色 塊的顏色進(jìn)行判斷,得到準(zhǔn)確的顏 色。第三步,根據(jù)魔方六個面的顏色,利用我們獨立自主 設(shè)計的魔方求解算法得出還原魔方的步驟。
第四步,得到步驟之后,通過lw_AXI_HPS-to- FPGA Bridge發(fā)送給舵機轉(zhuǎn)動模塊。
評論