基于XScale处理器的天线控制系统的设计

发布者:会哭的蓝精灵最新更新时间:2009-02-20 来源: 微计算机信息关键字:天线控制系统  嵌入式系统  Xscale 手机看文章 扫描二维码
随时随地手机看文章

   0 引言

  随着信息社会的到来,人类的生产方式、生活方式以及工作方式也随着现代技术的不断发展而发生变化。无论在民用还是军用方面,都需要一种可以在移动中实时、大容量、不间断地传递语音、数据、动态图像等多媒体信息的卫星天线跟踪系统的出现。因此,机动性能强、抗干扰能力强、保密性强的卫星通信系统理所当然地成为了当前移动通信研究领域的热点与重点。

  本文所介绍的基于XScale微处理器的“动中通”移动卫星天线控制系统,能够在各种条件下保证天线高精度地对准目标卫星,准确而快速实现平台天线和卫星之间的实时通信。由于采用了嵌入式控制系统进行开发,该卫星移动天线控制系统体积小,性价比优良,实时性好。

  1 系统总体设计

  1.1  总体方案

  采用“开环稳定+闭环跟踪”的控制方案。总体思想如下:通过GPS接收机得出载体方位信息,使用姿态传感器敏感载体的姿态角,快速初始对准卫星,将惯性角速率陀螺仪作为电机伺服控制的反馈元件,敏感载体运动过程中天线平台在方位和俯仰方向的变化,通过反馈补偿保证载体运动过程中平台的稳定。同时,为克服载体姿态变化快、幅度大,以及陀螺的漂移和电机的特性等诸多复杂因素的影响,满足卫星通信对跟踪精度的要求,在陀螺稳定的基础上还配以电平信号步进跟踪以达到高精度稳定跟踪目标卫星的目的。

  采用方位和俯仰两轴控制,虽可以避免三轴控制的复杂性,但是天线俯仰轴相对于水平面的横滚变化却无法消除。该变化对螺旋天线、平板天线影响不大,但是会影响抛物面天线接收信号的强度。这时可以在两轴稳定控制的基础上增加极化轴,用电机寻找最佳极化角度。

  1.2  嵌入式系统组成

  嵌入式系统设计是本文的重点内容。嵌入式系统是一种将嵌入了软件的计算机硬件作为其最重要的一部分的系统。它是一种专用于某个应用或者产品的基于计算机的系统,既可以是一个独立的系统,也可以是更大系统的一部分[1]。总体而言,一个嵌入式系统有三个主要组成部分:支撑硬件、主应用软件和实时操作系统(RTOS)。实时操作系统和主应用软件集成于计算机硬件系统之中,也就是软件与硬件的一体化。软件和硬件之间由BSP层(板极支持包)连接。嵌入式系统的体系结构如图2所示:

  1.3  硬件支持

  设计中首先要考虑的是如何使操作系统能更有效的管理资源并支持多任务环境。为了移植Windows CE操作系统与开发相关的程序,我们选用基于Intel XScale PXA255处理器的高端嵌入式解决方案XSBASE255作为实验平台。

  该开发板具有我们系统实验所需的大部分硬件配置。同时,硬件设备厂商为客户提供了Windows CE.NET下PXA255的BSP,所以在硬件扩展加以改动时,可以很方便的进行BSP开发,只需对现有的源代码进行修改。

  Intel XScale PXA255是32位RISC处理器,支持ARMv5TE指令集,采用7级超流水线,32KB指令缓存和32KB数据缓存,主频为400MHz,具有MMU(Memory Management Unit)。XSBASE255采用两片16MB的Flash Rom提供了32MB的非易失存储,采用两片32MB SDRAM组成64MB作为主内存。引导程序、Image等所有的软件都是存储在Flash中。同时,PXA255提供众多的外设接口为开发提供了极大的扩展性和适应性。

  2  系统软件实现

  2.1  软件支持

  在嵌入式计算机应用中使用实时操作系统,可使控制系统的实时性得到保证,同时良好的多任务规划设计及根据需求对软件进行裁剪,有助于提高系统的稳定性和可靠性。

  Microsoft Windows CE是一个开放的、可裁剪的、32位的实时嵌入式窗口操作系统。可以工作在12种不同的处理器体系结构、180余种CPU上;紧凑、高效和可扩展的特性,使它适用于各种嵌入式系统和产品。拥有多线程、多任务、确定性的实时、完全抢占式优先级的操作系统环境,专门面向只有有限资源的硬件系统[2]。同时,它的模块化设计方式使得系统开发人员和应用开发人员能够为多种多样的产品来定制它。

  Windows CE内核是Windows CE操作系统的核心。系统运行时,Windows CE的内核表现为NK.EXE进程。NK.EXE是所有基于Windows CE的系统中都存在的核心进程,它实现了Win32 API核心进程创建加载、线程调度、中断处理和内存管理等核心功能[3]。

  当Windows CE加载一个应用程序时,它就产生了一个进程。多个进程使用户可以同时工作于多个应用程序,而多个线程可以使一个应用程序同时完成多个任务。在任务调度过程,内核维护一个当前操作系统所有线程的优先级列表。每个进程可能包含多个线程,而每一个线程都是一个可执行单元。调度系统控制这些执行单元的执行顺序,并允许他们相互之间以可预测的方式交换数据[4]。当中断发生时,调度系统重新排列所有线程的优先级。

  下面是一些与调度有关的主要函数介绍[5]:

  1、MakeRunIfNeeded(HANDLE hth)函数:主要功能是在需要时调度线程;

  2、MakeRun(PTHREAD pth)函数:如果当前没有可运行的线程,或者指定的线程pth是优先级最高的线程,那么把pth插入到可运行队列的最前面,并判断是否需要重新修改调度策略;

  3、RunqDequeue(PTHREAD pth,DWORD cprio)函数:从运行队列中删除一个线程;

  4、SleepqDequeue(PTHREAD pth)函数:把一个线程从睡眠队列中删除;

  5、ThreadSleep(DWORD time)函数:让线程睡眠一段时间。

