摘  要

在当今大数据精准农业迅猛发展的背景下,精准农业平台已经成为新农人获取和分享农业知识的重要渠道。然而,现有的一些平台在功能和用户体验上仍存在不足之处,因此,创建一个功能全面且用户友好的大数据在精准农业中的应用具有重要的研究价值。该网站由多个技术模块组成,包括Django框架、Python编程语言、HTML前端开发和MySQL数据库管理。

网站包含多个功能模块,包括用户管理、资讯管理、农业知识分类管理等。用户管理模块分为管理员和普通用户,管理员可以管理用户权限,普通用户可以编辑个人信息并参与网站活动。资讯管理模块负责发布和分类农业知识资讯,帮助用户了解最新的农业知识动态;农业知识分类模块帮助用户根据不同类型分类浏览农业知识资源。

在技术实现上,Django作为主要的后端框架,通过Python编写逻辑和处理数据。HTML用于构建网站的前端页面,使得网站具有良好的用户界面和用户体验。MySQL数据库管理系统则负责存储和管理网站的所有数据,包括用户信息、农业知识分类资源等。通过利用Django框架的高效开发和强大社区支持,结合Python的简洁高效、HTML的灵活性以及MySQL的稳定性,本文展示了如何构建一个功能完善的大数据在精准农业中的应用,为新农人提供一个便捷的精准农业知识交流和获取平台。

关键词:大数据在精准农业中的应用;diango;MySQL

Abstract

In the context of the rapid development of big data precision agriculture, precision agriculture platform has become an important channel for new farmers to acquire and share agricultural knowledge. However, some existing platforms still have shortcomings in terms of functionality and user experience, so it is of important research value to create a comprehensive and user-friendly big data application in precision agriculture. The website consists of several technical modules, including the Django framework, the Python programming language, the HTML front-end development, and MySQL database management.

The website contains multiple functional modules, including user management, information management, agricultural knowledge classification management, etc. The user management module is divided into administrators and ordinary users. Administrators can manage user rights, and ordinary users can edit personal information and participate in website activities. The information management module is responsible for publishing and classifying agricultural knowledge information to help users understand the latest agricultural knowledge dynamics; the agricultural knowledge classification module helps users to browse agricultural knowledge resources according to different types.

In the technical implementation, Django serves as the main back-end framework, writing logic and processing data through Python. HTML is used to build the front-end page of the website, giving the site a good user interface and user experience. The MySQL database management system is responsible for storing and managing all the data of the website, including user information, agricultural knowledge classification resources, etc. By taking the use of efficient development of Django framework and strong community support, combined with the simplicity and efficiency of Python, the flexibility of HTML and the stability of MySQL, this paper shows how to build a fully functional application of big data in precision agriculture, and provide a convenient platform for new farmers to exchange and obtain precision agriculture knowledge.

Keywords: Application of big data in precision agriculture; diango; MySQL

一、绪论

(一)选题背景和意义

随着全球人口的持续增长和城市化进程的加速,农业生产面临着日益严峻的挑战,包括耕地资源的有限性、气候变化带来的不确定性和食品安全问题。在这种背景下,传统农业生产模式难以满足现代化的需求,因此,精准农业作为一种新兴的农业管理方法逐渐受到重视。

大数据技术的迅速发展为精准农业的实施提供了强有力的支持。通过对海量农业数据的收集、分析和应用,农民可以更精确地了解土壤、作物和气候等信息,从而优化生产决策,提高资源利用效率和农业产量。

通过大数据分析,农民可以精准掌握作物的生长需求,实现按需施肥、灌溉和管理,极大地提升生产效率。精准农业利用大数据能够有效减少化肥和水资源的使用,降低环境污染,促进可持续发展。通过数据分析,农业生产可以更灵活地应对气候变化带来的影响,提前制定应对措施,从而减少风险。大数据的应用帮助农民更好地进行市场分析和决策,提升经济效益和竞争力。

(二)国内外研究现状

