許晉 李憲強(qiáng) 何琳 高軍偉
摘? 要:隨著經(jīng)濟(jì)和各行各業(yè)的快速發(fā)展,我國(guó)科技水平的提升,傳統(tǒng)加工制造工廠逐漸向著智能化和無(wú)人化發(fā)展,AGV智能車的應(yīng)用將大大提高制造工廠的工作效率,也能滿足工廠柔性加工制造的需求。制造工廠的工作環(huán)境越復(fù)雜,對(duì)工廠內(nèi)的安全要求也就越高,尤其是新興的智能無(wú)人工廠,發(fā)生安全事故的后果是不可想象的。在這種復(fù)雜的工作環(huán)境中,AGV小車的路徑規(guī)劃問(wèn)題需要考慮AGV的實(shí)際大小和尺寸,生成路徑的安全性要求比路徑最短更重要。遺傳算法(geneticalgorithm,GA)在路徑規(guī)劃問(wèn)題中,可以兼顧多個(gè)優(yōu)化目標(biāo),可針對(duì)不同的需求設(shè)置不同的編碼方式。在遺傳算法中應(yīng)用了非線性規(guī)劃理論,考慮了路徑的安全性和平滑度。提出了一種自適應(yīng)遺傳算法的路徑規(guī)劃方法,采用了人工勢(shì)場(chǎng)對(duì)種群初始化,提高了算法收斂速度。提出了基于染色體信息熵的遺傳算法,可通過(guò)基因交叉和變異使種群快速繞開障礙物。綜上所述,現(xiàn)有文獻(xiàn)雖然對(duì)基于遺傳算法的路徑規(guī)劃方法加以改進(jìn),使其符合路徑安全性的要求,但卻只是簡(jiǎn)單的設(shè)置了固定的安全距離,沒有考慮AGV小車的實(shí)際尺寸大小和AGV與障礙物之間的碰撞概率,并且算法改進(jìn)后的收斂效率并不高。本文提出了一種融合碰撞概率的柵格地圖構(gòu)建方法,考慮了AGV的尺寸大小和位姿狀態(tài),并應(yīng)用改進(jìn)染色體編碼和適應(yīng)度函數(shù)的遺傳算法對(duì)A*算法產(chǎn)生的初始路徑進(jìn)行優(yōu)化,加快了遺傳算法的搜索進(jìn)程,最終得到的路徑符合安全性、高效性和最短三項(xiàng)指標(biāo)。
關(guān)鍵詞:加工制造工廠;工廠AGV;安全路徑規(guī)劃;改進(jìn)遺傳算法
引言
工廠AGV行駛路徑復(fù)雜、應(yīng)用局限性等問(wèn)題,以AGV配送物料行駛路徑最短為目標(biāo),采用遺傳算法進(jìn)行AGV路徑規(guī)劃,并加入物料類型選擇的循環(huán)套,通過(guò)多次實(shí)驗(yàn)確定最合理的控制參數(shù),從而產(chǎn)生AGV運(yùn)輸多種類型物料的最優(yōu)路徑結(jié)果。使用Matlab軟件對(duì)算法進(jìn)行仿真,結(jié)果表明:該算法是有效的,能夠直接實(shí)現(xiàn)AGV在運(yùn)輸多種類型物料時(shí)所產(chǎn)生的不同種路徑的優(yōu)化。
1工廠AGV問(wèn)題描述
某工廠的AGV運(yùn)輸物料模型一般可以描述為:工廠的生產(chǎn)車間共有20臺(tái)工作機(jī)器,需要5種物料,當(dāng)AGV運(yùn)輸不同物料時(shí),途經(jīng)的機(jī)器坐標(biāo)和數(shù)量不同,行駛路徑有很多種。本文將研究如何運(yùn)用遺傳算法高效直接的產(chǎn)生AGV運(yùn)輸多種物料時(shí)的不同路徑優(yōu)化結(jié)果。鑒于AGV運(yùn)輸物料的過(guò)程比較復(fù)雜,且為了便于本文的模型建立及研究,現(xiàn)做如下規(guī)定和假設(shè):1)單臺(tái)AGV只可運(yùn)輸一種物料;2)AGV初始位置均在物料配送中心;3)AGV行駛路徑是指從物料配送中心坐標(biāo)為起點(diǎn),途經(jīng)所有需要此種類型物料的機(jī)器,最后回到起點(diǎn);4)單臺(tái)AGV的運(yùn)輸量可以滿足全部機(jī)器所需的特定類型物料量。
2改進(jìn)的遺傳算法
2.1遺傳算法染色體編碼
本算法采用(-n,n)間整數(shù)編碼的方式,染色體長(zhǎng)度為A*算法產(chǎn)生基準(zhǔn)路徑的總節(jié)點(diǎn)數(shù),編碼數(shù)值的大小表示節(jié)點(diǎn)的偏移,偏移空間為由前一節(jié)點(diǎn)指向該節(jié)點(diǎn)線段的垂直法線上的柵格,規(guī)定0表示節(jié)點(diǎn)不偏移,負(fù)值表示向著前進(jìn)方向的左邊偏移n個(gè)柵格,正值則為向右偏移n個(gè)柵格。
2.2交叉操作
本文中,假設(shè)隨機(jī)選擇兩個(gè)已經(jīng)被復(fù)制的個(gè)體分別為:A=35749,B=46285,確定交叉點(diǎn),A=35|749,B=46|285,在對(duì)應(yīng)位置交換基因片段,同時(shí)保證每個(gè)個(gè)體依然是1-N的隨機(jī)排列,防止進(jìn)入局部收斂,交叉過(guò)程后則產(chǎn)生=46749,=35285兩個(gè)新個(gè)體。
2.3交叉概率
選擇將AGV運(yùn)輸C類物料的路徑作為研究對(duì)象,遍歷機(jī)器數(shù)目為N=13,AGV行駛路徑個(gè)數(shù)也即群體規(guī)模為2N=26,迭代次數(shù)C為50次,設(shè)定變異概率,改變交叉概率的數(shù)值,每種情況實(shí)驗(yàn)15次,求出不同數(shù)值下的平均路徑長(zhǎng)度,發(fā)現(xiàn)當(dāng)交叉概率時(shí),平均路徑長(zhǎng)度最短。因此,本文中遺傳算法的交叉概率取值為0.6為宜。
2.4模擬制造工廠AGV工作過(guò)程
根據(jù)加工制造工廠廣泛應(yīng)用的經(jīng)典車床模型,在GAZEBO軟件中建立了虛擬的制造工廠AGV工作環(huán)境,工廠空間大小為50m×50m,其中分布有CNC數(shù)控機(jī)床兩臺(tái),小型操作臺(tái)三個(gè),中型切割機(jī)三臺(tái)和大型數(shù)控車床三臺(tái)。AGV小車的寬為40cm,長(zhǎng)為40cm,長(zhǎng)寬比為1。使用本算法模擬的AGV工作路徑,其路徑長(zhǎng)度為67.725m,路徑平均碰撞概率為13.721%。
3特殊環(huán)境參數(shù)監(jiān)測(cè)系統(tǒng)
特殊監(jiān)測(cè)系統(tǒng)設(shè)計(jì)是為了監(jiān)測(cè)車間環(huán)境在生產(chǎn)過(guò)程中產(chǎn)生的非常規(guī)的空氣內(nèi)容物,使用者可以在顯示系統(tǒng)上看到當(dāng)前車間環(huán)境的天然氣濃度、煙霧濃度、氫氣濃度、一氧化碳濃度、酒精濃度、空氣質(zhì)量、可燃?xì)怏w濃度、液化氣濃度的數(shù)值和火焰監(jiān)測(cè),并可以根據(jù)氣體的種類的工作環(huán)境要求設(shè)定不同的報(bào)警閥值,當(dāng)某項(xiàng)監(jiān)測(cè)指標(biāo)超過(guò)報(bào)警閥值則會(huì)觸發(fā)報(bào)警。該系統(tǒng)采用MQ-2到MQ-9等8個(gè)模塊、MQ-135模塊和火焰?zhèn)鞲衅??;贏T89C52單片機(jī)系統(tǒng)以及PCF85914芯片進(jìn)行設(shè)計(jì),將8個(gè)MQ系列傳感器分為兩組分別連接在兩個(gè)PCF8591芯片上進(jìn)行A/D轉(zhuǎn)換,單片機(jī)使用I2C總線連兩個(gè)PCF8591芯片,分別使用90H和92H兩個(gè)器件地址進(jìn)行訪問(wèn),按照順序分別讀取不同的傳感器數(shù)值,并在顯示系統(tǒng)上有對(duì)應(yīng)的數(shù)字顯示,MQ傳感器誤差均穩(wěn)定在±0.1V以內(nèi)。八項(xiàng)非常規(guī)監(jiān)測(cè)數(shù)據(jù)根據(jù)氣體種類要求設(shè)定不同的報(bào)警閾值,當(dāng)超過(guò)所設(shè)定的200ppm對(duì)應(yīng)閾值的時(shí)候就會(huì)觸發(fā)報(bào)警系統(tǒng)報(bào)警,當(dāng)環(huán)境恢復(fù)或達(dá)到標(biāo)準(zhǔn)時(shí)系統(tǒng)會(huì)停止報(bào)警?;鹧?zhèn)鞲衅髟谟忻骰鸬那闆r下會(huì)像單片機(jī)發(fā)送異常信號(hào),并通過(guò)報(bào)警模塊進(jìn)行報(bào)警。
4系統(tǒng)架構(gòu)
OpenTCS是Google開發(fā)的一個(gè)移動(dòng)機(jī)器人開源軟件框架,用于移動(dòng)機(jī)器人的訂單接收、分發(fā),并且提供了一整套用于外部調(diào)用的API接口。在OpenTCS的基礎(chǔ)上,于頂層開發(fā)調(diào)度中間件,負(fù)責(zé)將用戶或者生產(chǎn)系統(tǒng)生成的訂單進(jìn)行路徑調(diào)度、訂單融合優(yōu)化、AGV分配,然后生成具體的Kernel內(nèi)部數(shù)據(jù)傳給Kernel;于客戶端開發(fā)用戶操作界面,使用RMI遠(yuǎn)程調(diào)度方法與Kernel數(shù)據(jù)交換,實(shí)現(xiàn)界面UI與服務(wù)器主進(jìn)程的分離與通訊;在Kernel中開發(fā)響應(yīng)針對(duì)下位機(jī)的驅(qū)動(dòng),在驅(qū)動(dòng)中對(duì)調(diào)度數(shù)據(jù)進(jìn)行預(yù)處理,并且與下位機(jī)建立TCP/IP通訊;下位機(jī)端開發(fā)與kernel中驅(qū)動(dòng)對(duì)接的驅(qū)動(dòng)程序,完成數(shù)據(jù)通訊,并且控制響應(yīng)ROS節(jié)點(diǎn)實(shí)現(xiàn)對(duì)傳感器的控制。
結(jié)語(yǔ)
工廠AGV的行駛路徑問(wèn)題,本文在路徑優(yōu)化操作前加入物料類型的選擇循環(huán)套,針對(duì)不同的群體規(guī)模設(shè)定相應(yīng)的迭代次數(shù),并通過(guò)實(shí)驗(yàn)數(shù)據(jù)選擇優(yōu)化效果最佳的控制參數(shù),最后進(jìn)行了數(shù)據(jù)的仿真驗(yàn)證,證明了該算法的有效性。本文的研究成果擴(kuò)大了遺傳算法解決類似路徑規(guī)劃問(wèn)題的應(yīng)用面。對(duì)于工廠的實(shí)際生產(chǎn)情況來(lái)講,本文的研究成果可以提高車間的生產(chǎn)效率,進(jìn)而提升工廠經(jīng)濟(jì)效益。
參考文獻(xiàn)
[1]? 張軍,趙玉剛,楊強(qiáng),等.微型自動(dòng)循跡搬運(yùn)車控制系統(tǒng)的開發(fā)[J].組合機(jī)床與自動(dòng)化加工技術(shù),2017(7):133-136.
[2]? 倪生科,劉正江,蔡垚,等.基于混合遺傳算法的船舶避碰路徑規(guī)劃[J].上海海事大學(xué)學(xué)報(bào),2019,40(1):21-26.
[3]? 王雷,李明.改進(jìn)自適應(yīng)遺傳算法在移動(dòng)機(jī)器人路徑規(guī)劃中的應(yīng)用[J].南京理工大學(xué)學(xué)報(bào),2017,41(5):627-633.
[4]? 劉二輝,姚錫凡.基于改進(jìn)遺傳算法的自動(dòng)導(dǎo)引小車路徑規(guī)劃及其實(shí)現(xiàn)平臺(tái)[J].計(jì)算機(jī)集成制造系統(tǒng),2017,23(3):465-472.