微波EDA网,见证研发工程师的成长!
首页 > 通信和网络 > 通信网络技术文库 > 基于Windows CE的远程数据采集与控制系统开发

基于Windows CE的远程数据采集与控制系统开发

时间:10-19 来源:3721RD 点击:

在传统的数据采集系统基础上,引入了基于Windows CE 5.0的嵌入式操作系统平台,通过GPRS(通用无线分组业务)的远程控制技术实现了一个远程数据采集与控制系统。实验结果表明,本文方法可以满足多任务、大容量、高实时性和高稳定性的系统要求,同时具有远程控制方便快捷、成本低等特点,具有良好的人机界面,在物联网和智能家居控制等领域具有一定的应用价值。

随着信息技术的飞速发展,数据采集系统在工业控制、智能仪器以及仪表检测等领域得到了广泛的应用[1]。传统的数据采集系统一般采用两种方式完成:(1)使用数据采集卡加微机系统;(2)采用各种单片机集成数据采集系统。前者虽然功能较强,但成本高、功耗大、普及性差。后者由于自身的资源有限,无法满足多任务、大容量、高实时性和高稳定性的要求。而在远程控制方面,工业上一般使用基于TCP/IP的控制模式,该方法虽然引入了网络技术,可以快速稳定地传输数据,但是成本较高、移动性较差且维护困难。因此,本文以Windows CE5.0作为操作系统平台,基于ARM9内核的S3C2440A作为微控制器,引入GPRS无线技术,实现了人机交互友好、扩展性强、实时性强、低功耗和低成本的远程数据采集与控制系统。本系统能对室内的温度、湿度等各种物理量进行检测控制,并按照要求进行反馈;对若干种家用电器进行监控,如电器电压、热水器流量等,以便用户及时发现问题(例如很多太阳能热水器容易出现爆裂等情况);此外可以加入视频采集与发送扩展模块,通过MMS协议模块发送实时图像数据。

1 系统结构

系统以S3C2440为控制器,由数据采集模块,GPRS模块、远程控制模块、报警系统模块、视频采集与发送模块以及其他可扩展的外围电路等组成。系统的结构框图如图1所示。

首先启动系统,用户可以随时通过GPRS网络向系统发出远程控制指令,例如发送"开始采集"指令,则系统开始利用ADC模块采集电压、流量、温度、湿度以及触摸屏坐标等模拟量,并且转化为相应的数字量,然后在人机界面上显示出来。一旦所采集的数据超过给定阈值,则系统向用户发出报警信息,以便于用户采取进一步的控制措施。

1.1 系统硬件设计

本系统的硬件开发平台以三星S3C2440为核心。S3C2440是以ARM920T为内核的32bit高性能微控制器、性价比高、功耗低、扩展功能丰富,因此应用非常广泛。其带有的MMU(存储管理单元),可以运行主流的嵌入式操作系统,如Linux以及WinCE[2]等。数据采集模块使用8路10bit的A/D转换器,该转换器有采样保持功能,可以实现独立转换和触摸屏位置转换两种模式,最高转换速率可达500KS/s[3]。A/D模块的应用接口电路如图2所示。其中8路通道除第5路和第7路用于触摸屏输入外其余均可使用,本文使用4路分别与温度采集传感器、湿度采集传感器、电阻器以及水流量传感器相接,因此可以并行采集4路信号互不干扰。

GPRS控制模块是以西门子公司TC35i为核心的GPRS modem。GPRS技术是基于二代移动通信技术的改进,因此也被称为2.5G。相对于GSM以电路交换数据的方式而言,GPRS采用分组交换技术,在传输费用、传输速率以及实时性上均优于前者。即使与最新的第三代移动通信技术相比,GPRS技术在成本、速度以及性价比等方面,依然具有一定的优势。TC35i提供了标准的9针RS-232接口,因此需要加入MAX232进行电平转换,与S3C2440的串口进行全双工通信[4]。图3所示为GPRS硬件接口电路,其中GSM基带处理器是TC35i的核心部件,用来处理串口指令,J1为SIM卡座。

外围报警设备通过S3C2440提供的PWM定时器,由通用输入输出GPIO口来控制。

1.2 系统软件设计

1.2.1 AT指令集

本系统使用的GPRS模块采用的是GSM07.05规范,它规定了SMS的DTE-DCE接口标准,即AT指令集。AT(Attention AT)命令集是从TE(Terminal Equipment)或DTE(Data Terminal Equipment)向TA(Terminal Adapter)或DCE(Data Circuit Terminating Equipment)发送,并通过TATE发送AT命令来控制MS(Mobile Station)的功能,实现与GSM网络业务的交互。用户可以通过AT命令进行控制[4]。本文主要使用短消息相关的AT命令集。如发送AT+CMGF=n,其中n为0,选择PDU格式,n=1,选择文本方式。如发送AT+CSCA=<string>来选择运营商,string=+8613800270500;即选择中国移动。在文本格式下发送AT+CMGS="string"(string)为对方手机号码,成功则返回">"然后输入要发送的内容以"^Z"结束。本文的GPRS类都是通过调用串口驱动来实现相关的功能。

1.2.2 Windows CE下的驱动编写

Windows CE是微软公司推出的嵌入式实时操作系统,凭借其

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

网站地图

Top