張魯棟
(蘇州軌道交通有限公司運營分公司,215000,蘇州∥助理工程師)
自動售檢票(AFC)系統(tǒng)是綜合技術(shù)性很強的一個專業(yè)系統(tǒng),涉及到機械、電子、微控、傳感、計算機、網(wǎng)絡(luò)、數(shù)據(jù)庫和系統(tǒng)集成等多個方面,是一個復(fù)雜的系統(tǒng)。在地鐵各個系統(tǒng)中,由于AFC系統(tǒng)中的終端設(shè)備與乘客直接接觸,因此其故障率比較高。而對終端設(shè)備各模塊的非典型故障的判斷及處理,對AFC現(xiàn)場維修人員來說是個棘手問題。解決此類問題,通常通過以下方法。
1)利用AFC終端設(shè)備自身的運行軟件。此方法最直接。但由于當(dāng)今國內(nèi)地鐵的AFC各終端設(shè)備(如TVM(自動售票機)、AGM(自動檢票機)及BOM(票房售票機))無統(tǒng)一設(shè)計標準,運行的軟件功能也各有優(yōu)略(這些終端設(shè)備的軟件中有些僅能對各模塊,如紙幣模塊、硬幣模塊、發(fā)卡模塊、回收卡模塊等進行幾個基本功能的測試,而有些軟件對模塊壓根就沒有測試功能),所以不能根本解決所有模塊類故障。
2)利用模塊廠方提供的測試軟件。為了彌補終端設(shè)備軟件的不足之處,除了終端設(shè)備的運行軟件外,各模塊廠家也會提供他們自己的模塊測試軟件給運營方。但這些軟件均需有計算機方可運行。而現(xiàn)實情況下,AFC相關(guān)維修人員不可能每人每次外出維修都帶上筆記本電腦。
3)利用部分模塊廠方的便攜式測試儀。有些模塊廠家有自己的便攜式測試儀器,但也存在缺點:①價格昂貴,每個測試儀的售價均在幾千元以上;②功能不全,模塊廠家的測試儀只能做模塊的測試及模塊的部分動作,不能運行其模塊的所用動作及功能;③由于各模塊廠家提供的模塊測試儀只能測試單一模塊,所以不存在通用性。
為了更好地解決上述問題,筆者研發(fā)了一款A(yù)FC終端模塊便攜式測試儀(如圖1)。其優(yōu)點為:體積小,便于攜帶。功能多,能測試所有終端模塊,并能對相關(guān)模塊進行所有動作的運行及錯誤代碼的顯示,使AFC相關(guān)人員能迅速判斷出模塊正常與否及具體故障。功能靈活,通過軟件的編譯,可自由增加或刪減測試儀的所需功能。如TVM中平時為了防止長短款,可自由刪減掉紙幣、硬幣模塊等模塊中可找零、出錢及清零等功能,在需要時還可以再增加相關(guān)功能。通用性強,能將各條線路所有終端設(shè)備模塊測試的功能集于一身,如將來出現(xiàn)新線的設(shè)備,只需編寫新版本的程序下載后便能通用。
圖1 AFC終端模塊便攜式測試儀
本測試儀利用51單片機自身強大的功能和優(yōu)異的可擴展性,配上四位一體數(shù)碼管、各類芯片和按鍵等少量外圍電路,就能搭建適合本電路的測試系統(tǒng)工具。其設(shè)計重點為串行通信、錯誤代碼顯示等幾個部分。其電路可分為電源單元、顯示單元、串口通信單元等幾大部分。圖2為本測試儀的電路圖。
圖2 AFC終端模塊便攜式測試儀電路
由于測試儀中各芯片所需電壓為5V,所以本測試儀中選用固定電壓(5V)三端集成穩(wěn)壓器70L05。它可驅(qū)動輸出電流高達100mA的穩(wěn)壓器。其卓越的內(nèi)部電流限制和熱關(guān)斷特性,使之特別適用于過載的情況;當(dāng)用于替代傳統(tǒng)的齊納二極管-電阻組的時候,輸出阻抗得到有效的改善,偏置電流大大減少。
圖3為本測試儀的電源單元電路圖。其中J1為外部電源接口,可直接連接9V干電池。除了干電池以外,本測試儀還考慮利用現(xiàn)場的市電就地取材(TVM、AGM、BOM中均有220V的外接插座),連接一個隨身小型變壓器,通過電路中的橋堆、電容及78L05等電子器件提供5V電源。
本儀器的顯示單元采用四位一體的LED(發(fā)光二極管)顯示器來顯示各種數(shù)字或符號,具有顯示清晰、亮度高、使用電壓低、壽命長等特點。圖4為顯示單元電路圖。
圖3 AFC終端模塊便攜式測試儀電源單元電路
圖4 AFC終端模塊便攜式測試儀顯示單元電路圖
四位一體的LED顯示器由四組8個發(fā)光二極管組成?;忻恳唤M中由7個長條形的發(fā)光管排列成“日”字形,另一個符點形的發(fā)光管在顯示器的右下角作為顯示小數(shù)點用,能顯示各種數(shù)字及部份英文字母。LED顯示器有兩種不同的形式如圖5所示:一種是8個發(fā)光二極管的陽極都連在一起的,稱之為共陽極LED顯示器;另一種是8個發(fā)光二極管的陰極都連在一起的,稱之為共陰極LED顯示器。本儀器采用的是共陽極數(shù)碼管。
圖5 LED顯示器原理圖
在單片機應(yīng)用系統(tǒng)中,顯示器顯示常用靜態(tài)顯示和動態(tài)掃描顯示兩種方法。
所謂靜態(tài)顯示,就是每一個顯示器都要占用單獨的具有鎖存功能的I/O接口用于筆劃段字形代碼。這樣單片機只要把要顯示的字形代碼發(fā)送到接口電路,就不用管它了,直到要顯示新的數(shù)據(jù)時,再發(fā)送新的字形碼。正因如此,它雖然控制方便,但占用較多的硬件資源。
動態(tài)掃描顯示接口是將接口電路把所有顯示器的8個筆劃段(A-H)同名端連在一起,而每一個顯示器的公共極COM是各自獨立地受I/O口控制的。CPU向字段輸出口送出字形碼時,所有顯示器接收到相同的字形碼;但究竟是那個顯示器亮,則取決于COM端。而這一端是由I/O控制的,所以就可以自行決定何時顯示哪一位了。而所謂動態(tài)掃描就是指采用分時的方法,輪流控制各個顯示器的COM端,使各個顯示器輪流點亮。在輪流點亮掃描過程中,每位顯示器的點亮?xí)r間是極為短暫的(約1ms),但由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),盡管實際上各位顯示器并非同時點亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會有閃爍感。這種顯示方式大大減少了硬件資源(I/O口),功耗相對靜態(tài)顯示來說也大大降低。本測試儀的數(shù)碼顯示采用動態(tài)掃描顯示方式。
本測試儀共有3個功能按鍵,其電路如圖6所示。
圖6 FC終端模塊便攜式測試儀按鍵單元電路
在圖6中,當(dāng)開關(guān)S2未被按下時,P1.0輸入為高電平;S2閉合后,P1.0輸入為低電平。P1.0輸入端的波形如圖7所示。由于按鍵是機械觸點,當(dāng)機械觸點斷開、閉合時,會有抖動。這種抖動對于人來說是感覺不到的,但對計算機來說,則是完全可以感應(yīng)到的。因為計算機處理的速度是在微秒級,而機械抖動的時間至少是毫秒級。對計算機而言,這已是一個“漫長”的時間了。為使CPU能正確地讀出P1口的狀態(tài),對每一次按鍵只作一次響應(yīng),就必須考慮如何去除抖動。
圖7 按鍵開關(guān)的抖動示意圖
常用的去抖動的方法有兩種:硬件方法和軟件方法。本測試儀采用軟件法,即:在單片機獲得P1.0口為低電平的信息后,不是立即認定S1已被按下,而是延時10ms后再次檢測P1.0口,如果仍為低,說明S1的確按下了。這實際上是避開了按鍵按下時的抖動時間。而在檢測到按鍵釋放后(P1.0為高電平)再延時5~10個ms,消除后沿的抖動,然后再對鍵值處理。
通過3個功能按鍵,可選擇及控制不同設(shè)備的不同模塊。筆者設(shè)計的程序中,S3用來控制四位一體數(shù)碼管的第一位:通過按下S3來增加或遞減數(shù)碼管的第一位數(shù)字,用其來代表不同模塊。S3、S4的聯(lián)動,用來控制四位一體數(shù)碼管的第二、三、四位:以相應(yīng)的組合方式按下S3、S4來增加或遞減數(shù)碼管的第二、三、四位數(shù)字,用其來代表不同模塊的不同功能。S2是數(shù)據(jù)發(fā)送按鍵,通過S3、S4選擇好具體模塊的具體功能后,按下S4將其數(shù)據(jù)由測試儀發(fā)送至設(shè)備模塊,從而控制模塊動作及接收模塊發(fā)回的數(shù)據(jù)。
現(xiàn)實中AFC終端設(shè)備擁有各類的模塊,而模塊不同,錯誤代碼提供的方式也有區(qū)別。如有些模塊錯誤代碼僅有一個字節(jié),那么測試儀收到這一字節(jié)的錯誤代碼后,通過軟件轉(zhuǎn)換可直接在數(shù)碼管上顯示此錯誤代碼。而另一些模塊會因故障的不同,出現(xiàn)若干個字節(jié)的數(shù)量不等的錯誤代碼,而此類錯誤代碼則可通過數(shù)碼管的交替閃爍來一一顯示。
現(xiàn)在AFC設(shè)備各模塊(如紙幣模塊、硬幣模塊、發(fā)卡模塊、回收卡模塊等)提供的COM口是采用RS-232接口標準的。而RS-232是用正負電壓來表示邏輯狀態(tài)的,與TTL(晶體管-晶體管邏輯電平)以高低電平來表示邏輯狀態(tài)的規(guī)定不同。因此,為了能夠同各模塊終端的TTL器件(如單片機)連接,必須在RS-232與TTL電路之間進行電平和邏輯關(guān)系的變換。本測試儀變換電路選用一款兼容RS-232標準的轉(zhuǎn)接芯片,即MAX232。
MAX232芯片是美信(MAXIM)公司專為RS-232標準串口設(shè)計的單電源電平轉(zhuǎn)換芯片,使用+5 V單電源供電。該器件包含2個驅(qū)動器、2個接收器和1個電壓發(fā)生器電路提供 TIA/EIA-232-F電平轉(zhuǎn)換成5VTTL/CMOS電平。每一個發(fā)送器將TTL/CMOS電平轉(zhuǎn)換成 TIA/EIA-232-F電平。
通過圖8所示電路,本測試儀可與設(shè)備的各模塊進行通信,發(fā)送、接受命令,以及下載各種指令和程序。
圖8 串口通信單元電路
單片機軟件設(shè)計中,其程序由主程序和中斷子程序組成。主程序負責(zé)兩項任務(wù):其一為對相連接的設(shè)備模塊進行命令的發(fā)送,從而控制模塊的動作;其二為對來自與其連接設(shè)備模塊發(fā)送來的命令進行解析 ,對所接收到的數(shù)據(jù)信息進行判斷,得出模塊正常與否等。中斷服務(wù)程序只負責(zé)單片機和上位機之間的數(shù)據(jù)發(fā)送與接收。其程序的流程圖如圖9所示。
圖9 單片機軟件設(shè)計程序流程圖
通過本測試儀,只要編譯相關(guān)程序,便能測試所有AFC終端設(shè)備所有模塊,不但能顯示終端設(shè)備的錯誤代碼,還能對模塊進行任何動作的操作,使AFC維修人員快速得知終端模塊的具體問題。本測試儀彌補了軟件及廠方提供的單模塊測試儀方面的不足。
[1]李廣弟.單片機基礎(chǔ)[M].修訂版.北京:北京航天航空大學(xué)出版社,2005.
[2]秦曾煌.電工學(xué)(下冊)[M].5版.北京:高等教育出版社,2004.