0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用Telegram和ESP32实现自动化

454398 来源:wv 2019-10-21 10:39 次阅读

步骤1:汇编

步骤2:更新ESP8266内核

如果ESP8266出现问题,请在Arduino IDE中转到:

Tools- 》 Board-》 Manage Plates 。..

更新ESP8266(在这种情况下,我们使用版本2.4.2)

步骤3:ArduinoJson库

在Arduino IDE中,转到Sketch-》 Include Library-》 Manage Libraries 。..

安装ArduinoJson(在这种情况下,我们使用版本5.13 .2)

步骤4:UniversalTelegramBot库

在Arduino IDE中,转到Sketch-》 Include Library-》 Manage库。..

安装UniversalTelegramBot

步骤5:SimpleDHT库

在Arduino IDE中,转到Sketch-》 Include Library-》 Manage Libraries 。..

安装SimpleDHT

步骤6:在电报中创建Bot

1。打开电报并搜索botfather。选择带有蓝色标记的那个

2。在此屏幕上,单击“入门”

3。 BotFather将为您显示一些选项

4。输入/newbot

5。输入您的机器人名称

6。输入您的机器人的用户名。它应该以bot结尾(示例:TestFKBot)。

保存生成的令牌以替换源.ino

步骤7:TelegramBot.ino

声明和变量

#if defined(ESP8266)

#include

#else

#include

#endif

#include

#include

#include

//Pino onde está o Relê

#define RELAY_PIN 5

//Pino onde está o DHT22

#define DHT_PIN 4

//Intervalo entre as checagens de novas mensagens

#define INTERVAL 1000

//Token do seu bot. Troque pela que o BotFather te mostrar

#define BOT_TOKEN “000000000:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX”

//Troque pelo ssid e senha da sua rede WiFi

#define SSID “SSID”

#define PASSWORD “12345678”

命令和设置

//Comandos aceitos

const String LIGHT_ON = “ligar a luz”;

const String LIGHT_OFF = “desligar a luz”;

const String CLIMATE = “clima”;

const String STATS = “status”;

const String START = “/start”;

//Objeto que realiza a leitura da temperatura e umidade

SimpleDHT22 dht;

//Estado do relê

int relayStatus = HIGH;

//Cliente para conexões seguras

WiFiClientSecure client;

//Objeto com os métodos para comunicarmos pelo Telegram

UniversalTelegramBot bot(BOT_TOKEN, client);

//Tempo em que foi feita a última checagem

uint32_t lastCheckTime = 0;

//Quantidade de usuários que podem interagir com o bot

#define SENDER_ID_COUNT 2

//Ids dos usuários que podem interagir com o bot.

//É possível verificar seu id pelo monitor serial ao enviar uma mensagem para o bot

String validSenderIds[SENDER_ID_COUNT] = {“012345678”, “123456789”};

设置

void setup()

{

Serial.begin(115200);

//Inicializa o WiFi e se conecta à rede

setupWiFi();

//Coloca o pino do relê como saída e enviamos o estado atual

pinMode(RELAY_PIN, OUTPUT);

digitalWrite(RELAY_PIN, relayStatus);

}

SetupWiFi

循环

handleNewMessages

validateSender

handleStart

getCommands

handleLightOn

handleLightOff

handleClimate

getClimateMessage

handleStatus

handleNotFound

步骤8:与电报上的Bot交互

转到BotFather,然后单击链接以与机器人对话

单击开始

发送命令并检查机器人返回的消息

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 自动化
    +关注

    关注

    29

    文章

    5562

    浏览量

    79235
  • ESP32
    +关注

    关注

    18

    文章

    970

    浏览量

    17197
