本發(fā)明涉及是一種基于超聲測(cè)距控制的玩具機(jī)器人及其控制方法。
背景技術(shù):
現(xiàn)有玩具機(jī)器人配備的遙控器都是通過(guò)手柄按鍵來(lái)實(shí)現(xiàn)的,并大多還使用有線連接的方式,接線冗長(zhǎng)而不便,還有很多玩具機(jī)器人的移動(dòng)和動(dòng)作是都是預(yù)先設(shè)置好的,動(dòng)作就只有幾個(gè),對(duì)于玩家來(lái)說(shuō),新鮮度、吸引力以及持續(xù)力都不夠,很容易在玩耍幾次后就被雪藏了,降低了使用率和觀賞性,而且玩家與玩具機(jī)器人之間操作比較死板,缺乏互動(dòng)性,操控性差,大大降低了玩具機(jī)器人的可玩性。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種操控性好、互動(dòng)性高、觀賞使用率高的基于超聲測(cè)距控制的玩具機(jī)器人及其相應(yīng)的控制方法。
一種基于超聲測(cè)距控制的玩具機(jī)器人,包括玩具機(jī)器人主體和輸出控制信號(hào)給其的超聲遙控器,玩具機(jī)器人主體與超聲遙控器之間無(wú)線通訊連接;玩具機(jī)器人主體上設(shè)置有前輪、左驅(qū)動(dòng)輪和右驅(qū)動(dòng)輪、控制相應(yīng)驅(qū)動(dòng)輪動(dòng)作和速度的驅(qū)動(dòng)電機(jī)、控制驅(qū)動(dòng)電機(jī)運(yùn)轉(zhuǎn)的主控板、與主控板連接的無(wú)線接收模塊;超聲遙控器包括遙控器主板,遙控器主板上連接有與玩具機(jī)器人主體通訊的無(wú)線發(fā)射模塊、超聲測(cè)距模塊、電源,超聲測(cè)距模塊測(cè)量?jī)墒峙c超聲遙控器之間的距離,遙控器主板輸出根據(jù)距離信息輸出相應(yīng)的動(dòng)作和速度指令給主控板或直接輸出距離信息給主控板,主控板將接收到的動(dòng)作和速度指令或根據(jù)接收到的距離信息輸出相應(yīng)的動(dòng)作和速度指令給驅(qū)動(dòng)電機(jī),驅(qū)動(dòng)輪執(zhí)行驅(qū)動(dòng)電機(jī)輸出的相應(yīng)動(dòng)作和速度指令。本發(fā)明的玩具機(jī)器人的動(dòng)作和指令是根據(jù)手與超聲遙控器之間的距離變化來(lái)控制的,可以隨心所欲變換玩具機(jī)器人的移動(dòng)和速度,增加了互動(dòng)性和操控性,提高可觀賞性。
進(jìn)一步,前輪是一萬(wàn)向輪,安裝在玩具機(jī)器人主體的中間,方便玩具機(jī)器人變換方向。
進(jìn)一步,超聲遙控器還設(shè)有對(duì)應(yīng)玩具機(jī)器人各行駛方向的指示燈,指示燈與遙控器主板連接。玩具機(jī)器人分別有前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)4個(gè)行駛方向,超聲遙控器上相應(yīng)的設(shè)有分別對(duì)應(yīng)四個(gè)方向的指示燈。
進(jìn)一步,超聲遙控器設(shè)有兩個(gè)或多個(gè)超聲測(cè)距模塊,超聲測(cè)距模塊分布在兩側(cè),超聲探測(cè)頭朝上并露出殼體外。兩側(cè)的超聲測(cè)距模塊分別用于測(cè)量探測(cè)到手到超聲探測(cè)頭的距離,輸出相應(yīng)的轉(zhuǎn)向和速度給相應(yīng)的驅(qū)動(dòng)輪,比如左手對(duì)應(yīng)左驅(qū)動(dòng)輪,右手對(duì)應(yīng)右驅(qū)動(dòng)輪。
進(jìn)一步,玩具機(jī)器人主體的底部安裝有兩個(gè)或多個(gè)驅(qū)動(dòng)電機(jī),分布在其兩側(cè);每個(gè)驅(qū)動(dòng)輪對(duì)應(yīng)一個(gè)驅(qū)動(dòng)電機(jī)。
進(jìn)一步,玩具機(jī)器人主體的主控板與遙控器主板均采用stm32為主控芯片;無(wú)線接收模塊和無(wú)線發(fā)射模塊均采用NRF24l01為無(wú)線通信芯片;驅(qū)動(dòng)電機(jī)采用L298為電機(jī)驅(qū)動(dòng)芯片。
上述基于超聲測(cè)距控制的玩具機(jī)器人的控制方法,其具體步驟如下:
(1)超聲遙控器的超聲測(cè)距模塊分別測(cè)量?jī)墒蛛x超聲遙控器的距離D1、D2;
(2)遙控器主板或玩具機(jī)器人主體的主控板判斷距離D1、D2是否有效,如有效則執(zhí)行步驟(3),如無(wú)效則返回至步驟(1);
(3)遙控器主板或玩具機(jī)器人主體將距離D1、D2與預(yù)設(shè)的平衡距離Ds比較,若D1、D2是大于Ds,則相應(yīng)的驅(qū)動(dòng)輪是正轉(zhuǎn)前進(jìn),若D1、D2是等于Ds,則相應(yīng)的驅(qū)動(dòng)輪是停轉(zhuǎn),若D1、D2是小于Ds,則相應(yīng)的驅(qū)動(dòng)輪是反轉(zhuǎn)后退,同時(shí)根據(jù)D1、D2偏離Ds的大小計(jì)算得出相應(yīng)驅(qū)動(dòng)輪的速度,并根據(jù)速度的不同來(lái)實(shí)現(xiàn)機(jī)器人主體的轉(zhuǎn)向;
(4)玩具機(jī)器人主體將遙控器主板輸出的動(dòng)作和速度指令或自己計(jì)算得出的動(dòng)作和速度指令輸出給驅(qū)動(dòng)電機(jī),驅(qū)動(dòng)輪執(zhí)行驅(qū)動(dòng)電機(jī)輸出的相應(yīng)動(dòng)作和速度指令,實(shí)現(xiàn)玩具機(jī)器人的前進(jìn)后退轉(zhuǎn)向。
進(jìn)一步,步驟(3)前對(duì)有效的距離D1、D2進(jìn)行濾波處理。
進(jìn)一步,步驟(1)中的超聲測(cè)距模塊每次測(cè)量結(jié)束后停頓固定時(shí)間t再進(jìn)行下一次測(cè)量,固定時(shí)間t的范圍在2-12ms之間,優(yōu)選8ms。
本發(fā)明的優(yōu)點(diǎn)在于:玩家可以改變兩只手到超聲遙控器的距離來(lái)控制玩具機(jī)器人主體的前進(jìn)后退轉(zhuǎn)向等動(dòng)作,方式新穎獨(dú)特,大大增加了玩家的互動(dòng)性,提高了玩具的趣味性,并且操控性好、可觀賞性強(qiáng)。
附圖說(shuō)明
圖1是本發(fā)明的超聲遙控器內(nèi)部結(jié)構(gòu)示意圖。
圖2是本發(fā)明的超聲遙控器的正面結(jié)構(gòu)示意圖。
圖3是本發(fā)明玩具機(jī)器人的結(jié)構(gòu)示意圖。
圖4是本發(fā)明的電路結(jié)構(gòu)示意圖。
圖5是本發(fā)明的算法流程圖。
具體實(shí)施方式
下面結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方法做進(jìn)一步的詳細(xì)說(shuō)明。
實(shí)施例一
參照?qǐng)D1-4,一種基于超聲測(cè)距控制的玩具機(jī)器人,包括玩具機(jī)器人主體和輸出控制信號(hào)給其的超聲遙控器,玩具機(jī)器人主體與超聲遙控器之間無(wú)線通訊連接;玩具機(jī)器人主體上設(shè)置有前輪10、左驅(qū)動(dòng)輪11和右驅(qū)動(dòng)輪12、控制相應(yīng)驅(qū)動(dòng)輪動(dòng)作和速度的驅(qū)動(dòng)電機(jī)7、控制驅(qū)動(dòng)電機(jī)7運(yùn)轉(zhuǎn)的主控板6、與主控板6連接的無(wú)線接收模塊9;超聲遙控器包括殼體4,殼體4內(nèi)設(shè)置有遙控器主板2、玩具機(jī)器人主體通訊的無(wú)線發(fā)射模塊8、兩個(gè)或多個(gè)超聲測(cè)距模塊1、電源,遙控器主板2分別與無(wú)線發(fā)射模塊8、超聲測(cè)距模塊1、電源連接,超聲測(cè)距模塊1分布在兩側(cè),超聲探測(cè)頭朝上并露出殼體4外,兩側(cè)的超聲測(cè)距模塊1分別用于測(cè)量探測(cè)到手到超聲探測(cè)頭的距離,輸出相應(yīng)的轉(zhuǎn)向和速度給相應(yīng)的驅(qū)動(dòng)輪,比如左手對(duì)應(yīng)左驅(qū)動(dòng)輪,右手對(duì)應(yīng)右驅(qū)動(dòng)輪,遙控器主板2輸出根據(jù)距離信息輸出相應(yīng)的動(dòng)作和速度指令給主控板或直接輸出距離信息給主控板6,主控板6將接收到的動(dòng)作和速度指令或根據(jù)接收到的距離信息輸出相應(yīng)的動(dòng)作和速度指令給驅(qū)動(dòng)電機(jī)7,驅(qū)動(dòng)輪執(zhí)行驅(qū)動(dòng)電機(jī)7輸出的相應(yīng)動(dòng)作和速度指令。本發(fā)明的玩具機(jī)器人的動(dòng)作和指令是根據(jù)手與超聲遙控器之間的距離變化來(lái)控制的,可以隨心所欲變換玩具機(jī)器人的移動(dòng)和速度,增加了互動(dòng)性和操控性,提高了可觀賞性。
本實(shí)施例前輪10是一萬(wàn)向輪,安裝在玩具機(jī)器人主體的中間,方便玩具機(jī)器人變換方向。
本實(shí)施例超聲遙控器還設(shè)有對(duì)應(yīng)玩具機(jī)器人各行駛方向的指示燈5,指示燈5與遙控器主板2連接。玩具機(jī)器人分別有前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)4個(gè)行駛方向,超聲遙控器上相應(yīng)的設(shè)有分別對(duì)應(yīng)四個(gè)方向的指示燈5。
本實(shí)施例玩具機(jī)器人主體的底部安裝有兩個(gè)或多個(gè)驅(qū)動(dòng)電機(jī)7,分布在其兩側(cè);每個(gè)驅(qū)動(dòng)輪對(duì)應(yīng)一個(gè)驅(qū)動(dòng)電機(jī)7。
本實(shí)施例玩具機(jī)器人主體的主控板6與遙控器主板2均采用stm32為主控芯片;無(wú)線接收模塊9和無(wú)線發(fā)射模塊8均采用NRF24l01為無(wú)線通信芯片;驅(qū)動(dòng)電機(jī)7采用L298為電機(jī)驅(qū)動(dòng)芯片。
本發(fā)明使用時(shí)超聲遙控器由玩家操作,玩具機(jī)器人主體置于地面上用于被操作,先通過(guò)超聲測(cè)距模塊1測(cè)量得到玩家兩只手分別與超聲遙控器的距離(超聲遙控器不是用手拿著),遙控器主板2通過(guò)無(wú)線模塊將測(cè)距結(jié)果或直接輸出控制指令發(fā)送給玩具機(jī)器人主體,測(cè)得的距離信息通過(guò)一定的算法實(shí)現(xiàn)對(duì)玩具機(jī)器人的兩個(gè)驅(qū)動(dòng)輪的運(yùn)動(dòng)速度和運(yùn)動(dòng)方向的控制,最終實(shí)現(xiàn)玩具機(jī)器人的動(dòng)作,并將方向控制信息傳遞到指示燈5,指示燈5相應(yīng)方向亮起。
實(shí)施例二
參照?qǐng)D1-4,一種基于超聲測(cè)距控制的玩具機(jī)器人,包括玩具機(jī)器人主體和輸出控制信號(hào)給其的超聲遙控器,玩具機(jī)器人主體與超聲遙控器之間無(wú)線通訊連接;玩具機(jī)器人主體上設(shè)置有前輪10、左驅(qū)動(dòng)輪11和右驅(qū)動(dòng)輪12、控制相應(yīng)驅(qū)動(dòng)輪動(dòng)作和速度的驅(qū)動(dòng)電機(jī)7、控制驅(qū)動(dòng)電機(jī)7運(yùn)轉(zhuǎn)的主控板6、與主控板6連接的無(wú)線接收模塊9;超聲遙控器包括殼體4,殼體4內(nèi)設(shè)置有遙控器主板2、玩具機(jī)器人主體通訊的無(wú)線發(fā)射模塊8、兩個(gè)或多個(gè)超聲測(cè)距模塊1、電源,遙控器主板2分別與無(wú)線發(fā)射模塊8、超聲測(cè)距模塊1、電源連接,超聲測(cè)距模塊1分布在兩側(cè),超聲探測(cè)頭朝上并露出殼體4外,兩側(cè)的超聲測(cè)距模塊1分別用于測(cè)量探測(cè)到手到超聲探測(cè)頭的距離,輸出相應(yīng)的轉(zhuǎn)向和速度給相應(yīng)的驅(qū)動(dòng)輪,比如左手對(duì)應(yīng)左驅(qū)動(dòng)輪,右手對(duì)應(yīng)右驅(qū)動(dòng)輪,遙控器主板2輸出根據(jù)距離信息輸出相應(yīng)的動(dòng)作和速度指令給主控板或直接輸出距離信息給主控板6,主控板6將接收到的動(dòng)作和速度指令或根據(jù)接收到的距離信息輸出相應(yīng)的動(dòng)作和速度指令給驅(qū)動(dòng)電機(jī)7,驅(qū)動(dòng)輪執(zhí)行驅(qū)動(dòng)電機(jī)7輸出的相應(yīng)動(dòng)作和速度指令。本發(fā)明的玩具機(jī)器人的動(dòng)作和指令是根據(jù)手與超聲遙控器之間的距離變化來(lái)控制的,可以隨心所欲變換玩具機(jī)器人的移動(dòng)和速度,增加了互動(dòng)性和操控性,提高了可觀賞性。
本實(shí)施例前輪10是一萬(wàn)向輪,安裝在玩具機(jī)器人主體的中間,方便玩具機(jī)器人變換方向。
本實(shí)施例超聲遙控器還設(shè)有對(duì)應(yīng)玩具機(jī)器人各行駛方向的指示燈5,指示燈5與遙控器主板2連接。玩具機(jī)器人分別有前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)4個(gè)行駛方向,超聲遙控器上相應(yīng)的設(shè)有分別對(duì)應(yīng)四個(gè)方向的指示燈5。
本實(shí)施例玩具機(jī)器人主體的底部安裝有兩個(gè)或多個(gè)驅(qū)動(dòng)電機(jī)7,分布在其兩側(cè);每個(gè)驅(qū)動(dòng)輪對(duì)應(yīng)一個(gè)驅(qū)動(dòng)電機(jī)7。
本實(shí)施例玩具機(jī)器人主體的主控板6與遙控器主板2均采用stm32為主控芯片;無(wú)線接收模塊9和無(wú)線發(fā)射模塊8均采用NRF24l01為無(wú)線通信芯片;驅(qū)動(dòng)電機(jī)7采用L298為電機(jī)驅(qū)動(dòng)芯片。
參照?qǐng)D5,上述基于超聲測(cè)距控制的玩具機(jī)器人的控制方法,其具體步驟如下:
(1)超聲遙控器的超聲測(cè)距模塊1分別測(cè)量?jī)墒蛛x超聲遙控器的距離D1、D2;
(2)遙控器主板2或玩具機(jī)器人主體的主控板6判斷距離D1、D2是否有效,如有效則執(zhí)行步驟(3),如無(wú)效則返回至步驟(1);
(3)遙控器主板2或玩具機(jī)器人主體6將距離D1、D2與預(yù)設(shè)的平衡距離Ds比較,若D1、D2是大于Ds,則相應(yīng)的驅(qū)動(dòng)輪是正轉(zhuǎn)前進(jìn),若D1、D2是等于Ds,則相應(yīng)的驅(qū)動(dòng)輪是停轉(zhuǎn),若D1、D2是小于Ds,則相應(yīng)的驅(qū)動(dòng)輪是反轉(zhuǎn)后退,同時(shí)根據(jù)D1、D2偏離Ds的大小計(jì)算得出相應(yīng)驅(qū)動(dòng)輪的速度,并根據(jù)速度的不同來(lái)實(shí)現(xiàn)機(jī)器人主體的轉(zhuǎn)向;
(4)玩具機(jī)器人主體6將遙控器主板2輸出的動(dòng)作和速度指令或自己計(jì)算得出的動(dòng)作和速度指令輸出給驅(qū)動(dòng)電機(jī)7,驅(qū)動(dòng)輪執(zhí)行驅(qū)動(dòng)電機(jī)7輸出的相應(yīng)動(dòng)作和速度指令,實(shí)現(xiàn)玩具機(jī)器人的前進(jìn)后退轉(zhuǎn)向。
本實(shí)施例步驟(3)前對(duì)有效的距離D1、D2進(jìn)行濾波處理。
本實(shí)施例步驟(1)中的超聲測(cè)距模塊1每次測(cè)量結(jié)束后停頓固定時(shí)間t再進(jìn)行下一次測(cè)量,固定時(shí)間t的范圍在2-12ms之間,優(yōu)選8ms。
本發(fā)明將超聲測(cè)距模塊1測(cè)量到的兩個(gè)距離信息,與提前設(shè)定一個(gè)平衡距離比較,若高于平衡距離時(shí)輪子正轉(zhuǎn),低于平衡距離時(shí)輪子反轉(zhuǎn),處于平衡距離時(shí)輪子靜止不動(dòng),離開平衡距離的距離越大玩具機(jī)器人驅(qū)動(dòng)輪的速度越大。通過(guò)兩個(gè)距離信息來(lái)控制玩具機(jī)器人兩個(gè)驅(qū)動(dòng)輪的轉(zhuǎn)動(dòng)速度和方向,若玩家保持兩個(gè)手與超聲遙控器距離相同,且高于平衡距離,則玩具機(jī)器人主體向前直行,超聲遙控器上前方向指示燈相應(yīng)亮起;其他情況依此類推,總而言之,即玩家分別控制兩只手與超聲遙控器之間的距離,通過(guò)這兩個(gè)距離獨(dú)立控制玩具機(jī)器人主體上兩個(gè)驅(qū)動(dòng)輪,從而實(shí)現(xiàn)玩具機(jī)器人的前進(jìn)后退轉(zhuǎn)向等。
本說(shuō)明書實(shí)施例所述的內(nèi)容僅僅是對(duì)發(fā)明構(gòu)思的實(shí)現(xiàn)形式的列舉,本發(fā)明的保護(hù)范圍不應(yīng)當(dāng)被視為僅限于實(shí)施例所陳述的具體形式,本發(fā)明的保護(hù)范圍也及于本領(lǐng)域技術(shù)人員根據(jù)本發(fā)明構(gòu)思所能夠想到的等同技術(shù)手段。