本發(fā)明涉及導(dǎo)航技術(shù)領(lǐng)域,尤其涉及基于模糊算法的視覺(jué)導(dǎo)航控制方法及系統(tǒng)。
背景技術(shù):
近年來(lái),自動(dòng)導(dǎo)航車(chē)(Automated Guide Vehicle,AGV)被廣泛地應(yīng)用到了物流、煙草、食品行業(yè)、汽車(chē)制造等各個(gè)行業(yè)中?,F(xiàn)階段AGV的研究熱點(diǎn)集中于改進(jìn)導(dǎo)航方式及控制方法。目前,AGV的導(dǎo)航方式主要有磁帶導(dǎo)航、激光導(dǎo)航、慣性導(dǎo)航等。隨著機(jī)器視覺(jué)技術(shù)及計(jì)算機(jī)技術(shù)的不斷發(fā)展,基于視覺(jué)的AGV導(dǎo)航技術(shù)逐漸成為主要的研究方向。
AGV的視覺(jué)導(dǎo)航方式是正在快速發(fā)展和成熟的一種新型導(dǎo)航方式。AGV在行駛過(guò)程中,通過(guò)CCD攝像機(jī)和傳感器動(dòng)態(tài)獲取車(chē)輛的行駛軌跡信息,并與數(shù)據(jù)庫(kù)進(jìn)行比較,從而確定當(dāng)前位置信息并對(duì)下一步行駛做出決策。
模糊邏輯控制(Fuzzy Logic Control)簡(jiǎn)稱(chēng)模糊控制(Fuzzy Control),是以模糊集合論、模糊語(yǔ)言變量和模糊邏輯推理為基礎(chǔ)的一種計(jì)算機(jī)數(shù)字控制技術(shù)。1965年,美國(guó)的L.A.Zadeh創(chuàng)立了模糊集合論;1973年他給出了模糊邏輯控制的定義和相關(guān)的定理。1974年,英國(guó)的E.H.Mamdani首次根據(jù)模糊控制語(yǔ)句組成模糊控制器,并將它應(yīng)用于鍋爐和蒸汽機(jī)的控制,獲得了實(shí)驗(yàn)室的成功。這一開(kāi)拓性的工作標(biāo)志著模糊控制論的誕生。近20多年來(lái),模糊控制不論在理論上還是技術(shù)上都有了長(zhǎng)足的進(jìn)步,成為自動(dòng)控制領(lǐng)域一個(gè)非?;钴S而又碩果累累的分支。
目前,國(guó)內(nèi)AGV行業(yè)主要的導(dǎo)航方式為磁帶導(dǎo)航和激光導(dǎo)航。磁帶導(dǎo)航優(yōu)點(diǎn):磁帶導(dǎo)航靈活性比較好,改變或擴(kuò)充路徑較容易,磁帶鋪設(shè)也相對(duì)簡(jiǎn)單,導(dǎo)引原理簡(jiǎn)單而可靠,對(duì)聲光無(wú)干擾,投資成本比激光導(dǎo)引式低很多。激光導(dǎo)航優(yōu)點(diǎn):地面無(wú)需定位設(shè)施,行駛路徑可靈活改變。但AGV在高速度行駛、高精度定位時(shí),以上兩種導(dǎo)航方式很難滿(mǎn)足技術(shù)要求,不具備很好的實(shí)時(shí)性、精確性和魯棒性。
技術(shù)實(shí)現(xiàn)要素:
為克服上述現(xiàn)有技術(shù)的不足,本發(fā)明提供一種可以使AGV自動(dòng)導(dǎo)航行駛的基于模糊算法的視覺(jué)導(dǎo)航控制方法及系統(tǒng)。
實(shí)現(xiàn)本發(fā)明目的的技術(shù)方案是:基于模糊算法的視覺(jué)導(dǎo)航控制方法,CCD攝像機(jī)測(cè)量AGV行駛軌跡偏離誤差,PLC控制器根據(jù)CCD攝像機(jī)測(cè)量AGV行駛軌跡偏離誤差計(jì)算出AGV行駛軌跡偏離誤差率,將AGV行駛軌跡偏離誤差和AGV行駛軌跡偏離誤差率輸入基于模糊算法的視覺(jué)導(dǎo)航測(cè)量模型計(jì)算出AGV差速控制偏移量,具體步驟包括:
1)輸入輸出模糊化處理
將AGV行駛軌跡偏離誤差E和AGV行駛軌跡誤差變化率EC作為模糊算法的輸入變量,AGV差速控制偏移量U作為輸出變量,其中,輸入變量AGV行駛軌跡偏離誤差E和AGV行駛軌跡誤差變化率EC的實(shí)際范圍為變量的基本論域,基本論域內(nèi)的量為精確量;
AGV行駛軌跡偏離誤差E所取的模糊子集的論域?yàn)閧-6,-5,-4,-3,-2,-1,0,+1,+2,+3,+4,+5,+6};
輸入量AGV行駛軌跡偏離誤差E的模糊化:
輸入量:e;
基本論域:[-|emax|},+|emax}],即:[-30,+30],單位:mm;
量化論域:[-nl,+nl],即:[-6,+6];
模糊詞集:NB,NM,NS,0,PS,PM,PB;
誤差的量化因子公式:Ke=nl/|emax|;
誤差量化因子:Ke=6/30=0.2
所述AGV行駛軌跡誤差變化率EC、AGV差速控制偏移量U和AGV行駛軌跡偏離誤差E的模糊化處理相同;
AGV行駛軌跡偏離誤差E、AGV行駛軌跡誤差變化率EC和AGV差速控制偏移量U的語(yǔ)言值隸屬度函數(shù)均采用對(duì)稱(chēng)三角形隸屬度函數(shù);
2)建立模糊規(guī)則,進(jìn)行模糊推理
建立模糊控制策略表,采用Zadeh推理法則,由模糊控制策略表計(jì)算出控制量,即模糊控制量為模糊集合U;經(jīng)過(guò)模糊推理將模糊控制量轉(zhuǎn)換為精確量,模糊推理所獲得的結(jié)果仍是一個(gè)模糊值,不能直接用來(lái)作為被控對(duì)象的控制量,需要將其轉(zhuǎn)換成一個(gè)可以被執(zhí)行機(jī)構(gòu)所實(shí)現(xiàn)的精確量,此過(guò)程一般被稱(chēng)為反模糊化過(guò)程,反模糊化采用最大隸屬度法,將上述結(jié)果離線(xiàn)做成查詢(xún)表,并將查詢(xún)表的內(nèi)容存放在PLC控制器的內(nèi)存中在實(shí)時(shí)控制時(shí)使用。
本發(fā)明還公開(kāi)了基于模糊算法的視覺(jué)導(dǎo)航控制系統(tǒng),用于使用上述的一種基于模糊算法的視覺(jué)導(dǎo)航控制方法,該基于模糊算法的視覺(jué)導(dǎo)航控制系統(tǒng)用于控制AGV的行駛,基于模糊算法的視覺(jué)導(dǎo)航控制系統(tǒng)包括PLC控制器、CCD攝像機(jī)、自動(dòng)導(dǎo)航單元、手持式操作單元、操作單元接收器和手持式操作面板,自動(dòng)導(dǎo)航單元包括導(dǎo)航色帶和二維碼帶,AGV通過(guò)導(dǎo)航色帶進(jìn)行導(dǎo)航行駛,二維碼帶設(shè)置在需要AGV改變速度、方向或精確定位的位置,操作單元接收器與PLC控制器相連接,操作單元接收器用于接收手持式操作單元或手持式操作面板發(fā)送的操作AGV的命令,CCD攝像機(jī)安裝在AGV的上方,CCD攝像機(jī)用于識(shí)別導(dǎo)航色帶和二維碼帶鋪設(shè)的路徑,CCD攝像機(jī)將識(shí)別的導(dǎo)航色帶和二維碼帶鋪設(shè)的路徑傳輸給PLC控制器,PLC控制器使得AGV按照導(dǎo)航色帶和二維碼帶鋪設(shè)的路徑行駛。
作為本發(fā)明的優(yōu)化方案,基于模糊算法的視覺(jué)導(dǎo)航控制系統(tǒng)還包括安全控制單元,安全控制單元用于使AGV行駛時(shí)繞過(guò)障礙物,安全控制單元為激光掃描儀,激光掃描儀與PLC控制器相連。
作為本發(fā)明的優(yōu)化方案,CCD攝像機(jī)集成有LED光源,LED光源用于提供CCD攝像機(jī)工作時(shí)的光源。
本發(fā)明具有積極的效果:1)本發(fā)明利用CCD攝像機(jī)獲取AGV行駛軌跡偏離誤差,然后通過(guò)模糊算法輸出了AGV差速控制偏移量,滿(mǎn)足了AGV高速行駛,高精度定位的需求,實(shí)時(shí)性好,魯棒性好;
2)本發(fā)明可以控制AGV精確定位取貨,并進(jìn)行高速自動(dòng)導(dǎo)航行駛;
3)本發(fā)明配備了激光掃描儀,避免了AGV行駛過(guò)程中可以有效的繞過(guò)障礙物,提高了AGV行駛的安全性。
附圖說(shuō)明
為了使本發(fā)明的內(nèi)容更容易被清楚地理解,下面根據(jù)具體實(shí)施例并結(jié)合附圖,對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說(shuō)明:
圖1為AGV行駛軌跡偏離誤差E模糊子集的隸屬度函數(shù);
圖2是AGV視覺(jué)導(dǎo)航路徑示意圖;
圖3是基于模糊算法的視覺(jué)導(dǎo)航控制系統(tǒng)的框圖。
其中:1、CCD攝像機(jī),2、PLC控制器,3、自動(dòng)導(dǎo)航單元,4、手持式操作單元,5、操作單元接收器,6、手持式操作面板,7、安全控制單元。
具體實(shí)施方式
本發(fā)明公開(kāi)了基于模糊算法的視覺(jué)導(dǎo)航控制方法,CCD攝像機(jī)1測(cè)量AGV行駛軌跡偏離誤差,PLC控制器2根據(jù)CCD攝像機(jī)1測(cè)量AGV行駛軌跡偏離誤差計(jì)算出AGV行駛軌跡偏離誤差率,將AGV行駛軌跡偏離誤差和AGV行駛軌跡偏離誤差率輸入基于模糊算法的視覺(jué)導(dǎo)航測(cè)量模型計(jì)算出AGV差速控制偏移量,具體步驟包括:
1)輸入輸出模糊化處理
將AGV行駛軌跡偏離誤差E和AGV行駛軌跡誤差變化率EC作為模糊算法的輸入變量,AGV差速控制偏移量U作為輸出變量,其中,輸入變量AGV行駛軌跡偏離誤差E和AGV行駛軌跡誤差變化率EC的實(shí)際范圍為變量的基本論域,基本論域內(nèi)的量為精確量;
AGV行駛軌跡偏離誤差E所取的模糊子集的論域?yàn)閧-6,-5,-4,-3,-2,-1,0,+1,+2,+3,+4,+5,+6};
輸入量AGV行駛軌跡偏離誤差E的模糊化:
輸入量:e;
基本論域:[-|emax|},+|emax}],即:[-30,+30],單位:mm;
量化論域:[-nl,+nl],即:[-6,+6];
模糊詞集:NB,NM,NS,0,PS,PM,PB;
誤差的量化因子公式:Ke=nl/|emax|;
誤差量化因子:Ke=6/30=0.2
AGV行駛軌跡誤差變化率EC、AGV差速控制偏移量U和AGV行駛軌跡偏離誤差E的模糊化處理相同;
AGV行駛軌跡偏離誤差E、AGV行駛軌跡誤差變化率EC和AGV差速控制偏移量U的語(yǔ)言值隸屬度函數(shù)均采用對(duì)稱(chēng)三角形隸屬度函數(shù),如圖1和表1所示;
表1行駛軌跡偏離誤差E模糊子集的賦值表
2)建立模糊規(guī)則,進(jìn)行模糊推理
模糊規(guī)則的建立,是把操作者的經(jīng)驗(yàn)加以總結(jié),并將在控制過(guò)程中由經(jīng)驗(yàn)得來(lái)的相應(yīng)措施總結(jié)成一條條控制規(guī)則,由它們構(gòu)成一個(gè)“模糊控制器”,從而達(dá)到用機(jī)器代替人對(duì)復(fù)雜的工業(yè)過(guò)程進(jìn)行控制。根據(jù)人員對(duì)AGV實(shí)際軌跡糾偏能力的操作經(jīng)驗(yàn),將行駛過(guò)程中要遇到的各種可能出現(xiàn)的軌跡偏移情況和相應(yīng)的控制策略匯總成表,具體的語(yǔ)句例如:
If E=NB and EC=NB then U=NB,如表2所示。
表2控制策略表
建立模糊控制策略表,采用Zadeh推理法則,由模糊控制策略表計(jì)算出控制量,即模糊控制量為模糊集合U;經(jīng)過(guò)模糊推理將模糊控制量轉(zhuǎn)換為精確量,模糊推理所獲得的結(jié)果仍是一個(gè)模糊值,不能直接用來(lái)作為被控對(duì)象的控制量,需要將其轉(zhuǎn)換成一個(gè)可以被執(zhí)行機(jī)構(gòu)所實(shí)現(xiàn)的精確量,此過(guò)程一般被稱(chēng)為反模糊化過(guò)程,反模糊化采用最大隸屬度法,將上述結(jié)果離線(xiàn)做成查詢(xún)表,并將查詢(xún)表的內(nèi)容存放在PLC控制器2的內(nèi)存中在實(shí)時(shí)控制時(shí)使用。
由If E=PB and EC=PB or EC=PS or EC=ZO Then U=PB語(yǔ)句所確定的關(guān)系可用下列式子表達(dá):
R=[PBe×PBu]·[(PBec+PSec+ZOec)×PBu]
則
U1=e·[PBe×PBu]·ec·[(PBec+PSec+ZOec)×PBu]
把E和EC的隸屬度函數(shù)值對(duì)應(yīng)于所量化的等級(jí)上取1,其余均取零值,這樣上式可簡(jiǎn)化為:
式中:μPBe(i)是模糊集合PBE第i個(gè)元素的隸屬度,而μPBec(j)、μPSec(j)、μZOec(j)
是模糊集合PBEC、PSEC和ZOEC第j個(gè)元素的隸屬度;
則AGV差速控制偏移量U為:
U=u1+u2+......+u14
采用隸屬度最大原則將模糊控制量轉(zhuǎn)換為精確量即可。
本發(fā)明還公開(kāi)了基于模糊算法的視覺(jué)導(dǎo)航控制系統(tǒng),用于使用上述的一種基于模糊算法的視覺(jué)導(dǎo)航控制方法,該基于模糊算法的視覺(jué)導(dǎo)航控制系統(tǒng)用于控制AGV的行駛,基于模糊算法的視覺(jué)導(dǎo)航控制系統(tǒng)包括PLC控制器2、CCD攝像機(jī)1、自動(dòng)導(dǎo)航單元3、手持式操作單元4、操作單元接收器5和手持式操作面板6,自動(dòng)導(dǎo)航單元3包括導(dǎo)航色帶和二維碼帶,AGV通過(guò)導(dǎo)航色帶進(jìn)行導(dǎo)航行駛,二維碼帶設(shè)置在需要AGV改變速度、方向或精確定位的位置,操作單元接收器5與PLC控制器2相連接,操作單元接收器5用于接收手持式操作單元4或手持式操作面板6發(fā)送的操作AGV的命令,CCD攝像機(jī)1安裝在AGV的上方,CCD攝像機(jī)1用于識(shí)別導(dǎo)航色帶和二維碼帶鋪設(shè)的路徑,CCD攝像機(jī)1將識(shí)別的導(dǎo)航色帶和二維碼帶鋪設(shè)的路徑傳輸給PLC控制器2,PLC控制器2使得AGV按照導(dǎo)航色帶和二維碼帶鋪設(shè)的路徑行駛。其中,AGV行駛時(shí),導(dǎo)航主要是采用導(dǎo)航色帶,導(dǎo)航色帶的顏色要與地面的顏色有強(qiáng)烈的反差。手持式操作單元4可以是帶手柄的遙控器,手持式操作面板6可以是平板手機(jī)等移動(dòng)終端,CCD攝像機(jī)1用于識(shí)別導(dǎo)航色帶和二維碼帶鋪設(shè)的路徑,CCD攝像機(jī)1將識(shí)別的路徑傳輸給PLC控制器2,PLC控制器2使得AGV按照CCD攝像機(jī)1識(shí)別的路徑行駛。
基于模糊算法的視覺(jué)導(dǎo)航控制系統(tǒng)還包括安全控制單元7,安全控制單元7用于使AGV行駛時(shí)繞過(guò)障礙物,安全控制單元7為激光掃描儀,激光掃描儀與PLC控制器2相連。其中,激光掃描儀發(fā)出激光脈沖,當(dāng)激光碰到物體后,部分激光反射回激光掃描儀。激光掃描儀通過(guò)計(jì)算發(fā)射和接收時(shí)間的脈沖時(shí)間差,可計(jì)算出物體距離值。激光掃描儀連續(xù)不斷的發(fā)射激光脈沖,由旋轉(zhuǎn)的機(jī)構(gòu)將激光脈沖按照一定間隔角度(角度分辨率)發(fā)射至掃描角度內(nèi)的各個(gè)方向進(jìn)而形成一個(gè)二維掃描平面。
CCD攝像機(jī)1集成有LED光源,LED光源用于提供CCD攝像機(jī)1工作時(shí)的光源。保證外界光線(xiàn)昏暗時(shí),CCD攝像機(jī)1可以正常根據(jù)導(dǎo)航色帶行駛。
以上所述的具體實(shí)施例,對(duì)本發(fā)明的目的、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步詳細(xì)說(shuō)明,所應(yīng)理解的是,以上所述僅為本發(fā)明的具體實(shí)施例而已,并不用于限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。