應(yīng)用

技術(shù)

物聯(lián)網(wǎng)世界 >> 解決方案 >> 物聯(lián)網(wǎng)方案
企業(yè)注冊(cè)個(gè)人注冊(cè)登錄

基于單片機(jī)PIC的車載IC卡自動(dòng)檢票機(jī)設(shè)計(jì)

   0 引言

  隨著科學(xué)技術(shù)的進(jìn)步、社會(huì)經(jīng)濟(jì)的飛速發(fā)展,IC卡正越來(lái)越廣泛地應(yīng)用于人們生活的各個(gè)領(lǐng)域。車載IC卡自動(dòng)檢票機(jī)以能夠反復(fù)使用的IC卡作為付費(fèi)介質(zhì),用戶在其中存入一定金額,乘車時(shí)將卡靠近檢票機(jī),檢票機(jī)自動(dòng)扣去當(dāng)次票價(jià),并轉(zhuǎn)存在檢票機(jī)中,實(shí)現(xiàn)了無(wú)現(xiàn)金交易。IC卡公共汽車自動(dòng)售票系統(tǒng)不僅可以減輕售票員的勞動(dòng)強(qiáng)度,還可以避免工作出錯(cuò),從而提高了公交公司的管理水平[2]。該文設(shè)計(jì)的IC卡自動(dòng)檢票機(jī)采用PIC 單片機(jī)作為主控制器,實(shí)現(xiàn)了低功耗、高可靠性的設(shè)計(jì)需求。

  1 車載IC卡自動(dòng)檢票機(jī)的功能

  車載IC卡自動(dòng)檢票機(jī)是公交車上使用的收費(fèi)設(shè)備,乘客的刷卡數(shù)據(jù)將記錄在車載機(jī)中,然后用數(shù)據(jù)采集盒或其他專用設(shè)備將車載機(jī)中的數(shù)據(jù)下載,并送往數(shù)據(jù)采集工作站的分公司,傳入PC 機(jī)。最后使用通信線路將數(shù)據(jù)傳至總公司IC卡管理中心進(jìn)行匯總。

  1) 檢票功能: 當(dāng)有IC卡靠近檢票機(jī)的有效工作范圍時(shí),讀取IC卡的標(biāo)識(shí)碼,辨別乘客類別,并進(jìn)行相應(yīng)的讀寫操作。成功扣除當(dāng)次票價(jià)后,蜂鳴器發(fā)出短“滴”聲,同時(shí)綠燈閃亮。
  2) 數(shù)據(jù)存儲(chǔ)功能:對(duì)成功刷卡的數(shù)據(jù)進(jìn)行保存,包括營(yíng)業(yè)額、用戶卡號(hào)、刷卡時(shí)間、用戶卡類型等數(shù)據(jù); 對(duì)刷卡處理不完全的或列入黑名單的卡也能予以記載。
  3) 參數(shù)設(shè)置功能: 車載機(jī)可以通過(guò)設(shè)置卡進(jìn)行線路、票價(jià)、車號(hào)、機(jī)號(hào)、時(shí)間的設(shè)置。
  4) 查詢功能: 按查詢按鈕可以翻查乘客的刷卡記錄、當(dāng)班司機(jī)的簽到情況及運(yùn)營(yíng)情況。
  5) 時(shí)間校準(zhǔn)功能:可以用帶有時(shí)間校準(zhǔn)任務(wù)的采集盒,在采集數(shù)據(jù)時(shí)自動(dòng)校準(zhǔn)車載機(jī)的時(shí)鐘。
  6) 顯示功能: 可以顯示乘客卡類型、卡號(hào)、刷卡時(shí)間、當(dāng)次票價(jià)、卡內(nèi)余額; 司機(jī)卡號(hào)、簽到時(shí)間等信息。
  7) 報(bào)警功能: 包括語(yǔ)音報(bào)警、指示燈提示、LCD顯示。對(duì)余額不足、偽卡、不正確刷卡、黑名單卡等情況及時(shí)報(bào)警。
  8) 電源監(jiān)控功能: 當(dāng)系統(tǒng)電壓過(guò)低或掉電時(shí),系統(tǒng)采取自我保護(hù)措施,并保存重要數(shù)據(jù)。

  2 系統(tǒng)的硬件結(jié)構(gòu)設(shè)計(jì)

  在設(shè)計(jì)中,選用低功耗的PIC 系列單片機(jī)作為主控制器。該系列單片機(jī)容量適中、功能豐富、運(yùn)行速度快、性能可靠、價(jià)格低,滿足車載機(jī)的設(shè)計(jì)要求。結(jié)構(gòu)框圖如圖1 所示。



  圖1 自動(dòng)檢票機(jī)的結(jié)構(gòu)框圖

  2. 1 RS232 與無(wú)線通信

  系統(tǒng)設(shè)計(jì)了2 個(gè)標(biāo)準(zhǔn)的RS232 接口和一個(gè)無(wú)線通信接口。其中一個(gè)RS232 接口用于系統(tǒng)設(shè)置,一個(gè)用于通信。在采集數(shù)據(jù)時(shí),一般將數(shù)據(jù)采集盒插入RS232 通信接口進(jìn)行數(shù)據(jù)采集,也可以使用帶有無(wú)線通信功能的采集器進(jìn)行數(shù)據(jù)采集及下傳黑名單和運(yùn)營(yíng)參數(shù)。

  目前,車載機(jī)中使用的無(wú)線通信種類繁多,有紅外線、藍(lán)牙、2. 4G 等。無(wú)線紅外技術(shù)帶寬大,穩(wěn)定性佳。但紅外無(wú)線傳輸技術(shù)對(duì)指向性要求很高,稍微偏離角度就不能進(jìn)行操作; 另外,紅外無(wú)線傳輸對(duì)于發(fā)射功率要求較高。

  2. 4G 技術(shù)可以雙工工作,單向傳輸速率可達(dá)2 Mbps,但價(jià)格較高。由于藍(lán)牙成本低,保密性好,目前的技術(shù)已經(jīng)相當(dāng)成熟,性價(jià)比較高,所以在設(shè)計(jì)中使用藍(lán)牙技術(shù)。

  2. 2 IC卡讀寫與數(shù)據(jù)存儲(chǔ)

  當(dāng)IC卡靠近讀寫器時(shí),車載機(jī)讀取IC卡的各種數(shù)據(jù)信息,并進(jìn)行相應(yīng)的處理。設(shè)計(jì)中選用13. 56 MHz的MF RC500 來(lái)完成對(duì)MIFARE1 射頻IC卡信息的讀寫工作。MF RC500 內(nèi)部包括安全和密碼控制單元,支持快速CRYPTOI 加密算法,可用于驗(yàn)證Mifare1 IC卡; MF RC500 與IC卡的通信距離最大為100 mm。在IC卡進(jìn)入工作范圍后,卡與讀寫器之間必須進(jìn)行3 次雙向認(rèn)證,只有認(rèn)證通過(guò)后,才可讀寫數(shù)據(jù)。此外,MIFARE1 卡具有16 分區(qū),各個(gè)分區(qū)都有自己的讀寫密碼和訪問(wèn)機(jī)制,能應(yīng)用于不同的場(chǎng)合或系統(tǒng),有很強(qiáng)的擴(kuò)展性,可以真正做到“一卡多用”。

  存儲(chǔ)器EEPROM 24C64 用于存放營(yíng)業(yè)額、用戶卡號(hào)、黑名單等數(shù)據(jù)。當(dāng)IC卡讀寫完畢,成功刷卡后,當(dāng)次扣除的金額及用戶卡號(hào)等信息將自動(dòng)存入24C64。

  2. 3 顯示器與按鈕設(shè)計(jì)

  顯示器主要用來(lái)完成檢票機(jī)所扣金額和用戶所持IC卡內(nèi)余額的顯示。設(shè)計(jì)采用帶字庫(kù)的128 ×64 LCD 顯示器,其特點(diǎn)是功耗低,可靠性高,電路簡(jiǎn)單。

  按鈕設(shè)計(jì)有查詢按鈕和設(shè)置按鈕。操作員按查詢按鈕一次,查詢最后一位乘客的刷卡記錄,再按動(dòng)一次,查詢前一位乘客的刷卡記錄; 連續(xù)按查詢按鈕2 次,可以查詢司機(jī)卡號(hào)、簽到時(shí)間、營(yíng)業(yè)額。按動(dòng)設(shè)置按鈕,可以設(shè)置參數(shù)、翻查車載機(jī)的設(shè)置情況及取消報(bào)警。

  2. 4 電源監(jiān)控電路

  由于一些因素,可能導(dǎo)致系統(tǒng)電壓過(guò)低或掉電,利用電源監(jiān)控電路可進(jìn)行數(shù)據(jù)保存,防止數(shù)據(jù)丟失。該部分選擇DS1232 監(jiān)控芯片來(lái)完成。DS1232 是一個(gè)具有看門狗功能的電源監(jiān)測(cè)芯片,在電源上電、斷電、電壓瞬態(tài)下降和死機(jī)時(shí)都會(huì)輸出一個(gè)復(fù)位脈沖,十分適合電源監(jiān)控電路。

  3 系統(tǒng)的軟件設(shè)計(jì)

  3. 1 主程序

  主程序流程如圖2 所示。第1 步,在系統(tǒng)開始檢票以前,各個(gè)模塊先進(jìn)行初始化。第2步,當(dāng)沒有IC卡靠近檢票機(jī)的有效工作區(qū)域時(shí),檢票機(jī)上的顯示模塊顯示“歡迎乘坐”及時(shí)間。當(dāng)有IC卡靠近時(shí),先驗(yàn)證是否是本系統(tǒng)下發(fā)的IC卡,如果不是,則采用蜂鳴器報(bào)警,如果是,則進(jìn)行讀卡操作; 第3 步,讀取IC卡的特征碼,辨識(shí)該IC卡是管理員卡,司機(jī)卡,還是乘客卡,并執(zhí)行相應(yīng)的處理程序。如果不是這3 類卡,則判定是偽卡,不能進(jìn)行刷卡。 



  圖2 主程序流程圖

  3. 2 乘客卡處理

  乘客卡的處理子程序流程如圖3 所示。當(dāng)判定為乘客卡后,系統(tǒng)再根據(jù)第二套特征碼進(jìn)行辨識(shí),判斷該卡是優(yōu)惠卡、老人卡、學(xué)生卡還是普通卡。判斷完后,系統(tǒng)將按照事先設(shè)置好的票價(jià),從IC卡中的余額扣除當(dāng)次票價(jià),并將所扣金額加到營(yíng)業(yè)額,保存刷卡記錄。為了系統(tǒng)更加人性化,乘客刷卡成功后,系統(tǒng)發(fā)出“嘀”聲,且綠燈亮。當(dāng)乘客卡中的金額少于當(dāng)次票價(jià)時(shí),系統(tǒng)發(fā)出“嘀、嘀”的報(bào)警聲,并且語(yǔ)音提示“余額不足,請(qǐng)投幣”,紅燈亮。司機(jī)可以按動(dòng)設(shè)置按鈕一次,取消報(bào)警。當(dāng)乘客卡中的金額少于5 元時(shí),每次成功刷卡后,系統(tǒng)語(yǔ)音提示“請(qǐng)充值”。 



  圖3 乘客卡處理子程序流程圖

  3. 3 黑名單卡處理

  為了防止偽造卡、丟失卡的非法使用,在讀取乘客卡號(hào)時(shí),系統(tǒng)將與黑名單進(jìn)行比對(duì)。若發(fā)現(xiàn)黑名單卡,則發(fā)出“嘀嘀嘀”的報(bào)警聲,紅燈閃爍,并將該卡鎖定,做上標(biāo)記。為了黑名單能夠?qū)崟r(shí)更新。數(shù)據(jù)采集盒在數(shù)據(jù)采集工作站進(jìn)行數(shù)據(jù)處理時(shí),工作站會(huì)自動(dòng)將數(shù)據(jù)采集盒中的黑名單更新;數(shù)據(jù)采集盒在對(duì)車載機(jī)進(jìn)行數(shù)據(jù)采集時(shí),會(huì)自動(dòng)將新版本黑名單下載至車載機(jī)。

  4 結(jié)語(yǔ)

  公交車載自動(dòng)檢票機(jī)的使用,使得目前公交行業(yè)中的收費(fèi)工作大為簡(jiǎn)化,且更具開放性。所設(shè)計(jì)的基于PIC 的非接觸式IC卡檢票機(jī),抗振性能好、可靠性高、實(shí)用性強(qiáng),收費(fèi)過(guò)程所需時(shí)間短,操作簡(jiǎn)便,大大提高了工作效率。另外,非接觸式IC卡的使用壽命較長(zhǎng),該文所選的IC卡分區(qū)多,加密性好,為以后實(shí)現(xiàn)“交通一卡通”奠定了基礎(chǔ)。