嵌入式系統的遠程參數測量的設計
此時(shí)采集到的電壓值實(shí)際上是交流電壓的瞬時(shí)值,其實(shí)時(shí)性好,相位失真小,本文用軟件代替硬件實(shí)現交流電壓采集可以使得硬件投資減小,實(shí)踐證明,采用該方法并通過(guò)算法計算后獲得的電壓、電流、有功功率、功率因數等電力參數有著(zhù)較好的精確度和穩定性。
電壓有效值公式為
將其離散化,以一個(gè)周期內有限個(gè)采樣電壓數字量來(lái)代替一個(gè)周期內連續變化的電壓函數值,則

式中 ΔTm為相鄰兩次采樣的時(shí)間間隔;um 為第 m-1 個(gè)時(shí)間間隔的電壓采樣瞬時(shí)值;N 為 1 個(gè)周期的采樣點(diǎn)數。若相鄰兩采樣的時(shí)間間隔相等,即 ΔTm 為常數 ΔT,考慮到 N=(T/ΔT)+1,則有

周期內等時(shí)間間隔準確采樣 16 點(diǎn)并存儲結果,采集完后,對采集的數據進(jìn)行數字濾波并計算得到相應的值。
系統中溫度測量采用 DS18B20 分辨率可編程單線(xiàn)數字溫度計,并可結聯(lián)使用。測量溫度范圍為-55 度至+125 度,精度可達 0.5 度,數字精度可編程為9 至12bit。該芯片僅單線(xiàn)輸出,可連接 CPU 的 IO 管腳,需進(jìn)行編程控制。本系統采用Linux 操作系統下的 IO 輸入輸出設備驅動(dòng)控制進(jìn)行讀寫(xiě)操作,進(jìn)而實(shí)現溫度數據的采集,具體的程序流程如下節所述。

圖 3a 電流感應輸出電壓關(guān)系圖 圖 3b 光照度頻率關(guān)系圖
系統中光照度測量采用光敏傳感器 TSL235 電路,該電路是光照度到頻率的轉換電路,內置一個(gè)硅光敏二極管和電流到頻率的轉換器,輸出為 50%占空比的不同頻率的方波,管腳只有電源、地和輸出,輸出可直接和 CPU 的 IO 相連,CPU 通過(guò) TIMER 控制或中斷檢測即可測得該方波的頻率,從而可計算出相應的光照度。其光照度和頻率的關(guān)系曲線(xiàn)如圖 3b 所示。
5. 軟件模塊
本系統軟件在 linux 操作系統下實(shí)現,其軟件結構如圖 4 所示。

系統中 ADC、IO 等操作均采用設備驅動(dòng)方法實(shí)現,先編寫(xiě)設備驅動(dòng)程序,將驅動(dòng)加入到操作系統中,然后在應用中調用驅動(dòng)程序。如 ds18b20 溫度采集采用 IO 操作的方法。先建立 IO 驅動(dòng), module_init(DS18B20_init), 主要實(shí)現設備注冊 register_chrdev(240, ds18b20, DS18B20_fops)。DS18B20_fops 文件操作主要包括 ioctl,通過(guò) ioctl 中WriteOneChar,ReadOneChar 等 IO 的控制實(shí)現溫度的采集。
6.結語(yǔ)
本文介紹了基于 S3C2410X ARM 的參數測量系統,該系統可針對電力設備的電壓、電流、溫度、光敏度等進(jìn)行測量、采集,存儲于系統內部基于 SNMP 的 MIB 數據庫中,并通過(guò)網(wǎng)絡(luò )協(xié)議進(jìn)行遠程訪(fǎng)問(wèn)。系統采用 ARM 嵌入式實(shí)現,性?xún)r(jià)比高,功能強,在實(shí)際中得到了很好的應用。
linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)接地電阻相關(guān)文章:接地電阻測試方法
評論