stm32智能颜色送餐小车(ESP8266WIFI模块、APP制作、物联网模型建立、MQTTFX)

大家好啊,我是情谊,今天我们来介绍一下我最近设计的stm32产品,我们在今年七月份的时候参加了光电设计大赛,我们小队使用的就是stm32的智能送餐小车,虽然止步于省赛,但是还是一次成长的经验吧,那么我也来分享一下我们小队这次的产品设计,希望里面的一些模块可以给你们一点的参考建议。

我先说说我的博客文章的设计吧,我准备的是以模块的方式展示代码,但是文章的最后我会附带我们小队设计的stm32小车的完整代码

接下来我再说说我的小车实现的功能:

1二维码识别,使用openmv扫描对应颜色的二维码后,oled屏幕上显示对应的菜品名称,并且小车识别追踪该颜色物体

2压力传感器感知物体重量,当压力传感器的重量超过一定值后小车才会运动,注意!这个功能和上面的二维码识别并不冲突,上面扫码后openmv只能识别到该颜色,但是小车却不能动,只有压力传感器有示数才会运动

3APP点单,我们小组是使用ESP8266wifi模块制作了一个APP来模拟点单

4温度传感器时刻感知环境温度,这个模块的功能其实就是在送餐途中进行保温使用的

5蜂鸣器播报,客户下单后蜂鸣器会进行鸣叫

6红外光管避障,我们小组并未在避障方面进行过多的功能,所以只有简单的避障功能:小车识别到前方有物体,然后停下来,等到前方没有物体后继续运动

以上就是我的产品的全部功能了

注意注意!!!

我文章末尾上传的代码只有功能1和功能2和功能6的代码,功能3我只能负责给你们说说怎么做,如果实在需要代码,请联系我,这部分代码不是免费的,功能4和功能5的代码不在我的电脑上,所以我就不进行讲解了。

器件端

首先声明一下

本次实验的芯片是基于stm32c8t6

本次实验使用的esp8266WiFi模块

本次使用的软件是OneNET平台建立物联网模型

本次使用的Web代码编写:HbuildX

 

本次实验使用的激活物联网模型的软件:MQTTFX,本软件我会分享在文章最后 

讲解端

建立APP软件端我认为分为三大步,第一步主要是进行stm32端的esp8266配置,第二部主要进行的是物联网OneNET的创建,第三步是HbuildX端的Web代码编写

这里我提供的代码都为B站UP主    壹知半解  提供的APP基础代码,各位可根据代码进行修改,也可观看该UP主的视频进行学习。(备注:我不是该up主,我是参考了他的代码)

第一步:stm32端配置

链接: https://pan.baidu.com/s/165s7W9_2S_wC1yGdFem0cw?pwd=2180 提取码: 2180

第二步:物联网模型建立

这个也可以根据上面提到的up主的视频进行创建,该up主有非常详细的讲解,我只是简单的提及一下。

首先先在产品开发中创建一个新的产品

然后配置属性

 

然后接着使用MQTTFX激活该物联网,详细过程可以参考up主的视频,我这里就不再讲解

第三步,接下来在HbuildX中编写web代码

 链接: https://pan.baidu.com/s/1Ba3aFzGXigWec2Ta9qqZTQ?pwd=2180 提取码: 2180     

然后再进行云打包发送软件到手机上就可以了。

注意!!   我的讲解只是一个非常简单的大致过程,详细请见上面提到的up主的视频去学习,提供的代码也只是对应模板,如果需要我的代码,可以联系我,但是不是免费,不是免费!! 

最后,器件的原理图和物料清单如下(这是up主提供的温度传感器的物品,你们可以修改)

链接: https://pan.baidu.com/s/1XAmi4f8LoXiMdNkjTv314A?pwd=2180 提取码: 2180   

好了,以上就是ESP8266WIFI模块、APP制作、物联网模型建立、MQTTFX的全部代码了,如果有什么问题,欢迎各位在评论区留言,本人看到一定会回消息的,如果本文章对你有用的话,请给一个小小的赞呗,你的赞就是对我的最大的鼓励!谢谢大家!

最后HbuildX软件和MQTTFX软件我也提供给大家了,就在下方的代码。

链接: https://pan.baidu.com/s/1ddDeF7F7RkEU0Kzy6FveIQ?pwd=2180 提取码: 2180

mmexport1723541008067

 

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

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

相关文章

Linux系统-通用权限管理

