Se sei già registrato           oppure    

Orario: 25/04/2024 06:58:48  

 

Energia Alternativa ed Energia Fai Da Te > Arduino

VISUALIZZA L'ALBUM

Pagine: (2)   [1]   2    (Ultimo Msg)


Aprire una porta tramite lettura QR code, È In youtube! Ma s'è "dimenticato" di mettere lo sketch :(
FinePagina

valter996

Avatar
MegaWatt


Gruppo:Utente
Messaggi:533

Stato:



Inviato il: 05/02/2022 15:51:14

Ho messo insieme diversi pezzi del programma trovati qua e la sul web, ma niente non riesco a far aprire sta serratura!
Stato attuale!
1) serratura elettrica DC12V (aliexpress)
2) Display CRISTALLI LIQUIDI 1602A-5v (alie….)
3) Relè 5v a 12v per arduino (al..)
4) Scanner di codici a barre Modulo V3.0 1D/2D (al..)
5) Arduino Uno R3 MEGA328P CH340 CH340G (al..)

Nella immagine i vari collegamenti, nei test sembrano funzionare bene!..segue...





Immagine Allegata: schema collegamenti.jpeg
 
ForumEA/U/schema collegamenti.jpeg



---------------
Impianto ad isola a 48v
con pannelli peimar tot 4.050w
8 batterie 100ah
PIP-4048MS
dal 2017 very happy

 

valter996

Avatar
MegaWatt


Gruppo:Utente
Messaggi:533

Stato:



Inviato il: 05/02/2022 15:54:50

Cosa è che non funziona!!! Non riesco da una settimana, a fargli fare la condizione IF!!

= Se il nome risultato dallo scanner è "Phong XIONG" allora invia al pin 5 e qui il relay dovrebbe chiudere il (NO) normalmente aperto e collegare ai 12v la serratura!! Ebbene non funzionaaaa
Per chi vuole aiutarmi! Ecco lo sketch!

#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3);                                    // RX, TX

#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);

char i = Ɔ'
char a[15] = {Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ'};
int k = 0;
int relay_pin = 5;



void setup() {
  Serial.begin(9600);
  while (!Serial) ;
  mySerial.begin(9600);
}



void loop() {
  
  if (mySerial.available()) {

    // Serial.write(mySerial.read());

    i = mySerial.read();
    //Serial.println(i);

    a[k] = i;
 
 
    k = k + 1;
    // Serial.println(k);
 
    if (k == 15) {
      Serial.print   ("ID : ");
      Serial.print   (a[0]);
      Serial.print   (a[1]);
      Serial.print   (a[2]);
      Serial.print   (a[3]);
      Serial.print   (a[4]);
      Serial.print   (a[5]);
      Serial.print   (a[6]);
      Serial.print   (a[7]);
      Serial.print   (a[8]);
      Serial.print   (a[9]);
      Serial.print   (a[10]);
      Serial.print   (a[11]);
      Serial.println (a[12]);

      if (
           a[0] == 'E' &&
           a[1] == 'L' &&
           a[2] == Ƈ'   &&
           a[3] == Ƈ'   &&
           a[4] == '-' &&
           a[5] == Ɔ'   &&
           a[6] == ƈ'   &&
           a[7] == Ɗ'  &&
           a[8] == 'Q'
         )
      {
        Serial.print("Name : ");
        Serial.println("Kantana XAIYASID");
        Serial.println();
        lcd.clear();
        lcd.setCursor(1,0);
        lcd.print("Kantana XAIYASID");
        lcd.setCursor(3,1);
        lcd.print("ID: EL11-024Q");
        digitalWrite(relay_pin,HIGH);
      }

      if (
           a[0] == 'E' &&
           a[1] == 'L' &&
           a[2] == Ƈ'   &&
           a[3] == Ƈ'   &&
           a[4] == '-' &&
           a[5] == Ɔ'   &&
           a[6] == ƈ'   &&
           a[7] == Ǝ'  &&
           a[8] == 'Q'
         )
      {
        Serial.print("Name : ");
        Serial.println("Phong XIONG");
        Serial.println();
        digitalWrite(relay_pin,HIGH);
      }
         
      k = 0;
    }
  }
}



Modificato da BellaEli - 09/02/2022, 10:16:06


---------------
Impianto ad isola a 48v
con pannelli peimar tot 4.050w
8 batterie 100ah
PIP-4048MS
dal 2017 very happy

 

valter996

Avatar
MegaWatt


Gruppo:Utente
Messaggi:533

Stato:



Inviato il: 05/02/2022 15:57:26

S si, lo scanner legge bene.....



Immagine Allegata: scanner 1.jpeg
 
ForumEA/U/scanner 1.jpeg



---------------
Impianto ad isola a 48v
con pannelli peimar tot 4.050w
8 batterie 100ah
PIP-4048MS
dal 2017 very happy

 

valter996

Avatar
MegaWatt


Gruppo:Utente
Messaggi:533

Stato:



Inviato il: 05/02/2022 16:02:31

Si si, la serratura si apre, ma prima ancora della lettura dello scanner oppure in altri test con la lettura di qualsiasi QR code!!

Scarica allegato

srratura.mp4 ( Numero download: 64 )



---------------
Impianto ad isola a 48v
con pannelli peimar tot 4.050w
8 batterie 100ah
PIP-4048MS
dal 2017 very happy

 

BellaEli

Avatar
GigaWatt


Gruppo:MODERATORE
Messaggi:3286

Stato:



Inviato il: 09/02/2022 10:37:15

Ciao, ho provato a rendere lo sketch più leggibile, cosa indispensabile per riuscire a capire se ci sono errori.

Anzitutto non capisco cosa sono quegli strani simboli, non so se è un errore di "Copia/Incolla" o altro, in ogni caso con quella sintassi non credo possa funzionare...

Provo a modificare a intuito, vediamo se riesci:

1) Ho inizializzato la porta relativa al relè come output
2) Ho spostato le variabili nel Loop, non servono variabili globali;
3) Ho modificato la stringa che verrà letta dallo scanner con il nome che ci si aspetta: non so cosa restituisce il lettore, quindi correggi di conseguenza;
4) Ho aggiunto i comandi per attivare e disattivare il relè.


