物聯(lián)傳媒 旗下網(wǎng)站
登錄 注冊

一種基于CAN總線的高校食堂刷卡系統(tǒng)的設(shè)計方案

作者:RFID世界網(wǎng)收錄
來源:與非網(wǎng)
日期:2013-03-18 09:13:57
摘要:在如今的高校食堂,由于學(xué)生數(shù)量龐大,流動性頻繁,傳統(tǒng)的紙質(zhì)餐票、現(xiàn)金或基于接觸式IC卡技術(shù)的消費支付方式存在服務(wù)效率不高、便捷性差、管理成本高、卡片易損壞等諸多弊端。高校食堂消費作為學(xué)校后勤服務(wù)的重要組成部分,如果仍沿用以前傳統(tǒng)的消費方式,將動用大量的人力物力,而且管理上會出現(xiàn)很多繁瑣的事務(wù),這樣不利于高校更好地為廣大師生服務(wù)以及學(xué)校的管理。

引言

  在如今的高校食堂,由于學(xué)生數(shù)量龐大,流動性頻繁,傳統(tǒng)的紙質(zhì)餐票、現(xiàn)金或基于接觸式IC卡技術(shù)的消費支付方式存在服務(wù)效率不高、便捷性差、管理成本高、卡片易損壞等諸多弊端。高校食堂消費作為學(xué)校后勤服務(wù)的重要組成部分,如果仍沿用以前傳統(tǒng)的消費方式,將動用大量的人力物力,而且管理上會出現(xiàn)很多繁瑣的事務(wù),這樣不利于高校更好地為廣大師生服務(wù)以及學(xué)校的管理。為了解決這一問題,如今,越來越多的高校采用智能卡技術(shù)和網(wǎng)絡(luò)技術(shù)相結(jié)合來構(gòu)建學(xué)校的食堂刷卡系統(tǒng)。

  非接觸式智能卡技術(shù)和CAN總線技術(shù)都是當(dāng)今世界科技迅猛發(fā)展的產(chǎn)物。智能卡技術(shù)廣泛的應(yīng)用于各行業(yè),特別是公共交通、無線通信、身份識別、金融交易和安全防衛(wèi)等行業(yè);而CAN總線在可靠性、實時性和靈活性方面都有突出的優(yōu)點。如果將非接觸式IC卡技術(shù)和CAN總線技術(shù)2種熱點技術(shù)結(jié)合起來,開發(fā)一套基于CAN總線的高校食堂刷卡系統(tǒng),對優(yōu)化廣大師生的生活,提高高校食堂管理水平和服務(wù)質(zhì)量,將具有很好的促進作用。

1、系統(tǒng)總體設(shè)計

  1.1系統(tǒng)設(shè)計原則

  根據(jù)設(shè)計的背景以及系統(tǒng)的設(shè)計任務(wù)和要求,該系統(tǒng)在研究和設(shè)計過程中要遵循4個方面的原則:安全性、可靠性、易用性、易維護性。

  1.2系統(tǒng)主要技術(shù)方案選擇

  本系統(tǒng)設(shè)計需要首先確定的主要技術(shù)方案有:通信總線的選擇、卡片的選擇、卡讀寫操作技術(shù)方案的選擇。通過充分的比較論證,本系統(tǒng)采用CAN總線來構(gòu)建系統(tǒng)網(wǎng)絡(luò),選用Philips公司設(shè)計的MifarelS50非接觸式IC卡作為高校食堂刷卡系統(tǒng)的信息載體,為了提高系統(tǒng)的可靠性、穩(wěn)定性和兼容性,本系統(tǒng)采用購買北京易火眼公司的YHY502ATG射頻卡讀寫模塊來對射頻卡進行讀寫操作。

  1.3系統(tǒng)設(shè)計主要器件選擇

  根據(jù)市場情況、開發(fā)工具和設(shè)計的實際需要,本系統(tǒng)的發(fā)卡節(jié)點和刷卡節(jié)點均選用單片機AT89S52作為主控芯片??紤]到SJA1000支持CAN2.0A/B協(xié)議,而PCA82C250可以支持110個CAN節(jié)點,并且在國內(nèi)市場上Philips的產(chǎn)品型號比較多,購買方便,所以選用Philips公司的SJA1000作為CAN控制器以及PCA82C250作為CAN總線收發(fā)器。

  1.4系統(tǒng)整體結(jié)構(gòu)

  根據(jù)系統(tǒng)設(shè)計所確定的技術(shù)方案,系統(tǒng)整體結(jié)構(gòu)如圖1所示。

  1.5系統(tǒng)功能模塊劃分  

  根據(jù)系統(tǒng)設(shè)計的功能任務(wù)和要求,可把本系統(tǒng)劃分為3大功能模塊:發(fā)卡模塊、刷卡模塊和系統(tǒng)上位機模塊,如圖2所示。

