温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
联网
Python
开发
实战
书书书物联网 开发实战安翔编著未经许可,不得以任何方式复制或抄袭本书之部分或全部内容。版权所有,侵权必究。图书在版编目()数据物联网 开发实战 安翔编著 北京:电子工业出版社,物安软件工具 程序设计 中国版本图书馆 数据核字()第 号责任编辑:富军印刷:装订:出版发行:电子工业出版社北京市海淀区万寿路 信箱邮编 开本:印张:字数:千字版次:年 月第 版印次:年 月第 次印刷印数:册定价:元凡所购买电子工业出版社图书有缺损问题,请向购买书店调换。若书店售缺,请与本社发行部联系,联系及邮购电话:(),。质量投诉请发邮件至 ,盗版侵权举报请发邮件至 。本书咨询联系方式:()。前言本书内容写作安排:第 章 物联网邂逅 本章大致介绍物联网的组成、架构、发展现状及当前市面上典型的物联网应用方案,阐述 这门编程语言的特性和优点,讲述用 语言开发物联网终端设备、网关设备、后台程序的具体方法及优势。第 章 开启 之旅本章从零开始讲解如何使用 语言进行编程,通过大量的实例代码带领 初学者掌握基本的 编程技巧。第 章 数据结构 除了拥有比较通用的字符串、列表等数据结构外,还有元组、字典、集合等特有的数据结构。熟练掌握和运用 的各种数据结构是编写高质量 程序的基础。第 章 高级特性 作为一门高级编程语言,拥有众多自身特有的高级特性,如生成器、迭代器、装饰器等。同时,也可面向对象编程,只有掌握 高级特性的使用方法,才能抓住 编程的精髓。第 章 物联网核心组件本章介绍物联网的核心组成部分及关键技术点,首先介绍 、移动网络、通信、等网络通信方案,以及 、等网络通信协议;其次介绍常用的硬件设备种类,包括处理器、传感器、通信模块等;最后介绍几种市面上常用的物联网云平台,如中国移动的 平台、平台、的 平台。第 章 开发物联网终端终端是物联网连接真实世界的第一层,是物联网产品中数量最为庞大的部件。本章重点讲解目前非常火爆的 ,可用于开发单片机程序,单片机是物联网终端设备的核心,除了介绍 的基本使用外,还会用 构建一个液晶屏显示程序实例。第 章 构建物联网网关网关是连接终端设备和后台的枢纽,同时还负责局域网的组建和维护、本地数据存储、通信规则制定、业务逻辑管理等。在实际项目中,网关通常是一个运行 操作系统并搭载物联网通信模块及其他外设的嵌入式设备。本章将介绍网关上嵌入式 的相关知识及 环境的构建方法,为后续讲解网关 的开发提供基本的软、硬件环境。第 章 网关数据编码与处理网关作为物联网应用中的通信枢纽,在通信过程中有多种格式的数据需要处理。其方式包括转发、编解码、解析等。本章讲述网关如何通过 语言处理各种格式的数据,包括 、二进制数据、格式的数据。第 章 网关多进程与多线程物联网网关往往需要管理大量的终端设备,还要承担通信、运算、操作等多种任务。本章介绍 编程时实现多任务的方式及多进程、多线程、协程、异步 等多种 程序模型,并对它们做出对比,针对 密集型和 密集型不同应用场景下方案的选择,使网关程序性能更优。第 章 网关数据持久化网关是运算中心与通信枢纽,也是局域网数据存储中心。数据持久化是一个系统稳定运行的必要条件。所有数据存放在内存中时,一旦设备发生软、硬件故障,将发生数据丢失。为了避免这种情况,某些关键数据需要固化到磁盘上。本章介绍两种数据固化到磁盘上的两种方式 普通文件和数据库,并介绍 程序对这两种数据存储方式的实际运用。第 章 扩展 在物联网行业的应用与其他行业的应用有很大不同:物联网涉及硬件操作且物联网设备的 处理能力通常非常有限。因此,在某些特殊场景,需要使用 语言编写操作硬件的程序从而提供 调用接口以实现 对硬件的操作,而且在某些效率要求非常高的场景,使用运行效率更高的 语言编写程序,再编译成 扩展库,可提高程序执行效率。本章主要讲解使用 语言扩展 的方法。第 章 网关网络编程网关负责局域网的组建和维护,同时需要与后台通信以完成数据、指令的传输。本章首先介绍使用 进行基本的 编程,接着以实战项目为例,分别讲解基于 模块的文件传输及基于 协议实现的 编程。第 章 物联网后台 开发本章介绍基于 的 框架基础知识,包括视图与 配置、模板、模型、表单、静态文件处理、用户注册与登录,主要介绍 框架 编程的基础知识储物联网 开发实战备,以便能够理解实战项目中的 程序。第 章 物联网 项目实战本章介绍一个基于物联网的智能种植项目,从项目架构、功能及项目所包含的终端设备、网关、后台程序等方面全面展示开发过程。该项目在 提供了完整的源码,读者通过该实战项目能够了解一个完整物联网项目的全貌,掌握物联网 开发的细节。前言目录第 章物联网邂逅 物联网组成架构 物联网发展现状 终端设备 物联网操作系统 通信手段 网络建设 应用协议 物联网云平台 物联网典型应用 共享单车 智能家居 智慧农业 使用 的理由 特性 无处不在 开发速度有时更重要 美丽的相遇 与终端 与网关 与云平台 物联网 全栈开发 第 章开启 之旅 版本的选择 搭建开发环境 安装 在 上安装 安装 工具 虚拟机的网络配置 共享设置 修改 版本 开始编写 程序 交互式解释器 源代码执行 注释 代码块和缩进 继续和分隔 输入和输出 变量和数据类型 变量赋值 常量 数据类型 条件和循环 语句 循环 循环 跳出循环 语句 函数 定义函数 函数调用 函数的参数 内置函数 变量进阶 全局变量与局部变量 关键字 关键字 变量作用域 模块与包 使用模块 包 异常处理 第 章 数据结构 字符串 索引和切片 字符串运算符 字符串格式化 字符编码 列表 访问列表 更改列表 列表操作符 物联网 开发实战 列表常用函数 元组 访问元组 元组操作符 元组内置函数 字典 访问字典 修改字典 字典键的特性 字典函数 集合 忽略重复元素 无序 常用操作 第 章 高级特性 生成器 列表推导式 生成器表达式 生成器函数 迭代器 函数式编程 高阶函数 内置高阶函数 闭包 装饰器 匿名函数 偏函数 面向对象编程 类与对象 访问限制 继承 多重继承 多态 运算符重载 第 章物联网核心组件 网络通信方案 网络 移动网络 目录 网络通信协议 硬件 物联网云平台 第 章 开发物联网终端 简介 项目 特点 源码 开发板 官方开发板 国内开发板 第一个 程序 交互式解释器 按键中断与回调 定时器的使用 串口测试 接口驱动液晶屏 硬件连接 屏驱动 字库说明 主程序 源码编译与固件升级 准备编译环境 源码下载与编译 固件烧写 多线程 物联网 开发实战 线程简介 线程使用 多线程中的锁 安全模式及恢复出厂设置 安全模式 恢复出厂设置 第 章构建物联网网关 网关概述 网关的构成 常用物联网网关 自主构建网关 交叉编译 编译引导程序 内核配置与编译 制作文件系统 分区与下载 系统启动流程简介 移植 树莓派作网关 初次启动树莓派 串口登录树莓派 访问树莓派 升级 版本 必备工具安装 板载 配置 串口通信 第 章网关数据编码与处理 读写 文件 读取 文件 写入 文件 解析 数据格式 编码 解码 操作 简介 解析 创建与修改 二进制数据的读写 目录 编解码 正则表达式 正则表达式简介 模块 贪婪匹配 第 章网关多进程与多线程 多进程 模块 进程同步 进程间通信 多线程 模块 线程同步 线程间通信 多线程和多进程的思考 多核 利用率实验 全局锁 切换的开销 多线程与多进程的选择 异步 协程 协程与多线程对比 第 章网关数据持久化 文件操作 读写文本数据 操作文件和目录 读写压缩文件 内存映射 临时文件与目录 序列化 对象 数据库 简介 命令行操作 创建数据库 创建表 语句 物联网 开发实战 的 编程 第 章 扩展 扩展的原因 连接硬件的纽带 语言扩展 简单的 语言 扩展 传递整型参数 传递字符串参数 第 章网关网络编程 网关网络通信方案 编程 上传文件 下载文件 安装 命令操作 编程 网络通信 模块初始化 数据监听与接收 数据缓存 第 章物联网后台 开发 简介 创建一个网站 安装 创建项目 运行与访问 网站首页 源码文件结构 视图与 配置 模板 模板系统 模板继承 模型 安装 数据库 创建模型 必要的配置 用户注册 目录 账号登录 第 章物联网 项目实战 项目简介 终端设备程序开发 采集空气温湿度 获取环境光强度 雨量检测 水位检测 土壤湿度检测 水泵的控制 入侵检测 灯光控制 电量检测 通信 消息 网关程序开发 终端通信 数据库管理 文件备份 服务器通信 模块的使用 服务器端程序开发 与网关通信 环境数据可视化 滴灌控制 灯光控制 报警显示与设置 设备管理 备份文件管理 物联网 开发实战物联网邂逅 物联网是新一代信息技术的重要组成部分,也是信息化时代的重要发展阶段。随着移动互联网的增速放缓,物联网无疑是当前发展最为火热的科技行业之一。依靠简单的语法、丰富的库、高效的开发效率,覆盖了越来越多的 领域,如科学技术、服务器后端、网络爬虫、自动化运维等,成为目前上升势头非常强劲的编程语言。同时,也在运行 系统的嵌入式设备上得到应用,如开源硬件树莓派上 的使用不仅发挥其强大的库功能,而且通过扩展的 库使得 同样可以访问底层硬件,操作硬件不再是 语言的专利。计算能力弱、存储空间小的单片机领域也有多个可以运行的 项目,包括历史悠久的 及其衍生品 。这其中的 迭代最为迅速。它拥有自己的 虚拟机和解释器,能够在多款单片机上运行。最火的编程语言结合最火的行业,当 邂逅物联网,会发生怎样的故事?碰撞出怎样的火花呢?物联网组成架构自物联网概念诞生以来,各大芯片公司、运营商、互联网巨头均大力投身其中。经过多年的发展,年,随着 、等关键技术的成熟,共享单车等物联网应用爆发,真正的万物互联已经到来,物联网大大改变了人们的生活方式,正在成为下一个科技浪潮。物联网作为一个系统网络,与其他网络一样,也有内部特有的架构。大体上来说,物联网由云、管、端三大部分组成。端,代表终端设备,负责真实世界的感知和控制,是物联网的最底层;管,即管道,是物联网的网络核心,一切数据和指令均靠管道来传输,是物联网的中间层;云,即云平台,负责真实世界数据的存储、展示、分析,是物联网的最上层,是中枢和大脑,也是连接人和物的纽带。图 展示了物联网的组成架构。可以看出,终端是多种软、硬件的集合,是一个带有感知、控制、通信能力的智能硬件。具体包含如下部分:处理器。处理器是物联网终端设备的中枢,所有的外围设备均需要连接到处理器的 上,数据采集、指令下发、数据传输等功能全部由处理器控制。根据应用场景复杂图 物联网组成架构程度的不同,处理器可以是一个 位的单片机,也可以是含有多核的运算能力非常强劲的 。存储器。以单片机为核心的终端设备,存储器并不是必需的,因为单片机本身就是含有运算器、的集合,在 无法满足存储空间需求的情况下才需要外接存储器,而对于需要运行 等操作系统的终端,存储器是必不可少的部分,可用来存放操作系统的镜像、根文件系统、系统配置文件及用户数据。存储器的种类有 、卡、卡等,具体的选择需要根据项目需求而定。传感器。传感器是将真实世界的信息转化为计算机信号的转换器,是计算机能够感知世界的关键。传感器种类繁多,包含红外传感器、温湿度传感器、光照强度传感器、气体传感器、烟雾传感器等。执行器。执行器是控制电路、机械的器件,如继电器、电机等,计算机通过执行器控制真实世界的物体。多媒体。现实世界是丰富多彩的,除了具体的传感器数字之外,还可以是音频、图片、视频等,这些文件的采集就需要多媒体设备的支持,如声卡、摄像头等。通信芯片。物联网终端上传数据、接收控制指令都需要与后台通信,通信芯片是提供该能力的基础。操作系统。终端设备的低功耗、物联网特有的网络通信方式等特性决定了传统的 、移动操作系统无法有效满足物联网的需求,物联网需要针对物联网自身特性而设计的专用操作系统来提升开发和运行效率。人机交互。终端设备有时需要与人直接交互,此时就需要屏幕等显示设备及按键、触摸屏、语音输入等输入设备的支持。管道是物联网的通信基础,网络硬件设备提供真正的通信能