0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于XPort和ZigBee模块实现嵌入式设备入网的设计

电子设计 来源:单片机与嵌入式系统应用 作者:王立波,陈慈发 2021-05-05 17:27 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

引言

ZigBee技术作为一种新型的近距离、低功耗、低数据传输率的双向无线通信技术,在家电产品中得到越来越广泛的应用。在网络无处不在的今天,人们希望随时随地能访问和控制家庭中的各种家电设备。这就要求嵌入在家电产品中的智能控制系统 (Agent)能够与Internet相结合,使家电设备顺利地接入Internet,并能提供相应的网络服务。实现这些服务要求Agent必须实现 TCP/IP协议栈,不管是以软件方式还是以硬件方式,都会增加产品开发的成本、周期和复杂度。本文介绍一种基于XPort和ZigBee模块的 Internet接入方案,将它集成到家电产品的设计中,即可使智能家电设备便捷地接入Internet,然后通过Internet来控制。

1 XPort

XPort设备服务器是美国Lantronix公司开发的一种紧凑且高度集成的、可让任何带有串口的智能设备接入Internet的嵌入式设备。通过在自己的产品设计中集成XPort,开发人员不必考虑复杂的网络协议,可以大大缩短产品开发周期。XPort模块集成有Lantronix公司的DSTni- EX增强版16位CPU。该模块为i86内核体系结构,具有24位寻址能力、256 KB的SRAM、16 KB的引导ROM、384 KB的Flash和10/100 Mbps自适应以太网口(RJ45)。图1直观地显示了XPort的接口方式和内部布局。XPort一端为3.3 V CMOS电平的8引脚高速串口(GND,3.3VDC,Reset,Data In,Data Out,CPl,CP2,CP3),另一端为RJ45标准以太网口。

基于XPort和ZigBee模块实现嵌入式设备入网的设计

XPort的主要功能是实现串口与10/100 Mbps网络间的数据转换,便于带有串口的设备接入Internet;另外还有Email告警功能,通过设定的条件触发。XPort高速串口支持 RS232RS485协议,有300~921 600 bps的波特率可选。控制信号有DTR/DCD、CTS、RTS,流控制有XON/XOFF、RTS/CTS、3个PIO pin口(软件可选)。XPort网络接口的连接器为RJ45,支持协议有TCP/IP、UDP/IP、ARP、ICMP、SNMP、TFTP、 Telnet、DHCP、BOOTP、HTTP和AutoIP。XPort具有基于Windows平台的配置工具,内建Web服务器,Flash存储器可以存储用户自定义网页,固件可以通过TFTP和串口升级。XPort设备服务器还提供10/100 Mbps自适应以太网连接、存储在Flash中的可靠的操作系统、嵌入式Web服务器、完整的TCP/IP协议栈、标准的AES加密、状态指示灯和电磁屏蔽电路等。XPort的内部结构如图2所示,一端的串行接口与DsTni-EX连接,另一端的以太网连接器通过一个防电磁干扰电路与CPU连接。

XPort通过串口和边缘设备通信。XPort的工作电压为3.3 V,内部有一个电压监测电路,当提供的电压低于2.7 V时会触发重启。3.3 V电压通过内建的1.8 V电压转换器微处理器供电,滤波电路产生3.3 V的数字电压和模拟电压,25 MHz晶振电路为CPU和以太网媒体访问控制芯片提供精确时钟信号。

2 系统结构

远程访问和控制家电需要处理的关键问题是不同数据类型的转换,即TCP/IP数据如何被转化为家电可以接收识别的数据,使用户通过局域网或。Internet终端就能访问家电。该系统主要由3层组成:用户层、控制中心层和终端设备层,其结构如图3所示。

其中,用户层负责收集、显示整个系统家电状态数据和发送控制命令,这些功能由用户层中的Web页面来实现,也可以使用上位机软件;控制中心层实际上成为用户层与终端设备层之间的一个连接,由TCP/IP到串口转换设备XPort和ZigBee模块LM2455-EM组成,相当于一个ZigBee网关,其主要作用是协议转换和数据传递;终端设备层是由传感器、无线发射模块和微控制器MCU)等组成的智能家电产品。用户层通过用户程序发出的控制命令经 Socket连接传给XPort,设备MCU接到数据后控制执行器产生相应的动作,让家电进入相应的工作状态。家电作为该系统中的嵌入式终端设备,成为 ZigBee网络中的一个ZigBee节点。