在国内,随着信息技术的发展,我国在精准农业研究上逐渐增多,主要集中在利用遥感技术、地理信息系统(GIS)、物联网和人工智能等技术进行数据的采集和分析。商品化的数据服务平台逐渐兴起,如农业大数据平台,提供农业生产数据的实时分析和决策支持。企业和科研机构合作,开发出针对特定作物的数据库和管理软件,提高了生产效率。尽管已有一定的进展,但整体应用仍然面临数据标准化和整合等问题,缺乏系统性的研究框架。未来研究需要进一步加强基础数据的采集、分析模型的构建以及与生产实践的结合。

国外在精准农业领域的研究起步较早,特别是在美国、荷兰和以色列等国。这些国家利用遥感技术、物联网(IoT)、无人机和卫星遥感等手段,开展高效的农业监测和管理。大数据分析工具被广泛应用于土壤监测、病虫害预测、气象数据分析等,加快了决策过程。美国的农业企业通过数据分析实现了气象数据和土壤数据的综合应用,优化了灌溉和施肥策略,显著提高了作物产量。荷兰则利用温室大数据分析,推动了蔬菜和花卉的智能化生产,提升了资源利用率。许多国家已将精准农业纳入农业政策,提供资金支持和技术培训,鼓励农民采用大数据技术。

(三)系统的特点

精准农业平台具有优化用户体验、内容丰富、跨平台兼容、版权管理、数据管理与安全及持续更新与优化等特点。平台通过简洁友好的界面设计和流畅的操作流程提升用户感受,并通过分享农业知识的功能增强可学性。平台提供土壤信息、作物信息、病虫信息、水源信息和产品信息的多种农业知识内容,确保农业知识传播性和用户数据安全。通过用户反馈和数据分析不断优化功能,适应技术发展和用户需求,保持市场竞争力和用户黏性。

二、系统需求分析

(一)业务需求分析

大数据在精准农业中的应用的业务主要涉及用户界面设计和交互体验。通过合理的用户界面设计和友好的操作流程,可以提升用户体验,降低使用者的学习门槛,增加用户粘性。并且提供多样化的体验方式和功能,如农业知识资讯、农业知识库等,以满足使用者的不同需求。以及在考虑用户在使用和管理人员在管理的时候,是否简单可行,没有任何计算机基础的用户能否使用,开发的大数据在精准农业中的应用在设计的时候秉承简单易学的理念,在用户进入系统后都会有固定的导航按钮,只要认字就可以操作完成,而且管理员在管理方面也只需简单的增删改查即可完成。

(二)功能需求分析

大数据在精准农业中应用的平台功能需求包括用户管理、农业知识内容管理、搜索和增减等方面。用户管理功能需要提供便捷的注册和登录、个人资料管理以及账户安全保障;农业知识内容管理需维护一个丰富的农业知识库,并支持内容分类、标签和列表管理;搜索功能需具备智能搜索能力。通过这些功能,平台可以提供全面优质的服务,满足用户的多样化需求。

(三)数据需求分析

在精准农业平台中,数据需求分析涵盖多个关键领域,管理员需要处理以下几方面的功能需求:

(1)系统用户:管理员需要管理平台中的所有用户,包括管理员和普通用户,涉及用户的添加、信息修改、账号删除以及数据查询,力求用户数据的准确性和安全性。

(2)通知公告管理:管理员负责管理平台上的通知公告发布,以便用户获取最新的农业知识信息。

(3)土壤信息管理:管理员需要管理土壤信息的添加、删除和修改,以便用户查找和浏览不同土壤的农业知识点。

(4)作物信息管理:管理员需要维护作物信息,包括作物信息的增加、修改和删除,力求作物信息的及时性。

(5)病虫信息管理:管理员需要维护病虫信息,包括病虫信息的增加、修改和删除,力求病虫信息的及时性,以便用户预防病虫。

(6)水源信息管理:管理员需要维护水源信息,包括水源信息的增加、修改和删除,以便用户引水灌溉。

(7)产品信息管理:管理员需要维护产品信息,包括产品信息的增加、修改和删除,以便用户查找需要的产品知识。

(8)产品分类管理:管理员需要维护产品分类信息,包括产品分类信息的增加、修改和删除,以便用户查找更具有逻辑性。

