当前位置:首页 > 物联网 > 《物联网技术》杂志
[导读]摘 要:基于TCP/IP协议和433 MHz射频无线通信技术,设计了一种用户远程家电控制系统。该系统选用 STM32F103VCT6单片机作为核心控制芯片,采用DM9000AEP网络接口芯片(以太网控制器)实现单片机与互联网服务器 之间的通信,同时使用CC1101芯片实现单片机与家电微控制器的射频无线通信,并通过433 MHz无线通信网络构建家庭内部 网络,运用TCP/IP协议构建家庭外部网络。网络服务器可同时接收多个用户请求,并用网络服务程序处理与对应客户端的通 信。通过对风扇进行的测试证明,该方案能够通过互联网远程控制风扇。

引言

物联网是多网融合时代的必然产物,它将人与人之间的 沟通连接扩展到了人与物、物与物之间的沟通连接,智能化、 网络化的生活将让人们工作、生活更加便捷和人性。智能家居 是物联网的一个重要应用,智能家居控制系统主要实现了家庭 智能网关对家庭各种设备的控制及设定。用户可以通过手持 控制器或各种控制面板在家庭内部进行家电设备控制,完成 家庭内部的闭环控制,也可以通过手机、上网等方式实现对 家电的远程控制。用户可以根据自己的需求自由地增加/删 减家电控制节点并可通过全图形化向导设置家电,使用方便、 操作简单。

用户利用手机、电脑等终端登录网络服务器,输入用户 名和密码后,通过互联网连接到家中的智能控制器(控制中心)。 智能控制器调用相关的程序,将控制信息或查询信息通过RF 无线通信网络传送给家电微控制器,家电微控制器收到数据 后,进行相应的处理,产生接口数据,然后将接口数据上传至 网络服务器,最终实现用户通过浏览器可以看到家里各种家 电设备的状态信息,并可以通过点击浏览器页面上的各种与家 电设备相关联的按钮来控制。

1系统总体设计

本系统基于物联网而设计,系统可分为感知层、网络层 和应用层等三层。系统的层次结构如图1所示。

本系统的感知层采用STM8S103单片机作为微控芯片,CC1101芯片作为RF无线收发芯片,该层功能是对终端电器 进行数据采集、数据收发以及状态监控,将电器的实时监控 数据通过RF无线网络传送到家庭控制中心。具体工作流程 为:CC1101无线收发芯片收到控制中心的数据后,对其进行 解调,格式正确则存入接收FIFO,通知MCU有新数据到达。 STM8S103微控芯片读取数据并进行解码,然后进行相应操 作,上传家电状态数据或则控制家电并更新数据上报控制中心。 STM8S103采集到家电状态信息后,将数据进行编码,将一定 格式的数据通过SPI写入CC1101的发送FIFO,由CC1101芯 片负责将数据发送给控制中心。


基于TCP/IP协议的智能家居控制系统设计

网络层采用STM32F103VCT6单片机作为核心处理芯 片,DM9000AEP芯片作为网络接口控制芯片,该层功能主 要是处理来自应用层的TCP/IP数据包和来自感知层的RF 无线数据包。网卡芯片DM9000AEP实现接收和发送TCP/ IP数据包,CC1101无线通信模块实现RF无线数据的收发, STM32F103VCT6负责将收到的数据进行处理。DM9000AEP 收到来自应用层TCP/IP数据包后,STM32F103VCT6对数据 进行解调、解码。再将数据封装成一定格式的RF数据包, 传给CC1101无线通信模块,发送给感知层。反之为逆过程。

应用层包括网站应用程序和网络应用程序,其功能是接 收用户请求,以实现对电器的远程控制。其中网站应用程序 主要实现人机对话接口,是用户进行帐户管理和家电控制的 综合系统,按照ASP的MVC模式进行开发,网站用户名密 码通过MD5不可逆加密算法进行处理,目前世界上仍不能对 MD5加密后的数据进行解密,以确保对家电控制的安全操作。 网络应用程序则是使用线程池处理来自多个网络层通信芯片的 TCP/IP数据包,同时将网站用户请求通过TCP协议发送给网 络层的网卡芯片DM9000AEP。这种分层结构将大量用户的控 制请求转由服务器CPU进行处理,从而大大降低了网络层单 片机STM32F103VCT6的负荷。

