转载自:https://www.cnblogs.com/duibd/p/4893235.html
①需求说明书部分:
一、引言
1、编写目的
该需求说明书是“基于物联网的车内安防系统”开发中的重要文献资料,是软件设计的依据,是工程的起点,应是用户需求的真实反映。是开发人员进行系统总体按需设计内容及具体实施开发工程提供必要的参考资料,并且,在系统开发完成后期为系统的测试、验收提供帮助。其编写过程由项目的重要策划人完成。预期读者是从事“基于物联网的车内安防系统”开发的相关工作人员。
2、背景
随着汽车的普及,人们生活节奏变快,许多人为了追求经济发展,追求速度的快捷,往往对车外安全更加重视,却忽略了车内的潜在威胁,比如酒后驾驶,车内火灾,车内人员窒息,儿童遗留,一氧化碳、甲醛、苯系物、芳香烃类有毒致癌物质污染等。这些安全隐患成为威胁人民正常生活和发展的一大难题。可是,目前市面上车内相关产品诸如专用于行车路线查询的“GPS导航”,车险和罚款违章扣分查询的“车管家”,检测车辆设备和线上服务的“安吉星”,加油站服务区线路查询的“腾讯路宝”等更多倾向于车辆的相关服务性功能产品,汽车安全主要体现在行车记录监控、防盗、胎压检测、保险等,但是,针对车内安全隐患问题解决的产品在市场上一片空白。
3、定义
TCSS:基于物联网的车内安防系统
4、参考资料
1)《物联网软件工程》张凯 清华大学出版社
2)《单片机技术及应用》刘训非,陈希 清华大学出版社
3)《移动应用开发》[美]格斯里 人民邮电出版社
4)《短距离无线通信及组网技术》孙弋 西安电子科技大学出版社
二、任务概述
1、目标
1)对用户需求进行充分分析
2)尽可能利用社会对用户造成的需求矛盾
3)在不违法犯罪的前提下对系统进行初步完整设计
4)依次制作系统层次图、系统E-R图、系统结构图、系统数据流图
2、用户的特点
1)偏好便捷性
2)对车内环境问题不够重视
3)渴望一种对车内安全问题防范的设备
4)普遍依赖智能手机
5)青睐物美价廉和方便装配
3、假定约束
1)车内固有设备与系统不兼容
2)用户操作问题导致故障
3)供电电压不足问题
4)环境不同系统响应延迟
三、需求规定
1、对功能的规定:
基于物联网的车内安防系统的主要功能是:数据监测、定位导航、管理控制、求救帮助这四大基本功能。
1)数据监测:通过部署在车内特定位置的传感器节点主要准对于酒精、一氧化碳、可燃气体、芳香烃类及苯系物、温度和湿度数据的实际检测并回传车内搭载安卓系统上位机,通过安卓应用将车内信息显示出来,并对数据分析和检测,一旦有气体浓度超标触发相应提示与声光报警。
2)定位导航:借助GSM模块实现2G数据联网,定位当前车辆地理位置信息并提供导航服务。
3)管理控制:借助系统硬件部分通过上位机安卓应用软件的使用帮助用户实现对车内有关设备的直接控制,比如对车室灯、空调和车窗的开与关,以此协助用户进行安全问题的暂处理和提供用户操作的便捷性。
4)求助功能:通过插入SIM卡的GSM模块可方便进行类似于手机的电话和短信求助,同时添加利用汽车的鸣笛和四角闪的声光报警选项。
2、性能的规定:
该系统主要规定的性能部分包括:TCP协议组网的连接可靠性、WIFI无线传输的传输速率、系统启动时间时延、响应时延、数据联网的可靠性、系统软件使用流畅性、软硬件的交互性能、硬件响应等。
2.1、精度
1)WIFI数据传输达11Mbps
2)气体浓度单位达mg/L
3)单片机时延控制精确到ms级
4)信号范围≥10米
2.2、时间特性要求
1)系统启动延时:100s
2)传感器数据传输:1s/次
3)软件响应时间延时:≤1s
4)硬件响应时间≤1s
2.3、灵活性
1)TCP连接支持断点重连
2)在车内可任意搭配传感器客户端数量
3)搭配安卓手机和车载显示器及其他固有设备
4)方便拆卸和维修替换
5)使用简单使用任何封闭式车型
3、输入输出要求
输入:
1)车内气体环境中被监测气体的浓度属实
2)用户的定位、导航、求助及对车内设备管理控制的操作符合系统软件服务项目
输出:
1)传感器节点采集的数据信息具有实时性
2) 系统预警的提示信息具有实时和有效性
4、数据管理能力要求
1)车内环境信息的数据由节点MCU集中处理输出,保证了数据的正确性。
2)安卓ARM机对实时信息进行显示和监控,确保数据利用价值
3)对数据信息的有效部分进行保存以便查询
5、故障处理要求
1)软件故障检查与设备无线连接
2)硬件故障检查电源情况
3)系统支持重新启动功能
6、其他专门要求
1)请用户一定按照使用说明操作
2)切勿心急
四、运行环境规定
1、设备
基于物联网的车内安防设备表:
1)传感器节点:多种气体传感器、变压模块、51单片机最小系统、wifi模块 x5
2)主控设备:安卓ARM机一台+GSM模块 X1
3)显示设备:七寸液晶屏、驱动板、配线 若干
4)相应模块:继电器、风扇、舵机、蜂鸣器、led灯 若干
5)供电模块:插排、五伏电源适配器、充电宝 若干
2、支撑软件
1)TCSS app
2)安卓时钟
3、接口
1)百度地图API
2)硬件RS-232接口
4、控制
1)基于对TCSS手机软件的功能控制
2)搭配车内设备的硬件控制
五、结构化分析建模
1、DFD(数据流图)
2、系统E-R图
②软件概要设计说明书部分:
一、引言
1、编写目的
该软件概要设计说明书是“基于物联网的车内安防系统”开发中的重要文献资料,所完成的工作是将需求说明书中的数据流图转化成软件结构和数据结构,为后续进行详细设计说明书做好铺垫 。是开发人员进行功能设计和代码编写以及其他的具体实施开发工程提供必要的参考资料,在系统开发完成后期为系统的测试、验收提供帮助。其编写过程由项目的重要策划人完成。预期读者是从事“基于物联网的车内安防系统”开发的相关工作人员。
2、背景
(见上文需求说明书)
3、定义
(见上文需求说明书)
4、参考资料
(见上文需求说明书)
二、总体设计
1、总体设计
1.1、需求规定
(详见上文需求说明书需求规定部分)
1.2、运行环境
软件环境:Android系统
1.3、结构
1、软件层次图:
1.4、人工处理过程
首先,由用户提出请求,针对于数据监测、管理控制、定位导航和求救帮助这四个服务模块来划分功能,用户根据提示信息,如果环境浓度要求超过限值额度,系统提示警告,此时需进行人工干预处理,用户可根据提示信息对按照危险的处理预案对车内设备进行控制和处理,当危险无法排除时,用户可选择求助功能。
三、接口设计:
1、外部接口:
百度地图API
2、内部接口:
1)与传感器节点的tcp程序接口
2)与相应模块的tcp程序接口
3)串行数据接受发送接口
四、运行设计
1、运行模块组合
1)运行模块:数据监测、管理控制、定位导航和求救帮助这四个服务模块。
2)相互关联模块:数据监测模块检测到问题时,发生警报要求排查时会选择转向管理控制模块或者求救帮助模块进行自助排危。
2、运行控制
1)运行中可控制模块:管理控制、定位导航和求救帮助模块。
2)运行模块区别:数据监测只负责接收数据、其余三个模块可单独工作。
3、运行时间
系统的运行时间从系统硬件开启运行那刻开始,直到断电关闭或者连接断开为止。
五、系统结构设计
1、软件结构图:
六、系统出错处理
1、出错信息
1)按键无效请重试
2)设备已经关闭,请检查
2、补救措施
1)硬件重新启动
2)软件重新启动
3、系统维护设计
1)根据用户新的需求添加或删除现有功能
2)根据用户反馈信息进行系统优化
③软件详细设计说明书部分:
一、引言
1、编写目的
该软件详细设计说明书是“基于物联网的车内安防系统”开发中的重要文献资料,是对概要设计的细化,主要任务是设计每个模块的实现算法和所需的局部数据结构,目标有两个:实现功能算法要逻辑上正确;算法描述要简明易懂 。在系统开发完成后期为系统的测试、验收提供帮助。其编写过程由项目的重要策划人完成。预期读者是从事“基于物联网的车内安防系统”开发的相关工作人员。
2、背景
(见上文需求说明书)
3、定义
(见上文需求说明书)
4、参考资料
(见上文需求说明书)
二、程序系统的组织结构
1、系统流程图
三、程序1设计说明
1、程序描述
单片机利用串口向GSM模块发送AT指令,设置发送短信的预指令,通过中断正确判断GSM响应内容并将存储在数组中的手机号和信息取出,再配合AT指令将信息通过插卡的GSM把信息发送出去。
2、功能
该程序基于51单片机+红外测距传感器和GSM短信模块实现对实现编译的短信内容对指定手机号的发送,当红外测距模块制定的危险距离被触发时,单片机会启动GSM模块并给指定手机号发送短信。
3、输入项
1)事先编辑好的短信内容
2)事先指定的求助手机号
3)红外测距模块实时距离
4、输出项
1)求救内容
5、算法
GSM内部协议栈算法封装于模块内部,通过AT指令调用
6、接口
1)网络注册接口
2)短信收发接口
3)中断及其他程序接口
7、存储分配
1)数据保存在单片机的RAM中
2)命令保存在单片机的ROM中
8、注释设置
1)“//” 单行注释规范
2)“/*
XXXX 为说明性注释
*/“
9、限制条件
1)当GSM模块接收到单片机额向其发送的AT指令时,GSM会反馈固定格式信息,若信息为误或者没法送,则程序等待重发。
2)规定数据发送时要按照一定的格式,保留有效位。
3)预留手机号与短信信息必须转化为固定的二进制数据表格。
10、测试计划
不断触发红外测距模块,观察预留手机是否收到短信通知。
11、尚未解决的问题
将红外测距模块装成红外感应模块不行。