交通燈控制器原理簡介
實例的內容及目標
1.實例的主要訓練內容
本實例通過Verilog HDL語言設計一個簡易的交通等控制器,實現一個具有兩個方向、共8個燈并具有時間倒計時功能的交通燈功能。
2.實例目標
通過本實例,讀者應達到下面的目標。
• 掌握Verilog設計一個交通等控制器的方法。
• 初步掌握Verilog語言的設計方法。
本實例通過Verilog HDL語言設計一個簡易的交通等控制器,實現一個具有兩個方向、共8個燈并具有時間倒計時功能的交通燈功能。
2.實例目標
通過本實例,讀者應達到下面的目標。
• 掌握Verilog設計一個交通等控制器的方法。
• 初步掌握Verilog語言的設計方法。
交通燈是城市交通中不可缺少的重要工具,是城市交通秩序的重要保障。本實例就是實現一個常見的十字路通燈功能。讀者通過學習這個交通燈控制器,可以實現一個更加完整的交通燈。例如實現實時配置各種燈的時間,手動控制各個燈的狀態(tài)等。
一個十字路口的交通一般分為兩個方向,每個方向具有紅燈、綠燈和黃燈3種,另外每個方向還具有左轉燈,因此每個方向具有4個燈。
這個交通燈還為每一個燈的狀態(tài)設計了倒計時數碼管顯示功能??梢詾槊恳粋€燈的狀態(tài)設置一個初始值,燈狀態(tài)改變后,開始按照這個初始值倒計時。倒計時歸零后,燈的狀態(tài)將會改變至下一個狀態(tài)。
值得注意的是,交通燈兩個方向的燈的狀態(tài)是相關的。也就是說,每個方向的燈的狀態(tài)影響著另外一個方向的燈的狀態(tài),這樣才能夠協調兩個方向的車流。如果每個方向的燈是獨立變化的,那么交通燈就沒有了意義。
如表1所示是兩個方向(假設為A,B方向)燈的狀態(tài)的對應情況。
表1 交通燈兩個方向燈狀態(tài)對應表
方向A | 方向B |
紅燈亮 | 黃燈亮或綠燈亮 |
直行綠燈亮 | 紅燈亮 |
黃燈亮 | 紅燈亮 |
左轉燈 | 紅燈亮 |
在實際的交通系統中,直行綠燈、左轉綠燈和紅燈的變化之間都應該有黃燈作為緩沖,以保證交通的安全。
因此假如我們假設方向A的黃燈亮的時間持續(xù)5s,直行綠燈燈亮的時間持續(xù)40s,左轉燈燈亮的時間持續(xù)15s,則方向B紅燈燈亮的時間持續(xù)為(直行綠燈+黃燈+左轉綠燈+黃燈)所消耗的時間,一共為65s。
同樣假設方向B黃燈亮的時間持續(xù)5s,直行綠燈燈亮的時間持續(xù)30s,左轉燈燈亮的時間持續(xù)15s,則方向B紅燈燈亮的時間持續(xù)為(直行綠燈+黃燈+左轉綠燈+黃燈)所消耗的時間,一共為55s。
具體時間參數的設定讀者可以根據需要進行修改,但是一定要保證兩個方向的燈的狀態(tài)符合表1的要求。
伺服電機相關文章:伺服電機工作原理
評論