2系统硬件电路设计

2.1网络接口电路设计

主控芯片选用增强型的STM32F103VCT6单片机,内置 256 KB FLASH 和 48 KB SRAM,工作频率为 72 MHz,完 全可以满足TCP/IP数据包发送速度和接收速度的要求。采 用外部SPI FLASH来保存需要断电保存的数据,例如IP地 址、子网掩码、网关、客户账号及密码等。STM32F103VCT6 内部有20 KB的运行空间(48 KB的SRAM),完全可以满 足处理TCP/IP数据包所需要的10 KB左右的内存空间,无 需外部RAM,这样保证了数据的接收速度与发送速度。 STM32F103VCT6集成了 FSMC模块,具有四个片选输出, 支持 PC 卡 /CF 卡,SRAM, PSRAM,NOR 和 NAND。

网卡芯片采用DM9000AEP以太网控制器,该芯片具有 快速以太网MAC控制器、10M/100M自适应的PHY和4K DWORD值的SRAM, IO管脚兼容3.3 V/5.0 V电压,支持8位、 16位和32位接口访问内部存储器。

本设计为STM32F103VCT6单片机通过高速FSMC与 DM9000AEP网卡芯片进行通信,最高速度可达100 Mb/s。 DM9000AEP 的数据引脚 SD0-SD15 连接 STM32F103VCT6 的数据总线(FSMC_D0~FSMC_D15),通过CMD引脚区分 数据总线和地址总线,IOW引脚接单片机的写信号引脚 (FSMC_NOE), IOR引脚接单片机的读信号引脚(FSMC_ NEW),CMD引脚接单片机的PD11引脚(FSMC_A16),CS 引脚接单片机的片选信号引脚(LAN_NCS),PWRST引脚接 单片机的复位引脚(NREST),INT引脚接单片机的中断引脚 (PB0/LANINT),RX+,RX-,TX+,TX-两对差分信号线接 带有隔离变压器的RJ45座,LED2/LinkAct引脚和 LED1/Speed引脚用于显示各种状态。单片机通过FSMC总线 可以对DM9000AEP实现读控制寄存器、写控制寄存器、读 缓冲器、写缓冲器、位域置1、位域清零和软件复位。网卡芯 片的连接电路如图2所示。

2.2 RF无线通信电路设计

本文采用低成本、超高频无线收发器CC1101作为RF无 线收发芯片,工作在433 MHz频率上,可编程控制的数据传 输率最高可达500 Kb/s。CC1101芯片的接收或发送模式可通 过微控制器STM8S103F3编程配置。CC1101芯片处于接收状 态时,首先对收到的RF信号进行放大处理,然后通过混频 器将高频信号转换为中频信号,中频信号再被ADC转换为数 字信号,解调后的信号经前向纠错和数据包处理,正确无误 的数据存人接收FIFO,产生脉冲信号通知MCU收到新数据, MCU通过SPI 口读取数据。在发射模式下,MCU将待发送 的数据写入CC1101的发送FIFO, CC1101把需要发送出去的 数据通过GFSK载波的形式发送出去。

3系统软件设计

3.1终端程序设计

终端系统执行两个任务:CC1101无线收发信息、四线制 查询或控制家电状态。上电初始化时设置T0定时器和开启外 部中断。微控制器周期性采集家电状态信息,通过与存储信 息比较,发现家电工作状态异常或则改变,则将数据封装成固 定格式帧,通过CC1101发射数据,上报网络层。当外部中断0 接收到来自网络层的控制命令时,微控制器解包后对家电进行 控制,并且回发状态信息。

3.2网关(控制中心)程序设计

