Étape 3: Code!!
/** Les connexions RFID - RFID tx---> rx(3) ardunio
*
* GSM - GSM rx---> 8 arduino
* GSM tx---> 7 arduino
*
* MOTEUR - C2B---> 4 arduino
* C2A---> 5 ardunio
*
* RGB LED - A0--> Rouge
* A1 virant au vert
* avertisseur sonore 6
*/
#include
SoftwareSerial rfidSerial (3, 2) ;
SoftwareSerial SIM900 (7, 8) ;
aBAL int = 1000 ;
bBAL int = 1500 ;
cBAL int = 2000 ;
Chaîne a ;
const int ledPin = 13 ;
void setup() {}
pinMode (6, sortie) ;
pinMode (A0, sortie) ;
pinMode (A1, sortie) ;
pinMode (A2, sortie) ;
pinMode (sortie 4) ;
pinMode (5, sortie) ;
digitalWrite (4, élevée) ;
digitalWrite (5, HIGH) ;
digitalWrite (6, faible) ;
Serial.Begin(9600) ;
pinMode (ledPin, sortie) ;
SIM900. commencer (19200) ;
SIM900. Print ("AT + CMGF = 1") ;
rfidSerial.begin(9600) ;
digitalWrite (A2, élevé) ;
Delay(1000) ;
digitalWrite (A2, faible) ;
Serial.println ("WAITNG FOR Vehicle...") ;
}
void loop() {}
digitalWrite (A2, élevé) ;
Delay(1000) ;
digitalWrite (A2, faible) ;
digitalWrite (A0, élevé) ;
{while(rfidSerial.available())}
un = rfidSerial.readString(); / / lecture de données entrantes comme chaîne
rfidSerial.print ("véhicule RFID lu") ;
rfidSerial.print(a) ;
Delay(1000) ;
digitalWrite (ledPin, HIGH) ;
Delay(1000) ;
SIM900. println ("AT + CMGS = \"8970220880\ "") ; NOMBRE DE CHANGEMENTS À ÊTRE MESSAGED ICI
Delay(1000) ;
//--------------------------------------------______________________________________________
{if(a=="03908807\r\n")}
Serial.println ("c’est A") ;
aBAL = aBAL-30 ;
Si (aBAL > = 30) {}
void openGATE();---
digitalWrite (A0, faible) ;
digitalWrite (A1, élevé) ;
digitalWrite (6, HIGH) ;
Delay(1000) ;
digitalWrite (4, faible) ;
Delay(750) ;
digitalWrite (4, élevée) ;
Delay(2000) ;
//}
SIM900. imprimer ("Bonjour, je vous remercie, pour utilisation MG péage de Rs.30/ - a été déduit votre solde est Rs.") ;
SIM900.Print(aBAL) ;
}
else {}
void closeGATE() ;
digitalWrite (A1, faible) ;
digitalWrite (6, faible) ;
digitalWrite (A0, élevé) ;
Delay(1000) ;
digitalWrite (5, faible) ;
Delay(750) ;
digitalWrite (5, HIGH) ;
Delay(2000) ;
//-----------
SIM900. Print ("Bonjour, Merci a, pour à l’aide de MG ROAD sans frais votre BALANCE est trop faible s’il vous plaît recharger!") ;
}
retarder (1000) ;
SIM900. println ((char) 26) ;
retarder (1000) ;
SIM900. println () ;
digitalWrite (ledPin, basse) ;
}
//--------------------------------------------____________________________________________________________________________________________
else {if(a=="13703425\r\n")
Serial.println (« c’est B") ;
bBAL = bBAL-30 ;
Si (bBAL > = 30) {}
void openGATE() ;
digitalWrite (A0, faible) ;
digitalWrite (A1, HIGH); digitalWrite (6, HIGH) ;
Delay(1000) ;
digitalWrite (4, faible) ;
Delay(750) ;
digitalWrite (4, élevée) ;
Delay(2000) ;
//--------------------
SIM900. Print ("Bonjour, je vous remercie b, pour utilisation MG péage de Rs.30/ - a été déduit votre solde est Rs.") ;
SIM900.Print(bBAL) ;
}
else {//void closeGATE() ;
digitalWrite (A1, faible) ;
digitalWrite (A0, élevé) ;
digitalWrite (6, faible) ;
Delay(1000) ;
digitalWrite (5, faible) ;
Delay(750) ;
digitalWrite (5, HIGH) ;
Delay(2000) ;
//-------------------
SIM900. Print ("Bonjour, Merci b, pour à l’aide de MG ROAD sans frais votre BALANCE est trop faible s’il vous plaît recharger!") ;
}
retarder (1000) ;
SIM900. println ((char) 26) ;
retarder (1000) ;
SIM900. println () ;
digitalWrite (ledPin, basse) ;
}
//-------------------------------------------________________________________________________________________________
else {if(a=="03908806\r\n")
Serial.println ("c’est C") ;
cBAL = cBAL-30 ;
Si (cBAL > = 30) {}
void openGATE() ;
digitalWrite (A0, faible) ;
digitalWrite (A1, élevé) ; digitalWrite (6, HIGH) ;
Delay(1000) ;
digitalWrite (4, faible) ;
Delay(750) ;
digitalWrite (4, élevée) ;
Delay(2000) ;
//---------------
SIM900. Print ("Bonjour, Merci c, pour utilisation MG péage de Rs.30/ - a été déduit votre solde est Rs.") ;
SIM900.Print(cBAL) ;
}
else {}
void closeGATE() ;
digitalWrite (A1, faible) ;
digitalWrite (A0, élevé) ;
digitalWrite (6, faible) ;
Delay(1000) ;
digitalWrite (5, faible) ;
Delay(750) ;
digitalWrite (5, HIGH) ;
Delay(2000) ;
//---------------
SIM900. Print ("Bonjour, je vous remercie c, pour à l’aide de MG ROAD sans frais votre BALANCE est trop faible s’il vous plaît recharger!") ;
}
//-------------------
}
//-------------------------------------------
else {/ / incorrecte ou aucune carte
digitalWrite (A0, élevé) ;
Delay(1000) ;
digitalWrite (A0, faible) ;
Delay(2000) ;
}
retarder (1000) ;
SIM900. println ((char) 26) ;
retarder (1000) ;
SIM900. println () ;
digitalWrite (ledPin, basse) ;
Delay(5000) ;
void closeGATE() ;
digitalWrite (A1, faible) ;
digitalWrite (A0, élevé) ; digitalWrite (6, faible) ;
Delay(1000) ;
digitalWrite (5, faible) ;
Delay(750) ;
digitalWrite (5, HIGH) ;
Delay(2000) ;
}
}