1 引 言
在我國,公交系統(tǒng)實(shí)行投幣箱代替售票員以來,,大幅提高了公交公司的運(yùn)營效率,。但司機(jī)盜竊投幣箱內(nèi)的票款和乘客使用假硬幣乘車的事情時(shí)有發(fā)生,使公司蒙受巨大的經(jīng)濟(jì)損失,。
除個(gè)人素質(zhì)因素外,,主要的原因是投幣箱的安全性能差、功能單一,。針對(duì)此問題,,這里設(shè)計(jì)了一款智能公交投幣箱:系統(tǒng)以AT89S52單片機(jī)為控制核心,,采用Dallas公司的信息紐扣DS1991構(gòu)成密碼鎖控制電路,用DS1991的密鑰開啟投幣箱的密碼鎖,。每個(gè)分區(qū)都具有64位密碼和識(shí)別區(qū),、安全性能非常高、可以避免因密碼鎖安全性能差而導(dǎo)致車票失竊的事件發(fā)生,。信息鈕扣DS1991與單片機(jī)之間的數(shù)據(jù)傳遞采用單總線協(xié)議,,數(shù)據(jù)傳遞只需將DS1991的數(shù)據(jù)線與單片機(jī)的I/O口短暫接觸即可完成。根據(jù)真,、假硬幣使用的合金材料不相同,,系統(tǒng)采用電渦流傳感器檢測硬幣的真假,可有效地防止乘客使用假硬幣乘坐公交車,。
2 系統(tǒng)結(jié)構(gòu)框圖和組成原理
基于DS1991的智能公交投幣箱的結(jié)構(gòu)框圖如圖1所示:
系統(tǒng)的工作原理:若使用合法授權(quán)的DS1991與單片機(jī)的I/O口短暫接觸,,單片機(jī)將存儲(chǔ)器的數(shù)據(jù)和時(shí)鐘數(shù)據(jù)寫入DS1991密鑰子存儲(chǔ)區(qū),然后單片機(jī)開啟投幣箱的電子密碼鎖,。若使用非授權(quán)的DS1991或其他的單總線器件,,單片機(jī)拒絕開啟投幣箱的電子密碼鎖。當(dāng)系統(tǒng)檢測到有假硬幣投入,,啟動(dòng)假硬幣剔除電路,,使假硬幣從假硬幣通道流出投幣箱,與此同時(shí)蜂鳴器發(fā)聲,。
2.1 DS1991接口電路
本系統(tǒng)采用信息紐扣DS1991,,每個(gè)DS1991工廠刻入檢測過的64位注冊碼,沒有任何兩個(gè)器件的注冊碼相同,。前8位是1-Wire產(chǎn)品的家族碼,,接下來的48位是每個(gè)器件惟一的序列號(hào),最后8位是前面56位碼的CRC校驗(yàn)碼,。它內(nèi)部有安全可靠的1152位的密碼保護(hù)存儲(chǔ)器和512位的非密碼保護(hù)存儲(chǔ)器,。1152位的密碼保護(hù)存儲(chǔ)器被分成3個(gè)分區(qū),每分區(qū)包含384位,,每個(gè)密鑰子區(qū)都具有64位密碼和識(shí)別區(qū),,對(duì)密鑰子存儲(chǔ)區(qū)的讀/寫操作均需進(jìn)行密碼驗(yàn)證。512位的非密碼保護(hù)存儲(chǔ)器主要用于加密數(shù)據(jù)的拷貝,,以保證數(shù)據(jù)的完整性,。DS1991存儲(chǔ)器圖如圖2所示:
DS1991封裝于直徑為16 mm、厚約6 mm的不銹鋼外殼中,。它具有雙向通訊功能,,數(shù)據(jù)傳輸使用單總線協(xié)議,按照單總線協(xié)議,僅用1根數(shù)據(jù)線和地線即可與外界進(jìn)行信息交換,。DS1991屬于漏極開路的單總線器件,,DS1991的連接I/O必須是雙向的,而且必須在I/O口外接一個(gè)4.7 kΩ的上拉電阻,。單片機(jī)與DS1991的傳輸速率可達(dá)16.3 kb/s,,所以信息鈕扣DS1991與單片機(jī)之間的信息傳遞,只需將DS1991的數(shù)據(jù)線和單片機(jī)的I/O口短暫接觸(輕輕一碰)即可完成,。DS1991接口電路如圖3所示:
信息鈕扣DS1991充當(dāng)投幣箱系統(tǒng),、公交公司后臺(tái)管理系統(tǒng)之間數(shù)據(jù)傳遞的橋梁。信息鈕扣DS1991與單片機(jī)進(jìn)行信息交換,,必須先進(jìn)行初始化和ROM操作,,之后才能進(jìn)行存儲(chǔ)器的讀寫操作。
初始化:DS1991初始化時(shí)序如如圖4所示:
單總線上所有的傳輸操作均從初始化過程開始,。初始化過程由單片機(jī)發(fā)出的復(fù)位脈沖和單片機(jī)收應(yīng)答脈沖組成,。若DS1991在I/O線上,則在TPDL時(shí)將數(shù)據(jù)線拉低,,產(chǎn)生應(yīng)答負(fù)脈沖。
ROM功能命令:如果單片機(jī)檢測到應(yīng)答負(fù)脈沖,,就可以發(fā)出4條DS1991支持的ROM功能命令,。本系統(tǒng)I/O線只有1個(gè)信息鈕扣,初始化之后,,可跳過64位ROM系列碼的匹配,,而直接進(jìn)行存儲(chǔ)器的讀寫操作。
存儲(chǔ)器的讀寫操作:這里只分析數(shù)據(jù)寫入密鑰子存儲(chǔ)區(qū)的操作,。首先單片機(jī)發(fā)寫密鑰子存儲(chǔ)區(qū)命令,,發(fā)密鑰子存儲(chǔ)區(qū)區(qū)號(hào)和數(shù)據(jù)目標(biāo)地址,然后收密鑰子存儲(chǔ)區(qū)識(shí)別碼,,驗(yàn)證64位識(shí)別碼,。若64位的識(shí)別碼是非授權(quán)的識(shí)別碼,系統(tǒng)存儲(chǔ)該信息鈕扣的識(shí)別碼及接入系統(tǒng)的時(shí)間,,之后單總線器件復(fù)位,;若64位識(shí)別碼是公交公司合法授權(quán)的識(shí)別碼,單片機(jī)將E2PROM存儲(chǔ)器的64位密碼發(fā)送給DS1991的密鑰子存儲(chǔ)區(qū),。若單片機(jī)發(fā)送的64位密碼和DS1991密鑰子存儲(chǔ)區(qū)的64位密碼不相同,,DS1991的密鑰子存儲(chǔ)區(qū)拒絕寫入數(shù)據(jù),單片機(jī)P1.3口拒絕輸出開鎖電壓,,從而不能開啟投幣箱的電子密碼鎖,;若單片機(jī)發(fā)送的64位密碼和DS1991密鑰子存儲(chǔ)區(qū)的64位密碼相同,單片機(jī)將存儲(chǔ)器的數(shù)據(jù)和時(shí)鐘數(shù)據(jù)寫入DS1991的密鑰子存儲(chǔ)區(qū),單片機(jī)P1.3口輸出開鎖電壓,,從而開啟投幣箱的電子密碼鎖,。
從分析可知:只有使用有合法授權(quán)的DS1991(DS1991的識(shí)別碼合法,DS1991密鑰子存儲(chǔ)區(qū)的64位密碼和投幣箱E2PROM存儲(chǔ)器中的密碼相同)接觸I/O口,,才能開啟投幣箱的電子密碼鎖,;DS1991不僅具有開啟電子密碼鎖的功能,還具備數(shù)據(jù)采集功能,。DS991采集公交車全部數(shù)據(jù)包括投幣箱合法開啟記錄和非法試開記錄,。公司后臺(tái)管理系統(tǒng)讀取DS1991獲取的數(shù)據(jù),結(jié)合公交車輛信息對(duì)公交車輛投幣箱開啟情況進(jìn)行統(tǒng)計(jì)分析,,并可作為公交管理的重要依據(jù),。
信息鈕扣DS1991配發(fā)一般采用多級(jí)配發(fā),各級(jí)信息鈕扣DS1991具有不同的開鎖權(quán)限,。最高級(jí)為總公司級(jí),,可以打開公司所有的公交投幣箱門鎖,最高級(jí)的DS1991權(quán)限最大,,應(yīng)當(dāng)非常安全地保管和使用,。第低級(jí)為車輛級(jí),只能打開某臺(tái)公交投幣箱門鎖,。中間級(jí)信息鈕扣則根據(jù)總公司的管理模式靈活分配信息鈕扣DS1991的開鎖權(quán)限,。
2.2 硬幣處理電路
硬幣處理的結(jié)構(gòu)框圖如圖5所示:
硬幣檢測采用電渦流傳感器獲得檢測信號(hào),工作原理為:當(dāng)給線圈施加高頻正弦信號(hào),,將被測硬幣放人磁場中,,當(dāng)線圈產(chǎn)生的變化磁場通過硬幣表面時(shí),硬幣的表面上會(huì)產(chǎn)生渦流,。該渦流會(huì)產(chǎn)生反向變化磁場,,從而削弱原線圈產(chǎn)生出來的磁場,導(dǎo)致線圈的電感量發(fā)生變化,。在本系統(tǒng)中,,真、假硬幣分別通過線圈L1時(shí),,由于2種硬幣的合金材料不相同,,在硬幣表面產(chǎn)生的渦流不相同,從而使得線圈L1的電感量的變化量不相同,。將該線圈作為電感接入電容三點(diǎn)式振蕩電路,,振蕩電路輸出的正弦信號(hào)的頻率不相同,所以只需測量該電容三點(diǎn)式振蕩電路的輸出正弦頻率,,就可以精確鑒別硬幣的真假,。系統(tǒng)在工作前,,需要預(yù)先學(xué)習(xí):預(yù)先將所有的真硬幣在振蕩電路中的振蕩頻率存入單片機(jī)的E2PROM存儲(chǔ)器。在實(shí)際的鑒別過程中,,由于各種原因引起的誤差,,使得單片機(jī)計(jì)數(shù)的頻率與該種硬幣在存儲(chǔ)器中存儲(chǔ)的頻率有一定的誤差。對(duì)此,,可以設(shè)定一個(gè)允許誤差范圍,,使系統(tǒng)能有效地鑒別硬幣的真假。
當(dāng)乘客投入硬幣時(shí),,硬幣通過光電耦合器處,,硬幣遮擋光束,經(jīng)轉(zhuǎn)換電路產(chǎn)生下降沿,,送人單片機(jī)AT89S52的P3.2口,,INTO產(chǎn)生中斷,系統(tǒng)執(zhí)行硬幣鑒別,。電容三點(diǎn)式振蕩電路輸出的正弦信號(hào),,通過施密特觸發(fā)電路,轉(zhuǎn)換成方波信號(hào),,送入單片機(jī)P3.4口內(nèi)的T1計(jì)數(shù)器計(jì)數(shù),。若計(jì)數(shù)器計(jì)數(shù)的頻率在存儲(chǔ)器存儲(chǔ)的某個(gè)頻率的允許誤差范圍之內(nèi),就認(rèn)為被檢測硬幣的是真硬幣,;若計(jì)數(shù)器計(jì)數(shù)的頻率不在存儲(chǔ)器存儲(chǔ)的任何一個(gè)頻率的允許誤差范圍之內(nèi),,就認(rèn)為被檢測硬幣的是假硬幣。此時(shí)單片機(jī)啟動(dòng)假硬幣剔除電路,,P1.4口輸出高電位,錢幣切換電磁鐵通電,,切換錢幣通道,,使假硬幣從假硬幣通道流出投幣箱,同時(shí)P1.5口輸出高電位,,蜂鳴器發(fā)聲,。本系統(tǒng)為防止錢幣阻塞錢幣通道,設(shè)置了打板電路,。在錢幣通道阻塞時(shí),,司機(jī)打開打板開關(guān),P1.6口輸出高電位,,通電的電機(jī)對(duì)錢幣通道進(jìn)行打板操作,,從而使錢幣通道暢通。
2.3 實(shí)時(shí)時(shí)鐘電路
本系統(tǒng)實(shí)時(shí)時(shí)鐘芯片采用DS1302,。DS1302是DAL-LAS公司推出的涓流充電時(shí)鐘芯片,,內(nèi)含有1個(gè)實(shí)時(shí)時(shí)鐘/日歷和31 B靜態(tài)RAM,,通過簡單的串行接口與單片機(jī)進(jìn)行通信。實(shí)時(shí)時(shí)鐘/日歷電路提供秒,、分,、時(shí)、日,、月,、年的信息,每月的天數(shù)和閏年的天數(shù)可自動(dòng)調(diào)整,。DS1302與單片機(jī)之間采用同步串行的方式進(jìn)行通信,,DS1302和單片機(jī)之間需用3個(gè)I/O:分別連接DS1302的復(fù)位腳RES、串行數(shù)據(jù)I/O和串行時(shí)鐘SCLK,。DS1302為系統(tǒng)提供精確的時(shí)鐘,,當(dāng)有信息紐扣與I/O口接觸,系統(tǒng)就會(huì)自動(dòng)記錄接入系統(tǒng)的時(shí)間,,為以后的查詢提供依據(jù),。
2.4 E2PROM存儲(chǔ)器
本系統(tǒng)采用E2PROM存儲(chǔ)器AT24C32,它是一個(gè)32 kb串行CMOS E2PROM,,內(nèi)部含有4096個(gè)字節(jié),,支持I2C總線數(shù)據(jù)傳送協(xié)議。AT24C32和單片機(jī)之間需用2個(gè)I/O口:一個(gè)接串行時(shí)鐘SCL,,另一個(gè)接串行數(shù)據(jù)/地址SDA,。E2PROM存儲(chǔ)器主要存儲(chǔ)各種幣值的真硬幣在振蕩電路中的振蕩頻率和信息鈕扣的密碼、識(shí)別碼及接入系統(tǒng)的時(shí)間,。
3 系統(tǒng)的軟件設(shè)計(jì)
本系統(tǒng)的軟件流程圖如圖6所示:
4 結(jié) 語
本文設(shè)計(jì)智能公交投幣箱有3個(gè)優(yōu)點(diǎn):
(1)安全性能高,。只有使用合法授權(quán)的DS1991,才能開啟投幣箱的電子密碼鎖,。每個(gè)分區(qū)都具有64位的密碼和識(shí)別碼,,安全性能非常高,可以避免因投幣箱密碼鎖安全性能差而導(dǎo)致車票失竊的事件發(fā)生,。
(2)提高了公交公司的運(yùn)營效率,。采用電渦流傳感器檢測硬幣的真假,可有效地防止乘客使用假硬幣乘坐公交車,。
(3)使用方便,。DS191體積小、攜帶方便,,信息鈕扣DS1991與單片機(jī)的信息傳遞只需輕輕一碰即可完成,。
本智能公交投幣箱的電子密碼鎖開啟后,再開啟智能公交投幣箱的機(jī)械鎖,,投幣箱的門鎖才能被打開,。在公交系統(tǒng)中,,兩次開鎖的工作人員不相同,再次確保投幣箱內(nèi)票款的安全,。用信息紐扣開啟電子密碼鎖的技術(shù),,應(yīng)用在公交投幣箱中,從很大程度上解決了長期困擾公交公司票款被盜的問題,。