張 芳,張震強
(陜西科技大學 電氣與信息工程學院,陜西 西安 710021)
?
電腦鼠競賽自動計時系統設計
張 芳,張震強
(陜西科技大學 電氣與信息工程學院,陜西 西安 710021)
電腦鼠競賽自動計時系統由傳感器、延時電路、電平轉換電路、串口通信電路和PC組成,包括了系統的硬件設計、軟件界面和控制程序的設計。通過將軟硬件系統相結合,本系統能夠滿足競賽對高精度時間統計的要求,并且能夠克服環境、人為等因素的影響。按照IEEE的比賽規則,能夠準確地測量和計算電腦鼠的運行時間,在比賽過程中自動地對成績進行大屏幕顯示和計算機存儲。本系統電路簡單,測量精度和靈敏度高,調試方便,能夠充分發揮自動計時系統在比賽中的實時觀測、現場監督的作用。本系統已通過迷宮現場測試,期望應用于正式比賽。
電腦鼠競賽;自動;計時
“電腦鼠”,英文名叫做 MicroMouse,是使用嵌入式微控制器、傳感器和機電運動部件構成的一種智能行走裝置,可以在復雜迷宮中精確定位,自動記憶和選擇路徑,規避障礙,尋找出口,采用相應的算法,最終快速地達到所設定的目的地[1]。
首場電腦鼠迷宮競賽于1979年在紐約舉行。 2009年由中國計算機學會嵌入式系統專業委員會主辦了首屆全國電腦鼠走迷宮競賽,拉開了中國電腦鼠競賽的大幕。
競賽的得分用“時間”來衡量,時間越短,所獲得的成績也越高。因此,設計一個非接觸式的比賽自動計時系統就顯得尤為重要。本系統能夠克服環境、人為等因素的影響,按照IEEE的比賽規則要求,準確地測量和計算電腦鼠的比賽時間。此外,該系統還具有遠程傳送和大屏幕顯示的能力,便于實時觀測,現場監督。
本系統以IEEE電腦鼠走迷宮競賽規則為設計依據[2]。主要規則如下:
電腦鼠的基本功能是從起點開始走到終點,比賽中,每一次的成績都由運行時間、迷宮時間和碰觸獎懲三部分組成。競賽使用這3個參數,從速度﹑求解迷宮的效率和電腦鼠的可靠性三方面進行評分。
(1)運行時間。電腦鼠每次從迷宮起點走到終點所用時間稱為“運行時間”。競賽中,電腦鼠在迷宮中的總時間不可超過15 min。
(2)迷宮時間。從電腦鼠的第一次激活到每次運行開始所用時間稱為“迷宮時間”。
(3)碰觸獎懲。電腦鼠啟動運行后出現故障,允許操作員手動電腦鼠使其繼續行走或將電腦鼠從迷宮取出,放到起點重新啟動運行,該動作稱為“碰觸”,但不能超過3次。
(4)成績的計算。得分通過計算每次“排障時間”來衡量:排障時間=迷宮時間/30+運行時間+碰觸獎懲。
電腦鼠在規定時間內允許運行多次,取最短排障時間作為最好成績。
本系統根據競賽規則要求,選用PC代替單片機作為控制器,PC既是顯示器件同時也是控制器件,對PC的利用率大大提高,將上位機的控制作為主導,整個系統盡可能少地使用元器件,簡化硬件電路。
系統采用激光管及其接收電路采集計時信號,經過信號處理部分,將輸出的電平信號直接輸入PC串口的特定引腳,PC采用Visual Basic編程語言構建計時系統界面,同時利用軟件編寫串行口通訊程序,通過對串行口引腳狀態的判斷,執行相應的計時控制程序。利用鼠標對上位機系統界面進行操作,并在大屏幕上顯示當前內容和數據,實現對參賽電腦鼠的運行時間、迷宮時間、碰觸次數、本次成績、最好成績的實時顯示、控制及存儲。
系統的整體設計框圖如圖1所示。

圖1 電腦鼠競賽自動計時系統框圖
本系統硬件部分的整體框圖如圖2所示。

圖2 硬件框圖
3.1 傳感器的安裝及其工作電路
由圖2所示,在迷宮起點單元,一面墻壁內部嵌入激光管,該激光管使用+3 V紐扣電池驅動發光。發出的激光照射到迷宮單元格的對面墻壁上,在該墻壁上激光所照的點處嵌入光敏電阻,該光敏電阻連入比較器電路中。
當沒有電腦鼠經過迷宮起點單元,即有激光照射到光敏電阻上時,光敏電阻阻值很小,比較器輸出+10 V電壓;當電腦鼠經過起點單元,即激光被阻斷,沒有激光照射到光敏電阻上時,光敏電阻阻值很大,比較器輸出0 V電壓。通過高低電平的變換實現對起點單元信號的檢測。
迷宮終點的傳感器安裝方式及其工作電路同理。
3.2 信號處理電路
由于傳感器響應周期很短,若參加比賽的電腦鼠車體形狀不規則,小車經過計時區時,很可能觸發傳感器對信號進行多次采集。本系統采用555定時器連接而成的單穩態觸發器實現延時消抖,將傳感器輸出的信號進行一定的延時處理,從而保證車體每經過一次,傳感器僅采集一次開關量信號。
3.3 串口電路
串口電路的設計是本系統的難點,同時也是本設計的一項創新點。
不同于一般的單片機與PC的串行通訊[3-4],由于本系統為PC控制,采集到的開關量信號直接從PC串口的某一針腳輸入,通過檢測串口針腳的狀態來得到計時脈沖信號。
RS-232C總線標準規定,RTS、CTS、DSR、DTR和DCD等控制線上信號有效(接通,ON狀態,正電壓)為+3 V~+15 V ,信號無效(斷開,OFF狀態,負電壓)為-3 V~-15 V。本系統傳感器電路的輸出無車經過時為高電平+10 V,有車經過時為低電平0 V,而該電平是串口針腳所不能識別的。
因此,利用了OP07作為比較器構成電平轉換電路,將輸出的脈沖信號轉換為串口可識別的±12 V電壓,再從RS-232C輸入計算機。DB9的CTS腳接起點信號的輸出端,DCD腳接終點信號的輸出端,GND腳接地。具體連線方法如圖3所示。