收藏 人收藏

    评论

    相关推荐

    esp32esp8266代码共用吗

    本文将介绍ESP32ESP8266两款流行的微控制器在代码共用性方面的可能性与差异性。 一、引言 随着物联网技术的飞速发展,越来越多的智能设备开始进入我们的生活。其中,ESP32ESP
    的头像 发表于 08-19 18:23 1106次阅读

    esp8266和esp32区别是什么

    以下是关于ESP8266和ESP32的主要区别: 处理器和架构 : ESP8266 :使用一个Tensilica L106 80MHz的处理器,属于Xtensa架构。 ESP32 :使
    的头像 发表于 08-19 18:16 5205次阅读

    esp32用什么软件编程

    ESP32是一款由乐鑫(Espressif)推出的低功耗、高性能的Wi-Fi和蓝牙双模微控制器,广泛应用于物联网、智能家居、智能穿戴等领域。要对ESP32进行编程,需要选择合适的编程软件和开发环境
    的头像 发表于 08-19 17:24 3386次阅读

    ESP32-WROOM-32E、ESP32-WROOM-32D、ESP32-WROOM-32U 有什么区别?ESP32-WROOM-32 后缀字母代表的意思是?

    相信很多人心里都有这样的疑问,今天就教大家怎么区分它们。 32D和32U是同一个芯片ESP32-D0WD的模组,主要区别的天线模式,分别是板载和IPEX外接天线。 32E是用的升级版的芯片
    的头像 发表于 07-17 10:09 9300次阅读
    <b class='flag-5'>ESP32</b>-WROOM-32E、<b class='flag-5'>ESP32</b>-WROOM-32D、<b class='flag-5'>ESP32</b>-WROOM-32U  有什么区别?<b class='flag-5'>ESP32</b>-WROOM-32 后缀字母代表的意思是?

    ESP32能取代STM32吗?哪个更好?

    不能!首先二者不存在哪个更好的问题,因为这两个芯片使用场景各不相同,在嵌入式系统领域,ESP32和STM32都是常见的单片机系列,它们各自具有一定的优势和适用场景。本文主要探讨ESP32是否能够取代
    的头像 发表于 07-06 08:04 1.1w次阅读
    <b class='flag-5'>ESP32</b>能取代STM32吗?哪个更好?

    机械自动化和电气自动化区别是什么

    机械自动化和电气自动化是现代工业生产中两个重要的领域,它们在许多方面有着密切的联系,但也存在一些明显的区别。 一、基本概念 机械自动化 机械自动化是指利用机械设备、传感器、控制系统等技
    的头像 发表于 07-01 09:33 3988次阅读

    机械自动化自动化的一种吗

    引言 自动化技术是指利用控制装置对生产过程进行控制,以实现生产过程的自动化。机械自动化自动化技术的一种,它主要涉及到使用机械设备和控制系统
    的头像 发表于 07-01 09:32 1634次阅读

    ESP32-S3芯片赋能设备,打造智能交互新体验

    在物联网和人工智能(AI)技术融合的浪潮中,乐鑫ESP32-S3芯片以其卓越的性能和多功能性,成为智能家居和工业自动化领域的明星产品。ESP32-S3是一款基于XtensaLX7处理器的嵌入式系统级
    的头像 发表于 06-28 08:04 873次阅读
    <b class='flag-5'>ESP32</b>-S3芯片赋能设备,打造智能交互新体验

    如何实现PLC的自动化控制逻辑

    在工业自动化领域,PLC(Programmable Logic Controller,可编程逻辑控制器)扮演着至关重要的角色。PLC通过编程实现自动化控制逻辑,使设备能够按照预定的程序进行工作,极大
    的头像 发表于 06-15 16:44 1155次阅读

    如何从esp32内获取mac地址?

    如何从esp32内获取mac地址,然后自动打印成标签贴在机身上呢 这玩意没有自动化的一套东西很麻烦啊
    发表于 06-14 07:50

    机械制造与自动化自动化类吗

    机械制造与自动化自动化领域的一个重要分支,它涉及到机械设计、制造、检测、控制等多个方面,是现代制造业的核心组成部分。 机械制造与自动化是指利用计算机、机器人、传感器等自动化设备和技术
    的头像 发表于 06-11 11:18 1502次阅读

    工业自动化自动化区别是什么

    工业自动化自动化是两个密切相关但又有所区别的概念。在这篇文章中,我们将详细探讨它们之间的区别,以及它们在现代工业生产中的应用。 一、自动化的定义 自动化是指通过使用机器、计算机和其他
    的头像 发表于 06-11 11:13 1647次阅读

    WT01P4C6-S1核心板 搭载ESP32-P4芯片及ESP32-C6 Wi-Fi 6芯片

    32MBPSRAM,包含一个高性能(HP)系统和一个低功耗(LP)系统。主要应用于图像与语音处理、智能家居、消费电子产品、工业自动化、医疗健康。想知道详情可以看接下来
    的头像 发表于 03-23 08:03 1719次阅读
    WT01P4C6-S1核心板  搭载<b class='flag-5'>ESP32</b>-P4芯片及<b class='flag-5'>ESP32</b>-C6 Wi-Fi 6芯片

    esp32外置flash的大小

    ESP32是一款功能强大的微控制器,广泛应用于物联网和嵌入式设备领域。虽然ESP32内置了一定的闪存空间,但有时候我们可能需要更大的储存空间来存储更多的数据或者程序。因此,一些厂商推出了外置
    的头像 发表于 01-09 11:24 4056次阅读

    ESP32与SD NAND的协同应用

    、UART、SPI、I2C等,使其适用于各种物联网和嵌入式应用。ESP32配合SDNAND可以广泛应用于物联网设备、嵌入式系统、工业自动化、智能农业、医疗设备等领域SDN
    的头像 发表于 01-08 13:56 587次阅读
    <b class='flag-5'>ESP32</b>与SD NAND的协同应用