图3中,虚线表示ZigBee无线通信,可分为单向和双向。单向通信时,家电设备控制中心只需对其发出命令,控制其工作状态;双向通信时,家电设备控制中心还需要从该设备获得相关的信息,并将该信息返回给用户。系统的关键部分是控制中心层,其中XPort负责与局域网或Internet连接,LM2455 -EM无线模块负责组建ZigBee网络并与家电通信。图4给出了XPort与LM2455-EM的连接方式。XPort的数据接收口连接LM2455- EM的数据发送口P1_1,XPort的数据发送口接LM2455-EM的数据接收口P1_0。

当用户通过Internet发送控制家电的信息或者想要获得家电状态时,XPort就将收到的网络数据转换为串口数据,通过其引脚4发送给LM2455- EM的串口(P1.0);LM2455-EM做出相应的响应,并通过无线收发器向终端设备发送相关命令。同样,终端设备对收到的命令做出响应,如果用户端需要读取家电状态,则发送状态信息给控制中心。当LM2455-EM收到ZigBee无线数据时,将其发送到XPort的引脚5,XPort就将原始数据打包成TCP/IP数据包,发送给用户。

3 ZigBee模块

ZigBee模块LM2455-EM的核心是韩国RadioPulse公司推出的一款片上系统芯片MG2455-F48。它完全兼容IEEE 802.15.4标准和ZigBee标准,为家电控制、无线传感器网络等ZigBee应用提供一种无线解决方案。由RF收发器、嵌入式8051核微控制器、内部Flash存储器一般I/O口和定时器UART等外围设备组成;通信速率有250 kbps、500 kbps、1 Mbps,提供μ-law/a-law/ADPCM语音编码支持,具有96 KB的Flash程序存储空间和8 KB数据内存。

在空旷场合,通信距离可以达到200 m。其功耗很低,在睡眠模式下,电流消耗低于1μA;在接收状态下,电流消耗为33.2 mA;在发送状态下,0 dBm时电流消耗为30.6 mA,8 dBm时电流消耗为43 mA。MG2455-F48采用四侧无引脚扁平48引脚封装方式。

MG2455-F48芯片集成了符合ZigBee协议标准的射频收发器和微处理器,具有通信距离远、抗干扰能力强、组网灵活、性能稳定可靠等优点,能实现点对点、一点对多点、多点对多点间的数据透明传输,可组成星型、树型、蜂窝型等网络拓扑结构。数据通信方式包括广播方式和按照目标地址发送方式。 RadioPulse公司以库文件的形式为用户提供ZigBee协议栈软件,用户可使用Keil等工具软件编译自己的应用程序。

4 XPort的配置

XPort上电后需要进行配置,使其符合用户需要的工作状态。Lantronix公司提供了相应的工具软件Lantron-ix Devicelnstaller。运行该软件,如果XPort供电正常且已经接入网络,该软件会自动搜寻到该设备。可以通过3种方式配置XPort:浏览器方式(推荐使用,图形用户界面),Telnet:远程登陆方式和串口方式。

首先使用DeviceInstaller软件为其分配一个有效的IP地址,然后设置XPort的串口工作方式,最后设置其网络参数。使用协议选择TCP,工作模式为接收连接。需分配一个本地端口,如果选择主动连接,则需要选择远程主机的IP地址和端口号,其他默认设置即可。

使用浏览器配置XPort的参数需要人工手动设置,而使用基于命令行的串口方式可实现自动设置。用户编写的XPort参数设置程序,上电时自动启动进入监视模式,完成相关参数设置。由于XPort内置Web服务器,可以使用JAVA applet编写自己的网页程序,烧写到XPort的用户存储空间,然后在程序中使用Socket.receive()和Socket.send()处理用户自己的数据。

