版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于 ZigBee的无线网络控制系统软硬件设计 摘要 ZigBee技术因其网络投资少, 安全级高, 功耗低,组网方便等原因已被广泛 用于传感器和自动控制领域。 此次课设从控制系统硬件入手,分别对无线模块、控制模块和电源模块进行 了设计,开发出了可用 PC操作的无线控制系统。 工作首先从无线控制模块的硬件入手, 分别对无线模块、 电源模块、 传感器 模块等进行了硬件设计。无线收发部分基于 ZigBee技术并选用了 TI的 CC2530 芯片,综合考虑高频电路的设计原则及低成本原则, 采用双层板设计, 开发了符 合该项目应用的无线模块,具有很强的抗干扰性能。电源模块以电池和 USB 供 电相结合,
2、 以转换高效性为原则进行了电源转换电路设计, 以单输入, 双电压输 出的形式分别为无线模块与传感器模块提供稳压电源。 在实验室条件下, 分别针 对温度传感器、继电器进行了信号处理电路的设计。在选型上综合考虑了功耗、 成本、检测精度、控制可靠性等各方面因素。 硬件设计完成后, 针对不同节点类型进行了协议栈应用程序开发, 分别实现 了点对点通信、 星形传感器网络拓扑及网络拓扑形式; 针对不同模块进行了信号 采集程序设计。 通过对无线通信模块、电源模块、传感器模块以及相应节点程序的有序结合, 完成了包括软硬件在内的整个节点的设计。 并以应用实例验证了程序的可靠性以 及各传感器节点硬件电路设计的稳定可
3、靠性。 另外,也分别对点对点通信及网状 网络拓扑形式进行了硬件完成后对 ZigBee协议栈进行了开发。 最后用 VS2013进行了 PC端控制软件的开发, 设计出了简单的控制界面, 软 件通过串口与协调器进行通信,从而控制无线节点进行工作。 关键词: 无线网、 ZigBee、协调器、终端节点、客户端程序 目录 基于 ZigBee 的无线网络控制系统软硬件设计 1 一、技术现状及课设主要工作 3 1.1 技术现状 3 1.2 课设主要工作 3 二、方案研究及其关键技术 3 2.1 各种相关方案的比较 3 2.1.1 蓝牙技术 3 2.1.2 无线保真技术 4 2.1.3 超宽带技术 4 2.1.
4、4ZigBee 技术 5 2.2 方案的选定及其关键技术 7 2.3 课设中涉及的关键技术 7 三、ZigBee各节点的硬件平台设计 8 3.1 无线通信芯片参数 8 3.2 系统设计及其框图 12 3.3 各节点硬件平台设计 12 3.3.1 电源模块设计 13 3.3.2 继电器模块设计 14 3.3.3CC2530 模块设计 14 四、ZigBee各节点软件开发 16 4.1 开环境简介 16 4.2 ZigBee2007 协议简介 17 4.3 控制节点程序的开发 19 4.3.1 网络拓扑结构 19 4.3.2 网络拓扑及其系统开发 19 五、上位机软件的开发 21 5.1 开发工具
5、简介 21 5.2 控制软件简介 21 六、系统的测试 24 总结 27 参考文献 28 附录 29 致谢 30 、技术现状及课设主要工作 1.1 技术现状 现有控制系统大多采用有线网络系统, 有线网络系统不仅施工困难、 成本高、 而且灵活性差、浪费现象严重。近年来,随着 ZigBee 技术的发展和广泛应用, 于是提出了将 ZigBee 技术用于控制系统。这种方法不仅灵活,而且无需考虑布 线问题,维护简单, 并且通过各种传感器和控制器的结合, 可实现远距离开关的 闭合,以达到控制的目的,极大的降低了系统的成本。 1.2 课设主要工作 1、无线传感器网络节点硬件设计,包括:无线收发模块、电源模块
6、和传感 器模块的 PCB电路设计和元器件选型, 前期设计调度中通信模块与调度底板的硬 件开发等。 2、无线传感器网络通信程序设计,包括:点对点通信、星型网络拓扑以及 Mesh 网络拓扑的程序程序设计,基于星型拓扑的应用程序开发,上位机控制界 面开发等。 3、针对不同模块的控制程序的开发。 、方案研究及其关键技术 2.1 各种相关方案的比较 随着科学技术的发展, 通信技术也随之迅猛发展, 适用于各种不同场合的无 线通信技术也呈现多样化, 各种长距离个人移动通信技术和短距离无线网络技术 使人们能更好的满足信息的需求。其中短距离无线网络可使我们实现控制。 2.1.1 蓝牙技术 Bluetooth(蓝
7、牙)诞生于 1994年,由爱立信创制。 1999年 5 月 20 日,爱立信 (Ericsson)、IBM、英特尔(Intel)、诺基亚 (NOKIA)及东芝 (Toshiba)等业界龙头创立蓝 牙特别兴趣组 (SIG,SpecialI nterest Group),制订蓝牙技术标准,近年来广受业界 关注。 蓝牙用于在不同的设备之间进行无线连接, 例如连接计算机和外围设备, 如: 打印机、键盘等, 或让个人掌上电脑 (PDA)与其它附近的 PDA或计算机进行通信。 目前市面上具备蓝牙技术的手机选择非常丰富, 可以连接到计算机、 PDA或连接 至耳机进行免提通话。 根据已订立的标准,蓝牙可以支持
8、功能更强的长距离通讯, 用以构成无线局域网。每个 Bluetooth 设备可同时维护 7 个连接。可以将每个设备配置为不断向附近的设备声明其存在 以便建立连接。 另外也可以对两个设备之间的连接进行密码保护, 以防止被其它 设备接收。 蓝牙协议工作在无需许可的 ISM(Industrial Scientific Medical)频段的 2.45GHz, 提供 723.1Mbps 的传输速率和 10m 的传输距离。为了避免干扰可能使用 2.45GHz 的其它协议,蓝牙协议将该频段划分成 79 频道,(带宽为 1MHZ)每秒的频道转换 可达 1600 次1。 蓝牙技术的应用主要有以下 3 类: (1
9、) 语音 /数据接入,即将一台计算机通过安全的无线链路连接到通信设备 上,完成与广域网的联接。 (2) 外围设备互连。将各种设备通过蓝牙链路连接到主机上。 (3) 个人局域网 (PAN),主要用于个人网络 与信息的共享与交换。 2.1.2 无线保真技术 与蓝牙技术一样, Wi-Fi(WirelessFidelity, 无线保真技术 )亦属于在办公室和家 庭中使用的短距离无线技术。该技术也使用 2.4GHz免授权 ISM 频段。其第一个 版本 IEEE 802.11发表于 1997 年,定义了介质访问接入控制层 (MAC层)和物理层。 物理层定义了工作在 2.4GHz的 ISM 频段上的两种无线
10、调频方式和一种红外传输 的方式,总数据传输速率设计为 2Mbit/s 。两个设备之间的通信可以自由直接 (Ad-hoc)方式进行,也可以在基站 (Base Station, BS或) 者访问点 (Access Point,AP的) 协调下进行。 Wi-Fi 技术具有以下优点: 其一,无线电波的覆盖范围广。 基于蓝牙技术的电波覆盖范围非常小, 半径大约 只有 15米左右,而 Wi-Fi 的半径则可达 100米,完全能够覆盖整栋大楼。其二, 传输速率高。 尽管 Wi-Fi 技术在通信质量、 数据安全性能等方面比蓝牙稍微逊色, 但其高达 11Mbit/s 传输速率,迎合了目前人们能高速率数据传输的要
11、求。其三, 门槛低、网络布置成本方便。只要在机场、车站、咖啡店、图书馆等人员较密集 的公共场所设置“热点” ,并通过高速线路接入因特网,这样,由于“热点”所 发射出的电波可以达到距接入点半径数十米至 100米的地方,用户只要进入 “热 点”覆盖范围,便能通过笔记本电脑的无线 LAN 或 PDA高速接入因特网。而不 用耗费资金来进行网络布线接入,从而节省了大量的成本 2 。 2.1.3 超宽带技术 UWB(Ultra-Wideband, 超宽带技术 )是一种无线载波通信技术。其历史渊源, 可以追溯到一百年前波波夫和马可尼发明越洋无线电报的时代。 现代意义上的超 宽带 UWB无线技术出现于 196
12、0年,又称脉冲无线电 (Impulse Radio)技术。 UWB 不采用正弦载波调制,而是采用脉冲宽度在 ns 级的快速上升和下降脉 冲,脉冲覆盖的频谱范围很宽,从直流至 GHz,不需常规窄带调制所需的 RF频 率变换,脉冲成型后可直接送至天线发射。脉冲峰峰时间间隔在10 - 100 ps级。 频谱形状可通过甚窄持续单脉冲形状和天线负载特征来调整。 UWB 信号在时间 轴上是稀疏分布的,其功率谱密度相当低, RF可同时发射多个 UWB 信号。UWB 信号类似于基带信号,可采用 OOK,对映脉冲键控,脉冲振幅调制或脉位调制。 UWB 不同于把基带信号变换为无线射频 (RF)的常规无线系统,可视
13、为在 RF上基 带传播方案,在建筑物内能以极低频谱密度达到 100Mb/s 数据速率。 由于 UWB 可以利用低功耗、低复杂度发射 /接收机实现高速数据传输,在近 年来得到了迅速发展。 它在非常宽的频谱范围内采用低功率脉冲传送数据而不会 对常规窄带无线通信系统造成大的干扰,并可充分利用频谱资源。基于UWB 技 术而构建的高速率数据收发机有着广泛的用途。 UWB主要应用在小范围、 高分辨率、能够穿透墙壁、 地面和身体的雷达和图 像系统中。一些公司已开发出 UWB 收发器,用于制造能够看穿墙壁、地面的雷 达和图像装置, 这种装置可以用来检查道路、 桥梁及其它混凝土和沥青结构建筑 中的缺陷,可用于地
14、下管线、电缆和建筑结构的定位。 除此之外, UWB 技术具有系统复杂度低, 发射信号功率谱密度低, 对信道衰 落不敏感, 低截获能力, 定位精度高, 尤其适用于室内等密集多经场所得高速无 线接入,非常适于建立一个高效的无线局域网或无线个域网 (WPAN)。 由于 UWB与传统通信系统相比, 工作原理迥异,因此 UWB具有如下传统通 信系统无法比拟的技术 特点: (1) 系统结构的实现比较简单。 UWB 通过发送纳秒级脉冲来实现数据信号传 输, UWB 发射器直接使用脉冲小型激励天线,不需要功率放大器与混频器。在 发射端, UWB允许采用价格低廉的宽带发射器,同时在接收端, UWB接收机不 需要
15、中频处理。 (2) 数据传输速率高。在民用 UWB系统中,信号的传输范围为 10m 以内,其 传输速率可达 500Mbit/s ,是实现个人通信及无线局域网的理想调制技术。 (3) 功耗低。在高速通信时,系统的耗电量仅为几百 W至几十 mW。民用的 UWB设备功耗一般为传统移动电话终端的 1/100 左右,为蓝牙的 1/20左右。UWB 设备在电池寿命和电磁辐射上,相对于传统无线设备具有很大优势。 (4) 安全性高。作为通信系统的物理层技术具有天然的安全性能。 (5) 定位精确。 超宽带无线电具有极强的穿透能力, 可在室内和地下进行精确 定位,其定位精度可达厘米级。此外,超宽带无线电定位器更为
16、便宜3。 2.1.4ZigBee技术 ZigBee使用 2.4GHz波段,采用跳频技术。 ZigBee 结构简单、速率更慢、功 率及费用也更低。它的基本速率是 250kb/s,当降低到 280kb/s 时,传输范围可 扩大到 134m,并获得更高的可靠性。另外,它可与 254 个节点联网。可以比蓝 牙更好的支持游戏、 消费电子、仪器和家庭自动化应用。 按以上特点来说, ZigBee 主要适用于短距离范围之内并且数据传输速率不高的各种电子设备之间。 人们期 望能在工业监控、传感器网络、家庭监控、安全系统和玩具等领域拓展 ZigBee 的应用。 做为一种新兴的近距离、低复杂度、低功耗、低数据速率、
17、低成本的无线网 络技术,ZigBee是介于无线标记技术和蓝牙之间的技术提案。 主要用于近距离无 线连接。它依据 802.15.4 标准,在数千个微小的模块之间相互协调实现通信。 这 些传感器只需要很少的能量, 以接力的方式通过无线电波将数据从一个模块传到 另一个模块,所以它们的通信效率非常高 4。 ZigBee体系结构如下图所示。 ZigBee联盟负责制作网络层以上协议。目前, 标准制定工作已完成。 ZigBee协议比蓝牙、高速率个人区域网络或 802.11x 无线 局域网更简单使用。 ZigBee体系结构示意图 ZigBee具有以下技术特点: 1、可靠性好,安全性高。 ZigBee 具有可靠
18、的发送接收握手机制,可靠地保证了 数据的发送接收,另 ZigBee采用 AES128位密钥,保证数据发送的安全性。 2、数据传输输率低, 功耗低。传输速率只有 10kb/s-250kb/s,专注于低传输应用。 在低耗电待机模式下,两节普通 5 号干电池可使用 6 个月以上。这也是 ZigBee 的支持者所一直引以为豪的独特优势。 3、低成本。因为 ZigBee数据传输速率低,协议简单,所以大大降低了成本。很 多公司积极投入 ZigBee 芯片开发, TI, Ember,Freescale,Motorola 以及 Philips 均推出了芯片及相应开发工具, 飞利浦预估, 应用于主机端的芯片成本
19、和其它终 端产品的成本比蓝牙更具有价格竞争力 5。 4、网络容量大。每个 ZigBee网络最多可支持 255 个设备,也就是说每个 ZigBee 设备可以与另外 254台设备相连接, 网络可容纳多达 65000个节点,网络中的任 意节点之间都可进行数据通讯。网络有星型、树状和 Mesh 网络结构。 5、网络时延短。 ZigBee的响应速度较快,一般从睡眠转入工作状态只需 15ms, 节点连接进入网络只需 30ms,进一步节省了电能。相比较,蓝牙需要 3-10s、 WiFi 需要 3s。 6、工作频段灵活。使用 2.4GHz、 868MHz(欧洲)915MHz(美国)ISM 频段,世界范 围内无
20、频段限制。 ZigBee的目标市场主要有 PC外设 (鼠标、键盘、游戏操控杆 )、 消费类电子设备 (TV、 VCR、 CD、VCD、DVD 等设备上的遥控装置 )、家庭内智能 控制(照明、煤气计量控制及报警等 )、玩具(电子宠物 )、医护(监视器和传感器 )、 工控 (监视器、传感器和自动控制设备 )等非常广阔的领域 2.2 方案的选定及其关键技术 短距离无线通信特性比较如下表所示: 从表格中我们可以看出四种无线传输技术各有优势, 但从无线控制网络距离 的需求来看蓝牙和 UWB因传输距离太近而不能满足, WIFI和 ZigBee相比它的功 耗相当的高,网络规模也非常小。单一的从成本上来看,
21、ZigBee芯片价格最低, 有利于大规模应用。从频段来看 ZigBee是基于 2.4GHz,无需频段的申请。因此, ZigBee技术无疑是大规模无线控制系统的首选。 2.3 课设中涉及的关键技术 无线控制系统中的关键技术有: 1、电源管理 无线控制节点通过电池进行供电,电池续航能力的有限性限制了节点连续使 用时间,所以网络中控制节点由于电源能量的原因会停止工作甚至废弃。 这对于 无线控制网络研究应用而言, 是一个极其严峻的考验。 此外, 当节点工作环境可 接入电源供电时则无需用电池进行供电。 因此,良好的电源管理可增加无线网络 的生存周期和环境适应性。 2、网络扩展性 不同于传统 Ad hoc
22、网络,无线控制网络节点所覆盖区域不同,节点数目也是 不断变化的。在部署之初,无线控制节点很多,但在网络应用过程中,因外界原 因亦或是本身电能限制, 部分节点退出网络, 或者出于现场应用要求, 又加入了 部分节点, 这便要求网络网络机制具有很强的可扩展性, 以期动态地自动适应网 络中节点的增加或是减少。 3、网络节点的移动管理 对于无线传感网络中节点信息查询问题, 怎样才能行之有效的查询各点状态, 提高中心点对各点的管理效率也是无线网络中要解决的一个关键技术。 4、网络健壮性 工业中无线控制网络多部署到环境恶劣的事故区亦或是人类所不宜长居甚至 不能到达的区域。这便对网络节点的适应性、容错性提出了
23、更具挑战性的要求。 5、网络安全 在保证网络通信畅通的前提下, 还要保证信号传输过程中的安全。 但对于无线网 络而言,其安全算法还应在不大幅度增加系统开销的前提下进行。 网络安全的开 发可从两方面进行考虑: 一是从维护路由安全角度, 通过保证路由的安全来保证 网络的安全;另外便是从协议栈软件编程来解决安全问题。 、ZigBee各节点的硬件平台设计 目前市场上有多家 ZigBee 芯片提供商及开发套件提供商,主要有 TI 的 CC2420、CC2430、CC2530及 MC13224芯片系列, EMBER的 EM250、EM260及 EM300芯片系列, FREESCAL的E MC1321X系列
24、, JNNIC的 JNS139、JNS149系列 及 OKI、 Helicomn 公司芯片系列等。 经对比各大公司主要芯片参数, 组合考虑芯片易用性、 开发效率及芯片成本, 本课设中选择使用 TI的 CC2530芯片7 。 3.1 无线通信芯片参数 1、CC2530芯片简介 CC2530 是用于 2.4-GHz IEEE 802.15、.4ZigBee 和 RF4CE 应用的一个真正的片 上系统(SoC)解决方案。 它能够以非常低的总的材料成本建立强大的网络节点。 CC2530 结合了领先的 RF 收发器的优良性能,业界标准的增强型 8051 CPU,系 统内可编程闪存, 8-KB RAM 和
25、许多其它强大的功能。 CC2530 有四种不同的闪 存版本: CC2530F3/264/128/256,分别具有 32/64/128/256KB 的闪存。 CC2530 具有 不同的运行模式, 使得它尤其适应超低功耗要求的系统。 运行模式之间的转换时 间短进一步确保了低能源消耗。 CC2530F256 结 合 了德 州仪 器的 业界 领先 的黄 金单 元 ZigBee 协 议栈( Z-Stack?),提供了一个强大和完整的 ZigBee 解决方案。 CC2530F64 结合了德 州仪器的黄金单元 RemoTI,更好地提供了一个强大和完整的 ZigBee RF4CE远 程 控制解决方案。 2、芯
26、片引脚及引脚说明 引脚图如下图所示,各引脚功能如下: AVDD1 28 电源(模拟) AVDD2 27 电源(模拟) AVDD3 24 电源(模拟) AVDD4 29 电源(模拟) AVDD5 21 电源(模拟) AVDD6 31 电源(模拟) DCOUPL 40电源(数字) DVDD1 39 电源(数字) DVDD2 10 电源(数字) 引脚视图 引脚名称 引脚 引脚类型 描述 2-V3.6-V 模拟电源连接 2-V3.6-V 模拟电源连接 2-V3.6-V 模拟电源连接 2-V3.6-V 模拟电源连接 2-V3.6-V 模拟电源连接 2-V3.6-V 模拟电源连接 1.8V 数字电源去耦。
27、不使用外部电路供应 2-V3.6-V 数字电源连接 2-V3.6-V 数字电源连接 GND - 接地 接地衬垫必须连接到一个坚固的接地面 GN D 1, 2,3, 4 未使用 的引脚 连接到 GND P0_ 0 19 数字 I/O 端口 0.0 P0_ 1 18 数字 I/O 端口 0.1 P0_ 2 17 数字 I/O 端口 0.2 P0_ 3 16 数字 I/O 端口 0.3 P0_ 4 15 数字 I/O 端口 0.4 P0_ 5 14 数字 I/O 端口 0.5 9 P0_6 13 数字 I/O 端口 0.6 P0_7 12 数字 I/O 端口 0.7 P1_0 11 数字 I/O 端
28、口 1.0-20-mA 驱动能力 P1_1 9 数字 I/O 端口 1.1-20-mA 驱动能力 P1_2 8 数字 I/O 端口 1.2 P1_3 7 数字 I/O 端口 1.3 P1_4 6 数字 I/O 端口 1.4 P1_5 5 数字 I/O 端口 1.5 P1_6 38 数字 I/O 端口 1.6 P1_7 37 数字 I/O 端口 1.7 P2_0 36 数字 I/O 端口 2.0 P2_1 35 数字 I/O 端口 2.1 P2_2 34 数字 I/O 端口 2.2 P2_3 33 数字 I/O 模拟端口 2.3/32.768 kHz XOSC P2_4 32 数字 I/O 模拟
29、端口 2.4/32.768 kHz XOSC RBIAS 30 模拟 I/O 参考电流的外部精密偏置电阻 RESET_N 20数 字输入 复位,活动到低电平 RF_N 26 RF I/O RX期 间负 RF 输入信号到 LNA RF_P 25 RF I/O RX期 间正 RF 输入信号到 LNA XOSC_Q1 22模 拟 I/O 32-MHz 晶振引脚 1 或外部时钟输入 XOSC_Q2 23模 拟 I/O 32-MHz 晶振引脚 2 3、CC2530芯片资源说明 CC2530芯片系列中使用的 8051 CPU内核是一个单周期的 8051 兼容内核。它 有三种不同的内存访问总线 (SFR,D
30、ATA 和 CODE/XDAT)A,单周期访问 SFR,DATA 和主 SRAM。它还包括一个调试接口和一个 18 输入扩展中断单元。 中断控制器总共提供了 18 个中断源,分为六个中断组,每个与四个中断优 先级之一相关。当设备从活动模式回到空闲模式,任一中断服务请求就被激发。 一些中断还可以从睡眠模式(供电模式 1-3)唤醒设备。 内存仲裁器位于系统中心,因为它通过 SFR总 线把 CPU 和DMA 控制器和物 理存储器以及所有外设连接起来。 内存仲裁器有四个内存访问点, 每次访问可以 映射到三个物理存储器之一:一个 8-KB SRAM、闪存存储器和 XREG/SFR寄 存器。 它负责执行仲
31、裁,并确定同时访问同一个物理存储器之间的顺序。 8-KB SRAM映射到 DATA存储空间和部分 XDATA存储空间。 8-KB SRAM是一个 超低功耗的 SRAM,即使数字部分掉电(供电模式 2 和 3)也能保留其内容。这 是对于低功耗应用来说很重要的一个功能。 32/64/128/256 KB闪存块为设备提供了内电路可编程的非易失性程序存储器, 映射到 XDATA存 储空间。 除了保存程序代码和常量以外, 非易失性存储器允许应 用程序保存必须保留的数据, 这样设备重启之后可以使用这些数据。 使用这个功 能,例如可以利用已经保存的网络具体数据, 就不需要经过完全启动、 网络寻找 和加入过程
32、。 时钟和电源管理 : 数字内核和外设由一个 1.8-V 低差稳压器供电。它提供了 电源管理功能, 可以实现使用不同供电模式的长电池寿命的低功耗运行。 有五种 不同的复位源来复位设备。 外设: C2530 包括许多不同的外设,允许应用程序设计者开发先进的应 10 用。 调试接口执行一个专有的两线串行接口, 用于内电路调试。 通过这个调试接 口,可以执行整个闪存存储器的擦除、 控制使能哪个振荡器、 停止和开始执行用 户程序、执行 8051 内核提供的指令、设置代码断点,以及内核中全部指令的单 步调试。使用这些技术,可以很好地执行内电路的调试和外部闪存的编程。 设备含有闪存存储器以存储程序代码。
33、闪存存储器可通过用户软件和调试接 口编程。闪存控制器处理写入和擦除嵌入式闪存存储器。 闪存控制器允许页面擦 除和 4 字节编程。 I/O 控制器负责所有通用 I/O 引脚。 CPU可以配置外设模块是否控制某个引 脚或它们是否受软件控制, 如果是的话, 每个引脚配置为一个输入还是输出, 是 否连接衬垫里的一个上拉或下拉电阻。 CPU 中断可以分别在每个引脚上使能。 每个连接到 I/O 引脚的外设可以在两个不同的 I/O 引脚位置之间选择, 以确保在 不同应用程序中的灵活性。 系统可以使用一个多功能的五通道 DMA 控制器,使用 XDATA存储空间访问 存储器,因此能够访问所有物理存储器。 每个通
34、道(触发器、 优先级、传输模式、 寻址模式、源和目标指针和传输计数)用 DMA 描述符在存储器任何地方配置。 许多硬件外设( AES内 核、闪存控制器、 USART、定时器、 ADC 接口)通过使用 DMA 控制器在 SFR 或 XREG 地址和闪存 /SRAM 之间进行数据传输, 获得高效率 操作。定时器 1 是一个 16 位定时器,具有定时器 /PWM 功能。它有一个可编 程的分频器,一个 16 位周期值,和五个各自可编程的计数器 / 捕获通道,每个 都有一个 16 位比较值。每个计数器 / 捕获通道可以用作一个 PWM 输出或捕获输 入信号边沿的时序。它还可以配置在 IR 产生模式,计算
35、定时器 3 周期,输出是 ANDed,定时器 3 的输出是用最小的 CPU 互动产生调制的消费型 IR 信号。 MAC定时器(定时器 2)是专门为支持 IEEE 802.15.4 MAC 或软件中其他时 槽的协议设计。定时器有一个可配置的定时器周期和一个 8 位溢出计数器,可 以用于保持跟踪已经经过的周期数。一个 16 位捕获寄存器也用于记录收到 / 发 送一个帧开始界定符的精确时间,或传输结束的精确时间,还有一个 16 位输出 比较寄存器可以在具体时间产生不同的选通命令(开始 RX,开始 TX,等等)到 无线模块。定时器 3 和定时器 4 是 8 位定时器,具有定时器 /计数器 /PWM 功
36、 能。它们有一个可编程的分频器,一个 8 位的周期值,一个可编程的计数器通 道,具有一个 8 位的比较值。每个计数器通道可以用作一个 PWM 输出。 睡眠定时器是一个超低功耗的定时器,计算 32-kHz 晶振或 32-kHz RC 振荡 器的周期。睡眠定时器在除了供电模式 3 的所有工作模式下不断运行。这一定 时器的典型应用是作为实时计数器,或作为一个唤醒定时器跳出供电模式 1 或 2。 ADC支持 7到 12 位的分辨率,分别在 30 kHz或 4 kHz的带宽。 DC和音频转 换可以使用高达八个输入通道(端口 0)。输入可以选择作为单端或差分。参考 电压可以是内部电压、 AVDD 或是一个
37、单端或差分外部信号。 ADC 还有一个温度 传感输入通道。 ADC 可以自动执行定期抽样或转换通道序列的程序。 随机数发生器使用一个 16 位 LFSR 来产生伪随机数, 这可以被 CPU 读取或 由选通命令处理器直接使用。例如随机数可以用作产生随机密钥,用于安全。 AES加密/解密内核允许用户使用带有 128 位密钥的 AES算法加密和解密数 据。这一内核能够支持 IEEE 802.15.4 MAC安 全、 ZigBee 网络层和应用层要求的 AES 操作。 11 一个内置的看门狗允许 CC2530 在固件挂起的情况下复位自身。 当看门狗定 时器由软件使能,它必须定期清除;否则,当它超时就复
38、位它就复位设备。或者 它可以配置用作一个通用 32-kHz 定时器。 USART 0和 USART 1每个被配置为一个 SPI主/ 从或一个 UART。它们为 RX和 TX 提供了双缓冲,以及硬件流控制,因此非常适合于高吞吐量的全双工应用。 每个都有自己的高精度波特率发生器, 因此可以使普通定时器空闲出来用作其他 用途。 无线设备 : C2530 具有一个 IEEE 802.15.4 兼容无线收发器。 RF 内核控制模拟 无线模块。另外,它提供了 MCU 和无线设备之间的一个接口,这使得可以发出 命令,读取状态, 自动操作和确定无线设备事件的顺序。 无线设备还包括一个数 据包过滤和地址识别模块
39、。 3.2 系统设计及其框图 基于 ZigBee 的无线控制系统可用 PC软件界面向主节点发送指令,然后由主 节点控制各个子节点工作,以完成所需控制。其系统设计框图如下: PC控 制系统 串口通信 终端控制节点 2 终端控制节点 n 终端控制节点 1 终端控制节点 m 3.3 各节点硬件平台设计 节点硬件总体设计框图如下: 5V 电源 3V 电源 外围电路 1天2 线设计 外形布局 ZigBee 节点硬件设计工作中,分别从四个方面进行了设计:电源方面、 CC2530 收发模块、调试模块以及传感器模块。其中,在对 CC2530模块设计中,分为三 部分分分别设计:对 CC2530外围电路的设计、天
40、线及其匹配电路的设计以及外 形及整体布局设计。调试模块设计分为对接口的设计、 COM 串口的设计以及复 位电路设计。电源模块有两种: 5V与 3.3V,分别为传感器与 CC2530收发模块提 供稳压电源。传感器模块硬件设计分为对信号电路的设计与接口的设计。 3.3.1 电源模块设计 13 3.3.2 继电器模块设计 3.3.3CC2530模块设计 1、 usb转串口电路 14 2、按键电路图 3、跳线连接及其 JTAG接口电路图 4、LED电路图 15 6、 核心板电路图 四、 ZigBee各节点软件开发 4.1 开环境简介 嵌入式应用编程开发工具 IAR Embedded Workbench
41、 8.10具有精密度高、使用 方便的特点。该集成开发环境中内部集成了 IAR的 C/C+编译器、链接器、汇编 工具、文本编辑器、库管理器、工程管理器和 C-SPY调试器。支持多种不同仿真 方式满足不同应用条件需要, 包括:Chipcon JTAG仿真、模拟仿真、IARROM-monitor 仿真、 Silabs调试仿真、 Analog Devices ROM-monitor仿真及 IAR ROM-monitor仿 真等。同时,针对 8051 开发环境内置了代码优化器。 IAR Embedded Workbench模块化的可集成环境具有很强的扩展性: 工程表示 方法层次化; 编辑器支持多字节,
42、同时带有代码模板; 工具选项具有两种不同设 置:通用的源文件和单个的源文件; 工程编译方式灵活; 集成了源代码控制系统。 IAR Embedded Workbench for 8051各部分集成模块功能特点如下:支持 C 和 C+;支持不同的经典型和扩展型 8051 架构;支持 XDATA,PDATA,DATA,IDATA 和 BDATA;支持 SFR寄存器位寻址; C/C+中的高效中断处理; 完全支持 C+中的 存储器属性。 (1) 汇编器。内置 C 语言预处理器,支持所有 C宏定义;内置可复位位宏汇 编器带有丰富的标识符和操作符。 (2) 链接器。产生完全链接、复位位和格式生成的FLASH
43、/PROMable代码; 可直接链接原始二进制图像等多媒体文件; 段命令灵活, 允许对代码和数据的放 置进行细节化的控制;支持超过 30 种工业标准输出格式,兼容绝大多数流行的 调试器和仿真器;全面的交叉参考和相关的存储映射。 (3) 库工具和库。包含所有必需的 ISO/ANSI C/C+库+ 和源代码;轻量级 Runtime 16 库,可由用户根据应用的需要自行配置;包含完整源代码;为所有的低级程序, 如 writechar 和 readchar,提供完整的源代码 8 。 应该特殊注意的是: IAR 不同版本间不相互兼容,使用过程中要极其注意工 程创建时所使用的版本。 4.2 ZigBee2
44、007 协议简介 协议栈是指网络中各层协议的总和,其形象的反映了一个网络中文件传输的 过程:由上层协议到底层协议,再由底层协议到上层协议。 IEEE802.15.4 是一个低速率无线个人局域网 (Low Rate Wireless PersonalArea Networks, LR-WPAN标) 准。该标准定义了物理层 (PHY)和介质访问控制层 (MAC)。 这种低速率无线个人局域网的网络结构简单、 成本低廉、 具有有限的功率和灵活 的吞吐量。低速率无线个人局域网的主要目标是实现安装容易、数据传输可靠、 短距离通信、极低的成本、 合理的电池寿命, 并且拥有一个简单而且灵活的通信 网络协议。为
45、了使供应商能够提供最低可能功耗的设备, IEEE(Institute ofElectrical and Electronics Engineers ,电气及电子工程师学会 ) 定义了两种不同类型的设 备:一种是完整功能设备 (fullfunctional device, FFD),另一种是简化功能设备 (reducedfunctional device, RFD)。 ZigBee2007 协议栈建立在 IEEE 802.15.4 的 PHY层和 MAC 子层规范之上。它 实现了网络层 (networklayer ,NWK)和应用层 (applicationlayer,APL)。在应用层内 提供
46、了应用支持子层 (application support sub layer, APS和) ZigBee 设备对象 (ZigBee Device Object,ZDO)。应用框架中则加入了用户自定义的应用对象 ZigBee 的体系结构由称为层的各模块组成。每一层为其上层提供特定的服务: 即由数据服务实体提供数据传输服务; 管理实体提供所有的其他管理服务。 每个 服务实体通过相应的服务接入点 (SAP为) 其上层提供一个接口,每个服务接入点 通过服务原语来完成所对应的功能。 ZigBee 协议的体系结构如下图所示: 17 协议栈体系结构 物理层( PHY): 物理层定义了物理无线信道和 MAC子
47、层之间的接口,提供 物理层数据服务和物理层管理服务。 介质接入控制子层( MAC):MAC 层负责处理所有的物理无线信道访问,并 产生网络信号、同步信号;支持 PAN 连接和分离,提供两个对等 MAC 实体之 间可靠的链路。 网络层( NWK):ZigBee 协议栈的核心部分在网络层。网络层主要实现节点 加入或离开网络 、接收或抛弃其他节点 、路由查找及传送数据等功能。 ZigBee 应用层框架包括应用支持层 (APS)、 ZigBee 设备对象 (ZDO)和制造商 所定义的应用对象。 应用程序框架(AF):运行在 ZigBee 协议栈上的应用程序实际上就是厂商自 定义的应用对象,并且遵循规范
48、( profile)运行在端点 1 240 上。在 ZigBee应 用中,提供 2种标准服务类型:键值对( KVP)或报文( MSG)。 ZigBee 设备对象(ZDO):ZigBee 设备对象 (ZDO)的功能包括负责定义网络中 设备的角色,如:协调器或者终端设备。还包括对绑定请求的初始化或者响应, 在网络设备之间建立安全联系等。 实现这些功能, ZDO使用 APS 层的 APSDE-SAP 和网络层的 NLME-SAP。 ZDO 是特殊的应用对象,它在端点 (entire)0 上实现。 远 程设备通过 ZDO 请求描述符信息,接收到这些请求时, ZDO 会调用配臵对象 获取相应描述符值。
49、18 4.3 控制节点程序的开发 4.3.1 网络拓扑结构 ZigBee网络支持三种拓扑形式 :星形拓扑、 树形拓扑和网状拓扑。 在星形拓扑 当中,网络由一个中心节点所控制,这个该中心节点叫做“ ZigBee 协调器”。它 负责建立网络和维护网络中的节点, 网络中的其它节点称为 “ZigBee末端节点” , 直接和与协调器进行通信。 在树形拓扑当中, 协调器负责建立和维护网络, 同时 需要确定一些网络参数, 这些参数限定了网络的拓扑结构, 并且包括对网络中的 设备进行可以用于地址分配的计算, 其分配方法将具体在 “编址” 一节进行阐述 介绍。;在树形拓扑当中,网络的扩展需要借助“ ZigBee
50、 路由器”进行扩展。在 网状拓扑当中,同样有协调器、路由器和末端节点等设备。这种拓扑比较灵活, 并不需要在建立网络的时候限制网络的形状。 并且节点之间的通信可以通过最优 路径进行。 ZigBee网络的拓扑与跟 MAC 层的工作模式有着密切的关系。前面已经介 绍过 MAC 层的情况,它的有两种工作模式,是即信标使能模式和非信标使能模 式。信标使能模式只能用于星形拓扑或树形拓扑, 而非信标使能模式可用于各种 拓扑。 4.3.2 网络拓扑及其系统开发 广播是一种特殊的一到多的通信方式,即把信息发送到所有设备。在 ZigBee 当中就是把信息发送到网络当中的所有设备。 广播有很多实现方式, 衡量这些实
51、 现方式优劣的因素一般有时延、 效率、可靠性, 此外复杂度也是一个非常重要的 衡量因素,不光包括网络结构,而且包括存储量。 因广播是一到多的通信,使其范围广,单跳的形式使其延迟低,可靠性高, 所以此次无线控制系统组网方式选用广播的形式。 在协调器中用一下三行代码设 置协调为单播形式。 GenericApp_DstAddr.addrMode = (afAddrMode_t)AddrBraodcast; GenericApp_DstAddr.endPoint = GENERICAPP_ENDPOINT; GenericApp_DstAddr.addr.shortAddr = 0 xFFFF; /
52、向所有节点广播 在接收 PC控制端信息时用以下代码进行串口的初始化: halUARTCfg_t uartConfig;/顶一个串口结构体 uartConfig.configured =TRUE;/串口配置为真 uartConfig.baudRate =HAL_UART_BR_9600;波/ 特率为 9600 uartConfig.flowControl =FALSE;/流/ 控制为假 uartConfig.callBackFunc = rxCB; HalUARTOpen(HAL_UART_PORT_0,打/ 开串口 0 HalUARTWrite(0,1234,4); 在协调器节点中,在其中加入
53、回调函数,从串口 0 读取两个字符串,放进 UARBUF,每当协调器从串口收到数据时则启用此函数。代码如下: static void rxCB(uint8 port,uint8 event) 19 uint8 uartbuf2; HalUARTRead(0,uartbuf,2); AF_DataRequest( / for(i = 0;iclusterId ) case GENERICAPP_CLUSTERID: osal_memcpy(buffer,pkt-cmd.Data,2); if(buffer0 = 2) if(buffer0 = 2) 20 break; 五、上位机软件的开发 5.
54、1 开发工具简介 VS2013的推出是为了能够开发 win8.1 的应用程序,版本中的一部分重要功能 包括:提高开发人员工作效率的新功能、支持开发 Windows 8.1 应用程序、 Web 开发技术取得新进展、改进对本机代码和托管代码的调试和优化以及扩展 ALM 功能。 本人所用系统是 win7 旗舰版 64 位旗舰版,因为 VS2013具有良好的兼容性和 友好的用户界面而成为我首选的编程工具。 5.2 控制软件简介 上位机软件用 C#编写,课设中由于模块数量及其成本的限制,软件仅仅针对 源码及其注释如下: using System; 21using System.Collections.G
55、eneric; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; / 以上几句是自动生成的 using System.IO.Ports; / 自己加的,包含串口相关的 using System.Text.RegularExpressions; / 自己加的 namespace WindowsFormsApplicat
56、ion1 public partial class PCZigbeeLed : Form private SerialPort comm = new SerialPort (); / 我加的,新建一个串口变量 ,并阻 private bool closing = false ;/ 是否正在关闭串口,执行 Application.DoEvents 止再次 invoke private bool Listening = false ; / 是否没有执行完 invoke 相关操作 public PCZigbeeLed() / 自动生成的函数 private void Form1_Load( obje
57、ct sender, EventArgs e) string ports =SerialPort .GetPortNames(); Array .Sort(ports); comboPortName.Items.AddRange(ports); comboPortName.SelectedIndex = comboPortName.Items.Count 0 ? 0 : -1; / 初始化 SerialPort 对象 comm.NewLine = /r/n ; comm.RtsEnable = true ; / 根据实际情况吧。 /comm.DataReceived += comm_DataR
58、eceived; private void comboPortName_SelectedIndexChanged( object sender, EventArgs e) private void buttonOpenClosecom_Click( object sender, EventArgs e) / 根据当前串口对象,来判断操作 if (comm.IsOpen) 22 closing = true ; while (Listening) Application .DoEvents(); / 打开时点击,则关闭串口 comm.Close(); /this.timer1.Stop(); c
59、losing = false / 关闭时点击,则设置好端口,波特率后打开 comm.PortName = comboPortName.Text; comm.BaudRate = 9600; try comm.Open(); catch ( Exception ex) / 捕获到异常信息,创建一个新的 comm对象,之前的不能用了。 comm = new SerialPort (); / 现实异常信息给客户。 MessageBox.Show(ex.Message); / 设置按钮的状态 buttonOpenClosecom.Text = comm.IsOpen ? 关闭串口 : 打开串口 SendBuf0 = 0 x32; SendBuf1 = 0 x31; comm.Write(SendBuf, 0, 2);/ 向串口发送两个字符 21, System.Th
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026秋季国家管网集团北方管道公司高校毕业生招聘考试参考题库(浓缩500题)及答案详解(基础+提升)
- 2026年大庆市农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)及一套参考答案详解
- 2026国网江西省电力公司高校毕业生提前批招聘笔试模拟试题浓缩500题及答案详解(必刷)
- 2025国网山东省电力校园招聘(提前批)笔试模拟试题浓缩500题带答案详解(完整版)
- 2026秋季国家管网集团浙江省天然气管网有限公司高校毕业生招聘笔试参考题库(浓缩500题)附参考答案详解(突破训练)
- 2026国家管网集团校园招聘(河北招17人)考试参考试题(浓缩500题)及答案详解【典优】
- 2026国网山西电力公司高校毕业生提前批招聘笔试参考题库浓缩500题含答案详解(巩固)
- 国家管网集团湖南公司2026届秋季高校毕业生招聘笔试模拟试题(浓缩500题)附答案详解(综合题)
- 2026秋季国家管网集团甘肃公司高校毕业生招聘笔试备考试题(浓缩500题)及答案详解【典优】
- 2026秋季国家管网集团西部管道公司高校毕业生招聘笔试参考题库(浓缩500题)及答案详解【夺冠】
- GB/T 41782.4-2024物联网系统互操作性第4部分:语法互操作性
- 超星尔雅学习通《舌尖上的植物学(北京大学)》2024章节测试答案
- 如果历史是一群喵
- 刑事侦查大队技术中队
- 病理科科室质量与安全管理自核查记录表
- 宫腔镜检查的个案护理
- 可赛成功(浙江)新材料科技有限公司年产高性能润滑改性材料5万吨建设项目环境影响报告
- 基层市场监督管理局(所)标准化规范化-市场监督管理所
- 全套ISO45001职业健康安全管理体系文件(手册及程序文件)
- 桥梁定期检查-桥梁病害及成因分析
- 小学社会主义核心价值观主题班会课件
评论
0/150
提交评论