通过以上各项功能需求分析,管理员能够有效地管理大数据精准农业平台的各项数据和功能,提供良好的用户体验和系统运行效率。

图2-1管理员角色用例图

在大数据在精准农业中的应用中,用户查看系统信息功能需求,以下是用户在系统中的功能需求:

(1)注册功能:新用户可以在平台上进行注册,填写必要的个人信息,创建账号以访问平台的所有功能。

(2)首页:注册用户在登录后可访问平台首页,浏览最新的农业各种数据分析图表。

(3)通知公告管理:用户可以查看管理员发布的通知公告,以便了解最新的动态和重要信息。

(4)土壤信息管理:用户可以查看平台发布的土壤信息详情。

(5)作物信息管理:用户可以查看平台发布的作物信息详情。

(6)病虫信息管理:用户可以查看平台发布的病虫信息详情。

(7)水源信息管理:用户可以查看平台发布的水源信息详情。

(8)产品信息管理:用户可以通过产品分类进行查看平台发布的产品信息详情。

通过以上各项功能需求分析,管理员能够有效地管理精准农业平台的各项数据和功能,普通用户也能获得良好的使用体验,享受丰富的农业知识资源。

图2-2普通用户角色用例图

三、总体设计

(一)系统架构

大数据在精准农业中的应用的系统架构包括前端和后端两大部分。前端负责用户界面设计和用户交互功能,包括展示系统用户、通知公告管理、土壤信息管理的增加等内容,并提供用户登录、注册、查看各农业知识内容等功能。后端包括应用服务器和数据库服务器,应用服务器处理业务逻辑如用户认证和农业知识管理,数据库服务器存储用户信息和农业知识数据。系统功能模块包括系统用户、通知公告管理、土壤信息管理、作物信息管理、病虫信息管理、水源信息管理和产品信息管理,分别负责通知公告管理、用户注册和信息管理、农业知识分类和农业知识库维护。系统通过用户认证、权限管理和数据加密确保安全性,通过数据库备份和数据校验保障数据完整性,采用模块化设计和代码规范注重扩展性和可维护性,同时,系统注重扩展性和可维护性,采用模块化设计和代码规范,以提供优质的在线学习体验。下图是具体的b/s架构图:

图3-1 系统B/S结构

(二)系统功能模块设计

在大数据在精准农业中的应用的整体架构确定后,主要功能模块分为管理员和用户两部分。前台服务于用户,包括后台首页、通知公告管理、土壤信息管理、作物信息管理、病虫信息管理、水源信息管理、产品信息管理等查看功能。后台模块则为管理员提供服务,包括系统系统用户、后台首页、通知公告管理、土壤信息管理、作物信息管理、病虫信息管理、水源信息管理、产品信息管理等管理功能。

确定各模块后,设计每个模块的功能特点,并提取出各模块的公共部分是至关重要的。这有助于提高系统的可维护性和扩展性,同时减少重复开发工作。通过合理设计功能模块,系统能更高效地满足用户需求,提升用户体验,确保系统的稳定运行和管理。功能图如下所示:

图3.1大数据在精准农业中的应用功能模块图

1.页面涉及

大数据在精准农业中的应用的管理页面则以简单的上下结构为主,便于管理员进行操作和管理。这样的设计风格有助于提升用户体验,使页面布局清晰明了,同时也符合现代网页设计的美观和简洁原则。

2.用户模块设计

(1)用户模块结构图

这个网站的用户分为管理员和普通用户两种模块。管理员负责管理,用户随时可以查阅,但用户还多了一个注册功能,以便能够注册使用系统。管理员用户在系统中有着操作权限和功能,确保了系统的一致性和易用性。如下图:

图3.2用户模块结构图

(2)各个结构的具体业务逻辑

a.查询用户信息:设计基础的查询功能,允许用户根据用户ID查询用户信息。此功能主要用于管理员查询用户信息和用户自行查询个人信息。

b.修改用户信息:用户可以根据需要修改个人基本信息,包括姓名、密码、头像等。这种操作可以提高用户个性化体验。

c.增加用户:用户可以通过注册获取账号,成为系统的注册用户,以便享受系统提供的服务和功能。

