?
摘要: 由于嵌入式系統(tǒng)性價比高開發(fā)周期短等優(yōu)點(diǎn)目前得到了迅猛發(fā)展。本文介紹了
基于三星嵌入式ARM9芯片S3C2410X的遠(yuǎn)程參數(shù)包括電壓電流、溫度、光敏度等的測量監(jiān)
控系統(tǒng),敘述了系統(tǒng)的軟硬件開發(fā)技術(shù),以及參數(shù)測量傳感器應(yīng)用。測量參數(shù)以SNMP的
MIB數(shù)據(jù)庫存儲,并可通過IP網(wǎng)絡(luò)遠(yuǎn)程訪問控制。系統(tǒng)設(shè)計(jì)方案先進(jìn),產(chǎn)品在實(shí)際生活
中也得到了廣泛的應(yīng)用。
?
關(guān)鍵詞: 嵌入式系統(tǒng),S3C2410X,參數(shù)測量,網(wǎng)絡(luò)遠(yuǎn)程監(jiān)控
?
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. 概述
?
目前嵌入式系統(tǒng)發(fā)展非常迅速,各類基于 ARM 處理器的應(yīng)用開發(fā)更是如火如荼,這主要
是由于嵌入式系統(tǒng)的高性價比和較短的開發(fā)周期短,并且可以實(shí)現(xiàn)于多種多樣的應(yīng)用系
統(tǒng)中。本文介紹了基于三星公司的 ARM9 嵌入式芯片 S3C2410 構(gòu)建的測量監(jiān)控系統(tǒng),以
該 ARM 芯片為主 CPU,實(shí)現(xiàn)了交流、直流電壓、電流的測量,本地及附近溫度的測量以
及光敏度的測量,將測量的結(jié)果存儲于本地 MIB 數(shù)據(jù)庫中,并通過 IP 網(wǎng)絡(luò)協(xié)議實(shí)現(xiàn)遠(yuǎn)
程訪問監(jiān)控。系統(tǒng)設(shè)計(jì)方案先進(jìn),集成度較高,在實(shí)踐中得到了廣泛的應(yīng)用。??
?
?2. 嵌入式 ARM9 S3C2410X 簡介
?
S3C2410X 是三星公司提供的基于 ARM920T 內(nèi)核的 32 位 RISC 處理器,它的低功耗、低價
格、高性能設(shè)計(jì)特別適合于手持設(shè)備和通用嵌入式應(yīng)用場合,為降低整個系統(tǒng)的成本,
它提供了豐富的內(nèi)部設(shè)備,包括分開的 16KB 指令 Cache 和 16KB 數(shù)據(jù) Cache,MMU 虛擬
存儲器管理,24bbp 模式下最大 16M 色 TFT LCD 控制器,支持 NAND Flash 系統(tǒng)引導(dǎo),片
選邏輯和 sdram 控制器的系統(tǒng)管理器,3 通道 UART,4 通道 DMA,4 通道 PWM 定時器,117
個通用 IO 端口和 24 通道外部中斷源,具有日歷功能的 RTC,8 通道 10 位 ADC 和觸摸屏
接口,IIC、IIS 接口,USB 主從設(shè)備,SD&MMC 卡接口,2 通道的 SPI 以及 PLL 時鐘倍頻
器。它采用了 AMBA 新型微控制器總線結(jié)構(gòu),極大地提高了數(shù)據(jù)及指令的傳輸速度。其
加強(qiáng)的ARM體系結(jié)構(gòu)MMU可用于WinCE和Linux等操作系統(tǒng)的移植, 并支持各種低價格、
大容量的 NOR/NAND Flash 或 EEPROM 啟動。最高工作頻率達(dá)到 266MHz,并基于小封裝
272FBGA。ARM 內(nèi)核具有標(biāo)準(zhǔn) JTAG 結(jié)構(gòu),為應(yīng)用系統(tǒng)開發(fā)提供了方便的調(diào)試工具。目前
市場上具有很多通用的開發(fā)工具可以用于 S3C2410X 的調(diào)試開發(fā)。
?
由于 S3C2410X 具有豐富的接口和內(nèi)嵌硬件控制器,因此使用其最簡系統(tǒng)即可實(shí)現(xiàn)大部
分應(yīng)用系統(tǒng)的功能。其最簡系統(tǒng)如圖 1 所示,僅包括 S3C2410X ARM9 芯片、32 位 sdram,
價格低廉的大容量 Nand Flash。為了實(shí)現(xiàn)串口和網(wǎng)口通信,需增加串口電平轉(zhuǎn)換芯片
MAX232 和網(wǎng)絡(luò) MAC 和 PHY 芯片 DM9000(或 LAN9115) 。系統(tǒng)中其他模塊均用于實(shí)現(xiàn)各種
參數(shù)的測量傳感等功能。
?
3. 嵌入式測量監(jiān)控系統(tǒng)設(shè)計(jì)
?
本系統(tǒng)需對被測設(shè)備如電力設(shè)備或太陽能的電壓、電流或溫度、光照度等進(jìn)行測量、參
數(shù)采集、存儲,并實(shí)現(xiàn)遠(yuǎn)程監(jiān)控。數(shù)據(jù)存儲格式為 SNMP 的 MIB 數(shù)據(jù)庫方式,數(shù)據(jù)庫能
夠通過系統(tǒng)的 SNMP 代理被遠(yuǎn)方操作員的 SNMP 控制平臺所訪問存取。傳輸協(xié)議為以太網(wǎng)
的 IP 協(xié)議。信息同時能夠被本地操作顯示,因此本地附有串行接口,基于以上應(yīng)用需
求,實(shí)現(xiàn)系統(tǒng)框圖如下圖 1 所示。?
?
?
圖 1? 系統(tǒng)原理框圖(Fig1 System Diagram)?
?
本系統(tǒng)需采集遠(yuǎn)端、本地兩個溫度檢測,一個光照度檢測,三個直流 DC 8-130V 電壓檢
測,三個直流 DC 0-20A@12VDC 電流檢測,一個交流 AC 105-280V 電壓檢測,一個交流
AC 0-20A@120VAC 電流檢測。測量使用原理及所用傳感器件下節(jié)敘述。系統(tǒng)硬件平臺采
用 S3C2410X 標(biāo)準(zhǔn)硬件平臺,主 CPU 帶 sdram 作為主存,NAND Flash 作為程序存儲空間,
并從 NAND Flash 進(jìn)行啟動,其臨時數(shù)據(jù)庫存放于 sdram 中,當(dāng)?shù)揭欢〞r間間隔,或者
接收到命令時,將 sdram 中的數(shù)據(jù)庫備份到 Flash 中。測量時通過 ARM9 的 IO 端口測量
溫度和光照度, 通過片內(nèi)ADC將交直流電壓電流通過傳感器轉(zhuǎn)變后的輸出電壓進(jìn)行采樣,
然后通過 CPU 計(jì)算后存入數(shù)據(jù)庫。
?
4. 參數(shù)測量實(shí)現(xiàn)
?
各參數(shù)測量是本系統(tǒng)的前端電路,也是最終目的。由于 ARM 系統(tǒng) 3.3V 供電,具有通用
IO 接口和內(nèi)置 ADC 電路,因此只要將各測量參數(shù)通過相應(yīng)的傳感設(shè)備轉(zhuǎn)換為 IO 數(shù)據(jù)或
0-3.3V 的模擬電壓量,就可通過 ARM 處理器采集,從而轉(zhuǎn)換為數(shù)字信號進(jìn)而數(shù)字存儲或
通過網(wǎng)絡(luò)傳輸。各參數(shù)的測量采集電路見圖 2 所示。?
?圖 2? 參數(shù)測量原理
?
?
直流電壓的采集可以直接通過電阻分壓取得,因?yàn)橐阎枰杉闹绷麟妷旱姆秶瑢?br />
最大電壓值映射為 3.3V,即可獲得圖 2 中的兩個分壓電阻的值。測量時,將 ARM 采集得
到的 ADC 值乘以已知的系數(shù)即可得到當(dāng)前的直流電壓值。為了對 CPU IO 的保護(hù),電路
中加了BAV99雙二極管進(jìn)行保護(hù)。 設(shè)分壓電阻分別是12KΩ和470KΩ, 則Uo = 12/(12+470)
×Ui = Ui/40,按照 ARM 10 位 ADC 采樣結(jié)果,如 ADC 采樣值為 Uadc,則采集到的輸入
電壓值為:Ui = [ Uadc/1024] ×3.3×40(V)。
?
交流電壓的采集采用 TV19G_E 系列精密電壓互感器,該器件采用坡膜合金鐵芯,線性度
優(yōu)于 0.1%。體積小,直接焊接在電路板。全封閉,抗電強(qiáng)度高。它是一種電流型電壓互
感器,不同的輸入電壓通過限流電阻使一次側(cè)流過不同的電流,二次得到一個與一次相
同的電流。經(jīng)運(yùn)算放大器或電阻直接取樣,得到不同的輸出電壓,如圖 2 所示。
?
此時采集到的電壓值實(shí)際上是交流電壓的瞬時值,其實(shí)時性好,相位失真小,本文用軟
件代替硬件實(shí)現(xiàn)交流電壓采集可以使得硬件投資減小,實(shí)踐證明,采用該方法并通過算
法計(jì)算后獲得的電壓、電流、有功功率、功率因數(shù)等電力參數(shù)有著較好的精確度和穩(wěn)定
性。
電壓有效值公式為將其離散化,以一個周期內(nèi)有限個采樣電壓數(shù)字量來
代替一個周期內(nèi)連續(xù)變化的電壓函數(shù)值,則式中 ΔTm為相鄰兩次采
樣的時間間隔;um 為第 m-1 個時間間隔的電壓采樣瞬時值;N 為 1 個周期的采樣點(diǎn)數(shù)。
若相鄰兩采樣的時間間隔相等,即 ΔTm 為常數(shù) ΔT,考慮到 N=(T/ΔT)+1,則有
值。功率因數(shù)為 cosφ=P/UI。系統(tǒng)的采樣時間間隔由用戶確定。采樣時,在 1 個信號周
期內(nèi)等時間間隔準(zhǔn)確采樣 16 點(diǎn)并存儲結(jié)果,采集完后,對采集的數(shù)據(jù)進(jìn)行數(shù)字濾波并
計(jì)算得到相應(yīng)的值。
?
交直流電流的采集采用霍爾器件 ACS752SCA-050 和 ACS706ELC-20A,其工作原理相同,
支持的最大電流分別為-50A 到+50A 和-20A 到+20A。它將流過該器件的電流通過霍爾感
應(yīng)后再處理放大輸出相應(yīng)的電壓值,該電壓值和流過的電流值成正比,其比例關(guān)系如圖
3a 所示。當(dāng)流過電流為 0 時,輸出電壓為 2.5V(5V 供電),當(dāng)流過電流為 50A 時,輸
出電壓為 4.5V,當(dāng)流過電流為-50A 時,輸出電壓為 0.5V,其間為線性變化,由此按照
測出的電壓值可以計(jì)算出電流為 I=25×(V-2.5)A,由于電流可以正反方向,因此用同
樣的方法可以測試交流和直流電流。
?
系統(tǒng)中溫度測量采用 DS18B20 分辨率可編程單線數(shù)字溫度計(jì),并可結(jié)聯(lián)使用,其應(yīng)用原
理如圖 2 所示。測量溫度范圍為-55 度至+125 度,精度可達(dá) 0.5 度,數(shù)字精度可編程為
9 至 12bit。該芯片僅單線輸出,可連接 CPU 的 IO 管腳,需進(jìn)行編程控制。本系統(tǒng)采用
Linux 操作系統(tǒng)下的 IO 輸入輸出設(shè)備驅(qū)動控制進(jìn)行讀寫操作,進(jìn)而實(shí)現(xiàn)溫度數(shù)據(jù)的采
集,具體的程序流程如下節(jié)所述。
??
圖 3a 電流感應(yīng)輸出電壓關(guān)系圖?? 圖 3b 光照度頻率關(guān)系圖?
?
系統(tǒng)中光照度測量采用光敏傳感器 TSL235 電路,該電路是光照度到頻率的轉(zhuǎn)換電路,
內(nèi)置一個硅光敏二極管和電流到頻率的轉(zhuǎn)換器,輸出為 50%占空比的不同頻率的方波,
管腳只有電源、地和輸出,輸出可直接和 CPU 的 IO 相連,CPU 通過 TIMER 控制或中斷檢
測即可測得該方波的頻率,從而可計(jì)算出相應(yīng)的光照度。其光照度和頻率的關(guān)系曲線如圖 3b 所示。
5. 軟件模塊?
?
?
?
?
本系統(tǒng)軟件在 linux 操作系統(tǒng)下實(shí)現(xiàn),其軟件結(jié)構(gòu)如圖 4 所示。按照需求定義,需實(shí)現(xiàn)
多種軟件協(xié)議,有 EIA232, IEEE802.3, IPv4, ICMP, ARP, TCP, UDP, SNMP V2,3 Agent,
NTP Client, DNS Client, TFTP Server, HTTP Server, TELNET Server 等。系統(tǒng)啟動
時需對硬件和軟件模塊進(jìn)行初始化和診斷,并將診斷結(jié)果實(shí)時輸出到串口。然后將控制
權(quán)交給操作系統(tǒng)。 操作系統(tǒng)和應(yīng)用程序存儲于 flash 中, 當(dāng)具體運(yùn)行時裝載到 sdram 中。
啟動時讀取用戶配置文件(或默認(rèn)配置)并進(jìn)行各種參數(shù)的配置,如通信速率、IP 地址
等,然后開始測量、收集、存儲數(shù)據(jù)在 sdram 和 flash 的 MIB 數(shù)據(jù)庫中。當(dāng)有網(wǎng)絡(luò)或串
口用戶進(jìn)行通信時完成數(shù)據(jù)交換和命令的實(shí)現(xiàn)。
?
系統(tǒng)中 ADC、IO 等操作均采用設(shè)備驅(qū)動方法實(shí)現(xiàn),先編寫設(shè)備驅(qū)動程序,將驅(qū)動加入到
操作系統(tǒng)中,然后在應(yīng)用中調(diào)用驅(qū)動程序。如 DS18B20 溫度采集采用 IO 操作的方法。
先建立 IO 驅(qū)動, module_init(DS18B20_init), 主要實(shí)現(xiàn)設(shè)備注冊 register_chrdev(240,
"ds18b20", &DS18B20_fops)。DS18B20_fops 文件操作主要包括 ioctl,通過 ioctl 中
WriteOneChar,ReadOneChar 等 IO 的控制實(shí)現(xiàn)溫度的采集。
?
6.結(jié)語
?
本文介紹了基于 S3C2410X ARM 的參數(shù)測量系統(tǒng),該系統(tǒng)可針對電力設(shè)備的電壓、電流、
溫度、光敏度等進(jìn)行測量、采集,存儲于系統(tǒng)內(nèi)部基于 SNMP 的 MIB 數(shù)據(jù)庫中,并通過
網(wǎng)絡(luò)協(xié)議進(jìn)行遠(yuǎn)程訪問。系統(tǒng)采用 ARM 嵌入式實(shí)現(xiàn),性價比高,功能強(qiáng),在實(shí)際中得到
了很好的應(yīng)用。
?
參考文獻(xiàn):
[1] 王學(xué)德,周敏,高璟,一種基于ARM核處理器的嵌入式網(wǎng)絡(luò)溫度傳感器設(shè)計(jì),機(jī)械管理
開發(fā) ,2006年03期.
[2] S3C2410X User's manual,
http://www.hhcn.org/maindoc/um_s3c2410s_rev12_030428.pdf.
[3] 劉俊峰,李雪玲,基于單片機(jī)的電力監(jiān)控系統(tǒng)交流采樣技術(shù)的實(shí)現(xiàn), 單片機(jī)及嵌入
圖 4 系統(tǒng)軟件結(jié)構(gòu) 式系統(tǒng)應(yīng)用. 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 月出生,籍貫江蘇蘇州,博士,副教授,畢業(yè)于上海交通大
學(xué)電子信息學(xué)院通信與信息系統(tǒng)專業(yè),現(xiàn)從事上海電力學(xué)院電子及通信的教學(xué)和科研工
作。主要研究方向?yàn)榍度胧较到y(tǒng)及流媒體網(wǎng)絡(luò)。
通信地址:上海平?jīng)雎?2103 號計(jì)信學(xué)院,200090
Email:samuel.yuan@tom.com
?
作者王紹徐,女,1967 年 7 月出生,籍貫浙江紹興,畢業(yè)于上海交通大學(xué)電子工程系,
現(xiàn)擔(dān)任上海電力學(xué)院電子及通信的教學(xué)和科研工作。主要研究方向?yàn)榍度胧较到y(tǒng)應(yīng)用。
評論
查看更多