基于单片机的养殖场温度控制系统设计

博主主页:单片机辅导设计
博主简介:专注单片机技术领域和毕业设计项目。
主要内容:毕业设计、简历模板、学习资料、技术咨询。

文章目录

  • 主要介绍
  • 一、控制系统设计
  • 二、系统方案设计
    • 2.1 系统运行方案设计
    • 2.1.1 羊舍环境温度的确定
  • 三、 系统仿真
    • 仿真图
  • 总结
  • 目录


主要介绍

  本系统是基于单片机的养殖场温度控制,在系统的设计中主要还有温度采集、按键电路、显示电路、执行电路、报警电路、抗干扰电路等几部分电路组成整体系统来实现温度控制。系统用DS18B20数字传感器来检测环境温度,用五个按键来实现系统工作时间、监测温度及人工控制的实现,用LCD1602来显示环境温度,用DS18B20传感器将温度信号直接转化成9位串行数字信号传入单片机,单片机再将这些信号与其内部预设值做对比,用以判断单片机是否需要进行对应的动作,即是否进行水温的加热和是否需要进行报警动作,从而实现系统自动控制的目的。
  本设计采用单片机为核心,其特点有控制简单、易于实现,并且单片机还有造价低,程序方便调试,部分电路出现故障时不会影响其他部分的正常工作、维修简便等特点。
关键词:养殖场;单片机(STC89C51);温度传感器DS18B20;温度控制

一、控制系统设计

  目前在农村小规模的养殖户越来越多,养羊的周期时间相对较短且设备设施相对简单,对于北方寒冷的环境而言,控制羊舍的温度就显得尤为重要。目前,大多数的羊舍依然采用人工控制羊舍内的温度,控制精度低,反应不够及时,容易造成损失,另外,人工控制效率低,劳动强度大,在此过程中,不仅增加了生产的成本,浪费了人力,又很难达到较好的控制效果。借鉴于单片机在工业上应用的广泛经验,将其应用于养殖也会更为方便。高性价比单片机能在养殖业自动化方面提供硬件基础。利用单片机、温度采集器对羊舍的温度进行采集控制,科学合理的调节羊舍内的温度,对减少经济损失有着重要的现实意义。

二、系统方案设计

系统方案设计包括了系统运行方案设计和系统整体结构设计两个设计的内容。系统运行方案设计针对系统要求与系统工艺要求这两方面做出比较详细的设计方案。在系统运行方案设计这一基础设计上建立系统整体结构设计。
对于基于单片机的智能控制器来说,在硬件方面要考虑的主要是元器件的精确度以元器件的适用范围,在软件方面要考虑的主要是程序的兼容性和程序的可修改性。

2.1 系统运行方案设计

此系统是以STC89C52单片机为系统核心控制器,通过DS1820这一“一线总线”传感器实时采集羊舍内的温度参数,并将所采集到的数据通过对应的I/O端口传送给单片机,单片机将会对传送来的数据进行处理与判断,如果温度不满足对应的条件,就会发送对应的指令给控制模块,控制模块对执行设备进行驱动控制。通过LCD1602液晶显示器显示实时的温度、当前的操作模式和系统的运行状况。

2.1.1 羊舍环境温度的确定

在羊的养殖过程中,影响羊舍环境的参数有很多,本设计只选择温度作为研究对象,由于冬季温度的是羊在生长过程中影响最大的一个因素,查找不同的科学文献以及亲身经验得出相应的结论

三、 系统仿真

整个软件系统由各个模块化的软件系统组成,整体系统流程图如图4-1,分别为LCD1602液晶显示模块、DS1820温度传检测模块、按键模块、声光报警模块、执行电路模块以及看门狗软件抗干扰模块构成。采用模块化的程序不仅仅可以简化开发,让程序结构层次分明,同时更便于后期的管理与维护,使得工作效率大大提高。
在这里插入图片描述
在这里插入图片描述

4-1 软件系统流程图

仿真图

在这里插入图片描述
在这里插入图片描述

总结

  经过本次毕业设计,让我从中学到了许多东西。从最初的选题,开题构思,绘图,编程,仿真直到完成设计,这中间,查找资料,老师指导,同学交流,编写程序,直至最后的仿真,每一个过程都是一次成长和对自己的一次的检验。本次设计是基于单片机的养殖场温度控制系统设计,包括硬件电路和软件两部分。设计初对于单片机的应用并不是很了解,本科学习中初步接触过C语言,由于本次设计需要硬件和软件两部分,因此我是从软件部分先开始的,然后才开始仿真电路的设计,是由于软件的不完美影响了仿真电路设计的不是很美观。 在软件设计过程中,我基本是一步步开始学起的,在学习中遇到很多问题,经过和同学的讨论,我学到了很多编程技巧,同时也掌握了一些编程思想。由于软件的局限性,仿真电路不是很美观,其中一些电容和电阻并不是原理图中设计的大小,但是这并不影响结果,再画原理图的过程中我又进一步掌握了protel的基本应用,并有了较为深入的了解。通过本次设计,对于主要芯片STC89C52有了基本的了解,基本掌握了该芯片的基本功。

目录

目录

摘 要 I
Abstract II
1 绪论 4
1.1 目的意义 4
1.2 温度对羊的影响 4
1.3 国内外牲畜养殖环境的研究概况 5
1.4 本设计的目的与意义 5
1.5 本设计的主要研究内容与结构安排 6
2 系统方案设计 8
2.1 系统运行方案设计 8
2.1.1 羊舍环境温度的确定 8
2.1.2 调控系统方案的设计 9
2.1.3 系统整体结构设计 9
2.2 硬件设备的选择 9
2.2.1 电源模块 9
2.2.2 单片机的选择 10
2.2.3 温度传感的选择 10
2.2.4 显示模块的选择 11
2.2.5 键盘模块的选择 11
3 系统硬件设计 12
3.1 单片机最小系统设计 12
3.1.1 单片机选型 12
3.1.2 STC89C52介绍 12
3.1.2.1 单片机引脚图 12
3.1.2.2 单片机引脚介绍 13
3.1.3 单片机最小系统 14
3.2 液晶显示电路 16
3.2.1 LCD1602液晶显示器简介 16
3.2.2 液晶引脚说明 17
3.2.3 液晶显示模块电路 18
3.3 按键输入电路 19
3.4 温度传感器系统 20
3.4.1 数据采集 20
3.4.2 温度传感器 21
3.4.3 DS1820智能温度传感器 21
3.4.4 数字式多路温度检测系统硬件设计 22
3.5 执行电路设计 23
3.5.1 元器件介绍 23
3.5.1.1 TIP127 23
3.5.1.2 光耦MOC3022 24
3.5.2 加温控制电路 25
3.6 声光报警电路设计 26
3.6.1 电路组成 26
3.6.2 9012三极管介绍 26
3.6.3 电路原理 27
3.6.4 电路工作过程 28
3.7 抗干扰电路设计 28
3.7.1 单片机在应用过程中的干扰因素 28
3.7.2 单片机受干扰时产生的影响 29
3.7.2.1 数据收集的精确度下降 29
3.7.2.2 控制系统失效 29
3.7.2.3 数据破坏 29
3.7.3 单片机系统的抗干扰 30
3.7.3.1 硬件抗干扰 30
3.7.3.2 软件抗干扰 31
4 油层热影响区域 33
4.1 问题描述 33
4.2 数学模型的建立 33
4.2.1 连续介质的守恒方程 33
4.2.2 多孔介质的守恒方程 33
4.2.3 传热过程分析 33
4.2.4 基本假设 33
4.2.5 边界条件 33
4.3 ANSYS模拟 33
4.3.1 建立有限元模型 33
4.3.2 施加载荷计算 33
4.3.3 求解 33
4.3.4 后处理 33
4.4 模拟结果与分 33
5 结论 34
参考文献 35
谢辞 35

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/185056.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【FastCAE源码阅读6】C++与Python的集成,实现相互调用

分析FastCAE代码之前先看看C与Python如何相互调用的。 一、C调用Python 先写个C调用Python的例子&#xff0c;然后再来看FastCAE集成Python就比较简单了。直接上代码&#xff1a; #include <iostream> #include "python.h"int main() {Py_Initialize();PyRu…

【C语法学习】20 - 文件访问顺序

文章目录 0 前言1 文件位置指示符2 rewind()2.1 函数原型2.2 参数2.3 返回值2.4 使用说明 3 ftell()函数3.1 函数原型3.2 参数3.3 返回值 4 fseek()4.1 函数原型4.2 参数4.3 返回值 5 示例5.1 示例15.2 示例2 0 前言 C语言文件访问分为顺序文件访问和随机文件访问。 1 文件位…

云架构师学习------腾讯云通识-存储与数据库

云架构师学习------腾讯云通识-存储与数据库 云架构师学习------腾讯云通识-存储与数据库存储基础存储服务对象存储-COS产品概述功能概览产品优势 云硬盘-CBS产品概述产品功能产品优势云硬盘类型 文件存储-CFS产品概述产品功能产品优势文件存储类型及性能规格存储类型性能与规格…

react之Component存在的2个问题

问题 只要执行setState()&#xff0c;即使不改变状态数据&#xff0c;组件也会重新render()只当前组件重新render()&#xff0c;就会自动重新render子组件 原因 Component中的shouldComponentUpdate()总是返回true 思路 只有当组件的state或props数据发生改变时才重新rend…

Qt QTableView排序

1.简介 在开发过程中&#xff0c;我们需要通过点击表头来对QTableView或QTreeView等一系列高级视图进行排序操作&#xff0c;以下是进行排序的步骤。 步骤&#xff1a; 首先创建了一个QStandardItemModel对象或者继承QAbstractTableModel类作为数据模型&#xff0c;并设置了…

工厂设备扫码使用售卖联网开发需要怎么开发开源代码?

我们将详细介绍如何使用开源代码开发一套用于工厂设备联网统计的系统。我们将详细讨论所需硬件组件的选择、开源框架和库的使用、软件开发流程以及最后的集成和部署。在这个过程中&#xff0c;我们将提供实用的操作步骤和指导&#xff0c;帮助你更容易地完成这个复杂的任务。 …

Docker实战

一、Docker安装 以下均以CentOS 7为例 1、安装Docker yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin 2、启动和校验 # 启动Docker systemctl start docker# 停止Docker systemctl stop docker# 重启 systemctl resta…

【Qt之QVariant】使用

介绍 QVariant类类似于最常见的Qt数据类型的联合。由于C禁止联合类型包括具有非默认构造函数或析构函数的类型&#xff0c;大多数有趣的Qt类不能在联合中使用。如果没有QVariant&#xff0c;则QObject::property()和数据库操作等将会受到影响。 QVariant对象同时持有一个单一…

【数据结构】树与二叉树(六):二叉树的链式存储

文章目录 5.1 树的基本概念5.1.1 树的定义5.1.2 森林的定义5.1.3 树的术语5.1.4 树的表示 5.2 二叉树5.2.1 二叉树1. 定义2. 特点3. 性质引理5.1&#xff1a;二叉树中层数为i的结点至多有 2 i 2^i 2i个&#xff0c;其中 i ≥ 0 i \geq 0 i≥0。引理5.2&#xff1a;高度为k的二叉…

从业务到软件架构——软件建模

一、问题 1.架构到底是什么&#xff1f;架构和业务之间到底什么关系&#xff1f; 2.好的架构的设计出发点是什么&#xff1f;好的架构应该是什么样的&#xff1f; 作为一个计算机领域的词汇&#xff0c;架构的定义是&#xff1a;有关软件整体结构与组件的抽象描述&#xff0c…

PHP代码示例

我们需要使用PHP的curl库来发送HTTP请求。以下是一个基本的示例&#xff1a; php <?php // 初始化curl $ch curl_init(); // 设置代理 curl_setopt($ch, CURLOPT_PROXY, ""); // 设置URL curl_setopt($ch, CURLOPT_URL, ""); // 执行请求 $respon…

C语言--分段函数--switch语句

如何用switch语句写分段函数呢&#xff1f;⭐️ 首先介绍一下switch语句的语法规则⭐️ switch(整形表达式) {case 常量表达式1&#xff1b; //标签必须唯一语句块1;break;case 常量表达式2&#xff1b; //if(a0),而case中时系统自动加语句块2&#xff1b;break&#xff1b;c…

台式电脑一键重装Win10系统详细教程

很多用户都在使用台式Win10电脑办公&#xff0c;如果电脑出现系统问题无法解决了&#xff0c;这时候就可以考虑给电脑重装系统哦&#xff0c;下面小编给大家详细介绍关于台式电脑一键重装Win10系统的步骤方法&#xff0c;安装后电脑就能恢复正常&#xff0c;也不会影响到用户的…

浅谈电力物联网时代物联网技术在电力系统中的应用

贾丽丽 安科瑞电气股份有限公司 上海嘉定201801 摘要&#xff1a;在电力系统建设中&#xff0c;物联网的应用不仅促进了我国电力工业的发展&#xff0c;而且对我国的物联网技术也起到了一定的促进作用。随着物联网技术应用于电力系统&#xff0c;推动了中国工业的快速发展。因…

Java 设计模式——外观模式

目录 1.概述2.结构3.实现3.1.子系统类3.2.外观类3.3.测试 4.优缺点5.使用场景6.源码解析 1.概述 &#xff08;1&#xff09;有些人可能炒过股票&#xff0c;但其实大部分人都不太懂&#xff0c;这种没有足够了解证券知识的情况下做股票是很容易亏钱的&#xff0c;刚开始炒股肯…

CSS 滚动捕获 Scroll Snap

CSS 滚动捕获 Scroll Snap CSS 滚动捕获允许开发者通过声明一些位置(或叫作捕获位置)来创建精准控制的滚动体验. 通常来说轮播图就是这种体验的例子, 在轮播图中, 用户只能停在图 A 或者图 B, 而不能停在 A 和 B 的中间. 比如平时用淘宝或小红书, 当你上滑到下一个推荐内容时…

MySQL json相关函数详解

MySQL提供了一系列的JSON函数&#xff0c;用于解析、提取、修改和操作JSON数据。以下是一些常用的JSON函数及其功能。 以下所有操作都使用该表&#xff08;zone_test&#xff09;用来演示&#xff1a; 一&#xff1a;JSON_OBJECT(key1,value1,key2,value2) 1、作用&#xff1a;…

json数据格式的理解(前+后)

什么是JSON&#xff1a; JSON&#xff08;JavaScript Object Notation&#xff09;是一种广泛使用的数据交换格式&#xff0c;它在前端和后端开发中都扮演着重要的角色。 JSON 的结构&#xff1a; JSON 数据由大括号 {} 包围&#xff0c;表示对象。 对象中的数据以键值对形式…

【C/PTA】循环结构进阶练习(三)

本文结合PTA专项练习带领读者掌握循环结构&#xff0c;刷题为主注释为辅&#xff0c;在代码中理解思路&#xff0c;其它不做过多叙述。 文章目录 7-1 循环-Fibonacci数列的运算7-2 循环-找数字7-3 循环-小智的捕食计划7-4 循环-抱大腿7-5 循环-跳&#xff01;7-6 循环-生气的峰…

Docker学习——⑤

文章目录 1、什么是Docker Container&#xff08;容器&#xff09;2、容器的生命周期2.1 容器 OOM2.2 容器异常退出2.3 容器暂停 3、容器命令详解4、容器操作案例4.1 容器批量处理技巧4.2 容器交互模式4.3 容器自动重启4.4 容器环境变量配置 5、综合实战5.1 Mysql 容器化安装5.…