基于Vue的智慧农业监测管理系统的设计与实现-毕业设计源码41528

本文介绍了一种基于Vue前端框架和Node.js后端技术的智慧农业监测管理系统的设计与实现。该系统以大棚信息管理为核心,集成了空气湿度管理、大棚光照管理、土壤温度管理、空气温度管理、土壤湿度管理、市场分析管理以及指标数值管理等多个功能模块,旨在提高农业生产的智能化水平和效率。

在系统设计方面,本文详细阐述了系统的整体架构、数据库设计、前后端交互方式以及各个功能模块的实现逻辑。系统采用前后端分离的架构,前端使用Vue框架进行页面展示和用户交互,后端使用Node.js和Express框架处理业务逻辑和数据库操作。数据库设计方面,采用了MySQL数据库进行数据存储和管理。

在系统实现方面,本文详细介绍了各个功能模块的具体实现过程和技术难点。例如,大棚信息管理模块实现了对大棚基本信息的增删改查功能,同时支持对大棚内环境数据的实时监控和展示;空气湿度和光照管理模块则通过传感器采集数据,实现对大棚内环境湿度和光照的自动调节;土壤温度和湿度管理模块则通过数据分析,提供土壤肥力和灌溉建议;市场分析管理模块则结合历史数据和市场需求,为农业生产提供决策支持;指标数值管理模块则负责设定和管理各个环境参数的安全阈值,确保农业生产的安全和稳定。

通过本文的研究和实现,智慧农业监测管理系统能够为农业生产提供更加精准、高效的管理方式,有助于提升农业生产的品质和效益,推动智慧农业的发展。

关键词:智慧农业监测管理系统;Node.js;Express;Mysql数据库;Vue框架

Abstract

This article introduces the design and implementation of a smart agricultural monitoring and management system based on Vue front-end framework and Node.js back-end technology. The system is centered around greenhouse information management and integrates multiple functional modules, including air humidity management, greenhouse lighting management, soil temperature management, air temperature management, soil humidity management, market analysis management, and indicator value management, aiming to improve the intelligence level and efficiency of agricultural production.

In terms of system design, this article elaborates on the overall architecture of the system, database design, front-end and back-end interaction methods, and the implementation logic of each functional module. The system adopts a front-end and back-end separation architecture. The front-end uses Vue framework for page display and user interaction, while the back-end uses Node.js and Express framework to handle business logic and database operations. In terms of database design, MySQL database was used for data storage and management.

In terms of system implementation, this article provides a detailed introduction to the specific implementation process and technical difficulties of each functional module. For example, the greenhouse information management module implements the function of adding, deleting, modifying, and querying basic greenhouse information, while supporting real-time monitoring and display of environmental data inside the greenhouse; The air humidity and light management module collects data through sensors to automatically adjust the humidity and light inside the greenhouse environment; The soil temperature and humidity management module provides soil fertility and irrigation recommendations through data analysis; The market analysis management module combines historical data and market demand to provide decision support for agricultural production; The indicator value management module is responsible for setting and managing safety thresholds for various environmental parameters to ensure the safety and stability of agricultural production.

Through the research and implementation of this article, the smart agriculture monitoring and management system can provide more precise and efficient management methods for agricultural production, help improve the quality and efficiency of agricultural production, and promote the development of smart agriculture.

Keywords: Smart agricultural monitoring and management system; Node.js; Express; MySQL database; Vue framework.

目录

第 1 章 引  言

1.1 选题背景及目的

1.2 国内外研究现状

1.3 论文结构安排

第 2 章 系统需求分析

2.1 系统可行性分析

2.1.1 技术可行性分析

2.1.2 经济可行性分析

2.1.3 操作可行性分析

2.2 系统需求分析

2.2.1 功能需求分析

2.2.2 非功能性需求分析

2.3 系统用例分析

第 3 章 系统总体设计

3.1 系统功能模块设计

3.2 数据库设计

3.2.1 数据库概念结构设计

3.2.2 数据库逻辑结构设计

第 4 章 关键模块的设计与实现

4.1 登录模块

4.2 注册模块

4.3 后台首页模块

4.4 大棚信息管理模块

4.5 空气湿度管理模块

4.6 土壤温度管理模块

4.7 指标数值管理模块

4.8 大棚光照管理模块

第 5 章 系统实验与结果分析

5.1 测试的目的

5.2 系统部分测试

5.3 系统测试结果

第 6 章 结论

参考文献

致谢

随着科技的进步和现代化农业的发展,智慧农业已成为推动农业现代化的重要手段。智慧农业通过集成物联网、云计算、大数据等先进技术,实现对农业生产环境的实时监控、精准管理和智能决策,从而提高农业生产的效率、品质和可持续性。在这一背景下,开发一套基于Vue前端框架和Node.js后端技术的智慧农业监测管理系统,对于推动智慧农业的发展、提升农业管理的智能化水平具有重要意义。

本论文的选题目的在于设计并实现一套功能全面、性能稳定、易于扩展的智慧农业监测管理系统。该系统以大棚信息管理为核心,集成了空气湿度管理、大棚光照管理、土壤温度管理、空气温度管理、土壤湿度管理、市场分析管理以及指标数值管理等多个功能模块。通过该系统,农业生产者可以实现对农业生产环境的实时监控和精准管理,提高农业生产的智能化水平和效率。同时,该系统还可以为农业生产提供决策支持,帮助农业生产者更好地应对市场变化和生产挑战。

具体来说,本论文的研究目的包括以下几个方面:

设计并实现一个基于Vue和Node.js的智慧农业监测管理系统,为农业生产提供全面、高效的管理工具。

实现对大棚内环境数据的实时监控和展示,帮助农业生产者及时了解农业生产环境的变化。

通过数据分析和管理,提供土壤肥力和灌溉建议,为农业生产提供科学决策支持。

结合历史数据和市场需求,为农业生产提供市场分析和管理功能,帮助农业生产者更好地应对市场变化和生产挑战。

探索智慧农业监测管理系统的未来发展方向和应用前景,为智慧农业的发展提供理论和实践支持。

    1. 国内外研究现状

国内研究现状

近年来,随着国内智慧农业的快速发展,基于Vue、NodeJS等前端后端技术的智慧农业监测管理系统也得到了广泛的研究和应用。国内的研究主要集中在以下几个方面:

系统架构设计:国内学者和企业在智慧农业监测管理系统的架构设计方面进行了大量研究,提出了多种适合中国农业生产特点的系统架构方案。这些方案通常注重系统的可扩展性、稳定性和易用性。

数据采集与处理:针对智慧农业监测管理系统中的数据采集与处理问题,国内研究者开发了一系列传感器和数据处理算法,实现了对土壤温度、湿度、空气温度、湿度等关键环境参数的实时监测和精准控制。

智能决策支持:通过结合大数据分析、机器学习等技术,国内研究者为智慧农业监测管理系统提供了智能决策支持功能。这些功能可以帮助农业生产者根据环境参数、作物生长状态等因素制定科学的种植计划和管理策略。

系统应用与推广:随着智慧农业技术的不断成熟,国内研究者开始关注智慧农业监测管理系统的应用与推广。他们通过与农业企业、合作社等合作,将研究成果应用于实际生产中,取得了显著的经济效益和社会效益。

国外研究现状:

在国外,智慧农业监测管理系统的研究与应用同样得到了广泛的关注。与国内相比,国外的研究在某些方面更为先进和成熟,主要表现在以下几个方面:

技术创新与研发:国外在智慧农业监测管理系统的技术创新和研发方面投入较大,不断推出新的技术和产品。例如,一些国外企业研发了高精度的传感器和智能控制设备,实现了对农业生产环境的精准监测和控制。

系统集成与优化:国外在智慧农业监测管理系统的集成与优化方面也有较高的水平。他们注重将各种技术和设备整合到一个统一的系统中,实现数据的共享和互通,提高系统的整体性能和稳定性。

标准化与规范化:为了推动智慧农业监测管理系统的广泛应用和标准化发展,国外制定了一系列相关标准和规范。这些标准和规范为系统的设计、开发、应用和推广提供了统一的指导和依据。

国际合作与交流:国外在智慧农业监测管理系统的国际合作与交流方面也较为活跃。他们通过参与国际会议、合作项目等方式,与其他国家和地区的研究者分享经验和技术成果,共同推动智慧农业的发展。

综上所述,国内外在智慧农业监测管理系统的设计与实现方面都取得了一定的研究成果和经验。然而,由于农业生产环境和需求的差异,不同地区和国家在智慧农业监测管理系统的研究和应用方面仍存在一定的差异和挑战。因此,未来需要进一步加强国际合作与交流,共同推动智慧农业监测管理系统的创新与发展。

    1. 论文结构安排

论文将分层次经行编排,除去论文摘要致谢文献参考部分,正文部分还会对系统需求做出分析,以及阐述大体的设计和实现的功能,最后罗列部分调测记录,论文主要架构如下:

第1章 交代项目的背景、开发这个系统的现状以及论文的章节安排情况。

第2章 对系统的具体需求展开分析。

第3章 阐述了系统的设计,其中涵盖了功能设计以及数据库的设计。

第4章 阐明了智慧农业监测管理系统各个功能模块的实现,以图文的形式进行展示。

第5章 罗列了部分系统调试与测试的记录。

第6章 介绍了智慧农业监测管理系统的结论。

采用Node.js编程语言和Express框架,以及MySQL关系型数据库管理系统,设计和实现一个智慧农业监测管理系统。Node.js作为后端开发语言,具有强大的异步处理能力和丰富的开源库支持,使得开发人员可以快速构建高效的服务器端应用程序。MySQL作为一种常见的关系型数据库管理系统,具有稳定性和可靠性,能够满足系统对数据的存储和访问需求。

      1. 经济可行性分析

在开发智慧农业监测管理系统中所使用的开发工具、MySQL数据库等工具都是开源免费的,这些环境在学校都进行了系统的学习,自己能够独立操作完成,不需要额外花费,而且系统的开发工具从网上都可以直接下载,因此在经济方面是可行的。

      1. 操作可行性分析

此次项目设计的时候我参考了很多类似系统的成功案例,对它们的操作界面以及功能都进行了系统的分析,将众多案例结合在一起,突出以人为本简化操作,所以具有基本计算机知识的人都会操作本项目。因此操作可行性也没有问题。

    1. 系统需求分析
      1. 功能需求分析

智慧农业监测管理系统普通用户提供后台首页、大棚信息管理、空气湿度管理、大棚光照管理、土壤温度管理、空度温度管理、土壤湿度管理、市场分析管理、指标数值管理等功能。管理员拥有后台首页、系统用户、大棚分类管理、大棚信息管理、空气湿度管理、大棚光照管理、土壤温度管理、空度温度管理、土壤湿度管理、市场分析管理、指标数值管理权限。具体如下。

1. 普通用户功能:

后台首页: 提供普通用户登录后的管理主页,展示系统的重要信息和功能入口。

大棚信息管理: 允许用户查看和管理各个大棚的基本信息,包括名称、位置、种植作物等。

空气湿度管理: 用户可以实时监测和管理大棚内的空气湿度数据,包括查看历史数据、设置报警阈值等。

大棚光照管理: 提供大棚内光照强度的监测和管理功能,帮助用户控制作物生长环境。

土壤温度管理: 用户可以查看和管理大棚内土壤温度的数据,及时调整温度以促进作物生长。

空气温度管理: 提供大棚内空气温度的监测和管理功能,帮助用户维持适宜的生长环境。

土壤湿度管理: 用户可以查看和管理大棚内土壤湿度的数据,确保作物生长所需的湿度条件。

市场分析管理: 提供市场行情分析和预测功能,帮助用户做出种植和销售决策。

指标数值管理: 用户可以查看和管理各项监测指标的具体数值,及时调整种植环境。

2. 管理员功能:

后台首页: 提供管理员登录后的管理主页,展示系统的重要信息和功能入口。

系统用户: 管理系统内的用户信息,包括普通用户和管理员的账户信息和权限设置。

大棚分类管理: 管理大棚的分类信息,方便用户查找和管理不同类型的大棚。

大棚信息管理: 管理各个大棚的基本信息,包括添加、编辑和删除大棚资料。

空气湿度管理: 管理大棚内空气湿度的监测设备和数据,包括查看历史数据和设置报警阈值。

大棚光照管理: 管理大棚内光照强度的监测设备和数据,帮助调整灯光设备。

土壤温度管理: 管理土壤温度的监测设备和数据,包括查看历史数据和调整加热设备。

