物联网技术与应用实践(项目式)--项目10课件.ppt

上传人:醉**** 文档编号:12320076 上传时间:2022-04-24 格式:PPT 页数:89 大小:1.13MB
返回 下载 相关 举报
物联网技术与应用实践(项目式)--项目10课件.ppt_第1页
第1页 / 共89页
物联网技术与应用实践(项目式)--项目10课件.ppt_第2页
第2页 / 共89页
点击查看更多>>
资源描述

《物联网技术与应用实践(项目式)--项目10课件.ppt》由会员分享,可在线阅读,更多相关《物联网技术与应用实践(项目式)--项目10课件.ppt(89页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、1 1项目十 基于物联网的智能泊车系统设计项目十 基于物联网的智能泊车系统设计10.1 任务一: 智能泊车系统的简述10.2 任务二: 系统的结构设计10.3 任务三: 系统的模块接口设计10.4 任务四: 系统的界面设计10.5 任务五: 系统的软件设计2 2项目十 基于物联网的智能泊车系统设计 10.1 任务一: 智能泊车系统的简述1. 系统简介基于物联网的智能泊车系统结合RFID、ZigBee技术、Wi-Fi及Android技术实现了停车场的智能泊车。系统主要包括控制、出入口、停车位、Android客户端软件等四部分。控制部分主要包括系统管理及界面的显示;出入口部分包括读卡、闸机控制、拍

2、照三部分;停车位部分通过ZigBee外接光敏传感器来实现车位状态的获取,并发送到协调器。3 3项目十 基于物联网的智能泊车系统设计系统具有如下特点:(1) 模块化,安装方便。 (2) 真实场景,形象直观。 (3) 方便快捷,简单生动。 4 4项目十 基于物联网的智能泊车系统设计2. 实现目标(1) 实现ETC一体化系统,实现智能化收费。(2) 在目前已有的循迹赛道上, 增加两个闸门,一个控制器(使用ARM替代原有PC),一个两通道UHF读卡器,两路摄像头,根据需要可增加停车位。 (3) 读卡器通过网线连接到控制器,摄像头直接连接到控制器上,闸口动作由ZigBee节点控制步进电机完成。(4) 读

3、卡操作采用:在每一个闸口上放置一个天线,进行读卡操作。5 5项目十 基于物联网的智能泊车系统设计(5) 拍照操作:在每一个闸口上放置一个摄像头,进行操作。 (6) 停车位通过ZigBee连接光敏传感器实现。(7) 建立进站刷卡界面。(8) 建立出站计费界面。6 6项目十 基于物联网的智能泊车系统设计10.2 任务二: 系统的结构设计1. 系统框图系统框图如图10.1所示。7 7项目十 基于物联网的智能泊车系统设计图10.1 系统框图8 8项目十 基于物联网的智能泊车系统设计2. 基本架构及各模块功能1) 硬件架构系统的硬件架构如图10.2所示。9 9项目十 基于物联网的智能泊车系统设计图10.

4、2 系统的硬件架构1010项目十 基于物联网的智能泊车系统设计2) 软件架构系统的软件架构如图10.3所示。本系统软件主要包括上位机、下位机、Android手机客户端三部分。1111项目十 基于物联网的智能泊车系统设计图10.3 系统的软件架构1212项目十 基于物联网的智能泊车系统设计3) 基本流程图基本流程图如图10.4所示。1313项目十 基于物联网的智能泊车系统设计图10.4 基本流程图1414项目十 基于物联网的智能泊车系统设计 10.3 任务三: 系统的模块接口设计1. ZigBee控制基本结构体如下:(1) 表示ZigBee网络基本信息结构体。(2) 表示ZigBee传感器节点的

5、基本信息结构体。(3) 表示ZigBee节点的基本信息结构体。(4) ZigBee节点结构。1515项目十 基于物联网的智能泊车系统设计(5) 基本函数如下: 获取网络的基本信息函数:NwkDesp *GetZigBeeNwkDesp(void);功能:获取当前ZigBee网络的基本信息。参数:无返回值:NwkDesp指针。1616项目十 基于物联网的智能泊车系统设计 控制闸口的开关状态函数:int SetSensorStatus(unsigned int nwkaddr, unsigned int status);功能:设置ZigBee网络中传感器状态(只针对设置型传感器)。参数:nwkad

