当前位置:首页 > 案例

基于Arduino构建的电动百叶窗

来源:ayx网页版    发布时间:2024-01-02 03:09:49

  “早上好。现在是早上 7 点,马里布的天气是 72 度……”这是 JARVIS 在漫威电影宇宙中被介绍的第一句话。大多数钢铁侠粉丝应该能够回忆起这个场景,并记得 JARVIS 能够在早上打开一个窗口(有点)并提供时间和天气的更新。在电影中,窗户眼镜其实就是由透明触摸显示器制成的,因此 JARVIS 能够使其从黑色变为透明,并在其上显示天气统计数据。但是,在现实中,我们离透视触摸屏还很远,离我们越近的就是自动控制百叶窗或约束。

  因此,在这一个项目中,我们将准确地构建它,我们将构建一个自动电动百叶窗,它将在预定义的时间自动打开和关闭。

  现在市场上的百叶窗种类非常之多,但最常用的是一根带有珠子的绳子(如下图),可以拉动以打开或关闭百叶窗。

  当我们顺时针方向拉动这条圆形绳索时,百叶窗会打开,当我们逆时针方向拉动这条绳索时,百叶窗就会关闭。因此,如果我们要使这样的一个过程自动化,我们所要做的就是使用电机将这条绳子顺时针或逆时针方向拉动,我们就能够实现它。事实上,这就是我们在这一个项目中要做的;我们将使用 28BYJ-48 步进电机和 NodeMCU来拉珠绳。

  这个项目的电子部分相当简单直接,具有挑战性的部分是建造可以拉珠绳的盲齿轮。所以让我们从盲齿轮设计开始这篇文章,我不打算详细的介绍如何设计齿轮,但这个基本概念应该对你起到一定的帮助。下面显示了带有珠子的绳子的图像。

  再次,绳子有很多种类型,但最常用的绳子是每个珠子的中心距为6mm,每个珠子的直径为4mm。使用这一些信息,我们可以开始设计我们的装备。如果您百叶窗上的绳索与讨论的尺寸相同,您可以跳过此步骤并下载本文提供的 STL 文件并打印齿轮。如果你的绳子有不同的珠子排列,那么这就是你应该重新设计盲齿轮的方法。

  我决定在我的齿轮上安装 24 颗珠子以获得最佳的齿轮尺寸,您可以选择任何接近此的数字来让您的齿轮变大或变小。所以现在,我们知道每个珠子之间的距离是 6 毫米,我们的齿轮上需要 24 个珠子。将两者相乘将得到齿轮的周长。有了这些数据,您就可以计算出齿轮的半径。正如您在上图中看到的,我的齿轮直径计算为大约 46 毫米。但请记住,这不是齿轮的实际直径,因为我们没有考虑到 4mm 的珠子直径。因此,齿轮的实际直径为 42 毫米,我打印并测试了许多齿轮,然后才找到效果最好的齿轮。

  除了齿轮,我们还需要一个可以钻到墙上并将步进电机固定到位的小外壳,这个项目中使用的外壳和齿轮如下所示。

  您可以在下面给出的 Arduino Blind Control Thingiverse 页面上找到完整的设计文件和 STL 文件。您可以下载并打印您的盲齿轮和电机箱。

  一旦您准备好齿轮和组件,就很容易继续进行电子和软件部分。物联网盲控项目的完整电路图如下所示。

  我们使用 12V 适配器为整个设置供电;LM1117-3.3V 稳压器将 12V 转换为 3.3V,可用于为 NodeMCU 板供电。步进电机驱动模块直接由 12V 适配器供电。我确实尝试在 5V 上运行步进电机,但它没有提供足够的扭矩来拉动百叶窗,因此请确保您也使用 12V。

  除此之外,电路非常简单,如果您不熟悉步进电机,请查看步进电机的基础知识文章,了解它的工作原理以及如何与微控制器一起使用。

  在我们进入控制百叶窗的 Arduino 程序之前,让我们打开 blynk 应用程序并创建一些按钮,我们大家可以使用这些按钮打开或关闭百叶窗。稍后我们也将需要它来从 Google Home 进行控制。

  我刚刚添加了两个按钮来打开和关闭百叶窗,以及每天上午 10:00 开启百叶窗的一次性计时器。您可以添加多个计时器以在一天中的不同时间间隔打开或关闭百叶窗。基本上,当我们必须关闭百叶窗时,我们必须触发虚拟引脚 V1,而当我们必须打开百叶窗时,我们必须触发虚拟引脚 V2。基于此处按下的按钮控制步进电机的程序将编写在 Arduino IDE 上,下面将讨论相同的内容。

  此盲控项目的完整ESP8266代码可在本页底部找到。我们的程序必须等待来自 blynk 应用程序的命令,并且基于该命令,我们必须以顺时针方向或逆时针方向旋转步进电机。下面讨论代码的重要部分。

  根据我们的电路图,我们使用 nodemcu 上的数字引脚 1、2、3 和 4 来控制我们的步进电机。因此,我们必须使用这些引脚创建一个名为 stepper 的实例,如下所示。请注意,我们按 1、3、2 和 4 的顺序定义了引脚。这是故意的,不是错误;我们必须交换引脚 2 和 3 才能使电机正常工作。

  在下一步中,我们必须共享我们的 blynk 应用程序身份验证令牌和我们的 IoT Blind 控制器必须连接到的 Wi-Fi 凭据。如果您不确定如何获取此 Blynk 身份验证令牌,请参阅Blynk LED 控制项目以了解 blynk 应用程序的基础知识以及如何使用它。

  继续我们的代码,在 setup 函数之后,我们为 blynk 定义了两个方法。如前所述,我们必须定义虚拟引脚 V1 和 V2 应该做什么。下面给出了相同的代码。

  如您所见,V1 用于关闭百叶窗,V2 用于打开百叶窗。for 循环用于使电机顺时针或逆时针方向旋转 130 步。我用我的百叶窗进行了实验,发现通过 130 步,我能够完全打开和关闭我的百叶窗。您的号码可能会有所不同。用于顺时针和逆时针方向旋转步进电机的for 循环如下所示。

  您还可以在我们的程序中注意到两个布尔变量“打开”和“关闭”。这两个变量用于防止电机两次打开或关闭百叶窗。意思是,百叶窗只有在之前关闭时才会打开,并且只有在之前打开时才会关闭。

  使用 28BJY-48 步进电机的一个缺点是速度很慢。这些电机最初是为高精度低速应用而制造的,因此不要指望这些电机会高速旋转。如果您想使用 Arduino 提高步进电机的速度,您可以更改两个参数。一个是#define STEPS 64,我发现当steps定义为64时,电机相对更快。另一个参数是 stepper.setSpeed(500); 我再次发现 500 是一个最佳值,超过这个值实际上会使步进电机变慢。

  你知道提高这些电机速度的其他方法吗?如果是,请将它们留在下面的评论部分。

  不使用时应始终禁用步进电机,以防止过热。禁用步进电机非常简单;只需将控制步进电机的所有四个 GPIO 引脚的引脚状态更改为低电平即可。这非常重要,否则您的电机可能会在 +12V 时变得非常热并永久损坏自身。下面给出了禁用步进电机的程序。

  我们将使用 blynk API 通过谷歌助手来控制百叶窗,它类似于我们的语音控制家庭自动化项目,所以如果有兴趣请检查一下。

  电路和 3D 打印外壳准备好后,只需在墙上钻两个孔即可将设备组装在墙上。我的安装设置如下图所示。

  之后,确保您的百叶窗处于打开状态,然后打开电路。现在,您可以尝试从 blynk 应用程序或通过 Google Assistant 关闭百叶窗,它应该可以工作。您还可以在 blynk 应用程序上设置计时器,以在一天中的特定时间自动打开和关闭百叶窗。

  关键字:Arduino编辑:什么鱼 引用地址:基于Arduino构建的电动百叶窗

  通过利用运营商已经建立的蜂窝基础设施,设计人员可以使用此网络而不是Wi-Fi或其他网络接口来收集数据或提供远程管理。蜂窝网络是小型到中型数据包的理想选择,可以降低大型分布式系统的硬件预算,因为每个连接到蜂窝网络的设备都不需要本地Wi-Fi热点或中继器。此外,蜂窝调制解调器具有比Wi-Fi或其他无线网络接口更长的覆盖范围(信号可以更远)。 根据您需要的数据传输速率和您所在地区的运营商,有多种蜂窝选项需要连接。现在使用的各种标准包括GSM/GPRS,CDMA2000,HSPA,EVDO/CDMA,EDGE和LTE。在某些地区,2G蜂窝服务可提供高达约40 kbits/s的低数据速率连接,以实现更快的连接,EDGE,CDMA2000

  处理器板的蜂窝调制解调器模块设计 /

  建立一个汽车通用 适配器 的(12 - 14伏特)电源插座电压,为直流设备提供低电压水平。输出电压取决于R1的价值,这是被连接R3通过转换得到的输出。

  电源电路 /

  §01 利用Arduino生成ATmega8执行程序   基于Arduino IDE的 Scratch完成程序的开发,借助于现在这个生态环境中越来越多积累下的软件包,的确可以加速软件的开发。满足更新的需要。   在 利用Arduino IDE对ATMEGA8等单片机编程 测试了对于Arduino IDE增加 MinCore的软件包,使其能够对于 ATmega48~ATmega328 进行开发支持。下面通过实验测试: 通过Arduino IDE生成ATmega8的执行程序,使用自行制作的Bootloader完成ATmega8程序上传,看是否可以进行正常执行。 将Arduino IDE生成的程序自行上传之后,测试是否它也就同时

  生成ATmega8的运行程序并下载 /

  断断续续使用3天的时间,终于弄明白nRF24L01无线传输芯片的原理,可以让两块不同型号的芯片进行远程数据交换. 下面的这幅图片使用这个芯片进行温度传输.其中89C52RC+DS18B20作温度采集终端,由nRF24L01发送至arduino最后传送到PC和processing交互.. 最后尝试使用电池盒作为电源,发现在距离20米开外的地方也能保证数据传输的准确性,说明这块无线芯片确实性能不错. 以下是其发送和接受的源代码,供有意向的人使用: STC89C52RC发送代码 #include reg52.h #include intrins.h typedef unsigned char uchar; typede

  +STC89C52RC+nRF24L01制作远程测温系统 /

  Arduino是一款基于单片机系统的电子产品开发平台,它的软硬件系统都具有高度的模块化,而且软件系统是完全开源的。其硬件系统也是高度模块化的,在核心控制板的外围有开关量输入/输出模块、各种模拟量传感器输入模块、总线类传感器的输入模块,还有网络通信模块 .Arduino有自己特有的编程语言。其语法规则类似C/C++语言,IDE环境和语言把单片机与硬件相关的一些参数都参数化并进行了很好的封装,把端口都打包,寄存器、地址指针之类的基本不用管,大大降低了软件开发难度。因此不用开发者去了解其硬件结构即可对其编程,实现设计者的设计意图和创意 . 本文提出了一种基于Arduino开发环境的光电编码器检测仪设计方案,能够对光电编码器的好坏进行判断

  开发环境的光电编码器检测仪设计方案 /

  据报道,全球领先的电子与维修产品高端服务分销商Electrocomponents plc旗下的贸易品牌RS Components(RS)目前正在备货Arduino云。Arduino云将Arduino开源体系结构与Linux系统整合在一块开发板,是Arduino家族中首个无线产品成员。 Arduino云将现有的Arduino Leonardo与一个嵌入式Atheros AR9331 Wi-Fi系统级芯片(SoC)集成到一起。Arduino Leonardo基于Atmel的ATmega32u4 8位微控制器,SoC则运行OpenWRT的MIPS GNU/Linux版本——Linino。此板的主要特色是桥接库, 通过将所有网络连接

  云为物联网市场打开全新开源设计大门 /

  奥地利微电子的 EasyPoint™ 迷你操纵杆模块被纳入谷歌公司全新的 Android 配件开发套件参考设计     中国 —— 全球领先的高性能模拟 IC 设计者及制造商奥地利微电子公司(SIX 股票代码:AMS)宣布其 EasyPoint™ 迷你操纵杆模块被谷歌公司所选中,用于全新的 Android开放配件开发套件(ADK)( 。全新的参考设计平台采用 N50P111 EasyPoint™ 操纵杆模块,与 AS5013 线性霍尔传感器 IC 一起,为开发人员提供新的人机交互接口。     谷歌公司新

  本教程对于电子制造商来说将非常令人兴奋,因为我们将使用 Arduino Nano 设计我们自己的触控电容式钢琴。我们将在我们的钢琴上加入录音和回放功能。到目前为止,我们已经使用 Arduino 制作了一些钢琴项目,但这个项目完全不同,因为我们将使用电容式触摸键作为我们的钢琴键。因此,在学习如何打造有趣的钢琴演奏的同时,我们还将探索如何在 PCB 上设计电容式触摸键,因为您可以尝试让我们的按键看起来像真正的钢琴键。由于其制造商PCBWay ,PCB 看起来和工作起来都像钢琴,我们还将探索我们如何设计和制造此板,但在此之前,让我们探索电容式触摸传感器及其工作原理。 电容式触摸传感器如何工作? 我们大家都知道,为了形成一个具有

  制作触控电容式钢琴 /

  开发实战指南:LabVIEW卷

  超高效率,超小尺寸带USB Type-C PD的65W适配器方案设计介绍

  【电路】永华牌APB系列百叶窗式,ASB系列百叶窗式,APK系列开敞式换气扇电路图

  解锁【W5500-EVB-Pico】,探秘以太网底层,得捷电子Follow me第4期来袭!

  参赛冲击【万元大奖】啦|2023 DigiKey“智造万物,快乐不停”创意大赛

  变频器是一种应用现代电力电子技术、计算机控制技术和通信技术,将电动机工作电源固定的频率变换为连续可调的频率,从而控制交流电动机运转 ...

  今天,米尔电子联合战略合作伙伴全志科技,隆重发布国产第一款T527核心板及开发板。基于全志T527高性能国产处理器,可选AI功能MPU,配备八 ...

  翻开市面大部分编程教程,最早能够接触到的条件语句基本都是if-else。作为高级编程语言都有的必备功能,if-else在嵌入式编程过程中几乎是必 ...

  硕盟SM-A44是一款USB3 0转RJ45千兆网口转换器。这是一种高性能和低开销的解决方案。可以让您的笔记本电脑可以通过USB接口连接千兆端口快速 ...

  对于常用笔记本、尤其是苹果电脑干活的打工人而言,这辈子基本是离不开扩展坞了。毕竟如今的笔记本越做越薄,接口也越做越少,日常办公一个 ...

  音频电路原理(双音频解码电子电路/TDA2822双声道功放电路/音频放大处理电路)

  站点相关:嵌入式处理器嵌入式操作系统开发相关FPGA/DSP总线与接口数据处理消费电子工业电子汽车电子其他技术存储技术综合资讯论坛电子百科

首页首页
案例案例
19903172283电话
菜单菜单
 
ayx网页版 ayx网页版登录入口 ayx官网登陆 案例 关于我们 联系我们 网站地图