空气温度管理: 管理空气温度的监测设备和数据,包括查看历史数据和调整温度控制设备。

土壤湿度管理: 管理土壤湿度的监测设备和数据,包括查看历史数据和调整灌溉设备。

市场分析管理: 提供市场行情分析和预测功能,包括数据分析和报表生成等。

指标数值管理: 管理各项监测指标的具体数值范围和报警阈值,确保作物生长环境的稳定性。

以上是基于Vue、NodeJS的智慧农业监测管理系统的功能需求分析,涵盖了普通用户和管理员两个角色的功能设计与实现要求。

      1. 非功能性需求分析

智慧农业监测管理系统的非功能性需求比如系统的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体可以表示在如下3-1表格中:

2.1 系统非功能需求表

安全性

主要指系统数据库的安装,数据库的使用和密码的设定必须合乎规范。

可靠性

可靠性是指系统能够安装用户的指示进行操作,经过测试,可靠性90%以上。

性能

性能是影响系统占据市场的必要条件,所以性能最好要佳才好。

可扩展性

比如数据库预留多个属性,比如接口的使用等确保了系统的非功能性需求。

易用性

用户只要跟着系统的页面展示内容进行操作,就可以了。

可维护性

系统开发的可维护性是非常重要的,经过测试,可维护性没有问题

    1. 系统用例分析

智慧农业监测管理系统中用户角色用例图如图2.1所示:

图2.1 用户角色用例图

智慧农业监测管理系统中管理员用户角色用例图如图2.2所示:

图2.2 管理员角色用例图

系功能模块分成了管理员普通用户两个模块,每个模块登录进去对应相应的功能,具体的功能模块图如图3.1所示。

图3.1 智慧农业监测管理系统功能模块图

    1. 数据库设计

数据库的设计承载者系统的各种数据,在建立数据库的时候,主要是数据库模型的设计以及各个数据库表的设计两部分。

      1. 数据库概念结构设计

下面是整个智慧农业监测管理系统中主要的数据库表总E-R实体关系图。

图3.2 智慧农业监测管理系统总E-R关系图

      1. 数据库逻辑结构设计

通过前面E-R关系图可以看到项目需要创建很多个数据表。以下是项目中的主要数据库表的关系模型:

表access_token (登陆访问时长)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

token_id

int

10

0

N

Y

临时访问牌ID

2

token

varchar

64

0

Y

N

临时访问牌

3

info

text

65535

0

Y

N

4

maxage

int

10

0

N

N

2

最大寿命:默认2小时

5

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

6

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

7

user_id

int

10

0

N

N

0

用户编号:

表air_humidity (空气湿度)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

air_humidity_id

int

10

0

N

Y

空气湿度ID

2

regular_users

int

10

0

Y

N

0

普通用户

3

greenhouse_number

varchar

64

0

Y

N

大棚编号

4

greenhouse_address

varchar

64

0

Y

N

大棚地址

5

greenhouse_area

varchar

64

0

Y

N

大棚面积

6

planting_variety

varchar

64

0

Y

N

种植品种

7

planting_quantity

int

10

0

Y

N

0

种植数量

8

measurement_time

date

10

0

Y

N

测量时间

9

air_humidity

int

10

0

Y

N

0

空气湿度

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表air_temperature (空气温度)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

air_temperature_id

int

10

0

N

Y

空气温度ID

2

regular_users

int

10

0

Y

N

0

普通用户

3

greenhouse_number

varchar

64

0

Y

N

大棚编号

4

greenhouse_address

varchar

64

0

Y

N

大棚地址

5

greenhouse_area

varchar

64

0

Y

N

大棚面积

6

planting_variety

varchar

64

0

Y

N

种植品种

7

planting_quantity

int

10

0

Y

N

0

种植数量

8

measurement_time

date

10

0

Y

N

测量时间

9

air_temperature

int

10

0

Y

N

0

空气温度

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表auth (用户权限管理)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

auth_id

int

10

0

N

Y

授权ID:

2

user_group

varchar

64

0

Y

N

用户组:

3

mod_name

varchar

64

0

Y

N

模块名:

4

table_name

varchar

64

0

Y

N

表名:

5

page_title

varchar

255

0

Y

N

页面标题:

6

path

varchar