6、dr传感器节点网络地址,status状态,0设置IO低电平,1设置IO高电平。返回值:整形,0成功,非0失败。1717项目十 基于物联网的智能泊车系统设计 获取节点传感器状态函数:SensorDesp *GetSensorStatus(unsigned int nwkaddr);功能:获取当前ZigBee网络节点的传感器状态。参数:ZigBee网络节点网络地址。返回值:SensorDesp指针。1818项目十 基于物联网的智能泊车系统设计 获取网络节点设备信息函数:DeviceInfo* GetZigBeeDevInfo(unsigned int nwkaddr);功能:获取当前ZigBee网

7、络节点的设备信息。参数:ZigBee网络节点网络地址。返回值:DeviceInfo指针。1919项目十 基于物联网的智能泊车系统设计 获取当前ZigBee网络节点的拓扑结构数据链表函数:NodeInfo *GetZigBeeNwkTopo(void);功能:获取当前ZigBee网络节点的拓扑结构数据链表。参数:无。返回值:DeviceInfo指针,即保存ZigBee节点信息的链表头。2020项目十 基于物联网的智能泊车系统设计 ZigBee串口监听线程开启处理函数:int ComPthreadMonitorStart(void);功能:ZigBee串口监听线程开启处理函数。负责创建串口监听线程

8、,并处理相应串口数据包。应用程序需要调用该函数方可以更新监测ZigBee网络信息及节点状态。参数:无。返回值:整形,0成功,非0失败。2121项目十 基于物联网的智能泊车系统设计 ZigBee串口监听线程关闭函数:int ComPthreadMonitorExit(void);功能:ZigBee串口监听线程关闭函数。参数:无。返回值:整形,0成功,非0失败。说明:主要用到了红笔标注的函数。2222项目十 基于物联网的智能泊车系统设计2. UHF( Ultra High Frequency特高频)读卡2323项目十 基于物联网的智能泊车系统设计3. 拍照接口2424项目十 基于物联网的智能泊车系

9、统设计4. GPRS发送短信(1) tty_init(); :串口初始化。(2) gprs_init(); :GPRS初始化。(3) void gprs_msg(char *number, char* pText): :发送短信。参数:number为电话号码,pText为短信内容。返回值:无。(4) tty_end(); :关闭串口。2525项目十 基于物联网的智能泊车系统设计5. 下位机ZigBee控制舵机接口函数如下:int SetSensorStatus(unsigned int nwkaddr, unsigned int status); 功能:设置ZigBee网络中传感器状态(只针对

10、设置型传感器)。参数:nwkaddr传感器节点网络地址,status状态,0设置IO低电平,1设置IO高电平。返回值:整形,0成功,非0失败。该函数可根据节点的网络地址,控制闸口的开关状态。2626项目十 基于物联网的智能泊车系统设计10.4 任务四: 系统的界面设计1. 控制器界面显示主要功能:(1) 出入口RFID卡号,对应的车辆参数。(2) 车辆登记编号。(3) 车型显示。(4) 车辆照片。(5) 卡片金额相关信息。(6) 显示出入口拍摄的照片。2727项目十 基于物联网的智能泊车系统设计(7) 出入口闸门状态。(8) 手动开关闸操作。(9) 闸口节点状态显示。(10) 读卡器通信状态显

11、示。(11) 停车位节点在线状态显示。(12) 停车位占用状态显示。(13) 停车位预约状态显示。控制器的基本界面如图10.5所示。2828项目十 基于物联网的智能泊车系统设计图10.5 基本界面2929项目十 基于物联网的智能泊车系统设计2. Android客户端界面(1) 停车位节点在线状态显示。(2) 停车位占用状态显示。(3) 停车位预约状态显示。(4) 停车位预约功能。(5) 车辆进入停车场动画演示。Android客户端的基本界面如图10.6所示。3030项目十 基于物联网的智能泊车系统设计图10.6 Android客户端的基本界面3131项目十 基于物联网的智能泊车系统设计 10.

