微波EDA网,见证研发工程师的成长!
首页 > 测试测量 > 测试测量技术文库 > 基于嵌入式系统的远程参数测量的方法和实现

基于嵌入式系统的远程参数测量的方法和实现

时间:10-31 来源:互联网 点击:

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 系统引导,片选逻辑和dram 控制器的系统管理器,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 数据库方式,数据库能够通过系统的NMP 代理被远方操作员的 SNMP 控制平台所访问存取。传输协议为以太网的 IP 协议。信息同时能够被本地操作显示,因此本地附有串行接口,基于以上应用需求,实现系统框图如下图 1 所示。

图 1 系统原理框图(Fig1 System Diagram)

本系统需采集远端、本地两个温度检测,一个光照度检测,三个直流 DC 8-130V 电压检测,三个直流 DC 0-20A@12VDC 电流检测,一个交流 AC 105-280V 电压检测,一个交流AC 0-20A@120VAC 电流检测。测量使用原理及所用传感器件下节叙述。系统硬件平台采用3C2410X 标准硬件平台,主 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 所示。

直流电压的采集可以直接通过电阻分压取得,因为已知需要采集的直流电压的范围,将最大电压值映射为 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%。体积小,直接焊接

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top