徐豪康,趙越嶺,鄒正杰,梁慧澤
基于STM32的魔方機(jī)器人設(shè)計(jì)
徐豪康,趙越嶺,鄒正杰,梁慧澤
(遼寧工業(yè)大學(xué) 電氣工程學(xué)院,遼寧 錦州 121001)
在充分考慮魔方機(jī)器人功能和性能的基礎(chǔ)上,設(shè)計(jì)了以STM32為核心處理器的魔方機(jī)器人系統(tǒng),其控制系統(tǒng)部分包括STM32最小系統(tǒng)、圖像采集電路、步進(jìn)電機(jī)驅(qū)動(dòng)電路、人機(jī)接口電路等模塊電路組成。魔方機(jī)器人控制系統(tǒng)通過OpenMV采集魔方色塊圖像信息,并利用CFOP算法獲得解魔方步驟,進(jìn)而控制步進(jìn)電機(jī)復(fù)原魔方。經(jīng)過測試,設(shè)計(jì)的魔方機(jī)器人具有結(jié)構(gòu)簡單、圖像識(shí)別準(zhǔn)確性高、復(fù)原快速、準(zhǔn)確等優(yōu)點(diǎn)。
步進(jìn)電機(jī);機(jī)器視覺;CFOP算法;魔方機(jī)器人
隨著計(jì)算機(jī)技術(shù)和人工智能等技術(shù)的發(fā)展,魔方與機(jī)器人的結(jié)合,在科普領(lǐng)域取得了突破性的進(jìn)展。還原魔方機(jī)器人是智能化機(jī)器人的一個(gè)全方面體現(xiàn),對其算法和機(jī)構(gòu)的研究也成為機(jī)器人技術(shù)的十分重要的研究內(nèi)容,解魔方機(jī)器人整體的架構(gòu)和多種變型模式也是近幾年來的熱點(diǎn)[1-2]。與此同時(shí),科普產(chǎn)品的開發(fā)也更加重視科學(xué)性、趣味性、可互動(dòng)性。解魔方機(jī)器人融合了機(jī)器視覺、機(jī)器人技術(shù)、圖像處理、魔方算法等多學(xué)科知識(shí),要設(shè)計(jì)一個(gè)能夠穩(wěn)定、快速的解魔方機(jī)器人系統(tǒng)具有極大的難度,也正因?yàn)檫@樣,利用機(jī)器人復(fù)原魔方具有很大的科研意義與創(chuàng)新性。
同時(shí),機(jī)器人技術(shù)在國民經(jīng)濟(jì)與人民生活中的應(yīng)用也得到了極大的提高,應(yīng)用科普領(lǐng)域的機(jī)器人成為科普展品研究的熱點(diǎn),將魔方這種老少皆宜的實(shí)物與機(jī)器人結(jié)合,也必定將在科普領(lǐng)域得到突破性的進(jìn)展。
在充分考慮功能和性能的基礎(chǔ)上,設(shè)計(jì)的魔方機(jī)器人控制系統(tǒng)以STM32為核心處理器,包括STM32最小系統(tǒng)、圖像采集處理模塊、步進(jìn)電機(jī)驅(qū)動(dòng)模塊、人機(jī)接口電路等模塊電路組成,系統(tǒng)的結(jié)構(gòu)框圖如圖1所示。系統(tǒng)通過OpenMV采集魔方色塊圖像信息,并利用CFOP算法獲得解魔方步驟,進(jìn)而控制6個(gè)面的步進(jìn)電機(jī)運(yùn)動(dòng)復(fù)原魔方。
圖1 系統(tǒng)結(jié)構(gòu)框圖
本設(shè)計(jì)的STM32最小系統(tǒng)主要由STM32F103C8T6處理器、晶振電路、復(fù)位電路、JLINK仿真接口電路及BOOT模式選擇電路組成。
圖像采集攝像頭是魔方機(jī)器人的“眼睛”,其穩(wěn)定性在整個(gè)系統(tǒng)中起著至關(guān)重要的作用,因此攝像頭的選型就顯得尤為重要。經(jīng)對比可知,OV7725相比于OV7620、OV7670等攝像頭具有像素高、幀率快等優(yōu)點(diǎn),因此本設(shè)計(jì)內(nèi)部集成了OV7725攝像頭OpenMV圖像采集模塊。OpenMV圖像采集模塊支持輸出最大為30萬像素的圖像(640×480分辨率),支持使用VGA時(shí)序輸出圖像數(shù)據(jù),且輸出圖像的數(shù)據(jù)格式支持YUV(422/420)和RGB565格式。OpenMV圖像采集模塊具有體積小、工作電壓低的特點(diǎn),同時(shí)具有對采集到的圖像進(jìn)行補(bǔ)償并支持伽瑪曲線、白平衡、飽和度、色度等基礎(chǔ)處理的功能,大大簡化了核心處理器的處理要求,對提升系統(tǒng)的處理速度有著極大的作用。OpenMV圖像采集模塊的接口電路如圖2所示。
圖2 OpenMV圖像采集模塊接口電路
其中PCLK、HREF及VSYNC分別是像素同步時(shí)鐘、行同步信號(hào)以及幀同步信號(hào)。XCLK是用于驅(qū)動(dòng)整個(gè)傳感器芯片的時(shí)鐘信號(hào),是外部輸入到OV7725的信號(hào),而PCLK是OV7725 輸出數(shù)據(jù)時(shí)的同步信號(hào),是OV7725內(nèi)部輸出的信號(hào)。XCLK類似于STM32 芯片的HSE引腳,而PCLK 引腳類似于STM32的I2C外設(shè)的SCL引腳。
采集圖像時(shí),外界圖像透過鏡頭,經(jīng)過感光矩陣,感光矩陣由二極管構(gòu)成,二極管感光產(chǎn)生相對應(yīng)的電流電壓,進(jìn)而感知光的強(qiáng)弱。同時(shí)傳感器通過感光元件上的彩色濾光片來區(qū)分色彩,通過使用RGB 3種濾光片分別覆蓋3個(gè)感光元件,這樣由3個(gè)像點(diǎn)產(chǎn)生1個(gè)彩色像素,3個(gè)像點(diǎn)的數(shù)字信號(hào)就是1個(gè)彩色像素的數(shù)據(jù)。1個(gè)攝像頭上的所有感光元件一起產(chǎn)生的數(shù)字信號(hào)構(gòu)成了一幅圖像的數(shù)據(jù)。通過將選定的15個(gè)色塊的圖像信息與預(yù)先設(shè)定好的各個(gè)顏色閾值進(jìn)行對比,識(shí)別15個(gè)魔方塊的顏色,經(jīng)過魔方的一系列旋轉(zhuǎn)與圖像采集,最終實(shí)現(xiàn)魔方6個(gè)面的54塊顏色識(shí)別。
設(shè)計(jì)中選用雷賽公司推出的數(shù)字式兩相步進(jìn)電機(jī)驅(qū)動(dòng)器DM542,該模塊采用DSP技術(shù),用戶可以設(shè)置400~51200范圍內(nèi)的細(xì)分的以及額定電流內(nèi)的任意電流值,能夠滿足本設(shè)計(jì)的應(yīng)用需要。DM542驅(qū)動(dòng)器采用差分式接口電路并內(nèi)置高速光電耦合器,允許接收長線驅(qū)動(dòng)器,具有很強(qiáng)的抗干擾能力。使用中通過STM32輸出高低電平至ENA、DIR、PUL接線端子控制電機(jī)啟停、轉(zhuǎn)動(dòng)方向以及電機(jī)轉(zhuǎn)動(dòng)。
系統(tǒng)上電后,首先開始各部分的初始化,包括OpenMV初始化、電機(jī)驅(qū)動(dòng)初始化等。初始化結(jié)束后,由于設(shè)計(jì)選用的步進(jìn)電機(jī)不帶編碼器,沒有真正的位置反饋,因此首先要判斷當(dāng)前電機(jī)的位置是否為正90°,若不是,則需要人工手動(dòng)校正。系統(tǒng)主程序流程如圖3所示。
設(shè)計(jì)的魔方機(jī)器人實(shí)物如圖4所示,主要包括機(jī)械結(jié)構(gòu)部分、控制器部分、OpenMV圖像采集模塊、步進(jìn)電機(jī)及驅(qū)動(dòng)器、顯示屏等。
圖3 主程序流程
圖4 魔方機(jī)器人實(shí)物圖
將OpenMV固定好以后,采集魔方圖像,為方便調(diào)試將圖像發(fā)送至OpenMV上位機(jī)調(diào)試界面。通過分別調(diào)節(jié)如圖5所示的LAB色彩空間的各個(gè)參數(shù)的值,來確定各個(gè)顏色最適當(dāng)?shù)拈撝礫4],最終確定的各個(gè)顏色閾值如表1所示。
表1 顏色閾值調(diào)試參數(shù)整定表
上位機(jī)LAB色彩空間閾值調(diào)試界面如圖5所示。
圖5 閾值調(diào)試圖
將選取的15個(gè)顏色識(shí)別區(qū)的LAB色彩空間的參數(shù)與之前設(shè)定好的閾值進(jìn)行比較,確定各個(gè)色塊的顏色。識(shí)別后在顯示屏上的結(jié)果如圖6所示。
圖6 顏色識(shí)別圖
設(shè)計(jì)了基于STM32的魔方機(jī)器人,對OpenMV采集的圖像信息進(jìn)行處理,通過設(shè)定色塊顏色閾值識(shí)別各個(gè)色塊,經(jīng)CFOP算法計(jì)算電機(jī)運(yùn)動(dòng)步驟,還原魔方。測試結(jié)果表明,魔方色塊圖像識(shí)別準(zhǔn)確性高、復(fù)原快等優(yōu)點(diǎn),為魔方機(jī)器人的設(shè)計(jì)提供了一種可行的方案。
[1] 張錫英, 車鑫. 圖像顏色特征提取及其分類研究[J]. 安徽農(nóng)業(yè)科學(xué), 2014, 42(7): 2196-2198.
[2] 高達(dá). 基于STM32雙臂魔方機(jī)器人的設(shè)計(jì)[J]. 電子產(chǎn)品世界, 2018(11): 51-53.
[3] 張艷珠, 古長軍, 王凡迪, 等. 魔方機(jī)器人控制系統(tǒng)設(shè)計(jì)[J]. 沈陽理工大學(xué)學(xué)報(bào), 2016, 35(3): 41-46.
[4] 何智勇, 賁可榮. 基于OpenGL的魔方自動(dòng)求解算法與實(shí)現(xiàn)[J]. 哈爾濱工業(yè)大學(xué)學(xué)報(bào), 2004(7): 893-895.
[5] 胡青華. 魔方復(fù)原機(jī)械手的設(shè)計(jì)與制作[J]. 中國科技信息, 2014(8): 221-223.
[6] 黃銘, 陸思良, 孔凡讓. 魔方還原機(jī)器人的視覺子系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J]. 機(jī)械與電子, 2013(5): 60-64.
Design of Rubik’s Cube Robot Based on STM32
XU Hao-kang, ZHAO Yue-ling, ZHOU Zheng-jie, LIANG Hui-ze
(School of Electrical Engineering, Liaoning University of Technology, Jinzhou 121001, China)
On the basis of fully considering the function and performance of Rubik’s Cube Robot, Rubik’s Cube Robot System with STM32 as its core processor is designed. The control system consists of STM32 minimum system, image acquisition circuit, stepper motor drive circuit and man-machine interface circuit. The image information of magic cube color block through OpenMV is collected with magic cube robot control systems. The step of solving magic cube is obtained by CFOP algorithm, and the step motor is controlled to recover magic cube. After testing, the Cube Robot has the advantages of simple structure, high accuracy of image recognition, fast and accurate recovery.
stepper motor; machine vision; CFOP algorithm; Rubik’s Cube Robot
TP242
A
1674-3261(2020)02-0080-04
10.15916/j.issn1674-3261.2020.02.003
2019-06-02
遼寧省科技廳自然基金指導(dǎo)計(jì)劃(2019-ZD-0697);國家級及遼寧省大學(xué)生創(chuàng)新創(chuàng)業(yè)計(jì)劃(201810154007);遼寧省大學(xué)生創(chuàng)新創(chuàng)業(yè)計(jì)劃(201910154099);遼寧工業(yè)大學(xué)大學(xué)生創(chuàng)新創(chuàng)業(yè)計(jì)劃(201801060)
徐豪康(1998-),男,河南鶴壁人,本科生。
趙越嶺(1972-),男,遼寧凌海人,副教授,博士。
責(zé)任編校:孫 林