255

0

Y

N

路由路径:

7

position

varchar

32

0

Y

N

位置:

8

mode

varchar

32

0

N

N

_blank

跳转方式:

9

add

tinyint

3

0

N

N

1

是否可增加:

10

del

tinyint

3

0

N

N

1

是否可删除:

11

set

tinyint

3

0

N

N

1

是否可修改:

12

get

tinyint

3

0

N

N

1

是否可查看:

13

field_add

text

65535

0

Y

N

添加字段:

14

field_set

text

65535

0

Y

N

修改字段:

15

field_get

text

65535

0

Y

N

查询字段:

16

table_nav_name

varchar

500

0

Y

N

跨表导航名称:

17

table_nav

varchar

500

0

Y

N

跨表导航:

18

option

text

65535

0

Y

N

配置:

19

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

20

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表greenhouse_classification (大棚分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

greenhouse_classification_id

int

10

0

N

Y

大棚分类ID

2

greenhouse_classification

varchar

64

0

Y

N

大棚分类

3

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表greenhouse_information (大棚信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

greenhouse_information_id

int

10

0

N

Y

大棚信息ID

2

regular_users

int

10

0

Y

N

0

普通用户

3

greenhouse_number

varchar

64

0

N

N

大棚编号

4

greenhouse_type

varchar

64

0

Y

N

大棚类型

5

greenhouse_address

varchar

64

0

Y

N

大棚地址

6

greenhouse_area

varchar

64

0

Y

N

大棚面积

7

planting_variety

varchar

64

0

Y

N

种植品种

8

sowing_time

date

10

0

Y

N

播种时间

9

planting_quantity

int

10

0

Y

N

0

种植数量

10

current_state

varchar

64

0

Y

N

当前状态

11

estimated_production

varchar

64

0

Y

N

预估产量

12

greenhouse_remarks

text

65535

0

Y

N

大棚备注

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表greenhouse_lighting (大棚光照)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

greenhouse_lighting_id

int

10

0

N

Y

大棚光照ID

2

regular_users

int

10

0

Y

N

0

普通用户

3

greenhouse_number

varchar

64

0

Y

N

大棚编号

4

greenhouse_address

varchar

64

0

Y

N

大棚地址

5

greenhouse_area

varchar

64

0

Y

N

大棚面积

6

planting_variety

varchar

64

0

Y

N

种植品种

7

planting_quantity

int

10

0

Y

N

0

种植数量

8

measurement_time

date

10

0

Y

N

测量时间

9

illumination_value

int

10

0

Y

N

0

光照值

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表hits (用户点击)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

hits_id

int

10

0

N

Y

点赞ID:

2

user_id

int

10

0

N

N

0

点赞人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

表indicator_values (指标数值)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

indicator_values_id

int

10

0

N

Y

指标数值ID

2

regular_users

int

10

0

Y

N

0

普通用户

3

data_number

varchar

64

0

Y

N

数据编号

4

data_type

varchar

64

0

Y

N

数据类型

5

measurement_time

date

10

0

Y

N

测量时间

6

current_value

int

10

0

Y

N

0

当前数值

7

best_value

int

10

0

Y

N

0

最佳数值

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表market_analysis (市场分析)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

market_analysis_id

int

10

0

N

Y

市场分析ID

2

regular_users

int

10

0

Y

N

0

普通用户

3

location

varchar

64

0

Y

N

所在地区

4

planting_variety

varchar

64

0

Y

N

种植品种

5

average_price

int

10

0

Y

N

0

平均价格

6

estimated_price

int

10

0

Y

N

0

预估价格

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表regular_users (普通用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

regular_users_id

int

10

0

N

Y

普通用户ID

2

user_name

varchar

64

0

Y

N

用户姓名

3

user_gender

varchar

64

0

Y

N

用户性别

4

contact_number

varchar

16

0

Y

N

联系电话

5

examine_state

varchar

16

0

N

N

已通过

审核状态

6

user_id

int

10

0

N

N

0

用户ID

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表soil_moisture (土壤湿度)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

soil_moisture_id

int

10

0

N

Y

土壤湿度ID

2

regular_users

int

10

0

Y

N

0

普通用户

3

greenhouse_number

varchar

64

0

Y

N

大棚编号

4

greenhouse_address

varchar

64

0

Y

N

大棚地址

5

greenhouse_area

varchar

64

0

Y

N

大棚面积

6

planting_variety

varchar

64

0

Y

N

种植品种

7

planting_quantity

int

10

0

Y

N

0

种植数量

8

measurement_time

date

10

0

Y

N

测量时间

9

soil_moisture

int

10

0

Y

N

0

土壤湿度

10

is_it_abnormal

varchar

64

0

Y

N

是否异常

11

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表soil_temperature (土壤温度)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

soil_temperature_id

int

10

0

N

Y

土壤温度ID

2

regular_users

int

10

0

Y

N

0

普通用户

3

greenhouse_number

varchar

64

0

Y

N

大棚编号

4

greenhouse_address

varchar

64

0

Y

N

大棚地址

5

greenhouse_area

varchar

64

0

Y

N

大棚面积

6

planting_variety

varchar

64

0

Y

N

种植品种

7

planting_quantity

int

10

0

Y

N

0

种植数量

8

measurement_time

date

10

0

Y

N

测量时间

9

soil_temperature

int

10

0

Y

N

0

土壤温度

10

is_it_abnormal

varchar

64

0

Y

N

是否异常

11

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表upload (文件上传)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

upload_id

int

10

0

N

Y

上传ID

2

name

varchar

64

0

Y

N

文件名

3

path

varchar

255

0

Y

N

访问路径

4

file

varchar

255

0

Y

N

文件路径

5

display

varchar

255

0

Y

N

显示顺序

6

father_id

int

10

0

Y

N

0

父级ID

7

dir

varchar

255

0

Y

N

文件夹

8

type

varchar

32

0

Y

N

文件类型

表user (用户账户:用于保存用户登录信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

user_id

mediumint

8

0

N

Y

用户ID:[0,8388607]用户获取其他与用户相关的数据

2

state

smallint

5

0

N

N

1

账户状态:[0,10](1可用|2异常|3已冻结|4已注销)

3

user_group

varchar

32

0

Y

N

所在用户组:[0,32767]决定用户身份和权限

4

login_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

上次登录时间:

5

phone

varchar

11

0

Y

N

手机号码:[0,11]用户的手机号码,用于找回密码时或登录时

6

phone_state

smallint

5

0

N

N

0

手机认证:[0,1](0未认证|1审核中|2已认证)

7

username

varchar

16

0

N

N

用户名:[0,16]用户登录时所用的账户名称

8

nickname

varchar

16

0

Y

N

昵称:[0,16]

9

password

varchar

64

0

N

N

密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成

10

email

varchar

64

0

Y

N

邮箱:[0,64]用户的邮箱,用于找回密码时或登录时

11

email_state

smallint

5

0

N

N

0

邮箱认证:[0,1](0未认证|1审核中|2已认证)

12

avatar

varchar

255

0

Y

N

头像地址:[0,255]

13

open_id

varchar

255

0

Y

N

针对获取用户信息字段

14

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

15

vip_level

varchar

255

0

Y

N

会员等级

16

vip_discount

double

11

2

Y

N

0.00

会员折扣

表user_group (用户组:用于用户前端身份和鉴权)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

group_id

mediumint

8

0

N

Y

用户组ID:[0,8388607]

2

display

smallint

5

0

N

N

100

显示顺序:[0,1000]

3

name

varchar

16

0

N

N

名称:[0,16]

4

description

varchar

255

0

Y

N

描述:[0,255]描述该用户组的特点或权限范围

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

8

register

smallint

5

0

Y

N

0

注册位置:

9

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

管理员、用户在登录界面输入账号+密码,点击“登录”按钮,系统在用户数据库表中会对管理员、用户的账号进行匹配,账号+密码+完成验证正确的话,就会登录到系统中各个用户的主管理界面,否则提示对应的信息,返回到登录的界面,其主界面展示如下图4.1所示。

图4.1 登录界面图

    1. 注册模块

注册模块满足用户两部分,当用户想要进行相关信息的查询管理的时候,就必须进行登录,如果没有账号的话,在登录界面,点击“注册”按钮就会跳转到注册的界面,根据提示填写好注册信息,添加提交,注册的信息在数据库中就添加完成了,然后再输入填写好的账号和密码进行登录,其主界面展示如下图4.2所示。

图4.2 注册界面图

    1. 后台首页模块

管理员和用户登录进入系统后台后,首页展示系统的重要数据统计图和功能入口。界面如下图所示。

图4.3 后台首页界面图

    1. 大棚信息管理模块

点击“大棚信息管理”,管理员和用户都可添加和管理各个大棚的基本信息,包括名称、地址、种植品种等。界面如下图所示。

图4.4 大棚信息添加界面图

    1. 空气湿度管理模块

点击“空气湿度管理”,可以记录和管理大棚内的空气湿度数据。界面如下图所示。

图4.5 空气湿度记录界面图

    1. 土壤温度管理模块

点击“土壤温度管理”,可以记录和管理大棚内的土壤温度数据。界面如下图所示。

图4.6 土壤温度记录界面图

    1. 指标数值管理模块

点击“指标数值管理”,可以查看和管理各项监测指标的具体数值,及时调整种植环境。界面如下图所示。

图4.7指标数值记录界面图

    1. 大棚光照管理模块

点击“大棚光照管理”,可以记录和管理大棚光照的具体数值,及时调整光照环境。界面如下图所示。

图4.8 大棚光照管理界面图

通过前面章节的介绍,我们可以看到本智慧农业监测管理系统已经完成了,但是能不能投入使用还是未知,因为在每个项目正式使用之前必须对开发的项目进行测试,如果不进行测试一旦投入使用可能会出现很多未可知的问题,比如使用人数太多导致系统瘫痪,比如某一功能存在bug信息填写错误等,这些错误将给使用者带来很多的困扰,甚至造成更大的损失,因此测试是项目投入使用的最后一步,为用户提供一个运行顺畅、完美的项目也就是我们进行最后测试的目的。

    1. 系统部分测试

用户登录功能测试:

表5.1 用户登录功能测试表

测试名称

测试功能

操作过程

预期结果

测试结果

用户登录模块测试

用户登录成功的情况

点击前登录界面输入账号和密码分别输入admin和admin后点击“登录”按钮。

登录成功并调整到用户界面

正确

资料信息添加功能测试:

表5.2 资料信息添加功能测试表

测试名称

测试功能

操作过程

预期结果

测试结果

资料信息模块测试

资料信息成功的情况

在页面中将点击添加,输入资料信息,输入正确的信息后然后点击“提交”按钮。

提示添加成功

正确

资料信息模块测试

资料信息失败的情况

在页面中不填写的资料名称,其他信息正常输入“提交”按钮。

提示“添加失败,信息不能为空”

正确

    1. 系统测试结果

通过编写智慧农业监测管理系统的测试用例,已经检测完毕用户的登录模块、资料信息添加等功能测试,在对以上功能得测试过程中,发现了系统中的很多漏送并进行了完善,经过多人在线进行测试,系统完全可以正常运行,当然在后期的维护中系统将不断完善。

在开发本系统之前我胸有成竹,觉得很简单,但在实际的开发中我发现了自身的很多问题,许多编程思想和方法都还没有掌握牢靠,比如Node.js开发语言、Express框架,通过开发这个智慧农业监测管理系统我成长了很多,懂得了做什么事情都要脚踏实地,不能眼高手低,在本次智慧农业监测管理系统的开发中我逐渐掌握逐渐熟悉的技术。

本次智慧农业监测管理系统的开发中我还学会了例如良好的编程思想和完善的规划思想。在着手编程之前需要罗列出程序框架的大概,脑海中构建出程序的主题框架。做好这一步我们才能胸有成竹的经行开发项目。当设计框架了熟于心之后,需要思考本次编程所需的主要知识点和技术点,并充分学习。

在本次项目中我也暴露了诸多问题。对于Node.js的编程知识有所欠缺,环境配置和算法上出现诸多问题,时常导致项目运行出错,或者目标的实现有问题。或者实现想法时算法未优化,使得代码冗长,程序运行不顺畅。

参考文献

[1]Zhou Peng,Gao Yuhan.Detecting prototype pollution for node.js: Vulnerability review and new fuzzing inputs[J].Computers  Security,2024,137103625-.

[2]Turnip Arjon,Pebriansyah Fikri Rida,Simarmata Tualar,Sihombing Poltak,Joelianto Endra.Design of smart farming communication and web interface using MQTT and Node.js[J].Open Agriculture,2023,8(1):

[3]范兴娟,郭芳彤,刘保庆.基于node.js云平台的快递无人车在生鲜配送系统的应用[J].电子制作,2023,31(18):70-74.

[4]张猛,何姗姗.基于Vue+Node.js的智能小区数据管理系统设计与实现[J].电脑知识与技术,2023,19(14):46-49+53.

[5]Node.js development agency Moravio is gaining praise for its customization and experience.[J].M2 Presswire,2022,

[6]Kyriakou KyriakosIoannis D.,Tselikas Nikolaos D..Complementing JavaScript in High-Performance Node.js and Web Applications with Rust and WebAssembly[J].Electronics,2022,11(19):3217-3217.

[7]布宇凡.基于Node.js的船舶信息管理系统的设计与实现[D].北京邮电大学,2022.

[8]闵亮,薛格格,张玉欣,赵彩.基于Node.JS博客系统的设计与实现[J].电子设计工程,2022,30(07):37-41.

[9]Matthew Tyson.A simple automated build pipeline for Node.js[J].InfoWorld.com,2022,

[10]陈明雪,赵勇,周小丽,邓思风.基于Node.js和Bootstrap的图书管理系统设计与研究[J].现代信息科技,2021,5(24):12-15.

[11]余任杰,王风硕.基于Node.js的网上图书销售系统设计[J].电脑知识与技术,2021,17(34):83-84+92.

[12]赵婉琳,彭仕霖,杜孟新.基于Node.js的汽车数据中台系统的设计与实现[J].仪器仪表标准化与计量,2021,(05):23-26.

[13]马艳彬.基于Node.js和Vue框架的竞赛类答题平台管理系统的设计[A]中国新闻技术工作者联合会2021年学术年会论文集[C].中国新闻技术工作者联合会,中国新闻技术工作者联合会,2021:6.

[14]蒋登丽.基于Node.js的农产品订购系统的设计与实现[J].现代信息科技,2020,4(17):23-26.

[15]高改丽.基于Node.js的在线竞赛系统的设计与实现[D].西安电子科技大学,2020.

[16]羌栋强,蔡艳婧,袁娇娇.基于GIS的农业精细化管理系统设计——以南通市为研究对象[J].物联网技术,2024,14(01):98-101+105.DOI:10.16667/j.issn.2095-1302.2024.01.027.

[17]牟雪雷.智慧农业管理系统组成与发展[J].农机使用与维修,2024,(01):84-87.DOI:10.14031/j.cnki.njwx.2024.01.022.

[18]韩鹏,王军红,王金炜.智慧农业大棚计算机信息管理系统的设计与实现[J].河北农业,2023,(10):85-87.

[19]许骥,陈力锋,刘璇等.基于MQTT的智慧农业管理系统设计与实现[J].物联网技术,2023,13(07):91-93+97.DOI:10.16667/j.issn.2095-1302.2023.07.021.

[20]周德锋.基于物联网的智慧农业温室大棚环境智能调节管理系统设计[J].办公自动化,2023,28(10):58-60.

[21]陈文杰,区域智慧农业大数据集群状态管理系统V1.0.甘肃省,甘肃省农业科学院农业经济与信息研究所,2021-12-01.

致谢

至此论文结束,感谢您的阅读。在此我要特别的感谢我的导师,虽然我在实习期间很忙,论文撰写的时候经常是停停改改,但是我的导师依旧十分的负责,时不时的询问我的任务进展情况,跟进我的论文进度,在指导老师的帮助下,我逐步完成了自己的论文和程序,从导师身上也学习到很多知识和经验,这些知识和经验令我受益匪浅。同时我也从导师身上看到了自己的不足,不论是在技术层面上还是在对待工作的态度上,导师如同明镜一般照出了我的缺点我的不足。此外,我还要感谢在我实习期间在论文和程序上帮助过我的同学和社会人士,此前我对于Express框架方面的一些知识还不了解,是他们在我编写程序过程中给了我很多的启发和感想,也帮助了我对于程序的调试和检测。没有他们我是不能顺利完成本次毕业设计的。至此,我的毕业设计就花上了一个圆满的句号了。

免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值