历史上的今天
返回首页

历史上的今天

今天是:2025年05月25日(星期日)

正在发生

2021年05月25日 | 基于ZigBee的无线串口集线器的研究与设计

2021-05-25 来源:eefocus

1引言


随着21世纪科学技术的不断进步,无线与移动通信相应得到了迅猛的发展。方便快捷的无线接入和无线 互连等新概念和新产品,已逐渐融入人们的工作领域和日常生活中。由于如今对无线频率的大量使用,使无线频率资源日渐匮乏,短距离宽带无线通信技术受到世界许多国家工业界和研究机构的广泛关注。伴随着各种便携式终端通信设备的增加,人们对短距离的无线与移动通信需求也越来越迫切。无处不在的网络世界,使对各种电器设备实行网络化管理已成为必然趋势。目前小范围内如以太网中对终端设备的管理,主要使用有线方式。近来,随着与无线通信相关的新技术如雨后春笋般涌现出来,大量、廉价和高度集成的无线模块的普及,无线联网技术以其安装成本低、使用方便等特点,在一些不便于或需要消除有线连接的场合有了它的用武之地,正在成为家庭网络和工业自动化领域的首选技术。


基于ZigBee[1]的无线串口集线器的研究与设计,将ZigBee连接在ARM微处理器上,并与远端计算机通过以太网进行连接。这个集线器可根据远程监控和控制应用的需求进行优化、扩展,具有简单、可靠、低功耗和低成本等优势,实现对各种电器、各种侦测/监控设备的监督、管理、设备操作和远程控制。


2无线串口集线器的总体设计


基于ZigBee的无线串口集线器主要由硬件和软件组成,硬件包括电路板、ARM微处理器、存储器、串行接口、并行接口、网口和ZigBee无线通信模块等,软件部分包括操作系统软件(OS)和应用程序。硬件部分是整个系统的物理基础,它提供了软件的运行平台和通信接口,软件部分用于控制系统的运行,并对各种事件进行响应。完成的功能为该设备中操作系统运行正常,外接器件运行正常,通过对ZigBee无线通信模块协议的编写,使ARM微处理器通过ZigBee模块实现对各种电器、侦测/监控设备的无线通信和操作。与远端计算机通过以太网相连,组成一个无线网络,如图1所示。该设备在网络中发挥集线器的功能,具有串行通信接口,并有通讯距离远、抗干扰能力强、组网灵活等优点和特性。采用点对点型或星形拓扑结构,可实现一点对一点及一点对多点之间的串口设备的数据的透明传输,使远端计算机通过此集线器实现对电器设备的远程操控。



3集线器硬件设计


3.1 ARM微处理器设计


本课题选用ARM9系列的S3C2410微处理器,重在嵌入式ARM板的核心模块的设计,实现程序运行的基本环境,主要由以下几部分组成:(1)存储模块:Flash存储器、SDRAM存储器;(2)对外通信接口模块:包括串行接口、并行接口、网口、JTAG接口、ZigBee无线通信模块;(3)电源和电源管理。如图2所示为硬件系统组成图。



电源模块功能:采用一个低功耗正向电压调节器,要有稳定的输出电流,过流及温度保护的特点。要具有高效率,小封装和低功耗的特点,要适合嵌入式系统的应用。


Flash存储器功能:用来存放用户编写的启动程序,操作系统内核以及应用程序。


SDRAM(Synchronous Dynamic RAM)同步动态存储器功能:使用SDRAM不但能提高系统表现,还能简化设计、提供高速的数据传输。在功能上,需要时钟进行刷新。在系统运行时,所有的程序和数据大部分是在SDRAM中与微处理器和外围设备交互,所以SDRAM的速度对于整个系统的运行速度有着至关重要的影响。


串行接口功能:ARM微处理器通过串行接口与ZigBee无线通信模块相连,进行串行通信和数据传输。


ZigBee模块功能:与电器设备无线通信,负责数据的无线收发。


JTAG接口功能:进行系统硬件、软件、应用程序的测试


