李敏,郭彥蕊
(1.湖南瀚能科技有限公司,湖南長沙,410221;2.長沙碩博電子科技股份有限公司,湖南長沙,410221)
對于大型貨物堆疊類的倉庫中,垛位上堆疊的貨物規(guī)格種類繁多,由于缺乏智能化的監(jiān)控手段,無法獲取貨物放置的位置信息,庫管員通常需要在入庫和出庫環(huán)節(jié)去垛位現(xiàn)場查看確認貨物所在位置才能保證庫存數(shù)據(jù)的準(zhǔn)確性。這種信息化程度偏低的管理方式,不僅存在著人車碰撞、紙包傾倒的安全隱患,而且容易導(dǎo)致倉儲運行效率低、人力成本和運行成本高、倉儲數(shù)據(jù)準(zhǔn)確度低、盤點移庫作業(yè)耗時耗力[1]等問題。針對這些情況,本文提出了一種基于AUTBUS 通訊的傳感器數(shù)據(jù)采集系統(tǒng),通過獲取安裝在貨物位置上方的傳感器距離數(shù)據(jù),實現(xiàn)貨物庫存位置的自動精確定位,省去了人工核查貨物環(huán)節(jié),避免了人車碰撞及貨物傾倒等安全隱患。
AUTBUS 是一種采用兩線非橋接媒介的高速現(xiàn)場總線[2],其總線數(shù)據(jù)帶寬達到100Mbps,最大傳輸距離500米,最小循環(huán)周期8 微秒,最大節(jié)點數(shù)256 個,其同步精度不低于10ns。同時,AUTBUS 結(jié)合了Profibus、CAN、Ethernet IP、Profinet 等總線的優(yōu)點,采用雙絞線無極性傳輸,具有帶寬高、實時能力強、傳輸距離遠、布線和安裝簡單等特點,適用于傳感器設(shè)備之間高可靠大寬帶的數(shù)據(jù)傳輸場景,在倉庫傳感器數(shù)據(jù)采集系統(tǒng)中得到了廣泛應(yīng)用。
AUTBUS 協(xié)議棧包括物理層、數(shù)據(jù)鏈路層和應(yīng)用層三部分。物理層基于OFDM 技術(shù),完成物理信號的轉(zhuǎn)換,以實現(xiàn)高可靠性傳輸。物理層向數(shù)據(jù)鏈路層提供時鐘管理服務(wù)、數(shù)據(jù)傳輸服務(wù)和物理層管理服務(wù)三大類接口。數(shù)據(jù)鏈路層包括LLC 和MAC 兩個子層,它向應(yīng)用層提供時鐘同步服務(wù)、數(shù)據(jù)鏈路服務(wù)和數(shù)據(jù)鏈路管理服務(wù)三大接口。應(yīng)用層包括數(shù)據(jù)服務(wù)模塊、系統(tǒng)管理服務(wù)模塊、時間服務(wù)模塊和TCP/UDP 模塊。
AUTBUS 采用總線式組網(wǎng),主要有直線型和環(huán)型拓撲兩種結(jié)構(gòu),分別如圖1、2 所示。直線型拓撲結(jié)構(gòu)布線施工簡單、接線方便,兩端需要匹配終端電阻。環(huán)型拓撲結(jié)構(gòu)不需要匹配電阻,且主干線上任意位置斷開都不影響總線通訊,但信號反射嚴(yán)重,不適用于遠距離場合。
圖1 直線型拓撲結(jié)構(gòu)
圖2 環(huán)型拓撲結(jié)構(gòu)
數(shù)據(jù)采集系統(tǒng)由傳感器、信號轉(zhuǎn)換器、邊緣控制器組成。數(shù)據(jù)采集系統(tǒng)結(jié)構(gòu)圖如圖3 所示,n 路CAN 接口傳感器通過CAN 通訊組網(wǎng)后接入CAN 轉(zhuǎn)AUTBUS 信號轉(zhuǎn)換器中,信號轉(zhuǎn)換器通過AUTBUS 總線進行組網(wǎng)并接入邊緣控制器中,邊緣控制器將傳感器的數(shù)據(jù)進行分析處理后,發(fā)送到遠程服務(wù)器端。傳感器數(shù)據(jù)通過CAN 轉(zhuǎn)換為AUTBUS 通訊后,解決了CAN 通訊存在的通訊速率低、傳輸距離較短的問題。系統(tǒng)中各信號轉(zhuǎn)換器節(jié)點連接采用直線型拓撲結(jié)構(gòu)方式,在首末兩端信號轉(zhuǎn)換器節(jié)點處匹配終端電阻,實現(xiàn)了倉庫傳感器數(shù)據(jù)遠距離和高速率傳輸,減少了丟包率。由于AUTBUS的無極性雙絞線連接特性,現(xiàn)場布線、施工更為簡單方便,避免了因線接反造成的通訊故障,減少了調(diào)試工作。
圖3 數(shù)據(jù)采集系統(tǒng)結(jié)構(gòu)拓撲圖
測距傳感器目前主要有激光測距傳感器、超聲波測距傳感器和紅外測距傳感器三種。其中,激光測距傳感器具有測量精度高、測量距離遠、環(huán)境適應(yīng)性更強等優(yōu)點,廣泛應(yīng)用于室內(nèi)精確測距和避障的應(yīng)用場合。本次選用單點激光測距傳感器[3],基于飛行時間原理測量傳感器與被測目標(biāo)之間的相對距離。激光發(fā)射器發(fā)出調(diào)制脈沖激光,內(nèi)部定時器從t1時刻開始計算,當(dāng)激光照射到目標(biāo)物體后,激光接收器接收到返回的激光信號時,在t2時刻停止計時,設(shè)光速為C,則激光傳感器到達物體的距離D 為:
傳感器選用CAN 通訊接口方式,相比于485 通訊和串口通訊而言,其具有高可靠性和高實時性,傳輸距離更遠,抗干擾能力更強。傳感器的技術(shù)規(guī)格參數(shù)如表1 所示。
表1
倉庫高度為7m,每堆貨物上方安裝一個激光測距傳感器,每個傳感器具有唯一的設(shè)備ID。傳感器按10Hz 的發(fā)送頻率發(fā)送距離數(shù)據(jù),波特率設(shè)為250kbps,服務(wù)器端通過傳感器ID和距離變化信息迅速識別到具體位置的貨物高度信息發(fā)生變化,實現(xiàn)貨物庫存位置的精確定位。傳感器通過龍骨架安裝固定在倉庫頂部,倉庫現(xiàn)場安裝照片如圖4 所示,圖中黑色的小長方體為傳感器。
圖4 現(xiàn)場傳感器安裝照片
信號轉(zhuǎn)換器實現(xiàn)通訊協(xié)議的轉(zhuǎn)換,負責(zé)將CAN 通訊轉(zhuǎn)換為AUTBUS 通訊,這樣解決了CAN 通訊遠距離傳輸下帶寬的問題,保證倉庫內(nèi)部多個傳感器檢測到的距離數(shù)值能實時可靠地傳輸?shù)竭吘壙刂破髦羞M行處理。
信號轉(zhuǎn)換器主芯片采用高度集成的工業(yè)現(xiàn)場總線Soc--KY3001,它是一款性能卓越的32 位高速處理器,支持AUTBUS、CAN、Profibus、Modbus 總 線 接 口,AP-CPU采用ARM 公司的cortex-A5 內(nèi)核,最高支持400MHz 的運行速率,內(nèi)置512k 字節(jié)的SRAM。KY3001 優(yōu)越的性能和豐富的總線接口,能夠快速將CAN 組網(wǎng)的傳感器數(shù)據(jù)轉(zhuǎn)換為AUTBUS 通訊方式。
KY3001 供電電壓有3.3V、1.8V 和1.2V 三種,通過供電電路將外部輸入的7 ~30V 的電壓進行轉(zhuǎn)換,同時控制供電電壓紋波,以保證芯片有更好的信號質(zhì)量。時鐘電路選用無源晶體或有源晶振的時鐘電路,要求時鐘頻率為25MHz,時鐘精度<10ppm。KY3001 自帶2 路CAN 接口,通過CAN 驅(qū)動器實現(xiàn)CAN 總線的高速發(fā)送和接收功能[4]。芯片的AUTBUS 接口通過驅(qū)動電路實現(xiàn)AUTBUS 總線數(shù)據(jù)的高速收發(fā)。
圖5 信號轉(zhuǎn)換器硬件框圖
邊緣控制器選用NewPre5100 自主可控基礎(chǔ)型邊緣通用控制器,它集邊緣運算、過程控制等功能為一體[5],采用國產(chǎn)龍芯2k1000,雙核心,主頻1.0GHZ,支持雙機熱備冗余,1ms 控制周期,支持CANOPEN、Modbus、Ethernet、AUTBUS 等常用工業(yè)通訊協(xié)議。NewPre5100采用工業(yè)級設(shè)計,具有強實時性和高可靠性,能實時批量處理分析傳感器的數(shù)據(jù)內(nèi)容。
考慮到倉庫現(xiàn)場環(huán)境的復(fù)雜性,為了提高AUTBUS 通訊的可靠性和抗干擾能力,在實際布線時,需要采取以下措施。
(1)AUTBUS 總線采用差分信號傳輸方式,通常使用帶屏蔽的雙絞線且屏蔽層應(yīng)該接到參考地。
(2)AUTBUS 總線分支的線長應(yīng)≤0.25m,傳輸線纜的特征阻抗約為100Ω。
(3)為避免信號反射,在AUTBUS 總線兩端需要連接終端電阻,電阻阻值為100Ω。
(4)AUTBUS 線 纜 衰 減 參 數(shù) 要 求1MHz ≤1.0 dB/100m,32MHz ≤5.0 dB/100m。
(5)采用T 型連接器時,連接器需要有2 根內(nèi)芯作為差分信號針,且回波損耗≤ -10dB@0~32MHz。
數(shù)據(jù)采集系統(tǒng)軟件基于邊緣控制器NewPre5100 為硬件平臺,在Maview 開發(fā)環(huán)境下進行開發(fā)。軟件主要實現(xiàn)的功能包括以下幾點:
(1)通過CAN 轉(zhuǎn)Autbus 通訊,完成多個傳感器數(shù)據(jù)的采集;
(2)對傳感器數(shù)據(jù)進行分析處理組合,將數(shù)據(jù)信息同步發(fā)送到遠程服務(wù)器端;
(3)實時監(jiān)測功能,當(dāng)?shù)讓觽鞲衅魍ㄓ嵐收蠒r及時報警提示;
(4)實時通訊連接,與遠程服務(wù)器端連接斷開時能迅速建立連接。
軟件程序整體流程圖如圖6所示,軟件功能模塊組成如圖7所示,軟件包括Autbus 通訊模塊、數(shù)據(jù)接收模塊、數(shù)據(jù)處理模塊、故障診斷模塊、斷線重連模塊和Modbus TCP 通訊模塊這五個功能模塊組成。
圖6 軟件程序整體流程圖
圖7 功能模塊組成
在Maview 開發(fā)環(huán)境下進行設(shè)備組態(tài),如圖8 所示。首先配置邊緣控制器的IP 地址和端口號等參數(shù),接著為控制器添加PHB 總線,并在總線上添加多個PHB 設(shè)備,每個PHB 設(shè)備表示1 個CAN 轉(zhuǎn)AUTBUS 信號轉(zhuǎn)換器。在每個PHB 設(shè)備的屬性列表中,設(shè)置唯一的設(shè)備ID、循環(huán)周期和設(shè)備類型。
圖8 設(shè)備組態(tài)界面
在接收傳感器數(shù)據(jù)前,首先調(diào)用結(jié)構(gòu)體AUT_INIT_0 對AUTBUS 模塊進行初始化,設(shè)置AUTBUS 模塊的ID 和波特率,如果初始化成功,軟件返回不為0 的AUTBUS 模塊描述符和為0 的初始化狀態(tài)值。根據(jù)描述符或初始化狀態(tài)值,可以判斷AUTBUS 是否初始化成功,從而進入數(shù)據(jù)接收模塊。
調(diào)用AUT_RECV_0 結(jié)構(gòu)體接收傳感器數(shù)據(jù),輸入AUT BUS 模塊描述符,軟件返回傳感器ID、傳感器發(fā)送的數(shù)據(jù)、數(shù)據(jù)長度以及接收狀態(tài)。接收狀態(tài)包含3 種情況,0 表示接收到CAN 報文,2 表示沒有收到CAN 報文,3 表示接收錯誤。在接收狀態(tài)為0 時,對傳感器數(shù)據(jù)進行解析,讀取不同傳感器ID 發(fā)送過來的距離值和信號強度值。傳感器數(shù)據(jù)接收模塊的部分代碼如圖9 所示。
圖9 數(shù)據(jù)接收部分代碼
邊緣控制器對傳感器數(shù)據(jù)進行分析處理后,通過Modbus TCP 協(xié)議與服務(wù)器端建立通訊連接。為了方便現(xiàn)場調(diào)試,在服務(wù)器端編寫傳感器數(shù)據(jù)監(jiān)控軟件,實時監(jiān)測傳感器傳輸過來的距離數(shù)據(jù)和信號強度。將傳感器、信號轉(zhuǎn)換器和邊緣控制器進行通電后,在監(jiān)控頁面輸入控制器的ip地址,點擊“start”按鈕,獲取傳感器的距離信息和信號強度,距離數(shù)據(jù)監(jiān)控頁面如圖10 所示,信號強度監(jiān)控頁面如圖11所示。通過距離信息可以看出每個傳感器安裝高度基本一致,且每個傳感器通訊正常,距離測量精度滿足系統(tǒng)需求。每個傳感器的信號強度都在300 以上,被測物體的反射率較高。
圖10 距離數(shù)據(jù)監(jiān)控頁面
圖11 信號強度監(jiān)控頁面
采用Autbus 通訊方式搭建的數(shù)據(jù)采集系統(tǒng),將布局在倉庫不同庫位的傳感器數(shù)據(jù)進行實時監(jiān)測和數(shù)據(jù)分析,對貨物的位置進行精確定位,大大提升了庫存數(shù)據(jù)的準(zhǔn)確率和出入庫效率,整個系統(tǒng)布線簡單、可靠性高、數(shù)據(jù)傳輸實時性強。該方案配合倉儲管理系統(tǒng)軟件,目前已在某造紙廠倉庫管理系統(tǒng)中得到了推廣和應(yīng)用,為堆疊類貨物的智能化倉儲管理提供了新的解決方案。