5 ZigBee网络构建

ZigBee网络有星型、树型、网状等多种组网方式。组建成什么网络应根据需要而定。对各家电问没有通信需求,也没有扩展通信距离需要的,可以构建成星型网络。在星型拓扑结构中,所有的终端设备都与唯一的中央控制设备——PAN协调器通信,终端设备之间的通信通过PAN协调器的转发来完成。终端设备要么是通信的起点,要么是通信的终点;PAN协调器则既可以是通信的起点,也可以是通信的终点。

在一个ZigBee网络中,设备类型分为ZigBee协调器、ZigBee路由器、ZigBee终端设备,PAN协调器就是ZigBee协调器。 ZigBee协调器是一个起网络控制中心作用的FFD,它不单为网络控制而存在,还可以有自己的应用。与XPort连接的ZigBee模块LM2455- EM就充当ZigBee协调器的角色,负责网络的创建。

创建一个新的网络需要用到以下几个网络层原语。

①NLME-RESET.request原语:实现对网络层复位,清除所有内部变量和路由发现表记录。

②NLME-NETWORK-FORMATION.reqctest原语:创建一个新的ZigBee网络。只有充当ZigBee协调器的全功能设备才能尝试建立一个新网络,在创建网络之前,它首先会请求MAC层执行能量检测扫描。

③NLME-PERMIT-JOINING.request原语:允许一个ZigBee终端设备加入网络。

构建网络代码由ZigBee协议库文件实现的main()函数来调用。它可以在ZUSER_INIT()中实现,也可以在ZUSER_MAIN()中实现。处理用户自己数据则在ZUS-ER_MAIN()中实现。运行在ZigBee协调器中的main()函数通过一个死循环调用ZUSER_MAIN() 来执行任务和工作,其伪代码如下:

结语

