Sommario:

Motore Servo a Rotazione Continua (CRS) Con Controllo Telegramma: 8 Passi
Motore Servo a Rotazione Continua (CRS) Con Controllo Telegramma: 8 Passi

Video: Motore Servo a Rotazione Continua (CRS) Con Controllo Telegramma: 8 Passi

Video: Motore Servo a Rotazione Continua (CRS) Con Controllo Telegramma: 8 Passi
Video: ESP32 Tutorial 17 - Controlling Servo Motor using ESP32 and Potentiometer -ESP32 IoT Learnig kit 2024, Dicembre
Anonim
Servomotore a rotazione continua (CRS) con controllo telegramma
Servomotore a rotazione continua (CRS) con controllo telegramma

In questo tutorial ti insegnerò come controllare un CRS tramite telegramma. Per questo istruibile avrai bisogno di un paio di cose. Lavorerò su un NodeMCU 1.0 (modulo ESP-12E). Questo può funzionare su altre schede Arduino, devi solo trovare le unità adeguate per questo.

Quello che segue era l'ambiente di installazione per il modulo ESP-12E:

  • Windows 10
  • Arduino IE 1.8.7 (Windows Store 1.8.15.0)

Una guida su come installare i driver e i file di base per il modulo ESP-12E è disponibile qui:

Una volta fatto questo. Siamo pronti per partire!

Passaggio 1: Passaggio 1: Componenti

Passaggio 1: componenti
Passaggio 1: componenti

Per questo tutorial avrai bisogno di alcuni componenti:

  • Modulo ESP12-E (ESP8266)
  • Servomotore a rotazione continua (questo è quello che ho usato)
  • Cavo micro USB
  • Una rete Wi-Fi
  • App Telegram
  • Un Botfather Bot (non preoccuparti, ci arriveremo)

Passaggio 2: Passaggio 2: collegare il servomotore

Passaggio 2: collegare il servomotore
Passaggio 2: collegare il servomotore

Seguire questo schema per cablare il servomotore.

  • Nero: GND (terra)
  • Rosso: 3,3 V o 5 V (alimentazione)
  • Giallo o bianco: uscita digitale (segnale)

Quindi, se stai usando lo stesso servomotore che ho usato e hai una scheda arduino con un'uscita a tensione più alta (5V max), puoi attaccare lì il cavo di alimentazione. Significa solo che il servomotore produrrà più coppia. Ad ogni modo, 3,3 V o 5 V vanno bene.

Passaggio 3: Passaggio 3: un po' di comprensione

Prima di iniziare a testare il codice e vedere se funziona, c'è qualcosa che devi capire su questo servomotore. Poiché non è un servomotore convenzionale, che gira ad angoli specifici, il codice che devi usare è leggermente diverso.

Non consiglio di utilizzare il servo alla massima coppia, poiché crea molto calore e potrebbe consumare gran parte della vita del prodotto. Prova a rimanere nell'area di [60, 120].

ciclo vuoto {

mioservo.write(90); // questo significa nessun movimento, il servomotore è fermo delay(1000); mioservo.write(0); //questo significa ritardo di movimento antiorario a piena velocità (1000); mioservo.write(180); //questo significa ritardo di movimento in senso orario a piena velocità (1000); }

Passaggio 4: Passaggio 4: aggiungere il codice per testare il servomotore

#includere

Servo mio servo; void setup() { myservo.attach(D5); //attacca il servo sul pin D5) } void loop() { myservo.write(85); //ruota il motore in senso antiorario a bassa velocità delay(1000); mioservo.write(120); ritardo(1000); mioservo.write(90); ritardo (5000); }

Passaggio 5: Passaggio 5: Prepararsi alla comunicazione

Per poter comunicare con te Arduino dovrai sistemare un paio di cose. Sono abbastanza facili. Divideremo questi compiti in due piccole sezioni.

il bot

  1. Installa Telegram sul tuo cellulare.
  2. Crea un account su Telegram.
  3. Cerca l'utente "Botfather".
  4. Crea un nuovo bot usando i comandi che mostra (salva la chiave che ti dà).

I compiti di Arduino

  1. Apri Arduino IE.
  2. Vai a 'Gestione libreria'.
  3. Aggiungi la libreria "Universal Telegrambot".
  4. Aggiungi la libreria 'ArduinoJson'.

    • Non aggiungere la beta
    • Aggiungi l'ultima build 5.x disponibile.

Passaggio 6: Passaggio 6: test della comunicazione

Passaggio 6: test della comunicazione
Passaggio 6: test della comunicazione

Ci siamo quasi.

  1. Apri 'echobot' dalla libreria universaltelegrambot > esp8266.
  2. Modifica le credenziali wifi in modo che corrispondano alla tua rete nel luogo in cui ti trovi.
  3. Cambia il BOTtoken che ti ha dato il Botfather.
  4. Aggiungi questa riga di codice nel ciclo for che si trova nel `loop void();`

Serial.println(bot.messages.text);

Ora siamo pronti per la prova.

Carica questo codice sul tuo Arduino. Controlla nel monitor seriale se il tuo NodeMCU si sta connettendo alla tua rete wifi. Quando vedi che è connesso, invia un messaggio al tuo bot. Dovrebbe inviarti lo stesso identico messaggio.

Passaggio 7: Passaggio 7: aggiunta dei comandi

Quindi, ha funzionato! Abbiamo una connessione tra i dispositivi. Il prossimo passo è sommare le cose. Quindi aggiungeremo comandi al codice echobot esistente. Potrebbe essere una buona idea inserire il codice successivo invece dell'ultimo codice che ti ho fornito. Quindi ci impediremo di avere un bot che si comporti come un pappagallo.

Questo pezzo di codice successivo deve essere nel ciclo for che scorre i nuovi messaggi. A seconda di come posizioni il servomotore potresti voler scambiare i comandi 'Apri' e 'Chiudi'. Carica questo sul tuo esp8266 e controlla se funziona.

//il comando che vuoi

if(bot.messages.text == "Apri") {

// La risposta che ti darà il tuo bot bot.sendMessage(bot.messages.chat_id, "Sto aprendo le tende per te.");

// cosa farà la scheda arduino

mioservo.write(80); // il servomotore gira in senso antiorario per aprire le tende

}

if(bot.messages.text == "Stop") { // La risposta che ti darà il tuo bot bot.sendMessage(bot.messages.chat_id, "Stop alle tende."); // cosa farà la scheda arduino myservo.write(90); // il servomotore smette di girare }

if(bot.messages.text == "Chiudi") { // La risposta che il tuo bot ti darà bot.sendMessage(bot.messages.chat_id, "Chiudo le tende per te."); // cosa farà la scheda arduino myservo.write(80); // il servomotore gira in senso orario per chiudere le tende }

Passaggio 8: Passaggio 8: collegare il dispositivo alle tende (non necessario)

Passaggio 8: collegare il dispositivo alle tende (non necessario)
Passaggio 8: collegare il dispositivo alle tende (non necessario)

Yeeeey, hai finito!

Le istruzioni erano su come collegare un Telegrambot al tuo Arduino in modo da poterlo controllare a distanza. Ma ho realizzato questo allestimento speciale per avere un modo per aprire le tende nel mio studio senza doverle aprire fisicamente. Quindi, se vuoi fare come me, l'ultimo passo è collegare il nostro piccolo dispositivo alle tue tende e voilà.

Consigliato: