基于FPGA的濕度測量系統(tǒng)設計
1)比較大小,如果被減數(shù)大于或等于減數(shù),差為正,符號記為0;如果減數(shù)小于被減數(shù),將被減數(shù)與減數(shù)的位置對調(diào),差為負,符號記為1;
本文引用地址:http://butianyuan.cn/article/235506.htm2)按照二進制法逐位減法運算;
3)從最低位開始包括被減數(shù)、減數(shù)、差的每4位組成一組,高位不夠4位用零補齊;
4)如果每一組的被減數(shù)大于減數(shù),則若差大于9,則差減去6,其他不變;
5)如果每一組的被減數(shù)小于等于減數(shù),則若差大于5(最小1組大于6),則差減去6,其他不變;
6)修正后的結果即為頻率差。
隨機設計了幾組數(shù)據(jù)進行仿真測試,如圖5所示,經(jīng)比對,結果正確。其中a8至a1為被減數(shù)a的高位至低位,即為標準晶振的頻率值;b8至b1為減數(shù)b的高位至低位,即為傳感晶振的頻率值;差為asb8至asb1,符號為sign。
?
?
3.4 物理量轉(zhuǎn)換模塊
在20%至85%這段相對濕度區(qū)間,頻率差與相對濕度值之間的曲線接近線性。設計中頻率差與相對濕度值之間的轉(zhuǎn)換以查找表的形式來實現(xiàn),一個濕度范圍對應一組頻率差。通常情況下,由于材料、制作工藝的不同,頻率差的變化也會有所不同。為了仿真,假定相對濕度變化1%時,頻率差變化2個值。
3.5 顯示驅(qū)動模塊
后端顯示用LCD1602液晶屏構成。由于1602中命令和數(shù)據(jù)共享總線,首先需要對其初始化,目的就在于對總線狀態(tài)、顯示樣式的設置。初始化過程為清屏→顯示狀態(tài)設置→工作方式設置→CG RAM設置→DD RAM設置。一旦初始化結束后,就可以將結果等內(nèi)容在液晶屏上動態(tài)顯示。
4 總體電路測試與仿真
為便于仿真觀察,程序上對時鐘和信號周期進行了修改,但設計思路不變,不影響整個的工作流程。打開Quartus II的仿真器,插入輸入輸出信號,依照實際情況給出輸入信號波形,仿真結果如圖6所示。其中clk20M為20 MHz的時鐘信號,經(jīng)20分頻,得到一個周期為的閘門信號(實際中為2s)。因為傳感石英晶體質(zhì)量因受濕度的影響而增加,其諧振頻率隨之下降,故傳感晶振頻率總小于標準晶振。cnt_clk0、cnt_ clk1分別為兩個通道的頻率信號,其周期設置在0 s~3.4μs為8 ns和10 ns,在3.4~6.4 μs至為19 ns和30 ns,在6.4~7.3μs至為35 ns和50 ns;系統(tǒng)一開始清零;result_Q為通道0的頻率測量值,result_Q1為通道1的頻率測量值。在仿真中取頻率的最大變化為50,每1%的相對濕度,有2的變化。由圖可看出,當系統(tǒng)在接到清零信號后,立即對計數(shù)寄存器進行了數(shù)據(jù)復位。當測量周期結束后,分別得到以下數(shù)值:在0 s~3.4μs這一段,通道0計數(shù)值為125,通道1為100,差值為25,濕度為50%;在3.4~6.4μs至,通道0為53,通道1為33,差值為20,濕度為40%。
?
?
5 結論
設計運用了功能強大的FPGA作為濕度測量系統(tǒng)的主要部件,充分發(fā)揮其高度集成的內(nèi)部資源和彌補了硬件上設計的漏洞和誤差。文中對相對濕度測量系統(tǒng)中的FPGA部分的程序進行了設計說明和仿真,給出總體電路的仿真結果。證明了設計方案的可行性,體現(xiàn)了軟件結合設計所帶來的簡便性和實用性。
如果將該FPGA測量平臺與其他外圍硬件電路組合,即可完成濕度測量系統(tǒng)的設計,同時也可用于特殊氣體的檢測。
塵埃粒子計數(shù)器相關文章:塵埃粒子計數(shù)器原理 晶振相關文章:晶振原理 土壤濕度傳感器相關文章:土壤濕度傳感器原理
評論