資源描述:
《換熱器測(cè)量系統(tǒng)的軟、硬件設(shè)計(jì)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、換熱器測(cè)量系統(tǒng)的軟、硬件設(shè)計(jì)Thesoftwareandhardwaredesignofheatexchangecontainermeasuresystem摘要:本文主耍討論換熱器測(cè)量系統(tǒng)的總體設(shè)計(jì),包括硬件和軟件兩部分。硬件部分主要利用MCS-51單片機(jī)構(gòu)成數(shù)據(jù)采集系統(tǒng),軟件部分利用VB設(shè)計(jì)上位機(jī)界面進(jìn)行數(shù)據(jù)處理。Abstract:thispapermainlydiscussaboutthegeneraldesignofheatexchangccontainermeasuresystem,includehardwareandsoftware
2、.Athardwarepart,useMCS-51signalmicrochiptoformthedataacquisitionsystem,thePCpartusevisualbasictodesigninterfacesoftwaretocopethedata?一、引言換熱器作為工業(yè)中的常用設(shè)備,換熱器性能的好壞肓接彫響產(chǎn)品的質(zhì)暈O所以測(cè)量換熱器的換熱系數(shù)是十分必要的?,F(xiàn)代的單片機(jī)測(cè)控系統(tǒng)中通常以PC機(jī)作為控制中心,單片機(jī)將采集到的數(shù)據(jù)通過串口送給PC機(jī)進(jìn)行各種處理,下而我們來具體討論。二、硬件設(shè)計(jì)數(shù)據(jù)采集模塊由MCS-51單片機(jī)組成,在
3、換熱器測(cè)雖:系統(tǒng)中,模擬輸入量有8路,包括冷端進(jìn)口溫度、出口溫度,冷端進(jìn)口壓力、出口壓力,熱端進(jìn)口溫度、出口溫度,熱端進(jìn)口壓力、出口壓力;數(shù)字量有兩路,為冷端流雖和熱端流雖。系統(tǒng)的硬件框圖如圖2-1所示,由單片機(jī)構(gòu)成一個(gè)數(shù)據(jù)采集系統(tǒng),其中8路模擬量經(jīng)過多路開關(guān)后經(jīng)A/D轉(zhuǎn)換送入單片機(jī),2路數(shù)字信號(hào)經(jīng)過光電隔離后直接送入單片機(jī),經(jīng)過電平轉(zhuǎn)換電路后與PC機(jī)的串口進(jìn)行數(shù)據(jù)傳輸。PC機(jī)上利用8A%$多雖路開關(guān)12也ADPC圖2-1系統(tǒng)硬件結(jié)構(gòu)框圖單片機(jī)釆用ATMEL公司的AT89S51作為主控芯片,AT89S51內(nèi)部的程序存儲(chǔ)器是4KB可擦寫的fla
4、shROM,下載程序代碼整個(gè)過程僅用兒秒種,使用起來非常方便。A/D轉(zhuǎn)換芯片使用AD1674,AD1674是12位并行A/D,它的采集速度快,下圖為A/D與單片機(jī)的接口電路。圖2-2AD1674與單片機(jī)接口電路單片機(jī)與PC機(jī)通過RS-232進(jìn)行通信,需要將RS-232電平轉(zhuǎn)換成PC機(jī)的TTL電平,在該系統(tǒng)中選擇MAX232E,下圖為其接口電路。visualbasic編寫的軟件構(gòu)成數(shù)據(jù)處理部分?!?/p>
5、二三二三圖2-3AT89s51與PC機(jī)通信電路三、軟件設(shè)計(jì)軟件部分包括單片機(jī)部分和上位機(jī)部分。3.1單片機(jī)采用半雙工工作方式,分三步驟執(zhí)行:首先接受
6、命令,此時(shí)不向上位機(jī)發(fā)送數(shù)據(jù);接收完命令后處處理該命令,若是接收正確則向上位機(jī)冋復(fù),然后開始發(fā)送數(shù)據(jù)。主程序:完成系統(tǒng)的初始化。分配調(diào)川各個(gè)了程序以實(shí)現(xiàn)系統(tǒng)功能。數(shù)據(jù)采集了程序:木程序?qū)λ玫耐獠磕M量與數(shù)據(jù)量采集,在10MS共進(jìn)6次采集,去掉授大值與授小值,把剩下的4個(gè)數(shù)據(jù)相加,再取平均值,作為本次釆集的數(shù)據(jù)。ttdefineADH1XBYTE[OXBFFD]//A/D轉(zhuǎn)換結(jié)果的高8位#defineADLOXBYTE[OXBFFF]//A/D轉(zhuǎn)換結(jié)果的低8位Sbitad_busy=p34;//AD1674DE,1為忙,0表示轉(zhuǎn)換結(jié)束Unsi
7、gnediniADC_result(viod){ADC二OXFF;//啟動(dòng)A/D轉(zhuǎn)換While(ad_busy==l);//等待轉(zhuǎn)換接收Return((insignedint)(ADHI?4)+ADL0?4));//獲取A/D轉(zhuǎn)換的結(jié)果數(shù)據(jù)發(fā)送子程序:本程序用于完成向上位機(jī)傳送數(shù)據(jù)。3.2上位機(jī)的使用visualbasic6.0進(jìn)行設(shè)計(jì)。VB6.0有通訊控件Mscomnio該控件可設(shè)置串口通訊的數(shù)據(jù)發(fā)送與接收,對(duì)串M狀態(tài)及串口通訊的信息和協(xié)議進(jìn)行設(shè)置。對(duì)單片機(jī)采集過來的數(shù)據(jù)存儲(chǔ)利用VB的ADO控件來實(shí)現(xiàn),采川Acess數(shù)據(jù)庫,將所采集的數(shù)據(jù)存
8、入事先設(shè)定的表中,再在程序中讀出所需要的數(shù)據(jù)進(jìn)行換熱系數(shù)的計(jì)算。下面分別介紹。1、數(shù)據(jù)發(fā)送與接收程序首先,單片機(jī)與PC機(jī)的波特率必須是一致的,設(shè)它們之間以波特率2400b/s的傳輸速率進(jìn)行通訊,1位起始位,1位停止位,8位數(shù)據(jù)位,1位校驗(yàn)位,以二進(jìn)制的方式傳輸數(shù)據(jù)。PC機(jī)發(fā)送的第一個(gè)字節(jié)作為二者通訊的握手信號(hào)。單片機(jī)在接收到握手信號(hào)后會(huì)返回一個(gè)字節(jié),以表明握手是否成功。成功后,單片機(jī)向PC發(fā)送數(shù)據(jù)。下面是一?部分源程序???Comml.settings二"2400,N8,1”〃波特率:2400b/s,N.8.1Comml.InBufferSi
9、ze=20〃設(shè)置接收緩沖區(qū)為20字節(jié)Comml.OutBufferSize=2//設(shè)置發(fā)送緩沖區(qū)位2字節(jié)Comm1.InputMode=comlnputModeBi