3.2 ZigBee无线通信模块设计


3.2.1ZigBee协议概述


ZigBee是短距离通信的一种新兴双向无线通信技术。它具有近距离、低复杂度、低功耗、低数据速率、低成本的优点,使用2.4GHz波段。由于采用较低的数据传输速率、较低的工作频段,ZigBee模块在未投入使用的情况定义为低功耗的休眠状态,模块的整体功耗非常低,因此ZigBee技术适合于数据流量较小的情况。相对于现有的各种无线通信技术,如GSM、3G、蓝牙等无线通信技术,ZigBee更简单、功率及费用也更低,能够更好地适用于自动控制和远程控制领域,更好地满足小型廉价设备的无线联网和控制,支持游戏、消费电子、仪器和家庭自动化应用。


3.2.2ZigBee模块设计


ZigBee无线通信模块[2]在整个集线器设计中也起着举足轻重的作用。ZigBee模块中RF(射频)收发器采用射频收发模块采用UZ2400芯片,微处理器采用8051芯片。RF收发器是ZigBee设备的核心,任何ZigBee设备都要有RF收发器。它与用于广播的普通无线收发器的不同之处在于体积小,功耗低,支持电池供电的设备。它主要进行信号的调制与解调、发送和接收等。微处理器通过SPI总线与RF收发器相连,主要用于处理射频信号、控制和协调各部分器件的工作,通过串口与外部设备之间进行通信。ZigBee模块还包括存储器、晶振、天线、串口等器件。如图3所示:



4软件设计


4.1操作系统软件设计


软件主要包括操作系统软件和应用程序两部分。集线器ARM9微处理器中ARM BIOS软件完成ARM的初始化、SDRAM设置以及嵌入式Linux的加载,最后控制权交给操作系统Linux,此后系统在Linux的管理下运行应用程序。


ARM9微处理器中,选用嵌入式Linux[3-5]作为操作系统。与其他嵌入式操作系统相比,Linux以其易于移植裁减、内核小、效率高、完整及性能优异的网络模块、源代码开放并有众多的开发者等优越的性能,在嵌入式领域得到广泛的认同。所以采用Linux可使产品研发周期大大缩短。采用ARM9微处理器及嵌入式Linux操作系统可开发出在多媒体及无线通信等方面具有优异性能的无线手持设备。


用嵌入式Linux软件系统进行系统开发,通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面等。首先建立交叉编译环境。建好交叉编译环境之后,大致还要做以下五方面的工作:①引导装载程序(BootLoader),能实现系统的快速引导,提供瞬间开机功能。负责将Linux内核加载到内存,并将控制权交给内核初始化程序;②Linux内核(Kernel)的移植与裁减,Linux内核采用模块化的组织结构,通过增减内核模块的方式来增减系统的功能,正确合理的设置内核的功能模块,只编译系统所需功能的代码,来获得更高的运行速度;③装载文件系统(File system)嵌入式系统一般不具备硬盘等大容量存储体,而用Flash为主存储器,其文件系统也具有特殊性;④开发图形用户界面(GUI);⑤选择上层应用程序(Application)。


其中较为重要的是对ZigBee无线通信模块协议的编写。根据硬件条件的需要改写ZigBee协议[6],使系统在最简洁的程序下发挥硬件的最大功能。ZigBee是基于802.15.4标准开发的关于组网、安全和应用软件方面的技术标准。ZigBee协议包括高层应用规范(profile)、汇聚层、网络层、数据链路层和物理层。其中数据链路层和物理层标准由IEEE 802.15.4负责制定,网络层以上由ZigBee联盟制定。IEEE 802.15.4标准于2003年5月制定完成,它满足国际标准化组织(ISO)开放系统互连(OSI)参考模型,主要包括物理层、数据链路层。IEEE 802.15.4协议与其他无线网络相比,突出的优点是:组网能力强,适应面广,可靠性高,节能性好。


