一、需求分析
1.选题背景
随着物联网技术不断发展,农业种植、检测也区域远程、自动化发展。同时随着人口的快速增长以及人们生活质量的提升,人们对农作物的产量、品质的要求也越来越高。传统的农产品种植行业通过人工监测作物的病虫害,这样速度慢,效率低,极易出现主观性,造成人力物力的极大浪费。自动化、高效化的农产品检测成为物联网时代下的发展趋势。
2.系统功能
3.用户需求
病虫害检测系统的主要目标是为用户(种植户)提供迅速、高效的病虫害监测服务,通过摄像头、传感器、采集器等一系列IOT设备,为用户提供及时、实时、准确的病虫害检测结果,并根据检测结果配合相关病理知识、防治技术,自动为用户提供最合理、最有效的病虫害防治方案。从而提高用户的土地产能,帮助用户获得更好的经济效益。其具体目标包括:
1)实时监测植株健康状况,并周期性自动采集植株图片;
2)监控并显示大棚内空气温湿度、土壤温湿度、土壤PH值、光照强度、CO2浓度等环境数据;
3)实时、快速、准确地更新植株各项生长状态和大棚内环境数据;
4)支持查询历史生长情况、图片和大棚内环境数据;
5)提供病虫害监测报警功能;
6)进行病虫害严重程度分级;
7)实现自动提供病虫害防治方案功能。
4.模块设计需求
1)传感器台账管理
2)采集器台账管理
3)元数据管理
4)设备台账管理
5)报警规则管理
6)报警消息管理
二、数据概念结构
1.数据库说明
采用MySQL数据库
2.数据结构
1 | 传感器 | 名称、编号、类型、规格型号、安装位置; |
2 | 采集器 | 名称、编号、类型、规格型号、安装位置; |
3 | 元数据 | ID、名称、编号、检测类型、数据类型、采样频率、单位、位置信息、备注; |
4 | 设备台账 | 编号、名称、类型、管理员、图片、附件、位置、备注; |
5 | 告警规则 | 测点编号、测点名称、位置、正常区间、状态; |
6 | 告警消息 | 设备编号、设备名称、元数据编号、元数据名称、正常区间、报警值、报警开始时间、报警结束时间、报警时长; |
注:在建表时每张表可以预留两个字段(REMARK1、REMARK2)
概念结构设计是将分析得到的用户需求抽象为概念模型的过程,即在需求分析的基础上,设计出能够满足用户需求的各种实体以及它们之间的相互关系的模型。概念结构的主要特点是能真实、充分地反映现实世界,易于理解,易于更改,易于向关系、网状、层次等各种数据模型转换,描述概念模型的有力工具是E-R模型。
3.数据库概念模型设计
需要完成的操作(可以参考原博主 LLLLQZ 的 数据库设计步骤(超级详细)|数据库LLLLQZ)
(1)对以上描述进行分析,进行数据库概念模型的设计(即确定各个实体、属性及联系并绘制E-R图)。
(2)将(1)中概念模型转换成关系型逻辑模型,并标出各个关系模式的主码和外码。
(3)将所转换成的关系型数据模型在MySQL中进行实现。
4.数据表设计
5.表结构
6.E-R图
(E-R图画法可以参考博主 计算机编程-吉哥 的 ER图画法及图形含义、举例说明、通俗易懂)
7.逻辑结构
1)实体:是存在于用户组织中的抽象的但有意义的“事物”
在上面问题中指的是供应商传感器、采集器、元数据、设备台账、管理员、告警规则、告警消息;
2)属性:是指实体集中所有试题所具有的共同特征
在上面问题中指的是传感器名称、编号、类型、规格型号、安装位置;
3)码:一般把能够唯一地标识实体集中每一个不同实体的一个或一组属性称为实体集的标识码(其实这便是主码或叫做主键)
在上面问题中指的是比如元数据的实体集中元数据ID便是标识码;
4)联系:实体之间的联系,是指实体集之间有意义的相互作用及相对应关系
在上面问题中指的是每个管理员能供应多个设备;每台设备可以有多个元数据和告警信息。
而其中主码是一个能唯一标识一个元组的属性。
而其中外码是如果一个关系中的一个属性是另外一个关系中的主码则这个属性为外码。
三、数据库构建
1.创建数据库
2.创建表
3.添加数据