版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 摘 要</b></p><p> 基于VB的瀝青浸漬程序是針對(duì)瀝青浸漬工業(yè)現(xiàn)場(chǎng)的軟件編程,它可以有效地對(duì)工業(yè)現(xiàn)場(chǎng)中的各個(gè)物理量進(jìn)行監(jiān)視和控制,實(shí)現(xiàn)PLC與計(jì)算機(jī)之間的串口通信,使整個(gè)工業(yè)過程能合理有序的工作。為了使調(diào)度人員使用方便,系統(tǒng)全部采用視窗操作,可在主工藝窗體、浸漬瀝青加熱窗體、浸漬瀝青冷卻窗體、實(shí)時(shí)報(bào)警窗體、歷史報(bào)警窗體、實(shí)時(shí)曲線窗體、歷史曲線窗體、
2、實(shí)時(shí)數(shù)據(jù)窗體之間切換。此系統(tǒng)結(jié)構(gòu)緊湊,便于維護(hù)。</p><p> 本次畢業(yè)設(shè)計(jì)實(shí)現(xiàn)以下幾項(xiàng)功能:</p><p> 1.模擬瀝青浸漬工業(yè)現(xiàn)場(chǎng)的工業(yè)環(huán)境,對(duì)實(shí)時(shí)物理量進(jìn)行監(jiān)控,確保工業(yè)過程正常進(jìn)行。</p><p> 2.系統(tǒng)具有自診斷功能.當(dāng)數(shù)據(jù)出現(xiàn)異常時(shí),浸漬工藝界面會(huì)有動(dòng)畫效果,可進(jìn)行報(bào)警顯示,此時(shí)瀝青會(huì)呈現(xiàn)紅色狀,來提醒工作人員采取緊急措施,避免事故的
3、發(fā)生。</p><p> 3.可隨時(shí)查詢工業(yè)過程中實(shí)時(shí)數(shù)據(jù)或者歷史數(shù)據(jù),系統(tǒng)能自動(dòng)保存歷史數(shù)據(jù)到硬盤。</p><p> 利用VB串口通訊功能,建立了個(gè)站點(diǎn)數(shù)據(jù)監(jiān)測(cè)主機(jī)與現(xiàn)場(chǎng)數(shù)據(jù)采集上位PLC之間的數(shù)據(jù)通訊。利用VB自身提供的MSComm控件實(shí)現(xiàn)串口通訊功能,MSComm控件提供了兩種控制串口的方法,事件驅(qū)動(dòng)方式和查詢方式。本系統(tǒng)客戶端的串口通訊采用的是查詢方式。</p>
4、<p> 關(guān)鍵字:VB;動(dòng)畫;界面效果;串口通信</p><p><b> Abstract</b></p><p> VB-based asphalt impregnation procedures is the scene for the asphalt impregnated industrial software programming. I
5、t can effectively monitor and control the various physical quantities in the industrial field, the serial communication between the PLC and the computer, so that the entire industrial process to a reasonable and orderly
6、work. To make the dispatchers easy to use, the system used in all Windows operation, in the main process form, impregnated with asphalt heated form, impregnated wit</p><p> The graduation project is to achi
7、eve the following functions:</p><p> 1.The industrial scene of simulated asphalt impregnated industrial environments, real-time physical monitoring to ensure the normal conduct of industrial processes.</
8、p><p> 2.System has a self-diagnostic function. Data exception occurs, the impregnation process interface will be animation, alarm display, the asphalt will show the red-like, to remind staff to take urgent me
9、asures to avoid accidents.</p><p> 3. Can always check the real-time data or historical data in the industrial process, the system can automatically save the historical data to the hard disk.</p><
10、;p> VB serial communication functions, the establishment of site data monitoring host and field data collection data communication between the host PLC. VB itself MSComm control serial communication functions, the MS
11、Comm control provides two serial, event-driven mode and query mode. Client serial communication is used in the query.</p><p> Keyword: VB; Animation;Interface Effect; Serial Communication</p><p&g
12、t;<b> 目錄</b></p><p><b> 1 緒論1</b></p><p> 1.1 課題研究背景及意義、目的1</p><p> 1.2 國(guó)內(nèi)外研究現(xiàn)狀1</p><p> 1.2.1 國(guó)內(nèi)現(xiàn)狀1</p><p> 1.2.2 國(guó)外現(xiàn)狀2
13、</p><p> 1.3 論文的主要研究工作2</p><p> 2 瀝青浸漬設(shè)計(jì)的依據(jù)和理論基礎(chǔ)4</p><p> 2.1 瀝青浸漬工藝4</p><p> 2.1.1 瀝青浸漬原理4</p><p> 2.1.2 技術(shù)改善措施5</p><p> 2.2 計(jì)算機(jī)程序
14、設(shè)計(jì)7</p><p> 2.2.1 VB簡(jiǎn)介7</p><p> 2.2.2 串口通訊的實(shí)現(xiàn)11</p><p> 3 瀝青浸漬程序總體設(shè)計(jì)15</p><p> 3.1 軟件系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)15</p><p> 3.2 主模塊系統(tǒng)流程圖16</p><p> 3.3
15、 數(shù)據(jù)顯示流程圖16</p><p> 4 系統(tǒng)軟件的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)19</p><p> 4.1程序主模塊設(shè)計(jì)19</p><p> 4.1.1 主模塊內(nèi)容19</p><p> 4.1.2 結(jié)果分析及主要程序代碼19</p><p> 4.2 數(shù)據(jù)串口通信設(shè)計(jì)29</p><
16、;p> 4.2.1 通信原理與方法29</p><p> 4.2.2 PLC與計(jì)算機(jī)間的通信規(guī)約30</p><p> 4.2.3 主要程序代碼31</p><p> 4.3 數(shù)據(jù)顯示設(shè)計(jì)32</p><p> 4.3.1數(shù)據(jù)顯示界面設(shè)計(jì)結(jié)果及分析32</p><p> 4.3.2 主要程序
17、代碼37</p><p><b> 5 結(jié)論39</b></p><p><b> 致 謝40</b></p><p><b> 參考文獻(xiàn)41</b></p><p> 附錄A 英文原文43</p><p> 附錄B 漢語翻譯51&
18、lt;/p><p><b> 1 緒論</b></p><p> 1.1 課題研究背景及意義、目的</p><p> 隨著科學(xué)技術(shù)的進(jìn)一步發(fā)展,電碳制品廣泛應(yīng)用于機(jī)械、電力:電子、冶金、石油、化工、航空、航天、核能及生物工程等部門,對(duì)電碳制品性能提出了更高的要求。其中浸漬瀝青在電碳制品中占據(jù)重要的地位。</p><p>
19、; 特性浸漬瀝青的特性對(duì)浸漬效果有重要的影響,浸漬瀝青的特性主要指以下7個(gè)方面:(1)體積密度;(2)黏度;(3)表面張力;(4)浸漬劑對(duì)多孔材料表面界面上的潤(rùn)濕性;(5)浸漬劑中喹啉不溶物含量;(6)浸漬劑在加熱狀態(tài)下的化學(xué)變化;(7)結(jié)焦值,其中對(duì)多孔材料滲透效果影響最大的是浸漬瀝青的黏度和喹啉不溶物的含量。浸漬劑的黏度是一個(gè)很重要的工藝因素,黏度既受浸漬劑本身性質(zhì)的影響,又與加熱溫度的高低成反比。浸漬瀝青軟化點(diǎn)越高,相對(duì)黏度就越
20、大,難于滲透到炭素制品的孔隙中去;為提高浸漬效果,一般使用軟化點(diǎn)較低的煤瀝青(軟瀝青),或在中溫瀝青中加入一定量的蒽油或煤焦油以降低其軟化點(diǎn)和黏度。中國(guó)炭素企業(yè)浸漬用煤瀝青的軟化點(diǎn)一般為65-85℃(環(huán)球法),浸漬前先將浸漬劑加熱到160~180℃,在這樣的溫度下,中溫煤瀝青的黏度急劇下降,在先抽真空、后加壓力的作用下,比較容易滲透到炭素制品的孔隙中去。煤瀝青中的喹啉不溶物是一種微小的顆粒,浸漬時(shí)喹啉不溶物在多孔材料表面形成一層薄膜,阻
21、礙浸漬劑對(duì)多孔材料的滲透,因此浸漬用煤瀝青最好進(jìn)行加工處理,以降低煤瀝青中喹啉不溶物的含量。結(jié)焦值對(duì)提高多孔材料的體積密度和機(jī)</p><p> 1.2 國(guó)內(nèi)外研究現(xiàn)狀</p><p> 1.2.1 國(guó)內(nèi)現(xiàn)狀</p><p> 煤瀝青浸漬劑20世紀(jì)80年代以前生產(chǎn)炭素制品,黏結(jié)劑與浸漬劑大多都使用同一種煤瀝青,只是用于浸漬的煤瀝青軟化點(diǎn)較低。煤瀝青中的喹啉不溶
22、物含量一般在4%~12%之間,一些國(guó)家采用特制的喹啉不溶物含量低于0.5%的煤瀝青作為浸漬劑。</p><p> 在浸漬氣孔孔徑很小的高密度炭素制品時(shí),浸漬劑的分子量大小對(duì)浸漬效果有明顯的影響,石油瀝青中各組分的平均分子量較煤瀝青小,采用專門加工的石油瀝青為浸漬劑時(shí),浸漬效果優(yōu)于煤瀝青。石油瀝青的致癌作用較弱,因此使用石油瀝青為浸漬劑時(shí)對(duì)操作者的身體健康和環(huán)境保護(hù)有利。</p><p>
23、 樹脂浸漬劑生產(chǎn)氣冷核反應(yīng)堆所需的某些型號(hào)的低滲透核石墨,曾經(jīng)使用過合成樹脂為浸漬劑,合成樹脂炭化時(shí)不經(jīng)過液相階段,直接在孔隙中形成焦炭,結(jié)焦值遠(yuǎn)高于中溫煤瀝青,而煤瀝青炭化時(shí)經(jīng)過液相階段,在孔隙壁生成焦炭,結(jié)果還是留下一定尺寸的孔隙,因此使用合成樹脂浸漬后,降低滲透率的效果優(yōu)于煤瀝青。石墨化工設(shè)備使用合成樹脂進(jìn)行浸漬,目的是堵塞石墨基體的孔隙,達(dá)到不為氣態(tài)或液態(tài)產(chǎn)品滲透,為此浸漬后要在適當(dāng)?shù)臏囟认率箻渲袒?,而不需要高溫炭化,這一點(diǎn)
24、與石墨電極的浸漬目的不完全相同[4]。</p><p> 1.2.2 國(guó)外現(xiàn)狀</p><p> 20世紀(jì)70年代以前,炭材料生產(chǎn)采用的粘結(jié)劑和浸漬劑都采用煤瀝青,只是用于浸漬的煤瀝青要求軟化點(diǎn)低。20世紀(jì)70年代以后,國(guó)外炭材料生產(chǎn)企業(yè)普遍采用特制的低QI含量的浸漬劑瀝青進(jìn)行高壓浸漬處理。美國(guó)采用專門加工的石油瀝青作炭材料浸漬劑瀝青,其QI含量低于3.5%,軟化點(diǎn)為90~94℃,殘?zhí)?/p>
25、為48%~52%,并非所有的石油瀝青都能作為合適的炭材料浸漬劑,但石油瀝青和煤瀝青相似,雖然其炭化收率較后者低,但其組成中有害物質(zhì)較少,對(duì)環(huán)境污染小,故開發(fā)和研制適合炭材料生產(chǎn)用的石油基瀝青浸漬劑也是未來的發(fā)展趨勢(shì)。浸漬劑瀝青在日本、美國(guó)等國(guó)家已實(shí)現(xiàn)工業(yè)化生產(chǎn)。</p><p> 1.3 論文的主要研究工作</p><p> 本課程設(shè)計(jì)研究的題目是基于VB的瀝青浸漬程序設(shè)計(jì),主要是對(duì)工
26、業(yè)過程進(jìn)行實(shí)時(shí)監(jiān)視和控制,包括主頁窗體,主工藝窗體,水冷系統(tǒng)窗體,加熱工藝窗體,歷史狀態(tài)窗體,歷史曲線窗體,歷史報(bào)警窗體,實(shí)時(shí)曲線窗體,實(shí)時(shí)報(bào)警窗體,實(shí)時(shí)數(shù)據(jù)窗體以及備用窗體。程序可實(shí)現(xiàn)以下功能:</p><p> 1、軟件保護(hù)功能:該軟件總共有2套密碼,不僅可以保護(hù)軟件不會(huì)意外關(guān)閉,也對(duì)數(shù)據(jù)信息進(jìn)行保護(hù),防止工業(yè)過程發(fā)生異常。</p><p> 2、監(jiān)控功能:對(duì)瀝青浸漬工業(yè)過程進(jìn)行全
27、方位監(jiān)控,對(duì)多個(gè)關(guān)鍵物理量進(jìn)行數(shù)據(jù)采集,并及時(shí)反應(yīng)到操作界面上來。</p><p> 3、報(bào)表打印功能:可根據(jù)用戶需要進(jìn)行設(shè)定,定時(shí)打印數(shù)據(jù)報(bào)表。也可隨時(shí)對(duì)當(dāng)前數(shù)據(jù)進(jìn)行打印。</p><p> 4、歷史、報(bào)警數(shù)據(jù)存儲(chǔ)功能:系統(tǒng)自動(dòng)對(duì)瀝青浸漬運(yùn)行數(shù)據(jù)進(jìn)行存儲(chǔ)。報(bào)警數(shù)據(jù)被儲(chǔ)存于文本文件中,該軟件可對(duì)報(bào)警數(shù)據(jù)進(jìn)行自動(dòng)維護(hù)。</p><p> 2 瀝青浸漬設(shè)計(jì)的依據(jù)和
28、理論基礎(chǔ)</p><p> 2.1 瀝青浸漬工藝</p><p> 2.1.1 瀝青浸漬原理</p><p> 電碳制品是用粉末法制造的。經(jīng)過破碎、煅燒、磨粉制得韻碳粉與制備好的粘結(jié)劑(主要為中瀝青)進(jìn)行混捏、軋片、二次磨粉制成壓粉,再經(jīng)壓型、焙燒、石墨化和機(jī)械加工生產(chǎn)出多型號(hào)、多規(guī)格的電碳制品。 </p><p> 由于粉末顆粒不
29、可能達(dá)到理想的配合,顆粒之間不可避免的存柱孔隙。壓型坯在焙燒過程中由于所含瀝青發(fā)生揮發(fā)、熱解和碳化,瀝青重重又增加了孔隙。在2500~2800℃(石墨化過程中,夾在碳制品中的雜質(zhì)揮發(fā)逸出,又出現(xiàn)了孔隙殘留。以上三個(gè)原因,碳石墨制品氣孔率最高可達(dá)32%。</p><p> 焙燒坯浸漬瀝青再焙燒(通稱浸焙)是一種密實(shí)工藝,浸入焙燒坯氣孔中的瀝青經(jīng)過再焙燒,氣孔中就填充了瀝青焦化碳,從而降低了氣孔率和提高了體積密度。
30、增加浸焙次數(shù),碳制品越密實(shí)。下表所列數(shù)據(jù)可供參改:</p><p> 由于氣孔率中包含開口性氣孔和閉口性氣孔,浸焙只能密實(shí)開口性氣孔,對(duì)閉口性氣孔是無效的,過多的增加浸焙次數(shù),不但成本高,收效也受到限制。 </p><p> 采用浸焙密實(shí)工藝, 能有效地提高碳石墨制品體積密度,機(jī)械強(qiáng)度、導(dǎo)電率、導(dǎo)熱率、抗磨性、抗熱震性、抗氧化性、化學(xué)穩(wěn)定性,降低摩擦系數(shù)和對(duì) 氣
31、、液的滲透性,并使制品性能均一。 </p><p> 2.1.2 技術(shù)改善措施</p><p> 瀝青浸漬系統(tǒng)工藝過程為: </p><p><b> 1、提高真空度 </b></p><p> 實(shí)踐證明,浸漬前真空壓強(qiáng)越小,即真空度越高,浸人量越多,因?yàn)榕懦簾骺字械目諝猓皻庾琛?,有利于熔化瀝青的浸
32、人。浸潰過程中,施加氣壓,能降低熔化瀝青潤(rùn)滑角,能獲得提高浸人量的效果。提高真空度比過大加大氣壓效果更為顯著。根據(jù)《碳素生產(chǎn)安全衛(wèi)生規(guī)程》(GB15600─1995),浸漬罐加壓應(yīng)遵守以下規(guī)定:壓縮空氣加壓不得超過0.686MPa(7kgf/cm²),氮?dú)饧訅翰坏贸^1.176MPa(12kgf/cm²)。因此過大增加壓力受到限制,提高真空度既有效又切合實(shí)際。</p><p> 本設(shè)計(jì)提高真
33、空度(降低真空壓強(qiáng))采取了以下措施:</p><p> (1)加大真空管路系統(tǒng)通導(dǎo)能力</p><p> 粘滯流狀態(tài)時(shí),通導(dǎo)能力與管徑四次方或管道凈空截面積二次方成正比。</p><p> a .加大真空管管徑</p><p> 本設(shè)計(jì)真空管內(nèi)徑為15cm, 比該廠原有的真空管內(nèi)徑5cm大了二倍。 </p><p
34、> b .加大真空冷卻器管程凈空截面積</p><p> 本設(shè)計(jì)真空冷卻器管程截面積為280cm²,比該廠原有的140cm²加大了一倍。</p><p> 以上兩項(xiàng)均大幅度增加了真空管路通導(dǎo)能力。</p><p> ( 2 )防止真空管路漏氣</p><p> 真空管道采用無縫鋼管,除罐口、閥門、分氣缸、泵
35、口采用法蘭聯(lián)接外,所有管道均采用焊接聯(lián)接。</p><p> 2、加大真空冷卻器冷卻面積</p><p> 一般在浸漬罐與真空泵之聞串接真空冷卻器,本設(shè)計(jì)冷卻面積由原有的6m² 加大至13m²,其好處是:</p><p> ( 1 )碳制品是在加熱狀態(tài)下抽真空的,殘粘在罐壁上的瀝青處于熔化狀態(tài),產(chǎn)生的瀝青煙氣隨真空氣流排出,經(jīng)真空冷卻器冷凝
36、。增大冷卻器的面積,及時(shí)消降低瀝青煙對(duì)罐內(nèi)真空度的影響,同時(shí)防止瀝青煙污染真空泵油,以免降低極限真空度及抽氣速率。</p><p> ( 2 ) 在浸漬罐不抽真空時(shí),起真空維持作用,可縮短下次抽真空時(shí)間,節(jié)約能源。</p><p> ( 3 ) 冷卻被抽氣體的溫度,滿足真空泵對(duì)氣溫不高于4O℃的要求,減少氣溫對(duì)真空度和抽氣速率的影響。</p><p> ( 4
37、 ) 因操作疏忽大意,防止泵油進(jìn)人真空管路系統(tǒng)中。</p><p> 3、提高自控和檢測(cè)水平</p><p> 根據(jù)工藝設(shè)計(jì)條件,自控和檢測(cè)水平得到提高。</p><p> ( 1 ) 浸漬罐自動(dòng)控制溫度</p><p> 浸漬罐為電熱,電熱管分成三組,由三個(gè)三相回路供電。在升溫階段,三組電熱管均通電;當(dāng)達(dá)到生產(chǎn)工藝規(guī)定的浸漬溫度下限
38、時(shí),斷開一組,保留兩組電熱管通電;當(dāng)超過浸漬溫度上限時(shí),斷開兩組,保留一組電熱管通電。</p><p> 采用溫度指示調(diào)節(jié)儀,數(shù)碼管顯示溫度,并能指令上下限溫度報(bào)警和自動(dòng)控制三組電熱管的接通和斷開。</p><p> ( 2 )低真空用絕對(duì)壓力顯示</p><p> 真空壓強(qiáng)在6000Pa以上時(shí),用電觸點(diǎn)真空表顯示,當(dāng)降至8000Pa時(shí),發(fā)出音響訊號(hào),轉(zhuǎn)由壓力
39、變送器和數(shù)顯表顯示真空絕對(duì)壓力。</p><p> 4、勞動(dòng)安全得到改善</p><p> 浸漬罐開蓋和關(guān)蓋由手板改為電動(dòng),陴低了勞動(dòng)強(qiáng)度,提高了操作的安全性 (某廠曾發(fā)生工人板蓋摔傷事故)。</p><p> 5、管路布置得到改進(jìn)</p><p> 該廠原有兩臺(tái)Φ1100mm浸潰罐,抽真空與加壓合用一條主管,兩臺(tái)浸漬罐抽真空與加壓時(shí)
40、間需錯(cuò)開,影響浸漬罐發(fā)揮生產(chǎn)能力。</p><p> 本設(shè)計(jì)改為真空管與壓縮空氣管分開,兩臺(tái)浸漬罐可任意分別安排抽真空與加壓時(shí)間,能充分發(fā)揮各自的生產(chǎn)能力。</p><p> 2.2 計(jì)算機(jī)程序設(shè)計(jì)</p><p> 2.2.1 VB簡(jiǎn)介</p><p> Basic源自于BASIC編程語言。BASIC是英文Beginner’s Al
41、l purpose Symbolic Instruction Code的縮寫,意思為初學(xué)者通用符號(hào)指令代碼,一直都是程序設(shè)計(jì)入門的首選語言。Visual Basic擁有圖形用戶界面(GUI)和快速應(yīng)用程序開發(fā)(RAD)系統(tǒng),可以輕易的使用DAO,RAO,ADO連接數(shù)據(jù)庫,或者輕松的創(chuàng)建ActiveX控件。程序員可以輕松的使用VB提供的組件快速建立一個(gè)應(yīng)用程序。</p><p> 上世紀(jì)90年代隨著視窗操作平臺(tái)的
42、逐漸流行,PC機(jī)的操作方式開始由命令行方式向圖形用戶界面(GUI,Graphical User Interface)方式轉(zhuǎn)變。Microsoft公司憑借著強(qiáng)大的技術(shù)優(yōu)勢(shì),開始把Basic向可視化編程方向發(fā)展,于是就有了第一代的Visual Basic產(chǎn)品。雖然第一代的Visual Basic產(chǎn)品功能很少,但是它具有跨時(shí)代的意義。</p><p> 隨著Windows操作系統(tǒng)的不斷成熟,Visual Basic產(chǎn)
43、品由1.0版升級(jí)到3.0版,此時(shí)Visual Basic已初具規(guī)模,利用它可以快速地編制各種應(yīng)用程序,包括非常流行的多媒體應(yīng)用程序和各種圖形操作界面,在面向?qū)ο蠹夹g(shù)出現(xiàn)后,Microsoft迅速地把這一技術(shù)加入到了Visual Basic產(chǎn)品中。Visual Basic4.0還提供了強(qiáng)大的數(shù)據(jù)庫管理能力,這使得它成為管理信息系統(tǒng)(MIS,Management Information System)的重要開發(fā)工具。隨著Internet的迅
44、猛發(fā)展,Microsoft的ActiveX技術(shù)出現(xiàn)了,并被不失時(shí)機(jī)地加入到Visual Basic5.0版本中(1997年)。在1998年,Microsoft推出了Visual Basic6.0版本,這一版本使VB得到了很大的擴(kuò)充和增強(qiáng)。它還引入了使用部件編程的概念,實(shí)際上這是對(duì)面向?qū)ο缶幊趟枷氲臄U(kuò)展。迄今為止,Visual Basic已經(jīng)發(fā)展成為快速應(yīng)用程序開發(fā)(RAO,Rapid Application Development)工具
45、的代表。通過幾年的發(fā)展,它已成為一種專業(yè)化的開發(fā)語言和環(huán)</p><p> 一個(gè)典型的VB進(jìn)程的中心思想就是要便于程序員使用,無論是新手或者專家。VB使用了可以簡(jiǎn)單建立應(yīng)用程序的GUI系統(tǒng),但是又可以開發(fā)相當(dāng)復(fù)雜的程序。VB的程序是一種基于窗體的可視化組件安排的聯(lián)合,并且增加代碼來指定組建的屬性和方法。因?yàn)槟J(rèn)的屬性和方法已經(jīng)有一部分定義在了組件內(nèi),所以程序員不用寫多少代碼就可以完成一個(gè)簡(jiǎn)單的程序。VB6.0的
46、特點(diǎn)如下:</p><p><b> 1、簡(jiǎn)單易用</b></p><p> ?。?)標(biāo)準(zhǔn)的Windows程序界面</p><p> Visual Basic是一個(gè)標(biāo)準(zhǔn)的Windows程序</p><p> Visual Basic改進(jìn)了用戶界面,其主窗口與其他Microsoft產(chǎn)品(譬如office中的Word、
47、Visual Studio中的VFP)十分類似。VB6.0采用了面向?qū)ο蟮某绦蛟O(shè)計(jì)思想。把程序和數(shù)據(jù)封裝起來成為一個(gè)對(duì)象,每個(gè)對(duì)象都是可視的,這樣開發(fā)人員只要按設(shè)計(jì)要求的屏幕布局,利用系統(tǒng)提供的各種控件工具,可在屏幕上建立程序基本界面如窗口、菜單、按鈕、滾動(dòng)條等不同類型的對(duì)象,并對(duì)對(duì)象的各種屬性進(jìn)行設(shè)置。程序?qū)⒆詣?dòng)產(chǎn)生界面設(shè)計(jì)代碼,設(shè)計(jì)人員只需要編寫實(shí)現(xiàn)程序功能的那部分代碼,因此大大提高了程序設(shè)計(jì)的效率[9,10]。</p>
48、<p> 圖2.2 VB運(yùn)行界面</p><p> 另外,用戶可以對(duì)Visual Basic系統(tǒng)自身定制工具欄,也能夠?yàn)榫帉懙膽?yīng)用程序定義工具欄。</p><p> Visual Basic支持鼠標(biāo)右鍵激活快捷菜單,用戶可更加快捷地操作。為了利用中文開發(fā),Visual Basic進(jìn)行了全面的漢化。不但菜單、工具欄、對(duì)話框、出錯(cuò)提示都翻譯成了中文。這為交互使用、程序開發(fā)帶
49、來了極大地方便,可以直接調(diào)用很多已漢化的系統(tǒng)內(nèi)嵌功能,如:系統(tǒng)對(duì)話框、出錯(cuò)提示。</p><p><b> ?。?)快速完成任務(wù)</b></p><p> Visual Basi提供了“工程向?qū)А?、”?bào)表生成器”和“設(shè)計(jì)器”三種工具這三種工具都使用圖形交互界面方式,使用戶能夠簡(jiǎn)單的進(jìn)行數(shù)據(jù)庫建立、讀寫等操作任務(wù)。VB6.0中還添加了一些功能來增強(qiáng)開發(fā)環(huán)境,以便更容易
50、地應(yīng)用程序中添加有效功能。</p><p> Visual Basic為編程提供了一個(gè)集成開發(fā)環(huán)境。在這個(gè)環(huán)境中,編程者可設(shè)計(jì)用戶界面、編寫程序代碼、調(diào)試應(yīng)用程序、直至把應(yīng)用程序編寫成可在Windows中運(yùn)行的可執(zhí)行文件,并為它生成安裝程序?qū)﹂_發(fā)完的程序進(jìn)行的發(fā)布。Visual Basic的集成開發(fā)環(huán)境為編程者提供了很大的方便。</p><p> VB程序開發(fā)系統(tǒng)為用戶提供了大量的數(shù)據(jù)
51、類型,操作簡(jiǎn)單且上手容易。此外作為一種程序設(shè)計(jì)語言,VB有許多獨(dú)到之處,為用戶提供了多種編程向?qū)?,如?yīng)用程序向?qū)?、安裝向?qū)?、?shù)據(jù)對(duì)象向?qū)Ш蛿?shù)據(jù)窗體向?qū)?,通過它們可以快速地創(chuàng)建不同類型、不同功能的應(yīng)用程序[11,12]。</p><p> 在VB中,利用幫助菜單和F1功能鍵,用戶可隨時(shí)方便地得到所需要的幫助信息。VB幫助窗口中顯示了有關(guān)的示例代碼,通過復(fù)制、粘貼操作可獲得大量的示例代碼,為用戶的學(xué)習(xí)和使用提供方便
52、。</p><p> ?。?)強(qiáng)大的項(xiàng)目管理器和資源統(tǒng)一控制</p><p> 在使用項(xiàng)目管理器時(shí),我們可以對(duì)項(xiàng)目及數(shù)據(jù)進(jìn)行更強(qiáng)的控制。我們可以使用源代碼管理產(chǎn)品,同時(shí)可以在“項(xiàng)目管理器”中看到組件的狀態(tài)。同時(shí),我們可以借助“項(xiàng)目管理器”創(chuàng)建和集中管理應(yīng)用程序中的任何元素;也可以訪問所有向?qū)?、生成器、工具欄和其他易于使用的工具。因此,可以說它提供了一個(gè)進(jìn)行集中管理的環(huán)境。</p&g
53、t;<p><b> 2、功能更強(qiáng)大</b></p><p> ?。?)強(qiáng)大的數(shù)據(jù)庫訪問功能</p><p> Visual Basic的數(shù)據(jù)庫功能得到了很大的擴(kuò)展,Visual Basic利用數(shù)據(jù)庫控件可以訪問多種數(shù)據(jù)庫,VB6.0提供的AD0控件,不但可以用最少的代碼實(shí)現(xiàn)用戶對(duì)數(shù)據(jù)庫操作和控制,也可以取代Data和RD0控件。</p>
54、<p><b> ?。?)可視化編程</b></p><p> Visual的漢語意思就是可視化,可視化編程大大簡(jiǎn)化了程序員的工作,給人所見即所得的感受。在用戶編輯報(bào)表、表單、菜單時(shí),可以直接運(yùn)行,不必來回調(diào)試,極為方便。</p><p><b> ?。?)面向?qū)ο缶幊?lt;/b></p><p> Visu
55、al Basic仍然支持標(biāo)準(zhǔn)的面向過程的程序設(shè)計(jì)方式,具有豐富的數(shù)據(jù)類型,而且簡(jiǎn)單易學(xué)。最主要的是它提供了真正的面向?qū)ο蟪绦蛟O(shè)計(jì)的能力,借助Visual Basic的對(duì)象模型,用戶可以利用面向?qū)ο蟪绦蛟O(shè)計(jì)的編程特性:繼承性、封裝性、多態(tài)性和子類。尤其的是VB提供了兩種類型近30個(gè)類,包括表單、工具欄、頁格式等,用戶也可以自定義類,這樣就可以減少編程的工作量,且有利于后期程序的維護(hù)[13,14]。</p><p>
56、 在Windows環(huán)境下,程序是以事件驅(qū)動(dòng)方式運(yùn)行的,每個(gè)對(duì)象都能響應(yīng)多個(gè)不同的事件,每個(gè)事件都能驅(qū)動(dòng)一段代碼,即事件過程,該代碼決定了對(duì)象的功能.通常稱這種機(jī)制為事件驅(qū)動(dòng).事件可由用戶的操作觸發(fā),也可以由系統(tǒng)或應(yīng)用程序觸發(fā)。例如,單擊一個(gè)命令按鈕,就觸發(fā)了按鈕的Click(單擊)事件,該事件中的代碼就會(huì)被執(zhí)行.若用戶未進(jìn)行任何操作(未觸發(fā)事件),則程序就處于等待狀態(tài).整個(gè)應(yīng)用程序就是由彼此獨(dú)立的事件過程構(gòu)成。</p>
57、<p> (4)可利用數(shù)量眾多的ActiveX控件</p><p> ActiveX控件是可編程元素的新名稱,以前稱為OLE控件\OCX或OLE自定義控件。ActiveX控件與固有控件相同,可以把它放在表單上,使用戶能夠加強(qiáng)同一個(gè)應(yīng)用程序的交互能力.ActiveX控件具有事件,并且可以集成到其他控件中.這些ActiveX控件具有OCX的擴(kuò)展名,而且互聯(lián)網(wǎng)上的ActiveX控件數(shù)不勝數(shù)。在VB中可以充
58、分利用現(xiàn)成的控件資源節(jié)省投入成本,加快開發(fā)進(jìn)度,提升軟件功能。</p><p> VB的核心是對(duì)對(duì)象的鏈接與嵌入(OLE)技術(shù)的支持,它是訪問所有對(duì)象的一種方法。利用OLE技術(shù),能夠開發(fā)集聲音、圖像、動(dòng)畫、字處理、Web等對(duì)象于一體的程序。</p><p> 通過動(dòng)態(tài)數(shù)據(jù)交換(DDE)的編程技術(shù),VB開發(fā)的應(yīng)用程序能與其他Windows應(yīng)用程序之間建立數(shù)據(jù)通信。通過動(dòng)態(tài)鏈接庫技術(shù),在V
59、B程序中可方便地調(diào)用C語言或匯編語言編寫的函數(shù),也可調(diào)用Windows的應(yīng)用程序接口(API)函數(shù)[15,16]。</p><p> 3.增強(qiáng)的網(wǎng)絡(luò)應(yīng)用功能</p><p> 可以開發(fā)客戶/服務(wù)器(client、server)解決方案,增強(qiáng)客戶/服務(wù)器(C\S)性能,利用微軟的ODBC驅(qū)動(dòng)程序,還可存取其支持的數(shù)據(jù)庫。因此,可將自己的數(shù)據(jù)庫與遠(yuǎn)端連接,存取遠(yuǎn)端數(shù)據(jù)庫的數(shù)據(jù),構(gòu)成clie
60、nt/server的設(shè)計(jì)結(jié)構(gòu)。</p><p> 在新版本的Visual Basic中Internet的應(yīng)用得到了很大的加強(qiáng)。Microsoft Visual Basic6.0現(xiàn)在支持OLE拖放,用戶可以在Visual Basic和其他應(yīng)用程序之間以及在Visual Basic應(yīng)用程序內(nèi)部移動(dòng)數(shù)據(jù)。例如用戶可以調(diào)用Excel來完成某些計(jì)算。如果Visual Basic的功能不能滿足用戶的某些特定要求,則可以啟動(dòng)
61、其他標(biāo)準(zhǔn)的Windows程序來增強(qiáng)程序的功能。因此,使用Visual Basic6.0可以很容易地創(chuàng)建于Internet一起使用的應(yīng)用程序,也使得創(chuàng)建與其他基于Windows應(yīng)用程序(如Microsoft Excel和Microsoft Visual FoxPro)一起使用的應(yīng)用程序變得很容易。VB6.0程序設(shè)計(jì)語言中提供了DHTTML設(shè)計(jì)工具,它在一個(gè)交互的,基于VB代碼編譯動(dòng)態(tài)響應(yīng)的瀏覽器應(yīng)用程序。利用這種技術(shù)可以動(dòng)態(tài)創(chuàng)建和編輯We
62、b頁面,使用戶在VB中開發(fā)多功能的網(wǎng)絡(luò)應(yīng)用軟件[17,18]。</p><p> 2.2.2 串口通訊的實(shí)現(xiàn)</p><p><b> 1.串口通訊</b></p><p> 串口通訊是計(jì)算機(jī)上一種非常通用的設(shè)備通信協(xié)議。大多數(shù)計(jì)算機(jī)包含兩個(gè)基于RS232的串口。串口同時(shí)也是儀器儀表設(shè)備通用的通信協(xié)議;很多GPIB兼容的設(shè)備也帶有RS23
63、2口。同時(shí),串口通信協(xié)議也可以用于獲取遠(yuǎn)程采集設(shè)備的數(shù)據(jù)。串口通信是按位(bit)發(fā)送和接受字節(jié)。盡管比按字節(jié)(byte)的并行通信慢,但是串口可以在使用一根線發(fā)送數(shù)據(jù)的同時(shí)用另一根線接收數(shù)據(jù)。它很簡(jiǎn)單并且能夠?qū)崿F(xiàn)遠(yuǎn)距離通信。比如IEEEE488定義并行通行狀態(tài)時(shí),規(guī)定設(shè)備線總長(zhǎng)不得超過20米,并且任意兩個(gè)設(shè)備間的長(zhǎng)度不得超過2米;而對(duì)于串口而言,長(zhǎng)度可達(dá)1200米。典型的,串口用于ASCII碼字符的傳輸。通信使用3根線完成:(1)地線
64、,(2)發(fā)送,(3)接收。由于串口通信是異步的,端口能夠在一根線上發(fā)送數(shù)據(jù)同時(shí)在另一根線上接收數(shù)據(jù)。其他線用于握手,但是不是必需的。串口通信最重要的參數(shù)是波特率、數(shù)據(jù)位、停止位和奇偶校驗(yàn)位。對(duì)于兩個(gè)進(jìn)行通行的端口,這些參數(shù)必須匹配。</p><p> 波特率:這是一個(gè)衡量通信速度的參數(shù)。他表示每秒鐘傳送的bit的個(gè)數(shù)。例如300波特表示每秒鐘發(fā)送300個(gè)bit。當(dāng)我們提到時(shí)鐘周期時(shí),我們就是指波特率。例如如果協(xié)
65、議需要4800波特率,那么時(shí)鐘是4800Hz。這意味著串口通信在數(shù)據(jù)線上的采樣率為4800Hz。通常電話線的波特率為14400,28800和36600.波特率可以遠(yuǎn)遠(yuǎn)大于這些值,但是波特率和距離成反比。高波特率常常用于近距離儀器間的通信,典型的例子就是GPIB設(shè)備的通信[19,20]。</p><p> 數(shù)據(jù)位:這是衡量通信中實(shí)際數(shù)據(jù)位的參數(shù)。當(dāng)計(jì)算機(jī)發(fā)送一個(gè)信息包,實(shí)際的數(shù)據(jù)不會(huì)是8位的,標(biāo)準(zhǔn)的值是5、7和8
66、位。如何設(shè)置取決于你想傳送的信息。比如,標(biāo)準(zhǔn)的ASCII碼是0~127(7位)。擴(kuò)展的ASCII碼是0~255(8位)。如果數(shù)據(jù)使用簡(jiǎn)單的文本(標(biāo)準(zhǔn)ASCII碼),那么每個(gè)數(shù)據(jù)包使用7位數(shù)據(jù)。每個(gè)包是指一個(gè)字節(jié),包括開始、停止位,數(shù)據(jù)位和奇偶校驗(yàn)位。由于實(shí)際數(shù)據(jù)位取決于通信協(xié)議的選取,術(shù)語“包”指任何通信的情況。</p><p> 停止位:用于表示單個(gè)包的最后一位。典型的值為1,1.5,和2位。由于數(shù)據(jù)是在傳輸
67、線上定時(shí)的,并且每一個(gè)設(shè)備有其自己的時(shí)鐘,很可能在通信中兩臺(tái)設(shè)備間出現(xiàn)了小小的不同步。因此停止位不僅僅是表示傳輸?shù)慕Y(jié)束,并且提供計(jì)算機(jī)校正時(shí)鐘同步的機(jī)會(huì)。適用于停止位的位數(shù)越多,不同時(shí)鐘同步的容忍程度越大,但是數(shù)據(jù)傳輸率同時(shí)也越慢。</p><p> 奇偶校驗(yàn)位:在串口通信中有四種檢錯(cuò)方式:偶、奇、高和低。當(dāng)然沒有校驗(yàn)位也是可以的。對(duì)于偶和奇校驗(yàn)的情況,串口會(huì)設(shè)置校驗(yàn)位(數(shù)據(jù)位后面的一位),用一個(gè)值確保傳輸?shù)臄?shù)
68、據(jù)有偶個(gè)或者奇?zhèn)€邏輯高位。例如,如果數(shù)據(jù)是011,那么對(duì)于偶校驗(yàn),校驗(yàn)位為0,保證邏輯高的位數(shù)是偶數(shù)個(gè)。如果是奇校驗(yàn),校驗(yàn)位為1,這樣就有3個(gè)邏輯高位。高位和低位不真正的檢查數(shù)據(jù),簡(jiǎn)單置位邏輯高或者邏輯低校驗(yàn)。這樣使得接收設(shè)備能夠知道一個(gè)位的狀態(tài),有機(jī)會(huì)判斷是否有噪聲干擾了通信或者是否傳輸和接收不同步。</p><p> 2、VB實(shí)現(xiàn)串口通訊</p><p> Microsoft Co
69、mmunications Control(以下簡(jiǎn)稱MSComm)是Microsoft公司提供的簡(jiǎn)化Windows下串行通信編程的ActiveX控件,它為應(yīng)用程序提供了通過串行接口收發(fā)數(shù)據(jù)的簡(jiǎn)單方法。MSComm控件提供了兩種處理通信的方法:一是事件驅(qū)動(dòng)(Event—driven)方法,一是查詢法。MSComm控件通過串行端口傳輸和接收數(shù)據(jù),為應(yīng)用程序提供串行通訊功能。MSComm控件在串口編程時(shí)非常方便,程序員不必去花時(shí)間了解較為復(fù)雜的
70、API函數(shù),而且在VC、VB、Delphi等語言中均可使用。</p><p> 事件驅(qū)動(dòng)通信,是一種功能很強(qiáng)的處理串口活動(dòng)的方法。在大多數(shù)情況下,用戶需要獲知事件發(fā)生的時(shí)間。例如,CD(Carrier Delect)線或RTS(Request To Send)線上有字符到達(dá)或發(fā)生了改變等。在這種情況下,使用MSComm控件的OnComm事件捕獲和處理這些通信事件。OnComm也可以捕獲和處理通信中的錯(cuò)誤。在編程
71、過程中,就可以在OnComm事件處理函數(shù)中加入自己的處理代碼。這種方法的優(yōu)點(diǎn)是程序響應(yīng)及時(shí),可靠性高。每個(gè)MSComm控件對(duì)應(yīng)著一個(gè)串行端口。如果應(yīng)用程序需要訪問多個(gè)串行端口,必須使用多個(gè)MSComm控件。</p><p> 查詢方式,查詢方式實(shí)質(zhì)上還是事件驅(qū)動(dòng),但在有些情況下,這種方式顯得更為便捷。在程序的每個(gè)關(guān)鍵功能之后,可以通過檢查CommEvent屬性的值來查詢事件和錯(cuò)誤。如果應(yīng)用程序較小,并且是自保持
72、的,這種方法可能是更可取的。例如,如果寫一個(gè)簡(jiǎn)單的電話撥號(hào)程序,則沒有必要對(duì)每接收一個(gè)字符都產(chǎn)生事件,因?yàn)槲ㄒ坏却邮盏淖址钦{(diào)制解調(diào)器的“確定”響應(yīng)[21-23]。</p><p> 雖然MSComm控件有許多很重要的屬性,但應(yīng)先熟悉下面幾個(gè)屬性:</p><p> 1、CommPort屬性 </p><p> 語法-MSComm1.Commport[=Va
73、lue].</p><p> 作用-設(shè)置或返回通信端口號(hào)</p><p> CommPort屬性值Value可以設(shè)置1~16之間的任何整數(shù)值(缺省值為1),表示串口COM1,COM2····。如果用PortOpen屬性打開一個(gè)并不存在的端口,MSComm控件會(huì)產(chǎn)生錯(cuò)誤68(設(shè)備無效)。例如,COM2上連接有一個(gè)調(diào)制解調(diào)器,設(shè)置為MSComm1.C
74、ommPort = 2</p><p> 2、Settings 屬性</p><p> 語法-MSComm1.Settings[=Value]</p><p> 作用-設(shè)置并返回通信參數(shù)。Value值為String型,說明通信端口的設(shè)置數(shù)。</p><p> Settings屬性可以用來指定波特率、奇偶校驗(yàn)位、數(shù)據(jù)位數(shù)和停止位數(shù)。奇偶
75、校驗(yàn)設(shè)置為了進(jìn)行數(shù)據(jù)校驗(yàn),通常是不用的,并設(shè)置為“N”。數(shù)據(jù)位數(shù)指定了代表一個(gè)數(shù)據(jù)塊的比特?cái)?shù)。停止位指出了何時(shí)接收到一個(gè)完整數(shù)據(jù)塊。</p><p> 例如:MSComm1.Settings=“9600,N,8,1”表示傳輸速率為9600bit/s,沒有奇偶校驗(yàn)位,8位數(shù)據(jù)位,1位停止位。</p><p> 3、PortOpen屬性</p><p> 語法-M
76、SComm1.PortOpen[=Value]</p><p> 作用-設(shè)置或返回通信端口的狀態(tài)。</p><p> 設(shè)置PortOpen屬性為True,即打開端口:設(shè)置為False,則關(guān)閉端口,并清除接收和傳輸緩沖區(qū)。當(dāng)應(yīng)用程序終止時(shí),MSComm控件自動(dòng)關(guān)閉串行端口。</p><p> 在打開端口前,確定CommPort屬性設(shè)置為一個(gè)合法的端口。如果Com
77、mPort屬性設(shè)置為一個(gè)非法的端口,則打開端口時(shí),MSComm控件產(chǎn)生錯(cuò)誤68(設(shè)備無效)。串行端口設(shè)備必須支持Settings屬性當(dāng)前的設(shè)置值。如果Settings屬性包括硬件不支持的通信設(shè)置值,硬件可能不會(huì)正常工作。</p><p><b> 4、Input屬性</b></p><p> 語法-MSComm1.Input</p><p>
78、; 作用-返回并刪除接收緩沖區(qū)中的數(shù)據(jù)流。</p><p> InputLen屬性確定被Input屬性讀取的字符數(shù)。設(shè)置InputLen為0,則Input屬性讀取緩沖區(qū)中全部的內(nèi)容。</p><p> 例如,如果希望從接收緩沖區(qū)獲取數(shù)據(jù),并將其顯示在一個(gè)文本框中,可以使用下面的代碼:TxtDisplay。Text = MSComm1.Input</p><p>
79、; 該屬性在設(shè)計(jì)時(shí)無效,在運(yùn)行時(shí)為只讀[24-28]。</p><p> 3 瀝青浸漬程序總體設(shè)計(jì)</p><p> 3.1 軟件系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)</p><p> VB編程軟件不同于匯編等順序結(jié)構(gòu)的編程語言,VB的最大特點(diǎn)就是事件驅(qū)動(dòng),模塊化明顯,VB所編譯出來的程序都有明顯的模塊化,所以編輯時(shí)可以按照模塊進(jìn)行逐一編輯。根據(jù)系統(tǒng)設(shè)計(jì)要求和數(shù)據(jù)流模型建立后,
80、針對(duì)系統(tǒng)各個(gè)模塊,定義出軟件各功能子模塊。根據(jù)對(duì)用戶需求的分析、系統(tǒng)所要實(shí)現(xiàn)的功能,在設(shè)計(jì)軟件時(shí)進(jìn)行模塊式劃分。主要包括數(shù)據(jù)通信模塊、數(shù)據(jù)顯示模塊、控制模塊。數(shù)據(jù)通信模塊主要是進(jìn)行串口通信與PLC進(jìn)行連接從而達(dá)到控制開關(guān)量的效果。數(shù)據(jù)顯示模塊包括實(shí)時(shí)數(shù)據(jù)顯示和歷史數(shù)據(jù)顯示,他們都是基于工業(yè)現(xiàn)場(chǎng)的物理量進(jìn)行的顯示。其中還涉及到報(bào)表打印,就是對(duì)數(shù)據(jù)進(jìn)行保存以便定期檢查與維修??刂颇K主要包括主工藝過程模塊,即對(duì)工業(yè)工程進(jìn)行現(xiàn)場(chǎng)監(jiān)控,如果出現(xiàn)
81、異常,系統(tǒng)會(huì)自動(dòng)向操作員報(bào)警,提醒其進(jìn)行響應(yīng)緊急操作,避免危險(xiǎn)事故的發(fā)生。</p><p> 3.2 主模塊系統(tǒng)流程圖</p><p> 本程序是由一個(gè)主模塊通主模塊與通訊模塊、控制模塊、曲線顯示模塊和數(shù)據(jù)顯示模塊等四個(gè)模塊進(jìn)行數(shù)據(jù)交換,完成該軟件的主要功能。主模塊主要進(jìn)行界面運(yùn)行及保護(hù),防止意外錯(cuò)誤等情形導(dǎo)致程序關(guān)閉。本程序提供了兩種密碼,一種是啟動(dòng)密碼,另一種是數(shù)據(jù)打開密碼。這樣可
82、以有效保護(hù)系統(tǒng)安全。</p><p> 3.3 數(shù)據(jù)顯示流程圖</p><p> 實(shí)時(shí)數(shù)據(jù)顯示模塊是相對(duì)程序設(shè)計(jì)中比較重要的一部分,實(shí)時(shí)數(shù)據(jù)顯示是給操作者最直觀的數(shù)據(jù),實(shí)時(shí)數(shù)據(jù)顯示完善與否直接影響軟件的操作。數(shù)據(jù)是通過寫入文本文件的方式顯示的。即先把運(yùn)行產(chǎn)生的數(shù)據(jù)讀入文本文件中,再把數(shù)據(jù)導(dǎo)入到MSFlexGrid中,從而顯示在界面中。</p><p> 溫度顯
83、示界面包括數(shù)據(jù)顯示和曲線圖兩部分。曲線圖是根據(jù)浸漬罐內(nèi)的溫度數(shù)據(jù)顯示的,總共有3組數(shù)據(jù)。在曲線中分別用不同的顏色標(biāo)注了這三條曲線。在表格中還有一組室溫?cái)?shù)據(jù),這是作為比照項(xiàng)的,不在圖表中顯示。</p><p> 4 系統(tǒng)軟件的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)</p><p> 4.1程序主模塊設(shè)計(jì)</p><p> 4.1.1 主模塊內(nèi)容</p><p>
84、 本程序用于瀝青浸漬的相關(guān)運(yùn)行數(shù)據(jù),便于合理配置資源。本軟件應(yīng)做到界面簡(jiǎn)潔,操作方便,易于維護(hù)。將程序分為幾大功能塊,根據(jù)實(shí)現(xiàn)功能的不同,分別進(jìn)行開發(fā)編譯。做到結(jié)構(gòu)清晰,便于日后的維護(hù)及系統(tǒng)的升級(jí)。</p><p> 瀝青浸漬系統(tǒng)軟件窗體設(shè)計(jì),主要包括主頁窗體,主工藝窗,水冷系統(tǒng)窗體,加熱工藝窗體,歷史狀態(tài)窗體,歷史曲線窗體,歷史報(bào)警窗體,實(shí)時(shí)曲線窗體,實(shí)時(shí)報(bào)警窗體,實(shí)時(shí)數(shù)據(jù)窗體以及備用窗體。</p&g
85、t;<p> 4.1.2 結(jié)果分析及主要程序代碼</p><p> 1、主頁窗體:此窗體是程序運(yùn)行開機(jī)界面,操作人員可通過該窗體中的按鍵對(duì)瀝青浸漬的主工藝窗體,水冷系統(tǒng)窗體,加熱工藝窗體,歷史狀態(tài)窗體,歷史曲線窗體,歷史報(bào)警窗體,實(shí)時(shí)曲線窗體,實(shí)時(shí)報(bào)警窗體,實(shí)時(shí)數(shù)據(jù)窗體進(jìn)行切換,實(shí)現(xiàn)基本的監(jiān)控操作功能。主頁窗體如圖4.2所示。</p><p> 主頁界面是操作員首先面對(duì)
86、的界面,他介紹軟件的出處及制作人,使操作員能對(duì)整個(gè)軟件有一個(gè)總體的認(rèn)識(shí)。退出主界面需要進(jìn)行密碼輸入,這樣會(huì)防止工業(yè)現(xiàn)場(chǎng)突然中斷,保證整個(gè)工業(yè)過程的持續(xù)進(jìn)行。</p><p><b> ’密碼程序</b></p><p> Private Sub mdfpas_Click()</p><p><b> Dim rel</b&
87、gt;</p><p> Dim paswrd1, paswrd, nowword As String</p><p> rel = MsgBox("真要改變系統(tǒng)口令?", 36, SysTitle)</p><p> If rel = 7 Then Exit Sub</p><p> finame1$ = sys
88、dir + "\set_pas.txt"</p><p> If Dir$(finame1$) <> "" Then</p><p> Open finame1$ For Input As #1</p><p> Input #1, paswrd1</p><p><b>
89、 Close #1</b></p><p><b> Else</b></p><p> paswrd1 = "dydq"</p><p><b> End If</b></p><p> paswrd = Trim$(paswrd1)</p>
90、<p> Do While nowword <> paswrd</p><p> nowword = InputBox("請(qǐng)輸入原口令", SysTitle, "")</p><p> If "" = nowword Then</p><p><b> Exit Su
91、b</b></p><p><b> Else</b></p><p> If nowword = paswrd Or nowword = "dydq" Then</p><p><b> Exit Do</b></p><p><b> Else&
92、lt;/b></p><p> If 2 = MsgBox("口令錯(cuò)誤,重新輸入口令嗎?", 33, SysTitle) Then</p><p><b> Exit Sub</b></p><p><b> End If</b></p><p><b>
93、 End If</b></p><p><b> End If</b></p><p><b> Loop</b></p><p><b> End Sub</b></p><p> 2、瀝青運(yùn)行窗體:包括浸漬瀝青的加工制造窗體,浸漬瀝青的水冷卻窗體,以及浸
94、漬瀝青產(chǎn)品的加熱工藝窗體。作為瀝青的主工藝過程,對(duì)其工業(yè)現(xiàn)場(chǎng)的模擬顯示是尤為重要的。窗體中包含大量的Label控件和Image控件來對(duì)數(shù)據(jù)進(jìn)行顯示和動(dòng)畫效果的處理。窗體設(shè)計(jì)如圖:</p><p><b> 圖4.3 主工藝</b></p><p> 主界面是對(duì)主工藝現(xiàn)場(chǎng)的模擬,涉及多個(gè)浸漬過程的物理量包括瀝青庫溫度,瀝青庫壓力,1號(hào)物位,2號(hào)物位,3號(hào)物位,熱油壓
95、力,熱油溫度,浸漬罐壓力,浸漬罐溫度。根據(jù)這些量的情況,系統(tǒng)會(huì)自動(dòng)進(jìn)行開關(guān)調(diào)節(jié),實(shí)現(xiàn)各個(gè)階段的浸漬目的,使反應(yīng)過程能自動(dòng)有序的進(jìn)行。浸漬液的流動(dòng)情況會(huì)在界面中顯示,這是通過動(dòng)畫效果實(shí)現(xiàn)的。如果工藝過程發(fā)生異常,軟件會(huì)有報(bào)警提示并且液體的顏色也會(huì)發(fā)生變化,從而提醒操作員及時(shí)采取處理措施,保證工業(yè)過程和作業(yè)人員的安全。</p><p><b> 圖4.4 加熱工藝</b></p>
96、<p> 加熱工藝是瀝青浸漬工藝的前置過程,目的是為了對(duì)瀝青溫度進(jìn)行提高,促使反應(yīng)過程能充分進(jìn)行。來料瀝青通常溫度較低不能達(dá)到浸漬過程的反應(yīng)溫度,所以需要首先對(duì)瀝青進(jìn)行加熱,這樣也會(huì)減少瀝青中夾雜的氣泡量,增大瀝青與浸漬劑的接觸面積,提高反應(yīng)率。其中物理量涉及預(yù)熱爐溫度,伴隨工業(yè)過程進(jìn)行,預(yù)熱爐會(huì)及時(shí)將加熱過的瀝青排除,使工業(yè)過程能持續(xù)進(jìn)行。</p><p><b> 圖4.5 冷卻工藝
97、</b></p><p> 冷卻過程是將反應(yīng)完的浸漬瀝青冷卻,避免浸漬產(chǎn)品發(fā)生氧化反應(yīng),便于浸漬瀝青的儲(chǔ)存和保管。</p><p> Private Sub TimerDI_Timer()</p><p> cunt3 = cunt3 + 1</p><p> If cunt3 > 2 Then cunt3 = 0&
98、lt;/p><p> cunt5 = cunt5 + 1</p><p> If cunt5 > 4 Then cunt5 = 0</p><p> '======引風(fēng)機(jī),及排煙=============</p><p> If PvtAI(Aisx(glnum, 9)) > 5 Then yanq% = 1</
99、p><p> If Run_Flag(10) <> yanq% Then</p><p> Run_Flag(10) = yanq%</p><p> If Run_Flag(10) = 0 Then</p><p> ImageYF.Picture = LoadPicture("")</p>
100、<p> Imagyan.Picture = LoadPicture("")</p><p><b> End If</b></p><p><b> End If</b></p><p> If Run_Flag(10) = 1 Then</p><p>
101、 ImageYF.Picture = Imapumpy(cunt3).Picture</p><p> Imagyan.Picture = ImgYan(cunt3).Picture</p><p><b> End If</b></p><p> '======鼓風(fēng)機(jī)=============</p><p&
102、gt; If PvtAI(Aisx(glnum, 8)) > 5 Then Flaggf% = 1</p><p> If Run_Flag(11) <> Flaggf% Then</p><p> Run_Flag(11) = Flaggf%</p><p> If Run_Flag(11) = 0 Then</p><
103、;p> ImageGF.Picture = LoadPicture("")</p><p><b> End If</b></p><p><b> End If</b></p><p> If Run_Flag(11) = 1 Then</p><p> Ima
104、geGF.Picture = Imapumpz(cunt3).Picture</p><p><b> End If</b></p><p> '======動(dòng)態(tài)水流量顯示=============</p><p> If PvtAI(Aisx(glnum, 3)) > 0.5 Then sui% = 1 '給水轉(zhuǎn)速
105、</p><p> If Run_Flag(12) <> sui% Then</p><p> Run_Flag(12) = sui%</p><p> If Run_Flag(12) = 0 Then</p><p> Image5.Picture = LoadPicture("")</p>
106、;<p> Image6.Picture = LoadPicture("")</p><p><b> End If</b></p><p><b> End If</b></p><p> If Run_Flag(12) = 1 Then</p><p>
107、 Image5.Picture = Imgspjsg(cunt5).Picture</p><p> Image6.Picture = Imgczjsg(cunt5).Picture</p><p><b> End If</b></p><p> '======動(dòng)態(tài)蒸汽流量顯示=============</p>
108、<p> If PvtAI(Aisx(glnum, 3)) > 0.5 Then zq% = 1</p><p> If Run_Flag(13) <> zq% Then</p><p> Run_Flag(13) = zq%</p><p> If Run_Flag(13) = 0 Then</p><p&g
109、t; Image3.Picture = LoadPicture("")</p><p> Image4.Picture = LoadPicture("")</p><p><b> End If</b></p><p><b> End If</b></p>&
110、lt;p><b> End Sub</b></p><p> 3、報(bào)警窗體:包括實(shí)時(shí)報(bào)警窗體和歷史報(bào)警窗體。實(shí)時(shí)報(bào)警是通過設(shè)置各個(gè)開關(guān)模擬量的動(dòng)畫,當(dāng)數(shù)據(jù)出界時(shí)自動(dòng)轉(zhuǎn)換動(dòng)畫從而使操作人員及時(shí)進(jìn)行處理。歷史報(bào)警是通過打開文件的方式,對(duì)以前的報(bào)警數(shù)據(jù)進(jìn)行分析,對(duì)設(shè)備檢驗(yàn)和維護(hù)有關(guān)鍵性的作用。窗體設(shè)計(jì)如圖:</p><p><b> 圖4.6 歷史報(bào)警
111、</b></p><p> 歷史報(bào)警是對(duì)一段時(shí)間的報(bào)警信息的匯總,操作人員可以選擇瀏覽方式,可以按時(shí)間瀏覽也可以按報(bào)警量瀏覽,還可以對(duì)某個(gè)具體物理量進(jìn)行瀏覽,分析并處理。這樣有利于操作人員發(fā)現(xiàn)安全隱患,及時(shí)排除隱患,確保工業(yè)安全。</p><p><b> 圖4.7 實(shí)時(shí)報(bào)警</b></p><p> 實(shí)時(shí)報(bào)警是對(duì)工業(yè)現(xiàn)場(chǎng)當(dāng)前
112、的物理量的報(bào)警匯總,操作人員能發(fā)現(xiàn)某個(gè)具體的泵或開關(guān)的報(bào)警信息,從而及時(shí)的做出處理。在正常情況下,報(bào)警燈會(huì)呈現(xiàn)黃色,沒有工作的部件會(huì)呈現(xiàn)灰色,而發(fā)出報(bào)警信息的會(huì)呈現(xiàn)紅色。</p><p> Private Sub TimerMain_Timer()</p><p> FlagNum = (FlagNum + 1) Mod 2</p><p> For ij%
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- asp程序畢業(yè)設(shè)計(jì)外文翻譯
- 煤礦畢業(yè)設(shè)計(jì)(含外文翻譯)
- 采煤畢業(yè)設(shè)計(jì)(含外文翻譯)
- 公路畢業(yè)設(shè)計(jì)(含外文翻譯)
- 逆變器畢業(yè)設(shè)計(jì)(含外文翻譯)
- 換熱器畢業(yè)設(shè)計(jì)(含外文翻譯)
- 液壓畢業(yè)設(shè)計(jì)(含外文翻譯)
- 橋梁畢業(yè)設(shè)計(jì)(含外文翻譯)
- 基于gsm家庭防盜畢業(yè)設(shè)計(jì)(含外文翻譯)
- 橋梁畢業(yè)設(shè)計(jì)(含外文翻譯)
- 基于單片機(jī)的地鐵自動(dòng)門設(shè)計(jì)【畢業(yè)設(shè)計(jì)(含源程序、外文翻譯)】
- 液壓傳動(dòng)畢業(yè)設(shè)計(jì)(含外文翻譯)
- 采礦專業(yè)畢業(yè)設(shè)計(jì)(含外文翻譯)
- 網(wǎng)站畢業(yè)設(shè)計(jì)論文(含外文翻譯)
- 多點(diǎn)觸摸畢業(yè)設(shè)計(jì)(含外文翻譯)
- 公路隧道畢業(yè)設(shè)計(jì)(含外文翻譯)
- 小區(qū)燃?xì)猱厴I(yè)設(shè)計(jì)(含外文翻譯)
- 汽車減振器的設(shè)計(jì)畢業(yè)設(shè)計(jì)(含外文翻譯)
- 小箱梁畢業(yè)設(shè)計(jì)(含外文翻譯)
- 橋梁專業(yè)畢業(yè)設(shè)計(jì)(含外文翻譯)
評(píng)論
0/150
提交評(píng)論