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

沈阳大型网站建设wordpress 标签 彩色

沈阳大型网站建设,wordpress 标签 彩色,微信公众号功能模块,北京的p2p网站建设目录 概要 成品效果 背景概述 1.开发环境 2.主要传感器。 技术细节 1. 用户如何知道选择了何种功能 2.启动后如何进行洗衣 3.如何将洗衣机状态上传至服务器并通过APP查看 4.洗衣过程、可燃气检测、OLED屏显示、服务器通信如何并发进行 小结 概要 本文章主要是讲解如…

目录

概要

成品效果

背景概述

1.开发环境

2.主要传感器。

技术细节

1. 用户如何知道选择了何种功能

2.启动后如何进行洗衣

3.如何将洗衣机状态上传至服务器并通过APP查看

4.洗衣过程、可燃气检测、OLED屏显示、服务器通信如何并发进行

小结


概要

        本文章主要是讲解如何基入STM32开发板,来做一个智能洗衣机,该洗衣机有16种洗衣功能、有模式选择LED灯、检测可燃气浓度功能、OLED显示时间功能、手机APP查看状态功能。具体工作流程看下图

成品效果

        本产品在启动后,外部的电磁锁会自动上锁。模拟市面上的侧开式滚筒洗衣机,通过开发板上的按键来选择功能和开关机,下面是实物成品图:

视频链接:手搓家用智能洗衣机_哔哩哔哩_bilibili

侧面图(带板子)

                正面图(带入水池)

机体内部1

机体内部2

背景概述

如果看到这里已经开始感兴趣的道友,本文现在正式简绍产品所有所需材料及开发环境等背景

1.开发环境

板子:STM32F4系列

软件:keil5

机体:自行焊接的外壳

2.主要传感器。

        WIFI模块、OLED屏、水位检测模块、可燃气检测模块、直流电机、抽水泵、电池锁、继电器、电池组、LED流水灯

        具体完整模块清单已上传资源

技术细节

        因为不想长篇大论,这里就说部分项目的难点、解决方法和其中模块、板子、服务器直接的链接和规划。

1. 用户如何知道选择了何种功能

       使用两排8灯的LED流水灯,将其连接到开发板的16个IO口上。通过板子上的4个按键电平变化来知道按下的键位。设定:按键1长按2s开机,按键2和按键3可以选择模块,按下后对应的LED灯电平设为低电平使其亮灯,并且记录模式标志位。按键4可启动程序

2.启动后如何进行洗衣

       先将继电器模块分别连接开发板和直流电机、抽水泵、电热片、水位检测等传感器。收到启动信号后,通过ADC转换判断当前水位高度,到达指定高度后打开入水泵继电器开关,开始抽水,同时自动上锁。

        同理,水位到达指定高度后,抽水泵关闭,电机滚筒开始工作。时间到后,启动排水泵。通过程序设计可实现洗涤、漂洗、甩干功能。而选择特定模式如:烘干、标准洗。可在指定时间打开电热片,并同过风扇将热风穿过送风口到达滚筒内部进行烘干。

        启动后,板子和OLED屏通过IIC协议进行通信,将剩余时间实时更新至屏幕

3.如何将洗衣机状态上传至服务器并通过APP查看

        板子连接Esp8266WIFI模块,通过UART协议发送AT指令,连上热点后可开启透传模式。这时即可通过MQTT协议同阿里云服务器的物联网平台进行通信。这里需要注意发布和订阅的处理和设定。成功上传服务器后可通过阿里云应用开发平台进行APP界面设计,阿里云平台的步骤我已上传,下载查看即可。

4.洗衣过程、可燃气检测、OLED屏显示、服务器通信如何并发进行

        这里就要用到操作系统了,因为裸机开发只能做到简单的洗衣功能。本产品用的是FreeRots实时操作系统,将各步骤分为了5个一级任务,部分任务里面也会创建二级任务来达到需求。其中通过任务优先级的大小来决定其任务顺序:

1.硬件初始化任务                        2.链接服务器任务

3.可燃气检测任务                        4.程序主入口任务

5.数据上报任务

补充