ZigBee作为智能家居的实现技术之一,有着很好的应用前景。本文给出了一个简单而高效的解决方案,使Zig-Bee终端设备能够便捷地接入 Internet,用户通过浏览器就可以操作和控制家电。用该方法实现嵌入式设备入网,不再需要在设备中增加以太网控制器并在MCU中实现TCP/IP协议,可大大降低系统设计复杂度,缩短开发周期。随着网络技术的不断发展,更多的产品会连接到网络上,通过更小的设备来完成细分的工作。嵌入式终端设备入网既是需求,又是趋势,该方法同样适合于其他通过串口交换数据的嵌入式设备联网。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5186

    文章

    20169

    浏览量

    329100
  • ZigBee
    +关注

    关注

    158

    文章

    2296

    浏览量

    249183
  • 服务器
    +关注

    关注

    13

    文章

    10102

    浏览量

    90913
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    嵌入式系统串行设备管理怎么实现

    随着微电子技术的发展,嵌入式系统的功能越来越强大,像 UART口、IrDA、USB、I2C以及SPI这些串行接口或设备同时存在于一个嵌入式系统中,实现对它们的统一管理将能极大地提高整个
    发表于 09-04 07:53

    如何实现基于Agent技术的嵌入式智能设备测试?

    如何实现基于Agent技术的嵌入式智能设备测试?基于Agent的嵌入式智能设备测试系统是如何构成的?
    发表于 04-15 06:14

    怎么实现基于嵌入式ZigBee技术的智能家居系统的设计?

    本文实现了智能家居监控系统的远程控制功能,整个系统架构简单,即建立嵌入式家庭网关和ZigBee 家庭内部网络,其功能齐全,并且可根据实际情况和个人需求增减传感器以节约成本,可为任何家庭提供量身订制的智能家居监控服务。
    发表于 05-24 07:07

    基于嵌入式Linux的来电判决模块的设计与实现

    基于嵌入式Linux 的来电判决模块的设计与实现-Design and lmplementation of Calling Determination Module Ba ed on Embedded linux 摘要设计了一
    发表于 02-09 10:41 18次下载

    嵌入式系统接入网及其网络接口技术研究

    文以嵌入式系统的接入网技术为研究,在分析嵌入式系统网络连接的结构体系和协议层次基础上,提出一种新型基于因特网的嵌入式网络体系结构。同时对嵌入式
    发表于 09-08 16:11 13次下载

    基于ARM9的嵌入式Zigbee网关设计与实现

    设计并实现了一个基于ARM9 处理器的Zigbee 无线传感器网络嵌入式网关,用来完成Zigbee 和Internet 之间数据的透明转换。给出了该网关的硬件方案设计和主要软件编程思路
    发表于 11-26 12:00 22次下载

    嵌入式ZigBee串口模块的设计

    ZigBee 技术具有低复杂度,低功耗,低成本等优势,在监测和控制领域具有广阔的应用前景。为了解决嵌入式ZigBee 通信设计问题,本文介绍CHIPCON 公司的CC2430 如何实现
    发表于 01-13 16:59 57次下载

    便携嵌入式设备智能电源模块设计与实现

    本文介绍了当前便携嵌入式设备对电源管理的需求,由此提出一种基于硬件架构结合软件控制的智能电源模块设计方案;据此方案,选择合适的芯片,设计一个智能电源模块;将此电源
    发表于 02-24 11:14 11次下载

    嵌入式设备手机短信交互模块的设计

    嵌入式设备手机短信交互模块的设计 0 引言    随着嵌入式设备应用的日益广泛,人们也越来越乐于使用各种人机
    发表于 12-08 17:03 1604次阅读
    <b class='flag-5'>嵌入式</b><b class='flag-5'>设备</b>手机短信交互<b class='flag-5'>模块</b>的设计

    嵌入式系统的实时控制模块设计与实现

    嵌入式系统的实时控制模块设计与实现
    发表于 10-31 15:02 10次下载
    <b class='flag-5'>嵌入式</b>系统的实时控制<b class='flag-5'>模块</b>设计与<b class='flag-5'>实现</b>

    如何利用zigBee网络协议做嵌入式网关设计?

    针对如何将基于ZigBee的网络接入基于TCP/IP的互联网,提出了一种基于ZigBee嵌入式网关的设计方案。网关硬件选用PXA270嵌入式平台与CC2430无线
    的头像 发表于 12-07 14:14 8130次阅读
    如何利用<b class='flag-5'>zigBee</b>网络协议做<b class='flag-5'>嵌入式</b>网关设计?

    如何使用ARM与ZigBee进行嵌入式无线传感器网络网关的设计资料概述

    针对ZigBee 无线传感器网络与传统Internet 网络之间进行数据交换的需求, 设计实现了一种嵌入式网关, 采用S3C2440A ARM 芯片与CC2431 ZigBee 芯片作
    发表于 10-24 16:56 6次下载
    如何使用ARM与<b class='flag-5'>ZigBee</b>进行<b class='flag-5'>嵌入式</b>无线传感器网络网关的设计资料概述

    基于STM32的嵌入式语音识别模块设计实现

    以LD3320芯片为核心的硬件单元实现语音识别功能,采用嵌入式操作系统μC/OS-II来实现统一的任务调度和外围设备管理。经过大量的实验数据验证,本文设计的语音识别
    发表于 11-04 09:36 70次下载
    基于STM32的<b class='flag-5'>嵌入式</b>语音识别<b class='flag-5'>模块</b>设计<b class='flag-5'>实现</b>

    使用微型嵌入式设备实现嵌入式语音识别应用程序

    电子发烧友网站提供《使用微型嵌入式设备实现嵌入式语音识别应用程序.zip》资料免费下载
    发表于 12-09 10:00 0次下载
    使用微型<b class='flag-5'>嵌入式</b><b class='flag-5'>设备</b><b class='flag-5'>实现</b><b class='flag-5'>嵌入式</b>语音识别应用程序

    基于嵌入式系统的ZigBee芯片的研究与应用

    电子发烧友网站提供《基于嵌入式系统的ZigBee芯片的研究与应用.pdf》资料免费下载
    发表于 10-11 11:24 0次下载
    基于<b class='flag-5'>嵌入式</b>系统的<b class='flag-5'>ZigBee</b>芯片的研究与应用