999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于FPGA的出租車計費系統(tǒng)設(shè)計

2021-07-19 22:41:52張炯陳初俠操曉思徐甫歐陽凱
電腦知識與技術(shù) 2021年13期

張炯 陳初俠 操曉思 徐甫 歐陽凱

摘要:該文基于FPGA芯片EP1K30QC208-2進(jìn)行了出租車計費系統(tǒng)設(shè)計。首先從設(shè)計要求出發(fā),將出租車計費系統(tǒng)分成多個子電路模塊并用Verilog HDL語言對其進(jìn)行設(shè)計,然后調(diào)用已設(shè)計好的各子電路模塊采用原理圖方式進(jìn)行頂層電路設(shè)計,最后將設(shè)計好的頂層電路下載到FPGA芯片中進(jìn)行硬件驗證。實驗結(jié)果表明,所設(shè)計的出租車計費系統(tǒng)能動態(tài)顯示出租車的行駛里程、等待時間和計費金額,具有一定的實用價值。

關(guān)鍵詞:出租車計費;FPGA;Verilog HDL

中圖分類號:TP29? ? ? ? 文獻(xiàn)標(biāo)識碼:A

文章編號:1009-3044(2021)13-0093-03

眾所周知,出租車在我們的生活中承擔(dān)著非常重要的角色,一個具有良好性能的出租車計費系統(tǒng)不僅有助于加強行業(yè)管理,還可以減少乘客與司機之間的糾紛[1]。出租車計費系統(tǒng)可以采用模擬電路和數(shù)字電路來實現(xiàn),這種設(shè)計方法弊端是整體電路較復(fù)雜,而且出現(xiàn)故障時調(diào)試比較困難。出租車計費系統(tǒng)也可以采用單片機來實現(xiàn)[2],但由于計費系統(tǒng)經(jīng)常需要根據(jù)油價進(jìn)行計費標(biāo)準(zhǔn)的相應(yīng)更改,如果采用單片機,需要每次更改計費標(biāo)準(zhǔn)后再次燒錄程序至單片機,費時費力[3]。因此對出租車計費系統(tǒng)的更新?lián)Q代迫在眉睫。

隨著大規(guī)模可編程邏輯器件的出現(xiàn),基于FPGA設(shè)計的出租車計費系統(tǒng)逐漸顯示其強大的性能,不僅具有很高的可移植性,而且需要更改電路時非常方便,如果計費標(biāo)準(zhǔn)變化,可以實現(xiàn)現(xiàn)場更新[3]。本文以現(xiàn)場可編程邏輯器件(FPGA)為設(shè)計載體,以硬件描述語言(Verilog HDL)為主要表達(dá)方式,以Quartus Ⅱ開發(fā)軟件和ZY11EDA13BE開發(fā)系統(tǒng)為設(shè)計工具設(shè)計了一種能動態(tài)顯示出租車計程、計時、計費的系統(tǒng)。

1? 出租車計費系統(tǒng)設(shè)計要求

本文以安徽省巢湖市出租車計價標(biāo)準(zhǔn)為例來進(jìn)行設(shè)計。巢湖市出租車計價標(biāo)準(zhǔn)如下:1)出租車起步開始計費,起步價為6元,車行駛2km以內(nèi),只收取起步價。2)當(dāng)行駛公里數(shù)超過2km而少于5km時,超出2km的路程每千米收費為1.6元。3)當(dāng)行駛公里數(shù)超過5km時,超出5km的路程每千米收費加收50%,即為2.4元。4)當(dāng)遇到紅燈或者客戶需要停車等待時,1分鐘內(nèi)免費,滿1分鐘后,每分鐘收取0.2元。5)出租車夜間行駛(22:00-次日5:00)起步價、行駛公里租價加收20%夜間補貼。

為了方便出租車計費系統(tǒng)的模擬,本出租車計費系統(tǒng)除了實現(xiàn)以上計費功能外,還包含以下要求:1)設(shè)置計費暫停按鈕,若計費系統(tǒng)收到暫停命令,則不計費,車費保持不變。2)設(shè)置計費復(fù)位按鈕,若計費系統(tǒng)收到復(fù)位命令,則車費清零。3)能動態(tài)顯示出租車行駛的里程,范圍為00.0~99.0km。4)能動態(tài)顯示等待時間,范圍為0~9min。5)能動態(tài)顯示車費總和,范圍為000.0~999.9元。

2? 出租車計費系統(tǒng)總體設(shè)計方案