Ovviamente non ho aggiunto alcuna ottimizzazione, ho lasciato il codice lineare per renderlo il più comprensibile possibile, spero di essere riuscito nell'intento!

Ecco il codice:


#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3);                                    // RX, TX

#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);

int relay_pin = 5;



void setup() {
  pinMode (relay_pin, OUTPUT);
  
  Serial.begin(9600);
  while (!Serial) ;
  mySerial.begin(9600);
}



void loop() {
  int k = 0;
  char i;
  char a[16];                                                     // Essendo un vettore di char occorre aggiungere un byte per il carattere di terminazione della stringa
  
  if (mySerial.available()) {
    // Serial.write(mySerial.read());

    i = mySerial.read();
    //Serial.println(i);

    a[k] = i;
  
    k += 1;
    // Serial.println(k);
 
    if (k == 15) {
      Serial.print   ("ID: ");
      Serial.print   (a[0]);
      Serial.print   (a[1]);
      Serial.print   (a[2]);
      Serial.print   (a[3]);
      Serial.print   (a[4]);
      Serial.print   (a[5]);
      Serial.print   (a[6]);
      Serial.print   (a[7]);
      Serial.print   (a[8]);
      Serial.print   (a[9]);
      Serial.print   (a[10]);
      Serial.print   (a[11]);
      Serial.print   (a[12]);
      Serial.print   (a[13]);
      Serial.print   (a[14]);
      Serial.println (a[15]);

      if (
           a[0]  == 'P' &&
           a[1]  == 'h' &&
           a[2]  == 'o' &&
           a[3]  == 'n' &&
           a[4]  == 'g' &&
           a[5]  == ' ' &&
           a[6]  == 'X' &&
           a[7]  == 'I' &&
           a[8]  == 'O' &&
           a[9]  == 'N' &&
           a[10] == 'G'
         )
      {
        Serial.print("Name: ");
        Serial.println("Phong XIONG");
        Serial.println();

        lcd.clear();
        lcd.setCursor(0,0);
        lcd.print("Phong XIONG");
        lcd.setCursor(0,1);
        lcd.print("ID: EL11-024Q");

        digitalWrite(relay_pin, HIGH);                              // Di solito i relè lavorano a logica invertita, ovvero con LOW sono attivi, controlla !
        delay (1000);
        digitalWrite(relay_pin, LOW);
      }

      if (
           a[0] == 'A' &&
           a[1] == 'l' &&
           a[2] == 't' &&
           a[3] == 'r' &&
           a[4] == 'o' &&
           a[5] == ' ' &&
           a[6] == 'N' &&
           a[7] == 'o' &&
           a[8] == 'm' &&
           a[9] == 'e'
         )
      {
        Serial.print("Name: ");
        Serial.println("Altro Nome");
        Serial.println();

        lcd.clear();
        lcd.setCursor(0,0);
        lcd.print("Altro Nome");
        lcd.setCursor(0,1);
        lcd.print("ID: ");
        
        digitalWrite(relay_pin, HIGH);
        delay (1000);
        digitalWrite(relay_pin, LOW);
      }
         
      k = 0;
    }
  }
}




