引言
在道路、橋梁施工等建筑領(lǐng)域中,有很多從國外引進(jìn)的原料加工控制設(shè)備。這些設(shè)備上的操作系統(tǒng)并不是我們常見的WINDOWS操作系統(tǒng),盡管它可以實(shí)現(xiàn)數(shù)據(jù)打印功能,但這些數(shù)據(jù)無法用文件存儲(chǔ)到WINDOWS操作系統(tǒng)的管理PC機(jī)中,因此不便于對這些數(shù)據(jù)進(jìn)行統(tǒng)計(jì)和分析,嚴(yán)重影響了管理效率。為此,需要對這些設(shè)備進(jìn)行功能擴(kuò)充,使之能夠按要求對所需數(shù)據(jù)進(jìn)行存儲(chǔ),并提供相應(yīng)的數(shù)據(jù)分析和處理功能,從而方便管理部門工作,提高生產(chǎn)效率和項(xiàng)目的管理質(zhì)量。
方案分析
在不影響原有設(shè)備正常工作的前提下,完成并行打印機(jī)的數(shù)據(jù)采集功能,考慮有以下2種方案:
?。?)在數(shù)據(jù)輸出到打印紙后,利用掃描儀識(shí)別打印紙上的數(shù)據(jù),并將識(shí)別后的數(shù)據(jù)輸入到管理PC機(jī)的數(shù)據(jù)管理軟件中。
?。?)在控制設(shè)備與打印機(jī)之間添加一個(gè)數(shù)據(jù)采集裝置,該裝置從控制設(shè)備連接到打印機(jī)的并行口截取數(shù)據(jù),并完成向管理PC機(jī)的數(shù)據(jù)轉(zhuǎn)發(fā)管理PC機(jī)負(fù)責(zé)接收、統(tǒng)計(jì)和分析數(shù)據(jù)的功能,如圖1所示。
圖1 數(shù)據(jù)采集方案示意圖
對比以上2種方案,方案(1)需要定期人為地操作掃描儀,工作量大,投入高,而且數(shù)據(jù)不可能保證完全識(shí)別正確;方案(2)中的數(shù)據(jù)采集裝置完全可以脫離人工干預(yù),使用方便,性價(jià)比較高,因此采用方案(2)。
IEEE委員會(huì)在1994年3月公布了新的IEEE1284并行接口標(biāo)準(zhǔn),對并行口的5種工作模式進(jìn)行了定義。這5種模式分別是Centronics兼容模式(也叫標(biāo)準(zhǔn)模式)、字節(jié)(Byte)傳輸模式、半字節(jié)(Nibble)傳輸模式、增強(qiáng)并行端口(EPP)模式和擴(kuò)展功能端口(ECP)模式。連接打印機(jī)的并行口通常工作在Centronics兼容模式,其他4種模式對并行口引腳定義與該模式的完全兼容,因此數(shù)據(jù)采集系統(tǒng)針對該模式的特點(diǎn)進(jìn)行設(shè)計(jì),也利于今后擴(kuò)展和升級(jí)其他并行口設(shè)備數(shù)據(jù)采集系統(tǒng)。
并行口有25針和36針兩種,打印機(jī)配備36針的標(biāo)準(zhǔn)插頭插座實(shí)際上只利用了25針插頭插座中的信號(hào),25個(gè)引腳信號(hào)可分為數(shù)據(jù)信號(hào)、控制信號(hào)和狀態(tài)信號(hào)三類
Centronics并行口通信速度最快只能達(dá)到150kB/S,筆者對控制設(shè)備和目標(biāo)打印機(jī)EPSON LQ-1600K III進(jìn)行測試發(fā)現(xiàn),二者之間的通信速度為50kB/S。
硬件設(shè)計(jì)
根據(jù)并行口的工作特點(diǎn),筆者采用以51系列的單片機(jī)為核心的硬件電路完成并行口數(shù)據(jù)采集和轉(zhuǎn)發(fā)功能。系統(tǒng)電路框圖如圖2所示,主要包括6個(gè)組成部分:
?。?)中央處理器??刂圃O(shè)備與打印機(jī)的通信速度不算高速,因此采用性價(jià)比較高的AT89C52作為核心處理單元。其片內(nèi)包括256個(gè)字節(jié)的RAM,大部分可用作數(shù)據(jù)接收緩沖區(qū),這樣不必再外擴(kuò)RAM單元。STROBE信號(hào)作為外部中斷源0,每當(dāng)STROBE信號(hào)的下降沿出現(xiàn)時(shí),表示數(shù)據(jù)處于有效狀態(tài),CPU通過P1口讀取采集數(shù)據(jù)。CPU的工作頻率選擇在22.1184MHz,以保證有足夠長的中斷程序響應(yīng)時(shí)間。
(2)信號(hào)預(yù)處理。采集系統(tǒng)不能影響控制設(shè)備和打印機(jī)正常工作,因此需要對并行口輸入信號(hào)進(jìn)行緩沖及光電隔離。緩沖芯片選擇74HC245,光耦選擇6N137。
(3)數(shù)據(jù)鎖存。并行口上數(shù)據(jù)線的數(shù)據(jù)保持時(shí)間很短,鎖存單元保證了CPU每次讀取數(shù)據(jù)的正確性。鎖存芯片選擇74HC573。
?。?)看門狗及電源監(jiān)視。選用X5045芯片,完成系統(tǒng)上電復(fù)位、死機(jī)復(fù)位和電源電壓異常復(fù)位的功能。
?。?)通信電路。這里選用MAX232異步通信接口芯片完成數(shù)據(jù)轉(zhuǎn)發(fā)到管理PC機(jī)的功能。
?。?)電源。該部分負(fù)責(zé)為各電路模塊提供所需的電源。
圖2 系統(tǒng)電路框圖
硬件設(shè)計(jì)主要電路圖如圖3所示。
圖3 系統(tǒng)主要硬件電路圖
軟件設(shè)計(jì)
圖4程序流程圖
圖4為單片機(jī)程序流程圖,程序由主程序和中斷服務(wù)程序構(gòu)成。其中,中斷服務(wù)程序負(fù)責(zé)及時(shí)采集接受控制設(shè)備發(fā)送到并行口的有效數(shù)據(jù),并存放于緩沖區(qū)。主程序主要負(fù)責(zé)與管理PC機(jī)進(jìn)行串行通信,轉(zhuǎn)發(fā)緩沖區(qū)中的數(shù)據(jù)。這樣,管理PC機(jī)只需要用可視化編程語言實(shí)現(xiàn)一個(gè)數(shù)據(jù)接收、文件存儲(chǔ)功能的軟件即可為今后的數(shù)據(jù)統(tǒng)計(jì)、分析奠定基礎(chǔ)。
結(jié)語
本文在分析并行打印接口工作特點(diǎn)的基礎(chǔ)上,設(shè)計(jì)出以51單片機(jī)為核心的并行口數(shù)據(jù)采集系統(tǒng)。該系統(tǒng)已經(jīng)成功應(yīng)用于高速公路的若干施工單位中,運(yùn)行經(jīng)驗(yàn)表明該設(shè)計(jì)簡單、穩(wěn)定、可靠,極大地方便了施工單位對各種原料數(shù)據(jù)的統(tǒng)計(jì)和分析。