网关系统的功能主要有:通过DM9000AEP连接以太网, 实现网关与服务器通信;通过CC1101无线收发模块,实现网 关与终端通信;通过STM32F103VCT6实现数据处理、协议 转换。网关系统初始化包括ARP初始化、TCP初始化、内 存初始化、定时器初始化和网卡芯片初始化。初始化完成后,设置网卡芯片的IP地址、子网掩码、默认网关和本地监听的 端口。接着就开启中断,以便主动连接服务器,其中IO外部 中断之一用来处理来自DM9000AEP的请求,以便收发来互联 网的数据包;外部中断之二则处理来自CC1101的请求以便接 收来自感知层的RF信号,若中断没有发生则进入节电模式。 网络层的单片机控制流程如图3所示。

3. 3应用层程序设计

在应用层,系统采用MVC模式进行系统设计。控制器 的Servlet程序分为两部分:一部分与网站程序一起处理来自 浏览器的业务逻辑,包括用户注册、登录和控制电器等操作; 另外一部分构建一个独立的线程池,以便监听到指定端口, 等待来自网络层中各个设备的TCP连接,完成与网络层的会 话。ASP页面是人机接口,完成显示任务,其数据由Servlet 和JavaBean程序产生。JavaBean程序是处理用户请求和电器 控制的事务逻辑程序,读取数据库中的数据并给予存储和查 询。

4通信协议设计

控制器通过RF无线通信技术与终端节点通信,考虑无 线通信的干扰以及保密,RF通信采用特定的帧格式,以确保 通信可靠。无线数据包的帧格式如表1所列,其无线数据包 包含的会话序号为控制通信流程;目的ID和源ID是判断发 送方和接受方;节点类型用于判断终端节点功能;控制命令用 于控制家电的工作状态;数据字段用于携带家电的工作状态信 息;校验字段用于校验数据包是否收发正确。

本系统通信会话流程如图4所示。系统上电初始化后, 网络层的网关主动连接服务器,建立一个基于TCP协议的 Socket连接来进行会话,并发送自身设备的序列号和密码。 服务器监听到来自网络层通信MCU的请求后,验证序列号 和密码是否在数据库中存在,并将验证后的状态返回给通信 MCU,若验证通过后将进行会话。若感知层有新的节点,控 制中心收到入网申请后,根据节点功能分配ID,并且储存节点 信息。当控制中心收到外部中断,首先判断中断来自应用层还 是感知层,进行数据处理和协议转换后转发出去。当感知层 接到外部中断后,则根据信息直接报告当前工作状态,或则改 变工作状态后再上报新的工作状态。服务器收到信息后,将工 作状态与用户请求比对:若状态相同则报告处理完毕,反之则 重新发送控制命令。若任务完成,服务器端断开此条TCP连接, 则一次通信完成。用户可在远端通过手机或者电脑上网登录自 己的客户端,就可以完成对家电的远程控制。

图4通信流程图

5系统测试

5.1测试环境

控制器与服务器通信测试使用已配置好IP的商用电脑进 行测试,控制器与路由器连接,路由器与商用电脑连接,上电 自动完成测试。

5.2远程控制系统测试

5.2.1连通性测试

在网络设备端,采用Windows XP系统的Ping命令对 网络设备进行连通性测试。网络层精简的TCP/IP协议中同时 实现了 ARP和TCP协议,所以也可以使用APR、Telnet或 PathPing命令测试网络层设备的连通性。网络层设备能够被 Ping通,说明设备协议实现正确。通过以上各种方法进行测 试都表明网络层设备与互联网连通性良好,能够稳定进行局域 网通信。

5.2.2监听测试

在服务器端使用SocketTest工具软件监听服务器1000端口,开启接收数据提示。网络层微控制器STM32F103VCT6 主动向广域网服务器1000端口发起TCP连接请求,并将此设 备的ID和Password封包发送给服务器。能够将数据包准确 发送到服务器,说明网络层设备与互联网连通性良好,能够与 广域网通信。

6参数测试

微控制器STM32F103VCT6在使用8 MHz晶振时,用 Sniffer抓包软件测得其与服务器最高通信速度可达25 KB/s。 使用Ping命令,向192.168.1.101发送500个包,无丢包现象。 这500个数据包当中,返回速度最快耗时为41 ms,最慢耗 时为93 ms,平均耗时为53 ms,完全能满足家电远程控制的 实时性要求。

