国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于FPGA 的出租車計(jì)價(jià)系統(tǒng)設(shè)計(jì)

2021-06-08 09:13呂兆承余錢坤
關(guān)鍵詞:框圖計(jì)費(fèi)端口

李 營,呂兆承,陳 帥,余錢坤

(淮南師范學(xué)院 電子工程學(xué)院,安徽 淮南 232038)

1 引言

出租車是人們?nèi)粘3鲂械闹匾ぞ?,其載客出行均需計(jì)費(fèi), 市面上常用的計(jì)費(fèi)器大多由單片機(jī)控制實(shí)現(xiàn)計(jì)費(fèi)。單片機(jī)雖然價(jià)格低廉,但精度差且可擴(kuò)展性弱。而FPGA 具有編程靈活性高、功能易拓展等特點(diǎn)。 故本文采用層次化建模方法, 利用Verilog HDL 基于FPGA 設(shè)計(jì)實(shí)現(xiàn)出租車計(jì)價(jià)器系統(tǒng)并進(jìn)行仿真,仿真結(jié)果表明該系統(tǒng)功能穩(wěn)定,計(jì)價(jià)準(zhǔn)確。

2 出租車計(jì)價(jià)器系統(tǒng)設(shè)計(jì)

2.1 出租車計(jì)費(fèi)系統(tǒng)技術(shù)指標(biāo)

以FPGA 為主體設(shè)計(jì)出租車計(jì)費(fèi)系統(tǒng),其計(jì)費(fèi)標(biāo)準(zhǔn)如表1 所示。

表1 出租車計(jì)費(fèi)標(biāo)準(zhǔn)

根據(jù)表中的相關(guān)技術(shù)指標(biāo),系統(tǒng)設(shè)計(jì)要求如下。

(1)設(shè)置加減檔功能:白天行駛超過4 km,每公里加1.00 元。 夜晚行駛超過4 km, 每公里加2.00 元。 單程行駛超過20 km,每公里加收50%的車費(fèi),收費(fèi)累加。

(2)將時(shí)間、里程及計(jì)費(fèi)結(jié)果以小數(shù)的形式顯示在液晶屏上。

(3)費(fèi)用的計(jì)算:當(dāng)行駛里程小于3 km 時(shí),按起價(jià)計(jì)算費(fèi)用;當(dāng)里程大于3 km 時(shí),按下式計(jì)算費(fèi)用:

費(fèi)用=里程×里程單價(jià)+等候時(shí)間×等候單價(jià)

2.2 系統(tǒng)設(shè)計(jì)原理

本系統(tǒng)硬件采用的主控FPGA 芯片是Cyclone EP4CE6E22C8, 設(shè)計(jì)通過按鍵模擬汽車行駛過程中的速度狀態(tài)和模式的變化,故需開始、停止、撥碼開關(guān)控制車輛運(yùn)行的開始和停止,需要空檔、加速、減速等3 個(gè)按鍵控制速度,通過模式按鍵模擬白天與夜間。 LCD 顯示器應(yīng)當(dāng)顯示行駛公里、時(shí)間、計(jì)費(fèi)情況以及車輛的檔位等。 白天與夜間的變化用LED 燈的亮或者滅來表示,當(dāng)時(shí)為白天,LED 燈不亮,夜間模式時(shí)LED 燈開啟。

2.3 LCD1602 顯示原理

LCD1602 是一種工業(yè)字符型液晶顯示屏,它能顯示字母、數(shù)字、符號(hào),并且同時(shí)顯示16×2 個(gè)字符。 利用了液晶的物理性質(zhì),一般通過電壓對(duì)其32個(gè)顯示區(qū)域進(jìn)行控制。 LCD 驅(qū)動(dòng)初始化的流程圖如圖1 所示。

圖1 LCD 顯示模塊驅(qū)動(dòng)初始化流程圖

3 出租車計(jì)價(jià)器系統(tǒng)功能實(shí)現(xiàn)

3.1 軟件設(shè)計(jì)總體方案

根據(jù)上述硬件要求,可將系統(tǒng)劃分為分頻與按鍵控制模塊、速度控制模塊、直流電機(jī)PWM 控制模塊、時(shí)間設(shè)置模塊、計(jì)費(fèi)模塊以及LCD 驅(qū)動(dòng)顯示模塊,總體軟件設(shè)計(jì)框圖如圖2 所示。

圖2 總體軟件設(shè)計(jì)框圖

3.2 分頻與按鍵控制模塊設(shè)計(jì)

該模塊的功能是將50 MHz 分頻為1 Hz 和16.6 Hz,并對(duì)開始、停止、空檔、加檔、減檔、模式等輸入按鍵進(jìn)行功能設(shè)計(jì), 其功能接口框圖如圖3 所示。

圖3 分頻及按鍵控制模塊框圖