d.删除用户信息:管理员具有将用户加入黑名单的权限,但无法直接删除用户信息。将用户加入黑名单后,用户将被禁止登录系统,保障系统安全和用户管理的便利性。

3.土壤信息管理模块设计

(1)土壤信息管理模块结构图

大数据在精准农业中的应用需要一个完善的土壤信息管理模块来存储和管理大量的土壤知识信息。用户可以浏览土壤知识信息,管理员则具有添加、修改、删除土壤知识的权限,这样的土壤信息管理模块能够有效地组织和管理土壤知识信息,提供用户学习土壤知识的便利性,同时为管理员提供土壤知识管理的功能,确保系统的正常运行和用户体验。具体的结构图如下:

图3.4农业知识模块结构图

(2)各个结构的具体业务逻辑

a.添加土壤信息:管理员具有添加土壤知识的权限,可以新增土壤知识信息到系统中。

b.修改土壤信息:管理员可以对现有土壤知识信息进行修改。

c.删除土壤信息:管理员可以删除不需要的土壤知识信息,确保系统中的土壤知识信息及时更新和清晰。

d.搜索土壤信息:用户可以通过关键词搜索感兴趣的土壤信息。

e.查看土壤信息:用户可以通过关键词搜索感兴趣的土壤信息,然后进行查看详情。

(三)数据库及模型设计

1.数据库概要设计

在大数据在精准农业中的应用的总的E-R图中,实体之间的关系包括一对一、多对一、一对多和多对多关系。例如,用户表和农业知识库表之间可能存在多对多的关系,一个用户可以选择多条农业知识,同时一条农业知识也可以被多个用户选择,这种关系可以用一个连接表来表示。通过总的E-R图的设计,可以清晰地展现各个实体之间的关系,为数据库表格的设计提供依据。如下图是平台的总E-R图。

图3.5系统总体E-R图

2.数据库模块设计

数据库表结构文档

数据库名:project07394

文档版本:1.0.0

文档描述:数据库设计文档

表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

用户编号:

表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

更新时间:

表code_token

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

code_token_id

int

10

0

N

Y

2

token

varchar

255

0

Y

N

3

code

varchar

255

0

Y

N

验证码

4

expire_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

失效时间

5

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间