2.2  任务划分

  天线控制系统功能复杂、任务繁多,且各个任务之间需要进行信息交流,彼此联系,互为因果。利用多任务机制对各个功能进行管理调度,保证了系统的实时性和可靠性。

  对本系统而言,任务划分实际上就是对天线控制系统的工作流程做一个分解,使其每一动作都对应在一个任务中实现,由动作的执行顺序确定多任务中每一任务的优先级。系统进入开机状态后,通过选择输入卫星参数(卫星参数信息固化在程序中),系统开始初始化。通过串口提取GPS提供的有用信息,通过姿态解算计算出天线的初始对星角度,并在基准确定的基础上进行角度修正,通过嵌入式控制系统驱动完成初始对星。在对星状态完成之后,开始进行电平搜索,得到准确的天线指向并锁定该位置,之后系统进入自动跟踪状态,同时陀螺进入闭环工作状态。

  2.3  Windows CE移植

  引导加载程序(Boot Loader)是在操作系统内核运行之前运行的一段小程序。虽然在Boot Loader中并不严格规定如何获得操作系统映像,但绝大多数Boot Loader都会从开发机下载映像到目标机,然后把映像放到内存里执行。在所有下载映像的Boot Loader中,通过以太网进行下载的Boot Loader占绝大多数,称为Etherent Boot Loader,简称EBoot。在本系统中,EBoot主要有以下功能:

  1、初始化目标硬件设备,包括初始化内存、中断控制器、时钟和MMU等;

  2、控制启动过程,提供简单的菜单与用户交互,让用户选择启动过程;

  3、下载并执行操作系统映像。

  总体而言,EBoot的唯一目标就是加载并执行操作系统映像。因此,Boot Loader必须在OS被下载前就先安装在目标机上,并与Platform Builder交互。

  在ARM/ XScale系统中,我们使用JTAG将Boot Loader程序烧写到Flash存储器中,待系统加电或重置时自动执行。

  2.4  软件开发与调试

  基于Windows CE设备的开发过程是由不断修改、增加配置特征、构建、下载、调试等组成的一个递归开发过程。每当在Platform Builder中添加或修改一个特征时,都必须重新构建操作系统映像,并将它下载到目标设备硬件上进行执行和调试。一旦完成操作系统配置,我们就可以利用Platform Builder提供的导出SDK工具,为应用程序开发者导出一个定制的SDK,应用程序将导出的 SDK安装到eMbedded Visual C++ 4.0后,就可以为特定的硬件平台开发应用程序,并在特定硬件上进行调试和测试了。

  在天线控制系统工作原理的基础上,采用多线程、分时共享技术,根据任务规划流程建立多任务和用户应用程序,具体划分如下模块:用户界面线程、信号采集线程、数据处理线程、初始对准线程、动态跟踪线程、状态判断线程、卫星搜索线程、稳定控制线程。相关算法集合在各个任务之中。

  软件移植主要包括Windows CE操作系统内核代码定制、裁剪,实现其核心代码在XScale处理器上的移植,针对系统实际需求对Windows CE进行操作系统本身的功能扩展,并移植到硬件平台,实现天线的每一步具体动作。主要实现“陀螺闭环稳定+程序跟踪+步进跟踪”控制跟踪方案的算法实现与优化,并把用C++语言实现的控制程序移植到XScale处理器上,最后基于Windows CE建立完整实用的RTOS对天线控制系统进行控制。

  3  结束语

  基于Intel XScale PXA255处理器作为硬件设计、移植Windows CE操作系统并在天线控制系统整体方案的基础上,开发了天线控制系统的多任务软件系统。整个系统的模块化设计,为日后的扩展、移植和维护工作提供了方便。同时表明,应用嵌入式实时操作系统Windows CE开发天线控制系统软件能够有效地降低软件设计的复杂度,显著提高软件的可靠性和运行效率。该设计方案在实际中有很好的应用前景。

