Esp8266 mqtt 步进电机远程控制窗帘

Esp8266 mqtt 步进电机远程控制窗帘使用28BYJ-48步进电机esp8266-12f(或nodemcu)mqtt基于arduinoIDE开发实现通过mqtt发送指令给wifi模块进而控制电机,电机拖动窗帘打开或闭合效果演示地址:链接搭建模型如何制作电动窗帘,牛人给你解释它的原理参考这个视频搭建窗帘模型模型搭建很重要就算电机能够稳定控制但是模型搭建的不好窗帘的打开和关闭都会受到影响电机要粘牢固…

大家好,又见面了,我是你们的朋友全栈君。

使用 28BYJ-48步进电机 esp8266-12f(或nodemcu) mqtt 基于arduino IDE开发实现
通过mqtt发送指令给wifi模块进而控制电机,电机拖动窗帘打开或闭合

效果演示地址:
链接

搭建模型

如何制作电动窗帘,牛人给你解释它的原理
参考这个视频 搭建窗帘模型
enter description here

模型搭建很重要 就算电机能够稳定控制但是模型搭建的不好 窗帘的打开和关闭都会受到影响

  • 电机要粘牢固
  • 绳子要选细的粗糙的(摩擦力大)
  • 窗帘选软纸 或者布
  • 滑轮一定要认真做 很影响转动

我第一次试验论证是否能够行得通的时候 制作了一个窗帘模型,犯了很多错做的也很丑
但是试验成功了!!!
enter description here

第二次我们的窗帘模型是我和另外一个java大佬熬夜做出来的,两个工科生做手工真的是太折磨人了…
enter description here

步进电机原理

28BYJ-48步进电机
enter description here

28BYJ-48的含义为外径28毫米四相八拍式永磁减速型步进电机
对于驱动28BYJ-48步进电机,最常用的方法是使用ULN2003驱动板。
用Arduino开发板的+5V电源直接为ULN2003驱动板供电的方法短时间测试是可以的,但是不要在长时间使用Arduino为ULN2003驱动板进行供电。
enter description here

更详细的原理分析 链接

控制步进电机

电路接线图
enter description here

使用Stepper库
建立步进电机对象
定义电机控制引脚以及电机基本信息。
电机控制引脚为 8,9,10,11
以上引脚依次连接在ULN2003 驱动板 In1, In2, In3, In4
创建电机 对象

示例代码
参考 dianji.ino 学习stepper库的使用方法
创建对象 Stepper steppermotor(STEPS_PER_ROTOR_REV, 8, 10, 9, 11);
其中的第一个参数为 一次转动的步数
在这里可以设置为2048

示例代码

/* Arduino控制28BYJ-48步进电机测试程序 本示例程序旨在演示如何通过Arduino控制28BYJ-48步进电机。 */
 
//本示例程序使用Stepper库
#include 
 
// 定义电机控制用常量
 
// 电机内部输出轴旋转一周步数
const int STEPS_PER_ROTOR_REV = 32; 
 
// 减速比
const int GEAR_REDUCTION = 64;
 
/* * 转子旋转一周需要走32步。转子每旋转一周,电机输出轴只旋转1/64周。 * (电机内部配有多个减速齿轮,这些齿轮会的作用是让转子每旋转一周, * 输出轴只旋转1/64周。) * 因此电机输出轴旋转一周则需要转子走32X64=2048步,即以下常量定义。 */
 
// 电机外部输出轴旋转一周步数 (2048)
const float STEPS_PER_OUT_REV = STEPS_PER_ROTOR_REV * GEAR_REDUCTION;
 
// 定义电机控制用变量
 
// 电机旋转步数
int StepsRequired;
 
// 建立步进电机对象
// 定义电机控制引脚以及电机基本信息。
// 电机控制引脚为 8,9,10,11 
// 以上引脚依次连接在ULN2003 驱动板 In1, In2, In3, In4 
 
Stepper steppermotor(STEPS_PER_ROTOR_REV, 8, 10, 9, 11); 
 
void setup()
{ 
   
//setup函数内无内容
}
 
void loop()
{ 
   
  // 极慢转动4步用于观察ULN2003电机驱动板LED变化
  steppermotor.setSpeed(1);    
  StepsRequired  =  4;
  steppermotor.step(StepsRequired);
  delay(1000);
 
   // 慢速顺时针旋转一圈
  StepsRequired  =  STEPS_PER_OUT_REV; 
  steppermotor.setSpeed(500);   
  steppermotor.step(StepsRequired);
  delay(1000);
  
  // 快速逆时针旋转一圈
  StepsRequired  =  - STEPS_PER_OUT_REV;   
  steppermotor.setSpeed(800);  
  steppermotor.step(StepsRequired);
  delay(2000);
 
}

参考太极创客链接

wifi模块控制电机

依旧使用的stepper库更改了GPIO引脚
创建对象
Stepper steppermotor(STEPS_PER_OUT_REV, D1, D2, D5, D6);
Stepper steppermotor(STEPS_PER_OUT_REV, 5, 4, 14, 12);
(两个一样)

