文是基于 FPGA 智能交通控制系統(tǒng)設(shè)計(jì),該系統(tǒng)采用硬件實(shí)現(xiàn)的主要方案包括:環(huán)形線圈車流量檢測器進(jìn)行車流量檢測,根據(jù)實(shí)時(shí)車流量來實(shí)時(shí)的配時(shí)紅綠燈的亮滅時(shí)間。利用 FPGA 技術(shù),采用 ALTERA 公司的 FPGA 作為設(shè)計(jì)平臺,通過 Quartus II 軟件實(shí)現(xiàn)交通燈控制系統(tǒng)的設(shè)計(jì)。
本設(shè)計(jì)的主要設(shè)計(jì)理念是采用模塊化的方式,整體結(jié)構(gòu)是 FPGA 控制模塊和車流量檢測模塊。其中 FPGA 控制模塊包括:時(shí)鐘分頻模塊,LED 燈控制模塊,點(diǎn)陣顯示模塊,無線模塊,采集信號處理模塊和控制模塊。
1 設(shè)計(jì)要求
如圖所示為本設(shè)計(jì)的城市交叉路口智能交通控制系統(tǒng)示意圖,交叉路口的交通分為東西方向和南北方向,其中南北方向?yàn)榻煌ㄖ鞲傻溃瑬|西方向?yàn)榻煌ǜ备傻?。不管南北方向還是東西方向都設(shè)有 4 種信號燈:紅燈(R)、綠燈(G)、黃燈(Y)、左轉(zhuǎn)燈(L)。為了簡化討論,人行道的信號燈與直行信號燈同步。
在南北方向的交通信號燈為紅燈的時(shí)候,東西方向的交通信號燈狀態(tài)為綠燈、黃燈、左轉(zhuǎn)燈以及最后的黃燈。同樣的東西方向的交通信號燈為紅燈的時(shí)候,南北方向的交通信號燈的狀態(tài)也依次為綠燈、黃燈、左轉(zhuǎn)燈以及最后的黃燈。
在發(fā)生緊急情況的時(shí)候,交通南北主干道和交通東西副干道需要有一種處理緊急事故的能力。也就是在發(fā)生意外情況下,南北方向和東西方向的交通信號燈都變?yōu)榧t燈,直到緊急事故消失。采用這種設(shè)計(jì)方式是完全為了保證在緊急事故中,處理事故的車輛能夠優(yōu)先通過,獲得寶貴的處理事故的時(shí)間,是非常人性化的考慮,保障了人民的人身和財(cái)產(chǎn)安全。
在交叉路口中,需要設(shè)置點(diǎn)陣模塊來顯示倒計(jì)時(shí)的狀態(tài),方便讓車輛司機(jī)知道當(dāng)前交通信號燈的即時(shí)狀態(tài),這個(gè)設(shè)計(jì)也體現(xiàn)了人性化的特點(diǎn)。
2 設(shè)計(jì)框架
在本論文中,采用的編程設(shè)計(jì)思想是目前比較常用的模塊化理念,將交通燈控制系統(tǒng)的整體設(shè)計(jì)分為了硬件設(shè)計(jì)和軟件設(shè)計(jì),由幾個(gè)具體的模塊組成每個(gè)部分,如圖所示為城市致命交通控制系統(tǒng)的硬件設(shè)計(jì)框架。
3 硬件設(shè)計(jì)
3.1 環(huán)形線圈車輛檢測器:本文選用了國際通用的車輛檢測卡裝置。如圖所示為環(huán)形線圈的車流量檢測模塊的電路圖,該模塊需要在道路的地下將地感線圈埋放,通電。環(huán)形線圈與其耦合的電路連接,該耦合電路具有自身的振蕩頻率。當(dāng)有車輛通過的時(shí)候環(huán)形線圈中的電感量就會發(fā)生變化,同時(shí)與之耦合的電路中的振蕩頻率也會較自身的固有頻率增高,這個(gè)時(shí)候,電路將會向外發(fā)送一個(gè)正脈沖信號。
3.2 單片機(jī)控制系統(tǒng):單片機(jī)控制系統(tǒng)的主要目的是將多個(gè)埋設(shè)在交叉路口路段上的地感線圈的信號進(jìn)行簡單處理并控制無線通信模塊將信號發(fā)送到交通燈控制中心。
如下圖所示為基于單片機(jī)的車流量計(jì)數(shù)電路,其接受來自不同的 3 個(gè)地感線圈的信號,并將信號與 STC89C51 單片機(jī)的中斷引腳連接,中斷引腳分別為 INT0 和 INT1。
其工作原理可以表述為:假設(shè)有車輛在南北方向的道路上行駛,其首先通過了埋設(shè)在地下的環(huán)形線圈 1,由環(huán)形線圈 1 發(fā)出了脈沖信號 input1 經(jīng)反向傳入了中斷引腳 INT0,INT0 中斷信號有效的時(shí)候會將單片機(jī)內(nèi)部的計(jì)時(shí)功能開啟,同時(shí)打開允許中斷引腳 INT1 工作;當(dāng)車輛經(jīng)過了環(huán)形線圈 2 的時(shí)候,由環(huán)形線圈 2 發(fā)出了脈沖信號 input2 經(jīng)反向傳入了中斷引腳 INT1,檢測單片機(jī)引腳 P1.0 是否為高電平,如果是的話單片機(jī)內(nèi)部計(jì)數(shù)器加 1;當(dāng)車輛經(jīng)過了環(huán)形線圈 3 的時(shí)候,由環(huán)形線圈 3 發(fā)出了脈沖信號 input3 經(jīng)反向傳入了中斷引腳 INT1,此時(shí)中斷 INT1 同樣有效,這時(shí)檢測單片機(jī)引腳 P1.0 是否為高電平,如果是的話就關(guān)斷單片機(jī)內(nèi)部的 INT1 中斷和計(jì)數(shù)器,這樣可以判斷車輛的行駛方向,對于一個(gè)道路可以雙向行駛的地方是十分有用的。
3.3 無線通信模塊:無線通信模塊分別安裝在路上設(shè)施中和交通燈控制系統(tǒng)中細(xì)膩中,由于距離比較遠(yuǎn),所以采用了無線通信的方式。
3.4 FPGA 控制模塊:本設(shè)計(jì)的主要模塊,其根據(jù)環(huán)形線圈獲得的車流量信息實(shí)時(shí)的對交通信號燈的配時(shí)方案作出合理安排。
3.5 交通信號燈:即為交叉路口實(shí)際的信號燈以及倒計(jì)時(shí)點(diǎn)陣顯示。
4 軟件設(shè)計(jì)
以上述的硬件設(shè)計(jì)為基礎(chǔ),本文根據(jù)交通信號燈的實(shí)際運(yùn)作情況,將 FPGA 控制模塊中的控制系統(tǒng)軟件設(shè)計(jì)分為 5 個(gè)模塊,城市交通燈控制系統(tǒng)軟件設(shè)計(jì)框架如圖所示。
4.1 時(shí)鐘分頻模塊:時(shí)鐘分頻模塊是將硬件電路上的時(shí)鐘信號進(jìn)行分頻獲得秒信號,用來當(dāng)做控制模塊的時(shí)鐘輸入。本文中使用的硬件電路中有源晶振提供的時(shí)鐘頻率為 50MHz,對于交通信號燈而言,需要的是以秒為單位的時(shí)間信號。因此,50MHz 的頻率太高,需要對其進(jìn)行分頻處理。根據(jù)上述要求,在交通燈控制系統(tǒng)中設(shè)計(jì)了時(shí)鐘分頻模塊,其分頻系數(shù)設(shè)置為 50M,輸入的時(shí)鐘為 50 MHz,輸出時(shí)鐘為 1 Hz。
4.2 點(diǎn)陣顯示模塊:點(diǎn)陣顯示模塊是用來顯示 LED 燈由亮到暗的時(shí)間倒計(jì)時(shí)的,其與 LED 燈是同步的,同樣都是受到控制模塊的控制。
4.3 無線模塊:用來讀寫無線模塊中的數(shù)據(jù),其采用的接口協(xié)議是通用異步收發(fā)傳輸器,通常稱作 UART。
4.4 采集信號處理模塊:實(shí)時(shí)處理車輛檢測裝置上傳的有效信號,并將處理結(jié)果傳向控制系統(tǒng)。
4.5 控制模塊:控制模塊是整個(gè)交通燈控制系統(tǒng)軟件設(shè)計(jì)框架的重點(diǎn),也是整個(gè)控制系統(tǒng)的核心。
按照上述的軟件設(shè)計(jì)框架,采用 Verilog 語言在 Quartus II 上進(jìn)行編程實(shí)現(xiàn),并仿真測試,最終進(jìn)行硬件級調(diào)試。
? ? ? ?責(zé)任編輯:pj
評論
查看更多