相对于其他常见的无线通信标准,ZigBee协议栈具有紧凑而且简单的特点,而且对环境配置要求不高。如图4所示:



ZigBee节点加入及脱离网络握手协议的设计为:当某一个ZigBee节点要求加入网络时,只要将自己的信道设置成与集线器中ARM微处理器所使用的信道相同,并提供正确的认证信息,即可请求加入网络。同理,一个ZigBee节点要离开网络,只须向ARM微处理器提出请求即可。一个节点成功地加入或脱离网络,都必须由ARM微处理器控制。因此,集线器中ARM微处理器可以实时掌握网络的所有节点信息。


4.2应用软件设计


应用软件在系统软件Linux的平台上进行开发。应用软件根据实际需要进行安装,可以广泛应用于工业控制、家庭自动化、医疗护理、智能农业、消费类电子和远程控制等领域。安装不同的应用程序实现对各种智能电器、侦测/监控设备的通信和操控。


5结束语


本文是利用ARM微处理器和ZigBee模块组成无线串口集线器,进而组成无线网络。基于ZigBee的串口集线器的应用将是大量的。它可以应用于家庭网、楼宇自动化、车载系统、小型办公室等,具有布置美观方便,无须专业人员维护等优点,对未来社会信息化进程将具有深远的意义。Internet的家庭宽带接入和家庭设备共享将成为主流,串口集线器在家庭中将发挥不可替代的作用。另外,基于ZigBee的串口集线器在工农业生产等方面的应用前景也是广阔的,它可以应用于工农业生产中的自动化、网络化和智能化地进行远程设备控制。


推荐阅读

史海拾趣

乾坤(Cyntec)公司的发展小趣事

面对工业4.0的浪潮,乾坤公司积极响应国家智能制造的号召,开始进行智能制造的转型。公司引进了先进的自动化设备,对生产线进行了全面升级,实现了生产过程的自动化、信息化和智能化。通过智能制造的转型,乾坤不仅提高了生产效率,还降低了生产成本,同时提升了产品的一致性和可靠性。这一转型为乾坤公司的持续发展注入了新的动力,使其在激烈的市场竞争中保持了领先地位。

Electronic Sensor + Resistor GmbH公司的发展小趣事

品质是ESR公司的生命线。公司始终坚持“质量第一、用户至上”的原则,建立了完善的质量管理体系和严格的质量控制流程。从原材料采购、生产加工到成品检验等各个环节都实行严格的质量控制措施,确保每一件产品都符合高品质标准。

此外,ESR公司还建立了完善的售后服务体系,为用户提供及时、专业的技术支持和解决方案。这种对品质的执着追求和对用户的真诚服务赢得了客户的广泛赞誉和信赖。

西安航天民芯公司的发展小趣事

随着新能源汽车市场的蓬勃发展,西安航天民芯敏锐地捕捉到了这一机遇。公司投入大量资源进行新能源汽车BMS管理芯片的研发,并成功推出了国内首款新能源汽车专用BMS管理芯片。这一创新产品填补了国内空白,为公司在新能源汽车领域赢得了先机。

AMS公司的发展小趣事

在宇航领域,动力电池管理芯片的性能要求极高。西安航天民芯凭借其在集成电路设计领域的深厚积累,成功研发出全国第一颗宇航级动力电池管理芯片。这一突破不仅打破了国外垄断的局面,也为中国宇航事业的发展做出了重要贡献。

Curtis Electromusic Specialties Inc公司的发展小趣事

人才是企业发展的核心驱动力。CUI公司深知这一点,因此一直注重人才培养和引进。公司建立了完善的人才培养和激励机制,为员工提供了广阔的发展空间和良好的职业前景。同时,公司还积极与高校和研究机构合作,引进高层次人才和技术成果,为公司的创新发展提供了强大的智力支持。

以上五个故事框架只是基于电子行业CUI公司可能的发展路径和趋势的构想,并不特指任何具体的公司或事件。在实际情况中,每个公司的发展故事都是独一无二的,受到多种因素的影响和塑造。

