Bonjour, je suis debutant 8) dans tout ce qui est Arduino et je me suis lancer dans un projet de boite aux lettres automatique.
Mon but est de :
Un detecteur ultrason detecte quand il ya une lettre. En rentrant chez soi le soir, on passe un badge rfid devant le module rfid, une led rouge s'allume si il n'y pas de courrier, si il yen a, une led verte s'allume puis le servomoteur deverouille la porte de la boite aux lettres en faisant un quart de tour.
Mon problème est que le servomoteur ne veut pas tourner quand il ya du courrier et que la led verte s'est allumée.
Voici le code sans la partie servomoteur, si quelqu'un pourrais m'aider à la créer, sa serait super !!!
#include <SPI.h>
#include <RFID.h>
#define trigPin 7
#define echoPin 6
#define led 3
const char led_rouge = 2;
RFID monModuleRFID(10,9);
int UID[5]={};
int MASTERKEY[5]={144,34,225,135,212};
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(led, OUTPUT);
Serial.begin(9600);
SPI.begin();
monModuleRFID.init();
pinMode(led_rouge, OUTPUT);
digitalWrite(led_rouge, LOW);
}
void loop() {
long duration, distance;
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = (duration/2) / 29.1;
digitalWrite(trigPin, LOW);
{
if (monModuleRFID.isCard()) {
digitalWrite(trigPin,HIGH);
if (monModuleRFID.readCardSerial()) {
Serial.print("L'UID est: ");
for(int i=0;i<=4;i++)
{
UID[i]=monModuleRFID.serNum[i];
Serial.print(UID[i],DEC);
Serial.print(".");
}
Serial.println("");
}
{ if (distance <= 15){
(UID[0] == MASTERKEY[0]
&& UID[1] == MASTERKEY[1]
&& UID[2] == MASTERKEY[2]
&& UID[3] == MASTERKEY[3]
&& UID[4] == MASTERKEY[4]);
digitalWrite(led, HIGH);
delay(1000);
digitalWrite(led, LOW);
//ici mettre moteur qui ouvre la porte
} else {
digitalWrite(led_rouge, HIGH);
delay(1000);
digitalWrite(led_rouge, LOW);
}
monModuleRFID.halt();
}
delay(1);
}
}
}
Si vous avez des questions ou autres, je repondrais le plus vite possible
Merci