6

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表crop_information (作物信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

crop_information_id

int

10

0

N

Y

作物信息ID

2

crop_name

varchar

64

0

Y

N

作物名称

3

planting_date

date

10

0

Y

N

种植日期

4

planting_quantity

int

10

0

Y

N

0

种植数量

5

planting_location

varchar

64

0

Y

N

种植位置

6

growth_status

varchar

64

0

Y

N

生长状态

7

expected_production_date

date

10

0

Y

N

预产日期

8

predicted_production

varchar

64

0

Y

N

预测产量

9

crop_description

text

65535

0

Y

N

作物描述

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表disease_and_pest_information (病虫信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

disease_and_pest_information_id

int

10

0

N

Y

病虫信息ID

2

disease_and_pest_names

varchar

64

0

Y

N

病虫名称

3

prevention_and_control_methods

varchar

64

0

Y

N

防治方法

4

matters_needing_attention

text

65535

0

Y

N

注意事项

5

hazard_description

text

65535

0

Y

N

危害描述

6

remarks_content

text

65535

0

Y

N

备注内容

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

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:

表notice_announcement (通知公告)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

notice_announcement_id

int

10

0

N

Y

通知公告ID

2

announcement_number

varchar

64

0

Y

N

公告编号

3

announcement_title

varchar

64

0

Y

N

公告标题

4

announcement_date

date

10

0

Y

N

公告日期

5

announcement_content

text

65535

0

Y

N

公告内容

6

announcement_remarks

text

65535

0

Y

N

公告备注

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表ordinary_users (普通用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

ordinary_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

更新时间

表product_classification (产品分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

product_classification_id

int

10

0

N

Y

产品分类ID

2

product_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

更新时间

表product_information (产品信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

product_information_id

int

10

0

N

Y

产品信息ID

2

product_name

varchar

64

0

Y

N

产品名称

3

product_classification

varchar

64

0

Y

N

产品分类

4

product_inventory

int

10

0

Y

N

0

产品库存

5

product_quality

varchar

64

0

Y

N

产品质量

6

storage_location

varchar

64

0

Y

N

存放位置

7

product_description

text

65535

0

Y

N

产品描述

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表soil_information (土壤信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

soil_information_id

int

10

0

N

Y

土壤信息ID

2

soil_name

varchar

64

0

Y

N

土壤名称

3

distribution_location

varchar

64

0

Y

N

分布位置

4

soil_moisture

varchar

64

0

Y

N

土壤湿度

5

soil_ph_value

varchar

64

0

Y

N

土壤PH值

6

oxygen_content

varchar

64

0

Y

N

氧气含量

7

soil_condition

varchar

64

0

Y

N

土壤状态

8

status_description

text

65535

0

Y

N

状态描述

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

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

创建时间:

表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

更新时间:

表water_source_information (水源信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

water_source_information_id

int

10

0

N

Y

水源信息ID

2

water_source_number

varchar

64

0

Y

N

水源编号

3

location_of_water_source

varchar

64

0

Y

N

水源位置

4

water_source_reserves

varchar

64

0

Y

N

水源储量

5

water_source_status

varchar

64

0

Y

N

水源状态

6

water_source_description

text

65535

0

Y

N

水源描述

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

四、功能实现

大数据在精准农业中的应用的详细设计与实现主要基于需求分析和总体设计,包括界面设计和业务逻辑实现两方面。界面设计包括系统用户、通知公告管理、土壤信息管理、作物信息管理、病虫信息管理、水源信息管理和产品信息管理的设计,以提升用户体验;业务逻辑实现包括用户认证、农业知识库管理等功能的实现,确保系统运行稳定和数据安全。通过这些设计和实现,大数据在精准农业中的应用能够提供用户友好的界面和功能操作,满足用户需求,提升系统的易用性和效率。

(一)普通用户功能实现

1.普通用户功能实现

普通用户是大数据在精准农业中的应用的重要入口,通过页面布局设计、系统信息展示、功能入口设计、搜索功能、用户登录与注册、等功能实现,为用户提供清晰的信息展示、便捷的功能入口和良好的用户体验。主页不仅展示系统信息和农业各项知识点的图表,还提供搜索功能和用户账号操作入口,确保用户快速访问所需信息,提升系统的可用性和用户满意度。其主界面展示如下图4.1所示。

如下图:

图4.1大数据在精准农业中的应用主界面

大数据在精准农业中的应用中,由于项目仅用于测试目的,用户登录首页展示的图片和数据部分可能来自项目本地或数据库。为了提高页面的效率和一致性,可以将公共样式如搜索部分、页头部分等进行抽取,形成公共样式文件,然后在HTML页面中引入这些公共样式文件。这样做有助于减少重复代码,提高页面加载速度,同时确保页面风格的统一性和维护的便利性。

关键代码如下:

2.用户注册功能实现

用户可以通过注册获取账户,使用账号和密码进行登录,以便访问系统功能。其用注册界面展示如下图4.2所示。

图4.2大数据在精准农业中的应用用户注册界面

关键代码如下:

3.用户登录功能模块实现

用户登录功能模块是大数据在精准农业中的应用中的关键功能之一,通过输入正确的用户名和密码,用户可以登录系统并访问其功能。实现用户登录功能的步骤包括验证用户输入的用户名和密码是否匹配数据库中的记录,若匹配则允许用户登录,否则提示用户重新输入。在登录过程中,需要确保用户输入的信息安全性,如密码加密存储和传输。登录成功后,用户可以访问个人信息、农业知识库等页面,提升系统的用户体验和安全性。用户登录界面如下图4.3所示。

图4.3大数据在精准农业中的应用登录界面

关键代码如下:

4.土壤信息查看功能实现

用户可以在通过搜索土壤名称或者土壤状态查看土壤信息详情。界面如图4.4所示:

图4.4大数据在精准农业中的应用用户土壤信息管理界面

5.查看作物信息功能实现

用户可以通过作物名称和生长状态查询作物信息,并点击详情进行查看,具体的实现界面如下图4.5所示:

图4.5用户的作物信息管理界面

6.查看病虫信息功能实现

用户可以通过病虫名称查询病虫信息,并点击详情进行查看,具体的实现界面如下图4.6所示:

图4.6用户的病虫信息管理界面

7.查看水源信息功能实现

用户可以通过水源编号或水源状态查询水源信息,并点击详情进行查看。具体的实现界面如下图4.7所示:

图4.7用户的水源信息管理界面

(二)系统后台功能实现

1.后台用户登录功能实现

大数据在精准农业中的应用中,后台管理员可以通过账户名和密码登录。用户输入完整账户信息后,系统会验证是否有空数据,再核对账户名和密码与数据库信息是否一致,验证通过后自动跳转至系统首页,否则提示错误信息。否则将会提示相应错误信息,用户登录界面如下图4.8所示。

图4.8后台登录界面

2.系统用户功能实现

管理员需要管理系统中的管理员、用户,包括添加新用户、修改用户信息、删除用户账号以及查询用户数据。具体的实现界面如下图:

图4.9系统用户界面

3.通过公告管理功能实现

管理员对通知公告信息进行添加,修改,删除以及查询等,具体的实现界面如下图:

图4.10管理员的通知公告管理界面

4.土壤信息管理功能实现

管理员对土壤信息管理内的信息进行增删改查。具体的实现界面如下图:

图4.11土壤信息管理界面

5.作物信息管理功能实现

管理员对作物信息进行添加,修改,删除以及查询等。具体的实现界面如下图:

图4.12管理员的作物信息管理界面

五、系统测试

(一)系统测试目的

测试是为了验证大数据在精准农业中的应用在功能、性能、安全性和用户体验等方面的表现。通过测试,可以发现并修复潜在的问题和缺陷,确保系统的正常运行和稳定性。功能验证确保各项功能按设计要求运行;性能评估评估系统的响应时间和并发处理能力;安全检测确保系统的身份认证和数据传输安全;用户体验评估提升界面友好性和操作流程;兼容性测试确保系统在不同设备和浏览器上的兼容性。通过全面的测试,系统将更可靠地支持管理员工作,并提供优质的用户体验。

(二)系统可用性测试

网站的可用性测试是测试网站最基本的功能,比如鼠标点击是否可用,页面跳转是否正常等。下面是具体的测试结果。

表6-1大数据在精准农业中的应用可用性测试

可用性测试方面

测试内容

导航测试

- 检查系统导航结构是否清晰明了

- 测试用户能否快速找到所需功能和信息

功能测试

- 测试用户注册、登录、土壤信息浏览等功能是否正常运作

响应时间测试

- 测试系统在不同网络环境下的响应速度

- 确保用户操作时不会遇到明显延迟

错误处理测试

- 测试系统在用户输入错误或操作异常时的提示信息和处理方式

- 确保用户能清晰了解错误原因并得到帮助

跨平台兼容性测试

- 测试系统在不同操作系统和设备上的兼容性

- 确保用户无论使用何种设备都能正常访问系统

用户反馈测试

- 收集用户反馈意见和建议

- 了解用户使用体验和需求

(三)系统经典测试用例

对网站的主要页面和功能点的测试用例如下:

(1)用户登陆网站测试用例如表 6-2 所示。

表6-2用户登录网站测试用例

测试用例名称

用户登录网站

测试目的

验证用户能够成功登录网站

前提条件

用户已注册账户且拥有有效的账号和密码

测试步骤

1. 打开网站登录页面

2. 输入有效的账号和密码

3. 点击登录按钮

预期结果

用户成功登录,系统跳转至用户首页

测试数据

有效的账号和密码

预期行为

- 用户输入正确的账号和密码

- 系统验证账号和密码是否匹配数据库中的信息

- 登录成功后跳转至用户首页

替代路径

- 如果账号或密码错误,系统应提示错误信息并阻止登录

- 如果用户输入为空数据,系统应提示输入有效信息

附加信息

可以考虑测试登录页面的响应速度和错误处理机制

(2)土壤信息浏览测试用例如表 6-3 所示

表6-3土壤信息浏览测试用例

测试用例名称

土壤信息浏览

测试目的

验证用户能够成功浏览土壤信息

前提条件

用户已登录系统且有权限访问土壤信息管理模块

测试步骤

1. 进入土壤信息管理模块

2. 浏览最新添加土壤信息

3. 查看具体土壤信息内容

预期结果

用户能够顺利浏览土壤信息,查看详细内容

测试数据

最新添加土壤信息

预期行为

- 用户能够进入土壤信息管理模块并浏览土壤信息列表

- 用户能够点击具体土壤信息查看详细内容

- 系统应展示土壤信息的标题、内容、添加时间等信息

替代路径

- 如果土壤信息加载缓慢,用户应能够等待或刷新页面

- 如果土壤信息内容有误或不完整,用户应能够报告问题或反馈

附加信息

可以考虑测试土壤信息页面的响应速度、页面布局和用户交互等方面

(3)土壤信息添加信息测试用例如表6-4所示

表6-4土壤信息添加测试用例

测试用例名称

添加土壤信息

测试目的

验证管理员能够成功添加土壤信息

前提条件

管理员已登录系统且具有添加土壤信息的权限

测试步骤

1. 进入土壤信息管理页面

2. 点击添加土壤信息按钮

3. 输入土壤信息(土壤名称状态等)

4. 上传土壤信息相关资料

5. 确认并保存土壤信息

预期结果

管理员成功添加土壤信息土壤信息显示在土壤信息列表中

测试数据

土壤的名称、湿度、PH值信息等

预期行为

- 管理员能够顺利进入土壤信息管理页面并找到添加土壤信息按钮

- 管理员能够填写完整的土壤信息

- 系统应保存土壤信息并在土壤信息列表中显示新增的土壤信息

替代路径

- 如果土壤信息填写不完整,系统应提示错误信息并阻止保存

附加信息

可以考虑测试土壤信息添加页面的响应速度、信息验证和上传功能等方面

(四)测试总结

经过土壤信息浏览、添加功能的测试,结果显示系统表现良好。用户能够顺利浏览最新通知公告,管理员成功添加土壤信息,系统响应速度快且功能正常。这些测试结果表明系统在功能性和用户体验方面表现出色,但仍需持续监测和优化以确保系统稳定性和用户满意度。

结 论

大数据在精准农业中的应用通过采用前沿技术和精心设计,实现了卓越的功能、性能、安全性和用户体验。前端使用了HTML确保了用户界面的直观性和流畅性。后端采用了Django框架和Python编程语言,结合MySQL数据库,保障了系统的高效运行和数据的完整存储。用户可以方便地进行注册、登录、农业知识浏览、资讯管理和农业知识库管理等操作,所有功能都经过严格的验证,确保准确性和稳定性。

在性能方面,系统通过负载测试和压力测试,评估了响应时间和并发处理能力,确保在高并发访问下的稳定性和高效性。安全性方面,通过严格的身份认证和数据加密技术,确保了数据传输的安全,防止数据泄露和非法访问。此外,系统进行了兼容性测试,确保在不同设备和浏览器上的一致性体验。

令人感慨的是,通过不断优化用户界面和操作流程,用户的满意度显著提升。大数据在精准农业中的应用不仅为新农人提供了丰富的农业知识资源库,更通过高质量的技术保障,为用户创造了一个安全、可靠、便捷的农业知识世界。正是这些努力,使得大数据在精准农业中的应用不仅仅是一个工具,更成为了新农人心中学习的课堂。这种成就让人感慨不已,精准农业平台以其卓越的表现和深刻的用户影响,展现了技术与农业知识结合的美妙成果。

参考文献

[1]李思洋.基于大数据分析的精准农业机械植保策略研究[J].南方农机,2024,55(08):192-194.

[2]张艳艳.农技推广中的大数据技术应用[J].农业工程技术,2023,43(35):84-85.DOI:10.16815/j.cnki.11-5436/s.2023.35.038.

[3]李英.大数据在农业经济管理中的应用研究[J].山西农经,2023,(14):79-81.DOI:10.16675/j.cnki.cn14-1065/f.2023.14.025.

[4]李若谣.《农业生产管理的数字化技术及体系》(一、二章)汉译实践报告[D].黑龙江大学,2023.DOI:10.27123/d.cnki.ghlju.2023.001199.

[5]赵永晖.大数据信息技术的应用研究[J].中国多媒体与网络教学学报(中旬刊),2022,(06):38-41.

[6]郭晓磊.物联网技术在精准农业中的应用研究[J].种子科技,2022,40(10):136-138.DOI:10.19904/j.cnki.cn14-1160/s.2022.10.046.

[7]宋永嘉,刘宾,魏暄云,等.大数据时代无线传感技术在精准农业中的应用进展[J].江苏农业科学,2021,49(08):31-37.DOI:10.15889/j.issn.1002-1302.2021.08.005.

[8]郭伟光.精准农业的信息化技术实践应用——评《低空遥感技术及其在精准农业中的应用》[J].中国农业资源与区划,2021,42(01):144+152.

[9]Vladimir B ,Viktor M .Mathematical modeling of evaluating the effectiveness of using RSD data in precision farming[J].Procedia Computer Science,2021,190122-129.

[10]Ahmad S B ,Fu N H .Big Data and AI Revolution in Precision Agriculture: Survey and Challenges[J].IEEE ACCESS,2021,9110209-110222.

[11]白娅男.大数据系统在精准施肥中的应用研究[D].广西大学,2020.DOI:10.27034/d.cnki.ggxiu.2020.000999.

[12]曹辉.水稻药肥精准施用大数据原型平台设计与实现[D].电子科技大学,2020.DOI:10.27005/d.cnki.gdzku.2020.001073.

[13]李杨,张海峰,刘克宝,等.大数据在精准农业上的应用[J].农家参谋,2020,(05):5.

[14]张垒,时恩早.精准农业中大数据的应用[J].计算机产品与流通,2019,(10):166.

[15]Computation - Neural Computation; Investigators from University of Fortaleza Have Reported New Data on Neural Computation (Adapting Weather Conditionsbased Iot Enabled Smart Irrigation Technique In Precision Agriculture Mechanisms)[J].Agriculture Week,2019,

[16]Robotics; Studies from D. Bochtis and Colleagues Provide New Data on Robotics (A Case-based Economic Assessment of Robotics Employment In Precision Arable Farming)[J].Journal of Robotics & Machine Learning,2019,

[17]孙琴.精准农业知识服务平台研究[D].湖南农业大学,2019.DOI:10.27136/d.cnki.ghunu.2019.000882.

[18]杨建香.大数据在精准农业上的应用[J].农民致富之友,2019,(12):214.

[19]漆海霞,林圳鑫,兰玉彬.大数据在精准农业上的应用[J].中国农业科技导报,2019,21(01):1-10.DOI:10.13304/j.nykjdb.2018.0342.

[20]Information Technology - Data Analytics; Study Results from University of Nebraska in the Area of Data Analytics Reported (BIG DATA ANALYTICS AND PRECISION ANIMAL AGRICULTURE SYMPOSIUM: Machine learning and data mining advance predictive big data analysis in precision animal ...)[J].Agriculture Week,2018,307-.

致  谢

在完成这个关于大数据在精准农业中的应用的探讨过程中,我想要向所有支持和帮助过我的人致以诚挚的感谢。首先,感谢我的家人,是你们默默的付出和支持,让我有了安心学习的环境和坚定追求梦想的勇气。其次,感谢我的同学和朋友,在我学习和工作中给予我无尽的支持和理解,他们的陪伴和鼓励是我不断前行的动力源泉, 是他们在学习过程中对我的帮助和鼓励,让我感受到集体的力量和友情的温暖,让我不再感到迷茫和孤单。其次,感谢我的导师,她在学术和职业道路上给予我宝贵的指导和建议,让我不断成长和进步,使我更加懂得谦逊和坚韧。没有指导老师耐心指导,悉心教诲,就不会有我在学术研究上的进步。您们的支持和鼓励是我前行的动力和勇气,让我在追求梦想的路上永不停步。无论遇到怎样的困难和挑战,我都会倍加珍惜这份支持和鼓励,更加努力学习,不负众望,不负时光。再次衷心感谢您们!

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

更多推荐