目录 一、文件类型 二、通用权限 1.文件的常规权限 权限类型 壹.对于文件: 贰.对于目录: 查看和修改权限 说明: 举例: 字母表示法 数字表示法 2.文件的访问控制列表(FACL File access control list&#…

菱形继承和虚继承

菱形继承(Diamond Inheritance)是指在多重继承的情况下,某个类继承自两个类,而这两个类又都继承自同一个基类的情况。 在这个结构中,D 直接从 A 继承了 A 的所有特性,但通过 B 和 C 继承,这会导…

eNSP 华为三层交换机配置DHCP

华为三层交换机配置DHCP 华为DHCP原理:(思科四个都是广播包) 1、客户端广播发送DHCP Discover包。用于发现当前局域网中的DHCP服务器。 2、DHCP服务器单播发送DHCP Offer包给客户端。携带分配给客户端的IP地址。 3、客户端广播发送DHCP Resqe…

索引的数据结构

1.举例引出索引: 1.1.什么是索引: 1.2.数据查找分析: a.数据查找: 1.如上图所示,数据库没有索引的情况下,数据分布在硬盘不同的位置上面,读取数据时,摆臂需要前后摆动查找数据,这…

Java方法04:命令行传递参数

本节视频链接:https://www.bilibili.com/video/BV12J41137hu?p48&vd_sourceb5775c3a4ea16a5306db9c7c1c1486b5https://www.bilibili.com/video/BV12J41137hu?p48&vd_sourceb5775c3a4ea16a5306db9c7c1c1486b5 在Java中,‌命令行传递参数…

PyTorch--深度学习

onux部署功能 cpu运行时间 3. 自动求导 求导结果为:2 1 1

考试题型宏观分析之公共营养师三级

背景 第一遍知识学习之后,打印《2023.10.14公共营养师三级真题》进行第一次摸底,首要目标在于通过摸底,对于考试题型进行宏观分析和了解,其次,对于后续的学习进行有的放矢 直至2024-08-18,对于上述资料的一…

Apache-JMeter压测工具教程

下载安装 《JMeter官网下载》 下载完成后,找个文件夹进行解压 配置环境变量 JAVA_HOME(如果是JAVA8还需要配置CLASSPATH)、JMETER_HOME JMETER_HOME修改bin目录下的jmeter.properties文件编码为UTF-8 5.6.3这个版本encoding已经默认为UT…

肿瘤细胞表皮生长因子EGFR靶向肽;GE11;YHWYGYTPQNVI

【GE11简介】 GE11肽是从噬菌体展示肽库中筛选出来的一种有效的EGFR配体,它是一种十二肽,可以高亲和力和选择性地与EGFR特异性结合。GE11已广泛用于EGFR阳性肿瘤的放射治疗、基因治疗和化疗药物的诊断和靶向递送。 【中文名称】肿瘤细胞表皮生长因子肽…

理解Tomcat的IP绑定与访问控制

在使用Spring Boot开发应用时,内置的Tomcat容器提供了灵活的网络配置选项。特别是,当计算机上有多个网卡时,如何配置server.address属性显得尤为重要。本文将详细探讨不同IP配置对Tomcat服务访问的影响。 多网卡环境下的IP配置 假设你的计算…

微前端架构:使用不同框架构建可扩展的大型应用

概述 在现代Web开发中,随着业务复杂度的不断提高,单一的巨型应用逐渐难以满足高效开发和维护的需求。微前端架构作为一种解决方案,允许将一个大型应用拆分成多个独立的小型应用,这些小型应用可以单独开发、部署,并且能…

【Neo4j系列】简化Neo4j数据库操作:一个基础工具类的开发之旅

作者:后端小肥肠 在Neo4j系列我打算写一个Neo4j同步关系数据库、增删改查及展示的基础小系统,这篇文件先分享系统里面的基础工具类,感兴趣的可以点个关注,看了文章的jym有更好的方法可以分享在评论区。 创作不易,未经允…

快讯 | OpenAI 找回场子:chatgpt-4o-latest 刷新多项AI跑分纪录

在数字化浪潮的推动下,人工智能(AI)正成为塑造未来的关键力量。硅纪元视角栏目紧跟AI科技的最新发展,捕捉行业动态;提供深入的新闻解读,助您洞悉技术背后的逻辑;汇聚行业专家的见解,…

微信支付代理商-自助提交资料源码之结算信息页面—微信支付商机版

一、支付代理上自助提交资料 一般在都在小程序完成提交 在网页中异常提示alert 但是很多小程序禁用了这个函数 并且不好看 那么久自定义一个组件每次直接调用 二、提示技术代码 function 未来之窗_VOS_通用提醒(msg){var 未来之窗内容message<cyberdiv style"font…

C++| QT图片调整透明度叠加

QT图片调整透明度叠加 实际效果界面UI放置控件设置布局界面自适应 代码项目工程的文件初始化按钮功能滑动条功能图片调整透明度叠加 实际效果 三个图片&#xff08;QLabel&#xff09;显示&#xff0c;两个按钮&#xff08;QPushButton&#xff09;加载图片&#xff0c;一个&a…

Spring 声明式事务 @Transactional

目录 一、添加依赖 二、Transactional 作用 三、Transactional详解 3.1 rollbackFor 3.2 事务隔离级别 3.3 Spring 事务传播机制 Spring 声明式事务 Transactional的使用很简单&#xff0c;只需要添加依赖&#xff0c;在需要的方法或者类上添加 Transactional注解即可。 …

AMBA-CHI协议详解(六)

AMBA-CHI协议详解&#xff08;一&#xff09; AMBA-CHI协议详解&#xff08;二&#xff09; AMBA-CHI协议详解&#xff08;三&#xff09; AMBA-CHI协议详解&#xff08;四&#xff09; AMBA-CHI协议详解&#xff08;五&#xff09; AMBA-CHI协议详解&#xff08;六&#xff09…

硬件面试经典 100 题(71~90 题)

71、请问下图电路的作用是什么&#xff1f; 该电路实现 IIC 信号的电平转换&#xff08;3.3V 和 5V 电平转换&#xff09;&#xff0c;并且是双向通信的。 上下两路是一样的&#xff0c;只分析 SDA 一路&#xff1a; 1&#xff09; 从左到右通信&#xff08;SDA2 为输入状态&…

Golang | Leetcode Golang题解之第349题两个数组的交集

题目&#xff1a; 题解&#xff1a; func intersection(nums1 []int, nums2 []int) (res []int) {sort.Ints(nums1)sort.Ints(nums2)for i, j : 0, 0; i < len(nums1) && j < len(nums2); {x, y : nums1[i], nums2[j]if x y {if res nil || x > res[len(re…

Python基础和变量使用

1. 基础了解 1.1 运行方式 Python有多种运行方式&#xff0c;以下是几种常见的执行Python代码的方法&#xff1a; 交互式解释器&#xff1a; 打开终端或命令提示符&#xff0c;输入python或python3&#xff08;取决于你的系统配置&#xff09;&#xff0c;即可进入Python交互…