李敏,郭彥蕊
(1.湖南瀚能科技有限公司,湖南長沙,410221;2.長沙碩博電子科技股份有限公司,湖南長沙,410221)
對于大型貨物堆疊類的倉庫中,垛位上堆疊的貨物規格種類繁多,由于缺乏智能化的監控手段,無法獲取貨物放置的位置信息,庫管員通常需要在入庫和出庫環節去垛位現場查看確認貨物所在位置才能保證庫存數據的準確性。這種信息化程度偏低的管理方式,不僅存在著人車碰撞、紙包傾倒的安全隱患,而且容易導致倉儲運行效率低、人力成本和運行成本高、倉儲數據準確度低、盤點移庫作業耗時耗力[1]等問題。針對這些情況,本文提出了一種基于AUTBUS 通訊的傳感器數據采集系統,通過獲取安裝在貨物位置上方的傳感器距離數據,實現貨物庫存位置的自動精確定位,省去了人工核查貨物環節,避免了人車碰撞及貨物傾倒等安全隱患。
AUTBUS 是一種采用兩線非橋接媒介的高速現場總線[2],其總線數據帶寬達到100Mbps,最大傳輸距離500米,最小循環周期8 微秒,最大節點數256 個,其同步精度不低于10ns。同時,AUTBUS 結合了Profibus、CAN、Ethernet IP、Profinet 等總線的優點,采用雙絞線無極性傳輸,具有帶寬高、實時能力強、傳輸距離遠、布線和安裝簡單等特點,適用于傳感器設備之間高可靠大寬帶的數據傳輸場景,在倉庫傳感器數據采集系統中得到了廣泛應用。
AUTBUS 協議棧包括物理層、數據鏈路層和應用層三部分。物理層基于OFDM 技術,完成物理信號的轉換,以實現高可靠性傳輸。物理層向數據鏈路層提供時鐘管理服務、數據傳輸服務和物理層管理服務三大類接口。數據鏈路層包括LLC 和MAC 兩個子層,它向應用層提供時鐘同步服務、數據鏈路服務和數據鏈路管理服務三大接口。應用層包括數據服務模塊、系統管理服務模塊、時間服務模塊和TCP/UDP 模塊。
AUTBUS 采用總線式組網,主要有直線型和環型拓撲兩種結構,分別如圖1、2 所示。直線型拓撲結構布線施工簡單、接線方便,兩端需要匹配終端電阻。環型拓撲結構不需要匹配電阻,且主干線上任意位置斷開都不影響總線通訊,但信號反射嚴重,不適用于遠距離場合。

圖1 直線型拓撲結構

圖2 環型拓撲結構
數據采集系統由傳感器、信號轉換器、邊緣控制器組成。數據采集系統結構圖如圖3 所示,n 路CAN 接口傳感器通過CAN 通訊組網后接入CAN 轉AUTBUS 信號轉換器中,信號轉換器通過AUTBUS 總線進行組網并接入邊緣控制器中,邊緣控制器將傳感器的數據進行分析處理后,發送到遠程服務器端。傳感器數據通過CAN 轉換為AUTBUS 通訊后,解決了CAN 通訊存在的通訊速率低、傳輸距離較短的問題。系統中各信號轉換器節點連接采用直線型拓撲結構方式,在首末兩端信號轉換器節點處匹配終端電阻,實現了倉庫傳感器數據遠距離和高速率傳輸,減少了丟包率。由于AUTBUS的無極性雙絞線連接特性,現場布線、施工更為簡單方便,避免了因線接反造成的通訊故障,減少了調試工作。

圖3 數據采集系統結構拓撲圖
測距傳感器目前主要有激光測距傳感器、超聲波測距傳感器和紅外測距傳感器三種。其中,激光測距傳感器具有測量精度高、測量距離遠、環境適應性更強等優點,廣泛應用于室內精確測距和避障的應用場合。本次選用單點激光測距傳感器[3],基于飛行時間原理測量傳感器與被測目標之間的相對距離。激光發射器發出調制脈沖激光,內部定時器從t1時刻開始計算,當激光照射到目標物體后,激光接收器接收到返回的激光信號時,在t2時刻停止計時,設光速為C,則激光傳感器到達物體的距離D 為:
傳感器選用CAN 通訊接口方式,相比于485 通訊和串口通訊而言,其具有高可靠性和高實時性,傳輸距離更遠,抗干擾能力更強。傳感器的技術規格參數如表1 所示。

表1
倉庫高度為7m,每堆貨物上方安裝一個激光測距傳感器,每個傳感器具有唯一的設備ID。傳感器按10Hz 的發送頻率發送距離數據,波特率設為250kbps,服務器端通過傳感器ID和距離變化信息迅速識別到具體位置的貨物高度信息發生變化,實現貨物庫存位置的精確定位。傳感器通過龍骨架安裝固定在倉庫頂部,倉庫現場安裝照片如圖4 所示,圖中黑色的小長方體為傳感器。