关键字:天线控制系统  嵌入式系统  Xscale 引用地址:基于XScale处理器的天线控制系统的设计

上一篇:MicroBlaze在嵌入式Web服务器上的应用
下一篇:美国NI公司推出行业内首款3U四核PXI控制器

推荐阅读最新更新时间:2024-05-02 20:46

嵌入式系统结构与协同性探讨
嵌入式技术被广泛应用于信息家器、消费电子、交换机以及机器人等产品中,与通用计算机技术不同,嵌入式系统中计算机被置于应用环境内部特征不明显。系统对性能、体积、以及时间等有较高的要求。复杂的嵌入式系统面向特定应用环境,必须支持硬、软件裁减,适应系统对功能、成本以及功耗等要求。   0.1 嵌入式系统与协同性   从信息传递的电特性过程分析,嵌入式系统特征表现为,计算机技术与电子技术紧密结合,难以分清特定的物理外观和功能,处理器与外设、存储器等之间的信息交换主要以电平信号的形式在IC 间直接进行。   从嵌入深度ED来看,信息交换在IC 间越直接、越多,嵌入深度就越大。   在设计实验系统模型(图1)时,充分考虑到软硬协同性,使
[模拟电子]
<font color='red'>嵌入式系统</font>结构与协同性探讨
XScale PXA270在Linux下的FPGA设备驱动
引言 Intel公司推出的XScale采用ARM V5TE结构,是Strong ARM的升级换代产品。XScale PXA270处理器最高主频可达到624M赫兹,加入了Wireless MMX、Intel SpeedStep等新技术,以其高性能、低功耗、多功能等特点在信息家电、工业控制等领域得到了广泛的应用。在嵌入式控制中,“微处理器+FPGA”是一种常用的解决方案,FPGA(现场可编程门阵列)有编程方便、集成度高、速度快等特点,电子设计人员可以通过硬件编程的方法来实现FPGA芯片各种功能的开发,在我们的一个数控平台的研究项目中,采用XScale PXA270作为主CPU,并对其进行FPGA扩展,使其具有插补、电机驱动、信号处
[应用]
基于ARM处理器的嵌入式系统设计
  依据开发 周期 中软、硬件的划分,介绍系统在ARM处理器强大功能的基础之上,运算、处理、显示ADU3600板收集到的数据的过程;在详细阐述系统综合性能指标的基础上展现了产品应用的广阔前景。   现在社会是一个高度信息化、网络化的社会,计算机和网络已经全面渗透到日常生活的每个角落,信息时代、数字时代使得嵌入式产品获得了巨大的发展契机。嵌入式系统应用非常广泛,军事国防是嵌入式系统的一个重要应用领域。现在各种武器控制如火炮控制、导弹控制和智能炸弹制导引爆控制,以及坦克、舰艇、轰炸机、陆海空各种军用电子装备,雷达、电子对抗军事通信装备和野战指挥作战等各种专用设备上,都可见嵌入式系统的影子。   1 系统总体概述   1.1 系统结构
