食用菌监控系统控制节点的设计与实现
食用菌监控系统控制节点的设计与实现(含源码和安装步骤)[2019122001]
食用菌的工厂化生产效益非常好,但是由于在食用菌种植过程中,受空气中的二氧
化碳浓度、相对湿度、温度以及光照强度等环境因素影响很大,种植风险也非常高。为
了使食用菌处在适宜的环境下生长,有效地提高食用菌的产量和品质,本课题应运而生。
本论文所涉及的主要研究内容是食用菌监控系统中的控制节点设计与实现,使用了
串口通信技术、套接字 Socket 网络编程技术、和 Protobuf 消息编解码技术。整体控制系
统均采用 C 语言作为开发语言,sqlite3 作为配置数据库,在此基础上提出了一种基于
Actor 模式的软件构架,实现了对菇房环境参数的采集、过滤以及控制。
本论文重点介绍食用菌监控系统中硬件节点的选型,控制节点的架构设计,以及各
个子模块的功能。此外还对选题的背景、研究意义、主要研究内容和研究成果、开发过
程中使用的工具与技术、以及系统运行的效果等做了简要的介绍。
关键字:食用菌 串口通信 Actor 模式 Protobuf
1 绪论6
1.1 选题背景和研究意义. 6
1.2 系统开发及运行环境. 7
1.3 开发工具. 7
2 系统分析8
2.1 业务流程分析. 8
2.2 系统功能提取. 8
2.3 系统用例分析. 9
3 系统设计.11
3.1 硬件选型 11
3.1.1 ARM 开发板 . 11
3.1.2 三菱 PLC 控制器 . 12
3.2 软件构架 13
3.2.1 Actor 模式 . 13
3.2.2 Sqlite3 数据库的设计 16
3.2.3 基于 protobuf 消息协议的设计 17
4 系统的实现.20
4.1 日志模块实现 20
4.2 网络通信模块实现 21
4.3 串口通信模块实现 22
4.4 系统配置模块实现 28
4.5 数据存储模块实现 29
5 系统的部署.32
5.1 protobuf-c 安装和配置 . 32
5.2 交叉编译器的安装和配置 32
5.3 Tftp 服务器搭建 33
5.4 Minicom . 34
5.5 系统配置参数 35
6 系统的测试.36
6.1.1 串口测试 36
6.1.2 网络模块测试 37
7 总结与展望.39
参考文献41
致谢42

2.1 业务流程分析
在食用菌种植业中,传统的种植方法是人工测量环境参数的变化,然后主动地去设
置环境的参数,打开相应的控制器的开关。在这个过程中,首先操作人员对环境的判断
是不连续的,因此设置环境参数的过程也无法做到连续。此外,操作人员难以对控制过
程中的各项参数实现连续和完整的记录,因而难以形成完整的、系统的、可用于后续查 询分析的数据记录。由于上述问题,技术人员的种植经验难以无丢失的得以延续。鉴于
上述分析,可以确定食用菌监控系统的两个基本的需求:连续的测量并控制环境的参数
和记录食用菌种植过程中的数据。
2.2 系统功能提取
因此,我们针对市场上出现的需求,提出了如图 2-1 所示的一种方案:
食用菌的种植过程,主要对温度、湿度、光照、二氧化碳浓度等参数比较敏感,因
此我们选择包括温度、湿度、光照、二氧化碳浓度在内的多种传感器来参与环境的参数
采集。另外为了能够让环境的参数发生改变,我们需要使用包括风机、空调、加湿器、
灯带等控制单元,负责接收控制指令来控制环境参数的变化。
而传感器以及控制器事实上接收的强电信号,因此我们需要 PLC 中控系统单元来作 为电路和软件系统的缓冲控制单元。而真正负责采集以及控制的计算单元被设计在基于
ARM 开发板的数据采集模块之中。这就是硬件控制节点部分所要涉及到的内容。
2.3 系统用例分析
通过上述的分析, 系统的功能分为采集、控制、存储三个部分。具体的用例图如图
所示:
图 2-2 硬件控制节点部分
食用菌生产环境监控方法的流程图如下:
食用菌的工厂化生产效益非常好,但是由于在食用菌种植过程中,受空气中的二氧
化碳浓度、相对湿度、温度以及光照强度等环境因素影响很大,种植风险也非常高。为
了使食用菌处在适宜的环境下生长,有效地提高食用菌的产量和品质,本课题应运而生。
本论文所涉及的主要研究内容是食用菌监控系统中的控制节点设计与实现,使用了
串口通信技术、套接字 Socket 网络编程技术、和 Protobuf 消息编解码技术。整体控制系
统均采用 C 语言作为开发语言,sqlite3 作为配置数据库,在此基础上提出了一种基于
Actor 模式的软件构架,实现了对菇房环境参数的采集、过滤以及控制。
本论文重点介绍食用菌监控系统中硬件节点的选型,控制节点的架构设计,以及各
个子模块的功能。此外还对选题的背景、研究意义、主要研究内容和研究成果、开发过
程中使用的工具与技术、以及系统运行的效果等做了简要的介绍。
关键字:食用菌 串口通信 Actor 模式 Protobuf
1 绪论6
1.1 选题背景和研究意义. 6
1.2 系统开发及运行环境. 7
1.3 开发工具. 7
2 系统分析8
2.1 业务流程分析. 8
2.2 系统功能提取. 8
2.3 系统用例分析. 9
3 系统设计.11
3.1 硬件选型 11
3.1.1 ARM 开发板 . 11
3.1.2 三菱 PLC 控制器 . 12
3.2 软件构架 13
3.2.1 Actor 模式 . 13
3.2.2 Sqlite3 数据库的设计 16
3.2.3 基于 protobuf 消息协议的设计 17
4 系统的实现.20
4.1 日志模块实现 20
4.2 网络通信模块实现 21
4.3 串口通信模块实现 22
4.4 系统配置模块实现 28
4.5 数据存储模块实现 29
5 系统的部署.32
5.1 protobuf-c 安装和配置 . 32
5.2 交叉编译器的安装和配置 32
5.3 Tftp 服务器搭建 33
5.4 Minicom . 34
5.5 系统配置参数 35
6 系统的测试.36
6.1.1 串口测试 36
6.1.2 网络模块测试 37
7 总结与展望.39
参考文献41
致谢42
2.1 业务流程分析
在食用菌种植业中,传统的种植方法是人工测量环境参数的变化,然后主动地去设
置环境的参数,打开相应的控制器的开关。在这个过程中,首先操作人员对环境的判断
是不连续的,因此设置环境参数的过程也无法做到连续。此外,操作人员难以对控制过
程中的各项参数实现连续和完整的记录,因而难以形成完整的、系统的、可用于后续查 询分析的数据记录。由于上述问题,技术人员的种植经验难以无丢失的得以延续。鉴于
上述分析,可以确定食用菌监控系统的两个基本的需求:连续的测量并控制环境的参数
和记录食用菌种植过程中的数据。
2.2 系统功能提取
因此,我们针对市场上出现的需求,提出了如图 2-1 所示的一种方案:
食用菌的种植过程,主要对温度、湿度、光照、二氧化碳浓度等参数比较敏感,因
此我们选择包括温度、湿度、光照、二氧化碳浓度在内的多种传感器来参与环境的参数
采集。另外为了能够让环境的参数发生改变,我们需要使用包括风机、空调、加湿器、
灯带等控制单元,负责接收控制指令来控制环境参数的变化。
而传感器以及控制器事实上接收的强电信号,因此我们需要 PLC 中控系统单元来作 为电路和软件系统的缓冲控制单元。而真正负责采集以及控制的计算单元被设计在基于
ARM 开发板的数据采集模块之中。这就是硬件控制节点部分所要涉及到的内容。
2.3 系统用例分析
通过上述的分析, 系统的功能分为采集、控制、存储三个部分。具体的用例图如图
所示:
图 2-2 硬件控制节点部分
食用菌生产环境监控方法的流程图如下:
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/qrs/229.html