出租車計費系統(tǒng)設(shè)計框圖如圖1所示。根據(jù)設(shè)計要求,將出租車計費系統(tǒng)設(shè)計分為三部分,分別是外部輸入、控制模塊、顯示模塊[4]。外部輸入包含掃描時鐘、車輪脈沖、計時時鐘、白天信號、行駛信號、使能信號、復(fù)位信號。控制模塊包含分頻模塊、計程模塊、計時模塊、計費模塊和轉(zhuǎn)換模塊。

3? 出租車計費系統(tǒng)設(shè)計

本次設(shè)計采用層次化的設(shè)計方法,分底層各子模塊電路設(shè)計和頂層電路設(shè)計。設(shè)計過程中,通過Quartus Ⅱ軟件平臺利用Verilog HDL語言設(shè)計和原理圖設(shè)計相結(jié)合的方式來進(jìn)行,其中各子模塊電路用Verilog HDL語言設(shè)計方式來實現(xiàn),頂層電路通過調(diào)用各子模塊用原理圖設(shè)計方式來實現(xiàn)。

3.1? 底層電路設(shè)計

底層電路有八個子電路模塊,分別是50分頻模塊、60分頻模塊、計程模塊、計時模塊、計費模塊、轉(zhuǎn)換模塊1、轉(zhuǎn)換模塊2和動態(tài)顯示模塊。下面分別對它們進(jìn)行介紹。

3.1.1? 50分頻模塊

該模塊的功能是對車輪傳感器傳送的脈沖信號進(jìn)行計數(shù),每轉(zhuǎn)一圈計一次數(shù)。為方便計算我們設(shè)定車輪轉(zhuǎn)一圈為2米,轉(zhuǎn)50圈剛好為100米,即0.1公里。因此這里我們選用一個50分頻的分頻器,當(dāng)計數(shù)從0開始計到24時,輸出信號進(jìn)行翻轉(zhuǎn),其仿真波形如圖2所示。從波形可以看出,輸出信號為一個脈沖周期時,剛好計數(shù)記了50次。

3.1.2? 60分頻模塊

為了便于計算出租車行駛過程中的等待時間,我們引入60分頻模塊電路,其輸入時鐘為1hz,輸出信號為60秒的周期信號。由于此分頻器的輸出信號周期為60秒,所以輸出信號每來一個脈沖剛好就是一分鐘,很好地為計時模塊服務(wù)工作。如圖3所示為60分頻模塊仿真波形圖,從波形可以看出,每輸入一個時鐘就給其進(jìn)行計數(shù),當(dāng)計數(shù)到29時,輸出信號進(jìn)行翻轉(zhuǎn),剛好計數(shù)60次就可得一個完整的輸出脈沖。

3.1.3? 計程模塊

計程模塊用來計量出租車行駛的總里程,計值范圍為0-99.9km。為了設(shè)計方便,計值范圍我們?nèi)?-999,那個小數(shù)點我們可以從動態(tài)顯示模塊加上,由此999就可變成99.9。如圖4所示為計程模塊仿真波形圖,復(fù)位信號rst、計程時鐘clk、使能信號en和行駛信號run為輸入信號,里程信號q為輸出信號。當(dāng)復(fù)位信號rst有效時(高電平有效),總里程為0;當(dāng)使能信號en和行駛信號run有效時,每來一個計程時鐘clk就累加計數(shù)一次,一直計到999;當(dāng)使能信號en無效或行駛信號run無效時,不進(jìn)行計數(shù),此時計程輸出保持里程不變。

3.1.4? 計時模塊

計時模塊用來計量出租車在行駛過程中的等待時間,計值范圍為0-9分鐘。如圖5所示為計時模塊仿真波形圖,復(fù)位信號rst、計程時鐘clk、使能信號en和行駛信號run為輸入信號,等待時間信號waittime為輸出信號。當(dāng)復(fù)位信號rst有效時,計時為0;當(dāng)使能信號en有效而行駛信號run無效時,每來一個計時時鐘clk就累加計數(shù)一次,一直計到9;當(dāng)使能信號en無效或行駛信號run有效時,不進(jìn)行計數(shù),此時計時輸出保持等待時間不變。

3.1.5? 計費模塊

