好氧发酵菌剂快速筛选系统 V1.0
- 使用说明
版本
|
1.0
|
文档状态:
|
编辑
|
作者:
|
|
负责人:
|
|
创建日期:
|
20XX年11月15日
|
更新日期:
|
20XX年11月21日
|
|
修订历史
目录
1 简介
1.1 编写目的
1.2 使用对象
1.3 产品范围
2 产品概述
2.1 总体框架
2.2 系统架构
2.3 模块描述
3 使用说明
3.1 流程说明
3.1.1 整体流程
3.1.2 系统前后端传输数据流程
3.2 功能模块说明
3.2.1 实验管理模块
3.2.2 设备和传感器管理模块
3.2.3 数据展示和分析模块
3.2.4 通用服务模块
3.3 对外接口说明
3.3.1 堆肥终端设备数据上传接口
3.3.2 堆肥终端设备指令接收接口:
1 简介
好氧发酵技术是有机废弃物资源化利用的主要方法之一,而微生物在好氧发酵过程中扮演着举足轻重的角色,对于腐熟周期的缩短、品质的提升具有促进作用。在好氧发酵过程中添加外源微生物接种菌剂可以促进好氧发酵进入高温期、加快腐熟进程。为了筛选出更为优质的好氧发酵菌剂需要大量的好氧发酵实验和指标进行验证,为此我们推出了好氧发酵菌剂的快速筛选系统。该系统旨在基于好氧发酵设备及物联网提供持续的好氧发酵的指标监控、图表绘制以及后续的结果分析,以促进有机废弃物好氧发酵微生物调控技术的研发。
1.1 编写目的
本文档为使用说明文档,为产品的使用与维护提供信息基础。
1.2 使用对象
本文档的使用对象主要为好氧发酵菌剂测试与使用人员。
1.3 产品范围
本系统主要专注于为筛选好氧发酵菌剂的堆肥实验提供辅助服务,在该系统中实现实验管理、实时数据监控、数据储存、图表绘制以及后续的数据分析等功能,主要包括如下模块:
1)实验管理模块:
包括实验的创建和修改等。
2)设备和传感器管理模块:
包括好氧发酵终端设备和其传感器的创建和修改等。
3)数据展示和分析模块:
包括好氧发酵终端设备数据的实时展示以及后续结果的分析等。
4)通用服务模块:
包括用户验证、账户服务等。
及以下对接到好氧发酵终端设备上的接口:
1) 数据上传接口:
好氧发酵终端设备通过该接口上传信息和数据到系统。
2) 指令传输接口:
系统通过该接口将指令传输到到好氧发酵终端设备。
2 产品概述
2.1 总体框架
好氧发酵菌剂的快速筛选系统采用了前后端分离的方式,其中后端主要负责处理数据,前端主要负责展示数据。总体框架如图2-1总体框架图所示。
图 2-1 总体框架图
2.2 系统架构
本系统主要使用的开发框架为Django和Vue.js,主要开发语言为python,数据库采用的是MySQL。系统前后端分离,前端主要采用Vue.js框架,后端主要采用Django框架,接口采用REST定义,系统架构如图2-2所示。
图 2-2 系统架构图
2.3 模块描述
l 实验管理模块
实验管理模块主要是给研究人员提供服务,研究员可以通过这一层创建、获取、更改实验的基本信息。实验基本信息包括实验内容、地点、起止时间以及实验包括的设备和传感器等等。
l 设备和传感器管理模块
设备和传感器管理模块主要是管理好氧发酵终端设备和其传感器的创建及认证密钥的分配、对其好氧发酵终端设备和其传感器的基本信息的储存和修改等。
l 数据展示和分析模块
数据展示和分析模块主要是实时展示实验好氧发酵终端设备中各个传感器的数据,以及对实验得到的数据结果进行初步分析。
l 通用服务模块
通用服务模块主要是提供公共服务,使用Django组件或者基于Django框架进行项目扩展。主要是通过Python代码实现,提供用户注册、登陆、验证、交易日志、账务服务等功能。
3 使用说明
3.1 流程说明
3.1.1 整体流程
1) 研究员先在实验管理模块创建实验(图3-1),具体需要填写实验的名字、实验地点、实验的具体描述、实验的起止时间、参与实验的全部人员、实验所需的设备。然后等待管理人员后台审核通过后即可开始实验。
图 3-1 创建实验
2) 实验开始后研究员可以随时通过该系统前端,在系统的实验界面查看实验好氧发酵终端设备的基本信息以及控制实验中各个好氧发酵终端设备的参数(图3-2)。
图 3-2 控制设备参数
3) 实验过程中研究员可通过该系统前端,在系统的实验界面点击设备名单独查看各个终端设备的传感器中的数据(图3-3),并可以在线调整图表的各项参数。
图 3-3 实验实时温度数据
4) 研究员也可在实验过程和实验结束后通过该系统前端,进入实验界面,点击Draw按钮,选择(图3-4)并查看(图3-5)当前实验所有堆肥终端设备的各项数据信息。
图 3-4选择要查看的实验设备及其他参数
图 3-5 实验详细数据图
5) 在实验结束后(即当前时间超过实验截至时间),实验界面会出现Analyse按钮,研究员可以通过点击该按钮对该实验结果进行初步的分析(图3-6)。
图 3-6 对实验进行初步分析
6) 研究员也可在实验过程中和实验结束后随时将各项实验数据下载到本地进行更进一步的分析(图3-7)。
图 3-7 实验数据下载
3.1.2 系统前后端传输数据流程
系统前后端数据访问采用REST的定义,通过HTTP get/put/post/patch/delete等方法完成。例如:
1)后端收到前端REST的get请求,根据请求内容,后端服务可以调用相应的数据库获取资源,也可以将数据库数据进行后续处理后获取资源,并返回资源。
2)前端收到后端反馈的数据后,更具反馈的数据内容对显示的界面进行更新。
3.2 功能模块说明
3.2.1 实验管理模块
研究人员通过实验管理模块对实验基本信息进行能管理,主要包括以下功能。
l 对实验进行批量管理(图3-8)或者是对单个实验信息(图3-9)进行修改。
图 3-8 实验管理
图 3-9 实验信息修改
l 管理员通过实验管理模块对实验进行审核(图3-10)。
图 3-10 实验审核
3.2.2 设备和传感器管理模块
设备和传感器管理模块主要是负责对堆肥终端设备和传感器的在线管理。主要有以下功能:
l 创建设备(图3-11)和传感器并分配用于认证的Key。
图 3-10 创建设备
l 对设备和传感器的各项基本信息进行修改。
3.2.3 数据展示和分析模块
数据展示和分析模块主要是实时展示实验堆肥终端设备中各个传感器的数据,以及对实验得到的数据结果进行初步分析。主要有以下功能。
l 堆肥终端设备的数据图表的实时绘制。
l 堆肥终端设备的数据储存和下载。
l 根据堆肥终端设备上传的数据对该好氧堆肥菌剂的筛选实验进行初步分析。
3.2.4 通用服务模块
通用服务模块主要是提供公共服务,使用Django组件或者基于Django框架进行项目扩展。主要是通过Python代码实现,本模块主要拥有以下功能:
l 用户创建及分配权限功能
创建用户并根据提供的信息为用户分配权限。
l 用户验证功能
对用户信息进行校验,确认用户名和密码是否匹配,用户信息是否正确。
l 用户日志功能
该模块可以将用户的信息修改记录和各项操作等详细信息记录到日志中,再将日志信息同步到数据库(图)。
图 3-10 实验审核
3.3 对外接口说明
3.3.1 堆肥终端设备数据上传接口
堆肥终端设备主要是物联网终端设备,包括各类单片机等,好氧发酵菌剂快速筛选系统提供了堆肥终端设备上传数据所用的REST接口,以及采用物联网常用的MQTT协议的接口。
数据上传的REST接口,如表3-1所示。
接口名称
|
数据上传接口
|
接口描述
|
该接口提供给堆肥终端设备上传数据所用
|
请求方法
|
POST
|
输入参数
|
参数名
|
类型
|
是否可以为空
|
说明
|
value
|
Float
|
否
|
上传数据的值
|
unit
|
String
|
否
|
上传数据的单位
|
measured_time
|
Datatime
|
是
|
测量数据的时间,为空时默认为当前时间
|
key
|
String
|
否
|
传感器的Key值,用于认证传感器
|
输出参数
|
参数名
|
类型
|
是否可以为空
|
说明
|
code
|
Int
|
否
|
状态码
|
message
|
String
|
时
|
状态码文字说明
|
data
|
Dict
|
否
|
上传成功的数据信息
|
表 3-1 数据上传的REST接口
数据上传的MQTT协议的接口,如表3-2所示。
接口名称
|
数据上传接口
|
接口描述
|
该接口提供给堆肥终端设备上传数据所用
|
发布路径
|
compostlab/{key}/post/data
|
发布路径参数
|
参数名
|
类型
|
是否可以为空
|
说明
|
key
|
String
|
否
|
传感器的Key值,用于认证传感器
|
输入参数
|
参数名
|
类型
|
是否可以为空
|
说明
|
value
|
Float
|
否
|
上传数据的值
|
unit
|
String
|
否
|
上传数据的单位
|
measured_time
|
Datatime
|
是
|
测量数据的时间,为空时默认为当前时间
|
表 3-2 数据上传的MQTT接口(无返回值)
3.3.2 堆肥终端设备指令接收接口:
该接口采用物联网常用的MQTT协议设计,用于从好氧发酵菌剂快速筛选系统发送指令到堆肥终端设备,从而达到远程控制设备的目的,具体的接口设计如表3-3所示。
接口名称
|
指令接收接口
|
接口描述
|
该接口用于接收好氧发酵菌剂快速筛选系统发送的指令
|
发布路径
|
compostlab/{key}/response
|
发布路径参数
|
参数名
|
类型
|
是否可以为空
|
说明
|
key
|
String
|
否
|
堆肥终端的Key值,用于认证堆肥终端设备
|
输入参数
|
参数名
|
类型
|
是否可以为空
|
说明
|
key
|
String
|
否
|
操作对象
|
value
|
String
|
否
|
操作内容
|
表 3-3 接受指令的MQTT接口