新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 簡易自動控制原理實驗系統(tǒng)設(shè)計

簡易自動控制原理實驗系統(tǒng)設(shè)計

作者: 時間:2016-11-30 來源:網(wǎng)絡(luò) 收藏

圖3 采樣電路原理圖

  由于ATmega16 內(nèi)部ADC 為八選一數(shù)據(jù)通道,在具體實現(xiàn)某路數(shù)據(jù)采集時就必須更改多工選擇寄存器ADMUX 的數(shù)值。為能隨時更改通道,本設(shè)計采用主從方式,通過上位機發(fā)送給ATmega16 的數(shù)值來改變通道。同時,在串行接口接收中斷后,通過接收的數(shù)值的編碼也可用來改變ADC 相鄰兩次轉(zhuǎn)換之間的延時值,從而達到改變轉(zhuǎn)換速率的效果。本系統(tǒng)采用0 - 7 為通道選項,當(dāng)數(shù)據(jù)大于7 時為更改采樣速率值。當(dāng)數(shù)據(jù)更改操作完成后程序立即返回主程序,此時ADC 轉(zhuǎn)換由新的參數(shù)運行。

  2. 3 下位機軟件設(shè)計

  下位機軟件包括信號發(fā)生器軟件和數(shù)據(jù)采集軟件兩部分。信號發(fā)生器采用AT89S52 型單片機加AD9833 型的DDS 芯片構(gòu)成,軟件編程使用環(huán)境為Keil uVision 4.數(shù)據(jù)采集模塊采用ATmega16 型單片機構(gòu)成,軟件編程使用環(huán)境為AVR GCC 和AVR studio 4.下位機軟件設(shè)計的關(guān)鍵是能使程序能即時完成數(shù)據(jù)的接收和發(fā)送,同時保證數(shù)據(jù)的準(zhǔn)確,為此,系統(tǒng)采用中斷響應(yīng)的方式完成串行數(shù)據(jù)接收,同時完成ADC 轉(zhuǎn)換以及數(shù)據(jù)的發(fā)送。下位機程序分為主程序、串行接收中斷和ADC 轉(zhuǎn)換完成中斷三部分,其流程圖如圖4 所示。在主程序中主要完成串口和ADC 寄存器的初始化,初始化完成后啟動片內(nèi)ADC 的第一次轉(zhuǎn)換,隨即系統(tǒng)進入等待中斷狀態(tài),若接收到停止信號,系統(tǒng)馬上停止。當(dāng)系統(tǒng)響應(yīng)到串行接收數(shù)據(jù)中斷,通過接收的數(shù)值對ADC 轉(zhuǎn)換的通道和采集速度進行相應(yīng)的修改,當(dāng)修改完成后立即返回主程序。當(dāng)ADC 每次轉(zhuǎn)換完成相應(yīng)標(biāo)志位置位,程序跳轉(zhuǎn)到ADC 轉(zhuǎn)換并完成中斷運行。此時系統(tǒng)讀取轉(zhuǎn)換的數(shù)值并處理,隨即通過串口將該數(shù)據(jù)發(fā)送給上位機。當(dāng)串口數(shù)據(jù)發(fā)送完成后起動延時; 另外當(dāng)延時完成后,系統(tǒng)將ADC 轉(zhuǎn)換起動標(biāo)志位置位,然后進行下一次轉(zhuǎn)換。下位機程序運行的整個過程中,系統(tǒng)通過中斷方式完成,具有響應(yīng)及時、提高單片機處理內(nèi)部和外部事件能力的優(yōu)點。

圖4 下位機程序流程圖  2. 4 上位機前面板設(shè)計

  系統(tǒng)采用LabVIEW 開發(fā)平臺制作上位機軟件,即在PC 機上設(shè)計出虛擬示波器。系統(tǒng)虛擬示波器上位機軟件界面如圖5 所示。從圖5 可知,上位機具有串口參數(shù)調(diào)節(jié)、數(shù)據(jù)波形顯示、數(shù)據(jù)存儲、數(shù)據(jù)回放、以及采樣通道及速率選擇等功能。虛擬示波器在波形顯示過程中,用戶可根據(jù)個人喜好對曲線顏色、數(shù)據(jù)采集速率和通道等參數(shù)的進行設(shè)置。同時在實驗過程中,可以點擊波形存儲按鈕對接收到的數(shù)據(jù)以TXT 或其他格式的文件存儲在PC 機硬盤或其他外部磁盤中。用戶可根據(jù)需要隨時通過數(shù)據(jù)回放按鈕選擇文件查看數(shù)據(jù)波形或者將數(shù)據(jù)文件提供給Matlab 和Exel 等數(shù)據(jù)處理軟件進行分析處理,使用非常靈活方便。



關(guān)鍵詞: 自動控制AT89S5

評論


技術(shù)專區(qū)

關(guān)閉