Buonasera, essendo il mio primo post nel forum (spero di non aver toppato la sezione) mi presento: frequento il Liceo Scientifico opzione Scienze Applicate e sono in procinto di affrontare l'ultimo anno. Ammetto di intendermene molto meno di quanto non vorrei in materia di elettronica e programmazione ma nonostante ciò sono un grande appassionato di progetti DIY. Qualche giorno fa i miei si sono fatti scappare di voler comprare un passa gatto con lettura del chip RFID in modo da poter permettere l'entrata e l'uscita di casa in autonomia solo al nostro gatto ma io sono subito intervenuto (mannaggia a me ahaha) dicendo che me ne sarei potuto occupare io; ho comprato tutto il necessario ed ora, dopo svariati tentativi, agguati al gatto che di stare in camera con me non ne può più, e svariate decine di minuti passate a cercare soluzioni on line eccomi qui speranzoso di ricevere una mano dagli esperti
Ho copiato il codice da questo sito (che utilizza esattamente la stessa componentistica che ho acquistato, fatta eccezione per il "cervello", io per i test sto usando un Arduino UNO, non il nano) per fare i test di funzionamento e poi adattarlo al passa gatto, ma non riesco ad ottenere assolutamente letture di alcun tipo, né da seriale né dal display montato sul circuito. Avendo riprodotto esattamente il medesimo circuito del progetto sopra linkato col medesimo codice comincio a domandarmi se il problema non sia del modulo RFID... Sapete aiutarmi?
Ti segnalo che, nella sezione in lingua Inglese, si può scrivere SOLO in Inglese ... quindi, per favore, la prossima volta presta più attenzione in quale sezione metti i tuoi post; questa volta esso è stato spostato, da un moderatore della sezione di lingua Inglese, nella sezione di lingua Italiana ... la prossima volta potrebbe venire direttamente eliminato. Grazie.
... cortesemente, come prima cosa, leggi attentamente il REGOLAMENTO della sezione Italiana del forum, (... e, per evitare future possibili discussioni/incomprensioni, prestando sempre molta attenzione al punto 15), dopo di che, come da suddetto regolamento (punto 16.7), fai la tua presentazione NELL'APPOSITA DISCUSSIONE spiegando bene quali esperienze hai in elettronica e programmazione, affinché noi possiamo conoscere la tua esperienza ed esprimerci con termini adeguati.
Ma usare uno dei tantissimo modulini che trovi già belli e pronti, ampiamente collaudati, di cui di sono tutte le librerie e che costano pochi € ... no ???
Relativamente pochi ... ma certo, se lo devi rilevare a distanze maggiori, tocca andare sui TAG UHF e allora il discorso (ed i costi) sono totalmente diversi ...
Altrimenti dobbiamo insegnare al gatto ad appoggiare il tag sul sensore... Il mio non sono nemmeno riuscito a convincerlo a riciudere il miscelatore del bidet dopo che l'ho fatto bere! (Ma se volesse lo saprebbe fare benissimo, eh!)
forse per la distanza potrei anche inventarmi qualcosa, il punto è proprio come dici te: del collare il gatto non vuole proprio saperne, ne ha già persi 3!
Su internet avevo trovato qualcosa da poter "riadattare" ma come ho detto non sembra funzionare in principio e non riesco a capirne il motivo
Guglielmo mi ha fatto venire in mente di provare a cercare se tante volte ci fosse in giro qualcuno che per questo modulo ha compilato delle librerie e ne ho trovata una che ho subito installato (è fatta per un modulo diverso
ma estremamente simile mi sembra). Il codice che ho adattato per il passa gatto era questo ma c'è qualcosa che sto sbagliando, potreste darci un'occhio?
#include <Servo.h>
#include <SoftwareSerial.h>
#include <Rfid134.h>
Servo myservo;
SoftwareSerial RFID(0, 1); // RX e TX del lettore RFID
char receivedCode[12]; // Buffer per memorizzare il codice RFID ricevuto
void setup() {
RFID.begin(9600); // Inizializza la comunicazione con il lettore RFID
myservo.attach(9); // Collega il servo motore al pin 9
myservo.write(0); // Chiudi la porta all'avvio
Serial.begin(9600); // Inizializza la comunicazione seriale per il monitor seriale
}
void loop() {
if (RFID.available() > 0) {
// Leggi il codice RFID dal lettore
RFID.readBytesUntil('\n', receivedCode, sizeof(receivedCode));
// Verifica se il codice RFID è corretto
if (strcmp(receivedCode, "380260004474836") == 0) {
// Apri la porta
myservo.write(90);
delay(10000); // Tieni la porta aperta per 10 secondi
myservo.write(0); // Chiudi la porta
} else {
// Codice RFID non valido, mostra un messaggio di errore
Serial.println("Accesso negato");
}
// Pulisci il buffer del codice RFID
memset(receivedCode, 0, sizeof(receivedCode));
}
}
Comunque tornando a bomba, il modulo che hai acquistato è dotato di interfaccia UART e in sostanza quello che ti serve è solo aprire una software serial e leggere quello che il modulo invia.
Quando avvicini il tag RFID dovrebbe inviarti l'ID del tag che viene letto.
scusate l'assenza ma la scuola e gli impegni sono ricominciati, in ogni caso quella discussione l'ho letta tutta ma non sono riuscito a trovare la soluzione. Niente di ciò che provo funziona, secondo voi è possibile che il modulo che ho acquistato sia difettato/non funzionante?