物联网智能家居实训||实验二十 人员监测联动语音播报实验
发布者:唯众
布时间:2020-09-23 15:50:19
点击量:
实验环境
软件环境:JDK1.6、SDK、ADT、Eclipse
硬件环境:DC5V、DC12V、节点板2块、ZIGBEE协调器1个、ZIGBEE节点2个、A9网关、温湿度模块、语音播报模块、继电器模块、红外对射探测器。
实验内容
A9网关通过ZIGBEE与语音播报节点与继电器节点通讯,当检测到有人触发红外对射探测器,自动播报欢迎词。
实验原理
ZIGBEE继电器节点板获取红外对射的状态,然后通过ZIGBEE无线发射给A9网关进行显示和处理。A9网关判断继电器节点的状态,当检插到有人进入时,通过ZIGBEE通知语音播放节点播放欢迎词。
硬件接口原理
本实验集成了继电器输入输出模块及语音播报模块。上述模块在前面都有详细讲解,请参照实验七及实验十。
软件设计
1. CC2530人员监测联动语音播报流程图
继电器输入端状态的上传流程与语音播放控制的流程,请参考实验六和实验十,此处是协器的主要步骤流程图:
2. CC2530人员监测联动语音播报软件
继电器输入端状态的上传代码与语音播放控制代码,请参考实验六和实验十,此处是协器的主要软件代码:
72. void GenericApp_Init( uint8 task_id )
73. {
74. halUARTCfg_t uartConfig; //定义个串口结构体
75. uartConfig.configured = TRUE; //串口配置为真
76. uartConfig.baudRate = HAL_UART_BR_115200;
77. //波特率为9600
78. uartConfig.flowControl = FALSE; //流控制为假
79. uartConfig.callBackFunc = rxCB; //当模块收数据时,会调用这个函数进行处理
80. HalUARTOpen(HAL_UART_PORT_0,&uartConfig);
81. // 打开串口0
82. HalUARTWrite(0,"hello pc!",sizeof("hello pc"));
83.
84. //初始化oled显示屏
85. oled_initial();
86.
87. GenericApp_TaskID = task_id;
88. GenericApp_NwkState = DEV_INIT;
89. GenericApp_TransID = 0;
90.
91. Group_Rout.ID = 2;
92.
93. GenericApp_Rout_DstAddr.addrMode = (afAddrMode_t)AddrGroup;
94. GenericApp_Rout_DstAddr.endPoint = GENERICAPP_ENDPOINT;
95. GenericApp_Rout_DstAddr.addr.shortAddr = Group_Rout.ID;
96.
97. GenericApp_Rout_epDesc.task_id = &GenericApp_TaskID;
98. GenericApp_Rout_epDesc.endPoint = GENERICAPP_ENDPOINT;
99. GenericApp_Rout_epDesc.simpleDesc = (SimpleDescriptionFormat_t *)&GenericApp_SimpleDesc;
100. GenericApp_Rout_epDesc.latencyReq = noLatencyReqs;
101. afRegister( &GenericApp_Rout_epDesc );
102. aps_AddGroup( GENERICAPP_ENDPOINT, &Group_Rout );
103.
104.
105. ZDO_RegisterForZDOMsg( GenericApp_TaskID, End_Device_Bind_rsp );
106. ZDO_RegisterForZDOMsg( GenericApp_TaskID, Match_Desc_rsp );
107. }
108. static void rxCB(uint8 port,uint8 event)
109. {
110. RfPacket_t rf;
111. uint8 len=0;
112. len = HalUARTRead(0,rf.Buf,sizeof(RfPacket_t));//从串口读取数据到uartbuf中
113. if(len != sizeof(RfPacket_t)){
114. return;
115. }
116. if(rf.Pack.Head!='#'||rf.Pack.Tail!='$')
117. return;//F_:如果接收的不是有效数据
118. len = AF_DataRequest(
119. &GenericApp_Rout_DstAddr,
120. &GenericApp_Rout_epDesc,
121. rf.Pack.Sid[0],
122. sizeof(RfPacket_t),
123. rf.Buf,
124. &GenericApp_TransID,
125. AF_DISCV_ROUTE,
126. AF_DEFAULT_RADIUS);
127.
128. if(len != SUCCESS){
129. asm("NOP");
130. }
131. }
132. //将ZigBee收到的数据通过串口发给A9,添加终端省掉的字段
133. static void GenericApp_MessageMSGCB( afIncomingMSGPacket_t *pkt )
134. {
135. switch ( pkt->clusterId )
136. {
137. case S1_JDQ:
138. HalUARTWrite(0,(uchar*)pkt->cmd.Data,pkt->cmd.DataLength);
139. break;140. }141. }
3. Android端软件代码:
实验步骤
1) 将ZIGBEE协调器插在A9网关上
2) 将2个ZIGBEE节点分别插在2块节点底板上
3) 将语音播放模块和继电器分别插到2块节点底板上
4) 将红外对射传感器连接到继电器模块输入端
5) 用DC5V电源给A9网关供电,同时按下电源键3S开启网关
6) 用DC5V电源给节点底板供电
7) 用DC12V电源给红外对射传感器供电
8) 打开A9网关,并打开指定APP ;
9) 点击设置按钮 ,设置指定串口号和波特率 ,并设置WiFi服务器端端口号,开启服务器(默认情况WiFi服务器自动开启);
10) 当有人经过红外对射传感器时,则会语音播报传感器模块发出欢迎指令。
唯众物联网工程应用实训装置带你快速掌握物联网关键技术
一、产品名称:物联网工程应用实训装置
二、产品型号和技术规格
1. 产品型号:WZ-IOT-ATP
2. 外型尺寸:
桌面式操作台1个操作台底座1个
3. 电压/功率:220V
4. 配套设备
实训台:
温湿度传感器1个
人体红外监测器1个
高频RFID阅读器1个
光照强度检测器1个
可燃气体监测器1个
RGB三色灯执行器1个
LED显示屏2个
智能语音播放设备1个
继电器1个
物联网教学实训主要用于对物联网核心课程的知识点学习,能够服务于相关课程的实验和实训需求。
核心课程主要针对学科基础技术的培养,掌握物联网概论,传感器和RFID 等感知设备认知和开发,ZigBee/Wi-Fi/蓝牙等无线网络的配置、维护和开发,物联网互联接入及存储,物联网应用层软件开发,物联网产品整合等基本知识。
核心课程采用全模块化的实验箱教学产品进行实验,具备优良的教学实验特性:全模块化的设计、开放式的硬件接口、开源的实验代码、完整的教学资源、贴心的售后服务。
基于ARM Cortex-M4核心的通信网关,支持无线节点模块的双向连接及组网,与配套“可视化编辑器”和“可视化控制器”进行配置和控制。物联网关可以管理不同协议的无线节点模块,并能将多个无线节点模块视作不同设备,将无线节点模块的数据转换为TCP网络通信进行传输,网关同无线节点模块可以互通互联,轻松构建物联网络,共同构成物联应用开发平台。通过本物联网平台,可以迅速降低物联网应用的开发成本和开发时间,开发者即便不会编程,也可以在一两天之内,就迅速使用本平台开发搭建出自己的物联网应用。
通过电脑PC端可直接以“可见即可得”的方式在此工具上生成不同的设备操作界面,支持指示灯、按键、图片集合、变量视窗、图文链接等五种可视化控件。所有控件的动作都可以直接反应到实际的物联设备(即无线节点模块)上。界面生成后,可以直接导入App使用,而不需要重新编译或安装App。
通过物联网关、可视化控制器、可视化界面生成器编辑器、万纳模组、物联网传感器/执行器以及配套物联网连件连接件,师生不仅可以完成出基于物联网、远程访问、设备联动等功能的物联网实训项目,还可以迅速开发物联网商业产品\项目,如空气监测仪、电气设备在线监测器等等,并随时实现不同设备间的联动,而这些开发过程,基于本系统的可视化开发工具,可以做到零编程实现物联网应用系统。
支持家庭常用的各种无线协议(红外、射频),兼容市面绝大多数品牌的空调、电视机、灯光、安防、窗帘等等家电设备,因此可以直接当做一套完备的智能家居系统进行使用,并集成了摄像头功能,可以直接在App中使用摄像头。
平台所有设备采用模块化、集散化、工业化的设计模式,每个模块都为独立工作单元;模块均接近实际应用系统,能够容纳2-3个学生同时实训,可完成工程项目应用开发系统中硬件设备的安装、布线与调试,完成设备间的无线组网,既具有展示型又具有实操性。能够组建具有行业特色的物联网智能家居实训项目,确保学生可利用设备搭建真实工程项目。
上一篇:物联网智能家居实训|||实验十九 温度电扇联动实验
下一篇:物联网智能家居实训||实验二十一 门禁出入口控制实验