2、系統(tǒng)硬件電路設(shè)計

  2.1硬件總體設(shè)計方案

  高校食堂刷卡系統(tǒng)硬件部分分為發(fā)卡機和刷卡機,根據(jù)系統(tǒng)功能模塊劃分,系統(tǒng)硬件電路具體由7部分構(gòu)成:AT89S52最小系統(tǒng)外圍電路、射頻卡讀寫模塊YHY502ATG電路、串口通信電路、CAN總線通信電路、LCD12864顯示電路、鍵盤輸入電路和報警提示電路。系統(tǒng)硬件電路組成如圖3所示。

  2.2射頻卡讀/寫模塊電路設(shè)計

  YHY502ATG射頻卡讀/寫模塊與微控制器之間的通信通過I2C總線實現(xiàn),可參考YHY502ATG的技術(shù)應(yīng)用手冊來設(shè)計應(yīng)用電路。YHY502ATG讀寫模塊提供一組對卡操作的通信協(xié)議,不必考慮底層通信數(shù)據(jù)的處理,不過必須遵守這些通信協(xié)議,并根據(jù)設(shè)計需要在控制端修改相應(yīng)程序即可。

  2.3串口通信接口電路設(shè)計

  設(shè)計采用9芯的RS232C接口實現(xiàn)下位機與上位機之間的通信,AT89S52本身帶有一個全雙工UART串行通道,在硬件電路設(shè)計中,為了使AT89S52單片機的輸入輸出TTL電平與PC機配置的RS232C標準串行接口二者的電氣規(guī)范一致,本系統(tǒng)采用MAX232芯片實現(xiàn)AT89S52與PC機的RS232C標準接口電平之間的轉(zhuǎn)換。

  2.4CAN總線接口電路設(shè)計

  系統(tǒng)采用CAN通信控制器SJA1000和CAN收發(fā)器PCA82C250設(shè)計CAN總線節(jié)點接口電路。在硬件電路設(shè)計時,總線末端的2個120Ω電阻,對于匹配總線阻抗起著非常重要的作用。如果忽略掉它們,會使數(shù)據(jù)通信的抗干擾能力及可靠性大大降低,甚至無法通信。

  2.5鍵盤輸入電路設(shè)計

  鍵盤電路用來接收用戶刷卡消費輸入的金額,所以一個穩(wěn)定、占用系統(tǒng)資源少的人機對話通道非常重要。傳統(tǒng)的鍵盤電路設(shè)計,不管是獨立式鍵盤還是矩陣式鍵盤,都非常浪費微控制器的端口資源,而且還需要人為進行去抖動處理,且抗干擾能力差。為了克服上述弊端,本系統(tǒng)采用廣州周立功單片機發(fā)展有限公司自行設(shè)計的一款數(shù)碼管顯示驅(qū)動及鍵盤掃描管理芯片ZLG7290來設(shè)計鍵盤電路。

  2.6液晶顯示模塊電路設(shè)計

  液晶顯示模塊電路用來提示用戶刷卡消費的信息,為了使系統(tǒng)人機交互界面友好,液晶顯示模塊電路采用長沙太陽人公司生產(chǎn)的SMG12864G3-ZK型液晶來設(shè)計。為了節(jié)約單片機的I/O資源,液晶模塊采用串行接口方式。

  2.7系統(tǒng)復(fù)位電路設(shè)計

  為了使單片機AT89S52和CAN控制器SJA1000同時復(fù)位,本系統(tǒng)采用IMP708復(fù)位芯片設(shè)計復(fù)位電路。IMP708為微處理監(jiān)控芯片,具有系統(tǒng)復(fù)位、掉電復(fù)位、手動復(fù)位、“看門狗”、定時輸出、電源電壓監(jiān)測、具有不同復(fù)位電壓等特點。該芯片功耗低、使用簡單、價格低廉、可靠性高,應(yīng)用十分廣泛。

3、系統(tǒng)軟件設(shè)計

  本系統(tǒng)的軟件設(shè)計分為上位機和下位機2部分。下位機軟件設(shè)計需要完成系統(tǒng)發(fā)卡節(jié)點和刷卡節(jié)點軟件的開發(fā),針對各節(jié)點要完成的功能及要求,展開具體的分析、繪制程序流程圖、設(shè)計各功能模塊軟件程序。上位機監(jiān)控程序的開發(fā)是本系統(tǒng)的一個難點和重點,主要實現(xiàn)上位機和下位機之間的通信、對發(fā)卡節(jié)點的命令操作、注冊用戶、消費信息實時管理、用戶數(shù)據(jù)管理等功能。

  3.1發(fā)卡節(jié)點程序設(shè)計

發(fā)卡節(jié)點主要完成用戶的充值、串口通信等操作,結(jié)合硬件電路設(shè)計,為了實現(xiàn)各模塊的功能,發(fā)卡節(jié)點的軟件總體設(shè)計流程如圖4所示。

  3.2刷卡節(jié)點程序設(shè)計

  刷卡節(jié)點主要完成的功能有讀卡序列號、讀錢包、扣款、過程液晶顯示、CAN總線發(fā)送消費結(jié)算信息給上位機。根據(jù)節(jié)點的硬件電路和設(shè)計的功能要求,刷卡節(jié)點程序總體設(shè)計的流程如圖5所示。

  3.3上位機程序設(shè)計

  上位機程序的設(shè)計采用VisualC++6.0MFC編程技術(shù)來實現(xiàn),需要實現(xiàn)用戶信息的注冊或注銷、卡充值、卡扣款、用戶信息查詢和修改等功能,同時建立與數(shù)據(jù)庫的連接能將用戶消費結(jié)算信息實時更新并儲存到數(shù)據(jù)庫中。系統(tǒng)上位機串口通信程序采用的是ActiveX控件MSComm進行編程,數(shù)據(jù)庫編程采用ADO技術(shù),使用數(shù)據(jù)庫管理軟件SQLServer2000。根據(jù)系統(tǒng)的設(shè)計任務(wù)和要求,上位機軟件功能框圖如圖6所示。

4、結(jié)語

  系統(tǒng)成功的實現(xiàn)了上位機與下位機之間的軟硬件調(diào)試,運行穩(wěn)定,效果良好。系統(tǒng)操作能對用戶進行注冊或注銷、用戶信息查詢以及卡充值、卡扣款,并能將用戶的消費結(jié)算信息實時更新至數(shù)據(jù)庫中。本設(shè)計實現(xiàn)了安全、可靠、便捷的發(fā)卡和刷卡,達到了預(yù)期效果。