本书循序渐进地介绍了典型物联网项目开发的整个过程,理论与实践相结合,侧重于典型物联网系统各个阶段的开发过程,是作者多年的物联网专业一线教学经验的总结和积累。
本书从物联网的基础知识讲起,让读者了解物联网的基本概念、相关技术、基本的开发方法; 然后以一个典型的物联网系统为例,讲述系统的架构、需求、设计到实现,让读者能够清晰地了解物联网系统开发的整个流程。
本书可作为高等院校应用型本科专业物联网系统开发、物联网工程实训项目开发等课程的教材,也可作为一般工程技术人员开发物联网相关项目的参考用书。
(1) 以一个典型的物联网系统作为案例贯穿
(2) 理论与实践相结合
(3) 大量的案例代码供读者参考学习
(4) 基于主流的软硬件平台
(5) 600分钟视频讲解
前言
近年来,物联网发展迅猛,已经成为中国软件产业新的市场增长点。全球物联网支出呈现积极增长态势,各行业对物联网的应用不断加深。市场对物联网人才的需求也随之急速增长,而相关人才的培养无疑在高校占很大的比重,如何循序渐进地引导学生学习物联网系统的开发和应用,作为体现教学内容和教学方式的教材载体,其重要性不言而喻。
本书从物联网的基础知识讲起,让读者了解物联网的基本概念、相关技术、基本的开发方法; 再以一个典型的物联网系统为例,讲述系统的架构、需求、设计到实现,让读者能够清晰地了解物联网系统开发的整个流程。
本书第1~4章介绍物联网相关的基础知识。
第1章介绍物联网的基本概念、组成、特点、应用及发展前景,让读者能够了解物联网的起源及发展,对物联网有个基本的认识。
第2章介绍物联网相关技术: RFID技术、传感器技术、ZigBee短距离无线通信技术及ARM微处理器,可使读者掌握物联网系统中常用技术的特点和应用。
第3章介绍基于Linux物联网网关系统的构建,主要包括基于硬件平台的介绍、交叉编译环境的搭建、Linux下GCC编辑器的使用、Make工具的使用、Linux下多线程编程、串口编程、嵌入式数据库SQLite的应用。
第4章介绍基于Android的物联网网关的接口应用,包括宿主机Android环境的搭建、ADB调试工具的使用、平台板载LED的应用。
本书第5~8章以一个典型的物联网系统智能教室管理系统作为案例贯穿,从系统的需求、设计到实现,为读者清晰展示物联网系统开发的全过程。
第5章对智能教室管理系统进行体系结构的分析、需求功能的确定,完成了数据库的设计和各个子系统之间通信接口的设计。
第6章介绍智能教室管理系统的Web服务器子系统的环境配置、数据库的搭建过程及Web服务器提供给客户端的接口实现。
第7章介绍智能教室管理系统的网关子系统的主要功能的实现,如基于Android的串口的操作、多线程的应用、Volley框架的使用、ZigBee数据的获取及解析等。
第8章介绍智能教室管理系统的移动终端子系统的主要功能的实现,如移动终端对Web服务器数据库的访问、远程控制执行设备、利用高德地图API实现定位及利用Echarts实现对传感器信息的图表显示等。
本书的特点有:
以一个典型的物联网系统作为案例贯穿;
理论与实践相结合;
大量的案例代码供读者参考学习;
基于主流的软硬件平台。
本书由大连科技学院教师孙建梅编写第3、5、6、7章,大连东软信息学院教师刘丹编写第1、2章,大连科技学院教师樊晓勇编写第4章,大连交通大学教师周大勇编写第8章,全书由孙建梅统稿。
本书定位于作为高等院校应用型本科专业的物联网系统开发、物联网工程实训项目开发等课程的教材,也可作为一般工程技术人员开发物联网相关项目的参考书。
由于物联网发展迅速,涉及的技术领域很多,加之作者能力、水平有限,书中难免存在疏漏和不妥之处,恳请广大读者批评指正。
本书在编写过程中得到了清华大学出版社的大力支持,在此表示诚挚的谢意。
编者
2018年5月
目录
CONTENTS
目录
第1章物联网系统概述
1.1物联网的概念
1.2物联网的发展概况
1.3物联网的体系架构
1.3.1感知层
1.3.2网络层
1.3.3应用层
1.4物联网的主要特点
1.5物联网的应用
1.6物联网的发展前景
习题1
第2章物联网相关技术
2.1RFID技术
2.1.1RFID概述
2.1.2RFID系统构成
2.1.3RFID基本工作原理
2.1.4RFID技术分类
2.1.5RFID技术标准
2.1.6RFID技术在物联网中的应用
2.2传感器技术
2.2.1传感器概述
2.2.2传感器组成
2.2.3传感器分类
2.2.4典型传感器原理简介
2.2.5传感器的选用原则
2.2.6多传感器信息融合技术
2.2.7传感器在物联网中的应用
2.3短距离无线通信技术
2.3.1典型短距离无线通信网络技术
2.3.2ZigBee标准概述
2.3.3ZigBee技术的特点
2.3.4ZigBee协议框架
2.3.5ZigBee在物联网中的应用
2.4ARM微处理器
2.4.1ARM技术简介
2.4.2ARM微处理器的应用领域及特点
2.4.3ARM微处理器系列
2.4.4ARM微处理器结构
2.4.5ARM微处理器的应用选型
习题2
第3章基于Linux物联网网关系统构建及开发
3.1网关平台介绍
3.1.1平台硬件资源
3.1.2平台软件资源
3.2网关交叉编译环境
3.2.1交叉编译的概念
3.2.2交叉编译环境的搭建
3.3GCC编译器
3.4Make工具
3.4.1Makefile文件基本结构
3.4.2Makefile实例
3.5Linux多线程编程
3.5.1多线程概述
3.5.2Linux多线程API
3.5.3Linux多线程例程
3.6Linux串口编程
3.6.1串口简介
3.6.2Linux串口操作流程
3.6.3Linux串口操作实例
3.7嵌入式数据库
3.7.1嵌入式数据库的特点
3.7.2SQLite数据库
3.7.3SQLite3的数据类型
3.7.4SQLite3的API函数
3.7.5SQLite3的应用
习题3
第4章基于Android物联网网关接口应用
4.1开发环境准备
4.1.1JDK安装
4.1.2Android Studio软件环境配置
4.1.3实验平台驱动安装
4.2基于Android ADB调试
4.2.1ADB环境配置及测试
4.2.2ADB安装软件
4.2.3ADB传输文件
4.3板载LED的应用
习题4
第5章典型物联网系统项目实施方案
5.1智能教室管理系统体系结构
5.2信息感知端
5.3物联网网关
5.4Web服务器
5.5移动终端
5.6数据库设计
5.7通信接口设计
习题5
第6章Web服务器子系统
6.1Web服务器软件环境配置
6.1.1Tomcat安装配置
6.1.2Eclipse安装配置
6.2数据库搭建
6.2.1MySQL安装配置
6.2.2Navicat安装配置
6.2.3Navicat连接MySQL
6.2.4数据库表的建立
6.3Web服务器连接数据库
6.4Web服务器接口
6.4.1登录验证接口
6.4.2网关上传数据接口
6.4.3查询数据接口
6.4.4设置执行器状态接口
6.4.5查询执行器状态接口
习题6
第7章物联网网关子系统
7.1串口操作接口
7.2线程
7.2.1继承Thread类创建多线程
7.2.2实现Runnable接口创建多线程
7.2.3实现Runnable接口使线程间的资源共享
7.3Volley框架
7.3.1Volley的特点
7.3.2Volley中的RequestQueue和Request
7.3.3Volley的基本使用
7.4登录功能
7.4.1用户名密码验证
7.4.2RFID卡号验证
7.5ZigBee数据获取及处理
7.5.1ZigBee数据的解析
7.5.2执行器控制
7.6定位功能
7.6.1GPS北斗双模技术
7.6.2定位实例
7.7GPRS模块
习题7
第8章移动终端子系统
8.1访问Web数据库数据
8.2远程控制
8.3利用高德地图API定位
8.4数据图表显示
习题8
参考文献