——VB教學案例一則"/>
999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于VB定時器的交通燈控制程序
——VB教學案例一則

2017-07-18 11:47:37黃淑卿廣東省佛山市南海技師學院
數碼世界 2017年6期

黃淑卿 廣東省佛山市南海技師學院

基于VB定時器的交通燈控制程序
——VB教學案例一則

黃淑卿 廣東省佛山市南海技師學院

對于較為枯燥的編程學習,如何提高學生學習興趣,較快掌握理論知識,是我們教師多年來面對的一個課題。選擇好的學習素材則是編程教學中一項重要環節,紅綠交通燈控制是人們日常生活中經常見到的道路場景。用VB編程語言實現交通燈控制,在編程過程中引導學生運用模塊化設計思想、圖表化設計表達工具,完成變量的設置及賦值、VB語句編寫、子程序的調用,逐步實現并完善交通燈的控制程序。這一過程使編程學習更加生動有趣,各知識點的掌握及理解更加順暢。

VB編程教學 程序設計 交通燈控制

1 交通燈控制與VB編程教學

交通燈是現代生活中常見的交通指揮工具,特別是近年來,隨著經濟的高速發展,汽車數量急速增加,交通燈的使用更加普遍,幾乎每個交通路口都有交通燈控制。合理的交通燈控制對于疏導交通、提升道路通行效率、減少交通事故有著重要意義。看似簡單易行的紅綠控制,蘊藏著很強的邏輯性,是流程控制型編程教學的佳例,雖然現實生活中交通燈控制實際采用PLC可編程邏輯控制器實現,但出于教學目的,應用VB編程實現交通燈控制,生動展示編程過程,是學生學習編程相關知識的絕好素材。

2 基于VB交通燈控制的基本設想

交通信號燈由紅燈、綠燈、黃燈組成。紅燈表示禁止通行,綠燈表示準許通行,黃燈表示警示。交通信號燈控制方式可以分為定時控制、感應控制、自適應控制。本文選用某處交叉路口為設計背景,通過VB編程模擬實現實際交通控制情形,從而展示VB編程從需求分析、概念設計到具體編程的實現過程。

實際操作中,通過觀察某處交叉路口交通燈控制模式,確定項目的需求,本例運用三態脈沖圖使信號燈周期性紅黃綠三態變化規律得到形象化表示,狀態轉移圖進一步把控制規律變為清晰的概念,流程圖幫助確定程序模塊的組成及調用關系,最后通過VB控件及語句,實現需求所要求的目標。總的說來,本案例涉及到的知識點包括:概念設計中圖表的運用,控制過程的流程圖表示、程序模塊設計、VB控件的運用、邏輯控制語句的編寫、變量的設置、界面制作,這些知識基本涵蓋VB編程的基礎內容,學生通過這一課題的實踐,可以初步理解VB編程的基本操作過程,并為日后完成更復雜的編程項目打下基礎。

3 具體案例的交通燈控制設計及實現

3.1 需求分析

選擇某一路口作為本例的編程場景,通過對這一路口的觀察,確認所選定交叉路口采用的控制方式為:直行加左轉,南北西東依次通行的控制模式,即先向南方向綠燈放行,同時南向車輛可左轉,然后北向直行及左轉綠燈,接著東向,最后西向,按此順序周期循環。我們還注意到,由于從南北向進入東西向主干道的車輛較多,在南北左轉綠燈比直行綠燈多亮10秒。交通信號燈有紅黃綠三個狀態,選用三態脈沖圖可反映信號的變化規律,以上情形可用三態脈沖圖表示如下:

如圖所示,數字為信號燈編號,每盞燈有綠黃紅三個狀態,分別高中低三個電位表示,八盞燈分布在該交叉路口的四個角上,周期性地控制車輛通行。

3.2 信號燈控制模式的概念化表示

三態脈沖圖如實反映了交通信號燈周期性變化規律,但要把這一現象提升為清晰的概念,還得借助狀態轉移圖來實現,經過分析,我們將信號燈的變化規律轉化為五個狀態的循環轉換,以狀態轉移圖表示如下:

為簡化圖形表示,這里只顯示綠燈的狀態,綠燈亮時其他燈均為紅色,另外還省略了黃燈的狀態,因為綠燈轉紅燈有5秒的黃燈過渡為固定模式,逐一羅列不利于弄清信號燈的變化規律。如上圖所示,經過簡化處理后,信號燈的控制過程更為清晰,狀態轉移圖將所觀察的現象轉化為清晰的概念。圖的右上方狀態顯示這一時刻二個左轉燈同時為綠,這一設置正是為滿足較多車輛要進入東西向主干道的需求而設計。

3.3 程序設計

3.3.1 信號燈變換設計