FreeRTOS是一个开源的实时操作系统内核,它支持优先级继承和优先级天花板协议,以确保系统的实时性能和任务的响应时间。在FreeRTOS中,任务的优先级规则如下:

  1. 优先级分配:每个任务都可以被分配一个唯一的优先级。在FreeRTOS中,优先级编号通常是一个无符号整数,优先级的范围可以从0到configMAX_PRIORITIES-1,其中configMAX_PRIORITIES是在FreeRTOS配置文件中定义的。

  2. 最高优先级规则:FreeRTOS是一个基于优先级的抢占式调度器。当多个任务处于就绪状态时,调度器将选择优先级最高的任务来执行。如果有两个或多个任务具有相同的优先级,调度器将根据任务的就绪态切换(round-robin)来决定执行哪个任务。

  3. 优先级继承:当高优先级任务试图访问一个已经被低优先级任务占用的资源(如互斥量)时,低优先级任务将临时继承高优先级任务的任务优先级,以防止高优先级任务发生优先级反转(priority inversion)。一旦低优先级任务释放了资源,它的优先级将恢复到原来的值。

  4. 优先级天花板协议:这是一种可选的优先级继承的变种,它可以减少优先级反转的发生。在天花板协议中,当任务获取互斥量时,它会将自己的优先级提升到该互斥量的天花板优先级(一个预先定义的最高优先级),从而防止更高优先级的任务被阻塞。

  5. 中断和临界区:中断服务例程(ISR)的执行优先级高于所有任务。在ISR中,可以调用中断安全的API来执行一些操作。为了保护共享资源,任务可以使用临界区,在临界区中,调度器会被暂时禁用,以防止其他任务执行。

  6. 时间片调度:尽管FreeRTOS是抢占式的,但它也支持时间片(time-slicing)的概念。如果启用了时间片,具有相同优先级的任务将轮流执行,每个任务运行一个时间片(quantum)后,调度器将切换到下一个就绪的任务。

小结

        以上就是部分项目难点和实现过程,实际开发过程绝不像现在述说般的云淡风轻。例如硬件上:线路繁多,要考虑板子有限的IO口和ADC转换器安排分配;机体空间不大,考虑水泵、滚筒等传感器位置和协调;传感器众多,板子电压不足等等情况。

        而在软件上,考虑各模块的通信,熟系不同时序图后,最起码的延时要通过计算总线频率、设置预分频寄存器、重载寄存器来计数达到。而上了操作系统后又要考虑非阻塞延时和阻塞延时等设计;要查看各个传感器数据手册、原理图进行控制和通信...

        项目的各模块代码累积几千行,成品出来后让人心里生成慢慢成就感。本产品也有市场上其他产品所不具备的功能,比如可燃气检测,部分家庭仍然是使用煤气或天然气热水器,而这些可燃气都有泄露的风险。本产品可实时检测可燃气浓度,在超过指定值后蜂鸣器报警并在APP提醒用户,避免发送意外。而本产品设计之初是加装了语言模块,用户通过关键词唤醒智能管家后。可语言选择洗衣模式。后面考虑到可能有儿童误触发语言条件,如果进入机体,容易发生意外,最后移除掉语言功能。

        这次的项目让我对嵌入式产品开发有了更深入的认识,知道了和传感器通信的IIC、SPI、UART等协议,开拓了视野。我对嵌入式开发信心更胜。源码已经开源,希望道友们都能乘风破浪,到达彼岸!

http://www.yayakq.cn/news/906813/

相关文章:

  • 网站微信分享怎么做wordpress调用分类id
  • 平面设计类的网站魏县网站制作
  • 网站流量优化互联网行业都有哪些工作赚钱
  • 做网站的公司北京有哪些企业网站模板 优帮云
  • 网站怎么做悬浮图片wordpress下载管理插件
  • 菏泽正耀网站建设公司怎么样大兴智能网站建设哪家好
  • 网站开发图片素材设计一个电商网站的首页
  • 手机网站广告成都市住房和城乡建设厅官网
  • 网站推广新手入门教程目前哪些企业需要做网站建设的呢
  • 江门专业做网站wordpress的简单应用
  • 南充阆中网站建设浦江县做网站
  • 十堰优化网站哪家好深圳ui设计培训班
  • 太原市城乡建设局网站网页设计图片叠加
  • 国家网站建设的相关规定电子商务网站体系结构有哪些
  • 室内设计做效果图可以接单的网站dw可以制作网站吗
  • 网站备案和域名备案一样吗网站的营销与推广
  • 栅格系统做的网站哈尔滨市工程招标网
  • 用于网站开发的语言readme.md做网站
  • 商业平台网站开发网站全局搜索如何做
  • 手机端网站开发视频教程做不了飞机要看什么网站
  • 大连做网站的网络公司网页源代码是什么语言
  • 网站公司制作手机怎样建立自己网站
  • wap网站发布wordpress首页排版错误
  • 简述网站建设和推广评价指标国内网站建设公司top20
  • word 发布到wordpress购物网站seo搜索引擎优化方案
  • 免费qq空间网站福建整站优化
  • 网站怎么伪静态山东营销型网站
  • 海尔建设网站的内容永久免费微信小程序商城
  • 成都建设局网站上海小程序搭建
  • 官方网站平台有哪些大连开发区网站开发公司