版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、PAGE PAGE 45基于PLC專家控制系統(tǒng)的十字路口紅綠燈控制設(shè)計(jì)摘要在當(dāng)今高速發(fā)展的社會(huì)里,交通問題成為大家關(guān)注的社會(huì)問題,而目前國內(nèi)十字路口的交通燈控制一般是定時(shí)切換控制的,汽車數(shù)量的直線上升及現(xiàn)有的定時(shí)切換控制方式的局限性都使得我們有必要尋求一種智能的交通控制系統(tǒng)。基于此本論文主要思路是:利用探測器(即電磁感應(yīng)線圈)探測出車輛的流量后,通過可編程控制器PLC來實(shí)現(xiàn)自動(dòng)調(diào)節(jié)紅綠燈的時(shí)長。關(guān)鍵詞:PLC控制;交通燈;探測車流量;專家控制系統(tǒng)AbstractIn the high speed development of society,the traffic problem become
2、s the social problem that everybody pays attention to,but at present our country traffic lights control generally is timing. And that the quantities of cars increase straightly and the timing control of the traffic lights have some bugs make us have necessity to look for a kind of intellective trans
3、portation control system。According to that, the way of thinking of this thesis is that:the time of the traffic lights are automatically computed by PLC after the locators(namely electromagnetic induction coil)have explored the discharge of the vehicle。Key words: the Control of PLC;Traffic lights;Num
4、ber cars;the expert control system目 錄 TOC o 1-3 h z u HYPERLINK l _Toc169589437 中英文 HYPERLINK l _Toc169589438 摘要( PAGEREF _Toc169589438 h I) HYPERLINK l _Toc169589440 1引言( PAGEREF _Toc169589440 h 1) HYPERLINK l _Toc169589441 2交通燈控制系統(tǒng)方案論證( PAGEREF _Toc169589441 h 1) HYPERLINK l _Toc169589442 3用PLC實(shí)現(xiàn)交
5、通燈控制系統(tǒng)( PAGEREF _Toc169589442 h 3) HYPERLINK l _Toc169589443 31 PLC的選型( PAGEREF _Toc169589443 h 3) HYPERLINK l _Toc169589444 32 系統(tǒng)I/O分配和接線圖( PAGEREF _Toc169589444 h 4) HYPERLINK l _Toc169589445 321 I/O分配表( PAGEREF _Toc169589445 h 4) HYPERLINK l _Toc169589446 322 I/O接線圖( PAGEREF _Toc169589446 h 5) HY
6、PERLINK l _Toc169589447 33 傳感器探測車輛( PAGEREF _Toc169589447 h 5) HYPERLINK l _Toc169589448 331 光電開關(guān)(光電傳感器)( PAGEREF _Toc169589448 h 5) HYPERLINK l _Toc169589449 332 電感式傳感器( PAGEREF _Toc169589449 h 6) HYPERLINK l _Toc169589450 333 傳感器的鋪設(shè)( PAGEREF _Toc169589450 h 7) HYPERLINK l _Toc169589451 34 用專家控制系統(tǒng)實(shí)
7、現(xiàn)紅綠燈的時(shí)長( PAGEREF _Toc169589451 h 7) HYPERLINK l _Toc169589452 341 專家控制系統(tǒng)設(shè)計(jì)( PAGEREF _Toc169589452 h 7) HYPERLINK l _Toc169589453 342 車流量的計(jì)算( PAGEREF _Toc169589453 h 9) HYPERLINK l _Toc169589454 343 用專家系統(tǒng)實(shí)現(xiàn)綠燈時(shí)長的智能控制( PAGEREF _Toc169589454 h 9) HYPERLINK l _Toc169589455 35 程序設(shè)計(jì)和編程( PAGEREF _Toc1695894
8、55 h 11) HYPERLINK l _Toc169589456 351 PLC程序設(shè)計(jì)( PAGEREF _Toc169589456 h 11) HYPERLINK l _Toc169589457 352 PLC的編程語言( PAGEREF _Toc169589457 h 15) HYPERLINK l _Toc169589458 4程序調(diào)試的基本要點(diǎn)( PAGEREF _Toc169589458 h 15) HYPERLINK l _Toc169589459 5結(jié)束語( PAGEREF _Toc169589459 h 16) HYPERLINK l _Toc169589460 致謝(
9、PAGEREF _Toc169589460 h 16) HYPERLINK l _Toc169589461 參考文獻(xiàn)( PAGEREF _Toc169589461 h 16) HYPERLINK l _Toc169589462 附錄:十字路口紅綠燈控制梯形圖( PAGEREF _Toc169589462 h 17)1引言目前,隨著我國城市道路和交通運(yùn)輸?shù)难杆侔l(fā)展,交通管制顯得越來越重要。不僅要依據(jù)實(shí)際車流量來設(shè)計(jì)路口的交通紅綠燈信號控制方案,而且還要根據(jù)當(dāng)前流量統(tǒng)計(jì),及時(shí)進(jìn)行方案的調(diào)整及優(yōu)化,保證道路暢通和單位時(shí)間流量最大化。計(jì)算機(jī)技術(shù)的迅猛發(fā)展,使小型PLC可編程控制器的指令功能日趨強(qiáng)大,而
10、采用邏輯集成電路組成的信號燈控制器,已經(jīng)不能滿足現(xiàn)實(shí)需要,用PLC控制城市交通信號燈,不僅可以滿足現(xiàn)實(shí)需要,而且投資少,周期短,人機(jī)對話界面良好,控制方案更簡單,適合于各種情況1。傳統(tǒng)的十字路口交通控制燈,通常是事先經(jīng)過對交通流量的調(diào)查,運(yùn)用定時(shí)的方法將兩個(gè)方向紅綠燈的延時(shí)時(shí)間預(yù)先設(shè)置好2。這樣必然產(chǎn)生如下弊端:當(dāng)某條路段的車流量很大時(shí)卻要長時(shí)間等待紅燈,而此時(shí)另一條是空道或車流量相對少得多的道卻長時(shí)間亮的是綠燈,這種現(xiàn)象是未對實(shí)際情況進(jìn)行實(shí)時(shí)監(jiān)控所造成的,這樣的交通控制系統(tǒng)效率低,容易造成交通擁擠,而且對人力、物力資源的浪費(fèi)。因此,我們有必要尋求一種能根據(jù)車流量變化的情況來智能控制綠燈時(shí)長,
11、減小滯留量,提高交通控制系統(tǒng)?;诖?,本論文應(yīng)用可編程序控制器(PLC)對十字路口交通實(shí)現(xiàn)專家控制:在十字路口各入路口附近的地下按要求埋設(shè)感應(yīng)線圈,當(dāng)汽車經(jīng)過時(shí)就會(huì)產(chǎn)生渦流損耗,環(huán)狀絕緣電線的電感開始減少,即可檢測汽車的通過,并將這一信號轉(zhuǎn)換為標(biāo)準(zhǔn)脈沖信號作為可編程控制器的控制輸入,并用PLC計(jì)數(shù),按一定控制規(guī)律自動(dòng)調(diào)節(jié)紅綠燈的時(shí)長,可避免出現(xiàn)空道占時(shí)現(xiàn)象。本論文主要解決的問題是:如何檢測車輛的存在與通過,探測車輛傳感器的布置,如何應(yīng)用專家控制系統(tǒng)來控制紅綠燈時(shí)長,最后程序的實(shí)現(xiàn)與調(diào)試。2交通燈控制系統(tǒng)方案論證(1) 采用繼電器控制系統(tǒng)實(shí)現(xiàn),繼電器控制回路存在多種弊端,如繼電器由于長期動(dòng)作容易
12、造成咬死和損壞、繼電器回路接線復(fù)雜,而且維護(hù)困難、繼電器回路難以實(shí)現(xiàn)復(fù)雜邏輯的控制等。采用繼電器控制來實(shí)現(xiàn),結(jié)構(gòu)復(fù)雜、造價(jià)高、維護(hù)難,很難達(dá)到復(fù)雜的控制要求。傳統(tǒng)十字路口紅綠燈控制就是采用此種方法來控制的。其系統(tǒng)工作過程:首先是南北紅燈亮并維持25s,在南北紅燈亮的同時(shí),東西綠燈亮并維持20s。20s延時(shí)到,東西綠燈閃亮3s(閃亮的周期為1s即亮0.5s,熄0.5s)后熄滅,東西黃燈亮并維持2s后,東西黃燈熄滅,東西紅燈亮,同時(shí)南北紅燈熄滅,南北綠燈亮。東西紅燈亮并維持25s。南北綠燈亮并維持20s,20s延時(shí)到,南北綠燈閃亮3s后熄滅,南北黃燈亮并維持2s。2s延時(shí)到,南北黃燈熄滅,南北紅燈
13、亮,同時(shí)東西紅燈熄滅,東西綠燈亮。開始下一周期的動(dòng)作,以后周而復(fù)始地循環(huán)。當(dāng)啟動(dòng)開關(guān)斷開時(shí),所有信號燈熄滅3。急車強(qiáng)通信號受強(qiáng)通開關(guān)控制。無急車時(shí),按正常循環(huán)時(shí)序控制,有急車來時(shí),將該方向急車強(qiáng)通開關(guān)接通,不管原來信號狀態(tài)如何,一律強(qiáng)制讓急車方向的綠燈亮,直到急車通過為止。急車一過,斷開急車強(qiáng)通開關(guān),信號的狀態(tài)立即轉(zhuǎn)為急車放行方向的綠燈閃3次,隨后按正常時(shí)序控制。這種定時(shí)控制方式雖然考慮了緊急車輛的通行,但是交通燈的正常時(shí)序是定時(shí)切換紅綠燈,這樣必然會(huì)產(chǎn)生如下弊端:當(dāng)某條路段的車流量很大時(shí)卻要等待紅燈,而此時(shí)另一條是空道或者車流量相對少得多的路段卻長時(shí)間亮的是綠燈,這種多等少的尷尬現(xiàn)象是未對實(shí)
14、際情況進(jìn)行實(shí)時(shí)監(jiān)控所造成的。顯然,這樣的交通燈控制系統(tǒng)效率較低,無法依據(jù)道路與季節(jié)變化情況改變控制方式,容易造成交通擁擠,也浪費(fèi)人力、物力4。(2) 采用計(jì)算機(jī)控制系統(tǒng)實(shí)現(xiàn),如DSP、專用集成電路以及單片機(jī)等。這類控制系統(tǒng)雖有較好的性價(jià)比,但使用的是高級語言、機(jī)器語言或匯編語言進(jìn)行編程,其難度大、糾正難、用戶不易掌握。(3) 用可編程控制系統(tǒng)實(shí)現(xiàn),由于其在自動(dòng)化技術(shù)、計(jì)算機(jī)技術(shù)及網(wǎng)絡(luò)通信技術(shù)的迅猛發(fā)展,使PLC的功能日益增多。它不僅能實(shí)現(xiàn)單機(jī)控制,而且能實(shí)現(xiàn)多機(jī)群控制;不僅能實(shí)現(xiàn)邏輯控制,還能實(shí)現(xiàn)過程控制、運(yùn)動(dòng)控制和數(shù)據(jù)處理等。它具有功能強(qiáng)大、使用可靠、維修簡單、抗干擾能力強(qiáng)等許多優(yōu)點(diǎn),并且在
15、很多地方已逐步取代了繼電器電路的邏輯控制。繼電器控制系統(tǒng)接線復(fù)雜、電器多、占地面積大,調(diào)整延時(shí)不方便,延時(shí)準(zhǔn)確度差;計(jì)算機(jī)控制系統(tǒng)是按一定數(shù)學(xué)模型進(jìn)行跟蹤控制、效果好,但造價(jià)高,維護(hù)難度大,只適用于極重要的交通路口;可編程控制系統(tǒng)(PLC)有許多突出的優(yōu)點(diǎn):造價(jià)低、堅(jiān)固耐用、在惡劣環(huán)境下也能可靠地工作、延時(shí)準(zhǔn)確,用軟件來改變控制程序和時(shí)間,極為靈活5。 專家控制系統(tǒng)需要按實(shí)際情況來改變參數(shù),如使用繼電器控制,則很難實(shí)現(xiàn);如使用單片機(jī)控制,則需要引入大量的I/O接口電路、硬件設(shè)計(jì),而且這兩種控制方式的抗干擾能力都十分有限。采用可編程控制器(PLC)對交通信號燈進(jìn)行管理,既能滿足控制要求,又具有高
16、的抗干擾性和穩(wěn)定性?;诖耍菊撐牟捎肞LC專家控制系統(tǒng)來實(shí)現(xiàn)十字路口紅綠燈控制,用傳感器探測車輛的存在與通過,以得到車輛脈沖,然后把這一脈沖輸入到PLC,考慮到車輛脈沖的頻率,用PLC內(nèi)高速計(jì)數(shù)器對車輛脈沖的上升沿進(jìn)行計(jì)數(shù),并按一定的智能控制原則來自動(dòng)調(diào)節(jié)紅綠燈時(shí)長,從而減小滯留量,提高交通控制系統(tǒng)效率。3用PLC實(shí)現(xiàn)交通燈控制系統(tǒng)31 PLC的選型為了簡單起見,本文只做一個(gè)十字路口的交通燈控制系統(tǒng)。一個(gè)十字路口的交通控制系統(tǒng)共有11個(gè)輸入信號,其中4個(gè)X0X3用作高速計(jì)數(shù)器(C235C238)的輸入端口,X4是啟動(dòng)開關(guān),X5是定時(shí)控制或智能控制地選擇開關(guān),X6是高速計(jì)數(shù)器C235C238線
17、圈的驅(qū)動(dòng)觸點(diǎn),最后4個(gè)X10X13用作內(nèi)部計(jì)數(shù)器(C10C13)的輸入端口。輸出信號有東西方向、南北方向各兩組指示燈驅(qū)動(dòng)信號,由于每一個(gè)方向的兩組指示燈中,同種顏色的指示燈是同時(shí)工作的。因此,可采用并聯(lián)方式輸出,從而減少了PLC輸出點(diǎn)的數(shù)目。即將東西方向的紅黃綠燈分別并聯(lián),將南北方向的紅黃綠燈分別并聯(lián)。所以,系統(tǒng)的輸出信號只有6個(gè),為了遵循PLC機(jī)型的選擇原則,本設(shè)計(jì)選用FX2N-32MR(繼電器輸出)的PLC,最主要的是因?yàn)樵贔X系列的眾多機(jī)型中,要數(shù)FX2N系列的功能最強(qiáng)、處理速度最快、容量最大,屬于高檔的超小型機(jī)。它有16個(gè)輸入點(diǎn)和16個(gè)輸出點(diǎn),足足可以滿足系統(tǒng)輸入、輸出的要求,而且還有
18、一定余量。輸入繼電器的編號為X0X7、X10X17,輸出繼電器的編號為Y0Y7、Y10Y17。其輸入端接收來自各個(gè)路口車輛探測器測得的輸出標(biāo)準(zhǔn)電脈沖,輸出端接十字路口的紅黃綠信號交通燈。信號燈的選擇:選用紅、黃、綠發(fā)光二極管作為信號燈(綠燈是箭頭方向型)。FX2N的性能指標(biāo)見表1表1 FX的性能指標(biāo)6項(xiàng) 目FX運(yùn)行控制方式反復(fù)掃描程序I/O刷新方式批處理方式,當(dāng)有輸入輸出刷新指令處理速度(基本指令)0.08 us/步存儲(chǔ)器容量和類型內(nèi)附8K步RAM,最大可達(dá)16K步程序語言梯形圖、指令表、SFC(狀態(tài)轉(zhuǎn)移圖)指令數(shù)基本指令27條,步進(jìn)指令2條,應(yīng)用指令298條最大I/O點(diǎn)數(shù)256輸入繼電器最多
19、184點(diǎn),X0X267輸出繼電器最多184點(diǎn),Y0Y267輔助繼電器(M)普通型500點(diǎn),M0M499保持型2572點(diǎn),M500M3071256點(diǎn),M8000M8255狀態(tài)(S)普通型500點(diǎn)S0S499(其中S0S9用于初始化,S10S19用于返回原點(diǎn))保持型500點(diǎn)S500S999(其中S900S999固定用于故障報(bào)警)定時(shí)器(T)100 ms200點(diǎn),T0T19910 ms46點(diǎn),T200T2451 ms(積算型)4點(diǎn),T246T249(電池后備)100 ms(積算型)6點(diǎn),T250T255(電池后備)計(jì)數(shù)器加計(jì)數(shù)器普通型100點(diǎn)(16位) C0C99保持型100點(diǎn)(16位) C100C
20、199加/減計(jì)數(shù)器普通型20點(diǎn)(32位) C200C219保持型15點(diǎn)(32位) C220C234高速計(jì)數(shù)器1相1輸入11點(diǎn)C235C245(32位加/減計(jì)數(shù) 保持型)1相2輸入5點(diǎn)C246C250(32位加/減計(jì)數(shù) 保持型)2相2輸入5點(diǎn)C251C255(32位加/減計(jì)數(shù) 保持型)數(shù) 據(jù)寄存器普通型200點(diǎn)(16)位D0D199保持型7800點(diǎn)(16)位D200D7999特殊型256點(diǎn)(16)位D8000D8255變址用16點(diǎn)(16)位V0V7,Z0Z732 系統(tǒng)I/O分配和接線圖321 I/O分配表本設(shè)計(jì)占用PLC的11個(gè)輸入點(diǎn),6個(gè)輸出點(diǎn),具體的I/O分配表見2、3表2 輸入分配表輸 入
21、 信 號信 號 功 能輸 入 信 號信 號 功 能 X0 PO1東車道車輛進(jìn)入信號X10PO5東車道車輛出去信號 X1 PO2北車道車輛進(jìn)入信號 X11PO6北車道車輛出去信號 X2 PO3西車道車輛進(jìn)入信號 X12PO7西車道車輛出去信號 X3 PO4南車道車輛進(jìn)入信號 X13PO8南車道車輛出去信號 X4 PS1啟動(dòng)開關(guān) X6高速計(jì)數(shù)器C235C238線圈的驅(qū)動(dòng)觸點(diǎn) X5 PS2智能開關(guān)表3輸出分配表輸 出 信 號信 號 功 能輸 出 信 號信 號 功 能Y1東西紅燈Y11南北紅燈Y2東西黃燈Y12南北黃燈Y3東西綠燈Y13南北綠燈322 I/O接線圖 圖1 I/O接線圖33傳感器探測車輛
22、331 光電開關(guān)(光電傳感器)光電開關(guān)(也叫光電傳感器)是接近開關(guān)的一種,它是利用被檢測物對光束的遮擋或反射,由同步回路選通電路,從而檢測物體有無的。物體不限于金屬,所有能反射光線均可被檢測。光電開關(guān)將輸入電流在發(fā)射器上轉(zhuǎn)換為光電信號射出,接收器再根據(jù)接受到的光線的強(qiáng)弱后有無對目標(biāo)物體進(jìn)行探測。多數(shù)光電開關(guān)選用的是波長接近可見光的紅外線光波型。它具有體積小,功能多,壽命長,精度高,響應(yīng)速度快,檢測距離遠(yuǎn)以及抗電磁干擾能力強(qiáng)等優(yōu)點(diǎn)。目前,光電開關(guān)已被用作物位檢測、產(chǎn)品計(jì)數(shù)、速度檢測、信號延時(shí)、色標(biāo)檢出以及安全防護(hù)等諸多領(lǐng)域。光電開關(guān)按檢測方式可分為漫反射式、鏡反射式、對射式等,它們各自的特點(diǎn)是:
23、漫反射式光電開關(guān)是一種集發(fā)射器和接收器于一體的傳感器,當(dāng)有被檢測物體經(jīng)過時(shí),物體將光電開關(guān)發(fā)射器發(fā)射的足夠量的光線反射到接收器,于是光電開關(guān)就產(chǎn)生了開關(guān)信號。當(dāng)被檢測物體的表面光亮或其反光率極高時(shí),漫反射式的光電開關(guān)是首選的檢測模式。鏡反射式光電開關(guān)是集發(fā)射器與接收器于一體,光電開關(guān)發(fā)射器發(fā)出的光線經(jīng)過反射鏡反射回接收器,當(dāng)被檢測物體經(jīng)過且完全阻斷光線時(shí),光電開關(guān)就產(chǎn)生了檢測開關(guān)信號。對射式光電開關(guān)它包含了在結(jié)構(gòu)上相互分離且光軸相對放置的發(fā)射器和接收器,發(fā)射器發(fā)出的光線直接進(jìn)入接收器,當(dāng)被檢測物體經(jīng)過發(fā)射器和接收器之間且阻斷光線時(shí),光電開關(guān)就產(chǎn)生了開關(guān)信號。當(dāng)檢測物體為不透明時(shí),對射式光電開關(guān)
24、是最可靠的檢測裝置。332電感式傳感器電感式傳感器由鐵心和線圈構(gòu)成的將直線或角位移的變化轉(zhuǎn)換為線圈電感量變化的傳感器,又稱電感式位移傳感器。這種傳感器的線圈匝數(shù)和材料導(dǎo)磁系數(shù)都是一定的,其電感量的變化是由于位移輸入量導(dǎo)致線圈磁路的幾何尺寸變化而引起的。當(dāng)把線圈接入測量電路并接通激勵(lì)電源時(shí),就可獲得正比于位移輸入量的電壓或電流輸出。電感式傳感器的特點(diǎn)是:無活動(dòng)觸點(diǎn)、可靠度高、壽命長分辨率高靈敏度高線性度高、重復(fù)性好測量范圍寬(測量范圍大時(shí)分辨率低)無輸入時(shí)有零位輸出電壓,引起測量誤差對激勵(lì)電源的頻率和幅值穩(wěn)定性要求較高7。電感式傳感器是埋設(shè)在公路下十幾厘米深處的環(huán)狀絕緣電線,當(dāng)有高頻電流通過電感
25、時(shí),公路面上就會(huì)形成高頻磁場。當(dāng)汽車進(jìn)入這一高頻磁場區(qū)時(shí),汽車就會(huì)產(chǎn)生渦流損耗,環(huán)狀絕緣電線的電感開始減少。當(dāng)汽車正好在該感應(yīng)線圈的正上方時(shí),該感應(yīng)線圈的電感減到最小值,當(dāng)汽車離開這高頻磁場區(qū)時(shí),該感應(yīng)線圈的電感逐漸復(fù)原到初始狀態(tài)。由于電感變化,該感應(yīng)線圈中流動(dòng)的高頻電流的振幅和相位發(fā)生變化,因此,在環(huán)的始端連接上檢測相位或振幅變化的檢測器,就可得到汽車通過的電信號。若將環(huán)狀絕緣電線作為振蕩電路的一部分,則只要檢測振蕩頻率的變化即可知道汽車的存在和通過8。電感式傳感器的高頻電流頻率為60KHz,尺寸為23m,電感約為100uH,這種傳感器可檢測的電感變化率在0.3上。當(dāng)今的工業(yè)自動(dòng)控制已不滿足
26、于簡單的開關(guān)量信號,這種情形不禁使我們想起以前電子式非接觸電感式傳感器取代機(jī)械開關(guān)的時(shí)期。過去,唯一的解決辦法是使用一個(gè)昂貴的測量系統(tǒng),但其精度等級卻大大地超過了我們的應(yīng)用需要。 先進(jìn)的模擬量電感式傳感器恰好填補(bǔ)了這個(gè)空白。電感式傳感器能夠提供一個(gè)與物體位移成比例的電流或電壓信號,由此來完成簡單可靠的檢測和控制任務(wù)。近些年,此類產(chǎn)品的技術(shù)有了長足的發(fā)展。從技術(shù)方面講,這些裝置已經(jīng)趕上測量系統(tǒng),但其價(jià)格與開關(guān)量電感式傳感器接近,因而在許多應(yīng)用中成為理想的替代方案。333 傳感器的鋪設(shè)車輛計(jì)數(shù)是智能交通控制系統(tǒng)的關(guān)鍵部分,為防止車輛出現(xiàn)漏檢的現(xiàn)象,環(huán)狀絕緣電線在地下的鋪設(shè)將采取在每個(gè)車行道上的出口
27、處以及在離出口處一定距離的進(jìn)口處各鋪設(shè)一個(gè)相同的傳感器。同一車道上的兩個(gè)傳感器之間的距離為該車道正常運(yùn)行時(shí)所允許的最長停車車龍為好8。 X12 C12X10 C10X3 C238X0 C235X2 C237車輛探測器1車輛探測器2西X13 C13X11 C11X1 C236北東南(其他道同此)圖2 十字路口傳感器的鋪設(shè)34用專家控制系統(tǒng)實(shí)現(xiàn)紅綠燈的時(shí)長控制341 專家控制系統(tǒng)設(shè)計(jì)傳統(tǒng)控制方法的設(shè)計(jì)和分析是建立在系統(tǒng)的精確模糊基礎(chǔ)上的,而實(shí)際系統(tǒng)由于存在復(fù)雜性、時(shí)變性、不確定性和不完全性等,一般無法獲得精確的數(shù)學(xué)模型。采用傳統(tǒng)控制理論進(jìn)行系統(tǒng)設(shè)計(jì)時(shí),必須提出并遵循一些苛刻的假設(shè),而這些假設(shè)往往與
28、實(shí)際情況不符,使得所設(shè)計(jì)的系統(tǒng)性能與實(shí)際情況相差很遠(yuǎn)。所以,本文由交通專家根據(jù)某個(gè)十字路口的具體情況確定綠燈延時(shí)時(shí)間的參數(shù)。專家控制是智能控制的一個(gè)重要分支,它是把專家系統(tǒng)的思想和方法引入控制系統(tǒng)及其工程應(yīng)用。就其實(shí)質(zhì)而言,專家控制是基于控制對象和控制規(guī)律的各種知識的總和,而且要以智能的方式使用這些知識,求得受控系統(tǒng)更可能地優(yōu)化和實(shí)用化,它反映出智能控制的許多重要特征和功能。作一個(gè)形象的比喻,專家控制是試圖在控制閉環(huán)中加入一個(gè)有經(jīng)驗(yàn)的工程師,系統(tǒng)能為他提供一個(gè)“控制工具箱”,即可對控制、辨識、測量、監(jiān)視等各種算法選擇自便,調(diào)節(jié)自如。因此,專家控制實(shí)質(zhì)上是對一個(gè)“控制專家”的思路、經(jīng)驗(yàn)、策略的模
29、擬、延伸、擴(kuò)展。專家系統(tǒng)是一種能在某個(gè)領(lǐng)域內(nèi),以人類專家的知識和經(jīng)驗(yàn)來解決該領(lǐng)域中高度困難任務(wù)的計(jì)算機(jī)系統(tǒng)。它的主體是一個(gè)基于知識的計(jì)算機(jī)程序系統(tǒng),其內(nèi)部具有某個(gè)領(lǐng)域中大量專家水平的知識與經(jīng)驗(yàn),能夠利用人類專家的知識和解決問題的方法來解決該領(lǐng)域的問題。專家系統(tǒng)所要解決的問題一般沒有算法解,并且往往要在不精確或不確定或不完全的信息基礎(chǔ)上進(jìn)行推理,做出結(jié)論。專家系統(tǒng)應(yīng)用人工智能技術(shù)和計(jì)算機(jī)技術(shù)進(jìn)行推理和判斷,模擬人類專家解決問題和進(jìn)行決策的過程,其獨(dú)到之處是能求解那些需要人類專家才能求解的高難度復(fù)雜問題。在實(shí)際應(yīng)用中,專家系統(tǒng)最有吸引力、也是難度頗大的領(lǐng)域之一是專家控制。專家控制可以看成是對一個(gè)“
30、控制專家”在解決控制問題或進(jìn)行控制操作時(shí)的思路、方法、經(jīng)驗(yàn)、策略的模擬。控制專家在完成控制任務(wù)時(shí)主要進(jìn)行三項(xiàng)工作:觀察、檢測系統(tǒng)中的有關(guān)變量和狀態(tài);綜合應(yīng)用自己的知識和經(jīng)驗(yàn)判斷當(dāng)前系統(tǒng)運(yùn)行的狀態(tài);分析比較各種可以采用的控制策略并選擇其中最優(yōu)者予以執(zhí)行;并用計(jì)算機(jī)予以實(shí)現(xiàn)(模擬)。這三個(gè)基本功能就構(gòu)成了最基本的專家控制系統(tǒng)9。 專家系統(tǒng)的基本結(jié)構(gòu)如圖3所示。在實(shí)際使用的專家系統(tǒng)中,根據(jù)具體問題其內(nèi)容可能會(huì)進(jìn)行某些調(diào)整:或簡化、或刪除、或細(xì)化、或增加某些部分。在基本結(jié)構(gòu)中,專家系統(tǒng)主要包括:知識庫全局?jǐn)?shù)據(jù)庫推理機(jī)解釋機(jī)構(gòu)知識獲取機(jī)構(gòu)接口。設(shè)計(jì)一個(gè)專家系統(tǒng)主要解決的問題是知識庫、數(shù)據(jù)庫和推理機(jī)構(gòu)。人
31、機(jī)接口過程接口推理機(jī)全局?jǐn)?shù)據(jù)庫知識庫知識獲取機(jī)構(gòu)解釋機(jī)構(gòu)用戶過程專家圖3 專家系統(tǒng)的基本結(jié)構(gòu)342車流量的計(jì)算 每條行車道的車流量通過PLC來統(tǒng)計(jì),本文用高速計(jì)數(shù)器對進(jìn)入路口的車輛進(jìn)行計(jì)數(shù),而不用內(nèi)部計(jì)數(shù)器,是因?yàn)檫@時(shí)的車速比較快;用內(nèi)部計(jì)數(shù)器對離開路口的車輛進(jìn)行計(jì)數(shù),高速計(jì)數(shù)器與內(nèi)部計(jì)數(shù)器是同時(shí)工作的。車輛傳感器1用來檢測紅燈期間進(jìn)入路口排隊(duì)等候的車輛數(shù),每經(jīng)過一輛車,PLC中的高速計(jì)數(shù)器就加1;車輛傳感器2用來檢測綠燈期間通過十字路口的車輛數(shù),每經(jīng)過一輛車,內(nèi)部計(jì)數(shù)器就加1。在一個(gè)紅綠燈周期中,每當(dāng)綠燈亮之前,從高速計(jì)數(shù)器、內(nèi)部計(jì)數(shù)器中采集一次數(shù)據(jù),即用高速計(jì)數(shù)器的計(jì)數(shù)值減去內(nèi)部計(jì)數(shù)器的計(jì)
32、數(shù)值,就可得到車輛滯留量,其它通道同理,并將該滯留量存放于高速計(jì)數(shù)器中。數(shù)據(jù)采集完后,內(nèi)部計(jì)數(shù)器內(nèi)的數(shù)立即清零,高速計(jì)數(shù)器則在原有的車輛滯留量的基礎(chǔ)上繼續(xù)計(jì)數(shù),為下一個(gè)紅綠燈周期做好準(zhǔn)備。343 用專家系統(tǒng)實(shí)現(xiàn)綠燈時(shí)長的智能控制專家參數(shù)的調(diào)用可以采用變址寄存器來實(shí)現(xiàn),本文采取的智能控制綠燈時(shí)長的方法是:通過傳感器探測出各個(gè)車道上的車輛數(shù),經(jīng)過比較得出東西、南北方向的最大車輛數(shù),在通過查表法得出綠燈延時(shí)時(shí)間t,(t是由兩個(gè)函數(shù)t=Maxte,tw和tMaxts,tn組成的),將其與綠燈固定的最小時(shí)間t0(10s)相加,這樣就可得到綠燈亮的時(shí)間T=固定的最小時(shí)間t0+綠燈延時(shí)時(shí)間t(是專家參數(shù)),
33、專家參數(shù)是非線性的、不確定的,可以采用變址寄存器V/Z來調(diào)用專家參數(shù)。其中最小固定時(shí)間是為了避免紅綠燈切換過頻;最大綠燈亮的時(shí)間是為了保障公平性,不能讓其它路口的車輛過分久等。本文中同一車道上的兩個(gè)傳感器之間的距離設(shè)為100米,這樣就可以檢測出每個(gè)車道上的車輛數(shù),按平均每輛車的長度與車間距之和為5米計(jì)算,100米的車道上最多停車20輛。當(dāng)東西(或南北)車道上的最大車輛數(shù)為1時(shí),綠燈延時(shí)時(shí)間為2s,此后,每增加一輛,綠燈延時(shí)時(shí)間就增加2s,由此類推,最長的綠燈延時(shí)時(shí)間為40s,最大綠燈亮的時(shí)間為50s。綠燈延時(shí)時(shí)間見表4,這是為了設(shè)置方便而假設(shè)的參數(shù)。表4 綠燈延時(shí)時(shí)間表最大車輛數(shù)1234567
34、8910綠燈延時(shí)時(shí)間t(S)2468101214161820最大車輛數(shù)11121314151617181920綠燈延時(shí)時(shí)間t(S)22242628303234363840綠燈延時(shí)時(shí)間是用變址寄存器V/Z來改變的,變址寄存器V/Z實(shí)際上是一種特殊用途的數(shù)據(jù)寄存器,其作用相當(dāng)于微機(jī)中的變址寄存器,用于改變元件的編號(變址),例如Z=5,則執(zhí)行D0Z時(shí),被執(zhí)行的編號為D5(D05)。變址寄存器可以像其它數(shù)據(jù)寄存器一樣進(jìn)行讀寫,當(dāng)要進(jìn)行32位數(shù)據(jù)運(yùn)算時(shí),可將V、Z串聯(lián)使用(Z為低位,V為高位),這樣用變址寄存器就可以很容易的查找東西或南北方向的車輛數(shù)。將綠燈查表中的綠燈延時(shí)時(shí)間t分別存放在數(shù)據(jù)寄存器D
35、1D20中,將東西(或南北)車道上的最大車輛數(shù)存在變址寄存器Z0(或Z1)中,由最大車輛數(shù)通過查表可得綠燈延時(shí)時(shí)間t(D0Z0或D0Z1)并將其存入數(shù)據(jù)寄存器D22(或D23)中,將固定的最小綠燈時(shí)間t0(10S)存在數(shù)據(jù)寄存器D21中,在與D22(D23)中的數(shù)據(jù)相加并存于數(shù)據(jù)寄存器D40中,即D40為綠燈亮的時(shí)間。當(dāng)綠燈熄滅時(shí),計(jì)算出東西(或南北)車道上的車流量,并將其存入高速計(jì)數(shù)器內(nèi),同時(shí),將內(nèi)部計(jì)數(shù)器及數(shù)據(jù)寄存器D40清零。如以東西方向車輛為例,設(shè)東方向的車輛數(shù)為5輛,西方向的車輛數(shù)為3輛,經(jīng)比較,取東方向的車輛數(shù)(5輛)為東西方向的最大車輛數(shù),將其存于變址寄存器Z0中,再將D0Z0(
36、即D5)中的數(shù)據(jù)10存于D22中,再加上最小固定時(shí)間10s(即20s)存入D40中,作為東西方向綠燈亮的最長時(shí)間。35程序設(shè)計(jì)和編程351 PLC程序設(shè)計(jì) 三菱FX2N系列PLC具有順序功能圖(狀態(tài)轉(zhuǎn)移SFC圖)的順序控制功能,利用這種順序控制功能圖編制交通信號燈控制程序,條理清楚,方便簡單,易于理解,三菱PLC步進(jìn)指令表示的方法是,將控制的各個(gè)動(dòng)作或工序用狀態(tài)(S)表示,然后將輸入條件與輸出按順序編程,F(xiàn)X2N序列PLC有狀態(tài)寄存器(S)1000點(diǎn)(S0S999),其中S0S9共10個(gè)為初始狀態(tài),一般狀態(tài)從S20開始。初始狀態(tài)用雙線框表示,通常用特殊輔助繼電器M8002的常開觸點(diǎn)提供初始信號
37、,其作用是為啟動(dòng)做好準(zhǔn)備,防止運(yùn)行中的誤操作引起的再次啟動(dòng)。 由于本設(shè)計(jì)是多任務(wù)實(shí)時(shí)并行處理系統(tǒng),車流量的計(jì)數(shù)是不間斷的,與紅綠燈控制系統(tǒng)呈并行關(guān)系,簡單的用狀態(tài)流程圖進(jìn)行程序設(shè)計(jì)較煩瑣。因此還可使用PLC的一些基本指令,將順序控制設(shè)計(jì)有機(jī)的結(jié)合起來。 PLC控制程序流程圖如下: NYNYNNYY開 始南北紅,東西綠10s南北紅,東西綠閃2s南北紅,東西黃2s東西紅,南北綠10s東西紅,南北綠閃2s東西紅,南北黃2s智能控制東西空道南北紅,東西綠燈時(shí)間南北紅,東西綠閃2S南北紅,東西黃2S南北空道東西紅,南北綠燈時(shí)間東西紅,南北綠閃2S東西紅,南北黃2S智能控制東西紅,南北綠南北紅,東西綠ts
38、圖4 程序流程圖根據(jù)上面的流程圖設(shè)計(jì)的狀態(tài)轉(zhuǎn)移圖如下:南北綠(Y13),東西紅(Y1)南北黃(Y12),東西紅(Y1)亮2s(T25)南北綠閃(Y13),東西紅(Y1)亮2s(T24)南北綠(Y13),東西紅(Y1)亮100s(T23)東西黃(Y2),南北紅(Y11)亮2s(T22)東西綠閃(Y3),南北紅(Y11)亮2s(T21)東西綠(Y3),南北紅(Y11)亮10s(T20)啟動(dòng)開關(guān)T23東西有車YNT25T24T20X4M8002 S0S20T25 K20T20 K100S21T22S22S23T21Y3 Y11T21 K20T23 K100Y1 Y13T22 K20Y2 Y11Y3
39、Y11Y1 Y12T24 K20Y1 Y13Y1 Y13S24S25S26判斷東西是否空道S27東西紅(Y1),南北黃(Y12)2s(T36)東西紅(Y1),南北綠閃(Y13)2s(T35)東西紅(Y1),南北綠(Y13)的時(shí)間(T34)南北紅(Y11),東西黃(Y2)2s(T33)南北紅(Y11),東西綠閃(Y3)2s(T32)南北紅(Y11),東西綠(Y3)的時(shí)間(T31)/X5南北車輛比較T36非智能控制轉(zhuǎn)至S20智能控制轉(zhuǎn)至S30T35T34T32T31智能開關(guān)X5轉(zhuǎn)至S20/X5南北有車NYS28S29Y3 Y11采集數(shù)據(jù)S32S31S30T33T32 K20Y3 Y11Y3 Y11
40、T31 tsS34S33S35S36Y2 Y11 T33 K20T34 tsY13 Y1Y13 Y1T35 K20Y12 Y1T36 K20判斷南北是否空道東西車輛比較南北紅,東西綠圖5 狀態(tài)轉(zhuǎn)移圖352 PLC的編程語言在本設(shè)計(jì)系統(tǒng)中,使用梯形圖編程。梯形圖是使用得最多的圖形編程語言,被稱為PLC的第一編程語言。梯形圖是一種圖形語言,它沿用繼電器的觸點(diǎn)、線圈、串并聯(lián)等圖形符號,同時(shí)增加繼電器系統(tǒng)沒有的符號。具有形象、直觀、易于接受的優(yōu)點(diǎn)。梯形圖的編程規(guī)則如下: (1)梯形圖按自上而下,從左到右的順序排列。 各邏輯行中所有觸點(diǎn)應(yīng)畫在線圈左邊(左母線省略)。 線圈不能與左母線直接相連。(2)軟繼
41、電器線圈不能串聯(lián)。(3)觸點(diǎn)可無限次使用,但同一繼電器的線圈一般只允許出現(xiàn)一次。雙線圈輸出:在同一程序中,同一繼電器的線圈使用了兩次或兩次以上。注意:雙線圈輸出只有最后一次輸出有效,或者可能出現(xiàn)語法錯(cuò)誤。(4)支路并聯(lián)時(shí),應(yīng)把串聯(lián)觸點(diǎn)多的支路畫在上面。(5)支路串聯(lián)時(shí),應(yīng)把并聯(lián)觸點(diǎn)多的支路畫在左邊。(6)梯形圖中不允許畫電流交叉的電路。4程序調(diào)試的基本要點(diǎn)(1)紅綠燈的時(shí)長有一個(gè)最大值和最小值,最小值過小則導(dǎo)致紅綠燈切換過頻,過大又不能實(shí)現(xiàn)適時(shí)控制,為了保證公平性,不能讓紅燈方向的車輛久等。(2)在編寫CMP數(shù)據(jù)比較指令時(shí)出現(xiàn)“梯形圖錯(cuò)誤”的提示。原因是:STL內(nèi)的母線一旦寫入LD或LDI指令
42、后,對不需要觸點(diǎn)的線圈就不能在編程。所以把這一操作放在該狀態(tài)步后就可以了。(3)觸點(diǎn)比較類指令,如LD=,AND,OR等指令,雖然有點(diǎn)煩瑣,但程序更易理解。(4)對非智能控制程序先進(jìn)行調(diào)試,程序可以實(shí)現(xiàn)交通燈定時(shí)切換控制功能。一旦進(jìn)入智能控制程序,發(fā)現(xiàn)程序走到步進(jìn)梯形圖中的S30就無法繼續(xù)下去,原因是:S30這一步的功能是對高速計(jì)數(shù)器中的數(shù)據(jù)進(jìn)行計(jì)數(shù),剛開始高速計(jì)數(shù)器線圈沒被驅(qū)動(dòng),使得程序無法進(jìn)行。5結(jié)束語 本設(shè)計(jì)實(shí)現(xiàn)的功能: 非智能控制,能夠完成傳統(tǒng)的十字路口交通燈定時(shí)切換功能。 智能控制,能根據(jù)十字路口車流量的變化情況,來邏輯控制綠燈時(shí)長。 與傳統(tǒng)的定時(shí)交通控制相比,專家控制交通燈系統(tǒng)能夠
43、依據(jù)車流量的變化情況自動(dòng)調(diào)節(jié)紅綠燈的時(shí)長,從而緩解滯流現(xiàn)象,也不會(huì)出現(xiàn)空道占時(shí)的情形,提高了公路交通通行率,較全球定位系統(tǒng)而言成本更低,特別適合繁忙的、未立交的交通路口,更適合于四個(gè)以上的路口,也可方便聯(lián)網(wǎng)。 通過這次畢業(yè)設(shè)計(jì)使我將以往學(xué)習(xí)的理論知識與實(shí)際聯(lián)系起來,鞏固了課本知識也加強(qiáng)了對PLC的直觀印象。認(rèn)識到任何一個(gè)小小的疏忽都可能使系統(tǒng)的開發(fā)陷入困境,因此設(shè)計(jì)過程的每個(gè)環(huán)節(jié)都非常重要。在這個(gè)過程中讓我得到很多收獲和感觸。認(rèn)真做好畢業(yè)設(shè)計(jì),對我們畢業(yè)后走向工作崗位具有重要意義。致謝在我論文的選題、開題到成文全過程,得到導(dǎo)師師的悉心指導(dǎo),特此感謝,同時(shí)也非常感謝實(shí)驗(yàn)室管理負(fù)師的大力支持,為我
44、提供了電腦等各種儀器設(shè)備。借此機(jī)會(huì),我也向支持我、愛護(hù)我的家人致以最深情的謝意!是他們的殷切期望和無私的奉獻(xiàn)使我順利完成學(xué)業(yè)。感謝親人的理解、支持和鼓勵(lì)!最后還要感謝與我一起進(jìn)行畢業(yè)設(shè)計(jì)的同學(xué)們,他們給了我很多幫助,正是我們的共同努力才使設(shè)計(jì)有所成果。參考文獻(xiàn) 1王中蘇.PLC在城市道路交通信號控制系統(tǒng)中的應(yīng)用J.太原理工大學(xué)2鄧宜陽.用PLC實(shí)現(xiàn)道路十字路口交通燈的模糊控制J. HYPERLINK /anli/656_3.html /anli/656_3.html3蔡軍,曹慧英.智能交通燈控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)J.重慶郵電學(xué)院,2004.6,129-1324洪清輝,何燕陽.基于PLC的交通燈智
45、能控制J.漳州師范學(xué)院學(xué)報(bào)(自然科學(xué)報(bào)),2005,(3) 66-705劉雁,周繼紅,劉華威.E系列PLC在交通路口指揮燈的控制系統(tǒng)中的應(yīng)用J.沈陽大學(xué)(自然科學(xué)版)學(xué)報(bào),1995.(4),25-276鄒金慧,陳樂庚,韋壽祺.可編程控制器及其系統(tǒng)M.重慶大學(xué)出版社,2002.第一版7朱蘊(yùn)璞,孔德仁,王芳.傳感器原理及應(yīng)用M.國防工業(yè)出版社8鄧成文.用PLC實(shí)現(xiàn)智能交通控制J.中國自動(dòng)化網(wǎng)9鄒積巖.智能電器M.北京:機(jī)械工業(yè)出版社.2006年1月 99-100.附錄:十字路口紅綠燈控制梯形圖如下 附錄資料:不需要的可以自行刪除 C語言圖形模式速成第一節(jié) 圖形模式的初始化Turbo C 提供了非常
46、豐富的圖形函數(shù),所有圖形函數(shù)的原型均在graphics. h 中,本節(jié)主要介紹圖形模式的初始化、獨(dú)立圖形程序的建立、基本圖形功能、圖形窗口以及圖形模式下的文本輸出等函數(shù)。另外,使用圖形函數(shù)時(shí)要確保有顯示器圖形驅(qū)動(dòng)程序*.BGI,同時(shí)將集成開發(fā)環(huán)境options/Linker中的Graphics lib選為on,只有這樣才能保證正確使用圖形函數(shù)。 不同的顯示器適配器有不同的圖形分辨率。即是同一顯示器適配器,在不同模式下也有不同分辨率。因此,在屏幕作圖之前,必須根據(jù)顯示器適配器種類將顯示器設(shè)置成為某種圖形模式,在未設(shè)置圖形模式之前,微機(jī)系統(tǒng)默認(rèn)屏幕為文本模式(80列,25行字符模式),此時(shí)所有圖形
47、函數(shù)均不能工作。設(shè)置屏幕為圖形模式,可用下列圖形初始化函數(shù):void far initgraph(int far *gdriver, int far *gmode,char *path);其中g(shù)driver和gmode分別表示圖形驅(qū)動(dòng)器和模式,path是指圖形驅(qū)動(dòng)程序所在的目錄路徑。有關(guān)圖形驅(qū)動(dòng)器、圖形模式的符號常數(shù)及對應(yīng)的分辨率見graphics. h。圖形驅(qū)動(dòng)程序由Turbo C出版商提供,文件擴(kuò)展名為.BGI。 根據(jù)不同的圖形適配器有不同的圖形驅(qū)動(dòng)程序。例如對于EGA、 VGA 圖形適配器就調(diào)用驅(qū)動(dòng)程序EGAVGA.BGI。#include stdio.h#include graphic
48、s.hint main()int gdriver, gmode;gdriver=VGA;gmode=VGAHI;initgraph(&gdriver, &gmode, C:TC2.0BGI);bar3d(100, 100, 300, 250, 50, 1); /*畫一長方體*/getch();closegraph();return 0;有時(shí)編程者并不知道所用的圖形顯示器適配器種類,或者需要將編寫的程序用于不同圖形驅(qū)動(dòng)器,Turbo C 提供了一個(gè)自動(dòng)檢測顯示器硬件的函數(shù),其調(diào)用格式為:void far detectgraph(int *gdriver, *gmode);其中g(shù)driver和gm
49、ode的意義與上面相同。 自動(dòng)進(jìn)行硬件測試后進(jìn)行圖形初始化:#include stdio.h#include graphics.hint main()int gdriver, gmode;detectgraph(&gdriver, &gmode); /*自動(dòng)測試硬件*/printf(the graphics driver is %d, mode is %dn,gdriver,gmode); /*輸出測試結(jié)果*/getch();initgraph(&gdriver, &gmode, C:TC2.0BGI);/* 根據(jù)測試結(jié)果初始化圖形*/bar3d(100, 100, 300, 250, 50,
50、 1); /*畫一長方體*/getch();closegraph();return 0;上例程序中先對圖形顯示器自動(dòng)檢測,然后再用圖形初始化函數(shù)進(jìn)行初始化設(shè)置,但Turbo C提供了一種更簡單的方法, 即用gdriver=DETECT 語句后再跟initgraph()函數(shù)就行了。采用這種方法后,上例可改為:#include stdio.h#include graphics.hint main()int gdriver=DETECT, gmode;initgraph(&gdriver, &gmode, C:TC2.0BGI);bar3d(50, 50, 150, 30, 50, 1);getch
51、();closegraph();return 0;另外,Turbo C 提供了退出圖形狀態(tài)的函數(shù)closegraph(),其調(diào)用格式為:void far closegraph(void);第二節(jié) 屏幕顏色的設(shè)置和清屏函數(shù)對于圖形模式的屏幕顏色設(shè)置,同樣分為背景色的設(shè)置和前景色的設(shè)置。在Turbo C中分別用下面兩個(gè)函數(shù): 設(shè)置背景色: void far setbkcolor(int color);設(shè)置作圖色: void far setcolor(int color);其中color 為圖形方式下顏色的規(guī)定數(shù)值,對EGA,VGA顯示器適配器,有關(guān)顏色的符號常數(shù)及數(shù)值見graphics.h。清除圖
52、形屏幕內(nèi)容但不清除圖形背景使用清屏函數(shù),其調(diào)用格式如下: voide far cleardevice(void);#include stdio.h#include graphics.hint main()int gdriver, gmode, i,aa;gdriver=DETECT;initgraph(&gdriver, &gmode, C:TC2.0BGI); /*圖形初始化*/setbkcolor(0); /*設(shè)置圖形背景*/cleardevice();for(i=0; i=15; i+)setcolor(i); /*設(shè)置不同作圖色*/circle(320, 240, 20+i*10);
53、/*畫半徑不同的圓*/getch();for(i=0; i=15; i+)setbkcolor(i); /*設(shè)置不同背景色*/cleardevice();circle(320, 240, 20+i*10);getch();aa=getmaxcolor();printf(maxcolor=%d,aa);getch();closegraph();return 0;另外,TURBO C也提供了幾個(gè)獲得現(xiàn)行顏色設(shè)置情況的函數(shù)。 int far getbkcolor(void); 返回現(xiàn)行背景顏色值。int far getcolor(void); 返回現(xiàn)行作圖顏色值。int far getmaxcolo
54、r(void); 返回最高可用的顏色值。第三節(jié) 基本畫圖函數(shù)基本圖形函數(shù)包括畫點(diǎn),線以及其它一些基本圖形的函數(shù)。本節(jié)對這些函數(shù)作一全面的介紹。 、畫點(diǎn). 畫點(diǎn)函數(shù) void far putpixel(int x, int y, int color); 該函數(shù)表示有指定的象元畫一個(gè)按color 所確定顏色的點(diǎn)。對于顏色color的值可從表3中獲得而對x, y是指圖形象元的坐標(biāo)。在圖形模式下,是按象元來定義坐標(biāo)的。對VGA適配器,它的最高分辨率為640 x480,其中640為整個(gè)屏幕從左到右所有象元的個(gè)數(shù),480為整個(gè)屏幕從上到下所有象元的個(gè)數(shù)。屏幕的左上角坐標(biāo)為(0,0),右下角坐標(biāo)為(639,
55、 479),水平方向從左到右為x 軸正向,垂直方向從上到下為y軸正向。TURBO C的圖形函數(shù)都是相對于圖形屏幕坐標(biāo),即象元來說的。關(guān)于點(diǎn)的另外一個(gè)函數(shù)是: int far getpixel(int x, int y); 它獲得當(dāng)前點(diǎn)(x, y)的顏色值。 II、有關(guān)坐標(biāo)位置的函數(shù) int far getmaxx(void);返回x軸的最大值。int far getmaxy(void);返回y軸的最大值。int far getx(void); 返回游標(biāo)在x軸的位置。void far gety(void); 返回游標(biāo)有y軸的位置。void far moveto(int x, int y); 移動(dòng)
56、游標(biāo)到(x, y)點(diǎn),不是畫點(diǎn),在移動(dòng)過程中亦畫點(diǎn)。void far moverel(int dx, int dy); 移動(dòng)游標(biāo)從現(xiàn)行位置(x, y)移動(dòng)到(x+dx, y+dy)的位置,移動(dòng)過程中不畫點(diǎn)。、畫線I. 畫線函數(shù)TURBO C提供了一系列畫線函數(shù): void far line(int x0, int y0, int x1, int y1); 畫一條從點(diǎn)(x0, y0)到(x1, y1)的直線。void far lineto(int x, int y); 畫一作從現(xiàn)行游標(biāo)到點(diǎn)(x, y)的直線。void far linerel(int dx, int dy); 畫一條從現(xiàn)行游標(biāo)(x
57、,y)到按相對增量確定的點(diǎn)(x+dx, y+dy)的直線。void far circle(int x, int y, int radius); 以(x, y)為圓心,radius為半徑,畫一個(gè)圓。void far arc(int x, int y, int stangle, int endangle,int radius); 以(x,y)為圓心,radius為半徑,從stangle開始到endangle結(jié)束(用度表示)畫一段圓弧線。在TURBO C中規(guī)定x軸正向?yàn)? 度,逆時(shí)針方向旋轉(zhuǎn)一周, 依次為90,180, 270和360度(其它有關(guān)函數(shù)也按此規(guī)定,不再重述)。 void ellipse
58、(int x, int y, int stangle, int endangle,int xradius,int yradius);以(x, y)為中心,xradius,yradius為x軸和y軸半徑,從角stangle 開始到endangle結(jié)束畫一段橢圓線,當(dāng)stangle=0,endangle=360時(shí), 畫出一個(gè)完整的橢圓。void far rectangle(int x1, int y1, int x2, inty2); 以(x1, y1)為左上角,(x2, y2)為右下角畫一個(gè)矩形框。 void far drawpoly(int numpoints, int far *polypo
59、ints); 畫一個(gè)頂點(diǎn)數(shù)為numpoints,各頂點(diǎn)坐標(biāo)由polypoints給出的多邊形。polypoints整型數(shù)組必須至少有2 倍頂點(diǎn)數(shù)個(gè)無素。每一個(gè)頂點(diǎn)的坐標(biāo)都定義為x,y,并且x在前。值得注意的是當(dāng)畫一個(gè)封閉的多邊形時(shí),numpoints 的值取實(shí)際多邊形的頂點(diǎn)數(shù)加一,并且數(shù)組polypoints中第一個(gè)和最后一個(gè)點(diǎn)的坐標(biāo)相同。下面舉一個(gè)用drawpoly()函數(shù)畫箭頭的例子。#include stdio.h#include graphics.hint main()int gdriver, gmode, i;int arw16=200,102,300,102,300,107,330
60、,100,300,93,300,98,200,98,200,102;gdriver=DETECT;initgraph(&gdriver, &gmode, C:TC2.0BGI);setbkcolor(BLUE);cleardevice();setcolor(12); /*設(shè)置作圖顏色*/drawpoly(8, arw); /*畫一箭頭*/getch();closegraph();return 0;II、設(shè)定線型函數(shù)在沒有對線的特性進(jìn)行設(shè)定之前,TURBO C 用其默認(rèn)值,即一點(diǎn)寬的實(shí)線,但TURBO C 也提供了可以改變線型的函數(shù)。線型包括:寬度和形狀。其中寬度只有兩種選擇:一點(diǎn)寬和三點(diǎn)寬。而
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度無人零售鋪面轉(zhuǎn)租合同12篇
- 2025年度苗木種植與鄉(xiāng)村旅游融合發(fā)展合同4篇
- 2025年度門禁系統(tǒng)與訪客預(yù)約系統(tǒng)對接合同4篇
- 2025年度個(gè)人教育貸款抵押合同規(guī)范文本2篇
- 二零二五美容院加盟店開業(yè)籌備及營銷策劃合同3篇
- 二零二五年度成品油公路運(yùn)輸合同運(yùn)輸風(fēng)險(xiǎn)預(yù)警與控制協(xié)議4篇
- 二零二五年度KTV突發(fā)事件應(yīng)急處理合同3篇
- 二零二五年度高科技產(chǎn)品研發(fā)與成果轉(zhuǎn)化合同范本2篇
- 2024年度青海省公共營養(yǎng)師之四級營養(yǎng)師模擬考核試卷含答案
- 2024年度青海省公共營養(yǎng)師之三級營養(yǎng)師高分通關(guān)題庫A4可打印版
- 2025-2030年中國陶瓷電容器行業(yè)運(yùn)營狀況與發(fā)展前景分析報(bào)告
- 2025年山西國際能源集團(tuán)限公司所屬企業(yè)招聘43人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 二零二五年倉儲(chǔ)配送中心物業(yè)管理與優(yōu)化升級合同3篇
- 2025屆廈門高三1月質(zhì)檢期末聯(lián)考數(shù)學(xué)答案
- 音樂作品錄制許可
- 江蘇省無錫市2023-2024學(xué)年高三上學(xué)期期終教學(xué)質(zhì)量調(diào)研測試語文試題(解析版)
- 拉薩市2025屆高三第一次聯(lián)考(一模)英語試卷(含答案解析)
- 開題報(bào)告:AIGC背景下大學(xué)英語教學(xué)設(shè)計(jì)重構(gòu)研究
- 師德標(biāo)兵先進(jìn)事跡材料師德標(biāo)兵個(gè)人主要事跡
- 連鎖商務(wù)酒店述職報(bào)告
- 2024年山東省煙臺市初中學(xué)業(yè)水平考試地理試卷含答案
評論
0/150
提交評論