基于coretex-m3的智能家居远程监控系统智能家居毕业论文(编辑修改稿)内容摘要:
使用 EXPLM3S6952 开发板和西门子公司的 TC35i 模块作为中文短消息发送与接收的硬件接口。 TC35i 模块集成了完整的射频电路和 GSM 的基带处理器,提供了功能完备的系统接口。 基于 CoretexM3 的智能家居远程监控系统(论文) 大连理工大学城市学院 12 TC35i 模块配备标准 RS232 串行接口,用户可以通过串口使用 AT指令完成对短信发送与接收的控制。 TC35i 模块支持外部 SIM 卡,模块自动监测和适应 SIM 卡类型。 用户需配备一个可用的 SIM 卡安装在 GPRS 模块上,该 SIM 卡与普通手机用的 SIM 卡相同,所接受的网络服务和短消息计费标准与普通手机相同。 软件总体结构 本系统总体采用多任务编程技术实现,软件的总体结构如图 42 所示。 基于 CoretexM3 的智能家居远程监控系统(论文) 大连理工大学城市学院 13 图 42软件总体结构图 开热水器 主程序 关热水器 发送中文短信报警 开空调 关空调 看室温 关取暖阀 接收中文短信 远程控制任务 烟雾报警 有人进入 家电状态 读取家电状态 发送中文短信报警 开取暖阀 读取室温 发送中文短信 发送中文短信 获取控制命令 安 防报警任务 基于 CoretexM3 的智能家居远程监控系统(论文) 大连理工大学城市学院 14 主程序流程图 远程控制任务流程图 实现远程家电控制和数据采集功能的远程控制任务流程图如图44所示。 创建远程控制任务 开始 目标板初始化 CPU初始化 串口初始化 创建报警任务 启动多任务 结束 图 43主程序流程图 基于 CoretexM3 的智能家居远程监控系统(论文) 大连理工大学城市学院 15 N Y 命令解析 创建远程控制任务 读串口数据 开 关 空调 开热水器 关热水器 开取暖阀 关 空调 关取暖阀 家电状态 启动家居报警 复位家居报警 复位火警 发送中文短信 采集家电状态 发送中文短信 采集室温 看室温 图 44 远程控制任务流程图 基于 CoretexM3 的智能家居远程监控系统(论文) 大连理工大学城市学院 16 报警任务流程图 采集室温流程图 本程序模块是根据 DS18B20 的通讯协议来编写的,主机控制 DS18B20完成温度转换必须经过三个步骤:每次读写之前都要对 DS18B20 进行复位,复位成功后发送一条 ROM 指令,最后发送 RAM 指令,这样才能对DS18B20 进行预定的操作,如图 46所示。 无报警 有人进入 烟雾报警 Y N Y N 中文短信报警 中文短信报警 图 45报警任务流程图 火警关闭 盗警关闭 分析报警 信号 读取报警信号 基于 CoretexM3 的智能家居远程监控系统(论文) 大连理工大学城市学院 17 SMS 是由 Esti 所制定的一个规范( GSM 和 GSM )。 有两种方式来发送和接收 SMS 消息:文本模式或者 PDU( protocol description unit)模式。 本系统采用的 SIM100E 模块支持 SMS 的两种模式 文本模式和 PDU 模式。 文本模式的优点是编程实现简单,但是只开始 DS1820 复位 发送读序列号命令字 读取序列号 发送温度转换命令字 DS1820 复位 读取并计算温度 结束 图 46 DS1820 温度采集流程图 基于 CoretexM3 的智能家居远程监控系统(论文) 大连理工大学城市学院 18 能发送普通的 ASCII 字符,而要发送图片、铃声、其它编码的字符( 如中文)就必须采用 PDU 模式,相对文本模式来说编程实现也相对复杂一些。 PDU 编码规则 : 目前,发送短消息常用 Text 和 PDU(Protocol Data Unit,协议数据单元 )模式。 使用 Text 模式收发短信代码简单,实现起来十分容易,但最大的缺点是不能收发中文短信;而 PDU 模式不仅支持中文短信,也能发送英文短信。 PDU 模式收发短信可以使用 3 种编码: 7bit、 8bit 和UCS2 编码。 7bit 编码用于发送普通的 ASCII 字符, 8bit 编码通常用于发送数据消息, UCS2 编码用于发送 Unicode 字符。 一般的 PDU 编码由A B C D E F G H I J K L M 十三项组成。 A:短信息中心地址长度, 2位十六进制数 (1字节 )。 B:短信息中心号码类型, 2位十六进制数。 C:短信息中心号码, B+C 的长度将由 A中的数据决定。 D:文件头字节, 2位十六进制数。 E:信息类型, 2位十六进制数。 F:被叫号码长度, 2 位十六进制数。 G:被叫号码类型, 2 位十六进制数,取值同 B。 H:被叫号码,长度由 F中的数据决定。 I:协议标识, 2位十六进制数。 J:数据编码方案, 2 位十六进制数。 K:有效期, 2 位十六进制 数。 L:用户数据长度, 2 位十六进制数。 M:用户数据,其长度由 L 中的数据决定。 J中设定采用 UCS2 编码,这里是中英文的 Unicode 字符 (包括数字 )。 在 RedHat 中默认采用 GB2312 作为中文编码字符集,对于中英文混合的文本也是如此,要在此 Linux 系统中实现中文短信,需要将系统默认的 GB2312 字符编码转换成 Unicode 编码。 GB2312 编码是一种多字节编码方式,对于中文,用 2个字节表示,对于英文,用 1 个字节表示,就是英文的 ascii 码。 Unicode 编码是双字节编码方式,对所有 字符,都采用 2 个字节编码 ,包括数字,汉字和英文字符。 其中数字的编码有一定的规律可循,如:数字 2的 Unicode 编码是 0032, 5的 Unicode编码是 0035, 0的 Unicode 编码则是 0030,以此类推。 而汉字的 Unicode编码则只有通过查表获得。 考虑到本系统采用的中文指令集采用的汉字个数有限,所以实现起来比较简单。 采用 PDU 方法实现中文短信举例 : 基于 CoretexM3 的智能家居远程监控系统(论文) 大连理工大学城市学院 19 +cmgf=0 //设置采用 PDU 模式 +cmgs=LENGTH //设置要发送信息的长度 (LENGTH) 包: 0891 683108401105F0 11000B81 3112243015F2 0008A714 59278FDE74065DE559275B6657CE5E025B669662 包解码: 对照规范,具体分析: 分段 含义说明 08 地址信息的长度供 8个8位字节 (包括 91) 91 SMSC 地址格式(TON/NPI) 用国际格式号码 (在前面加‘ +’ ) 68 31 08 20 05 05 F0 SMSC 地址 8613800250500,补‘ F’凑成偶数个 11 代 表 PDU 格式 00 代表是第几条短消息 0B 固定格式 81 31 12 24 30 15 F2 目标地址 (TPDA) 3112243015F2,补‘ F’凑成偶数个 00 固定格式不动,代表短消息 08 代表 8bit Unicode 编码 A7 14 用户信息长度,实际长度 6 个字节 59278FDE74065DE559275B6657CE5E025B669662 用户信息:大连理工大学城市学院 14 后跟的就是所需发送的消息部分,全部采用 Unicode 的编码。 需要注意的是, PDU串的用户信息长度 (TPUDL),在各种编码方式下意义有所不同。 7bit 编码时,指原始短消息的字符个数,而不是编码基于 CoretexM3 的智能家居远程监控系统(论文) 大连理工大学城市学院 20 后的字节数。 8bit 编码时,就是字节数。 UCS2 编码时,也是字节数,等于原始短消息的字符数的两倍。 如果用户信息 (TPUD)中存在一个头(基本参数的 TPUDHI 为 1),在所有编码方式下,用户信息长度 (TPUDL)都等于头长度与编码后字节数之和。 如果采用 GSM 所建议的压缩算法 (TPDCS 的高 3位为 001),则该长度也是压缩编码后字节数或头长度与压缩编码后字节数之和。 这里,将 一个英文字母、一个汉字和一个数据字节都视为一个字符。 每个字符都用 4位 16 进制数表示。 注意问题: 在中文短信调试过程中,出现最多的问题是“ +ERROR 304”,主要原因是长度没有控制好,造成短信发送失败。 解决的办法除了细心以外,还必须弄清楚短信 PDU 串中各部分的具体含义和长度,这样就可以在一定程度上减少错误发生的概率。 另外,根据调试经验,如果不加时间戳信息段,短消息也可以发送成功。 基于 CoretexM3 的智能家居远程监控系统(论文) 大连理工大学城市学院 21 第五章 功能测试与结果分析 系统开发完成之后是否能完成最初的设计要求,需要 在各种可能的情况下对系统进行测试。 :选用了 NOKIA1600,PHILIPS535 和PHILIPS630 三种不同型号的手机,在不同时段,不同地点向系统发送控制指令,部分测试数据如表 51所示。 表 51 远程控制功能的测试结果 测试时间 发送短信内容 家电状态 响应时间 测试地点 网络 测试结果 第 1次 5/28 8: 40 看室温 室温 26 度 23 秒 大连 联通 移动 成功 第 2次 5/28 8: 42 开空调 空调开启 8 秒 大连 联通 移动 成功 第 3次 5/28 8: 45 关空调 空调关闭 8 秒 大连 联通 移动 成功 第 4次 528 8: 46 开热水器 热水器开启 8 秒 大连 联通 移动 成功 第 5次 5/28 8: 48 关热水器 热水器关闭 8 秒 大连 联通 移动 成功 第 6次 5/28 8: 50 开取暖阀 取暖阀开启 8 秒 大连 联通 移动 成功 第 7次 5/28 8: 55 关取暖阀 取暖阀关闭 8 秒 大连 成功 第 8次 5/28 9: 00 家电状态 手机显示:空调已关,热水器已开,取暖阀已开 23 秒 大连 联通 移动 成功 第 9次 5/28 9: 06 看室温 室温 26 度 19 秒 移动 移动 第 10次 5/28 9: 10 开空调 空调开启 7 秒 大连 移动 移动 成功 第 11次 5/28 9: 12 关空调 空调关闭 7 秒 大连 移动 移动 成功 第 12次 5/28 9: 16 开热水器 热水器开启 7 秒 大连 移动 移动 成功 第 13次 5/28 9: 17 关热水器 热水器关闭 7 秒 大连 移动 移动 成功 第 14次 5/28 9: 18 开取暖阀 取暖阀开启 7 秒 大连 移动 移动 第 15次 5/28 9: 19 关取暖阀 取暖阀关闭 7 秒 大连 移动 移动 第 16次 5/28 9: 20 家电状态 手机显示:空调已开,热水器已18 秒 大连 移动 移动 成功 基于 CoretexM3 的智能家居远程监。基于coretex-m3的智能家居远程监控系统智能家居毕业论文(编辑修改稿)
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。