陳釗慶,范祥祥
(1.湖州師范學院 信息工程學院,浙江 湖州 313000;2.杭州電子科技大學 自動化學院,浙江 杭州 310018)
隨著人們生活質量的提高,網購已融入人們的日常生活.2019年前5個月的數據統計顯示,我國網上零售額達3.86萬億元,在社會消費品零售總額中的占比超1/5,大量的配送貨物使得配送中心的貨物分揀任務量龐大[1],人工操作已無法滿足大規模的分揀需求,自動分揀勢在必行.目前,京東等大型網商已大規模普及循跡車自動分揀,其中最關鍵的就是循跡車的設計實現.
循跡車通過軌道在不同工位之間進行貨物轉換,以減少分揀過程中的人工作業.當工位需要做出改變時,循跡車只要改變循跡線路即可.本文以自主循跡車為研究對象,通過分析設計以實現循跡車自主通過直道、彎道、十字道等復雜路線,且能自行躲避道路上的掉落物,并在循跡軌道磨損消失后通過備用方案進行循跡,以避免系統癱瘓.該設計可以提升整個分揀流程的效率和可靠性.
本設計的系統結構如圖1所示.利用灰度攝像頭對循跡軌道圖像進行分析,提取軌道中線;通過紅外測距模塊進行測距,以避開掉落在軌道上的貨物;通過電感諧振獲取軌道電磁信號,當碰到軌道磨損較大無法使用攝像頭分析時,自動切換為電磁信號循跡;由編碼器獲取循跡車實時速度,并采用PID控制算法控制速度,以提高系統的穩定性.

圖1 系統結構框圖Fig.1 Diagram of system structure
系統整體硬件設計主要從系統的穩定性、可靠性、高效性和成本等方面考慮,采用LPC54606J512單片機作為主控芯片(圖2).此單片機原生主頻可達180 MHz,其運算速度等多種性能均優于傳統的STC89C52、STM32等系列單片機,且價格相對更低[2].

圖2 系統主控芯片電路原理圖Fig.2 Schematic diagram of master chip in the system
圖3為電機驅動模塊與編碼器模塊原理圖,電機驅動采用全橋驅動.專門設計的柵極電路可以增加MOSFET的開關速度,從而提升PWM控制的調制頻率,使電機發揮出更強的動力.專用柵極驅動芯片具有防同臂導通、硬件死區、欠電壓保護等功能,可以提升電路工作的穩定性和可靠性[3].編碼器選用512線編碼器,利用官方提供的程序庫中的正交解碼功能實現速度與轉向方向檢測.

圖3 電機驅動模塊與編碼器模塊電路Fig.3 Schematic diagram of motor drive and encoder module
圖4為循跡與避障模塊原理圖.電感信號的放大選擇OPA189芯片,以構建反向放大器.在運放輸出部分,采用檢波電路將輸出的交流信號轉化為直流信號,增加二階濾波,以提升輸出電壓信號的穩定性.攝像頭采用逐飛科技的總鉆風,以更好地獲取動態圖像,即使在較快的車速下,也可以呈現一幅高品質圖像.避障模塊選用紅外測距模塊,傳感器輸出電壓與距離呈線性關系,獲取到的電壓值通過公式計算即可得到與探測物體的距離.

圖4 循跡與避障模塊電路Fig.4 Schematic diagram of tracking and obstacle avoidance module
圖5為電源管理模塊原理圖.由于不同模塊需要的電壓不同,且整車僅有一個電池輸入的7.2 V電壓,故需通過對7.2 V進行升降壓變換來適應不同模塊的電壓需要.采用LM2940芯片產生的5 V電壓給測距模塊供電,LM2941芯片產生的5.5 V電壓給舵機供電,MC34063和B1212S-1W芯片產生的±12 V電壓給運放供電,AMS117-3.3芯片產生的3.3 V電壓給MCU攝像頭供電.為防止電源輸入的紋波波動對攝像頭模塊造成影響,將MCU與攝像頭模塊分開供電[4].