P.S. Ricordati che è una soluzione che non offre alcuna sicurezza, l'utilizzo deve essere destinato a cose poco importanti!!!



Modificato da BellaEli - 09/02/2022, 10:43:45


---------------
C'è un limite al fai da te ???
Si, ma lo stabiliamo noi !!!

 

valter996

Avatar
MegaWatt


Gruppo:Utente
Messaggi:533

Stato:



Inviato il: 10/02/2022 08:50:57

BuonGiorno, BellaEli!

Ti ringrazio della risposta, e dei miglioramenti che hai portato allo sketch!

Purtroppo appena lo invia ad arduino, fa come l'altro codice che avevo!!

In effetti il led verde del relè, indica che la connessione viene effettuata sin dall'inizio, senza badare alla condizione IF!

Lui si accende subito, appena digerito lo sketch!

Naturalmente, ho provato con un'altro relè, ho provato anche con NO E NC....

Mi sa che ho solo relè anarchici!!!!



---------------
Impianto ad isola a 48v
con pannelli peimar tot 4.050w
8 batterie 100ah
PIP-4048MS
dal 2017 very happy

 

BellaEli

Avatar
GigaWatt


Gruppo:MODERATORE
Messaggi:3286

Stato:



Inviato il: 10/02/2022 18:08:58

Non sono i tuoi relè ad essere anarchici ma la tua testa!!!

Di solito quei relè lavorano in logica negata, ovvero se l'uscita del micro è HIGH il relè è disattivato e viceversa.

In pratica nel setup, sotto il comando:
"pinMode (relay_pin, OUTPUT);"

dovresti aggiungere il comando:
digitalWrite(relay_pin, HIGH);

e negli if dovresti invertire i 2 comandi per attivare e disattivare i relè, così:
digitalWrite(relay_pin, LOW);
delay (1000);
digitalWrite(relay_pin, HIGH);

Dovevi prestare più attenzione ai commenti che avevo aggiunto... prova e fammi sapere!

A presto, Elix



---------------
C'è un limite al fai da te ???
Si, ma lo stabiliamo noi !!!

 

valter996

Avatar
MegaWatt


Gruppo:Utente
Messaggi:533

Stato:



Inviato il: 11/02/2022 08:20:23

Quando non se ne capisce una H, si rimedia con il copia e incolla dopo svariate ricerche! In effetti non ho fatto caso ai tuoi commenti

Cmq, fatti i dovuti cambiamenti, il relay non reacisce più alla lettura del QR, adesso provo un po a diversificare i nuovi cambiamenti e vediamo se riesco a fa qualcosa.
Sketch attuale;

#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3);                                    // RX, TX

#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);

int relay_pin = 7;



void setup() {
  pinMode (relay_pin, OUTPUT);
  digitalWrite(relay_pin, HIGH);
  
  Serial.begin(9600);
  while (!Serial) ;
  mySerial.begin(9600);
}



