当前位置: 首页 > news >正文

基于单片机自动饮料混合机控制系统设计

**单片机设计介绍,基于单片机自动饮料混合机控制系统设计

文章目录

  • 一 概要
  • 二、功能设计
    • 设计思路
  • 三、 软件设计
    • 原理图
  • 五、 程序
  • 六、 文章目录

一 概要

  基于单片机自动饮料混合机控制系统设计是一个涉及多个领域的复杂项目,包括单片机技术、传感器技术、控制理论、人机交互等。以下是对该系统的介绍:

  1. 系统概述:
    基于单片机自动饮料混合机控制系统是一种基于单片机的自动化设备,用于控制饮料混合机的运行,实现自动混合饮料的功能。该系统可以自动检测饮料的种类和数量,并根据预设的混合比例和控制算法,自动完成饮料的混合和输出。

  2. 系统组成:
    该系统主要包括单片机、传感器、执行器和控制算法等部分。单片机是系统的核心,负责接收传感器信号、控制执行器,并实现控制算法。传感器用于检测饮料的种类和数量,并将信号传送给单片机。执行器用于执行单片机的控制指令,实现饮料的混合和输出。控制算法用于根据预设的混合比例和控制要求,对传感器信号进行处理,并控制执行器的动作。

  3. 硬件设计:
    硬件部分包括单片机、传感器、执行器和电源等部分。单片机可以选择常用的51系列单片机,如AT89C51、PIC16F87A等。传感器可以选择液¥¥传感器、液位计等,用于检测饮料的种类和数量。执行器可以选择电磁阀、电机等,用于实现饮料的混合和输出。电源需要提供足够的电压和电流,以保证整个系统的正常运行。

  4. 软件设计:
    软件部分包括主程序、传感器处理程序、控制算法程序和人机交互程序等。主程序负责整个系统的运行和管理,包括传感器信号的采集和处理、控制算法的实现、执行器的控制等。传感器处理程序负责接收传感器信号,并进行数据处理和判断。控制算法程序根据预设的混合比例和控制要求,对传感器信号进行处理,并输出控制指令。人机交互程序用于实现用户与系统的交互,包括饮料种类的选择、混合比例的设定、系统状态的显示等。

  5. 优点和缺点:
    基于单片机自动饮料混合机控制系统的优点包括自动化程度高、操作简单、效率高、可靠性好等。它可以实现自动混合饮料的功能,节省人力物力,提高生产效率。然而,该系统的缺点是成本较高,对于小型或个人使用可能不适用。

  6. 应用场景:
    该系统可以应用于各种饮料生产场合,如饮料厂、酒吧、咖啡厅等。它可以实现自动混合各种饮料的功能,满足不同客户的需求。

总之,基于单片机自动饮料混合机控制系统是一个复杂的自动化系统,需要综合考虑硬件和软件的设计和实现。它具有自动化程度高、操作简单、效率高、可靠性好等优点,可以广泛应用于各种饮料生产场合。

二、功能设计

系统工作描述:
1.整个系统由一个12V的电源供电(无需设计电源,只是提醒您Vcc是12V),(因为蠕动泵-直流电机的额定电压是12V),需要一个“调压模块”将12V转换成5V为额定电压是5V的电子元件供电。 2.需要有一个“开机按键”,可以是2脚/4脚的轻触按键,或者摆臂开关等。
3.按下“开机按键”后,液晶显示屏(LCD)显示语句“Good day, please press any key to start”。

4.按下薄膜键盘上的任意一个按键后,液晶显示屏(LCD)显示语句“A. Menu B.DIY”。以下是可能发生的2种情况:

若此时按下薄膜键盘上的“A”按键,液晶显示屏(LCD)显示语句“A.Apple Soda B.Lemon Soda”。

若此时按下薄膜键盘上的“B”按键,液晶显示屏(LCD)显示语句“Please type the ratio (in order of apple juice: lemon juice: soda)”。

5.(接事件4.中“按下薄膜键盘的A按键”)以下是可能发生的2种情况:

若此时按下薄膜键盘上的“A”按键,液晶显示屏(LCD)显示语句“Your apple soda is coming soon…”; 1号泵以额定电压12V工作13秒,3号泵以额定电压12V工作13秒。(两个泵最好能同时开始工作)

