FPGA的自動采集控制系統(tǒng)_第1頁
FPGA的自動采集控制系統(tǒng)_第2頁
FPGA的自動采集控制系統(tǒng)_第3頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、FPGA的自動采集控制系統(tǒng)1 系統(tǒng)工作原理通過傳感器實現(xiàn)對外界環(huán)境溫度的采集,并將采集到的溫度信號傳送給FPGA芯片,F(xiàn)PGA芯片能夠自主地對采集的溫度信號進行處理,并能通過LED顯示當前溫度,同時自動將采集到的溫度信號與預設的溫度進行比較得出正確的比較結果,通過I/O端口輸出控制外圍設備對環(huán)境溫度進行控制,從而達到實時溫度控制的目的。本設計中主要有溫度采集模塊、FPGA芯片模塊、LED數(shù)字顯示模塊三部分,系統(tǒng)原理框圖如圖1所示。通過FPGA編程來實現(xiàn)對溫度傳感器的實時溫度數(shù)據(jù)采集,并且實時地處理采集到的數(shù)據(jù),將采集到的數(shù)據(jù)轉換為BCD碼通過8段LED數(shù)碼管顯示出此前的溫度。與此同時,采集到的

2、數(shù)據(jù)將會與存儲在芯片里的溫度預設值比較,并自動產(chǎn)生比較結果,控制外圍設備對被測空間的溫度實施調節(jié)控制,從而達到恒溫的目的,溫度傳感器采集出的溫度數(shù)據(jù)通過二進制數(shù)組片選選擇數(shù)據(jù)通過LED顯示,選擇的數(shù)據(jù)再與標準溫度進行比較,溫度過高降溫處理、溫度過低則升溫處理。2 主要功能模塊的實現(xiàn)控制模塊如圖2所示,其中兩個PNP三極管的作用是在P1輸出控制信號時起到開關作用,根據(jù)圖中的三極管接法,當輸出控制信號為低電平時,三極管通導,此時P2繼電器中有電流通過,使其3和6引腳接通。設計中由于采用的三極管對電流的要求較高,而又由于繼電器內部可以認為相當于是一個電感,因此在繼電器剛剛上電的時刻,三極管發(fā)射極和集

3、電極電流將會很大,很容易將三極管燒毀,因此加裝穩(wěn)壓二極管D2,使繼電器上電工作的時刻,瞬間電流通過二極管回路而不是通過三極管,就可以有效保護三極管不被燒毀。外部輸出信號為低電平時,p2回路導通,引腳6與引腳3有電流,p3導通開始工作,當溫度過低時,燈泡點亮;當溫度過高時,風扇工作。從而實現(xiàn)對溫度的實時控制。3 軟件設計及仿真結果本設計中采用FPGA芯片作為核心控制部分。在本設計中軟件模塊主要包括溫度傳感器控制及數(shù)據(jù)接收模塊,溫度數(shù)據(jù)處理模塊,溫度顯示模塊。3.1 溫度數(shù)據(jù)處理模塊傳感器數(shù)據(jù)處理模塊tempture的頂層電路圖如圖3所示,它的作用主要是將12位二進制的溫度信號轉換為用BCD碼表示

4、的3位十進制數(shù),輸入的12位溫度信號中其中的高8位二進制代碼轉換為2組4位的BCD碼,例如輸入二進制碼為“00010110”,代表十進制數(shù)為“22”,輸出 BCD碼為“00100010”對應的十進制數(shù)個位、十位均為“2”和“2”;然后將剩余的低4位二進制代碼轉換為4位BCD碼,如輸入二進制碼為 “1110”,代表10進制數(shù)小數(shù)為“0.875”,若只取一位小數(shù)位,則取“8”,其BCD碼可表示為“1000”。通過三個輸出端口分別輸出十位、個位和小數(shù)位。對溫度數(shù)據(jù)處理模塊tempture-進行仿真測試。假定預設置輸入溫度二進制的代碼為“000101111011”,則其對應十進制數(shù)應為:“23.6”。

5、仿真結果如圖4所示。根據(jù)頂層原理圖,a3. . 0輸出為溫度數(shù)值的十位數(shù),b3.0輸出為溫度數(shù)值的個位數(shù),c3.0輸出為溫度數(shù)值的小數(shù)位。則仿真圖中,shi、fen、ge三位輸出的數(shù)字分別為“2”、“3”、“6”,仿真結果與預測轉換結果一致。3.2 溫度顯示模塊設計采用了4個8段式的LED數(shù)碼管可以動態(tài)顯示溫度的百位、十位、個位與分位。下圖為溫度顯示模塊的頂層電路,由圖可知,模塊由片選模塊、譯碼轉換模塊與計數(shù)器三者組成。片選模塊主要由一個二進制計數(shù)器和四選一電路組成。當系統(tǒng)工作時,先將二進制計數(shù)器在clk控制下依次連續(xù)產(chǎn)生4個兩位二進制數(shù)組,來控制片選模塊選擇性的輸出shi3.0、ge3.0、

6、fen3. 。 0、bai3. 。 0四路輸入信號中任意的一路。將選出的這一路輸入信號交給譯碼轉換模塊,利用二進制計數(shù)器產(chǎn)生的連續(xù)二進制數(shù)組,可以控制譯碼器依次輸出對應的4位二進制數(shù)組來依次點亮各個LED數(shù)碼管。最后,可以在LED上顯示出數(shù)字,讀取結果。對溫度顯示模塊display進行軟件仿真測試,設置輸入shi3.0、fen3.0、ge3.0分別是“0100”、“0011”、“0010”,則其對應10進制數(shù)應為“43.2”。仿真結果如圖6所示。由仿真示意圖可看出,片選信號由時鐘信號控制循環(huán)變化,而對應輸出的ledout端也依次輸出shi,fen,ge,bai四個端口輸入的數(shù)據(jù),且輸出的是8位

7、LED數(shù)碼管顯示碼,從圖中可以讀出,當片選信號為“0111”時,對應的輸出信號ledout為“11000000”,即表示在數(shù)碼管上的顯示為 0,小數(shù)點不亮,表示百位為0;當片選信號為“1011”時,對應的輸出信號ledout為“10011001”,在數(shù)碼管上的顯示為4,小數(shù)點不亮,表示十位為4;當片選信號為“1101”時,對應輸出ledout為“10110000”,在數(shù)碼管上的顯示即為3,表示個位為3;當片選信號為 “1110”時,對應輸出ledout為“00100100”,在數(shù)碼管上的顯示即為2,小數(shù)點點亮,表示小數(shù)位為2。動態(tài)掃描后可知,數(shù)碼管上顯示的內容即為“043.2”。與輸入的數(shù)據(jù)相同,說明程序編寫正確,系統(tǒng)運用良好。4 測試數(shù)據(jù)由表1數(shù)據(jù)顯示,LED數(shù)碼管上顯示的溫度與實際測量的溫度,從表中可以得出,兩者近似相等,誤差在0%0.58%之間,是可以接受的誤差范圍。表2是指設定了所需溫度,記錄溫度變化的過程與實現(xiàn)這一目標所需的時間。例如第一次中,我們設定的溫度為20,開始LED上顯示的溫度值為17.5,最后經(jīng)過自動控制系統(tǒng)溫度升高到20.2,這一過程共用時30分鐘。誤差也是存在的,誤差在1%左右,也是可以接受的范圍。5 結

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論