基于实时操作系统μC/OS-II远程终端硬件和软件的设计与实现

2018-02-14 22:21:57编辑:什么鱼 关键字:实时操作系统  μC  OS-II  远程终端

    引言

    进入21 世纪,信息的地位日益重要,对信息的获取和处理能力成为现代信息处理中的关键问题。在人类社会信息化的过程中,借助各种通信手段是实现信息交流的主要方式。各种需求使得移动通信(寻呼、GSM/GPRS、CDMA)和Internet 迅速发展起来。当信息化达到一定程度后,遇到一个迫切的问题是:如何将众多分散的生产单元、信息单元纳入统一信息化进程,比如大型油田的油井控制、大型煤矿的矿井控制、水文监测点的控制等。


    传统的无线监控系统多采用电台。但电台的抗干扰性差、保密性差,不适合在城市使用。能利用无线移动网络的无线监控系统势必具有无可比拟的优势。目前,移动无线传输数据的方式主要有3 种:GSM 短消息、GPRS 和CDMA。

    GSM 网络用短消息来传输数据,由于短消息传输用的是信令信道,采用存储转发的方式,其缺点是数据传输速率低、具有延迟性且时间不定。GPRS 采用分组交换技术,按流量计费,能高效的传输数据和信令;GPRS 理论传输速率可达171.2 kb/s,实际传输速率大约在40 kb/s。CDMA 1X 网络提供分组形式的数据业务,CDMA 1X 理论传输速率可达300 kb/s,目前的实际传输速率大约为100 kb/s,可以用于Internet 连接、数据传输等应用。CDMA 1X 无线数据网络以其覆盖范围广、费用低、技术完善、安全可靠性高等优点,当之无愧地成为上述业务信息化中的重要资源。

    本文将分别介绍远程监控系统的系统组成以及基于MG815+无线模块和ARM LPC2210 微控制器的远程终端

    重点是远程终端硬件和软件的设计与实现。

    1 系统组成

    本系统利用CDMA 1X 移动通信网络完成数据的无线传输,免去了现场组网的初期建设费用以及日后的网络维护费用。通过远程终端,将采集到的现场数据以IP 包的形式发送到监控中心,在监控中心进行数据处理、存储,并提供相应的查询、统计及报表功能。监控中心也可以通过向远程终端发送IP 包,设定监控终端配置信息或控制命令,获取远程终端的实时数据。

    本系统的突出特点是“按流量计费”,CDMA 1X 网络支持用户的“一直在线”工作方式,在终端空闲时间采用休眠状态,若需要传送数据,则将终端唤醒开始工作,这大大节省了费用;另外由于CDMA 采用了伪随机序列 PN 进行扩频/解扩的扩频通信技术,具有天然的保密性,其信息在空中信道上被截获的概率几乎为零,可以保证数据传输的安全性;另外由于移动通信网络较全面的覆盖范围,使系统的组网非常灵活,能够满足复杂、易变的条件。

    系统组成包括远程终端设备、CDMA 网络和监控中心,原理框图如图1 所示。

    
图1 系统原理

    2 远程监控终端硬件设计

    远程监控终端硬件结构原理如图2 所示。图2 主要由嵌入式微控制器LPC2210,采集单元,显示单元,存储单元,通信模块和电源单元构成。

   