由圖3 可知該模塊的輸入有:50 M 的時(shí)鐘脈沖clk50M,復(fù)位端口reset,6 個(gè)按鍵的輸入如圖中key[5..0];輸出端 sys_clk_out 對(duì)應(yīng) 16.6 Hz 時(shí)鐘輸出,clk1Hz_1hz_out 對(duì)應(yīng) 1 Hz 時(shí)鐘輸出,mode 對(duì)應(yīng)白天黑夜的模式選擇輸出,key_start 代表系統(tǒng)啟動(dòng)輸出,sp[2:0]代表速度檔位變化輸出。

3.3 直流電機(jī)PWM 控制模塊設(shè)計(jì)

該模塊的功能是實(shí)現(xiàn)直流電能和機(jī)械能互相轉(zhuǎn)換,接收分頻與按鍵控制模塊的控制按鍵,從而控制電機(jī)旋轉(zhuǎn)。 該模塊的接口框圖如圖4 所示,各端口的含義如下,輸入端口均連接分頻及按鍵控制模塊各端口,enable 是控制開關(guān)接key_start 信號(hào),clk 和rst 接系統(tǒng)時(shí)鐘和系統(tǒng)復(fù)位信號(hào);Dir 是控制轉(zhuǎn)動(dòng)方向代表前進(jìn)后退,默認(rèn)1,代表前進(jìn);spd_sel接sp[2:0]信號(hào),代表調(diào)節(jié)電機(jī)轉(zhuǎn)動(dòng)速度;輸出端口MA 接系統(tǒng)輸出直流電機(jī)。

圖4 直流電機(jī)PWM 控制模塊框圖

圖5 速度設(shè)置模塊框圖

3.4 速度設(shè)置模塊設(shè)計(jì)

速度設(shè)置模塊的功能是對(duì)汽車行駛過程中的6 個(gè)速度檔位進(jìn)行設(shè)計(jì),模擬實(shí)際出租車行駛換擋變速。 通過輸入的系統(tǒng)脈沖控制產(chǎn)生6 種不同頻率的時(shí)鐘翻轉(zhuǎn), 從而切換0 至5 擋不同的6 種速度變換。

該模塊的功能接口框圖如圖5 所示。圖5 中各端口的含義是:clk 是 16.6 Hz 時(shí)鐘輸入、reset 是復(fù)位輸入、start 和sp[2:0]端口分別連接按鍵控制模塊的key_start 端口和sp[2:0]端口,分別代表開始信號(hào)和檔位輸入。 clkout 表示汽車模擬行駛的公里脈沖輸出, 該模塊的仿真波形如圖6 所示。 由圖 6 可知,檔位 sp 由 001 變?yōu)?100 的時(shí)候,輸出clkout 有明顯的變化,時(shí)鐘跳變加快,說明汽車速度的加快。

圖6 速度設(shè)置模塊仿真波形

3.5 計(jì)時(shí)模塊設(shè)計(jì)

該模塊完成兩大功能:其一是對(duì)空檔時(shí)汽車的等待時(shí)間計(jì)時(shí),其二是對(duì)汽車行駛時(shí)間(包括等價(jià)和汽車的行駛計(jì)時(shí))計(jì)時(shí)。 該模塊的接口框圖如圖7 所示,各輸入端口的含義與速度設(shè)置模塊含義相同,輸出端口time_out 含義是用于等待的計(jì)費(fèi)時(shí)間(即空檔等待的時(shí)間),輸出端口timess[11..0]指等待計(jì)時(shí)時(shí)間,shijian[15..0]指總的時(shí)間輸出。

圖7 計(jì)時(shí)模塊接口框圖

圖8 計(jì)費(fèi)模塊接口框圖

3.6 計(jì)費(fèi)模塊設(shè)計(jì)

該模塊的功能是根據(jù)白天與黑夜模式下計(jì)費(fèi)方法的不同分別計(jì)費(fèi)。根據(jù)行駛公里數(shù)及等待時(shí)間長短,針對(duì)不同模式分別計(jì)費(fèi)。 模塊接口框圖如圖8 所示,該模塊的算法流程圖如圖9 所示。

圖9 程序流程圖

出租車總的計(jì)費(fèi)金額需用整數(shù)和小數(shù)表示出來。 該模塊的仿真波形如圖10 所示, 當(dāng)start=1,mode=1 及km_clkout 變化時(shí),即白天開始計(jì)時(shí),汽車行駛后, 行駛距離km_cnt 由0001 跳變?yōu)?010,即由1 km 到2 km,此時(shí)計(jì)費(fèi)值jin_er 變?yōu)?0 000 000,即高4 位整數(shù)位,低4 位為小數(shù)位,共8 元,與設(shè)計(jì)要求4 km 內(nèi)起步8 元一致。

圖10 白天模式計(jì)費(fèi)模塊仿真波形

3.7 顯示模塊設(shè)計(jì)