圖5 電源管理模塊電路Fig.5 Schematic diagram of power management module
主程序流程如圖6(a)所示.系統初始化后,首先分析圖像,將獲取的圖像經過二值化處理,通過判斷前方黑色像素點的個數,以及通過紅外測距模塊獲取的距離綜合判斷前方軌道是否存在掉落貨物,若存在則執行避障子程序.然后判斷軌道清晰度,同樣通過黑色像素點個數及紅外測距模塊綜合判斷,若軌道磨損嚴重,獲取的軌道信息有限,則采集電感電壓數據,使用電壓信號循跡.若以上都不滿足,說明軌道狀況良好,則可運用邊緣二值化進一步處理圖像,獲取循跡車此時所處的位置與軌道中線所偏離的程度,通過PID控制算法來調節車的位置[5],使其在軌道上快速地運送貨物.

圖6 主程序流程圖(a)和圖像處理子程序流程圖(b)Fig.6 Program flow diagram of the system(a) and image process(b)
在電感電壓采集子程序中,由于電感采集回來的值會受到干擾,為得到理想數據,需要對采集的數據進行濾波及歸一化處理.濾波采用平均濾波、中位值濾波和限幅濾波,以克服由于偶然因素造成的干擾,減少電感值波動的干擾[6].利用歸一化算法將電感值歸一化至1~100之間,使電感波動范圍變小.
對避障子程序,首先給舵機PWM信號,使其駛出軌道;當紅外測距檢測到前方大于50 cm時,代表已偏離軌道,隨后再次給舵機PWM信號,使其回到軌道;最后判斷圖像中白色像素點的個數,當圖像中間行的白色像素點個數大于10個時,則表示回到軌道,隨后結束避障子程序.
圖像處理子程序如圖6(b)所示.系統采用灰度攝像頭,雖然攝像頭會產生梯形失真,但在實際過程中對圖像影響甚微,故未進行圖像校正.程序上采用隔列處理法,即僅處理所獲取的60×180分辨率圖像中的60×90個像素點,以減少單片機的運算壓力[7].為搜索軌道的邊緣,首先使用迭代閾值法獲取閾值,隨后根據閾值與像素點間的灰度差值進行綜合判斷,使獲取的邊緣更加準確,以抑制圖像噪聲.由于小車近處的圖像穩定,遠處的圖像略有失真,故使用由近及遠的方法來處理圖像,提取最近3行的黑白跳變點確定近處道路的邊緣.由于軌道的連續性,因此可以根據上一行的邊沿位置確定下一行的邊沿點.全部獲取完成后,根據邊沿點計算出軌道中線位置.由于軌道元素復雜,僅通過邊沿獲取的中線可能擬合程度較差,尤其在彎道處,易存在單邊邊沿丟失的情況,基于此,可采用增加矯正數組的形式來修正曲線.當判斷得出單邊丟邊沿線情況后,可不再采用中點(左邊界+右邊界)/2獲取,而采用對未丟邊沿線的一邊增加或減去矯正數組來獲取.此時中線的線性大幅增加,總體變化平緩,PID算法作用更加有效,小車運行更加穩定[8].獲取的圖像信息及擬合中線如圖7所示.

圖7 軌道圖像處理效果圖Fig.7 Picture of the track image processing
循跡車的整體設計效果如圖8所示.此循跡車將灰度攝像頭傳感器和紅外傳感器放置在車前,電感放置在碳素桿上并固定.車中部由電池及主控電路板組成.在后方,車的編碼器通過齒輪傳遞連接至電機,以獲取電機轉速.所設計的電機驅動板可給電機提供強大的動力.

圖8 循跡車實物圖Fig.8 Picture of the tracking car
如圖9所示,系統的運行共分3種情況:(a)為軌道獲取正常,小車在軌道上正常行駛;(b)為當前方軌道出現掉落貨物時,MCU控制舵機轉角使小車避開貨物;(c)為當軌道前方圖像特征不夠清楚時,小車降速并使用電感循跡通過磨損路段.經過多次重復實驗,小車的平均車速可達2.4 m/s,可以提前50 cm檢測到障礙物,并立即轉向通過障礙物,所花費的時間約為2 s.

圖9 循跡車運行效果圖Fig.9 Running effect pictures of the tracking car
本文根據未來智能化的發展,采用LPC系列單片機為主控,通過攝像頭、電感電磁感應的方式循跡,并采用紅外測距模塊測得距離并避障,采用PID控制算法來調節車速和方向,以實現多因素耦合循跡的循跡車系統.該循跡車可代替人工分揀貨物,大大提升分揀效率.隨著快遞行業的飛速發展,此產品的未來經濟效益非常可觀.