版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 蓄電池單體電池電壓監(jiān)控系統(tǒng)設(shè)計(jì)</p><p><b> ———監(jiān)控界面設(shè)計(jì)</b></p><p> Battery monomer battery voltage monitoring and control system design</p><p> ——monitor interface design<
2、;/p><p> 蓄電池單體電池電壓監(jiān)控系統(tǒng)設(shè)計(jì)</p><p><b> ———監(jiān)控界面設(shè)計(jì)</b></p><p> 摘 要: 為了改變目前通信站蓄電池電壓的人工電壓監(jiān)測方式, 本文通過對蓄電池電壓監(jiān)控設(shè)計(jì)。監(jiān)測平臺(tái)硬件結(jié)構(gòu)及監(jiān)控原理的介紹和串行通信設(shè)計(jì)主要使用到的VB程序語言中串口控件屬性參數(shù)的說明,以及組態(tài)王在線實(shí)時(shí)監(jiān)控界面的設(shè)計(jì),軟
3、件系統(tǒng)的設(shè)計(jì)制作,包括軟件系統(tǒng)功能模塊框圖、數(shù)據(jù)表的設(shè)計(jì)、報(bào)表設(shè)計(jì)制作及打印及界面設(shè)計(jì)等方面的內(nèi)容。對上位機(jī)軟件設(shè)計(jì)的功能以及與下位機(jī)之間的數(shù)據(jù)傳輸所用到的監(jiān)控系統(tǒng)平臺(tái)程序界面和主要通信程序以及所使用VB編寫的主要數(shù)據(jù)通信處理程序作了說明,并且對組態(tài)王中動(dòng)態(tài)數(shù)據(jù)(DDE)與VB之間的數(shù)據(jù)交換進(jìn)行說明,還通過VB與RS-232相結(jié)合,對Microsoft Communication Control(簡稱MSComm)的通信控件的屬性和事件
4、進(jìn)行相應(yīng)編程操作實(shí)現(xiàn)串口通信。最后經(jīng)檢測測試表明本系統(tǒng)平臺(tái)設(shè)計(jì)合理、電壓監(jiān)控的數(shù)據(jù)準(zhǔn)確, 從而證明了本系統(tǒng)平臺(tái)設(shè)計(jì)的有效性。</p><p> 關(guān)鍵詞: 蓄電池;組態(tài)王;電壓監(jiān)控;VB;串行通信</p><p> Battery monomer battery voltage monitoring and control system design</p><p&g
5、t; ——monitor interface design</p><p> Abstract: in order to change the present way of artificial voltage monitoring station battery voltage, this article through to the traffic station monitoring system, t
6、he battery voltage monitoring platform hardware structure and control principle is introduced and the design of serial communication mainly using VB programming language used in serial port control property parameter, an
7、d the configuration king online real-time monitoring interface design. And under the function of the PC software </p><p> Key words: storage battery; Kingview; Voltage monitoring; VB; Serial communication&l
8、t;/p><p><b> 前言</b></p><p> 蓄電池是電池中的一種,它的作用是能把有限的電能儲(chǔ)存起來,在合適的地方使6v4ah應(yīng)急燈蓄電池用。它的工作原理就是把化學(xué)能轉(zhuǎn)化為電能。它用填滿海綿狀鉛的鉛板作負(fù)極,填滿二氧化鉛的鉛板作正極,并用22~28%的稀硫酸作電解質(zhì)。在充電時(shí),電能轉(zhuǎn)化為化學(xué)能,放電時(shí)化學(xué)能又轉(zhuǎn)化為電能。電池在放電時(shí),金屬鉛是負(fù)極,發(fā)生氧
9、化反應(yīng),被氧化為硫酸鉛;二氧化鉛是正極,發(fā)生還原反應(yīng),被還原為硫酸鉛。電池在用直流電充電時(shí),兩極分別生成鉛和二氧化鉛。移去電源后,它又恢復(fù)到放電前的狀態(tài),組成化學(xué)電池。鉛蓄電池是能反復(fù)充電、放電的電池,叫做二次電池。它的電壓是2v,通常把三個(gè)鉛蓄電池串聯(lián)起來使用,電壓是6v。通信上用的是24個(gè)鉛蓄電池串聯(lián)成48v的電池組。鉛蓄電池在使用一段時(shí)間后要補(bǔ)充蒸餾水,使電解質(zhì)保持含有22~28%的稀硫酸。蓄電池的應(yīng)用十分廣泛,可用于通行站,電動(dòng)
10、車,滑板車,汽車,風(fēng)能太陽能系統(tǒng),安全報(bào)警等等方面。</p><p> 蓄電池是保證通信站正常工作的后備電源系統(tǒng),主要是為交換機(jī)、傳輸設(shè)備等監(jiān)控單元提供備用電源。因此, 在通信站的維護(hù)工作中蓄電池的維護(hù)是一項(xiàng)十分重要的任務(wù)。目前, 通信站蓄電池的電壓維護(hù)與監(jiān)控通常是, 由維護(hù)人員在某段時(shí)間內(nèi)定時(shí)測量蓄電池的電壓是否在正常的規(guī)范內(nèi), 這種人工方式不僅費(fèi)時(shí)而且費(fèi)力。通常測量過程容易受測試工具、人員等各種因素的干擾,
11、 準(zhǔn)確性較低。為了能克服目前在蓄電池電壓監(jiān)測系統(tǒng)中的缺點(diǎn), 本文通過對相應(yīng)硬件的介紹的基礎(chǔ)上, 基于VB和組態(tài)王實(shí)現(xiàn)了蓄電池電壓在線監(jiān)控系統(tǒng), 以實(shí)時(shí)的方式反應(yīng)蓄電池的電壓變化。</p><p> 隨著科學(xué)技術(shù)的不斷發(fā)展,計(jì)算機(jī)監(jiān)控技術(shù)在工業(yè)現(xiàn)場的各種監(jiān)控及控制系統(tǒng)中應(yīng)用越來越廣泛。通常情況下,工業(yè)現(xiàn)場的各種監(jiān)控系統(tǒng)需要上位計(jì)算機(jī)與工業(yè)現(xiàn)場各種儀表進(jìn)行通信,以便及時(shí)了解現(xiàn)場儀表的運(yùn)行情況,從而實(shí)現(xiàn)對現(xiàn)場各種狀態(tài)
12、的實(shí)時(shí)監(jiān)控。</p><p> 組態(tài)王軟件作為一種優(yōu)秀的上位機(jī)監(jiān)控軟件,在許多領(lǐng)域的遠(yuǎn)程監(jiān)控中都得到了廣泛的應(yīng)用。然而,組態(tài)王為數(shù)據(jù)采集和控制提供的大量底層設(shè)備驅(qū)動(dòng)程序,主要是針對較大規(guī)模廠商的板卡和模塊,對于較小規(guī)模廠商開發(fā)的各種智能化儀表及用戶自己設(shè)計(jì)的板卡,卻沒有現(xiàn)成的驅(qū)動(dòng)程序提供。因此,利用組態(tài)王來設(shè)計(jì)監(jiān)控界面在進(jìn)行通信時(shí),往往需要用戶自己開發(fā)底層的驅(qū)動(dòng)程序,給用戶的使用帶來了諸多的不便。為了解決上述問
13、題,組態(tài)王專門提供了一種DDE技術(shù),能夠使用戶方便地實(shí)現(xiàn)組態(tài)王與其它支持動(dòng)態(tài)數(shù)據(jù)交換的應(yīng)用程序進(jìn)行數(shù)據(jù)交換。</p><p> Visual Basic 6.0(簡稱VB)是一款簡單、易用的可視化編程語言,開發(fā)者可以方便地利用窗體和控件等組件快速建立一個(gè)應(yīng)用程序。因而,在各種程序開發(fā)中,VB得到了廣泛的應(yīng)用,同時(shí)在VB還提供了一個(gè)非常方便的串行通信控件Mscomm, 它既可以使用查詢方式,也可以使用事件驅(qū)動(dòng)方式
14、來實(shí)現(xiàn)串行通信,為開發(fā)者實(shí)現(xiàn)上位計(jì)算機(jī)與現(xiàn)場各種儀表進(jìn)行通信提供了一種有效途徑。另外,VB還支持DDE技術(shù),利用該技術(shù)可以很好地實(shí)現(xiàn)VB與組態(tài)王之間動(dòng)態(tài)數(shù)據(jù)交換。在該系統(tǒng)中, 根據(jù)蓄電池電壓監(jiān)控的要求, 采用了組態(tài)王來監(jiān)控, 利用串行通信和VB 開發(fā)環(huán)境編制了相應(yīng)的程序, 達(dá)到實(shí)用化監(jiān)控的要求。</p><p><b> 緒論</b></p><p><b&g
15、t; 1.1 背景知識(shí)</b></p><p> 直流操作電源系統(tǒng)是電力系統(tǒng)中繼電保護(hù)裝置、 信號(hào)裝置、照明裝置等重要負(fù)載的供電電源,其供電的可靠性直接影響變電站的安全運(yùn)行。直流操作電源的后備電源一般采用蓄電池組,正常運(yùn)行時(shí)由充電機(jī)浮充充電,當(dāng)系統(tǒng)停電時(shí),由蓄電池組提供后備電源。為保證直流操作電源供電的可靠性,必須對蓄電池組運(yùn)行參數(shù)進(jìn)行全面的在線監(jiān)控。</p><p>
16、目前,電力系統(tǒng)中蓄電池的常用檢測方法就是平時(shí)測量單體電池的端電壓及每年進(jìn)行的容量核對性放電,但平時(shí)浮充狀態(tài)下的電池端電壓測量本身并不能真實(shí)反映電池的性能狀況,即使性能變差的電池在浮充時(shí)也能測得合格的端電壓; 而一旦供電系統(tǒng)停電、蓄電池放電時(shí),就可能無法保證事故狀態(tài)下的放電要求,從而擴(kuò)大事故范圍。由于蓄電池的容量與電池內(nèi)阻存在很強(qiáng)的相關(guān)性,一般而言,電池的容量越大,內(nèi)阻就越小,因此對蓄電池設(shè)計(jì)電壓監(jiān)控。</p><p&
17、gt; 1.1.1 蓄電池簡介</p><p> 近年來,隨著科學(xué)技術(shù)的迅速發(fā)展,尤其是單片機(jī)和計(jì)算機(jī)在智能化控制方面的應(yīng)用以及變配電所綜合自動(dòng)化系統(tǒng)研究的深入,國內(nèi)外涌現(xiàn)出大量從事蓄電池自動(dòng)化監(jiān)測檢技術(shù)研究的公司,實(shí)現(xiàn)對蓄電池的電壓監(jiān)控。本文主要針對并聯(lián)的兩組蓄電池組進(jìn)行電壓監(jiān)控設(shè)計(jì),每一組由24塊電池組成(每塊2V),并且通過RS-232通信接口來進(jìn)行數(shù)據(jù)交換。</p><p>
18、 1.1.2 蓄電池的電壓</p><p><b> 1、電動(dòng)勢</b></p><p> 電動(dòng)勢是指電池在開路吋,正極平衡電極電勢與負(fù)極平衡電極電勢之差,其大小取決于電池中的化學(xué)反應(yīng),與電池的形狀、尺寸無關(guān)。根據(jù)蓄電池的成流反應(yīng),按熱力學(xué)原則,電池的電動(dòng)勢為:</p><p> 其中E為電池電動(dòng)勢,為所有反應(yīng)物的活度或壓力等于1時(shí)的電動(dòng)
19、勢,稱為標(biāo)準(zhǔn)電動(dòng)勢(V); R為摩爾氣體常數(shù),為8.31J/(K’t001); T為絕對溫,度(K);F為法拉第常數(shù)(96500C / mol) ; n為電化學(xué)反應(yīng)中的電子得電數(shù)目。</p><p> 電動(dòng)勢是電池在理論上輸出能量人小的量度之一,如果其它條件相同,電動(dòng)勢越高的電池,理論上能輸出的能景就越大。</p><p><b> 2、開路電壓</b></
20、p><p> 開路電壓是電池在開路狀態(tài)下的端電壓,也是兩極的電極電勢之差,但不是平衡電勢,而足穩(wěn)定電勢或混合電勢之差。理論上,電池的開路電壓并不等于電動(dòng)勢,但數(shù)值上可能很接近。</p><p><b> 3、工作電壓</b></p><p> 工作電壓是指有電流流過外線路時(shí),電池兩極之間的電位差。放電工作電壓總是低于開路電壓。</p&g
21、t;<p> 1.1.3 蓄電池原理圖</p><p> 1.2 VB軟件簡介</p><p> VB是微軟公司推出的一種可視化的高級程序設(shè)計(jì)語言,是目前應(yīng)用最廣泛的編程語言之一,它也被公認(rèn)為是編程效率最高的一種編程方法。無論是開發(fā)功能強(qiáng)大、性能可靠的商務(wù)軟件,還是編寫能處理實(shí)際問題的實(shí)用小程序,VB都是最快速、最簡便的語言。它的簡單易學(xué)、容易掌握,使用VB,編程人員不
22、用編寫大量的代碼區(qū)描述界面元素的外觀和位置,而只需要把預(yù)先建立好的對象“畫”到屏幕的某一位置即可,從而使編程效率得到了極大的提高。VB6.0又在數(shù)據(jù)訪問、控件、語言、向?qū)Ъ癐nternet支持等方面增加了許多新的功能,可用于開發(fā)Windows環(huán)境下功能強(qiáng)大、圖形界面豐富的各類應(yīng)用如阿嬌系統(tǒng)。</p><p> 1.2.1 VB的特點(diǎn)</p><p> 可視化編程。傳統(tǒng)程序設(shè)計(jì)語言通過編
23、程代碼來設(shè)計(jì)用戶界面,開發(fā)者在設(shè)計(jì)過程中看不到界面的實(shí)際顯示效果,只有等到編譯運(yùn)行程序后才能查看。若要修改界面效果,還要返回到源程序中,從而影響了軟件開發(fā)效率。而VB提供了可視化設(shè)計(jì)工具,開發(fā)者只需要按設(shè)計(jì)要求進(jìn)行屏幕布局,用系統(tǒng)提供的工具,在屏幕上“畫”出各種“部件”—圖形對象,并設(shè)置好這些圖形對象的屬性即可。</p><p> 面向?qū)ο蟮某绦蛟O(shè)計(jì)。VB具有面向?qū)ο蟮某绦蛟O(shè)計(jì)(OOP)語言的一些特點(diǎn),還把程序
24、和數(shù)據(jù)封裝起來作為一個(gè)對象,并為每個(gè)對象賦予應(yīng)有的屬性,使對象更具體、更直觀。另外VB還可以用類的方式來設(shè)計(jì)對象。</p><p> 結(jié)構(gòu)化程序設(shè)計(jì)語言。VB用子程序、函數(shù)來實(shí)現(xiàn)這種結(jié)構(gòu)化的設(shè)計(jì),在每一個(gè)子程序、函數(shù)中用順序結(jié)構(gòu)、分支機(jī)構(gòu)、循環(huán)結(jié)構(gòu)來表達(dá)程序流程。</p><p> 事件驅(qū)動(dòng)編程機(jī)制。VB通過事件來執(zhí)行對象的操作。</p><p> 具有強(qiáng)大的
25、功能和開發(fā)的特點(diǎn)。VB的語法雖然簡單,但卻可以完成復(fù)雜的功能,這主要是由于它具有開放的特點(diǎn)。</p><p> 1.3 組態(tài)王軟件簡介</p><p> 組態(tài)王開發(fā)監(jiān)控系統(tǒng)軟件,是新型的工業(yè)自動(dòng)控制系統(tǒng),它以標(biāo)準(zhǔn)的工業(yè)計(jì)算機(jī)軟、硬件平臺(tái)構(gòu)成的集成系統(tǒng)取代傳統(tǒng)的封閉式系統(tǒng)。</p><p> 組態(tài)王kingview6.0是亞控科技根據(jù)當(dāng)前的自動(dòng)化技術(shù)的發(fā)展趨勢,
26、面向低端自動(dòng)化市場及應(yīng)用,以實(shí)現(xiàn)企業(yè)一體化為目標(biāo)開發(fā)的一套產(chǎn)品。該產(chǎn)品以搭建戰(zhàn)略性工業(yè)應(yīng)用服務(wù)平臺(tái)為目標(biāo),集成了對亞控科技自主研發(fā)的工業(yè)實(shí)時(shí)數(shù)據(jù)庫(King Historian)的支持,可以為企業(yè)提供一個(gè)對整個(gè)生產(chǎn)流程進(jìn)行數(shù)據(jù)匯總、分析及管理的有效平臺(tái),使企業(yè)能夠及時(shí)有效地獲取信息,及時(shí)地做出反應(yīng),以獲得最優(yōu)化的結(jié)果。</p><p> 組態(tài)王kingview6.0保持了其早期版本功能強(qiáng)大、運(yùn)行穩(wěn)定且使用方便的
27、特點(diǎn),并根據(jù)國內(nèi)眾多用戶的反饋及意見,對一些功能進(jìn)行了完善和擴(kuò)充。組態(tài)王king view 6.0提供了豐富的、簡捷易用的配置界面,提供了大量的圖形元素和圖庫精靈,同時(shí)也為用戶創(chuàng)建圖庫精靈提供了簡單易用的接口;該款產(chǎn)品的歷史曲線、報(bào)表及web發(fā)布功能進(jìn)行了大幅提升與改進(jìn),軟件的功能性和可用性有了很大的提高。</p><p> 1.3.1 組態(tài)王的安裝方法</p><p> 在解壓文件夾
28、中點(diǎn)擊Install.exe啟動(dòng)安裝程序如圖1.2</p><p> 圖1.2 啟動(dòng)組態(tài)王安裝程序 </p><p> 2、單擊 “安裝組態(tài)王”按鈕?!敖M態(tài)王”開始安裝后,首先彈出對話框:如圖1.3。</p><p> 圖1.3開始安裝組態(tài)王 </p><p> 繼續(xù)點(diǎn)擊“下一步”到選擇安裝類型 如圖1.4</p>&l
29、t;p> 圖1.4選擇安裝類型 </p><p> 繼續(xù)“下一步”到安裝結(jié)束。彈出對話框: 如圖1.5</p><p><b> 圖1.5安裝結(jié)束 </b></p><p> 1.3.2組態(tài)王的功能</p><p> 強(qiáng)大的界面顯示組態(tài)功能。目前,工控組態(tài)軟件大都運(yùn)行于Windows環(huán)境下,充分利用了Wi
30、ndows的圖形功能完善界面美觀的特點(diǎn)。豐富的圖形控件和工況圖庫,提供了大量的工業(yè)設(shè)備圖符及儀表圖符,還提供趨勢圖、歷史曲線、組數(shù)據(jù)分析圖等,既提供所需的組件,又是界面制作的向?qū)А.嬅尕S富多彩,為設(shè)備的正常運(yùn)行、操作人員的集中控制提供了極大的方便。</p><p> 良好的開放性。社會(huì)化的大生產(chǎn),使得系統(tǒng)構(gòu)成的全部軟硬件不可能出自一家公司的產(chǎn)品,“導(dǎo)構(gòu)”是當(dāng)今控制系統(tǒng)的主要特點(diǎn)之一。開放性是指組態(tài)軟件能與多種通
31、信協(xié)議互聯(lián),支持多種硬件設(shè)備。開放性是衡量一個(gè)組態(tài)軟件好壞的重要指標(biāo)。</p><p> 豐富的功能模塊。組態(tài)軟件提供豐富的控制功能庫,滿足用戶的測控要求和現(xiàn)場要求。利用各種功能模塊,完成實(shí)時(shí)監(jiān)控、產(chǎn)生功能報(bào)表、顯示歷史曲線、實(shí)時(shí)曲線、提供報(bào)警等功能,使系統(tǒng)具有良好的人機(jī)界面,易于操作。</p><p> 強(qiáng)大的數(shù)據(jù)庫。配有實(shí)時(shí)數(shù)據(jù)庫,可存儲(chǔ)各種數(shù)據(jù),如模擬量、離散量、字符型等,實(shí)現(xiàn)與
32、外部設(shè)備的數(shù)據(jù)交換。</p><p> 可編程的命令語言。有可編程的命令語言,是用戶根據(jù)自己的需要編寫程序,增強(qiáng)圖形界面。</p><p> 周密的系統(tǒng)安全防范。對不同的操作者賦予不同的操作權(quán)限,保證整個(gè)系統(tǒng)的安全可靠運(yùn)行。</p><p> 仿真功能。提供強(qiáng)大的仿真功能使系統(tǒng)能夠并行設(shè)計(jì),從而縮短開發(fā)周期。</p><p><b
33、> 1.4 本章小結(jié)</b></p><p> 本章主要針對蓄電池的簡介及其原理進(jìn)行概述,并且對所使用到軟件VB6.0和組態(tài)王6.0的功能及安裝方法進(jìn)行簡要的闡述。</p><p><b> VB與串口通信</b></p><p> 2.1串行接口的簡介</p><p> 串行接口一般包括RS
34、232/422/485,本文設(shè)計(jì)主要用RS232。接口技術(shù)是工業(yè)實(shí)時(shí)控制和數(shù)據(jù)采集中非常重要的計(jì)算機(jī)應(yīng)用技術(shù),它可實(shí)現(xiàn)CPU與存儲(chǔ)器、I/O設(shè)備、控制設(shè)備、測量設(shè)備、通信設(shè)備、A/D及D/A轉(zhuǎn)換器等的信息交換。</p><p> 利用VB開發(fā)串口通信程序主要有兩種方法:一是使用MSComm串口控件,二是調(diào)用Windows API函數(shù)。在實(shí)踐中,使用VB串口控件MSComm實(shí)現(xiàn)通信的方法比調(diào)用API函數(shù)的方法更加
35、方便、快捷,而且用較少的代碼可以實(shí)現(xiàn)相同的功能,從而使編程效率大大提高。</p><p> 2.1.1串口通信的基本概念</p><p> 通信主要有并行通信和串行通信兩種,其中串行數(shù)據(jù)傳送的特點(diǎn)是,數(shù)據(jù)傳送按位順序進(jìn)行,最少只需要一根傳輸線即可完成,節(jié)省傳輸線。與并行通信相比,串行通信還有較為顯著地優(yōu)點(diǎn):傳輸距離長,可以從幾米到幾千米;在長距離內(nèi)串行數(shù)據(jù)傳送速率會(huì)比并行數(shù)據(jù)傳送速率快
36、;串行通信的通信時(shí)鐘頻率容易提高;串行通信的抗干擾能力十分強(qiáng),其信號(hào)間的互相干擾完全可以忽略。但是串行通信傳送速度比并行通信慢得多,并行通信時(shí)間為T,則串行時(shí)間為NT。而串行通信的數(shù)據(jù)流傳送模式有三種:單工、半雙工和全雙工。本次設(shè)計(jì)采用全雙工,全雙工數(shù)據(jù)通信分別由兩根可以在兩個(gè)不同的站點(diǎn)同時(shí)發(fā)送和接受的傳輸線進(jìn)行傳送,通信雙方都能在同一時(shí)刻進(jìn)行發(fā)送和接受操作。如圖2.1</p><p><b> 圖2
37、.1全雙工形式</b></p><p> 2.1.2 RS-232串口通信標(biāo)準(zhǔn) </p><p> RS-232標(biāo)準(zhǔn)的全稱是EIA-RS-232標(biāo)準(zhǔn),其中RS(Recommended Standard)代表推薦標(biāo)準(zhǔn),232是標(biāo)識(shí)號(hào),它適合于數(shù)據(jù)傳輸速率在0~20000bit/s范圍內(nèi)的通信。這個(gè)標(biāo)準(zhǔn)對串行通信接口的有關(guān)問題,如信號(hào)電平、信號(hào)線功能、電氣特性、機(jī)械特性等都做了
38、明確規(guī)定。</p><p> 相應(yīng)的連接線上等的串口連接器有公頭和母頭之分,作為多功能I/O卡或主板上提供的COM1和COM2兩個(gè)串行接口的DB-9連接器,它只提供異步通信的9個(gè)信號(hào)針腳,如圖2.2,個(gè)針腳的信號(hào)功能如表2-1。</p><p> 圖2.2 DB9串口連接器</p><p> 表 2-1 9針串行口的針腳功
39、能</p><p> 本次設(shè)計(jì)主要用到數(shù)據(jù)線(RXD、TXD)和地線(GND)</p><p> ●RXD-此腳位負(fù)責(zé)將傳送過來的遠(yuǎn)程信息進(jìn)行接受。在接受的過程中,由于信息是以數(shù)字形式傳送的,讀者可以在調(diào)制解調(diào)器的RXD指示燈上看到明滅交錯(cuò),這是由于0、1交替導(dǎo)致的結(jié)果,也是電位高低所產(chǎn)生的現(xiàn)象。</p><p> ●TXD-此腳位負(fù)責(zé)將計(jì)算機(jī)打算傳送出去的信
40、息傳送出去。在傳送過程中,由于信息是以數(shù)字形式傳送的,讀者以在調(diào)制解調(diào)器的TXD指示燈上看到明滅交錯(cuò),這是由于0、1交替導(dǎo)致的結(jié)果,也是電位高低所產(chǎn)生的現(xiàn)象。</p><p> ●GND-此腳為地線,作為計(jì)算機(jī)與調(diào)制解調(diào)器之間的參考基準(zhǔn)。兩端設(shè)備的地線準(zhǔn)位必須一樣,否則會(huì)產(chǎn)生地回路,使得信號(hào)因準(zhǔn)位的不同而產(chǎn)生偏移,也會(huì)導(dǎo)致結(jié)果失常。RS-232信息在傳輸上市采用單向式的信號(hào)傳送方式,其特點(diǎn)是信號(hào)的電壓基準(zhǔn)由參考
41、地線提供,因此傳輸雙方的地線必須連接在一起,以避免基準(zhǔn)不同而造成信息錯(cuò)誤。</p><p> 2.2 串口通信控件MSComm</p><p> 串行通信控件MSComm 全稱Microsoft Communications Control,是微軟公司提供的簡化Windows 下串行通信編程的ActiveX控件,它既可以用來提供簡單的串行端口通信的功能,也可以用來創(chuàng)建功能完備的、事件驅(qū)
42、動(dòng)的高級通信工具。</p><p> 2.2.1 MSComm控件處理通信的方式</p><p> 編程用MSComm控件實(shí)現(xiàn)通過串行端口傳輸和接收數(shù)據(jù),為應(yīng)用程序提供串行通信功能。它提供下列兩種處理通信的方式。</p><p><b> 事件驅(qū)動(dòng)方式</b></p><p> 該方式相當(dāng)于一般程序設(shè)計(jì)中的中斷方
43、式。當(dāng)串口發(fā)生事件或錯(cuò)誤時(shí),MSComm控件會(huì)產(chǎn)生OnComm事件,用戶程序可以捕獲該事件并進(jìn)行相應(yīng)的處理。它是處理串行端口交互作用的一種非常有效的方法。在許多情況下,在事件發(fā)生時(shí)程序應(yīng)該能處理它,例如,在串口接受緩沖區(qū)中有一個(gè)字符到達(dá)或一個(gè)變化發(fā)生時(shí),程序都可以利用MSComm控件的OnComm事件捕獲并處理這通信事件;OnComm事件還可以檢查和處理錯(cuò)誤。在程序的每個(gè)關(guān)鍵功能執(zhí)行之后,可以通過檢查CommEvent屬性的值來查詢事件
44、和錯(cuò)誤。</p><p><b> 查詢方式</b></p><p> 在程序的每個(gè)關(guān)鍵功能執(zhí)行之后,在用戶程序中設(shè)計(jì)定時(shí)或不定時(shí)的查詢,通過檢查CommEvent屬性的值來查詢事件和錯(cuò)誤,從而作出相應(yīng)的處理。在進(jìn)行簡單應(yīng)用程序設(shè)計(jì)時(shí)可采用這種方法,例如,如果寫一個(gè)簡單的電話撥號(hào)程序,則沒有必要對沒接收一個(gè)字符都產(chǎn)生事件,因?yàn)槲ㄒ坏却邮盏淖址麜r(shí)調(diào)制解調(diào)器的“OK
45、”響應(yīng)。</p><p> 2.2.2 MSComm控件主要引腳功能</p><p> 由于MSComm 通信控件不是Visual Basic 的內(nèi)置控件,因此在使用它時(shí)需要將其添加到工具箱中。具體做法是:打開[部件] 對話框,選中Microsoft Comm Control 6.0 復(fù)選框,單擊[確定] 按鈕,即可在工具箱中見到一個(gè)象電話盒似的圖標(biāo),它就是MSComm 控件。<
46、/p><p> 對MSComm 控件設(shè)置相應(yīng)的屬性和事件,就可以進(jìn)行串行通信了。如圖2.3</p><p> 圖2.3添加MSComm 串口通信控件</p><p> 2.2.3 MSComm 控件的常用屬性</p><p> 由于MSComm 控件屬性很多,在這里僅介紹與實(shí)現(xiàn)串口通信密切相關(guān)的重要屬性。</p><p
47、> Commport:設(shè)置通信所占用的串口號(hào)。如設(shè)成1 (默認(rèn)值),表示對COM1 進(jìn)行操作。</p><p> Setting:對串口通信的相關(guān)參數(shù)。包括串口通信的比特率、奇偶校驗(yàn)、數(shù)據(jù)位長度、停止位等。其默認(rèn)值是“9600,N,8,1”,表示串口比特率是9600bit/s,不作奇偶校驗(yàn),8 位數(shù)據(jù)位,1 個(gè)停止位。</p><p> Portopen:設(shè)置串口狀態(tài),值為Tr
48、ue 時(shí)打開串口,值為False 時(shí)關(guān)閉串口。</p><p> Input:從輸入寄存器讀取數(shù)據(jù),返回值為從串口讀取的數(shù)據(jù)內(nèi)容,同時(shí)輸入寄存器將被清空。</p><p> Ouput:發(fā)送數(shù)據(jù)到輸出寄存器。</p><p> InBufferCount:設(shè)置輸入寄存器所存儲(chǔ)的字符數(shù),當(dāng)將其值設(shè)為0 時(shí),則輸入寄存器將被清空。</p><p
49、> InputMode:設(shè)置從輸入寄存器中讀取數(shù)據(jù)的形式。若值為0,則表示以文本形式讀??;值為1,則表示以二進(jìn)制形式讀取。</p><p> OutBufferCount:設(shè)置輸出寄存器所存儲(chǔ)的字符數(shù),當(dāng)將其值設(shè)為0 時(shí),則輸出寄存器將被清空。</p><p> RThreshold:在MSComm 控件中,設(shè)置CommEvent 屬性為comEvReceive 并產(chǎn)生OnCo
50、mm 事件之前要接受的字符數(shù)。</p><p> CommEvent 屬性:返回最近的通信事件或錯(cuò)誤。通過對它具體屬性值的查詢,就可以獲得通信事件和通信錯(cuò)誤的完整信息。當(dāng)其值是comEvReceive 時(shí)表示接收到數(shù)據(jù)。</p><p> 2.2.4 MSComm 控件通信步驟</p><p> 通常我們以下面的步驟來使用VB的MSComm 控件作通信控制。&
51、lt;/p><p> 加入通信部件,也就是MSComm 對象。</p><p> 設(shè)置通信端口號(hào)碼,即CommPort屬性。</p><p> 設(shè)置通信協(xié)議,即HandShaking屬性。</p><p> 設(shè)置傳輸速度等參數(shù),即Settings屬性。</p><p> 設(shè)置其他參數(shù),若必要時(shí)再加上其他的屬性設(shè)置
52、。</p><p> 打開通信端口號(hào),即PortOpen屬性設(shè)成Ture。</p><p> 送出字符串或讀入字符串,使用Input及Output屬性。</p><p> 使用完MSComm 通信對象后,將通信端口關(guān)閉。即PortOpen屬性設(shè)置成False。</p><p> 遵循以上步驟,可以構(gòu)建自己的串行通信傳輸系統(tǒng)了。<
53、/p><p> 注意,步驟(2)~(5)可在設(shè)計(jì)環(huán)境的屬性窗口中設(shè)定,也可在程序中設(shè)定;而步驟(6)~(8)只能在VB程序中設(shè)定。</p><p> 2.2.5 通信協(xié)議及數(shù)據(jù)解析</p><p><b> 一、通信協(xié)議</b></p><p><b> ?。ㄒ唬└攀?lt;/b></p>
54、<p> 蓄電池單體電壓采集模塊SVSM-1(簡稱SVSM-1模塊)通過GPRS模塊上傳所采集的電壓數(shù)據(jù)至監(jiān)控中心數(shù)據(jù)庫。SVSM-1模塊利用RS-232串口與GPRS模塊進(jìn)行通信。GPRS模塊通過GPRS網(wǎng),再通過Internet網(wǎng),與連接于Internet網(wǎng)上的PC機(jī)通信。 </p><p><b> (二)通信過程說明</b></p>&l
55、t;p> 1.監(jiān)控中心對SVSM-1模塊發(fā)出的每一電壓數(shù)據(jù)幀都進(jìn)行LRC校驗(yàn)。如果校驗(yàn)正確,就接收電壓數(shù)據(jù),不發(fā)任何幀;如果校驗(yàn)不正確,不接收電壓數(shù)據(jù),要發(fā)錯(cuò)誤響應(yīng)幀給SVSM-1模塊,請求SVSM-1模塊重發(fā)電壓數(shù)據(jù)幀。</p><p> 2.SVSM-1模塊對監(jiān)控中心的請求命令幀進(jìn)行LRC校驗(yàn)。如果校驗(yàn)正確,就發(fā)電壓數(shù)據(jù)幀;如果校驗(yàn)不正確,要發(fā)錯(cuò)誤響應(yīng)幀,請求監(jiān)控中心重發(fā)請求命令幀。</p&g
56、t;<p><b> (三)物理接口</b></p><p> 1.串行通信口采用RS-232。</p><p> 2.信息傳輸方式為異步方式,起始位1位,數(shù)據(jù)位8位,停止位1位,無校驗(yàn)。</p><p> 3.?dāng)?shù)據(jù)傳輸速率: 19.2kbps。</p><p><b> ?。ㄋ模┬畔?/p>
57、式</b></p><p> 1.由監(jiān)控中心發(fā)出至SVSM-1模塊的讀數(shù)據(jù)請求命令幀。</p><p><b> 格式為:</b></p><p><b> 說明:</b></p><p> (1)請求命令幀各字節(jié)用十六進(jìn)制表示,“幀頭”為0x3A,“幀尾”為0x0D。</
58、p><p> ?。?)“設(shè)備地址”為SVSM-1模塊的地址,地址范圍:0x0000~0xFFFF。</p><p> ?。?)“功能碼”定義為0x41,表示讀數(shù)據(jù)。</p><p> ?。?)“數(shù)據(jù)長度”的可能值為:0x6A(宏站),0x12(邊際站)。</p><p> ?。?)“LRC校驗(yàn)值”是把幀頭及幀尾除去,其余的進(jìn)行LRC(縱向冗長檢測
59、)計(jì)算所得的值。</p><p> 2.當(dāng)監(jiān)控中心對上傳的電壓數(shù)據(jù)幀進(jìn)行LRC校驗(yàn)發(fā)現(xiàn)錯(cuò)誤時(shí),由監(jiān)控中心發(fā)出至SVSM-1模塊的錯(cuò)誤響應(yīng)幀(請求重發(fā)電壓數(shù)據(jù)幀)。格式為:</p><p><b> 說明:</b></p><p> ?。?)“功能碼”為0xC2,表示電壓數(shù)據(jù)幀錯(cuò)誤、請求重發(fā)電壓數(shù)據(jù)幀。</p><p>
60、; ?。?)其它含義同上述幀說明。</p><p> 3.由監(jiān)控中心發(fā)出至SVSM-1模塊的斷電命令幀。</p><p><b> 格式為: </b></p><p><b> 說明:</b></p><p> (1)“功能碼”為0x42,表示斷開市電命令。</p><p
61、> ?。?)其它含義同上述幀說明。</p><p> 4.由監(jiān)控中心發(fā)出至SVSM-1模塊的通電命令幀。</p><p><b> 格式為: </b></p><p><b> 說明:</b></p><p> (1)“功能碼”為0x43,表示接通市電命令。</p>&l
62、t;p> ?。?)其它含義同上述幀說明。</p><p> 5.SVSM-1模塊上傳至監(jiān)控中心的數(shù)據(jù)幀。</p><p><b> 格式為:</b></p><p><b> 說明:</b></p><p> (1)緊跟“數(shù)據(jù)長度”后的“數(shù)據(jù)1”…….“數(shù)據(jù)n”的總個(gè)數(shù)為“數(shù)據(jù)長度”的
63、值。</p><p> (2)“功能碼”為0x41,表示此幀為數(shù)據(jù)幀。</p><p> ?。?)其它含義同上述幀說明。</p><p> 6.當(dāng)SVSM-1模塊接收監(jiān)控中心請求命令幀時(shí),進(jìn)行LRC校驗(yàn)發(fā)現(xiàn)錯(cuò)誤而發(fā)出的錯(cuò)誤響應(yīng)幀(請求重發(fā)請求命令幀)。</p><p><b> 格式為:</b></p>
64、<p><b> 說明:</b></p><p> ?。?)“功能碼”為0xC1,表示請求命令幀錯(cuò)誤、請求重發(fā)請求命令幀。</p><p> ?。?)其它含義同上述幀說明。</p><p> 7.由SVSM-1模塊發(fā)出至監(jiān)控中心的停電信號(hào)幀。</p><p><b> 格式為: </b
65、></p><p><b> 說明:</b></p><p> ?。?)“功能碼”為0x44,表示停電信號(hào)。</p><p> ?。?)其它含義同上述幀說明。</p><p> 8.由SVSM-1模塊發(fā)出至監(jiān)控中心的來電信號(hào)幀。</p><p><b> 格式為: </
66、b></p><p><b> 說明:</b></p><p> (1)“功能碼”為0x45,表示來電信號(hào)。</p><p> ?。?)其它含義同上述幀說明。</p><p> ?。ㄎ澹㎜RC校驗(yàn)方法</p><p> 例如,對于如下請求幀</p><p>&l
67、t;b> 方法為:</b></p><p> 把幀頭0x3A和幀尾0x0D除去后,再把設(shè)備地址0x00、0x03、功能碼0x41、數(shù)據(jù)長度0x6A進(jìn)行累加,并忽略進(jìn)位。</p><p><b> 把累加和取反。</b></p><p> 把取反后的值再加1,得到LRC校驗(yàn)值0x52。</p><p&
68、gt;<b> ?。?shù)據(jù)解碼</b></p><p> 數(shù)據(jù)幀中包括電壓和電流兩種數(shù)據(jù),兩個(gè)數(shù)據(jù)表示一個(gè)電池電壓或電流編碼,例如數(shù)據(jù)幀:3A 00 03 41 6A 01 C1 01 08……0D,“6A”代表后面有106個(gè)數(shù)據(jù),兩個(gè)數(shù)據(jù)代表一個(gè)電壓或電流編碼,106個(gè)數(shù)據(jù)代表48個(gè)單體電池的電壓編碼和5個(gè)電流編碼。其中的“01 C1”代表1#電池的電壓編碼,轉(zhuǎn)換為實(shí)際電壓的方法為:&
69、lt;/p><p> 先把“01C1”(十六進(jìn)制)轉(zhuǎn)換為十進(jìn)制“449”,然后,實(shí)際電壓=</p><p> “01 08”代表2#電池的電壓編碼,...... 。</p><p> 最后10個(gè)數(shù)據(jù)為電流數(shù)據(jù)。</p><p><b> 實(shí)際電流=。</b></p><p><b>
70、 數(shù)據(jù)解析</b></p><p><b> 2.3 本章小結(jié)</b></p><p> 本章主要通過對VB與串口通信之間所用到功能介紹,其中對MSComm控件的應(yīng)用及相應(yīng)的屬性進(jìn)行了闡述,關(guān)鍵就是RS-232通信的管腳應(yīng)用,其次本次設(shè)計(jì)的電壓采集通信協(xié)議及相應(yīng)的數(shù)據(jù)解析作為本章的重點(diǎn)概述。</p><p><b>
71、 組態(tài)王中監(jiān)控設(shè)計(jì)</b></p><p> 組態(tài)王軟件作為一種優(yōu)秀的上位機(jī)監(jiān)控軟件,在許多領(lǐng)域的遠(yuǎn)程監(jiān)控中都得到了廣泛的應(yīng)用。然而,組態(tài)王為數(shù)據(jù)采集和控制提供的大量底層設(shè)備驅(qū)動(dòng)程序,主要是針對較大規(guī)模廠商的板卡和模塊,對于較小規(guī)模廠商開發(fā)的各種儀表及用戶自己設(shè)計(jì)的板卡,卻沒有現(xiàn)成的驅(qū)動(dòng)程序提供。因此,利用組態(tài)王與儀表及用戶自己設(shè)計(jì)的板卡進(jìn)行通信時(shí),往往需要用戶自己開發(fā)底層的驅(qū)動(dòng)程序,給用戶的使用
72、帶來了諸多的不便。為了解決上述問題,組態(tài)王專門提供了一種DDE技術(shù),能夠使用戶方便地實(shí)現(xiàn)組態(tài)王與其它支持動(dòng)態(tài)數(shù)據(jù)交換的應(yīng)用程序進(jìn)行數(shù)據(jù)交換。</p><p> 3.1 VB與DDE數(shù)據(jù)交換</p><p> 1、VB應(yīng)用程序從組態(tài)王中獲得數(shù)據(jù)(1)創(chuàng)建VB應(yīng)用程序。創(chuàng)建標(biāo)準(zhǔn)EXE程序(工程名為VBDDE),窗體名為“VBDome”(DDE服務(wù)的話題名)。如圖3.1</p>
73、<p> 圖3.1創(chuàng)建標(biāo)準(zhǔn)EXE程序</p><p> ?。?)在VB應(yīng)用程序中建立與組態(tài)王變量的DDE連接如圖3.2,在VB窗體里加一個(gè)“Label”控件(將其命名為VB2),在其屬性里設(shè)置與DDE相關(guān)的項(xiàng)目:設(shè)置LinkTopic的值為“view|tagname”(組態(tài)王默認(rèn)的服務(wù)名和應(yīng)用名,不可更改);設(shè)置LinkItem的值為“PLC.INCREA100”(組態(tài)王變量得寄存器地址,格式
74、為“連接設(shè)備名.寄存器名”);設(shè)置LinkMode的值為“1”(如組態(tài)王運(yùn)行系統(tǒng)未運(yùn)行,顯示錯(cuò)誤,參見第3步);設(shè)置LinkTimeout的值為“50”(為默認(rèn)值即可)。</p><p> 圖3.2建立與組態(tài)王變量的DDE連接</p><p> ?。?) VB應(yīng)用程序啟動(dòng)時(shí)設(shè)置連接模式為自動(dòng)(VB2.LinkMode=1)。如圖3.3。單擊窗體(Foem),彈出代碼編輯框,選擇For
75、m的Load屬性。鍵入“VB2.LinkMode=1”。編譯本工程。</p><p> 圖3.3設(shè)置連接模式</p><p> (4)運(yùn)行組態(tài)王的運(yùn)行系統(tǒng)(加載本演示工程),運(yùn)行生成的VB運(yùn)行程序。Vb應(yīng)用程序即可通過DDE方式得到組態(tài)王變量“B”的實(shí)時(shí)數(shù)據(jù),并顯示其值在當(dāng)前的窗口。2、組態(tài)王從VB應(yīng)用程序中獲得數(shù)據(jù)(1)利用上述創(chuàng)建的VB應(yīng)用程序,在菜單條選擇“VBDDE屬性”,
76、彈出如下窗口(如圖3.4)。選擇生成屬性框,在應(yīng)用程序的標(biāo)題中鍵入“VBDDE”(DDE服務(wù)程序名)。</p><p><b> 圖3.4屬性選擇</b></p><p> ?。?)在窗體里添加TextBox控件(命名為VB1,將作為DDE服務(wù)的項(xiàng)目名),如圖3.5。選擇代碼編輯窗口,選擇Form的MouseMove事件,鍵入如下語句“ VB1.Text = Int
77、(VB2.Caption)+1”。</p><p> 圖3.5窗體控件添加</p><p> ?。?)設(shè)置VBDDE程序?yàn)镈DE發(fā)布端。設(shè)置窗體屬性的DDE屬性,如圖3.6。設(shè)置LinkMode的值為“1”(表示應(yīng)用程序?yàn)镈DE的發(fā)布端);設(shè)置LinkTopic的值為“VBDome”((DDE話題名)。設(shè)置完成并確認(rèn)無誤后即可編譯生成應(yīng)用程序文件。</p><p
78、> 圖3.6窗體屬性設(shè)置</p><p> ?。?)在組態(tài)王建立IO變量,并以前面所創(chuàng)建的VB用程序作為數(shù)據(jù)源。添加DDE設(shè)備的方法同前(定義的DDE設(shè)備名為VBDDE),DDE的應(yīng)用程序名和話題名為前面設(shè)置的名稱,即應(yīng)用程序名為“VBDDE”,話題名為“VBDome”。(5)在組態(tài)王建立變量“VB2”(如圖3.7),連接設(shè)備為“VBDDE”,項(xiàng)目名為“VB1”(即為VB程序TexTBox控件的名稱)。
79、</p><p> 圖3.7組態(tài)王中建立變量</p><p> ?。?) 在畫面里建立與變量“VB2”的動(dòng)畫連接。(7)運(yùn)行組態(tài)王的運(yùn)行系統(tǒng)(加載演示本演示工程),運(yùn)行前面建立的VB應(yīng)用程序(組態(tài)王畫面的點(diǎn)“VB2”的值不變化,選擇菜單中的特殊“a”重新建立DDE連接即可)。如圖3.8。本例VB應(yīng)用程序獲得組態(tài)王變量“B”的數(shù)值并將此數(shù)值返回到組態(tài)王變量“VB2”中并在畫面顯示此值。&
80、lt;/p><p> 圖3.8建立DDE連接</p><p> 3.2 Kingview設(shè)計(jì)步驟</p><p> 3.2.1 建立工程項(xiàng)目運(yùn)行組態(tài)王程序,出現(xiàn)組態(tài)王工程管理器畫面,如圖3.9</p><p> 組態(tài)王工程管理器的主要作用就是為用戶集中管理本機(jī)上的所有組態(tài)王工程。主要功能包括:新建、刪除工程,搜索指定路徑下的所有組態(tài)王工
81、程,對工程重命名,修改工程屬性,工程的備份、恢復(fù),數(shù)據(jù)詞典的導(dǎo)入導(dǎo)出,切換到組態(tài)王開發(fā)或運(yùn)行環(huán)境等。</p><p> 在組態(tài)王中,設(shè)計(jì)者開發(fā)的每個(gè)應(yīng)用系統(tǒng)稱為一個(gè)工程,每個(gè)工程必須在一個(gè)獨(dú)立的目錄中,不同的工程不能共用一個(gè)目錄。工程目錄也稱為工程路徑。在每個(gè)工程路徑下,組態(tài)王為此項(xiàng)目生成了一些重要的數(shù)據(jù)文件,這些數(shù)據(jù)文件一般是不允許修改的。我們每建立一個(gè)新的應(yīng)用程序是,都必須先為這個(gè)應(yīng)用程序指定工程路徑,以便
82、組態(tài)王根據(jù)工程路徑對不同的應(yīng)用程序分別進(jìn)行不同的自動(dòng)管理。</p><p> 圖3.9組態(tài)王工程管理器</p><p> 為建立一個(gè)新工程,有一下操作。</p><p> 在工程管理器中選擇菜單“文件\新建工程”或單擊快捷工具欄“新建”命令,出現(xiàn)“新建工程向?qū)е粴g迎使用本向?qū)А睂υ捒颉?lt;/p><p> 單擊“下一步”按鈕出現(xiàn)“新建
83、工程向?qū)еx擇工程所在路徑”對話框。選擇或指定工程所在路徑。</p><p> 單擊“下一步”按鈕出現(xiàn)“新建工程向?qū)еこ堂Q和描述”對話框。在對話框中輸入工程名稱:蓄電池監(jiān)控界面。</p><p> 單擊“完成”按鈕,新工程建立,單擊“是”按鈕,確認(rèn)將新建的工程設(shè)置為組態(tài)王當(dāng)前工程,此時(shí)組態(tài)王工程管理器中出現(xiàn)新建的工程,如圖3.10.</p><p>
84、圖3.10新工程建立</p><p> 工程瀏覽器是組態(tài)王軟件的核心部分和管理開發(fā)系統(tǒng),它將畫面制作系統(tǒng)中國已設(shè)計(jì)的圖形畫面、命令語言、設(shè)備驅(qū)動(dòng)程序管理、配方管理、數(shù)據(jù)報(bào)告等工程資源進(jìn)行集中管理,并在一個(gè)窗口中進(jìn)行樹形結(jié)構(gòu)排列。</p><p> 在工程瀏覽器中可以查看工程的各個(gè)組成部分,可以完成數(shù)據(jù)庫的構(gòu)造和定義外部設(shè)備等。</p><p> 3.2.2 制
85、作圖形畫面</p><p> 畫面開發(fā)系統(tǒng)是應(yīng)用程序的集成開發(fā)環(huán)境,工程人員在這個(gè)環(huán)境里進(jìn)行系統(tǒng)開發(fā)。</p><p> 在工程瀏覽器左側(cè)樹形菜單中選擇“文件\畫面”,在右側(cè)視圖中雙擊“新建”圖標(biāo),出現(xiàn)“畫面屬性”對話框,輸入畫面名稱“蓄電池監(jiān)控畫面”,設(shè)置畫面位置、大小等,如圖3.11。然后單擊“確定”按鈕,進(jìn)入組態(tài)王畫面開發(fā)系統(tǒng),此時(shí)工具箱自動(dòng)加載,如圖3.12.</p>
86、;<p> 圖3.11“畫面屬性”對話框 圖3.12開發(fā)系統(tǒng)畫面</p><p> 組態(tài)王畫面開發(fā)系統(tǒng)是應(yīng)用程序的集成開發(fā)環(huán)境。工作人員在這個(gè)環(huán)境中完成界面的設(shè)計(jì)、動(dòng)畫連接等工作。畫面開發(fā)系統(tǒng)首先具有先進(jìn)完善的圖形生成功能;數(shù)據(jù)庫中有多種數(shù)據(jù)類型,能合理地抽象控制對象的特性,對數(shù)據(jù)的報(bào)警、趨勢曲線、過程記錄、安全防范等重要功能有簡單的操作辦法。利用組態(tài)王豐富
87、的圖庫,用戶可以大大減少設(shè)計(jì)界面的時(shí)間,從整體上提高工控軟件的質(zhì)量。</p><p> 3.2.3 定義變量</p><p> 定義變量在工程瀏覽器“數(shù)據(jù)詞典”中進(jìn)行。</p><p> 在工程瀏覽器的左側(cè)樹形菜單中選擇“數(shù)據(jù)庫\數(shù)據(jù)詞典”,在右側(cè)雙擊“新建”圖標(biāo),彈出“定義變量”對話框。</p><p> 定義一個(gè)內(nèi)存實(shí)數(shù)變量。&l
88、t;/p><p> 變量名設(shè)為A組1#電壓,變量類型選內(nèi)存實(shí)數(shù),初設(shè)值為0,最小值設(shè)為0,最大值設(shè)為100,如圖3.13。</p><p> 定義完成后,單擊“確定”按鈕,則在數(shù)據(jù)詞典中增加1個(gè)內(nèi)存實(shí)數(shù)變量A組1#電壓。</p><p> 圖3.13定義內(nèi)存實(shí)數(shù)變量</p><p> 3.2.4 動(dòng)畫連接</p><p
89、> 在組態(tài)王開發(fā)系統(tǒng)中制作的畫面都是靜態(tài)的,那么它們?nèi)绾尾拍芊从彻I(yè)現(xiàn)場的狀況呢?這就需要通過實(shí)時(shí)數(shù)據(jù)庫,因?yàn)橹挥袛?shù)據(jù)庫中的變量才是與現(xiàn)場狀況同步變化的。數(shù)據(jù)庫變量的變化又如何導(dǎo)致畫面的動(dòng)畫效果呢?通過“動(dòng)畫連接”——所謂“動(dòng)畫連接”就是建立畫面的圖素與數(shù)據(jù)庫變量的對應(yīng)關(guān)系。這樣,工業(yè)現(xiàn)場的數(shù)據(jù),比如溫度、液面高度等,當(dāng)它們發(fā)生變化時(shí),通過I/O接口,將引起實(shí)時(shí)數(shù)據(jù)庫中變量的變化,如果設(shè)計(jì)者曾經(jīng)定義了一個(gè)畫面圖素——比如指針與這
90、個(gè)變量相關(guān),我們將會(huì)看到指針在同步偏轉(zhuǎn)。 </p><p> 動(dòng)畫連接的引入是設(shè)計(jì)人機(jī)接口的一次突破,它把工程人員從重復(fù)的圖形編程中解放出來,為工程人員提供了標(biāo)準(zhǔn)的工業(yè)控制圖形界面,并且有可編程的命令語言連接來增強(qiáng)圖形界面的功能。圖形對象與變量之間有豐富的連接類型,給工程人員設(shè)計(jì)圖形界面提供了極大的方便。“組態(tài)王”系統(tǒng)還為部分動(dòng)畫連接的圖形對象設(shè)置了訪問權(quán)限,這對于保障系統(tǒng)的安全具有重要的意義。 </p&
91、gt;<p> 圖形對象可以按動(dòng)畫連接的要求改變顏色、尺寸、位置、填充百分?jǐn)?shù)等,一個(gè)圖形對象又可以同時(shí)定義多個(gè)連接。把這些動(dòng)畫連接組合起來,應(yīng)用程序?qū)⒊尸F(xiàn)出令人難以想象的圖形動(dòng)畫效果。 </p><p> 給圖形對象定義動(dòng)畫連接是在“動(dòng)畫連接” 對話框中進(jìn)行的。在組態(tài)王開發(fā)系統(tǒng)中雙擊圖形對象(不能有多個(gè)圖形對象同時(shí)被選中),彈出動(dòng)畫連接對話框。如圖3.14和3.15。</p>&l
92、t;p> 圖3.14文本對象動(dòng)畫連接設(shè)置</p><p> 圖3.15按鈕對象動(dòng)畫連接設(shè)置</p><p> 畫面設(shè)計(jì)完成后,在開發(fā)系統(tǒng)“文件”菜單中執(zhí)行“全部存”命令將設(shè)計(jì)畫面和程序全部存儲(chǔ)。</p><p><b> 3.3 畫面制作</b></p><p> 進(jìn)入組態(tài)王開發(fā)系統(tǒng)后,就可以為每個(gè)工程建
93、立數(shù)目不限的畫面,在每個(gè)畫面上生成互相關(guān)聯(lián)的靜態(tài)或動(dòng)態(tài)圖形對象。這些畫面都是由“組態(tài)王”提供的類型豐富的圖形對象組成的。系統(tǒng)為用戶提供了矩形(圓角矩形)、直線、橢圓(圓)、扇形(圓弧)、點(diǎn)位圖、多邊形(多邊線)、文本等基本圖形對象,以及按鈕、趨勢曲線窗口、報(bào)警窗口、報(bào)表等復(fù)雜的圖形對象。提供了對圖形對象在窗口內(nèi)任意移動(dòng)、縮放、改變形狀、復(fù)制、刪除、對齊等編輯操作,全面支持鍵盤、鼠標(biāo)繪圖,并可提供對圖形對象的顏色、線型、填充屬性進(jìn)行改變的
94、操作工具。本次設(shè)計(jì)主要有作者畫面、監(jiān)控畫面、報(bào)表畫面、曲線畫面的制作。</p><p> “組態(tài)王”采用面向?qū)ο蟮木幊碳夹g(shù),使用戶可以方便地建立畫面的圖形界面。用戶構(gòu)圖時(shí)可以像搭積木那樣利用系統(tǒng)提供的圖形對象完成畫面的生成。同時(shí)支持畫面之間的圖形對象拷貝,可重復(fù)使用以前的開發(fā)結(jié)果。</p><p> 3.3.1 作者封面</p><p> 進(jìn)入新建的組態(tài)王工程
95、,選擇工程瀏覽器左側(cè)大綱項(xiàng)“文件\畫面”,在工程瀏覽器右側(cè)用鼠標(biāo)左鍵雙擊“作者封面”圖標(biāo),主要是本人的基本信息介紹,如圖3.16。</p><p><b> 圖3.16作者封面</b></p><p> 3.3.2 監(jiān)控畫面</p><p> 進(jìn)入新建的組態(tài)王工程,選擇工程瀏覽器左側(cè)大綱項(xiàng)“文件\畫面”,在工程瀏覽器右側(cè)用鼠標(biāo)左鍵雙擊“監(jiān)
96、控畫面”圖標(biāo)即可進(jìn)入,主要涉及各組電池模塊及相應(yīng)畫面切換按鈕如圖3.17。</p><p><b> 圖3.17監(jiān)控畫面</b></p><p> 3.3.3 報(bào)表畫面</p><p> 數(shù)據(jù)報(bào)表是反應(yīng)生產(chǎn)過程中的數(shù)據(jù)、狀態(tài)等,并對數(shù)據(jù)進(jìn)行記錄的一種重要形式。是生產(chǎn)過程必不可少的一個(gè)部分。它既能反映系統(tǒng)實(shí)時(shí)的生產(chǎn)情況,也能對長期的生產(chǎn)過程
97、進(jìn)行統(tǒng)計(jì)、分析,使管理人員能夠?qū)崟r(shí)掌握和分析生產(chǎn)情況。 </p><p> 組態(tài)王提供內(nèi)嵌式報(bào)表系統(tǒng),工程人員可以任意設(shè)置報(bào)表格式,對報(bào)表進(jìn)行組態(tài)。組態(tài)王為工程人員提供了豐富的報(bào)表函數(shù),實(shí)現(xiàn)各種運(yùn)算、數(shù)據(jù)轉(zhuǎn)換、統(tǒng)計(jì)分析、報(bào)表打印等。既可以制作實(shí)時(shí)報(bào)表,也可以制作歷史報(bào)表。另外,工程人員還可以制作各種報(bào)表模板,實(shí)現(xiàn)多次使用,以免重復(fù)工作。 </p><p> 在組態(tài)王工具箱按鈕中,用鼠標(biāo)
98、左鍵單擊“報(bào)表窗口”按鈕,此時(shí),鼠標(biāo)箭頭變?yōu)樾 ?”字形,在畫面上需要加入報(bào)表的位置按下鼠標(biāo)左鍵,并拖動(dòng),畫出一個(gè)矩形,這個(gè)矩形就是創(chuàng)建后的報(bào)表窗口。鼠標(biāo)箭頭移動(dòng)到報(bào)表區(qū)域周邊,當(dāng)鼠標(biāo)形狀變?yōu)殡p“+”字箭頭時(shí),按下左鍵,可以拖動(dòng)表格,移動(dòng)其位置。 </p><p> 用鼠標(biāo)雙擊報(bào)表窗口的灰色部分(表格單元格區(qū)域外沒有單元格的部分),彈出“報(bào)表設(shè)計(jì)”對話框,該對話框主要設(shè)置報(bào)表的名稱、報(bào)表表格的行列數(shù)目以及選擇套
99、用表格的樣式。如圖3.18</p><p><b> 圖3.18報(bào)表畫面</b></p><p> 3.3.4 組態(tài)王信息窗口</p><p> “組態(tài)王信息窗口”是一個(gè)獨(dú)立的Windows應(yīng)用程序,用來記錄、顯示組態(tài)王開發(fā)和運(yùn)行系統(tǒng)在運(yùn)行時(shí)的狀態(tài)信息。信息窗口中顯示的信息可以作為一個(gè)文件存于指定的目錄中或是用打印機(jī)打印出來,供用戶查閱。
100、當(dāng)工程瀏覽器、TouchVew等啟動(dòng)時(shí),一般會(huì)自動(dòng)啟動(dòng)信息窗口。 </p><p> 信息窗口中可以顯示的信息有: </p><p> “組態(tài)王”系統(tǒng)的啟動(dòng)、關(guān)閉、運(yùn)行模式; </p><p> 歷史記錄的啟動(dòng)、關(guān)閉; </p><p> I/O設(shè)備的啟動(dòng)、關(guān)閉; </p><p><b> 網(wǎng)絡(luò)連
101、接的狀態(tài); </b></p><p> 與設(shè)備連接的狀態(tài); </p><p> 命令語言中函數(shù)未執(zhí)行成功的出錯(cuò)信息。 </p><p> 如果選擇了運(yùn)行系統(tǒng)“調(diào)試”菜單下的“讀成功”、“讀失敗”、“寫成功”、“寫失敗”等項(xiàng),則I/O設(shè)備讀取設(shè)備上的數(shù)據(jù)是否成功的信息會(huì)在信息窗口中顯示出來。 </p><p> 組態(tài)王的信息
102、窗口如下所示圖3.19。</p><p> 圖3.19組態(tài)王信息窗口</p><p><b> 3.4 本章小結(jié)</b></p><p> 本章通過對蓄電池單體電壓監(jiān)控系統(tǒng)在組態(tài)王中的設(shè)計(jì)作出全面的概述。各種界面的設(shè)計(jì)及在畫面中的定義變量、動(dòng)畫連接及系統(tǒng)運(yùn)行等一一作闡述,以及在設(shè)計(jì)中遇到問題的處理方法。</p><p&
103、gt;<b> 系統(tǒng)設(shè)計(jì)及運(yùn)行結(jié)果</b></p><p> 4.1 系統(tǒng)的工作原理</p><p> 該系統(tǒng)主要通過VB從蓄電池組中將數(shù)據(jù)通過RS-232接受,再通過VB中的通信控件及相應(yīng)的程序?qū)邮盏降臄?shù)據(jù)進(jìn)行解析、存儲(chǔ)等步驟,并由組態(tài)王中具有強(qiáng)大功能的DDE進(jìn)行數(shù)據(jù)分析、采集,再送給上位機(jī)監(jiān)控。其組態(tài)王與蓄電池單體電壓的通信原理如圖4.1所示。由圖4.1可
104、以看出,該系統(tǒng)的通信包括兩部分:組態(tài)王與VB程序的DDE通信;VB程序通過RS-232與蓄電池單體電壓的通信。</p><p> 圖4.1系統(tǒng)通信原理圖</p><p> 4.2 VB接受和發(fā)送數(shù)據(jù)</p><p> 寫相應(yīng)窗體及程序、運(yùn)行結(jié)果</p><p> 4.3 組態(tài)王中的畫面運(yùn)行</p><p>&l
105、t;b> 相應(yīng)的運(yùn)行圖片</b></p><p><b> 4.4 本章小結(jié)</b></p><p><b> 結(jié)論</b></p><p> 蓄電池單體電池電壓監(jiān)控系統(tǒng)設(shè)計(jì)(監(jiān)控界面設(shè)計(jì))有著強(qiáng)大的功能,此系統(tǒng)下面又由五部分組成:VB程序、作者封面、監(jiān)控畫面、曲線畫面、報(bào)表畫面。每部分都經(jīng)過耐心
106、設(shè)計(jì),通過幾個(gè)月的時(shí)間下來,設(shè)計(jì)出了相關(guān)的監(jiān)控畫面以及編寫了軟件運(yùn)行的相關(guān)程序。VB程序主要是來對數(shù)據(jù)的接受和發(fā)送及其相應(yīng)的處理;作者封面是簡單的介紹設(shè)計(jì)者的相關(guān)信息及指導(dǎo)教師;監(jiān)控畫面就是這個(gè)系統(tǒng)的關(guān)鍵之處,對所有蓄電池組中的電壓實(shí)現(xiàn)在線監(jiān)控,可以隨時(shí)知道任何一塊電池在任何時(shí)間的相關(guān)參數(shù);曲線畫面對當(dāng)前運(yùn)行系統(tǒng)的實(shí)時(shí)反應(yīng),我們也可以的曲線的波動(dòng)來觀看蓄電池的性能;報(bào)表畫面是對任何時(shí)刻的數(shù)據(jù)記錄,將其所有監(jiān)控中數(shù)據(jù)統(tǒng)計(jì),可以打印成表格,
107、便于我們觀看和記錄,每一塊都起到不同的作用,只有在相互配合下才使得系統(tǒng)更加完善。</p><p> 綜上所述,系統(tǒng)的各個(gè)部分都能很好的運(yùn)作,這就保證了整個(gè)系統(tǒng)的可操作性和可實(shí)施性?;具_(dá)到了預(yù)期的設(shè)計(jì)要求和目的,同時(shí)也改善了以往的人工現(xiàn)場檢測。但系統(tǒng)也存在一定的問題,技術(shù)還不是很成熟。但我相信通過對系統(tǒng)的整體認(rèn)識(shí)與修正,不斷的去鉆研此系統(tǒng)還能能更好的發(fā)揮它的功能,在增加各種畫面及曲線的在線檢測,在對電阻及溫度的
108、監(jiān)控設(shè)計(jì)及時(shí)一套更加完善的系統(tǒng),來為我們解決常見實(shí)際問題。</p><p><b> 總結(jié)和體會(huì)</b></p><p> 對于本次的畢業(yè)設(shè)計(jì),我從中學(xué)到了很多東西。一定程度上,我在解決問題的能力比以前提高了許多,思考能力也得到了很大的提高,在設(shè)計(jì)中的思路也比以前清晰許多,知道做一個(gè)設(shè)計(jì)要從哪些方面入手和準(zhǔn)備相應(yīng)的資料。還記得第一次跟導(dǎo)師見面的時(shí)候,首先確認(rèn)自己的
109、畢業(yè)設(shè)計(jì)題目,當(dāng)時(shí)很迷茫,心里空空的,不知道從哪入手。對自己的設(shè)計(jì)什么都不知道,心里完全沒底,經(jīng)過一個(gè)星期的查閱資料和老師整體思路的講解,對其才有了一定了解。接下來的這段日子可以說是我收獲最大的時(shí)期,就靜下心來好好的設(shè)計(jì)。在遇到不懂的地方就像導(dǎo)師求解,從交流的過程中我意識(shí)到了還有很多不足的地方。經(jīng)過導(dǎo)師的指導(dǎo)我對各方面進(jìn)行了改進(jìn),這樣使得我的設(shè)計(jì)變得更加優(yōu)越,通過無數(shù)次的琢磨我的設(shè)計(jì)終于成型了,設(shè)計(jì)也基本達(dá)到了預(yù)期的目的與要求。<
110、/p><p> 接著,就進(jìn)入到了寫論文的階段了。設(shè)計(jì)好界面監(jiān)控系統(tǒng)只是畢業(yè)設(shè)計(jì)的一部分,更重要的是要用論文來闡述設(shè)計(jì)的內(nèi)容。雖然以前也寫過一些小報(bào)告,但跟這次比起來有點(diǎn)小巫見大巫,分量不夠。經(jīng)過好長時(shí)間的準(zhǔn)備,基本上弄出了論文的大綱,可在接下來的書寫論文的時(shí)候還是遇到了好多問題不能解決,老是把握不住大體方向,老跑題了。好在有導(dǎo)師的指引,給我了很大的幫助,我最終完成了這篇論文。</p><p>
111、; 總之,做任何一件事都要用心去體會(huì),沒有做不了的事。只要努力了,不斷的去鍛煉自己,過程中總會(huì)有失敗但也要不怕,最終成功會(huì)到來的。</p><p><b> 謝辭</b></p><p> 每個(gè)人在做每件事的時(shí)候都會(huì)遇到這樣或者那樣的困難,都需要大家的幫忙。正如此次的畢業(yè)設(shè)計(jì),我遇到了很多的問題和困難,當(dāng)時(shí)都解決不了,之后在老師和同學(xué)的幫助下順利的完成了。論文擱
溫馨提示
- 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. 眾賞文庫僅提供信息存儲(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 風(fēng)光對蓄電池設(shè)計(jì)畢業(yè)論文
- 單體電動(dòng)車蓄電池管理系統(tǒng)
- 蓄電池智能檢測系統(tǒng)設(shè)計(jì)-畢業(yè)設(shè)計(jì)論文
- 汽車蓄電池充電器畢業(yè)論文
- 單體電動(dòng)車蓄電池管理系統(tǒng).pdf
- 地鐵車輛蓄電池監(jiān)控系統(tǒng)的應(yīng)用(論文原稿)
- 蓄電池監(jiān)控系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn).pdf
- 蓄電池監(jiān)控實(shí)施方案
- 畢業(yè)論文--廢舊蓄電池的再生利用
- 直流屏蓄電池檢測系統(tǒng)設(shè)計(jì)-畢業(yè)設(shè)計(jì)論文
- FTU蓄電池在線監(jiān)控系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 蓄電池在線監(jiān)控系統(tǒng)的研究.pdf
- 蓄電池單體活化儀的操作步驟
- 智能燃料電池蓄電池混合動(dòng)力應(yīng)急電源系統(tǒng)畢業(yè)論文外文翻譯
- 蓄電池智能檢測系統(tǒng)設(shè)計(jì)
- 城軌車輛蓄電池的檢修與維護(hù)_畢業(yè)論文
- 城軌車輛蓄電池的檢修與維護(hù)_畢業(yè)論文
- 蓄電池教學(xué)設(shè)計(jì)
- 電動(dòng)車車速與蓄電池溫度檢測系統(tǒng)畢業(yè)論文
- 基于內(nèi)阻測量法的蓄電池狀態(tài)監(jiān)測系統(tǒng)設(shè)計(jì)【畢業(yè)論文】
評論
0/150
提交評論