若此时按下薄膜键盘上的“B”按键,液晶显示屏(LCD)显示语句“Your lemon soda is coming soon…”; 2号泵以额定电压12V工作6.5秒,3号泵以额定电压12V工作19.5秒。(两个泵最好能同时开始工作)

6.(接事件4.中“按下薄膜键盘的B按键”)

此时若按下薄膜键盘上“0”-“9”中任意一个数字,液晶显示屏(LCD)显示语句“X:”,其中X是刚才按下的数字。

(接事件6.中按过一次键盘)此时若按下薄膜键盘上“0”-“9”中任意一个数字,液晶显示屏(LCD)显示语句“X:Y:”,其中X是第一次按下的数字,Y是刚才按下的数字。若刚刚按下的数字使得X+Y>10,则液晶显示屏(LCD)仍然显示语句“X:”。

(接事件6.中按过两次键盘)此时若按下薄膜键盘上“0”-“9”中任意一个数字,液晶显示屏(LCD)显示语句“X:Y:Z”,其中X是第一次按下的数字,Y是第二次按下的数字,Z是第三次按下的数字。若刚刚按下的数字使得X+Y+Z>10,则液晶显示屏(LCD)仍然显示语句“X:Y:”。

(接事件6.中按过三次键盘)此时若按下薄膜键盘上的“*“按键,做以下两件事情:第一,1号泵以额定电压12V工作秒,2号泵以额定电压12V工作秒,3号泵以额定电压12V工作秒(三个泵最好能同时开始工作)其中X是第一次按下的数字,Y是第二次按下的数字,Z是第三次按下的数字。第二,液晶显示屏(LCD)显示语句“Your drink is coming soon…”。

7.(接事件6中泵开始工作后)当三个泵都停止工作后,液晶显示屏(LCD)显示语句“Awesome! Your drink is ready!” ,该语句持续5秒后,液晶显示屏(LCD)显示语句“Thank you!”,该语句持续5秒后,该系统“重置”(回到刚开机的样子),即液晶显示屏(LCD)显示语句“Good day, please press any key to start.”,然后系统依照步骤4-7工作。

8.在开机状态下,若再次按下“开机按键”,该系统关闭/关机。

设计思路

设计思路
文献研究法:搜集整理相关单片机系统相关研究资料,认真阅读文献,为研究做准备;

调查研究法:通过调查、分析、具体试用等方法,发现单片机系统的现状、存在问题和解决办法;

比较分析法:比较不同系统的具体原理,以及同一类传感器性能的区别,分析系统的研究现状与发展前景;

软硬件设计法:通过软硬件设计实现具体硬件实物,最后测试各项功能是否满足要求。

三、 软件设计

本系统原理图设计采用Altium Designer19,具体如图。在本科单片机设计中,设计电路使用的软件一般是Altium Designer或proteus,由于Altium Designer功能强大,可以设计硬件电路的原理图、PCB图,且界面简单,易操作,上手快。Altium Designer19是一款专业的整的端到端电子印刷电路板设计环境,用于电子印刷电路板设计。它结合了原理图设计、PCB设计、多种管理及仿真技术,能够很好的满足本次设计需求。

————————————————

仿真实现
本设计利用protues8.7软件实现仿真设计,具体如图。

Protues也是在单片机仿真设计中常用的设计软件之一,通过设计出硬件电路图,及写入驱动程序,就能在不实现硬件的情况进行电路调试。另外,protues还能实现PCB的设计,在仿真中也可以与KEIL实现联调,便于程序的调试,且支持多种平台,使用简单便捷。
————————————————

原理图

请添加图片描述
请添加图片描述

请添加图片描述

五、 程序

本设计利用KEIL5软件实现程序设计,具体如图。作为本科期间学习的第一门编程语言,C语言是我们最熟悉的编程语言之一。当然,由于其功能强大,C语言是当前世界上使用最广泛、最受欢迎的编程语言。在单片机设计中,C语言已经逐步完全取代汇编语言,因为相比于汇编语言,C语言编译与运行、调试十分方便,且可移植性高,可读性好,便于烧录与写入硬件系统,因此C语言被广泛应用在单片机设计中。keil软件由于其兼容单片机的设计,能够实现快速调试,并生成烧录文件,被广泛应用于C语言的编写和单片机的设计。
在这里插入图片描述

