物联网综合应用课程设计
IEEE802.15.4 协议和 ZigBee 技术的片上芯片,拥有 128KB 的系统内可编程闪存和8KBRAM ;具有强大的 5 通道 DMA,低功耗、低电流等特点。CC2530与 STM32 处理器连接也很简单,电路如图 5 所示。
图 5 无线通信模块
3.2.5 GSM/GPRS 通讯模块
通讯模块采用 Siemens 公司的新一代 GSM/GPRS 双频模块MC35i,该模块外围电路简单,工作频段可以是 900 MHz 和 1800 MHz 两个频段。该模块集成基带处理器和射频电路,微处理器通过该模块的异步串行收发器与其交互。MC35i 需要外接天线,而且自带 SIM 接口,硬件连接如图 6 所示。
图 6 MC35i 硬件电路图
19
物联网综合应用课程设计
3.3 系统的软件设计
系统软件设计采用模块化的编程思想进行,包括主程序、 终端采集子程序、ZigBee 无线通信子程序、RS232 通信子程序。当系统启动后,系统根据当前状态进行分析,如果正常执行各部分子程序,当有警报发生时,系统打开 GSM/GPRS 通讯模块进行报警。系统是基于 ARM 嵌入式的开发平台进行的,采用模块式设计结构。
图7 系统总体流程图
在系统中,Zigbee 协调器负责启动网络,根据情况选择合适的信息组建网络,同时,通过串口与中央控制器相连,实现信息汇聚和用户命令向下发放,Zigbee 协调器是系统的桥梁。Zigbee 协调器软件流程如图 8 所示。
20
物联网综合应用课程设计
图 8 协调器软件流程图
3.4 系统的网络拓扑结构
通过对智能家居系统的功能研究与设计,本系统将智能家居系统的网络结构分为三个部分:远程控制网络、家庭网关及家庭内部网络。
图9 为智能家居系统的网络拓扑
家庭内部网络是物联网智能家居系统的感知层的具体实现,是互连家庭内部各种电器、设备的局域网,提供信息数据传输和设备管理功能。
家庭网关是连接家庭内部网络和远程控制网络的网络连接设备,是整个智能家居网络的核心,集中协调家居网络中的各个设备的运行。
21
物联网综合应用课程设计
远程控制网络主要负责通过互联网网络通信协议与家庭网关进行通信,传递家庭内部的状态信息,发送家电的控制信息。
第四章 远程控制客户端的设计与实现
4.1 客户端的功能与结构
远程控制端即客户端,它通过发送控制命令对智能家电进行控制,必要时反馈信息给用户,同时通过监测安防设备,发现异常及时提供报警及存储报警信息。客户端分为五个功能模块:用户信息管理、家电管理模块、家庭安防模块、情景模式模块及系统状态模块。
其中:
● 用户信息管理模块主要实现用户身份的认证,以保证家庭信息的安全。
● 家电管理模块主要实现对设备的自动识别,对房间和房间内的设备进行管理,获取用户的控制命令,通过网络发送控制命令。
● 家庭安防模块主要是为了通过发送报警器控制命令,控制报警器的开启与关闭,获取报警信息,发出报警信息以通知用户。
● 情景模式模块主要是为了实现用户通过选取预先定义好的各种家居设备组合工作模式和装填,改变家庭内部的状态。
● 家庭环境信息采集模块主要是为了获取当前家庭环境信息,以供用户查询。 本次设计的客户端主要是在 PC 机客户端,开发工具为 VC++6.0。
4.2 客户端网络通信的设计与实现
本次设计的客户端的网络通信是基于 TCP 连接的,网络程序的设计接口是采用Windows Sockets。基于 TCP 的 CSocket 编程的客户端的程序流程是:
(1)创建套接字。首先,创建一个套接字对象,然后利用 Create()函数创建一个基本的套接字句柄。Create 函数原型如下:
BOOL Create( UINT nSocketPort,int nSocketType , LPCTSTR lpszSocketAddress );//创建套接字函数,初始化套接字对象,对客户端编程时选用默认值即可。
(2)向服务器发出连接请求。利用 Connect()函数向服务器发送连接请求。Connect函数原型如下:
22
物联网综合应用课程设计
BOOL Connect(LPCTSTR lpszHostAddress, UINT nHostPort);//第一个参数为服务器的 IP 地址,第二个参数为端口号。本次设计的服务器地址要求用户手动输入,端口号为 5000.
(3)服务器端进行数据通信。利用 Send()函数向服务器发送数据,利用 Recv()函数接收来自服务器的数据,实现与服务器的数据通信。函数原型如下: int PASCAL FAR send (SOCKET s, const char FAR * buf, int len, int flags);
int PASCAL FAR recv (SOCKET s, char FAR * buf, int len, int flags);//s 为连接套接字,buf 为数据,len 为数据长度,在本次设计中数据长度均为 32 位。 (4)关闭套接字。利用 Close()在通信结束后,关闭套接字。
4.3 数据库的设计与实现
本次设计的客户端具有添加房间、删除房间、在房间内添加和删除设备的功能,当用户进行这些操作后,下次启动客户端,需仍能看到上次进行的修改。为此,客户端的需要对设备的物理地址、设备名以及设备所在的房间号、房间名进行存储。因此本系统用到 Access 2007 数据库,在数据库中建立了一个设备管理表用以存放数据。对应的表格内容如表 1 所示。
表 1 设备信息表
23
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库基于物联网的智能家居演示系统(5)在线全文阅读。
相关推荐: