咨詢電話
ENGLISH0755-88840386發(fā)布時(shí)間:2019-12-05 09:52:24 |來源:網(wǎng)絡(luò)轉(zhuǎn)載
1 引言
行車稱重顯示控制器是冶金工業(yè)現(xiàn)場稱重的重要設(shè)備之一,它廣泛應(yīng)用于工礦企業(yè)、物資部門貨物稱重。但目前所使用的行車稱重器分布零散,不便統(tǒng)一管理。有鑒于此,我們研制了基于虛擬儀器的分布式行車稱重顯示控制器。
虛擬儀器是目前測控領(lǐng)域中最為流行的技術(shù)之一。它是計(jì)算機(jī)硬、軟件和計(jì)測技術(shù)、儀器儀表技術(shù)共同結(jié)合的產(chǎn)物,計(jì)算機(jī)友好的人機(jī)交互、方便快捷的即時(shí)在線幫助,強(qiáng)大的圖形和數(shù)據(jù)處理功能,大容量存儲(chǔ)以及顯示,文件管理、打印輸出等功能,徹底的彌補(bǔ)了傳統(tǒng)硬件化儀器的不足,使得虛擬式儀器成為先進(jìn)的智能化儀器。
Lab Window/CVI (Cfor Vinual Instrument)是目前虛擬儀器開發(fā)的常用軟件,它以最常用的C語言為基礎(chǔ),使虛擬儀器開發(fā)變得更加方便、靈活、功能更強(qiáng)大,所以在研制行車稱重顯示控制器時(shí),我們采用了Lab Window/CVl作為上位機(jī)的編程軟件。
在該稱重顯示控制器中,下位機(jī)用89C51單片機(jī),完成控制對(duì)象的數(shù)據(jù)采集和直接控制,上位機(jī)( IMB-PC機(jī))使用LabWindows/CVI的軟件開發(fā)平臺(tái),應(yīng)用LabWindows/CVI多種開發(fā)功能,對(duì)測量數(shù)據(jù)進(jìn)行顯示、處理、存儲(chǔ)及參數(shù)設(shè)定。通訊標(biāo)準(zhǔn)采用FIA RS-232C串行接口,形成分布式微機(jī)控制系統(tǒng)。
2 硬件設(shè)計(jì)
2.1 工作原理
將圓柱式電阻應(yīng)變式傳感器采用吊掛式安裝在行車上,傳感器在軸向有一個(gè)或幾個(gè)電阻應(yīng)變片,在圓周方向也有同樣數(shù)目的電阻應(yīng)變片。當(dāng)傳感器受力時(shí),電阻應(yīng)變片發(fā)生變形,導(dǎo)致電阻的變化,測量電橋?qū)⒂善胶廪D(zhuǎn)為不平衡,電阻的信號(hào)轉(zhuǎn)化為微弱的毫伏級(jí)電信號(hào),經(jīng)過預(yù)處理后,可作為被測信號(hào)送人A/D轉(zhuǎn)換器。
我們?cè)O(shè)計(jì)的行車稱重顯示控制器有4種工作方式:第1種方式下,可對(duì)第1路信號(hào)進(jìn)行測量;第2種方式下,對(duì)第2路信號(hào)進(jìn)行測量;第3種方式下,循環(huán)對(duì)兩路信號(hào)進(jìn)行測量;第4種方式下,可對(duì)行車稱重顯示控制器的工作參數(shù)進(jìn)行設(shè)定。
使用時(shí),先通過撥碼開關(guān)對(duì)行車稱重顯示控制器設(shè)定好工作方式,被測信號(hào)、標(biāo)準(zhǔn)電壓信號(hào)、模擬地信號(hào)均送人模數(shù)轉(zhuǎn)換AD654。進(jìn)行A/D轉(zhuǎn)化后的脈沖信號(hào)送人89C51,通過計(jì)數(shù)器定時(shí)計(jì)數(shù)與基準(zhǔn)信號(hào)計(jì)數(shù)結(jié)果比較來讀取毫伏電壓信號(hào),再把毫伏電壓信號(hào)還原成重量信號(hào)的數(shù)字描述。并通過89C51實(shí)現(xiàn)打印、顯示、報(bào)警、通訊,上位機(jī)可對(duì)數(shù)據(jù)進(jìn)行進(jìn)一步的處理和存儲(chǔ),實(shí)現(xiàn)分布式測控。
2.2硬件電路
行車稱重顯示儀表系統(tǒng)組件主要由多路選擇電路、信號(hào)處理電路、顯示電路、鍵盤電路、報(bào)警電路、通訊接口、擴(kuò)展EPROM接口及校正自啟動(dòng)電路等組成。
(1)多路選擇電路
單片機(jī)設(shè)計(jì)的行車稱重顯示控制器,需要對(duì)多路信號(hào)進(jìn)行采集和處理,如果每一路都采用各自的輸入回路,即每一路都采用放大、采樣/保持,A/D轉(zhuǎn)換等環(huán)節(jié),不僅成本比單路成倍的增加,而且會(huì)導(dǎo)致系統(tǒng)體積龐大,且由于模擬器件、阻容元件參數(shù)特性的不一致性,對(duì)系統(tǒng)的校準(zhǔn)帶來了很大的困難;并且對(duì)于多路巡檢信號(hào)采集情況,每路單獨(dú)采用一個(gè)回路幾乎是不太可能。因此,除了特殊的情況下采用多路獨(dú)立的放大、A/D和D/A外,通常采用公共的采樣/保持及A/D轉(zhuǎn)換回路(有時(shí)甚至可將某些放大電路公用),而要實(shí)現(xiàn)這種設(shè)計(jì),往往采用多路模擬開關(guān)。多路開關(guān)的作用主要是用于信號(hào)切換,如某一時(shí)刻接通某一路,讓該路信號(hào)輸入、其他路斷開,從而達(dá)到信號(hào)切換的目的。
行車稱重顯示控制器中的信號(hào)多路選擇電路設(shè)計(jì)采用常用的CD4051芯片。CD4051是一種8選1的多路選擇開關(guān),輸入信號(hào)8路,輸出1路。CD4051選擇8路輸入信號(hào)中的哪一路作為輸出是由控制信號(hào)A、B、C決定的。A、B、C組成一個(gè)數(shù)字序列。所以通過計(jì)數(shù)器CD4024發(fā)過來的信號(hào)Q0、Q1、Q2輸入到CD4051的A、B、C端就可以決定哪一路被選擇輸出。例如選擇第4路信號(hào)輸入作為輸出,只要CD4024的Q0、Q1腳發(fā)低電平,Q2發(fā)出高電平就可以了。
CD4024的第1腳CLK是脈沖輸入端,第2腳RST是清除端,高電平有效,它們通過光電耦合開關(guān)TLC521分別與CPU的PL0、PL1相連。當(dāng)CPU的PL1發(fā)出高并保持的時(shí)候,PL0不斷發(fā)出脈沖,CD4024計(jì)數(shù),通過PL0、PL1,發(fā)脈沖可控制CD4024計(jì)數(shù),
使計(jì)數(shù)值Q0、Q1、Q2作為8選1的多路選擇開關(guān)CD4051的A、B、C信號(hào)的輸入,所以通過PL0、PLl可改變CD4024計(jì)數(shù)值Q0、Q1、Q2送CD4051就可以決定哪一路Vx被選擇輸出。
(2)頻率測量電路
經(jīng)多路選擇電路輸出的信號(hào)經(jīng)過OP07放大后送入AD654,轉(zhuǎn)換得到的頻率信號(hào)利用89C51記數(shù)測量。在單片機(jī)內(nèi)由軟件實(shí)現(xiàn)80ms的定時(shí),通過單片機(jī)的T0進(jìn)行定時(shí)內(nèi)的AD654的輸出脈沖記數(shù),一旦定時(shí)時(shí)間到,就讀出T0的記數(shù)值,供后面的計(jì)算使用。
(3)顯示及鍵盤電路
我們將空閑的串行口用作顯示、鍵盤接口。共用6片74LS164來擴(kuò)展I/O口。其中顯示用5片74LS164.采用準(zhǔn)靜態(tài)的顯示方式,每片74LS 164送數(shù)據(jù)同時(shí)到對(duì)應(yīng)的LED數(shù)碼管,通過89C51的PL5腳發(fā)出顯示數(shù)據(jù).PL6腳發(fā)出驅(qū)動(dòng)電平,控制顯示74LS 164的時(shí)鐘,以保證一組參數(shù)的完整顯示;余下的一片74LS164實(shí)現(xiàn)鍵盤接口,也使用P L5腳發(fā)出掃描數(shù)據(jù).P L7腳用作掃描數(shù)據(jù)的移位脈沖,實(shí)現(xiàn)對(duì)6根鍵盤線的掃描,鍵盤數(shù)據(jù)回收線接入89C51的P 3.5腳。
鍵盤的連接是采用8位串行輸入并行輸出移位寄存器74LS164來構(gòu)成行列式鍵盤。采用編程掃描方式,來取得鍵號(hào)。89C51的P 3.5口接鍵盤的行線,用來回收鍵掃描數(shù)據(jù),行線X0~X7的電位作為鍵掃描口。Q 0~Q 7接列線作為鍵輸人口。P :5接74LS1 64的A、B端,依次串行輸出值。
在該單片機(jī)的應(yīng)用系統(tǒng)中,使用的顯示器為LED(發(fā)光二極管顯示器),這種顯示器成本低廉.配置靈活,與單片機(jī)接口方便,L ED顯示塊是由發(fā)光二極管顯示字段的顯示器件。在單片機(jī)系統(tǒng)中通常使用的是7段LED,這種顯示塊有共陰極和共陽極2種。
我們采用的是共陰極,共陰極LED顯示塊的發(fā)光二極管陰極共地,7段顯示塊與單片機(jī)的接口非常容易:只要將一個(gè)74LS164的8位并行輸出口與顯示塊的發(fā)光二極管的引腳相連即可。8位并行輸出口輸出不同的字節(jié)數(shù)據(jù)即可獲得不同的數(shù)字或字符。
通常將控制發(fā)光二極管的8位字節(jié)數(shù)據(jù)稱為段選碼。由于要顯示的字?jǐn)?shù)不多,采用靜態(tài)顯示方式下共陰極連接在一起接地,每位的段選線與一個(gè)74LS1648位并行口相連,每一位可獨(dú)立顯示,只要在該位的段選線卜保持段選碼電平,該位就能保持相應(yīng)的顯示字符。
由于每一位有一個(gè)8位輸出口控制段選碼,故在同一時(shí)間里每一位顯示的字符可以各不相同,每片74LS164送數(shù)據(jù)同時(shí)到對(duì)應(yīng)的LED數(shù)碼管,通過89C51的P L5腳發(fā)出顯示數(shù)據(jù),P L6腳發(fā)出驅(qū)動(dòng)電平,控制照示74LS 164的時(shí)鐘,以保證一組參數(shù)的完整礁示.
(4)外圍芯片24C02
24C02是近年來推出的EEPROM系列產(chǎn)品之一,它的串行接口為PCBLTS接日,常用普通的2根I/O口線串行傳輸;具有頁寫模式;白同步寫周期為10ms,具有寫保護(hù)措施;10萬次寫人次數(shù),100萬年數(shù)據(jù)保存, A0,A1,A2為芯片地址線,單片使用時(shí)一般接Vss;SCL為串行移位時(shí)鐘;SDA為串行數(shù)據(jù)或地址通過SDA,CPIT可對(duì)芯片寫入或讀出數(shù)據(jù);WP為寫保護(hù)若WP接Vcc芯片只讀.
這里24C02用作系統(tǒng)的EEPROM,用于存入儀器的E F限報(bào)警值,儀表的量程。單片使用A0,A1,A2,Vss均接地。串行時(shí)鐘SCL接89C51的PL4引腳,串行數(shù)據(jù)或地址線SDA接89C51的PL5引腳。
由于24C02寫入的數(shù)據(jù)停電不丟失,占用極少的I/O資源,非常適合于各類儀器儀表的參數(shù)保存,它的引入使儀表的硬件結(jié)構(gòu)十分簡潔、系統(tǒng)擴(kuò)展極為方便
(5)單片機(jī)應(yīng)用系統(tǒng)中的l/()n擴(kuò)展
MCS-51單片機(jī)共有4個(gè)并I/O口,但這些I/O口并不能完全提供給用戶使用:,只有對(duì)于片內(nèi)有ROM/EPROM的單片機(jī)8051/8751,在不使用外部擴(kuò)展時(shí),才允許這4個(gè)I/O口做為用戶使用,然『面對(duì)于大多數(shù)使用6031以及使用8051/875l需外部扣“展時(shí),MCS-51單片機(jī)可提供給用戶使用的P1口和部分P1口線,,因此,在大部分的MC.S-51單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)巾都不可避免地要進(jìn)行I/O口的擴(kuò)展。
在單片機(jī)應(yīng)用系統(tǒng)中,8255與MCS-51單片機(jī)連接方式簡單,其工作方式由程序設(shè)定8255可編程并行I/O芯片由以下4個(gè)邏輯結(jié)構(gòu)組成:
數(shù)據(jù)總線驅(qū)動(dòng)器,這是雙向3態(tài)的8位驅(qū)動(dòng)器,用于和單片機(jī)的數(shù)據(jù)總線相連,以實(shí)現(xiàn)單片機(jī)與 8255芯片的數(shù)據(jù)傳送。并行I/O端門,A 口、B口和C口 這3個(gè)8位I/O端口功能完全Fh編程決定,但每個(gè)口都有自己的特點(diǎn)
讀/寫控制邏輯.它用于管理所有的數(shù)據(jù)、控制字或狀態(tài)字的傳送。它接收單片機(jī)的地址線和控制信號(hào)米控制各個(gè)口的工作狀態(tài)。CS為8255的片選信號(hào),RD為控制信號(hào),WR為寫控制端。A0、A1為口地址選擇。通過A0、A1可選中8255的4個(gè)寄存器。
口地址選擇如下:A0、A1為00,選輸出寄存器A(A口),為01選輸出寄存器B(B口),10選輸出寄存器C(C口),為1l選控制寄存器(控制口)。RESET為復(fù)位端,當(dāng)RESET=1時(shí),8255復(fù)位。復(fù)位狀態(tài)是:控制寄存器被清除,所有接口(A、B、C)被置入輸入方式。
這里采用89C51的P0口與8255的數(shù)據(jù)總線相連,8255的讀寫控制信號(hào)RD、WD和89C51的讀寫控制信號(hào)RD、WD相連。8951的P20、P21控制8255的A0、A1進(jìn)行口地址選擇。8255的A口接打印機(jī)接口,B口通過鎖存器74LS373接繼電器實(shí)現(xiàn)報(bào)警功能。
(6)通信口電路
上位機(jī)(IMB-PC機(jī))串行口給出的是標(biāo)準(zhǔn)電平,89C51給出的是TTL電平,這兩種電平互不兼容,必須將TTL電平與RS-232C電平進(jìn)行轉(zhuǎn)換。通常+5V和士12V電源供電,而且工作不穩(wěn)定。
我們使用INTERSIL公司生產(chǎn)的ICL232集成電路,它是單片集成雙RS-232發(fā)送/接收器,采用單一+5V電源供電,內(nèi)部有兩組電壓轉(zhuǎn)換電路,外接至多是4個(gè)電容.兩只電阻便可以構(gòu)成標(biāo)準(zhǔn)的RS-232C通訊接口。
由多個(gè)下位單片機(jī)通過RS-232C總線與上位PC機(jī)連接可成為一個(gè)多微機(jī)控制系統(tǒng),上位機(jī)通過地址識(shí)別可以同時(shí)管理多個(gè)單片機(jī)系統(tǒng)。
3 軟件設(shè)計(jì)
在該稱重顯示控制器中,下位機(jī)用89C51單片機(jī),完成控制對(duì)象的數(shù)據(jù)采集和直接控制,上位機(jī)( IMB-PC機(jī))使用LabWindows/CVI的軟件開發(fā)平臺(tái),對(duì)測量數(shù)據(jù)進(jìn)行顯示、處理、存儲(chǔ)及參數(shù)設(shè)定,形成分布式微機(jī)控制系統(tǒng)。其軟件相應(yīng)的也就可以分為由匯編語言編寫的下位機(jī)軟件部分和用LabWindows/CVI開發(fā)的上位機(jī)軟件部分。
3.1下位機(jī)軟件部分
單片機(jī)對(duì)控制對(duì)象的數(shù)據(jù)采集和直接控制由主程序調(diào)用各個(gè)功能子程序?qū)崿F(xiàn)。功能子程序主要包括:數(shù)據(jù)采集及計(jì)算程序、顯示程序、鍵盤程序、通訊程序、打印程序等。
3.2上位機(jī)軟件部分
基于標(biāo)準(zhǔn)的C語言的半圖形化的開發(fā)工具LabWin-dows/CVI,不僅提供了對(duì)虛擬儀器的支持能力,還具有各種測試、控制和數(shù)值分析能力,集成了數(shù)據(jù)庫開發(fā)的軟件包,使得該工具能適應(yīng)大型分布式測試應(yīng)用系統(tǒng)的開發(fā)要求,開發(fā)功能更加強(qiáng)大。
所以,我們選用LabWindows/CVI作為上位機(jī)的工作平臺(tái),利周計(jì)算機(jī)的圖形能力和數(shù)值功能建立圖形化的虛擬儀器面板,RS232總線作為LabWindows/CVI的I/O接口設(shè)備,通過特定的算法實(shí)現(xiàn)對(duì)測量數(shù)據(jù)進(jìn)行顯示、處理、存儲(chǔ)及參數(shù)設(shè)定。
首先,我們根據(jù)任務(wù)確定程序的基本框架如程序界面、程序中所需的函數(shù)等。然后,根據(jù)第一步制定的方案創(chuàng)建用戶圖形界面及回調(diào)函數(shù)名,讓計(jì)算機(jī)生成程序代碼及回調(diào)函數(shù)的基本框架,添加函數(shù)代碼,完成源代碼的編制工作。最后,編譯、調(diào)試程序。把頭文件,用戶圖形界面文件,源代碼文件添加到項(xiàng)目文件中去,完成整個(gè)程序的編制。
4 結(jié)束語
分布式行車稱重顯示控制器精度高、功能強(qiáng)、使用方便?;谔摂M儀器的設(shè)計(jì)使用戶的操作方便直觀,克服了稱重器地理位置分布零散不便統(tǒng)一管理的缺點(diǎn),真正的實(shí)現(xiàn)了自動(dòng)化的統(tǒng)計(jì)管理。
參考文獻(xiàn)
1 涂時(shí)亮,張友德,陳章龍.單片微機(jī)軟件設(shè)計(jì)技術(shù),1988.
2 何立民.單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì),北京航空航天大學(xué)出版社,1994.
3 秦樹人,虛擬儀器及其最新發(fā)展,振動(dòng)、測試與診斷,2000,6.
4 李臘元,官本云,智能儀器儀表.科學(xué)出版社,1993.
5 王蘭省,李振海.虛擬儀器系統(tǒng)開發(fā)技術(shù).測控技術(shù), 1999,4.8
本文源于網(wǎng)絡(luò)轉(zhuǎn)載,如有侵權(quán),請(qǐng)聯(lián)系刪除