計費模塊用來計算出租車開始運行到結(jié)束所產(chǎn)生的總體費用,計值范圍為0-999.9元。為了設(shè)計方便,計值范圍我們?nèi)?-9999,那個小數(shù)點我們可以從動態(tài)顯示模塊加上。如圖6所示為計費模塊仿真波形圖,復(fù)位信號rst、使能信號en、白天信號baihei、里程信號km和等待時間信號waittime為輸入信號,總費用信號costout為輸出信號。當(dāng)復(fù)位信號rst有效時,總計費為0;當(dāng)使能信號en無效時,總費用保持不變;當(dāng)使能信號en有效時,總費用會根據(jù)白天黑夜信號baihei、里程信號km和等待時間信號waittime的值而確定。例如,當(dāng)出租車在白天時分運行時,行駛公里為7km,等待時間為5分鐘,則總費用為6+(5-2)×1.6+(7-5)×2.4+5×0.2=16.6元;當(dāng)出租車在晚上時分運行時,行駛公里為7km,等待時間為5分鐘,則總費用為[6+(5-2)×1.6+(7-5)×2.4]×(1+0.2)+5×0.2=19.7元。從圖6可以看出,在140ns-160ns之間,仿真結(jié)果數(shù)值與理論計算值一致,說明設(shè)計正確。

3.1.6? 轉(zhuǎn)換模塊

轉(zhuǎn)換模塊是為了把計程模塊和計費模塊輸出的多位十進(jìn)制數(shù)轉(zhuǎn)換成便于數(shù)碼管顯示的多個一位十進(jìn)制數(shù)。如圖7所示為轉(zhuǎn)換模塊仿真波形圖,圖7(a)是計程模塊輸出里程的轉(zhuǎn)換結(jié)果,圖7(b)是計費模塊輸出費用的轉(zhuǎn)換結(jié)果。從7(a)可以看出,當(dāng)里程為11.2km時,輸出結(jié)果為1、1、2;從7(b)可以看出,當(dāng)費用為103.7元時,輸出結(jié)果為1、0、3、7,仿真結(jié)果與設(shè)想一致。

3.1.7? 動態(tài)顯示模塊

動態(tài)顯示模塊通過掃描時鐘來動態(tài)顯示出租車行駛里程數(shù)、等待時間數(shù)和總體費用,其仿真波形如圖8所示。輸入信號clk32768hz是頻率為32768hz的掃描信號;輸入信號kmbai、kmshi、kmge為出租車?yán)锍痰氖弧€位和十分位;輸入信號waittime為出租車所等待的時間;輸入信號bcd3、bcd2、bcd1、bcd0為出租車計費的百位、十位、個位和十分位。

輸出信號sel為數(shù)碼管掃描片選信號,當(dāng)sel=000時,最右邊的數(shù)碼管點亮,此時“4”會被點亮,以此類推,當(dāng)sel=111時,最左邊的數(shù)碼管點亮,此時“1”會被點亮[5]。輸出信號dataout為7段數(shù)碼管的顯示結(jié)果,用8位二進(jìn)制數(shù)表示,最左邊一位用于點亮數(shù)碼管上的小數(shù)點。例如,當(dāng)sel=000時,dataout=01100110,此時顯示“4”的數(shù)碼管會被點亮;當(dāng)sel=001時,dataout=10000110,此時顯示“1.”的數(shù)碼管會被點亮,由于dataout的最高位為1,所以這里顯示了一個小數(shù)點。

3.2? 頂層電路設(shè)計

出租車頂層電路設(shè)計采用原理圖輸入方式進(jìn)行,通過調(diào)用生成的各底層子模塊電路符號,并將它們做適當(dāng)連接就可實現(xiàn)頂層電路的設(shè)計,其電路如圖9所示。

4? 出租車計費系統(tǒng)的硬件驗證

本設(shè)計選用湖北眾友科技實業(yè)股份有限公司生產(chǎn)的ZY11EDA13BE實驗箱作為硬件驗證平臺,同時選用Altera公司的EP1K30QC208-2作為FPGA芯片。只要對出租車計費系統(tǒng)頂層文件的輸入輸出引腳進(jìn)行鎖定,然后重新編譯并下載到FPGA芯片中,就可以進(jìn)行出租車計費系統(tǒng)的硬件測試驗證[6]。

硬件驗證結(jié)果如圖10所示,(a)、(b)分別為出租車白天和夜間行駛的計費結(jié)果。圖(a)中,出租車行駛里程為4.8km,等待時間為4分鐘,根據(jù)巢湖市出租車計費標(biāo)準(zhǔn)可得出租車的總費用理論值為6+(4.8-2)×1.6+4×0.2=11.28元;圖(b)中,出租車行駛里程為15.4m,等待時間為5分鐘,根據(jù)巢湖市出租車計費標(biāo)準(zhǔn)可得出租車的總費用理論值為[6+(5-2)×1.6+(15.4-5)×2.4]×(1+0.2)+5×0.2=43.912元。由于費用顯示精度為0.1元,所以小數(shù)點后面的第二位和第三位應(yīng)省去,即費用分別應(yīng)為11.2元、43.9元,從圖10可看出這與實驗硬件驗證結(jié)果一致。

