新型出租車計(jì)價(jià)器軟件功能分析與實(shí)現(xiàn)
3.2 誤時(shí)價(jià)誤差
用單片機(jī)內(nèi)部定時(shí)器測兩個(gè)霍爾脈沖間的時(shí)間間隔,系統(tǒng)誤差是1μs。假設(shè)最大誤時(shí)計(jì)時(shí)60 min,車速按最快的200 km/h估計(jì),兩脈沖間隔時(shí)間為33.9 ms,即每測33.9 ms有1μs的誤差。誤時(shí)計(jì)時(shí)最大系統(tǒng)誤差等于(60×60×1 000/33.9)×1μs=0.1 s。因?yàn)檎`時(shí)價(jià)每10 s加1次,即計(jì)時(shí)誤差小于1個(gè)計(jì)價(jià)單位。
4 統(tǒng)計(jì)功能的設(shè)計(jì)
4.1 總價(jià)計(jì)算
總的費(fèi)用由里程價(jià)、誤時(shí)價(jià)和附加費(fèi)三部分組成。在出租車停止載客后,計(jì)價(jià)器會(huì)計(jì)算總體費(fèi)用,并從AT24C256中讀取當(dāng)天營業(yè)額,加上當(dāng)次的費(fèi)用后存回到AT24C256中。
4.2 誤差分析
計(jì)程價(jià)每100 m加1次,誤時(shí)價(jià)每10 s加一次,單價(jià)用2B(4位)壓縮型BCD碼表示,最高位“元”,精度為10-3元。計(jì)價(jià)誤差由計(jì)程誤差、誤時(shí)誤差、每次計(jì)價(jià)誤差三分部分構(gòu)成。如果計(jì)程誤差小于1個(gè)計(jì)價(jià)單位,誤時(shí)誤差小于1個(gè)計(jì)價(jià)單位,可以忽略不計(jì)。每次計(jì)價(jià)誤差包括計(jì)程單價(jià)誤差和誤時(shí)單價(jià)誤差。其中若無計(jì)程單價(jià)誤差,則誤時(shí)單價(jià)按每分鐘計(jì)無,每10 s計(jì),除6盡則無,若除不盡最大計(jì)時(shí)60 min,每10s計(jì)一次,誤差為10-3,則因誤時(shí)單價(jià)誤差累積的最大計(jì)價(jià)總誤差為:(60×60/10)×10-3=0.36元。
4.3 統(tǒng)計(jì)功能的實(shí)現(xiàn)
AT24C256存儲(chǔ)芯片有32 KB的存儲(chǔ)容量(0000~7FFF)。1日的統(tǒng)計(jì)信息按最大99 999.999元考慮,最多需要4 B的存儲(chǔ)空間,分別存儲(chǔ)萬位、千位、百位十位、個(gè)位角位以及分厘。則1年的統(tǒng)計(jì)信息需要365×4=1 460 B。1片256可供存儲(chǔ)幾年的統(tǒng)計(jì)信息,如果需要還可以擴(kuò)展多片AT24C256。根據(jù)表1已知,統(tǒng)計(jì)信息從0200H開始存放。
在載客變空車以后,要將當(dāng)次營業(yè)額加到當(dāng)天的營業(yè)額中,即需要讀取AT24C256中相應(yīng)地址中的數(shù)據(jù),加上當(dāng)次營業(yè)額后,再存回AT24 C256中。也就是必須給每天分配一個(gè)絕對的地址,需要設(shè)計(jì)一個(gè)日期轉(zhuǎn)換256地址的子程序。因?yàn)?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/出租車">出租車都需要年檢,故按1年的需求設(shè)計(jì)。
理論上1個(gè)月最多31天,用公式:
(月-1)×31×4+(日-1)×4+ADDRESS_AT3 (1)
即可,但是單片機(jī)中計(jì)算乘法是比較麻煩的,如果按32天計(jì)算及用公式:
(月-1)×32×4+(日-1)×4+ADDRESS_AT3 (2)
雖然浪費(fèi)了一些存儲(chǔ)空間,但是乘以128和乘4的運(yùn)算的確可以通過簡單的移位指令實(shí)現(xiàn),大大減小了單片機(jī)的運(yùn)算量。日期轉(zhuǎn)256地址的計(jì)算如子程序DATE_TO_ATA所示。
這樣1年的信息需要32×4×12=1 536 B,轉(zhuǎn)換為16進(jìn)制數(shù)為600H。則第一年占用的存儲(chǔ)空間為0200~07FFH,如果要存儲(chǔ)第二年的信息,則設(shè)計(jì)一個(gè)變量ADDRESS_AT4,統(tǒng)計(jì)信息從0800H開始存放,其余以此類推。
4.4 統(tǒng)計(jì)功能的意義
和參數(shù)傳遞一樣的道理,設(shè)計(jì)了計(jì)價(jià)器可以與PC機(jī)通信的話,不管是按串口通信方式還是無線通信方式,都可以供出租車管理部門采集到詳實(shí)、準(zhǔn)確的營運(yùn)數(shù)據(jù),這些數(shù)據(jù)經(jīng)過PC機(jī)處理后能夠詳細(xì)地做出日報(bào)表、月報(bào)表、運(yùn)作分析表等,比較直觀的反映出租車的營運(yùn)情況,便于管理部門全面掌握第一手資料,及時(shí)針對所出現(xiàn)的情況做出準(zhǔn)確的判斷和決策,從而實(shí)現(xiàn)微機(jī)化、科學(xué)化管理。
5 結(jié)語
本文詳細(xì)的闡述了在出租車計(jì)價(jià)器中計(jì)程、計(jì)時(shí)的原理,并做了誤差分析。該設(shè)計(jì)巧妙,合理地利用存儲(chǔ)芯片AT24C256,不但使計(jì)價(jià)器具有附加費(fèi)功能,容易改變計(jì)價(jià)參數(shù),還能存儲(chǔ)營運(yùn)信息,為管理部門制定相關(guān)政策,提供一手依據(jù)。根據(jù)本文方法設(shè)計(jì)的計(jì)價(jià)器誤差小,軟件設(shè)計(jì)靈活性高。本文引用地址:http://www.ex-cimer.com/article/172674.htm
評論