void loop() {
  int k = 0;
  char i;
  char a[16];                                                     // Essendo un vettore di char occorre aggiungere un byte per il carattere di terminazione della stringa
  
  if (mySerial.available()) {
    // Serial.write(mySerial.read());

    i = mySerial.read();
    //Serial.println(i);

    a[k] = i;
  
    k += 1;
    // Serial.println(k);
 
    if (k == 15) {
      Serial.print   ("ID: ");
      Serial.print   (a[0]);
      Serial.print   (a[1]);
      Serial.print   (a[2]);
      Serial.print   (a[3]);
      Serial.print   (a[4]);
      Serial.print   (a[5]);
      Serial.print   (a[6]);
      Serial.print   (a[7]);
      Serial.print   (a[8]);
      Serial.print   (a[9]);
      Serial.print   (a[10]);
      Serial.print   (a[11]);
      Serial.print   (a[12]);
      Serial.print   (a[13]);
      Serial.print   (a[14]);
      Serial.println (a[15]);

      if (
           a[0]  == 'P' &&
           a[1]  == 'h' &&
           a[2]  == 'o' &&
           a[3]  == 'n' &&
           a[4]  == 'g' &&
           a[5]  == ' ' &&
           a[6]  == 'X' &&
           a[7]  == 'I' &&
           a[8]  == 'O' &&
           a[9]  == 'N' &&
           a[10] == 'G'
         )
      {
        Serial.print("Name: ");
        Serial.println("Phong XIONG");
        Serial.println();

        lcd.clear();
        lcd.setCursor(0,0);
        lcd.print("Phong XIONG");
        lcd.setCursor(0,1);
        lcd.print("ID: EL11-024Q");

        digitalWrite(relay_pin, LOW);                              // Di solito i relè lavorano a logica invertita, ovvero con LOW sono attivi, controlla !
        delay (1000);
        digitalWrite(relay_pin, HIGH);
      }

      if (
           a[0] == 'A' &&
           a[1] == 'l' &&
           a[2] == 't' &&
           a[3] == 'r' &&
           a[4] == 'o' &&
           a[5] == ' ' &&
           a[6] == 'N' &&
           a[7] == 'o' &&
           a[8] == 'm' &&
           a[9] == 'e'
         )
      {
        Serial.print("Name: ");
        Serial.println("Altro Nome");
        Serial.println();

        lcd.clear();
        lcd.setCursor(0,0);
        lcd.print("Altro Nome");
        lcd.setCursor(0,1);
        lcd.print("ID: ");
        
        digitalWrite(relay_pin, LOW);
        delay (1000);
        digitalWrite(relay_pin, HIGH);
      }
         
      k = 0;
    }
  }
}



Modificato da BellaEli - 11/02/2022, 10:19:09


---------------
Impianto ad isola a 48v
con pannelli peimar tot 4.050w
8 batterie 100ah
PIP-4048MS
dal 2017 very happy

 

valter996

Avatar
MegaWatt


Gruppo:Utente
Messaggi:533

Stato:



Inviato il: 11/02/2022 10:56:13

Ok, comunque eliminati un paio di fattori con le tue modifiche!

1) il relè non chiude il contatto quando leggo un QR falso
2) e soprattutto non chiude quando lo collego a Arduino

Migliorato la lettura del QR code ch'è perfetta (vedi img)

He niente, vorrei sapere perché non rispetta la condizione IF......



Immagine Allegata: lettura scanner.png
 
ForumEA/U/lettura scanner.png



---------------
Impianto ad isola a 48v
con pannelli peimar tot 4.050w
8 batterie 100ah
PIP-4048MS
dal 2017 very happy

 

valter996

Avatar
MegaWatt


Gruppo:Utente
Messaggi:533

Stato:



Inviato il: 11/02/2022 10:56:50

sketch attuale:

#include <SoftwareSerial.h>
SoftwareSerial myserial(2, 3); // RX, TX

#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);

char i = Ɔ'
char a[15] = {Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ', Ɔ'};
int k = 0;
int relay_pin = 5;



void setup() {
  pinMode (relay_pin, OUTPUT);
  digitalWrite(relay_pin, HIGH);
  
  Serial.begin(9600);
  while (!Serial);
  myserial.begin(9600);
  delay(1000);
  Serial.println("pronto");
}