通过浏览器浏览家电状态信息,点击页面电灯、风扇的 开关按键,实现了远程控制电灯、风扇的开关状态。

7结语

随着物联网技术的深入发展,智能家居前景广泛并已 经得到了世界著名厂商的关注并将被运用于实际生活中,它 能够造福人类,让人们的生活更舒适、更便捷。本文针对基 于物联网技术的智能家居系统进行了研究,主要完成了系统 的总体设计,该智能家居系统以STM32F103VCT6单片机与 DM9000AEP网卡芯片为硬件平台,设计了 RF无线收发、家 电控制等模块,通过无线网络将各种家电设备连接在一起, 从而实现信息家电的网络化和远程监控。家庭数字化道路在 我国还有漫长的路要走,智能家居系统具有广阔的应用前景, 值得更深入地研究和探讨。

20211222_61c2f12773ff9__基于TCP

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

程控开关,即程序控制开关,是一种根据预设程序或指令进行开关动作的装置。它广泛应用于工业自动化、智能家居、通信等领域,实现设备的远程控制、定时开关等功能。本文将详细介绍程控开关的使用方法,帮助读者更好地理解和应用这一技术。

关键字: 程控开关 工业自动化 远程控制

在这篇文章中,小编将对智能家居控制系统的相关内容和情况加以介绍以帮助大家增进对它的了解程度,和小编一起来阅读以下内容吧。

关键字: 智能家居 智能家居控制系统

在这篇文章中,小编将为大家带来智能家居控制系统的相关报道。如果你对本文即将要讲解的内容存在一定兴趣,不妨继续往下阅读哦。

关键字: 智能家居 智能家居控制系统

5G移动通信技术是第五代移动通信技术的简称,是最新一代的蜂窝移动通信技术。与4G技术相比,5G技术具有更高的数据传输速度、更低的延迟、更大的网络容量和覆盖范围等优势,能够满足大规模数据传输和实时交互的需求。

关键字: 5G 远程控制

随着智能技术的不断发展,智能家居逐渐走进人们的视野和生活中,市面上智能家居种类、规格、品牌都很多,业主们一定要认真进行挑选,不仅要注意智能家居的质量和智能,在互联网时代,智能家居成为家庭装修“风向标”,智能家居用科技创新...

关键字: 智能家居 互联网 远程控制

摘要:简单介绍了建设水源地远程控制系统的必要性,详细介绍了基于手机APP技术的水源地控制系统的系统架构和主要功能。该项目的实施,提高了工作效率,降低了职工劳动强度,提高了水源地管理水平。

关键字: 远程控制 系统架构 主要功能

摘要:随着城市经济的发展,电力电缆线路建设需求逐步扩大,为适应城市规划及城市电网电缆线路的建设发展,电缆隧道将逐步取代传统电缆敷设方式。由于地下电缆隧道的封闭性、距离长、管线多、环境复杂等特点,综合监控系统在电缆隧道中的...

关键字: 电缆隧道 综合监控 远程控制

摘要:通过对某自来水厂加氯系统的改造设计,详细分析了施耐德Premium系列PLC与Genesis64组态软件在自来水厂加氯系统中的具体运用情况。实践表明,改造后加氯系统运行稳定,加氯效果良好,消除了设备安全隐患,加大了...

关键字: 加氯系统 PLC 远程控制

摘要:远程控制的交流接触器控制回路常见于火力发电厂燃料系统、脱硫脱硝系统及灰水化学水处理等诸多需要电机驱动的设备就地控制箱的控制回路中。当电机控制箱安装在设备就地,并需要对其进行远控操作时,由于控制电缆过长或使用不合理、...

关键字: 远程控制 接触器 电机控制

摘要:钻铆加工机器人专用末端操作器由于缺少有效的远程控制功能,实用性和有效性大大降低。鉴于此,提供了一种用于钻铆加工机器人专用末端操作的电力载波电路,通过电源线来进行远程遥控,从而实现操作智能化。

关键字: 末端操作器 远程控制 电力载波电路
关闭