采用LCD1602 字符型顯示器顯示行駛信息,采用英文字母顯示提示。相關(guān)顯示內(nèi)容與其字符分別為:行駛里程(KM)、計(jì)費(fèi)(JE)、汽車檔位(數(shù)值)、等待時(shí)間(A)以及等待時(shí)間和行駛時(shí)間之和駕駛總時(shí)間(T)。 根據(jù)1602 的驅(qū)動(dòng)指令表驅(qū)動(dòng)編寫此模塊[3]。

本模塊的接口框圖如圖11 所示,WR 端是讀寫端,EN 是使能端,DATA[7..0]為雙向的輸出數(shù)據(jù)段。 Show_KM[11..0]是 12 位的行駛公里的顯示數(shù)據(jù)輸入,show_JE[15..0]是顯示計(jì)費(fèi)的16 位數(shù)據(jù)輸入,show_PA[11..0]是 12 位的顯示等待時(shí)間數(shù)據(jù)輸入,show_SJ[15..0]為16 位總的時(shí)間顯示數(shù)據(jù)輸入, show_sp[2..0]為 3 位檔位的輸入。

圖11 顯示模塊接口框圖

表2 ASCII 碼

圖12 系統(tǒng)設(shè)計(jì)RTL 圖

本系統(tǒng)用到的字母相應(yīng)的ASCII 對(duì)照碼如表2 所示,顯示時(shí)各信息間通過空格間隔。

3.8 頂層設(shè)計(jì)

頂層模塊的作用是調(diào)用連接上述5 個(gè)底層模塊,系統(tǒng) RTL 圖如圖11 所示。 圖11 中,頂層模塊的時(shí)鐘輸入端clk50MHZ 對(duì)應(yīng)圖2 的clk50M,模塊keyin 對(duì)應(yīng)分頻及按鍵處理模塊,speed 對(duì)應(yīng)速度設(shè)置,times 對(duì)應(yīng)計(jì)時(shí)模塊,kmmony 對(duì)應(yīng)計(jì)費(fèi)模塊,lcd1602 對(duì)應(yīng)顯示模塊,由此可見,系統(tǒng)完成的功能與圖12 系統(tǒng)總體軟件設(shè)計(jì)框圖一致。

圖13 系統(tǒng)硬件設(shè)計(jì)

4 系統(tǒng)仿真測(cè)試

系統(tǒng)完成后的測(cè)試效果如圖13 所示, 當(dāng)按開始鍵之后顯示,當(dāng)白天行駛8.1 km,等待時(shí)間為0 s時(shí), 費(fèi)用為12.1 元符合功能設(shè)計(jì)中設(shè)置的白天的計(jì)費(fèi)原則,所以白天模式下出租車計(jì)費(fèi)程序設(shè)計(jì)無誤;同理,若模式調(diào)為黑夜,計(jì)費(fèi)結(jié)果也無誤,由于篇幅所限,此處不再列圖。

5 結(jié)語

市面上現(xiàn)有的出租車計(jì)價(jià)器的精度不高, 系統(tǒng)的功耗大,使用壽命短,并且系統(tǒng)升級(jí)擴(kuò)展的空間小。文章采用了FPGA 芯片Cyclone IV EP4CE6E22C8設(shè)計(jì)并實(shí)現(xiàn)了出租車計(jì)價(jià)系統(tǒng), 系統(tǒng)功能完整,且鑒于FPGA 的并行計(jì)算和可編程特性, 靈敏度高,后期功能易拓展,為傳統(tǒng)出租車計(jì)價(jià)提供了一種新的設(shè)計(jì)思路。

猜你喜歡
框圖計(jì)費(fèi)端口
5G網(wǎng)絡(luò)獨(dú)立組網(wǎng)中融合計(jì)費(fèi)方案的研究
基于云計(jì)算和微服務(wù)架構(gòu)的高速公路計(jì)費(fèi)系統(tǒng)
一種有源二端口網(wǎng)絡(luò)參數(shù)計(jì)算方法
一種端口故障的解決方案
生活中的分段計(jì)費(fèi)
捷豹I-PACE純電動(dòng)汽車高壓蓄電池充電系統(tǒng)(三)
多按鍵情況下,單片機(jī)端口不足的解決方法
電路圖2017年凱迪拉克XT5
算法框圖的補(bǔ)全
基于圖表法構(gòu)建《萬有引力定律與航天》知識(shí)網(wǎng)絡(luò)
大渡口区| 雅安市| 辽源市| 牙克石市| 迁安市| 盈江县| 兴化市| 永寿县| 平谷区| 武隆县| 陇川县| 宣化县| 通州市| 扬州市| 兴宁市| 南华县| 蒙自县| 尼木县| 璧山县| 高青县| 桦南县| 洛扎县| 津市市| 大安市| 丽江市| 江达县| 普陀区| 会泽县| 长春市| 喜德县| 新巴尔虎左旗| 长岭县| 林州市| 竹北市| 连云港市| 阆中市| 嘉峪关市| 扎鲁特旗| 鸡泽县| 湟中县| 海口市|