void loop() {
  int k = 0;
  char i;
  char a[16];   
  
  if (myserial.available()) {
     
    Serial.write(myserial.read()); 
     i = myserial.read();
    //Serial.println(i);

    a[k] = i;
  
    k += 1;
    // Serial.println(k);
 
    if (k == 15) {
      Serial.print   ("ID: ");
      Serial.print   (a[0]);
      Serial.print   (a[1]);
      Serial.print   (a[2]);
      Serial.print   (a[3]);
      Serial.print   (a[4]);
      Serial.print   (a[5]);
      Serial.print   (a[6]);
      Serial.print   (a[7]);
      Serial.print   (a[8]);
      Serial.print   (a[9]);
      Serial.print   (a[10]);
      Serial.print   (a[11]);
      Serial.print   (a[12]);
      Serial.print   (a[13]);
      Serial.print   (a[14]);
      Serial.println (a[15]);

      if (
           a[0]  == 'P' &&
           a[1]  == 'h' &&
           a[2]  == 'o' &&
           a[3]  == 'n' &&
           a[4]  == 'g' &&
           a[5]  == ' ' &&
           a[6]  == 'X' &&
           a[7]  == 'I' &&
           a[8]  == 'O' &&
           a[9]  == 'N' &&
           a[10] == 'G'
         ) 

      if (a[0] == 'E' && a[1] == 'L' && a[2] == Ƈ' && a[3] == Ƈ' && a[4] == '-' && a[5] == Ɔ' && a[6] == ƈ' && a[7] == ƍ' && a[8] == 'Q')  {
       Serial.print("Name : ");
       Serial.println("Makham XIONG");
       Serial.println();
       digitalWrite(relay_pin, LOW);
       delay (1000);
       digitalWrite(relay_pin, HIGH);
  }  }

      if (a[0] == 'E' && a[1] == 'L' && a[2] == Ƈ' && a[3] == Ƈ' && a[4] == '-' && a[5] == Ɔ' && a[6] == ƈ' && a[7] == Ǝ' && a[8] == 'Q')  {
        Serial.print("Name : ");
        Serial.println("Phong XIONG");
        Serial.println();
        digitalWrite(relay_pin, LOW);
        delay (1000);
        digitalWrite(relay_pin, HIGH);
  }

  if (
           a[0] == 'A' &&
           a[1] == 'l' &&
           a[2] == 't' &&
           a[3] == 'r' &&
           a[4] == 'o' &&
           a[5] == ' ' &&
           a[6] == 'N' &&
           a[7] == 'o' &&
           a[8] == 'm' &&
           a[9] == 'e'
         )
      {
        Serial.print("Name: ");
        Serial.println("Altro Nome");
        Serial.println();

        lcd.clear();
        lcd.setCursor(0,0);
        lcd.print("Altro Nome");
        lcd.setCursor(0,1);
        lcd.print("ID: ");
        
        digitalWrite(relay_pin, LOW);
        delay (1000);
        digitalWrite(relay_pin, HIGH);
      }
         
      k = 0;
    }
  }



Modificato da BellaEli - 11/02/2022, 16:42:24


---------------
Impianto ad isola a 48v
con pannelli peimar tot 4.050w
8 batterie 100ah
PIP-4048MS
dal 2017 very happy

 

Luca450Mhz

Avatar
GigaWatt


Gruppo:Utente
Messaggi:3204

Stato:



Inviato il: 11/02/2022 16:14:52

A me non torna quel che dice di fare il codice e l'output della serial che hai pubblicato.

Per esempio, questa riga:


Serial.print   ("ID: ");


nell'output non la vedo. Inoltre questo output:


Serial.print("Name : ");
Serial.println("Makham XIONG");


non si vede mai... Name non lo vedo mai stampato



---------------
Pannelli: 6975 Wp (poli e mono). Inverter UPS PSW7 6kW 48V toroidale con switch comandato dal mio sistema di domotica (RaspberryPi + vari Wemos D1 Mini - ESP8266). Regolatore di carica: Mpp Solar PCM8048.
Batterie: 24 elementi trazione pesante 315Ah C5 48V.

 

valter996

Avatar
MegaWatt


Gruppo:Utente
Messaggi:533

Stato:



Inviato il: 11/02/2022 16:49:47

Ciao Luca!

Mi sa che ti riferisci alla parte di codice che sarà (spero) per il display che dovrò aggiungere quando (speroooo) avrò risolto la condizione dell'accensione del relay!



---------------
Impianto ad isola a 48v
con pannelli peimar tot 4.050w
8 batterie 100ah
PIP-4048MS
dal 2017 very happy

 

BellaEli

Avatar
GigaWatt


Gruppo:MODERATORE
Messaggi:3286

Stato:



Inviato il: 11/02/2022 16:57:42

Infatti l'immagine che hai postato non può corrispondere allo sketch che dici di usare...

Inoltre non hai risposto alla mia domanda:

<<... cosa sono quegli strani simboli ???...>>>

Non puoi fare copia e incolla a casaccio: se c'è una parte di codice che non capisci fai domande ma se continui a fare così non funzionerà mai!

Voglio capire che ignori le librerie (prime 4 righe di codice) ma il resto dovrebbe essere facilmente comprensibile: se così non è così chiedi spiegazioni.

Ad ogni modo io ho dubbi su cosa legge la seriale, puoi caricare questo sketch e postarmi il risultato ?

#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3);

#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);

int relay_pin = 5;