————————————————

在这里插入图片描述

六、 文章目录

目 录

摘 要 I
Abstract II
引 言 1
1 控制系统设计 2
1.1 主控系统方案设计 2
1.2 传感器方案设计 3
1.3 系统工作原理 5
2 硬件设计 6
2.1 主电路 6
2.1.1 单片机的选择 6
2.2 驱动电路 8
2.2.1 比较器的介绍 8
2.3放大电路 8
2.4最小系统 11
3 软件设计 13
3.1编程语言的选择 13
4 系统调试 16
4.1 系统硬件调试 16
4.2 系统软件调试 16
结 论 17
参考文献 18
附录1 总体原理图设计 20
附录2 源程序清单 21
致 谢 25

相关文章:

基于单片机自动饮料混合机控制系统设计

**单片机设计介绍,基于单片机自动饮料混合机控制系统设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机自动饮料混合机控制系统设计是一个涉及多个领域的复杂项目,包括单片机技术、传感器技术…...

react-route-dom 实现简单的嵌套路由

最终效果 点击 to test1 点击to test2 > to test21 点击to test2 > to test22 代码如下 path: "page",element: <父组件 />,children: [{ path: "test1", element: <Test1 /> },{path: "test2",element: <Test2 />…...

万界星空科技灯具行业MES介绍

中国是LED照明产品最大的生产制造国&#xff0c;如今&#xff0c;我国初步形成了包括LED外延片的生产、LED芯片的制备、LED芯片的封装以及LED产品应用在内的较为完超为产业链&#xff0c;随着LED照明市场渗诱率的快速警升&#xff0c;LED下游应用市场将会越来越广阔。这也将推动…...

16进制字符串转字符串

一、浏览器上 function hexToUtf8(hexString) {const hexArray hexString.match(/.{1,2}/g) || [];const uint8Array new Uint8Array(hexArray.map(hex > parseInt(hex, 16)));const textDecoder new TextDecoder(GB2312); //可以切换字符编码return textDecoder.decode…...

pymysql.err.InternalError: (1054, “Unknown column ‘nan‘ in ‘field list‘“

记录在本地环境通过&#xff0c;然后在云环境&#xff0c;解决问题的过程&#xff1b; 最近两天遇到一个bug&#xff0c;具体就是在本地Pyhon环境运行成功&#xff0c;但是当放在云服务跑的时候&#xff0c;去屡屡报错&#xff0c;具体报错信息如下&#xff1a; pymysql.err.I…...

SQL 错误 [1476] [22012]: ORA-01476: 除数为 0

Oracle sql 语句 添加判断&#xff0c;如果分母为0&#xff0c;则查询结果为0&#xff0c;如果分母不为0&#xff0c;则返回查询结果 你可以使用条件表达式来实现这个要求。以下是一个示例的Oracle SQL查询语句&#xff0c;其中添加了判断条件来处理分母为0的情况&#xff1a;…...

go语言项目的目录结构

Golang 的项目目录结构并没有一个强制的标准&#xff0c;但社区中形成了一些共识和最佳实践&#xff0c;以便更好地组织和管理代码。以下是一个典型的 Golang 项目目录结构示例&#xff1a; /myproject ├── /cmd | ├── /app | | └── main.go | …...

Android : DataBinding 简化开发 简单应用

1.导包 ViewModel 用于观察数据 // 使用androidx版本库 ViewModelProviders implementation androidx.lifecycle:lifecycle-extensions:2.1.0-alpha032.在build.gradle 添加 在android 代码块中添加 复制后点更新&#xff08;Sync Now&#xff09; android{...// 步骤1.开启…...

计算机网络:应用层(下篇)

文章目录 前言一 、电子邮件&#xff08;Email&#xff09;1.邮件服务器2.SMTP[RFC 2821]3.邮件报文格式4.邮件访问协议 二、DNS&#xff08;域名系统&#xff09;1.DNS的历史2.DNS总体思路和目标&#xff08;1&#xff09;问题1&#xff1a;DNS名字空间&#xff08;2&#xff…...

干货分享 | TSMaster小程序启动和停止的自动化控制流程

在实际应用场景中&#xff0c;用户常常需要按一定逻辑和时序来控制TSMaster内置功能模块的启动和停止&#xff0c;TSMaster软件内置有C/Python小程序和图形程序&#xff0c;开发者可以通过编程对这些模块的运行进行精确控制。本文将重点和大家分享一下如何通过C代码来控制TSMas…...

AI视频智能分析识别技术的发展与EasyCVR智慧安防视频监控方案

随着科技的不断进步&#xff0c;基于AI神经网络的视频智能分析技术已经成为了当今社会的一个重要组成部分。这项技术通过利用计算机视觉和深度学习等技术&#xff0c;实现对视频数据的智能分析和处理&#xff0c;从而为各个领域提供了广泛的应用。今天我们就来介绍下视频智能分…...

外包干了2个月,技术倒退2年。。。

先说一下自己的情况&#xff0c;本科生&#xff0c;20年通过校招进入深圳某软件公司&#xff0c;干了接近4年的功能测试&#xff0c;今年国庆&#xff0c;感觉自己不能够在这样下去了&#xff0c;长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测试…...

书-用数组存储高于60低于70的人单独存起来

#include<stdio.h> # define N 10 //书-用数组存储高于60低于70的人单独存起来 int main(){float s[N]{68.2,62.3,63.4,34.5,45.6,56.7,67.8,78.9,89.0,100};int i;float diyu[100];int j0;for(i0;i<N;i){if(s[i]>60 && s[i]<70)diyu[j]s[i];//这里的范…...

三、DVP摄像头调试笔记(图片成像质量微调整,非ISP)

说明&#xff1a;当前调试仅仅用来测试和熟悉部分摄像头寄存器模式 一、图片成像方向控制&#xff0c;基本每个摄像头都会有上下左右翻转寄存器 正向图片 反向图片 二、设置成像数据成各种颜色&#xff0c;&#xff08;黑白/原彩/黄色等等&#xff09; 在寄存器书册描述中…...

Linux--程序地址空间

&#x1f4d8;北尘_&#xff1a;个人主页 &#x1f30e;个人专栏:《Linux操作系统》《经典算法试题 》《C》 《数据结构与算法》 ☀️走在路上&#xff0c;不忘来时的初心 [TOC](文章目录) 一、程序地址空间回顾 我们在讲C语言的时候&#xff0c;老师给大家画过这样的空间布局…...

【超全】React学习笔记 下:路由与Redux状态管理

React学习笔记 React系列笔记学习 上篇笔记地址&#xff1a;【超全】React学习笔记 上&#xff1a;基础使用与脚手架 中篇笔记地址&#xff1a;【超全】React学习笔记 中&#xff1a;进阶语法与原理机制 React路由概念与理解使用 1. 引入 React路由是构建单页面应用(SPA, Sin…...

matplotlib学习

显示两个figure 坐标上刻度修改 plt.xlim() 下标范围 plt.xticks() 替换新的下标 图例显示 散点图 subplot多合一显示...

【网络安全】-安全常见术语介绍

文章目录 介绍1. 防火墙&#xff08;Firewall&#xff09;定义通俗解释 2. 恶意软件&#xff08;Malware&#xff09;定义通俗解释 3. 加密&#xff08;Encryption&#xff09;定义通俗解释 4. 多因素认证&#xff08;Multi-Factor Authentication&#xff0c;MFA&#xff09;定…...

C语言给定数字0-9各若干个。你可以以任意顺序排列这些数字,但必须全部使用。目标是使得最后得到的数尽可能小(注意0不能做首位)

这个题目要求的输出是一串数字&#xff01;&#xff01;&#xff01; 不是下面&#xff1a;输入在一行中给出 10 个非负整数&#xff0c;顺序表示我们拥有数字 0、数字 1、……数字 9 的个数。整数间用一个空格分隔。10 个数字的总个数不超过 50&#xff0c;且至少拥有 1 个非…...

vue+elementUI的tabs与table表格联动固定与滚动位置

有个变态的需求&#xff0c;要求tabs左侧固定&#xff0c;右侧是表格&#xff0c;点击左侧tab&#xff0c;右侧表格滚动到指定位置&#xff0c;同时&#xff0c;右侧滚动的时候&#xff0c;左侧tab高亮相应的item 上图 右侧的高度非常高&#xff0c;内容非常多 常规的瞄点不适…...

Hypha框架深度解析:现代Python异步Web开发与API构建实践

1. 项目概述&#xff1a;Hypha&#xff0c;一个被低估的轻量级Web框架 如果你和我一样&#xff0c;长期在Web后端开发领域摸爬滚打&#xff0c;那么对Flask、FastAPI、Express这些名字一定耳熟能详。它们各有千秋&#xff0c;也各有其“甜蜜点”和“痛点”。最近在GitHub上闲逛…...

Arm GIC虚拟中断控制器架构与寄存器详解

1. Arm GIC虚拟中断控制器架构概述 中断控制器是现代处理器架构中的关键组件&#xff0c;负责协调和管理来自各种外设的中断请求。在虚拟化环境中&#xff0c;传统的中断控制器面临新的挑战&#xff1a;如何高效处理来自多个虚拟机的中断请求&#xff0c;同时保持隔离性和性能。…...

Nintendo Switch大气层系统:7步从零安装到精通优化完整指南

Nintendo Switch大气层系统&#xff1a;7步从零安装到精通优化完整指南 【免费下载链接】Atmosphere-stable 大气层整合包系统稳定版 项目地址: https://gitcode.com/gh_mirrors/at/Atmosphere-stable 想要彻底释放你的Nintendo Switch游戏机潜力吗&#xff1f;Atmosphe…...

Gemini3.1Pro写作教练全攻略

2026 年&#xff0c;写作工具的使用方式已经发生了明显变化。过去很多人把大模型当成“代写工具”&#xff0c;但真正高效、长期可持续的用法&#xff0c;其实是把它当成个人写作教练&#xff1a;帮你拆选题、理结构、改表达、做复盘&#xff0c;而不是直接替你完成所有内容。最…...

Cursor AI编辑器离线资源库:解决网络依赖,实现内网与定制化开发

1. 项目概述&#xff1a;一个AI代码编辑器的离线资源库最近在折腾Cursor这个AI代码编辑器&#xff0c;发现它确实能极大提升开发效率。但有个问题一直困扰着不少开发者&#xff1a;它的AI功能高度依赖网络&#xff0c;一旦网络环境不佳&#xff0c;或者你想在特定场景下&#x…...

ClosureTree 在企业级应用中的最佳实践:高效构建 ActiveRecord 层级模型

ClosureTree 在企业级应用中的最佳实践&#xff1a;高效构建 ActiveRecord 层级模型 【免费下载链接】closure_tree Easily and efficiently make your ActiveRecord models support hierarchies 项目地址: https://gitcode.com/gh_mirrors/cl/closure_tree ClosureTree…...

SITS 2026发布12项技术白皮书+7套开源工具链:附CSDN认证工程师亲测部署清单(含GitHub直达链接)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;CSDN主办SITS 2026&#xff1a;2026奇点智能技术大会亮点全解析 SITS 2026&#xff08;Singularity Intelligence Technology Summit&#xff09;由CSDN联合中国人工智能学会、中科院自动化所共同主办&…...

2025最权威的五大降AI率方案推荐榜单

Ai论文网站排名&#xff08;开题报告、文献综述、降aigc率、降重综合对比&#xff09; TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 在当今这个人工智能生成内容被广泛运用的时代&#xff0c;“降AI”已经成为内容创作者以及运…...

别再死记硬背ResNet结构了!用PyTorch手把手拆解残差块,搞懂Skip Connection为啥能防梯度消失

别再死记硬背ResNet结构了&#xff01;用PyTorch手把手拆解残差块&#xff0c;搞懂Skip Connection为啥能防梯度消失 残差网络&#xff08;ResNet&#xff09;自2015年问世以来&#xff0c;已经成为深度学习领域的基石架构之一。但很多开发者在复现ResNet时&#xff0c;往往陷入…...

S7-1200 PLC RS232自由口PTP通信实战:从硬件组态到数据收发

1. 硬件准备与接线指南 第一次接触S7-1200 PLC的RS232通信时&#xff0c;我完全被DB9接头上那些密密麻麻的针脚搞晕了。后来才发现&#xff0c;只要搞清楚几个关键引脚&#xff0c;接线其实比想象中简单得多。我们以最常用的CPU 1214C搭配CM1241通信模块为例&#xff0c;这套组…...