本發(fā)明涉及智能家居控制領(lǐng)域,具體涉及擺動(dòng)式擦窗機(jī)器人玻璃邊緣觸碰檢測(cè)處理方法。
背景技術(shù):
由于智慧生活的快速普及,市場(chǎng)上已經(jīng)有了多種類型的擦窗機(jī)器人并已廣泛應(yīng)用于日常生活之中。擺動(dòng)式擦窗機(jī)器人因其采用負(fù)壓吸附原理,同時(shí)將擦窗轉(zhuǎn)盤當(dāng)做行走機(jī)構(gòu)完成擺動(dòng)式行走動(dòng)作,將吸附、行走以及擦拭動(dòng)作合一,在消除擦痕的同時(shí)能最大限度地改善擦拭效果而在市面上較為常見。但是目前市場(chǎng)上擺動(dòng)式擦窗機(jī)器人仍存在著對(duì)玻璃邊緣位置存在誤判、玻璃擦除率不穩(wěn)定等情況。例如,當(dāng)玻璃表面存在較大臟物時(shí),擦窗機(jī)器人容易將此臟物位置判斷為玻璃邊緣,直接執(zhí)行后續(xù)方向切換流程,從而導(dǎo)致擦除不干凈和擦窗死區(qū)的出現(xiàn)。因此如何準(zhǔn)確判斷出玻璃邊緣并提高擦除率成為一個(gè)有待研究的重點(diǎn)。此外,在準(zhǔn)確判斷出玻璃邊緣后的向下移動(dòng)過程中,擺動(dòng)式擦窗機(jī)器人也存在著執(zhí)行效率有待提高和缺少誤判處理的問題。
目前,針對(duì)擦窗機(jī)器人的研究主要集中在外形結(jié)構(gòu)設(shè)計(jì)、驅(qū)動(dòng)方式設(shè)計(jì)、控制方法等方面,針對(duì)具體的玻璃邊緣檢測(cè)處理方法研究較少。施紅兵、顏昌林提出一種新型的擺動(dòng)式自行走擦窗機(jī)器人及其控制方法(施紅兵.擺動(dòng)式自行走擦窗機(jī)器人及其控制方法:中國,104905728[P].2015-09-16),給出了擺動(dòng)式擦窗機(jī)器人的機(jī)械結(jié)構(gòu)設(shè)計(jì)以及運(yùn)動(dòng)控制方法,詳細(xì)介紹了該種類型擦窗機(jī)器人組成部件以及工作原理,但卻沒有針對(duì)控制方法中的玻璃邊緣檢測(cè)及后續(xù)處理方法進(jìn)行描述分析;北京航空航天大學(xué)機(jī)器人研究所的張厚祥、吳星明、宗光華介紹了一種高層擦窗機(jī)器人系統(tǒng),使用三菱公司FX2N可編程控制器對(duì)X、Y、Z三個(gè)方向上的氣缸進(jìn)行控制,實(shí)現(xiàn)了高層擦窗的基本功能(張厚祥,吳星明.擦窗機(jī)器人控制系統(tǒng)[J].微計(jì)算機(jī)信息,2000(1):30-32.),但是其結(jié)構(gòu)復(fù)雜,成本較高,不適宜于家用擦窗條件;王舒歡、李紅利將語音控制方法加入到擦窗機(jī)器人的控制中,采用了DTW(Dynamic Time Warping,動(dòng)態(tài)時(shí)間規(guī)整)語音識(shí)別技術(shù),將控制任務(wù)進(jìn)行了一定程度上的細(xì)分(王舒歡.一種語音控制擦窗機(jī)器人方法:中國,104865973[P].2015-08-26),但其研究基于擦窗機(jī)器人已經(jīng)能完成基本運(yùn)動(dòng)功能之上進(jìn)行的遙控控制方法的研究,并未涉及擦窗機(jī)器人控制器內(nèi)部程序針對(duì)玻璃邊緣檢測(cè)方面的判斷處理方法。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明要克服現(xiàn)有技術(shù)的上述缺點(diǎn),提供一種擺動(dòng)式擦窗機(jī)器人玻璃邊緣觸碰檢測(cè)處理方法。
本發(fā)明針對(duì)擺動(dòng)式擦窗機(jī)器人具體控制流程中玻璃邊緣檢測(cè)相關(guān)部分,給出使用容錯(cuò)判斷模式準(zhǔn)確判斷玻璃邊緣的方法,并給出交叉移動(dòng)計(jì)數(shù)方法實(shí)現(xiàn)擺動(dòng)式擦窗機(jī)器人向下運(yùn)動(dòng),目的在于增加擺動(dòng)式擦窗機(jī)器人檢測(cè)到玻璃邊緣的準(zhǔn)確性并給出抵達(dá)玻璃邊緣后后續(xù)交叉向下移動(dòng)的一個(gè)高效的控制方法,使得擺動(dòng)式擦窗機(jī)器人在工作中盡可能地減少擦窗死區(qū),提高擦除率。
本發(fā)明為解決上述技術(shù)問題而采用的技術(shù)方案是:在玻璃邊緣檢測(cè)過程中加入容錯(cuò)判斷模式,其具體執(zhí)行流程如圖1所示;在擺動(dòng)式擦窗機(jī)器人擦除作業(yè)過程中允許擦窗機(jī)器人擦窗底盤對(duì)玻璃邊緣位置進(jìn)行一次誤判,當(dāng)擦窗機(jī)器人將某處暫時(shí)判定為玻璃邊緣時(shí),擦窗機(jī)器人通過退回一步再擦除的方式驗(yàn)證第一次判斷結(jié)果。若兩次擦除過程中均發(fā)現(xiàn)此處存在玻璃邊緣,則認(rèn)為第一第一足M1已經(jīng)以較大可能性抵達(dá)玻璃邊緣,此后,通過控制擦窗機(jī)器人的另一個(gè)擦窗底盤(第一第一足M2)向行進(jìn)方向進(jìn)行相同于第一第一足M1的運(yùn)動(dòng),判定第一第一足M2是否抵達(dá)玻璃邊緣,當(dāng)且僅當(dāng)?shù)谝坏谝蛔鉓1和第一第一足M2同時(shí)判定為抵達(dá)玻璃邊緣,才判定此處為玻璃邊緣位置并置相應(yīng)標(biāo)志位。當(dāng)?shù)诌_(dá)玻璃邊緣后,根據(jù)設(shè)定條件執(zhí)行交叉移動(dòng)計(jì)數(shù)方法,在執(zhí)行該方法過程中,第一第一足M1和第一第一足M2遵循“先退先進(jìn),后退后進(jìn)”的原則,即先遠(yuǎn)離玻璃邊緣邁出一步的足,在另一個(gè)足接著遠(yuǎn)離玻璃邊緣后,率先向玻璃邊緣邁步,其執(zhí)行示意圖如圖2所示,最后,根據(jù)交叉移動(dòng)計(jì)數(shù)方法執(zhí)行次數(shù),在有效減少玻璃邊緣位置誤判的情況下,實(shí)現(xiàn)擺動(dòng)式擦窗機(jī)器人的向下運(yùn)動(dòng),具體步驟如下:
步驟1:控制第一第一足M1向行進(jìn)方向運(yùn)行,并實(shí)時(shí)檢測(cè)其功率反饋情況,如果在擦窗機(jī)器人機(jī)身傾斜角度限定范圍(機(jī)身角度限定范圍)內(nèi)檢測(cè)到觸碰玻璃邊緣,則控制第一第一足M1后退一定角度,此后第一第一足M1繼續(xù)向前運(yùn)動(dòng)并檢測(cè)功率反饋大小,如果在機(jī)身角度限定范圍內(nèi)并未檢測(cè)到觸碰玻璃邊緣,則說明第一次判定為誤判,擦窗機(jī)器人不執(zhí)行后續(xù)流程,跳出容錯(cuò)模式,直接進(jìn)入正常行走模式;相反,如果第二次第一第一足M1同樣檢測(cè)到觸碰玻璃邊緣,則說明第一第一足M1以較大可能性抵達(dá)玻璃邊緣,置第一第一足M1觸碰玻璃邊緣標(biāo)志位為1,后續(xù)執(zhí)行步驟2。
步驟2:控制第一第一足M2向行進(jìn)方向運(yùn)動(dòng),并實(shí)時(shí)檢測(cè)其功率反饋情況,如果在機(jī)身角度限定范圍內(nèi)檢測(cè)到觸碰玻璃邊緣,則控制第一第一足M2后退一定角度,此后第一第一足M2繼續(xù)向前運(yùn)動(dòng)并檢測(cè)功率反饋大小,如果在機(jī)身角度限定范圍內(nèi)并未檢測(cè)到觸碰玻璃邊緣,則說明第一第一足M2第一次判定為誤判,步驟1中第一第一足M1玻璃邊緣的檢測(cè)也為誤判,擦窗機(jī)器人不執(zhí)行后續(xù)流程,跳出容錯(cuò)模式,直接進(jìn)入正常行走模式;相反,如果第二次第一第一足M2同樣檢測(cè)到觸碰玻璃邊緣,則說明第一第一足M2抵達(dá)玻璃邊緣,置第一第一足M2觸碰玻璃邊緣標(biāo)志位為1。
步驟3:置擦窗機(jī)器人準(zhǔn)確抵達(dá)玻璃邊緣標(biāo)志位為1,同時(shí),為了減少其它標(biāo)志位對(duì)后續(xù)程序執(zhí)行邏輯的影響,清除第一第一足M1、第一第一足M2觸碰玻璃邊緣標(biāo)志位。
步驟4:執(zhí)行交叉移動(dòng)計(jì)數(shù)方法,首先判斷擺動(dòng)式擦窗機(jī)器人觸碰玻璃邊緣次數(shù),第一次觸碰玻璃邊緣時(shí),直接改變行進(jìn)方向,不執(zhí)行后續(xù)步驟,執(zhí)行正常行走模式;當(dāng)擦窗機(jī)器人第二次及以后觸碰玻璃邊緣時(shí),交叉移動(dòng)計(jì)數(shù)方法執(zhí)行兩次以實(shí)現(xiàn)一定距離的向下移動(dòng),擦窗機(jī)器人繼續(xù)執(zhí)行步驟5。
步驟5:控制擦窗機(jī)器人機(jī)身上方一足后退一定角度,遠(yuǎn)離玻璃邊緣,此后控制第一第一足M2后退,遠(yuǎn)離玻璃邊緣,直至擦窗機(jī)器人機(jī)身豎直,第一第一足M2停止后退。
步驟6:步驟5中先遠(yuǎn)離玻璃邊緣的第一第一足M1繼續(xù)向行進(jìn)方向運(yùn)動(dòng)并進(jìn)行功率反饋檢測(cè),在機(jī)身限定角度范圍內(nèi),如果第一第一足M1并未檢測(cè)到觸碰玻璃邊緣,則擦窗機(jī)器人維持行進(jìn)方向,繼續(xù)向前正常行走并時(shí)刻檢測(cè)觸碰玻璃邊緣情況,不執(zhí)行后續(xù)步驟;否則,如果第一第一足M1在第一次向玻璃邊緣靠近過程中,檢測(cè)到觸碰玻璃邊緣,則說明第一第一足M1在交叉移動(dòng)計(jì)數(shù)方法下已抵達(dá)玻璃邊緣,置交叉移動(dòng)計(jì)數(shù)方法下第一第一足M1觸碰玻璃邊緣標(biāo)志位為1,執(zhí)行步驟7。
步驟7:控制第一第一足M2向行進(jìn)方向運(yùn)動(dòng)兵進(jìn)行功率反饋檢測(cè),在機(jī)身限定的角度范圍內(nèi),如果第一第一足M2并未檢測(cè)到觸碰玻璃邊緣,則說明步驟6中第一第一足M1觸碰玻璃邊緣的判斷為誤判,清除交叉移動(dòng)計(jì)數(shù)方法下第一第一足M1觸碰玻璃邊緣標(biāo)志位為0,擦窗機(jī)器人維持行進(jìn)方向,繼續(xù)向前正常行走并時(shí)刻檢測(cè)觸碰玻璃邊緣情況,不執(zhí)行后續(xù)步驟;如果第一第一足M2在第一次向玻璃邊緣靠近過程中,檢測(cè)到觸碰玻璃邊緣,則說明第一第一足M2在交叉移動(dòng)計(jì)數(shù)方法下已抵達(dá)玻璃邊緣,置交叉移動(dòng)計(jì)數(shù)方法下擦窗機(jī)器人觸碰玻璃邊緣標(biāo)志位為1,清除交叉移動(dòng)計(jì)數(shù)方法下第一第一足M1觸碰玻璃邊緣標(biāo)志位為0,至此交叉移動(dòng)計(jì)數(shù)方法執(zhí)行完一次。
步驟8:根據(jù)事先設(shè)定交叉移動(dòng)計(jì)數(shù)方法執(zhí)行次數(shù),重復(fù)執(zhí)行步驟5至步驟7,當(dāng)達(dá)到設(shè)定次數(shù)后,清除交叉移動(dòng)計(jì)數(shù)方法下擦窗機(jī)器人觸碰玻璃邊緣標(biāo)志位為0,改變擦窗機(jī)器人行進(jìn)方向并退出交叉移動(dòng)計(jì)數(shù)方法,進(jìn)入正常行走模式。交叉移動(dòng)計(jì)數(shù)方法具體執(zhí)行流程圖如圖3所示。
以上步驟均通過編寫為計(jì)算機(jī)軟件運(yùn)行,它包括兩大部分,第一部分是正常行走過程中對(duì)玻璃邊緣的準(zhǔn)確判定,第二部分是準(zhǔn)確抵達(dá)玻璃邊緣后擦窗機(jī)器人向下移動(dòng)。通過二者的配合,可以實(shí)現(xiàn)擺動(dòng)式擦窗機(jī)器人對(duì)玻璃邊緣有效地觸碰檢測(cè)處理。
本發(fā)明提供的擺動(dòng)式擦窗機(jī)器人玻璃邊緣觸碰檢測(cè)處理方法對(duì)比現(xiàn)有技術(shù)有如下的有益效果:
1、引入容錯(cuò)判斷模式以及交叉移動(dòng)技術(shù)方法,多次驗(yàn)證觸碰玻璃邊緣準(zhǔn)確性,有效避免擦窗機(jī)器人對(duì)玻璃邊緣的誤判,減少擦窗死區(qū)。
2、使用交叉移動(dòng)計(jì)數(shù)方法,有效解決擺動(dòng)式擦窗機(jī)器人向下移動(dòng)問題,狀態(tài)邏輯清晰。
3、擺動(dòng)式擦窗機(jī)器人玻璃邊緣相關(guān)處理更加靈活,清潔力度更強(qiáng)。
附圖說明
圖1是本發(fā)明方法的擺動(dòng)式擦窗機(jī)器人容錯(cuò)判斷模式執(zhí)行流程圖
圖2是本發(fā)明方法的交叉移動(dòng)計(jì)數(shù)方法執(zhí)行示意圖,以足擦窗機(jī)器人上方第一第一足M1
先運(yùn)動(dòng)為例,介紹交叉移動(dòng)計(jì)數(shù)方法執(zhí)行流程;
圖3是本發(fā)明的交叉移動(dòng)計(jì)數(shù)方法流程圖;
圖4是本發(fā)明的擺動(dòng)式擦窗機(jī)器人玻璃邊緣觸碰檢測(cè)處理方法實(shí)驗(yàn)所用Win-Robot擺動(dòng)
式擦窗機(jī)器人;
圖5是容錯(cuò)模式針對(duì)玻璃表面臟物執(zhí)行示意圖;
圖6是容錯(cuò)模式針對(duì)玻璃邊緣執(zhí)行示意圖;
具體實(shí)施方式
以下結(jié)合附圖對(duì)本發(fā)明一種擺動(dòng)式擦窗機(jī)器人玻璃邊緣觸碰檢測(cè)處理方法通過簡(jiǎn)單實(shí)例作進(jìn)一步描述。
本發(fā)明一種擺動(dòng)式擦窗機(jī)器人玻璃邊緣觸碰檢測(cè)處理方法主要有以下內(nèi)容:在玻璃邊緣檢測(cè)過程中加入容錯(cuò)判斷模式,在擺動(dòng)式擦窗機(jī)器人擦除作業(yè)過程中允許擦窗機(jī)器人擦窗底盤對(duì)玻璃邊緣位置進(jìn)行一次誤判,以第一第一足M1為例,當(dāng)?shù)谝坏谝蛔鉓1第一次被檢測(cè)到觸碰玻璃邊緣時(shí),擦窗機(jī)器人將此處暫時(shí)判定為玻璃邊緣,此處也有可能為較大的臟物,此后,擦窗機(jī)器人退回一步并再次對(duì)此處進(jìn)行擦除作業(yè),同時(shí)記錄第二次擦除過程中第一第一足M1功率反饋正向跳變情況,即進(jìn)行第二次擦除以驗(yàn)證第一次判斷結(jié)果。若兩次擦除過程中均發(fā)現(xiàn)此處存在玻璃邊緣,則認(rèn)為第一第一足M1已經(jīng)以較大可能性抵達(dá)玻璃邊緣,此后,通過控制擦窗機(jī)器人第一第一足M2向行進(jìn)方向進(jìn)行相同于第一第一足M1的運(yùn)動(dòng),判定第一第一足M2是否抵達(dá)玻璃邊緣,當(dāng)且僅當(dāng)?shù)谝坏谝蛔鉓1和第一第一足M2同時(shí)判定為抵達(dá)玻璃邊緣,才判定此處為玻璃邊緣位置并置相應(yīng)標(biāo)志位。當(dāng)判定此處確實(shí)為玻璃邊緣時(shí),通過判定擦窗機(jī)器人運(yùn)行方向切換次數(shù)決定擦窗機(jī)器人進(jìn)行向下移動(dòng)時(shí),執(zhí)行交叉移動(dòng)計(jì)數(shù)方法的次數(shù),在執(zhí)行該方法過程中,第一第一足M1和第一第一足M2遵循“先退先進(jìn),后退后進(jìn)”的原則,即先遠(yuǎn)離玻璃邊緣邁出一步的足,在另一個(gè)足接著遠(yuǎn)離玻璃邊緣后,率先向玻璃邊緣邁步,其執(zhí)行示意圖如圖2所示,最后,根據(jù)交叉移動(dòng)計(jì)數(shù)方法執(zhí)行次數(shù),在有效減少玻璃邊緣位置誤判的情況下,實(shí)現(xiàn)擺動(dòng)式擦窗機(jī)器人的向下運(yùn)動(dòng)。在實(shí)施案例中,使用圖4所示W(wǎng)in-Robot擺動(dòng)式擦窗機(jī)器人,其部分基本參數(shù)如下:
凈重:0.94kg
尺寸:300×150×120mm(長(zhǎng)*寬*高)
擦窗底盤軸心距:150mm
轉(zhuǎn)盤半徑:145mm
擦除速度:4分鐘/平方公尺
以第一第一足M1先觸碰玻璃邊緣為例,實(shí)例實(shí)施具體過程如下:
步驟1:兩次驗(yàn)證第一第一足M1是否觸碰玻璃邊緣
在玻璃邊緣前方使用泥漿涂出一片較大的區(qū)域模擬玻璃表面臟物,使用Win-Robot擺動(dòng)式擦窗機(jī)器人進(jìn)行擦除時(shí),當(dāng)其第一足M1進(jìn)入該區(qū)域進(jìn)行擦除時(shí),第一足M1由于受到突變的阻力而產(chǎn)生較大的功率反饋突變,即檢測(cè)到觸碰玻璃邊緣,于是第一足M1會(huì)向后退回一定角度后,再繼續(xù)向前擦除,由于第一次已經(jīng)擦過的路徑不在有泥漿,因此第二次向前運(yùn)動(dòng)時(shí),Win-Robot并沒有檢測(cè)到觸碰玻璃邊緣,擦窗機(jī)器人正常向前行走,容錯(cuò)模式針對(duì)玻璃表面臟物運(yùn)行示意圖如圖5所示。
步驟2:第一足M2兩次運(yùn)動(dòng)驗(yàn)證第一足M1接觸玻璃邊緣判斷準(zhǔn)確性。
設(shè)定程序,Win-Robot抵達(dá)玻璃邊緣后停止運(yùn)動(dòng)并發(fā)出報(bào)警,在具體實(shí)施過程中將Win-Robot放置于玻璃邊緣附近,保持玻璃表面無明顯污漬,使Win-Robot靠近玻璃邊緣運(yùn)動(dòng),Win-Robot的容錯(cuò)判斷模式針對(duì)玻璃邊緣運(yùn)行示意圖如圖6所示。在第一足M1確認(rèn)觸碰玻璃邊緣后,Win-Robot控制第一足M2執(zhí)行圖6中④-⑦的過程,到達(dá)過程⑦后,Win-Robot停止運(yùn)動(dòng),并提示已經(jīng)抵達(dá)玻璃邊緣。
步驟3:清除與設(shè)置相應(yīng)標(biāo)志位。
在Win-Robot的軟件工程中,設(shè)置對(duì)應(yīng)的全局變量即可實(shí)現(xiàn)該步驟。
步驟4-7:執(zhí)行一次交叉移動(dòng)計(jì)數(shù)方法。
Win-Robot初次運(yùn)行方向向左,程序中設(shè)定交叉移動(dòng)兩次后停止運(yùn)轉(zhuǎn)并報(bào)警。在其第一次觸碰玻璃邊緣后,直接切換行進(jìn)方向,Win-Robot向右正常行走。當(dāng)Win-Robot經(jīng)過容錯(cuò)模式抵達(dá)右側(cè)玻璃邊緣時(shí),其會(huì)執(zhí)行如圖2所示交叉移動(dòng)計(jì)數(shù)方法,Win-Robot會(huì)首先將機(jī)身上方擦窗底盤(即圖2中第一足M1)向左退回一定角度,程序中設(shè)定Win-Robot機(jī)身與豎直方向夾角為15度后,Win-Robot控制第一足M2向左后退,直至機(jī)身豎直。此后,第一足M1會(huì)先向右運(yùn)動(dòng)并檢測(cè)到觸碰玻璃邊緣,緊接著第一足M2向右運(yùn)動(dòng)并檢測(cè)到觸碰玻璃邊緣。
步驟8:根據(jù)擦窗機(jī)器人觸碰玻璃邊緣次數(shù)執(zhí)行相應(yīng)次數(shù)交叉移動(dòng)計(jì)數(shù)方法
由于在程序中設(shè)定Win-Robot執(zhí)行兩次交叉移動(dòng)計(jì)數(shù),在步驟7結(jié)束后,Win-Robot再次重復(fù)執(zhí)行一遍步驟4至7,并在最后第一足M2觸碰玻璃邊緣后,Win-Robot停止運(yùn)轉(zhuǎn)并報(bào)警,與程序設(shè)定結(jié)果相同。
在交叉移動(dòng)計(jì)數(shù)方法誤判實(shí)驗(yàn)測(cè)試中,使用木條模擬玻璃邊緣,Win-Robot執(zhí)行交叉移動(dòng)計(jì)數(shù)流程,當(dāng)其執(zhí)行到圖2中的流程3時(shí),取走放置的木條,在第一足M1向右運(yùn)動(dòng)不超過限定角度過程中,并未檢測(cè)到“玻璃邊緣”,Win-Robot將會(huì)先控制第一足M2向右運(yùn)動(dòng)并檢測(cè),實(shí)現(xiàn)正常行走,從而避免因玻璃邊緣誤判而形成的擦窗死區(qū)出現(xiàn),與預(yù)想結(jié)果相同。
本說明書實(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ù)手段。