void setup() {
  pinMode (relay_pin, OUTPUT);
  digitalWrite(relay_pin, HIGH);

  Serial.begin(9600);
  while (!Serial) ;
  mySerial.begin(9600);

  delay(1000);
  Serial.println("Pronto");
}



void loop() {
  static int k = 0;
  static char a[16];
  char i;
  int i;
  
  if (mySerial.available()) {

    i = mySerial.read();
    a[k] = i;
    Serial.print   (k);
    Serial.print   (" = -");
    Serial.print   (i);
    Serial.println ("-");
  
    k += 1;
 
    if (k == 15) {
      Serial.print   ("ID: -");
      for (i = 0; i < 16; i++) {
        Serial.print   (a[i]);
      }
      Serial.println ("-");

      if (
           a[0]  == 'P' &&
           a[1]  == 'h' &&
           a[2]  == 'o' &&
           a[3]  == 'n' &&
           a[4]  == 'g' &&
           a[5]  == ' ' &&
           a[6]  == 'X' &&
           a[7]  == 'I' &&
           a[8]  == 'O' &&
           a[9]  == 'N' &&
           a[10] == 'G'
         )
      {
        Serial.println("-Ok-");
      }

      k = 0;
    }
  }
}



---------------
C'è un limite al fai da te ???
Si, ma lo stabiliamo noi !!!

 

valter996

Avatar
MegaWatt


Gruppo:Utente
Messaggi:533

Stato:



Inviato il: 11/02/2022 17:15:16

CITAZIONE (BellaEli, 11/02/2022 16:57:42 ) Discussione.php?216751&1#MSG12

Infatti l'immagine che hai postato non può corrispondere allo sketch che dici di usare... perchè non dovrebbe? Sarà una specie di frankenstein ma funzia cosi!

Inoltre non hai risposto alla mia domanda:

<<... cosa sono quegli strani simboli ???...>>> Magari lo sapessi!!!!

Non puoi fare copia e incolla a casaccio: se c'è una parte di codice che non capisci fai domande ma se continui a fare così non funzionerà mai!

Voglio capire che ignori le librerie (prime 4 righe di codice) ma il resto dovrebbe essere facilmente comprensibile: se così non è così chiedi spiegazioni.

Ad ogni modo io ho dubbi su cosa legge la seriale, puoi caricare questo sketch e postarmi il risultato ?

#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3);

#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);

int relay_pin = 5;



void setup() {
  pinMode (relay_pin, OUTPUT);
  digitalWrite(relay_pin, HIGH);

  Serial.begin(9600);
  while (!Serial) ;
  mySerial.begin(9600);

  delay(1000);
  Serial.println("Pronto");
}



void loop() {
  static int k = 0;
  static char a[16];
  char i;
  int i;
  
  if (mySerial.available()) {

    i = mySerial.read();
    a[k] = i;
    Serial.print   (k);
    Serial.print   (" = -");
    Serial.print   (i);
    Serial.println ("-");
  
    k += 1;
 
    if (k == 15) {
      Serial.print   ("ID: -");
      for (i = 0; i < 16; i++) {
        Serial.print   (a[i]);
      }
      Serial.println ("-");

      if (
           a[0]  == 'P' &&
           a[1]  == 'h' &&
           a[2]  == 'o' &&
           a[3]  == 'n' &&
           a[4]  == 'g' &&
           a[5]  == ' ' &&
           a[6]  == 'X' &&
           a[7]  == 'I' &&
           a[8]  == 'O' &&
           a[9]  == 'N' &&
           a[10] == 'G'
         )
      {
        Serial.println("-Ok-");
      }

      k = 0;
    }
  }
}



---------------
Impianto ad isola a 48v
con pannelli peimar tot 4.050w
8 batterie 100ah
PIP-4048MS
dal 2017 very happy

 

valter996

Avatar
MegaWatt


Gruppo:Utente
Messaggi:533

Stato:



Inviato il: 11/02/2022 17:19:08

Eli!

Domattina metto il tuo sketch, perché adesso non ho tempo di vedere i vari passi di errori!



Immagine Allegata: eli.png
 
ForumEA/U/eli.png



---------------
Impianto ad isola a 48v
con pannelli peimar tot 4.050w
8 batterie 100ah
PIP-4048MS
dal 2017 very happy

 
 InizioPagina
 

Pagine: (2)   [1]   2    (Ultimo Msg)

Versione Mobile!

Home page       TOP100-SOLAR      Home page forum