楊銀標 汪華章 馮志鋅 王海臻 杜連成



摘? 要:針對目前絕大部分行李箱不夠智能化的現狀,為減輕出行的人因攜帶行李箱給雙手帶來的負擔,提出了一種基于UWB技術的跟隨行李箱設計。行李箱上的兩UWB基站和跟隨目標攜帶的UWB標簽實現無線連接。標簽可得到它與兩基站之間的距離值,再經數學運算得到由兩基站一標簽構成的三角形中以基站0為頂點的角的角度值。主控根據這個角度值和標簽與基站0之間的距離值來控制行李箱移動,實現行李箱的跟隨功能。
關鍵詞:UWB;跟隨;行李箱;DS-TWR;電機驅動
中圖分類號:TP242;TN925? ? ? ?文獻標識碼:A 文章編號:2096-4706(2020)09-0029-04
Design of Following Suitcase Based on UWB Technology
YANG Yinbiao,WANG Huazhang,FENG Zhixin,WANG Haizhen,DU Liancheng
(College of Electrical & Information Engineering,Southwest Minzu University,Chengdu? 610225,China)
Abstract:In view of the current situation that most of the luggage is not intelligent enough,in order to reduce the burden of carrying luggage to the hands of travelers,proposes a design of following luggage based on UWB technology. The two UWB base stations on the luggage and the UWB tags carried along with the target realize wireless connection. The distance value between the label and the two base stations can be obtained,and then the angle value with base station 0 as the vertex in the triangle composed of two base stations and one label can be obtained by mathematical calculation. According to this angle value and the distance between the label and the base station 0,the master control controls the movement of the suitcase to achieve the following function of the suitcase.
Keywords:UWB;following;suitcase;DS-TWR;motor driver
0? 引? 言
在科技迅速發展的今天,關于自動跟隨的研究已經非常火熱,自動跟隨在很多方面很大程度上減輕了人的負擔。跟隨購物車無需人力拖運,有效提升了消費者的購物體驗[1];自動跟隨服務機器人在出行的時候可自動跟隨主人,為主人提供提行李、拎包、撐傘等服務[2];自動跟隨高爾夫球車則可自動跟隨目標,幫助人們運送工具和物品[3]。目前,也有不少學者對跟隨行李箱進行研究,部分公司已經做出了產品,相信在不久的將來,克服種種困難之后,跟隨行李箱也會像智能手機一樣普遍。本文依托于大學生創新創業訓練計劃項目,對采用兩UWB基站一UWB標簽方案時基于DS-TWR測距的UWB定位方法、行李箱實現對目標定位后的跟隨方法、較大功率直流電機驅動電路等進行了研究和實現。
1? 系統總體設計
此系統的系統框圖如圖1所示,可分為兩個小系統,分別是由兩基站一標簽構成的UWB定位系統和STM32控制電機的控制系統。UWB定位系統中基站和標簽選用的是藍點無限科技的UWB模塊,模塊的硬件電路是一樣的,其作為基站還是標簽由軟件編程來確定。控制系統中STM32微處理器選用的是以STM32F103C8T6芯片為核心的最小系統板;為加深對較大功率電機驅動電路的理解,選用了自制的電機驅動板;電機選用了24 V的直流減速電機;為便于實驗,行李箱采用的是搭建的簡易結構模型。關于系統供電,UWB標簽使用5 V輸出的充電寶單獨供電;行李箱上采用了5 Ah 24 V的鋰電池作為電源,24 V電源直接給電機驅動板供電,STM32微處理器和兩基站則由24 V經LM2596降壓模塊降壓后的輸出供電。
在系統上電之后,UWB模塊的測距任務便可啟動,兩基站先各自得到它們與標簽之間的距離值,然后把距離值通過射頻發送給標簽;而基站0與基站1固定在行李箱上,它們之間的距離在手動測量之后寫入標簽對應的程序中,標簽由此可以得知由兩基站一標簽構成的三角形三邊的距離,標簽根據余弦定理,可求出任意一個角的角度值。在此系統中,選取了標簽到基站0之間的距離和以基站0為頂點的角的角度值作為行李箱跟隨的依據,當距離值大于程序中的設定值,行李箱便可啟動;針對角度值則設定角度區間,使行李箱在不同區間分別執行前進、左轉、右轉等動作。而行李箱應該執行的動作是在標簽的程序中寫好的,只不過是以單個字符表示,字符通過射頻從標簽傳給基站0,基站0又通過串口傳給了主控(STM32微處理器),主控根據接收到的字符控制電機執行不同的動作,從而實現行李箱的跟隨功能。
2? 行李箱結構設計
在設計前期,為對行李箱結構進行探索,采用木板和瓦楞紙板等材料搭建結構進行實驗,在最后確定了如圖2所示的行李箱結構。為方便主控和電機驅動等在行李箱底板放置,行李箱的底部設計成不可分開,而是采用側面打開的方式。行李箱底部安裝了四個輪子,前面兩個為驅動輪,后面兩個為萬向輪,使兩個驅動輪有合適的速度差即可實現轉向,同時為使行李箱轉向更靈敏,采用前驅的方式。在手動模式下,人可以通過拉桿來移動行李箱。兩基站在行李箱上的安裝位置也如圖2所示。
3? UWB定位系統
UWB無線定位技術具有功耗低、抗多徑效果好、定位精度高(10 cm左右)等優勢,已在眾多定位技術中脫穎而出[4]。UWB定位需要基站的搭建,基站和標簽的數量視系統類型而定。本文選擇了較為簡單的兩基站一標簽方案,并且用基于測距的方法確定標簽位置。
3.1? UWB模塊簡介
該系統選用的UWB模塊主要由DWM1000模塊和STM 32F103C8T6芯片構成。DWM1000模塊是基于Decawave的DW1000芯片設計的超寬帶收發模組,包含了陶瓷天線、射頻電路、時鐘電路、電源管理。DW1000會發送無線信號給信號讀取器,可通過計算信號傳輸時間來確定芯片位置,時間的長度說明了距離的遠近[5]。STM32F103C8T6芯片和DWM1000模塊之間通過SPI總線實現數據交換。
3.2? DS-TWR測距方法
UWB模塊之間距離的測量是定位的前提,其實質是ToF(Time of Flight)測距,是一種雙向測距,即TWR(Two-way Ranging),它又分為單邊雙向測距(SS-TWR,Single-side Two-way Ranging)和雙邊雙向測距(DS-TWR,Double-side Two-way Ranging)。DS-TWR是SS-TWR的擴展,常用的有四消息和三消息方式,該系統選用了DS-TWR測距方法,且使用三消息方式,示意圖如圖3所示。
這里把兩個UWB模塊命名為A和B,模塊都有發送和接收消息的功能,把涉及的三條消息命名為poll message、response message和final message,而框內表示的是六個時間戳,tx-ts表示發送消息的時間戳,rx-ts表示接收消息的時間戳。在一次信息交換的最后,B收到的final message中包括了A記錄的三個時間戳,這樣B就可以通過六個時間戳(B本身記錄了三個)求出四個時間差,從而可以通過下式求出消息在空中的傳輸時間T,傳輸時間乘以電磁波傳輸速率就可以得到A和B之間的距離。需要注意的是這種方式并不要求響應時間T11和T12一致。
3.3? 測距數據的處理及標簽位置的確定
在該系統中,先使基站0和基站1各自得到它們與標簽之間的距離,然后使它們分別把距離信息發給標簽,多次測距后,在標簽中對距離數據進行處理。我們先對多次距離取平均值,再進行濾波處理。濾波是為了防止較大波動的出現,此次設計選取了較容易實現的中值濾波。該濾波方法需要為每個基站設置一個獨立的濾波器,濾波器內需要設置濾波條數n,濾波器將會對n條數據求中值。濾波器內的濾波條數越多,平滑性越好,但會使反應變慢,使得求得的坐標點跟不上實際的移動速度,為兼顧平滑性和反應速度,系統中濾波條數設置成5。
如圖4所示,在測距完成后,標簽可以知道a,b,c三邊的長度,通過以下余弦定理公式和反三角函數公式可求出β角。基站0根據β角和a邊的長度即可確定標簽位置。
4? 控制系統
4.1? 驅動電路設計
該設計在電機選擇上選擇了一款直流有刷減速電機,為加深對電機驅動的理解,此次設計自制了電機驅動板,其原理圖如圖5所示,圖中所示的原理圖為實際電路的一半,另一半電路也與此圖相同。該電路主要包括H橋、IR2104前置驅動、進行邏輯控制的SN74HC00N芯片。
在同一時刻,H橋中只會有兩根管子導通。如果Q1、Q4導通,電機正轉;如Q2、Q3導通,電機反轉。H橋中的MOS管選用了IRF540N,是一種大功率的N溝道管(相比P溝道管有價格便宜等優勢),其在關斷條件下能承受的最高正向電壓(也稱耐壓)V_DSS為100 V,在完全開啟時所能通過的電流I_D為33 A,能夠滿足設計要求。此外,IRF540N這類功率MOS管的漏極和源極之間是自帶二極管的,可以不再額外并聯。
IR2104作前置驅動,其工作電壓VCC為10~20 V,這里選取了12 V。在SD有效(SD為高)的情況下,若IN為高,則HO為高,LO為低;若IN為低,則HO為低,LO為高,即HO的輸出與IN相同,而LO的輸出與IN相反(這里IN為輸入,HO和LO為輸出,高與低指的是電平)。關于IR2104,其關鍵點是自舉二極管和自舉電容的選擇,自舉二極管在這里選了1N5819肖特基二極管,自舉電容的大小可以通過公式求得[6],經前人經驗知鉭電容的效果比較好,這里選取了1.0 uF的鉭電容。
4.2? 跟隨原理說明及程序設計
該設計中,行李箱跟隨的依據是行李箱上基站0與標簽之間的距離a和以基站0為頂點的角β的大小(參見圖4)。在程序中,設置一個適當的啟動距離(80 cm),若a值大于啟動距離,則行李箱啟動;若a值小于啟動距離,則行李箱處于停止狀態。在a值滿足大于啟動距離的情況下,若β值大于110°,則行李箱右轉;若β值在70°至110°之間,則行李箱直行;若β值小于70°,則行李箱左轉。
在標簽對應的程序中,我們根據a值和β值寫好了行李箱應該執行的動作,只是執行的動作暫時用字符表示,用S表示停止,用F表示直行,用L表示左轉,用R表示右轉。然后使標簽通過射頻把字符發送給基站0,基站0又通過串口把字符傳遞給主控,所以主控只需根據接收到的字符控制行李箱執行相應的動作即可。標簽向基站0發送字符和主控的程序流程圖分別如圖6和圖7所示。
5? 結? 論
本文提出了一種基于UWB的跟隨行李箱系統設計,該系統采用兩基站一標簽方案,基于DS-TWR測距方法實現對標簽的定位,定位后對電機進行控制實現跟隨。實驗表明,該行李箱在平坦、障礙物較少的場合跟隨效果較好。在后續的實驗設計中,會為該行李箱增加避障等功能,并進一步優化定位和跟隨的算法,逐步完善該系統。
參考文獻:
[1] 蔡镕澤,陳章鑫,陳銀樹,等.基于HT66F70A的跟隨購物車設計 [J].福建輕紡,2020(1):37-41.
[2] 連幸.自動跟隨服務機器人的設計研究 [J].決策探索(下),2019(9):86.
[3] 孫銘鐳.基于自動跟隨技術的智能高爾夫球車設計 [D].吉林:長春理工大學,2019.
[4] 龐艷,喬靜.UWB無線定位技術探討 [J].電信快報,2005(11):49-51.
[5] 方晨晨.基于UWB的自主跟隨機器人定位方法 [J].軟件導刊,2016,15(9):127-129.
[6] 汪華章,宰文姣,馬亞寧,等.較大功率直流電機驅動電路的設計與實現 [J].西南民族大學學報(自然科學版),2010,36(4):649-654.
作者簡介:楊銀標(1997—),男,白族,云南大理人,本科,研究方向:自動化;汪華章(1976—),男,漢族,湖北崇陽人,就職于自動化系,系主任,教授,博士,主要研究方向:模式識別與智能控制系統研究等;馮志鋅(1997—),男,漢族,廣西博白人,本科,研究方向:自動化;王海臻(1997—),男,滿族,河北承德人,本科,研究方向:自動化;杜連成(1997—),男,漢族,云南曲靖人,本科,研究方向:自動化。