基于STC8G1K08A的水压检测系统

news2024/11/24 9:47:42

基于STC8G1K08A的水压检测系统

  • 前言
  • 先来一饱眼福
  • 设计和硬件的选型
    • 压力传感器选择
    • 单片机的选择
    • WIFI透传模块选择
  • 核心代码的开发
    • STC8G1K08A单片机代码
      • 读取水压传感器的电压
      • 计算对应电压水的压力值
      • 猪场水压正常、漏水、喝光水提醒功能的实现
    • 数据通过ESP8266上报到云端
        • 代码的实现
        • 微信实时推送
      • APP的开发

前言

由于今年天气持续干旱,给养猪行业带来了很大的用水压力,尤其是对于管理1600头猪的饲养员的我来说,最担心的就是猪没水喝,毕竟这群猪一天就可以喝掉20吨水,这也就是我设计这个项目的初衷。

先来一饱眼福

在这里插入图片描述
这是手机APP上显示的样子,用的是appinventor编写的

设计和硬件的选型

我大致的设计想法是利用STC单片机通过检测水压传感器电压的高低来确定水压的高低,再通过单片机的串口将数据发送给ESP8266,最后通过8266的WIFI透传功能将数据上传物联网服务器,最终用appinventor编写定制的APP来实时显示水塔的剩余水量水压值。

压力传感器选择

要实现水压的监测,必须有一个压力传感器,这里我选的是恒压供水传感器,其中原因之一因为它的电压信号范围是0.5-4.5V,刚好是单片机可以监测的范围
在这里插入图片描述

单片机的选择

这里之所以选择STC8G1K08A,原因之一STC8G1K08A集成了超高速ADC,支持10位精度15通道(通道0~通道14)的模数转换 ,另外一个原因就是这款单片机内部集成了晶振电路,只要接上5V电源就能工作。

在这里插入图片描述

WIFI透传模块选择

将数据上传到手机APP我选择如今流行的ESP8266,这个模块使用方便快捷,体积小
直接选这种带继电器的这种,5V的供电刚好跟单片机的工作电压相同,8266也不用另外加5V转3.3V的直流模块。
在这里插入图片描述

核心代码的开发

代码的开发我选择单片机开发软件KeiluVision以及ESP8266撸代码工具ArduionIDE
STC8G1K08A单片机主要负责接收水压传感器的电压信号,转换之后通过串口传送给ESP8266。
物联网模块8266再将数据上传到巴法云平台。

STC8G1K08A单片机代码

读取水压传感器的电压

	Pre_Min = Pre_ADC[1];			        //以下为10个adc数据中选取最小值
		for(i=1; i<10; i++)
		{
		 	if(Pre_ADC[i] < Pre_Min)
			{
				temp = Pre_Min;
				Pre_Min = Pre_ADC[i];
				Pre_ADC[i] = temp;	
			}	
		}
		sum = 0;										 //以下为10个adc数据取平均
		for(i=2; i<10; i++)
		{
			sum = sum + Pre_ADC[i];
		}
		sum >>= 3; 

计算对应电压水的压力值


		//Vwater = ((unsigned long)sum * 5000) / 1024;//以实测电源电压返算水头电压  注意计算中存在超类型长度的可能性
		Vwater = ((unsigned long)sum * (unsigned long)vcc) / 1024;
		
	 Vtemp = Vwater - 500; //扣除基础水头电压
	    Hwater  = (Vtemp*5/2);//1MPA=10公斤/cm2,10000g共4000mv,每mv=10000/4000=2.5
		                             //实测电压*2.5(x*5/2)

猪场水压正常、漏水、喝光水提醒功能的实现

正常水塔满水的情况下,水压数值在300以上,漏水或者水喝到一半之后,就要推送水压情况
设置水压数值210以下,如果在一分钟之内,有超过15个小于210的数值,则串口推送“A”,表示漏水,不到15个低于210的数值推送“B”,表示正常。实测管道水压为0的时候,数值为大于30000,所以当检测到数值为30000以上,串口推送“C”,表示水喝光。

  if(Hwater<=210){N++;}
 if(sec==60)
				  {   
				  
				      sec=0;
				  	  flag=0;
				  	 if(N>=15) 
				  		 {	 
						 
						     N=0;
						 	 UartSend('A');
						 
						 }
						else 
						
							  {
						
							  UartSend('B'); N=0;
							  }
 if(Hwater>30000){flag=0;UartSend('C');N=0;}

数据通过ESP8266上报到云端

我这里选择的是巴法云物联平台,它可以采集8266上传的数据并实时显示出来
在这里插入图片描述

代码的实现

串口接收到的数值转换为字符

String Read_Serial(){
 
String data = "";


  while (Serial.available() > 0)
 
  {
    digitalWrite(led,!digitalRead(led));
    data += char (Serial.read());//ASCII转字符
    //data=(Serial.read());//ASCII转十进制
    delay(2);
    flag=1;
   
  }
  return data;

 
}

处理漏水,喝光水的微信提醒

void Serial_Handler(String data)
{
if(flag==1)
    {  
      if(data=="A"){loushui();};
      if(data=="C"){heguang();};

      if((data=="C")&&((digitalRead(tuisong))==0)){Blynk.email("369818468@qq.com", "主人,猪已把水喝光光");};
       flag=0;
       String upstr = ""; 
       upstr = "cmd=2&uid="+UID+"&topic="+TOPIC+"&msg=#"+data+"#"+123+"#\r\n";
      
       sendtoTCPServer(upstr);
       upstr = "";
  
   Serial.print(data);
   delay(2000);

    }

微信实时推送

漏水
在这里插入图片描述
喝光水
在这里插入图片描述

APP的开发

我用的是appinventor
在这里插入图片描述
最终实现了文章开头的显示内容

过程虽辛苦,但是折腾使我快乐,哈哈

单片机的PCB也是自己设计,请忽略杂乱的线
在这里插入图片描述
水压传感器
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

低功耗定时器(LPTIMER)

概述 LPTIM 是运行在Always-On 电源域下的16bits 低功耗定时/计数器模块。通过选择合适的工作时钟&#xff0c;LPTIM 在在各种低功耗模式下保持运行&#xff0c;并且只消耗很低的功耗。LPTIM 甚至可以在没有内部时钟的条件下工作&#xff0c;因此可实现休眠模式下的外部脉冲计数…

新手怎么玩转Linux

Linux是一个非常强大、灵活和可定制的操作系统&#xff0c;这使得它成为了程序员的首选操作系统之一。程序员喜欢使用Linux的原因有以下几点&#xff1a;开源、稳定性、安全性、命令行界面、社区支持。那么新手改如何玩转Linux呢&#xff1f;跟着我一起来看看吧。 以下是对新…

Meta 开源语音 AI 模型支持 1,100 多种语言

自从ChatGPT火爆以来&#xff0c;各种通用的大型模型层出不穷&#xff0c;GPT4、SAM等等&#xff0c;本周一Meta 又开源了新的语音模型MMS&#xff0c;这个模型号称支持4000多种语言&#xff0c;并且发布了支持1100种语言的预训练模型权重&#xff0c;最主要的是这个模型不仅支…

行业报告 | 2022文化科技十大前沿应用趋势(上)

文 | BFT机器人 前言 Introduction 文化科技是文化科技融合过程中诞生的系列新技术成果&#xff0c;是文化强国和科技强国两大战略的交又领域。2012 年 8月&#xff0c;科技部会同中宣部、财政部、文化部、广电总局、新闻出版总署发布《文化科技创新工程纲要》&#xff0c;开启…

为何AI无法完全理解人类情感?GPT-4能否理解人类的情绪?

在科幻小说和电影里&#xff0c;我们经常看到超级AI人工智能机器人可以理解、感知甚至模拟人类的情感&#xff0c;但在现实世界中&#xff0c;我们距离这个目标还有一段相当长的距离&#xff0c;即使是强大的GPT-4甚至未来的GPT-5。过高夸大AI的体验和性能&#xff0c;往往并不…

gin框架返回json

一、使用gin web框架开发的两种模式&#xff1a; 前端浏览器去请求服务器&#xff0c;服务器把完整的HTML文件的内容返回给前端浏览器Vue、reactor等前端框架都自己提前定义好模板&#xff0c;后端&#xff08;服务器&#xff09;只需要返回JSON格式的数据给前端框架即可&…

如何在MyEclipse中使用JavaScript编写代码?

MyEclipse v2022.1.0正式版下载 JavaScript 项目 在 MyEclipse 2021 及更高版本中&#xff0c;JavaScript 支持对大多数 JavaScript 源代码都是开箱即用的——不需要特殊的 JavaScript Eclipse 项目或 JavaScript facet。但是&#xff0c;我们建议使用jsconfig.json文件来指定…

SAP 物料主数据基本数据1视图 参数有效值 字段的作用测试 <转载>

原文链接&#xff1a;https://blog.csdn.net/weixin_40672823/article/details/104773643 1.在物料主数据基本数据1视图中有个字段 参数有效值 如下图 有什么用途? 这个字段作用主要用在 BOM里面&#xff0c;官方说明如下 看说明很难理解下面通过一个业务实例来说明 业务要…

HOOPS平台助力Xometry数字化转型:即时报价产品实现三维模型轻量化、Web端可视化!

所属行业&#xff1a;制造业 挑战&#xff1a;为在线客户的制造平台提供流畅的客户体验、支持使用多种类型CAD文件格式的不同客户群、根据模型提供准确的报价和可制造性反馈、快速准确地可视化定制零 解决方案&#xff1a; HOOPS Platform 提供web端和移动设备的3D数据转换、…

擎创技术流 | 一文读懂eBPF对kubernetes可观测的重要性

一、云原生技术发展的背景与问题 当前&#xff0c;云原生技术主要是以容器技术为基础围绕着 Kubernetes的标准化技术生态&#xff0c;通过标准可扩展的调度、网络、存储、容器运行时接口来提供基础设施&#xff0c;同时通过标准可扩展的声明式资源和控制器来提供运维能力。两层…

Servlet【最复杂的hello world】

目录 一、Hello World 1.创建项目 2.引入依赖 3.创建目录 4.编写代码 4.1 继承 HttpServlet 父类&#xff0c;重写 doGet 方法 4.2 在 doGet 中编写代码&#xff0c;打印 hello world 4.3 给 HelloServlet 加上注解 4.4 完整代码 5.打包代码 6.部署 7.验证程序 二…

分享一个403界面给大家

先看效果图&#xff08;说明&#xff1a;小鬼影会飘来飘去&#xff0c;长时间停留会有小惊喜&#xff0c;具体大家跑一下就知道&#xff09;&#xff1a; 代码如下&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UT…

depends_on 解决 docker 容器依赖问题

如果你经常使用docker-compose启动服务的话&#xff0c;可能会遇到下面的问题&#xff1a;服务 B 依赖服务 A&#xff0c;需要服务 A 先启动&#xff0c;再启动服务 B 举个例子&#xff0c;在部署 kafka 集群的时候&#xff0c;需要启动两个kafka&#xff0c;并使用zookeeper做…

基于云计算和物联网技术开发的智慧校园云平台源码

智慧校园系统是利用物联网和云计算&#xff0c;强调对教学、科研、校园生活和管理的数据采集、智能处理、为管理者和各个角色按需提供智能化的数据分析、教学、学习的智能化服务环境。它包含“智慧环境、智慧学习、智慧服务、智慧管理”等层面的内容。 文末获取联系 它描绘的是…

准备搞个大动作!

目前我们的会员群的同学越来越多&#xff0c;然后我们提供的内容已经从起步篇&#xff0c;趣味篇&#xff0c;工具篇到高级篇了。但是到了高级篇很多内容都跟编程相关&#xff0c;有一点门槛&#xff0c;如果单单看文字是肯定无法满足大家的需求。为了更好的服务大家&#xff0…

跃升数字生产力,九州云受邀出席闵行国际人才月

5月22日&#xff0c;由闵行人才工作领导小组办公室指导、中共闵行区马桥镇委员会及闵行区马桥镇人民政府主办、上海人工智能研究院协办的首届“大零号湾”国际人才月马桥人工智能周成功召开。 本届大会以“AI才共赢 智敬未来”为主题&#xff0c;探讨科技创新的最新动态和趋势&…

如何使用Linux Top命令

Linux中的top命令允许您监视当前正在运行的进程及其使用的系统资源。作为系统管理员&#xff0c;它可能是工具箱中最有用的工具&#xff0c;特别是如果您知道如何使用它的话。所有Linux发行版都预装了top实用程序。通过这个交互式命令&#xff0c;您可以自定义如何浏览进程列表…

电脑蓝屏该如何给电脑重装系统

电脑蓝屏问题是让人头疼的常见故障之一&#xff0c;而重装系统是解决蓝屏问题的有效方法。本文将为您详细介绍如何在电脑蓝屏的情况下进行系统重装&#xff0c;轻松摆脱蓝屏困扰。 工具/原料&#xff1a; 系统版本&#xff1a;windows10系统 品牌型号&#xff1a;华为MateBoo…

常见的黄金期货交易风险包含哪些内容?

黄金期货交易作为受市场欢迎的投资理财方式&#xff0c;兼具高风险和高收益并存的特性。黄金期货交易风险也同样存在&#xff0c;那常见的黄金期货交易风险包含哪些内容&#xff1f; 黄金期货交易风险一、市场风险 投资者在黄金期货交易中&#xff0c;主要的风险来源于市场价格…

快来试试!免费用上GPT-4 !!!

GPT-4 简介 GPT-4是OpenAI上个月推出的最新人工智能语言模型&#xff0c;它可以根据给定的文本或关键词生成各种类似于人类语言甚至超越人类语言的文本&#xff0c;例如文章、故事、诗歌、代码、对话等。 GPT-4拥有1750亿个参数&#xff0c;是目前最大的语言模型之一&#xf…