圖4 現場傳感器安裝照片
信號轉換器實現通訊協議的轉換,負責將CAN 通訊轉換為AUTBUS 通訊,這樣解決了CAN 通訊遠距離傳輸下帶寬的問題,保證倉庫內部多個傳感器檢測到的距離數值能實時可靠地傳輸到邊緣控制器中進行處理。
信號轉換器主芯片采用高度集成的工業現場總線Soc--KY3001,它是一款性能卓越的32 位高速處理器,支持AUTBUS、CAN、Profibus、Modbus 總 線 接 口,AP-CPU采用ARM 公司的cortex-A5 內核,最高支持400MHz 的運行速率,內置512k 字節的SRAM。KY3001 優越的性能和豐富的總線接口,能夠快速將CAN 組網的傳感器數據轉換為AUTBUS 通訊方式。
KY3001 供電電壓有3.3V、1.8V 和1.2V 三種,通過供電電路將外部輸入的7 ~30V 的電壓進行轉換,同時控制供電電壓紋波,以保證芯片有更好的信號質量。時鐘電路選用無源晶體或有源晶振的時鐘電路,要求時鐘頻率為25MHz,時鐘精度<10ppm。KY3001 自帶2 路CAN 接口,通過CAN 驅動器實現CAN 總線的高速發送和接收功能[4]。芯片的AUTBUS 接口通過驅動電路實現AUTBUS 總線數據的高速收發。

圖5 信號轉換器硬件框圖
邊緣控制器選用NewPre5100 自主可控基礎型邊緣通用控制器,它集邊緣運算、過程控制等功能為一體[5],采用國產龍芯2k1000,雙核心,主頻1.0GHZ,支持雙機熱備冗余,1ms 控制周期,支持CANOPEN、Modbus、Ethernet、AUTBUS 等常用工業通訊協議。NewPre5100采用工業級設計,具有強實時性和高可靠性,能實時批量處理分析傳感器的數據內容。
考慮到倉庫現場環境的復雜性,為了提高AUTBUS 通訊的可靠性和抗干擾能力,在實際布線時,需要采取以下措施。
(1)AUTBUS 總線采用差分信號傳輸方式,通常使用帶屏蔽的雙絞線且屏蔽層應該接到參考地。
(2)AUTBUS 總線分支的線長應≤0.25m,傳輸線纜的特征阻抗約為100Ω。
(3)為避免信號反射,在AUTBUS 總線兩端需要連接終端電阻,電阻阻值為100Ω。
(4)AUTBUS 線 纜 衰 減 參 數 要 求1MHz ≤1.0 dB/100m,32MHz ≤5.0 dB/100m。
(5)采用T 型連接器時,連接器需要有2 根內芯作為差分信號針,且回波損耗≤ -10dB@0~32MHz。
數據采集系統軟件基于邊緣控制器NewPre5100 為硬件平臺,在Maview 開發環境下進行開發。軟件主要實現的功能包括以下幾點:
(1)通過CAN 轉Autbus 通訊,完成多個傳感器數據的采集;
(2)對傳感器數據進行分析處理組合,將數據信息同步發送到遠程服務器端;
(3)實時監測功能,當底層傳感器通訊故障時及時報警提示;
(4)實時通訊連接,與遠程服務器端連接斷開時能迅速建立連接。
軟件程序整體流程圖如圖6所示,軟件功能模塊組成如圖7所示,軟件包括Autbus 通訊模塊、數據接收模塊、數據處理模塊、故障診斷模塊、斷線重連模塊和Modbus TCP 通訊模塊這五個功能模塊組成。

圖6 軟件程序整體流程圖

圖7 功能模塊組成
在Maview 開發環境下進行設備組態,如圖8 所示。首先配置邊緣控制器的IP 地址和端口號等參數,接著為控制器添加PHB 總線,并在總線上添加多個PHB 設備,每個PHB 設備表示1 個CAN 轉AUTBUS 信號轉換器。在每個PHB 設備的屬性列表中,設置唯一的設備ID、循環周期和設備類型。

圖8 設備組態界面
在接收傳感器數據前,首先調用結構體AUT_INIT_0 對AUTBUS 模塊進行初始化,設置AUTBUS 模塊的ID 和波特率,如果初始化成功,軟件返回不為0 的AUTBUS 模塊描述符和為0 的初始化狀態值。根據描述符或初始化狀態值,可以判斷AUTBUS 是否初始化成功,從而進入數據接收模塊。
調用AUT_RECV_0 結構體接收傳感器數據,輸入AUT BUS 模塊描述符,軟件返回傳感器ID、傳感器發送的數據、數據長度以及接收狀態。接收狀態包含3 種情況,0 表示接收到CAN 報文,2 表示沒有收到CAN 報文,3 表示接收錯誤。在接收狀態為0 時,對傳感器數據進行解析,讀取不同傳感器ID 發送過來的距離值和信號強度值。傳感器數據接收模塊的部分代碼如圖9 所示。

圖9 數據接收部分代碼
邊緣控制器對傳感器數據進行分析處理后,通過Modbus TCP 協議與服務器端建立通訊連接。為了方便現場調試,在服務器端編寫傳感器數據監控軟件,實時監測傳感器傳輸過來的距離數據和信號強度。將傳感器、信號轉換器和邊緣控制器進行通電后,在監控頁面輸入控制器的ip地址,點擊“start”按鈕,獲取傳感器的距離信息和信號強度,距離數據監控頁面如圖10 所示,信號強度監控頁面如圖11所示。通過距離信息可以看出每個傳感器安裝高度基本一致,且每個傳感器通訊正常,距離測量精度滿足系統需求。每個傳感器的信號強度都在300 以上,被測物體的反射率較高。

圖10 距離數據監控頁面

圖11 信號強度監控頁面
采用Autbus 通訊方式搭建的數據采集系統,將布局在倉庫不同庫位的傳感器數據進行實時監測和數據分析,對貨物的位置進行精確定位,大大提升了庫存數據的準確率和出入庫效率,整個系統布線簡單、可靠性高、數據傳輸實時性強。該方案配合倉儲管理系統軟件,目前已在某造紙廠倉庫管理系統中得到了推廣和應用,為堆疊類貨物的智能化倉儲管理提供了新的解決方案。