12、5 任务五: 系统的软件设计1. ZigBee电机控制程序1) 步进电机工作原理简介步进电机是将输入的电脉冲信号转换成角位移的特殊同步电机,它的特点是每输入一个电脉冲,电动机转子便转动一步,转一步的角度称为步距角,步距角愈小,表明电机控制的精度越高。由于转子的角位移与输入的电脉冲成正比,因此电动机转子转动的速度便与电脉冲频率成正比。 3232项目十 基于物联网的智能泊车系统设计 图10.7 42BYGH1.8步进电机 3333项目十 基于物联网的智能泊车系统设计 图10.8 绕线图 3434项目十 基于物联网的智能泊车系统设计2) 步进电机42BYGH1.8说明步进电机相序表如表10.1所示。

13、3535项目十 基于物联网的智能泊车系统设计3636项目十 基于物联网的智能泊车系统设计3) 步进电机42BYGH1.8驱动电路步进电机42BYGH1.8驱动电路如图10.9和图10.10所示。3737项目十 基于物联网的智能泊车系统设计图10.9 ZigBee Core 3838项目十 基于物联网的智能泊车系统设计图10.10 步进电机驱动电路 3939项目十 基于物联网的智能泊车系统设计4) 程序代码详见本书提供的资源。4040项目十 基于物联网的智能泊车系统设计2. 基于Z-Stack的串口控制程序1) 实现原理使用IAR开发环境设计程序,在ZStack-1.4.2-1.1.0协议栈源码

14、例程SampleApp工程基础上,实现无线组网及通信。即协调器自动组网,路由或终端节点自动入网,并设计上位机串口数据协议,检测和控制ZigBee网络中节点与相关传感器状态。2) ZigBee (CC2430)模块LED硬件接口ZigBee (CC2430)模块LED硬件接口如图10.11所示。4141项目十 基于物联网的智能泊车系统设计图10.11 LED硬件接口4242项目十 基于物联网的智能泊车系统设计ZigBee(CC2430)模块硬件上设计有2个LED灯,用来编程调试使用。分别连接CC2430的P1_0、P1_1两个IO引脚。从原理图上可以看出,2个LED灯共阳极,当P1_0、P1_1

15、引脚为低电平时候,LED灯点亮。系统的框图如图10.12所示。4343项目十 基于物联网的智能泊车系统设计图10.12 系统框图4444项目十 基于物联网的智能泊车系统设计3) SampleApp简介TI的ZStack-1.4.2-1.1.0协议栈中自带了一些演示系统DEMO,存放在默认安装目录的C:Texas InstrumentsZStack-1.4.2-1.1.0ProjectszstackSamples目录下,本次系统将利用该目录下的SampleApp系统工程来实现ZigBee模块的自动组网和通信。4545项目十 基于物联网的智能泊车系统设计4) MT层串口通信协议栈中将串口通信部分放

16、到了MT层的MT任务中去处理了,因此我们在使用串口通信的时候要在编译工程(通常是协调器工程)时候在编译选项中加入MT层相关任务的支持:MT_TASK、ZTOOL_P1或ZAPP_P1。串口解析上位机串口数据流程如图10.13所示。4646项目十 基于物联网的智能泊车系统设计图10.13 MT层任务处理流程4747项目十 基于物联网的智能泊车系统设计由于上述处理过程是针对特定输出格式的串口数据,在一般串口终端中无法解析。TI默认使用的Z-Tool工具上位机串口数据格式如图10.14所示。4848项目十 基于物联网的智能泊车系统设计图10.14 MT层串口数据格式4949项目十 基于物联网的智能泊

17、车系统设计5) 应用层任务本系统中应用层任务为SampleApp任务,该任务负责ZigBee网络的创建和加入控制流程,主要是根据ZigBee闪存中网络信息来启动系统。5050项目十 基于物联网的智能泊车系统设计图10.15 工程模板的选择5151项目十 基于物联网的智能泊车系统设计6) 分别下载上面编译好的程序到ZigBee模块图10.15所示的DemoEB工程编译后选择debug即可下载至模块中,进入debug模式后点击run运行工程,方可运行软件。5252项目十 基于物联网的智能泊车系统设计7) 启动设备测试首先启动协调器模块,建立网络成功后LED2点亮,再启动路由节点ZigBee模块,入