CAROLCABLE公司的发展小趣事

CAROLCABLE公司的创立,标志着电子线缆行业迎来了一位新的竞争者。在电子科技飞速发展的时代背景下,创始人凭借对线缆技术的深刻理解和市场需求的敏锐洞察,决定创立CAROLCABLE公司。公司初期,面临着资金短缺、技术瓶颈和市场认知度低等多重挑战。然而,创始人凭借着坚定的信念和不懈的努力,带领团队克服了一个又一个困难。他们积极研发新产品,优化生产工艺,提高产品质量,逐渐在市场上站稳了脚跟。

随着公司业务的不断拓展,CAROLCABLE开始与一些知名的电子企业建立合作关系,为其提供高质量的线缆产品。这些合作不仅为公司带来了稳定的订单和收入,也进一步提升了CAROLCABLE在行业内的知名度和影响力。

问答坊 | AI 解惑

参数化串口发送程序

LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; --LIBRARY ALTERA; --USE ALTERA.MAXPLUS2.ALL; LIBRARY LPM; USE LPM.LPM_COMPONENTS.ALL; -- *************************** ...…

查看全部问答>

机柜操作台图片展示

核心提示:   监控操作台、机柜的技术规范 1、 监控操作台为上下分体,左右二组整体拼装结构。 2、 监控操作台采用钢木结合或全钢材料制作,配缝不大于1.0毫米,立面板可按所安装设备尺寸开孔,整体美观、 监控操作台、机柜的技术规范 1、&n ...…

查看全部问答>

刚装的ev4.0 运行程序提示 Cannot Execute Program

今天上午刚安装的evc4.0     安装过程是    ActiveSync->eVC4->eVC4 sp4->smartphone SDK->crosoft Pocket PC 2003 SDK->Windows Mobile 2003 Second Edition Emulator Images for Pocket PC - CHS;   &nbs ...…

查看全部问答>

请问wince 扫描仪驱动的一些问题

   最近需要开发一个扫描仪在wince下的驱动程序,但是没有一点头绪,希望做过的兄弟帮忙给点提示。 我用的板子是2440+wince5.0,扫描仪还没确定。    要做这样一个驱动需要做些什么准备?怎么开始?如果有具体流程就更好了, ...…

查看全部问答>

关于wince程序最小化的问题

各位好!请问如何能将一个wince的程序最小化呢?发现showwindow(SW_MINIMIZE)并不起作用。和windowmobile差别很大呀!谢谢大家…

查看全部问答>

AD转换软件写入方式怎么有延迟,谁能帮我看看到底错在哪里

没有错误,AD转换是500Hz,转换出来才200Hz左右,错在哪里啊,感觉是while(AD0INT==0); 浪费时间了,高手来帮帮忙 //----------------------------------------------------------------------------- void PORTb_Init (void) { //  &nbs ...…

查看全部问答>

新手求教,关于学习驱动开发!

新手求教,关于学习驱动开发! 对于驱动开发本人是菜鸟一个,由于工作需要,要求必须掌握驱动程序开发,主要是针对windows内核的(不涉及到硬件的驱动)。由于本人对这方面的知识掌握得很少,所以在这里请教各位驱动前辈我应该从哪里入手,该掌握 ...…

查看全部问答>

wince5.0工程调试步骤,在线等,

我现在想调试串口程序,在串口上外接一个设备时,会不停有个对话提示:USB CONNE未联接,请问这是问题大概是串口的哪个程序有问题啊? 我想用WINCE5.0编译生成修改后的NK文件。请问要怎样编译,才最快呀?…

查看全部问答>

关于CCS安装的问题,小女子急!没分了,真抱歉啊,5555~

CCS 2.2版本,同一个软件我在公司的机子上安装没有出现任何问题,在自己的机子上安装,装了好几次都出现同样的问题,每次open一个新的工程,就出现no build tools were found.两台机子都同是xp的系统. 请高手指点,拜托了!…

查看全部问答>