0 引言
隨著科學技術的進步、社會經濟的飛速發(fā)展,IC卡正越來越廣泛地應用于人們生活的各個領域。車載IC卡自動檢票機以能夠反復使用的IC卡作為付費介質,用戶在其中存入一定金額,乘車時將卡靠近檢票機,檢票機自動扣去當次票價,并轉存在檢票機中,實現(xiàn)了無現(xiàn)金交易。IC卡公共汽車自動售票系統(tǒng)不僅可以減輕售票員的勞動強度,還可以避免工作出錯,從而提高了公交公司的管理水平[2]。該文設計的IC卡自動檢票機采用PIC 單片機作為主控制器,實現(xiàn)了低功耗、高可靠性的設計需求。
1 車載IC卡自動檢票機的功能
車載IC卡自動檢票機是公交車上使用的收費設備,乘客的刷卡數(shù)據將記錄在車載機中,然后用數(shù)據采集盒或其他專用設備將車載機中的數(shù)據下載,并送往數(shù)據采集工作站的分公司,傳入PC 機。最后使用通信線路將數(shù)據傳至總公司IC卡管理中心進行匯總。
1) 檢票功能: 當有IC卡靠近檢票機的有效工作范圍時,讀取IC卡的標識碼,辨別乘客類別,并進行相應的讀寫操作。成功扣除當次票價后,蜂鳴器發(fā)出短“滴”聲,同時綠燈閃亮。
2) 數(shù)據存儲功能:對成功刷卡的數(shù)據進行保存,包括營業(yè)額、用戶卡號、刷卡時間、用戶卡類型等數(shù)據; 對刷卡處理不完全的或列入黑名單的卡也能予以記載。
3) 參數(shù)設置功能: 車載機可以通過設置卡進行線路、票價、車號、機號、時間的設置。
4) 查詢功能: 按查詢按鈕可以翻查乘客的刷卡記錄、當班司機的簽到情況及運營情況。
5) 時間校準功能:可以用帶有時間校準任務的采集盒,在采集數(shù)據時自動校準車載機的時鐘。
6) 顯示功能: 可以顯示乘客卡類型、卡號、刷卡時間、當次票價、卡內余額; 司機卡號、簽到時間等信息。
7) 報警功能: 包括語音報警、指示燈提示、LCD顯示。對余額不足、偽卡、不正確刷卡、黑名單卡等情況及時報警。
8) 電源監(jiān)控功能: 當系統(tǒng)電壓過低或掉電時,系統(tǒng)采取自我保護措施,并保存重要數(shù)據。
2 系統(tǒng)的硬件結構設計
在設計中,選用低功耗的PIC 系列單片機作為主控制器。該系列單片機容量適中、功能豐富、運行速度快、性能可靠、價格低,滿足車載機的設計要求。結構框圖如圖1 所示。
圖1 自動檢票機的結構框圖
2. 1 RS232 與無線通信
系統(tǒng)設計了2 個標準的RS232 接口和一個無線通信接口。其中一個RS232 接口用于系統(tǒng)設置,一個用于通信。在采集數(shù)據時,一般將數(shù)據采集盒插入RS232 通信接口進行數(shù)據采集,也可以使用帶有無線通信功能的采集器進行數(shù)據采集及下傳黑名單和運營參數(shù)。
目前,車載機中使用的無線通信種類繁多,有紅外線、藍牙、2. 4G 等。無線紅外技術帶寬大,穩(wěn)定性佳。但紅外無線傳輸技術對指向性要求很高,稍微偏離角度就不能進行操作; 另外,紅外無線傳輸對于發(fā)射功率要求較高。
2. 4G 技術可以雙工工作,單向傳輸速率可達2 Mbps,但價格較高。由于藍牙成本低,保密性好,目前的技術已經相當成熟,性價比較高,所以在設計中使用藍牙技術。
2. 2 IC卡讀寫與數(shù)據存儲
當IC卡靠近讀寫器時,車載機讀取IC卡的各種數(shù)據信息,并進行相應的處理。設計中選用13. 56 MHz的MF RC500 來完成對MIFARE1 射頻IC卡信息的讀寫工作。MF RC500 內部包括安全和密碼控制單元,支持快速CRYPTOI 加密算法,可用于驗證Mifare1 IC卡; MF RC500 與IC卡的通信距離最大為100 mm。在IC卡進入工作范圍后,卡與讀寫器之間必須進行3 次雙向認證,只有認證通過后,才可讀寫數(shù)據。此外,MIFARE1 卡具有16 分區(qū),各個分區(qū)都有自己的讀寫密碼和訪問機制,能應用于不同的場合或系統(tǒng),有很強的擴展性,可以真正做到“一卡多用”。
存儲器EEPROM 24C64 用于存放營業(yè)額、用戶卡號、黑名單等數(shù)據。當IC卡讀寫完畢,成功刷卡后,當次扣除的金額及用戶卡號等信息將自動存入24C64。
2. 3 顯示器與按鈕設計
顯示器主要用來完成檢票機所扣金額和用戶所持IC卡內余額的顯示。設計采用帶字庫的128 ×64 LCD 顯示器,其特點是功耗低,可靠性高,電路簡單。
按鈕設計有查詢按鈕和設置按鈕。操作員按查詢按鈕一次,查詢最后一位乘客的刷卡記錄,再按動一次,查詢前一位乘客的刷卡記錄; 連續(xù)按查詢按鈕2 次,可以查詢司機卡號、簽到時間、營業(yè)額。按動設置按鈕,可以設置參數(shù)、翻查車載機的設置情況及取消報警。
2. 4 電源監(jiān)控電路
由于一些因素,可能導致系統(tǒng)電壓過低或掉電,利用電源監(jiān)控電路可進行數(shù)據保存,防止數(shù)據丟失。該部分選擇DS1232 監(jiān)控芯片來完成。DS1232 是一個具有看門狗功能的電源監(jiān)測芯片,在電源上電、斷電、電壓瞬態(tài)下降和死機時都會輸出一個復位脈沖,十分適合電源監(jiān)控電路。
3 系統(tǒng)的軟件設計
3. 1 主程序
主程序流程如圖2 所示。第1 步,在系統(tǒng)開始檢票以前,各個模塊先進行初始化。第2步,當沒有IC卡靠近檢票機的有效工作區(qū)域時,檢票機上的顯示模塊顯示“歡迎乘坐”及時間。當有IC卡靠近時,先驗證是否是本系統(tǒng)下發(fā)的IC卡,如果不是,則采用蜂鳴器報警,如果是,則進行讀卡操作; 第3 步,讀取IC卡的特征碼,辨識該IC卡是管理員卡,司機卡,還是乘客卡,并執(zhí)行相應的處理程序。如果不是這3 類卡,則判定是偽卡,不能進行刷卡。
圖2 主程序流程圖
3. 2 乘客卡處理
乘客卡的處理子程序流程如圖3 所示。當判定為乘客卡后,系統(tǒng)再根據第二套特征碼進行辨識,判斷該卡是優(yōu)惠卡、老人卡、學生卡還是普通卡。判斷完后,系統(tǒng)將按照事先設置好的票價,從IC卡中的余額扣除當次票價,并將所扣金額加到營業(yè)額,保存刷卡記錄。為了系統(tǒng)更加人性化,乘客刷卡成功后,系統(tǒng)發(fā)出“嘀”聲,且綠燈亮。當乘客卡中的金額少于當次票價時,系統(tǒng)發(fā)出“嘀、嘀”的報警聲,并且語音提示“余額不足,請投幣”,紅燈亮。司機可以按動設置按鈕一次,取消報警。當乘客卡中的金額少于5 元時,每次成功刷卡后,系統(tǒng)語音提示“請充值”。
圖3 乘客卡處理子程序流程圖
3. 3 黑名單卡處理
為了防止偽造卡、丟失卡的非法使用,在讀取乘客卡號時,系統(tǒng)將與黑名單進行比對。若發(fā)現(xiàn)黑名單卡,則發(fā)出“嘀嘀嘀”的報警聲,紅燈閃爍,并將該卡鎖定,做上標記。為了黑名單能夠實時更新。數(shù)據采集盒在數(shù)據采集工作站進行數(shù)據處理時,工作站會自動將數(shù)據采集盒中的黑名單更新;數(shù)據采集盒在對車載機進行數(shù)據采集時,會自動將新版本黑名單下載至車載機。
4 結語
公交車載自動檢票機的使用,使得目前公交行業(yè)中的收費工作大為簡化,且更具開放性。所設計的基于PIC 的非接觸式IC卡檢票機,抗振性能好、可靠性高、實用性強,收費過程所需時間短,操作簡便,大大提高了工作效率。另外,非接觸式IC卡的使用壽命較長,該文所選的IC卡分區(qū)多,加密性好,為以后實現(xiàn)“交通一卡通”奠定了基礎。