【溫馨提示】壓縮包內(nèi)含CAD圖有下方大圖片預(yù)覽,下拉即可直觀呈現(xiàn)眼前查看、盡收眼底縱觀。打包內(nèi)容里dwg后綴的文件為CAD圖,可編輯,無水印,高清圖,壓縮包內(nèi)文檔可直接點開預(yù)覽,需要原稿請自助充值下載,所見才能所得,請見壓縮包內(nèi)的文件及下方預(yù)覽,請細(xì)心查看有疑問可以咨詢QQ:11970985或197216396
畢業(yè)論文(設(shè)計)
題目名稱: 自動裝卸AGV設(shè)計
所 在 學(xué) 院 :
專業(yè)(班級):
學(xué) 生 姓 名 :
指 導(dǎo) 教 師 :
評 閱 人:
院 長:
自動裝卸AGV設(shè)計
總計:畢業(yè)論文: 30 頁
表 格: 2 表
插 圖: 17 幅
指導(dǎo)教師:
評 閱 人:
完成時間:
摘 要
本次畢業(yè)設(shè)計為解決當(dāng)下國內(nèi)外AGV小車價格高居不下及其并不適合基礎(chǔ)工業(yè)不完善的我國的問題,并且目前大部分AGV采用電磁或軌道引導(dǎo),路線固定,局限性較大,不適用于柔性化制造系統(tǒng)。
為解決上述問題,在目前AGV的基礎(chǔ)上,創(chuàng)新性的使用機械手聯(lián)動的的裝卸方式,避免了為了滿足各工況需求而覆蓋的各種移載機構(gòu),驅(qū)動模式和導(dǎo)引方式,降低了成本。同時又不同于AGC需要完善的基礎(chǔ)設(shè)施配合,三只靈巧機械手足夠完成裝卸工作,極大地發(fā)揮了AGV本身的自主性和工作容積。搭配四個麥克納姆輪極大地縮小了轉(zhuǎn)向半徑可在更狹小空間內(nèi)作業(yè)。同時仿照無人駕駛汽車運行原理采用激光測距雷達(dá)配接近傳感器能夠滿足各種復(fù)雜路徑的使用要求,自動化程度更高。同時定位精度主要由雷達(dá)的精度決定,便于用戶靈活調(diào)整型號以適應(yīng)場所并控制成本(定位精度為±10mm到±5mm)。
關(guān)鍵詞:AGV;工業(yè)機器人;物流搬運;無人駕駛技術(shù)
I
ABSTRACT
The graduation design in order to solve the present high prices for AGV car at home and abroad and is not suitable for basic industry is not perfect in our country, and at present most of the AGV by electromagnetic or track guide, fixed route, limitations, is not suitable for the flexible manufacturing system.
To solve the above problems, on the basis of the AGV, the use of innovative way of loading and unloading manipulator linkage, avoided in order to meet the demand of working condition of the institution, and cover a variety of transfer of driving mode and direct way, reduce the cost. At the same time, it is different from the basic facilities that AGC needs to perfect, and the three dexterous manipulators are enough to complete the loading and unloading work, which greatly exerts the autonomy and working capacity of AGV itself. With four McNams, the steering radius is greatly reduced to work in smaller Spaces. At the same time, the operation principle of the self-driving car adopts laser ranging radar and proximity sensors to meet the requirements of various complex paths, and the automation level is higher. At the same time, the positioning accuracy is mainly determined by the accuracy of the radar, so that the user can adjust the model flexibly to fit the site and control the cost (the positioning accuracy is plus or minus 10mm to plus or minus 5mm).
Key Words:AGV ;Industrial robots; Logistics transport; Unmanned technology
III
目 錄
1.緒論 1
1.1 AGV概述 1
1.2 背景技術(shù) 1
1.3 國內(nèi)外機械能越障小車的發(fā)展概況 1
2.機械結(jié)構(gòu)設(shè)計 2
2.1自動裝卸AGV技術(shù)參數(shù) 2
2.2 直流伺服電動機的選擇 2
3.控制系統(tǒng)的設(shè)計 9
3.1 控制系統(tǒng)總體方案 9
3.2 電機驅(qū)動芯片的選擇 9
4.運動學(xué)分析 12
4.1 單個輪子動力學(xué)模型 12
4.2 運動學(xué)方程 13
5. 系統(tǒng)的拓展 15
5.1 軟件結(jié)構(gòu) 15
5.2 基于行為的軟件特征 15
5.3 行為選擇 15
5.4 AGV環(huán)境中的行為與選擇機制 16
6. 定位與導(dǎo)航 17
6.1 定位 17
6.2 概率定位 17
6.3 AGV的可信度 18
6.4 坐標(biāo)系 21
6.5 導(dǎo)航功能 21
7. 機械手設(shè)計 25
7.1 機械手腕部設(shè)計 25
7.2 自由度計算 25
8. AGV路徑仿真 28
9. 結(jié)論 30
參 考 文 獻(xiàn) 31
致 謝 32
附錄1:外文譯文 33
附錄2:外文原文 36
自動裝卸AGV設(shè)計
1.緒論
1.1 AGV概述
本畢業(yè)設(shè)計課題來源于第十屆全國3D大賽,命題與高校工程訓(xùn)練教學(xué)內(nèi)容相銜接,體現(xiàn)綜合性工程能力。命題內(nèi)容體現(xiàn)“創(chuàng)新設(shè)計能力、制造工藝能力、實際操作能力和工程管理能力”四個方面的要求?,F(xiàn)代工業(yè)的發(fā)展不僅要求產(chǎn)品高質(zhì)量、高性能,而且為實現(xiàn)可持續(xù)發(fā)展,產(chǎn)品的生產(chǎn)工藝必須高效率、低成本。
根據(jù)美國物流協(xié)會定義,AGV是無人搬運車(Automated Guided Vehicle)的英文縮寫。是指裝備有電磁或光學(xué)等自動導(dǎo)引裝置,能夠沿規(guī)定的導(dǎo)引路徑行駛,具有安全保護(hù)以及各種移載功能的運輸車。
目前AVG應(yīng)用領(lǐng)域主要集中在倉儲業(yè),制造業(yè),港口碼頭及特種行業(yè)。其中工業(yè)領(lǐng)域里的制造業(yè)需要很多內(nèi)部運輸,以及很多不同的物料處理。AGV的自動導(dǎo)引運輸車系統(tǒng)可以滿足這類需求。比如:工具,托盤,成品,半成品,原材料,卷式產(chǎn)品,物料供應(yīng)等的搬運。AGV在制造業(yè)的其他應(yīng)用包括支持高層儲架的托盤檢索,生產(chǎn)區(qū)的物品和零部件的運輸,以及生產(chǎn)區(qū)和存儲區(qū)之間的物品運輸。制造業(yè)每天物流的典型特點是高吞吐量,空間和靈活性很重要。AGV的自動物料處理系統(tǒng)可以很好地滿足此類需求,比如把物品從輸送帶,托盤堆垛機以及天車上轉(zhuǎn)移到倉庫,生產(chǎn)車間,裝配區(qū)和發(fā)貨區(qū)等。
1.2 背景技術(shù)
目前國內(nèi)AGV主要采用的是以日本為代表的簡易型AGV技術(shù),稱為AGC(Automated Guided Cart)該技術(shù)追求的是簡單實用,讓用戶在最短時間內(nèi)收回投資成本,但AGC只用來搬運,并不強調(diào)自動裝卸功能,雖然價格低廉但不適合基礎(chǔ)工業(yè)并不十分完善的我國。
同時當(dāng)下大部分AGV采用電磁或軌道引導(dǎo),路線固定,局限性較大,不適用于柔性化制造系統(tǒng)。
1.3 國內(nèi)外機械能越障小車的發(fā)展概況
根據(jù)美國物流協(xié)會定義,AGV是無人搬運車(Automated Guided Vehicle)的英文縮寫。是指裝備有電磁或光學(xué)等自動導(dǎo)引裝置,能夠沿規(guī)定的導(dǎo)引路徑行駛,具有安全保護(hù)以及各種移載功能的運輸車。
目前AVG應(yīng)用領(lǐng)域主要集中在倉儲業(yè),制造業(yè),港口碼頭及特種行業(yè)。其中工業(yè)領(lǐng)域里的制造業(yè)需要很多內(nèi)部運輸,以及很多不同的物料處理。AGV的自動導(dǎo)引運輸車系統(tǒng)可以滿足這類需求。比如:工具,托盤,成品,半成品,原材料,卷式產(chǎn)品,物料供應(yīng)等的搬運。AGV在制造業(yè)的其他應(yīng)用包括支持高層儲架的托盤檢索,生產(chǎn)區(qū)的
35
自動裝卸AGV設(shè)計
物品和零部件的運輸,以及生產(chǎn)區(qū)和存儲區(qū)之間的物品運輸。制造業(yè)每天物流的典型特點是高吞吐量,空間和靈活性很重要。AGV的自動物料處理系統(tǒng)可以很好地滿足此類需求,比如把物品從輸送帶,托盤堆垛機以及天車上轉(zhuǎn)移到倉庫,生產(chǎn)車間,裝配區(qū)和發(fā)貨區(qū)等。
1.4 設(shè)計內(nèi)容
本設(shè)計在目前AGV的基礎(chǔ)上,創(chuàng)新性的使用機械手聯(lián)動的的裝卸方式,避免了為了滿足各工況需求而覆蓋的各種移載機構(gòu),驅(qū)動模式和導(dǎo)引方式,降低了成本。同時又不同于AGC需要完善的基礎(chǔ)設(shè)施配合,三只靈巧機械手足夠完成裝卸工作,極大地發(fā)揮了AGV本身的自主性和工作容積。搭配四個麥克納姆輪極大地縮小了轉(zhuǎn)向半徑可在更狹小空間內(nèi)作業(yè)。同時仿照無人駕駛汽車運行原理采用激光測距雷達(dá)配接近傳感器能夠滿足各種復(fù)雜路徑的使用要求,自動化程度更高。同時定位精度主要由雷達(dá)的精度決定,便于用戶靈活調(diào)整型號以適應(yīng)場所并控制成本(定位精度為±10mm到±5mm)。
1.5 基本方案
設(shè)計過程中需要完成:各機構(gòu)機械方面選擇、加工工藝方案的選擇和優(yōu)化和加工成本及材料分析選擇等。在此其中,機械加工成本,原材料的選擇等都會對最終性能產(chǎn)生影響,因此,需要多方面思量這些問題,合理選擇,設(shè)計出最優(yōu)的方案。
本設(shè)計為一種新型的AGV如圖1.1所示,采用四個Mecanum輪驅(qū)動的結(jié)構(gòu)形式,通過直流伺服電動機驅(qū)動車輪行駛,當(dāng)兩輪轉(zhuǎn)速不同或轉(zhuǎn)向相反時就可以實現(xiàn)轉(zhuǎn)向。
四輪結(jié)構(gòu)加四套減速器相對來講有較大的負(fù)載能力和較好的平穩(wěn)性,與兩輪驅(qū)動和安裝差速器及轉(zhuǎn)向機構(gòu)的設(shè)計相比雖然成本較高但傳動誤差小,轉(zhuǎn)向靈活,故采用此方案。
圖1.1 AGV三維預(yù)覽圖
2.機械結(jié)構(gòu)設(shè)計
2.1自動裝卸AGV技術(shù)參數(shù)
自動搬運小車的長度
1.3m
自動搬運小車的寬度
1.3m
自動搬運小車的高度
1m
自動搬運小車的重量
160kg
持續(xù)運行時間
8~10h
充電方式
自動/手動
定位精度
±10mm
剎車距離
≤0.1m
負(fù)載
≤500kg
小車轉(zhuǎn)彎半徑
≥0.6m(可原地差動旋轉(zhuǎn))
小車最大速度
≤1.2m/s
行走定位點數(shù)
可行走任意多個設(shè)備位置
抗干擾能力
對路面打滑具有較強抗干擾能力
蓄電池
免維護(hù)充電電池,連續(xù)放電次數(shù)>300次
安全感應(yīng)范圍
≤3mm可調(diào),緊急制動距離<20mm
人機交互
觸屏人機交互,方便設(shè)置參數(shù),設(shè)置站點及報警位置
設(shè)計壽命
>10年
2.2 直流伺服電動機的選擇
直流伺服電機的選擇關(guān)系著控制系統(tǒng)的靜、動態(tài)特性和運動精度,所以在選擇直流伺服電機的時候,主要應(yīng)該參考以下幾點要求:
①調(diào)速范圍廣闊而且平滑。
②機械特性較硬而且動態(tài)/靜態(tài)調(diào)節(jié)特性良好。
③響應(yīng)時間較短,可適用于要求快速啟停的控制場合。
④體積小,重量輕,控制特性成線性。
伺服電動機主要根據(jù)下面三個因素選擇
運行速度:AGV行走的速度為1.2m/s,車輪的轉(zhuǎn)速為
(2.1)
選擇減速比為i=5的減速器
(2.2)
小車自重為P
(2.3)
為方便抓取將小車重心放在整體靠前的位置,負(fù)載的重心后置保證了運行中具有更高的穩(wěn)定性和可操控性,整體重心仍落在車體幾何中心。
小車的載荷為G (2.4)
自動搬運小車的受力分析如圖2.1所示。
圖2.1 車輪受力簡圖
取坐標(biāo)系OXYZ如圖所示,列出平衡方程
由于由于前后車輪相對于y軸呈對稱分布,有
(2.5)
(2.6)
解得
Mecanum輪的受力情況很復(fù)雜,見圖2.2。本小車采用的45°Mecanum輪在旋轉(zhuǎn)時產(chǎn)生的力通過與地面接觸的滾輪作用于地面,使力可以分解為一個垂直于滾輪軸的矢量和一個與軸平行的矢量。垂直于滾輪的力會隨著小滾輪轉(zhuǎn)動產(chǎn)生的動能釋放,而平行于滾柱軸的力將產(chǎn)生一個施加到輪子上的力并且作用到小車上,使小車向前移動。
圖2.2 Mecanum原理,向量分解
由于Mecanum輪不會單獨出現(xiàn),對于這種四輪組合的形式,需要將每一個輪子在45°時產(chǎn)生的力結(jié)合起來以分析小車的運動,左右兩個45°的力矢量可分解為向前力矢量和側(cè)向力矢量,兩個向前力矢量相疊加而兩個側(cè)向矢量(一個向左一個向右)則相互抵消,此處僅分析直線運動,因為前輪所受載荷較大,故僅分析前輪受力狀態(tài),前輪受力狀態(tài)如圖2.3所示(更詳細(xì)的Mecanum輪受力分析見4.1單個輪子動力學(xué)模型)。
圖2.3 前輪受力
滾動摩阻力偶矩應(yīng)該處于零與最大值之間,即
(2.7)
(2.8)
上式中δ為滾動摩阻系數(shù),查閱書中常用材料的滑動摩擦系數(shù)與滾動摩阻系數(shù)一表得到δ=2~10,取δ=6mm。
牽引力F為 (2.9)
(1)電動機軸上所承受的的轉(zhuǎn)矩為
(2.10)
傳遞效率η取0.7,摩擦系數(shù)μ取0.15
(2)電動機軸上的負(fù)荷慣性為
(2.11)
上式中是車輪的質(zhì)量慣性矩,是傳動裝置部件轉(zhuǎn)動慣量
(3)電機的選定
根據(jù)以上計算,在負(fù)載慣性已知情況下可以根據(jù)要求的運動特性分析電機的輸出轉(zhuǎn)矩,選擇直流伺服電動機。
電機型號及參數(shù):MOVING YZ-57BLS120 120W
伺服電機轉(zhuǎn)子慣量
匹配條件為
即0.25<0.729<1 (2.12)
(2.13)
故電機滿足要求。
(4)快移時的加速性能
伺服電機的最大輸出轉(zhuǎn)矩是AGV工作時,電動機運行到最高轉(zhuǎn)速時,輸出到車輪的最大扭轉(zhuǎn)力矩
(2.14)
加速時間 (2.15)
其中機械時間常數(shù)
2.3 驅(qū)動輪系的設(shè)計
驅(qū)動輪系的設(shè)計應(yīng)滿足如下要求:
①尺寸符合AGV的要求。
②結(jié)構(gòu)簡單、合理,拆裝方便。
③強度及剛度符合要求。
④扭矩的有效傳遞。
為了與傳動部件相聯(lián)結(jié),輸出軸一端被做成扁平頭形狀,參考現(xiàn)有參數(shù)選取直徑為φ8的電機軸與直徑為φ12的聯(lián)接部分,故其結(jié)構(gòu)設(shè)計圖2.4所示。
圖2.4 聯(lián)軸器機構(gòu)圖
銷釘直徑d可按剪切強度公式計算,即
(2.16)
選用45鋼作為銷定材料,翻閱書后表格得優(yōu)質(zhì)碳素結(jié)構(gòu)鋼(GB 699-88)45
硬度36~42HRC
銷釘?shù)脑S用切應(yīng)力為
(2.17)
過載限制系數(shù)K查表取K=1.6,T=0.587N·m
(2.18)
根據(jù)上述強度計算,取銷釘直徑d=5mm。
2.4 軸的設(shè)計
由于前輪所受載荷大于后輪,故對前輪進(jìn)行校核,前輪軸結(jié)構(gòu)如圖2.5。
圖2.5 前輪軸結(jié)構(gòu)
(1)求前輪軸上的功率,轉(zhuǎn)速,功率
取傳動裝置的效率,則
(2.19)
(2.20)
(2.21)
(2)初步確定軸的最小直徑
選用45鋼作為軸的材料,經(jīng)過調(diào)質(zhì)處理,取得,于是有
(2.22)
法蘭所處位置的輪軸直徑最小,由于法蘭與軸采用雙頂絲聯(lián)結(jié),故軸的直徑取10mm
該Mecanum輪的輪轂使用鋁合金材料,大輪軸使用45鋼,剛度和強度都比較好,小輪軸使用普通碳鋼,因為整個輪子的最大應(yīng)力處恰好出現(xiàn)在小輪軸上,因此需要更高的強度。小輪使用橡膠材料,摩擦系數(shù)比較大,能給AGV提供較好的抓地力和加速性能。
(3)確定軸上倒角尺寸
取軸端倒角為1×45°。
3.控制系統(tǒng)的設(shè)計
3.1 控制系統(tǒng)總體方案
本系統(tǒng)的核心的控制運算部分采用的是AT89S51單片機。數(shù)字編碼器在電機運轉(zhuǎn)時發(fā)出的脈沖信號,經(jīng)過自行設(shè)計和制作的脈沖鑒向電路,可以得到電機的運轉(zhuǎn)方向[8];來自鑒向電路的正反方向的脈沖信號進(jìn)入到電機專用驅(qū)動模塊,單個模塊可同時驅(qū)動多個電機,調(diào)節(jié)轉(zhuǎn)速時,相應(yīng)的I/O口輸出不同的PWM(Pulse Width Modulation,脈沖寬度調(diào)制)波形,通過H橋開關(guān)放大器,作為執(zhí)行機構(gòu)的速度或者力矩給定,再通過總線與電機控制器連接就可以控制電機的運轉(zhuǎn),使整個AGV自動引導(dǎo)小車能夠完成所設(shè)計的控制任務(wù)[8]。
整個控制系統(tǒng)的組成框圖如圖3.1所示。
圖3.1 系統(tǒng)硬件框圖
3.2 電機驅(qū)動芯片的選擇
伺服驅(qū)動器所提供的最大電流不能小于電機的峰值電流,調(diào)整時的輸入電流不得大于伺服電機的消磁電流。電機和負(fù)載的慣量之和小于驅(qū)動伺服電機所允許的最大慣量。采用PWM功率放大器作為驅(qū)動元件驅(qū)動直流伺服電機。PWM的選擇可以參考以下原則:
開關(guān)頻率應(yīng)能使電機軸產(chǎn)生微小振動,能夠克服靜摩擦,改善運行特性。即:
(3.1)
,K為力矩常數(shù),為PWM電源電壓,L為電感,T為電機靜摩擦力矩。
微小振動的最大角位移應(yīng)小于設(shè)定的位置誤差。即:
(3.2)
其中J為轉(zhuǎn)動慣量,Δ為設(shè)定的位置誤差。
盡量減少電機產(chǎn)生的高頻功率損耗。即應(yīng)使得[8]:
(3.3)
其中為內(nèi)阻。
選用UC3637和H橋放大電路來驅(qū)動伺服電機,由于一般伺服電機電感較小,切換頻率過低會導(dǎo)致交流分量很大并損害功率晶體管功能,因此選擇30KHz的切換頻率。
①單電源或雙電源工作,±2.5~±20V
②限流保護(hù)
③欠電壓封鎖
④溫度補償,2.5V閾值的關(guān)機控制
UC3637的三角波產(chǎn)生電路如圖3.2所示。
圖3.2 恒幅三角波產(chǎn)生電路
三角波參數(shù)的計算:
取PWM定時電路充電電流為0.5MPa,則有
(3.4)
(3.5)
其中,為PWM頻率。由允許電機最大電流決定[8]。
(3.6)
對于圖3.10所示的控制系統(tǒng),要求:
取a=1,計算得
(3.7)
(3.8)
(3.9)
(3.10)
其中是三角波峰值的閾值電壓。
4.運動學(xué)分析
4.1 單個輪子動力學(xué)模型
在電機的選擇部分,車輪被設(shè)定為剛體和未變形的圓盤,并且車輪與地面的相互作用被認(rèn)為是點接觸。實際Mecanum輪上的小輪是由橡膠制成,所以相互作用是面接觸。假設(shè)自動搬運小車的重心不高,因此當(dāng)AGV加速時,由高重心引起的對地壓力的改變被忽略。
基于車輛動力學(xué)理論,當(dāng)AGV加速運動時,驅(qū)動輪與地面的接觸變形產(chǎn)生的切向力是AGV運動的牽引驅(qū)動力。只要車輪和地面間的接觸區(qū)域,即車輪接地印記上承受切向力,就會有不同程度的滑移,所以嚴(yán)格地說,理想的純滾動假設(shè)與實際情況不符[9]。在加速過程中最大限度地減小車輪滑移是AGV運動控制的目標(biāo),其前提是對單個車輪的運動進(jìn)行分析。
當(dāng)車輪在地面上滾動時,所有的相互作用力以及由車輪和接觸區(qū)的地面產(chǎn)生的相應(yīng)變形都伴隨著能量損失,這是滾動阻力的根本原因。為了提高AGV的加速性能[9]所以小輪采用橡膠輪。這種彈性變形引起的彈性遲滯損失形成了阻礙車輪滾動的一種阻力偶,當(dāng)車輪僅受徑向載荷而不滾動時,在地面上的正常反作用力在前后方對稱分布,其合力與法向載荷P重合于法線方向,如圖4.1(a)所示。車輪滾動時,變形前后對應(yīng)點的法線是相同的,但由于彈性遲滯的現(xiàn)象,地面法向反作用力在前部的加載壓縮過程就會大于后部的卸載恢復(fù)過程。在這種情況下,地面法向反作用力前后的分布并不對稱,使其合力相對于法線向前移了一個距離e[9],如圖4.1(b)。
圖4.1 輪子受力情況
輪子靜止時受力情況;(b)輪子滾動時受力情況
如果將法向反作用力向后平移至通過輪子中心,與其垂線重合,那么車輪在地面上滾動時的應(yīng)激狀態(tài)如圖4.2所示,一個額外的力偶矩出現(xiàn)阻礙車輪的滾動,被稱為滾動阻力偶矩[9]。由圖4.2可知,為了使車輪在地面上以恒定的速度滾動,有必要增加一個驅(qū)動力矩或推力到軸上,從而克服上述滾動阻力矩。相關(guān)的數(shù)學(xué)關(guān)系如下:
(4.1)
(4.2)
(4.3)
(4.4)
(4.5)
上式中,是滾動阻力系數(shù),從上面的公式可以看出,滾動阻力系數(shù)是指單位車重所需之推力。因此,車輪的徑向垂直載荷和滾動阻力系數(shù)的乘積就是車輪的滾動阻力,如式(4.5)所示。在車輪上驅(qū)動AGV移動的真正力量是地面對車輪的切向反應(yīng)力。
圖4.2 滾動阻力偶的形成
4.2 運動學(xué)方程
(1)基于Mecanum的自動搬運小車的移動方向(線速度沿小車中軸方向,垂直于中軸方向)和旋轉(zhuǎn)速度的矩陣方程為
(4.1)
其中等為每個輪的轉(zhuǎn)速(r/s),r為輪子半徑,d為左右輪之間距離,e為前后輪之間距離,為小車的向前速度,為小車的側(cè)向速度,ω為小車的旋轉(zhuǎn)速度。
(2)基于Mecanum的自動搬運小車給定的的期望線速度和角速度與每個輪子速度的矩陣方程為
(4.2)
其中為期望線速度和角速度。
5. 系統(tǒng)的拓展
上面的控制方法需要構(gòu)建一個世界模型,然后計劃行動,最后在一個真實的環(huán)境中執(zhí)行這些計劃。然而,構(gòu)建世界模型和計劃行動需要花費大量的時間,這將對AGV的性能產(chǎn)生重大影響。此外,規(guī)劃模型與實際環(huán)境之間的偏差會導(dǎo)致AGV運動無法達(dá)到預(yù)期的效果。
5.1 軟件結(jié)構(gòu)
目前AGV使用的軟件模型即標(biāo)準(zhǔn)模型(層次模型),是一種從上而下執(zhí)行的可預(yù)測軟件結(jié)構(gòu)。傳感器獲得數(shù)據(jù)預(yù)處理的兩層,然后交付給高的“智能”層做出行動的決定,實際駕駛(如導(dǎo)航和底層驅(qū)動函數(shù))交由低級層執(zhí)行,最低層為小車的接口,將駕駛指令發(fā)送給AGV執(zhí)行器。
為了解決經(jīng)典模型演算時間長,動作完成度不夠等問題,使用一種基于行為的模型,不編寫整段的代碼,而是將每一個AGV的功能封裝成一個個小而獨立的模塊,即一個“行為”。所有的行為都是并行執(zhí)行,所以不需要設(shè)置優(yōu)先級。此種設(shè)計易于擴(kuò)展,如增加一個新的傳感器或向AGV程序里增加一個新的行為特征。
5.2 基于行為的軟件特征
(1)感應(yīng)與動作緊密耦合
基于行為的AGV的動作是對刺激的反應(yīng)而不是依賴于有意識的規(guī)劃。避免考慮計劃,用小的計算負(fù)載(模塊)來替換它,以實現(xiàn)從輸入到動作的映射,這有利于快速響應(yīng)。
(2)避開知識的符號表示
不需要構(gòu)造一個內(nèi)部模型用來處理環(huán)境信息與規(guī)劃任務(wù)。AGV從觀測中直接產(chǎn)生未來的行為,而非試圖產(chǎn)生一個可內(nèi)部操作的世界抽象并以此作為規(guī)劃未來行動的基礎(chǔ)。
(3)分解成具有因果意義的單元
(4)并發(fā)關(guān)聯(lián)行的時變激活等級調(diào)整
5.3 行為選擇
由于在軟件系統(tǒng)中有一定數(shù)量的行為作為并行進(jìn)程運行,每個行為都可以作為讀取所有的傳感器(讀動作),但只有一個行為可獲得AGV執(zhí)行器或者行駛機構(gòu)的控制權(quán)(寫動作)。因此為了達(dá)到預(yù)期目的需要一個全局控制器在恰當(dāng)時機來協(xié)助行為選擇。
如果采用固定優(yōu)先級行為,這樣一種僵硬的系統(tǒng)使其能力受到了極大地限制,并難以應(yīng)付日益復(fù)雜的系統(tǒng)。期望的目標(biāo)是能設(shè)計并制作一個采用自適應(yīng)控制器的基于隱藏在系統(tǒng)內(nèi)部的“智能”,在任何特定的時間根據(jù)感知和狀態(tài)輸入決定激活哪一個行為。反應(yīng)和規(guī)劃(自適應(yīng)控制器)組件的結(jié)合形成了一個混合系統(tǒng),其結(jié)合了思考和反應(yīng)結(jié)構(gòu)的要素,在傳感器和電機輸出間有多個混合方案來協(xié)調(diào)完成任務(wù)。系統(tǒng)只需要從有利于完成任務(wù)的標(biāo)準(zhǔn)定義進(jìn)行學(xué)習(xí)以完成任務(wù)。這將設(shè)計系統(tǒng)時的主要工作,從描述系統(tǒng)本身轉(zhuǎn)變成定義一個正常工作的輸出系統(tǒng)上來。介于定義任務(wù)告竣的評價標(biāo)準(zhǔn)要比完整的系統(tǒng)描述簡單,這將極大地減少系統(tǒng)設(shè)計的工作量。
5.4 AGV環(huán)境中的行為與選擇機制
神經(jīng)網(wǎng)絡(luò)用于接收所有來自傳感器(包括預(yù)處理過的高層傳感器數(shù)據(jù))、一個時鐘以及每一個行為狀態(tài)的輸出,并生成輸出以選擇當(dāng)前活動的行為,然后生成一個動作。這種網(wǎng)絡(luò)結(jié)構(gòu)是通過遺傳算法的進(jìn)化而來的,它被用來優(yōu)化描述任務(wù)評估標(biāo)準(zhǔn)的適應(yīng)度函數(shù),如圖5.1所示。使用神經(jīng)網(wǎng)絡(luò)路徑規(guī)劃可以把環(huán)境障礙等作為神經(jīng)網(wǎng)絡(luò)的輸入層信息,通過神經(jīng)網(wǎng)絡(luò)并行處理,神經(jīng)網(wǎng)絡(luò)的輸出層輸出所需的方向和速度,引導(dǎo)機器人避免障礙行駛,直到到達(dá)目的地。該方法具有處理效率高、學(xué)習(xí)能力強[10]、收斂性好等特點。
圖5.1 AGV環(huán)境中的行為及選擇機制
6. 定位與導(dǎo)航
我們需要獲知當(dāng)前位置,并且具有制定到達(dá)目的地的規(guī)劃能力,準(zhǔn)確的定位是建立精確全局地圖的先決條件,也是AGV實現(xiàn)正確路徑規(guī)劃的保證?;谝曈X的自我定位過程是對視覺傳感器捕捉到的環(huán)境特征進(jìn)行提取和分析的過程,并根據(jù)具體的標(biāo)準(zhǔn)建立觀察與環(huán)境數(shù)據(jù)庫的對應(yīng)關(guān)系,從而確定AGV自身的姿態(tài)[10],如圖6.1所示。
圖6.1 基于視覺的AGV自定位
6.1 定位
由于行駛環(huán)境多變,所以本設(shè)計并沒有使用全局傳感器,而且它也限制了AGV的自主能力;作為替換選擇使用本體傳感系統(tǒng)。本設(shè)計將激光雷達(dá)安裝在AGV上,這樣就得到了使用本體傳感器的AGV。
6.2 概率定位
所有的AGV移動和傳感器測量都會受到一定程度的噪聲干擾。概率定位的目的是在以前所有數(shù)據(jù)和其他相關(guān)分布函數(shù)的基礎(chǔ)上,能夠最好地估計AGV當(dāng)前的狀態(tài)。由于其固有的不確定性,最終的估計將是一個概率分布。
假定AGV從x=0,y=0處開始沿直線(如沿x軸)行駛,執(zhí)行移動距離d的指令,d從板載(絕對)定位系統(tǒng)(GPS接收器)接受傳感器數(shù)據(jù)s。數(shù)值d和(用當(dāng)前的位置測量值減去在執(zhí)行行駛命令前的位置測量值),就可能會偏離真實位置。
必須通過大量的實驗來測量機器人從任意的起始位置的行駛精度,然后由一個PMF(概率密度函數(shù))表示出來,例如:
(6.1)
需要注意的是,此處只能加上或減去一個單位(如cm)來變更AGV的真實位置。在可以表示為一個PMF之前,必須以類似的方式通過測量得到AGV位置傳感器的精度。
(6.2)
假設(shè)AGV執(zhí)行的行駛命令并且完成后,本體傳感器報告其位置為。實際位置x的概率如下,其中n作為歸一化因子:
(6.3)
(6.4)
(6.5)
由于PMF對于所有偏差值大于1(加或減)的概率為0,因此AGV執(zhí)行行駛距離為的命令后,位置只有可能是位置、位置、位置。因此,這三個概率加起來應(yīng)當(dāng)?shù)扔?,我們可以根據(jù)這個事實來確定歸一化因子n:
(6.6)
6.3 AGV的可信度
根據(jù)5.1.1的計算可以求出三個位置的概率,它反映了AGV的可信度
因此,概率最大的位置就是AGV最可能出現(xiàn)的位置,但它仍會記住這個階段所有的概率。
當(dāng)AGV執(zhí)行第二個行駛命令,假設(shè)這一次使,但執(zhí)行指令后其傳感器仍然報告。AGV將根據(jù)條件概率重新計算其位置的可信度,用x表示AGV行駛后的真實位置,用表示行駛前的位置。
(6.7)
(6.8)
(6.9)
由于AGV的真實位置與傳感器的讀數(shù)偏差只能為1,因此只能計算出
的情形來。之后,將概率歸一化
(6.10)
這些最終的概率是合理的,因為AGV的傳感器比其推算結(jié)果更加準(zhǔn)確。另外,通常AGV在的位置的可能性很小,而這正是它在可信度上的表現(xiàn)。
這個方法最大的問題是所工作的空間必須是離散的,即AGV的位置只能離散的表示。可以通過將離散值設(shè)置為行駛命令和傳感器的最小分辨值。在本設(shè)計中,我們期望的行駛和傳感器精度不能超過10mm,可以通過讓所有的距離以10mm遞增。但同時,也會產(chǎn)生大量的測量值和大量的使用個別概率的離散距離值。
為了解決這個問題,可以使用一種稱為粒子濾波器的技術(shù),它允許使用非離散的配置空間。它可以將AGV的位置的可信度表示為為N個粒子的集合M,每個粒子包含有一個AGV的配置x與權(quán)重。
行駛后,AGV借助第一次采樣得到的PDF(probability density function,概率密度函數(shù))更新第j個粒子的構(gòu)型,典型的是高斯分布。在此之后,AGV為第j個粒子賦予一個新的權(quán)重。然后,權(quán)重歸一化使得權(quán)重總和為1。最后,重新采樣并保留最有可能的粒子。標(biāo)準(zhǔn)的重新采樣算法如下:
M={}
R=rand(0,1/N)
c=w[0]
i=0
for j=0 to N-1 do
u=R+j/N
while u>c do
i=i+1
c=c+w[i]
end while
M=M+{x{i},1/N}/*add particle to set*/
end for
6.4 坐標(biāo)系
與一般AGV不同,本設(shè)計具有相當(dāng)?shù)淖杂赡芰?,并沒有采用固定路線引導(dǎo),故首先,在未知環(huán)境中建立一個地圖或者在已知環(huán)境中規(guī)劃路徑是很重要的,而這需要在全局或者世界坐標(biāo)下進(jìn)行定義。
將AGV的本體坐標(biāo)系轉(zhuǎn)化成全局坐標(biāo)是一個二維坐標(biāo)轉(zhuǎn)換,為了匹配兩個坐標(biāo)系,需要一個平移和一個旋轉(zhuǎn)變換。
設(shè)本AGV具有全局位置坐標(biāo)和全局方向。其本體坐標(biāo)是,然后按照如下的公式可以計算其全局坐標(biāo):
(6.11)
6.5 導(dǎo)航功能
6.5.1 感知
感知所處環(huán)境是AGV應(yīng)用中最重要的部分之一,本設(shè)計采用了以下傳感器:
(1)軸編碼器
電機內(nèi)置的軸編碼器生成最為基本的反饋。此數(shù)據(jù)有三個用途:
①PI控制器使每個車輪保持恒定的轉(zhuǎn)速。
②PI控制器用以保持期望的路線(如直線)。
③航位推算用以更新AGV的位置和方向。
用控制器專用的計時處理器單元(TPU)在后臺處理軸編碼器的反饋信號。
(2)紅外測距傳感器
AGV配有三個紅外測距傳感器,可以測量前、左、右(PSD)的距離。這些數(shù)據(jù)可用于:
①避免與障礙物相撞。
②在未知環(huán)境中導(dǎo)航,創(chuàng)建地圖。
③在已知環(huán)境中更新在其內(nèi)的位置。
(3)羅盤模塊
在AGV中,使用航位推算法進(jìn)行位置和方向估計的最大問題是:隨著時間的推移,除非在特定的參考點上進(jìn)行更新,否則估計精度會不斷變差。邊界墻配合距離傳感器可以作為AGV位置的一個參考點;但是如果沒有額外的傳感器,想要更新機器人的方向是十分困難的。
在這些情況下,使用能夠感知地球磁場的羅盤模塊就是很有必要的了。
(4)激光雷達(dá)
(5)接近開關(guān)
6.5.2 圖像處理
視覺是本設(shè)計AGV的一項重要能力,通過不斷分析板載的激光雷達(dá)的視覺輸入,來檢測工作環(huán)境中的物體,使用基于形狀的物體檢測。
基于形狀的地圖生成算法,結(jié)合了構(gòu)形空間(configuration space)(給定環(huán)境維數(shù)和所有障礙墻的坐標(biāo),如線段表示)和柵格法(occupancy grid)(按照一定的分辨率使用單個像素來描述環(huán)境,每個像素要么代表自由空間(白色像素),要么是一個障礙(黑色像素))兩種方法,并加入了距離圖作為輸入。距離圖是對環(huán)境的一個更高層級的描述。雖然不包含完整的環(huán)境信息,但它可以實現(xiàn)有效的的初始路徑規(guī)劃。
距離圖中需要包含環(huán)境中部分標(biāo)識的節(jié)點以及它們之間的相對距離。而上述兩個基本環(huán)境格式都不能直接應(yīng)用距離圖,因此需要自動獲得距離圖的算法。
如果給定的環(huán)境是構(gòu)型空間格式,通過將所需分辨率直接“打印”在畫布上,可以很容易的轉(zhuǎn)化成柵格。在平面柵格地圖的基礎(chǔ)上,將其高度方向上離散化,實現(xiàn)3D柵格地圖。在2D柵格地圖的基礎(chǔ)上,將環(huán)境的最大高度或平均高度保存在每個網(wǎng)格中。這種做法不僅可以達(dá)到立體地圖的性能效果,同時還可以極大地減少儲存在地圖中的數(shù)據(jù)量。
6.5.3 軌跡規(guī)劃
一旦確定了工件的位置,AGV就要靠近工件--移動到任意一個位置取下工件,并將工件轉(zhuǎn)移到下一個位置。因此,有必要進(jìn)行軌跡規(guī)劃。通過航位推測法,AGV可以知道它的位姿和方向;通過局部搜索行為,或者與控制室的通信可以確定工件的位置。
首先根據(jù)現(xiàn)有環(huán)境信息,AGV通過路徑規(guī)劃得到一條出發(fā)點與目標(biāo)點之間的合理路徑;AGV沿路徑前進(jìn),并根據(jù)傳感器在前進(jìn)過程中的實時反饋更新環(huán)境信息;如果AGV達(dá)到目標(biāo)點,導(dǎo)航將結(jié)束,否則,將判斷AGV是否需要根據(jù)更新的環(huán)境信息重新規(guī)劃路徑,直到到達(dá)目標(biāo)點。路徑規(guī)劃方法得到的路徑是空間中一系列連續(xù)的線段。通過在搜索過程中優(yōu)化啟發(fā)式函數(shù)的設(shè)計,可以提高在環(huán)境的路徑規(guī)劃效率。該路徑由一系列網(wǎng)格組成,分別是需要轉(zhuǎn)向的中繼點與中繼點之間的連線。在AGV從所處位置到下一個中繼點的移動過程中,傳感器系統(tǒng)不斷的實時更新環(huán)境信息,并對可通過性進(jìn)行快速分析。如果在前進(jìn)的方向上沒有障礙,它將繼續(xù)移動到下一個路徑點。如果檢測到前方路徑無法通過,立刻啟動自主規(guī)避障礙功能,重新規(guī)劃路徑(如添加新的中繼點)繞過障礙物。如果避障失敗,則根據(jù)更新后的環(huán)境信息,回顧路徑規(guī)劃函數(shù),獲得當(dāng)前位置的新路徑。
6.5.4 直線和圓弧行駛
軌跡的起始位置和方向由AGV的當(dāng)前位置決定,終點就是工件的位置,并且最終的方向是沿著工件與下一存放地點的連線方向。對于給定且有方向的起點終點條件下,生成光滑路徑的一個快捷方法是埃爾米特樣條曲線(Hermite Spines)。然而,為了將工件搬到下一指定位置,AGV必須移動到工件的附近,通過使用事件區(qū)分的方式在軌跡上增加“中繼點”。這些點將引導(dǎo)AGV移動到工件的附近,使它不致離工件太近,同時保持移動曲線的平滑。
在該算法中,直接移動意味著AGV接近工件的路徑中沒有中繼點。如果這樣的軌跡是不可行的(例如AGV與工件間有障礙物),算法會插入一個中繼點以避開障礙物。這使得AGV通過特定路徑后才能將工件搬到下一指定位置。
6.5.5 軟件系統(tǒng)框架
AGV自動導(dǎo)航功能的軟件系統(tǒng)由路徑規(guī)劃模塊、信息采集模塊、自主定位模塊、自主避障模塊、地圖創(chuàng)建模塊、人機界面模塊等部分組成,如圖6.2所示。
圖6.2 AGV自主導(dǎo)航功能軟件系統(tǒng)
如果沒有指定的全局坐標(biāo)系的定義,全局坐標(biāo)系將在導(dǎo)航任務(wù)開始時以AGV的姿態(tài)作為原點初始化。AGV的導(dǎo)航是在兩層結(jié)構(gòu)中實現(xiàn)的。首先,用戶通過人機交互界面設(shè)置導(dǎo)航任務(wù)的目標(biāo)點,然后根據(jù)傳感器實時采集的環(huán)境信息規(guī)劃路徑,由路徑規(guī)劃函數(shù)提供當(dāng)前位置與目標(biāo)點之間的合理路徑,由此得到一系列離散的中繼點,并將其發(fā)送到自動避障函數(shù)。在移動到路徑點的過程中,AGV可以依靠自動避障函數(shù)快速的分辨與識別預(yù)設(shè)路徑上的障礙物,并在控制軟件的控制下繞過障礙物。在避障過程中,AGV采集的環(huán)境障礙物信息是由初始創(chuàng)建的地圖與可通過性分析功能提供的。
6.5.6 地圖創(chuàng)建
地圖創(chuàng)建過程如圖6.3所示。
圖6.3 地圖創(chuàng)建
通過視覺傳感器的標(biāo)定結(jié)果,恢復(fù)了視覺采集得到的環(huán)境圖像,在俯視圖線性插值恢復(fù)后,根據(jù)均值偏移算法的圖像分割結(jié)果建立了二維柵格圖。在每個平面網(wǎng)格記錄高度上形成一個離散表示的2.5網(wǎng)絡(luò)圖。
通過圖像分割技術(shù)恢復(fù)立體視覺成像圖以后,一系列離散點用以描述環(huán)境表面輪廓,構(gòu)成的點云描述目標(biāo)地形三維輪廓,點的坐標(biāo)描述了點相對于視覺傳感器的位置。由于立體視覺系統(tǒng)獲得的三維點信息基于攝像機坐標(biāo)系,因此在建立三維地圖過程中, 有必要首先將立體視覺傳感器獲得的三維點云描述的環(huán)境從視覺傳感器坐標(biāo)系(CCS)轉(zhuǎn)化到機器人坐標(biāo)系(RCS),形成局部環(huán)境描述。然后,利用AGV的自主定位信息,根據(jù)AGV的位姿將局部環(huán)境描述轉(zhuǎn)化為世界坐標(biāo)系(WCS),從而創(chuàng)建一個全局環(huán)境圖[10]。
7. 機械手設(shè)計
7.1 機械手腕部設(shè)計
腕部存在兩類裝配偏差:零件與孔不對中時有移動偏差,零件與孔不平行時有轉(zhuǎn)動偏差。為了避免該偏差,采用如圖所示遠(yuǎn)軸心柔性配合裝置如圖7.1可以借助柱銷插入孔內(nèi)所產(chǎn)生的摩擦力,來轉(zhuǎn)動或移動柱銷以對準(zhǔn)孔眼。該裝置存在兩套連桿機構(gòu),每套可縮小一類偏差。本作品采用的是其商品化的結(jié)構(gòu),兩類機構(gòu)套裝在一起形成了一個堅固且靈活的構(gòu)造。
圖7.1 遠(yuǎn)軸心柔性配合裝置
7.2 自由度計算
首先確定指數(shù)和自由度,對于手和物體組成的系統(tǒng),其自由度可由下面公式計算:
(7.1)
式中 :第i個關(guān)節(jié)的自由度,這里設(shè)為1;
:第j個接觸點允許的自由度,=1~5;
L:系統(tǒng)中獨立的回路數(shù)。
當(dāng)手指關(guān)節(jié)固定時,由式(1-1)可以得到:
(7.2)
>0意味著物體在手指約束下仍有一定程度的自由,所以它可以在外力的干擾下移動,這表明靈巧的機械手無法穩(wěn)定地固定工件。自由度≤0意味著工件受到機械手約束后,失去了所有的自由度,因此該機械手具備了穩(wěn)定抓持物體的必要條件。
上述分析表明只有那些滿足(M≥6和≤0)的機構(gòu)才擁有靈巧手的特點,所以設(shè)計的目標(biāo)是找出滿足這個條件的機構(gòu)。
首先,考慮手指的數(shù)量,為了便于分析情況,考慮手指與物體接觸的簡單情況。假設(shè)手指和物體都是剛體,當(dāng)只有兩個手指時,接觸約束不能限制接觸點連接線附近的運動,物體可能在外力的干擾下移動。所以,考慮到多數(shù)情況,靈巧手至少需要三根手指來實現(xiàn)固定工件的功能。具體到每個手指上需要的自由度,假設(shè)每個機械手有三根手指,每個手指有三個旋轉(zhuǎn)關(guān)節(jié)(三個伺服電機帶動)。在這些條件下,可以確定:
(7.3)
則 M=6,=﹣3
此計算結(jié)果表明,當(dāng)手指在指端接觸物體,手指運動可以使物體產(chǎn)生任意運動。當(dāng)手指固定時,可以穩(wěn)定的握住物體。不改變接觸約束條件,即不改變的情況下,如果關(guān)節(jié)數(shù)量減少,就會導(dǎo)致M<6。因此,要實現(xiàn)穩(wěn)定抓取的功能,至少需要有9個自由度。
根據(jù)以上的計算結(jié)果,列舉所有可能的接觸狀態(tài),再利用Salisbury對靈巧手提出的兩個基本條件進(jìn)行討論:
①當(dāng)手指關(guān)節(jié)運動時,能夠使物體產(chǎn)生任意運動;
②當(dāng)手指關(guān)節(jié)固定時,能夠完全限制物體的運動。
最終的設(shè)計方案是三根手指,每根手指有三個關(guān)節(jié),總共九個自由度。同時考慮到工作容積和夾緊物體的大小等因素,三根手指分別安裝在車身的上方與左右側(cè),這不僅增加了工作容積,也避免了手指集中,重心偏高導(dǎo)致的不穩(wěn)定現(xiàn)象。
7.3 機械手結(jié)構(gòu)
機械手由底座,回轉(zhuǎn)臺,連桿,大臂,小臂,直流電機手爪等總共13個部件組成,工作原理與工業(yè)機械手類似。
底座起連接及支撐回轉(zhuǎn)臺的作用,采用螺栓與車殼連接,回轉(zhuǎn)臺傳遞扭矩帶動大臂運動由直流電機提供動力,桿起連接小臂和大臂的作用,傳遞動力并帶動小臂相對于大臂擺動,手爪負(fù)責(zé)裝夾工件。
圖7.2 機械手工程圖
機械手明細(xì)表
零件號
零件名
材質(zhì)
數(shù)量
1
底座
HT30
1
2
回轉(zhuǎn)臺
HT40
1
3
電機
3
4
連桿配件
2024
1
5
連桿
2024
1
6
大臂配件
HT33
1
7
大臂
2024
1
8
小臂
2024
1
9
小臂配件
HT20
1
10
機械手腕部
HT33
1
11
手爪
QT450-10
1
12
底座聯(lián)結(jié)件
YG6
1
在機械手末端,安裝有觸覺,壓覺,滑覺,力覺傳感器用來輔助實時監(jiān)測和修正動作,以保證更好的夾持工件。
8. AGV路徑仿真
假設(shè)現(xiàn)在有一金屬鍛造工廠,內(nèi)部有8個不同的作業(yè)區(qū)域,分布在三個車間內(nèi)。8個作業(yè)區(qū)域間有運輸網(wǎng)絡(luò),每條運輸線路為圖8.1中的邊,其中全自動水箱裝配機與鍛壓成型機之間有傳送帶連接,所以兩個區(qū)域之間不需要額外的運輸路線,邊上的權(quán)數(shù)表示通過該運輸路線所需的時間(數(shù)值僅表示相互的比例,不代表實際時間)。設(shè)現(xiàn)處在任一工作區(qū)域,那么AGV需要考慮的是從該工作區(qū)域到其他各工作區(qū)域,應(yīng)該選擇什么運動路徑才能使所需的時間最少。
解:這是一個無向網(wǎng)絡(luò),根據(jù)所面臨的情況是要求一條從某區(qū)域到其他各區(qū)域的最短路徑,求解如下:
function[D,path,min1,path1]=floyd(a,start,terminal)
D=a;n=size(D,1);path=zeros(n,n);
for i=1:n
for j=i:n
if D(i,j)~=inf
path(i,j)=j;
end,end,end
for k=1:n
for i=1:n
for j=1:n
if D(i,k)+D(k,j)
收藏