5 結(jié)束語

本文基于FPGA芯片采用層次化的設(shè)計方法設(shè)計出租車計費系統(tǒng)。設(shè)計過程中,首先將出租車計費系統(tǒng)分成多個子電路模塊;然后通過Quartus Ⅱ軟件平臺利用Verilog HDL語言設(shè)計各子電路模塊并對其進(jìn)行仿真分析;接著把設(shè)計好的各子電路模塊生成元件符號并調(diào)用它們用原理圖設(shè)計方式設(shè)計出租車計費系統(tǒng)頂層電路;最后把已設(shè)計好的頂層電路下載到FPGA芯片中對其進(jìn)行硬件測試驗證。實驗結(jié)果表明,本出租車計費系統(tǒng)能正確的動態(tài)顯示出租車的行駛里程、等待時間和計費金額,設(shè)計達(dá)到預(yù)定目標(biāo)。

參考文獻(xiàn):

[1] 吳承琦,孫培生.出租汽車計價器發(fā)展歷程回顧、感悟及展望[J].中國計量,2008(3):18-21.

[2] 張立,張光新,柴磊,等.FPGA在多功能計費器系統(tǒng)中的應(yīng)用[J].儀器儀表學(xué)報,2005(S2):735-737.

[3] 任立民.基于FPGA的出租車計費系統(tǒng)設(shè)計[J].南陽理工學(xué)院學(xué)報,2019,11(2):49-52.

[4] 陳乾君,葉冬.基于CPLD的出租車計費器系統(tǒng)的研究與設(shè)計[J].物聯(lián)網(wǎng)技術(shù),2013,3(6):23-24,27.

[5] 陳初俠,袁濤,曾奧運,等.基于EDA技術(shù)的汽車速度表設(shè)計[J].綏化學(xué)院學(xué)報,2018,38(5):149-151.

【通聯(lián)編輯:朱寶貴】

主站蜘蛛池模板: 亚洲欧美一级一级a| 亚洲永久视频| 三区在线视频| 一级毛片在线播放| 欧美人在线一区二区三区| 欧美福利在线播放| 伊人国产无码高清视频| 91久久偷偷做嫩草影院免费看| 国产无码制服丝袜| 亚洲av片在线免费观看| 亚洲欧洲免费视频| 国产精品污污在线观看网站| 成人噜噜噜视频在线观看| 欧亚日韩Av| 野花国产精品入口| 久99久热只有精品国产15| 欧美日韩中文国产| 国产精品蜜芽在线观看| 欧美第九页| 国产成人精品日本亚洲77美色| 四虎影院国产| 国产成人免费观看在线视频| 波多野结衣无码视频在线观看| 91无码人妻精品一区| 老司国产精品视频91| 国产精品99一区不卡| 国产一区二区视频在线| 亚洲精品视频网| 另类重口100页在线播放| 国产在线观看91精品| 欧美自拍另类欧美综合图区| 国产杨幂丝袜av在线播放| 免费一级α片在线观看| 性视频一区| 日韩欧美视频第一区在线观看| 91娇喘视频| 亚洲区一区| 无码AV日韩一二三区| 香蕉久久国产精品免| 国产精品一区在线观看你懂的| 亚洲天堂在线视频| 日本高清有码人妻| 最新国产网站| 精品国产黑色丝袜高跟鞋| 国产呦精品一区二区三区下载| 夜精品a一区二区三区| 亚洲第一精品福利| 亚洲国产成人无码AV在线影院L| 国产主播在线一区| 亚洲三级视频在线观看| 亚洲综合专区| 欧美一级高清视频在线播放| 在线观看免费国产| 欧美在线中文字幕| 人妻中文久热无码丝袜| 精品無碼一區在線觀看 | 制服丝袜在线视频香蕉| 四虎国产永久在线观看| 久久人妻xunleige无码| 日韩av无码DVD| 国产欧美精品专区一区二区| 亚洲欧美日韩高清综合678| 国产精品人莉莉成在线播放| 91小视频在线观看| 久久99国产综合精品女同| 久久久久久国产精品mv| 国产精品一区在线观看你懂的| 在线免费a视频| 日本成人不卡视频| 国产门事件在线| 国产精品无码作爱| 在线va视频| 美女亚洲一区| 夜夜操国产| 另类欧美日韩| 亚洲男人天堂2020| 黄色在线网| 亚洲精品在线91| 久久精品人妻中文视频| 日韩国产黄色网站| 一级成人欧美一区在线观看| 免费视频在线2021入口|