图2 远程终端硬件结构

    2.1 CDMA 模块

    CDMA模块采用中兴公司的MG815+模块[3],MG815+ 是基于高通公司的6025 平台的工业级CDMA 模块,支持语音、数据、短信等功能。可用在基于CDMA 技术的车船载、无线终端、数据卡、数据传输、实时监控、实时图像等领域。该模块集射频电路和基带于一体,具有高通信质量、高效频谱利用率、高抗干扰、高保密性、低辐射等特点,并且向用户提供标准的AT 指令接口,因此用户可以很方便的通过ARM嵌入式处理器的串口与MG815+模块连接,并直接使用AT 指令就可方便地实现数据的传输以及模块的设置。MG815+模块通过一个40PIN,一个10 PIN 连接器提供外部连接。

    2.2 主控芯片

    主控芯片采用飞利浦公司的 LPC2210,这是一片支持实时仿真和嵌入式跟踪的16/32 位ARM 7TDMI-S CPU的微控制器。工作电压为3.3 V,内核工作电压仅为1.8 V;内置PLL 锁相环可以设置CPU 工作频率达60 MHz;双UART接口模块,提供数据的异步串行发送和接收;由于LPC 22l0 的144脚封装、极低的功耗、多个32 位定时器、8 路10 位ADC、PWM 输出以及多达9 个外部中断,使它们特别适用于工业控制、医疗系统、访问控制和POS 机;通过配置总线LPC 2210最多可提供76 个GP10;可以外扩SRAM 和Flash,很方便移植嵌入式μC/OS-II 操作系统。

    本系统中,上电复位后首先要对 LPC 2210 的工作频率和串口进行设置,然后通过AT 指令初始化MG 815+无线模块,使之附着在CDMA 网络上,通过拨号过程建立PPP 连接,获得网络运营商ISP 动态分配给无线模块的IP 地址,并与服务器固定IP 之间建立Socket 链接。一旦该链接成功,就可以进行数据的传输了。

    3 远程终端软件设计

    首先在LPC 2210 中移植嵌入式操作系统μC/OS-II,通过它提供的应用接口函数。可以使人们不去关心硬件的一些工作细节,也使应用程序的开发在一个友好的平台上进行,从而能更有效地组织作业及其工作,提高了应用程序的开发效率,也使系统高效地运行;μC/OS-II 下的软件设计以及与硬件的关系示意图如图3所示。

    
图3 软件设计与硬件关系

    3.1 程序设计

    主程序主要包括:操作系统初始化、建立两个任务、开始多任务,第一个任务是数据的发送,第二个任务是数据的接收和处理,并且设定第一个任务的优先级高于第二个任务,但第一个任务运行就挂起,让第二个任务运行,用定时器控制什么时候发送,这个时候才运行发送任务。6025 模块内置TCP/IP 协议栈,用户只需按照MG815+ 模块AT指令说明书中数据传输相关的AT 指令建立同CDMA 网络的连接,获得网络运营商ISP 动态分配给无线模块的IP 地址,并与服务器固定IP 之间建立Socket 链接。链接成功后,就可以进行数据的发送、接收和处理了。主程序、发送数据程序和数据接收、处理程序的流程图如图4 所示。

   
图4 程序流程图

    4 监控中心设计

    监控中心配置一台高性能微机,同时申请一个真实IP地址。监控中心从ISP 运营商申请专线接入,监控中心分配有真实IP,远程终端将现场设备的数据信息采集并以IP 包的形式直接发给监控中心,监控中心将远程终端传来的IP包处理后,获得相应数据存入数据库。数据库主要负责存储、管理并维护发送来的数据,提供对数据的查询、添加、删除等多项服务,并在必要时可将数据进行报表打印。

    5 结语

    本系统用ADS1.2 开发环境进行监控终端程序的设计和调试,通过串口控制MG815+模块,实现了远程监控数据的计算机通信,经多次现场测试表明,本系统通信数据稳定可靠,效果良好。可以用于有大量数据传输而有线传输又不能满足需求的场合,如油井监测、水文监测,等等。由于LPC2210 硬件可扩展资源丰富,且远程终端软件基于嵌入式实时操作系统μC/OS-II 之上,本设计具有很大的灵活性,能够快速适应各种具体场合。


关键字:实时操作系统  μC  OS-II  远程终端

来源: eefocus 引用地址:http://www.eeworld.com.cn/mcu/article_2018021437803.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:采用CPLD实现数字滤波及抗干扰设计
下一篇:典型的Linux设备驱动程序的代码

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

uC/OS-II嵌入式实时操作系统的几大特点

早在20世纪60年代,就已经有人开始研究和开发嵌入式操作系统。但直到最近,它才在国内被越来越多的提及,在通信、电子、自动化等需要实时处理的领域所日益显现的重要性吸引了人们越来越多的注意力。但是,人们所谈论的往往是一些著名的商业内核,诸如VxWorks、PSOS等。这些商业内核性能优越,但价格昂贵,主要用于16位和32位处理器中,针对国内大部分用户使用的51系列8位单片机,可以选择免费的uC/OS-II。uC/OS-II的特点1.uC/OS-II是由Labrosse先生编写的一个开放式内核,最主要的特点就是源码公开。这一点对于用户来说可谓利弊各半,好处在于,一方面它是免费的,另一方面用户可以根据自己的需要对它进行修改。缺点在于它缺乏
发表于 2018-06-04 09:52:23