18、网成功后该模块的LED2也点亮。网络组建成功后,通过将PC机串口线接到ZigBee协调器调模块对应的串口上,打开串口终端软件,设置波特率为115200,即可在串口终端中输入程序中指定的串口命令控制协调器模块。协调器通过串口接收到命令后,无线控制远程节点状态。5353项目十 基于物联网的智能泊车系统设计3. RFID读卡程序RFID是Radio Frequency Identification的缩写,即射频识别,俗称电子标签。RFID射频识别是一种非接触式的自动识别技术,它通过射频信号自动识别目标对象并获取相关数据,识别工作无需人工干预,可工作于各种恶劣环境。RFID 技术可识别高速运动物体并可

19、同时识别多个标签,操作快捷方便。 5454项目十 基于物联网的智能泊车系统设计1) UHF读写器模块本系统采用的读写器是结构完整、功能齐全的915M的RFID读写器,它含有射频(RF)模块、Wi-Fi模块、数字信号处理、输入/输出端口和串行通信接口,具备读写器同步功能。是多协议UHF读写器,支持ISO 180006B和EPC协议国际标准,能读写UCODE、TI、Alian等标签,本系统采用的是EPC协议国际标准标签。可以通过更换外接不同增益的天线(最多2个),扩展读卡有效范围,降低用户硬件成本。5555项目十 基于物联网的智能泊车系统设计图10.16 通信协议结构图5656项目十 基于物联网的

20、智能泊车系统设计(1) 通信协议物理层。物理层完成信号的比特数据发送与接收,物理层应符合RS-232规范要求。具体设计要求如下:1位起始位、8位数据位、1位停止位、无奇偶校验。5757项目十 基于物联网的智能泊车系统设计(2) 通信协议数据链路层。数据链路层具体规定命令和响应帧的类型和数据格式。帧类型分为命令帧、响应帧、读写器命令完成响应帧。命令帧格式定义如下: 5858项目十 基于物联网的智能泊车系统设计为了说明这一算法,我们以读写器单卡识别EPC 标签的命令为例,读写器识别单标签命令帧如下:5959项目十 基于物联网的智能泊车系统设计响应帧格式定义如下:6060项目十 基于物联网的智能泊车

21、系统设计读写器命令完成响应帧格式定义如下:6161项目十 基于物联网的智能泊车系统设计2) 主要协议UHF读写器支持多种协议,主要包括:获取及设置读卡器参数、升级类协议、ID匹配类协议、天线设置类协议、功率设置协议、读卡及写卡协议等。本IOT-ETC系统,主要用到多通道读卡协议及读取ID数据命令帧协议,Multiple Tag Identify(Extension)协议如下:6262项目十 基于物联网的智能泊车系统设计对于ISO 180006B标签,响应帧格式如下表所示:6363项目十 基于物联网的智能泊车系统设计GET ID BUF协议如下:6464项目十 基于物联网的智能泊车系统设计读写器

22、接收此命令帧后,返回命令响应帧,命令响应帧格式如下表所示:6565项目十 基于物联网的智能泊车系统设计3) 关键代码分析(1) 建立连接。函数接口:int GetConnect(char *ipaddr, int port)。功能:建立到到读卡器服务器的连接。参数:ipaddr为服务器地址,port为端口号(默认为4001)。返回值:成功返回int型soketfd,连接错误返回-1。6666项目十 基于物联网的智能泊车系统设计(2) 双通道读卡函数。函数接口:int MultipleTagIdentify(int fd, unsigned int TagType, unsigned char

23、*pInIdBuff, unsigned char *pOutIdBuff);功能:获得出入口读到的卡号。6767项目十 基于物联网的智能泊车系统设计参数:fd为连接Socket,TagType:1为ISO 18000标签,4为获取gen标签的EPC值,对6在此版本中不支持;返回正确时,*pInIdBuff为指向入口(通道1)的卡号(12*sizeof(unsigned char)个),*pOutIdBuff为指向出口(通道2)的卡号(12*sizeof(unsigned char)个),未读到卡返回NULL。返回值:正常为0,网络连接阻塞时返回-1,系统出现错误时返回-2。6868项目十 基

