基于AVR的精密數(shù)字壓力表的設(shè)計
該文提出了 一種以ATMEGA32單片機為控制核心的新型精密數(shù)字壓力表的設(shè)計方法。介紹了該系統(tǒng)整體結(jié)構(gòu)和利用單片機 實現(xiàn)多機通信的工作原理及軟硬件設(shè)計。
1.引言
在科技飛速發(fā)展的今天,新技術(shù)、新產(chǎn)品層出不窮,尤其是電子技術(shù)的發(fā)展給我們的生活帶來了巨大的變化,計算機微處理器 技術(shù)的發(fā)展使人類許多夢想變成現(xiàn)實。在儀器、儀表行業(yè),從前單功能的模擬儀器儀表正向著數(shù)字化、多功能、智能化方向發(fā)展。當 前,在許多需要長時期工作的儀表設(shè)計中,儀表的功耗與精度是設(shè)計者首先面臨的問題,在精度滿足要求的前提下,選擇低功耗、微 功耗元件及處理器,并在設(shè)計時應(yīng)用低功耗思想成為必然的選擇。下面就筆者在設(shè)計數(shù)字式壓力表中應(yīng)用的技術(shù)簡要予以介紹。
2.壓力表構(gòu)成
在壓力表的整個設(shè)計過程中,我們始終圍繞微功耗、高性能這一核心來完成項目指標。
所采用的硅壓陽式壓力傳感器抗過載和抗沖擊能力強、溫度漂移小、穩(wěn)定性高,具有很高的測量精度,由于其具有體積小、安裝 使用方便、靈敏度高、性能穩(wěn)定等特點,所以在各種正負壓力測量中得到廣泛應(yīng)用。
MCU采用ATMEGA32,ATMEG32大多數(shù)指令執(zhí)行時間為單個時鐘周期,硬件乘法器只需兩個時鐘周期,32K字節(jié)的系統(tǒng)內(nèi)可 編程Flash及1024字節(jié)的EEPROM,其擦寫壽命分別可達10,000次與100,000次。多達6種睡眠模式:空閑模式、ADC噪聲抑制模 式、省電模式、掉電模式、Standby模式以及擴展的Standby模式,速度可達16MHz,是一款名副其實的高性能、低功耗的微處理器。
MCP4921是一款帶串行接口的12位D/A轉(zhuǎn)換芯片,其設(shè)定時間快至4.5us,精度可達±0.2 LSB DNL,±2 LSB INL,兩種增益輸 出模式,多用于一些要求高精度的工業(yè)場合。
HT1621是128點內(nèi)存映象和多功能的LCD驅(qū)動器,HT1621 的軟件配置特性使它適用于多種LCD應(yīng)用場合包括LCD模塊和 顯示子系統(tǒng),用于連接主控制器和HT1621的管腳只有4或5條,
重要的是HT1621還有一個節(jié)電命令用于降低系統(tǒng)功耗。
美信公司的MAX232收發(fā)器所具有的低電源、多通道特點又 為實現(xiàn)低功耗、多機通訊提供了條件。系統(tǒng)框圖如圖1。
3.V/I轉(zhuǎn)換電路
將一個電壓源信號線性地轉(zhuǎn)換為電流源信號,在儀器儀表及 自動化系統(tǒng)設(shè)計中經(jīng)常會遇到。對這種電路的基本要求是:
1)輸出電流與輸入電壓成正比;
2)輸出電流為恒流源。即當負載電阻在規(guī)定范圍內(nèi)變化時,
輸出電流保持不變;
3)輸出電流對電源變化、環(huán)境溫度等的變化不敏感。
一般地,還要附加一個要求,即輸入電壓與輸出電流共地。
一種典型的V/I變換器要求將1~5V輸入電壓線性地轉(zhuǎn)換為4~
20mA電流源輸出,基本精度在0.3%以內(nèi);當負載在0~300D變化 時,輸出電流變化應(yīng)在規(guī)定精度之內(nèi)。
依此要求我們設(shè)計了一種實用化電路(框圖如圖2),其電路 原理在此不再做詳細介紹,經(jīng)過按照此電路設(shè)計的產(chǎn)品驗證,其 精度在要求范圍內(nèi),有很好的性價比。
4.多機通信實現(xiàn)
隨著計算機技術(shù)和通訊技術(shù)的發(fā)展,目前在工業(yè)過程控制、數(shù)據(jù)采集、辦公自動化等方面,都出現(xiàn)了利用計算機和單片機組成 主從式系統(tǒng),以實現(xiàn)集中監(jiān)控和無紙辦公.在這些系統(tǒng)中,單片機一般是充當從機,用于執(zhí)行數(shù)據(jù)采集、處理和控制,而計算機則用于 人機接口管理和系統(tǒng)資源的高層摳制(數(shù)據(jù)的存儲和檢索、顯示界面的更新、從機的調(diào)度等)。這類系統(tǒng)中計算機與單片機的數(shù)據(jù)通 訊技術(shù)是決定整個系統(tǒng)性能的關(guān)鍵。
4.1 RS-232串行總線接口
目前RS-232是PC機及通信工業(yè)中應(yīng)用最廣泛的一種串行接口。RS-232被定義為一種在低速率串行通信中增加通信距離的 單端標準。RS 一 232采取不平衡傳輸方式,即所謂單端通信。典型的RS-232信號在正負電平之間擺動,在發(fā)送數(shù)據(jù)時,發(fā)送端驅(qū)動 器輸出正電平在+5V~+15V之間,負電平在-5V—15V之間。當無數(shù)據(jù)傳輸時,線上為TTL電平,從開始傳送數(shù)據(jù)到結(jié)束,線上電平 從TTL電平到RS-232電平再返回TTL電平。接收器典型的工作電平在+3V~+12V與-3V—12V之間。經(jīng)典RS-232接口是為點對 點(即一對收、發(fā)設(shè)備)通信而設(shè)計的。
4.2計算機和單片機通訊接口硬件電路
由于計算機的串行口是采用RS-232C標準,其電器特性與單片機的TTL電平不同,如要互連,必須進行電平轉(zhuǎn)換。這種電平的 轉(zhuǎn)換有多種方式,可以采用標準的RS-232C電平轉(zhuǎn)換器MC1488和MC1489來完成,也可以采用三極管等分立件組成電路進行電 平轉(zhuǎn)換,還可以利用集成的RS232接口芯片進行電平轉(zhuǎn)換,本設(shè)計就采用了 MAXIM公司的MAX232。綜合各種方式,利用標準的 1488和1489需要正負12V電源;利用分立件組成電路,故障點較多;因此,利用集成的接口芯片是最好的選擇。
4.3 一對多RS-232串口電路的實現(xiàn)
為了實現(xiàn)1臺PC機與多個從機進行數(shù)據(jù)通信,將各主、從系統(tǒng)的RS-232通信電路按下圖所示進行設(shè)計。每個從機使用1個 驅(qū)動器作為回送主機驅(qū)動電路(圖中驅(qū)動器1),使用另一驅(qū)動器作為驅(qū)動下一從機的驅(qū)動電路(圖中驅(qū)動器2)只使用1個接收器作 為接收轉(zhuǎn)換電路。具體方案如下:
主機發(fā)送回路TXD:將主機發(fā)送TXD及第3腳連接到第1個從機MAX232的接收器。接收器的輸出分為2路,其中l(wèi)路輸 入到從機的CPU,而另l路再輸人到其MAX232的驅(qū)動器2,再將驅(qū)動器2的輸出輸入到下一從機接收器。如此將所有從機串聯(lián)起 來。這樣主機的負載與點對點時是一樣的,從而大大地減輕了主機的負載;并且傳送距離由主機和各從機共同承擔,相對而言縮短 了傳輸線路的長度,減小了線路上的分布電容,增強了驅(qū)動能力,可靠性也得到了提高。
主機接收回路RXD:因各從機在待機時驅(qū)動器輸出都處于 低電平,若將它們直接并接到主機的RXD,則當某一從機收到命 令要向主機回送數(shù)據(jù)時,其驅(qū)動器輸出因被其它從機驅(qū)動器輸出 拉死在低電平而不能送出高電平。因此,各從機MAX232的驅(qū)動 器l輸出需經(jīng)二極管隔離后再并聯(lián)在一起,連接到主機的第2腳 RXD。這樣,各從機驅(qū)動器輸出之間的電平互不干擾,且每個從機 回送數(shù)據(jù)的負載與點對點時也相同。
4.4通訊軟件設(shè)計
1)計算機通訊軟件的設(shè)計
計算機上通訊軟件可以使用Windows的API函數(shù)來實現(xiàn)。其 中用到的函數(shù)有:GreatFile,ReadFile,WriteFile,PurgeComm,Get- CommState,SetCommState.這些函數(shù)的使用可以參考編程語言的相關(guān)資料,設(shè)計時主要是對串口參數(shù)的設(shè)定需要根據(jù)與單片機通訊的特點,設(shè)置波特率、每幀信息為II位(8位數(shù)據(jù)位,I位起始位,I 位結(jié)束位,還I位第9位),注意這里的第9位是用奇偶校驗位來區(qū)分地址幀還是數(shù)據(jù)命令幀。這種通訊方式可以采用累加和的校驗 方法進行數(shù)據(jù)的可靠性校驗。
2)單片機通訊軟件的設(shè)計
單片機的通訊軟件設(shè)計中,使用了串口中斷方式來完成通訊的收發(fā)。定時器I(T1)作為波特率發(fā)生器,串行口設(shè)置為方式2或方 式3,由第9位區(qū)分地址幀還是命令幀。當某臺單片機的地址與計算機發(fā)出的地址一致時,這臺單片機就發(fā)出應(yīng)答信號給計算機,這 樣就可以實現(xiàn)計算機和多臺單片機的通訊了。
本電路設(shè)計為一對多通信方式,每個從機分配一個不同的地址,地址碼和通信數(shù)據(jù)中的字符不能相同或沖突。主機可呼叫每 一個從機,從機不能呼叫主機,從機之間不能通信。
4.總結(jié)
本系統(tǒng)以ATMEGA32為核心,對壓力傳感器發(fā)送過來的信號進行處理。可利用液晶和按鍵或PC機界面實現(xiàn)人機交互。主要功 能包括壓力檢測、量程設(shè)置、峰值設(shè)置、報警設(shè)置、與PC機通訊等。通過RS-232總線實現(xiàn)了單片機和PC機的多機通信,具有很高 的測量精度;且系統(tǒng)的硬件電路簡單,軟件編程可靠,具有較高的實用價值。
上一篇:壓力表的正確選擇與安裝
下一篇:精密壓力表誤差分析