基于RTX51实时操作系统的用户专用键盘软件设计

    引言    传统的用户专用键盘单片机软件采用结构化设计方法,主程序循环执行,依次完成按键扫描、按键处理、串口命令接收、串口命令处理等任务。由于任务的数量少,并且每个任务执行的操作简单,此种设计可以使得软件较好地满足功能要求。但仔细分析,会发现程序一些可以改进的地方,如:执行时间短的任务不得不排队等待执行时间长的任务的完成。此外,如果用户的设计要求发生变化(如:专用键盘功能增加、按键数量增多、串口协议复杂化等),原有的编程思想将很难满足要求,程序因此无法进行移植升级而不得不重新开发。    基于RTX51实时操作系统进行单片机软件设计,可以真正做到各任务并行执行
发表于 2018-04-05 15:16:17
基于RTX51实时操作系统的用户专用键盘软件设计

嵌入式实时操作系统μC/OS-II在GPRS终端系统中的应用

。  GPRS无线模块采用了SIM300,该模块支持GPRS的语音、数据和短信息功能,内嵌TCP/IP协议。该模块主要由射频天线、内部Flash、SRAM、GSM基带处理器、匹配电源和一个60脚的ZIF插座组成。其中,GSM基带处理器是核心部件,其作用相当于一个协议处理器,用来处理外部系统通过串口发送过来的AT指令。GPRS模块接收速率可达86.2kbps,发送速率达21.5kbps,易于集成。  μC/OS-II的移植  μC/OS-II是一个移植性很强的操作系统,其源代码分为硬件无关和硬件有关两个部分,移植时只需修改与硬件有关的部分。移植μC/OS-II到S3C44B0X 上,需做以下工作:  (1) 修改数据类型  为保持与平台
发表于 2018-02-21 20:00:47
嵌入式实时操作系统μC/OS-II在GPRS终端系统中的应用

在嵌入式实时操作系统uC/0SII上移植实现LwIP这套TCP/IP协议栈

    内容摘要:结合ez80和ARM7两种系统上的具体实现,说明了如何在嵌入式实时操作系统uC/0SII上移植实现LwIP这套TCP/IP协议栈,使uC/0S II成为支持网络的RTOS。    1 引言    随着嵌入式系统与网络的日益结合,在嵌入式实时操作系统中引入TCP/IP协议栈,以支持嵌入式设备接入网络,成为嵌入式领域重要的研究方向。uC/0S II是近年来发展迅速的一个开放源码实时操作系统,但它只是一个实时的任务调度及通信内核,缺少对外围设备和接口的支持,如没有文件系统、网络协议、图形界面。笔者在多个嵌入式项目的开发过程中,以开源TCP/IP协议栈
发表于 2018-02-13 15:30:05

嵌入式实时操作系统μC/OS-II在S12单片机上的移植分析

/OS-II移植的一般方法,测试结果表明移植代码可以稳定可靠的运行,实现了多任务的管理和调度。μC/OS-II实时操作系统的引入,不但可以提高系统的实时性、可靠性和稳定性,还提高了应用软件的可移植性,降低了开发人员的工作量。
发表于 2018-02-13 14:52:36
嵌入式实时操作系统μC/OS-II在S12单片机上的移植分析

C51、STM32和S3C2440中断体系的比较

/* 名称:C51、STM32和S3C2440中断体系的比较 说明:对于这三个芯片的中断体系来说,就我目前了解的, 我说:差不多。这里说的差不多,是中断的本质上差不多,都是首先中断源提出申请(比如触发了外部中断,定时器中断等),然后经过中断源屏蔽寄存器,再然后中断优先级的比较,最后CPU相应中断。(我去,这好像又回到了计算机组成原理啊)。不同的是细节,C51作为低级一点的芯片,其中断少,中断能达到的功能也少,相对来说较为简单些(无论是设计还是具体使用)。而STM32和S3C2440来说,其提供的功能较多,设计起来和使用起来要复杂的多(使用的时候得配置好多好多寄存器)。目前总结的,差不多就是这些吧。*/
发表于 2018-07-21 14:40:54

小广播

何立民专栏

单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2018 EEWORLD.com.cn, Inc. All rights reserved