




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
目錄1緒論 12電梯概述 3電梯的分類 3按用途分類 3按驅(qū)動系統(tǒng)分類 3按曳引機有無減速箱分類 3按有無司機分類 4按操縱控制方式分類 4轎廂上的主要部件 4 4 5 53VisualBasic功能介紹 7VisualBasic開發(fā)環(huán)境 7VisualBasic的主要特點 8VisualBasic的控件 9VisualBasic的內(nèi)部控件 9使用VisualBasic編程注意事項 94串口通訊 11串行通訊的基本原理 11串口通訊的程序設(shè)計原理 11串行通信的兩種格式 12串口通訊在VB平臺下的實現(xiàn) 12MSComm提供的兩種處理通信問題的方法 12RS485概述 13RS485技術(shù)參數(shù)及應(yīng)用 13RS485的特點 145基于VisualBasic的電梯運行監(jiān)控系統(tǒng)設(shè)計 16本課題的主要內(nèi)容、方法 16整體構(gòu)架 16VisualBasic主要數(shù)據(jù)種類 17監(jiān)控顯示及操作界面設(shè)計 17監(jiān)控界面設(shè)計之登錄界面設(shè)計 17監(jiān)控界面設(shè)計之主監(jiān)控界面設(shè)計 19監(jiān)控界面設(shè)計之用戶登陸與SQL聯(lián)系設(shè)計 22電梯模擬器設(shè)計 24電梯模擬器程序設(shè)計流程圖 27調(diào)試過程 306設(shè)計結(jié)論 32致謝 33參考文獻 341緒論本課題的設(shè)計要求是通過計算機技術(shù)的應(yīng)用,使用VB軟件來進行主、子顯示及操作界面的設(shè)計,通過界面來模擬電梯監(jiān)控的環(huán)境,以實現(xiàn)對電梯的監(jiān)控的功能。設(shè)計中,使用兩臺計算機來進行模擬仿真電梯監(jiān)控,一臺計算機作為主機——監(jiān)控器,上面有監(jiān)控的主操作界面,通過設(shè)計完成對電梯的各個監(jiān)控操作,其中包括:電梯樓層的實時監(jiān)控,即電梯此時處于第幾層;是上行還是下行;電梯的門是開著還是關(guān)閉;電梯是否有出現(xiàn)超載。電梯是否出現(xiàn)故障情況,當(dāng)它發(fā)生故障時必須要及時反饋給監(jiān)控臺,并在監(jiān)控界面上顯示相應(yīng)的警告,以便能讓監(jiān)控員及時了解情況做出正確的應(yīng)對措施。另一臺計算機就作為電梯,設(shè)計一個模擬電梯的軟件,可以模擬電梯的指令等功能,反映電梯的位置,同時可以設(shè)置電梯故障按鈕。兩臺計算機之間用RS485作為接口,來進行數(shù)據(jù)的通信連接。目前國際上電梯技術(shù)進步的側(cè)重點已轉(zhuǎn)向售后和物業(yè)服務(wù),美國、日本、歐洲的電梯公司都利用現(xiàn)代化的通訊手段和計算機技術(shù)開發(fā)了各自的電梯遠程監(jiān)控系統(tǒng)。把自己負責(zé)維修保養(yǎng)的電梯置于監(jiān)控網(wǎng)絡(luò)之中。當(dāng)電梯出現(xiàn)故障時,能夠在第一時間發(fā)現(xiàn)故障,并在此瞬間既把故障情況自動通知監(jiān)控中心,同時又立即呼叫專職維修人員來排除故障。由于該系統(tǒng)能夠儲存電梯的日常運行數(shù)據(jù)和日常發(fā)生的故障記錄,這就使得廠家和用戶對一段時間內(nèi)特定電梯的運行情況有一個全面的了解。電梯遠程監(jiān)控技術(shù)是伴隨著計算機控制技術(shù)和網(wǎng)絡(luò)技術(shù)的發(fā)展而逐步發(fā)展起來的,目前國外大的電梯公司幾乎都可提供與自己的系統(tǒng)配套的遠程監(jiān)控系統(tǒng),并能提供比較完善的功能。然而,由于中國特殊的國情,這些國外大公司的遠程監(jiān)控系統(tǒng)在中國的實際應(yīng)用過程中還存在著一定的局限性。如只能監(jiān)控本公司的電梯,對其他公司電梯的監(jiān)控則無能為力,對電話網(wǎng)絡(luò)的質(zhì)量要求也比較高。國內(nèi)一些企業(yè)也嘗試開發(fā)具有中國特色的遠程監(jiān)控系統(tǒng),但由于這樣一個系統(tǒng)是涉及到計算機控制、電梯控制、網(wǎng)絡(luò)通訊、WINDOWS平臺下高級語言編程等多個專業(yè)的較大的系統(tǒng)工程,技術(shù)難度較大,同時在設(shè)計時還要考慮到中國電話網(wǎng)絡(luò)的信號傳輸質(zhì)量,以及與各個廠家的電梯控制系統(tǒng)(包括微機控制系統(tǒng)、PLC控制系統(tǒng)以及早期的繼電器控制系統(tǒng))的接口問題等諸多因素,因此現(xiàn)在國內(nèi)的電梯監(jiān)控系統(tǒng),在一定程度上存在某些不足:功能簡單,如只能進行簡單的電梯運行狀態(tài)監(jiān)控、同時監(jiān)控的電梯數(shù)量少、只能監(jiān)視而不能控制管理和遠程調(diào)試、不能進行電梯故障的早期預(yù)警。適用電梯種類少,對可編程控制器(PLC)控制的電梯進行監(jiān)控比較容易,但是,對微機控制的電梯監(jiān)控就困難得多。綜上所述,現(xiàn)在國內(nèi)急需一種功能完善、適應(yīng)廣、且價格廉的電梯遠程監(jiān)控、管理與故障診斷系統(tǒng),以使該系統(tǒng)在電梯物業(yè)管理、日常維護等工作中得到廣泛應(yīng)用,提高電梯運行質(zhì)量。目前國內(nèi)電梯市場由幾大合資企業(yè)的產(chǎn)品占據(jù)60%以上的份額。但控制系統(tǒng)的硬件和軟件各不相同,其他一些中小電梯廠的電梯控制系統(tǒng)以可編程控制器(PLC)為主。國際各大電梯公司進口的原裝電梯多數(shù)未裝電梯遠程監(jiān)控、管理與故障診斷系統(tǒng)。在經(jīng)濟效益方面,按目前我國擁有約33萬臺電梯計算,每年新增3萬余臺新裝電梯,未來五年將新增15~20萬臺,預(yù)計每年有20%加裝電梯遠程監(jiān)控、管理與故障診斷系統(tǒng),每臺電梯的監(jiān)控系統(tǒng)可以為物業(yè)部門節(jié)省管理費用按5000元計,,,可以大大提高物業(yè)部門的市場生存能力和競爭力。更重要的是:電梯安裝電梯遠程監(jiān)控、管理與故障診斷系統(tǒng),對于加強電梯運行管理,保障電梯安全運行,減少電梯故障與事故有著非常重要的作用,因此該項目除具有較高的經(jīng)濟效益外還具有廣泛的社會效益。2電梯概述電梯的分類按用途分類乘客電梯:為運送乘客而設(shè)計的電梯,必須有十分安全可靠的安全措施。載貨電梯:主要是為運送貨物而設(shè)計的,通常有人伴隨的電梯,有必備的安全保護裝置??拓浱荩ㄋ追Q服務(wù)梯):主要是用作運送乘客,但也可以運送貨物的電梯。他與乘客電梯的區(qū)別在于轎廂內(nèi)部裝飾結(jié)構(gòu)和使用場合不同而言。病床電梯(俗稱醫(yī)梯):為運送醫(yī)院病人及其病床而設(shè)計的電梯,其轎廂具有窄而長的特點。住宅梯:供住宅樓使用的電梯,控制系統(tǒng)和轎廂裝飾均較簡單,也必須具有客梯所具有的安全保護裝置。雜物電梯:供圖書館、辦公樓、飯店運送圖書、文件食品等。而絕不允許人員進入的小型運貨電梯。消防梯:火警情況下能適應(yīng)消防員專用的電梯,非火警情況下可作為一般客梯或客貨梯使用。船舶電梯:專用于船舶上的電梯,能在船舶正常搖晃中運行。觀光電梯:轎廂壁透明,供乘客瀏覽觀光建筑物周圍外景的電梯。汽車電梯:運送汽車的電梯,其特點是大轎廂、大載重量,常用于立體停車場及汽車庫等場所。按驅(qū)動系統(tǒng)分類交流電梯:曳引電動計時交流異步電動機。它又可以分為交流單速電梯、交流雙速電梯、交流調(diào)速電梯和交流高速電梯。直流電梯:曳引電動機是電梯專用的低速直流電動機。它可以分為直流快速電梯和直流高速電梯。液壓電梯:電梯的升降是依靠液壓傳動的。主要有柱塞直頂式和柱塞測頂式兩種。按曳引機有無減速箱分類有齒輪電梯:電梯曳引輪的轉(zhuǎn)速與電動機的轉(zhuǎn)速不相等(電動機轉(zhuǎn)速>曳引輪轉(zhuǎn)速),中間有蝸輪蝸桿減速箱或齒輪減速箱(行星齒輪、斜齒輪)。無齒輪電梯:電梯曳引輪的轉(zhuǎn)速與電動機的轉(zhuǎn)速相等,中間無蝸輪蝸桿減速箱或齒輪減速箱。按有無司機分類分為有司機電梯、無司機電梯和有/無司機電梯按操縱控制方式分類分為門外按鈕控制小型雜物電梯、轎廂手柄開關(guān)控制自平自動門電梯、內(nèi)外按鈕控制自平自動門電梯、選層按鈕控制自平自動門電梯、集選控制或向下集選控制電梯、兩臺并聯(lián)集選控制電梯、三臺并聯(lián)集選控制電梯,以及梯群控制電梯(群控電梯)。轎廂上的主要部件操作箱裝在轎廂內(nèi)靠近轎廂門附近。用指令開關(guān)、按鈕或手柄等,操作轎廂運動的電器裝置。轎內(nèi)指層燈設(shè)置于轎廂內(nèi),客梯一般裝在轎門上方,貨梯一般裝在轎箱側(cè)壁,用以顯示電梯運行位置和運行方向的裝置。自動門機裝于轎箱頂?shù)那安?,以小型的交流、直流、變頻電動機為動力的自動開關(guān)轎門和廳門的裝置。安全觸板(光電裝置)設(shè)置在層門轎門之間,在層門、轎門關(guān)閉過程中,當(dāng)有乘客或障礙物觸及時,門立刻停止并返回開啟的安全裝置。載貨電梯一般不設(shè)此裝置。轎門設(shè)置在轎廂入口的門。稱重裝置能檢測轎廂內(nèi)負載變化狀態(tài),并發(fā)出信號的裝置,適用于乘客或貨物電梯等。安全鉗由于限速器作用而引起動作,迫使轎廂或?qū)χ匮b置停在導(dǎo)軌上,同時切斷控制回路的安全裝置。導(dǎo)靴設(shè)置在轎廂架和對重裝置上,使轎廂和對重裝置沿著導(dǎo)軌運行的裝置。其他部件轎頂安全窗、光電保護、超載裝置、鄰梯指示等部件,要視電梯規(guī)格、型號種類及客戶要求而設(shè)置。 我國的電梯事業(yè)雖然起步地比較晚但是卻發(fā)展地很迅速。1952年至1954年之間先后在上海、天津、沈陽建立了三家電梯制造廠,并先后成立有關(guān)科研單位,獨立自主地制造各類電梯產(chǎn)品,如交流貨梯、客梯,直流快速、高速客梯等。并應(yīng)用我們自己生產(chǎn)的電梯產(chǎn)品裝備了人民大會堂、北京飯店等政府機關(guān)和國家賓館。60年代開始批量生產(chǎn)自動人行道和自動扶梯,用我們自己生產(chǎn)的自動扶梯裝備了北京地鐵車站,用我們自己生產(chǎn)的自動人行道裝備了北京首都機場。隨著我國對外開放、對內(nèi)搞活經(jīng)濟的政策深入貫徹執(zhí)行,吸取和引進了國外先進的電梯技術(shù)、先進的電梯制造工藝與設(shè)備、先進的科學(xué)管理,使我國電梯工業(yè)又取得了巨大的發(fā)展。產(chǎn)品成倍增長,產(chǎn)品質(zhì)量和整機性能顯著提高。為了進一步推動和發(fā)展電梯工業(yè),在上海、北京、天津、廣州等地先后建立了中外合資電梯制造公司,使電梯的控制和驅(qū)動技術(shù)達到了國際領(lǐng)先水平,先后向市場推出一批耗能小、效率高、速度快、平層和舒適感好的交流調(diào)速電梯、直流高速電梯(包括機群控制電梯)。經(jīng)歷了百余年歷史的電梯是早已被人們熟悉的重要樓宇設(shè)備,當(dāng)今時代隨著高層建筑的日益增多和建筑設(shè)計的檔次的提高,使得人們對電梯的要求也越來越高。目前已不僅限于要求電梯搭乘快速、舒適,制造堅固,裝潢考究,人們對電梯的安全可靠性及多功能性正提出越來越高的要求,為此電梯正朝著控制智能化的方向發(fā)展。在世界上一些發(fā)達國家的現(xiàn)代化智能建筑中,人們已把電梯歸入樓宇自控管理系統(tǒng)的重要被控設(shè)備,采用先進的監(jiān)控手段,實現(xiàn)對電梯的運行狀態(tài)、維修保養(yǎng)、安全防護進行全方位的管理。在我國,近年來具有先進控制技術(shù)的電梯也日趨普及,尤其在許多新建的智能建筑中更是選用了各種高檔電梯,使得電梯監(jiān)控和弱電控制之間有機地結(jié)合在一起成為可能。電梯與樓宇自控管理系統(tǒng)發(fā)生關(guān)系的大多數(shù)為以下3個方面:(1)電梯接收來自消防中心的有關(guān)信號,電梯在火災(zāi)時具有消防使用功能。(2)在電梯轎廂內(nèi)裝有攝像機,把視頻信號(也有帶音頻信號)送至安保中心,在監(jiān)視器上顯示轎廂內(nèi)情況,有的還將電梯樓層信號字符發(fā)生器同時顯示在監(jiān)視器上,便于安保人員在電梯故障或壞人作案時進行處理。(3)電梯內(nèi)裝有廣播喇叭,可播送公共廣播系統(tǒng)的內(nèi)容或切入緊急廣播。電梯監(jiān)控是智能建筑中樓宇自控管理系統(tǒng)的組成部分,因此電梯監(jiān)控技術(shù)的進步也是樓宇自控管理系統(tǒng)水平提高的一項基礎(chǔ)工作。從系統(tǒng)設(shè)計的角度來看,電梯監(jiān)控較理想的長遠目標是進入社會集約管理的模式,至少是某一區(qū)域管理模式,這樣做的好處是可將各家電梯制造、安裝和物業(yè)(維修)供應(yīng)商提供的產(chǎn)品和服務(wù)的標準與質(zhì)量進行規(guī)范,使各家供應(yīng)商在一個公開、公平和公正的條件下進行競爭,從而提高產(chǎn)品和服務(wù)的質(zhì)量,并使得總體效率大大提高、成本大大下降。最終為顧客提供一個價廉、安全、舒適的乘梯服務(wù)。根據(jù)我國的國情來看,電梯監(jiān)控實施社會集約管理其主要障礙來自2個方面:一是我國現(xiàn)在的物業(yè)管理模式基本上是封閉的小范圍運作,沒有將電梯監(jiān)控作為社會集約管理的需求和呼聲,二是我國現(xiàn)有電梯各品牌之間均沒有一個統(tǒng)一的通信協(xié)議,對弱電監(jiān)控所需的軟件和硬件均未作統(tǒng)一的規(guī)范,許多甚至不是基本配置。因此說,現(xiàn)在對電梯監(jiān)控進行社會集約管理的時機還未成熟,但利用弱電控制的高新技術(shù)實現(xiàn)電梯監(jiān)控畢竟是今后的發(fā)展趨勢,對電梯監(jiān)控實現(xiàn)區(qū)域或社會的集約管理在我國也不是非常遙遠的事??偠灾?dāng)前首先應(yīng)對涉及電梯監(jiān)控的通信技術(shù)、綜合布線、安保器材、自控技術(shù)等各個方面進行研究、規(guī)范,并通過借用其它弱電行業(yè)標準或逐個單項地制定電梯的相關(guān)標準,達到統(tǒng)一、提高電梯監(jiān)控的各個單體應(yīng)用水平,為規(guī)范電梯監(jiān)控的系統(tǒng)設(shè)計創(chuàng)造條件。從而進一步實現(xiàn)電梯監(jiān)控設(shè)計成為電梯整體設(shè)計的一部分,電梯監(jiān)控設(shè)計成為樓宇自控設(shè)計的一部分。同時,在電梯制造、安裝和維護等方面也相應(yīng)地規(guī)范和提高,實現(xiàn)電梯監(jiān)控裝置的配置系列化、標準化,到那時電梯監(jiān)控裝置將成為具有統(tǒng)一標準和統(tǒng)一接口的電梯設(shè)備基本配置項或選配項,人們?nèi)缧鑼崿F(xiàn)電梯監(jiān)控的區(qū)域管理和社會管理也就是很容易的事了。
3VisualBasic功能介紹本設(shè)計中所要運用到的是Visual,它的誕生使編程技術(shù)向前邁進了一大步,開創(chuàng)了可視化編程的一代先河。隨后出現(xiàn)的各種可視化開發(fā)工具都多少從中涉取了營養(yǎng)。專業(yè)人員可以用它來實現(xiàn)其他任何Windows的編程語言的功能,而初學(xué)者只要掌握幾個關(guān)鍵詞就可以編寫實用的應(yīng)用程序,使用非常的方便。從開發(fā)個人或小組使用的小工具,到大型企業(yè)的應(yīng)用系統(tǒng)都可以用它來實現(xiàn),應(yīng)用范圍十分地廣泛。VisualBasic由于它功能強大、簡單易用而擁有著廣泛的用戶,尤其是在數(shù)據(jù)庫、多媒體、商用系統(tǒng)的用戶界面以及一般應(yīng)用程序的設(shè)計等方面,VisualBasic更是有著其他開發(fā)環(huán)境所不能取代的優(yōu)越之處。VisualBasic應(yīng)用由一系列對象組成,包括有函數(shù)、菜單、函數(shù)、結(jié)構(gòu)和數(shù)據(jù)窗口、用戶對象、用戶事件等等,對象中又包含了若干控件,如命令按鈕、單行編輯器等這些對象和控件都可在許多應(yīng)用中重復(fù)使用。VisualBasic開發(fā)環(huán)境VisualBasic工作區(qū)由七個部分構(gòu)成:VisualBasic開發(fā)環(huán)境VisualBasic的主要特點在本次設(shè)計過程中運用到的VisualBasic的一些主要特點如下:可視化編程:VisualBasic提供了可視化設(shè)計工具,把Windows界面中的復(fù)雜性“封裝”起來,開發(fā)人員不必為界面設(shè)計而編寫大量程序代碼,只需要按照設(shè)計要求的屏幕布局,用系統(tǒng)提供的工具,在屏幕上畫出各種“部件”,即圖形對象,并設(shè)置這些圖形對象的屬性。VisualBasic自動產(chǎn)生界面設(shè)計代碼,程序設(shè)計人員只要編寫實現(xiàn)程序功能的那部分代碼,從而可以大大提高程序設(shè)計的效率。面向?qū)ο蟮某绦蛟O(shè)計:VisualBasic應(yīng)用面向?qū)ο蟮某绦蛟O(shè)計方法(OOP),把程序和數(shù)據(jù)封裝起來作為一個對象,并為每個對象賦予應(yīng)有的屬性,使對象成為實在的東西。在設(shè)計對象時,不必編寫建立和描述每個對象的程序代碼,而是用工具化在界面上,VisualBasic自動生成對象的程序代碼并封裝起來。每個對象以圖形方式顯示在界面上,都是可視的。支持繼承和多態(tài)性。結(jié)構(gòu)化程序設(shè)計語言:VisualBasic是在BASIC和QuickBASIC語言基礎(chǔ)上發(fā)展起來的,具有高級程序設(shè)計語言的語句結(jié)構(gòu),接近于自然語言和人類的邏輯思維方式,其語句簡單易懂;其編輯器支持彩色代碼,可自動進行語法錯誤檢查,同時具有功能強且使用靈活的調(diào)試器和編譯器。事件驅(qū)動編程機制:VisualBasic通過事件來執(zhí)行對象的操作。一個對象可能會產(chǎn)生多個事件,每個事件都可以通過一段程序來響應(yīng)。在用VisualBasic設(shè)計大型應(yīng)用程序時,不必建立具有明顯開始和結(jié)束的程序,而是編寫若干個微小的自程序,即過程,這些過程分別面向不同的對象,由用戶操作引發(fā)某個事件來驅(qū)動執(zhí)行某種特定功能或者由事件驅(qū)動程序調(diào)用通用過程來執(zhí)行制定的操作。這樣可以方便編程人員、提高效率。訪問數(shù)據(jù)庫:VisualBasic系統(tǒng)具有很強的數(shù)據(jù)庫管理功能。利用數(shù)據(jù)控件和數(shù)據(jù)庫管理窗口,可以直接建立或處理MicrosoftAccess格式的數(shù)據(jù)庫,并提供了強大的數(shù)據(jù)存儲和檢索功能。同時,還能直接編輯和訪問其他外部數(shù)據(jù)庫。VisualBasic提供開放式數(shù)據(jù)連接(OpenDataBaseConnectivity),即ODBC功能,它可以通過直接訪問或建立連接的方式使用并操作后臺大型網(wǎng)絡(luò)數(shù)據(jù)庫,如SQLServer、Oracle等。動態(tài)數(shù)據(jù)交換(DDE):利用動態(tài)數(shù)據(jù)交換技術(shù)可以把一種應(yīng)用程序中的數(shù)據(jù)動態(tài)地連接到另一種應(yīng)用程序中,使兩種完全不同的應(yīng)用程序可以交換數(shù)據(jù),進行通信,在Windows環(huán)境下為多個應(yīng)用程序之間以客戶/服務(wù)器方式建立起一條動態(tài)數(shù)據(jù)鏈路。當(dāng)原始數(shù)據(jù)發(fā)生變化時,可以自動更新鏈接的數(shù)據(jù)。提供了動態(tài)數(shù)據(jù)交換的編程技術(shù),可以在應(yīng)用程序中實現(xiàn)與其他Windows應(yīng)用程序建立動態(tài)數(shù)據(jù)交換,在不同的應(yīng)用程序之間進行通信。VisualBasic的控件控件是VisualBasic中預(yù)定義好的、程序中能夠直接適用的對象。利用控件編程使程序員免除了大量重復(fù)性工作,能夠以最快的速度和效率開發(fā)具有良好用戶界面的應(yīng)用程序。VisualBasic的內(nèi)部控件表3-1VisualBasic的內(nèi)部控件圖標說明圖片框(PictureBox)控件——用于顯示圖形文件或文本文件,也可以作為其他控件的容器標簽(Label)控件——創(chuàng)建一個標簽對象,用于保存不希望用戶改動的文本,如復(fù)選框上面和圖形下面的標題文本框(TextBox)控件——創(chuàng)建用于顯示和輸入數(shù)據(jù)的文本框?qū)ο?,用戶可以在其中輸入或更改文本框架(Frame)控件——用于美化其他控件并提供分組功能命令按鈕(CommandButton)控件——創(chuàng)建命令按鈕對象,用于執(zhí)行命令計時器(Timer)控件——創(chuàng)建計時器對象,以設(shè)定的間隔捕捉計時器事件。此控件在運行時不可見形狀控件——創(chuàng)建形狀對象,設(shè)計時用于各種類型的形狀,可以畫矩形、圓角矩形、正方形、圓角正方形、橢圓或圓圖像控件——創(chuàng)建圖像對象,在窗體上顯示位圖、圖標、JPEG、GIF等圖形文件,其動作類似于命令按鈕串口通信(MSComm)控件——創(chuàng)建串口通信對象,進行計算機與其他設(shè)備之間的通信使用VisualBasic編程注意事項VB是一個功能強大的開發(fā)工具,它給我們一個高效、迅速的開發(fā)環(huán)境,讓我們能輕松編寫出想要的程序。但它也有不足,大量的隱式操作、后臺操作給我們帶來方便的同時,也帶來了不少的隱患。不過,我們可以自己改進,來避免隱式操作所帶來的麻煩。保證任何新模塊都有OptionExplicit這一點非常重要,它能避免我們?nèi)?chuàng)建錯誤的變量,例如你創(chuàng)建了一個StrUserName變量,但由于粗心,錯寫成StrUserName,若沒有OptionExplicit,VB會自做主張地創(chuàng)建StrUserName變量。導(dǎo)致程序得不到正確的結(jié)果,出了這種錯一般難以查出來,所以,最好能在每個模塊都加上OptionExplicit以確保變量的合法性。顯式地指出變量類型這樣做不僅可以提升程序速度,更大的優(yōu)點是消除了不明確現(xiàn)象,使代碼更易維護、更易閱讀。避免使用DefType語句DefType語句會引起變量類型的混亂,降低程序的可維護性、完備性和可移植性。初始化所有變量這是一種謹慎的態(tài)度,這樣做能產(chǎn)生更清晰、準確和更強的可移植代碼來。還有一點就是,初始化變量時最好能在使用變量的點附近進行,這可避免許多莫名其妙的錯誤。使用枚舉當(dāng)變量在某些場合只取一些離散的值時,可考慮使用枚舉來賦值。因為枚舉能改進代碼的可讀性和可維護性。(7)關(guān)于控件在窗口程序開發(fā)中,我們會用到很多控件,這些控件有的是VisualBasic6開發(fā)環(huán)境提供的,有些是第三方開發(fā)的,而且我們還可以自己制作一些控件來使用,但有一個共同點,就是我們使用這些控件,實際是在使用它們的“屬性”、“方法”和“事件”,下面分別來介紹:1)屬性我們完全可以將窗口也作為一種特殊的控件來使用。屬性,可以用來表示某個控件的特征和特性。對于它的操作一般有兩個,一是設(shè)置,即將屬性值賦給控件;再就是讀取屬性值,就是給出控件的特征值。2)方法在很多編程語言或編程環(huán)境中都有這個概念,它同時又稱為“過程”。而在VisualBasic6中,方法又有兩種實現(xiàn),一是“子程序”,二就是“函數(shù)”。一個控件的“方法”就是這個控件的一個“動作”,我們可以理解為在調(diào)用一個控件的方法時是“這個控件做了什么”。3)事件事件,我們可以理解為“當(dāng)發(fā)生什么事件時應(yīng)該做什么”。如按鈕的“單擊事件(Click)”,這是我們常常要使用到的一個事件,我們就可以解釋為“當(dāng)單擊按鈕時應(yīng)該做什么”,而做什么這個工作則是我們要編寫代碼來完成的,如關(guān)閉一個窗口等等。
4串口通訊隨著計算機系統(tǒng)的普及與外圍設(shè)備技術(shù)的發(fā)展,計算機與外圍設(shè)備之間的通訊就顯得越來越重要了。由于串行通信是在一根傳輸線上一位一位的傳送信息,所用的傳輸線少,并且可以借助現(xiàn)成的電話網(wǎng)進行信息傳送,因此,特別適合于遠距離傳輸。對于那些與計算機相距不遠的人-機交換設(shè)備和串行存儲的外部設(shè)備如終端、打印機、邏輯分析儀、磁盤等,采用串行方式交換數(shù)據(jù)也很普遍。在實時控制和管理方面,采用多臺微機處理機組成分級分布控制系統(tǒng)中,各CPU之間的通信一般都是串行方式。所以串行接口是微機應(yīng)用系統(tǒng)常用的接口,而相應(yīng)的應(yīng)用程序也成為今年來研究的熱點。本文旨在闡述一般的串口通訊的原理及其程序設(shè)計,希望借此能夠拋磚引玉,為更深入的研究打下一定的基礎(chǔ)。串行通訊的基本原理所謂"串行通信"是指外設(shè)和計算機間使用一根數(shù)據(jù)信號線,數(shù)據(jù)在一根數(shù)據(jù)信號線上按位進行傳輸,每一位數(shù)據(jù)都占據(jù)一個固定的時間長度。這種通信方式使用的數(shù)據(jù)線少,在遠距離通信中可以節(jié)約通信成本,當(dāng)然,其傳輸速度比并行傳輸慢。相比之下,由于高速率的要求,處于計算機內(nèi)部的CPU與串口之間的通訊仍然采用并行的通訊方式,所以串行口的本質(zhì)就是實現(xiàn)CPU與外圍數(shù)據(jù)設(shè)備的數(shù)據(jù)格式轉(zhuǎn)換(或者稱為串并轉(zhuǎn)換器),即當(dāng)數(shù)據(jù)從外圍設(shè)備輸入計算機時,數(shù)據(jù)格式由位(bit)轉(zhuǎn)化為字節(jié)數(shù)據(jù);反之,當(dāng)計算機發(fā)送下行數(shù)據(jù)到外圍設(shè)備時,串口又將字節(jié)數(shù)據(jù)轉(zhuǎn)化為位數(shù)據(jù)。串口通訊的程序設(shè)計原理前面介紹了串行通訊的基本原理,那么如何在程序設(shè)計中實現(xiàn)它呢?事實上,這個過程并不復(fù)雜,一般有兩種實現(xiàn)途徑:其一就是使用MSCOMM控件,此控件提供很多方便操作的屬性和方法,利用它們可以很方便地實現(xiàn)你的目的;另外一種途徑就是使用WindowsAPI,微軟為開發(fā)者提供了很多相關(guān)的串行操作的編程接口,使用這些接口,可以很完成更為強大的功能。限于篇幅以及本文的宗旨,這里著重介紹第一種方法,第二種方法實際思路與第一種方法一樣,不同的是它利用API函數(shù)代替了控件。無論使用哪一種途徑,其基本的操作步驟大致一樣的:首先初始化串口,比如端口號,波特率等屬性,然后打開端口,通過接受緩沖區(qū)讀上行數(shù)據(jù),通過發(fā)送緩沖區(qū)來寫下行數(shù)據(jù)。最后通過事件驅(qū)動來反映數(shù)據(jù)的到達與發(fā)送過程,另外在通訊過程中的錯誤的產(chǎn)生也可以通過CommEvent屬性來管理。串行通信程序的執(zhí)行過程串行通信的兩種格式進行串行通信時有兩種傳輸方式:字符形式:通常以小于ASCII碼128的字符碼來傳遞,通常用于傳送指令。二進制形式:將數(shù)據(jù)以二進制編碼的方式傳遞,它可能含有ASCII碼128以上的字符碼,通常用來傳送數(shù)據(jù),以提高速度。串口通訊在VB平臺下的實現(xiàn)本畢業(yè)設(shè)計中是在VisualBasic中運用MSComm控件來實現(xiàn)串口通訊以傳輸數(shù)據(jù)。使用MSComm控件主要是通過事件來處理串行口的交互,即當(dāng)數(shù)據(jù)到達時,控件的OnComm的事件就會來捕獲或處理這些通訊事件。而OnComm事件也可以用來捕獲和處理通訊錯誤。在實際應(yīng)用中,一個MSComm控件就對應(yīng)一個串行口,所以如果要處理多個串行口的話,必須有相應(yīng)數(shù)量的控件與之對應(yīng)。下面介紹一下此控件的主要屬性:CommPort——設(shè)置或者返回串行端口號Settings——用來設(shè)置和返回波特率,奇偶校驗,數(shù)據(jù)位和結(jié)束位PortOpen——設(shè)置或者返回通訊端口的狀態(tài),也可以打開和關(guān)閉一個端口Input——從接受緩沖區(qū)里獲取或刪除數(shù)據(jù)Output——給發(fā)送緩沖區(qū)里寫數(shù)據(jù)另外對于OnComm事件來說,每當(dāng)CommEvent的數(shù)值發(fā)生改變時就會產(chǎn)生這種事件,這就表明要么就是一個通訊事件的產(chǎn)生,要么是一個通訊錯誤產(chǎn)生。CommEvent屬性里面包含了通訊事件或者產(chǎn)生的錯誤的編號。MSComm提供的兩種處理通信問題的方法事件驅(qū)動法在使用事件驅(qū)動法設(shè)計程序時,每當(dāng)有新字符到達或端口狀態(tài)改變,或發(fā)生錯誤時,MSComm控件將觸發(fā)OnComm事件,而應(yīng)用程序在捕獲該事件后,通過檢查MSComm控件的CommEvent屬性可以獲知所發(fā)生的事件或錯誤,從而采取相應(yīng)的操作。這種方法的優(yōu)點是程序響應(yīng)及時,可靠性高。查詢法查詢法適合于較小的應(yīng)用程序,在這種情況下,每當(dāng)應(yīng)用程序執(zhí)行完某一串行口操作后,將不斷檢查MSComm控件的CommEvent屬性,以檢查執(zhí)行結(jié)果或檢查某一事件是否發(fā)生。RS485概述智能儀表是隨著80年代初單片機技術(shù)的成熟而發(fā)展起來的,現(xiàn)在世界儀表市場基本被智能儀表所壟斷。究其原因就是企業(yè)信息化的需要,企業(yè)在儀表選型時其中的一個必要條件就是要具有聯(lián)網(wǎng)通信接口。最初是數(shù)據(jù)模擬信號輸出簡單過程量,后來儀表接口是RS232接口,這種接口可以實現(xiàn)點對點的通信方式,但這種方式不能實現(xiàn)聯(lián)網(wǎng)功能。隨后出現(xiàn)的RS485解決了這個問題。RS485技術(shù)參數(shù)及應(yīng)用(1)
RS485接口
RS485采用差分信號負邏輯,+2V~+6V表示“0”,-
6V~-
2V表示“1”。RS485有兩線制和四線制兩種接線,四線制只能實現(xiàn)點對點的通信方式,現(xiàn)很少采用,現(xiàn)在多采用的是兩線制接線方式,這種接線方式為總線式拓樸結(jié)構(gòu)在同一總線上最多可以掛接32個結(jié)點。在RS485通信網(wǎng)絡(luò)中一般采用的是主從通信方式,即一個主機帶多個從機。很多情況下,連接RS-485通信鏈路時只是簡單地用一對雙絞線將各個接口的“A”、“B”端連接起來。由于PC機默認的只帶有RS232接口,有兩種方法可以得到PC上位機的RS485電路:1)通過RS232/RS485轉(zhuǎn)換電路將PC機串口RS232信號轉(zhuǎn)換成RS485信號,對于情況比較復(fù)雜的工業(yè)環(huán)境最好是選用防浪涌帶隔離珊的產(chǎn)品。2)通過PCI多串口卡,可以直接選用輸出信號為RS485類型的擴展卡。(2)RS485電纜在一般場合采用普通的雙絞線就可以,在要求比較高的環(huán)境下可以采用帶屏蔽層的同軸電纜。在使用RS485接口時,對于特定的傳輸線路,從RS485接口到負載其數(shù)據(jù)信號傳輸所允許的最大電纜長度與信號傳輸?shù)牟ㄌ芈食煞幢?,這個長度數(shù)據(jù)主要是受信號失真及噪聲等影響所影響。理論上RS485的最長傳輸距離能達到1200米,但在實際應(yīng)用中傳輸?shù)木嚯x要比1200米短,具體能傳輸多遠視周圍環(huán)境而定。在傳輸過程中可以采用增加中繼的方法對信號進行放大,最多可以加八個中繼,。如果真需要長距離傳輸,可以采用光纖為傳播介質(zhì),收發(fā)兩端各加一個光電轉(zhuǎn)換器,多模光纖的傳輸距離是5~10公里,而采用單模光纖可達50公里的傳播距離。(3)RS485布網(wǎng)
網(wǎng)絡(luò)拓撲一般采用終端匹配的總線型結(jié)構(gòu),不支持環(huán)形或星形網(wǎng)絡(luò)。在構(gòu)建網(wǎng)絡(luò)時,應(yīng)注意如下幾點:
1)采用一條雙絞線電纜作總線,將各個節(jié)點串接起來,從總線到每個節(jié)點的引出線長度應(yīng)盡量短,以便使引出線中的反射信號對總線信號的影響最低。有些網(wǎng)絡(luò)連接盡管不正確,在短距離、低速率仍可能正常工作,但隨著通信距離的延長或通信速率的提高,其不良影響會越來越嚴重,主要原因是信號在各支路末端反射后與原信號疊加,會造成信號質(zhì)量下降。
2)應(yīng)注意總線特性阻抗的連續(xù)性,在阻抗不連續(xù)點就會發(fā)生信號的反射。下列幾種情況易產(chǎn)生這種不連續(xù)性:總線的不同區(qū)段采用了不同電纜,或某一段總線上有過多收發(fā)器緊靠在一起安裝,再者是過長的分支線引出到總線。
總之,應(yīng)該提供一條單一、連續(xù)的信號通道作為總線。在RS485組網(wǎng)過程中另一個需要主意的問題是終端負載電阻問題,在設(shè)備少距離短的情況下不加終端負載電阻整個網(wǎng)絡(luò)能很好的工作但隨著距離的增加性能將降低。理論上,在每個接收數(shù)據(jù)信號的中點進行采樣時,只要反射信號在開始采樣時衰減到足夠低就可以不考慮匹配。但這在實際上難以掌握,美國MAXIM公司有篇文章提到一條經(jīng)驗性的原則可以用來判斷在什么樣的數(shù)據(jù)速率和電纜長度時需要進行匹配:當(dāng)信號的轉(zhuǎn)換時間(上升或下降時間)超過電信號沿總線單向傳輸所需時間的3倍以上時就可以不加匹配。
一般終端匹配采用終端電阻方法,
RS-485應(yīng)在總線電纜的開始和末端都并接終端電阻。終接電阻在RS-485網(wǎng)絡(luò)中取120Ω。相當(dāng)于電纜特性阻抗的電阻,因為大多數(shù)雙絞線電纜特性阻抗大約在100~120Ω。這種匹配方法簡單有效,但有一個缺點,匹配電阻要消耗較大功率,對于功耗限制比較嚴格的系統(tǒng)不太適合。另外一種比較省電的匹配方式是RC匹配。利用一只電容C隔斷直流成分可以節(jié)省大部分功率。但電容C的取值是個難點,需要在功耗和匹配質(zhì)量間進行折衷。
還有一種采用二極管的匹配方法,這種方案雖未實現(xiàn)真正的“匹配”,但它利用二極管的鉗位作用能迅速削弱反射信號,達到改善信號質(zhì)量的目的,節(jié)能效果顯著。RS485的特點RS-485的電氣特性:邏輯"1"以兩線間的電壓差為+(2-6)V表示;邏輯"0"以兩線間的電壓差為-(2-6)V表示。接口信號電平比RS-232-C降低了,就不易損壞接口電路的芯片,且該電平與TTL電平兼容,可方便與TTL電路連接。RS-485的數(shù)據(jù)最高傳輸速率為10MbpsRS-485接口是采用平衡驅(qū)動器和差分接收器的組合,抗共模干能力增強,即抗噪聲干擾性好。RS-485接口的最大傳輸距離標準值為4000英尺,實際上可達3000米,另外RS-232-C接口在總線上只允許連接1個收發(fā)器,即單站能力。而RS-485接口在總線上是允許連接多達128個收發(fā)器。即具有多站能力,這樣用戶可以利用單一的RS-485接口方便地建立起設(shè)備網(wǎng)絡(luò)。RS-485接口具有良好的抗噪聲干擾性,長的傳輸距離和多站能力等上述優(yōu)點就使其成為首選的串行接口。RS485接口組成的半雙工網(wǎng)絡(luò),一般只需二根連線,所以RS485接口均采用屏蔽雙絞線傳輸。RS485接口連接器采用DB-9的9芯插頭座,與智能終端RS485接口采用DB-9(孔),與鍵盤連接的鍵盤接口RS485采用DB-9(針)。
5基于VisualBasic的電梯運行監(jiān)控系統(tǒng)設(shè)計本課題的主要內(nèi)容、方法通過計算機技術(shù)的應(yīng)用,使用VB軟件來進行主、子顯示及操作界面的設(shè)計,通過界面來模擬電梯監(jiān)控的操控過程,以實現(xiàn)對電梯的監(jiān)控的功能。設(shè)計中,使用兩臺計算機來進行模擬仿真電梯監(jiān)控,一臺計算機作為主機——監(jiān)控器,上面有監(jiān)控的主操作界面,通過設(shè)計完成對電梯的各個監(jiān)控操作,其中包括:電梯樓層的實時監(jiān)控,即電梯此時處于第幾層;是上行還是下行;電梯的門是開著還是關(guān)閉;電梯是否有出現(xiàn)超載。電梯是否出現(xiàn)故障情況,當(dāng)它發(fā)生故障時必須要及時反饋給監(jiān)控臺,并在監(jiān)控界面上顯示相應(yīng)的警告,以便能讓監(jiān)控員及時了解情況做出正確的應(yīng)對措施。另一臺計算機就作為電梯,設(shè)計一個模擬電梯的軟件,可以模擬電梯的功能,比如,當(dāng)有人在電梯里按下電梯樓層按鈕,電梯就會根據(jù)按鈕指令進行操作,把乘客送到指定樓層后,開門把乘客放下,然后關(guān)門,并進行其他命令的執(zhí)行,同時在電梯運行過程中反映電梯的位置,讓電梯內(nèi)的乘客可以了解電梯的當(dāng)前所在。當(dāng)乘客發(fā)現(xiàn)電梯出現(xiàn)故障的時候,還可以設(shè)置電梯故障按鈕,電梯模擬器就會通過通訊把信號傳到監(jiān)控系統(tǒng),讓監(jiān)控人員及時了解情況。這兩臺計算機之間用是用RS-485作為連接的接口,來進行數(shù)據(jù)的通信連接,把電梯模擬器中的一系列信號傳到監(jiān)控系統(tǒng),以實現(xiàn)電梯的監(jiān)控。電梯模擬器副Pc機RS485主監(jiān)控P電梯模擬器副Pc機RS485主監(jiān)控Pc機顯示屏系統(tǒng)構(gòu)架圖VisualBasic主要數(shù)據(jù)種類VB主要數(shù)據(jù)類型數(shù)據(jù)類型類型名類型符占用字節(jié)布爾型Boolean無2字節(jié)型Byte無1整型Integer%2長整型Long&4字符型(變長)String$10+串長字符型(定長)String$串長日期型Date無8監(jiān)控顯示及操作界面設(shè)計主顯示及操作界面放在主監(jiān)控pc機顯示屏上面,界面上首先有監(jiān)控人員登錄界面,只有工作人員才可以登錄到監(jiān)控界面進行界面的監(jiān)控及操作。工作人員輸入正確的密碼后可以進入下一個界面,進行操作。如果密碼輸入不正確,界面會進行提示并要求重新輸入密碼。進入下一個界面后,直接進入監(jiān)控界面。監(jiān)控界面中會顯示以下幾個部分:電梯運行狀態(tài),即是否正常運行,有無出現(xiàn)超載。電梯運行方向,是上行還是下行。電梯現(xiàn)在正處在哪一個樓層;哪一部電梯處于故障狀態(tài);電梯的設(shè)置界面,包括密碼的修改及電梯監(jiān)測的開關(guān)。界面之間可以進行相互的切換。我這次設(shè)計的界面中假設(shè)是對六部電梯進行監(jiān)控,電梯間的優(yōu)先選擇不考慮在內(nèi)。監(jiān)控界面設(shè)計之登錄界面設(shè)計任何一個涉及到安全性的應(yīng)用程序都會有登錄界面,在確認登錄者的合法身份后才可以進入應(yīng)用程序,看到數(shù)據(jù)、對數(shù)據(jù)進行修改等等。因此,作為電梯運行監(jiān)控系統(tǒng)當(dāng)然那也必須要有登錄的界面。在這里,我設(shè)計的登錄界面首先是歡迎使用這個系統(tǒng)的界面,如下圖:歡迎使用系統(tǒng)的界面可以看見界面上是由一個標簽、一個圖片框和兩個按鈕控件所組成。如果按下“取消”這個按鈕這后,就會退出監(jiān)控程序。如果按下“確定”按鈕,就會進入正式的登錄界面,如下圖:登錄界面界面上有兩個文本框,一個輸入用戶名,一個輸入密碼,界面與數(shù)據(jù)庫相連,在數(shù)據(jù)庫中先設(shè)置好一個用戶名和密碼,輸入之后,然后按“確定”,程序就會調(diào)用數(shù)據(jù)庫里的內(nèi)容來判斷用戶名和密碼是否正確,如果正確就會出現(xiàn)下列界面:登錄成功再按下“確定”,就可以進入主監(jiān)控界面,如果用戶名正確而密碼不正確,會跳出如下的界面:密碼錯誤按“確定”后重新登錄。如果用戶名錯誤就會跳出如下的界面:用戶名錯誤按“確定”后重新登錄。如果登錄三次還不成功,就會跳出如下界面登錄超過規(guī)定次數(shù)如果按下“取消”,就會退出程序。監(jiān)控界面設(shè)計之主監(jiān)控界面設(shè)計登錄成功之后,就進入了主監(jiān)控界面,主控界面中是以六臺電梯為監(jiān)控對象的,每部電梯都有自己的編號。電梯運行狀況監(jiān)控是一個實時監(jiān)控過程,通過RS485接口進行數(shù)據(jù)傳輸,電梯模擬器的樓層信號及報警信號等通過RS485到達主監(jiān)控界面,監(jiān)控界面上的小方塊代表電梯,就會往上往下移動,仿真電梯的運動過程,并停在指定的樓層,旁邊的數(shù)字就是樓層。如果有報警或超重信號過來,監(jiān)控界面上的相對應(yīng)的指示燈的顏色會變成紅色進行報警。主監(jiān)控界面如下圖:主監(jiān)控界面界面下方的電梯狀態(tài)是顯示電梯是否被監(jiān)控,如果設(shè)置中有某幾部電梯的監(jiān)控關(guān)閉,就會在下方顯示出來。如下圖:關(guān)閉電梯監(jiān)控界面上方有菜單欄,點擊菜單欄的“電梯”,就進入電梯設(shè)置界面,你可以根據(jù)需要設(shè)置你想要監(jiān)控的電梯號,或者選擇關(guān)閉某幾臺電梯的監(jiān)控。如下圖:電梯設(shè)置界面是由一個框架、六個復(fù)選框和兩個命令按鈕組成。因為是復(fù)選框,所以可以同時選幾個,點擊“確認”后就關(guān)閉了剛才所選的電梯的監(jiān)控。點擊“取消”就回到主監(jiān)控界面。點擊菜單欄的“密碼”項,就可以進入修改密碼的界面,如下圖:密碼設(shè)置正如界面上所顯示的一樣,為了確保安全性,必須輸入原始密碼,并兩次輸入新密碼進行確認,才可完成修改密碼的內(nèi)容,如下圖:密碼修改成功并返回主監(jiān)控界面。否則,就會出現(xiàn)如下的提示:錯誤提示這一個界面會把新的密碼寫到SQL的數(shù)據(jù)庫中保存起來,這樣就保證了下一次程序再次被啟動之后密碼已經(jīng)被修改,否則密碼的修改就為無效。監(jiān)控界面設(shè)計之用戶登錄與SQL聯(lián)系設(shè)計要真正實現(xiàn)用戶的登錄就要把用戶名和密碼保存起來,在登錄的時候進行查詢,然后判斷。在這里我運用SQL與VisualBasic相連接來實現(xiàn)。首先,先在SQL中建立一個名為“監(jiān)控電梯”的數(shù)據(jù)庫,建立好之后如圖:建立數(shù)據(jù)庫然后打開數(shù)據(jù)庫,在數(shù)據(jù)庫中建立一個新的表,命名為“系統(tǒng)用戶表”,表的屬性設(shè)置如下:表屬性然后,點擊如下圖所示的項,進行表格編輯,如圖:鍵入用戶名和密碼隨后在主控界面里設(shè)計一個設(shè)計器,如下:設(shè)計器當(dāng)執(zhí)行程序之前首先要在有SQL的計算機里把數(shù)據(jù)庫還原,然后進入監(jiān)控界面中的設(shè)計器,設(shè)置好各個屬性參數(shù),就可以運行程序了。電梯模擬器設(shè)計在畢業(yè)設(shè)計前期實習(xí)階段,我特地走訪了一些高層,包括寫字樓、商場、學(xué)校和居民樓,乘坐了電梯,對電梯里的操作面板進行了實地觀察,轎廂里應(yīng)該有的東西,它的結(jié)構(gòu)已經(jīng)在之前的章節(jié)中有所描述,而在我所要設(shè)計的電梯運行監(jiān)控系統(tǒng)中的電梯則用VisualBasic設(shè)計一個模擬的電梯,既然是在計算機上模擬,因此,是否超重就無法具體表現(xiàn)出來,而且直接制作轎廂內(nèi)部設(shè)計,而把電梯外的樓層召喚省略,并且電梯門的傳感裝置也省略。我所設(shè)計的電梯模擬器的功能有,可以進行開門關(guān)門,可以按下不同的樓層按鈕,程序就會模擬電梯做出反應(yīng),上行或下行,到達指令樓層后開門,幾秒鐘后自動關(guān)門,在開門狀態(tài)時,如果按下關(guān)門按鈕也可以進行關(guān)門的動作。當(dāng)按下報警按鈕后,警示標志會閃爍,同時電梯門自動關(guān)閉,下降到一樓停止,開門讓乘客下電梯。界面上有電梯門,是由兩個圖片框制作而成,樓層的顯示則利用圖片調(diào)用的方式模擬出數(shù)碼管的效果。樓層按鈕則通過顏色轉(zhuǎn)換產(chǎn)生兩種不同的狀態(tài),當(dāng)按下按鈕后會變成綠色,等到電梯到達指定樓層時按鈕的顏色又會變成原來的顏色。界面同樣設(shè)有開門和關(guān)門的按鈕,當(dāng)然在電梯運行的過程中這兩個按鈕是無效的,當(dāng)電梯處于停止狀態(tài)的時候,但門關(guān)到一半的時候,如果按下開門的按鈕,電梯門就會打開,相反的情況同樣如此。電梯模擬器的界面如下圖所示:首先是初始狀態(tài):電梯模擬界面如同上面所看到的界面左側(cè)為電梯門,右上方是上下行指示燈以及樓層數(shù)碼顯示,在樓層顯示的下面有報警按鈕,旁邊是報警和超重的指示燈所在的位置。再下面是樓層按鈕區(qū)域,我設(shè)計的是十五層樓的電梯,所以操作面板上有十五個樓層按鈕,點擊一下,顏色就會變。右下腳是兩個開門和關(guān)門的按鈕?,F(xiàn)在我來演示一下模擬電梯的運作過程。當(dāng)按下樓層按鈕,比如按3之后,電梯指示上行,電梯往上走,走到2樓時界面如下圖:電梯上行當(dāng)電梯到達3樓后,樓層按鈕指示燈滅,電梯開門,正好處于開門中的狀態(tài),如下圖所示:到達指定樓層如果按下報警按鈕,則報警燈亮,并閃爍,如下圖:報警燈閃爍1電梯模擬器程序設(shè)計流程圖在設(shè)計電梯模擬器之前,首先應(yīng)該畫出程序的流程圖,這樣才能使程序的層次更清晰,編程的時候思路就不會發(fā)生大的失誤。流程圖能夠很好地幫助程序員理清思路,為編好一個程序打下了堅實的基礎(chǔ),是編程之前不可缺少的一個步驟。在之前對電梯的實際考察后,我從真實電梯的運行過程中得出了一些結(jié)論,那就是一般電梯一旦當(dāng)它確定好一個方向之后就不會改變,除非當(dāng)電梯到達最高或最底層,電梯會重新更換方向。因此,根據(jù)電梯這樣的運動規(guī)律,電梯下行的流程圖如下:注:b表示當(dāng)前樓層;c表示指令樓層,此后流程圖中的符號表示相同意思,不再說明說明:首先電梯按鈕被按下,電梯判斷當(dāng)前所在樓層是否大于指令樓層,如果是的話則下行指示燈亮,如果不是則上行指示燈亮,如此就判斷了電梯的上下行了。按樓層按鈕b>c注:b表示當(dāng)前樓層;c表示指令樓層,此后流程圖中的符號表示相同意思,不再說明說明:首先電梯按鈕被按下,電梯判斷當(dāng)前所在樓層是否大于指令樓層,如果是的話則下行指示燈亮,如果不是則上行指示燈亮,如此就判斷了電梯的上下行了。按樓層按鈕b>c?是下行指示燈亮結(jié)束上行指示燈亮否判斷上下行如果電梯是上行的話,那么當(dāng)電梯到達指令樓層后就看開門,過一段時間后如果沒有人按關(guān)門鍵就會自動關(guān)門,然后判斷是否有其他同方向的按鈕被按下,如果有則繼續(xù)執(zhí)行,如果沒有就不動作。直到它到最高層之后,就轉(zhuǎn)為下行。下行的時候也同樣如此,等到到達最底層之后就轉(zhuǎn)為上行。電梯上行的流程圖如下:說明:當(dāng)電梯已經(jīng)確定為上行之后,則電梯的當(dāng)前樓層加一,然后判斷當(dāng)前樓層是否與指令樓層相等,如果不相等則當(dāng)前樓層繼續(xù)加一,如果相等則電梯開門,指令指示燈暗掉,過一段時間電梯自動關(guān)門,然后判斷是否有其他更高的指令按鈕被按下,如果有則回到前面第二步繼續(xù)執(zhí)行,如果沒有那么上行指示燈就暗掉,此時指示燈都處于不顯示狀態(tài)。上行判斷結(jié)束。是結(jié)束上行指示燈暗掉否是否有其他按鈕按下電梯關(guān)門電梯開門樓層指示燈滅是b=c?電梯上行b=b+1按樓層按鈕說明:當(dāng)電梯已經(jīng)確定為上行之后,則電梯的當(dāng)前樓層加一,然后判斷當(dāng)前樓層是否與指令樓層相等,如果不相等則當(dāng)前樓層繼續(xù)加一,如果相等則電梯開門,指令指示燈暗掉,過一段時間電梯自動關(guān)門,然后判斷是否有其他更高的指令按鈕被按下,如果有則回到前面第二步繼續(xù)執(zhí)行,如果沒有那么上行指示燈就暗掉,此時指示燈都處于不顯示狀態(tài)。上行判斷結(jié)束。是結(jié)束上行指示燈暗掉否是否有其他按鈕按下電梯關(guān)門電梯開門樓層指示燈滅是b=c?電梯上行b=b+1按樓層按鈕上行流程圖電梯下行流程圖如下所示:說明:說明:當(dāng)電梯已經(jīng)確定為下行之后,則電梯的當(dāng)前樓層減一,然后判斷當(dāng)前樓層是否與指令樓層相等,如果不相等則當(dāng)前樓層繼續(xù)減一,如果相等則電梯開門,指令指示燈暗掉,過一段時間電梯自動關(guān)門,然后判斷是否有其他更低的指令按鈕被按下,如果有則回到前面第二步繼續(xù)執(zhí)行,如果沒有那么下行指示燈就暗掉,此時指示燈都處于不顯示狀態(tài)。下行判斷結(jié)束。按樓層按鈕電梯下行b=b-1b=c?是電梯開門樓層指示燈滅電梯關(guān)門是否有其他按鈕按下否下行指示燈暗掉結(jié)束是下行流程圖故障報警流程圖如下所示:報警按鈕按下電梯門關(guān)閉報警按鈕按下電梯門關(guān)閉報警燈閃爍是否到最底層是打開電梯門結(jié)束b=b-1說明:當(dāng)電梯發(fā)生故障,電梯的報警按鈕被按下之后,電梯門立即關(guān)閉,同時轎廂內(nèi)的報警指示燈亮起并開始閃爍,電梯下行并不斷判斷是否已經(jīng)到了最底層,如果是則打開門,電梯門就不動,如果不是,那么當(dāng)前樓層減一,然后繼續(xù)判斷執(zhí)行。報警流程圖調(diào)試過程在整個畢業(yè)設(shè)計的過程中,由于我是用VisualBasic進行設(shè)計的,所以我采取先把界面設(shè)計制作完成,然后再針對每個界面進行各自程序設(shè)計的編寫工作,每設(shè)計一點就對程序進行調(diào)試,然后修改錯誤及不符合設(shè)計要求的地方,再進行調(diào)試,直到滿足設(shè)計要求為止。首先我進行的是監(jiān)控界面的設(shè)計制作,一開始我設(shè)計的主監(jiān)控界面太簡單了,只有幾個文本框來顯示當(dāng)前樓層的數(shù)值,但是后來經(jīng)過老師的指導(dǎo)后,我開始在一個個的監(jiān)控界面中用一個個小方塊來代表電梯,并讓它根據(jù)通訊進來的信號,上下移動,這樣就可以非常生動地描述了電梯的運動狀態(tài)了。接著在用戶登錄這一塊中我又遇到了問題,我發(fā)現(xiàn)我做的密碼修改根本沒有作用,等到重新啟動程序的時候,密碼還是原來的那個,在我請教了老師之后我才知道原來登錄的用戶名或密碼要存放在文件中或用數(shù)據(jù)庫來做,所以我就找了有關(guān)的書,再請教了同學(xué)之后終于完成了用戶登錄的部分。在通訊程序編寫的過程中,我遇到了不少的問題,一開始我完全不熟悉所要用的MSComm控件的用法,在查閱了許多的資料后才對它有了了解,然后著手開始編程,編出的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 國際貿(mào)易買賣合同模板
- 采購合同協(xié)議樣本
- 機械租賃安全規(guī)范合同版
- 供熱服務(wù)保障合同
- 工廠購銷合同范本
- 城市戶外廣告投放工程合同
- 塔吊設(shè)備供應(yīng)合同
- 采購與供應(yīng)合同協(xié)議書范本
- 長期倉庫租賃合同模板
- 寵物貓咪領(lǐng)養(yǎng)及養(yǎng)護合同2025
- 少兒美術(shù)幼兒園課件- 4-6歲 《沙漠鴕鳥》
- ChatGPT人工智能與通用大模型演講稿
- 撤場通知書( 模板)
- richcui美國sspc富鋅底漆解讀
- IATF169492016內(nèi)部審核報告范例
- 人教版高中地理必修一全冊測試題(16份含答案)
- 成果導(dǎo)向(OBE)教育理念課件
- 交通運輸概論全套PPT完整教學(xué)課件
- 西北工業(yè)大學(xué)英文簡介
- 《動畫場景設(shè)計》第一章 動畫場景設(shè)計概述
- 2023年湖北宜昌伍家新城投資控股集團有限公司招聘筆試題庫含答案解析
評論
0/150
提交評論