24、于物联网的智能泊车系统设计4. 智能泊车系统GUI综合程序1) 实现原理物联网IPA系统控制器部分界面采用Qt跨平台的GUI设计方法,对系统中的RFID读卡模块、ZigBee无线传感器模块、摄像头模块等进行本地的界面显示和控制。2) 系统总体流程图系统总体流程图如图10.17所示。6969项目十 基于物联网的智能泊车系统设计图10.17 系统流程图7070项目十 基于物联网的智能泊车系统设计3) RFID线程RFID线程负责读卡与整个系统联动控制,流程图如图10.18所示。7171项目十 基于物联网的智能泊车系统设计图10.18 RFID流程图7272项目十 基于物联网的智能泊车系统设计4)

25、ZigBee线程ZigBee QT线程负责使用串口相关命令获取ZigBee设备链表节点信息,提供给其他线程或结盟线程服务。7373项目十 基于物联网的智能泊车系统设计5) ZigBee设备链表维护线程ZigBee网络中节点维护是使用链表的方式,通过串口指定的命令格式来获取协调器设备传递的网络节点信息,关于ZigBee支持的串口命令的具体见ZigBee部分相关系统文档。7474项目十 基于物联网的智能泊车系统设计6) SQLite数据库系统中分别使用2个SQLite数据库对RFID读卡的信息进行逻辑判断和信息处理,其中存储了ID卡的相关信息如 ID号、状态、时间、车辆及车主信息等。另外一个数据库

26、用来保存停车位信息及预约状态。7575项目十 基于物联网的智能泊车系统设计5. Android 服务器本系统完成一个简单的Server服务器。Server实现的功能,从数据库读取停车位的状态信息,为客户端提空车位查询、预约车位、查找车位、短信确认等功能服务。7676项目十 基于物联网的智能泊车系统设计1) 多线程实现Server服务器服务器采用C/S方式,能够解决多客户端的问题,主要采用多线程、多进程来实现。由进程占用资源较大,所以采用多线程实现客户端。服务器为每一个客户端连接启动一个线程,进行通信然后断开连接,销毁线程。 7777项目十 基于物联网的智能泊车系统设计2) SQLite3数据库

27、的使用SQLite是一种嵌入式数据库。它实现了对外部程序库以及操作系统的最低要求,这使得它非常适合应用于嵌入式设备,同时,可以应用于一些稳定的,很少修改配置的应用程序中。SQLite是使用ANSI-C开发的,可以被任何的标准C编译器来进行编译。SQLite能够运行在Windows/Linux/Unix等各种操作系统,SQLite占用资源更少,处理速度更快,使行SQLite在嵌入式设备的应用较为常见。7878项目十 基于物联网的智能泊车系统设计3) 数据通信协议或数据格式数据通信协议指基于TCP网骆协议而自定义的一种协议。7979项目十 基于物联网的智能泊车系统设计4) 流程图8080项目十 基

28、于物联网的智能泊车系统设计图10.19 主线程流程图8181项目十 基于物联网的智能泊车系统设计 图10.20 数据库处理线程流程图 8282项目十 基于物联网的智能泊车系统设计图10.21 网络通信线程流程图 8383项目十 基于物联网的智能泊车系统设计6. Android客户端本例介绍Android SDK开发的步骤,智能泊车客户端软件的实现原理,并对Android View布局,intent对象的使用及调用另一个Activity简单介绍,对各种控件的使用方法例如:VideoView,TextView、EditText、AlertDialog、ProgressDialog等,以及文件操作,

29、网络通信作简要说明。 8484项目十 基于物联网的智能泊车系统设计1) Activtiy组件调用Activity组件Intent是一个将要执行动作的的抽象描述。由Intent来协助完成各组件之间的调用与通信。在Android平台中,Activity组件可以通过“startActivity”方法来调用其他组件,该方法仅有一个参数,就是意向对象,要传递的数据存放在意向对象的附加容器中。8585项目十 基于物联网的智能泊车系统设计2) 开场动画 (VideoView)在运行智能泊车客户端之前,会显示一段生动活波的开场动画,这里是通过VideoView控件实现,动画是以.3gp格式存放在以下资源空间:/res/raw/start.3gp。8686项目十 基于物联网的智能泊车系统设计3) 流程图8787项目十 基于物联网的智能泊车系统设计图10.22 StartActivity流程图8888项目十 基于物联网的智能泊车系统设计图10.23 MenuActivity流程图8989项目十 基于物联网的智能泊车系统设计图10.24 StatusActivity流程图

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 其他杂项

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