[单片机]
基于ARM处理器的<font color='red'>嵌入式系统</font>设计
嵌入式系统的系统测试和可靠性评估
引言 随着嵌入式系统硬件体系结构的变化,嵌入式系统的发展趋势向嵌入式系统高端,即嵌入式软件系统转移,具体体现在嵌入式操作系统趋于多样和应用软件日渐复杂。由于嵌入式系统软硬件功能界限模糊,研究如何进行系统测试和进行质量评估来保证嵌入式系统的产品质量具有重要意义。 首先,这里明确嵌入式系统的系统测试定义,是将开发的软件系统(包括嵌入式操作系统和嵌入式应用软件)、硬件系统和其它相关因素(如人员的操作、数据的获取等)综合起来,对整个产品进行的全面测试。嵌入式系统的系统测试比PC系统软件测试要困难得多,主要体现如下: ①测试软件功能依赖不需编码的硬件功能,快速定位软硬件错误困难; ②强壮性测试、可知性测试很难编码实现; ③交叉测试平台的测
[测试测量]
ARM嵌入式系统的在系统编程方案设计
应用程序的固化是嵌入式产品开发和生产过程中一个重要环节。基于ARM的嵌入式系统常用的程序固化方法是,用仿真器通过JTAG口将程序烧录到Flash里,在产品的开发阶段,使用仿真器几乎是必然的;然而到了产品的生产阶段,进行应用程序烧录或升级操作的往往是生产线上的工人,他们不易掌握仿真器的使用方法,而且在生产阶段也需要把JTAG调试口封住以防软件被窥视。笔者在使用意法半导体的STR730开发产品的过程中,设计了一种通过串口进行ISP(In System Programming,在系统编程)的方案。该方案成本低,生产线使用起来也很方便,而且即使升级过程中发生掉电之类的意外也不会影响下一次升级,安全而可靠。 1 硬件连接 ISP方案的硬件
[单片机]
ARM<font color='red'>嵌入式系统</font>的在系统编程方案设计
基于嵌入式系统的负压吸引器设计
为了稳定精确地将病人术后腹腔内积累的各种脏器分泌液排出体外,提出一种基于嵌入式系统的负压吸引器。该系统采用气压 传感器 、重力感应器、PH值传感器、电磁阀和薄膜泵等模块,通过检测病人体内的腔压来调整负压实现体液的引流,并能实时监控病人排出液的各项参数。经过测试,该系统能动态控制负压引流并精确测量排出体液的参数,具有稳定可靠的特性。 由于很多病人手术后脏器创口没有得到有效的愈合,此时会在腹腔内积累各种液体。最为常见的就是在临床中,为了保证肠道患者在术后能尽快康复,就需要将来自胃的低PH值的消化液借助引流设备排出体外。目前国内外市场上通常使用一次性负压吸引袋或机械式吸引器将体液引流至体外。但是这种方法产生的负压并不稳定,吸引的
[单片机]
基于<font color='red'>嵌入式系统</font>的负压吸引器设计
基于DSP的Bluetooth嵌入式系统应用
摘要:以TI的TMS302VC54x数字信号处理器(DSP)为嵌入式控制器、ERICSSON的蓝牙模块为例,在蓝牙电缆替代协议应用模块的基础上,提出一种将电缆替代协议进行扩展的嵌入式蓝牙应用模式及其硬、软件的实现。 关键词:Bluetooth 嵌入式系统 DSP 协议 蓝牙(Bluetooth)协议标准是由蓝牙特别兴趣小组(Bluetooth SIG)发布的,1999年发布了Bluetooth 1.0版,2001年2月发布了Bluetooth1.1版。目前SIG成员已经发展到3000家左右。蓝牙协议规定的无线通信标准,基于免申请的2.4GHz的ISM频段,采用GFSK跳频技术和时分双工(TDD)技术,通信距离为10米左右,Bl
[应用]
基于μc/OS-II的多传感器测控系统研究
1  引言    随着嵌入式系统的广泛应用,原来单一传感器的嵌入式系统逐渐向嵌入式多传感器系统发展。由此提出了多传感器任务调度分配的问题。本文结合红薯保鲜储藏工程涉及到的温度湿度氧浓度等参数要求,采用高性能16位单片机SPCE061A作为控制芯片,移植可裁剪的多任务实时操作系统μc/OS-II管理多任务的处理,选用高精度温度传感器DS18B20、湿度传感器HIH3605、氧浓度传感器DW-02构建了一个高精度高性能高可靠性的多传感器嵌入式测控系统,各个被控参数可调范围宽,较好的满足了工程要求。系统的主要参数:工作温度:10~14℃±0.5℃;工作湿度:80~95%RH±5%;氧浓度:≮4.5%。同时,实现了温湿度数据的显示与保
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

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

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved