STM32 51单片机设计半导体制冷片温控设计

目录

前言

一、本设计主要实现哪些很“开门”功能?

二、电路设计原理图

1.电路图采用Altium Designer进行设计:

三、实物设计图

四、程序源代码设计 

五、获取资料内容


前言

基于STM32与51单片机的半导体制冷片温控设计 前言

随着现代工业、医疗和科研领域对温度控制精度的要求日益提高,半导体制冷片(TEC)因其高效、灵活的特点而得到广泛应用。然而,要充分发挥TEC的性能,设计一个精确、稳定的温控系统至关重要。本文将探讨基于STM32和51单片机的半导体制冷片温控设计,旨在为相关领域提供一种高效、可靠的解决方案。

半导体制冷片(TEC)以其独特的帕尔贴效应原理,能够实现制冷和加热的双重功能。然而,TEC的温控系统在设计上存在一定的挑战,如温度调节过程中的惯性大、环境温度影响显著等。为了克服这些挑战,本文将采用PID控制算法,并结合模糊自适应控制方法,实现对TEC的精确温度控制。

基于STM32和51单片机的半导体制冷片温控系统的实现过程。硬件设计部分将包括温度传感器选型、STM32和51单片机的电路设计、TEC驱动电路设计等;软件设计部分则将重点介绍PID控制算法和模糊自适应控制方法的实现,以及温度采集、控制输出和通信等模块的软件编程。

一、本设计主要实现哪些很“开门”功能?

        1)大功率供电,实现零度以下制冷
        2)实时温控检测,PID温控算法程序
        3)蓝牙APP调节温度控制发送指令执行
        4)多模式控制,手动模式与自动模式
        5)PID温控算法实现实时温控
        6)半导体制冷器设计,与散热设计

二、电路设计原理图

1.电路图采用Altium Designer进行设计:


1、通过STM32F103C8T6单片机作为系统主控,最小系统电路是整个电路的核心。

2、设计了大功率稳定制冷机系统

3、 使用无线蓝牙模块,模块与单片机进行通讯解析串口连接。

4、通过DS18B20防水模块采集温度数据,模块与单片机采样单总线通讯连接

5、使用PID算法,程序内部运行

6、通过继电器做电源保护设置,模块与单片机使用数据总线控制连接

7、使用风扇进行散热,模块与单片机通过MOS官控制连接

三、实物设计图


四、程序源代码设计 

#include "stm32f10x.h"
#include "delay.h"
#include "sys.h"
#include "usart.h"    
#include "LED.h"
#include "ds18b20.h" 

int main(void)
{
    u16 t = 0;//时间
    u8 i = 0;
  u8 F_mode = 1;//默认自动模式
    u8 maxtemp = 0,mintemp = 0;
    u8 tempdate[] = {30,20};//默认温度达到30度开启制冷,20度关闭制冷
    u16 len = 0;
    float temperature; 
    float Temp = 0;
    c
    delay_init();             //延时函数初始化    
    NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级 
    uart_init(9600);                                   //串口初始化为9600,语音播报
    Relay_Init();
    LED_Init();
    DS18B20_Init();  //温度采集初始化
    delay_ms(800);
    temperature = DS18B20_Get_Temp();//读取温度值
    delay_ms(800);
//  RelayContro = 1;
    while(1)
    {        
        if(USART_RX_STA&0x8000)
        {                       
            len=USART_RX_STA&0x3fff;//得到此次接收到的数据长度
            if(len>3)
            {
                maxtemp = (USART_RX_BUF[0]-'0')*10 + (USART_RX_BUF[1]-'0');
                mintemp = (USART_RX_BUF[2]-'0')*10 + (USART_RX_BUF[3]-'0');
                tempdate[0] = maxtemp;
                tempdate[1] = mintemp;
                USART_RX_STA=0;
            }
        }            
        
        temperature = DS18B20_Get_Temp();//读取温度值
        Temp = temperature/10;//计算温度值,准备蓝牙传输数据    
        
        //自动模式
        if(Temp>=tempdate[0]&&F_mode)
        {
            RelayContro = 1;//当温度高达30度开启制冷
        }
        else if(Temp<=tempdate[1]&&F_mode)
        {
            RelayContro = 0;//关闭制冷
        }
        
        if(F_receive == 1)
        {
            F_receive = 0;
            //默认自动模式
            if(Res == 0xff)
            {
                i++;
                //手动模式
                if(i == 1){F_mode = 0;LED = 1;}
                //自动模式
                else if(i == 2){i= 0;F_mode = 1;LED = 0;}
            }
            else if(Res == 0xfe)//手动开启制冷
            {
                if(F_mode == 0){ RelayContro = 1;}
            }
            else if(Res == 0xfc)//手动关闭制冷
            {
                if(F_mode == 0){ RelayContro =0;}
            }
        }
        if(t==200)
        {
            t = 0;
            printf("Temp:%.1f---maxtemp:%d mintemp:%d\r\n",Temp,tempdate[0],tempdate[1]);
        }
        delay_ms(5);
        t++;

    } 
    
}


 

五、获取资料内容

资料获取
链接:https://pan.baidu.com/s/1hv8MSqt4AmWzFdYzM_D7Eg 
提取码:u2n9 

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

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

相关文章

ssm114基于SSM框架的网上拍卖系统的设计与实现+vue(论文+源码)_kaic

摘 要 随着科学技术的飞速发展&#xff0c;各行各业都在努力与现代先进技术接轨&#xff0c;通过科技手段提高自身的优势&#xff0c;商品拍卖当然也不能排除在外&#xff0c;随着商品拍卖管理的不断成熟&#xff0c;它彻底改变了过去传统的经营管理方式&#xff0c;不仅使商品…

算法每日双题精讲——滑动窗口(长度最小的子数组,无重复字符的最长子串)

&#x1f31f;快来参与讨论&#x1f4ac;&#xff0c;点赞&#x1f44d;、收藏⭐、分享&#x1f4e4;&#xff0c;共创活力社区。 &#x1f31f; 别再犹豫了&#xff01;快来订阅我们的算法每日双题精讲专栏&#xff0c;一起踏上算法学习的精彩之旅吧&#xff01;&#x1f4aa;…

批量从Excel某一列中找到符合要求的值并提取其对应数据

本文介绍在Excel中&#xff0c;从某一列数据中找到与已知数据对应的字段&#xff0c;并提取这个字段对应数值的方法。 首先&#xff0c;来明确一下我们的需求。现在已知一个Excel数据&#xff0c;假设其中W列包含了上海市全部社区的名称&#xff0c;而其后的Y列则是这些社区对应…

MaxKB

docker 安装 MaxKB docker run -d --namemaxkb --restartalways -p 8080:8080 -v ~/.maxkb:/var/lib/postgresql/data -v ~/.python-packages:/opt/maxkb/app/sandbox/python-packages cr2.fit2cloud.com/1panel/maxkbdocker psCONTAINER ID IMAGE …

越南很火的slots游戏投放Google谷歌广告策略

越南很火的slots游戏投放Google谷歌广告策略 越南的slot游戏市场正在借助Google广告代投策略推动增长。随着智能手机的普及和互联网的普及&#xff0c;越南的游戏市场迅速增长&#xff0c;吸引了越来越多的投资者和开发者进入该市场。 在这个竞争激烈的市场中&#xff0c;广告…

现代无线通信接收机架构:超外差、零中频与低中频的比较分析

写在前面&#xff1a;本博客是对三种接收机架构的学习笔记&#xff0c;仅供个人学习记录使用。内容主要是上网查阅的资料&#xff0c;以及个人的一些理解。如有错误的地方请指出&#xff01; 文章目录 一、通信机基本架构1、射频发射级的基本组成及完成功能2、射频接收级的基本…

探索MoviePy:Python视频编辑的瑞士军刀

文章目录 &#x1f3ac; 探索MoviePy&#xff1a;Python视频编辑的瑞士军刀第一部分&#xff1a;背景介绍第二部分&#xff1a;MoviePy是什么&#xff1f;第三部分&#xff1a;如何安装MoviePy&#xff1f;第四部分&#xff1a;MoviePy的基本函数使用方法1. 视频剪辑2. 视频拼接…

修改数据库和表的字符集

1、修改数据库字符集 mysql> show CHARACTER SET; 查看所有字符集 mysql> show create database wordpress; 查看数据库wordpress当前字符集mysql> alter database wordpress character set gbk; 将数据库wordpress字符集改为gb…

67页PDF |埃森哲_XX集团信息发展规划IT治理优化方案(限免下载)

一、前言 这份报告是埃森哲_XX集团信息发展规划IT治理优化方案&#xff0c;报告中详细阐述了XX集团如何优化IT治理结构以适应新的要求。报告还分析了集团管控模式的变化&#xff0c;提出了六大业务中心的差异化管控策略&#xff0c;并探讨了这些变化对IT治理模式的影响。报告进…

C# WPF FontDialog字体对话框,ColorDialog颜色对话框 引用

WPF 并没有内置FontDialog和ColorDialog&#xff0c;但可以通过引用 Windows Forms 的控件来实现字体和颜色选择对话框功能。FontDialog 允许用户选择字体、样式、大小等设置。 添加 Windows Forms的引用 项目工程&#xff1a;右键“引用”》“添加引用”》勾选System.Windows…

家政服务小程序,家政行业数字化发展下的优势

今年以来&#xff0c;家政市场需求持续增长&#xff0c;市场规模达到了万亿级别&#xff0c;家政服务行业成为了热门行业之一&#xff01; 家政服务种类目前逐渐呈现了多样化&#xff0c;月嫂、保姆、做饭保洁、收纳、维修等家政种类不断出现&#xff0c;满足了居民日益增长的…

kubernetes简单入门实战

本章将介绍如何在kubernetes集群中部署一个nginx服务&#xff0c;并且能够对其访问 Namespace Namespace是k8s系统中一个非常重要的资源&#xff0c;它的主要作用是用来实现多套环境的资源隔离或者多租户的资源隔离。 默认情况下&#xff0c;k8s集群中的所有的Pod都是可以相…

2分钟在阿里云ECS控制台部署个人应用(图文示例)

作为一名程序员&#xff0c;我有大量的个人代码和应用托管在Github/Gitee这些代码仓库。当我想要部署这些代码到我的阿里云ECS服务器时&#xff0c;往往会很麻烦&#xff0c;主要问题有这些&#xff1a; 需要手动安装和配置git&#xff0c;过程非常繁琐。每次都需要登录到机器…

【Kafka】集成案例:与Spark大数据组件的协同应用

&#x1f407;明明跟你说过&#xff1a;个人主页 &#x1f3c5;个人专栏&#xff1a;《大数据前沿&#xff1a;技术与应用并进》&#x1f3c5; &#x1f516;行路有良友&#xff0c;便是天堂&#x1f516; 目录 一、引言 1、什么是kafka 2、Kafka 的主要特性 3、Kafka 的…

Docker 的安装与使用

Docker 的安装 Docker 是一个开源的商业产品&#xff0c;有两个版本&#xff1a;社区版&#xff08;Community Edition&#xff0c;缩写为 CE&#xff09;和企业版&#xff08;Enterprise Edition&#xff0c;缩写为 EE&#xff09;。 Docker CE 的安装请参考官方文档&#xf…

逐行加载 HTML 内容并实时显示效果:使用 wxPython 的实现

这篇博客中&#xff0c;我们将详细分析如何使用 wxPython 构建一个简单的桌面应用程序&#xff0c;用于逐行加载并显示 HTML 文件的内容&#xff0c;并在加载完成后通过浏览器组件呈现最终页面。通过该应用&#xff0c;我们可以体验到逐行加载 HTML 内容的视觉效果&#xff0c;…

【Linux】HTTP协议和HTTPS加密

文章目录 HTTP1、概念2、认识URL3、协议格式、请求方法和状态码4、HTTP请求和响应报头5、Cookie和Session HTTPS1、对称和非对称加密2、对称非对称加密安全分析3、证书 HTTP 1、概念 我们在应用层定制协议时&#xff0c;不建议直接发送结构体对象&#xff0c;因为在不同的环境…

计算机网络 (1)互联网的组成

一、互联网的边缘部分 互联网的边缘部分由所有连接在互联网上的主机组成&#xff0c;这些主机又称为端系统&#xff08;end system&#xff09;。端系统可以是各种类型的计算机设备&#xff0c;如个人电脑、智能手机、网络摄像头等&#xff0c;也可以是大型计算机或服务器。端系…

网络延迟对Python爬虫速度的影响分析

Python爬虫因其强大的数据处理能力和灵活性而被广泛应用于数据抓取和网络信息收集。然而&#xff0c;网络延迟是影响爬虫效率的重要因素之一。本文将深入探讨网络延迟对Python爬虫速度的影响&#xff0c;并提供相应的代码实现过程&#xff0c;以帮助开发者优化爬虫性能。 网络…

单片机设计电流与温度监控python上位机监控平台设计

目录 前言 一、本设计主要实现哪些很“开门”功能&#xff1f; 二、电路设计原理图 电路图采用Altium Designer进行设计&#xff1a; 三、实物设计图 四、程序源代码设计 五、获取资料内容 前言 在现代工业自动化和智能设备管理中&#xff0c;对电流和温度的实时监控是…