實現單一信號燈狀態變換是實現多信號燈系統聯動的基礎,本例中制作信號燈小圖片,通過LoadPicture函數,改變image控件的picture屬性,實現信號燈紅綠變化及黃燈閃爍的效果,應用timer定時器控制信號燈的時長。本例中,模擬信號燈左轉的幾個小圖片如下:

3.3.2 子程序設計

本例中,共設置8只信號燈,按其位置分別編號1至8,圖片控件image(1)至image(8)分別控制相應的信號狀態,如下圖所示:

為了使程序簡化且便于閱讀,編寫子過程Pass(lamp_ no)、Alarm(lamp_no),通過子過程的調用實現各信號燈狀態的切換。

子過程Pass中參數lamp_no表示信號燈編號,如call Pass(4)表示4號燈切換到通行狀態,即4號信號燈亮綠燈。子過程Alarm中參數lamp_no表示信號燈編號,如call Alarm(4)即4號信號燈進入黃閃狀態。

3.3.3 程序流程圖

根據業務需求及子程序調用形式的確定,繪制程序流程圖如下:

從流程圖來看,控制流為二個部分重合的閉環組成,為此需要設立2個定時器timer1、timer2分別控制程序流,另外黃閃控制也應由各自的專用定時器timerAlarm1、timerAlarm2分別控制。

4 小結

本例中,根據業務需求繪制三態脈沖圖,精確表達業務需求所述的情景,利用狀態遷移圖揭示業務表象下實質性的邏輯關系,理清頭緒,簡化問題。通過對程序流程圖的分析,得知本例控制流特性為二路控制流,從而確立設置2個定時器分別控制。在編程細節上,根據信號燈的控制特點,編寫pass(),alarm()2個子程序,通過調用子程序,實現對相應信號燈的控制。這種方式的編碼設置,實現代碼重用,提高編程效率,并使程序簡練易讀,也為日后系統維護提供方便。

[1]《Visual Basic 6.0程序設計與應用教程》李俊編著,電子工業出版社

[2]《Visual Basic開發實戰》軟件開發技術聯盟編著,清華大學出版社

[3]《Visual Basic 2015入門經典(第8版)/NET開發經典名著》[美]Bryan Newsome著;李周芳,石磊,譯.清華大學出版社

主站蜘蛛池模板: 色亚洲成人| 玖玖精品视频在线观看| 亚洲国产成人久久精品软件| 9999在线视频| 国产精品自拍合集| 青青草原国产免费av观看| 欧美视频在线不卡| 香蕉eeww99国产在线观看| 国产91线观看| 五月六月伊人狠狠丁香网| 日韩精品无码免费一区二区三区 | 国产无遮挡猛进猛出免费软件| 日本高清有码人妻| 1024国产在线| 日日拍夜夜操| 色综合色国产热无码一| 国产国语一级毛片在线视频| 高清无码一本到东京热| 熟女视频91| 五月激情综合网| 在线另类稀缺国产呦| 日本国产在线| 欧洲欧美人成免费全部视频| 久久久噜噜噜久久中文字幕色伊伊| 一区二区理伦视频| 婷婷亚洲视频| 成人在线不卡视频| 成人年鲁鲁在线观看视频| 免费国产一级 片内射老| 99在线视频精品| 91小视频在线播放| 中文字幕亚洲专区第19页| 久久黄色影院| 亚洲 欧美 日韩综合一区| аⅴ资源中文在线天堂| 国产一区二区三区在线精品专区| 亚洲国产日韩一区| 国产97视频在线| 天堂av综合网| 国产福利在线免费观看| 国产91特黄特色A级毛片| 91娇喘视频| 亚洲人成在线精品| 免费黄色国产视频| 国产午夜精品一区二区三| 国产成人一级| 国产在线精品香蕉麻豆| 日韩精品无码不卡无码| 亚洲中文字幕无码爆乳| 91国内外精品自在线播放| 欧美色丁香| 亚洲无码精品在线播放| 国产福利一区二区在线观看| 欧美一级在线看| 在线免费亚洲无码视频| 国产传媒一区二区三区四区五区| 人妻无码中文字幕第一区| 久久伊伊香蕉综合精品| 欧美区一区二区三| 99久久国产自偷自偷免费一区| 国产在线98福利播放视频免费| 2021精品国产自在现线看| 91久久天天躁狠狠躁夜夜| 国产女人18毛片水真多1| 精品一区二区三区视频免费观看| 青青青国产免费线在| 嫩草国产在线| 欧美国产综合视频| 国产永久在线视频| 亚洲免费黄色网| 日韩国产黄色网站| 国产精品99久久久久久董美香| 99热这里只有免费国产精品| 日韩在线观看网站| 免费毛片全部不收费的| 日韩无码精品人妻| 久视频免费精品6| 精品1区2区3区| 野花国产精品入口| 乱人伦视频中文字幕在线| 久久亚洲美女精品国产精品| 国产成人毛片|