看到国外一个使用nodemcu mqtt 以及 28BYJ-48步进电机的使用方法
更换了引脚 更改了部分参数 成功了

接线图
enter description here
enter description here
(对应GPIO 分别是GPIO 5,GPIO 4, GPIO14, GPIO12)

创建的对象为 Stepper steppermotor(STEPS_PER_OUT_REV, D1, D2, D5, D6);
其中第一个参数设置为200 速度设置80 相比于arduino都比较小
将第一个参数提升到600时电机转不动… 没找到原因

项目参考代码在下方

更多学习教程

ESP开发学习基础知识

基础知识包括对esp模块的认识与了解 mqtt协议的了解,arduino IDE运用代码编写等等。

  1. arduino基础学习
  2. esp系列模块的介绍
  3. mqtt协议的介绍与使用
  4. 利用mqtt esp模块 基于arduino IDE开发方法
  5. esp模块的AT指令 刷固件
  6. esp模块睡眠模式使用
  7. esp8266-01s介绍与使用
  8. esp8266-12f介绍与使用
  9. NodeMcu介绍与使用
esp开发IOT应用

基于esp8266的模块以及其他模块根据实际的应用场景与需求制作的物联网应用

  1. 基于FRID arduino 继电器 电磁锁开发的FRID门禁系统
  2. esp32-cam获取视频流图像处理
  3. 基于步进电机 esp8266 mqtt开发的自动窗帘控制
  4. 基于DHT11 Esp8266 mqtt获取室内温湿度
  5. 基于CCS811 esp8266 mqtt 获取室内空气质量
  6. 基于红外模块 esp8266 mqtt开发的智能遥控控制
  7. 基于ws2812 esp8266 mqtt开发的智能多级照明灯
  8. 基于ws2812 esp8266 mqtt开发的智能多模式氛围灯
  9. 基于mp3player esp8266 mqtt开发的智能语音播报系统
  10. IOT综合应用之智慧教室项目开发

如果以上内容对你有帮助或是对IOT开发感兴趣,欢迎关注我。

本人接下来一段时间承接人脸图像处理,IOT开发等相关项目(毕设 比赛等)
有需要可联系qq:1639206518

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/152469.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月23日 上午8:36
下一篇 2022年6月23日 上午8:36


相关推荐

  • hadoop集群 secondary namenode 的作用,fsiamge和edit的关系「建议收藏」

    hadoop集群 secondary namenode 的作用,fsiamge和edit的关系「建议收藏」hadoop集群 secondary namenode 的作用,fsiamge和edit的关系

    2022年4月23日
    64
  • 百万建模师的心声:3D游戏建模真的很累,但是数钱不累「建议收藏」

    百万建模师的心声:3D游戏建模真的很累,但是数钱不累「建议收藏」所有行业都是一样的,没有什么容易的,只不过这一行是偏向于技术的,一个有好的建模师月薪10k+是很常见的,这个需要有自己刻苦学习的成果。游戏建模前景在游戏模型行业,你基本不用担心找不到工作,因为游戏模型师人才缺口非常大。举个例子:游戏制作公司的人员配比大多数是这样的:比如100人的三维制作组,可能有60人在做模型贴图,10个人在K动画。只要你保证技能在手,一定是抢手的人才。【点击加入学习圈】游戏建模如今的市场竞争很大,工资很高,标准非常高,想要胜任一份高薪的工作不是那么容易。学习建模这是一个非

    2022年5月19日
    67
  • UVA10765-Doves and bombs(BCC)

    UVA10765-Doves and bombs(BCC)

    2022年1月31日
    52
  • VS2013 产品密钥 – 所有版本

    VS2013 产品密钥 – 所有版本 VisualStudioUltimate2013KEY(密钥):BWG7X-J98B3-W34RT-33B3R-JVYW9VisualStudioPremium2013KEY(密钥):FBJVC-3CMTX-D8DVP-RTQCT-92494VisualStudioProfessional2013 KEY(密钥): XD…

    2022年4月3日
    7.5K
  • Etcd – 分布式配置中心

    Etcd – 分布式配置中心Etcd简介Etcd是一种分布式kv存储设施,他具有一定的一致性,高性能,高可用的方案.类似的zookeeper,但没有zookeeper那么重型,功能也没有覆盖那么多.简单直接的应用就是配置中心架构设计总览clients为多个需要配置的服务,中间层为多个grpc-proxy做均衡负载,以免一个proxy挂了之后导致单点问题.grpc…

    2025年6月22日
    8
  • 中文短文本分类实例六-DCNN(A Convolutional Neural Network for Modelling Sentences)「建议收藏」

    中文短文本分类实例六-DCNN(A Convolutional Neural Network for Modelling Sentences)「建议收藏」一.概述DCNN(AConvolutionalNeuralNetworkforModellingSentences)byNalKalchbrenner等,又是文本分类论文的一力作。”准确表达句子的语义是语言理解的核心”,通过学习机器学习和TextCNN,我们可以知道n-gram特征是NLP文本任务和句子表达的一种重要方法。TextCNN通过不同步长的卷积核(例如2…

    2022年5月5日
    61

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号