?
摘要: 由于嵌入式系統性價比高開發周期短等優點目前得到了迅猛發展。本文介紹了
基于三星嵌入式ARM9芯片S3C2410X的遠程參數包括電壓電流、溫度、光敏度等的測量監
控系統,敘述了系統的軟硬件開發技術,以及參數測量傳感器應用。測量參數以SNMP的
MIB數據庫存儲,并可通過IP網絡遠程訪問控制。系統設計方案先進,產品在實際生活
中也得到了廣泛的應用。
?
關鍵詞: 嵌入式系統,S3C2410X,參數測量,網絡遠程監控
?
Method and Realization of Measuring Remote Parameters
Based on Embedded System
YUAN San-nan?? WANG Shao-xu
(Shanghai University of Electric Power?? Department of C.S. & INFO.? Shanghai?
200090)
?
ABSTRACT: The embedded system has got rapidly development because of its high
performance price ratio and short developing period. This paper introduced a
remote measurement and monitoring system based on Samsung’s ARM920T processor
S3C2410X. The parameters included AC and DC voltage and current, temperature
and luminous flux, they were stored in SNMP MIB database, and can be accessed
through IP network. This paper described hardware and software development
technology, the application of measurement sensors. The system had advanced
technology, and was widely used in practice.
?
KEYWORDS:Embedded System, S3C2410X, Parameter Measurement, Network Remote
Monitoring
?
1. 概述
?
目前嵌入式系統發展非常迅速,各類基于 ARM 處理器的應用開發更是如火如荼,這主要
是由于嵌入式系統的高性價比和較短的開發周期短,并且可以實現于多種多樣的應用系
統中。本文介紹了基于三星公司的 ARM9 嵌入式芯片 S3C2410 構建的測量監控系統,以
該 ARM 芯片為主 CPU,實現了交流、直流電壓、電流的測量,本地及附近溫度的測量以
及光敏度的測量,將測量的結果存儲于本地 MIB 數據庫中,并通過 IP 網絡協議實現遠
程訪問監控。系統設計方案先進,集成度較高,在實踐中得到了廣泛的應用。??
?
?2. 嵌入式 ARM9 S3C2410X 簡介
?
S3C2410X 是三星公司提供的基于 ARM920T 內核的 32 位 RISC 處理器,它的低功耗、低價
格、高性能設計特別適合于手持設備和通用嵌入式應用場合,為降低整個系統的成本,
它提供了豐富的內部設備,包括分開的 16KB 指令 Cache 和 16KB 數據 Cache,MMU 虛擬
存儲器管理,24bbp 模式下最大 16M 色 TFT LCD 控制器,支持 NAND Flash 系統引導,片
選邏輯和 sdram 控制器的系統管理器,3 通道 UART,4 通道 DMA,4 通道 PWM 定時器,117
個通用 IO 端口和 24 通道外部中斷源,具有日歷功能的 RTC,8 通道 10 位 ADC 和觸摸屏
接口,IIC、IIS 接口,USB 主從設備,SD&MMC 卡接口,2 通道的 SPI 以及 PLL 時鐘倍頻
器。它采用了 AMBA 新型微控制器總線結構,極大地提高了數據及指令的傳輸速度。其
加強的ARM體系結構MMU可用于WinCE和Linux等操作系統的移植, 并支持各種低價格、
大容量的 NOR/NAND Flash 或 EEPROM 啟動。最高工作頻率達到 266MHz,并基于小封裝
272FBGA。ARM 內核具有標準 JTAG 結構,為應用系統開發提供了方便的調試工具。目前
市場上具有很多通用的開發工具可以用于 S3C2410X 的調試開發。
?
由于 S3C2410X 具有豐富的接口和內嵌硬件控制器,因此使用其最簡系統即可實現大部
分應用系統的功能。其最簡系統如圖 1 所示,僅包括 S3C2410X ARM9 芯片、32 位 sdram,
價格低廉的大容量 Nand Flash。為了實現串口和網口通信,需增加串口電平轉換芯片
MAX232 和網絡 MAC 和 PHY 芯片 DM9000(或 LAN9115) 。系統中其他模塊均用于實現各種
參數的測量傳感等功能。
?
3. 嵌入式測量監控系統設計
?
本系統需對被測設備如電力設備或太陽能的電壓、電流或溫度、光照度等進行測量、參
數采集、存儲,并實現遠程監控。數據存儲格式為 SNMP 的 MIB 數據庫方式,數據庫能
夠通過系統的 SNMP 代理被遠方操作員的 SNMP 控制平臺所訪問存取。傳輸協議為以太網
的 IP 協議。信息同時能夠被本地操作顯示,因此本地附有串行接口,基于以上應用需
求,實現系統框圖如下圖 1 所示。?
?
?
圖 1? 系統原理框圖(Fig1 System Diagram)?
?
本系統需采集遠端、本地兩個溫度檢測,一個光照度檢測,三個直流 DC 8-130V 電壓檢
測,三個直流 DC 0-20A@12VDC 電流檢測,一個交流 AC 105-280V 電壓檢測,一個交流
AC 0-20A@120VAC 電流檢測。測量使用原理及所用傳感器件下節敘述。系統硬件平臺采
用 S3C2410X 標準硬件平臺,主 CPU 帶 sdram 作為主存,NAND Flash 作為程序存儲空間,
并從 NAND Flash 進行啟動,其臨時數據庫存放于 sdram 中,當到一定時間間隔,或者
接收到命令時,將 sdram 中的數據庫備份到 Flash 中。測量時通過 ARM9 的 IO 端口測量
溫度和光照度, 通過片內ADC將交直流電壓電流通過傳感器轉變后的輸出電壓進行采樣,
然后通過 CPU 計算后存入數據庫。
?
4. 參數測量實現
?
各參數測量是本系統的前端電路,也是最終目的。由于 ARM 系統 3.3V 供電,具有通用
IO 接口和內置 ADC 電路,因此只要將各測量參數通過相應的傳感設備轉換為 IO 數據或
0-3.3V 的模擬電壓量,就可通過 ARM 處理器采集,從而轉換為數字信號進而數字存儲或
通過網絡傳輸。各參數的測量采集電路見圖 2 所示。?
?圖 2? 參數測量原理
?
?
直流電壓的采集可以直接通過電阻分壓取得,因為已知需要采集的直流電壓的范圍,將
最大電壓值映射為 3.3V,即可獲得圖 2 中的兩個分壓電阻的值。測量時,將 ARM 采集得
到的 ADC 值乘以已知的系數即可得到當前的直流電壓值。為了對 CPU IO 的保護,電路
中加了BAV99雙二極管進行保護。 設分壓電阻分別是12KΩ和470KΩ, 則Uo = 12/(12+470)
×Ui = Ui/40,按照 ARM 10 位 ADC 采樣結果,如 ADC 采樣值為 Uadc,則采集到的輸入
電壓值為:Ui = [ Uadc/1024] ×3.3×40(V)。
?
交流電壓的采集采用 TV19G_E 系列精密電壓互感器,該器件采用坡膜合金鐵芯,線性度
優于 0.1%。體積小,直接焊接在電路板。全封閉,抗電強度高。它是一種電流型電壓互
感器,不同的輸入電壓通過限流電阻使一次側流過不同的電流,二次得到一個與一次相
同的電流。經運算放大器或電阻直接取樣,得到不同的輸出電壓,如圖 2 所示。
?
此時采集到的電壓值實際上是交流電壓的瞬時值,其實時性好,相位失真小,本文用軟
件代替硬件實現交流電壓采集可以使得硬件投資減小,實踐證明,采用該方法并通過算
法計算后獲得的電壓、電流、有功功率、功率因數等電力參數有著較好的精確度和穩定
性。
電壓有效值公式為將其離散化,以一個周期內有限個采樣電壓數字量來
代替一個周期內連續變化的電壓函數值,則式中 ΔTm為相鄰兩次采
樣的時間間隔;um 為第 m-1 個時間間隔的電壓采樣瞬時值;N 為 1 個周期的采樣點數。
若相鄰兩采樣的時間間隔相等,即 ΔTm 為常數 ΔT,考慮到 N=(T/ΔT)+1,則有
值。功率因數為 cosφ=P/UI。系統的采樣時間間隔由用戶確定。采樣時,在 1 個信號周
期內等時間間隔準確采樣 16 點并存儲結果,采集完后,對采集的數據進行數字濾波并
計算得到相應的值。
?
交直流電流的采集采用霍爾器件 ACS752SCA-050 和 ACS706ELC-20A,其工作原理相同,
支持的最大電流分別為-50A 到+50A 和-20A 到+20A。它將流過該器件的電流通過霍爾感
應后再處理放大輸出相應的電壓值,該電壓值和流過的電流值成正比,其比例關系如圖
3a 所示。當流過電流為 0 時,輸出電壓為 2.5V(5V 供電),當流過電流為 50A 時,輸
出電壓為 4.5V,當流過電流為-50A 時,輸出電壓為 0.5V,其間為線性變化,由此按照
測出的電壓值可以計算出電流為 I=25×(V-2.5)A,由于電流可以正反方向,因此用同
樣的方法可以測試交流和直流電流。
?
系統中溫度測量采用 DS18B20 分辨率可編程單線數字溫度計,并可結聯使用,其應用原
理如圖 2 所示。測量溫度范圍為-55 度至+125 度,精度可達 0.5 度,數字精度可編程為
9 至 12bit。該芯片僅單線輸出,可連接 CPU 的 IO 管腳,需進行編程控制。本系統采用
Linux 操作系統下的 IO 輸入輸出設備驅動控制進行讀寫操作,進而實現溫度數據的采
集,具體的程序流程如下節所述。
??
圖 3a 電流感應輸出電壓關系圖?? 圖 3b 光照度頻率關系圖?
?
系統中光照度測量采用光敏傳感器 TSL235 電路,該電路是光照度到頻率的轉換電路,
內置一個硅光敏二極管和電流到頻率的轉換器,輸出為 50%占空比的不同頻率的方波,
管腳只有電源、地和輸出,輸出可直接和 CPU 的 IO 相連,CPU 通過 TIMER 控制或中斷檢
測即可測得該方波的頻率,從而可計算出相應的光照度。其光照度和頻率的關系曲線如圖 3b 所示。
5. 軟件模塊?
?
?
?
?
本系統軟件在 linux 操作系統下實現,其軟件結構如圖 4 所示。按照需求定義,需實現
多種軟件協議,有 EIA232, IEEE802.3, IPv4, ICMP, ARP, TCP, UDP, SNMP V2,3 Agent,
NTP Client, DNS Client, TFTP Server, HTTP Server, TELNET Server 等。系統啟動
時需對硬件和軟件模塊進行初始化和診斷,并將診斷結果實時輸出到串口。然后將控制
權交給操作系統。 操作系統和應用程序存儲于 flash 中, 當具體運行時裝載到 sdram 中。
啟動時讀取用戶配置文件(或默認配置)并進行各種參數的配置,如通信速率、IP 地址
等,然后開始測量、收集、存儲數據在 sdram 和 flash 的 MIB 數據庫中。當有網絡或串
口用戶進行通信時完成數據交換和命令的實現。
?
系統中 ADC、IO 等操作均采用設備驅動方法實現,先編寫設備驅動程序,將驅動加入到
操作系統中,然后在應用中調用驅動程序。如 DS18B20 溫度采集采用 IO 操作的方法。
先建立 IO 驅動, module_init(DS18B20_init), 主要實現設備注冊 register_chrdev(240,
"ds18b20", &DS18B20_fops)。DS18B20_fops 文件操作主要包括 ioctl,通過 ioctl 中
WriteOneChar,ReadOneChar 等 IO 的控制實現溫度的采集。
?
6.結語
?
本文介紹了基于 S3C2410X ARM 的參數測量系統,該系統可針對電力設備的電壓、電流、
溫度、光敏度等進行測量、采集,存儲于系統內部基于 SNMP 的 MIB 數據庫中,并通過
網絡協議進行遠程訪問。系統采用 ARM 嵌入式實現,性價比高,功能強,在實際中得到
了很好的應用。
?
參考文獻:
[1] 王學德,周敏,高璟,一種基于ARM核處理器的嵌入式網絡溫度傳感器設計,機械管理
開發 ,2006年03期.
[2] S3C2410X User's manual,
http://www.hhcn.org/maindoc/um_s3c2410s_rev12_030428.pdf.
[3] 劉俊峰,李雪玲,基于單片機的電力監控系統交流采樣技術的實現, 單片機及嵌入
圖 4 系統軟件結構 式系統應用. 2001年第1期 P.330-332
[4] DS18B20 Programmable Resolution 1-Wire Digital Thermometer.
http://www.maxim-ic.com.cn/pdfserv/en/ds/DS18B20.pdf
[5] Current Sensor: ACS750xCA-050, ACS706ELC-20A, datasheet of Allegro
Microsystems, Inc.
http://www.allegromicro.com/en/Products/Part_Numbers/0750/0750-050.pdf
[6] TSL235, light-to-frequency converter, datasheet of Texas Instruments Inc.
http://focus.ti.com/lit/ds/symlink/tsl235.pdf
?
作者袁三男,男,1967年 2 月出生,籍貫江蘇蘇州,博士,副教授,畢業于上海交通大
學電子信息學院通信與信息系統專業,現從事上海電力學院電子及通信的教學和科研工
作。主要研究方向為嵌入式系統及流媒體網絡。
通信地址:上海平涼路 2103 號計信學院,200090
Email:samuel.yuan@tom.com
?
作者王紹徐,女,1967 年 7 月出生,籍貫浙江紹興,畢業于上海交通大學電子工程系,
現擔任上海電力學院電子及通信的教學和科研工作。主要研究方向為嵌入式系統應用。
評論
查看更多