收藏和點(diǎn)贊,您的關(guān)注是我創(chuàng)作的動(dòng)力
概要
??隨著社會(huì)經(jīng)濟(jì)的快速發(fā)展以及人們生活水平的提高 ,機(jī)動(dòng)車(chē)數(shù)量也在急劇增加 ,交通問(wèn)題逐漸成為人們關(guān)注的重點(diǎn)對(duì)象,因城市發(fā)展所帶來(lái)的交通擁堵等問(wèn)題,利用智能交通來(lái)解決傳統(tǒng)交通日漸出現(xiàn)的問(wèn)題成為大勢(shì)所趨。本設(shè)計(jì)基于傳統(tǒng)交通,詳細(xì)介紹了交通燈控制系統(tǒng)軟件以及硬件的設(shè)計(jì)過(guò)程,并且使用 Proleus 軟件對(duì)整體系統(tǒng)進(jìn)行仿真,采用了單片機(jī)作為基礎(chǔ)的開(kāi)發(fā)模板,結(jié)合plc等其他技術(shù)進(jìn)行交通的智能化的交通設(shè)計(jì),可自動(dòng)控制紅綠燈的交替閃爍,觀察車(chē)流情況自動(dòng)改變倒計(jì)時(shí)的情況,已達(dá)到改善交通擁堵的情況。本設(shè)計(jì)是基于理想情況下設(shè)計(jì)的交通控制系統(tǒng),基于實(shí)際道路情況的復(fù)雜程度,不同的車(chē)輛高度長(zhǎng)度的和隨機(jī)出現(xiàn)的行人以及出現(xiàn)交通事故等突發(fā)情況,本設(shè)計(jì)結(jié)合實(shí)際的交通系統(tǒng)還是存在一定難度,但該發(fā)展方向存在大量實(shí)際利益,是值得我們?nèi)ヌ接懭绾伟l(fā)展的,在硬件開(kāi)發(fā)成熟后可以?xún)?yōu)先享用該成果。
??關(guān)鍵詞:?jiǎn)纹瑱C(jī);信號(hào)燈;智能交通
一、設(shè)計(jì)思路
??根據(jù)傳統(tǒng)的交通信號(hào)控制系統(tǒng),智能交通系統(tǒng)需要改善機(jī)動(dòng)車(chē)的城市燈的紅色,黃色和綠色,包括左右轉(zhuǎn)向在內(nèi)每個(gè)行駛方向的相互顯示控制,通過(guò)車(chē)流量的測(cè)量裝置,它也可以與十字路口和區(qū)域交通狀況結(jié)合在一起。利用提供的信息,靈活更改每個(gè)信號(hào)指示器的時(shí)間,以實(shí)現(xiàn)道路網(wǎng)絡(luò)上交通流量的最佳配置。這要求系統(tǒng)能夠根據(jù)每個(gè)行車(chē)道的交通流反饋信息和相應(yīng)的算法來(lái)設(shè)置信號(hào)時(shí)間,連接控制系統(tǒng)和控制中心以實(shí)現(xiàn)跨區(qū)域交通控制。假設(shè)東西方向的交通量較大,為了避免行人和車(chē)輛爭(zhēng)搶交通資源,控制行人和車(chē)輛之間的交通流量,一般的,當(dāng)車(chē)輛直行時(shí),相應(yīng)人行道的綠燈亮起,行人可以通過(guò)。雖然這種做法對(duì)交通利用率較高,但是會(huì)犧牲左右轉(zhuǎn)彎車(chē)輛的通行效率。在轉(zhuǎn)向信號(hào)的路口汽車(chē)左轉(zhuǎn)時(shí),人行道上的紅燈亮,禁止行人通行,使汽車(chē)和行人不會(huì)爭(zhēng)道,可以有效地預(yù)防交通事故,提高十字路口的通行能力。隨著科技的演進(jìn),在一些發(fā)達(dá)國(guó)家已開(kāi)始研發(fā)所謂的“智慧信號(hào)”。該信號(hào)可以依據(jù)各車(chē)輛的位置、速度及方向來(lái)試著與各車(chē)輛溝通,并提醒駕駛員燈號(hào)即將變換等資訊,然而仍有少部分的車(chē)輛并無(wú)與此類(lèi)信號(hào)溝通的裝備,使得部分駕駛員可能無(wú)法得知智慧信號(hào)所傳達(dá)的資訊。
??智能交通信號(hào)燈負(fù)責(zé)人員和各種車(chē)輛的安全,紅色,黃色和信號(hào)燈的全自動(dòng)指揮的完成是城市道路交通智能的重點(diǎn)研究課題。在城市街道十字路口,為了確保交通管理和機(jī)動(dòng)車(chē)安全,通常在每條道路上都有一組紅色,黃色和綠色的交通信號(hào)燈,該紅色信號(hào)燈一直亮著,表示禁止道路通過(guò)標(biāo)志;燈亮,未通過(guò)該路面上的停車(chē)線(xiàn)的車(chē)輛將停止行駛,而已通過(guò)停車(chē)線(xiàn)的車(chē)輛則可以繼續(xù)行駛;綠色信號(hào)燈亮起,表明該路面允許行駛。和傳統(tǒng)的交通一樣,交通信號(hào)控制系統(tǒng),需要完成自動(dòng)循環(huán)變化信號(hào)燈,在保障正常行車(chē)和行人的安全前提下,負(fù)責(zé)為各種車(chē)輛和非機(jī)動(dòng)車(chē)提供更加智能人性化的出行體驗(yàn),并完善了十字路口的城市道路交通自動(dòng)化程度。在傳統(tǒng)交通信號(hào)自動(dòng)控制系統(tǒng)的基礎(chǔ)上,智能交通信號(hào)自動(dòng)控制系統(tǒng)基于單片機(jī)設(shè)計(jì)的智能控制系統(tǒng),能完成以下功能:交通信號(hào)控制在十字路口,指揮通行方向和等待方向的兩個(gè)路口的汽車(chē)。,兩個(gè)方向的信號(hào)燈可以根據(jù)交通量自動(dòng)調(diào)整通行時(shí)間。交通量大,通行時(shí)間長(zhǎng),交通量小,通行時(shí)間短;每次信號(hào)燈變綠時(shí),在汽車(chē)駕駛離開(kāi)路口前,統(tǒng)計(jì)該方向的交通流量。除了東西方向和南北方向上的紅色,黃色和綠色信號(hào)燈外,每次打開(kāi)帶有倒計(jì)時(shí)功能的led燈、數(shù)字顯像管等用于顯示當(dāng)前信號(hào)燈持續(xù)時(shí)間。
2.1設(shè)計(jì)原理
??本人選用了51單片機(jī)作為實(shí)現(xiàn)智能控制的單片機(jī)。每個(gè)方向的左轉(zhuǎn)彎,直行,右轉(zhuǎn)彎等信號(hào)均由雙色LED燈泡實(shí)現(xiàn)。交通燈的倒計(jì)時(shí)顯示是通過(guò)數(shù)字管實(shí)現(xiàn)的,該管通常由2位數(shù)字和8段組成。對(duì)于應(yīng)用設(shè)計(jì)的微控制器,I / O端口的數(shù)量非常有限。為了節(jié)省單片機(jī)的I / O端口,使用多個(gè)74LS245芯片來(lái)控制不同驅(qū)動(dòng)方向上的LED燈泡,并且每個(gè)方向上的燈數(shù)由BC7281B芯片控制。人機(jī)交互系統(tǒng)通過(guò)串口與外部系統(tǒng)相連,MAX232芯片更適合于操作要求。為了交通遠(yuǎn)程控制,需要可以遠(yuǎn)程收發(fā)的裝置,此處以 XL02- 232AP1 無(wú)線(xiàn)串口收發(fā)模,作為模擬實(shí)現(xiàn)功能,在總設(shè)計(jì)系統(tǒng)中,以單片機(jī)作為最小系統(tǒng),將芯片作為主控制器,用以控制其他模塊協(xié)調(diào)工作;交通燈模塊作為不同車(chē)道的目前通行情況的表示(紅燈表示該車(chē)道停止前進(jìn),綠燈表示該車(chē)道可以?xún)?yōu)先通行,黃燈表示該車(chē)道的通行情況的過(guò)渡時(shí)間 );紅綠燈倒計(jì)時(shí)顯示模塊和外部鏈接的鍵盤(pán)控制模塊,需要人工進(jìn)行參數(shù)修改,以達(dá)到不同情況的模擬,由單片機(jī)外接接口控制。
??在正常單片機(jī)運(yùn)作周期中,紅綠燈工作時(shí),先主道綠燈亮起,同時(shí)輔道紅燈亮,實(shí)現(xiàn)主道先行,該紅綠燈常亮?xí)r間由人工設(shè)定(設(shè)定范圍為00—99s),交通系統(tǒng)的開(kāi)啟受人工控制,按下鍵盤(pán)上啟動(dòng)鍵后,系統(tǒng)開(kāi)始工作,按照預(yù)定的設(shè)計(jì)方案開(kāi)始自動(dòng)交替亮燈,同時(shí)開(kāi)啟紅綠燈時(shí)間倒計(jì)時(shí)顯示。當(dāng)?shù)褂?jì)時(shí)顯示時(shí)問(wèn)減為0時(shí),原本亮起綠燈的道路轉(zhuǎn)為黃燈閃爍,并維持2秒,亮起紅燈的道路繼續(xù)維持紅燈2秒。倒計(jì)時(shí)顯示又減為0時(shí),黃燈道路轉(zhuǎn)為紅燈亮起,另一方向轉(zhuǎn)為綠燈亮起,兩者的維持時(shí)間仍由預(yù)先設(shè)定,當(dāng)紅綠燈的倒計(jì)時(shí)再次又減為0時(shí),重復(fù)上述流程操作,時(shí)鐘周期開(kāi)始循環(huán)往復(fù),以達(dá)到不同道路不斷交替通行。
在該設(shè)計(jì)中,運(yùn)用模糊檢測(cè)原理用于檢測(cè)車(chē)輛通過(guò)道路。模糊控制原理只是另一種模糊邏輯,而模糊邏輯不是兩者之間推理的邏輯,這在傳統(tǒng)意義上是不正確的。多值邏輯,但在承認(rèn)事物屬于真值之間的過(guò)渡時(shí),他們還認(rèn)為事物在形式具有其他形式。既無(wú)法精確獲得信息,而通過(guò)大體特點(diǎn)推導(dǎo)出物體的大概,因此,如何處理不正確的模糊輸入信息,是對(duì)有效降低模糊控制錯(cuò)誤率,并僅僅需要較少的存儲(chǔ)空間,就可以掌握信息的主要特征,并保證信息處理的實(shí)時(shí)性、多功能性和完整度。這樣,隸屬度用于定量描述宇宙中元素與宇宙概念之間的一致性程度。展開(kāi)以便可以使用隸屬函數(shù)表示模糊集。
2.2方案選擇
??智能交通的系統(tǒng)主要以靠智能電路實(shí)現(xiàn),利用不同元件的控制方案是多種多樣的,有很多可以使用的器件,常見(jiàn)使用PLC、CPLD、單片機(jī)或純電路設(shè)計(jì)等設(shè)計(jì)方案,不同的元件有各種的長(zhǎng)處,需要結(jié)合實(shí)際需求進(jìn)行選擇。從控制的靈活性、實(shí)現(xiàn)的方便程度以及性?xún)r(jià)比等方面綜合考慮,單片機(jī)有其他方案所沒(méi)有的優(yōu)勢(shì),能規(guī)避一部分其他元件使用配合上的弊端,加上我們的專(zhuān)業(yè)課程上有較為系統(tǒng)的學(xué)習(xí)過(guò)單片機(jī),整體系統(tǒng)才用單片機(jī)作為控制的核心元件,模擬仿真不同情況下智能交通燈控制的情形,并對(duì)模擬的結(jié)果進(jìn)行改良系統(tǒng),達(dá)到預(yù)設(shè)的效果,從而實(shí)現(xiàn)經(jīng)濟(jì)、智能、簡(jiǎn)單的設(shè)計(jì)要求,也比較符合對(duì)硬件大小的預(yù)期。
軟件采用匯編語(yǔ)言的系統(tǒng)進(jìn)行仿真,采用Keil C51的集成匯編軟件,將上述的軟件編制導(dǎo)入?yún)R編軟件中,對(duì)軟件程序進(jìn)行編寫(xiě),查找設(shè)計(jì)上的功能是否能正常實(shí)現(xiàn),為了方便程序調(diào)試,本人采用Proteus仿真電路,模擬仿真所編寫(xiě)的程序,最初的程序在不同的紅綠燈交替亮起是存在不少的問(wèn)題,不同的控制疊加在一起時(shí)引起邏輯判斷出現(xiàn)了問(wèn)題,而且隨著情況越發(fā)復(fù)雜,單片機(jī)的接口也有限,大量的判斷需要優(yōu)化整合到同一個(gè)程序判斷中,之后便可以實(shí)現(xiàn)封裝,調(diào)試或者生產(chǎn)pcb版等后續(xù)操作。
二、元件展示
3.1單片機(jī)展示
89C51是一種低壓,高性能CMOS 8位微處理器,具有4K字節(jié)的閃存可編程可擦寫(xiě)只讀存儲(chǔ)器(FPEROM閃存可編程可擦寫(xiě)只讀存儲(chǔ)器),通常稱(chēng)為微控制器。 MCU的可擦除只讀存儲(chǔ)器可以重復(fù)擦除100次。該器件采用ATMEL高密度非易失性存儲(chǔ)器制造技術(shù)制造,并且與行業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出引腳兼容。由于在單個(gè)芯片中結(jié)合了多功能8位CPU和閃存,ATMEL的89C51是高效的微控制器,而89C2051是其簡(jiǎn)化版本。
圖3.1 單片機(jī)的內(nèi)部邏輯結(jié)構(gòu)示意圖
表3.1 單片機(jī)的功能表
單片機(jī)的最小系統(tǒng)描述:時(shí)鐘信號(hào)的產(chǎn)生:MCS-51芯片內(nèi)部有一個(gè)高增益反相放大器,其輸入端子是芯片引腳XTAL1,其輸出端子是引腳XTAL 2 。在芯片外部,晶體振蕩器和微調(diào)電容器連接在XTAL1和XTAL2之間,并形成了穩(wěn)定的自激振蕩器。這是微控制器的時(shí)鐘振蕩電路。觸發(fā)器將頻率除以2后,時(shí)鐘電路產(chǎn)生的振蕩脈沖變成微控制器的時(shí)鐘脈沖信號(hào)。通常,電容C2和C3約為30pF,晶體的振蕩頻率為1.2-1-2MHz。如果晶體振蕩頻率高,則系統(tǒng)的時(shí)鐘頻率也高,并且單片機(jī)的操作速度也快。單片機(jī)的復(fù)位使CPU和其他功能組件處于特定的初始狀態(tài),并從該狀態(tài)開(kāi)始工作。微控制器的復(fù)位條件:必須在兩個(gè)機(jī)器周期(即兩個(gè)4個(gè)振蕩周期)內(nèi)向引腳9添加一個(gè)高電平。
AT89S51是美國(guó)ATMEL公司生產(chǎn)的最為廣泛運(yùn)用的CMOS8位單片微型計(jì)算機(jī),具有低功耗和高性能的特點(diǎn),可運(yùn)用性很高,單個(gè)片中安置了4k bytes的可編程的Flash只讀程序存儲(chǔ)器,材料的選取十分嚴(yán)格,結(jié)合公司的加工工藝,不易對(duì)儲(chǔ)存造成損害,兼容標(biāo)準(zhǔn)8051指令系統(tǒng)及引腳。AT89S51集合了Flash程序存儲(chǔ)器于內(nèi)部,使其可使用在線(xiàn)編程(ISP),又兼容傳統(tǒng)方法進(jìn)行編程,還存有通用8位微處理器于單片芯片中,ATMEL公司有著悠久的硬件加工歷史,加工出來(lái)的成品功能強(qiáng)大,工藝精湛,價(jià)格低廉,AT89S51單片機(jī)是性?xún)r(jià)比十分高的一款熱銷(xiāo)型號(hào),可靈活應(yīng)用于各種控制領(lǐng)域。其與市面上其他產(chǎn)品兼容8K字節(jié)在系統(tǒng)可編程Flash存儲(chǔ)器,擁有1000次的擦寫(xiě)周期和全靜態(tài)操作的機(jī)能,覆蓋0Hz~33Hz,設(shè)有三級(jí)加密程序存儲(chǔ)器,外置32個(gè)可編程I/O口,可轉(zhuǎn)換計(jì)時(shí)定時(shí)器3個(gè),8個(gè)獨(dú)立運(yùn)作的終端源,配合全雙工UART串行通道低功耗空閑和掉電模式、掉電后中斷可喚醒、看門(mén)狗定時(shí)器、雙數(shù)據(jù)指針、掉電標(biāo)識(shí)符。
圖3.2 單片機(jī)引腳示意圖
三、 內(nèi)容截圖
四、 主要代碼
程序源代碼
#include<reg51.h>
sbit g1=P1^0; //位定義
sbit r1=P1^1;
sbit y1=P1^2;
sbit g2=P1^3;
sbit r2=P1^4;
sbit y2=P1^5;
unsigned char f=0;
unsigned char nanbei_time=15; //定義南北的時(shí)間長(zhǎng)度
unsigned char dongxi_time=11; //定義東西的時(shí)間長(zhǎng)度
unsigned char m;
unsigned char code t[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x27,0x7F,0x6F};
void init_timer0(void) //中斷初始化函數(shù)
{
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
ET0=1;
EA=1;
TR0=1;
}
void display(unsigned char x)
{
unsigned char m,n;
m=x/10;
n=x%10;
P0=t[m];
P2=t[n];
}
void timer(void) interrupt 1 using 1 //中斷服務(wù)函數(shù)
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
f++;
if(f==20)
{
f=0;
m--;
}
}
void main()
{
m=nanbei_time;
P1=0x00;
init_timer0();
while(1) {
do {
display(m);
g1=1;
r1=0;
g2=0;
r2=1;
}
while(m!=3);
do
{
if(m<=3)
{
y1=~y1;
r1=0;
g1=0;
r2=1;
g2=0;
}
display(m);
r1=0;
g2=0;
r2=1;
}
while(m!=3);
do
{
if(m<=3)
{
y1=~y1;r1=0;g1=0;
r2=1;g2=0;
}
display(m);
}
while(m!=0);
if(m==0)
{ m = dongxi_time;
y1 = 0;
y2 = 0;
}
do{
display(m);
g1 = 0;
r1 = 1;
g2 = 1;
r2 = 0;
}
while(m!=3);
do{
if(m<=3)
{
r1=1,g1=0;
y2=~y2,r2=0,g2=0;
}
display(m);
}while(m!=0);
if(m==0)
{
m=nanbei_time;
y1=0;
y2=0;
}
}
}
.
#include<reg52.h>
#include<math.h>
#define uchar unsigned char
#define uint unsigned int
#define ulang unsigned lang
static unsigned char count;
code unsigned char tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
//共陰數(shù)碼管 0-9
uchar smg[8]; //定義緩沖區(qū)
uint we,ns,h,j; //ns代表南北,we代表東西
int aaa(); //東西紅燈亮,南北綠燈,黃燈亮
int bbb(); //南北紅燈亮,東西綠燈,黃燈亮
int eee(); //第一次完成顯示,繼續(xù)第二次初始化
void delay(unsigned int cnt)
{
while(--cnt);
}
void display( )
{
//取每一位的數(shù)字
smg[0]=tab[we/10];
smg[1]=tab[we%10];
smg[2]=0x00;
smg[3]=0x00;
smg[4]=0x00;
smg[5]=0x00;
smg[6]=tab[ns/10];
smg[7]=tab[ns%10];
}
void main()
{
uchar i;
TMOD |=0x01; //定時(shí)器0 10ms in 12M crystal 用于計(jì)時(shí)
TH0=0xd8; //初值
TL0=0xf0;
ET0=1;
TR0=1;
EA =1;
display();
while(1)
{
for(i=0;i<8;i++) //顯示函數(shù),因單片機(jī)而異
{
P0=smg[i];
P2=i;
delay(100);
}
ccc(); //進(jìn)入交通燈控制程序
display( ); //掃描數(shù)碼管
}
}
void timer() interrupt 1 //中斷函數(shù)
{
TH0=0xd8; //重新賦值
TL0=0xf0;
count++;
}
int aaa()
{
if(j<25) //東西紅燈計(jì)數(shù)30秒,南北25秒綠燈亮
{
if(j==1) { we=30,ns=25; }
ns--;
we--;
P1=0xde;
return 0; }
if(25<=j<30) //南北黃燈5秒
{
if(j==26) { ns=5; }
P1=0xee;
ns--;
we--;
return 0; }
}
int bbb()
{
if(h<25)
{ //南北紅燈30秒,東西綠燈25秒
if(h==1) { we=25,ns=30; }
ns--;
we--;
P1=0xf3;
return 0; }
if(25<=h<30) //東西黃燈5秒
{
if(h==26) { we=5; }
P1=0xf5;
ns--;
we--;
return 0; }
}
int eee() //一次周期交通燈顯示完后,重新賦值,等待第二次
{
j=0;
h=0;
return 0;
}
int ccc() //交通燈控制函數(shù)
{
if (count==100) //定時(shí)一秒
{
count=0;
j++; //算法函數(shù)
if ( (j>30)&&(j!=61)) { h++; bbb(); return 0; }
if(j==61) { eee(); return 0;}
aaa(); return 0;
}
}
四、 文章目錄
目 錄文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-762322.html
1 引言 1
1.1 本設(shè)計(jì)的目的、意義及應(yīng)達(dá)到的技術(shù)要求 1
1.2 本設(shè)計(jì)在國(guó)內(nèi)外的發(fā)展概況及存在的問(wèn)題 2
1.3 本設(shè)計(jì)的中心要點(diǎn) 4
2 設(shè)計(jì)思路 5
2.1設(shè)計(jì)原理 6
2.2方案選擇 7
2.2.1分析問(wèn)題 7
3 元器件展示 8
3.1單片機(jī)展示 8
3.2匯編軟件展示 10
4 系統(tǒng)設(shè)計(jì)流程概述 11
4.1設(shè)計(jì)流程概述 12
4.2汽車(chē)數(shù)量檢查電路 13
4.3交通指示燈電路 13
4.4倒計(jì)時(shí)顯示電路 14
4.5緊急處理電路 15
5 系統(tǒng)仿真 15
6 結(jié)論 20
參考文獻(xiàn) 22
致謝 23
附錄 24文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-762322.html
到了這里,關(guān)于基于單片機(jī)的紅綠燈智能控制系統(tǒng)設(shè)計(jì)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!