圖3 DB9連線方法

圖4 軟件設計流程圖
當小車經過起點傳感器時,起點信號輸出為+12 V,CTS有效,獲得起點的計時脈沖信號,同理,當小車經過終點傳感器時,終點信號輸出為+12 V,DCD有效,獲得終點的計時脈沖信號,從而控制系統進行計時。
軟件是控制電路的靈魂,上位機程序的編寫是本設計研究的核心,也是本計時系統功能實現的關鍵所在。本系統使用可視化編程語言Visual Basic進行操作界面和控制程序的設計[5]。
4.1 流程圖
軟件設計的主程序流程圖如圖4所示。
4.2 界面模塊
界面模塊由標題欄、計時顯示、按鍵控制、參賽組提示4個主要部分組成,如圖5所示。
其中,計時顯示部分包括本次運行時間、本次迷宮時間、總時間、本次成績、碰觸次數和最好成績共六部分;按鍵控制部分包括開始、碰觸和清零共三部分。
4.3 工作過程
裁判員單擊“開始”按鍵,激活比賽計時系統。
控制程序以查詢方式每隔一段時間檢測起點信號狀態,當CTS線為高電平時,表示電腦鼠進入迷宮起點,計時程序開始執行,同時,在界面模塊上實時顯示本次運行時間、迷宮時間和總時間,并將該時間值存入相應數組中。
電腦鼠繼續在迷宮中運行,控制程序檢測終點信號的狀態,當DCD線為高電平時,表示電腦鼠進入迷宮終點,獲取當前時間,計算并顯示本次成績。
電腦鼠允許在規定的15 min內運行任意次,因此,電腦鼠回到起點再次進入迷宮后,本次運行時間、本次迷宮時間和本次成績由電腦鼠新一次的情況給出,選擇各次成績中最短用時作為最好成績。
比賽過程中,電腦鼠每發生一次碰觸事件,裁判員單擊“碰觸”按鍵,顯示碰觸次數加1,相應地碰觸獎懲時間改變,當碰觸次數達到4次時,顯示“停賽!”。

圖5 計時系統界面
當前組比賽停止后,裁判員單擊“清零”按鍵,清除本輪比賽記錄,當前組號和將要參賽的組號各加1,為進行下一組比賽做準備。
同時使用人工秒表和自動計時系統兩種方案進行迷宮現場計時。迷宮現場測試數據如表1所示。
由測試結果可以看出,電腦鼠競賽自動計時系統,克服了人工秒表計時人力資源浪費大、計時誤差大、不能實時顯示等缺點,對資源的利用更為合理。按照比賽規則,可準確測量和計算電腦鼠的運行時間,在比賽過程中自動對成績進行測定、顯示與存儲,具有遠距離傳送和大屏幕顯示的能力,并且滿足電路簡單、測量精度和靈敏度高、調試方便的要求,能夠充分發揮非接觸式自動計時系統在比賽中的實時觀測、現場監督的作用。本系統已經用于校內的電腦鼠比賽中,工作穩定。

表1 迷宮現場測試數據記錄 (單位:s)
[1] 周立功.IEEE電腦鼠開發指南[M].廣州:廣州致遠電子有限公司,2008.
[2] 2009全國“電腦鼠走迷宮”競賽組委會.2009全國“電腦鼠走迷宮”競賽 [EB/OL].(2009-11-01)[2016-06-20]. http://www.micromouse.com.cn.2009-11-01/2010-01-12.
[3] 顧星辰,胡仁杰,馬智勇. AVR單片機和Matlab串口通信的計時器系統[J].單片機與嵌入式系統應用,2013,13(3):25-27.
[4] 梁振濤,樊澤明,任永亮,等.基于單片機的移動監控系統硬件設計[J].微型機與應用,2014,33(2):25-27.
[5] 邵昊舒. 基于VB的英國議會制辯論賽計時器的設計開發[J].電子測試,2015(4):1-3.
Automatic timing system design for MicroMouse competition
Zhang Fang, Zhang Zhenqiang
(School of Electrical & Information Engineering, Shanxi University of Science and Technology, Xi’an 710021,China )
Automatic timing system designed for MicroMouse Competition is consist of the sensors, delay circuit, level conversion circuit, serial communication circuit and the PC, including system hardware design, software interface design and control program design. By integrating the software and hardware system, this design can meet the requirements of the high quality time statistics and can also overcome the effect of environment and human factors. According to rules of the competition from IEEE, it can accurately measure and calculate the running time of the mice in the race, and the results can automatically be displayed on screen and stored in computer. This system has simple circuit, high precision and sensitivity, and easy to be debugged. It can play its full role in real-time observations and on-site supervision. This system has been field tested by the maze,respected to be used in the formal competition.
MicroMouse competition; automatic; timing
TP311
A
10.19358/j.issn.1674- 7720.2016.21.016
張芳,張震強. 電腦鼠競賽自動計時系統設計[J].微型機與應用,2016,35(21):52-54.
2016-07-12)
張芳(1988-),通信作者,女,碩士,主要研究方向:模式識別與智能系統。E-mail: zf_laura@163.com。
張震強(1959-),男,學士,高級工程師,主要研究方向:電子技術。